@elderbyte/ngx-starter 19.1.0-beta.8 → 19.1.0-beta.9

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 (32) hide show
  1. package/_index.scss +1 -1
  2. package/fesm2022/elderbyte-ngx-starter.mjs +39 -9
  3. package/fesm2022/elderbyte-ngx-starter.mjs.map +1 -1
  4. package/lib/components/layout/pane-header/pane-header.component.d.ts +7 -0
  5. package/lib/components/layout/public_api.d.ts +1 -0
  6. package/package.json +1 -1
  7. package/src/lib/components/data-view/table/elder-table/elder-table.component.scss +4 -4
  8. package/src/lib/components/files/drag-n-drop/elder-drop-zone/elder-drop-zone.component.scss +4 -4
  9. package/src/lib/components/shell/header/elder-app-header/elder-app-header.component.scss +1 -1
  10. package/src/lib/components/toasts/standard-toast/standard-toast.component.scss +1 -1
  11. package/theming/abstracts/_elder-design-tokens.scss +170 -0
  12. package/theming/{system/_elder-config.scss → abstracts/_elder-scss-variables.scss} +40 -0
  13. package/theming/{system/_elder-defaults.scss → abstracts/_elder-set-defaults-fn.scss} +8 -8
  14. package/theming/abstracts/_elder-starter-theme.scss +47 -0
  15. package/theming/abstracts/_elder-theme-main.scss +92 -0
  16. package/theming/{style-tweaks/_elder-common.scss → base/_elder-common-base.scss} +8 -11
  17. package/theming/{style-tweaks → base}/_elder-component-themes.scss +1 -1
  18. package/theming/{style-tweaks/_elder-style-fixes.scss → base/_elder-fixes-base.scss} +44 -19
  19. package/theming/{style-tweaks/_elder-form.scss → base/_elder-form-base.scss} +2 -2
  20. package/theming/{style-tweaks/_elder-color-variants.scss → base/_elder-m2-legacy-base.scss} +7 -1
  21. package/theming/components/_elder-chip-theme.scss +158 -0
  22. package/theming/{utility-classes/_elder-color-helpers.scss → utilities/_elder-color-utils.scss} +1 -8
  23. package/theming/{utility-classes/_elder-common-helpers.scss → utilities/_elder-common-utils.scss} +2 -5
  24. package/theming/{utility-classes/_elder-flex-layout.scss → utilities/_elder-flex-layout-utils.scss} +2 -2
  25. package/theming/{utility-classes/_elder-layout-system.scss → utilities/_elder-layout-utils.scss} +5 -1
  26. package/theming/{utility-classes/_elder-typography-helpers.scss → utilities/_elder-typography-utils.scss} +1 -1
  27. package/src/lib/components/chips/_elder-chip-theme.scss +0 -129
  28. package/theming/style-tweaks/_elder-reset.scss +0 -13
  29. package/theming/system/_elder-design-tokens.scss +0 -139
  30. package/theming/system/_elder-m3-theme.scss +0 -156
  31. package/theming/system/_elder-starter-theme.scss +0 -45
  32. /package/theming/{style-tweaks/_elder-style-tweak-mixins.scss → base/_elder-base-mixins.scss} +0 -0
@@ -0,0 +1,7 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class ElderPaneHeaderComponent {
3
+ class: string;
4
+ title: import("@angular/core").InputSignal<string>;
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<ElderPaneHeaderComponent, never>;
6
+ static ɵcmp: i0.ɵɵComponentDeclaration<ElderPaneHeaderComponent, "elder-pane-header", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
7
+ }
@@ -1,2 +1,3 @@
1
1
  export * from './pane/pane.component';
2
+ export * from './pane-header/pane-header.component';
2
3
  export * from './basic-pane-layout/basic-pane-layout.component';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elderbyte/ngx-starter",
3
- "version": "19.1.0-beta.8",
3
+ "version": "19.1.0-beta.9",
4
4
  "peerDependencies": {
5
5
  "@angular/core": "^18.0.0 || ^19.0.0",
6
6
  "@angular/common": "^18.0.0 || ^19.0.0",
@@ -83,7 +83,7 @@
83
83
  }
84
84
 
85
85
  .elder-table-row:hover {
86
- background-color: var(--elder-color-highlight-dim);
86
+ background-color: var(--elder-color-highlight-variant);
87
87
  cursor: pointer;
88
88
  }
