@mkbabb/glass-ui 4.0.1 → 4.1.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-8whJrLWt.js} +23 -8
- package/dist/{CommandShortcut-DvZNQ_HF.js → CommandShortcut-D3yxgHNn.js} +23 -12
- package/dist/{ConfiguratorRow-BR4l-ixA.js → ConfiguratorRow-CaP7U3ZA.js} +11 -11
- package/dist/ContextMenuContent-B3ZsheLV.js +90 -0
- package/dist/{ContextMenuSubContent-xol4sD2q.js → ContextMenuSubContent-DDRID3qC.js} +15 -15
- package/dist/{DataTable-CuKwF7wr.js → DataTable-Bc9kUtu_.js} +2 -2
- package/dist/{DialogContent-DcKK8k9i.js → DialogContent-6JtTB5x2.js} +8 -5
- package/dist/DialogFooter-9phqcRIS.js +80 -0
- package/dist/DialogScrollContent-TTuovQst.js +93 -0
- package/dist/HoverCardContent-Bel1gdLZ.js +88 -0
- package/dist/{IconChip-BTD-nay5.js → IconChip-DhbdGdFQ.js} +1 -1
- package/dist/{IconTooltip-Bl8gFZ8d.js → IconTooltip-B0zimd2H.js} +1 -1
- package/dist/Input-Cg9DF62r.js +57 -0
- package/dist/{Notification-VUwexFUf.js → Notification-CphK7AAm.js} +3 -3
- package/dist/NumberFieldContent-D8cXeyO4.js +140 -0
- package/dist/PagerDots-Cjx96la-.js +98 -0
- package/dist/{SelectScrollDownButton-CrA8F0iV.js → SelectScrollDownButton-DAKCBEdW.js} +62 -57
- package/dist/{SelectSeparator-DXswVdRz.js → SelectSeparator-C2UGOkXF.js} +1 -1
- package/dist/Separator-DQcwC2TR.js +44 -0
- package/dist/Switch-B8RscmRu.js +49 -0
- package/dist/{Toaster-Bw4xR8xV.js → Toaster-D9qIHjBI.js} +1 -1
- package/dist/{ToggleGroupItem-pEM9vIhs.js → ToggleGroupItem-BLtr3TJq.js} +2 -2
- package/dist/TooltipProvider-BJ_Y5EGX.js +109 -0
- package/dist/animated-digit.js +1 -1
- package/dist/api/index.d.ts +15 -32
- package/dist/api/types-extra.d.ts +31 -0
- package/dist/api.js +1 -1
- package/dist/aurora.js +579 -251
- package/dist/border-progress.js +49 -57
- package/dist/{button-DYCUa-tH.js → button-5dY1Dvhd.js} +13 -14
- package/dist/button.js +1 -1
- package/dist/canvas.js +2 -3
- package/dist/card.js +1 -1
- package/dist/carousel.js +20 -20
- package/dist/color-Cs0-oxYL.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/runtime.d.ts +12 -0
- package/dist/components/custom/aurora/composables/uniformBridgeWGPU.d.ts +11 -2
- package/dist/components/custom/aurora/composables/wgpuSetup.d.ts +8 -0
- package/dist/components/custom/aurora/constants/presets.d.ts +18 -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/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/composables/concentricGLSetup.d.ts +7 -0
- package/dist/components/custom/concentric/composables/concentricWGPUSetup.d.ts +9 -0
- package/dist/components/custom/concentric/composables/ringField.d.ts +57 -16
- package/dist/components/custom/concentric/composables/uniformBridgeWGPU.d.ts +2 -1
- package/dist/components/custom/concentric/composables/useConcentric.d.ts +4 -4
- package/dist/components/custom/concentric/constants.d.ts +30 -6
- 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/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/DockIconButton.vue.d.ts +12 -0
- package/dist/components/custom/dock/DockStack.vue.d.ts +65 -0
- package/dist/components/custom/dock/GlassDock.vue.d.ts +4 -2
- package/dist/components/custom/dock/composables/dockMorphMeasure.d.ts +80 -0
- package/dist/components/custom/dock/composables/index.d.ts +2 -0
- package/dist/components/custom/dock/composables/useDockSearch.d.ts +85 -0
- package/dist/components/custom/dock/composables/useDockShellProps.d.ts +11 -0
- package/dist/components/custom/dock/constants.d.ts +18 -14
- package/dist/components/custom/dock/index.d.ts +5 -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 +48 -6
- package/dist/components/custom/dot-flow-field/composables/uniformBridgeWGPU.d.ts +23 -8
- package/dist/components/custom/dot-flow-field/composables/useDotFlowField.d.ts +6 -5
- package/dist/components/custom/dot-flow-field/composables/useFlowParticles.d.ts +18 -5
- package/dist/components/custom/dot-flow-field/constants.d.ts +42 -21
- 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 +4 -20
- package/dist/components/custom/dot-flow-field/shaders/flow-field.render.wgsl.d.ts +1 -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 +52 -0
- package/dist/components/custom/dot-matrix/composables/useDotMatrix.d.ts +34 -0
- package/dist/components/custom/dot-matrix/composables/useDotSphere.d.ts +27 -0
- package/dist/components/custom/dot-matrix/constants.d.ts +58 -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 +40 -47
- package/dist/components/custom/fourier-field/composables/fourierFieldGLSetup.d.ts +15 -0
- package/dist/components/custom/fourier-field/composables/fourierFieldWGPUSetup.d.ts +20 -0
- package/dist/components/custom/fourier-field/composables/uniformBridgeWGPU.d.ts +41 -0
- package/dist/components/custom/fourier-field/composables/useFourierField.d.ts +40 -37
- package/dist/components/custom/fourier-field/constants.d.ts +61 -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/constants.d.ts +1 -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 +36 -0
- 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 +50 -0
- package/dist/components/custom/goo-dot-matrix/composables/uniformBridgeWGPU.d.ts +35 -0
- package/dist/components/custom/goo-dot-matrix/composables/useGooDotMatrix.d.ts +31 -0
- package/dist/components/custom/goo-dot-matrix/constants.d.ts +76 -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 +11 -0
- package/dist/components/custom/goo-dot-matrix/shaders/goo-dot.wgsl.d.ts +3 -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-grid/PaperGrid.vue.d.ts +42 -0
- package/dist/components/custom/paper-grid/composables/paperGrid.d.ts +90 -0
- package/dist/components/custom/paper-grid/composables/paperGridGLSetup.d.ts +16 -0
- package/dist/components/custom/paper-grid/composables/paperGridWGPUSetup.d.ts +19 -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 +57 -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/index.d.ts +2 -0
- package/dist/components/custom/selectable-chip/selectableChipVariants.d.ts +23 -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 +20 -2
- package/dist/components/custom/watercolor-dot/WatercolorDot.vue.d.ts +29 -16
- 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/button/index.d.ts +1 -1
- package/dist/components/ui/card/Card.vue.d.ts +45 -0
- package/dist/components/ui/card/index.d.ts +1 -1
- 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/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 +3 -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/glass/useVizChoreography.d.ts +123 -0
- package/dist/composables/glass/webgl/createCanvasLifecycle.d.ts +10 -0
- package/dist/composables/glass/webgl/shaders/flow.wgsl.d.ts +1 -0
- package/dist/composables/glass/webgpu/index.d.ts +1 -1
- package/dist/composables/glass/webgpu/useGpuSubstrate.d.ts +28 -7
- package/dist/composables/glass/webgpu/useWebGPUCanvas.d.ts +1 -0
- package/dist/composables/glass/webgpu/webgpuDevice.d.ts +42 -0
- package/dist/composables/motion/core/index.d.ts +3 -0
- package/dist/composables/motion/scrollReader.d.ts +25 -0
- package/dist/composables/motion/springPresets.d.ts +20 -1
- package/dist/composables/motion/useCharStagger.d.ts +44 -0
- package/dist/composables/motion/useDockCtaReceive.d.ts +31 -6
- package/dist/composables/motion/useScrollChrome.d.ts +58 -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 +495 -221
- 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 +1 -1
- package/dist/createCanvasLifecycle-Gh45Ce-p.js +93 -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 +602 -458
- package/dist/dot-flow-field.js +580 -290
- package/dist/dot-matrix.d.ts +1 -0
- package/dist/dot-matrix.js +630 -0
- package/dist/dotMatrixField-D_x9_1qq.js +48 -0
- package/dist/{dropdown-menu-CofSZuk8.js → dropdown-menu-aJmV5SqE.js} +83 -79
- package/dist/dropdown-menu.js +1 -1
- package/dist/easing.js +188 -176
- package/dist/expandable-container.js +42 -20
- package/dist/fading-scroll.js +1 -1
- package/dist/flow.glsl-B2P7e0MT.js +4 -0
- package/dist/forms.js +62 -60
- package/dist/fourier-field.js +825 -178
- package/dist/fourier-math.js +1 -1
- package/dist/glass-ui.css +1 -1
- package/dist/glass-ui.js +145 -104
- package/dist/goo-blob.js +171 -1228
- package/dist/goo-dot-matrix.d.ts +1 -0
- package/dist/goo-dot-matrix.js +591 -0
- package/dist/handmark.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 +2 -0
- package/dist/instrument-chassis.js +1 -1
- package/dist/keyboard.js +1 -1
- package/dist/labeled-field.js +70 -60
- package/dist/metric-cell.js +1 -1
- package/dist/metric-stack.js +11 -2
- package/dist/motion-core.js +54 -32
- package/dist/motion-curves.js +11 -1
- package/dist/motion.js +46 -111
- 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 +788 -0
- package/dist/{presets-BW2b-fr1.js → presets-CvOUqtdY.js} +3 -3
- package/dist/{procedural-color.glsl-CIFsJhwI.js → procedural-color.wgsl-m7Zgv35j.js} +2 -2
- package/dist/progress.js +1 -1
- package/dist/pulse.js +1 -1
- package/dist/reactive.js +1 -1
- package/dist/{useCanvas2D-B8w_E3Rr.js → resolveCanvasColor-yPyIpJt9.js} +12 -2
- package/dist/scrollReader-DI1NWxUw.js +42 -0
- package/dist/scrolling-text.js +1 -1
- package/dist/search.js +160 -304
- package/dist/select.js +3 -3
- package/dist/selectable-chip.d.ts +1 -0
- package/dist/selectable-chip.js +65 -0
- package/dist/separator.js +1 -1
- package/dist/{sheet-tZMg0E0w.js → sheet-B2flBfLH.js} +2 -2
- package/dist/sheet.js +1 -1
- package/dist/sidebar.js +216 -114
- package/dist/slider.js +1 -1
- package/dist/sortable-list.js +1 -1
- package/dist/spectrum-walk-BVzA7Biz.js +33 -0
- package/dist/{springPresets-CFQGQfdl.js → springPresets-Ce7OYCm9.js} +12 -6
- package/dist/styles/animations.css +13 -3
- package/dist/styles/cards.css +69 -0
- package/dist/styles/completion-seal.css +131 -0
- package/dist/styles/components.css +2 -3
- package/dist/styles/configurator.css +55 -0
- package/dist/styles/critical-partition.mjs +33 -11
- package/dist/styles/deferred.css +2 -0
- package/dist/styles/dock/cta-seat.css +87 -0
- package/dist/styles/dock/density.css +153 -0
- package/dist/styles/dock/layers.css +55 -7
- package/dist/styles/dock/morph-bridge.css +54 -18
- package/dist/styles/dock/morph.css +41 -33
- package/dist/styles/dock/overflow.css +12 -0
- package/dist/styles/dock/search.css +68 -0
- package/dist/styles/dock/shape.css +124 -0
- package/dist/styles/dock/shell.css +23 -5
- package/dist/styles/dock/stack-rail.css +264 -0
- package/dist/styles/dock-controls/dark-mode-toggle.css +17 -4
- package/dist/styles/dock-controls/icon-button.css +14 -0
- package/dist/styles/dock.css +11 -1
- package/dist/styles/glass/accent-tone.css +66 -0
- package/dist/styles/glass/control-surfaces.css +167 -0
- package/dist/styles/glass/ladder.css +67 -17
- package/dist/styles/glass/rim.css +19 -9
- package/dist/styles/glass/surfaces.css +69 -148
- package/dist/styles/glass.css +10 -0
- package/dist/styles/index.css +15 -0
- package/dist/styles/scroll-chrome.css +123 -0
- package/dist/styles/scroll-driven.css +38 -0
- package/dist/styles/segmented-tabs.css +50 -14
- package/dist/styles/theme/bridges.css +22 -0
- package/dist/styles/theme/radius.css +18 -1
- package/dist/styles/tokens/color-radius.css +13 -3
- package/dist/styles/tokens/dark-arm.css +39 -6
- package/dist/styles/tokens/glass-deep.css +28 -3
- package/dist/styles/tokens/glass-fx.css +44 -1
- package/dist/styles/tokens/glass.css +91 -31
- package/dist/styles/tokens/light-dark.css +1 -1
- package/dist/styles/tokens/offsets.css +27 -0
- package/dist/styles/tokens/property-regs.css +133 -0
- package/dist/styles/tokens/scale-paper.css +73 -29
- package/dist/styles/tokens/scheme-motion.css +44 -6
- package/dist/styles/tokens/sizing-config.css +110 -0
- package/dist/styles/tokens/sizing.css +55 -104
- package/dist/styles/tokens.css +5 -0
- 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 +14 -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 +8 -8
- package/dist/timeline.js +1 -1
- package/dist/toast.js +1 -1
- package/dist/toggle-chip.js +10 -10
- package/dist/toggle-group.js +1 -1
- package/dist/tooltip.js +1 -1
- package/dist/typewriter.js +1 -1
- package/dist/uniformBridgeWGPU-CtAKl45L.js +1204 -0
- package/dist/{useAnimatedNumber-BfUq2bUM.js → useAnimatedNumber-CLrxicG9.js} +1 -1
- package/dist/{useConfiguratorState-DNlOh6c8.js → useConfiguratorState-4xblKfwd.js} +25 -24
- package/dist/useControlSize-SH1UmJCi.js +9 -0
- package/dist/useDockCtaReceive-DfFkmgL1.js +82 -0
- package/dist/{useDragMorph-DgxnsVJz.js → useDragMorph-BUgAC-zK.js} +4 -4
- package/dist/useFuzzySearch-DIhcYtcw.js +177 -0
- package/dist/useGpuSubstrate-4pTcp6mX.js +294 -0
- package/dist/{useLiquidPress-kfb4KX79.js → useLiquidPress-BooG97RY.js} +2 -2
- package/dist/usePointerVelocityField-QLsy3_kv.js +91 -0
- package/dist/useScrollChrome-D66AVP7C.js +258 -0
- package/dist/{useSpringMount-q1amq1SJ.js → useSpringMount-BWDnKIwh.js} +1 -1
- package/dist/useSpringPress-B1-Czp-V.js +36 -0
- package/dist/useViewTransition-CUI1nAgn.js +95 -0
- 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 +116 -73
- package/package.json +127 -7
- package/src/styles/animations.css +13 -3
- package/src/styles/cards.css +69 -0
- package/src/styles/completion-seal.css +131 -0
- package/src/styles/configurator.css +55 -0
- package/src/styles/critical-partition.mjs +33 -11
- package/src/styles/dock/cta-seat.css +87 -0
- package/src/styles/dock/density.css +153 -0
- package/src/styles/dock/layers.css +55 -7
- package/src/styles/dock/morph-bridge.css +54 -18
- package/src/styles/dock/morph.css +41 -33
- package/src/styles/dock/overflow.css +12 -0
- package/src/styles/dock/search.css +68 -0
- package/src/styles/dock/shape.css +124 -0
- package/src/styles/dock/shell.css +23 -5
- package/src/styles/dock/stack-rail.css +264 -0
- package/src/styles/dock-controls/dark-mode-toggle.css +17 -4
- package/src/styles/dock-controls/icon-button.css +14 -0
- package/src/styles/dock.css +11 -1
- package/src/styles/glass/accent-tone.css +66 -0
- package/src/styles/glass/control-surfaces.css +167 -0
- package/src/styles/glass/ladder.css +67 -17
- package/src/styles/glass/rim.css +19 -9
- package/src/styles/glass/surfaces.css +69 -148
- package/src/styles/glass.css +10 -0
- package/src/styles/index.css +15 -0
- package/src/styles/scroll-chrome.css +123 -0
- package/src/styles/scroll-driven.css +38 -0
- package/src/styles/segmented-tabs.css +50 -14
- package/src/styles/theme/bridges.css +22 -0
- package/src/styles/theme/radius.css +18 -1
- package/src/styles/tokens/color-radius.css +13 -3
- package/src/styles/tokens/dark-arm.css +39 -6
- package/src/styles/tokens/glass-deep.css +28 -3
- package/src/styles/tokens/glass-fx.css +44 -1
- package/src/styles/tokens/glass.css +91 -31
- package/src/styles/tokens/light-dark.css +1 -1
- package/src/styles/tokens/offsets.css +27 -0
- package/src/styles/tokens/property-regs.css +133 -0
- package/src/styles/tokens/scale-paper.css +73 -29
- package/src/styles/tokens/scheme-motion.css +44 -6
- package/src/styles/tokens/sizing-config.css +110 -0
- package/src/styles/tokens/sizing.css +55 -104
- package/src/styles/tokens.css +5 -0
- 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 +14 -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/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/Separator-pKF0oA4M.js +0 -37
- package/dist/Switch-CwYNf8bo.js +0 -47
- package/dist/TooltipProvider-rzvnXz60.js +0 -104
- package/dist/color-DweYl7pE.js +0 -86
- 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/procedural-color.wgsl-CToRHugY.js +0 -224
- package/dist/resolveCanvasColor-CUyHr5Uu.js +0 -11
- package/dist/styles/dock/rail-extend.css +0 -397
- 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/{FadingScroll-DI6hQhT9.js → FadingScroll-DLRbH5Xr.js} +0 -0
- /package/dist/{HoverPopover-CbqbNwgU.js → HoverPopover-BcIxvyqZ.js} +0 -0
- /package/dist/{InstrumentChassis-Bx0F_q5g.js → InstrumentChassis-CxsHSyMj.js} +0 -0
- /package/dist/{PaperBackdrop-Vf3tlpvd.js → PaperBackdrop-CqwjnfLv.js} +0 -0
- /package/dist/{Progress-DctG61iZ.js → Progress-CnqB7gLm.js} +0 -0
- /package/dist/{ScrollingText-yOpBzFYq.js → ScrollingText-CTZbA_cG.js} +0 -0
- /package/dist/{SelectGroup-DwwjicPY.js → SelectGroup-BFiod7X2.js} +0 -0
- /package/dist/{compile-CQEFRTmx.js → compile-nZ1xVYTp.js} +0 -0
- /package/dist/{constants-BPOqYJAm.js → constants--C2DkLW8.js} +0 -0
- /package/dist/{math-BINYmg5z.js → math-Eb0w3LqU.js} +0 -0
- /package/dist/{prng-Za0Rmgag.js → prng-B-d9eYX8.js} +0 -0
- /package/dist/{slider-DVb4HXU-.js → slider-2A0rPn79.js} +0 -0
- /package/dist/{useGlobalDark-C28t0VWJ.js → useGlobalDark-CmjB9E32.js} +0 -0
- /package/dist/{useIntersectionPause-Bj4sPkMh.js → useIntersectionPause-Dbozzjgm.js} +0 -0
- /package/dist/{useInterval-CvK1mL92.js → useInterval-CNdua40W.js} +0 -0
- /package/dist/{useKeyboardShortcuts-BXWXOZ-9.js → useKeyboardShortcuts-BPRp33Im.js} +0 -0
- /package/dist/{useLiquidFlex-mZPMiNXh.js → useLiquidFlex-UmA6LMZu.js} +0 -0
- /package/dist/{useScrollProgress-D7bYU2RK.js → useScrollProgress-c3yxmH6a.js} +0 -0
- /package/dist/{useSortable-DHjtZSEd.js → useSortable-BVqlJRBR.js} +0 -0
- /package/dist/{useTextHighlight-CWEi25hf.js → useTextHighlight-NmBM5V_4.js} +0 -0
- /package/dist/{vReveal-Czsb7zQC.js → vReveal-D9k0jADx.js} +0 -0
- /package/dist/{vSpecular-CQFmLNzA.js → vSpecular-EX7loENl.js} +0 -0
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
/* tokens/sizing-config.css
|
|
2
|
+
§10 sizing tail — the MetricBadge stacked geometry + the Configurator family
|
|
3
|
+
(the density ladder, the AZ.W-HIERARCHY section/label/preset vocabulary, the
|
|
4
|
+
single-column stage floor, the dark-adaptive divider register, the section
|
|
5
|
+
tonal step) + the component-font override.
|
|
6
|
+
Carved (BC.W-CARVE6) from the tail of tokens/sizing.css to hold the 500-line
|
|
7
|
+
no-god-module bound; @import-ed by tokens.css IMMEDIATELY AFTER sizing.css at
|
|
8
|
+
sizing's own cascade slot — adjacent same-selector :root blocks resolve
|
|
9
|
+
identically, so the dist is byte-isomorphic.
|
|
10
|
+
See docs/precepts/design-idioms.md §cohesion-aware partials. */
|
|
11
|
+
:root {
|
|
12
|
+
/* MetricBadge — stacked variant geometry. The 2-row stacked layout
|
|
13
|
+
(label / value+unit) wants a taller floor than the inline pill so the
|
|
14
|
+
label has breathing room above the baseline pair. T.W2.T2 +
|
|
15
|
+
audit B-spec §3.2 vertical-rhythm table land 42px (2.625rem) as the
|
|
16
|
+
min-height with 6px (0.375rem) block padding. The inline ladder
|
|
17
|
+
keeps its tight defaults via `--metric-badge-min-height` /
|
|
18
|
+
`--metric-badge-padding-block` (declared inline at the
|
|
19
|
+
`.metric-badge` selector). */
|
|
20
|
+
--metric-badge-min-height-stacked: 2.625rem;
|
|
21
|
+
--metric-badge-padding-block-stacked: 0.375rem;
|
|
22
|
+
|
|
23
|
+
/* Configurator — N.W2 Lane A density axis (4 rungs).
|
|
24
|
+
The `comfortable` rung restates the pre-N.W2 baked recipe exactly
|
|
25
|
+
(`gap-1.5 py-2` = 0.375rem / 0.5rem) so unparameterised consumers
|
|
26
|
+
see no visual change. `mobile` halves the vertical breathing room
|
|
27
|
+
for narrow-viewport studios; `spacious` doubles it for settings-
|
|
28
|
+
page hosts. See `<ConfiguratorRow>` scoped CSS for the attribute-
|
|
29
|
+
selector binding. */
|
|
30
|
+
--configurator-row-gap-mobile: 0.25rem; /* 4px — tight */
|
|
31
|
+
--configurator-row-gap-compact: 0.3125rem; /* 5px — slightly tighter */
|
|
32
|
+
--configurator-row-gap-comfortable: 0.375rem; /* 6px — pre-N.W2 default */
|
|
33
|
+
--configurator-row-gap-spacious: 0.75rem; /* 12px — generous */
|
|
34
|
+
|
|
35
|
+
--configurator-row-py-mobile: 0.25rem; /* 4px — tight */
|
|
36
|
+
--configurator-row-py-compact: 0.375rem; /* 6px — slightly tighter */
|
|
37
|
+
--configurator-row-py-comfortable: 0.5rem; /* 8px — pre-N.W2 default */
|
|
38
|
+
--configurator-row-py-spacious: 0.875rem; /* 14px — generous */
|
|
39
|
+
|
|
40
|
+
/* Configurator HIERARCHY VOCABULARY (AZ.W-HIERARCHY — D6-3). The three
|
|
41
|
+
NAMED registers the studios (blob, aurora) inherit instead of a flat
|
|
42
|
+
undifferentiated stack. DISTINCT from the density ladder above (which is
|
|
43
|
+
the per-row CADENCE, not the section/label/preset register).
|
|
44
|
+
|
|
45
|
+
1. Section register — the <ConfiguratorLayer> label reads as a SECTION,
|
|
46
|
+
not a row: the √φ subheading rung at weight 600, lifting off the prior
|
|
47
|
+
flat `text-small font-semibold`. */
|
|
48
|
+
--configurator-section-size: var(--type-subheading); /* 20.4px — √φ section rung */
|
|
49
|
+
--configurator-section-weight: 600; /* the heading weight */
|
|
50
|
+
|
|
51
|
+
/* AZ.W-BLOB-REDRESS — the SINGLE-COLUMN stage-row FLOOR. Below `lg` the
|
|
52
|
+
Configurator stacks stage-over-aside; a percentage stage height against
|
|
53
|
+
an INDEFINITE auto-row resolves to 0 (the GooBlob hero painted 0×0 on a
|
|
54
|
+
phone). The single-column band's `grid-template-rows` floors the stage
|
|
55
|
+
row at this DEFINITE `minmax(…)` minimum so the percentage resolves;
|
|
56
|
+
the aside row takes the remainder and scrolls internally. */
|
|
57
|
+
--configurator-stage-min: 18rem; /* 288px — the mobile live-specimen stage floor */
|
|
58
|
+
|
|
59
|
+
/* 2. Preset-row PRIMARY-AFFORDANCE lift. The preset picker is the primary
|
|
60
|
+
interaction (C6-10); D6-3's defect is the preset row being spatially
|
|
61
|
+
CRAMPED. This token's binding SEMANTIC is the preset row's SPATIAL
|
|
62
|
+
rhythm — its block-padding / gap, NOT a font-weight — so the preset
|
|
63
|
+
row breathes ABOVE a body ConfiguratorRow. (The `-weight` name follows
|
|
64
|
+
the vocabulary's "register weight" framing; it lands on the padding/gap
|
|
65
|
+
slot of `.configurator-presets`, the heavier spatial cadence.) */
|
|
66
|
+
--configurator-preset-row-weight: 0.625rem; /* 10px — > a body row's 8px py-comfortable */
|
|
67
|
+
--configurator-preset-row-gap: 0.5rem; /* 8px — generous chip gap */
|
|
68
|
+
|
|
69
|
+
/* 3. The DIVIDER register — dark-adaptive (BA.W-CONFIG-CHASSIS.1 / CFG-4).
|
|
70
|
+
The section + inter-row dividers used to be inline `border-border/40` and
|
|
71
|
+
`border-border/30` Tailwind alphas; over the W-DARK-MATERIAL dark
|
|
72
|
+
`glass-floating` plate (a luminous transmissive material, --card L16) those
|
|
73
|
+
near-equal-luminance hairlines effectively VANISHED — "the sections run
|
|
74
|
+
together". This ONE token is consumed by every divider rule (the
|
|
75
|
+
<ConfiguratorLayer> section border, the dividers-prop inter-row border,
|
|
76
|
+
Configurator.vue's aside/preset/footer borders, configurator.css) so the
|
|
77
|
+
divider weight is retuned from a single override.
|
|
78
|
+
|
|
79
|
+
The dark-LIFTING arm is the load-bearing half: the divider must read on
|
|
80
|
+
BOTH plates. On LIGHT it is the resting `--border` warm-neutral at the
|
|
81
|
+
prior ~40% weight; on DARK it LIFTS off `--border` (L34 over the L16 plate
|
|
82
|
+
— too close) toward the `--foreground` warm-ink (L90) at a higher α, so a
|
|
83
|
+
visible luminance step survives the dark glass. `light-dark()` carries the
|
|
84
|
+
arm in ONE declaration (the same :root cascade context as the surface-tint
|
|
85
|
+
family; an engine without `light-dark()` falls back to the dark-arm.css
|
|
86
|
+
`.dark` floor minted in lockstep). The SECTION divider runs a touch
|
|
87
|
+
heavier than the inter-row hairline (a section reads as a section without
|
|
88
|
+
a second heading rung). */
|
|
89
|
+
--configurator-divider: light-dark(
|
|
90
|
+
color-mix(in srgb, var(--border) 55%, transparent),
|
|
91
|
+
color-mix(in srgb, var(--foreground) 22%, transparent)
|
|
92
|
+
);
|
|
93
|
+
--configurator-divider-section: light-dark(
|
|
94
|
+
color-mix(in srgb, var(--border) 70%, transparent),
|
|
95
|
+
color-mix(in srgb, var(--foreground) 30%, transparent)
|
|
96
|
+
);
|
|
97
|
+
/* The optional faint section-header tonal step — a whisper-light warm wash
|
|
98
|
+
behind a <ConfiguratorLayer> section so it reads as a grouped section
|
|
99
|
+
WITHOUT a new heading rung (within the W-HIERARCHY register). Default off
|
|
100
|
+
(transparent) on light where the hairline carries it; a faint
|
|
101
|
+
foreground-over-transparent lift on dark where the divider alone is
|
|
102
|
+
subtle. */
|
|
103
|
+
--configurator-section-tint: light-dark(
|
|
104
|
+
transparent,
|
|
105
|
+
color-mix(in srgb, var(--foreground) 3%, transparent)
|
|
106
|
+
);
|
|
107
|
+
|
|
108
|
+
/* Component font override (consumers override locally) */
|
|
109
|
+
--select-font: inherit;
|
|
110
|
+
}
|
|
@@ -122,6 +122,24 @@
|
|
|
122
122
|
--dropdown-text-secondary: var(--control-text-sm);
|
|
123
123
|
--dropdown-input-height: var(--control-h-md);
|
|
124
124
|
|
|
125
|
+
/* ── The search-family magnitude rungs (BC.W-SEARCH-CUSTOM) ───────────────
|
|
126
|
+
The SearchBar/FuzzySearch compound surfaces read these indirection rungs
|
|
127
|
+
for the glyph / icon-button / result-label magnitudes — so a consumer
|
|
128
|
+
retunes the WHOLE search family from ONE `:root` override, not a fork of
|
|
129
|
+
per-element px literals (`w-3.5 h-3.5`, `!h-6 !w-6`, `text-[0.6rem]`). Each
|
|
130
|
+
DEFAULTS to the existing cohort it replaces, so the bare search surface is
|
|
131
|
+
byte-identical to HEAD (the substitution-vs-redeclaration discipline — the
|
|
132
|
+
NAME is search-local, the magnitude stays the `--ui-glyph`/`--control-*`
|
|
133
|
+
source). NO parallel magnitude ladder: these are aliases onto the cohort.
|
|
134
|
+
• PRIMARY result label / field font → `--control-text` (the `text-sm` register).
|
|
135
|
+
• SECONDARY type-Badge / footnote → `--control-text-sm` (the `text-xs` register).
|
|
136
|
+
• the search/clear/expand glyph → `--ui-glyph-sm` (the chrome 1.4 glyph).
|
|
137
|
+
• the icon-button hit-box → `--control-h-xs` (the HEAD `h-6`/`h-7`). */
|
|
138
|
+
--search-icon-size: var(--ui-glyph-sm);
|
|
139
|
+
--search-button-size: var(--control-h-xs);
|
|
140
|
+
--search-result-text: var(--control-text);
|
|
141
|
+
--search-result-text-secondary: var(--control-text-sm);
|
|
142
|
+
|
|
125
143
|
--size-icon-btn: 2.5rem;
|
|
126
144
|
--icon-xs: 0.75rem;
|
|
127
145
|
--icon-sm: 0.875rem;
|
|
@@ -224,6 +242,19 @@
|
|
|
224
242
|
var(--dock-icon-glyph-floor)
|
|
225
243
|
);
|
|
226
244
|
|
|
245
|
+
/* BC.W-DOCK-ENGINE move 3 (the Atlas A-9 fold) — `--dock-control-glyph-size` is
|
|
246
|
+
the ONE in-dock control-glyph retint knob (the dark-toggle SVG `width`/`height`
|
|
247
|
+
+ the `--dark-mode-toggle-padding` inset BOTH read it), defaulting to the
|
|
248
|
+
`--dock-scale`-keyed `--dock-icon-glyph` the nav icons paint so the docked
|
|
249
|
+
toggle is optically uniform out of the box. Like `--dock-icon-glyph` this
|
|
250
|
+
`:root` declaration resolves the fallback ladder; density.css RE-RESOLVES it
|
|
251
|
+
inside each `[data-density]` scope and overflow.css RE-DECLARES it in the
|
|
252
|
+
coarse block, so the density-painted + coarse-scaled `--dock-icon-glyph` flows
|
|
253
|
+
in (the substitution-vs-inheritance trap closed on all three registers — a
|
|
254
|
+
`:root`-only knob would freeze at the `:root` `--dock-scale` while the glyph
|
|
255
|
+
lifts). ONE knob; no per-size literal, no `!important`. */
|
|
256
|
+
--dock-control-glyph-size: var(--dock-icon-glyph);
|
|
257
|
+
|
|
227
258
|
/* AX.W45-TUNE Q1 — the COLLAPSED-pill floor tokens. The collapsed summary
|
|
228
259
|
used to fall to `--dock-layer-height` (the FULL control height, ~2.5rem) for
|
|
229
260
|
its `min-width` with NO block floor, so the shrunken pill read as an
|
|
@@ -315,12 +346,9 @@
|
|
|
315
346
|
`--dock-rail-extend-length` (declared in rail-extend.css) was RE-SEMANTICIZED:
|
|
316
347
|
it is no longer a one-way connector length but the SYMMETRIC per-side overrun of
|
|
317
348
|
the seam line (the line's cross-extent = dock extent + 2× the knob, centered on
|
|
318
|
-
the seam). `--dock-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
`--dock-section-zone-gap` is the inter-control rhythm inside a <DockSection> zone
|
|
322
|
-
(defaults to the dock's own `--dock-gap`, so the section grouping adds no box). */
|
|
323
|
-
--dock-rail-retract-stub: 0.35;
|
|
349
|
+
the seam). The `--dock-section-zone-gap` is the inter-control rhythm inside a
|
|
350
|
+
<DockSection> zone (defaults to the dock's own `--dock-gap`, so the section
|
|
351
|
+
grouping adds no box). */
|
|
324
352
|
--dock-section-zone-gap: var(--dock-gap, 0.25rem);
|
|
325
353
|
|
|
326
354
|
/* Dock active-state ladder (O.W6 Lane B)
|
|
@@ -389,6 +417,21 @@
|
|
|
389
417
|
WCAG 2.5.5 floor on touch devices. */
|
|
390
418
|
--dock-touch-target: 2.75rem; /* 44px */
|
|
391
419
|
|
|
420
|
+
/* BC.W-AX-DOCK-COCKPIT — the dock LABEL-tracks-CONTROL ratio (the
|
|
421
|
+
dock-oversize chronic close, speedtest A-9). The `dock-label`
|
|
422
|
+
(typography/semantic.css) sizes its font as a PROPORTION of the
|
|
423
|
+
control height — `calc(var(--dock-control-size) * var(--dock-label-ratio))`
|
|
424
|
+
— so a tighter control (the `[data-preset="cockpit"]` 2.75rem floor with
|
|
425
|
+
compact chrome) carries a proportionally tighter label, never the fixed
|
|
426
|
+
`--type-subheading` rung that read OVERSIZE on a tight pill. The default
|
|
427
|
+
reproduces `--type-subheading` (1.272rem) at the comfortable `2.5rem`
|
|
428
|
+
control (1.272 / 2.5 = 0.5088) so the bare default is byte-near-identical
|
|
429
|
+
— opt into the cockpit preset (or override this knob from `:root`/the
|
|
430
|
+
`[data-preset]` scope) to retune the whole dock label family in ONE write.
|
|
431
|
+
The explicit `--dock-label-size` knob STILL wins when set (the dock.css
|
|
432
|
+
audacious-mobile carve precedent, KEPT — the ratio is the FALLBACK). */
|
|
433
|
+
--dock-label-ratio: 0.5088;
|
|
434
|
+
|
|
392
435
|
/* AQ.W3 §7 — canonical WCAG 2.5.5 (44px) touch-target floor for the
|
|
393
436
|
NON-dock coarse-pointer surfaces (`Button size="icon"`,
|
|
394
437
|
ExpandableContainer triggers, SegmentedTabs responsive mobile trigger). One
|
|
@@ -398,102 +441,10 @@
|
|
|
398
441
|
dock floor and the general floor can be retuned independently. */
|
|
399
442
|
--touch-target: 2.75rem; /* 44px */
|
|
400
443
|
|
|
401
|
-
/* MetricBadge
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
`--metric-badge-padding-block` (declared inline at the
|
|
408
|
-
`.metric-badge` selector). */
|
|
409
|
-
--metric-badge-min-height-stacked: 2.625rem;
|
|
410
|
-
--metric-badge-padding-block-stacked: 0.375rem;
|
|
411
|
-
|
|
412
|
-
/* Configurator — N.W2 Lane A density axis (4 rungs).
|
|
413
|
-
The `comfortable` rung restates the pre-N.W2 baked recipe exactly
|
|
414
|
-
(`gap-1.5 py-2` = 0.375rem / 0.5rem) so unparameterised consumers
|
|
415
|
-
see no visual change. `mobile` halves the vertical breathing room
|
|
416
|
-
for narrow-viewport studios; `spacious` doubles it for settings-
|
|
417
|
-
page hosts. See `<ConfiguratorRow>` scoped CSS for the attribute-
|
|
418
|
-
selector binding. */
|
|
419
|
-
--configurator-row-gap-mobile: 0.25rem; /* 4px — tight */
|
|
420
|
-
--configurator-row-gap-compact: 0.3125rem; /* 5px — slightly tighter */
|
|
421
|
-
--configurator-row-gap-comfortable: 0.375rem; /* 6px — pre-N.W2 default */
|
|
422
|
-
--configurator-row-gap-spacious: 0.75rem; /* 12px — generous */
|
|
423
|
-
|
|
424
|
-
--configurator-row-py-mobile: 0.25rem; /* 4px — tight */
|
|
425
|
-
--configurator-row-py-compact: 0.375rem; /* 6px — slightly tighter */
|
|
426
|
-
--configurator-row-py-comfortable: 0.5rem; /* 8px — pre-N.W2 default */
|
|
427
|
-
--configurator-row-py-spacious: 0.875rem; /* 14px — generous */
|
|
428
|
-
|
|
429
|
-
/* Configurator HIERARCHY VOCABULARY (AZ.W-HIERARCHY — D6-3). The three
|
|
430
|
-
NAMED registers the studios (blob, aurora) inherit instead of a flat
|
|
431
|
-
undifferentiated stack. DISTINCT from the density ladder above (which is
|
|
432
|
-
the per-row CADENCE, not the section/label/preset register).
|
|
433
|
-
|
|
434
|
-
1. Section register — the <ConfiguratorLayer> label reads as a SECTION,
|
|
435
|
-
not a row: the √φ subheading rung at weight 600, lifting off the prior
|
|
436
|
-
flat `text-small font-semibold`. */
|
|
437
|
-
--configurator-section-size: var(--type-subheading); /* 20.4px — √φ section rung */
|
|
438
|
-
--configurator-section-weight: 600; /* the heading weight */
|
|
439
|
-
|
|
440
|
-
/* AZ.W-BLOB-REDRESS — the SINGLE-COLUMN stage-row FLOOR. Below `lg` the
|
|
441
|
-
Configurator stacks stage-over-aside; a percentage stage height against
|
|
442
|
-
an INDEFINITE auto-row resolves to 0 (the GooBlob hero painted 0×0 on a
|
|
443
|
-
phone). The single-column band's `grid-template-rows` floors the stage
|
|
444
|
-
row at this DEFINITE `minmax(…)` minimum so the percentage resolves;
|
|
445
|
-
the aside row takes the remainder and scrolls internally. */
|
|
446
|
-
--configurator-stage-min: 18rem; /* 288px — the mobile live-specimen stage floor */
|
|
447
|
-
|
|
448
|
-
/* 2. Preset-row PRIMARY-AFFORDANCE lift. The preset picker is the primary
|
|
449
|
-
interaction (C6-10); D6-3's defect is the preset row being spatially
|
|
450
|
-
CRAMPED. This token's binding SEMANTIC is the preset row's SPATIAL
|
|
451
|
-
rhythm — its block-padding / gap, NOT a font-weight — so the preset
|
|
452
|
-
row breathes ABOVE a body ConfiguratorRow. (The `-weight` name follows
|
|
453
|
-
the vocabulary's "register weight" framing; it lands on the padding/gap
|
|
454
|
-
slot of `.configurator-presets`, the heavier spatial cadence.) */
|
|
455
|
-
--configurator-preset-row-weight: 0.625rem; /* 10px — > a body row's 8px py-comfortable */
|
|
456
|
-
--configurator-preset-row-gap: 0.5rem; /* 8px — generous chip gap */
|
|
457
|
-
|
|
458
|
-
/* 3. The DIVIDER register — dark-adaptive (BA.W-CONFIG-CHASSIS.1 / CFG-4).
|
|
459
|
-
The section + inter-row dividers used to be inline `border-border/40` and
|
|
460
|
-
`border-border/30` Tailwind alphas; over the W-DARK-MATERIAL dark
|
|
461
|
-
`glass-floating` plate (a luminous transmissive material, --card L16) those
|
|
462
|
-
near-equal-luminance hairlines effectively VANISHED — "the sections run
|
|
463
|
-
together". This ONE token is consumed by every divider rule (the
|
|
464
|
-
<ConfiguratorLayer> section border, the dividers-prop inter-row border,
|
|
465
|
-
Configurator.vue's aside/preset/footer borders, configurator.css) so the
|
|
466
|
-
divider weight is retuned from a single override.
|
|
467
|
-
|
|
468
|
-
The dark-LIFTING arm is the load-bearing half: the divider must read on
|
|
469
|
-
BOTH plates. On LIGHT it is the resting `--border` warm-neutral at the
|
|
470
|
-
prior ~40% weight; on DARK it LIFTS off `--border` (L34 over the L16 plate
|
|
471
|
-
— too close) toward the `--foreground` warm-ink (L90) at a higher α, so a
|
|
472
|
-
visible luminance step survives the dark glass. `light-dark()` carries the
|
|
473
|
-
arm in ONE declaration (the same :root cascade context as the surface-tint
|
|
474
|
-
family; an engine without `light-dark()` falls back to the dark-arm.css
|
|
475
|
-
`.dark` floor minted in lockstep). The SECTION divider runs a touch
|
|
476
|
-
heavier than the inter-row hairline (a section reads as a section without
|
|
477
|
-
a second heading rung). */
|
|
478
|
-
--configurator-divider: light-dark(
|
|
479
|
-
color-mix(in srgb, var(--border) 55%, transparent),
|
|
480
|
-
color-mix(in srgb, var(--foreground) 22%, transparent)
|
|
481
|
-
);
|
|
482
|
-
--configurator-divider-section: light-dark(
|
|
483
|
-
color-mix(in srgb, var(--border) 70%, transparent),
|
|
484
|
-
color-mix(in srgb, var(--foreground) 30%, transparent)
|
|
485
|
-
);
|
|
486
|
-
/* The optional faint section-header tonal step — a whisper-light warm wash
|
|
487
|
-
behind a <ConfiguratorLayer> section so it reads as a grouped section
|
|
488
|
-
WITHOUT a new heading rung (within the W-HIERARCHY register). Default off
|
|
489
|
-
(transparent) on light where the hairline carries it; a faint
|
|
490
|
-
foreground-over-transparent lift on dark where the divider alone is
|
|
491
|
-
subtle. */
|
|
492
|
-
--configurator-section-tint: light-dark(
|
|
493
|
-
transparent,
|
|
494
|
-
color-mix(in srgb, var(--foreground) 3%, transparent)
|
|
495
|
-
);
|
|
496
|
-
|
|
497
|
-
/* Component font override (consumers override locally) */
|
|
498
|
-
--select-font: inherit;
|
|
444
|
+
/* The MetricBadge stacked geometry + the Configurator family (density ladder,
|
|
445
|
+
AZ.W-HIERARCHY section/label/preset vocabulary, stage-floor, dark-adaptive
|
|
446
|
+
divider register, section tonal step) + the --select-font override are carved
|
|
447
|
+
into tokens/sizing-config.css (a cohesive §10 tail, the no-god-module re-drain)
|
|
448
|
+
— @import-ed by tokens.css IMMEDIATELY AFTER sizing.css (adjacent same-selector
|
|
449
|
+
:root blocks, byte-isomorphic). */
|
|
499
450
|
}
|
package/dist/styles/tokens.css
CHANGED
|
@@ -33,6 +33,11 @@
|
|
|
33
33
|
@import "./tokens/on-glass-fg.css";
|
|
34
34
|
@import "./tokens/offsets.css";
|
|
35
35
|
@import "./tokens/sizing.css";
|
|
36
|
+
/* BC.W-CARVE6 — sizing.css's §10 tail (MetricBadge stacked geometry + the
|
|
37
|
+
Configurator density/HIERARCHY/divider family + the --select-font override)
|
|
38
|
+
carved into sizing-config.css to hold the 500-line bound, @import-ed IMMEDIATELY
|
|
39
|
+
AFTER sizing.css (adjacent same-selector :root blocks — byte-isomorphic). */
|
|
40
|
+
@import "./tokens/sizing-config.css";
|
|
36
41
|
@import "./tokens/scale-paper.css";
|
|
37
42
|
@import "./tokens/scroll-tokens.css";
|
|
38
43
|
@import "./tokens/light-dark.css";
|
|
@@ -157,13 +157,26 @@ body {
|
|
|
157
157
|
/* Canonical dock control label register — text labels INSIDE
|
|
158
158
|
`.dock-tab-button` (Start, Next, Submit, …) that want an emphatic character
|
|
159
159
|
without `.text-heading`'s `font-weight: 700` (which reads as literal bold in
|
|
160
|
-
a dock pill).
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
160
|
+
a dock pill). Weight 400 — Plus Jakarta reads heavier than its numeric weight
|
|
161
|
+
at pill size, so regular is the not-bold register.
|
|
162
|
+
|
|
163
|
+
BC.W-AX-DOCK-COCKPIT — the label TRACKS the control height by ratio (the
|
|
164
|
+
dock-oversize chronic close, speedtest A-9): the font is a PROPORTION of the
|
|
165
|
+
control (`calc(var(--dock-control-size) * var(--dock-label-ratio))`) so a
|
|
166
|
+
tighter control (the `[data-preset="cockpit"]` 2.75rem floor + compact chrome)
|
|
167
|
+
carries a proportionally tighter label — never the fixed `--type-subheading`
|
|
168
|
+
rung that read OVERSIZE on a tight pill. The explicit `--dock-label-size` knob
|
|
169
|
+
STILL wins when set (the dock.css audacious-mobile carve precedent, KEPT — the
|
|
170
|
+
ratio is the FALLBACK). The `--dock-label-ratio` default reproduces
|
|
171
|
+
`--type-subheading` at the comfortable `2.5rem` control (sizing.css), so the
|
|
172
|
+
bare default is byte-near-identical; the `--dock-control-size` fallback `2.5rem`
|
|
173
|
+
mirrors the comfortable rung for a label outside a density-painted scope. */
|
|
164
174
|
@utility dock-label {
|
|
165
175
|
font-family: var(--font-text);
|
|
166
|
-
font-size: var(
|
|
176
|
+
font-size: var(
|
|
177
|
+
--dock-label-size,
|
|
178
|
+
calc(var(--dock-control-size, 2.5rem) * var(--dock-label-ratio))
|
|
179
|
+
);
|
|
167
180
|
line-height: var(--type-leading-body);
|
|
168
181
|
font-weight: 400;
|
|
169
182
|
letter-spacing: var(--type-tracking-normal);
|
|
@@ -114,7 +114,7 @@ html.no-transition *:not([data-allow-motion])::after {
|
|
|
114
114
|
`min-block/inline-size` only RAISES — a larger explicit size is never lost. */
|
|
115
115
|
@media (pointer: coarse) {
|
|
116
116
|
[data-size="icon"],
|
|
117
|
-
|
|
117
|
+
[data-part="trigger"],
|
|
118
118
|
.segmented-tabs__trigger {
|
|
119
119
|
min-block-size: var(--touch-target, 2.75rem);
|
|
120
120
|
min-inline-size: var(--touch-target, 2.75rem);
|
|
@@ -160,10 +160,25 @@ html.no-transition *:not([data-allow-motion])::after {
|
|
|
160
160
|
translate: -50% -50%;
|
|
161
161
|
min-width: var(--touch-target, 2.75rem);
|
|
162
162
|
min-height: var(--touch-target, 2.75rem);
|
|
163
|
-
/*
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
163
|
+
/* BC.W-RADIO-FIX — the swallow-fix (the §F headline binding bug).
|
|
164
|
+
An absolutely-positioned `::before` over the atom with
|
|
165
|
+
`pointer-events: auto` becomes the topmost hit target across the
|
|
166
|
+
whole 44px box and INTERCEPTS the real pointer event before it
|
|
167
|
+
reaches the host's listener — reka's RadioGroupItem / Checkbox /
|
|
168
|
+
Switch / SliderRoot bind their toggle/drag handler on the HOST
|
|
169
|
+
button (Radio.vue `onClick`), and the swallowing overlay was the
|
|
170
|
+
root of "radios don't work" (a synthetic .click() on the host
|
|
171
|
+
still fired, but a real coarse tap landed on the pseudo and
|
|
172
|
+
no-op'd). `pointer-events: none` frees the pointer to fall
|
|
173
|
+
through to the host so the tap reaches reka on EVERY input path,
|
|
174
|
+
while the 44px GEOMETRY still satisfies the WCAG-2.5.5 readback
|
|
175
|
+
(getComputedStyle reads min-width/height, not pointer-events —
|
|
176
|
+
the hit FLOOR is the box, never a pointer-swallowing overlay).
|
|
177
|
+
The same integrity discipline `useDockClickIntegrity` applies to
|
|
178
|
+
the dock + the Slider's own `.slider-thumb.touch-hit-area::before`
|
|
179
|
+
override already discovered (AY.W-SCALE2) — now ONE source for
|
|
180
|
+
the whole six-atom hit-area family. */
|
|
181
|
+
pointer-events: none;
|
|
167
182
|
}
|
|
168
183
|
}
|
|
169
184
|
}
|
|
@@ -212,6 +212,27 @@
|
|
|
212
212
|
scroll-timeline: --card-scroll block;
|
|
213
213
|
}
|
|
214
214
|
|
|
215
|
+
/* ── Stable scroll gutter — the no-shift discipline for overlay-hosting
|
|
216
|
+
route scrollers (BC.W-DROPDOWN-FIX) ──────────────────────────────────
|
|
217
|
+
An app-shell route scroller that hosts portaled picker/menu overlays
|
|
218
|
+
(Select / DropdownMenu / any reka overlay that locks body scroll on open)
|
|
219
|
+
RESERVES a stable scrollbar gutter so the lock-induced scrollbar removal
|
|
220
|
+
removes no layout space — the centred content does not reflow and the
|
|
221
|
+
trigger does not twitch left/right (USER-DEFECTS §F, the classic
|
|
222
|
+
space-taking-scrollbar reflow).
|
|
223
|
+
|
|
224
|
+
PRESETS-IN-CONSUMERS: the library ships the named discipline; the CONSUMER
|
|
225
|
+
app-shell opts its OWN route scroller in (the demo `.demo-main-scroller`
|
|
226
|
+
is the reference adoption). glass-ui does not force `scrollbar-gutter` on
|
|
227
|
+
every consumer's scroller — it provides this utility + the canon note.
|
|
228
|
+
|
|
229
|
+
Baseline-newly-available: Chrome 94+, Firefox 97+, Safari 18.2+ — a
|
|
230
|
+
non-supporting engine ignores the property (the gutter just isn't
|
|
231
|
+
reserved, the legacy behaviour). */
|
|
232
|
+
.scroll-gutter-stable {
|
|
233
|
+
scrollbar-gutter: stable;
|
|
234
|
+
}
|
|
235
|
+
|
|
215
236
|
/* ── Shimmer text effects ──
|
|
216
237
|
BB.W-METAL-SHIMMER — the gold-only `gold-shimmer-slide` is RETIRED (clean
|
|
217
238
|
break, no alias); `.gold-shimmer` re-points onto the metal-PARAMETERIZED
|
|
@@ -253,3 +274,34 @@
|
|
|
253
274
|
}
|
|
254
275
|
|
|
255
276
|
}
|
|
277
|
+
|
|
278
|
+
/* ── @utility ghost-slot (BC.W-GHOST-DASHED) ────────────────────────────────
|
|
279
|
+
The ONE dashed-outline placeholder register: everywhere a slot is empty / a
|
|
280
|
+
thing is a placeholder / an affordance is "add something here", the surface
|
|
281
|
+
reads this — a dashed-outline plate, consistently rounded (--radius-card),
|
|
282
|
+
calm-muted, that reads unmistakably "this is a placeholder, not a filled
|
|
283
|
+
surface." The 6 ad-hoc `rounded-{md,2xl,card} border border-dashed
|
|
284
|
+
border-border bg-{card,background}` forks (three radii, three hosts, three
|
|
285
|
+
pads) COLLAPSE onto this ONE register: ONE radius, ONE faint-wash host, ONE
|
|
286
|
+
muted ink, ONE warm dashed hairline.
|
|
287
|
+
|
|
288
|
+
WARM-NOT-GREY (BA.W-NO-GRAY): the dashed hairline is the warm-ink at 22%
|
|
289
|
+
(a color-mix off --foreground, the warm identity), NEVER a grey
|
|
290
|
+
`border-border` — the ghost must read warm-material, not grey.
|
|
291
|
+
|
|
292
|
+
GLASS-ADJACENT, not opaque: the host is a faint glass-wash (the rebuilt W55
|
|
293
|
+
material reads THROUGH it), NOT a flat opaque `bg-card` slab — so the ghost
|
|
294
|
+
reads "empty," not "filled," and the D1 grey-plate regression cannot re-enter
|
|
295
|
+
through the placeholder.
|
|
296
|
+
|
|
297
|
+
THE FENCE (binding both ways): this is the RECTANGULAR-placeholder register.
|
|
298
|
+
The `WatercolorDot variant="ghost"` (the seeded-blob SILHOUETTE traced as a
|
|
299
|
+
dashed stroke — the empty-PALETTE-slot affordance) is a DISTINCT register;
|
|
300
|
+
neither forks the other. .ghost-slot is never applied to a blob-silhouette
|
|
301
|
+
slot, and the watercolor ghost never adopts this rectangle recipe. */
|
|
302
|
+
@utility ghost-slot {
|
|
303
|
+
border: 1px dashed color-mix(in srgb, var(--foreground) 22%, transparent);
|
|
304
|
+
border-radius: var(--radius-card);
|
|
305
|
+
background: color-mix(in oklab, var(--glass-bg-wash), transparent 40%);
|
|
306
|
+
color: var(--muted-foreground);
|
|
307
|
+
}
|
|
@@ -49,12 +49,23 @@
|
|
|
49
49
|
Shared compound transition for interactive controls that animate their
|
|
50
50
|
surface (background-color/color/box-shadow/border-color) on the four-state
|
|
51
51
|
contract. Replaces the per-site
|
|
52
|
-
`transition-[background-color,color,box-shadow,border-color] duration-[var(--duration-
|
|
52
|
+
`transition-[background-color,color,box-shadow,border-color] duration-[var(--duration-control)] ease-[var(--ease-standard)]`
|
|
53
53
|
arbitrary wraps at ≥2 sites (TabsTrigger, SelectTrigger, Toggle `card`
|
|
54
|
-
variant).
|
|
54
|
+
variant).
|
|
55
|
+
|
|
56
|
+
BC.W-CONTROL-SMOOTH — the surface legs read the QUICK control clock
|
|
57
|
+
`--duration-control` (0.12s, the named iOS control-press surface beat,
|
|
58
|
+
scheme-motion.css), NOT the 0.2s calm `--duration-fast`. A control the user
|
|
59
|
+
actively pokes wants the ~100-120ms quick beat that tracks the cursor; the
|
|
60
|
+
prior 0.2s dragged the colour/border/shadow VISIBLY behind the press (the §F
|
|
61
|
+
"super laggy" read). The bezier `--ease-standard` STAYS (a colour cross-fade
|
|
62
|
+
on a spring wobbles — §6 binding); the property list stays SURFACE-ONLY (no
|
|
63
|
+
`transform` leg — the press-squish is `.tap-squish`/`useSpringPress`'s spring
|
|
64
|
+
job, the canonical split). One token re-times the whole 12-consumer control
|
|
65
|
+
family. */
|
|
55
66
|
@utility transition-control {
|
|
56
67
|
transition-property: background-color, color, box-shadow, border-color;
|
|
57
|
-
transition-duration: var(--duration-
|
|
68
|
+
transition-duration: var(--duration-control);
|
|
58
69
|
transition-timing-function: var(--ease-standard);
|
|
59
70
|
}
|
|
60
71
|
|
|
@@ -31,11 +31,17 @@
|
|
|
31
31
|
background: var(--metric-badge-bg, var(--glass-bg-quiet));
|
|
32
32
|
backdrop-filter: var(--metric-badge-blur, var(--glass-blur-quiet));
|
|
33
33
|
box-shadow: var(--metric-badge-shadow, 0 1px 6px color-mix(in srgb, var(--shadow-color) 8%, transparent), var(--glass-highlight));
|
|
34
|
+
/* SPATIAL/EFFECTS split (motion-canon P1): the EFFECTS legs
|
|
35
|
+
(background/border-color/box-shadow) ride the bezier --ease-standard;
|
|
36
|
+
the SPATIAL hover-lift legs (translate/scale) ride the --spring-smooth
|
|
37
|
+
hover register on its own settle clock --spring-smooth-duration (the
|
|
38
|
+
ONE interactive transform register .btn-pill/.glass-btn settle on). */
|
|
34
39
|
transition:
|
|
35
40
|
background var(--duration-fast) var(--ease-standard),
|
|
36
41
|
border-color var(--duration-fast) var(--ease-standard),
|
|
37
42
|
box-shadow var(--duration-fast) var(--ease-standard),
|
|
38
|
-
|
|
43
|
+
translate var(--spring-smooth-duration) var(--spring-smooth),
|
|
44
|
+
scale var(--spring-smooth-duration) var(--spring-smooth);
|
|
39
45
|
}
|
|
40
46
|
|
|
41
47
|
.metric-badge > span {
|
|
@@ -49,11 +55,17 @@
|
|
|
49
55
|
|
|
50
56
|
.metric-badge:hover {
|
|
51
57
|
/* Hover lifts to the `resting` rung — one step up the canonical
|
|
52
|
-
ladder (audit U.W0.C-c §7.2).
|
|
58
|
+
ladder (audit U.W0.C-c §7.2). BC.W-AX-METRIC-HOVER lifts the badge
|
|
59
|
+
into a tactile VALUE-LIFT: it nudges UP (--metric-badge-hover-translate
|
|
60
|
+
-2px) + scales a hair more (1.04) + casts the cartoon-sticker offset
|
|
61
|
+
shadow (--shadow-cartoon-sm) — token-first, so a consumer zeroes the
|
|
62
|
+
lift from :root (--metric-badge-hover-translate: 0). Compositor-only
|
|
63
|
+
(translate/scale/box-shadow — proof:no-layout-animation holds). */
|
|
53
64
|
border-color: var(--metric-badge-hover-border, var(--glass-border-resting));
|
|
54
65
|
background: var(--metric-badge-hover-bg, var(--glass-bg-resting));
|
|
55
|
-
box-shadow: var(--metric-badge-hover-shadow,
|
|
56
|
-
|
|
66
|
+
box-shadow: var(--metric-badge-hover-shadow, var(--shadow-cartoon-sm), var(--glass-highlight));
|
|
67
|
+
translate: 0 var(--metric-badge-hover-translate, -2px);
|
|
68
|
+
scale: var(--metric-badge-hover-scale, 1.04);
|
|
57
69
|
}
|
|
58
70
|
|
|
59
71
|
.metric-badge:active {
|
|
@@ -212,7 +224,14 @@
|
|
|
212
224
|
backdrop-filter: var(--glass-blur-floating);
|
|
213
225
|
|
|
214
226
|
padding: 0 0.75rem;
|
|
215
|
-
height
|
|
227
|
+
/* BC.W-SEARCH-CUSTOM — the height reads the shared `--control-pill-h`
|
|
228
|
+
element-override seam (the SAME rung `.input-pill` reads), DEFAULTING to
|
|
229
|
+
`--control-h-sm` so a bare search bar is byte-identical to the HEAD
|
|
230
|
+
2.25rem pill. `controlSizeClass(size)` (_shared/useControlSize.ts) re-points
|
|
231
|
+
the seam per rung (sm→`--control-h-xs`-ish via the cohort, lg→`--control-h-lg`),
|
|
232
|
+
so the SearchBar/FuzzySearch `size` prop retunes the field height WITHOUT a
|
|
233
|
+
recipe fork — ONE substitution rung, the cohort is still the source. */
|
|
234
|
+
height: var(--control-pill-h, var(--control-h-sm));
|
|
216
235
|
max-width: var(--max-width-input);
|
|
217
236
|
width: 100%;
|
|
218
237
|
transition:
|
|
@@ -226,7 +245,13 @@
|
|
|
226
245
|
|
|
227
246
|
.input-bar-field {
|
|
228
247
|
font-family: var(--font-mono, monospace);
|
|
229
|
-
|
|
248
|
+
/* BC.W-SEARCH-CUSTOM — the field font reads the shared `--control-pill-text`
|
|
249
|
+
seam (the SAME rung `.input-pill` reads), DEFAULTING to `--control-text`
|
|
250
|
+
(≈ the prior `--type-small` register at scale 1 — byte-near-identical). The
|
|
251
|
+
`controlSizeClass("sm")` rung re-points it to `--control-text-sm` (quieter);
|
|
252
|
+
`default`/`lg` keep `--control-text`. So the search field type tracks the
|
|
253
|
+
cohort under `--ui-scale`, NOT a static `--type-small` literal. */
|
|
254
|
+
font-size: var(--control-pill-text, var(--control-text));
|
|
230
255
|
background: transparent;
|
|
231
256
|
border: none;
|
|
232
257
|
outline: none;
|
|
@@ -57,6 +57,32 @@
|
|
|
57
57
|
background-clip: text;
|
|
58
58
|
-webkit-background-clip: text;
|
|
59
59
|
color: transparent;
|
|
60
|
+
|
|
61
|
+
/* ── BC.W-AX-METAL-GLOW — the gold catch-light (the lit-metal halo) ──────
|
|
62
|
+
A soft glow halo of the metal's OWN base hue behind the gradient text-clip
|
|
63
|
+
so the gold reads as LIT metal (light catching its surface), not a flat
|
|
64
|
+
gradient fill. Because `background-clip: text` makes the text transparent,
|
|
65
|
+
a `filter: drop-shadow` follows the clipped glyph shape — the halo hugs the
|
|
66
|
+
letters. ONE recipe on the shared selector (every metal lit, never a per-
|
|
67
|
+
metal re-paste); the glow reads `--metal-stop-base` so gold halos gold,
|
|
68
|
+
silver halos silver, bronze halos bronze (NOT a fixed gold-on-every-metal
|
|
69
|
+
mismatch). The earned-gold register (Q2): `.metal-gold`'s base is
|
|
70
|
+
`--color-gold`, so the gold catch-light is the earned-gold warm glow.
|
|
71
|
+
|
|
72
|
+
PRM-STATIC: the glow paints HERE, at rest, OUTSIDE the no-preference
|
|
73
|
+
bracket — the lit metal reads for PRM users; ONLY the sweep `animation:`
|
|
74
|
+
is gated (the §6 calm register; the disco family stays gone — this is a
|
|
75
|
+
soft warm whisper bounded by `--metal-glow-opacity`, not a neon bloom). */
|
|
76
|
+
--metal-glow-blur: var(--metal-glow-blur-default, 0.5em);
|
|
77
|
+
--metal-glow-opacity: var(--metal-glow-opacity-default, 0.35);
|
|
78
|
+
filter: drop-shadow(
|
|
79
|
+
0 0 var(--metal-glow-blur)
|
|
80
|
+
color-mix(
|
|
81
|
+
in srgb,
|
|
82
|
+
var(--metal-stop-base) calc(var(--metal-glow-opacity) * 100%),
|
|
83
|
+
transparent
|
|
84
|
+
)
|
|
85
|
+
);
|
|
60
86
|
}
|
|
61
87
|
|
|
62
88
|
/* Per-metal: set the channel marker + re-bind the stop slots to the quad. */
|
package/dist/switch.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as e } from "./Switch-
|
|
1
|
+
import { t as e } from "./Switch-B8RscmRu.js";
|
|
2
2
|
export { e as Switch };
|
package/dist/tabs.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { t as e } from "./cn-DJXf4yaB.js";
|
|
2
|
-
import { t } from "./useLiquidFlex-
|
|
3
|
-
import { a as n, i as r, o as i, r as a, s as o } from "./SelectScrollDownButton-
|
|
4
|
-
import { i as s, n as c, r as l, t as u } from "./TooltipProvider-
|
|
5
|
-
import { t as d } from "./useDragMorph-
|
|
2
|
+
import { t } from "./useLiquidFlex-UmA6LMZu.js";
|
|
3
|
+
import { a as n, i as r, o as i, r as a, s as o } from "./SelectScrollDownButton-DAKCBEdW.js";
|
|
4
|
+
import { i as s, n as c, r as l, t as u } from "./TooltipProvider-BJ_Y5EGX.js";
|
|
5
|
+
import { t as d } from "./useDragMorph-BUgAC-zK.js";
|
|
6
6
|
import { Fragment as f, computed as p, createBlock as m, createCommentVNode as h, createElementBlock as g, createElementVNode as _, createTextVNode as v, createVNode as y, defineComponent as b, mergeModels as x, mergeProps as S, nextTick as C, normalizeClass as w, normalizeStyle as ee, onBeforeUnmount as te, onMounted as T, onUnmounted as E, openBlock as D, ref as O, renderList as k, renderSlot as A, toDisplayString as j, unref as M, useModel as ne, watch as N, withCtx as P } from "vue";
|
|
7
7
|
//#region src/components/custom/tabs/constants.ts
|
|
8
|
-
var F = 1.
|
|
8
|
+
var F = 1.15, I = .82;
|
|
9
9
|
//#endregion
|
|
10
10
|
//#region src/components/custom/tabs/composables/useTabIndicator.ts
|
|
11
11
|
function re(e) {
|
|
@@ -67,7 +67,7 @@ function re(e) {
|
|
|
67
67
|
let a = i.value[m], o = i.value[e];
|
|
68
68
|
if (m = e, !a || !o) return;
|
|
69
69
|
let s = u.value ? n.value?.offsetHeight || o.offsetParent?.offsetHeight || 1 : n.value?.offsetWidth || o.offsetParent?.offsetWidth || 1, c = u.value ? Math.abs(o.offsetTop - a.offsetTop) : Math.abs(o.offsetLeft - a.offsetLeft), l = s > 0 ? Math.min(c / s, 1) : 0, d = getComputedStyle(t).getPropertyValue("--tab-indicator-max-stretch").trim();
|
|
70
|
-
g = Number(d) || 1.
|
|
70
|
+
g = Number(d) || 1.15, _.squish(l), h && clearTimeout(h), t.style.setProperty("--stretch", String(_.stretch.value));
|
|
71
71
|
let f = y(t) * I;
|
|
72
72
|
h = setTimeout(() => {
|
|
73
73
|
_.squish(0), t.style.setProperty("--stretch", String(_.stretch.value)), h = null;
|
|
@@ -98,7 +98,7 @@ function ie(e) {
|
|
|
98
98
|
let e = t.value;
|
|
99
99
|
if (!e) return F;
|
|
100
100
|
let n = getComputedStyle(e).getPropertyValue("--tab-indicator-max-stretch").trim();
|
|
101
|
-
return Number(n) || 1.
|
|
101
|
+
return Number(n) || 1.15;
|
|
102
102
|
}
|
|
103
103
|
function u() {
|
|
104
104
|
return a.value.map((e, t) => {
|
|
@@ -156,7 +156,7 @@ var ae = ["role", "aria-orientation"], oe = [
|
|
|
156
156
|
},
|
|
157
157
|
draggable: {
|
|
158
158
|
type: Boolean,
|
|
159
|
-
default: !
|
|
159
|
+
default: !0
|
|
160
160
|
},
|
|
161
161
|
class: { type: [
|
|
162
162
|
Boolean,
|
package/dist/timeline.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as e } from "./_plugin-vue_export-helper-C1je1s0u.js";
|
|
2
|
-
import { t } from "./HoverPopover-
|
|
2
|
+
import { t } from "./HoverPopover-BcIxvyqZ.js";
|
|
3
3
|
import { Fragment as n, computed as r, createBlock as i, createCommentVNode as a, createElementBlock as o, createElementVNode as s, createSlots as c, createVNode as l, defineComponent as u, guardReactiveProps as d, normalizeClass as f, normalizeProps as p, normalizeStyle as m, openBlock as h, ref as g, renderList as _, renderSlot as v, toDisplayString as y, unref as b, withCtx as x } from "vue";
|
|
4
4
|
//#region src/components/custom/timeline/geometry.ts
|
|
5
5
|
function S(e) {
|