@ojiepermana/angular 0.1.0 → 21.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.
Files changed (91) hide show
  1. package/README.md +41 -246
  2. package/chart/README.md +0 -0
  3. package/fesm2022/ojiepermana-angular-chart.mjs +3714 -0
  4. package/fesm2022/ojiepermana-angular-chart.mjs.map +1 -0
  5. package/fesm2022/ojiepermana-angular-component.mjs +3463 -0
  6. package/fesm2022/ojiepermana-angular-component.mjs.map +1 -0
  7. package/fesm2022/ojiepermana-angular-layout.mjs +272 -401
  8. package/fesm2022/ojiepermana-angular-layout.mjs.map +1 -1
  9. package/fesm2022/ojiepermana-angular-navigation.mjs +2225 -135
  10. package/fesm2022/ojiepermana-angular-navigation.mjs.map +1 -1
  11. package/fesm2022/ojiepermana-angular-theme.mjs +381 -1
  12. package/fesm2022/ojiepermana-angular-theme.mjs.map +1 -1
  13. package/fesm2022/ojiepermana-angular.mjs +15 -1
  14. package/fesm2022/ojiepermana-angular.mjs.map +1 -1
  15. package/package.json +49 -36
  16. package/theme/styles/etos.css +38 -0
  17. package/theme/styles/index.css +32 -8
  18. package/theme/styles/themes/brand/etos/color.css +21 -0
  19. package/theme/styles/themes/brand/etos/style.css +50 -0
  20. package/theme/styles/themes/library/_components.css +63 -0
  21. package/theme/styles/themes/library/_layers.css +15 -0
  22. package/theme/styles/themes/library/_material-overrides.css +254 -0
  23. package/theme/styles/themes/library/_tokens.css +54 -0
  24. package/theme/styles/themes/library/color/amber.css +18 -0
  25. package/theme/styles/themes/library/color/blue.css +23 -0
  26. package/theme/styles/themes/library/color/green.css +18 -0
  27. package/theme/styles/themes/library/color/index.css +9 -0
  28. package/theme/styles/themes/library/color/purple.css +18 -0
  29. package/theme/styles/themes/library/color/red.css +18 -0
  30. package/theme/styles/themes/library/style/brutal.css +47 -0
  31. package/theme/styles/themes/library/style/default.css +51 -0
  32. package/theme/styles/themes/library/style/index.css +8 -0
  33. package/theme/styles/themes/library/style/sharp.css +47 -0
  34. package/theme/styles/themes/library/style/soft.css +47 -0
  35. package/theme/styles/themes/mode/dark.css +20 -0
  36. package/theme/styles/themes/mode/index.css +6 -0
  37. package/theme/styles/themes/mode/light.css +24 -0
  38. package/theme/styles/themes/taildwind.css +109 -0
  39. package/types/ojiepermana-angular-chart.d.ts +1094 -0
  40. package/types/ojiepermana-angular-component.d.ts +1174 -0
  41. package/types/ojiepermana-angular-layout.d.ts +123 -76
  42. package/types/ojiepermana-angular-navigation.d.ts +257 -71
  43. package/types/ojiepermana-angular-theme.d.ts +170 -1
  44. package/types/ojiepermana-angular.d.ts +2 -1
  45. package/fesm2022/ojiepermana-angular-internal.mjs +0 -473
  46. package/fesm2022/ojiepermana-angular-internal.mjs.map +0 -1
  47. package/fesm2022/ojiepermana-angular-navigation-horizontal.mjs +0 -785
  48. package/fesm2022/ojiepermana-angular-navigation-horizontal.mjs.map +0 -1
  49. package/fesm2022/ojiepermana-angular-navigation-vertical.mjs +0 -1568
  50. package/fesm2022/ojiepermana-angular-navigation-vertical.mjs.map +0 -1
  51. package/fesm2022/ojiepermana-angular-shell.mjs +0 -14
  52. package/fesm2022/ojiepermana-angular-shell.mjs.map +0 -1
  53. package/fesm2022/ojiepermana-angular-theme-component.mjs +0 -235
  54. package/fesm2022/ojiepermana-angular-theme-component.mjs.map +0 -1
  55. package/fesm2022/ojiepermana-angular-theme-directive.mjs +0 -29
  56. package/fesm2022/ojiepermana-angular-theme-directive.mjs.map +0 -1
  57. package/fesm2022/ojiepermana-angular-theme-service.mjs +0 -241
  58. package/fesm2022/ojiepermana-angular-theme-service.mjs.map +0 -1
  59. package/layout/README.md +0 -144
  60. package/navigation/README.md +0 -215
  61. package/shell/README.md +0 -37
  62. package/styles/index.css +0 -2
  63. package/styles/resets.css +0 -22
  64. package/theme/README.md +0 -379
  65. package/theme/styles/adapters/material-ui/index.css +0 -205
  66. package/theme/styles/layout/horizontal.css +0 -109
  67. package/theme/styles/layout/index.css +0 -19
  68. package/theme/styles/layout/vertical.css +0 -75
  69. package/theme/styles/modes/dark.css +0 -84
  70. package/theme/styles/presets/colors/blue.css +0 -45
  71. package/theme/styles/presets/colors/brand.css +0 -52
  72. package/theme/styles/presets/colors/cyan.css +0 -45
  73. package/theme/styles/presets/colors/green.css +0 -45
  74. package/theme/styles/presets/colors/index.css +0 -7
  75. package/theme/styles/presets/colors/orange.css +0 -45
  76. package/theme/styles/presets/colors/purple.css +0 -45
  77. package/theme/styles/presets/colors/red.css +0 -45
  78. package/theme/styles/presets/styles/flat.css +0 -61
  79. package/theme/styles/presets/styles/glass.css +0 -28
  80. package/theme/styles/presets/styles/index.css +0 -2
  81. package/theme/styles/roles/index.css +0 -67
  82. package/theme/styles/tokens/foundation.css +0 -136
  83. package/theme/styles/tokens/semantic.css +0 -87
  84. package/theme/styles/utilities/index.css +0 -88
  85. package/types/ojiepermana-angular-internal.d.ts +0 -89
  86. package/types/ojiepermana-angular-navigation-horizontal.d.ts +0 -77
  87. package/types/ojiepermana-angular-navigation-vertical.d.ts +0 -260
  88. package/types/ojiepermana-angular-shell.d.ts +0 -12
  89. package/types/ojiepermana-angular-theme-component.d.ts +0 -46
  90. package/types/ojiepermana-angular-theme-directive.d.ts +0 -10
  91. package/types/ojiepermana-angular-theme-service.d.ts +0 -68