89
89
 
@@ -93,7 +93,7 @@
93
93
  outline-style: none;
94
94
  td {
95
95
  background-color: var(
96
- --elder-color-highlight
96
+ --elder-color-highlight-strong
97
97
  ); // OLD: background-color: mat.m2-get-color-from-palette($accent, default, 0.3);
98
98
  border-bottom: var(
99
99
  --md-sys-color-tertiary-fixed
@@ -102,11 +102,11 @@
102
102
  }
103
103
  .elder-table-row.elder-table-row-activated {
104
104
  //background-color: var(--md-sys-color-surface-dim);
105
- background-color: var(--elder-color-highlight);
105
+ background-color: var(--elder-color-highlight-strong);
106
106
  }
107
107
 
108
108
  .elder-table-row.elder-table-row-selected {
109
- background-color: var(--elder-color-highlight);
109
+ background-color: var(--elder-color-highlight-strong);
110
110
  }
111
111
 
112
112
  .elder-mat-table-flat {
@@ -18,14 +18,14 @@
18
18
  }
19
19
 
20
20
  .elder-drop-zone.is-dragover {
21
- border: 4px solid var(--md-sys-color-tertiary-fixed);
22
- background-color: var(--md-sys-color-tertiary);
21
+ border: 4px solid var(--md-sys-color-tertiary);
22
+ background-color: var(--md-sys-color-tertiary-container);
23
23
 
24
24
  .elder-drop-zone-icon {
25
- color: var(--md-sys-color-tertiary-fixed);
25
+ color: var(--md-sys-color-tertiary);
26
26
  }
27
27
 
28
28
  .elder-drop-zone-prompt {
29
- color: var(--md-sys-color-tertiary-fixed);
29
+ color: var(--md-sys-color-tertiary);
30
30
  }
31
31
  }
@@ -11,5 +11,5 @@
11
11
  }
12
12
 
13
13
  .elder-app-header-panel {
14
- background-color: #0b284f; // TODO: replace in m3
14
+ background-color: var(--md-sys-color-primary);
15
15
  }
@@ -4,7 +4,7 @@
4
4
 
5
5
  &.elder-toast-type-warn {
6
6
  --elder-toast-message-color-title: var(--elder-toast-message-color-title-warn);
7
- --mdc-filled-button-container-color: var(--md-sys-color-tertiary-container);
7
+ --mdc-filled-button-container-color: var(--md-sys-color-tertiary);
8
8
  }
9
9
 
