@mkbabb/glass-ui 4.1.0 → 4.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{CardAction-8whJrLWt.js → CardAction-DlVP2evz.js} +58 -54
- package/dist/{CommandShortcut-D3yxgHNn.js → CommandShortcut-By-VQcLO.js} +3 -3
- package/dist/{ConfiguratorRow-CaP7U3ZA.js → ConfiguratorRow-YMXdINHx.js} +3 -3
- package/dist/{ContextMenuContent-B3ZsheLV.js → ContextMenuContent-CMWn6huB.js} +1 -1
- package/dist/{ContextMenuSubContent-DDRID3qC.js → ContextMenuSubContent-DvwWCUc0.js} +1 -1
- package/dist/{DataTable-Bc9kUtu_.js → DataTable-C4tG3eIJ.js} +4 -4
- package/dist/DialogContent-D8U9ZfWS.js +121 -0
- package/dist/{DialogScrollContent-TTuovQst.js → DialogScrollContent-BMekN7gq.js} +1 -1
- package/dist/{FadingScroll-DLRbH5Xr.js → FadingScroll-P8B30rAD.js} +1 -1
- package/dist/{HoverCardContent-Bel1gdLZ.js → HoverCardContent-DAmGYglo.js} +1 -1
- package/dist/{HoverPopover-BcIxvyqZ.js → HoverPopover-DYpBOzzF.js} +1 -1
- package/dist/{IconChip-DhbdGdFQ.js → IconChip-CQa7XZYc.js} +7 -5
- package/dist/{IconTooltip-B0zimd2H.js → IconTooltip-_df8M3xm.js} +1 -1
- package/dist/{Input-Cg9DF62r.js → Input-CyU4_hIC.js} +2 -2
- package/dist/{MetricBadge-RHdBP72w.js → MetricBadge-DQt_dGah.js} +1 -1
- package/dist/{Notification-CphK7AAm.js → Notification-BlSPJhtZ.js} +1 -1
- package/dist/{NumberFieldContent-D8cXeyO4.js → NumberFieldContent-Z3VxGu_6.js} +3 -3
- package/dist/PagerDots-CYlqVFd4.js +196 -0
- package/dist/PaperBackdrop-DYWgrnh8.js +42 -0
- package/dist/{PopoverContent-DL7E6vJP.js → PopoverContent-BuKyHZSz.js} +2 -2
- package/dist/{Progress-CnqB7gLm.js → Progress-C9SsdwIZ.js} +1 -1
- package/dist/{ScrollingText-CTZbA_cG.js → ScrollingText-DY3W1Jfh.js} +2 -2
- package/dist/{SelectScrollDownButton-DAKCBEdW.js → SelectScrollDownButton-3mFHX_R-.js} +15 -12
- package/dist/{Switch-B8RscmRu.js → Switch-uf-UKPA2.js} +1 -1
- package/dist/{Toaster-D9qIHjBI.js → Toaster-ozrsR4mP.js} +1 -1
- package/dist/{ToggleGroupItem-BLtr3TJq.js → ToggleGroupItem-BpzaVzNm.js} +4 -4
- package/dist/{TooltipProvider-BJ_Y5EGX.js → TooltipProvider-QQVM_80r.js} +1 -1
- package/dist/animated-digit.js +2 -2
- package/dist/api/index.d.ts +1 -0
- package/dist/api/types-extra.d.ts +3 -1
- package/dist/api.js +2 -2
- package/dist/aurora.js +163 -131
- package/dist/badge-Bt14yURi.js +72 -0
- package/dist/badge.js +1 -1
- package/dist/border-progress.js +1 -1
- package/dist/button-D1W9PrzI.js +130 -0
- package/dist/button.js +1 -1
- package/dist/canvas.js +1 -1
- package/dist/card.js +1 -1
- package/dist/carousel.js +227 -98
- package/dist/chipVariants-BJQ0I2kB.js +18 -0
- package/dist/collapsible.js +1 -1
- package/dist/color.js +1 -1
- package/dist/command.js +1 -1
- package/dist/components/custom/aurora/composables/glSetup.d.ts +1 -1
- package/dist/components/custom/aurora/composables/uniformBridgeWGPU.d.ts +1 -1
- package/dist/components/custom/aurora/constants/presets.d.ts +29 -0
- package/dist/components/custom/aurora/constants/shaders/aurora.wgsl.d.ts +1 -1
- package/dist/components/custom/aurora/index.d.ts +1 -1
- package/dist/components/custom/concentric/Concentric.vue.d.ts +15 -12
- package/dist/components/custom/concentric/composables/concentricGLSetup.d.ts +8 -3
- package/dist/components/custom/concentric/composables/concentricWGPUSetup.d.ts +8 -4
- package/dist/components/custom/concentric/composables/levelField.d.ts +50 -0
- package/dist/components/custom/concentric/composables/uniformBridgeWGPU.d.ts +7 -4
- package/dist/components/custom/concentric/composables/useConcentric.d.ts +3 -3
- package/dist/components/custom/concentric/constants.d.ts +62 -41
- package/dist/components/custom/concentric/index.d.ts +2 -2
- package/dist/components/custom/concentric/shaders/concentric.glsl.d.ts +2 -2
- package/dist/components/custom/concentric/shaders/concentric.wgsl.d.ts +1 -1
- package/dist/components/custom/configurator/Configurator.vue.d.ts +23 -2
- package/dist/components/custom/configurator/index.d.ts +1 -1
- package/dist/components/custom/dock/DockDropdownTrigger.vue.d.ts +4 -3
- package/dist/components/custom/dock/DockIconButton.vue.d.ts +10 -0
- package/dist/components/custom/dock/DockPopoverTrigger.vue.d.ts +19 -0
- package/dist/components/custom/dock/DockStack.vue.d.ts +35 -22
- package/dist/components/custom/dock/GlassDock.vue.d.ts +19 -3
- package/dist/components/custom/dock/composables/dockMorphContext.d.ts +18 -32
- package/dist/components/custom/dock/composables/dockMorphMeasure.d.ts +76 -145
- package/dist/components/custom/dock/composables/index.d.ts +1 -0
- package/dist/components/custom/dock/composables/railProjection.d.ts +45 -0
- package/dist/components/custom/dock/composables/useDockContextSilhouette.d.ts +192 -0
- package/dist/components/custom/dock/composables/useDockFission.d.ts +158 -0
- package/dist/components/custom/dock/composables/useDockItemDrag.d.ts +18 -0
- package/dist/components/custom/dock/composables/useDockShellProps.d.ts +38 -0
- package/dist/components/custom/dock/constants.d.ts +14 -3
- package/dist/components/custom/dock/index.d.ts +3 -0
- package/dist/components/custom/dot-flow-field/composables/flowField.d.ts +21 -0
- package/dist/components/custom/dot-flow-field/composables/flowGLProgram.d.ts +8 -0
- package/dist/components/custom/dot-flow-field/composables/flowSetupGL.d.ts +9 -0
- package/dist/components/custom/dot-flow-field/composables/flowSetupGLFlow.d.ts +12 -0
- package/dist/components/custom/dot-flow-field/composables/flowSetupWGPU.d.ts +7 -0
- package/dist/components/custom/dot-flow-field/composables/uniformBridgeWGPU.d.ts +28 -2
- package/dist/components/custom/dot-flow-field/composables/useFlowParticles.d.ts +18 -17
- package/dist/components/custom/dot-flow-field/constants.d.ts +51 -0
- package/dist/components/custom/dot-flow-field/index.d.ts +1 -1
- package/dist/components/custom/dot-flow-field/shaders/flow-field.compute.wgsl.d.ts +1 -1
- package/dist/components/custom/dot-flow-field/shaders/flow-field.glsl.d.ts +29 -0
- package/dist/components/custom/dot-flow-field/shaders/flow-field.render.wgsl.d.ts +2 -1
- package/dist/components/custom/dot-matrix/composables/uniformBridgeWGPU.d.ts +10 -1
- package/dist/components/custom/dot-matrix/composables/useDotSphere.d.ts +7 -0
- package/dist/components/custom/dot-matrix/constants.d.ts +14 -0
- package/dist/components/custom/dot-matrix/index.d.ts +1 -1
- package/dist/components/custom/dot-matrix/shaders/dot-matrix.glsl.d.ts +2 -2
- package/dist/components/custom/dot-matrix/shaders/dot-matrix.wgsl.d.ts +1 -1
- package/dist/components/custom/fourier-field/FourierField.vue.d.ts +4 -0
- package/dist/components/custom/fourier-field/composables/fourierFieldGLSetup.d.ts +9 -0
- package/dist/components/custom/fourier-field/composables/fourierFieldWGPUSetup.d.ts +11 -0
- package/dist/components/custom/fourier-field/composables/uniformBridgeWGPU.d.ts +16 -1
- package/dist/components/custom/fourier-field/composables/useFourierField.d.ts +22 -1
- package/dist/components/custom/fourier-field/constants.d.ts +53 -0
- package/dist/components/custom/fourier-field/shaders/fourier-field.glsl.d.ts +1 -1
- package/dist/components/custom/fourier-field/shaders/fourier-field.render.wgsl.d.ts +1 -1
- package/dist/components/custom/goo-blob/composables/easing.d.ts +1 -0
- package/dist/components/custom/goo-blob/composables/useBlobSatellites.d.ts +1 -0
- package/dist/components/custom/goo-blob/constants.d.ts +26 -1
- package/dist/components/custom/goo-blob/shaders/metaball-uniforms.glsl.d.ts +1 -1
- package/dist/components/custom/goo-blob/shaders/metaball.wgsl.d.ts +1 -1
- package/dist/components/custom/goo-blob/types.d.ts +50 -1
- package/dist/components/custom/goo-dot-matrix/composables/gooDotSetup.d.ts +32 -3
- package/dist/components/custom/goo-dot-matrix/composables/uniformBridgeWGPU.d.ts +14 -4
- package/dist/components/custom/goo-dot-matrix/constants.d.ts +55 -16
- package/dist/components/custom/goo-dot-matrix/index.d.ts +1 -1
- package/dist/components/custom/goo-dot-matrix/shaders/goo-dot.frag.d.ts +2 -0
- package/dist/components/custom/goo-dot-matrix/shaders/goo-dot.wgsl.d.ts +1 -0
- package/dist/components/custom/goo-filter/GooFilter.vue.d.ts +22 -0
- package/dist/components/custom/goo-filter/index.d.ts +1 -0
- package/dist/components/custom/handmark/brush.d.ts +17 -17
- package/dist/components/custom/handmark/constants.d.ts +28 -8
- package/dist/components/custom/handmark/geometry.d.ts +34 -1
- package/dist/components/custom/handmark/index.d.ts +1 -1
- package/dist/components/custom/icon-chip/types.d.ts +10 -0
- package/dist/components/custom/paper-backdrop/PaperBackdrop.vue.d.ts +18 -0
- package/dist/components/custom/paper-grid/composables/paperGrid.d.ts +44 -29
- package/dist/components/custom/paper-grid/composables/paperGridGLSetup.d.ts +2 -0
- package/dist/components/custom/paper-grid/composables/paperGridWGPUSetup.d.ts +3 -1
- package/dist/components/custom/paper-grid/composables/uniformBridgeWGPU.d.ts +2 -2
- package/dist/components/custom/paper-grid/constants.d.ts +44 -6
- package/dist/components/custom/paper-grid/index.d.ts +2 -2
- package/dist/components/custom/paper-grid/shaders/paper-grid.glsl.d.ts +1 -1
- package/dist/components/custom/paper-grid/shaders/paper-grid.wgsl.d.ts +1 -1
- package/dist/components/custom/selectable-chip/chipVariants.d.ts +39 -0
- package/dist/components/custom/selectable-chip/selectableChipVariants.d.ts +12 -20
- package/dist/components/custom/tabs/constants.d.ts +16 -8
- package/dist/components/custom/timeline/ScrubberTimeline.vue.d.ts +16 -0
- package/dist/components/custom/timeline/geometry.d.ts +0 -8
- package/dist/components/custom/toggle-chip/index.d.ts +15 -4
- package/dist/components/custom/watercolor-dot/WatercolorDot.vue.d.ts +12 -10
- package/dist/components/ui/_shared/useSurfaceAxis.d.ts +17 -3
- package/dist/components/ui/badge/Badge.vue.d.ts +14 -0
- package/dist/components/ui/badge/index.d.ts +1 -0
- package/dist/components/ui/button/Button.vue.d.ts +1 -0
- package/dist/components/ui/card/Card.vue.d.ts +1 -1
- package/dist/components/ui/card/ScrollCard.vue.d.ts +1 -1
- package/dist/components/ui/carousel/CarouselContent.vue.d.ts +2 -4
- package/dist/components/ui/dialog/DialogContent.vue.d.ts +9 -0
- package/dist/components/ui/drawer/Drawer.vue.d.ts +33 -14
- package/dist/components/ui/drawer/constants.d.ts +8 -6
- package/dist/components/ui/drawer/index.d.ts +12 -2
- package/dist/components/ui/select/SelectContent.vue.d.ts +9 -0
- package/dist/components/ui/slider/Slider.vue.d.ts +9 -0
- package/dist/composables/dom/index.d.ts +1 -0
- package/dist/composables/dom/useDragVelocity.d.ts +46 -0
- package/dist/composables/glass/wave/index.d.ts +4 -0
- package/dist/composables/glass/wave/waveField.d.ts +115 -0
- package/dist/composables/glass/wave/waveField.glsl.d.ts +1 -0
- package/dist/composables/glass/wave/waveField.wgsl.d.ts +1 -0
- package/dist/composables/glass/webgl/createCanvasLifecycle.d.ts +95 -2
- package/dist/composables/glass/webgl/useWebGLCanvas.d.ts +40 -2
- package/dist/composables/glass/webgpu/index.d.ts +1 -0
- package/dist/composables/glass/webgpu/useGpuSubstrate.d.ts +37 -0
- package/dist/composables/glass/webgpu/useWebGPUCanvas.d.ts +49 -2
- package/dist/composables/glass/webgpu/webgpuDevice.d.ts +1 -1
- package/dist/composables/motion/core/index.d.ts +4 -0
- package/dist/composables/motion/core/useHaptic.d.ts +48 -0
- package/dist/composables/motion/core/writeVelocityWeight.d.ts +31 -0
- package/dist/composables/motion/index.d.ts +2 -0
- package/dist/composables/motion/springPresets.d.ts +16 -17
- package/dist/composables/motion/suite.d.ts +2 -2
- package/dist/composables/motion/useBloomUp.d.ts +97 -0
- package/dist/composables/motion/useCelebrationBurst.d.ts +50 -0
- package/dist/composables/motion/useDockCtaReceive.d.ts +10 -28
- package/dist/composables/motion/useGooMorph.d.ts +72 -0
- package/dist/composables/motion/useLiquidFlex.d.ts +18 -0
- package/dist/composables/motion/useLiquidMorph.d.ts +108 -0
- package/dist/composables/motion/useLiquidPress.d.ts +12 -0
- package/dist/composables/motion/useLiquidReveal.d.ts +7 -4
- package/dist/composables/motion/useMorphField.d.ts +157 -0
- package/dist/composables/motion/useScrollPin.d.ts +49 -0
- package/dist/composables/motion/useScrollScene.d.ts +67 -0
- package/dist/concentric.js +532 -563
- package/dist/configurator.js +2 -2
- package/dist/confirm-dialog.js +3 -3
- package/dist/constellation.js +4 -4
- package/dist/context-menu.js +2 -2
- package/dist/controls.js +2 -2
- package/dist/createCanvasLifecycle-CuCrGRfq.js +173 -0
- package/dist/dark.js +1 -1
- package/dist/data-table.js +1 -1
- package/dist/deck.js +1 -1
- package/dist/dialog.js +3 -3
- package/dist/dock.js +1163 -618
- package/dist/dockContext-gFVS2gMg.js +18 -0
- package/dist/dom.js +7 -6
- package/dist/dot-flow-field.js +1114 -523
- package/dist/dot-matrix.js +348 -204
- package/dist/drawer.js +106 -96
- package/dist/{dropdown-menu-aJmV5SqE.js → dropdown-menu-CCfcCQ68.js} +3 -3
- package/dist/dropdown-menu.js +1 -1
- package/dist/easing.js +3 -3
- package/dist/expandable-container.js +2 -2
- package/dist/fading-scroll.js +1 -1
- package/dist/forms.js +6 -6
- package/dist/fourier-field.js +441 -197
- package/dist/fourier-math.js +1 -1
- package/dist/glass-panel.js +2 -2
- package/dist/glass-ui.css +1 -1
- package/dist/glass-ui.js +139 -135
- package/dist/goo-blob.js +11 -9
- package/dist/goo-dot-matrix.js +418 -198
- package/dist/handmark.js +137 -94
- 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.js +1 -1
- package/dist/icon-tooltip.js +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/instrument-chassis.js +1 -1
- package/dist/keyboard.js +1 -1
- package/dist/label.js +1 -1
- package/dist/labeled-field.js +7 -7
- package/dist/metric-badge.js +1 -1
- package/dist/metric-cell.js +1 -1
- package/dist/metric-stack.js +1 -1
- package/dist/motion-core.js +42 -39
- package/dist/motion-curves.js +20 -14
- package/dist/motion.js +226 -26
- package/dist/notification.js +1 -1
- package/dist/number-field.js +1 -1
- package/dist/pager-dots.js +1 -1
- package/dist/paper-backdrop.js +1 -1
- package/dist/paper-grid.js +315 -342
- package/dist/paperGrid-CXCSMbZ1.js +191 -0
- package/dist/popover.js +1 -1
- package/dist/{presets-CvOUqtdY.js → presets-QvYgnFIZ.js} +13 -12
- package/dist/progress.js +1 -1
- package/dist/pulse.js +1 -1
- package/dist/reactive.js +2 -2
- package/dist/{resolveCanvasColor-yPyIpJt9.js → resolveCanvasColor-DsSJk06I.js} +5 -5
- package/dist/scrolling-text.js +1 -1
- package/dist/search.js +7 -7
- package/dist/select.js +3 -3
- package/dist/selectable-chip.js +18 -35
- package/dist/separator.js +1 -1
- package/dist/{sheet-B2flBfLH.js → sheet-DUCIoOe0.js} +3 -3
- package/dist/sheet.js +1 -1
- package/dist/sidebar.js +1 -1
- package/dist/slider-CcICPe3u.js +149 -0
- package/dist/slider.js +1 -1
- package/dist/sortable-list.js +3 -3
- package/dist/{spectrum-walk-BVzA7Biz.js → spectrum-walk-cBNSx_zm.js} +1 -1
- package/dist/springPresets-DfoQ6XRY.js +64 -0
- package/dist/stacked-icons.js +54 -39
- package/dist/styles/cards.css +202 -2
- package/dist/styles/components.css +1 -3
- package/dist/styles/configurator.css +172 -7
- package/dist/styles/critical-partition.mjs +35 -2
- package/dist/styles/deferred.css +2 -0
- package/dist/styles/dock/adaptive-legibility.css +119 -0
- package/dist/styles/dock/density.css +18 -10
- package/dist/styles/dock/fission-bridge.css +552 -0
- package/dist/styles/dock/layers.css +88 -124
- package/dist/styles/dock/morph-bridge.css +15 -2
- package/dist/styles/dock/morph.css +45 -114
- package/dist/styles/dock/shape.css +137 -11
- package/dist/styles/dock/shell.css +1 -3
- package/dist/styles/dock/stack-rail.css +95 -7
- package/dist/styles/dock-controls/icon-button.css +34 -2
- package/dist/styles/dock-controls/triggers.css +23 -1
- package/dist/styles/dock-controls.css +18 -0
- package/dist/styles/dock.css +16 -1
- package/dist/styles/drawer.css +166 -0
- package/dist/styles/glass/glass-atom.css +244 -0
- package/dist/styles/glass/glass-capsule.css +143 -0
- package/dist/styles/glass/glass-chip.css +215 -0
- package/dist/styles/glass/liquid-enter.css +252 -0
- package/dist/styles/glass/liquid-morph.css +850 -0
- package/dist/styles/glass/material.css +70 -1
- package/dist/styles/glass/reveal.css +22 -2
- package/dist/styles/glass/rim.css +13 -1
- package/dist/styles/glass/surfaces.css +18 -8
- package/dist/styles/glass.css +11 -0
- package/dist/styles/icon-chip.css +45 -0
- package/dist/styles/index.css +11 -0
- package/dist/styles/jubilance.css +65 -0
- package/dist/styles/motion/morph-field.css +229 -0
- package/dist/styles/paper.css +230 -14
- package/dist/styles/scroll-choreography.css +135 -78
- package/dist/styles/segmented-tabs.css +85 -51
- package/dist/styles/select.css +151 -0
- package/dist/styles/tokens/color-radius.css +1 -1
- package/dist/styles/tokens/dark-arm.css +57 -8
- package/dist/styles/tokens/glass-deep.css +8 -4
- package/dist/styles/tokens/glass-fx.css +80 -2
- package/dist/styles/tokens/glass.css +140 -8
- package/dist/styles/tokens/light-dark.css +2 -2
- package/dist/styles/tokens/property-regs.css +144 -0
- package/dist/styles/tokens/scale-paper.css +20 -8
- package/dist/styles/tokens/scheme-motion.css +92 -157
- package/dist/styles/tokens/scheme-spring.css +239 -0
- package/dist/styles/tokens/scroll-tokens.css +15 -15
- package/dist/styles/tokens/shadow.css +73 -13
- package/dist/styles/tokens.css +9 -2
- package/dist/styles/utilities/btn.css +70 -0
- package/dist/switch.js +1 -1
- package/dist/tabs.js +198 -181
- package/dist/timeline.js +241 -206
- package/dist/toast.js +1 -1
- package/dist/toggle-chip.js +14 -41
- package/dist/toggle-group.js +1 -1
- package/dist/tooltip.js +1 -1
- package/dist/typewriter.js +1 -1
- package/dist/{uniformBridgeWGPU-CtAKl45L.js → uniformBridgeWGPU-BCse1SHU.js} +191 -127
- package/dist/{useAnimatedNumber-CLrxicG9.js → useAnimatedNumber-BntskVdQ.js} +1 -1
- package/dist/{useConfiguratorState-4xblKfwd.js → useConfiguratorState-22BcULzF.js} +37 -35
- package/dist/useDockCtaReceive-DX7RDb6_.js +88 -0
- package/dist/{useDragMorph-BUgAC-zK.js → useDragMorph-DGLSewwB.js} +2 -2
- package/dist/useDragVelocity-CjcfX3dA.js +57 -0
- package/dist/useGooMorph-Cs13NgYL.js +104 -0
- package/dist/useGpuSubstrate-Ceet70xq.js +347 -0
- package/dist/{useViewTransition-CUI1nAgn.js → useHaptic-CPz5BT9I.js} +40 -1
- package/dist/{useLiquidFlex-UmA6LMZu.js → useLiquidFlex-Cc6PjVJD.js} +8 -3
- package/dist/useLiquidPress-CtOQ8Z0_.js +43 -0
- package/dist/useMorphField-ogBM7ubT.js +141 -0
- package/dist/{useScrollChrome-D66AVP7C.js → useScrollChrome-JuImi1DM.js} +2 -2
- package/dist/{useSpringMount-BWDnKIwh.js → useSpringMount-DFxtzmkR.js} +1 -1
- package/dist/{useSpringPress-B1-Czp-V.js → useSpringPress-VM9RgVq3.js} +1 -1
- package/dist/{useSurfaceAxis-g0NloYEF.js → useSurfaceAxis-Ci7Dnaw2.js} +1 -1
- package/dist/{useTouchGate-CBZTD4SD.js → useTouchGate-B1Lf9XqN.js} +1 -1
- package/dist/virtual.js +1 -1
- package/dist/watercolor-dot.js +16 -26
- package/dist/writeVelocityWeight-Bh83xZfs.js +19 -0
- package/package.json +14 -3
- package/src/styles/cards.css +202 -2
- package/src/styles/configurator.css +172 -7
- package/src/styles/critical-partition.mjs +35 -2
- package/src/styles/dock/adaptive-legibility.css +119 -0
- package/src/styles/dock/density.css +18 -10
- package/src/styles/dock/fission-bridge.css +552 -0
- package/src/styles/dock/layers.css +88 -124
- package/src/styles/dock/morph-bridge.css +15 -2
- package/src/styles/dock/morph.css +45 -114
- package/src/styles/dock/shape.css +137 -11
- package/src/styles/dock/shell.css +1 -3
- package/src/styles/dock/stack-rail.css +95 -7
- package/src/styles/dock-controls/icon-button.css +34 -2
- package/src/styles/dock-controls/triggers.css +23 -1
- package/src/styles/dock-controls.css +18 -0
- package/src/styles/dock.css +16 -1
- package/src/styles/drawer.css +164 -0
- package/src/styles/glass/glass-atom.css +244 -0
- package/src/styles/glass/glass-capsule.css +143 -0
- package/src/styles/glass/glass-chip.css +215 -0
- package/src/styles/glass/liquid-enter.css +252 -0
- package/src/styles/glass/liquid-morph.css +850 -0
- package/src/styles/glass/material.css +70 -1
- package/src/styles/glass/reveal.css +22 -2
- package/src/styles/glass/rim.css +13 -1
- package/src/styles/glass/surfaces.css +18 -8
- package/src/styles/glass.css +11 -0
- package/src/styles/icon-chip.css +45 -0
- package/src/styles/index.css +11 -0
- package/src/styles/jubilance.css +65 -0
- package/src/styles/motion/morph-field.css +229 -0
- package/src/styles/paper.css +230 -14
- package/src/styles/scroll-choreography.css +135 -78
- package/src/styles/segmented-tabs.css +85 -47
- package/src/styles/select.css +151 -0
- package/src/styles/tokens/color-radius.css +1 -1
- package/src/styles/tokens/dark-arm.css +57 -8
- package/src/styles/tokens/glass-deep.css +8 -4
- package/src/styles/tokens/glass-fx.css +80 -2
- package/src/styles/tokens/glass.css +140 -8
- package/src/styles/tokens/light-dark.css +2 -2
- package/src/styles/tokens/property-regs.css +144 -0
- package/src/styles/tokens/scale-paper.css +20 -8
- package/src/styles/tokens/scheme-motion.css +92 -157
- package/src/styles/tokens/scheme-spring.css +239 -0
- package/src/styles/tokens/scroll-tokens.css +15 -15
- package/src/styles/tokens/shadow.css +73 -13
- package/src/styles/tokens.css +9 -2
- package/src/styles/utilities/btn.css +70 -0
- package/dist/DialogContent-6JtTB5x2.js +0 -106
- package/dist/PagerDots-Cjx96la-.js +0 -98
- package/dist/PaperBackdrop-CqwjnfLv.js +0 -31
- package/dist/badge-D9XWW4GT.js +0 -53
- package/dist/button-5dY1Dvhd.js +0 -125
- package/dist/components/custom/concentric/composables/ringField.d.ts +0 -85
- package/dist/createCanvasLifecycle-Gh45Ce-p.js +0 -93
- package/dist/dockContext-BNfyPLe9.js +0 -17
- package/dist/slider-2A0rPn79.js +0 -142
- package/dist/springPresets-Ce7OYCm9.js +0 -46
- package/dist/useDockCtaReceive-DfFkmgL1.js +0 -82
- package/dist/useGpuSubstrate-4pTcp6mX.js +0 -294
- package/dist/useLiquidPress-BooG97RY.js +0 -39
- /package/dist/{CollapsibleContent-68dEXIAl.js → CollapsibleContent-D7UNsXQr.js} +0 -0
- /package/dist/{DialogFooter-9phqcRIS.js → DialogFooter-DoLy0ewI.js} +0 -0
- /package/dist/{InstrumentChassis-CxsHSyMj.js → InstrumentChassis-UUJX0-mW.js} +0 -0
- /package/dist/{Label-C2ejNWeC.js → Label-B_HPqi_q.js} +0 -0
- /package/dist/{ModalOverlay-D1VrWyoi.js → ModalOverlay-DfAf7o15.js} +0 -0
- /package/dist/{SelectGroup-BFiod7X2.js → SelectGroup-Dcczq44n.js} +0 -0
- /package/dist/{SelectSeparator-C2UGOkXF.js → SelectSeparator-CNRGG7Ew.js} +0 -0
- /package/dist/{Separator-DQcwC2TR.js → Separator-Cf9-JFgi.js} +0 -0
- /package/dist/{_plugin-vue_export-helper-C1je1s0u.js → _plugin-vue_export-helper-gLzyemvl.js} +0 -0
- /package/dist/{color-Cs0-oxYL.js → color-B9jZdhJX.js} +0 -0
- /package/dist/{compile-nZ1xVYTp.js → compile-INR_tPk_.js} +0 -0
- /package/dist/{constants--C2DkLW8.js → constants-BWj7DkMn.js} +0 -0
- /package/dist/{createContext-CpBNTRMI.js → createContext-Cd23P9j0.js} +0 -0
- /package/dist/{dotMatrixField-D_x9_1qq.js → dotMatrixField-CRO0ZFk4.js} +0 -0
- /package/dist/{flow.glsl-B2P7e0MT.js → flow.glsl-DqEGRpl4.js} +0 -0
- /package/dist/{math-Eb0w3LqU.js → math-5RcIgCB4.js} +0 -0
- /package/dist/{menuItemVariants-D8VNHq22.js → menuItemVariants-DAXquKja.js} +0 -0
- /package/dist/{prng-B-d9eYX8.js → prng-B5tIXTtj.js} +0 -0
- /package/dist/{procedural-color.wgsl-m7Zgv35j.js → procedural-color.wgsl-C1Y5PkM6.js} +0 -0
- /package/dist/{scrollReader-DI1NWxUw.js → scrollReader-rc3Ns_NM.js} +0 -0
- /package/dist/{useControlSize-SH1UmJCi.js → useControlSize-DAZ062x7.js} +0 -0
- /package/dist/{useFuzzySearch-DIhcYtcw.js → useFuzzySearch-0fTYOhS4.js} +0 -0
- /package/dist/{useGlobalDark-CmjB9E32.js → useGlobalDark-B4HO9LXG.js} +0 -0
- /package/dist/{useIntersectionPause-Dbozzjgm.js → useIntersectionPause-DO8Vl4gs.js} +0 -0
- /package/dist/{useInterval-CNdua40W.js → useInterval-BVUI-sez.js} +0 -0
- /package/dist/{useKeyboardShortcuts-BPRp33Im.js → useKeyboardShortcuts-BEut54Tk.js} +0 -0
- /package/dist/{usePointerVelocityField-QLsy3_kv.js → usePointerVelocityField-BrkqZFhj.js} +0 -0
- /package/dist/{useResizeObserver-Bpoi7tRE.js → useResizeObserver-DdEn3v2f.js} +0 -0
- /package/dist/{useResolveTokenColor-vAylyR0x.js → useResolveTokenColor-ChOnCckA.js} +0 -0
- /package/dist/{useScrollProgress-c3yxmH6a.js → useScrollProgress-A0M6qRl7.js} +0 -0
- /package/dist/{useSortable-BVqlJRBR.js → useSortable-DQV_UNDw.js} +0 -0
- /package/dist/{useTextHighlight-NmBM5V_4.js → useTextHighlight-Bma3UlKA.js} +0 -0
- /package/dist/{useTimer-BHJOKr35.js → useTimer-BBLGPXR8.js} +0 -0
- /package/dist/{useUserInvalidAria-y5namzeE.js → useUserInvalidAria-EmmwWPOl.js} +0 -0
- /package/dist/{useViewportReady-anbac3m6.js → useViewportReady-C9pYnn7K.js} +0 -0
- /package/dist/{vReveal-D9k0jADx.js → vReveal-CT1KtwZA.js} +0 -0
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
/* tokens/scheme-motion.css
|
|
2
|
-
§-1 color-scheme · §0 font · §1 duration · §2
|
|
2
|
+
§-1 color-scheme · §0 font · §1 duration · §2.W/§2.X motion-weight + cartoon-punch ·
|
|
3
|
+
§2.A ambient-motion · §2.B/§2.C · §3 z-index.
|
|
4
|
+
The §2 EASING block (spring linear() curves + per-spring duration clocks +
|
|
5
|
+
goo-flow curves + cubic-bezier cores/aliases) is carved into the adjacent
|
|
6
|
+
scheme-spring.css to hold the no-god-module 500-line bound; it @imports
|
|
7
|
+
IMMEDIATELY AFTER this file (same :root cascade slot).
|
|
3
8
|
Carved from the tokens.css cascade root; @import-ed by tokens.css in
|
|
4
9
|
cascade order. Same :root cascade context as its siblings. */
|
|
5
10
|
:root {
|
|
@@ -145,162 +150,55 @@
|
|
|
145
150
|
--motion-stagger-relaxed: 120ms;
|
|
146
151
|
|
|
147
152
|
/* ═══════════════════════════════════════════════
|
|
148
|
-
§2
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
| rotate) | | ONE button/interactive |
|
|
198
|
-
| | | scale register) or |
|
|
199
|
-
| | | `--spring-snappy` |
|
|
200
|
-
| Size / morph (dock V↔H, indicator size- | [SPATIAL] | `--spring-dock` / |
|
|
201
|
-
| correction, reveal source-rect bloom) | | `--spring-snappy`, |
|
|
202
|
-
| | | expressed as a |
|
|
203
|
-
| | | COMPOSITOR transform |
|
|
204
|
-
| | | (P5) — NEVER an |
|
|
205
|
-
| | | animated width/height |
|
|
206
|
-
| Enter (mount, popover open, dialog in, reveal) | [SPATIAL] | `--spring-bouncy` / |
|
|
207
|
-
| | | `--spring-snappy` |
|
|
208
|
-
| Bold decelerating arrival (the SOTA arrival — | [SPATIAL] | `--ease-out-expo` |
|
|
209
|
-
| reveal draw-on, big-distance settle) | | (cubic-bezier(.16,1, |
|
|
210
|
-
| | | .3,1); the house expo) |
|
|
211
|
-
| Exit (unmount, close) | [EFFECTS] | `--ease-out` / |
|
|
212
|
-
| | | `--ease-standard` |
|
|
213
|
-
| | | (bezier, NO overshoot —|
|
|
214
|
-
| | | an exit must never |
|
|
215
|
-
| | | overshoot past gone) |
|
|
216
|
-
| Position-tracked (specular pointer follow) | [EFFECTS] | `--ease-standard` |
|
|
217
|
-
|
|
218
|
-
The SOTA arrival ease is the EXISTING `--ease-out-expo` (alias →
|
|
219
|
-
`--motion-ease-out-expo` = `cubic-bezier(0.16, 1, 0.3, 1)`, the house
|
|
220
|
-
expo with the value.js `easeOutExpo` JS twin in the MOTION_CURVES table)
|
|
221
|
-
— NOT a net-new token. The motion canon NAMES it as the arrival register;
|
|
222
|
-
it is not re-minted (a duplicate alias would fail proof:animation-
|
|
223
|
-
coherence's EASING-TABLE-BOUND arm — the curve already has its canonical
|
|
224
|
-
+ alias row in `curves.ts`).
|
|
225
|
-
|
|
226
|
-
The BUTTON family (`.btn-pill` / `.tap-squish` / `.glass-btn` /
|
|
227
|
-
`btn-interactive`) UNIFIES its `scale` transform leg onto ONE register —
|
|
228
|
-
`--spring-smooth` — so hover + press read as one motion language (the
|
|
229
|
-
hover lift is the restrained `--scale-hover-btn` = 1.05, not the 1.08
|
|
230
|
-
`--scale-hover`). Springs read alive on TRANSFORM and ENTER (overshoot =
|
|
231
|
-
physicality); a spring on a COLOR or an EXIT reads as a wobble/hesitation.
|
|
232
|
-
`--ease-apple` is the ambient-only register (consumed solely by the Pulse
|
|
233
|
-
aura `--animate-ambient-pulse-easing` — NOT a second smooth-ease authority
|
|
234
|
-
for interactive transforms; those use `--spring-smooth`).
|
|
235
|
-
═══════════════════════════════════════════════ */
|
|
236
|
-
--spring-smooth: linear(0, 0.09804 2.041%, 0.29288 4.082%, 0.49447 6.122%, 0.66436 8.163%, 0.79208 10.204%, 0.88050 12.245%, 0.93754 14.286%, 0.97182 16.327%, 0.99083 18.367%, 1.00027 20.408%, 1.00413 22.449%, 1.00502 24.490%, 1.00453 26.531%, 1.00355 28.571%, 1.00254 30.612%, 1.00169 32.653%, 1.00105 34.694%, 1.00060 36.735%, 1.00031 38.776%, 1.00014 40.816%, 1.00005 42.857%, 1.00000 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);
|
|
237
|
-
--spring-snappy: linear(0, 0.10038 2.041%, 0.30488 4.082%, 0.51991 6.122%, 0.70158 8.163%, 0.83608 10.204%, 0.92554 12.245%, 0.97893 14.286%, 1.00665 16.327%, 1.01792 18.367%, 1.01981 20.408%, 1.01715 22.449%, 1.01292 24.490%, 1.00873 26.531%, 1.00530 28.571%, 1.00282 30.612%, 1.00120 32.653%, 1.00027 34.694%, 0.99980 36.735%, 0.99962 38.776%, 0.99961 40.816%, 0.99967 42.857%, 0.99976 44.898%, 0.99984 46.939%, 0.99991 48.980%, 0.99995 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);
|
|
238
|
-
--spring-bouncy: linear(0, 0.10764 2.041%, 0.34440 4.082%, 0.60803 6.122%, 0.83510 8.163%, 0.99669 10.204%, 1.08926 12.245%, 1.12435 14.286%, 1.11986 16.327%, 1.09372 18.367%, 1.06042 20.408%, 1.02959 22.449%, 1.00623 24.490%, 0.99172 26.531%, 0.98510 28.571%, 0.98426 30.612%, 0.98688 32.653%, 0.99095 34.694%, 0.99505 36.735%, 0.99835 38.776%, 1.00055 40.816%, 1.00170 42.857%, 1.00202 44.898%, 1.00180 46.939%, 1.00132 48.980%, 1.00079 51.020%, 1.00033 53.061%, 1.00001 55.102%, 0.99982 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);
|
|
239
|
-
--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);
|
|
240
|
-
--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);
|
|
241
|
-
--spring-press: linear(0, 0.09804 2.041%, 0.29288 4.082%, 0.49447 6.122%, 0.66436 8.163%, 0.79208 10.204%, 0.88050 12.245%, 0.93754 14.286%, 0.97182 16.327%, 0.99083 18.367%, 1.00027 20.408%, 1.00413 22.449%, 1.00502 24.490%, 1.00453 26.531%, 1.00355 28.571%, 1.00254 30.612%, 1.00169 32.653%, 1.00105 34.694%, 1.00060 36.735%, 1.00031 38.776%, 1.00014 40.816%, 1.00005 42.857%, 1.00000 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);
|
|
242
|
-
|
|
243
|
-
/* ── PER-SPRING DURATION CLOCK (BA.W-GLASS-CAL Unit 3) ──
|
|
244
|
-
Generated from `scripts/regen-spring-tokens.mjs` — DO NOT hand-edit.
|
|
245
|
-
Each `--spring-<name>-duration` is the spring's OWN 2%-band envelope-settle
|
|
246
|
-
time `t_s = -ln(0.02) / (ζ·ωₙ)` (ωₙ = 2π/response), derived from the SAME
|
|
247
|
-
(response, ζ) PRESETS table the `--spring-*` `linear()` curves above
|
|
248
|
-
derive from — never a hand value.
|
|
249
|
-
|
|
250
|
-
WHY: the `--spring-<name>` curve is NORMALIZED to 0..1 and discards the
|
|
251
|
-
spring's settle time. Pairing it with a generic `--duration-*` clock
|
|
252
|
-
(0.2/0.3/0.45s) re-timed EVERY spring to the same wall clock — snappy
|
|
253
|
-
(response 0.35s) and smooth (0.5s) both ran 300ms, so the crisp snappy
|
|
254
|
-
register dragged a dead sub-pixel tail (the R10-2 read: within-1px at
|
|
255
|
-
~109ms but the transition ran 300ms). These clocks re-time UNDER each
|
|
256
|
-
register to its own settle WITHOUT touching the §6 register canon (which
|
|
257
|
-
spring fits which job): a `transition` pairs `--spring-<name>` with the
|
|
258
|
-
matching `--spring-<name>-duration`. */
|
|
259
|
-
--spring-smooth-duration: 0.36s;
|
|
260
|
-
--spring-snappy-duration: 0.34s;
|
|
261
|
-
--spring-bouncy-duration: 0.57s;
|
|
262
|
-
--spring-gentle-duration: 0.44s;
|
|
263
|
-
--spring-dock-duration: 0.28s;
|
|
264
|
-
--spring-press-duration: 0.11s;
|
|
265
|
-
|
|
266
|
-
/* ── DECK SLIDE-TRANSITION CURVE (BC.W-DECK) ──
|
|
267
|
-
The full-viewport keyboard-paged deck's slide transition rides the SAME
|
|
268
|
-
`--spring-smooth` register the deck's `DECK_SPRING` samples (the calm-settle
|
|
269
|
-
`.smooth` family; the (response, ζ) pair lives in deck/constants.ts) — an
|
|
270
|
-
ALIAS, NOT a new spring family (the donor's own fence + the W-GLASS-CAL spring
|
|
271
|
-
fence). `--spring-deck: var(--spring-smooth)` so a deck slide reads as a calm
|
|
272
|
-
settle, not a bounce; the JS half (`installDeckSpring`) consumes keyframes.js
|
|
273
|
-
`springTimingFunction(DECK_SPRING)` for the count-up easing. */
|
|
274
|
-
--spring-deck: var(--spring-smooth);
|
|
275
|
-
|
|
276
|
-
/* Core cubic-bezier (exits, fallbacks, non-spring uses) */
|
|
277
|
-
--motion-ease-standard: cubic-bezier(0.4, 0, 0.2, 1);
|
|
278
|
-
--motion-ease-out: cubic-bezier(0, 0, 0.2, 1);
|
|
279
|
-
--motion-ease-in: cubic-bezier(0.4, 0, 1, 1);
|
|
280
|
-
--motion-ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
|
|
281
|
-
|
|
282
|
-
--ease-standard: var(--motion-ease-standard);
|
|
283
|
-
--ease-out: var(--motion-ease-out);
|
|
284
|
-
--ease-in: var(--motion-ease-in);
|
|
285
|
-
--ease-out-expo: var(--motion-ease-out-expo);
|
|
286
|
-
|
|
287
|
-
/* Apple-inspired — micro-interactions, switches, dock hover */
|
|
288
|
-
--motion-ease-apple: cubic-bezier(0.25, 0.1, 0.25, 1);
|
|
289
|
-
|
|
290
|
-
--ease-apple: var(--motion-ease-apple);
|
|
291
|
-
--ease-spring: var(--spring-snappy);
|
|
292
|
-
--ease-decelerate: var(--ease-out);
|
|
293
|
-
--ease-accelerate: var(--ease-in);
|
|
294
|
-
|
|
295
|
-
/* BC.W-MOTION-PRESETS — the brand "convergence-reveal" / partial-sum settle.
|
|
296
|
-
The Fourier partial sum converges ONTO its target with a decaying Gibbs
|
|
297
|
-
ripple — a monotone critically-damped approach, NO sustained overshoot past
|
|
298
|
-
terminal. That curve IS `gentle` (ζ=1.0, overshoot 0), so this is the ALIAS
|
|
299
|
-
reuse: `--ease-convergence` resolves to `--spring-gentle` (no new
|
|
300
|
-
SPRING_PRESETS row, no second curve). The settle clock is the per-spring
|
|
301
|
-
`--spring-gentle-duration`. The N-term build-up is the `useStagger`
|
|
302
|
-
orchestration ON this curve (a documented recipe, not a new primitive). */
|
|
303
|
-
--ease-convergence: var(--spring-gentle);
|
|
153
|
+
§2.W BD.W-MOTION-WEIGHT — the GOVERNING motion scalar (rest decl)
|
|
154
|
+
|
|
155
|
+
The universal driver-motion governor (the @property reg lives in
|
|
156
|
+
property-regs.css §18 beside --ui-scale). 0 = still, 1 = full cel. Rest
|
|
157
|
+
1/φ ≈ 0.618: present, alive, never manic (§L4/§L6). DRIVER-scoped: a surface
|
|
158
|
+
the finger/route moved INHERITS this; an OBSERVER surface (auto-carousel
|
|
159
|
+
content, list reorder under scroll) pins it to 0 LOCALLY. It co-scales squash
|
|
160
|
+
depth, overshoot share, anticipation pull-back, and cartoon-shadow travel
|
|
161
|
+
together so they read as ONE proportioned deformation.
|
|
162
|
+
|
|
163
|
+
The SQUISH CAP is derived SITE-LOCALLY at the consuming element (the JS
|
|
164
|
+
getters in useDockOrientationMorph / useTabIndicator / useTabDragMorph /
|
|
165
|
+
useLiquidPress read `--motion-weight` off their OWN element and return
|
|
166
|
+
`1 + (cap_token − 1)·(weight + (1−weight)·flexVel)/0.618`), NEVER a `:root`
|
|
167
|
+
calc token — an unregistered `:root` cap calc over var(--motion-weight) is
|
|
168
|
+
substituted at :root (0.618) and inherits the FROZEN text, so a child's
|
|
169
|
+
scoped weight→0 would never re-evaluate it (the spike's load-bearing
|
|
170
|
+
correction). The cap reads the EXISTING `--*-max-stretch` token directly with
|
|
171
|
+
a (weight/0.618) factor — zero new `--*-stretch-k` coefficient cohort. */
|
|
172
|
+
--motion-weight: 0.618;
|
|
173
|
+
|
|
174
|
+
/* ═══════════════════════════════════════════════
|
|
175
|
+
§2.X BD.W-CARTOON-PUNCH — the third pole, a RAW shaped linear()
|
|
176
|
+
|
|
177
|
+
A single damped spring is monotone-from-one-side — it CANNOT dip below origin
|
|
178
|
+
then overshoot past it. iOS-27's loudest moments want ANTICIPATION (pull back
|
|
179
|
+
before launch) AND EXAGGERATION (punch past the spring fence). So it ships as
|
|
180
|
+
a hand-shaped linear() raw token: dip ~−4% BELOW origin (anticipation — a
|
|
181
|
+
thing no damped spring can do), cross 1.0, punch to ~1.22 (deliberately past
|
|
182
|
+
the ≤12% spring overshoot fence — which is WHY it is a register, not a
|
|
183
|
+
spring), settle. Exactly ONE sign change before the peak + a monotone settle
|
|
184
|
+
after (the shape-sanity fence).
|
|
185
|
+
|
|
186
|
+
NOT generated by regen-spring-tokens.mjs (which emits only (response,ζ)
|
|
187
|
+
springs from springPresets.ts), NOT a SPRING_PRESETS row, NOT a MOTION_CURVES
|
|
188
|
+
entry (MotionCurveKind is the closed spring|bezier union; a shaped linear()
|
|
189
|
+
with a negative leg is neither). A raw --ease-* property — zero engine
|
|
190
|
+
extension, zero TS change. Drives TRANSFORM/opacity ONLY (compositor-safe,
|
|
191
|
+
both engines — Baseline 17.2+, plain linear(), no -webkit prefix). The surface
|
|
192
|
+
composing it carries `--motion-weight: 1` in the SAME recipe (the loud-register
|
|
193
|
+
coupling — so the punch is never accidentally muted to ~+13.6% by inheriting
|
|
194
|
+
the rest 0.618). PRM zeroes the weight → the amplitude collapses (the springs
|
|
195
|
+
keep their own respectReducedMotion endpoint-snap). */
|
|
196
|
+
--ease-cartoon-punch: linear(
|
|
197
|
+
0, -0.012, -0.038 12%, -0.018 18%,
|
|
198
|
+
0.18 34%, 0.62 46%, 0.98 56%,
|
|
199
|
+
1.14 64%, 1.22 70%,
|
|
200
|
+
1.16 78%, 1.06 86%, 1.012 92%, 1
|
|
201
|
+
);
|
|
304
202
|
|
|
305
203
|
/* ═══════════════════════════════════════════════
|
|
306
204
|
§2.A AMBIENT MOTION — Pulse aura tokens
|
|
@@ -426,3 +324,40 @@
|
|
|
426
324
|
--z-debug: 99999;
|
|
427
325
|
|
|
428
326
|
}
|
|
327
|
+
|
|
328
|
+
/* ═══════════════════════════════════════════════
|
|
329
|
+
BD.W-MOTION-WEIGHT — the driver / observer carve (design.md §L4, gate C8)
|
|
330
|
+
|
|
331
|
+
The governing weight rests at the 1/φ centroid. LOUD DRIVERS — the dock morph
|
|
332
|
+
stage, an earned celebration — pin it to 1 so even a SLOW user-driven morph
|
|
333
|
+
rides the full squish/overshoot register (iOS reserves the weighty bounce for
|
|
334
|
+
what the user drives). CALM OBSERVERS — a programmatic reorder, an auto-advancing
|
|
335
|
+
carousel — pin it to 0: auto-motion that springs reads cheap. A single
|
|
336
|
+
element-scoped assignment, the same seam the PRM carve uses, inheriting down. */
|
|
337
|
+
.liquid-stage {
|
|
338
|
+
--motion-weight: 1;
|
|
339
|
+
}
|
|
340
|
+
:where([data-reorder], [data-autoplay]) {
|
|
341
|
+
--motion-weight: 0;
|
|
342
|
+
}
|
|
343
|
+
|
|
344
|
+
/* ═══════════════════════════════════════════════
|
|
345
|
+
BD.W-MOTION-WEIGHT / BD.W-CARTOON-PUNCH — the PRM carve
|
|
346
|
+
|
|
347
|
+
ONE assignment zeroes ALL of the goo that rides on top of the springs. Because
|
|
348
|
+
every squish/punch/shadow-travel reads through `--motion-weight` (the site-local
|
|
349
|
+
cap collapses to `1 + (cap−1)·0 == 1.0`, the inert-cast travel/spread collapse to
|
|
350
|
+
their rest, the §2c velocity boost is gated by the same weight), this single line
|
|
351
|
+
zeroes the squash, the overshoot share, the anticipation pull, the cartoon-shadow
|
|
352
|
+
travel, AND the velocity boost together. The springs keep their own
|
|
353
|
+
`respectReducedMotion` endpoint-snap in SpringProgress; the weight zeroes only the
|
|
354
|
+
GOO. The fade survives. `--ease-cartoon-punch` re-aliases to the non-overshooting
|
|
355
|
+
standard ease (belt-and-suspenders — the weight=0 already kills the punch
|
|
356
|
+
amplitude on a weight-scaled surface; the alias also removes the curve shape for
|
|
357
|
+
any consumer driving a non-amplitude leg). */
|
|
358
|
+
@media (prefers-reduced-motion: reduce) {
|
|
359
|
+
:root {
|
|
360
|
+
--motion-weight: 0;
|
|
361
|
+
--ease-cartoon-punch: var(--ease-standard);
|
|
362
|
+
}
|
|
363
|
+
}
|
|
@@ -0,0 +1,239 @@
|
|
|
1
|
+
/* tokens/scheme-spring.css
|
|
2
|
+
§2 EASING — Spring curves via linear() · per-spring duration clocks ·
|
|
3
|
+
goo-morph dwell-flow curves · cubic-bezier cores + aliases.
|
|
4
|
+
|
|
5
|
+
Carved from scheme-motion.css's §2 EASING block to hold the no-god-module
|
|
6
|
+
500-line bound (BD.W-CUT re-grew scheme-motion past it). @import-ed by
|
|
7
|
+
tokens.css IMMEDIATELY AFTER scheme-motion.css — adjacent same-selector
|
|
8
|
+
:root{} at the SAME cascade slot, so the spring/easing tokens resolve in the
|
|
9
|
+
same order their consumers (color-radius and the later partials) expect.
|
|
10
|
+
Custom properties resolve order-independently within :root, so the split is
|
|
11
|
+
byte-isomorphic at the cascade. */
|
|
12
|
+
:root {
|
|
13
|
+
/* ═══════════════════════════════════════════════
|
|
14
|
+
§2 EASING — Spring curves via linear()
|
|
15
|
+
|
|
16
|
+
Generated from `scripts/regen-spring-tokens.mjs` — DO NOT hand-edit.
|
|
17
|
+
To tune a spring: edit the PRESETS table in the script and re-run
|
|
18
|
+
`node scripts/regen-spring-tokens.mjs`. The script invokes
|
|
19
|
+
`springLinearStops()` from `@mkbabb/keyframes.js` which solves the
|
|
20
|
+
analytic second-order damped harmonic oscillator and emits CSS
|
|
21
|
+
`linear()` stops; this is the single source of truth tying each
|
|
22
|
+
(response, ζ) pair to its serialized curve.
|
|
23
|
+
|
|
24
|
+
iOS-canonical (response, dampingFraction) per AL-X4 §3 (BC.W-SPRING-EASE
|
|
25
|
+
eased `snappy`+`bouncy` to fill their clocks + minted the `press` register):
|
|
26
|
+
smooth: (0.50s, ζ=0.86) — gentle settle, sub-perceptual overshoot ~0.5%
|
|
27
|
+
snappy: (0.42s, ζ=0.78) — quick crisp, eased to fill its clock, overshoot ~+2.0%
|
|
28
|
+
bouncy: (0.50s, ζ=0.55) — emphatic, overshoot ~+12.6% (the Apple 12-18% band)
|
|
29
|
+
gentle: (0.70s, ζ=1.00) — patient critically-damped
|
|
30
|
+
dock: (0.56s, ζ=0.58) — the WEIGHTY iOS-27 gooey morph (collapse/expand + V↔H + fission), slow inertial settle, audacious overshoot ~+11%
|
|
31
|
+
press: (0.15s, ζ=0.86) — the iOS interactive tap-press, sub-100ms answer, ~+0.5%
|
|
32
|
+
|
|
33
|
+
Note on `smooth`: at ζ=0.86 the analytic solver produces a peak
|
|
34
|
+
of 1.00498 (+0.5%) at the 24% slot — mathematically present but
|
|
35
|
+
sub-perceptual. I keep ζ=0.86 rather than promoting to ζ=1.0
|
|
36
|
+
because true critical damping is `gentle`'s register, and
|
|
37
|
+
`smooth` wants a slightly faster visual settle than `gentle`'s
|
|
38
|
+
patient curve. The 0.5% peak does not read as overshoot to the
|
|
39
|
+
eye but does narrowly distinguish `smooth` from `gentle`.
|
|
40
|
+
|
|
41
|
+
── EASING DOCTRINE (AX.W52 §6 — which easing fits which job) ──
|
|
42
|
+
ONE recorded rule so the animation easing stops forking live. This
|
|
43
|
+
FORMALIZES the already-correct `transitions.css` idiom (enter=spring,
|
|
44
|
+
exit=bezier) as the house rule every recipe reaches for.
|
|
45
|
+
|
|
46
|
+
BB.W-MOTION-CANON — the table embodies ONE principle (Material 3's
|
|
47
|
+
spatial-vs-effects split, codified in `docs/precepts/motion-canon.md`
|
|
48
|
+
as P1): a SPATIAL channel (the box MOVES/RESHAPES — position, SIZE,
|
|
49
|
+
rotation, corners) rides a `--spring-<name>` (overshoot = physicality);
|
|
50
|
+
an EFFECTS channel (the surface RE-TINTS — color, opacity, box-shadow)
|
|
51
|
+
rides a bezier `--ease-*` (a colour cross-fade reads as a wobble on a
|
|
52
|
+
spring). Each row below is tagged [SPATIAL] (spring) or [EFFECTS]
|
|
53
|
+
(bezier) so the rule is legible, not implicit. The canon doc is the
|
|
54
|
+
canonical home; this table is the SOURCE it re-states:
|
|
55
|
+
|
|
56
|
+
| Transition kind | Tier | Easing |
|
|
57
|
+
|--------------------------------------------------|-----------|--------------------------|
|
|
58
|
+
| Surface props (bg, border, color, box-shadow, | [EFFECTS] | `--ease-standard` (bezier|
|
|
59
|
+
| opacity) | | — a colour cross-fade |
|
|
60
|
+
| | | reads as a wobble on a |
|
|
61
|
+
| | | spring) |
|
|
62
|
+
| Transform — hover/press/active (scale, translate,| [SPATIAL] | `--spring-smooth` (the |
|
|
63
|
+
| rotate) | | ONE button/interactive |
|
|
64
|
+
| | | scale register) or |
|
|
65
|
+
| | | `--spring-snappy` |
|
|
66
|
+
| Size / morph (dock V↔H, indicator size- | [SPATIAL] | `--spring-dock` / |
|
|
67
|
+
| correction, reveal source-rect bloom) | | `--spring-snappy`, |
|
|
68
|
+
| | | expressed as a |
|
|
69
|
+
| | | COMPOSITOR transform |
|
|
70
|
+
| | | (P5) — NEVER an |
|
|
71
|
+
| | | animated width/height |
|
|
72
|
+
| Enter (mount, popover open, dialog in, reveal) | [SPATIAL] | `--spring-bouncy` / |
|
|
73
|
+
| | | `--spring-snappy` |
|
|
74
|
+
| Bold decelerating arrival (the SOTA arrival — | [SPATIAL] | `--ease-out-expo` |
|
|
75
|
+
| reveal draw-on, big-distance settle) | | (cubic-bezier(.16,1, |
|
|
76
|
+
| | | .3,1); the house expo) |
|
|
77
|
+
| Exit (unmount, close) | [EFFECTS] | `--ease-out` / |
|
|
78
|
+
| | | `--ease-standard` |
|
|
79
|
+
| | | (bezier, NO overshoot —|
|
|
80
|
+
| | | an exit must never |
|
|
81
|
+
| | | overshoot past gone) |
|
|
82
|
+
| Position-tracked (specular pointer follow) | [EFFECTS] | `--ease-standard` |
|
|
83
|
+
|
|
84
|
+
The SOTA arrival ease is the EXISTING `--ease-out-expo` (alias →
|
|
85
|
+
`--motion-ease-out-expo` = `cubic-bezier(0.16, 1, 0.3, 1)`, the house
|
|
86
|
+
expo with the value.js `easeOutExpo` JS twin in the MOTION_CURVES table)
|
|
87
|
+
— NOT a net-new token. The motion canon NAMES it as the arrival register;
|
|
88
|
+
it is not re-minted (a duplicate alias would fail proof:animation-
|
|
89
|
+
coherence's EASING-TABLE-BOUND arm — the curve already has its canonical
|
|
90
|
+
+ alias row in `curves.ts`).
|
|
91
|
+
|
|
92
|
+
The BUTTON family (`.btn-pill` / `.tap-squish` / `.glass-btn` /
|
|
93
|
+
`btn-interactive`) UNIFIES its `scale` transform leg onto ONE register —
|
|
94
|
+
`--spring-smooth` — so hover + press read as one motion language (the
|
|
95
|
+
hover lift is the restrained `--scale-hover-btn` = 1.05, not the 1.08
|
|
96
|
+
`--scale-hover`). Springs read alive on TRANSFORM and ENTER (overshoot =
|
|
97
|
+
physicality); a spring on a COLOR or an EXIT reads as a wobble/hesitation.
|
|
98
|
+
`--ease-apple` is the ambient-only register (consumed solely by the Pulse
|
|
99
|
+
aura `--animate-ambient-pulse-easing` — NOT a second smooth-ease authority
|
|
100
|
+
for interactive transforms; those use `--spring-smooth`).
|
|
101
|
+
═══════════════════════════════════════════════ */
|
|
102
|
+
--spring-smooth: linear(0, 0.09979 2.041%, 0.30180 4.082%, 0.51333 6.122%, 0.69190 8.163%, 0.82461 10.204%, 0.91382 12.245%, 0.96822 14.286%, 0.99774 16.327%, 1.01113 18.367%, 1.01507 20.408%, 1.01416 22.449%, 1.01127 24.490%, 1.00802 26.531%, 1.00518 28.571%, 1.00302 30.612%, 1.00154 32.653%, 1.00062 34.694%, 1.00010 36.735%, 0.99986 38.776%, 1.00000 40.816%, 1.00000 42.857%, 1.00000 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);
|
|
103
|
+
--spring-snappy: linear(0, 0.10159 2.041%, 0.31119 4.082%, 0.53355 6.122%, 0.72176 8.163%, 0.86005 10.204%, 0.95002 12.245%, 1.00115 14.286%, 1.02488 16.327%, 1.03150 18.367%, 1.02891 20.408%, 1.02249 22.449%, 1.01542 24.490%, 1.00934 26.531%, 1.00480 28.571%, 1.00181 30.612%, 1.00009 32.653%, 0.99926 34.694%, 0.99901 36.735%, 0.99907 38.776%, 0.99927 40.816%, 0.99949 42.857%, 0.99969 44.898%, 0.99984 46.939%, 0.99993 48.980%, 0.99999 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);
|
|
104
|
+
--spring-bouncy: linear(0, 0.10599 2.041%, 0.33511 4.082%, 0.58672 6.122%, 0.80212 8.163%, 0.95655 10.204%, 1.04836 12.245%, 1.08867 14.286%, 1.09341 16.327%, 1.07802 18.367%, 1.05470 20.408%, 1.03159 22.449%, 1.01303 24.490%, 1.00049 26.531%, 0.99363 28.571%, 0.99114 30.612%, 0.99150 32.653%, 0.99333 34.694%, 0.99560 36.735%, 0.99767 38.776%, 0.99924 40.816%, 1.00023 42.857%, 1.00072 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);
|
|
105
|
+
--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);
|
|
106
|
+
--spring-dock: linear(0, 0.10470 2.041%, 0.32797 4.082%, 0.57059 6.122%, 0.77747 8.163%, 0.92676 10.204%, 1.01801 12.245%, 1.06194 14.286%, 1.07303 16.327%, 1.06501 18.367%, 1.04857 20.408%, 1.03088 22.449%, 1.01588 24.490%, 1.00510 26.531%, 0.99855 28.571%, 0.99542 30.612%, 0.99467 32.653%, 0.99528 34.694%, 0.99649 36.735%, 0.99778 38.776%, 0.99887 40.816%, 0.99965 42.857%, 1.00012 44.898%, 1.00034 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);
|
|
107
|
+
--spring-press: linear(0, 0.09979 2.041%, 0.30180 4.082%, 0.51333 6.122%, 0.69190 8.163%, 0.82461 10.204%, 0.91382 12.245%, 0.96822 14.286%, 0.99774 16.327%, 1.01113 18.367%, 1.01507 20.408%, 1.01416 22.449%, 1.01127 24.490%, 1.00802 26.531%, 1.00518 28.571%, 1.00302 30.612%, 1.00154 32.653%, 1.00062 34.694%, 1.00010 36.735%, 0.99986 38.776%, 0.99978 40.816%, 0.99978 42.857%, 0.99982 44.898%, 0.99987 46.939%, 0.99991 48.980%, 0.99995 51.020%, 0.99997 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);
|
|
108
|
+
--spring-timeline-head: linear(0, 0.10159 2.041%, 0.31119 4.082%, 0.53355 6.122%, 0.72176 8.163%, 0.86005 10.204%, 0.95002 12.245%, 1.00115 14.286%, 1.02488 16.327%, 1.03150 18.367%, 1.02891 20.408%, 1.02249 22.449%, 1.01542 24.490%, 1.00934 26.531%, 1.00480 28.571%, 1.00181 30.612%, 1.00009 32.653%, 0.99926 34.694%, 0.99901 36.735%, 0.99907 38.776%, 0.99927 40.816%, 0.99949 42.857%, 0.99969 44.898%, 0.99984 46.939%, 0.99993 48.980%, 0.99999 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);
|
|
109
|
+
--spring-timeline-fill: linear(0, 0.09920 2.041%, 0.29878 4.082%, 0.50690 6.122%, 0.68248 8.163%, 0.81346 10.204%, 0.90241 12.245%, 0.95775 14.286%, 0.98897 16.327%, 1.00435 18.367%, 1.01023 20.408%, 1.01098 22.449%, 1.00939 24.490%, 1.00707 26.531%, 1.00484 28.571%, 1.00304 30.612%, 1.00173 32.653%, 1.00087 34.694%, 1.00034 36.735%, 1.00006 38.776%, 0.99992 40.816%, 1.00000 42.857%, 1.00000 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);
|
|
110
|
+
--spring-timeline-press: 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.00009 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);
|
|
111
|
+
|
|
112
|
+
/* ── PER-SPRING DURATION CLOCK (BA.W-GLASS-CAL Unit 3) ──
|
|
113
|
+
Generated from `scripts/regen-spring-tokens.mjs` — DO NOT hand-edit.
|
|
114
|
+
Each `--spring-<name>-duration` is the spring's OWN 2%-band envelope-settle
|
|
115
|
+
time `t_s = -ln(0.02) / (ζ·ωₙ)` (ωₙ = 2π/response), derived from the SAME
|
|
116
|
+
(response, ζ) PRESETS table the `--spring-*` `linear()` curves above
|
|
117
|
+
derive from — never a hand value.
|
|
118
|
+
|
|
119
|
+
WHY: the `--spring-<name>` curve is NORMALIZED to 0..1 and discards the
|
|
120
|
+
spring's settle time. Pairing it with a generic `--duration-*` clock
|
|
121
|
+
(0.2/0.3/0.45s) re-timed EVERY spring to the same wall clock — snappy
|
|
122
|
+
(response 0.35s) and smooth (0.5s) both ran 300ms, so the crisp snappy
|
|
123
|
+
register dragged a dead sub-pixel tail (the R10-2 read: within-1px at
|
|
124
|
+
~109ms but the transition ran 300ms). These clocks re-time UNDER each
|
|
125
|
+
register to its own settle WITHOUT touching the §6 register canon (which
|
|
126
|
+
spring fits which job): a `transition` pairs `--spring-<name>` with the
|
|
127
|
+
matching `--spring-<name>-duration`. */
|
|
128
|
+
--spring-smooth-duration: 0.45s;
|
|
129
|
+
--spring-snappy-duration: 0.4s;
|
|
130
|
+
--spring-bouncy-duration: 0.62s;
|
|
131
|
+
--spring-gentle-duration: 0.51s;
|
|
132
|
+
--spring-dock-duration: 0.66s;
|
|
133
|
+
--spring-press-duration: 0.16s;
|
|
134
|
+
--spring-timeline-head-duration: 0.29s;
|
|
135
|
+
--spring-timeline-fill-duration: 0.35s;
|
|
136
|
+
--spring-timeline-press-duration: 0.2s;
|
|
137
|
+
|
|
138
|
+
/* ── DECK SLIDE-TRANSITION CURVE (BC.W-DECK) ──
|
|
139
|
+
The full-viewport keyboard-paged deck's slide transition rides the SAME
|
|
140
|
+
`--spring-smooth` register the deck's `DECK_SPRING` samples (the calm-settle
|
|
141
|
+
`.smooth` family; the (response, ζ) pair lives in deck/constants.ts) — an
|
|
142
|
+
ALIAS, NOT a new spring family (the donor's own fence + the W-GLASS-CAL spring
|
|
143
|
+
fence). `--spring-deck: var(--spring-smooth)` so a deck slide reads as a calm
|
|
144
|
+
settle, not a bounce; the JS half (`installDeckSpring`) consumes keyframes.js
|
|
145
|
+
`springTimingFunction(DECK_SPRING)` for the count-up easing. */
|
|
146
|
+
--spring-deck: var(--spring-smooth);
|
|
147
|
+
|
|
148
|
+
/* ── GOO-MORPH SLIDE-TRANSITION FLOW CURVES (BD.W-GOO-CAROUSEL-DECK) ──
|
|
149
|
+
The per-consumer dwell-flow curves the ONE `useGooMorph` engine reads off its
|
|
150
|
+
`tokenPrefix` (`--{prefix}-flow`/`-duration`/`-max-stretch`). These are NOT new
|
|
151
|
+
spring presets — they are the SAME geometry-law DWELL shape the dot-pip worm
|
|
152
|
+
(`--pager-worm-flow`, defined just below) ships: a curve that rises to ~mid by ~46% of
|
|
153
|
+
the clock, DWELLS at the midpoint (the FAT metaball NECK held open across the gap),
|
|
154
|
+
then contracts. The dwell is what makes the morph read as weighty liquid rather than
|
|
155
|
+
a fast flicker (the W-GLASS-CAL spring fence: a normalized spring `linear()`
|
|
156
|
+
front-loads — reaches ~0.5 by ~6% REGARDLESS of ζ — so the neck would collapse in
|
|
157
|
+
~150ms then sit dead; the dwell curve spreads `--goo-t`'s 0→1 across the REAL clock).
|
|
158
|
+
|
|
159
|
+
--carousel-goo-flow: the drag register — the dwell shape with a gentle terminal
|
|
160
|
+
overshoot (+1.5%, the snappy LAND); the plate necks across the gap then snaps. */
|
|
161
|
+
--carousel-goo-flow: linear(
|
|
162
|
+
0, 0.02206 4.167%, 0.07922 8.333%, 0.15799 12.5%, 0.24486 16.667%,
|
|
163
|
+
0.32632 20.833%, 0.38889 25%, 0.41905 29.167%, 0.43667 33.333%,
|
|
164
|
+
0.4575 37.5%, 0.47833 41.667%, 0.49917 45.833%, 0.52 50%, 0.54083 54.167%,
|
|
165
|
+
0.56167 58.333%, 0.58373 62.5%, 0.62943 66.667%, 0.69424 70.833%,
|
|
166
|
+
0.76859 75%, 0.84373 79.167%, 0.91191 83.333%, 0.96658 87.5%,
|
|
167
|
+
1.0023 91.667%, 1.01466 95.833%, 1
|
|
168
|
+
);
|
|
169
|
+
--carousel-goo-duration: 0.95s; /* the card-plate clock — faster than the dot's 1.8s
|
|
170
|
+
(a card-plate morph is bigger, reads heavy sooner) yet still slow enough to dwell. */
|
|
171
|
+
--carousel-goo-max-stretch: 1.24; /* the plate swell — raised (1.16→1.24) for a more
|
|
172
|
+
decisive welling neck across the gap (JUDGE-2 §3: the merge read SUBTLE). Still
|
|
173
|
+
LOWER than the dot's 1.45 (a wide plate stretching 1.45 reads as taffy). */
|
|
174
|
+
|
|
175
|
+
/* --deck-goo-flow: the calmer presentation register — the SAME dwell shape with NO
|
|
176
|
+
terminal overshoot (a full-viewport slide must not bounce — the vestibular floor;
|
|
177
|
+
the curve clamps at 1.0, no >1 stops). */
|
|
178
|
+
--deck-goo-flow: linear(
|
|
179
|
+
0, 0.02206 4.167%, 0.07922 8.333%, 0.15799 12.5%, 0.24486 16.667%,
|
|
180
|
+
0.32632 20.833%, 0.38889 25%, 0.41905 29.167%, 0.43667 33.333%,
|
|
181
|
+
0.4575 37.5%, 0.47833 41.667%, 0.49917 45.833%, 0.52 50%, 0.54083 54.167%,
|
|
182
|
+
0.56167 58.333%, 0.58373 62.5%, 0.64 66.667%, 0.71 70.833%,
|
|
183
|
+
0.78 75%, 0.85 79.167%, 0.91 83.333%, 0.96 87.5%,
|
|
184
|
+
0.985 91.667%, 0.997 95.833%, 1
|
|
185
|
+
);
|
|
186
|
+
--deck-goo-duration: 1.1s; /* the full-viewport register — slow + dignified. */
|
|
187
|
+
--deck-goo-max-stretch: 1.1; /* the gentlest swell — a big slide necks barely. */
|
|
188
|
+
|
|
189
|
+
/* --pager-worm-flow: the dot-pip worm register (BD.W-PAGER-GOO-MORPH) — the SAME
|
|
190
|
+
geometry-law DWELL shape as the carousel/deck siblings (the metaball NECK held open
|
|
191
|
+
across the gap), with a gentle terminal overshoot (+1.5%, the bouncy LAND). Homed
|
|
192
|
+
HERE beside its goo-flow family (the curve-definition home — a `linear()` SHIPS in
|
|
193
|
+
the §2 EASING register, never serialized inline in the SFC) so the three goo-morph
|
|
194
|
+
dwell curves live as ONE charted family. NOT a normalized spring: `springLinearStops`
|
|
195
|
+
front-loads (reaches ~0.5 by ~6% REGARDLESS of ζ), so a `--spring-bouncy` would
|
|
196
|
+
collapse the neck in ~150ms; this dwell spreads `--worm-t`'s 0→1 across the REAL
|
|
197
|
+
1.8s clock (the FAT NECK alive ~830ms — JUDGE-1 ≥700ms bar). */
|
|
198
|
+
--pager-worm-flow: linear(
|
|
199
|
+
0, 0.02206 4.167%, 0.07922 8.333%, 0.15799 12.5%, 0.24486 16.667%,
|
|
200
|
+
0.32632 20.833%, 0.38889 25%, 0.41905 29.167%, 0.43667 33.333%,
|
|
201
|
+
0.4575 37.5%, 0.47833 41.667%, 0.49917 45.833%, 0.52 50%, 0.54083 54.167%,
|
|
202
|
+
0.56167 58.333%, 0.58373 62.5%, 0.62943 66.667%, 0.69424 70.833%,
|
|
203
|
+
0.76859 75%, 0.84373 79.167%, 0.91191 83.333%, 0.96658 87.5%,
|
|
204
|
+
1.0023 91.667%, 1.01466 95.833%, 1
|
|
205
|
+
);
|
|
206
|
+
--pager-worm-duration: 1.8s; /* the dot's OWN clock — slow + weighty (motion-canon P4);
|
|
207
|
+
the flow above dwells across the whole clock so the neck is alive for ~1s. */
|
|
208
|
+
--pager-worm-max-stretch: 1.45; /* the velocity-swell — a VISIBLE liquid squish (the
|
|
209
|
+
worm narrows ≈1/1.45≈0.69× cross-axis at peak swell, on top of the floored pinch). */
|
|
210
|
+
|
|
211
|
+
/* Core cubic-bezier (exits, fallbacks, non-spring uses) */
|
|
212
|
+
--motion-ease-standard: cubic-bezier(0.4, 0, 0.2, 1);
|
|
213
|
+
--motion-ease-out: cubic-bezier(0, 0, 0.2, 1);
|
|
214
|
+
--motion-ease-in: cubic-bezier(0.4, 0, 1, 1);
|
|
215
|
+
--motion-ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
|
|
216
|
+
|
|
217
|
+
--ease-standard: var(--motion-ease-standard);
|
|
218
|
+
--ease-out: var(--motion-ease-out);
|
|
219
|
+
--ease-in: var(--motion-ease-in);
|
|
220
|
+
--ease-out-expo: var(--motion-ease-out-expo);
|
|
221
|
+
|
|
222
|
+
/* Apple-inspired — micro-interactions, switches, dock hover */
|
|
223
|
+
--motion-ease-apple: cubic-bezier(0.25, 0.1, 0.25, 1);
|
|
224
|
+
|
|
225
|
+
--ease-apple: var(--motion-ease-apple);
|
|
226
|
+
--ease-spring: var(--spring-snappy);
|
|
227
|
+
--ease-decelerate: var(--ease-out);
|
|
228
|
+
--ease-accelerate: var(--ease-in);
|
|
229
|
+
|
|
230
|
+
/* BC.W-MOTION-PRESETS — the brand "convergence-reveal" / partial-sum settle.
|
|
231
|
+
The Fourier partial sum converges ONTO its target with a decaying Gibbs
|
|
232
|
+
ripple — a monotone critically-damped approach, NO sustained overshoot past
|
|
233
|
+
terminal. That curve IS `gentle` (ζ=1.0, overshoot 0), so this is the ALIAS
|
|
234
|
+
reuse: `--ease-convergence` resolves to `--spring-gentle` (no new
|
|
235
|
+
SPRING_PRESETS row, no second curve). The settle clock is the per-spring
|
|
236
|
+
`--spring-gentle-duration`. The N-term build-up is the `useStagger`
|
|
237
|
+
orchestration ON this curve (a documented recipe, not a new primitive). */
|
|
238
|
+
--ease-convergence: var(--spring-gentle);
|
|
239
|
+
}
|
|
@@ -41,13 +41,13 @@
|
|
|
41
41
|
--scroll-cascade-range-end: 45%;
|
|
42
42
|
--scroll-cascade-column-stagger: 60ms;
|
|
43
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
|
-
|
|
46
|
-
|
|
47
|
-
|
|
44
|
+
height is the Nvh temporal space the sticky stage advances its phases across.
|
|
45
|
+
The phase windows the stage's internal phases key off (grid-reveal 0..reveal-end,
|
|
46
|
+
expand reveal-end..expand-end, settle expand-end..100% — the Codrops phased-
|
|
47
|
+
sequence shape) live in scroll-choreography.css as the `-frac` numerators
|
|
48
|
+
(`--scroll-pin-phase-reveal-end-frac` 0.382 / `--scroll-pin-phase-expand-end-frac`
|
|
49
|
+
0.9), the form the calc()s consume. */
|
|
48
50
|
--scroll-pin-stage-height: 320vh;
|
|
49
|
-
--scroll-pin-phase-reveal-end: 45%;
|
|
50
|
-
--scroll-pin-phase-expand-end: 90%;
|
|
51
51
|
--scroll-pin-lift: 2.5rem;
|
|
52
52
|
|
|
53
53
|
/* TOP-LAYER (animations.css §TOP-LAYER). The `@starting-style` entry/exit
|
|
@@ -82,19 +82,19 @@
|
|
|
82
82
|
both engine paths are timing-IDENTICAL: the FLIP fallback (via
|
|
83
83
|
`--dock-motion-resize`), the native View-Transition group (its
|
|
84
84
|
`animation-timing-function`), AND the runtime SpringProgress driver
|
|
85
|
-
(AU.W8.3) consume this same
|
|
85
|
+
(AU.W8.3) consume this same source curve. Retires the AQ.W6
|
|
86
86
|
fork where the VT path ran `--vt-ease` (apple-spring, +27.5% overshoot)
|
|
87
87
|
while the FLIP ran the snappy spring. `--vt-ease` still defaults the
|
|
88
88
|
other VT recipes (`.gl-list-item`).
|
|
89
89
|
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
(
|
|
97
|
-
|
|
90
|
+
BD.W-DOCK-CORE — the WEIGHTY iOS-27 re-tune. `--spring-dock` is now the
|
|
91
|
+
slow inertial gooey-morph register: (0.56s, ζ=0.58), an audacious overshoot
|
|
92
|
+
~+11% then a deliberate settle over the 0.6s analytic clock — the
|
|
93
|
+
liquid-weight law (collapse/expand + V↔H + fission all share it). The prior
|
|
94
|
+
tight (0.32, 0.7) near-critical snap (~+4.6%) is retired. The runtime
|
|
95
|
+
driver's DOCK_SPRING const DERIVES from the `dock` PRESETS row via
|
|
96
|
+
`springPreset("dock")` (the no-second-authority fence — ONE table row, the
|
|
97
|
+
CSS token + the JS-driven morph + the const all flow from it). */
|
|
98
98
|
--dock-resize-spring: var(--spring-dock);
|
|
99
99
|
|
|
100
100
|
/* AT.W7-dock-b — dock-control press micro-feedback spring. A TRANSFORM-ONLY
|