@@ -1,61 +0,0 @@
1
- :root,
2
- [data-theme-style='flat'] {
3
- --typeface-plain: var(--theme-style-flat-plain-font, 'Helvetica Neue', 'Arial Nova', sans-serif);
4
- --typeface-brand: var(--theme-style-flat-brand-font, var(--typeface-plain));
5
- --typeface-mono: var(--theme-style-flat-mono-font, 'Azeret Mono', ui-monospace, monospace);
6
- --radius: 0.5rem;
7
- --background: #f2f1ed;
8
- --foreground: #26251e;
9
- --card: #ebeae5;
10
- --card-foreground: var(--foreground);
11
- --popover: #f7f7f4;
12
- --popover-foreground: var(--foreground);
13
- --muted: #e6e5e0;
14
- --muted-foreground: rgb(38 37 30 / 0.62);
15
- --border: oklab(0.263084 -0.00230259 0.0124794 / 0.1);
16
- --input: oklab(0.263084 -0.00230259 0.0124794 / 0.16);
17
- --ring: color-mix(in oklab, var(--theme-primary) 34%, var(--foreground));
18
- --sidebar: #e6e5e0;
19
- --sidebar-foreground: var(--foreground);
20
- --sidebar-primary: color-mix(in oklab, var(--foreground) 8%, var(--background));
21
- --sidebar-primary-foreground: var(--foreground);
22
- --sidebar-accent: color-mix(in oklab, var(--theme-primary) 12%, var(--sidebar));
23
- --sidebar-accent-foreground: var(--foreground);
24
- --shell-surface: var(--card);
25
- --shell-foreground: var(--card-foreground);
26
- --shell-border: var(--border);
27
- --shell-shadow:
28
- rgb(0 0 0 / 0.14) 0 28px 70px, rgb(0 0 0 / 0.1) 0 14px 32px, oklab(0.263084 -0.00230259 0.0124794 / 0.1) 0 0 0 1px;
29
- --shell-backdrop: var(--backdrop);
30
- --surface-elevated: var(--popover);
31
- --surface-elevated-foreground: var(--popover-foreground);
32
- --surface-elevated-border: oklab(0.263084 -0.00230259 0.0124794 / 0.2);
33
- --surface-elevated-shadow:
34
- rgb(0 0 0 / 0.12) 0 24px 52px, rgb(0 0 0 / 0.08) 0 10px 24px, oklab(0.263084 -0.00230259 0.0124794 / 0.1) 0 0 0 1px;
35
- }
36
-
37
- .dark[data-theme-style='flat'] {
38
- --background: #181710;
39
- --foreground: #ebe7de;
40
- --card: #24221a;
41
- --card-foreground: var(--foreground);
42
- --popover: #2b2820;
43
- --popover-foreground: var(--foreground);
44
- --muted: #302d24;
45
- --muted-foreground: rgb(235 231 222 / 0.72);
46
- --border: rgb(235 231 222 / 0.12);
47
- --input: rgb(235 231 222 / 0.18);
48
- --ring: color-mix(in oklab, var(--theme-primary) 48%, var(--foreground));
49
- --sidebar: #1f1d16;
50
- --sidebar-foreground: var(--foreground);
51
- --sidebar-primary: color-mix(in oklab, var(--foreground) 12%, var(--background));
52
- --sidebar-primary-foreground: var(--foreground);
53
- --sidebar-accent: color-mix(in oklab, var(--theme-primary) 18%, var(--sidebar));
54
- --sidebar-accent-foreground: var(--foreground);
55
- --shell-shadow: rgb(0 0 0 / 0.44) 0 28px 70px, rgb(0 0 0 / 0.28) 0 14px 32px, rgb(235 231 222 / 0.08) 0 0 0 1px;
56
- --surface-elevated: #2b2820;
57
- --surface-elevated-foreground: var(--foreground);
58
- --surface-elevated-border: rgb(235 231 222 / 0.12);
59
- --surface-elevated-shadow:
60
- rgb(0 0 0 / 0.42) 0 24px 60px, rgb(0 0 0 / 0.28) 0 12px 28px, rgb(235 231 222 / 0.08) 0 0 0 1px;
61
- }
@@ -1,28 +0,0 @@
1
- [data-theme-style='glass'] {
2
- --typeface-plain: var(
3
- --theme-style-glass-plain-font,
4
- 'Avenir Next',
5
- 'Helvetica Neue',
6
- 'Segoe UI',
7
- ui-sans-serif,
8
- sans-serif
9
- );
10
- --typeface-brand: var(--theme-style-glass-brand-font, ui-rounded, 'Avenir Next', 'Segoe UI', sans-serif);
11
- --typeface-mono: var(
12
- --theme-style-glass-mono-font,
13
- 'SFMono-Regular',
14
- 'Cascadia Mono',
15
- 'Liberation Mono',
16
- ui-monospace,
17
- monospace
18
- );
19
- --shell-surface: color-mix(in oklab, var(--card) 84%, transparent);
20
- --shell-foreground: var(--card-foreground);
21
- --shell-border: color-mix(in oklab, var(--border) 82%, white 18%);
22
- --shell-shadow: var(--shadow-md);
23
- --shell-backdrop: blur(18px) saturate(1.14);
24
- --surface-elevated: color-mix(in oklab, var(--popover) 90%, transparent);
25
- --surface-elevated-foreground: var(--popover-foreground);
26
- --surface-elevated-border: color-mix(in oklab, var(--border) 80%, white 20%);
27
- --surface-elevated-shadow: var(--shadow-lg);
28
- }
@@ -1,2 +0,0 @@
1
- @import './flat.css';
2
- @import './glass.css';
@@ -1,67 +0,0 @@
1
- :root {
2
- /* Component-group role tokens bridge style presets and selectors. */
3
- --nav-surface: color-mix(in oklab, var(--shell-surface) 92%, transparent);
4
- --nav-foreground: var(--shell-foreground);
5
- --nav-border: var(--shell-border);
6
- --nav-font-family: var(--typeface-plain);
7
- --nav-item-font-size: 0.875rem;
8
- --nav-item-line-height: 1.25rem;
9
- --nav-item-font-weight: 500;
10
- --nav-item-active-font-weight: 600;
11
- --nav-subtitle-font-size: 0.75rem;
12
- --nav-subtitle-line-height: 1rem;
13
- --nav-subtitle-font-weight: 400;
14
- --nav-badge-font-size: 0.75rem;
15
- --nav-badge-line-height: 1rem;
16
- --nav-badge-font-weight: 600;
17
- --nav-group-title-font-size: 0.75rem;
18
- --nav-group-title-line-height: 1rem;
19
- --nav-group-title-font-weight: 600;
20
- --nav-group-title-letter-spacing: 0.08em;
21
- --nav-group-subtitle-font-size: 0.75rem;
22
- --nav-group-subtitle-line-height: 1rem;
23
- --nav-group-subtitle-font-weight: 400;
24
- --nav-item-hover-surface: var(--tertiary-container);
25
- --nav-item-hover-foreground: var(--tertiary-container-foreground);
26
- --nav-item-active-surface: var(--secondary-container);
27
- --nav-item-active-foreground: var(--secondary-container-foreground);
28
-
29
- --sidebar-chrome-surface: var(--sidebar);
30
- --sidebar-chrome-foreground: var(--sidebar-foreground);
31
- --sidebar-chrome-border: var(--sidebar-border);
32
- --sidebar-item-hover-surface: var(--sidebar-accent);
33
- --sidebar-item-hover-foreground: var(--sidebar-accent-foreground);
34
- --sidebar-item-active-surface: var(--sidebar-primary);
35
- --sidebar-item-active-foreground: var(--sidebar-primary-foreground);
36
-
37
- --container-surface: var(--shell-surface);
38
- --container-foreground: var(--shell-foreground);
39
- --container-border: var(--shell-border);
40
- --container-shadow: var(--shell-shadow);
41
- --container-backdrop: var(--shell-backdrop);
42
-
43
- --overlay-surface: var(--surface-elevated);
44
- --overlay-foreground: var(--surface-elevated-foreground);
45
- --overlay-border: var(--surface-elevated-border);
46
- --overlay-shadow: var(--surface-elevated-shadow);
47
- --overlay-backdrop: var(--shell-backdrop);
48
-
49
- --data-surface: var(--container-surface);
50
- --data-foreground: var(--container-foreground);
51
- --data-border: var(--container-border);
52
- --data-header-surface: color-mix(in oklab, var(--overlay-surface) 72%, var(--data-surface));
53
- --data-header-foreground: var(--data-foreground);
54
- --data-row-hover-surface: color-mix(in oklab, var(--tertiary-container) 72%, var(--data-surface));
55
- --data-row-selected-surface: var(--secondary-container);
56
-
57
- --control-surface: var(--container-surface);
58
- --control-foreground: var(--container-foreground);
59
- --control-border: var(--container-border);
60
- --control-shadow: none;
61
- --control-backdrop: var(--container-backdrop);
62
- --control-hover-surface: var(--tertiary-container);
63
- --control-hover-foreground: var(--tertiary-container-foreground);
64
- --control-active-surface: var(--secondary-container);
65
- --control-active-foreground: var(--secondary-container-foreground);
66
- --control-focus-ring: var(--ring);
67
- }
@@ -1,136 +0,0 @@
1
- @theme inline {
2
- --font-sans: var(--typeface-plain);
3
- --font-display: var(--typeface-brand);
4
- --font-mono: var(--typeface-mono);
5
- --color-background: var(--background);
6
- --color-foreground: var(--foreground);
7
- --color-card: var(--card);
8
- --color-card-foreground: var(--card-foreground);
9
- --color-popover: var(--popover);
10
- --color-popover-foreground: var(--popover-foreground);
11
- --color-primary: var(--primary);
12
- --color-primary-foreground: var(--primary-foreground);
13
- --color-primary-solid: var(--primary-solid);
14
- --color-primary-solid-foreground: var(--primary-solid-foreground);
15
- --color-primary-container: var(--primary-container);
16
- --color-primary-container-foreground: var(--primary-container-foreground);
17
- --color-secondary: var(--secondary);
18
- --color-secondary-foreground: var(--secondary-foreground);
19
- --color-secondary-solid: var(--secondary-solid);
20
- --color-secondary-solid-foreground: var(--secondary-solid-foreground);
21
- --color-secondary-container: var(--secondary-container);
22
- --color-secondary-container-foreground: var(--secondary-container-foreground);
23
- --color-tertiary: var(--tertiary);
24
- --color-tertiary-foreground: var(--tertiary-foreground);
25
- --color-tertiary-solid: var(--tertiary-solid);
26
- --color-tertiary-solid-foreground: var(--tertiary-solid-foreground);
27
- --color-tertiary-container: var(--tertiary-container);
28
- --color-tertiary-container-foreground: var(--tertiary-container-foreground);
29
- --color-neutral: var(--neutral);
30
- --color-neutral-foreground: var(--neutral-foreground);
31
- --color-neutral-solid: var(--neutral-solid);
32
- --color-neutral-solid-foreground: var(--neutral-solid-foreground);
33
- --color-neutral-container: var(--neutral-container);
34
- --color-neutral-container-foreground: var(--neutral-container-foreground);
35
- --color-muted: var(--muted);
36
- --color-muted-foreground: var(--muted-foreground);
37
- --color-accent: var(--accent);
38
- --color-accent-foreground: var(--accent-foreground);
39
- --color-destructive: var(--destructive);
40
- --color-destructive-solid: var(--destructive-solid);
41
- --color-destructive-solid-foreground: var(--destructive-solid-foreground);
42
- --color-destructive-container: var(--destructive-container);
43
- --color-destructive-container-foreground: var(--destructive-container-foreground);
44
- --color-success: var(--success);
45
- --color-success-foreground: var(--success-foreground);
46
- --color-success-solid: var(--success-solid);
47
- --color-success-solid-foreground: var(--success-solid-foreground);
48
- --color-success-container: var(--success-container);
49
- --color-success-container-foreground: var(--success-container-foreground);
50
- --color-warning: var(--warning);
51
- --color-warning-foreground: var(--warning-foreground);
52
- --color-warning-solid: var(--warning-solid);
53
- --color-warning-solid-foreground: var(--warning-solid-foreground);
54
- --color-warning-container: var(--warning-container);
55
- --color-warning-container-foreground: var(--warning-container-foreground);
56
- --color-info: var(--info);
57
- --color-info-foreground: var(--info-foreground);
58
- --color-info-solid: var(--info-solid);
59
- --color-info-solid-foreground: var(--info-solid-foreground);
60
- --color-info-container: var(--info-container);
61
- --color-info-container-foreground: var(--info-container-foreground);
62
- --color-disabled: var(--disabled);
63
- --color-disabled-foreground: var(--disabled-foreground);
64
- --color-disabled-border: var(--disabled-border);
65
- --color-inverse: var(--inverse);
66
- --color-inverse-foreground: var(--inverse-foreground);
67
- --color-inverse-border: var(--inverse-border);
68
- --color-border: var(--border);
69
- --color-input: var(--input);
70
- --color-ring: var(--ring);
71
- --color-sidebar: var(--sidebar);
72
- --color-sidebar-foreground: var(--sidebar-foreground);
73
- --color-sidebar-primary: var(--sidebar-primary);
74
- --color-sidebar-primary-foreground: var(--sidebar-primary-foreground);
75
- --color-sidebar-accent: var(--sidebar-accent);
76
- --color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
77
- --color-sidebar-border: var(--sidebar-border);
78
- --color-sidebar-ring: var(--sidebar-ring);
79
- --radius-sm: calc(var(--radius) * 0.6);
80
- --radius-md: calc(var(--radius) * 0.8);
81
- --radius-lg: var(--radius);
82
- --radius-xl: calc(var(--radius) * 1.4);
83
- --radius-2xl: calc(var(--radius) * 1.8);
84
- --radius-3xl: calc(var(--radius) * 2.2);
85
- --radius-4xl: calc(var(--radius) * 2.6);
86
- }
87
-
88
- /* Keep these radius tokens in :root as well so non-Tailwind consumers get the same values as @theme. */
89
- :root {
90
- --typeface-plain: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
91
- --typeface-brand: var(--typeface-plain);
92
- --typeface-mono: 'SFMono-Regular', 'Cascadia Mono', 'Liberation Mono', ui-monospace, monospace;
93
- --radius: 0.75rem;
94
- --radius-sm: calc(var(--radius) * 0.6);
95
- --radius-md: calc(var(--radius) * 0.8);
96
- --radius-lg: var(--radius);
97
- --radius-xl: calc(var(--radius) * 1.4);
98
- --radius-2xl: calc(var(--radius) * 1.8);
99
- --radius-3xl: calc(var(--radius) * 2.2);
100
- --radius-4xl: calc(var(--radius) * 2.6);
101
- --shadow-xs: 0 1px 2px rgb(15 23 42 / 0.06);
102
- --shadow-sm: 0 12px 24px -18px rgb(15 23 42 / 0.18);
103
- --shadow-md: 0 20px 40px -24px rgb(15 23 42 / 0.22);
104
- --shadow-lg: 0 32px 60px -32px rgb(15 23 42 / 0.28);
105
- --backdrop: none;
106
- --theme-primary: oklch(0.59 0.18 257.5);
107
- --theme-on-primary: oklch(0.985 0 0);
108
- --theme-secondary: oklch(0.654 0.137 259.075);
109
- --theme-on-secondary: oklch(0.205 0.012 285.9);
110
- --theme-tertiary: oklch(0.72 0.096 260.483);
111
- --theme-on-tertiary: oklch(0.205 0.012 285.9);
112
- --theme-neutral: oklch(0.736 0.035 265.705);
113
- --theme-on-neutral: oklch(0.205 0.012 285.9);
114
- --layout-shell-max-width: 100%;
115
- --layout-shell-padding: 0rem;
116
- --layout-shell-radius: 0rem;
117
- --layout-sidebar-width: 280px;
118
- --layout-header-height: 3.75rem;
119
- --layout-header-display: grid;
120
- --layout-sidebar-display: flex;
121
- --ngt-motion-duration-fast: 140ms;
122
- --ngt-motion-duration-medium: 220ms;
123
- --ngt-motion-ease-standard: cubic-bezier(0.22, 1, 0.36, 1);
124
- --ngt-chrome-transition:
125
- background-color var(--ngt-motion-duration-medium) var(--ngt-motion-ease-standard),
126
- color var(--ngt-motion-duration-fast) var(--ngt-motion-ease-standard),
127
- border-color var(--ngt-motion-duration-medium) var(--ngt-motion-ease-standard),
128
- box-shadow var(--ngt-motion-duration-medium) var(--ngt-motion-ease-standard),
129
- outline-color var(--ngt-motion-duration-fast) var(--ngt-motion-ease-standard),
130
- text-decoration-color var(--ngt-motion-duration-fast) var(--ngt-motion-ease-standard),
131
- backdrop-filter var(--ngt-motion-duration-medium) var(--ngt-motion-ease-standard);
132
- --ngt-shell-transition:
133
- var(--ngt-chrome-transition), border-radius var(--ngt-motion-duration-medium) var(--ngt-motion-ease-standard);
134
- --ngt-control-transition:
135
- var(--ngt-chrome-transition), transform var(--ngt-motion-duration-fast) var(--ngt-motion-ease-standard);
136
- }
@@ -1,87 +0,0 @@
1
- :root {
2
- color-scheme: light;
3
- --background: oklch(0.988 0.003 286.1);
4
- --foreground: oklch(0.205 0.012 285.9);
5
- --card: oklch(0.998 0.001 286.4);
6
- --card-foreground: var(--foreground);
7
- --popover: oklch(0.997 0.002 286.5);
8
- --popover-foreground: var(--foreground);
9
- --primary-solid: var(--theme-primary);
10
- --primary-solid-foreground: var(--theme-on-primary);
11
- --primary-container: color-mix(in oklab, var(--theme-primary) 14%, var(--background));
12
- --primary-container-foreground: var(--foreground);
13
- --primary: var(--primary-solid);
14
- --primary-foreground: var(--primary-solid-foreground);
15
- --secondary-solid: var(--theme-secondary);
16
- --secondary-solid-foreground: var(--theme-on-secondary);
17
- --secondary-container: color-mix(in oklab, var(--theme-secondary) 12%, var(--background));
18
- --secondary-container-foreground: var(--foreground);
19
- --secondary: var(--secondary-container);
20
- --secondary-foreground: var(--secondary-container-foreground);
21
- --tertiary-solid: var(--theme-tertiary);
22
- --tertiary-solid-foreground: var(--theme-on-tertiary);
23
- --tertiary-container: color-mix(in oklab, var(--theme-tertiary) 10%, var(--background));
24
- --tertiary-container-foreground: var(--foreground);
25
- --tertiary: var(--tertiary-container);
26
- --tertiary-foreground: var(--tertiary-container-foreground);
27
- --neutral-solid: var(--theme-neutral);
28
- --neutral-solid-foreground: var(--theme-on-neutral);
29
- --neutral-container: color-mix(in oklab, var(--theme-neutral) 18%, var(--background));
30
- --neutral-container-foreground: var(--foreground);
31
- --neutral: var(--neutral-container);
32
- --neutral-foreground: var(--neutral-container-foreground);
33
- --muted: oklch(0.965 0.004 286.1);
34
- --muted-foreground: oklch(0.553 0.013 286.2);
35
- --accent: var(--tertiary-container);
36
- --accent-foreground: var(--tertiary-container-foreground);
37
- --destructive-solid: oklch(0.637 0.237 25.5);
38
- --destructive-solid-foreground: oklch(0.985 0 0);
39
- --destructive-container: color-mix(in oklab, var(--destructive-solid) 14%, var(--background));
40
- --destructive-container-foreground: var(--foreground);
41
- --destructive: var(--destructive-solid);
42
- --destructive-foreground: var(--destructive-solid-foreground);
43
- --success-solid: oklch(0.673 0.152 151.5);
44
- --success-solid-foreground: oklch(0.192 0.015 151.3);
45
- --success-container: color-mix(in oklab, var(--success-solid) 14%, var(--background));
46
- --success-container-foreground: var(--foreground);
47
- --success: var(--success-container);
48
- --success-foreground: var(--success-container-foreground);
49
- --warning-solid: oklch(0.796 0.136 82.4);
50
- --warning-solid-foreground: oklch(0.262 0.028 73.1);
51
- --warning-container: color-mix(in oklab, var(--warning-solid) 16%, var(--background));
52
- --warning-container-foreground: var(--foreground);
53
- --warning: var(--warning-container);
54
- --warning-foreground: var(--warning-container-foreground);
55
- --info-solid: oklch(0.69 0.116 239.4);
56
- --info-solid-foreground: oklch(0.19 0.014 286.1);
57
- --info-container: color-mix(in oklab, var(--info-solid) 14%, var(--background));
58
- --info-container-foreground: var(--foreground);
59
- --info: var(--info-container);
60
- --info-foreground: var(--info-container-foreground);
61
- --disabled: color-mix(in oklab, var(--neutral-solid) 14%, var(--background));
62
- --disabled-foreground: color-mix(in oklab, var(--foreground) 38%, var(--background));
63
- --disabled-border: color-mix(in oklab, var(--border) 70%, var(--background));
64
- --inverse: var(--foreground);
65
- --inverse-foreground: var(--background);
66
- --inverse-border: color-mix(in oklab, var(--inverse) 84%, var(--inverse-foreground));
67
- --border: color-mix(in oklab, var(--foreground) 12%, white 88%);
68
- --input: color-mix(in oklab, var(--foreground) 10%, white 90%);
69
- --ring: color-mix(in oklab, var(--primary-solid) 68%, white 32%);
70
- --sidebar: color-mix(in oklab, var(--card) 90%, var(--muted) 10%);
71
- --sidebar-foreground: var(--foreground);
72
- --sidebar-primary: var(--primary);
73
- --sidebar-primary-foreground: var(--primary-foreground);
74
- --sidebar-accent: color-mix(in oklab, var(--tertiary-solid) 12%, var(--sidebar));
75
- --sidebar-accent-foreground: var(--sidebar-foreground);
76
- --sidebar-border: var(--border);
77
- --sidebar-ring: var(--ring);
78
- --shell-surface: var(--card);
79
- --shell-foreground: var(--card-foreground);
80
- --shell-border: var(--border);
81
- --shell-shadow: var(--shadow-xs);
82
- --shell-backdrop: var(--backdrop);
83
- --surface-elevated: var(--popover);
84
- --surface-elevated-foreground: var(--popover-foreground);
85
- --surface-elevated-border: var(--border);
86
- --surface-elevated-shadow: var(--shadow-sm);
87
- }
@@ -1,88 +0,0 @@
1
- :root {
2
- font-family: var(--typeface-plain);
3
- }
4
-
5
- :where(button, input, textarea, select, optgroup) {
6
- font-family: var(--typeface-plain);
7
- }
8
-
9
- :where(h1, h2, h3, h4, h5, h6) {
10
- font-family: var(--typeface-brand);
11
- }
12
-
13
- :where(code, kbd, pre, samp) {
14
- font-family: var(--typeface-mono);
15
- }
16
-
17
- .style-shell {
18
- background: var(--container-surface);
19
- color: var(--container-foreground);
20
- border: 1px solid var(--container-border);
21
- box-shadow: var(--container-shadow);
22
- backdrop-filter: var(--container-backdrop);
23
- -webkit-backdrop-filter: var(--container-backdrop);
24
- transition: var(--ngt-shell-transition);
25
- }
26
-
27
- .focus-ring:focus-visible {
28
- outline: 2px solid var(--control-focus-ring);
29
- outline-offset: 2px;
30
- transition: outline-color var(--ngt-motion-duration-fast) var(--ngt-motion-ease-standard);
31
- }
32
-
33
- .ngt-icon-button {
34
- transition: var(--ngt-control-transition);
35
- }
36
-
37
- @media (prefers-reduced-motion: reduce) {
38
- :root {
39
- --ngt-motion-duration-fast: 0.01ms;
40
- --ngt-motion-duration-medium: 0.01ms;
41
- }
42
- }
43
-
44
- .ngt-icon-button.mat-mdc-icon-button .lucide {
45
- inline-size: 1.1rem;
46
- block-size: 1.1rem;
47
- }
48
-
49
- /* Compatibility aliases for consumers migrating toward direct Tailwind v4 token usage. */
50
- .bg-background {
51
- background-color: var(--background);
52
- }
53
-
54
- .bg-foreground {
55
- background-color: var(--foreground);
56
- }
57
-
58
- .text-background {
59
- color: var(--background);
60
- }
61
-
62
- .text-foreground {
63
- color: var(--foreground);
64
- }
65
-
66
- .text-foreground\/50 {
67
- color: color-mix(in oklab, var(--foreground) 50%, transparent);
68
- }
69
-
70
- .text-foreground\/60 {
71
- color: color-mix(in oklab, var(--foreground) 60%, transparent);
72
- }
73
-
74
- .text-foreground\/65 {
75
- color: color-mix(in oklab, var(--foreground) 65%, transparent);
76
- }
77
-
78
- .text-foreground\/70 {
79
- color: color-mix(in oklab, var(--foreground) 70%, transparent);
80
- }
81
-
82
- .text-foreground\/75 {
83
- color: color-mix(in oklab, var(--foreground) 75%, transparent);
84
- }
85
-
86
- .border-border {
87
- border-color: var(--border);
88
- }
@@ -1,89 +0,0 @@
1
- import * as _angular_core from '@angular/core';
2
- import { TemplateRef } from '@angular/core';
3
- import { LucideIcon } from '@lucide/angular';
4
- import { NavigationItem } from '@ojiepermana/angular/navigation';
5
-
6
- declare const libraryLucideConfigProvider: _angular_core.Provider;
7
-
8
- interface StorageLike {
9
- getItem(key: string): string | null;
10
- setItem(key: string, value: string): void;
11
- removeItem(key: string): void;
12
- }
13
- interface LocalStorageStateAdapterConfig<Axis extends string> {
14
- readonly isBrowser: boolean;
15
- readonly storage: StorageLike | null;
16
- readonly keys: Record<Axis, string>;
17
- readonly legacyPrefix: string;
18
- }
19
- declare class LocalStorageStateAdapter<Axis extends string> {
20
- private readonly config;
21
- constructor(config: LocalStorageStateAdapterConfig<Axis>);
22
- clear(axis: Axis): void;
23
- persist(axis: Axis, value: string): void;
24
- read<T extends string>(axis: Axis, fallback: T, isValid: (value: string) => value is T): T;
25
- private key;
26
- private legacyKey;
27
- }
28
-
29
- type NavigationItemContentVariant = 'horizontal' | 'vertical' | 'vertical-group';
30
- declare class NavigationItemContent {
31
- item: _angular_core.InputSignal<NavigationItem>;
32
- level: _angular_core.InputSignal<number>;
33
- variant: _angular_core.InputSignal<NavigationItemContentVariant>;
34
- protected readonly resolvedIcon: _angular_core.Signal<LucideIcon | null>;
35
- protected readonly horizontalIconClass: _angular_core.Signal<string | null>;
36
- protected readonly verticalIconClass: _angular_core.Signal<string | null>;
37
- protected readonly horizontalTitleClass: _angular_core.Signal<string | null>;
38
- protected readonly titleClass: _angular_core.Signal<string | null>;
39
- protected readonly subtitleClass: _angular_core.Signal<string | null>;
40
- protected readonly horizontalBadgeClass: _angular_core.Signal<string | null>;
41
- protected readonly verticalBadgeClass: _angular_core.Signal<string | null>;
42
- protected readonly titleContainerClass: _angular_core.Signal<"kit-navigation-group-title" | "kit-navigation-item-title">;
43
- protected readonly subtitleContainerClass: _angular_core.Signal<"kit-navigation-group-subtitle" | "kit-navigation-item-subtitle">;
44
- private joinClasses;
45
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<NavigationItemContent, never>;
46
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<NavigationItemContent, "navigation-item-content", never, { "item": { "alias": "item"; "required": true; "isSignal": true; }; "level": { "alias": "level"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
47
- }
48
-
49
- type NavigationTreeTemplateData = Record<string, unknown>;
50
- interface NavigationTreeItemContext {
51
- $implicit: NavigationItem;
52
- level: number;
53
- parentKey: string;
54
- isLast: boolean;
55
- data: NavigationTreeTemplateData | null;
56
- }
57
- declare class NavigationTreeOutlet {
58
- items: _angular_core.InputSignal<NavigationItem[]>;
59
- level: _angular_core.InputSignal<number>;
60
- parentKey: _angular_core.InputSignal<string>;
61
- data: _angular_core.InputSignal<NavigationTreeTemplateData | null>;
62
- branchTemplate: _angular_core.InputSignal<TemplateRef<NavigationTreeItemContext>>;
63
- leafTemplate: _angular_core.InputSignal<TemplateRef<NavigationTreeItemContext>>;
64
- groupTemplate: _angular_core.InputSignal<TemplateRef<NavigationTreeItemContext>>;
65
- dividerTemplate: _angular_core.InputSignal<TemplateRef<NavigationTreeItemContext> | null>;
66
- spacerTemplate: _angular_core.InputSignal<TemplateRef<NavigationTreeItemContext> | null>;
67
- trackByFn: _angular_core.InputSignal<(index: number, item: NavigationItem) => string | number | undefined>;
68
- shouldRenderItemFn: _angular_core.InputSignal<(item: NavigationItem) => boolean>;
69
- hasChildrenFn: _angular_core.InputSignal<(item: NavigationItem) => boolean>;
70
- resolveParentKeyFn: _angular_core.InputSignal<(parentKey: string, item: NavigationItem) => string>;
71
- trackItem(index: number, item: NavigationItem): string | number | undefined;
72
- shouldRender(item: NavigationItem): boolean;
73
- hasChildren(item: NavigationItem): boolean;
74
- resolveParentKey(parentKey: string, item: NavigationItem): string;
75
- templateContext(item: NavigationItem, isLast: boolean): NavigationTreeItemContext;
76
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<NavigationTreeOutlet, never>;
77
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<NavigationTreeOutlet, "navigation-tree-outlet", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; "level": { "alias": "level"; "required": false; "isSignal": true; }; "parentKey": { "alias": "parentKey"; "required": false; "isSignal": true; }; "data": { "alias": "data"; "required": false; "isSignal": true; }; "branchTemplate": { "alias": "branchTemplate"; "required": true; "isSignal": true; }; "leafTemplate": { "alias": "leafTemplate"; "required": true; "isSignal": true; }; "groupTemplate": { "alias": "groupTemplate"; "required": true; "isSignal": true; }; "dividerTemplate": { "alias": "dividerTemplate"; "required": false; "isSignal": true; }; "spacerTemplate": { "alias": "spacerTemplate"; "required": false; "isSignal": true; }; "trackByFn": { "alias": "trackByFn"; "required": false; "isSignal": true; }; "shouldRenderItemFn": { "alias": "shouldRenderItemFn"; "required": false; "isSignal": true; }; "hasChildrenFn": { "alias": "hasChildrenFn"; "required": false; "isSignal": true; }; "resolveParentKeyFn": { "alias": "resolveParentKeyFn"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
78
- }
79
-
80
- type NavigationExpandedItemsByParent = Record<string, string>;
81
- declare function trackNavigationTreeItem(index: number, item: NavigationItem): string | number | undefined;
82
- declare function getNavigationTreePathKey(parentKey: string, item: NavigationItem): string;
83
- declare function isNavigationTreeItemExpanded(expandedByParent: NavigationExpandedItemsByParent, parentKey: string, item: NavigationItem): boolean;
84
- declare function toggleNavigationTreeItemExpanded(expandedByParent: NavigationExpandedItemsByParent, parentKey: string, item: NavigationItem): NavigationExpandedItemsByParent;
85
- declare function hasActiveNavigationDescendant(item: NavigationItem, isItemActive: (item: NavigationItem) => boolean): boolean;
86
- declare function isNavigationTreeDescendant(parent: NavigationItem, item: NavigationItem): boolean;
87
-
88
- export { LocalStorageStateAdapter, NavigationItemContent, NavigationTreeOutlet, getNavigationTreePathKey, hasActiveNavigationDescendant, isNavigationTreeDescendant, isNavigationTreeItemExpanded, libraryLucideConfigProvider, toggleNavigationTreeItemExpanded, trackNavigationTreeItem };
89
- export type { NavigationExpandedItemsByParent, NavigationTreeItemContext, NavigationTreeTemplateData };
@@ -1,77 +0,0 @@
1
- import * as _angular_core from '@angular/core';
2
- import { NavigationItem, shouldRenderNavigationItem, hasNavigationChildren } from '@ojiepermana/angular/navigation';
3
- import { trackNavigationTreeItem, getNavigationTreePathKey } from '@ojiepermana/angular/internal';
4
-
5
- declare class HorizontalNavigationBranchItem {
6
- private _menuTrigger?;
7
- private _rootTrigger?;
8
- private _activeChildBranch;
9
- private readonly _document;
10
- readonly isMenuOpen: _angular_core.WritableSignal<boolean>;
11
- readonly expandedInlineBranchByParent: _angular_core.WritableSignal<Record<string, string>>;
12
- item: _angular_core.InputSignal<NavigationItem>;
13
- menuItem: _angular_core.InputSignal<boolean>;
14
- nested: _angular_core.InputSignal<boolean>;
15
- itemClicked: _angular_core.OutputEmitterRef<NavigationItem>;
16
- branchOpened: _angular_core.OutputEmitterRef<HorizontalNavigationBranchItem>;
17
- branchClosed: _angular_core.OutputEmitterRef<HorizontalNavigationBranchItem>;
18
- readonly itemChildren: _angular_core.Signal<NavigationItem[]>;
19
- readonly treeTemplateData: _angular_core.Signal<{
20
- inlineBranch: boolean;
21
- }>;
22
- readonly treeTrackByFn: typeof trackNavigationTreeItem;
23
- readonly treeShouldRenderItemFn: typeof shouldRenderNavigationItem;
24
- readonly treeHasChildrenFn: typeof hasNavigationChildren;
25
- readonly treeResolveParentKeyFn: typeof getNavigationTreePathKey;
26
- readonly menuPanelClass: _angular_core.Signal<"horizontal-navigation-menu horizontal-navigation-menu--nested" | "horizontal-navigation-menu horizontal-navigation-menu--root">;
27
- hasChildren(item: NavigationItem): boolean;
28
- shouldRenderItem(item: NavigationItem): boolean;
29
- trackByFn(index: number, item: NavigationItem): string | number;
30
- onMenuItemTriggerClick(event: MouseEvent): void;
31
- onChildItemClicked(child: NavigationItem): void;
32
- isInlineBranchExpanded(item: NavigationItem, parentKey: string): boolean;
33
- toggleInlineBranch(item: NavigationItem, parentKey: string): void;
34
- onInlineBranchHeaderClick(event: MouseEvent, item: NavigationItem, parentKey: string): void;
35
- getPathKey(parentKey: string, item: NavigationItem): string;
36
- onChildBranchOpened(branch: HorizontalNavigationBranchItem): void;
37
- onChildBranchClosed(branch: HorizontalNavigationBranchItem): void;
38
- handleMenuOpened(): void;
39
- handleMenuClosed(): void;
40
- closeMenu(): void;
41
- private _syncRootTriggerWidth;
42
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<HorizontalNavigationBranchItem, never>;
43
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<HorizontalNavigationBranchItem, "horizontal-navigation-branch-item", never, { "item": { "alias": "item"; "required": true; "isSignal": true; }; "menuItem": { "alias": "menuItem"; "required": false; "isSignal": true; }; "nested": { "alias": "nested"; "required": false; "isSignal": true; }; }, { "itemClicked": "itemClicked"; "branchOpened": "branchOpened"; "branchClosed": "branchClosed"; }, never, never, true, never>;
44
- }
45
-
46
- declare class HorizontalNavigation {
47
- private _navigationService;
48
- private _activeRootBranch;
49
- name: _angular_core.InputSignal<string>;
50
- navigation: _angular_core.InputSignal<NavigationItem[]>;
51
- itemClicked: _angular_core.OutputEmitterRef<NavigationItem>;
52
- navigationData: _angular_core.Signal<NavigationItem[]>;
53
- /**
54
- * Handle item click
55
- */
56
- onItemClicked(item: NavigationItem): void;
57
- onRootBranchOpened(branch: HorizontalNavigationBranchItem): void;
58
- onRootBranchClosed(branch: HorizontalNavigationBranchItem): void;
59
- shouldRenderItem(item: NavigationItem): boolean;
60
- hasChildren(item: NavigationItem): boolean;
61
- /**
62
- * Get flat navigation for utility purposes
63
- */
64
- getFlatNavigation(): NavigationItem[];
65
- /**
66
- * Get navigation item by ID
67
- */
68
- getItem(id: string): NavigationItem | null;
69
- /**
70
- * Get navigation item parent by ID
71
- */
72
- getItemParent(id: string): NavigationItem[] | NavigationItem | null;
73
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<HorizontalNavigation, never>;
74
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<HorizontalNavigation, "horizontal-navigation", never, { "name": { "alias": "name"; "required": false; "isSignal": true; }; "navigation": { "alias": "navigation"; "required": false; "isSignal": true; }; }, { "itemClicked": "itemClicked"; }, never, never, true, never>;
75
- }
76
-
77
- export { HorizontalNavigation, HorizontalNavigationBranchItem };