10
10
  &.elder-toast-type-error {
@@ -0,0 +1,170 @@
1
+ @use 'sass:map';
2
+ @use './elder-scss-variables' as config;
3
+
4
+ @mixin elder-design-tokens() {
5
+ @include elder-badge-sizing();
6
+
7
+ & {
8
+ // bg color
9
+ --md-sys-color-background: var(--md-sys-color-surface-container-highest);
10
+ --mat-app-background-color: var(--md-sys-color-background);
11
+
12
+ // mat variables
13
+ --mat-sidenav-container-width: auto; // is set to around 300px by default in MAT 3 (MAT 2 was auto by default)
14
+ --mat-badge-small-size-text-size: 9px; // this is the mat2 setting, mat3 somehow sets this to 0, which hides the font, unclear why.
15
+ --mdc-dialog-container-shape: 16px; // make border-radius of dialog container smaller (default is 28px)
16
+ --mat-dialog-container-max-width: 80vw; // 80vw is mat 2 default, mat 3 default is very narrow: 560px;
17
+ --mat-toolbar-title-text-tracking: 0; // mat toolbar typography
18
+ --mat-toolbar-title-text-weight: 500; // mat toolbar typography
19
+ --mat-table-row-item-outline-color: var(--md-sys-color-outline-variant);
20
+ --mat-divider-color: var(--md-sys-color-outline-variant); // make divider color lighter
21
+ --mat-sidenav-container-elevation-shadow: var(--mat-app-elevation-shadow-level-16);
22
+ --mat-sidenav-container-background-color: var(--md-sys-color-surface-container);
23
+
24
+ // elder custom variables
25
+ --elder-border-radius-sm: 4px; // typical small border radius, inspired by mat 2
26
+ --elder-border-light: 1px solid var(--md-sys-color-outline-variant);
27
+ --elder-box-shadow-default: var(--mat-app-elevation-shadow-level-8);
28
+ --elder-scrollbar-width: 8px;
29
+ --elder-lightened-transparent-bg: rgba(255, 255, 255, 0.15);
30
+
31
+ // elder pane
32
+ --elder-pane-padding: #{map.get(config.$sizes, sm)};
33
+ --elder-pane-gap: #{map.get(config.$sizes, sm)};
34
+ --elder-pane-border-radius: var(
35
+ --mdc-outlined-card-container-shape,
36
+ var(--mat-app-corner-medium)
37
+ );
38
+ --elder-pane-bg-color: var(--md-sys-color-surface-container-lowest);
39
+
40
+ // card header
41
+ --elder-card-header-padding: 15px 15px 5px 15px;
42
+
43
+ // cards, table etc bg
44
+ --mdc-elevated-card-container-color: var(--md-sys-color-surface-container-lowest);
45
+ --mdc-outlined-card-container-color: var(--mdc-elevated-card-container-color);
46
+ //--mat-table-background-color: var(--md-sys-color-surface-container-lowest);
47
+ --mat-table-background-color: transparent;
48
+ --mat-paginator-container-background-color: var(--mat-table-background-color);
49
+ --elder-grid-background-color: var(--mat-table-background-color);
50
+ //--mat-table-header-container-height: 56px; // 56px is default
51
+
52
+ // elder toast messages
53
+ --elder-toast-message-color-title-default: var(--md-sys-color-inverse-on-surface);
54
+ --elder-toast-message-color-title-warn: var(--md-sys-color-inverse-on-surface);
55
+ --elder-toast-message-color-title-error: var(--md-sys-color-inverse-on-surface);
56
+
57
+ // main nav top left button color
58
+ --elder-toolbar-main-nav-button-color: var(--md-sys-color-on-primary);
59
+ --elder-toolbar-main-nav-button-container-bg-color: var(--md-sys-color-primary);
60
+
61
+ // custom colors
62
+ --elder-blue: #{map.get(config.$custom-colors, elder-blue)};
63
+ --elder-gold: #{map.get(config.$custom-colors, elder-gold)};
64
+ --elder-gold-dark: #{map.get(config.$custom-colors, elder-gold-dark)};
65
+ --elder-gold-semi-dark: #{map.get(config.$custom-colors, elder-gold-semi-dark)};
66
+ --elder-gold-light: #{map.get(config.$custom-colors, elder-gold-light)};
67
+
68
+ --elder-color-highlight-strong: hsl(214, 18%, 85%);
69
+ --elder-color-highlight-variant: hsl(214, 18%, 95%); // dim version lighter in light moode
70
+ --elder-color-highlight-strong: var(--elder-gold-light);
71
+ --elder-color-highlight-variant: #EBEBEB;
72
+
73
+ // chip colors
74
+ --elder-chip-color-state-none: #{map.get(config.$chip-colors, state-none)};
75
+ --elder-chip-color-state-open: #{map.get(config.$chip-colors, state-open)};
76
+ --elder-chip-color-state-in-progress: #{map.get(config.$chip-colors, state-in-progress)};
77
+ --elder-chip-color-state-completed: #{map.get(config.$chip-colors, state-completed)};
78
+ --elder-chip-color-state-warn: #{map.get(config.$chip-colors, state-warn)};
79
+ --elder-chip-color-state-error: #{map.get(config.$chip-colors, state-error)};
80
+ --elder-chip-color-state-other: #{map.get(config.$chip-colors, state-other)};
81
+
82
+ // chip colors dark
83
+ &.elder-dark-theme {
84
+ --elder-chip-color-state-none: #{map.get(config.$chip-colors-dark, state-none)};
85
+ --elder-chip-color-state-open: #{map.get(config.$chip-colors-dark, state-open)};
86
+ --elder-chip-color-state-in-progress: #{map.get(config.$chip-colors-dark, state-in-progress)};
87
+ --elder-chip-color-state-completed: #{map.get(config.$chip-colors-dark, state-completed)};
88
+ --elder-chip-color-state-warn: #{map.get(config.$chip-colors-dark, state-warn)};
89
+ --elder-chip-color-state-error: #{map.get(config.$chip-colors-dark, state-error)};
90
+ --elder-chip-color-state-other: #{map.get(config.$chip-colors-dark, state-other)};
91
+ }
92
+
93
+ // missing md3 color
94
+ --md-sys-color-on-primary-fixed-dim: var(--md-sys-color-on-surface);
95
+ --md-sys-color-on-tertiary-fixed-dim: var(--md-sys-color-on-primary-fixed-dim);
96
+
97
+ // dialog
98
+ --elder-dialog-panel-bg-color: var(--md-sys-color-surface-container-lowest);
99
+
100
+ // data footer
101
+ --elder-data-element-footer-height: 48px;
102
+
103
+ // xy
104
+ --elder-round-form-field-outline: none;
105
+ }
106
+
107
+ &.elder-dark-theme {
108
+ --elder-dialog-panel-bg-color: var(--md-sys-color-surface-container);
109
+ }
110
+
111
+ // light theme overwrites
112
+ &.elder-light-theme {
113
+ --md-sys-color-primary: var(--elder-blue);
114
+ --md-sys-color-tertiary: var(--elder-gold);
115
+ --md-sys-color-tertiary-container: var(--elder-gold-light);
116
+ --md-sys-color-on-tertiary: var(--md-sys-color-on-surface);
117
+ --md-sys-color-secondary-container: #d8e3fa; // hsl(221, 77%, 91%)
118
+ --md-sys-color-secondary-container: hsl(214, 44%, 84%);
119
+ --md-sys-color-secondary-fixed: hsl(214, 44%, 89%);
120
+ --md-sys-color-primary-container: hsl(214, 64%, 84%);
121
+ }
122
+
123
+ // dark theme overwrites
124
+ &.elder-dark-theme {
125
+ --elder-round-form-field-outline: solid 1px var(--md-sys-color-outline);
126
+ --mat-sidenav-scrim-color: rgba(255, 255, 255, 0.4);
127
+ --md-sys-color-primary-container: var(--elder-gold-semi-dark);
128
+ --md-sys-color-primary-fixed-dim: var(--elder-gold-dark);
129
+ --elder-color-highlight-variant: var(--elder-gold-dark);
130
+ --elder-color-highlight-strong: var(--elder-gold-semi-dark);
131
+ --md-sys-color-tertiary-fixed-dim: var(--md-sys-color-primary-fixed-dim);
132
+ --md-sys-color-on-primary-fixed-dim: var(--md-sys-color-on-surface);
133
+ --md-sys-color-tertiary-container: var(--md-sys-color-primary-container);
134
+ --md-sys-color-surface-container-highest: #191919;
135
+ --md-sys-color-surface-container-lowest: #262626;
136
+ --md-sys-color-error: #ff999f;
137
+ --md-sys-color-inverse-primary: var(--md-sys-color-primary-container);
138
+ --md-sys-color-surface-tint: var(--elder-gold-dark);
139
+ --elder-dark-gray: var(--md-sys-color-surface-container);
140
+ --mdc-chip-outline-color: rgba(255, 255, 255, 0.3);
141
+ --elder-dark-mode-color-primary: var(--md-sys-color-primary);
142
+ --elder-dark-mode-color-on-primary: var(--md-sys-color-on-primary);
143
+ --elder-dark-mode-color-surface: var(--md-sys-color-surface);
144
+ --elder-dark-mode-color-on-surface: var(--md-sys-color-on-surface);
145
+ }
146
+ }
147
+
148
+ @mixin elder-badge-sizing() {
149
+ & {
150
+ // Use legacy MAT 2 badge sizing
151
+ --mat-badge-container-size: unset;
152
+ --mat-badge-small-size-container-size: unset;
153
+ --mat-badge-large-size-container-size: unset;
154
+ --mat-badge-legacy-container-size: 22px;
155
+ --mat-badge-legacy-small-size-container-size: 16px;
156
+ --mat-badge-legacy-large-size-container-size: 28px;
157
+ --mat-badge-container-offset: -11px 0;
158
+ --mat-badge-small-size-container-offset: -8px 0;
159
+ --mat-badge-large-size-container-offset: -14px 0;
160
+ --mat-badge-container-overlap-offset: -11px;
161
+ --mat-badge-small-size-container-overlap-offset: -8px;
162
+ --mat-badge-large-size-container-overlap-offset: -14px;
163
+ --mat-badge-container-padding: 0;
164
+ --mat-badge-small-size-container-padding: 0;
165
+ --mat-badge-large-size-container-padding: 0;
166
+ --mat-badge-line-height: var(--mat-badge-legacy-container-size);
167
+ --mat-badge-small-size-line-height: var(--mat-badge-legacy-small-size-container-size);
168
+ --mat-badge-large-size-line-height: var(--mat-badge-legacy-large-size-container-size);
169
+ }
170
+ }
@@ -1,3 +1,5 @@
1
+ @use 'sass:map';
2
+
1
3
  $sizes: (
2
4
  xs: 4px,
3
5
  sm: 8px,
@@ -19,6 +21,44 @@ $media: (
19
21
  xl: 1280px,
20
22
  );
21
23
 
24
+ $custom-colors: (
25
+ elder-blue: #0b284f,
26
+ elder-gold: #b69f6a,
27
+ elder-gold-dark: #423d32,
28
+ elder-gold-semi-dark: #7f7054,
29
+ elder-gold-light: #f0e9d8,
30
+ );
31
+
32
+ $chip-colors: (
33
+ state-none: #cecfcf,
34
+ state-open: #e0e1e1,
35
+ state-in-progress: #bdd5e7,
36
+ state-completed: #b1ddce,
37
+ state-warn: #f4dab8,
38
+ state-error: #e6b6b6,
39
+ state-other: #cdc7e5,
40
+ );
41
+
42
+ // $chip-colors: (
43
+ // state-none: lighten(map.get($chip-colors, state-none), 2%),
44
+ // state-open: lighten(map.get($chip-colors, state-open), 2%),
45
+ // state-in-progress: lighten(map.get($chip-colors, state-in-progress), 2%),
46
+ // state-completed: lighten(map.get($chip-colors, state-completed), 2%),
47
+ // state-warn: lighten(map.get($chip-colors, state-warn), 2%),
48
+ // state-error: lighten(map.get($chip-colors, state-error), 2%),
49
+ // state-other: lighten(map.get($chip-colors, state-other), 2%),
50
+ // );
51
+
52
+ $chip-colors-dark: (
53
+ state-none: darken(map.get($chip-colors, state-none), 65%),
54
+ state-open: darken(map.get($chip-colors, state-open), 45%),
55
+ state-in-progress: darken(map.get($chip-colors, state-in-progress), 45%),
56
+ state-completed: darken(map.get($chip-colors, state-completed), 45%),
57
+ state-warn: darken(map.get($chip-colors, state-warn), 45%),
58
+ state-error: darken(map.get($chip-colors, state-error), 45%),
59
+ state-other: darken(map.get($chip-colors, state-other), 45%),
60
+ );
61
+
22
62
  $palettes: (
23
63
  primary: (
24
64
  0: #000000,
@@ -1,18 +1,18 @@
1
1
  @use 'sass:map';
2
2
  @use '@angular/material' as mat;
3
- @use './elder-config' as settings;
3
+ @use './elder-scss-variables' as config;
4
4
 
5
5
  /******************************
6
6
  Default values
7
7
  *******************************/
8
- $commonSizesXs: map.get(settings.$sizes, xs);
9
- $commonSizesSm: map.get(settings.$sizes, sm);
10
- $commonSizesMd: map.get(settings.$sizes, md);
11
- $commonSizesLg: map.get(settings.$sizes, lg);
12
- $commonSizesXl: map.get(settings.$sizes, xl);
13
- $commonSizesXxl: map.get(settings.$sizes, xxl);
8
+ $commonSizesXs: map.get(config.$sizes, xs);
9
+ $commonSizesSm: map.get(config.$sizes, sm);
10
+ $commonSizesMd: map.get(config.$sizes, md);
11
+ $commonSizesLg: map.get(config.$sizes, lg);
12
+ $commonSizesXl: map.get(config.$sizes, xl);
13
+ $commonSizesXxl: map.get(config.$sizes, xxl);
14
14
 
15
- $densityFormField: map.get(settings.$extra, form-field-density);
15
+ $densityFormField: map.get(config.$extra, form-field-density);
16
16
 
17
17
  /******************************
18
18
  Validates $theme and sets default value if null
@@ -0,0 +1,47 @@
1
+ @use '@angular/material' as mat;
2
+ @use 'sass:map';
3
+
4
+ @forward '../abstracts/elder-set-defaults-fn';
5
+ @use 'elder-design-tokens' as elder-design-tokens;
6
+ @use '../abstracts/elder-set-defaults-fn' as elder-set-defaults-fn;
7
+ @use '../base/elder-m2-legacy-base' as elder-m2-legacy-base;
8
+ @use '../base/elder-fixes-base' as elder-fixes;
9
+ @use '../base/elder-common-base' as elder-common;
10
+ @use '../base/elder-form-base' as elder-form;
11
+ @use '../base/elder-component-themes' as elder-component-themes;
12
+ @use '../utilities/elder-flex-layout-utils' as elder-flex-layout-utils;
13
+ @use '../utilities/elder-color-utils' as elder-color-utils;
14
+ @use '../utilities/elder-typography-utils' as elder-typography-utils;
15
+ @use '../utilities/elder-common-utils' as elder-common-utils;
16
+ @use '../utilities/elder-layout-utils' as elder-layout-utils;
17
+
18
+ // Create a theme.
19
+ @mixin starter-theme($theme) {
20
+ $theme: elder-set-defaults-fn.validate-and-set-defaults($theme);
21
+
22
+ // ATM we need to render this here, because first need to set defaults for form-field density
23
+ @include mat.form-field-density(
24
+ map.get($theme, elder, density, form-field)
25
+ ); // TODO: improve density setup
26
+
27
+ // design tokens
28
+ @include elder-design-tokens.elder-design-tokens();
29
+
30
+ // base styles
31
+ @include elder-fixes.elder-fixes-base($theme);
32
+ @include elder-common.elder-common-base($theme);
33
+ @include elder-form.elder-form-base($theme);
34
+ @include elder-m2-legacy-base.elder-m2-legacy-base($theme);
35
+
36
+ // utilitiy styles
37
+ @include elder-flex-layout-utils.elder-flex-layout-utils($theme);
38
+ @include elder-layout-utils.elder-layout-utils($theme);
39
+ @include elder-color-utils.elder-color-utils();
40
+ @include elder-typography-utils.elder-typography-utils();
41
+ @include elder-common-utils.elder-common-utils();
42
+
43
+ // component themes rendered in global css
44
+ @include elder-component-themes.theme(
45
+ $theme
46
+ ); // TODO: Move component themes directly into components
47
+ }
@@ -0,0 +1,92 @@
1
+ @use 'sass:map';
2
+ @use '@angular/material' as mat;
3
+ @use './elder-starter-theme' as starter-theme;
4
+ @use './elder-scss-variables' as config;
5
+
6
+ @mixin render-default-elder-theme($themes: 'default', $options: ()) {
7
+ @if $themes == 'default' {
8
+ $themes: create-themes(config.$palettes); // typically this will be used
9
+ } @else {
10
+ $themes: $themes;
11
+ }
12
+
13
+ // map options
14
+ $use-typography-hierarchy: not map.has-key($options, 'no-typography-hierarchy');
15
+
16
+ // create theme
17
+ $elder-light-theme: map.get($themes, light);
18
+ $elder-dark-theme: map.get($themes, dark);
19
+
20
+ // render theme
21
+ @include mat.all-component-typographies();
22
+ @include mat.elevation-classes();
23
+ @include mat.app-background();
24
+
25
+ @if $use-typography-hierarchy {
26
+ @include mat.typography-hierarchy($elder-light-theme, $back-compat: true);
27
+ }
28
+
29
+ .elder-light-theme,
30
+ .elder-dark-theme {
31
+ @include mat.all-component-themes($elder-light-theme);
32
+ @include mat.system-level-colors($elder-light-theme);
33
+ @include mat.system-level-typography($elder-light-theme);
34
+ @include mat.color-variants-backwards-compatibility($elder-light-theme);
35
+ }
36
+
37
+ .elder-dark-theme {
38
+ @include mat.all-component-colors($elder-dark-theme);
39
+ @include mat.system-level-colors($elder-dark-theme);
40
+ @include mat.color-variants-backwards-compatibility($elder-dark-theme);
41
+ }
42
+
43
+ .elder-light-theme,
44
+ .elder-dark-theme {
45
+ @include starter-theme.starter-theme($elder-light-theme);
46
+ }
47
+ }
48
+
49
+ @function create-themes($palettesArg) {
50
+ $_palettes: $palettesArg;
51
+
52
+ $_rest: (
53
+ secondary: map.get($_palettes, secondary),
54
+ neutral: map.get($_palettes, neutral),
55
+ neutral-variant: map.get($_palettes, neutral-variant),
56
+ error: map.get($_palettes, error),
57
+ );
58
+ $_primary: map.merge(map.get($_palettes, primary), $_rest);
59
+ $_tertiary: map.merge(map.get($_palettes, tertiary), $_rest);
60
+
61
+ $density: 0; // ATM important ot start with 0, since we are (miss-)using the tighter -4 density settings only for forms
62
+
63
+ $light-theme: _elder-define-theme(light, $_primary, $_tertiary, $density);
64
+ $dark-theme: _elder-define-theme(dark, $_primary, $_tertiary, $density);
65
+ $dark-theme-mono: _elder-define-theme(dark, $_tertiary, $_tertiary, $density);
66
+
67
+ @return (
68
+ light: $light-theme,
69
+ dark: $dark-theme-mono,
70
+ );
71
+ }
72
+
73
+ @function _elder-define-theme($theme-type, $primary, $tertiary, $density: 0) {
74
+ @return mat.define-theme(
75
+ (
76
+ color: (
77
+ theme-type: $theme-type,
78
+ primary: $primary,
79
+ tertiary: $tertiary,
80
+ use-system-variables: true,
81
+ system-variables-prefix: md-sys-color,
82
+ ),
83
+ typography: (
84
+ use-system-variables: true,
85
+ system-variables-prefix: md-sys-typescale,
86
+ ),
87
+ density: (
88
+ scale: $density,
89
+ ),
90
+ )
91
+ );
92
+ }
@@ -1,22 +1,19 @@
1
- @use './elder-style-tweak-mixins' as mixins;
1
+ @use './elder-base-mixins' as mixins;
2
2
  @use '@angular/material' as mat;
3
3
  @use 'sass:map';
4
4
 
5
- @mixin elder-common-styles($theme) {
6
- $common-sizes: map.get($theme, elder, common-sizes);
7
-
5
+ @mixin elder-common-base($theme) {
8
6
  /***************************************************************************
9
7
  * *
10
- * Common Sizes *
8
+ * CSS reset: box-sizing *
11
9
  * *
12
10
  **************************************************************************/
13
11
 
14
- $xs: map.get($common-sizes, xs);
15
- $sm: map.get($common-sizes, sm);
16
- $md: map.get($common-sizes, md);
17
- $lg: map.get($common-sizes, lg);
18
- $xl: map.get($common-sizes, xl);
19
- $xxl: map.get($common-sizes, xxl);
12
+ *,
13
+ *::before,
14
+ *::after {
15
+ box-sizing: border-box;
16
+ }
20
17
 
21
18
  /***************************************************************************
22
19
  * *
@@ -1,4 +1,4 @@
1
- @use '../../src/lib/components/chips/elder-chip-theme' as elder-chip;
1
+ @use '../components/elder-chip-theme' as elder-chip;
2
2
  @use '../../src/lib/components/data-view/table/elder-table/elder-table.component' as elder-table;
3
3
  @use '../../src/lib/components/navigation/nav/elder-nav-theme' as elder-nav;
4
4
  @use '../../src/lib/components/data-view/grid/elder-grid/elder-grid.component' as elder-grid;
@@ -1,8 +1,8 @@
1
1
  @use '@angular/material' as mat;
2
- @use './elder-style-tweak-mixins' as mixins;
2
+ @use './elder-base-mixins' as mixins;
3
3
  @use 'sass:map';
4
4
 
5
- @mixin elder-style-fixes($theme) {
5
+ @mixin elder-fixes-base($theme) {
6
6
  @include _ng-style-fixes;
7
7
  @include _mat-style-fixes($theme);
8
8
  @include _mat3-fixes($theme);
@@ -177,6 +177,12 @@
177
177
  }
178
178
  }
179
179
 
180
+ &.elder-light-theme {
181
+ .mat-toolbar.mat-primary .mat-mdc-input-element::placeholder {
182
+ color: var(--md-sys-color-inverse-on-surface) !important; // fix placeholder color
183
+ }
184
+ }
185
+
180
186
  &.elder-dark-theme {
181
187
  .mat-toolbar,
182
188
  .mat-toolbar.mat-primary,
@@ -298,18 +304,18 @@
298
304
  }
299
305
 
300
306
  // round input fields
301
- &.deactivated {
302
- elder-search-box .elder-search-box-field,
303
- .mat-toolbar .mat-mdc-form-field {
304
- background-color: var(--md-sys-color-surface-container-low);
305
- border-radius: 24px !important;
306
-
307
- // remove border from notch piece on input fields
308
- .mat-mdc-notch-piece {
309
- border-width: 0 !important;
310
- }
311
- }
312
- }
307
+ // &.deactivated {
308
+ // elder-search-box .elder-search-box-field,
309
+ // .mat-toolbar .mat-mdc-form-field {
310
+ // background-color: var(--md-sys-color-surface-container-low);
311
+ // border-radius: 24px !important;
312
+
313
+ // // remove border from notch piece on input fields
314
+ // .mat-mdc-notch-piece {
315
+ // border-width: 0 !important;
316
+ // }
317
+ // }
318
+ // }
313
319
 
314
320
  .mat-toolbar .mat-mdc-form-field {
315
321
  background-color: var(--elder-lightened-transparent-bg);
@@ -320,10 +326,6 @@
320
326
  --mdc-outlined-text-field-input-text-color: var(--md-sys-color-inverse-on-surface) !important;
321
327
  --mdc-outlined-text-field-caret-color: var(--md-sys-color-inverse-on-surface) !important;
322
328
  }
323
- // * {
324
- // color: var(--md-sys-color-inverse-on-surface);
325
- // border-color: var(--md-sys-color-inverse-on-surface);
326
- // }
327
329
  }
328
330
 
329
331
  .elder-pane {
@@ -377,11 +379,34 @@
377
379
 
378
380
  &.elder-light-theme,
379
381
  &.elder-dark-theme {
380
- --mdc-linear-progress-track-color: var(--elder-color-highlight-dim);
382
+ --mdc-linear-progress-track-color: var(--elder-color-highlight-variant);
381
383
  }
382
384
 
383
385
  // disable icon button overflow
384
386
  .mat-mdc-icon-button {
385
387
  overflow: hidden;
386
388
  }
389
+
387
390
  }
391
+
392
+ // @mixin chips-status-colors($theme) {
393
+ // $status-colors: (
394
+ // none: rgb(143, 143, 143),
395
+ // open: rgb(199, 199, 199),
396
+ // in-progress: rgb(33, 150, 243),
397
+ // completed: rgb(4, 170, 109),
398
+ // warn: rgb(255, 145, 0),
399
+ // error: rgb(255, 0, 0),
400
+ // other: rgb(121, 73, 252),
401
+ // level-low: rgb(4, 170, 109),
402
+ // level-medium: rgb(33, 150, 243),
403
+ // level-high: rgb(255, 145, 0),
404
+ // level-critical: rgb(255, 0, 0),
405
+ // );
406
+
407
+ // @each $status, $color in $status-colors {
408
+ // .mat-mdc-chip.elder-chip-#{$status} {
409
+ // background-color: map.get($palettes, $color);
410
+ // }
411
+ // }
412
+ // }
@@ -1,8 +1,8 @@
1
- @use './elder-style-tweak-mixins' as mixins;
1
+ @use './elder-base-mixins' as mixins;
2
2
  @use '@angular/material' as mat;
3
3
  @use 'sass:map';
4
4
 
5
- @mixin elder-form-styles($theme) {
5
+ @mixin elder-form-base($theme) {
6
6
  $common-sizes: map.get($theme, elder, common-sizes);
7
7
  $form-field-density: map.get($theme, elder, density, form-field);
8
8
 
@@ -13,7 +13,7 @@
13
13
  // "mat.color-variants-backwards-compatibility()"
14
14
  // But can be customized in this mixin below:
15
15
 
16
- @mixin elder-color-variants($theme) {
16
+ @mixin elder-m2-legacy-base($theme) {
17
17
  // Apply primary color variants for button components
18
18
  mat-chip-option[color='primary'] {
19
19
  @include mat.chips-color($theme, $color-variant: primary);
@@ -28,4 +28,10 @@
28
28
  mat-chip-option[color='accent'] {
29
29
  @include mat.chips-color($theme, $color-variant: tertiary);
30
30
  }
31
+
32
+ // &.elder-light-theme {
33
+ // .mat-accent.mat-mdc-standard-chip {
34
+ // background-color: var(--md-sys-color-tertiary-fixed) !important;
35
+ // }
36
+ // }
31
37
  }