@mkbabb/glass-ui 3.10.0 → 3.10.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{CardAction-DuArVky-.js → CardAction-DrAcAV4d.js} +2 -2
- package/dist/{CommandShortcut-CefCj5mt.js → CommandShortcut-mV2e1aG6.js} +2 -2
- package/dist/{DataTable-CUHMukiQ.js → DataTable-C3E6jZ5B.js} +2 -2
- package/dist/{DialogContent-BRkT1cjP.js → DialogContent-BxaaafFi.js} +1 -1
- package/dist/{HoverPopover-2LOIW34a.js → HoverPopover-CDA_SaCe.js} +1 -1
- package/dist/{MetricBadge-BZVWIxNy.js → MetricBadge-idgrkqoP.js} +5 -7
- package/dist/{Notification-DLMhblXR.js → Notification-Cu0nN17_.js} +1 -1
- package/dist/{NumberFieldContent-BbLOh8RU.js → NumberFieldContent-CHEWghnY.js} +2 -2
- package/dist/{PopoverContent-BId6ggf_.js → PopoverContent-DpUvdYY-.js} +1 -1
- package/dist/{Progress-iEuD9pxG.js → Progress-BW-StFw2.js} +1 -1
- package/dist/{ScrollingText-BPP84wKo.js → ScrollingText-DruYCni_.js} +1 -1
- package/dist/{SelectScrollDownButton-T32cVFeM.js → SelectScrollDownButton-pirzjm--.js} +3 -3
- package/dist/{Switch-Ch-k3Rv-.js → Switch-DeAqg6pi.js} +1 -1
- package/dist/{TabsList-B8CVOQPC.js → TabsList-BAVzOZpg.js} +2 -2
- package/dist/{Toaster-1rYWrmAm.js → Toaster-CvuuW_y9.js} +49 -46
- package/dist/{ToggleGroupItem-Cev4pOVK.js → ToggleGroupItem-DtD37b4G.js} +4 -4
- package/dist/animated-digit.js +2 -2
- package/dist/api/index.d.ts +3 -4
- package/dist/api.js +1 -1
- package/dist/aurora.js +66 -66
- package/dist/{badge-CaoFJzRb.js → badge-NdCQMvvB.js} +1 -1
- package/dist/badge.js +1 -1
- package/dist/{button-DN39cGqL.js → button-DyiWFAOE.js} +12 -12
- package/dist/button.js +1 -1
- package/dist/canvas.js +2 -2
- package/dist/card.js +1 -1
- package/dist/carousel.js +5 -5
- package/dist/collapsible.js +1 -1
- package/dist/{color-C5ls_QF7.js → color-B65wWyQz.js} +9 -7
- package/dist/color.js +1 -1
- package/dist/command.js +1 -1
- 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/constellation/Constellation.vue.d.ts +12 -0
- package/dist/components/custom/constellation/composables/createConstellationField.d.ts +35 -0
- package/dist/components/custom/constellation/composables/useConstellationPointer.d.ts +35 -0
- package/dist/components/custom/constellation/constants.d.ts +36 -0
- package/dist/components/custom/constellation/constellationDraw.d.ts +18 -0
- package/dist/components/custom/constellation/constellationField.d.ts +10 -151
- package/dist/components/custom/constellation/constellationInteraction.d.ts +102 -0
- package/dist/components/custom/constellation/index.d.ts +3 -1
- package/dist/components/custom/controls/DarkModeToggle.vue.d.ts +11 -0
- package/dist/components/custom/dock/DockTabButton.vue.d.ts +3 -4
- package/dist/components/custom/dock/GlassDock.vue.d.ts +2 -110
- package/dist/components/custom/dock/composables/dockMorphContext.d.ts +36 -0
- package/dist/components/custom/dock/composables/useDockMorphWindow.d.ts +15 -0
- package/dist/components/custom/dock/composables/useDockShellProps.d.ts +131 -0
- package/dist/components/custom/dock/composables/useLayerTransition.d.ts +44 -0
- package/dist/components/custom/dock/constants.d.ts +23 -0
- package/dist/components/custom/expandable-container/ExpandableContainer.vue.d.ts +0 -29
- package/dist/components/custom/fourier-field/index.d.ts +1 -1
- package/dist/components/custom/fourier-field/math.d.ts +17 -0
- package/dist/components/custom/fourier-field/presets.d.ts +54 -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 +11 -8
- package/dist/components/custom/goo-blob/constants.d.ts +52 -0
- package/dist/components/custom/goo-blob/shaders/metaball-uniforms.glsl.d.ts +1 -0
- package/dist/components/custom/instrument-chassis/InstrumentChassis.vue.d.ts +2 -2
- package/dist/components/custom/metric-badge/MetricBadge.vue.d.ts +0 -8
- package/dist/components/custom/tabs/constants.d.ts +12 -0
- package/dist/components/custom/underline/GlassUnderline.vue.d.ts +84 -0
- package/dist/components/custom/underline/index.d.ts +2 -0
- package/dist/components/custom/underline/types.d.ts +56 -0
- package/dist/components/ui/drawer/Drawer.vue.d.ts +1 -0
- package/dist/components/ui/dropdown-menu/DropdownMenuSubContent.vue.d.ts +2 -2
- package/dist/components/ui/slider/index.d.ts +22 -19
- package/dist/components/ui/toast/use-toast.d.ts +2 -2
- package/dist/composables/color/index.d.ts +12 -0
- package/dist/composables/glass/useSpecularTracking.d.ts +12 -3
- package/dist/composables/motion/core/index.d.ts +0 -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/useSpringMount.d.ts +1 -1
- package/dist/configurator.js +1 -1
- package/dist/confirm-dialog.js +2 -2
- package/dist/constellation.js +260 -225
- 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 +339 -327
- package/dist/dockContext-bho8B1A4.js +17 -0
- package/dist/{dropdown-menu-D77jX6Df.js → dropdown-menu-DVnQcA0E.js} +7 -4
- package/dist/dropdown-menu.js +1 -1
- package/dist/expandable-container.js +38 -61
- package/dist/forms.js +2 -2
- package/dist/fourier-field.js +137 -102
- package/dist/fourier-math.js +2 -2
- package/dist/glass-ui.css +1 -1
- package/dist/glass-ui.js +287 -209
- package/dist/goo-blob.js +243 -212
- package/dist/hover-popover.js +1 -1
- package/dist/icon-tooltip.js +1 -1
- package/dist/index.d.ts +0 -3
- package/dist/keyboard.js +1 -1
- package/dist/labeled-field.js +5 -5
- package/dist/{math-DTpRVC0e.js → math-BUU9hHID.js} +18 -2
- package/dist/metric-badge.js +1 -1
- package/dist/metric-stack.js +1 -1
- package/dist/motion-core.js +69 -70
- 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/popover.js +1 -1
- package/dist/progress.js +1 -1
- package/dist/pulse.js +1 -1
- package/dist/reactive.js +1 -1
- package/dist/scrolling-text.js +1 -1
- package/dist/search.js +6 -6
- package/dist/select.js +1 -1
- package/dist/{sheet-VZEtNFvO.js → sheet-ChSXcJpU.js} +1 -1
- package/dist/sheet.js +1 -1
- package/dist/{slider-CyzcxBoh.js → slider-sfl8gFDD.js} +4 -4
- package/dist/slider.js +1 -1
- package/dist/sortable-list.js +2 -2
- package/dist/springPresets-aRSm-4_k.js +40 -0
- package/dist/stacked-icons.js +6 -6
- package/dist/styles/animations.css +18 -74
- package/dist/styles/components.css +1 -1
- package/dist/styles/dock/layer-group.css +22 -0
- package/dist/styles/dock/layers.css +11 -1
- package/dist/styles/dock/morph.css +95 -19
- package/dist/styles/dock/shell.css +12 -0
- package/dist/styles/dock-controls.css +28 -31
- package/dist/styles/drawer.css +2 -0
- package/dist/styles/floating-panel.css +2 -0
- package/dist/styles/glass/a11y-fallback.css +245 -0
- package/dist/styles/glass/ladder.css +304 -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/surfaces.css +306 -0
- package/dist/styles/glass-refract.css +2 -0
- package/dist/styles/glass.css +31 -1188
- package/dist/styles/hover-popover.css +2 -0
- package/dist/styles/index.css +24 -6
- package/dist/styles/instrument-chassis.css +4 -0
- package/dist/styles/paper.css +2 -68
- package/dist/styles/theme.css +13 -20
- package/dist/styles/tokens/color-radius.css +250 -0
- package/dist/styles/tokens/dark-arm.css +194 -0
- package/dist/styles/tokens/glass.css +413 -0
- package/dist/styles/tokens/light-dark.css +158 -0
- package/dist/styles/tokens/offsets-sizing.css +406 -0
- package/dist/styles/tokens/property-regs.css +169 -0
- package/dist/styles/tokens/scale-paper.css +361 -0
- package/dist/styles/tokens/scheme-motion.css +334 -0
- package/dist/styles/tokens/shadow.css +132 -0
- package/dist/styles/tokens.css +22 -2355
- package/dist/styles/typography.css +18 -6
- package/dist/styles/utilities/a11y-overrides.css +140 -0
- package/dist/styles/utilities/animate.css +26 -0
- package/dist/styles/utilities/base.css +365 -0
- package/dist/styles/utilities/btn.css +399 -0
- package/dist/styles/utilities/components.css +317 -0
- package/dist/styles/utilities.css +19 -1260
- package/dist/styles/view-transition.css +0 -51
- package/dist/switch.js +1 -1
- package/dist/tabs.js +98 -98
- package/dist/timeline.js +2 -2
- package/dist/toast.js +1 -1
- package/dist/toggle-group.js +1 -1
- package/dist/typewriter.js +1 -1
- package/dist/underline.d.ts +1 -0
- package/dist/underline.js +85 -0
- package/dist/{useAnimatedNumber-Bcpy5Etf.js → useAnimatedNumber-DfVgP4te.js} +1 -1
- package/dist/{useConfiguratorState-DxAqksK6.js → useConfiguratorState-BdQXh9ie.js} +1 -1
- package/dist/useSpecularTracking-DFK_fhpG.js +32 -0
- package/dist/useSpringMount-DXUzxBjV.js +108 -0
- package/dist/vReveal-CqaCz_mC.js +44 -0
- package/dist/watercolor-dot.js +2 -2
- package/package.json +34 -52
- package/src/styles/animations.css +18 -74
- package/src/styles/dock/layer-group.css +22 -0
- package/src/styles/dock/layers.css +11 -1
- package/src/styles/dock/morph.css +95 -19
- package/src/styles/dock/shell.css +12 -0
- package/src/styles/dock-controls.css +28 -31
- package/src/styles/glass/a11y-fallback.css +245 -0
- package/src/styles/glass/ladder.css +304 -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/surfaces.css +306 -0
- package/src/styles/glass.css +31 -1188
- package/src/styles/index.css +24 -6
- package/src/styles/paper.css +2 -68
- package/src/styles/theme.css +13 -20
- package/src/styles/tokens/color-radius.css +250 -0
- package/src/styles/tokens/dark-arm.css +194 -0
- package/src/styles/tokens/glass.css +413 -0
- package/src/styles/tokens/light-dark.css +158 -0
- package/src/styles/tokens/offsets-sizing.css +406 -0
- package/src/styles/tokens/property-regs.css +169 -0
- package/src/styles/tokens/scale-paper.css +361 -0
- package/src/styles/tokens/scheme-motion.css +334 -0
- package/src/styles/tokens/shadow.css +132 -0
- package/src/styles/tokens.css +22 -2355
- package/src/styles/typography.css +18 -6
- package/src/styles/utilities/a11y-overrides.css +140 -0
- package/src/styles/utilities/animate.css +26 -0
- package/src/styles/utilities/base.css +365 -0
- package/src/styles/utilities/btn.css +399 -0
- package/src/styles/utilities/components.css +317 -0
- package/src/styles/utilities.css +19 -1260
- package/src/styles/view-transition.css +0 -51
- package/dist/DeckProgress-Dmk4_AKN.js +0 -23
- package/dist/InstrumentRail-CUJ05YVG.js +0 -44
- 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/glass-panel/GlassPanel.vue.d.ts +0 -41
- package/dist/components/custom/glass-panel/index.d.ts +0 -2
- package/dist/components/custom/handmark/HandMark.vue.d.ts +0 -29
- package/dist/components/custom/handmark/brush.d.ts +0 -219
- package/dist/components/custom/handmark/freehand.d.ts +0 -69
- package/dist/components/custom/handmark/geometry.d.ts +0 -32
- package/dist/components/custom/handmark/index.d.ts +0 -21
- package/dist/components/custom/handmark/ink.d.ts +0 -11
- package/dist/components/custom/handmark/texture.d.ts +0 -39
- package/dist/components/custom/handmark/types.d.ts +0 -53
- package/dist/components/custom/handmark/useHandMark.d.ts +0 -66
- package/dist/components/custom/header-ribbon/HeaderRibbon.vue.d.ts +0 -31
- package/dist/components/custom/header-ribbon/index.d.ts +0 -2
- package/dist/components/custom/header-ribbon/types.d.ts +0 -7
- 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/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/glass-panel.d.ts +0 -1
- package/dist/glass-panel.js +0 -44
- package/dist/handmark.d.ts +0 -1
- package/dist/handmark.js +0 -609
- package/dist/header-ribbon.d.ts +0 -1
- package/dist/header-ribbon.js +0 -63
- package/dist/instrument-rail.d.ts +0 -1
- package/dist/instrument-rail.js +0 -2
- 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/dist/{CollapsibleContent-CP9qF1v4.js → CollapsibleContent-Drow5WkV.js} +0 -0
- /package/dist/{DialogFooter-Gprw8H_A.js → DialogFooter-DufLHi0y.js} +0 -0
- /package/dist/{IconTooltip-Cus0fvK0.js → IconTooltip-BrQ5p181.js} +0 -0
- /package/dist/{Input-xuDwALQR.js → Input-B-F818RU.js} +0 -0
- /package/dist/{_plugin-vue_export-helper-ok8pgSl5.js → _plugin-vue_export-helper-DWghtRt7.js} +0 -0
- /package/dist/{compile-BOXjLUxu.js → compile-Ce_V55zi.js} +0 -0
- /package/dist/{constants-yKeKnE84.js → constants-C8NMonuo.js} +0 -0
- /package/dist/{presets-Dkdv55Gt.js → presets-1OhFpaIC.js} +0 -0
- /package/dist/{prng-D27-B3tK.js → prng-CjVgzjQT.js} +0 -0
- /package/dist/{resolveCanvasColor-BBiYfp8g.js → resolveCanvasColor-CRvVzOvP.js} +0 -0
- /package/dist/{useCanvas2D-ClrQuZtp.js → useCanvas2D-CSeH8h16.js} +0 -0
- /package/dist/{useGlobalDark-d6waty-X.js → useGlobalDark-D7R9OypB.js} +0 -0
- /package/dist/{useIntersectionPause-Cck5Uxk8.js → useIntersectionPause-DAdVPVp4.js} +0 -0
- /package/dist/{useInterval-Dsmqwi03.js → useInterval-D3USn0yc.js} +0 -0
- /package/dist/{useKeyboardShortcuts-CyIYrndH.js → useKeyboardShortcuts-i8tHd5WO.js} +0 -0
- /package/dist/{useScrollProgress-CffFGLa5.js → useScrollProgress-CcgmgMQt.js} +0 -0
- /package/dist/{useSortable-C8ReQ50P.js → useSortable-DnyGXKKY.js} +0 -0
- /package/dist/{useTextHighlight-CWEi25hf.js → useTextHighlight-B3b10W6r.js} +0 -0
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { n as e } from "./springPresets-aRSm-4_k.js";
|
|
2
|
+
import { computed as t, getCurrentScope as n, nextTick as r, onMounted as i, onScopeDispose as a, readonly as o, ref as s, shallowRef as c, toValue as l, watch as u } from "vue";
|
|
3
|
+
import { SpringProgress as d } from "@mkbabb/keyframes.js";
|
|
4
|
+
//#region src/composables/motion/useSpring.ts
|
|
5
|
+
function f(e, t = {}) {
|
|
6
|
+
let r = t.initial ?? 0, i = t.initialVelocity ?? 0, f = s(r), p = s(i), m = s(i === 0), h = c(new d({
|
|
7
|
+
response: t.response ?? .5,
|
|
8
|
+
dampingFraction: t.dampingFraction ?? .86,
|
|
9
|
+
initial: r,
|
|
10
|
+
initialVelocity: i,
|
|
11
|
+
settleThreshold: t.settleThreshold ?? .001,
|
|
12
|
+
velocitySettleThreshold: t.velocitySettleThreshold ?? .001,
|
|
13
|
+
respectReducedMotion: t.respectReducedMotion !== !1
|
|
14
|
+
})), g = h.value.subscribe((e, n) => {
|
|
15
|
+
f.value = e, p.value = n, m.value = h.value.settled, t.onValue?.(e, n);
|
|
16
|
+
});
|
|
17
|
+
h.value.play(() => {});
|
|
18
|
+
let _ = u(() => l(e), (e) => {
|
|
19
|
+
e != null && (h.value.target = e);
|
|
20
|
+
}, { immediate: !0 });
|
|
21
|
+
function v() {
|
|
22
|
+
f.value = h.value.value, p.value = h.value.velocity, m.value = h.value.settled;
|
|
23
|
+
}
|
|
24
|
+
function y() {
|
|
25
|
+
_(), g(), h.value.dispose();
|
|
26
|
+
}
|
|
27
|
+
return n() && a(y), {
|
|
28
|
+
value: o(f),
|
|
29
|
+
velocity: o(p),
|
|
30
|
+
isSettled: o(m),
|
|
31
|
+
snap: () => {
|
|
32
|
+
h.value.snap(), v();
|
|
33
|
+
},
|
|
34
|
+
reset: (e, t) => {
|
|
35
|
+
h.value.reset(e ?? 0, t ?? 0), v();
|
|
36
|
+
},
|
|
37
|
+
dispose: y
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
//#endregion
|
|
41
|
+
//#region src/composables/motion/useSpringMount.ts
|
|
42
|
+
var p = Object.fromEntries([
|
|
43
|
+
"smooth",
|
|
44
|
+
"snappy",
|
|
45
|
+
"bouncy",
|
|
46
|
+
"gentle"
|
|
47
|
+
].map((t) => {
|
|
48
|
+
let { response: n, dampingFraction: r } = e(t);
|
|
49
|
+
return [t, {
|
|
50
|
+
response: n,
|
|
51
|
+
dampingFraction: r
|
|
52
|
+
}];
|
|
53
|
+
}));
|
|
54
|
+
function m(e) {
|
|
55
|
+
let n = p[e.preset ?? "smooth"], o = s(1), c = s(!1), l = 0, d = 0, m = null, h = !1, g = f(o, {
|
|
56
|
+
response: n.response,
|
|
57
|
+
dampingFraction: n.dampingFraction,
|
|
58
|
+
initial: 1,
|
|
59
|
+
settleThreshold: .001,
|
|
60
|
+
velocitySettleThreshold: .001,
|
|
61
|
+
respectReducedMotion: e.respectReducedMotion !== !1
|
|
62
|
+
});
|
|
63
|
+
i(() => {
|
|
64
|
+
e.open.value && r(() => {
|
|
65
|
+
o.value = 0;
|
|
66
|
+
});
|
|
67
|
+
});
|
|
68
|
+
let _ = u(() => e.open.value, (e, t) => {
|
|
69
|
+
e !== t && (c.value || (o.value = +!e));
|
|
70
|
+
}, { immediate: !1 }), v = u(() => g.isSettled.value, (t) => {
|
|
71
|
+
t && h && o.value >= 1 && (h = !1, e.onDismiss?.());
|
|
72
|
+
});
|
|
73
|
+
function y(e) {
|
|
74
|
+
if (e.button !== 0) return;
|
|
75
|
+
let t = e.currentTarget;
|
|
76
|
+
d = t.getBoundingClientRect().height || 1, l = e.clientY, m = e.pointerId, c.value = !0, t.setPointerCapture(e.pointerId);
|
|
77
|
+
}
|
|
78
|
+
function b(e) {
|
|
79
|
+
if (!c.value || e.pointerId !== m) return;
|
|
80
|
+
let t = e.clientY - l;
|
|
81
|
+
if (t <= 0) {
|
|
82
|
+
o.value = 0;
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
o.value = Math.min(1, t / d);
|
|
86
|
+
}
|
|
87
|
+
function x(t) {
|
|
88
|
+
if (!c.value || t.pointerId !== m) return;
|
|
89
|
+
let n = t.currentTarget;
|
|
90
|
+
n.hasPointerCapture(t.pointerId) && n.releasePointerCapture(t.pointerId), c.value = !1, m = null;
|
|
91
|
+
let r = e.dismissThreshold ?? .3;
|
|
92
|
+
o.value >= r ? (h = !0, o.value = 1) : o.value = 0;
|
|
93
|
+
}
|
|
94
|
+
return a(() => {
|
|
95
|
+
_(), v();
|
|
96
|
+
}), {
|
|
97
|
+
position: g.value,
|
|
98
|
+
isDragging: t(() => c.value),
|
|
99
|
+
dragHandlers: {
|
|
100
|
+
onPointerdown: y,
|
|
101
|
+
onPointermove: b,
|
|
102
|
+
onPointerup: x,
|
|
103
|
+
onPointercancel: x
|
|
104
|
+
}
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
//#endregion
|
|
108
|
+
export { f as n, m as t };
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
//#region src/utils/moveBefore.ts
|
|
2
|
+
function e(e, t, n) {
|
|
3
|
+
let r = e;
|
|
4
|
+
typeof r.moveBefore == "function" ? r.moveBefore(t, n) : e.insertBefore(t, n);
|
|
5
|
+
}
|
|
6
|
+
function t() {
|
|
7
|
+
return typeof Element < "u" && "moveBefore" in Element.prototype;
|
|
8
|
+
}
|
|
9
|
+
//#endregion
|
|
10
|
+
//#region src/utils/platformSupport.ts
|
|
11
|
+
function n() {
|
|
12
|
+
return typeof globalThis.scheduler?.postTask == "function";
|
|
13
|
+
}
|
|
14
|
+
//#endregion
|
|
15
|
+
//#region src/composables/motion/useViewTransition.ts
|
|
16
|
+
function r() {
|
|
17
|
+
return typeof document < "u" && typeof document.startViewTransition == "function";
|
|
18
|
+
}
|
|
19
|
+
function i(e, t) {
|
|
20
|
+
let n = typeof document > "u" ? void 0 : document;
|
|
21
|
+
if (!n || typeof n.startViewTransition != "function") return e(), {
|
|
22
|
+
finished: Promise.resolve(),
|
|
23
|
+
transitioned: !1
|
|
24
|
+
};
|
|
25
|
+
let r = t?.types && t.types.length > 0 ? n.startViewTransition({
|
|
26
|
+
update: () => e(),
|
|
27
|
+
types: t.types
|
|
28
|
+
}) : n.startViewTransition(() => e());
|
|
29
|
+
return r.ready?.catch(() => {}), {
|
|
30
|
+
finished: r.finished.then(() => void 0, () => void 0),
|
|
31
|
+
transitioned: !0
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
//#endregion
|
|
35
|
+
//#region src/composables/motion/vReveal.ts
|
|
36
|
+
function a(e, t) {
|
|
37
|
+
e.setAttribute("data-reveal", t.arg === "fade" ? "fade" : ""), e.style.setProperty("--d", String(t.value ?? 0));
|
|
38
|
+
}
|
|
39
|
+
var o = {
|
|
40
|
+
mounted: a,
|
|
41
|
+
updated: a
|
|
42
|
+
};
|
|
43
|
+
//#endregion
|
|
44
|
+
export { e as a, n as i, i as n, t as o, r, o as t };
|
package/dist/watercolor-dot.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { t as e } from "./_plugin-vue_export-helper-
|
|
2
|
-
import { n as t, t as n } from "./prng-
|
|
1
|
+
import { t as e } from "./_plugin-vue_export-helper-DWghtRt7.js";
|
|
2
|
+
import { n as t, t as n } from "./prng-CjVgzjQT.js";
|
|
3
3
|
import { computed as r, createBlock as i, createElementVNode as a, defineComponent as o, normalizeClass as s, normalizeStyle as c, onUnmounted as l, openBlock as u, ref as d, renderSlot as f, resolveDynamicComponent as p, toRef as m, useId as h, watch as g, withCtx as _ } from "vue";
|
|
4
4
|
//#region src/components/custom/watercolor-dot/prng.ts
|
|
5
5
|
function v(e, t, n) {
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mkbabb/glass-ui",
|
|
3
|
-
"version": "3.10.
|
|
4
|
-
"description": "Glassmorphic design system
|
|
3
|
+
"version": "3.10.1",
|
|
4
|
+
"description": "Glassmorphic design system — Vue 3.5 components, reka-ui primitives, Tailwind CSS v4 tokens",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
@@ -79,9 +79,6 @@
|
|
|
79
79
|
"status-dot": [
|
|
80
80
|
"dist/status-dot.d.ts"
|
|
81
81
|
],
|
|
82
|
-
"deck-progress": [
|
|
83
|
-
"dist/deck-progress.d.ts"
|
|
84
|
-
],
|
|
85
82
|
"pulse": [
|
|
86
83
|
"dist/pulse.d.ts"
|
|
87
84
|
],
|
|
@@ -91,9 +88,6 @@
|
|
|
91
88
|
"toggle-chip": [
|
|
92
89
|
"dist/toggle-chip.d.ts"
|
|
93
90
|
],
|
|
94
|
-
"glass-panel": [
|
|
95
|
-
"dist/glass-panel.d.ts"
|
|
96
|
-
],
|
|
97
91
|
"sortable-list": [
|
|
98
92
|
"dist/sortable-list.d.ts"
|
|
99
93
|
],
|
|
@@ -112,24 +106,21 @@
|
|
|
112
106
|
"instrument-chassis": [
|
|
113
107
|
"dist/instrument-chassis.d.ts"
|
|
114
108
|
],
|
|
115
|
-
"instrument-rail": [
|
|
116
|
-
"dist/instrument-rail.d.ts"
|
|
117
|
-
],
|
|
118
109
|
"hover-popover": [
|
|
119
110
|
"dist/hover-popover.d.ts"
|
|
120
111
|
],
|
|
121
112
|
"configurator": [
|
|
122
113
|
"dist/configurator.d.ts"
|
|
123
114
|
],
|
|
124
|
-
"header-ribbon": [
|
|
125
|
-
"dist/header-ribbon.d.ts"
|
|
126
|
-
],
|
|
127
115
|
"constellation": [
|
|
128
116
|
"dist/constellation.d.ts"
|
|
129
117
|
],
|
|
130
118
|
"scrolling-text": [
|
|
131
119
|
"dist/scrolling-text.d.ts"
|
|
132
120
|
],
|
|
121
|
+
"underline": [
|
|
122
|
+
"dist/underline.d.ts"
|
|
123
|
+
],
|
|
133
124
|
"forms": [
|
|
134
125
|
"dist/forms.d.ts"
|
|
135
126
|
],
|
|
@@ -154,6 +145,9 @@
|
|
|
154
145
|
"motion-core": [
|
|
155
146
|
"dist/motion-core.d.ts"
|
|
156
147
|
],
|
|
148
|
+
"motion-curves": [
|
|
149
|
+
"dist/motion-curves.d.ts"
|
|
150
|
+
],
|
|
157
151
|
"button": [
|
|
158
152
|
"dist/button.d.ts"
|
|
159
153
|
],
|
|
@@ -312,18 +306,10 @@
|
|
|
312
306
|
"types": "./dist/watercolor-dot.d.ts",
|
|
313
307
|
"import": "./dist/watercolor-dot.js"
|
|
314
308
|
},
|
|
315
|
-
"./handmark": {
|
|
316
|
-
"types": "./dist/handmark.d.ts",
|
|
317
|
-
"import": "./dist/handmark.js"
|
|
318
|
-
},
|
|
319
309
|
"./configurator": {
|
|
320
310
|
"types": "./dist/configurator.d.ts",
|
|
321
311
|
"import": "./dist/configurator.js"
|
|
322
312
|
},
|
|
323
|
-
"./header-ribbon": {
|
|
324
|
-
"types": "./dist/header-ribbon.d.ts",
|
|
325
|
-
"import": "./dist/header-ribbon.js"
|
|
326
|
-
},
|
|
327
313
|
"./constellation": {
|
|
328
314
|
"types": "./dist/constellation.d.ts",
|
|
329
315
|
"import": "./dist/constellation.js"
|
|
@@ -348,10 +334,6 @@
|
|
|
348
334
|
"types": "./dist/status-dot.d.ts",
|
|
349
335
|
"import": "./dist/status-dot.js"
|
|
350
336
|
},
|
|
351
|
-
"./deck-progress": {
|
|
352
|
-
"types": "./dist/deck-progress.d.ts",
|
|
353
|
-
"import": "./dist/deck-progress.js"
|
|
354
|
-
},
|
|
355
337
|
"./pulse": {
|
|
356
338
|
"types": "./dist/pulse.d.ts",
|
|
357
339
|
"import": "./dist/pulse.js"
|
|
@@ -364,10 +346,6 @@
|
|
|
364
346
|
"types": "./dist/toggle-chip.d.ts",
|
|
365
347
|
"import": "./dist/toggle-chip.js"
|
|
366
348
|
},
|
|
367
|
-
"./glass-panel": {
|
|
368
|
-
"types": "./dist/glass-panel.d.ts",
|
|
369
|
-
"import": "./dist/glass-panel.js"
|
|
370
|
-
},
|
|
371
349
|
"./sortable-list": {
|
|
372
350
|
"types": "./dist/sortable-list.d.ts",
|
|
373
351
|
"import": "./dist/sortable-list.js"
|
|
@@ -392,10 +370,6 @@
|
|
|
392
370
|
"types": "./dist/instrument-chassis.d.ts",
|
|
393
371
|
"import": "./dist/instrument-chassis.js"
|
|
394
372
|
},
|
|
395
|
-
"./instrument-rail": {
|
|
396
|
-
"types": "./dist/instrument-rail.d.ts",
|
|
397
|
-
"import": "./dist/instrument-rail.js"
|
|
398
|
-
},
|
|
399
373
|
"./hover-popover": {
|
|
400
374
|
"types": "./dist/hover-popover.d.ts",
|
|
401
375
|
"import": "./dist/hover-popover.js"
|
|
@@ -404,6 +378,10 @@
|
|
|
404
378
|
"types": "./dist/scrolling-text.d.ts",
|
|
405
379
|
"import": "./dist/scrolling-text.js"
|
|
406
380
|
},
|
|
381
|
+
"./underline": {
|
|
382
|
+
"types": "./dist/underline.d.ts",
|
|
383
|
+
"import": "./dist/underline.js"
|
|
384
|
+
},
|
|
407
385
|
"./forms": {
|
|
408
386
|
"types": "./dist/forms.d.ts",
|
|
409
387
|
"import": "./dist/forms.js"
|
|
@@ -432,6 +410,10 @@
|
|
|
432
410
|
"types": "./dist/motion-core.d.ts",
|
|
433
411
|
"import": "./dist/motion-core.js"
|
|
434
412
|
},
|
|
413
|
+
"./motion-curves": {
|
|
414
|
+
"types": "./dist/motion-curves.d.ts",
|
|
415
|
+
"import": "./dist/motion-curves.js"
|
|
416
|
+
},
|
|
435
417
|
"./button": {
|
|
436
418
|
"types": "./dist/button.d.ts",
|
|
437
419
|
"import": "./dist/button.js"
|
|
@@ -582,6 +564,7 @@
|
|
|
582
564
|
"proof:dock-css-carve": "node scripts/proof-dock-css-carve.mjs",
|
|
583
565
|
"proof:dock-css-split": "node scripts/proof-dock-controls-split.mjs",
|
|
584
566
|
"proof:design-idiom-localization": "node scripts/proof-design-idiom-localization.mjs",
|
|
567
|
+
"proof:colocation": "node scripts/proof-colocation.mjs",
|
|
585
568
|
"proof:tailwind-v4-idiom": "node scripts/proof-tailwind-v4-idiom.mjs",
|
|
586
569
|
"proof:au-w9-consumers": "node scripts/proof-au-w9-consumers.mjs",
|
|
587
570
|
"proof:shadow-contract": "node scripts/proof-shadow-contract.mjs",
|
|
@@ -592,6 +575,7 @@
|
|
|
592
575
|
"proof:ay-w0-reground": "node scripts/proof-ay-w0-reground.mjs",
|
|
593
576
|
"proof:au-w1-design": "node scripts/proof-au-w1-design.mjs",
|
|
594
577
|
"proof:au-final": "node scripts/proof-au-final.mjs",
|
|
578
|
+
"proof:ay-final": "node scripts/proof-ay-final.mjs",
|
|
595
579
|
"proof:strict-templates": "node scripts/proof-strict-templates.mjs",
|
|
596
580
|
"proof:peer-optional": "node scripts/proof-peer-optional.mjs",
|
|
597
581
|
"proof:vueuse-free-root": "node scripts/proof-vueuse-free-root.mjs",
|
|
@@ -613,7 +597,7 @@
|
|
|
613
597
|
"proof:blob-value-free": "node scripts/proof-blob-value-free.mjs",
|
|
614
598
|
"proof:motion-composables-consumer": "node scripts/proof-motion-composables-consumer.mjs",
|
|
615
599
|
"proof:motion-value-free": "node scripts/proof-motion-value-free.mjs",
|
|
616
|
-
"proof:
|
|
600
|
+
"proof:motion-suite": "node scripts/proof-motion-suite.mjs",
|
|
617
601
|
"proof:blob-space-gamma": "node scripts/proof-blob-space-gamma.mjs",
|
|
618
602
|
"proof:blob-smin-normalized": "node scripts/proof-blob-smin-normalized.mjs",
|
|
619
603
|
"proof:blob-gradient-unit-length": "node scripts/proof-blob-gradient-unit-length.mjs",
|
|
@@ -642,7 +626,11 @@
|
|
|
642
626
|
"proof:blob-color-equivalence": "vitest run tests/components/custom/goo-blob/blob-color-equivalence.test.ts",
|
|
643
627
|
"proof:fail-explicit": "node scripts/proof-fail-explicit.mjs",
|
|
644
628
|
"proof:no-god-module": "node scripts/proof-no-god-module.mjs",
|
|
629
|
+
"proof:composable-return-types": "node scripts/proof-composable-return-types.mjs",
|
|
645
630
|
"proof:no-legacy-commentary": "node scripts/proof-no-legacy-commentary.mjs",
|
|
631
|
+
"proof:no-retired-survivor": "node scripts/proof-no-retired-survivor.mjs",
|
|
632
|
+
"proof:tag-parity": "node scripts/proof-tag-parity.mjs",
|
|
633
|
+
"proof:var-in-arbitrary-guard": "node scripts/proof-var-in-arbitrary-guard.mjs",
|
|
646
634
|
"proof:story-language": "node scripts/proof-story-language.mjs",
|
|
647
635
|
"proof:gate-detrap": "node scripts/proof-gate-detrap.mjs",
|
|
648
636
|
"proof:liquid-glass-tokens": "node scripts/proof-liquid-glass-tokens.mjs",
|
|
@@ -666,13 +654,6 @@
|
|
|
666
654
|
"proof:constellation-field": "vitest run tests/components/custom/constellation/constellationField.test.ts",
|
|
667
655
|
"proof:input-invalid-aria": "node scripts/proof-input-invalid-aria.mjs",
|
|
668
656
|
"proof:subpath-enumeration": "node scripts/proof-subpath-enumeration.mjs",
|
|
669
|
-
"proof:handmark-export": "node scripts/proof-handmark-export.mjs",
|
|
670
|
-
"proof:handmark-tests": "vitest run tests/components/custom/handmark",
|
|
671
|
-
"proof:no-disco-star": "node scripts/proof-no-disco-star.mjs",
|
|
672
|
-
"proof:gold-ink-contrast": "node scripts/proof-gold-ink-contrast.mjs",
|
|
673
|
-
"proof:glass-gilt": "node scripts/proof-glass-gilt.mjs",
|
|
674
|
-
"proof:crayon-wipe-compositor": "node scripts/proof-crayon-wipe-compositor.mjs",
|
|
675
|
-
"proof:metric-badge-record": "vitest run tests/components/custom/metric-badge/MetricBadge.record.test.ts",
|
|
676
657
|
"proof:no-orphan-composable": "node scripts/proof-no-orphan-composable.mjs",
|
|
677
658
|
"proof:speedtest-boundary": "node scripts/proof-speedtest-boundary.mjs",
|
|
678
659
|
"proof:glass-material-unified": "node scripts/proof-glass-material-unified.mjs",
|
|
@@ -683,9 +664,19 @@
|
|
|
683
664
|
"proof:aurora-chrome-idiomatic": "node scripts/proof-aurora-chrome-idiomatic.mjs",
|
|
684
665
|
"proof:aurora-preset-roster": "node scripts/proof-aurora-preset-roster.mjs",
|
|
685
666
|
"proof:ui-scale": "node scripts/proof-ui-scale.mjs",
|
|
667
|
+
"proof:touch-target": "node scripts/proof-touch-target.mjs",
|
|
668
|
+
"proof:webkit-backdrop": "node scripts/proof-webkit-backdrop.mjs",
|
|
669
|
+
"proof:nested-backdrop-budget": "node scripts/proof-nested-backdrop-budget.mjs",
|
|
686
670
|
"proof:dropdown-type-scale": "node scripts/proof-dropdown-type-scale.mjs",
|
|
687
671
|
"proof:forced-colors-skin": "node scripts/proof-forced-colors-skin.mjs",
|
|
688
672
|
"proof:glass-cohesion": "node scripts/proof-glass-cohesion.mjs",
|
|
673
|
+
"proof:substrate-cohesion": "node scripts/proof-substrate-cohesion.mjs",
|
|
674
|
+
"proof:component-orphan": "node scripts/proof-component-orphan.mjs",
|
|
675
|
+
"proof:substrate-staging": "node scripts/proof-substrate-staging.mjs",
|
|
676
|
+
"proof:easter-eggs": "node scripts/proof-easter-eggs.mjs",
|
|
677
|
+
"proof:instrument-scope": "node scripts/proof-instrument-scope.mjs",
|
|
678
|
+
"proof:readme-meta-clean": "node scripts/proof-readme-meta-clean.mjs",
|
|
679
|
+
"proof:convergence-fit-coherent": "node scripts/proof-convergence-fit-coherent.mjs",
|
|
689
680
|
"proof:adaptive-glass": "node scripts/proof-adaptive-glass.mjs",
|
|
690
681
|
"proof:dark-semantic-contrast": "node scripts/proof-dark-semantic-contrast.mjs",
|
|
691
682
|
"proof:glass-material-demo": "node scripts/proof-glass-material-demo.mjs",
|
|
@@ -727,13 +718,11 @@
|
|
|
727
718
|
"peerDependencies": {
|
|
728
719
|
"@lucide/vue": "^1.16.0",
|
|
729
720
|
"@mkbabb/keyframes.js": "^2.2.0 || ^3.0.0 || ^4.0.0",
|
|
730
|
-
"@mkbabb/pencil-boil": "^0.4.0",
|
|
731
721
|
"@mkbabb/value.js": "^0.10.0 || ^0.11.0",
|
|
732
722
|
"@vueuse/core": "^14.0",
|
|
733
723
|
"class-variance-authority": "^0.7",
|
|
734
724
|
"clsx": "^2.0",
|
|
735
725
|
"embla-carousel-vue": "^8.0",
|
|
736
|
-
"perfect-freehand": "^1.2.3",
|
|
737
726
|
"reka-ui": "^2.0",
|
|
738
727
|
"tailwindcss": "^4.0",
|
|
739
728
|
"tw-animate-css": "^1.2.5",
|
|
@@ -750,23 +739,16 @@
|
|
|
750
739
|
"@mkbabb/keyframes.js": {
|
|
751
740
|
"optional": true
|
|
752
741
|
},
|
|
753
|
-
"@mkbabb/pencil-boil": {
|
|
754
|
-
"optional": true
|
|
755
|
-
},
|
|
756
742
|
"@mkbabb/value.js": {
|
|
757
743
|
"optional": true
|
|
758
744
|
},
|
|
759
|
-
"perfect-freehand": {
|
|
760
|
-
"optional": true
|
|
761
|
-
},
|
|
762
745
|
"tw-animate-css": {
|
|
763
746
|
"optional": true
|
|
764
747
|
}
|
|
765
748
|
},
|
|
766
749
|
"devDependencies": {
|
|
767
750
|
"@lucide/vue": "^1.16.0",
|
|
768
|
-
"@mkbabb/keyframes.js": "^
|
|
769
|
-
"@mkbabb/pencil-boil": "^0.4.0",
|
|
751
|
+
"@mkbabb/keyframes.js": "^4.1.0",
|
|
770
752
|
"@mkbabb/value.js": "^0.10.0",
|
|
771
753
|
"@tailwindcss/postcss": "^4.3.0",
|
|
772
754
|
"@tailwindcss/vite": "^4.3.0",
|
|
@@ -141,87 +141,31 @@
|
|
|
141
141
|
100% { background-position: -200% 0; }
|
|
142
142
|
}
|
|
143
143
|
|
|
144
|
-
/* ──
|
|
144
|
+
/* ── Sparkle sweep: four-point star traverses a surface diagonally ──
|
|
145
145
|
*
|
|
146
|
-
*
|
|
147
|
-
*
|
|
148
|
-
*
|
|
149
|
-
*
|
|
150
|
-
* figure scrolls into view and UN-DRAWS as it scrolls back up. `clip-path` is the
|
|
151
|
-
* compositor-eligible, FILTER-STABLE wipe (the medium's grain `feTurbulence`
|
|
152
|
-
* rasters ONCE and is untouched by the clip — the cardinal "no per-frame raster"
|
|
153
|
-
* discipline ds2-motion-field M1 names): clip-path animates on the compositor and
|
|
154
|
-
* never re-runs the static filter, unlike a `stroke-dashoffset` draw under the
|
|
155
|
-
* grain filter (which re-rasters per frame). The grammar mirrors scroll-driven.css
|
|
156
|
-
* (the `view()`/`scroll()` timeline home): the keyframe lives here (the shared
|
|
157
|
-
* @keyframes register); a consumer binds it to a NAMED `view-timeline` so the
|
|
158
|
-
* draw-on SCRUBS bidirectionally with scroll (forward → draws, back → un-draws),
|
|
159
|
-
* never a one-shot. The `.crayon-wipe` utility below is the binding.
|
|
160
|
-
*
|
|
161
|
-
* The keyframe itself is timeline-agnostic — it is equally a load-clock draw-on
|
|
162
|
-
* (bound to a keyframes.js Sequence) or a scroll scrub (bound to a view-timeline).
|
|
163
|
-
* The DEFAULT consumer is the scroll scrub (the figure-item underline drawing into
|
|
164
|
-
* the lower third), hence the utility's `view()` binding.
|
|
165
|
-
*
|
|
166
|
-
* Reduced-motion: the utility (NOT the keyframe) gates — under PRM the mark is SET
|
|
167
|
-
* to inset(0) (fully drawn, never animated), the correct degrade for a permanent
|
|
168
|
-
* structural draw (information parity: the underline is present, just not drawn).
|
|
146
|
+
* Reserved for the chassis primary-action hover (dock-tab-button[data-tier="primary"])
|
|
147
|
+
* and the `Complete!` shimmer cycle. Single keyframe, ~600ms per pass; the
|
|
148
|
+
* consumer rule sets the duration and easing. Reduced-motion guard at the
|
|
149
|
+
* consumer site (per surface — not all sparkle uses share the same gate).
|
|
169
150
|
*/
|
|
170
|
-
@keyframes
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
clip-path: inset(0 100% 0 0);
|
|
151
|
+
@keyframes sparkle-sweep {
|
|
152
|
+
0% {
|
|
153
|
+
transform: translate(-30%, -30%) scale(0.5);
|
|
154
|
+
opacity: 0;
|
|
175
155
|
}
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
clip-path: inset(0 0 0 0);
|
|
156
|
+
25% {
|
|
157
|
+
opacity: 1;
|
|
179
158
|
}
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
* The scroll-scrubbed draw-on utility. A consumer puts `.crayon-wipe` on a
|
|
184
|
-
* hand-mark surface (the underline span, a drawn rule) and the mark draws/un-draws
|
|
185
|
-
* as it scrolls through its OWN `view()` timeline — a bidirectional scrub, free,
|
|
186
|
-
* off the main thread. The animation is `paused` with `animation-timeline: view()`
|
|
187
|
-
* so the scroll position IS the playhead (the native scroll-driven model — the
|
|
188
|
-
* timeline drives the frame, time does not). The named timeline is overridable
|
|
189
|
-
* (`--crayon-wipe-timeline`, default the element's own `view()`) so a consumer can
|
|
190
|
-
* scrub off a SHARED beat timeline (the §--beat-tl the atlas scroll-driven.css
|
|
191
|
-
* names) instead of the per-element view — that is the "named view-timeline so a
|
|
192
|
-
* consumer scrubs a draw-on bidirectionally" contract.
|
|
193
|
-
*
|
|
194
|
-
* @supports-gated + PRM-OUTER-gated, mirroring scroll-driven.css exactly: the
|
|
195
|
-
* whole binding sits under `prefers-reduced-motion: no-preference`, so under PRM
|
|
196
|
-
* the animation never attaches and the mark renders in its terminal `inset(0)`
|
|
197
|
-
* (fully-drawn) state — the static-draw degrade. The draw range is `entry`-keyed
|
|
198
|
-
* (the mark draws as it ENTERS the lower viewport), tunable via
|
|
199
|
-
* `--crayon-wipe-range-{start,end}`. */
|
|
200
|
-
@media (prefers-reduced-motion: no-preference) {
|
|
201
|
-
@supports ((animation-timeline: view()) and (animation-range: entry)) {
|
|
202
|
-
.crayon-wipe {
|
|
203
|
-
animation: crayon-wipe auto linear both;
|
|
204
|
-
animation-timeline: var(--crayon-wipe-timeline, view(block));
|
|
205
|
-
animation-range: var(--crayon-wipe-range-start, entry 0%)
|
|
206
|
-
var(--crayon-wipe-range-end, cover 35%);
|
|
207
|
-
}
|
|
159
|
+
100% {
|
|
160
|
+
transform: translate(180%, 180%) scale(1.2);
|
|
161
|
+
opacity: 0;
|
|
208
162
|
}
|
|
209
163
|
}
|
|
210
164
|
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
* star from all glass-ui elements"). Every in-tree consumer is re-homed: the
|
|
216
|
-
* `btn-audacious` hover affirmation now rides the specular catch-light alone; the
|
|
217
|
-
* gold-CTA rides the `btn-gold-bg-sweep` metal-catch; the chassis `complete`
|
|
218
|
-
* celebration re-homes to the `.text-gilt` one-shot (utilities.css). The keyframe
|
|
219
|
-
* body is EMPTIED rather than deleted for ONE minor so any out-of-tree consumer
|
|
220
|
-
* (the slides decks) fails SOFT — a no-op animation, not an unknown-animation
|
|
221
|
-
* error. The `--duration-sparkle` token is `@deprecated` alongside (tokens.css).
|
|
222
|
-
* Full delete (this block + the token + the theme bridge) lands in 3.11. */
|
|
223
|
-
@keyframes sparkle-sweep {
|
|
224
|
-
/* intentionally empty — tombstoned, see deprecation note above */
|
|
165
|
+
@media (prefers-reduced-motion: reduce) {
|
|
166
|
+
@keyframes sparkle-sweep {
|
|
167
|
+
0%, 100% { opacity: 0; transform: none; }
|
|
168
|
+
}
|
|
225
169
|
}
|
|
226
170
|
|
|
227
171
|
/* ── Pulse dot bounce: dots variant of <Pulse> ──
|
|
@@ -98,6 +98,22 @@
|
|
|
98
98
|
display: flex;
|
|
99
99
|
flex-direction: column;
|
|
100
100
|
flex-shrink: 0;
|
|
101
|
+
/* AY.W-DOCK-NAV B6 — `align-self: start` (not the group's `stretch`
|
|
102
|
+
default) so the column rail reports its OWN intrinsic content height
|
|
103
|
+
(the stacked tabs) to the group's cross-axis sizing rather than being
|
|
104
|
+
stretched to the group's content-row height. Under `stretch` the rail's
|
|
105
|
+
height resolved to the group height, which was the single content-row
|
|
106
|
+
height — circular: the rail's 3 tall tabs overflowed a 40px rail and the
|
|
107
|
+
lower tabs + the indicator fell below the dock floor (the B6 break). With
|
|
108
|
+
`align-self: start` the rail demands its natural column height, the group
|
|
109
|
+
grows to it, and the dock grows to contain the whole rail. The
|
|
110
|
+
`min-height: max-content` belt makes the demand explicit — a row-flex
|
|
111
|
+
child's cross-size can otherwise resolve to the (smaller) container row
|
|
112
|
+
height even under `align-self: start`; `max-content` floors the rail at
|
|
113
|
+
its stacked-tab content height so the chain (group → pane → dock) grows
|
|
114
|
+
to fit. */
|
|
115
|
+
align-self: start;
|
|
116
|
+
min-height: max-content;
|
|
101
117
|
gap: var(--dock-layer-rail-gap, 0.125rem);
|
|
102
118
|
padding: var(--dock-layer-rail-padding, 0.125rem);
|
|
103
119
|
background: var(--dock-layer-rail-bg, var(--surface-tint-8));
|
|
@@ -134,6 +150,12 @@
|
|
|
134
150
|
display: inline-flex;
|
|
135
151
|
align-items: center;
|
|
136
152
|
justify-content: center;
|
|
153
|
+
/* AY.W-DOCK-NAV B6 — `flex-shrink: 0` so the stacked tabs in the column rail
|
|
154
|
+
hold their full size and the rail demands its natural content height (no
|
|
155
|
+
tab squish). With the rail's `align-self: start` this makes the rail report
|
|
156
|
+
its true column height to the group's cross-axis sizing, growing the dock
|
|
157
|
+
to contain all the tabs + the travelling indicator (the B6 un-clip). */
|
|
158
|
+
flex-shrink: 0;
|
|
137
159
|
width: var(--dock-layer-tab-size, var(--dock-control-size, 1.75rem));
|
|
138
160
|
height: var(--dock-layer-tab-size, var(--dock-control-size, 1.75rem));
|
|
139
161
|
border: 0;
|
|
@@ -196,9 +196,19 @@
|
|
|
196
196
|
block-axis morph reveals a column) is NOT forced onto one nowrap row — the
|
|
197
197
|
vertical group's active host block-sizes to `height: max-content` below
|
|
198
198
|
(the AP.W3 column treatment, KEPT). */
|
|
199
|
+
/* AY.W-DOCK-NAV B6 — the height is a FLOOR (`min-height`), not a fixed lock. A
|
|
200
|
+
single-row content pane's intrinsic height already equals
|
|
201
|
+
`--dock-layer-height` (the controls + line-height sum to it), so `min-height`
|
|
202
|
+
is byte-identical for the common case. But a horizontal dock hosting a COLUMN
|
|
203
|
+
switcher-rail (`<DockLayerGroup>` with `show-rail`) lays the rail out as a
|
|
204
|
+
stack of tabs taller than one row — the prior fixed `height` clipped the
|
|
205
|
+
rail's lower tabs + the active indicator BELOW the dock floor (the B6 "no rail
|
|
206
|
+
line / broken" read, measured: 2 of 3 tabs clipped). The floor lets the pane
|
|
207
|
+
block-size to the rail's natural column height so the dock grows to contain
|
|
208
|
+
the whole rail. The cross axis keeps `nowrap`. */
|
|
199
209
|
.glass-dock:not(.vertical) .dock-layer {
|
|
200
210
|
white-space: nowrap;
|
|
201
|
-
height: var(--dock-layer-height, 2.5rem);
|
|
211
|
+
min-height: var(--dock-layer-height, 2.5rem);
|
|
202
212
|
}
|
|
203
213
|
|
|
204
214
|
.dock-layer.is-active {
|