@adukiorg/anza 0.4.1 → 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.
Files changed (40) hide show
  1. package/bin/anza/anza-linux-arm64 +0 -0
  2. package/bin/anza/anza-linux-x64 +0 -0
  3. package/bin/anza/anza-macos-arm64 +0 -0
  4. package/bin/anza/anza-macos-x64 +0 -0
  5. package/bin/anza/anza-windows-x64.exe +0 -0
  6. package/package.json +1 -1
  7. package/src/core/api/index.js +2 -2
  8. package/src/core/offline/sync.js +2 -2
  9. package/src/core/router/cascade.js +15 -20
  10. package/src/core/router/container.js +4 -0
  11. package/src/core/router/graph.js +40 -12
  12. package/src/core/router/index.js +7 -1
  13. package/src/core/router/intercept.js +400 -100
  14. package/src/core/router/match.js +30 -0
  15. package/src/core/ui/define/element.js +58 -8
  16. package/src/core/ui/define/orchestrator.js +8 -4
  17. package/src/core/ui/defs/dock.js +18 -1
  18. package/src/core/ui/defs/page.js +75 -29
  19. package/src/core/ui/defs/spec.js +81 -11
  20. package/src/elements/data/list/style.css +1 -1
  21. package/src/elements/data/table/index.js +2 -1
  22. package/src/elements/data/table/style.css +1 -1
  23. package/src/elements/feedback/alert/style.css +1 -1
  24. package/src/styles/base.css +22 -21
  25. package/src/tokens/index.css +1 -4
  26. package/src/tokens/primitives/colors.css +9 -64
  27. package/src/tokens/primitives/motion.css +6 -18
  28. package/src/tokens/primitives/spacing.css +7 -12
  29. package/src/tokens/primitives/typography.css +12 -42
  30. package/src/tokens/registered/colors.css +5 -96
  31. package/src/tokens/registered/dimensions.css +6 -19
  32. package/src/tokens/semantic/contrast.css +8 -36
  33. package/src/tokens/semantic/dark.css +13 -48
  34. package/src/tokens/semantic/light.css +13 -44
  35. package/src/tokens/semantic/transitions.css +22 -12
  36. package/CHANGELOG.md +0 -360
  37. package/src/tokens/primitives/radius.css +0 -16
  38. package/src/tokens/primitives/shadow.css +0 -34
  39. package/src/tokens/primitives/zindex.css +0 -18
  40. package/src/tokens/semantic/components.css +0 -123
@@ -1,49 +1,19 @@
1
1
  /**
2
2
  * tokens/primitives/typography.css
3
3
  *
4
- * Typography scales, weights, line-heights, letter-spacings, and font stacks.
5
- * Google Fonts: Inter, JetBrains Mono, IBM Plex Sans
4
+ * Essential typography settings.
6
5
  */
7
6
 
8
- @import url("https://fonts.googleapis.com/css2?family=Inter:wght@100..900&display=swap");
9
- @import url("https://fonts.googleapis.com/css2?family=JetBrains+Mono:ital,wght@0,100..800;1,100..800&display=swap");
10
- @import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:ital,wght@0,100..900;1,100..900&display=swap");
11
-
12
7
  :root {
13
- /* Modular type scale (1.25 ratio) */
14
- --text-xs: 0.75rem; /* 12px */
15
- --text-sm: 0.875rem; /* 14px */
16
- --text-md: 1rem; /* 16px */
17
- --text-lg: 1.25rem; /* 20px */
18
- --text-xl: 1.5rem; /* 24px */
19
- --text-2xl: 1.875rem; /* 30px */
20
- --text-3xl: 2.25rem; /* 36px */
21
- --text-4xl: 3rem; /* 48px */
22
- --text-5xl: 3.75rem; /* 60px */
23
-
24
- /* Font weights */
25
- --font-light: 300;
26
- --font-normal: 400;
27
- --font-medium: 500;
28
- --font-semibold: 600;
29
- --font-bold: 700;
30
-
31
- /* Line heights */
32
- --leading-tight: 1.25;
33
- --leading-snug: 1.375;
34
- --leading-normal: 1.5;
35
- --leading-relaxed: 1.625;
36
- --leading-loose: 2;
37
-
38
- /* Letter spacing */
39
- --tracking-tight: -0.025em;
40
- --tracking-normal: 0;
41
- --tracking-wide: 0.025em;
42
- --tracking-wider: 0.05em;
43
- --tracking-widest: 0.1em;
44
-
45
- /* Font families */
46
- --font-sans: 'Inter', system-ui, -apple-system, sans-serif;
47
- --font-serif: 'IBM Plex Sans', serif;
48
- --font-mono: 'JetBrains Mono', monospace;
8
+ --font-sans: system-ui, -apple-system, sans-serif;
9
+ --font-size-base: 1rem;
10
+ --font-size-lg: 1.25rem;
11
+ --font-size-xl: 1.5rem;
12
+ --font-size-2xl: 1.875rem;
13
+ --font-size-3xl: 2.25rem;
14
+ --font-weight-regular: 400;
15
+ --font-weight-semibold: 600;
16
+ --line-height-normal: 1.5;
17
+ --line-height-tight: 1.25;
49
18
  }
