@mkbabb/glass-ui 4.0.1 → 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-CW7a0m8M.js → CardAction-DlVP2evz.js} +72 -53
- package/dist/{CommandShortcut-DvZNQ_HF.js → CommandShortcut-By-VQcLO.js} +25 -14
- package/dist/{ConfiguratorRow-BR4l-ixA.js → ConfiguratorRow-YMXdINHx.js} +14 -14
- package/dist/ContextMenuContent-CMWn6huB.js +90 -0
- package/dist/{ContextMenuSubContent-xol4sD2q.js → ContextMenuSubContent-DvwWCUc0.js} +16 -16
- package/dist/{DataTable-CuKwF7wr.js → DataTable-C4tG3eIJ.js} +4 -4
- package/dist/DialogContent-D8U9ZfWS.js +121 -0
- package/dist/DialogFooter-DoLy0ewI.js +80 -0
- package/dist/DialogScrollContent-BMekN7gq.js +93 -0
- package/dist/{FadingScroll-DI6hQhT9.js → FadingScroll-P8B30rAD.js} +1 -1
- package/dist/HoverCardContent-DAmGYglo.js +88 -0
- package/dist/{HoverPopover-CbqbNwgU.js → HoverPopover-DYpBOzzF.js} +1 -1
- package/dist/{IconChip-BTD-nay5.js → IconChip-CQa7XZYc.js} +7 -5
- package/dist/{IconTooltip-Bl8gFZ8d.js → IconTooltip-_df8M3xm.js} +1 -1
- package/dist/Input-CyU4_hIC.js +57 -0
- package/dist/{MetricBadge-RHdBP72w.js → MetricBadge-DQt_dGah.js} +1 -1
- package/dist/{Notification-VUwexFUf.js → Notification-BlSPJhtZ.js} +4 -4
- package/dist/NumberFieldContent-Z3VxGu_6.js +140 -0
- 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-DctG61iZ.js → Progress-C9SsdwIZ.js} +1 -1
- package/dist/{ScrollingText-yOpBzFYq.js → ScrollingText-DY3W1Jfh.js} +2 -2
- package/dist/SelectScrollDownButton-3mFHX_R-.js +260 -0
- package/dist/{SelectSeparator-DXswVdRz.js → SelectSeparator-CNRGG7Ew.js} +1 -1
- package/dist/Separator-Cf9-JFgi.js +44 -0
- package/dist/Switch-uf-UKPA2.js +49 -0
- package/dist/{Toaster-Bw4xR8xV.js → Toaster-ozrsR4mP.js} +2 -2
- package/dist/{ToggleGroupItem-pEM9vIhs.js → ToggleGroupItem-BpzaVzNm.js} +6 -6
- package/dist/TooltipProvider-QQVM_80r.js +109 -0
- package/dist/animated-digit.js +2 -2
- package/dist/api/index.d.ts +16 -32
- package/dist/api/types-extra.d.ts +33 -0
- package/dist/api.js +2 -2
- package/dist/aurora.js +629 -269
- package/dist/badge-Bt14yURi.js +72 -0
- package/dist/badge.js +1 -1
- package/dist/border-progress.js +49 -57
- package/dist/button-D1W9PrzI.js +130 -0
- package/dist/button.js +1 -1
- package/dist/canvas.js +2 -3
- package/dist/card.js +1 -1
- package/dist/carousel.js +235 -106
- package/dist/chipVariants-BJQ0I2kB.js +18 -0
- package/dist/collapsible.js +1 -1
- package/dist/color-B9jZdhJX.js +116 -0
- package/dist/color.js +2 -2
- package/dist/command.js +1 -1
- package/dist/completion-seal.d.ts +1 -0
- package/dist/completion-seal.js +89 -0
- package/dist/components/custom/aurora/Aurora.vue.d.ts +10 -5
- package/dist/components/custom/aurora/composables/color.d.ts +13 -0
- package/dist/components/custom/aurora/composables/frameLoop.d.ts +9 -0
- package/dist/components/custom/aurora/composables/glSetup.d.ts +1 -1
- package/dist/components/custom/aurora/composables/runtime.d.ts +12 -0
- package/dist/components/custom/aurora/composables/uniformBridgeWGPU.d.ts +12 -3
- package/dist/components/custom/aurora/composables/wgpuSetup.d.ts +8 -0
- package/dist/components/custom/aurora/constants/presets.d.ts +47 -0
- package/dist/components/custom/aurora/constants/renderMode.d.ts +16 -8
- package/dist/components/custom/aurora/constants/shaders/aurora-mediums.wgsl.d.ts +1 -0
- package/dist/components/custom/aurora/constants/shaders/aurora.wgsl.d.ts +1 -1
- package/dist/components/custom/aurora/index.d.ts +1 -1
- package/dist/components/custom/border-progress/composables/spectrum-walk.d.ts +25 -0
- package/dist/components/custom/border-progress/composables/useBorderSpectrum.d.ts +14 -18
- package/dist/components/custom/border-progress/index.d.ts +1 -1
- package/dist/components/custom/completion-seal/CompletionSeal.vue.d.ts +21 -0
- package/dist/components/custom/completion-seal/composables/useCompletionSeal.d.ts +37 -0
- package/dist/components/custom/completion-seal/constants.d.ts +46 -0
- package/dist/components/custom/completion-seal/index.d.ts +4 -0
- package/dist/components/custom/concentric/Concentric.vue.d.ts +15 -12
- package/dist/components/custom/concentric/composables/concentricGLSetup.d.ts +12 -0
- package/dist/components/custom/concentric/composables/concentricWGPUSetup.d.ts +13 -0
- package/dist/components/custom/concentric/composables/levelField.d.ts +50 -0
- package/dist/components/custom/concentric/composables/uniformBridgeWGPU.d.ts +7 -3
- package/dist/components/custom/concentric/composables/useConcentric.d.ts +3 -3
- package/dist/components/custom/concentric/constants.d.ts +69 -24
- 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/confirm-dialog/ConfirmDialog.vue.d.ts +3 -3
- package/dist/components/custom/constellation/Constellation.vue.d.ts +5 -4
- package/dist/components/custom/constellation/composables/constellationGLSetup.d.ts +10 -0
- package/dist/components/custom/constellation/composables/constellationWGPUSetup.d.ts +19 -0
- package/dist/components/custom/constellation/composables/uniformBridgeWGPU.d.ts +66 -0
- package/dist/components/custom/constellation/composables/useConstellation.d.ts +3 -10
- package/dist/components/custom/constellation/constants.d.ts +33 -0
- package/dist/components/custom/constellation/constellationField.d.ts +31 -1
- package/dist/components/custom/constellation/constellationInteraction.d.ts +23 -14
- package/dist/components/custom/constellation/constellationRender.d.ts +25 -0
- package/dist/components/custom/constellation/constellationTypes.d.ts +38 -0
- package/dist/components/custom/constellation/constellationWell.d.ts +15 -0
- package/dist/components/custom/constellation/index.d.ts +5 -5
- package/dist/components/custom/constellation/shaders/constellation-lines.glsl.d.ts +2 -0
- package/dist/components/custom/constellation/shaders/constellation-lines.wgsl.d.ts +1 -0
- package/dist/components/custom/constellation/shaders/constellation-points.glsl.d.ts +2 -0
- package/dist/components/custom/constellation/shaders/constellation-points.wgsl.d.ts +1 -0
- package/dist/components/custom/deck/DeckPager.vue.d.ts +29 -0
- package/dist/components/custom/deck/composables/useDeck.d.ts +27 -0
- package/dist/components/custom/deck/composables/useDeckKeyboard.d.ts +25 -0
- package/dist/components/custom/deck/composables/useDeckSpring.d.ts +22 -0
- package/dist/components/custom/deck/constants.d.ts +14 -0
- package/dist/components/custom/deck/index.d.ts +8 -0
- package/dist/components/custom/dock/DockDropdownTrigger.vue.d.ts +4 -3
- package/dist/components/custom/dock/DockIconButton.vue.d.ts +22 -0
- package/dist/components/custom/dock/DockPopoverTrigger.vue.d.ts +19 -0
- package/dist/components/custom/dock/DockStack.vue.d.ts +78 -0
- package/dist/components/custom/dock/GlassDock.vue.d.ts +21 -3
- package/dist/components/custom/dock/composables/dockMorphContext.d.ts +18 -32
- package/dist/components/custom/dock/composables/dockMorphMeasure.d.ts +78 -67
- package/dist/components/custom/dock/composables/index.d.ts +3 -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/useDockSearch.d.ts +85 -0
- package/dist/components/custom/dock/composables/useDockShellProps.d.ts +49 -0
- package/dist/components/custom/dock/constants.d.ts +32 -17
- package/dist/components/custom/dock/index.d.ts +8 -2
- package/dist/components/custom/dot-flow-field/DotFlowField.vue.d.ts +15 -11
- package/dist/components/custom/dot-flow-field/composables/flowField.d.ts +69 -6
- 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 +50 -9
- package/dist/components/custom/dot-flow-field/composables/useDotFlowField.d.ts +6 -5
- package/dist/components/custom/dot-flow-field/composables/useFlowParticles.d.ts +23 -9
- package/dist/components/custom/dot-flow-field/constants.d.ts +92 -20
- package/dist/components/custom/dot-flow-field/index.d.ts +2 -2
- package/dist/components/custom/dot-flow-field/shaders/flow-field.compute.wgsl.d.ts +1 -1
- package/dist/components/custom/dot-flow-field/shaders/flow-field.glsl.d.ts +31 -18
- package/dist/components/custom/dot-flow-field/shaders/flow-field.render.wgsl.d.ts +2 -1
- package/dist/components/custom/dot-matrix/DotMatrix.vue.d.ts +43 -0
- package/dist/components/custom/dot-matrix/composables/dotMatrixField.d.ts +89 -0
- package/dist/components/custom/dot-matrix/composables/uniformBridgeWGPU.d.ts +61 -0
- package/dist/components/custom/dot-matrix/composables/useDotMatrix.d.ts +34 -0
- package/dist/components/custom/dot-matrix/composables/useDotSphere.d.ts +34 -0
- package/dist/components/custom/dot-matrix/constants.d.ts +72 -0
- package/dist/components/custom/dot-matrix/index.d.ts +5 -0
- package/dist/components/custom/dot-matrix/shaders/dot-matrix.glsl.d.ts +4 -0
- package/dist/components/custom/dot-matrix/shaders/dot-matrix.wgsl.d.ts +1 -0
- package/dist/components/custom/easing/EasingPicker.vue.d.ts +2 -2
- package/dist/components/custom/easing/composables/useEasingPicker.d.ts +5 -0
- package/dist/components/custom/expandable-container/ExpandableContainer.vue.d.ts +11 -0
- package/dist/components/custom/fourier-field/FourierField.vue.d.ts +44 -47
- package/dist/components/custom/fourier-field/composables/fourierFieldGLSetup.d.ts +24 -0
- package/dist/components/custom/fourier-field/composables/fourierFieldWGPUSetup.d.ts +31 -0
- package/dist/components/custom/fourier-field/composables/uniformBridgeWGPU.d.ts +56 -0
- package/dist/components/custom/fourier-field/composables/useFourierField.d.ts +61 -37
- package/dist/components/custom/fourier-field/constants.d.ts +114 -4
- package/dist/components/custom/fourier-field/index.d.ts +23 -18
- package/dist/components/custom/fourier-field/shaders/fourier-field.compute.wgsl.d.ts +1 -0
- package/dist/components/custom/fourier-field/shaders/fourier-field.glsl.d.ts +4 -0
- package/dist/components/custom/fourier-field/shaders/fourier-field.render.wgsl.d.ts +1 -0
- package/dist/components/custom/goo-blob/GooBlob.vue.d.ts +9 -1
- package/dist/components/custom/goo-blob/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/index.d.ts +1 -1
- package/dist/components/custom/goo-blob/shaders/metaball-noise.wgsl.d.ts +1 -0
- package/dist/components/custom/goo-blob/shaders/metaball-palette.wgsl.d.ts +1 -0
- package/dist/components/custom/goo-blob/shaders/metaball-uniforms.glsl.d.ts +1 -1
- package/dist/components/custom/goo-blob/shaders/metaball.wgsl.d.ts +1 -1
- package/dist/components/custom/goo-blob/types.d.ts +86 -1
- package/dist/components/custom/goo-dot-matrix/GooDotMatrix.vue.d.ts +49 -0
- package/dist/components/custom/goo-dot-matrix/composables/gooDotLattice.d.ts +24 -0
- package/dist/components/custom/goo-dot-matrix/composables/gooDotSetup.d.ts +79 -0
- package/dist/components/custom/goo-dot-matrix/composables/uniformBridgeWGPU.d.ts +45 -0
- package/dist/components/custom/goo-dot-matrix/composables/useGooDotMatrix.d.ts +31 -0
- package/dist/components/custom/goo-dot-matrix/constants.d.ts +115 -0
- package/dist/components/custom/goo-dot-matrix/index.d.ts +5 -0
- package/dist/components/custom/goo-dot-matrix/shaders/goo-dot.frag.d.ts +13 -0
- package/dist/components/custom/goo-dot-matrix/shaders/goo-dot.wgsl.d.ts +4 -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/labeled-field/LabeledField.vue.d.ts +21 -2
- package/dist/components/custom/metric-stack/MetricRow.vue.d.ts +15 -0
- package/dist/components/custom/pager-dots/PagerDots.vue.d.ts +9 -0
- package/dist/components/custom/pager-dots/index.d.ts +2 -0
- package/dist/components/custom/pager-dots/pagerWindow.d.ts +9 -0
- package/dist/components/custom/paper-backdrop/PaperBackdrop.vue.d.ts +18 -0
- package/dist/components/custom/paper-grid/PaperGrid.vue.d.ts +42 -0
- package/dist/components/custom/paper-grid/composables/paperGrid.d.ts +105 -0
- package/dist/components/custom/paper-grid/composables/paperGridGLSetup.d.ts +18 -0
- package/dist/components/custom/paper-grid/composables/paperGridWGPUSetup.d.ts +21 -0
- package/dist/components/custom/paper-grid/composables/uniformBridgeWGPU.d.ts +16 -0
- package/dist/components/custom/paper-grid/composables/usePaperGrid.d.ts +31 -0
- package/dist/components/custom/paper-grid/constants.d.ts +95 -0
- package/dist/components/custom/paper-grid/index.d.ts +5 -0
- package/dist/components/custom/paper-grid/shaders/paper-grid.glsl.d.ts +4 -0
- package/dist/components/custom/paper-grid/shaders/paper-grid.wgsl.d.ts +1 -0
- package/dist/components/custom/search/FuzzySearch.vue.d.ts +8 -2
- package/dist/components/custom/search/SearchBar.vue.d.ts +8 -0
- package/dist/components/custom/search/index.d.ts +2 -0
- package/dist/components/custom/search/searchVariants.d.ts +19 -0
- package/dist/components/custom/selectable-chip/SelectableChip.vue.d.ts +50 -0
- package/dist/components/custom/selectable-chip/chipVariants.d.ts +39 -0
- package/dist/components/custom/selectable-chip/index.d.ts +2 -0
- package/dist/components/custom/selectable-chip/selectableChipVariants.d.ts +15 -0
- package/dist/components/custom/split-chars/SplitChars.vue.d.ts +39 -0
- package/dist/components/custom/split-chars/index.d.ts +1 -0
- package/dist/components/custom/tabs/SegmentedTabs.vue.d.ts +8 -6
- package/dist/components/custom/tabs/constants.d.ts +28 -2
- 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 +32 -17
- package/dist/components/custom/watercolor-dot/useWatercolorBlob.d.ts +10 -5
- package/dist/components/ui/_shared/index.d.ts +2 -0
- package/dist/components/ui/_shared/useControlSize.d.ts +46 -0
- package/dist/components/ui/_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/button/index.d.ts +1 -1
- package/dist/components/ui/card/Card.vue.d.ts +46 -1
- package/dist/components/ui/card/ScrollCard.vue.d.ts +1 -1
- package/dist/components/ui/card/index.d.ts +1 -1
- package/dist/components/ui/carousel/CarouselContent.vue.d.ts +2 -4
- package/dist/components/ui/carousel/CarouselNext.vue.d.ts +1 -1
- package/dist/components/ui/carousel/CarouselPrevious.vue.d.ts +1 -1
- package/dist/components/ui/command/CommandDialog.vue.d.ts +9 -3
- package/dist/components/ui/command/CommandList.vue.d.ts +3 -0
- package/dist/components/ui/context-menu/ContextMenuContent.vue.d.ts +5 -1
- package/dist/components/ui/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/dropdown-menu/DropdownMenuContent.vue.d.ts +4 -0
- package/dist/components/ui/hover-card/HoverCardContent.vue.d.ts +3 -0
- package/dist/components/ui/input/Input.vue.d.ts +3 -0
- package/dist/components/ui/number-field/NumberFieldInput.vue.d.ts +6 -1
- package/dist/components/ui/select/SelectContent.vue.d.ts +12 -0
- package/dist/components/ui/slider/Slider.vue.d.ts +9 -0
- package/dist/components/ui/switch/Switch.vue.d.ts +2 -0
- package/dist/components/ui/textarea/Textarea.vue.d.ts +3 -0
- package/dist/components/ui/tooltip/TooltipContent.vue.d.ts +3 -0
- package/dist/composables/color/index.d.ts +2 -0
- package/dist/composables/color/useAccentTone.d.ts +34 -0
- package/dist/composables/dom/index.d.ts +1 -0
- package/dist/composables/dom/useDragVelocity.d.ts +46 -0
- package/dist/composables/glass/useVizChoreography.d.ts +123 -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 +105 -2
- package/dist/composables/glass/webgl/shaders/flow.wgsl.d.ts +1 -0
- package/dist/composables/glass/webgl/useWebGLCanvas.d.ts +40 -2
- package/dist/composables/glass/webgpu/index.d.ts +2 -1
- package/dist/composables/glass/webgpu/useGpuSubstrate.d.ts +65 -7
- package/dist/composables/glass/webgpu/useWebGPUCanvas.d.ts +50 -2
- package/dist/composables/glass/webgpu/webgpuDevice.d.ts +42 -0
- package/dist/composables/motion/core/index.d.ts +7 -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/scrollReader.d.ts +25 -0
- package/dist/composables/motion/springPresets.d.ts +19 -1
- 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/useCharStagger.d.ts +44 -0
- package/dist/composables/motion/useDockCtaReceive.d.ts +29 -22
- 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/useScrollChrome.d.ts +58 -0
- package/dist/composables/motion/useScrollPin.d.ts +49 -0
- package/dist/composables/motion/useScrollScene.d.ts +67 -0
- package/dist/composables/motion/useScrollTrigger.d.ts +67 -0
- package/dist/composables/motion/useSpringPress.d.ts +5 -5
- package/dist/composables/motion/useStaggerReveal.d.ts +24 -0
- package/dist/composables/sidebar/index.d.ts +4 -1
- package/dist/composables/sidebar/types.d.ts +68 -3
- package/dist/composables/sidebar/useClickDelegate.d.ts +4 -0
- package/dist/composables/sidebar/useLazyLoader.d.ts +5 -0
- package/dist/composables/sidebar/useScrollTo.d.ts +5 -0
- package/dist/composables/virtual/index.d.ts +4 -0
- package/dist/composables/virtual/useVirtualSectionWindow.d.ts +72 -0
- package/dist/composables/virtual/useWindowedStore.d.ts +43 -0
- package/dist/composables/virtual/virtualSectionLayout.d.ts +103 -0
- package/dist/concentric.js +552 -309
- package/dist/configurator.js +2 -2
- package/dist/confirm-dialog.js +62 -47
- package/dist/constellation.js +635 -235
- package/dist/context-menu.js +2 -2
- package/dist/controls.js +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.d.ts +1 -0
- package/dist/deck.js +105 -0
- package/dist/dialog.js +4 -3
- package/dist/dock.js +1320 -631
- package/dist/dockContext-gFVS2gMg.js +18 -0
- package/dist/dom.js +7 -6
- package/dist/dot-flow-field.js +1268 -387
- package/dist/dot-matrix.d.ts +1 -0
- package/dist/dot-matrix.js +774 -0
- package/dist/dotMatrixField-CRO0ZFk4.js +48 -0
- package/dist/drawer.js +106 -96
- package/dist/{dropdown-menu-CofSZuk8.js → dropdown-menu-CCfcCQ68.js} +83 -79
- package/dist/dropdown-menu.js +1 -1
- package/dist/easing.js +188 -176
- package/dist/expandable-container.js +43 -21
- package/dist/fading-scroll.js +1 -1
- package/dist/flow.glsl-DqEGRpl4.js +4 -0
- package/dist/forms.js +64 -62
- package/dist/fourier-field.js +1069 -178
- 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 +164 -119
- package/dist/goo-blob.js +175 -1230
- package/dist/goo-dot-matrix.d.ts +1 -0
- package/dist/goo-dot-matrix.js +811 -0
- 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 +5 -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 +70 -60
- package/dist/metric-badge.js +1 -1
- package/dist/metric-cell.js +1 -1
- package/dist/metric-stack.js +12 -3
- package/dist/motion-core.js +59 -34
- package/dist/motion-curves.js +30 -14
- package/dist/motion.js +231 -96
- package/dist/notification.js +1 -1
- package/dist/number-field.js +1 -1
- package/dist/pager-dots.js +2 -91
- package/dist/paper-backdrop.js +1 -1
- package/dist/paper-grid.d.ts +1 -0
- package/dist/paper-grid.js +761 -0
- package/dist/paperGrid-CXCSMbZ1.js +191 -0
- package/dist/popover.js +1 -1
- package/dist/{presets-BW2b-fr1.js → presets-QvYgnFIZ.js} +14 -13
- package/dist/{procedural-color.glsl-CIFsJhwI.js → procedural-color.wgsl-C1Y5PkM6.js} +2 -2
- package/dist/progress.js +1 -1
- package/dist/pulse.js +2 -2
- package/dist/reactive.js +2 -2
- package/dist/{useCanvas2D-B8w_E3Rr.js → resolveCanvasColor-DsSJk06I.js} +16 -6
- package/dist/scrollReader-rc3Ns_NM.js +42 -0
- package/dist/scrolling-text.js +1 -1
- package/dist/search.js +162 -306
- package/dist/select.js +3 -3
- package/dist/selectable-chip.d.ts +1 -0
- package/dist/selectable-chip.js +48 -0
- package/dist/separator.js +1 -1
- package/dist/{sheet-tZMg0E0w.js → sheet-DUCIoOe0.js} +4 -4
- package/dist/sheet.js +1 -1
- package/dist/sidebar.js +216 -114
- package/dist/slider-CcICPe3u.js +149 -0
- package/dist/slider.js +1 -1
- package/dist/sortable-list.js +3 -3
- package/dist/spectrum-walk-cBNSx_zm.js +33 -0
- package/dist/springPresets-DfoQ6XRY.js +64 -0
- package/dist/stacked-icons.js +54 -39
- package/dist/styles/animations.css +13 -3
- package/dist/styles/cards.css +271 -2
- package/dist/styles/completion-seal.css +131 -0
- package/dist/styles/components.css +1 -4
- package/dist/styles/configurator.css +221 -1
- package/dist/styles/critical-partition.mjs +66 -11
- package/dist/styles/deferred.css +4 -0
- package/dist/styles/dock/adaptive-legibility.css +119 -0
- package/dist/styles/dock/cta-seat.css +87 -0
- package/dist/styles/dock/density.css +167 -6
- package/dist/styles/dock/fission-bridge.css +552 -0
- package/dist/styles/dock/layers.css +90 -78
- package/dist/styles/dock/morph-bridge.css +67 -18
- package/dist/styles/dock/morph.css +57 -118
- package/dist/styles/dock/overflow.css +12 -0
- package/dist/styles/dock/search.css +68 -0
- package/dist/styles/dock/shape.css +250 -0
- package/dist/styles/dock/shell.css +24 -8
- package/dist/styles/dock/stack-rail.css +352 -0
- package/dist/styles/dock-controls/dark-mode-toggle.css +17 -4
- package/dist/styles/dock-controls/icon-button.css +46 -0
- package/dist/styles/dock-controls/triggers.css +23 -1
- package/dist/styles/dock-controls.css +18 -0
- package/dist/styles/dock.css +27 -2
- package/dist/styles/drawer.css +166 -0
- package/dist/styles/glass/accent-tone.css +66 -0
- package/dist/styles/glass/control-surfaces.css +167 -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/ladder.css +67 -17
- 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 +31 -9
- package/dist/styles/glass/surfaces.css +81 -150
- package/dist/styles/glass.css +21 -0
- package/dist/styles/icon-chip.css +45 -0
- package/dist/styles/index.css +26 -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/scroll-chrome.css +123 -0
- package/dist/styles/scroll-driven.css +38 -0
- package/dist/styles/segmented-tabs.css +110 -40
- package/dist/styles/select.css +151 -0
- package/dist/styles/theme/bridges.css +22 -0
- package/dist/styles/theme/radius.css +18 -1
- package/dist/styles/tokens/color-radius.css +14 -4
- package/dist/styles/tokens/dark-arm.css +94 -12
- package/dist/styles/tokens/glass-deep.css +33 -4
- package/dist/styles/tokens/glass-fx.css +122 -1
- package/dist/styles/tokens/glass.css +226 -34
- package/dist/styles/tokens/light-dark.css +3 -3
- package/dist/styles/tokens/offsets.css +27 -0
- package/dist/styles/tokens/property-regs.css +277 -0
- package/dist/styles/tokens/scale-paper.css +86 -30
- package/dist/styles/tokens/scheme-motion.css +106 -133
- 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/sizing-config.css +110 -0
- package/dist/styles/tokens/sizing.css +55 -104
- package/dist/styles/tokens.css +14 -2
- package/dist/styles/typography/semantic.css +18 -5
- package/dist/styles/utilities/a11y-overrides.css +20 -5
- package/dist/styles/utilities/base-misc.css +52 -0
- package/dist/styles/utilities/btn.css +84 -3
- package/dist/styles/utilities/components.css +31 -6
- package/dist/styles/utilities/metal.css +26 -0
- package/dist/switch.js +1 -1
- package/dist/tabs.js +199 -182
- 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 +2 -2
- package/dist/uniformBridgeWGPU-BCse1SHU.js +1268 -0
- package/dist/{useAnimatedNumber-BfUq2bUM.js → useAnimatedNumber-BntskVdQ.js} +1 -1
- package/dist/{useConfiguratorState-DNlOh6c8.js → useConfiguratorState-22BcULzF.js} +41 -38
- package/dist/useControlSize-DAZ062x7.js +9 -0
- package/dist/useDockCtaReceive-DX7RDb6_.js +88 -0
- package/dist/{useDragMorph-DgxnsVJz.js → useDragMorph-DGLSewwB.js} +4 -4
- package/dist/useDragVelocity-CjcfX3dA.js +57 -0
- package/dist/useFuzzySearch-0fTYOhS4.js +177 -0
- package/dist/useGooMorph-Cs13NgYL.js +104 -0
- package/dist/useGpuSubstrate-Ceet70xq.js +347 -0
- package/dist/useHaptic-CPz5BT9I.js +134 -0
- package/dist/{useLiquidFlex-mZPMiNXh.js → useLiquidFlex-Cc6PjVJD.js} +8 -3
- package/dist/useLiquidPress-CtOQ8Z0_.js +43 -0
- package/dist/useMorphField-ogBM7ubT.js +141 -0
- package/dist/usePointerVelocityField-BrkqZFhj.js +91 -0
- package/dist/useScrollChrome-JuImi1DM.js +258 -0
- package/dist/{useSpringMount-q1amq1SJ.js → useSpringMount-DFxtzmkR.js} +1 -1
- package/dist/useSpringPress-VM9RgVq3.js +36 -0
- package/dist/{useSurfaceAxis-g0NloYEF.js → useSurfaceAxis-Ci7Dnaw2.js} +1 -1
- package/dist/{useTouchGate-CBZTD4SD.js → useTouchGate-B1Lf9XqN.js} +1 -1
- package/dist/{vendor-CKmzio-i.js → vendor-B2qOlYY3.js} +24 -11
- package/dist/virtual.d.ts +1 -0
- package/dist/virtual.js +225 -0
- package/dist/watercolor-dot.js +107 -74
- package/dist/writeVelocityWeight-Bh83xZfs.js +19 -0
- package/package.json +140 -9
- package/src/styles/animations.css +13 -3
- package/src/styles/cards.css +271 -2
- package/src/styles/completion-seal.css +131 -0
- package/src/styles/configurator.css +221 -1
- package/src/styles/critical-partition.mjs +66 -11
- package/src/styles/dock/adaptive-legibility.css +119 -0
- package/src/styles/dock/cta-seat.css +87 -0
- package/src/styles/dock/density.css +167 -6
- package/src/styles/dock/fission-bridge.css +552 -0
- package/src/styles/dock/layers.css +90 -78
- package/src/styles/dock/morph-bridge.css +67 -18
- package/src/styles/dock/morph.css +57 -118
- package/src/styles/dock/overflow.css +12 -0
- package/src/styles/dock/search.css +68 -0
- package/src/styles/dock/shape.css +250 -0
- package/src/styles/dock/shell.css +24 -8
- package/src/styles/dock/stack-rail.css +352 -0
- package/src/styles/dock-controls/dark-mode-toggle.css +17 -4
- package/src/styles/dock-controls/icon-button.css +46 -0
- package/src/styles/dock-controls/triggers.css +23 -1
- package/src/styles/dock-controls.css +18 -0
- package/src/styles/dock.css +27 -2
- package/src/styles/drawer.css +164 -0
- package/src/styles/glass/accent-tone.css +66 -0
- package/src/styles/glass/control-surfaces.css +167 -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/ladder.css +67 -17
- 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 +31 -9
- package/src/styles/glass/surfaces.css +81 -150
- package/src/styles/glass.css +21 -0
- package/src/styles/icon-chip.css +45 -0
- package/src/styles/index.css +26 -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/scroll-chrome.css +123 -0
- package/src/styles/scroll-driven.css +38 -0
- package/src/styles/segmented-tabs.css +110 -36
- package/src/styles/select.css +151 -0
- package/src/styles/theme/bridges.css +22 -0
- package/src/styles/theme/radius.css +18 -1
- package/src/styles/tokens/color-radius.css +14 -4
- package/src/styles/tokens/dark-arm.css +94 -12
- package/src/styles/tokens/glass-deep.css +33 -4
- package/src/styles/tokens/glass-fx.css +122 -1
- package/src/styles/tokens/glass.css +226 -34
- package/src/styles/tokens/light-dark.css +3 -3
- package/src/styles/tokens/offsets.css +27 -0
- package/src/styles/tokens/property-regs.css +277 -0
- package/src/styles/tokens/scale-paper.css +86 -30
- package/src/styles/tokens/scheme-motion.css +106 -133
- 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/sizing-config.css +110 -0
- package/src/styles/tokens/sizing.css +55 -104
- package/src/styles/tokens.css +14 -2
- package/src/styles/typography/semantic.css +18 -5
- package/src/styles/utilities/a11y-overrides.css +20 -5
- package/src/styles/utilities/base-misc.css +52 -0
- package/src/styles/utilities/btn.css +84 -3
- package/src/styles/utilities/components.css +31 -6
- package/src/styles/utilities/metal.css +26 -0
- package/dist/ContextMenuContent-uWnVxDab.js +0 -85
- package/dist/DialogContent-DcKK8k9i.js +0 -103
- package/dist/DialogFooter-BZNX5aVr.js +0 -165
- package/dist/HoverCardContent-b2uaAMRR.js +0 -83
- package/dist/Input-h9v5LeXf.js +0 -55
- package/dist/NumberFieldContent-Cq7EzX-U.js +0 -138
- package/dist/PaperBackdrop-Vf3tlpvd.js +0 -31
- package/dist/SelectScrollDownButton-CrA8F0iV.js +0 -252
- package/dist/Separator-pKF0oA4M.js +0 -37
- package/dist/Switch-CwYNf8bo.js +0 -47
- package/dist/TooltipProvider-rzvnXz60.js +0 -104
- package/dist/badge-D9XWW4GT.js +0 -53
- package/dist/button-DYCUa-tH.js +0 -126
- package/dist/color-DweYl7pE.js +0 -86
- package/dist/components/custom/concentric/composables/ringField.d.ts +0 -44
- package/dist/components/custom/constellation/composables/useConstellationPointer.d.ts +0 -35
- package/dist/components/custom/constellation/constellationDraw.d.ts +0 -30
- package/dist/components/custom/dock/DockRail.vue.d.ts +0 -89
- package/dist/createCanvasLifecycle-CHD5XrDW.js +0 -82
- package/dist/dockContext-BNfyPLe9.js +0 -17
- package/dist/procedural-color.wgsl-CToRHugY.js +0 -224
- package/dist/resolveCanvasColor-CUyHr5Uu.js +0 -11
- package/dist/slider-DVb4HXU-.js +0 -142
- package/dist/springPresets-CFQGQfdl.js +0 -40
- package/dist/styles/dock/rail-extend.css +0 -397
- package/dist/useLiquidPress-kfb4KX79.js +0 -39
- package/dist/usePointerVelocityField-JbRd5CrM.js +0 -137
- package/dist/useRAFLoop-UYa4zoiN.js +0 -109
- package/dist/useSpringPress-BsqPr7FJ.js +0 -34
- package/src/styles/dock/rail-extend.css +0 -397
- /package/dist/{CollapsibleContent-68dEXIAl.js → CollapsibleContent-D7UNsXQr.js} +0 -0
- /package/dist/{InstrumentChassis-Bx0F_q5g.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-DwwjicPY.js → SelectGroup-Dcczq44n.js} +0 -0
- /package/dist/{_plugin-vue_export-helper-C1je1s0u.js → _plugin-vue_export-helper-gLzyemvl.js} +0 -0
- /package/dist/{compile-CQEFRTmx.js → compile-INR_tPk_.js} +0 -0
- /package/dist/{constants-BPOqYJAm.js → constants-BWj7DkMn.js} +0 -0
- /package/dist/{createContext-CpBNTRMI.js → createContext-Cd23P9j0.js} +0 -0
- /package/dist/{math-BINYmg5z.js → math-5RcIgCB4.js} +0 -0
- /package/dist/{menuItemVariants-D8VNHq22.js → menuItemVariants-DAXquKja.js} +0 -0
- /package/dist/{prng-Za0Rmgag.js → prng-B5tIXTtj.js} +0 -0
- /package/dist/{useGlobalDark-C28t0VWJ.js → useGlobalDark-B4HO9LXG.js} +0 -0
- /package/dist/{useIntersectionPause-Bj4sPkMh.js → useIntersectionPause-DO8Vl4gs.js} +0 -0
- /package/dist/{useInterval-CvK1mL92.js → useInterval-BVUI-sez.js} +0 -0
- /package/dist/{useKeyboardShortcuts-BXWXOZ-9.js → useKeyboardShortcuts-BEut54Tk.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-D7bYU2RK.js → useScrollProgress-A0M6qRl7.js} +0 -0
- /package/dist/{useSortable-DHjtZSEd.js → useSortable-DQV_UNDw.js} +0 -0
- /package/dist/{useTextHighlight-CWEi25hf.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-Czsb7zQC.js → vReveal-CT1KtwZA.js} +0 -0
- /package/dist/{vSpecular-CQFmLNzA.js → vSpecular-EX7loENl.js} +0 -0
|
@@ -36,8 +36,15 @@
|
|
|
36
36
|
/* ── The PILL track (the glass material — DEFAULT) ── */
|
|
37
37
|
.segmented-tabs {
|
|
38
38
|
--bouncy-track-trim: 0.1875rem;
|
|
39
|
-
|
|
40
|
-
|
|
39
|
+
/* BC.W-TABS-IOS — the iOS-27 stadium register. The pill reads the role-bearing
|
|
40
|
+
`--radius-tab` (= --radius-pill = 9999px) — on a short pill box this clamps to
|
|
41
|
+
half-height → a TRUE stadium end-cap (not the squared `0.3125rem` rounded-rect
|
|
42
|
+
the HEAD shipped). The TRACK corner is CONCENTRIC with the pill (Apple's
|
|
43
|
+
`.containerConcentric`): the pill radius + the trim inset, so a stadium pill
|
|
44
|
+
sits inside a near-stadium track. No breakpoint radius bump — a stadium does
|
|
45
|
+
not change radius across viewports (clean break, the 640px radius lines gone). */
|
|
46
|
+
--bouncy-slider-radius: var(--radius-tab);
|
|
47
|
+
--bouncy-track-radius: calc(var(--bouncy-slider-radius) + var(--bouncy-track-trim));
|
|
41
48
|
/* The travel-squish axis — 1 at rest; useTabIndicator writes it transiently
|
|
42
49
|
on selection, the indicator pairs it volume-preserving. */
|
|
43
50
|
--stretch: 1;
|
|
@@ -47,15 +54,12 @@
|
|
|
47
54
|
grid-auto-columns: 1fr;
|
|
48
55
|
padding: var(--bouncy-track-trim);
|
|
49
56
|
border-radius: var(--bouncy-track-radius);
|
|
50
|
-
/*
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
backdrop-filter: var(--glass-blur-quiet);
|
|
57
|
-
-webkit-backdrop-filter: var(--glass-blur-quiet);
|
|
58
|
-
box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--border) 24%, transparent);
|
|
57
|
+
/* BD.W-TAB-IOS-CAPSULE — the warm-glass quiet surface + the rim + the iOS-27
|
|
58
|
+
sunken recess now live in the SHARED `.glass-capsule-track` register (the SFC
|
|
59
|
+
composes it onto the pill track). The track is a thin warm-glass quiet capsule
|
|
60
|
+
with a lit top edge + a recessed well, never a dark hairline, never gray. The
|
|
61
|
+
indicator (`.glass-capsule`) reads FORWARD off the SAME rim + the lift shadow.
|
|
62
|
+
The underline material does NOT compose the track (paper, no surface). */
|
|
59
63
|
}
|
|
60
64
|
|
|
61
65
|
/* ── The vertical orientation axis (the block stack) ── */
|
|
@@ -69,35 +73,61 @@
|
|
|
69
73
|
|
|
70
74
|
@media (min-width: 640px) {
|
|
71
75
|
.segmented-tabs {
|
|
76
|
+
/* BC.W-TABS-IOS — only the trim (pad) axis bumps at the wider breakpoint; the
|
|
77
|
+
radius is the viewport-invariant stadium (--radius-tab), so the corner
|
|
78
|
+
track-radius re-resolves concentric off the bigger trim by construction. */
|
|
72
79
|
--bouncy-track-trim: 0.25rem;
|
|
73
|
-
--bouncy-track-radius: 0.5rem;
|
|
74
|
-
--bouncy-slider-radius: 0.375rem;
|
|
75
80
|
}
|
|
76
81
|
}
|
|
77
82
|
|
|
78
83
|
/* ── The shared indicator body (the PILL plate) ── */
|
|
79
84
|
.segmented-indicator {
|
|
80
85
|
position: absolute;
|
|
81
|
-
/*
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
backdrop-filter: var(--glass-blur-floating);
|
|
89
|
-
-webkit-backdrop-filter: var(--glass-blur-floating);
|
|
86
|
+
/* BD.W-TAB-IOS-CAPSULE — the active pill COMPOSES the shared `.glass-capsule`
|
|
87
|
+
(the SFC adds the class). The warm-floor fill (`--glass-bg-floating-tinted`
|
|
88
|
+
composed toward the warm-floor source, meanChroma ≥ 0.02 both modes — never
|
|
89
|
+
gray), the floating blur, the directional rim + the lift under-shadow ALL live
|
|
90
|
+
there now, ONE recipe ≥3 consumers. This block keeps only the position +
|
|
91
|
+
inset + the indicator-local stadium radius + the motion transform. */
|
|
90
92
|
z-index: 0;
|
|
91
93
|
inset-block: var(--bouncy-track-trim);
|
|
92
94
|
border-radius: var(--bouncy-slider-radius);
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
as it travels (the indicator grows wider mid-travel, settles to fit). */
|
|
95
|
+
/* BD.W-TABS-LIQUID — the COMPOSED transform write: the area-inflation BLOB
|
|
96
|
+
(uniform, both axes, `--tab-blob` driven imperatively by the 2nd
|
|
97
|
+
`useLiquidFlex` channel — grow→overshoot→shrink) × the volume-preserving
|
|
98
|
+
travel-squish (`--stretch`, reciprocal). `transform-origin: center` → the blob
|
|
99
|
+
grows from center (the label stays put) and the squish stays center-pinned. */
|
|
99
100
|
transform-origin: center;
|
|
100
|
-
scale: var(--
|
|
101
|
+
scale: calc(var(--tab-blob, 1) * var(--stretch))
|
|
102
|
+
calc(var(--tab-blob, 1) / var(--stretch));
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
/* BD.W-TABS-LIQUID — the COMMIT accent-flood (T4, opt-in). A momentary full-capsule
|
|
106
|
+
wash of `--glass-accent`, driven by `--tab-flood-t` (0→1→0), that TRAILS the
|
|
107
|
+
spatial glide a beat then clears (EFFECTS-after-SPATIAL). `isolation: isolate` on
|
|
108
|
+
the host so the `plus-lighter` blend composites the flood against the capsule
|
|
109
|
+
only (not the page); the gradient is `in srgb` (additive bloom, NOT oklab). The
|
|
110
|
+
accent is a CONSUMER accent — default `--glass-accent: transparent` → byte-
|
|
111
|
+
identical rest, provable no-op. The SAME register dock-tabs adopt (dormant at
|
|
112
|
+
`--tab-flood-t: 0`). */
|
|
113
|
+
.segmented-indicator {
|
|
114
|
+
isolation: isolate;
|
|
115
|
+
}
|
|
116
|
+
@supports (mix-blend-mode: plus-lighter) {
|
|
117
|
+
.segmented-indicator::after {
|
|
118
|
+
content: "";
|
|
119
|
+
position: absolute;
|
|
120
|
+
inset: 0;
|
|
121
|
+
border-radius: inherit;
|
|
122
|
+
pointer-events: none;
|
|
123
|
+
background: radial-gradient(
|
|
124
|
+
120% 140% at 50% 50%,
|
|
125
|
+
color-mix(in srgb, var(--glass-accent, transparent) 55%, transparent),
|
|
126
|
+
transparent 70%
|
|
127
|
+
);
|
|
128
|
+
mix-blend-mode: plus-lighter;
|
|
129
|
+
opacity: var(--tab-flood-t, 0);
|
|
130
|
+
}
|
|
101
131
|
}
|
|
102
132
|
|
|
103
133
|
/* Vertical: the indicator deforms on the BLOCK axis (compress X / stretch Y) and
|
|
@@ -105,15 +135,23 @@
|
|
|
105
135
|
.segmented-tabs--vertical .segmented-indicator {
|
|
106
136
|
inset-block: auto;
|
|
107
137
|
inset-inline: var(--bouncy-track-trim);
|
|
108
|
-
|
|
138
|
+
/* BD.W-TABS-LIQUID — the vertical arm mirrors the blob × squish: the block axis
|
|
139
|
+
carries the stretch, the inline axis its reciprocal, both uniformly inflated. */
|
|
140
|
+
scale: calc(var(--tab-blob, 1) / var(--stretch))
|
|
141
|
+
calc(var(--tab-blob, 1) * var(--stretch));
|
|
109
142
|
}
|
|
110
143
|
|
|
111
144
|
@media (prefers-reduced-motion: no-preference) {
|
|
112
145
|
.segmented-indicator {
|
|
113
|
-
/*
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
146
|
+
/* BD.W-TABS-LIQUID — the composed `scale` (`--tab-blob × --stretch`) rides the
|
|
147
|
+
DEPENDED `--ease-cartoon-punch` curve (the booked Band-0 token, CONSUMED
|
|
148
|
+
never minted) so the 5-beat blob anticipates (the curve's pre-dip < 0),
|
|
149
|
+
overshoots past the destination footprint (peaks > 1), then settles soft.
|
|
150
|
+
The discrete imperative `--tab-blob` writes (open/release) INTERPOLATE on
|
|
151
|
+
this clock via the `@property` registration — no snap-flicker. ONE clock,
|
|
152
|
+
ONE composited transform pair — the glide (inset) + the squish + the blob
|
|
153
|
+
cannot desync. The `--tab-flood-t` accent-flood trails a beat after. */
|
|
154
|
+
transition: scale var(--tab-indicator-duration) var(--ease-cartoon-punch);
|
|
117
155
|
}
|
|
118
156
|
}
|
|
119
157
|
|
|
@@ -169,8 +207,10 @@
|
|
|
169
207
|
|
|
170
208
|
@media (min-width: 640px) {
|
|
171
209
|
.segmented-indicator {
|
|
210
|
+
/* BC.W-TABS-IOS — only the inset (trim) axis bumps; the radius stays the
|
|
211
|
+
viewport-invariant stadium (`--bouncy-slider-radius` = --radius-tab). The
|
|
212
|
+
HEAD `border-radius: 0.375rem` px-literal that squared the pill is GONE. */
|
|
172
213
|
inset-block: 0.25rem;
|
|
173
|
-
border-radius: 0.375rem;
|
|
174
214
|
}
|
|
175
215
|
.segmented-tabs--vertical .segmented-indicator {
|
|
176
216
|
inset-block: auto;
|
|
@@ -204,7 +244,13 @@
|
|
|
204
244
|
font: inherit;
|
|
205
245
|
font-size: 0.8125rem;
|
|
206
246
|
color: var(--muted-foreground);
|
|
207
|
-
|
|
247
|
+
/* BD.W-TABS-LIQUID — the glyph scale-pop (overlapping action / follow-through):
|
|
248
|
+
the label settles AFTER the capsule (the child trails the parent). The `scale`
|
|
249
|
+
channel rides the snappy spring with a 60ms delay so it OVERLAPS the capsule
|
|
250
|
+
arrival; the colour cross-fade stays on the fast bezier. */
|
|
251
|
+
transition:
|
|
252
|
+
color var(--duration-fast) ease,
|
|
253
|
+
scale var(--spring-snappy-duration) var(--spring-snappy) 60ms;
|
|
208
254
|
/* AQ.W3 identity base — keep `scale:1; translate:0` so a hover/press
|
|
209
255
|
transform never mints a stacking context that severs `anchor()`
|
|
210
256
|
resolution (the WAAPI press writes `transform` transiently — harmless). */
|
|
@@ -224,6 +270,19 @@
|
|
|
224
270
|
color: var(--foreground);
|
|
225
271
|
}
|
|
226
272
|
|
|
273
|
+
/* BD.W-TABS-LIQUID — the glyph scale-pop on the PILL selection. The live selection
|
|
274
|
+
model is `aria-pressed` (the pill is a ToggleGroup-shaped surface — verified in
|
|
275
|
+
SegmentedTabs.vue, NOT `aria-selected` which the underline paper material uses).
|
|
276
|
+
The pop magnitude DEPENDS `--motion-weight` (the booked Band-0 token, CONSUMED):
|
|
277
|
+
`calc(1 + 0.06 × --motion-weight)` → ~+3.7% at rest weight 0.618, and exactly 1
|
|
278
|
+
under PRM (`--motion-weight: 0`). The 60ms transition delay (above) settles it a
|
|
279
|
+
beat after the capsule arrives (overlapping action). The underline label does NOT
|
|
280
|
+
pop (paper ink, no inflation — the material fence). */
|
|
281
|
+
.segmented-tabs:not(.segmented-tabs--underline)
|
|
282
|
+
.segmented-tab[aria-pressed="true"] {
|
|
283
|
+
scale: calc(1 + 0.06 * var(--motion-weight));
|
|
284
|
+
}
|
|
285
|
+
|
|
227
286
|
.segmented-tab.is-disabled {
|
|
228
287
|
opacity: 0.4;
|
|
229
288
|
cursor: not-allowed;
|
|
@@ -328,7 +387,16 @@
|
|
|
328
387
|
|
|
329
388
|
.segmented-tabs--underline .segmented-tab {
|
|
330
389
|
padding: 0.375rem 0.75rem;
|
|
331
|
-
|
|
390
|
+
/* BC.W-UNDERLINE-TUNE — the audacious editorial label voice. The underline is
|
|
391
|
+
the PAPER/editorial material (BA.W-TABS), so its labels carry the √φ display
|
|
392
|
+
register, NOT the small 0.8125rem control size the PILL labels keep (the
|
|
393
|
+
two-voice fence — the pill is a compact control, the underline is an editorial
|
|
394
|
+
nav head). `--type-subheading` (1.272rem / 20.4px, the √φ rung) + the Apple
|
|
395
|
+
display tracking `--type-tracking-display` (−1.5%) are the BB.W-DISPLAY-TRACKING
|
|
396
|
+
ladder rungs CONSUMED here (never re-minted), the same pairing the semantic
|
|
397
|
+
display rungs ride. A confident editorial strip, not a default Tailwind row. */
|
|
398
|
+
font-size: var(--type-subheading);
|
|
399
|
+
letter-spacing: var(--type-tracking-display);
|
|
332
400
|
border-radius: 0.25rem;
|
|
333
401
|
/* The tab-text colour cross-fade rides the fast generic clock (the §6 doctrine
|
|
334
402
|
— a colour shift is a bezier ease, never a spring), matching the pill tab
|
|
@@ -371,7 +439,9 @@
|
|
|
371
439
|
/* Promote to its own compositor layer for the 1:1 follow (the translate write
|
|
372
440
|
is compositor-only; the hint keeps the plate off the main-thread paint). */
|
|
373
441
|
will-change: transform;
|
|
374
|
-
/*
|
|
375
|
-
|
|
376
|
-
|
|
442
|
+
/* BD.W-TAB-IOS-CAPSULE C7 — the grabbed-state catch-light COMPOSES the SHARED
|
|
443
|
+
specular-lift step declared ONCE in glass/glass-capsule.css (the
|
|
444
|
+
`.glass-capsule-hover:hover, .glass-drag-lift { --glass-specular }` group), NOT
|
|
445
|
+
a parallel `--glass-specular` fork. This block carries only the grabbing-distinct
|
|
446
|
+
bits (the grab cursor + the `will-change` hint). */
|
|
377
447
|
}
|
package/dist/styles/select.css
CHANGED
|
@@ -48,3 +48,154 @@
|
|
|
48
48
|
precompiled contract). */
|
|
49
49
|
overflow-y: auto;
|
|
50
50
|
}
|
|
51
|
+
|
|
52
|
+
/* ════════════════════════════════════════════════════════════════════════
|
|
53
|
+
BD.W-SELECT-WELL (P4 select-forms) — the welling WARM-GLASS listbox + the
|
|
54
|
+
keyed warm control EDGE. The Select is the REFERENCE consumer of the shared
|
|
55
|
+
field + capsule + accent + reveal union — every leg COMPOSES a shipped/sibling
|
|
56
|
+
register, ZERO new component, ZERO fork.
|
|
57
|
+
|
|
58
|
+
The three legs that live HERE (the consumer side):
|
|
59
|
+
· .glass-control-edge — the keyed two-stop warm rim every form control reads
|
|
60
|
+
so it has a DEFINED edge over the field (fixes the trigger box-shadow:none
|
|
61
|
+
cream-on-cream melt). Composes the SHIPPED `--glass-rim-top`/`--glass-rim-
|
|
62
|
+
bottom` keyed pair (the `--glass-key` upper-right cel key) — NOT a select-
|
|
63
|
+
private border, NOT a re-minted rim.
|
|
64
|
+
· the menu plate WARM FLOOR + α-drop — the menu reads the SHIPPED warm-capsule
|
|
65
|
+
floor (`--glass-capsule-warm` at `--glass-capsule-warm-floor`, the proven
|
|
66
|
+
meanChroma ≥ 0.02 source) so it is warm-cream even over a flat page, AND the
|
|
67
|
+
plate α drops so the warmed source + the portal field TRANSMIT.
|
|
68
|
+
· the portal warm FIELD — a clipped menu-local layer carrying the route's
|
|
69
|
+
`--field-h` (re-emitted on the portal root) so the menu transmits its route
|
|
70
|
+
identity even where the page field is faint behind the body plate.
|
|
71
|
+
════════════════════════════════════════════════════════════════════════ */
|
|
72
|
+
@layer components {
|
|
73
|
+
/* ── .glass-control-edge — the keyed warm control rim (the cream-on-cream fix) ──
|
|
74
|
+
The form controls read `.control-surface` / `.input-pill` (control-surfaces.css)
|
|
75
|
+
which carry a border + fill but `box-shadow: none` — so over a warm cream field
|
|
76
|
+
the trigger's 1.5px border melts and the control reads as a flat cream smudge.
|
|
77
|
+
This register adds the SHIPPED keyed two-stop directional rim (the bright top/
|
|
78
|
+
right catch-light + the faint warm bottom/left under-shadow, `--glass-key` upper-
|
|
79
|
+
right) so the control reads as a lifted glass plate with a defined warm edge over
|
|
80
|
+
the field. ONE register, ≥8 consumers (Select trigger + Input/Textarea/NumberField
|
|
81
|
+
pill + Checkbox/Radio + Switch track + Combobox anchor) — the DRY bar cleared by
|
|
82
|
+
construction. Composed (not re-declared): the rim is the SAME `--glass-rim-top`/
|
|
83
|
+
`--glass-rim-bottom` pair `.glass-capsule` reads, so `--glass-key` re-points BOTH
|
|
84
|
+
the capsule and the control edge from ONE handle (cel coherence). */
|
|
85
|
+
.glass-control-edge {
|
|
86
|
+
box-shadow:
|
|
87
|
+
var(--glass-rim-top),
|
|
88
|
+
var(--glass-rim-bottom);
|
|
89
|
+
}
|
|
90
|
+
/* Compose the keyed edge UNDER any control-owned ring/shadow: a control with its
|
|
91
|
+
OWN box-shadow (the Switch thumb, the focus ring on the pill) layers its shadow
|
|
92
|
+
FIRST, then the rim — the rim is the resting silhouette, the ring is the focus
|
|
93
|
+
overlay (the pill's `:focus-visible` box-shadow wins by source order + its own
|
|
94
|
+
rule). The rim travels with the control on the SHARED bezier (the pill/control-
|
|
95
|
+
surface already transition box-shadow on `--ease-standard`). */
|
|
96
|
+
|
|
97
|
+
/* ── The menu plate WARM FLOOR + α-drop (the un-gray amplifier) ──
|
|
98
|
+
The floating recipe (`.glass-floating`, ladder.css) composes
|
|
99
|
+
`color-mix(--glass-bg-floating, --glass-tint-source --glass-tint-strength)`,
|
|
100
|
+
and `--glass-tint-strength` floors at 0% at calm rest — so the menu plate is
|
|
101
|
+
near-gray-flat. RE-POINT the menu fill to compose the SHIPPED warm-capsule floor
|
|
102
|
+
(`--glass-capsule-warm` at `--glass-capsule-warm-floor`, the proven meanChroma
|
|
103
|
+
≥ 0.02 source — the SAME token the tab capsule reads, DRY) ON TOP of the floating
|
|
104
|
+
tint, AND drop the plate α so the warmed source + the portal field TRANSMIT and
|
|
105
|
+
give real L-variance (the menu is warm GLASS, never an opaque cream slab). The
|
|
106
|
+
six-layer rim/blur/shadow composite is UNTOUCHED — only the FILL admit changes. */
|
|
107
|
+
[data-slot="select-content"],
|
|
108
|
+
[data-slot="combobox-list"] {
|
|
109
|
+
/* The α-drop seam: a consumer can re-solidify via `--select-plate-alpha: 1`.
|
|
110
|
+
Default 0.90 (light) drops the ~0.80α floating base to ~0.72 effective (the
|
|
111
|
+
amendment's transmit target) so the warmed source + the portal field show
|
|
112
|
+
through while the plate keeps body. The dark arm keeps more body (see .dark
|
|
113
|
+
below). The combobox list is the SAME overlay-family warm-glass plate
|
|
114
|
+
(DRY — one warm-floor register for both portalled pickers). */
|
|
115
|
+
--select-plate-alpha: 0.90;
|
|
116
|
+
background: color-mix(
|
|
117
|
+
in oklab,
|
|
118
|
+
color-mix(
|
|
119
|
+
in oklab,
|
|
120
|
+
var(--glass-bg-floating-tinted, var(--glass-bg-floating)),
|
|
121
|
+
var(--glass-capsule-warm) var(--glass-capsule-warm-floor)
|
|
122
|
+
),
|
|
123
|
+
transparent calc((1 - var(--select-plate-alpha)) * 100%)
|
|
124
|
+
);
|
|
125
|
+
/* the cartoon weight — the SHIPPED `--shadow-cartoon-lg` warm cel stamp UNDER
|
|
126
|
+
the floating elevation so the panel reads as a physical card lifted off the
|
|
127
|
+
page. Composed onto the floating box-shadow stack via the plate's own rule
|
|
128
|
+
(the floating tier's `--glass-material-rim` + shadows stay; this ADDS the
|
|
129
|
+
cartoon under-stamp). Static, PRM-immune. */
|
|
130
|
+
box-shadow:
|
|
131
|
+
var(--glass-material-rim),
|
|
132
|
+
var(--glass-under-shadow-vivid),
|
|
133
|
+
var(--glass-shadow-floating),
|
|
134
|
+
var(--shadow-cartoon-lg);
|
|
135
|
+
}
|
|
136
|
+
.dark [data-slot="select-content"],
|
|
137
|
+
.dark [data-slot="combobox-list"] {
|
|
138
|
+
/* dark glass needs more body — the warm field reads as a glow band, not a wash
|
|
139
|
+
lost in near-black; keep the fill nearly solid so the dark menu has presence.
|
|
140
|
+
PLAIN per-mode arm (not a light-dark() fragment — the inset-shadow trap, and
|
|
141
|
+
the box-shadow above carries no inset leg but the discipline holds). */
|
|
142
|
+
--select-plate-alpha: 0.94;
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
/* ── .glass-field-portal — the portal-local warm field (route identity) ──
|
|
146
|
+
The menu portals to <body>, OUTSIDE the route's field, so its `backdrop-filter`
|
|
147
|
+
has nothing warm to transmit. A clipped menu-local layer BEHIND the plate (z -1,
|
|
148
|
+
NO backdrop-filter on it — glass-cannot-sample-glass avoided by construction)
|
|
149
|
+
paints a 3-stop warm spine keyed to the route's `--field-h` (re-emitted on the
|
|
150
|
+
portal root via `data-field-palette` → `--field-h`). `inset: 0` (clipped INSIDE
|
|
151
|
+
— the blur bends it THROUGH the plate as real L-variance, NOT an `inset:-20%`
|
|
152
|
+
halo leaking around the box). Defaults to `--field-h: 48` (forms terracotta)
|
|
153
|
+
when the route does not re-emit, so a bare Select still reads warm. */
|
|
154
|
+
.glass-field-portal {
|
|
155
|
+
position: relative;
|
|
156
|
+
}
|
|
157
|
+
.glass-field-portal::before {
|
|
158
|
+
content: "";
|
|
159
|
+
position: absolute;
|
|
160
|
+
inset: 0;
|
|
161
|
+
z-index: -1;
|
|
162
|
+
pointer-events: none;
|
|
163
|
+
border-radius: inherit;
|
|
164
|
+
background:
|
|
165
|
+
radial-gradient(70% 60% at 24% 22%,
|
|
166
|
+
oklch(0.92 0.08 var(--field-h, 48) / 0.55), transparent 72%),
|
|
167
|
+
radial-gradient(64% 58% at 82% 80%,
|
|
168
|
+
oklch(0.88 0.07 calc(var(--field-h, 48) + 18) / 0.50), transparent 70%),
|
|
169
|
+
radial-gradient(60% 62% at 60% 40%,
|
|
170
|
+
oklch(0.90 0.06 calc(var(--field-h, 48) - 14) / 0.48), transparent 74%);
|
|
171
|
+
}
|
|
172
|
+
/* DARK arm (PLAIN per-mode, not :global()/light-dark()) — the dark field stops lift
|
|
173
|
+
to a real glow band (oklch L ~0.22–0.30, higher chroma) so the field-thesis is met
|
|
174
|
+
in dark, not a wash lost in near-black. */
|
|
175
|
+
.dark .glass-field-portal::before {
|
|
176
|
+
background:
|
|
177
|
+
radial-gradient(70% 60% at 24% 22%,
|
|
178
|
+
oklch(0.30 0.10 var(--field-h, 48) / 0.55), transparent 72%),
|
|
179
|
+
radial-gradient(64% 58% at 82% 80%,
|
|
180
|
+
oklch(0.26 0.09 calc(var(--field-h, 48) + 18) / 0.50), transparent 70%),
|
|
181
|
+
radial-gradient(60% 62% at 60% 40%,
|
|
182
|
+
oklch(0.28 0.08 calc(var(--field-h, 48) - 14) / 0.48), transparent 74%);
|
|
183
|
+
}
|
|
184
|
+
/* honest-degraded arm — engines without oklch() get an hsl warm spine, never gray. */
|
|
185
|
+
@supports not (color: oklch(0.9 0.08 48)) {
|
|
186
|
+
.glass-field-portal::before {
|
|
187
|
+
background: radial-gradient(70% 60% at 24% 22%,
|
|
188
|
+
hsl(var(--field-h, 48) 60% 88% / 0.5), transparent 72%);
|
|
189
|
+
}
|
|
190
|
+
.dark .glass-field-portal::before {
|
|
191
|
+
background: radial-gradient(70% 60% at 24% 22%,
|
|
192
|
+
hsl(var(--field-h, 48) 45% 26% / 0.55), transparent 72%);
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
/* ── PRM is colour-static here — the field + floor + edge + cartoon shadow are PAINT,
|
|
198
|
+
not motion, so they REMAIN under `prefers-reduced-motion: reduce` (un-gray and
|
|
199
|
+
selection-legibility need no motion). The reveal/pour/chevron motion legs are
|
|
200
|
+
carved in their own home recipes (reveal.css / menu.css) — this consumer file
|
|
201
|
+
introduces no motion to gate. */
|
|
@@ -315,6 +315,14 @@
|
|
|
315
315
|
--shadow-cartoon-md: var(--cartoon-shadow-md);
|
|
316
316
|
--shadow-cartoon-lg: var(--cartoon-shadow-lg);
|
|
317
317
|
|
|
318
|
+
/* BC.W-CONTROL-SMOOTH — the warm focus-ring box-shadow bridged to the
|
|
319
|
+
`shadow-focus-ring` utility (AW.W26 --focus-ring-shadow register). The
|
|
320
|
+
`.focus-ring` utility auto-arms on :focus-visible; this bridge lets a
|
|
321
|
+
surface compose the SAME warm ring on a NON-:focus-visible state (the
|
|
322
|
+
TagsInputItem reka roving-tabindex `data-[state=active]` selection) via the
|
|
323
|
+
@theme utility, not a `shadow-[var(--focus-ring-shadow)]` arbitrary wrap. */
|
|
324
|
+
--shadow-focus-ring: var(--focus-ring-shadow);
|
|
325
|
+
|
|
318
326
|
/* ═══════════════════════════════════════════════
|
|
319
327
|
Blur → blur-* and backdrop-blur-* utilities
|
|
320
328
|
═══════════════════════════════════════════════ */
|
|
@@ -332,6 +340,15 @@
|
|
|
332
340
|
--ease-spring-snappy: var(--spring-snappy);
|
|
333
341
|
--ease-spring-bouncy: var(--spring-bouncy);
|
|
334
342
|
--ease-spring-gentle: var(--spring-gentle);
|
|
343
|
+
/* BC.W-SPRING-EASE — the minted iOS interactive press register's @theme alias
|
|
344
|
+
(the documented public register the consumers reach by name; the JS path
|
|
345
|
+
reads it via useSpringPress + --glass-btn-press-t). */
|
|
346
|
+
--ease-spring-press: var(--spring-press);
|
|
347
|
+
/* BC.W-DECK — the deck slide-transition spring's @theme alias (the documented
|
|
348
|
+
public register a consumer's slide `transition-timing-function` reaches by
|
|
349
|
+
name: `ease-spring-deck`). --spring-deck aliases --spring-smooth; the headless
|
|
350
|
+
library mints the register, the deck consumer reads it (presets-in-consumers). */
|
|
351
|
+
--ease-spring-deck: var(--spring-deck);
|
|
335
352
|
|
|
336
353
|
--ease-standard: var(--motion-ease-standard);
|
|
337
354
|
--ease-out: var(--motion-ease-out);
|
|
@@ -352,6 +369,11 @@
|
|
|
352
369
|
--transition-duration-panel: var(--duration-panel);
|
|
353
370
|
--transition-duration-xl: var(--duration-xl);
|
|
354
371
|
--transition-duration-xxl: var(--duration-xxl);
|
|
372
|
+
/* BC.W-CONTROL-SMOOTH — the named iOS control-press surface beat (0.12s, the
|
|
373
|
+
calm bg/color/box-shadow cross-fade clock the `.control-surface`/Toggle
|
|
374
|
+
family rides). Bridged to the `duration-control` utility so a control
|
|
375
|
+
composes the named clock, not a `duration-[var(--duration-control)]` wrap. */
|
|
376
|
+
--transition-duration-control: var(--duration-control);
|
|
355
377
|
/* BA.W-GLASS-CAL — `--transition-duration-sparkle` bridge DELETED with the
|
|
356
378
|
`--duration-sparkle` token (the disco retirement); no `duration-sparkle`
|
|
357
379
|
utility consumer. */
|
|
@@ -42,9 +42,26 @@
|
|
|
42
42
|
on Checkbox + base Tabs onto a softer, named radius. One geometry language
|
|
43
43
|
across the form family — token + class only, no new primitive. */
|
|
44
44
|
--radius-field: var(--radius-2xl);
|
|
45
|
-
|
|
45
|
+
/* BC.W-CONTROL-SMOOTH — the small-inline-control corner rung is a STADIUM, not a
|
|
46
|
+
fixed small px. The prior `--radius-md` (6px) read SQUARE on a 16-24px control
|
|
47
|
+
(6px on a 16px box = 0.38-of-height — a rounded-rect, not a pill); the iOS-27
|
|
48
|
+
small-control silhouette is a near-stadium pill where the radius SCALES with the
|
|
49
|
+
control (clamped to half-height by `--radius-pill`'s 9999px geometry, so a 16px
|
|
50
|
+
control reads an 8px-radius pill — soft at every size). This retires the raw
|
|
51
|
+
`rounded-sm` (4px) on Checkbox + base Tabs AND the small-control square class in
|
|
52
|
+
ONE rung. The `card` toggle TILE keeps `--radius-card` (the large glass surface
|
|
53
|
+
keeps its 1rem squircle — only the small inline controls re-round). The corner-
|
|
54
|
+
SHAPE squircle axis reads at LARGE radius only (ROUND set = card+pill for small),
|
|
55
|
+
so the small pills stay ROUND (no regression). */
|
|
56
|
+
--radius-control: var(--radius-pill);
|
|
46
57
|
--radius-badge: var(--radius-pill);
|
|
47
58
|
--radius-dock: var(--radius-pill);
|
|
59
|
+
/* BC.W-TABS-IOS — the iOS-27 segmented-control stadium register. The pill is a
|
|
60
|
+
stadium by construction (--radius-pill clamps to half-height on a short box →
|
|
61
|
+
a true end-cap), so the tab strip stops being a squared rounded-rect. The
|
|
62
|
+
value.js DESIGN.md idiom: the role-bearing pill token, NOT a hand-rolled
|
|
63
|
+
`rounded-full`. A consumer retunes the tab geometry via `:root { --radius-tab }`. */
|
|
64
|
+
--radius-tab: var(--radius-pill);
|
|
48
65
|
/* AW.W3b — the big-dock card shell's default (comfortable-density) radius.
|
|
49
66
|
The density-scaled --dock-card-radius (dock.css) resolves through this. */
|
|
50
67
|
--radius-dock-card: var(--radius-3xl);
|
|
@@ -69,7 +69,7 @@
|
|
|
69
69
|
allows a near-white translucent surface. The DARK --card is W-DARK-MATERIAL's
|
|
70
70
|
lifted hsl(24 8% 16%) (NOT re-warmed here — the dark register is its work).
|
|
71
71
|
Bounded: the cream family, never a tinted cast (the triumvirate bar). */
|
|
72
|
-
--card: hsl(
|
|
72
|
+
--card: hsl(30 85% 96%);
|
|
73
73
|
--card-foreground: var(--foreground);
|
|
74
74
|
--popover: var(--card);
|
|
75
75
|
--popover-foreground: var(--foreground);
|
|
@@ -121,6 +121,16 @@
|
|
|
121
121
|
`--border` (which is `var(--neutral-4)`, light-dark()-resolved). */
|
|
122
122
|
--border-soft: color-mix(in srgb, var(--border) 45%, transparent);
|
|
123
123
|
|
|
124
|
+
/* BC.W-SEPARATOR-FIX — the warm separator hairline ink. A rule reads as
|
|
125
|
+
WARM material, not a grey `--border` line (BA.W-NO-GRAY floor): the
|
|
126
|
+
split-rule segments + un-labelled hairline both paint `--separator-ink`.
|
|
127
|
+
It is a `color-mix` off `--foreground` (`light-dark()`-resolved, so it
|
|
128
|
+
auto-darks warm in both modes — the warm-ink hairline, not `--neutral-4`
|
|
129
|
+
grey). 22% is a visible-but-whisper rule (crisper than `--border-soft`'s
|
|
130
|
+
45%-of-grey; this one is foreground-derived so it carries the warm hue
|
|
131
|
+
directly). A consumer retints every separator from this single rung. */
|
|
132
|
+
--separator-ink: color-mix(in srgb, var(--foreground) 22%, transparent);
|
|
133
|
+
|
|
124
134
|
/* AQ.W3 §W3.4 — tokenized scrollbar thumb + track. Minted in the color
|
|
125
135
|
block so the `scrollbar-color` / `::-webkit-scrollbar-thumb` rungs read a
|
|
126
136
|
single source. Auto-dark via `--muted-foreground` (light-dark()-resolved,
|
|
@@ -224,9 +234,9 @@
|
|
|
224
234
|
keyframes.js ω₀ = 2π/response convention, mints no second ω). */
|
|
225
235
|
--constellation-warp-response: 0.55; /* s — keyframes.js angular period (NOT a settle) */
|
|
226
236
|
--constellation-warp-zeta: 1.0; /* critically damped — a focal mark must NOT ring */
|
|
227
|
-
--constellation-well-gain:
|
|
237
|
+
--constellation-well-gain: 19000; /* inverse-square force scale (the held-pull gain). Lifted 14000→19000 (BC.W-VIZ-CONSTELLATION): the GPU substrate's high-refresh frame loop ramps the held strength to only ~0.70 within the egg-live π perturb window, so the weaker effective force (fought by the |v|→speed ease-back) fell under the gate's ≥20% perturb floor — a stronger pull restores the heat. Held-physics only; rest is byte-untouched. Mirrors DEFAULT_WELL_CONFIG.gain. */
|
|
228
238
|
--constellation-well-reach: 340; /* base-width px — the well's reach (k-scaled at step) */
|
|
229
|
-
--constellation-well-ramp:
|
|
239
|
+
--constellation-well-ramp: 8.0; /* 1/s — the ARM rate. Doubled 4→8 (BC.W-VIZ-CONSTELLATION) so the strength reaches near-full power within the gate's 40-frame perturb window at the GPU substrate's high refresh (~0.12s bloom); release is the fixed brisk WELL_RELEASE_RAMP — the field-cools invariant, not consumer-tunable. Mirrors DEFAULT_WELL_CONFIG.ramp. */
|
|
230
240
|
--constellation-well-max-speed: 4.0; /* base-width px/frame cap — the no-slingshot clamp */
|
|
231
241
|
--constellation-well-hold-ms: 140; /* ms hold before the well arms */
|
|
232
242
|
--constellation-wander-idle: 8000; /* ms — min idle between auto re-targets (the W-CON1 drift cadence) */
|
|
@@ -243,7 +253,7 @@
|
|
|
243
253
|
--section-color-2: oklch(0.484 0.163 265.5); /* indigo */
|
|
244
254
|
--section-color-3: oklch(0.542 0.089 222.8); /* teal-cyan */
|
|
245
255
|
--section-color-4: oklch(0.551 0.088 171.1); /* forest */
|
|
246
|
-
--section-color-5: oklch(0.
|
|
256
|
+
--section-color-5: oklch(0.530 0.124 69.6); /* amber — BC.W-ACCENT-TONE #13: the safeAccentColor-derived rebaseline (HEAD 0.623 → 0.530, 3.49:1 → 5.11:1 vs the warm-cream card; the dark arm already clears 8.07:1 so it stays). --viz-amber auto-tracks; fourier's :root override deletes on adopt. */
|
|
247
257
|
--section-color-6: oklch(0.579 0.201 30.4); /* tomato-red */
|
|
248
258
|
--section-color-7: oklch(0.532 0.180 317.5); /* violet */
|
|
249
259
|
--section-color-8: oklch(0.520 0.176 8.4); /* ruby */
|