@elderbyte/ngx-starter 19.1.0-beta.7 → 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.
- package/_index.scss +1 -1
- package/fesm2022/elderbyte-ngx-starter.mjs +50 -17
- package/fesm2022/elderbyte-ngx-starter.mjs.map +1 -1
- package/lib/common/utils/public_api.d.ts +1 -0
- package/lib/components/layout/pane-header/pane-header.component.d.ts +7 -0
- package/lib/components/layout/public_api.d.ts +1 -0
- package/lib/components/select/single/elder-select/elder-select.component.d.ts +1 -1
- package/package.json +1 -1
- package/src/lib/components/data-view/grid/elder-grid/elder-grid.component.scss +1 -1
- package/src/lib/components/data-view/table/elder-table/elder-table.component.scss +5 -5
- package/src/lib/components/files/drag-n-drop/elder-drop-zone/elder-drop-zone.component.scss +4 -4
- package/src/lib/components/shell/header/elder-app-header/elder-app-header.component.scss +1 -1
- package/src/lib/components/toasts/standard-toast/standard-toast.component.scss +1 -1
- package/theming/abstracts/_elder-design-tokens.scss +170 -0
- package/theming/{system/_elder-config.scss → abstracts/_elder-scss-variables.scss} +40 -0
- package/theming/{system/_elder-defaults.scss → abstracts/_elder-set-defaults-fn.scss} +8 -8
- package/theming/abstracts/_elder-starter-theme.scss +47 -0
- package/theming/abstracts/_elder-theme-main.scss +92 -0
- package/theming/{style-tweaks/_elder-common.scss → base/_elder-common-base.scss} +8 -11
- package/theming/{style-tweaks → base}/_elder-component-themes.scss +1 -1
- package/theming/{style-tweaks/_elder-style-fixes.scss → base/_elder-fixes-base.scss} +49 -19
- package/theming/{style-tweaks/_elder-form.scss → base/_elder-form-base.scss} +2 -2
- package/theming/{style-tweaks/_elder-color-variants.scss → base/_elder-m2-legacy-base.scss} +7 -1
- package/theming/components/_elder-chip-theme.scss +158 -0
- package/theming/{utility-classes/_elder-color-helpers.scss → utilities/_elder-color-utils.scss} +1 -8
- package/theming/{utility-classes/_elder-common-helpers.scss → utilities/_elder-common-utils.scss} +2 -5
- package/theming/{utility-classes/_elder-flex-layout.scss → utilities/_elder-flex-layout-utils.scss} +2 -2
- package/theming/{utility-classes/_elder-layout-system.scss → utilities/_elder-layout-utils.scss} +46 -21
- package/theming/{utility-classes/_elder-typography-helpers.scss → utilities/_elder-typography-utils.scss} +1 -1
- package/src/lib/components/chips/_elder-chip-theme.scss +0 -129
- package/theming/style-tweaks/_elder-reset.scss +0 -13
- package/theming/system/_elder-design-tokens.scss +0 -136
- package/theming/system/_elder-m3-theme.scss +0 -156
- package/theming/system/_elder-starter-theme.scss +0 -45
- /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
|
+
}
|
|
@@ -144,6 +144,6 @@ export declare class ElderSelectComponent<TEntity = any, TId = any, TValue = TEn
|
|
|
144
144
|
*/
|
|
145
145
|
protected writeToControl(value: TValue): void;
|
|
146
146
|
static ɵfac: i0.ɵɵFactoryDeclaration<ElderSelectComponent<any, any, any>, never>;
|
|
147
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ElderSelectComponent<any, any, any>, "elder-select", never, { "nullDisplay": { "alias": "nullDisplay"; "required": false; }; "autocomplete": { "alias": "autocomplete"; "required": false; }; "allowNull": { "alias": "allowNull"; "required": false; }; "entity": { "alias": "entity"; "required": false; }; "entityId": { "alias": "entityId"; "required": false; }; }, { "entityIdChange": "entityIdChange"; "entityIdUpdated": "entityIdUpdated"; "entityChange": "entityChange"; "entityUpdated": "entityUpdated"; }, never, never, true, never>;
|
|
147
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ElderSelectComponent<any, any, any>, "elder-select", never, { "nullDisplay": { "alias": "nullDisplay"; "required": false; }; "autocomplete": { "alias": "autocomplete"; "required": false; }; "allowNull": { "alias": "allowNull"; "required": false; }; "entity": { "alias": "entity"; "required": false; }; "entityId": { "alias": "entityId"; "required": false; }; }, { "entityIdChange": "entityIdChange"; "entityIdUpdated": "entityIdUpdated"; "entityChange": "entityChange"; "entityUpdated": "entityUpdated"; "entity$": "entity"; }, never, never, true, never>;
|
|
148
148
|
}
|
|
149
149
|
export {};
|
package/package.json
CHANGED
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
}
|
|
60
60
|
|
|
61
61
|
.elder-table-footer {
|
|
62
|
-
height:
|
|
62
|
+
height: var(--elder-data-element-footer-height);
|
|
63
63
|
}
|
|
64
64
|
|
|
65
65
|
.elder-table-checkbox {
|
|
@@ -83,7 +83,7 @@
|
|
|
83
83
|
}
|
|
84
84
|
|
|
85
85
|
.elder-table-row:hover {
|
|
86
|
-
background-color: var(--elder-color-highlight-
|
|
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
|
|
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
|
|
25
|
+
color: var(--md-sys-color-tertiary);
|
|
26
26
|
}
|
|
27
27
|
|
|
28
28
|
.elder-drop-zone-prompt {
|
|
29
|
-
color: var(--md-sys-color-tertiary
|
|
29
|
+
color: var(--md-sys-color-tertiary);
|
|
30
30
|
}
|
|
31
31
|
}
|
|
@@ -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
|
|
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-
|
|
3
|
+
@use './elder-scss-variables' as config;
|
|
4
4
|
|
|
5
5
|
/******************************
|
|
6
6
|
Default values
|
|
7
7
|
*******************************/
|
|
8
|
-
$commonSizesXs: map.get(
|
|
9
|
-
$commonSizesSm: map.get(
|
|
10
|
-
$commonSizesMd: map.get(
|
|
11
|
-
$commonSizesLg: map.get(
|
|
12
|
-
$commonSizesXl: map.get(
|
|
13
|
-
$commonSizesXxl: map.get(
|
|
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(
|
|
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-
|
|
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-
|
|
6
|
-
$common-sizes: map.get($theme, elder, common-sizes);
|
|
7
|
-
|
|
5
|
+
@mixin elder-common-base($theme) {
|
|
8
6
|
/***************************************************************************
|
|
9
7
|
* *
|
|
10
|
-
*
|
|
8
|
+
* CSS reset: box-sizing *
|
|
11
9
|
* *
|
|
12
10
|
**************************************************************************/
|
|
13
11
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
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 '
|
|
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-
|
|
2
|
+
@use './elder-base-mixins' as mixins;
|
|
3
3
|
@use 'sass:map';
|
|
4
4
|
|
|
5
|
-
@mixin elder-
|
|
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
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
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,6 +379,34 @@
|
|
|
377
379
|
|
|
378
380
|
&.elder-light-theme,
|
|
379
381
|
&.elder-dark-theme {
|
|
380
|
-
--mdc-linear-progress-track-color: var(--elder-color-highlight-
|
|
382
|
+
--mdc-linear-progress-track-color: var(--elder-color-highlight-variant);
|
|
381
383
|
}
|
|
384
|
+
|
|
385
|
+
// disable icon button overflow
|
|
386
|
+
.mat-mdc-icon-button {
|
|
387
|
+
overflow: hidden;
|
|
388
|
+
}
|
|
389
|
+
|
|
382
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-
|
|
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-
|
|
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
|
|