19
+
@@ -1,21 +1,13 @@
1
1
  /**
2
2
  * tokens/registered/colors.css
3
3
  *
4
- * Houdini @property registrations for animatable semantic color tokens.
5
- * This permits smooth, GPU-accelerated theme transition morphs.
6
- * Source: doc 26 §5
4
+ * Houdini @property registrations for animatable core semantic color tokens.
7
5
  */
8
6
 
9
7
  @property --color-surface-page {
10
8
  syntax: '<color>';
11
9
  inherits: true;
12
- initial-value: oklch(97% 0 0);
13
- }
14
-
15
- @property --color-surface-card {
16
- syntax: '<color>';
17
- inherits: true;
18
- initial-value: oklch(100% 0 0);
10
+ initial-value: oklch(98% 0 0);
19
11
  }
20
12
 
21
13
  @property --color-surface-elevated {
@@ -24,12 +16,6 @@
24
16
  initial-value: oklch(100% 0 0);
25
17
  }
26
18
 
27
- @property --color-surface-inverse {
28
- syntax: '<color>';
29
- inherits: true;
30
- initial-value: oklch(10% 0 0);
31
- }
32
-
33
19
  @property --color-content-primary {
34
20
  syntax: '<color>';
35
21
  inherits: true;
@@ -39,95 +25,18 @@
39
25
  @property --color-content-secondary {
40
26
  syntax: '<color>';
41
27
  inherits: true;
42
- initial-value: oklch(38% 0 0);
43
- }
44
-
45
- @property --color-content-disabled {
46
- syntax: '<color>';
47
- inherits: true;
48
- initial-value: oklch(64% 0 0);
49
- }
50
-
51
- @property --color-content-inverse {
52
- syntax: '<color>';
53
- inherits: true;
54
- initial-value: oklch(97% 0 0);
55
- }
56
-
57
- @property --color-content-link {
58
- syntax: '<color>';
59
- inherits: true;
60
- initial-value: oklch(55% 0.22 250);
28
+ initial-value: oklch(30% 0 0);
61
29
  }
62
30
 
63
31
  @property --color-interactive {
64
32
  syntax: '<color>';
65
33
  inherits: true;
66
- initial-value: oklch(55% 0.22 250);
67
- }
68
-
69
- @property --color-interactive-hover {
70
- syntax: '<color>';
71
- inherits: true;
72
- initial-value: oklch(46% 0.20 250);
73
- }
74
-
75
- @property --color-interactive-active {
76
- syntax: '<color>';
77
- inherits: true;
78
- initial-value: oklch(38% 0.18 250);
79
- }
80
-
81
- @property --color-interactive-focus {
82
- syntax: '<color>';
83
- inherits: true;
84
- initial-value: oklch(55% 0.22 250);
85
- }
86
-
87
- @property --color-interactive-disabled {
88
- syntax: '<color>';
89
- inherits: true;
90
- initial-value: oklch(88% 0 0);
91
- }
92
-
93
- @property --color-feedback-success {
94
- syntax: '<color>';
95
- inherits: true;
96
- initial-value: oklch(63% 0.19 145);
97
- }
98
-
99
- @property --color-feedback-warning {
100
- syntax: '<color>';
101
- inherits: true;
102
- initial-value: oklch(75% 0.18 65);
103
- }
104
-
105
- @property --color-feedback-error {
106
- syntax: '<color>';
107
- inherits: true;
108
- initial-value: oklch(58% 0.22 25);
109
- }
110
-
111
- @property --color-feedback-info {
112
- syntax: '<color>';
113
- inherits: true;
114
- initial-value: oklch(60% 0.18 230);
34
+ initial-value: oklch(62% 0.17 145);
115
35
  }
116
36
 
117
37
  @property --color-border-default {
118
38
  syntax: '<color>';
119
39
  inherits: true;
120
- initial-value: oklch(88% 0 0);
40
+ initial-value: oklch(90% 0 0);
121
41
  }
122
42
 
123
- @property --color-border-strong {
124
- syntax: '<color>';
125
- inherits: true;
126
- initial-value: oklch(64% 0 0);
127
- }
128
-
129
- @property --color-border-focus {
130
- syntax: '<color>';
131
- inherits: true;
132
- initial-value: oklch(55% 0.22 250);
133
- }
@@ -1,31 +1,18 @@
1
1
  /**
2
2
  * tokens/registered/dimensions.css
3
3
  *
4
- * Houdini @property registrations for animatable dimension/spacing tokens.
5
- * This permits smooth, type-checked transitions on spacing and layout.
6
- * Source: doc 26 §5
4
+ * Houdini @property registrations for animatable transition tokens.
7
5
  */
8
6
 
9
- @property --space-4 {
10
- syntax: '<length>';
11
- inherits: true;
12
- initial-value: 16px;
13
- }
14
-
15
- @property --radius-md {
16
- syntax: '<length>';
7
+ @property --transition-duration {
8
+ syntax: '<time>';
17
9
  inherits: true;
18
- initial-value: 6px;
10
+ initial-value: 240ms;
19
11
  }
20
12
 
21
- @property --font-size-base {
13
+ @property --transition-offset {
22
14
  syntax: '<length>';
23
15
  inherits: true;
24
- initial-value: 16px;
16
+ initial-value: 30px;
25
17
  }
26
18
 
27
- @property --duration-normal {
28
- syntax: '<time>';
29
- inherits: true;
30
- initial-value: 200ms;
31
- }
@@ -2,50 +2,22 @@
2
2
  * tokens/semantic/contrast.css
3
3
  *
4
4
  * WCAG AAA compliant high-contrast semantic token overrides.
5
- * Enhances readability for visually impaired users.
6
- * Source: doc 26 §3, library2.md §Phase 1-B
7
5
  */
8
6
 
9
7
  [data-theme="high-contrast"] {
10
- /* Surfaces */
11
- --color-surface-page: var(--color-neutral-0);
12
- --color-surface-card: var(--color-neutral-0);
13
- --color-surface-elevated: var(--color-neutral-0);
14
- --color-surface-inverse: var(--color-neutral-1000);
8
+ --color-surface-page: var(--color-white);
9
+ --color-surface-elevated: var(--color-white);
10
+ --color-content-primary: var(--color-black);
11
+ --color-content-secondary: var(--color-black);
12
+ --color-interactive: var(--color-black);
13
+ --color-border-default: var(--color-black);
15
14
 
16
- /* Content */
17
- --color-content-primary: var(--color-neutral-1000);
18
- --color-content-secondary: var(--color-neutral-900);
19
- --color-content-disabled: var(--color-neutral-700);
20
- --color-content-inverse: var(--color-neutral-0);
21
- --color-content-link: var(--color-brand-900);
22
-
23
- /* Interactive Elements */
24
- --color-interactive: var(--color-brand-900);
25
- --color-interactive-hover: var(--color-neutral-1000);
26
- --color-interactive-active: var(--color-neutral-1000);
27
- --color-interactive-disabled: var(--color-neutral-600);
28
-
29
- /* Borders */
30
- --color-border-default: var(--color-neutral-1000);
31
- --color-border-strong: var(--color-neutral-1000);
32
- --color-border-focus: var(--color-brand-900);
33
-
34
- /* Automatic theme morph — same timing as light theme */
35
15
  transition:
36
16
  --color-surface-page 220ms var(--ease-out),
37
- --color-surface-card 220ms var(--ease-out),
38
17
  --color-surface-elevated 220ms var(--ease-out),
39
- --color-surface-inverse 220ms var(--ease-out),
40
18
  --color-content-primary 180ms var(--ease-out),
41
19
  --color-content-secondary 180ms var(--ease-out),
42
- --color-content-disabled 180ms var(--ease-out),
43
- --color-content-inverse 180ms var(--ease-out),
44
- --color-content-link 180ms var(--ease-out),
45
20
  --color-interactive 180ms var(--ease-out),
46
- --color-interactive-hover 180ms var(--ease-out),
47
- --color-interactive-active 180ms var(--ease-out),
48
- --color-border-default 180ms var(--ease-out),
49
- --color-border-strong 180ms var(--ease-out),
50
- --color-border-focus 180ms var(--ease-out);
21
+ --color-border-default 180ms var(--ease-out);
51
22
  }
23
+
@@ -5,57 +5,22 @@
5
5
  */
6
6
 
7
7
  [data-theme="dark"] {
8
- /* Surfaces */
9
- --background: var(--gray-950);
10
- --background-elevated: var(--gray-900);
11
- --background-inverse: var(--gray-50);
12
-
13
- /* Content (Text & Icons) */
14
- --foreground: var(--gray-50);
15
- --foreground-muted: var(--gray-400);
16
- --foreground-disabled: var(--gray-600);
17
- --foreground-inverse: var(--gray-900);
18
- --foreground-link: var(--brand-300);
19
-
20
- /* Interactive Elements */
21
- --primary: var(--brand-400);
22
- --primary-hover: var(--brand-300);
23
- --primary-active: var(--brand-200);
24
- --primary-focus: var(--brand-400);
25
- --primary-disabled: var(--gray-700);
26
- --primary-foreground: var(--gray-0);
27
-
28
- /* Borders */
29
- --border: var(--gray-800);
30
- --border-strong: var(--gray-600);
31
- --border-focus: var(--brand-400);
8
+ --color-surface-page: var(--gray-900);
9
+ --color-surface-elevated: var(--gray-800);
10
+ --color-content-primary: var(--color-white);
11
+ --color-content-secondary:var(--gray-100);
12
+ --color-interactive: var(--brand);
13
+ --color-border-default: var(--gray-800);
32
14
  }
33
15
 
34
16
  @media (prefers-color-scheme: dark) {
35
17
  :root:not([data-theme="light"]) {
36
- /* Surfaces */
37
- --background: var(--gray-950);
38
- --background-elevated: var(--gray-900);
39
- --background-inverse: var(--gray-50);
40
-
41
- /* Content (Text & Icons) */
42
- --foreground: var(--gray-50);
43
- --foreground-muted: var(--gray-400);
44
- --foreground-disabled: var(--gray-600);
45
- --foreground-inverse: var(--gray-900);
46
- --foreground-link: var(--brand-300);
47
-
48
- /* Interactive Elements */
49
- --primary: var(--brand-400);
50
- --primary-hover: var(--brand-300);
51
- --primary-active: var(--brand-200);
52
- --primary-focus: var(--brand-400);
53
- --primary-disabled: var(--gray-700);
54
- --primary-foreground: var(--gray-0);
55
-
56
- /* Borders */
57
- --border: var(--gray-800);
58
- --border-strong: var(--gray-600);
59
- --border-focus: var(--brand-400);
18
+ --color-surface-page: var(--gray-900);
19
+ --color-surface-elevated: var(--gray-800);
20
+ --color-content-primary: var(--color-white);
21
+ --color-content-secondary:var(--gray-100);
22
+ --color-interactive: var(--brand);
23
+ --color-border-default: var(--gray-800);
60
24
  }
61
25
  }
26
+
@@ -5,53 +5,21 @@
5
5
  */
6
6
 
7
7
  :root {
8
- /* Surfaces */
9
- --background: var(--gray-50);
10
- --background-elevated: var(--gray-0);
11
- --background-inverse: var(--gray-900);
12
-
13
- /* Content (Text & Icons) */
14
- --foreground: var(--gray-900);
15
- --foreground-muted: var(--gray-600);
16
- --foreground-disabled: var(--gray-400);
17
- --foreground-inverse: var(--gray-50);
18
- --foreground-link: var(--brand-600);
19
-
20
- /* Interactive Elements */
21
- --primary: var(--brand-500);
22
- --primary-hover: var(--brand-600);
23
- --primary-active: var(--brand-700);
24
- --primary-focus: var(--brand-500);
25
- --primary-disabled: var(--gray-300);
26
- --primary-foreground: var(--gray-0);
27
-
28
- /* Feedback Semantics */
29
- --success: var(--success-500);
30
- --warn: var(--warn-500);
31
- --error: var(--error-500);
32
- --info: var(--info-500);
33
-
34
- /* Borders */
35
- --border: var(--gray-200);
36
- --border-strong: var(--gray-400);
37
- --border-focus: var(--brand-500);
8
+ --color-surface-page: var(--color-white);
9
+ --color-surface-elevated: var(--color-white);
10
+ --color-content-primary: var(--gray-900);
11
+ --color-content-secondary:var(--gray-800);
12
+ --color-interactive: var(--brand);
13
+ --color-border-default: var(--gray-200);
38
14
 
39
15
  /* Automatic theme morph configuration */
40
16
  transition:
41
- --background 220ms var(--ease-out),
42
- --background-elevated 220ms var(--ease-out),
43
- --background-inverse 220ms var(--ease-out),
44
- --foreground 180ms var(--ease-out),
45
- --foreground-muted 180ms var(--ease-out),
46
- --foreground-disabled 180ms var(--ease-out),
47
- --foreground-inverse 180ms var(--ease-out),
48
- --foreground-link 180ms var(--ease-out),
49
- --primary 180ms var(--ease-out),
50
- --primary-hover 180ms var(--ease-out),
51
- --primary-active 180ms var(--ease-out),
52
- --border 180ms var(--ease-out),
53
- --border-strong 180ms var(--ease-out),
54
- --border-focus 180ms var(--ease-out);
17
+ --color-surface-page 220ms var(--ease-out),
18
+ --color-surface-elevated 220ms var(--ease-out),
19
+ --color-content-primary 180ms var(--ease-out),
20
+ --color-content-secondary 180ms var(--ease-out),
21
+ --color-interactive 180ms var(--ease-out),
22
+ --color-border-default 180ms var(--ease-out);
55
23
  }
56
24
 
57
25
  @media (prefers-reduced-motion: reduce) {
@@ -59,3 +27,4 @@
59
27
  transition: none !important;
60
28
  }
61
29
  }
30
+
@@ -1,27 +1,32 @@
1
1
  /**
2
2
  * tokens/semantic/transitions.css
3
3
  *
4
- * View Transition pseudo-element theming.
5
- * Connects the browser's CSS View Transitions API to the semantic token system.
4
+ * View Transition pseudo-element mapping and layout swap animations.
6
5
  */
7
6
 
8
7
  :root {
9
- /* Backdrop behind old and new page snapshots during a transition */
10
- --transition-bg: var(--color-surface-page);
11
-
12
- /* Timing tokens used by JS when calling startViewTransition */
13
8
  --transition-duration: var(--duration-normal);
14
9
  --transition-easing: var(--ease-out);
15
-
16
- /* Directional modifiers pushed pages feel different from popped pages */
17
- --transition-push: var(--ease-out);
18
- --transition-pop: var(--ease-in);
10
+ --transition-push: cubic-bezier(0.1, 0.9, 0.2, 1);
11
+ --transition-pop: cubic-bezier(0.9, 0.1, 1, 0.2);
19
12
  --transition-replace: var(--ease-in-out);
13
+ --transition-offset: 30px;
14
+ --transition-bg: var(--color-surface-page);
20
15
  }
21
16
 
22
- ::view-transition-old(root),
17
+ ::view-transition-old(root) {
18
+ animation: 90ms ease-in both fade-out;
19
+ }
23
20
  ::view-transition-new(root) {
24
- background: var(--transition-bg);
21
+ animation: var(--transition-duration) var(--transition-easing) both slide-in;
22
+ }
23
+
24
+ @keyframes fade-out {
25
+ to { opacity: 0; }
26
+ }
27
+ @keyframes slide-in {
28
+ from { transform: translateY(var(--transition-offset)); }
29
+ to { transform: translateY(0); }
25
30
  }
26
31
 
27
32
  @media (prefers-reduced-motion: reduce) {
@@ -29,4 +34,9 @@
29
34
  --transition-duration: 0ms;
30
35
  --transition-easing: linear;
31
36
  }
37
+ ::view-transition-old(root),
38
+ ::view-transition-new(root) {
39
+ animation: none !important;
40
+ }
32
41
  }
42
+