@mkbabb/glass-ui 3.12.0 → 4.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/CardAction-XH4YBVEK.js +158 -0
- package/dist/{CommandShortcut-CefCj5mt.js → CommandShortcut-DdtWXxOK.js} +58 -53
- package/dist/{ContextMenuSubContent-Bhg4f5jX.js → ContextMenuSubContent-B0Vs6atR.js} +4 -4
- package/dist/{DataTable-CUHMukiQ.js → DataTable-C464Zbqd.js} +99 -97
- package/dist/DialogContent-DDE6pQBU.js +103 -0
- package/dist/{DialogFooter-Gprw8H_A.js → DialogFooter-8eZbdmPc.js} +2 -2
- package/dist/FadingScroll-DwNnvKMs.js +76 -0
- package/dist/{HoverPopover-2LOIW34a.js → HoverPopover-Dpzwvc4t.js} +1 -1
- package/dist/IconChip-BDw1j5mu.js +54 -0
- package/dist/{IconTooltip-Cus0fvK0.js → IconTooltip-DSjasZIt.js} +1 -1
- package/dist/MetricBadge-BpC0R_Ec.js +79 -0
- package/dist/{Notification-DLMhblXR.js → Notification-DKjKsQq8.js} +10 -10
- package/dist/{NumberFieldContent-BbLOh8RU.js → NumberFieldContent-1VtwDSgf.js} +3 -3
- package/dist/PopoverContent-BTorlp--.js +127 -0
- package/dist/{Progress-iEuD9pxG.js → Progress-hAT4gqGH.js} +97 -77
- package/dist/{ScrollingText-BPP84wKo.js → ScrollingText-CUVFTWk2.js} +2 -2
- package/dist/{SelectScrollDownButton-T32cVFeM.js → SelectScrollDownButton-C1jb3b3K.js} +24 -8
- package/dist/{Switch-Ch-k3Rv-.js → Switch-Dr--uLGH.js} +2 -2
- package/dist/{Toaster-1rYWrmAm.js → Toaster-Bm_HQSpc.js} +55 -52
- package/dist/{ToggleGroupItem-COu_4IW4.js → ToggleGroupItem-Dzk9hWsF.js} +18 -22
- package/dist/animated-digit.js +3 -3
- package/dist/api/index.d.ts +10 -4
- package/dist/api.js +1 -1
- package/dist/aurora.js +113 -98
- package/dist/{badge-CaoFJzRb.js → badge-UILT_3pZ.js} +1 -1
- package/dist/badge.js +1 -1
- package/dist/{button-DN39cGqL.js → button-BNDWhAZb.js} +12 -12
- package/dist/button.js +1 -1
- package/dist/card.js +1 -1
- package/dist/carousel.d.ts +1 -1
- package/dist/carousel.js +101 -145
- package/dist/{check-BBKKKSTf.js → check-njhk-vfu.js} +1 -1
- package/dist/{chevron-down-BSkTP2aL.js → chevron-down-DKkxb4VV.js} +1 -1
- package/dist/{chevron-right-sDM0Yvrf.js → chevron-right-CPXbqQQz.js} +1 -1
- package/dist/{chevron-up-CCOD_FTz.js → chevron-up-n_24SqI-.js} +1 -1
- package/dist/coalesceMetric-5qIeZnTx.js +13 -0
- package/dist/collapsible.js +1 -1
- package/dist/{color-C5ls_QF7.js → color-DweYl7pE.js} +9 -7
- package/dist/color-swatch.d.ts +1 -0
- package/dist/color-swatch.js +47 -0
- package/dist/color.js +1 -1
- package/dist/command.js +1 -1
- package/dist/components/custom/animated-digit/AnimatedDigit.vue.d.ts +8 -0
- package/dist/components/custom/aurora/constants/presets.d.ts +16 -45
- package/dist/components/custom/aurora/constants/renderMode.d.ts +2 -0
- package/dist/components/custom/aurora/constants/shaders/mediums.glsl.d.ts +1 -1
- package/dist/components/custom/aurora/constants/shaders/vangogh-medium.glsl.d.ts +1 -0
- package/dist/components/custom/color-swatch/ColorSwatch.vue.d.ts +22 -0
- package/dist/components/custom/color-swatch/index.d.ts +1 -0
- package/dist/components/custom/configurator/Configurator.vue.d.ts +19 -8
- package/dist/components/custom/configurator/ConfiguratorRow.vue.d.ts +16 -0
- package/dist/components/custom/constellation/Constellation.vue.d.ts +23 -143
- package/dist/components/custom/constellation/composables/createConstellationField.d.ts +41 -0
- package/dist/components/custom/constellation/composables/useConstellation.d.ts +26 -0
- package/dist/components/custom/constellation/composables/useConstellationPointer.d.ts +35 -0
- package/dist/components/custom/constellation/constants.d.ts +61 -0
- package/dist/components/custom/constellation/constellationDraw.d.ts +30 -0
- package/dist/components/custom/constellation/constellationField.d.ts +3 -403
- package/dist/components/custom/constellation/constellationInteraction.d.ts +132 -0
- package/dist/components/custom/constellation/constellationTypes.d.ts +369 -0
- package/dist/components/custom/constellation/index.d.ts +5 -2
- package/dist/components/custom/controls/DarkModeToggle.vue.d.ts +11 -0
- package/dist/components/custom/dock/DockRail.vue.d.ts +89 -0
- package/dist/components/custom/dock/DockSection.vue.d.ts +69 -0
- package/dist/components/custom/dock/DockSeparator.vue.d.ts +49 -1
- package/dist/components/custom/dock/DockTabButton.vue.d.ts +5 -6
- package/dist/components/custom/dock/GlassDock.vue.d.ts +5 -118
- package/dist/components/custom/dock/composables/dockMorphContext.d.ts +36 -0
- package/dist/components/custom/dock/composables/index.d.ts +1 -0
- package/dist/components/custom/dock/composables/useDockClickIntegrity.d.ts +23 -0
- package/dist/components/custom/dock/composables/useDockMorphWindow.d.ts +15 -0
- package/dist/components/custom/dock/composables/useDockOrientationMorph.d.ts +44 -0
- package/dist/components/custom/dock/composables/useDockShellProps.d.ts +165 -0
- package/dist/components/custom/dock/composables/useLayerTransition.d.ts +44 -0
- package/dist/components/custom/dock/constants.d.ts +83 -0
- package/dist/components/custom/dock/index.d.ts +5 -0
- package/dist/components/custom/expandable-container/ExpandableContainer.vue.d.ts +15 -37
- package/dist/components/custom/fading-scroll/FadingScroll.vue.d.ts +25 -0
- package/dist/components/custom/fading-scroll/composables/useFadingScroll.d.ts +31 -0
- package/dist/components/custom/fading-scroll/constants.d.ts +19 -0
- package/dist/components/custom/fading-scroll/index.d.ts +2 -0
- package/dist/components/custom/fourier-field/FourierField.vue.d.ts +7 -0
- package/dist/components/custom/fourier-field/index.d.ts +1 -1
- package/dist/components/custom/fourier-field/math.d.ts +34 -0
- package/dist/components/custom/fourier-field/presets.d.ts +54 -0
- package/dist/components/custom/glass-panel/GlassPanel.vue.d.ts +8 -0
- package/dist/components/custom/goo-blob/composables/buildMetaballProgram.d.ts +18 -0
- package/dist/components/custom/goo-blob/composables/uploadBlobUniforms.d.ts +41 -0
- package/dist/components/custom/goo-blob/composables/useBlobPointer.d.ts +4 -3
- package/dist/components/custom/goo-blob/composables/useMetaballRenderer.d.ts +21 -8
- package/dist/components/custom/goo-blob/constants.d.ts +57 -0
- package/dist/components/custom/goo-blob/shaders/metaball-uniforms.glsl.d.ts +1 -0
- package/dist/components/custom/handmark/brush.d.ts +33 -6
- package/dist/components/custom/handmark/{useHandMark.d.ts → composables/useHandMark.d.ts} +6 -4
- package/dist/components/custom/handmark/constants.d.ts +39 -0
- package/dist/components/custom/handmark/geometry.d.ts +14 -12
- package/dist/components/custom/handmark/index.d.ts +8 -2
- package/dist/components/custom/handmark/types.d.ts +9 -0
- package/dist/components/custom/icon-chip/IconChip.vue.d.ts +4 -0
- package/dist/components/custom/icon-chip/index.d.ts +2 -0
- package/dist/components/custom/icon-chip/types.d.ts +72 -0
- package/dist/components/custom/instrument-chassis/InstrumentChassis.vue.d.ts +17 -4
- package/dist/components/custom/labeled-field/LabeledField.vue.d.ts +37 -0
- package/dist/components/custom/labeled-field/LabeledSelect.vue.d.ts +6 -0
- package/dist/components/custom/labeled-field/LabeledSlider.vue.d.ts +6 -0
- package/dist/components/custom/labeled-field/LabeledSwitch.vue.d.ts +6 -0
- package/dist/components/custom/metric-badge/MetricBadge.vue.d.ts +11 -18
- package/dist/components/custom/metric-badge/index.d.ts +1 -0
- package/dist/components/custom/metric-cell/MetricCell.vue.d.ts +15 -4
- package/dist/components/custom/metric-stack/MetricRow.vue.d.ts +6 -4
- package/dist/components/custom/pager-dots/PagerDots.vue.d.ts +39 -0
- package/dist/components/custom/pager-dots/index.d.ts +2 -0
- package/dist/components/custom/tabs/SegmentedTabs.vue.d.ts +20 -25
- package/dist/components/custom/tabs/composables/useTabIndicator.d.ts +30 -21
- package/dist/components/custom/tabs/constants.d.ts +18 -0
- package/dist/components/custom/tabs/index.d.ts +1 -1
- package/dist/components/custom/watercolor-dot/WatercolorDot.vue.d.ts +14 -0
- package/dist/components/ui/_shared/index.d.ts +2 -0
- package/dist/components/ui/_shared/menuItemVariants.d.ts +19 -0
- package/dist/components/ui/_shared/useSurfaceAxis.d.ts +41 -0
- package/dist/components/ui/card/Card.vue.d.ts +16 -4
- package/dist/components/ui/carousel/index.d.ts +0 -1
- package/dist/components/ui/command/Command.vue.d.ts +3 -0
- package/dist/components/ui/dialog/DialogContent.vue.d.ts +8 -3
- package/dist/components/ui/drawer/Drawer.vue.d.ts +1 -0
- package/dist/components/ui/drawer/DrawerContent.vue.d.ts +5 -0
- package/dist/components/ui/dropdown-menu/DropdownMenuSubContent.vue.d.ts +2 -2
- package/dist/components/ui/index.d.ts +0 -1
- package/dist/components/ui/metric-pill/MetricPill.vue.d.ts +6 -3
- package/dist/components/ui/popover/PopoverContent.vue.d.ts +3 -0
- package/dist/components/ui/progress/ProgressSectioned.vue.d.ts +14 -3
- package/dist/components/ui/select/SelectTrigger.vue.d.ts +27 -4
- package/dist/components/ui/sheet/SheetContent.vue.d.ts +6 -0
- package/dist/components/ui/skeleton/Skeleton.vue.d.ts +3 -0
- package/dist/components/ui/slider/index.d.ts +22 -19
- package/dist/components/ui/tabs/TabsIndicator.vue.d.ts +4 -1
- package/dist/components/ui/toast/use-toast.d.ts +2 -2
- package/dist/components/ui/toggle/Toggle.vue.d.ts +1 -1
- package/dist/components/ui/toggle/index.d.ts +1 -1
- package/dist/components/ui/toggle-group/ToggleGroup.vue.d.ts +1 -7
- package/dist/components/ui/toggle-group/ToggleGroupItem.vue.d.ts +1 -3
- package/dist/components/ui/toggle-group/toggleGroupContext.d.ts +0 -13
- package/dist/composables/color/index.d.ts +12 -0
- package/dist/composables/dark/useGlobalDark.d.ts +14 -12
- package/dist/composables/glass/index.d.ts +0 -1
- package/dist/composables/glass/useGlassBackdropLuminance.d.ts +59 -0
- package/dist/composables/glass/useSpecularTracking.d.ts +12 -3
- package/dist/composables/motion/core/index.d.ts +1 -1
- package/dist/composables/motion/curves.d.ts +48 -0
- package/dist/composables/motion/index.d.ts +2 -0
- package/dist/composables/motion/springPresets.d.ts +33 -0
- package/dist/composables/motion/suite.d.ts +2 -0
- package/dist/composables/motion/useLiquidFlex.d.ts +85 -0
- package/dist/composables/motion/useSpringMount.d.ts +1 -1
- package/dist/composables/motion/useViewTransition.d.ts +36 -1
- package/dist/configurator.js +1 -1
- package/dist/confirm-dialog.js +3 -3
- package/dist/constellation.js +373 -261
- package/dist/context-menu.js +2 -2
- package/dist/controls.js +48 -14
- package/dist/dark.js +1 -1
- package/dist/data-table.js +1 -1
- package/dist/dialog.js +2 -2
- package/dist/dock.js +901 -372
- package/dist/dockContext-Bu1Avy-a.js +17 -0
- package/dist/dom.js +5 -5
- package/dist/{dropdown-menu-D77jX6Df.js → dropdown-menu-BJ7E9js_.js} +11 -8
- package/dist/dropdown-menu.js +1 -1
- package/dist/expandable-container.js +44 -81
- package/dist/fading-scroll.d.ts +1 -0
- package/dist/fading-scroll.js +2 -0
- package/dist/forms.js +5 -5
- package/dist/fourier-field.js +140 -104
- package/dist/fourier-math.js +2 -2
- package/dist/glass-panel.js +90 -21
- package/dist/glass-ui.css +1 -1
- package/dist/glass-ui.js +230 -236
- package/dist/goo-blob.js +264 -228
- package/dist/handmark.js +203 -159
- package/dist/header-ribbon.js +1 -1
- package/dist/hover-card.js +1 -1
- package/dist/hover-popover.js +1 -1
- package/dist/icon-chip.d.ts +1 -0
- package/dist/icon-chip.js +2 -0
- package/dist/icon-tooltip.js +1 -1
- package/dist/index.d.ts +3 -5
- package/dist/instrument-chassis.js +1 -1
- package/dist/keyboard.js +1 -1
- package/dist/label.js +1 -1
- package/dist/labeled-field.js +28 -18
- package/dist/{math-DTpRVC0e.js → math-DeuJwLFx.js} +26 -2
- package/dist/{menuItemVariants-CCoBNkU5.js → menuItemVariants-DWRQXBxJ.js} +10 -4
- package/dist/metric-badge.js +1 -1
- package/dist/metric-cell.js +29 -22
- package/dist/metric-stack.js +35 -34
- package/dist/{minimize-2-lcXOuc6V.js → minimize-2-BV31Ob_h.js} +1 -1
- package/dist/motion-core.js +32 -136
- package/dist/motion-curves.d.ts +1 -0
- package/dist/motion-curves.js +130 -0
- package/dist/motion.js +38 -37
- package/dist/notification.js +1 -1
- package/dist/number-field.js +1 -1
- package/dist/pager-dots.d.ts +1 -0
- package/dist/pager-dots.js +91 -0
- package/dist/paper-backdrop.js +1 -1
- package/dist/popover.js +1 -1
- package/dist/progress.js +1 -1
- package/dist/pulse.js +1 -1
- package/dist/reactive.js +2 -2
- package/dist/scrolling-text.js +1 -1
- package/dist/{search-nbkvr2dC.js → search-BSGrf2Sk.js} +1 -1
- package/dist/search.js +10 -10
- package/dist/select.js +3 -3
- package/dist/separator.js +1 -1
- package/dist/sheet-CquRYOAw.js +218 -0
- package/dist/sheet.js +1 -1
- package/dist/{slider-ClgpP7EB.js → slider-DQ95MET2.js} +8 -8
- package/dist/slider.js +1 -1
- package/dist/sortable-list.js +3 -3
- package/dist/springPresets-WXaLbu8u.js +40 -0
- package/dist/stacked-icons.js +6 -6
- package/dist/styles/animations.css +25 -125
- package/dist/styles/cards.css +55 -0
- package/dist/styles/components.css +4 -1
- package/dist/styles/configurator.css +77 -0
- package/dist/styles/dock/density.css +19 -0
- package/dist/styles/dock/layer-group.css +83 -25
- package/dist/styles/dock/layers.css +23 -1
- package/dist/styles/dock/morph-bridge.css +123 -0
- package/dist/styles/dock/morph.css +175 -45
- package/dist/styles/dock/overflow.css +66 -1
- package/dist/styles/dock/rail-extend.css +397 -0
- package/dist/styles/dock/section.css +59 -0
- package/dist/styles/dock/shell.css +97 -110
- package/dist/styles/dock-controls/dark-mode-toggle.css +109 -0
- package/dist/styles/dock-controls/icon-button.css +143 -0
- package/dist/styles/dock-controls/tab-button.css +143 -0
- package/dist/styles/dock-controls/touch-floor.css +94 -0
- package/dist/styles/dock-controls/triggers.css +135 -0
- package/dist/styles/dock-controls.css +30 -595
- package/dist/styles/dock.css +8 -3
- package/dist/styles/drawer.css +48 -0
- package/dist/styles/feedback-tone.css +104 -0
- package/dist/styles/floating-panel.css +17 -0
- package/dist/styles/glass/a11y-fallback.css +245 -0
- package/dist/styles/glass/ladder.css +383 -0
- package/dist/styles/glass/material.css +238 -0
- package/dist/styles/glass/progress-rail.css +78 -0
- package/dist/styles/glass/squircle.css +66 -0
- package/dist/styles/glass/surface-axis.css +113 -0
- package/dist/styles/glass/surfaces.css +382 -0
- package/dist/styles/glass-refract.css +2 -0
- package/dist/styles/glass.css +34 -1188
- package/dist/styles/hover-popover.css +2 -0
- package/dist/styles/icon-chip.css +149 -0
- package/dist/styles/index.css +94 -18
- package/dist/styles/instrument-chassis.css +46 -0
- package/dist/styles/menu.css +127 -0
- package/dist/styles/paper.css +2 -68
- package/dist/styles/segmented-tabs.css +346 -0
- package/dist/styles/select.css +50 -0
- package/dist/styles/theme/bridges.css +347 -0
- package/dist/styles/theme/dark.css +7 -0
- package/dist/styles/theme/literals.css +94 -0
- package/dist/styles/theme/radius.css +95 -0
- package/dist/styles/theme.css +26 -529
- package/dist/styles/tokens/color-radius.css +287 -0
- package/dist/styles/tokens/dark-arm.css +308 -0
- package/dist/styles/tokens/glass.css +500 -0
- package/dist/styles/tokens/light-dark.css +187 -0
- package/dist/styles/tokens/offsets-sizing.css +562 -0
- package/dist/styles/tokens/property-regs.css +162 -0
- package/dist/styles/tokens/scale-paper.css +409 -0
- package/dist/styles/tokens/scheme-motion.css +352 -0
- package/dist/styles/tokens/shadow.css +166 -0
- package/dist/styles/tokens.css +22 -2360
- package/dist/styles/transitions.css +7 -7
- package/dist/styles/typography/scale.css +153 -0
- package/dist/styles/typography/semantic.css +220 -0
- package/dist/styles/typography/utilities.css +159 -0
- package/dist/styles/typography.css +23 -453
- package/dist/styles/utilities/a11y-overrides.css +169 -0
- package/dist/styles/utilities/animate.css +26 -0
- package/dist/styles/utilities/base.css +541 -0
- package/dist/styles/utilities/btn.css +218 -0
- package/dist/styles/utilities/components.css +317 -0
- package/dist/styles/utilities.css +19 -1318
- package/dist/styles/view-transition.css +4 -52
- package/dist/switch.js +1 -1
- package/dist/tabs.js +161 -181
- package/dist/timeline.js +2 -2
- package/dist/toast.js +1 -1
- package/dist/toggle-chip.js +3 -1
- package/dist/toggle-group.js +1 -1
- package/dist/tooltip.js +1 -1
- package/dist/typewriter.js +1 -1
- package/dist/{useAnimatedNumber-Bcpy5Etf.js → useAnimatedNumber-C_3wZLx4.js} +1 -1
- package/dist/useConfiguratorState-kiIlun8I.js +303 -0
- package/dist/useLiquidFlex-C12hXwOZ.js +30 -0
- package/dist/useRAFLoop-CdwJ7284.js +109 -0
- package/dist/{useScrollProgress-CffFGLa5.js → useScrollProgress-D7bYU2RK.js} +1 -1
- package/dist/useSpecularTracking-Bo5su68i.js +32 -0
- package/dist/useSpringMount-CvopqiFr.js +108 -0
- package/dist/useSurfaceAxis-CMnF2zHb.js +7 -0
- package/dist/{useTouchGate-WFyJYsth.js → useTouchGate-28Tk2-t2.js} +1 -1
- package/dist/useViewTransition-COsPjQVZ.js +47 -0
- package/dist/utils/coalesceMetric.d.ts +29 -0
- package/dist/utils/index.d.ts +1 -0
- package/dist/vReveal-D9k0jADx.js +10 -0
- package/dist/watercolor-dot.js +22 -13
- package/dist/{x-Dfsegz9Y.js → x-BUwTKe50.js} +1 -1
- package/package.json +134 -50
- package/src/styles/animations.css +25 -125
- package/src/styles/cards.css +53 -0
- package/src/styles/configurator.css +77 -0
- package/src/styles/dock/density.css +19 -0
- package/src/styles/dock/layer-group.css +83 -25
- package/src/styles/dock/layers.css +23 -1
- package/src/styles/dock/morph-bridge.css +123 -0
- package/src/styles/dock/morph.css +175 -45
- package/src/styles/dock/overflow.css +66 -1
- package/src/styles/dock/rail-extend.css +397 -0
- package/src/styles/dock/section.css +59 -0
- package/src/styles/dock/shell.css +97 -110
- package/src/styles/dock-controls/dark-mode-toggle.css +109 -0
- package/src/styles/dock-controls/icon-button.css +143 -0
- package/src/styles/dock-controls/tab-button.css +143 -0
- package/src/styles/dock-controls/touch-floor.css +94 -0
- package/src/styles/dock-controls/triggers.css +135 -0
- package/src/styles/dock-controls.css +30 -595
- package/src/styles/dock.css +8 -3
- package/src/styles/drawer.css +42 -0
- package/src/styles/feedback-tone.css +104 -0
- package/src/styles/floating-panel.css +15 -0
- package/src/styles/glass/a11y-fallback.css +245 -0
- package/src/styles/glass/ladder.css +383 -0
- package/src/styles/glass/material.css +238 -0
- package/src/styles/glass/progress-rail.css +78 -0
- package/src/styles/glass/squircle.css +66 -0
- package/src/styles/glass/surface-axis.css +113 -0
- package/src/styles/glass/surfaces.css +382 -0
- package/src/styles/glass.css +34 -1188
- package/src/styles/icon-chip.css +149 -0
- package/src/styles/index.css +93 -17
- package/src/styles/instrument-chassis.css +42 -0
- package/src/styles/menu.css +127 -0
- package/src/styles/paper.css +2 -68
- package/src/styles/segmented-tabs.css +340 -0
- package/src/styles/select.css +50 -0
- package/src/styles/theme/bridges.css +347 -0
- package/src/styles/theme/dark.css +7 -0
- package/src/styles/theme/literals.css +94 -0
- package/src/styles/theme/radius.css +95 -0
- package/src/styles/theme.css +26 -529
- package/src/styles/tokens/color-radius.css +287 -0
- package/src/styles/tokens/dark-arm.css +308 -0
- package/src/styles/tokens/glass.css +500 -0
- package/src/styles/tokens/light-dark.css +187 -0
- package/src/styles/tokens/offsets-sizing.css +562 -0
- package/src/styles/tokens/property-regs.css +162 -0
- package/src/styles/tokens/scale-paper.css +409 -0
- package/src/styles/tokens/scheme-motion.css +352 -0
- package/src/styles/tokens/shadow.css +166 -0
- package/src/styles/tokens.css +22 -2360
- package/src/styles/transitions.css +7 -7
- package/src/styles/typography/scale.css +153 -0
- package/src/styles/typography/semantic.css +220 -0
- package/src/styles/typography/utilities.css +159 -0
- package/src/styles/typography.css +23 -453
- package/src/styles/utilities/a11y-overrides.css +169 -0
- package/src/styles/utilities/animate.css +26 -0
- package/src/styles/utilities/base.css +541 -0
- package/src/styles/utilities/btn.css +218 -0
- package/src/styles/utilities/components.css +317 -0
- package/src/styles/utilities.css +19 -1318
- package/src/styles/view-transition.css +4 -52
- package/dist/CardAction-DuArVky-.js +0 -157
- package/dist/DeckProgress-Dmk4_AKN.js +0 -23
- package/dist/DialogContent-BRkT1cjP.js +0 -100
- package/dist/InstrumentRail-CUJ05YVG.js +0 -44
- package/dist/MetricBadge-BZVWIxNy.js +0 -80
- package/dist/PopoverContent-BId6ggf_.js +0 -121
- package/dist/TabsList-B8CVOQPC.js +0 -101
- package/dist/components/custom/deck-progress/DeckProgress.vue.d.ts +0 -27
- package/dist/components/custom/deck-progress/index.d.ts +0 -2
- package/dist/components/custom/dialog-native/GlassDialogNative.vue.d.ts +0 -57
- package/dist/components/custom/dialog-native/index.d.ts +0 -1
- package/dist/components/custom/instrument-rail/InstrumentRail.vue.d.ts +0 -91
- package/dist/components/custom/instrument-rail/index.d.ts +0 -2
- package/dist/components/ui/carousel/CarouselDots.vue.d.ts +0 -4
- package/dist/composables/motion/useRouteTransition.d.ts +0 -42
- package/dist/deck-progress.d.ts +0 -1
- package/dist/deck-progress.js +0 -2
- package/dist/dockContext-BKeIMmNk.js +0 -9
- package/dist/instrument-rail.d.ts +0 -1
- package/dist/instrument-rail.js +0 -2
- package/dist/sheet-VZEtNFvO.js +0 -214
- package/dist/styles/instrument-rail.css +0 -127
- package/dist/useConfiguratorState-DxAqksK6.js +0 -287
- package/dist/useGlassRenderer-D7YGOYiM.js +0 -69
- package/dist/useSpecularTracking-BVRZsRHA.js +0 -26
- package/dist/useSpringMount-BJSHcLl3.js +0 -113
- package/dist/useViewTransition-DaN5Zrox.js +0 -21
- package/dist/vReveal-zUIQk-rJ.js +0 -53
- package/src/styles/instrument-rail.css +0 -127
- /package/dist/{CollapsibleContent-CP9qF1v4.js → CollapsibleContent-C_s6fG7r.js} +0 -0
- /package/dist/{ContextMenuContent-DDa0v27s.js → ContextMenuContent-ON3x7cuk.js} +0 -0
- /package/dist/{HoverCardContent-B6CcQ8He.js → HoverCardContent-DkMaQzH5.js} +0 -0
- /package/dist/{Input-xuDwALQR.js → Input-DVG_J0ne.js} +0 -0
- /package/dist/{InstrumentChassis-C2f6cBaQ.js → InstrumentChassis-UUJX0-mW.js} +0 -0
- /package/dist/{Label-zRfbQdCn.js → Label-Ck9SWEKM.js} +0 -0
- /package/dist/{ModalOverlay-B1GkAjNb.js → ModalOverlay-CkPRRgl_.js} +0 -0
- /package/dist/{PaperBackdrop-CqwjnfLv.js → PaperBackdrop-nBKe0vkB.js} +0 -0
- /package/dist/{SelectGroup-BFiod7X2.js → SelectGroup-Dcczq44n.js} +0 -0
- /package/dist/{SelectSeparator-C4Ql0gzV.js → SelectSeparator-DK2y1Bun.js} +0 -0
- /package/dist/{Separator-D7sD7RKj.js → Separator-BArl4OaB.js} +0 -0
- /package/dist/{TooltipProvider-CmZzCuaG.js → TooltipProvider-B3MkB_8P.js} +0 -0
- /package/dist/{_plugin-vue_export-helper-ok8pgSl5.js → _plugin-vue_export-helper-CBt_VvXa.js} +0 -0
- /package/dist/{compile-BOXjLUxu.js → compile-EXXzEr1q.js} +0 -0
- /package/dist/{constants-yKeKnE84.js → constants-BPOqYJAm.js} +0 -0
- /package/dist/{createContext-B44Sah_H.js → createContext-B2RaZ-b8.js} +0 -0
- /package/dist/{createLucideIcon-B6uNAU9G.js → createLucideIcon-DydS2qgk.js} +0 -0
- /package/dist/{presets-BP_ALM0m.js → presets-BW2b-fr1.js} +0 -0
- /package/dist/{prng-D27-B3tK.js → prng-Cg22zv8g.js} +0 -0
- /package/dist/{supportsCssTimeline-C5oe0lnD.js → supportsCssTimeline-BWenxvHU.js} +0 -0
- /package/dist/{useGlobalDark-CAhOXNLO.js → useGlobalDark-C28t0VWJ.js} +0 -0
- /package/dist/{useIntersectionPause-Cck5Uxk8.js → useIntersectionPause-Bj4sPkMh.js} +0 -0
- /package/dist/{useInterval-Dsmqwi03.js → useInterval-CNdua40W.js} +0 -0
- /package/dist/{useKeyboardShortcuts-CyIYrndH.js → useKeyboardShortcuts-BXWXOZ-9.js} +0 -0
- /package/dist/{useResizeObserver-CWCbk5Px.js → useResizeObserver-V6nq5gJb.js} +0 -0
- /package/dist/{useResolveTokenColor-r9pnNjqK.js → useResolveTokenColor-NUG2zYAW.js} +0 -0
- /package/dist/{useSortable-C8ReQ50P.js → useSortable-BVqlJRBR.js} +0 -0
- /package/dist/{useTextHighlight-CWEi25hf.js → useTextHighlight-NmBM5V_4.js} +0 -0
- /package/dist/{useTimer-3xqf_54b.js → useTimer-B_PAasDL.js} +0 -0
- /package/dist/{useUserInvalidAria-DoJKMZ3s.js → useUserInvalidAria-CDfJuakL.js} +0 -0
- /package/dist/{useViewportReady-RIr5Wgkh.js → useViewportReady-CvBcCYDf.js} +0 -0
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
.fade-slide-enter-active {
|
|
24
24
|
transition:
|
|
25
25
|
opacity var(--duration-normal) var(--ease-out),
|
|
26
|
-
transform var(--duration
|
|
26
|
+
transform var(--spring-smooth-duration) var(--spring-smooth);
|
|
27
27
|
}
|
|
28
28
|
.fade-slide-leave-active {
|
|
29
29
|
transition:
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
.dialog-scale-enter-active {
|
|
44
44
|
transition:
|
|
45
45
|
opacity var(--duration-slow) var(--ease-out),
|
|
46
|
-
transform var(--duration
|
|
46
|
+
transform var(--spring-bouncy-duration) var(--spring-bouncy);
|
|
47
47
|
}
|
|
48
48
|
.dialog-scale-leave-active {
|
|
49
49
|
transition:
|
|
@@ -63,7 +63,7 @@
|
|
|
63
63
|
.pop-enter-active {
|
|
64
64
|
transition:
|
|
65
65
|
opacity var(--duration-fast) var(--ease-out),
|
|
66
|
-
transform var(--duration
|
|
66
|
+
transform var(--spring-bouncy-duration) var(--spring-bouncy);
|
|
67
67
|
}
|
|
68
68
|
.pop-leave-active {
|
|
69
69
|
transition:
|
|
@@ -83,7 +83,7 @@
|
|
|
83
83
|
.dropdown-enter-active {
|
|
84
84
|
transition:
|
|
85
85
|
opacity var(--duration-instant) var(--ease-out),
|
|
86
|
-
transform var(--duration
|
|
86
|
+
transform var(--spring-snappy-duration) var(--spring-snappy);
|
|
87
87
|
}
|
|
88
88
|
.dropdown-leave-active {
|
|
89
89
|
transition:
|
|
@@ -110,7 +110,7 @@
|
|
|
110
110
|
.pane-swap-enter-active {
|
|
111
111
|
transition:
|
|
112
112
|
opacity var(--duration-normal) var(--ease-out),
|
|
113
|
-
transform var(--duration
|
|
113
|
+
transform var(--spring-smooth-duration) var(--spring-smooth);
|
|
114
114
|
}
|
|
115
115
|
.pane-swap-leave-active {
|
|
116
116
|
transition:
|
|
@@ -130,7 +130,7 @@
|
|
|
130
130
|
.metric-swap-enter-active {
|
|
131
131
|
transition:
|
|
132
132
|
opacity var(--duration-normal) var(--ease-out),
|
|
133
|
-
transform var(--duration
|
|
133
|
+
transform var(--spring-smooth-duration) var(--spring-smooth);
|
|
134
134
|
}
|
|
135
135
|
.metric-swap-leave-active {
|
|
136
136
|
transition:
|
|
@@ -145,7 +145,7 @@
|
|
|
145
145
|
|
|
146
146
|
/* ── Dock entrance utility ── */
|
|
147
147
|
.dock-in {
|
|
148
|
-
animation: dock-in var(--duration
|
|
148
|
+
animation: dock-in var(--spring-snappy-duration) var(--spring-snappy) both;
|
|
149
149
|
transform-origin: center bottom;
|
|
150
150
|
}
|
|
151
151
|
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
/* typography/scale.css — the OFL face FILES + the :root --type-* SCALE tokens.
|
|
2
|
+
*
|
|
3
|
+
* Carved from typography.css (BA.W-CARVE2) — the FACE declarations (the
|
|
4
|
+
* calibrated `local()` fallback faces for Plus Jakarta Sans + Fira Code) and
|
|
5
|
+
* the √φ scale-number :root block. @import-ed FIRST by the typography.css thin
|
|
6
|
+
* root (the faces + scale numbers must precede the semantic classes that read
|
|
7
|
+
* them). The carve moves rules in the SAME cascade position → byte-isomorphic
|
|
8
|
+
* dist (the no-god-module import-order gate is the witness). */
|
|
9
|
+
|
|
10
|
+
/* ═══════════════════════════════════════════════
|
|
11
|
+
OFL FACE FILES — Plus Jakarta Sans (brand display)
|
|
12
|
+
═══════════════════════════════════════════════ */
|
|
13
|
+
|
|
14
|
+
/* The payload-bearing "Plus Jakarta Sans" faces live in `fonts.css`
|
|
15
|
+
(`@mkbabb/glass-ui/styles/fonts`), split off the critical entry path so
|
|
16
|
+
`./styles` does not carry the ~99 KB-gzipped font binary. The calibrated
|
|
17
|
+
`local()` fallback face below carries NO payload, stays on the critical
|
|
18
|
+
path, and paints during the `font-display: optional` window. Its metric
|
|
19
|
+
overrides (per system face) were derived via @capsizecss/core's
|
|
20
|
+
`createFontStack` against the bundled latin woff2 — the swap is metrically
|
|
21
|
+
neutral (no CLS). */
|
|
22
|
+
@font-face {
|
|
23
|
+
font-family: "Plus Jakarta Sans Fallback";
|
|
24
|
+
src:
|
|
25
|
+
local("System Font"), local(".SFNS-Regular"), local(".SFNSText-Regular"),
|
|
26
|
+
local("-apple-system");
|
|
27
|
+
ascent-override: 92.3784%;
|
|
28
|
+
descent-override: 19.7572%;
|
|
29
|
+
size-adjust: 112.3639%;
|
|
30
|
+
}
|
|
31
|
+
@font-face {
|
|
32
|
+
font-family: "Plus Jakarta Sans Fallback";
|
|
33
|
+
src: local("Segoe UI"), local("SegoeUI");
|
|
34
|
+
ascent-override: 98.3348%;
|
|
35
|
+
descent-override: 21.0311%;
|
|
36
|
+
size-adjust: 105.5577%;
|
|
37
|
+
}
|
|
38
|
+
@font-face {
|
|
39
|
+
font-family: "Plus Jakarta Sans Fallback";
|
|
40
|
+
src: local("Roboto Regular"), local("Roboto-Regular");
|
|
41
|
+
ascent-override: 98.6597%;
|
|
42
|
+
descent-override: 21.1006%;
|
|
43
|
+
size-adjust: 105.2101%;
|
|
44
|
+
}
|
|
45
|
+
@font-face {
|
|
46
|
+
font-family: "Plus Jakarta Sans Fallback";
|
|
47
|
+
src: local("Arial"), local("ArialMT");
|
|
48
|
+
ascent-override: 98.8763%;
|
|
49
|
+
descent-override: 21.147%;
|
|
50
|
+
line-gap-override: 0%;
|
|
51
|
+
size-adjust: 104.9796%;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
/* ═══════════════════════════════════════════════
|
|
55
|
+
OFL FACE FILES — Fira Code (canonical mono)
|
|
56
|
+
═══════════════════════════════════════════════ */
|
|
57
|
+
|
|
58
|
+
/* The payload-bearing "Fira Code" faces live in `fonts.css`
|
|
59
|
+
(`@mkbabb/glass-ui/styles/fonts`), split off the critical entry path. The
|
|
60
|
+
calibrated `local()` fallback face below carries NO payload, stays on the
|
|
61
|
+
critical path, and covers the `font-display: swap` window. Its metric
|
|
62
|
+
overrides reference Roboto Mono (the platform monos cluster within ~2%);
|
|
63
|
+
size-adjust ≈ 1.0 makes the swap geometrically transparent. */
|
|
64
|
+
@font-face {
|
|
65
|
+
font-family: "Fira Code Fallback";
|
|
66
|
+
src:
|
|
67
|
+
local("SF Mono"), local("SFMono-Regular"), local("Menlo"), local("Consolas"),
|
|
68
|
+
local("Courier New"), local("Roboto Mono Regular");
|
|
69
|
+
ascent-override: 99.0161%;
|
|
70
|
+
descent-override: 32.2052%;
|
|
71
|
+
size-adjust: 99.9837%;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
:root {
|
|
75
|
+
/* Font family tokens. `--font-text` / `--font-display` / `--font-serif` /
|
|
76
|
+
`--font-mono` are NOT declared here — their source-of-truth lives in
|
|
77
|
+
tokens.css §0 (`--font-stack-*`), bridged to Tailwind via theme.css's
|
|
78
|
+
`@theme` block; declaring `:root` literals here would shadow consumer
|
|
79
|
+
`@theme` overrides (un-layered `:root` wins over `@layer theme`). The
|
|
80
|
+
self-hosted faces above expose `"Plus Jakarta Sans"` + `"Fira Code"`,
|
|
81
|
+
each pairing with a calibrated `"... Fallback"`. The brand text register
|
|
82
|
+
(Plus Jakarta Sans) engages by default for every consumer; --font-mono
|
|
83
|
+
references `"Fira Code"` first then the fallback chain. */
|
|
84
|
+
|
|
85
|
+
/* Scale tokens */
|
|
86
|
+
--type-admin-label: 0.625rem; /* 10px — fixed sub-control micro (NOT fluid) */
|
|
87
|
+
--type-micro: 0.6875rem; /* 11px — fixed sub-control micro (NOT fluid) */
|
|
88
|
+
/* BODY/CONTROL register (AY.W-SCALE1 — the desktop-fluid half of corpus #4):
|
|
89
|
+
a GENTLE clamp() viewport base so the control/body register grows ~1-2 steps
|
|
90
|
+
on a wide display (the 27" "font too small" the user flagged) WITHOUT a
|
|
91
|
+
media-query staircase. The <min> of every clamp is the rung's prior fixed rem
|
|
92
|
+
— byte-identical at narrow/mobile (no shipped-narrow reflow; the coarse 1.5×
|
|
93
|
+
--ui-scale still lifts the comfort axis ON TOP). The vw slope is the body
|
|
94
|
+
register's GENTLE slope (not the φ-display ladder's aggressive vw) — the
|
|
95
|
+
"non-contrived" bar. The vw fluid term lives HERE (the typographic base),
|
|
96
|
+
exactly ONCE; the --ui-scale comfort scalar multiplies it exactly ONCE LATER
|
|
97
|
+
(tokens.css --control-text/-sm) — NO double-vw under coarse. The φ-identity
|
|
98
|
+
rungs below (--type-subheading/-heading/-title + the --type-display-* ladder)
|
|
99
|
+
are EXCLUDED — a hero/title is a typographic identity, not a control. */
|
|
100
|
+
--type-caption: clamp(
|
|
101
|
+
0.75rem,
|
|
102
|
+
0.71rem + 0.21vw,
|
|
103
|
+
1rem
|
|
104
|
+
); /* 12px floor — --control-text-sm source */
|
|
105
|
+
--type-small: clamp(
|
|
106
|
+
0.875rem,
|
|
107
|
+
0.8rem + 0.25vw,
|
|
108
|
+
1.25rem
|
|
109
|
+
); /* 14px floor — --control-text source (the workhorse) */
|
|
110
|
+
--type-body: clamp(
|
|
111
|
+
1rem,
|
|
112
|
+
0.92rem + 0.27vw,
|
|
113
|
+
1.375rem
|
|
114
|
+
); /* 16px floor — global body cascade */
|
|
115
|
+
--type-prose: clamp(
|
|
116
|
+
1.125rem,
|
|
117
|
+
1.04rem + 0.28vw,
|
|
118
|
+
1.5rem
|
|
119
|
+
); /* 18px floor — long-form prose */
|
|
120
|
+
--type-subheading: 1.272rem; /* 20.4px — √φ */
|
|
121
|
+
--type-heading: 1.618rem; /* 25.9px — φ */
|
|
122
|
+
--type-title: 2.058rem; /* 32.9px — φ^(3/2) */
|
|
123
|
+
--type-display-1: clamp(1.618rem, 1.2rem + 1.6vw, 2.618rem); /* φ^2 */
|
|
124
|
+
--type-display-2: clamp(2.058rem, 1.5rem + 2.2vw, 3.33rem); /* φ^(5/2) */
|
|
125
|
+
--type-display-3: clamp(2.618rem, 2rem + 3vw, 4.236rem); /* φ^3 */
|
|
126
|
+
--type-display-4: clamp(3.33rem, 2.5rem + 4vw, 5.382rem); /* φ^(7/2) */
|
|
127
|
+
--type-display-5: clamp(4.236rem, 3.5rem + 6vw, 6.854rem); /* φ^4 */
|
|
128
|
+
/* Audacious display tier (v1.0.3). Extends the φ-ladder three rungs
|
|
129
|
+
beyond display-5 for poster-type consumers (speedtest hero,
|
|
130
|
+
dashboard pane titles when the consumer wants the number to win).
|
|
131
|
+
Same vw-axis as display-1..5 — consumer-agnostic. */
|
|
132
|
+
--type-display-mega: clamp(
|
|
133
|
+
5.382rem,
|
|
134
|
+
4rem + 9vw,
|
|
135
|
+
11.089rem
|
|
136
|
+
); /* φ^(9/2) — peak 177px */
|
|
137
|
+
--type-display-hero: clamp(
|
|
138
|
+
6.854rem,
|
|
139
|
+
4.5rem + 12vw,
|
|
140
|
+
17.942rem
|
|
141
|
+
); /* φ^5 — peak 287px */
|
|
142
|
+
--type-display-audacious: clamp(
|
|
143
|
+
8.728rem,
|
|
144
|
+
5rem + 16vw,
|
|
145
|
+
22rem
|
|
146
|
+
); /* φ^(11/2) — peak 352px (fast.com peg) */
|
|
147
|
+
|
|
148
|
+
/* Line heights & letter spacing live at tokens.css §0 as the canonical
|
|
149
|
+
--type-leading-* / --type-tracking-* rungs. theme.css bridges them
|
|
150
|
+
to Tailwind's `leading-*` / `tracking-*` utilities. The duplicate
|
|
151
|
+
--leading-* / --tracking-* declarations that previously sat here
|
|
152
|
+
were retired in v0.8.6 (audit U.W0.C-c §1.1 / Union 2). */
|
|
153
|
+
}
|
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
/* typography/semantic.css — the BODY cascade + the DISPLAY / HEADING / BODY /
|
|
2
|
+
* MICRO / ADMIN-LABEL semantic type classes.
|
|
3
|
+
*
|
|
4
|
+
* Carved from typography.css (BA.W-CARVE2) — the semantic register classes
|
|
5
|
+
* that read the scale tokens declared in typography/scale.css. @import-ed
|
|
6
|
+
* SECOND by the typography.css thin root (after the faces+scale, before the
|
|
7
|
+
* aux/mono utilities). The carve moves rules in the SAME cascade position →
|
|
8
|
+
* byte-isomorphic dist (the no-god-module import-order gate is the witness). */
|
|
9
|
+
|
|
10
|
+
/* ═══════════════════════════════════════════════
|
|
11
|
+
BODY CASCADE — the brand text register inherits globally
|
|
12
|
+
═══════════════════════════════════════════════ */
|
|
13
|
+
body {
|
|
14
|
+
font-family: var(--font-text);
|
|
15
|
+
color: var(--foreground);
|
|
16
|
+
font-size: var(--type-body);
|
|
17
|
+
line-height: var(--type-leading-body);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
/* ═══════════════════════════════════════════════
|
|
21
|
+
DISPLAY — Plus Jakarta Sans display, tracking-tight
|
|
22
|
+
═══════════════════════════════════════════════ */
|
|
23
|
+
@utility text-display-audacious {
|
|
24
|
+
font-family: var(--font-display);
|
|
25
|
+
font-size: var(--type-display-audacious);
|
|
26
|
+
line-height: var(--type-leading-display);
|
|
27
|
+
letter-spacing: var(--type-tracking-tight);
|
|
28
|
+
font-optical-sizing: auto;
|
|
29
|
+
font-weight: 600;
|
|
30
|
+
/* AQ.W3 §W3.3 — balance multi-line display headlines. Text-only (no box) so
|
|
31
|
+
balance is safe; degrades to unbalanced wrapping with zero break. */
|
|
32
|
+
text-wrap: balance;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
/* `.text-hero` — the poster-type hero register. Ceiling pegs to
|
|
36
|
+
`--type-display-audacious` (φ^(11/2) — peak 352px). Three knobs tune without
|
|
37
|
+
forking: `--text-hero-size` (total clamp), `--text-hero-leading` (line-height,
|
|
38
|
+
default 0.84), `--text-hero-tracking` (letter-spacing, default -0.03em).
|
|
39
|
+
`font-weight: 300` + `font-feature-settings: ss01, tnum, lnum` lock the
|
|
40
|
+
numeric/stylistic baseline; consumer data-attribute registers compose on top. */
|
|
41
|
+
@utility text-hero {
|
|
42
|
+
font-family: var(--font-display);
|
|
43
|
+
font-size: var(--text-hero-size, var(--type-display-audacious));
|
|
44
|
+
line-height: var(--text-hero-leading, 0.84);
|
|
45
|
+
letter-spacing: var(--text-hero-tracking, -0.03em);
|
|
46
|
+
font-weight: 300;
|
|
47
|
+
font-feature-settings: "ss01", "tnum", "lnum";
|
|
48
|
+
font-variant-numeric: tabular-nums lining-nums;
|
|
49
|
+
font-optical-sizing: auto;
|
|
50
|
+
display: inline-block;
|
|
51
|
+
max-inline-size: 100%;
|
|
52
|
+
/* AQ.W3 §W3.3 — `text-wrap: nowrap` (modern) sits AFTER `white-space:
|
|
53
|
+
nowrap` (legacy fallback) so supporting engines honor the modern form and
|
|
54
|
+
older ones fall through to `white-space`. Forgiving parse, no `@supports`. */
|
|
55
|
+
white-space: nowrap;
|
|
56
|
+
text-wrap: nowrap;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
@utility text-display-hero {
|
|
60
|
+
font-family: var(--font-display);
|
|
61
|
+
font-size: var(--type-display-hero);
|
|
62
|
+
line-height: var(--type-leading-display);
|
|
63
|
+
letter-spacing: var(--type-tracking-tight);
|
|
64
|
+
font-optical-sizing: auto;
|
|
65
|
+
font-weight: 600;
|
|
66
|
+
text-wrap: balance; /* AQ.W3 §W3.3 */
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
@utility text-display-mega {
|
|
70
|
+
font-family: var(--font-display);
|
|
71
|
+
font-size: var(--type-display-mega);
|
|
72
|
+
line-height: var(--type-leading-display);
|
|
73
|
+
letter-spacing: var(--type-tracking-tight);
|
|
74
|
+
font-optical-sizing: auto;
|
|
75
|
+
font-weight: 600;
|
|
76
|
+
text-wrap: balance; /* AQ.W3 §W3.3 */
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
@utility text-display-5 {
|
|
80
|
+
font-family: var(--font-display);
|
|
81
|
+
font-size: var(--type-display-5);
|
|
82
|
+
line-height: var(--type-leading-display);
|
|
83
|
+
letter-spacing: var(--type-tracking-tight);
|
|
84
|
+
font-optical-sizing: auto;
|
|
85
|
+
font-weight: 600;
|
|
86
|
+
text-wrap: balance; /* AQ.W3 §W3.3 */
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
@utility text-display-4 {
|
|
90
|
+
font-family: var(--font-display);
|
|
91
|
+
font-size: var(--type-display-4);
|
|
92
|
+
line-height: var(--type-leading-display);
|
|
93
|
+
letter-spacing: var(--type-tracking-tight);
|
|
94
|
+
font-optical-sizing: auto;
|
|
95
|
+
font-weight: 600;
|
|
96
|
+
text-wrap: balance; /* AQ.W3 §W3.3 */
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
@utility text-display-3 {
|
|
100
|
+
font-family: var(--font-display);
|
|
101
|
+
font-size: var(--type-display-3);
|
|
102
|
+
line-height: var(--type-leading-display);
|
|
103
|
+
letter-spacing: var(--type-tracking-tight);
|
|
104
|
+
font-optical-sizing: auto;
|
|
105
|
+
font-weight: 600;
|
|
106
|
+
text-wrap: balance; /* AQ.W3 §W3.3 */
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
@utility text-display-2 {
|
|
110
|
+
font-family: var(--font-display);
|
|
111
|
+
font-size: var(--type-display-2);
|
|
112
|
+
line-height: var(--type-leading-display);
|
|
113
|
+
letter-spacing: var(--type-tracking-tight);
|
|
114
|
+
font-optical-sizing: auto;
|
|
115
|
+
font-weight: 600;
|
|
116
|
+
text-wrap: balance; /* AQ.W3 §W3.3 */
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
@utility text-display {
|
|
120
|
+
font-family: var(--font-display);
|
|
121
|
+
font-size: var(--type-display-1);
|
|
122
|
+
line-height: var(--type-leading-display);
|
|
123
|
+
letter-spacing: var(--type-tracking-tight);
|
|
124
|
+
font-optical-sizing: auto;
|
|
125
|
+
font-weight: 600;
|
|
126
|
+
text-wrap: balance; /* AQ.W3 §W3.3 */
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
/* ═══════════════════════════════════════════════
|
|
130
|
+
HEADINGS / BODY — Plus Jakarta Sans text register
|
|
131
|
+
═══════════════════════════════════════════════ */
|
|
132
|
+
@utility text-title {
|
|
133
|
+
font-family: var(--font-text);
|
|
134
|
+
font-size: var(--type-title);
|
|
135
|
+
line-height: var(--type-leading-heading);
|
|
136
|
+
letter-spacing: var(--type-tracking-tight);
|
|
137
|
+
font-weight: 700;
|
|
138
|
+
text-wrap: balance; /* AQ.W3 §W3.3 */
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
@utility text-heading {
|
|
142
|
+
font-family: var(--font-text);
|
|
143
|
+
font-size: var(--type-heading);
|
|
144
|
+
line-height: var(--type-leading-heading);
|
|
145
|
+
font-weight: 700;
|
|
146
|
+
text-wrap: balance; /* AQ.W3 §W3.3 */
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
@utility text-subheading {
|
|
150
|
+
font-family: var(--font-text);
|
|
151
|
+
font-size: var(--type-subheading);
|
|
152
|
+
line-height: var(--type-leading-body);
|
|
153
|
+
font-weight: 600;
|
|
154
|
+
text-wrap: balance; /* AQ.W3 §W3.3 */
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
/* Canonical dock control label register — text labels INSIDE
|
|
158
|
+
`.dock-tab-button` (Start, Next, Submit, …) that want an emphatic character
|
|
159
|
+
without `.text-heading`'s `font-weight: 700` (which reads as literal bold in
|
|
160
|
+
a dock pill). Composes the `--dock-label-size` knob when set (dock.css
|
|
161
|
+
audacious mobile carve), else `--type-subheading`. Weight 400 — Plus Jakarta
|
|
162
|
+
reads heavier than its numeric weight at pill size, so regular is the
|
|
163
|
+
not-bold register. */
|
|
164
|
+
@utility dock-label {
|
|
165
|
+
font-family: var(--font-text);
|
|
166
|
+
font-size: var(--dock-label-size, var(--type-subheading));
|
|
167
|
+
line-height: var(--type-leading-body);
|
|
168
|
+
font-weight: 400;
|
|
169
|
+
letter-spacing: var(--type-tracking-normal);
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
@utility text-prose {
|
|
173
|
+
font-family: var(--font-text);
|
|
174
|
+
font-size: var(--type-prose);
|
|
175
|
+
line-height: var(--type-leading-prose);
|
|
176
|
+
font-weight: 400;
|
|
177
|
+
/* AQ.W3 §W3.3 — `pretty` fixes orphans/rivers in prose. Prose registers
|
|
178
|
+
only (not every text class); degrades to default wrapping, zero break. */
|
|
179
|
+
text-wrap: pretty;
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
@utility text-body {
|
|
183
|
+
font-family: var(--font-text);
|
|
184
|
+
font-size: var(--type-body);
|
|
185
|
+
line-height: var(--type-leading-body);
|
|
186
|
+
font-weight: 400;
|
|
187
|
+
text-wrap: pretty; /* AQ.W3 §W3.3 */
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
@utility text-small {
|
|
191
|
+
font-family: var(--font-text);
|
|
192
|
+
font-size: var(--type-small);
|
|
193
|
+
line-height: var(--type-leading-small);
|
|
194
|
+
font-weight: 400;
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
@utility text-caption {
|
|
198
|
+
font-family: var(--font-text);
|
|
199
|
+
font-size: var(--type-caption);
|
|
200
|
+
line-height: var(--type-leading-caption);
|
|
201
|
+
font-style: italic;
|
|
202
|
+
font-weight: 400;
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
/* ═══════════════════════════════════════════════
|
|
206
|
+
MICRO / ADMIN LABEL — Fira Code
|
|
207
|
+
═══════════════════════════════════════════════ */
|
|
208
|
+
@utility text-micro {
|
|
209
|
+
font-size: var(--type-micro);
|
|
210
|
+
line-height: 1.25;
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
@utility text-admin-label {
|
|
214
|
+
font-family: var(--font-mono);
|
|
215
|
+
font-size: var(--type-admin-label);
|
|
216
|
+
line-height: 1;
|
|
217
|
+
text-transform: uppercase;
|
|
218
|
+
letter-spacing: var(--type-tracking-caps);
|
|
219
|
+
font-weight: 500;
|
|
220
|
+
}
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
/* typography/utilities.css — the MATH / MONO / FONT-FAMILY / ORNAMENTAL / AUX
|
|
2
|
+
* registers.
|
|
3
|
+
*
|
|
4
|
+
* Carved from typography.css (BA.W-CARVE2) — the math/mono variants, the
|
|
5
|
+
* font-family utilities (.cm-serif/.fira-code), the ornamental .fourier-f, and
|
|
6
|
+
* the @layer components AUX section-label/pane-title/kinetic hooks. @import-ed
|
|
7
|
+
* LAST by the typography.css thin root (after the faces+scale and the semantic
|
|
8
|
+
* classes). The carve moves rules in the SAME cascade position →
|
|
9
|
+
* byte-isomorphic dist (the no-god-module import-order gate is the witness). */
|
|
10
|
+
|
|
11
|
+
/* ═══════════════════════════════════════════════
|
|
12
|
+
MATH — Plus Jakarta Sans italic
|
|
13
|
+
═══════════════════════════════════════════════ */
|
|
14
|
+
@utility text-math {
|
|
15
|
+
font-family: var(--font-text);
|
|
16
|
+
font-style: italic;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
@utility text-math-body {
|
|
20
|
+
font-family: var(--font-text);
|
|
21
|
+
font-size: var(--type-prose);
|
|
22
|
+
line-height: var(--type-leading-prose);
|
|
23
|
+
font-style: italic;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/* ═══════════════════════════════════════════════
|
|
27
|
+
MONO variants
|
|
28
|
+
═══════════════════════════════════════════════ */
|
|
29
|
+
@utility text-mono-caption {
|
|
30
|
+
font-family: var(--font-mono);
|
|
31
|
+
font-size: var(--type-caption);
|
|
32
|
+
letter-spacing: var(--type-tracking-wider);
|
|
33
|
+
text-transform: uppercase;
|
|
34
|
+
font-weight: 500;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
@utility text-mono-small {
|
|
38
|
+
font-family: var(--font-mono);
|
|
39
|
+
font-size: var(--type-small);
|
|
40
|
+
line-height: var(--type-leading-small);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
@utility text-mono-prose {
|
|
44
|
+
font-family: var(--font-mono);
|
|
45
|
+
font-size: var(--type-prose);
|
|
46
|
+
line-height: var(--type-leading-prose);
|
|
47
|
+
letter-spacing: 0.02em;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
@utility text-mono-micro {
|
|
51
|
+
font-family: var(--font-mono);
|
|
52
|
+
font-size: var(--type-micro);
|
|
53
|
+
line-height: 1.25;
|
|
54
|
+
letter-spacing: 0.025em;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
/* ═══════════════════════════════════════════════
|
|
58
|
+
FONT FAMILY UTILITIES
|
|
59
|
+
═══════════════════════════════════════════════ */
|
|
60
|
+
/* .cm-serif — the Computer-Modern math/serif voice. A DISTINCT face from the
|
|
61
|
+
brand text register: it resolves to the consumer-supplied serif (system
|
|
62
|
+
serif by default; a math consumer maps Computer Modern / KaTeX over it). It
|
|
63
|
+
is NOT the Plus Jakarta text register — the one serif survivor of the
|
|
64
|
+
register reconciliation. */
|
|
65
|
+
@utility cm-serif {
|
|
66
|
+
font-family: var(--font-serif-math, serif);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
@utility fira-code {
|
|
70
|
+
font-family: var(--font-mono);
|
|
71
|
+
font-feature-settings: "liga", "calt";
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
/* ═══════════════════════════════════════════════
|
|
75
|
+
ORNAMENTAL — Fourier F
|
|
76
|
+
═══════════════════════════════════════════════ */
|
|
77
|
+
@utility fourier-f {
|
|
78
|
+
font-family: var(--font-display);
|
|
79
|
+
font-style: italic;
|
|
80
|
+
font-size: 1.35em;
|
|
81
|
+
line-height: 1;
|
|
82
|
+
vertical-align: -0.05em;
|
|
83
|
+
font-weight: 700;
|
|
84
|
+
display: inline-block;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
/* ═══════════════════════════════════════════════
|
|
88
|
+
AUX — section label, pane title, kinetic hooks
|
|
89
|
+
═══════════════════════════════════════════════ */
|
|
90
|
+
@layer components {
|
|
91
|
+
/* Responsive pane title */
|
|
92
|
+
.text-pane-title {
|
|
93
|
+
font-family: var(--font-display);
|
|
94
|
+
font-size: clamp(2.4rem, 1.8rem + 2vw, 3.33rem);
|
|
95
|
+
line-height: var(--type-leading-display);
|
|
96
|
+
letter-spacing: var(--type-tracking-tight);
|
|
97
|
+
font-weight: 600;
|
|
98
|
+
font-optical-sizing: auto;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
/* AV.W16 TW3 — the pane title scales off its PANE's box, not the viewport.
|
|
102
|
+
An unnamed @container query resolves to the nearest ancestor container,
|
|
103
|
+
so the title grows once its pane clears 40rem (≈ 640px) regardless of the
|
|
104
|
+
viewport. Contract: the consuming pane sets `container-type: inline-size`
|
|
105
|
+
(the dock/chassis pattern); without a container ancestor the compact base
|
|
106
|
+
holds. */
|
|
107
|
+
@container (min-width: 40rem) {
|
|
108
|
+
.text-pane-title {
|
|
109
|
+
font-size: var(--type-display-3);
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
/* Section label (mono, small caps) */
|
|
114
|
+
.section-label {
|
|
115
|
+
font-family: var(--font-mono);
|
|
116
|
+
font-size: var(--type-caption);
|
|
117
|
+
color: var(--muted-foreground);
|
|
118
|
+
text-transform: uppercase;
|
|
119
|
+
letter-spacing: var(--type-tracking-caps);
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
/* Section-accent eyebrow (AZ.W-SUFFUSE D3-7 / D1-8). ONE coherent
|
|
123
|
+
section-accent register — the colored mono eyebrow reads as an
|
|
124
|
+
intentional system, not a four-hue rainbow. The accent reads a single
|
|
125
|
+
`--section-label-accent` knob (default `--section-color-7`, the violet
|
|
126
|
+
brand anchor) so a page tints its whole eyebrow column at ONE chroma
|
|
127
|
+
from one override, NOT a different hue per section. This is the
|
|
128
|
+
one-color-event rule at PAGE scope: the eyebrow is the page's ONE
|
|
129
|
+
accent identity. The label/value/body ink below stays neutral. */
|
|
130
|
+
.section-label--tinted {
|
|
131
|
+
color: var(--section-label-accent, var(--section-color-7));
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
/* Font-feature helpers */
|
|
135
|
+
.tabular-nums {
|
|
136
|
+
font-variant-numeric: tabular-nums;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
/* Kinetic: per-character stagger */
|
|
140
|
+
.char-stagger > .char {
|
|
141
|
+
display: inline-block;
|
|
142
|
+
animation: fade-in var(--spring-smooth-duration) var(--spring-smooth, ease) backwards;
|
|
143
|
+
animation-delay: calc(var(--char-index, 0) * 30ms);
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
/* Letter-pressed treatment — reads as text engraved into the panel
|
|
147
|
+
surface. Speedtest's idle hero `0` consumes this via
|
|
148
|
+
`.text-hero[data-idle="true"]`; the `text-engraved` utility is the
|
|
149
|
+
glass-ui contract that any consumer can apply for the same look.
|
|
150
|
+
Opacity dropped in P.W1.B — the audacious canon mutes by colour
|
|
151
|
+
(`--muted-foreground`), not by alpha; opacity ≤ 0.4 over a glass
|
|
152
|
+
surface read as a fade, not as engraving. */
|
|
153
|
+
.text-engraved {
|
|
154
|
+
color: var(--muted-foreground);
|
|
155
|
+
/* AW.W26 — composes the `--text-shadow-engraved` @theme identity token
|
|
156
|
+
(the two-stop emboss) instead of a hand-rolled literal (gate 4). */
|
|
157
|
+
text-shadow: var(--text-shadow-engraved);
|
|
158
|
+
}
|
|
159
|
+
}
|