@a4ui/core 0.4.0 → 0.4.2
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/index.d.ts +1 -1
- package/dist/index.js +891 -841
- package/dist/layout/ThemedScenery.d.ts +5 -3
- package/dist/layout/sceneEffects.d.ts +1 -0
- package/dist/styles.css +13 -1
- package/package.json +1 -1
- package/preset.js +3 -3
|
@@ -8,9 +8,11 @@ export interface ThemedSceneryProps {
|
|
|
8
8
|
}
|
|
9
9
|
/**
|
|
10
10
|
* A lightweight, theme-tinted backdrop for non-`space` themes: the same
|
|
11
|
-
* token-driven nebula as {@link SpaceBackground} plus
|
|
12
|
-
*
|
|
13
|
-
*
|
|
11
|
+
* token-driven nebula as {@link SpaceBackground} plus floating motif glyphs you
|
|
12
|
+
* pass in, cursor glow, magnetic buttons, card edge-glow, and motifs that streak
|
|
13
|
+
* across (ambiently and on a background click). Mount it as {@link AppShell}'s
|
|
14
|
+
* `background` (fixed z-0 layer behind all content). Motion is skipped under
|
|
15
|
+
* `motionReduced()`.
|
|
14
16
|
*
|
|
15
17
|
* @example
|
|
16
18
|
* ```tsx
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function bindPointerFx(root: HTMLElement): () => void;
|
package/dist/styles.css
CHANGED
|
@@ -576,6 +576,7 @@ body {
|
|
|
576
576
|
#scenery .themed-sky {
|
|
577
577
|
position: absolute;
|
|
578
578
|
inset: 0;
|
|
579
|
+
animation: sceneryPulse 16s ease-in-out infinite;
|
|
579
580
|
background:
|
|
580
581
|
radial-gradient(1200px 700px at 82% -8%, hsl(var(--primary) / 0.34), transparent 60%),
|
|
581
582
|
radial-gradient(900px 600px at 8% 12%, hsl(var(--accent) / 0.28), transparent 60%),
|
|
@@ -606,8 +607,19 @@ body {
|
|
|
606
607
|
transform: translateY(-16px) rotate(calc(var(--r, 0deg) + 5deg));
|
|
607
608
|
}
|
|
608
609
|
}
|
|
610
|
+
/* Subtle nebula "breathing" so the themed backdrop isn't static. */
|
|
611
|
+
@keyframes sceneryPulse {
|
|
612
|
+
0%,
|
|
613
|
+
100% {
|
|
614
|
+
filter: brightness(1);
|
|
615
|
+
}
|
|
616
|
+
50% {
|
|
617
|
+
filter: brightness(1.06);
|
|
618
|
+
}
|
|
619
|
+
}
|
|
609
620
|
@media (prefers-reduced-motion: reduce) {
|
|
610
|
-
html:not(.force-motion) #scenery .motif
|
|
621
|
+
html:not(.force-motion) #scenery .motif,
|
|
622
|
+
html:not(.force-motion) #scenery .themed-sky {
|
|
611
623
|
animation: none !important;
|
|
612
624
|
}
|
|
613
625
|
}
|
package/package.json
CHANGED
package/preset.js
CHANGED
|
@@ -45,7 +45,7 @@ const glass = plugin(({ addComponents }) => {
|
|
|
45
45
|
borderRadius: 'inherit',
|
|
46
46
|
padding: '1px',
|
|
47
47
|
background:
|
|
48
|
-
'radial-gradient(220px circle at var(--mx, 50%) var(--my, 50%), hsl(
|
|
48
|
+
'radial-gradient(220px circle at var(--mx, 50%) var(--my, 50%), hsl(var(--primary) / .9), hsl(var(--accent) / .25) 45%, transparent 70%)',
|
|
49
49
|
WebkitMask: 'linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0)',
|
|
50
50
|
WebkitMaskComposite: 'xor',
|
|
51
51
|
maskComposite: 'exclude',
|
|
@@ -57,11 +57,11 @@ const glass = plugin(({ addComponents }) => {
|
|
|
57
57
|
'@media (prefers-reduced-motion: reduce)': {
|
|
58
58
|
'.card.glow-edge::before': { display: 'none' },
|
|
59
59
|
},
|
|
60
|
-
// Light theme: the
|
|
60
|
+
// Light theme: the glow is faint on white — thicker + more vivid.
|
|
61
61
|
"[data-theme='light'] .card.glow-edge::before": {
|
|
62
62
|
padding: '1.5px',
|
|
63
63
|
background:
|
|
64
|
-
'radial-gradient(240px circle at var(--mx, 50%) var(--my, 50%), hsl(
|
|
64
|
+
'radial-gradient(240px circle at var(--mx, 50%) var(--my, 50%), hsl(var(--primary) / 1), hsl(var(--accent) / 0.55) 42%, transparent 72%)',
|
|
65
65
|
},
|
|
66
66
|
|
|
67
67
|
// ---- Floating overlay glass (menus, modals, drawers, toasts) ----
|