@eagami/ui 1.0.1 → 1.0.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/README.md CHANGED
@@ -103,7 +103,7 @@ See [`src/styles/tokens/`](src/styles/tokens/) for the full token reference.
103
103
 
104
104
  ## Framework integration
105
105
 
106
- @eagami/ui is an Angular library, but its design tokens, rules, and component API conventions are framework-agnostic. For projects that can't consume the Angular package directly yet still want to adhere to the same design system, two self-contained integration guides are provided — each copy-and-paste ready and written to be readable by both human developers and AI coding agents:
106
+ `@eagami/ui` is an Angular library, but its design tokens, rules, and component API conventions are framework-agnostic. For projects that can't consume the Angular package directly yet still want to adhere to the same design system, two self-contained integration guides are provided — each copy-and-paste ready and written to be readable by both human developers and AI coding agents:
107
107
 
108
108
  - **[design-system-flutter.md](design-system-flutter.md)** — Dart `ThemeExtension`, `MaterialApp` wiring, reduced-motion handling, and widget API conventions for Flutter projects
109
109
  - **[design-system-react.md](design-system-react.md)** — CSS custom properties, TypeScript constants, and component prop conventions for React projects (plain CSS, CSS Modules, styled-components, emotion, or Tailwind)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eagami/ui",
3
- "version": "1.0.1",
3
+ "version": "1.0.2",
4
4
  "description": "Lightweight, accessible Angular UI component library built on CSS custom properties",
5
5
  "author": "Michal Wiraszka <michal@eagami.com>",
6
6
  "license": "MIT",
@@ -8,28 +8,28 @@
8
8
  // ---------------------------------------------------------------------------
9
9
 
10
10
  // Primary
11
- --color-primary-50: #eef4f8;
12
- --color-primary-100: #d5e5f0;
13
- --color-primary-200: #accfe2;
14
- --color-primary-300: #7db1ce;
15
- --color-primary-400: #628ead;
16
- --color-primary-500: #3c6c90;
17
- --color-primary-600: #2f567a;
18
- --color-primary-700: #285175;
19
- --color-primary-800: #11365c;
20
- --color-primary-900: #0d2533;
11
+ --color-primary-50: #ecf3f9;
12
+ --color-primary-100: #d1e3f0;
13
+ --color-primary-200: #abcbe3;
14
+ --color-primary-300: #7dafd4;
15
+ --color-primary-400: #4b91c3;
16
+ --color-primary-500: #3674a1;
17
+ --color-primary-600: #2a5b7e;
18
+ --color-primary-700: #204560;
19
+ --color-primary-800: #162f41;
20
+ --color-primary-900: #0d1c26;
21
21
 
22
22
  // Secondary
23
- --color-secondary-50: #f3f1f7;
24
- --color-secondary-100: #e3deed;
25
- --color-secondary-200: #c7bedb;
26
- --color-secondary-300: #a796c3;
27
- --color-secondary-400: #7d6a9c;
28
- --color-secondary-500: #594b6e;
29
- --color-secondary-600: #493d5c;
30
- --color-secondary-700: #40374f;
31
- --color-secondary-800: #2f2439;
32
- --color-secondary-900: #1e1528;
23
+ --color-secondary-50: #f2eff5;
24
+ --color-secondary-100: #dfd9e8;
25
+ --color-secondary-200: #c4b9d5;
26
+ --color-secondary-300: #a493be;
27
+ --color-secondary-400: #8169a5;
28
+ --color-secondary-500: #665086;
29
+ --color-secondary-600: #503f69;
30
+ --color-secondary-700: #3d3050;
31
+ --color-secondary-800: #292136;
32
+ --color-secondary-900: #181320;
33
33
 
34
34
  // Neutral (Gray)
35
35
  --color-neutral-0: #ffffff;
@@ -163,8 +163,8 @@
163
163
  --color-brand-default: var(--color-primary-400);
164
164
  --color-brand-hover: var(--color-primary-300);
165
165
  --color-brand-active: var(--color-primary-200);
166
- --color-brand-subtle: rgba(98, 142, 173, 0.1);
167
- --color-brand-muted: rgba(98, 142, 173, 0.2);
166
+ --color-brand-subtle: rgba(75, 145, 195, 0.1);
167
+ --color-brand-muted: rgba(75, 145, 195, 0.2);
168
168
 
169
169
  // Status `*-subtle` / `*-muted` — light pastels in light mode become
170
170
  // unreadable behind light text in dark mode. Re-tint as a low-alpha wash of
@@ -34,18 +34,26 @@
34
34
  --z-index-tooltip: 700;
35
35
  }
36
36
 
37
- // Dark mode — black shadows lose contrast against dark backgrounds, so deepen
38
- // alpha values so elevated surfaces still have a perceptible boundary. The
39
- // `:not([data-theme='light'])` clause lets consumers force light mode via
40
- // `<html data-theme="light">` even when the OS prefers dark, and the
41
- // matching `[data-theme='dark']` block forces dark mode regardless of OS.
37
+ // Dark mode — black drop shadows are nearly invisible against a near-black
38
+ // page, so flip the shadow color to white at low alpha. The soft fade is what
39
+ // reads as a cast shadow; against a dark page, white-at-low-alpha blends to a
40
+ // muted dark gray that mirrors the role black-at-low-alpha plays in light mode.
41
+ // xl and 2xl have tighter offset/blur than light mode so the lighter fade
42
+ // doesn't sprawl into a halo. The `:not([data-theme='light'])` clause lets
43
+ // consumers force light mode via `<html data-theme="light">` even when the OS
44
+ // prefers dark, and the matching `[data-theme='dark']` block forces dark mode
45
+ // regardless of OS.
42
46
  @mixin dark-elevation-tokens {
43
- --shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, 0.6);
44
- --shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, 0.6), 0 1px 2px -1px rgba(0, 0, 0, 0.5);
45
- --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.6), 0 2px 4px -2px rgba(0, 0, 0, 0.5);
46
- --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.7), 0 4px 6px -4px rgba(0, 0, 0, 0.5);
47
- --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.7), 0 8px 10px -6px rgba(0, 0, 0, 0.5);
48
- --shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, 0.85);
47
+ --shadow-xs: 0 1px 2px 0 rgba(255, 255, 255, 0.04);
48
+ --shadow-sm:
49
+ 0 1px 3px 0 rgba(255, 255, 255, 0.05), 0 1px 2px -1px rgba(255, 255, 255, 0.04);
50
+ --shadow-md:
51
+ 0 4px 6px -1px rgba(255, 255, 255, 0.06), 0 2px 4px -2px rgba(255, 255, 255, 0.04);
52
+ --shadow-lg:
53
+ 0 8px 12px -2px rgba(255, 255, 255, 0.08), 0 3px 5px -3px rgba(255, 255, 255, 0.05);
54
+ --shadow-xl:
55
+ 0 12px 18px -4px rgba(255, 255, 255, 0.1), 0 5px 8px -4px rgba(255, 255, 255, 0.06);
56
+ --shadow-2xl: 0 16px 28px -8px rgba(255, 255, 255, 0.12);
49
57
  }
50
58
 
51
59
  @media (prefers-color-scheme: dark) {