@acontplus/ng-components 3.0.1 → 3.2.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.
- package/README.md +101 -234
- package/fesm2022/acontplus-ng-components.mjs +8057 -4326
- package/fesm2022/acontplus-ng-components.mjs.map +1 -1
- package/package.json +5 -2
- package/src/_index.scss +2 -0
- package/src/core/style/_breakpoints.scss +63 -0
- package/src/core/style/_variables.scss +9 -0
- package/src/core/theming/_all-theme.scss +16 -1
- package/src/core/theming/prebuilt/aqua.scss +1 -1
- package/src/core/theming/prebuilt/blue.scss +1 -1
- package/src/core/theming/prebuilt/cyan.scss +1 -1
- package/src/core/theming/prebuilt/green.scss +1 -1
- package/src/core/theming/prebuilt/orange.scss +1 -1
- package/src/core/theming/prebuilt/pink.scss +1 -1
- package/src/core/theming/prebuilt/purple.scss +1 -1
- package/src/core/theming/prebuilt/rose.scss +1 -1
- package/src/core/tokens/_global-variables.scss +53 -0
- package/src/lib/components/button/v2/button.scss +179 -11
- package/src/lib/components/card/card.scss +225 -0
- package/src/lib/components/context-menu/context-menu-panel.scss +283 -0
- package/src/lib/components/date-range-input/date-range-input.scss +5 -6
- package/src/lib/components/dialog/acp-dialog-container.scss +221 -0
- package/src/lib/components/dialog-wrapper/dialog-wrapper.scss +0 -4
- package/src/lib/components/theme/header/header.scss +166 -0
- package/src/lib/components/theme/shell-layout/shell-layout.scss +237 -0
- package/src/lib/components/theme/sidebar/sidebar.scss +0 -0
- package/src/lib/components/theme/sidemenu/sidemenu.scss +169 -0
- package/src/lib/components/theme/topmenu/topmenu.scss +83 -0
- package/src/lib/components/theme/user-menu/user-menu.scss +194 -0
- package/src/lib/components/theme/user-panel/user-panel.scss +64 -0
- package/types/acontplus-ng-components.d.ts +4571 -2374
- /package/src/lib/components/{theme-toggle → theme/theme-toggle}/theme-toggle.scss +0 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@acontplus/ng-components",
|
|
3
|
-
"version": "3.0
|
|
3
|
+
"version": "3.2.0",
|
|
4
4
|
"description": "Comprehensive Angular Material UI component library featuring dynamic Tabulator tables, theme toggle with dark mode, dialog wrappers, autocomplete components, cards, buttons, icons, input chips, spinners, directives, pipes, and SCSS styling utilities.",
|
|
5
5
|
"peerDependencies": {
|
|
6
6
|
"@acontplus/ui-kit": "^1.0.2",
|
|
@@ -25,6 +25,9 @@
|
|
|
25
25
|
"types": "./types/acontplus-ng-components.d.ts",
|
|
26
26
|
"default": "./fesm2022/acontplus-ng-components.mjs"
|
|
27
27
|
},
|
|
28
|
+
"./global-variables": {
|
|
29
|
+
"sass": "./src/core/tokens/_global-variables.scss"
|
|
30
|
+
},
|
|
28
31
|
"./prebuilt-themes/blue": {
|
|
29
32
|
"sass": "./src/core/theming/prebuilt/blue.scss"
|
|
30
33
|
},
|
|
@@ -106,7 +109,7 @@
|
|
|
106
109
|
"homepage": "https://github.com/acontplus/acontplus-libs#readme",
|
|
107
110
|
"repository": {
|
|
108
111
|
"type": "git",
|
|
109
|
-
"url": "
|
|
112
|
+
"url": "https://github.com/acontplus/acontplus-libs.git"
|
|
110
113
|
},
|
|
111
114
|
"release": {
|
|
112
115
|
"branches": [
|
package/src/_index.scss
CHANGED
|
@@ -21,6 +21,8 @@
|
|
|
21
21
|
system-level-elevation, system-level-shape, system-level-motion, system-level-state, theme,
|
|
22
22
|
theme-overrides, m2-theme;
|
|
23
23
|
|
|
24
|
+
@forward './core/tokens/global-variables';
|
|
25
|
+
@forward './core/style/breakpoints';
|
|
24
26
|
@forward './core/theming/all-theme' show all-component-themes, all-component-bases;
|
|
25
27
|
@forward './core/color/all-color' show all-component-colors;
|
|
26
28
|
@forward './core/typography/all-typography' show all-component-typographies;
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
@use 'sass:map';
|
|
2
|
+
@use 'variables';
|
|
3
|
+
|
|
4
|
+
/// Returns the minimum width value for a named breakpoint.
|
|
5
|
+
///
|
|
6
|
+
/// @param {String} $name - Breakpoint name (xsmall | small | medium | large | xlarge)
|
|
7
|
+
/// @param {Map} $breakpoints [variables.$breakpoints] - Custom breakpoints map (optional)
|
|
8
|
+
/// @return {Number} Width value in px
|
|
9
|
+
@function bp($name, $breakpoints: variables.$breakpoints) {
|
|
10
|
+
$min: map.get($breakpoints, $name);
|
|
11
|
+
|
|
12
|
+
@return $min;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
/// Applies styles when the viewport is **at least** the given breakpoint width (mobile-first).
|
|
16
|
+
///
|
|
17
|
+
/// @param {String} $name - Breakpoint name (xsmall | small | medium | large | xlarge)
|
|
18
|
+
/// @param {Map} $breakpoints [variables.$breakpoints] - Custom breakpoints map (optional)
|
|
19
|
+
///
|
|
20
|
+
/// @example scss
|
|
21
|
+
/// .my-element {
|
|
22
|
+
/// font-size: 1rem;
|
|
23
|
+
///
|
|
24
|
+
/// @include breakpoints.bp-gt(medium) {
|
|
25
|
+
/// font-size: 1.25rem;
|
|
26
|
+
/// }
|
|
27
|
+
/// }
|
|
28
|
+
@mixin bp-gt($name, $breakpoints: variables.$breakpoints) {
|
|
29
|
+
$min: bp($name, $breakpoints);
|
|
30
|
+
|
|
31
|
+
@if $min {
|
|
32
|
+
@media (min-width: $min) {
|
|
33
|
+
@content;
|
|
34
|
+
}
|
|
35
|
+
} @else {
|
|
36
|
+
@content;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/// Applies styles when the viewport is **at most** the given breakpoint width (max-width).
|
|
41
|
+
///
|
|
42
|
+
/// @param {String} $name - Breakpoint name (xsmall | small | medium | large | xlarge)
|
|
43
|
+
/// @param {Map} $breakpoints [variables.$breakpoints] - Custom breakpoints map (optional)
|
|
44
|
+
///
|
|
45
|
+
/// @example scss
|
|
46
|
+
/// .my-element {
|
|
47
|
+
/// display: block;
|
|
48
|
+
///
|
|
49
|
+
/// @include breakpoints.bp-lt(small) {
|
|
50
|
+
/// display: none;
|
|
51
|
+
/// }
|
|
52
|
+
/// }
|
|
53
|
+
@mixin bp-lt($name, $breakpoints: variables.$breakpoints) {
|
|
54
|
+
$max: bp($name, $breakpoints) - 1px;
|
|
55
|
+
|
|
56
|
+
@if $max {
|
|
57
|
+
@media (max-width: $max) {
|
|
58
|
+
@content;
|
|
59
|
+
}
|
|
60
|
+
} @else {
|
|
61
|
+
@content;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
@@ -29,14 +29,29 @@
|
|
|
29
29
|
@mixin custom-component-overrides {
|
|
30
30
|
@include mat.checkbox-overrides(
|
|
31
31
|
(
|
|
32
|
+
selected-icon-color: var(--acp-theme-primary-color),
|
|
32
33
|
selected-checkmark-color: white,
|
|
34
|
+
selected-focus-icon-color: var(--acp-theme-primary-color),
|
|
35
|
+
selected-hover-icon-color: var(--acp-theme-primary-color),
|
|
36
|
+
selected-focus-state-layer-color: var(--acp-theme-primary-color),
|
|
37
|
+
selected-hover-state-layer-color: var(--acp-theme-primary-color),
|
|
33
38
|
)
|
|
34
39
|
);
|
|
35
40
|
|
|
36
41
|
@include mat.fab-overrides(
|
|
37
42
|
(
|
|
38
|
-
container-color: var(--theme-primary-color),
|
|
43
|
+
container-color: var(--acp-theme-primary-color),
|
|
39
44
|
foreground-color: white,
|
|
40
45
|
)
|
|
41
46
|
);
|
|
47
|
+
|
|
48
|
+
@include mat.radio-overrides(
|
|
49
|
+
(
|
|
50
|
+
selected-icon-color: var(--acp-theme-primary-color),
|
|
51
|
+
selected-focus-icon-color: var(--acp-theme-primary-color),
|
|
52
|
+
selected-hover-icon-color: var(--acp-theme-primary-color),
|
|
53
|
+
selected-pressed-icon-color: var(--acp-theme-primary-color),
|
|
54
|
+
checked-ripple-color: var(--acp-theme-primary-color),
|
|
55
|
+
)
|
|
56
|
+
);
|
|
42
57
|
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
// Layout Variables for AcontPlus Applications
|
|
2
|
+
// These variables can be used across different applications
|
|
3
|
+
|
|
4
|
+
:root {
|
|
5
|
+
// Typography
|
|
6
|
+
--acp-body-font-family:
|
|
7
|
+
'Roboto', 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande',
|
|
8
|
+
sans-serif;
|
|
9
|
+
--acp-code-font-family: 'Roboto Mono', monospace;
|
|
10
|
+
|
|
11
|
+
// Layout spacing
|
|
12
|
+
--acp-gutter: 1rem;
|
|
13
|
+
--acp-sidenav-width: 15rem;
|
|
14
|
+
--acp-sidenav-collapsed-width: 4rem;
|
|
15
|
+
|
|
16
|
+
// Background colors
|
|
17
|
+
--acp-body-background-color: var(--mat-sys-surface-container);
|
|
18
|
+
|
|
19
|
+
// Link colors
|
|
20
|
+
--acp-link-color: var(--mat-sys-primary);
|
|
21
|
+
--acp-link-hover-color: var(--mat-sys-primary);
|
|
22
|
+
|
|
23
|
+
// Code styling
|
|
24
|
+
--acp-code-border-color: light-dark(rgba(19, 28, 43, 0.08), rgba(218, 226, 249, 0.08));
|
|
25
|
+
--acp-code-background-color: light-dark(rgba(19, 28, 43, 0.04), rgba(218, 226, 249, 0.04));
|
|
26
|
+
|
|
27
|
+
// Header
|
|
28
|
+
--acp-header-background-color: var(--acp-theme-primary-color);
|
|
29
|
+
|
|
30
|
+
// User panel
|
|
31
|
+
--acp-user-panel-background-color: var(--mat-sys-surface-container);
|
|
32
|
+
--acp-user-panel-hover-background-color: var(--mat-sys-surface-variant);
|
|
33
|
+
|
|
34
|
+
// Side menu
|
|
35
|
+
--acp-sidemenu-heading-hover-background-color: var(--mat-sys-surface-container-highest);
|
|
36
|
+
--acp-sidemenu-active-heading-text-color: var(--mat-sys-primary);
|
|
37
|
+
--acp-sidemenu-active-heading-background-color: var(--mat-sys-primary-container);
|
|
38
|
+
--acp-sidemenu-active-heading-hover-background-color: var(--mat-sys-primary-container);
|
|
39
|
+
--acp-sidemenu-expanded-background-color: var(--mat-sys-surface-container);
|
|
40
|
+
|
|
41
|
+
// Top menu
|
|
42
|
+
--acp-topmenu-text-color: var(--mat-sys-on-background);
|
|
43
|
+
--acp-topmenu-background-color: var(--acp-header-background-color);
|
|
44
|
+
--acp-topmenu-item-active-background-color: var(--mat-sys-primary-container);
|
|
45
|
+
--acp-topmenu-dropdown-item-active-text-color: var(--mat-sys-primary);
|
|
46
|
+
|
|
47
|
+
// Material toolbar heights
|
|
48
|
+
--mat-toolbar-standard-height: 4rem;
|
|
49
|
+
--mat-toolbar-mobile-height: 3.5rem;
|
|
50
|
+
|
|
51
|
+
--acp-color-border: var(--mat-sys-outline-variant);
|
|
52
|
+
--acp-spacing: 0.25rem;
|
|
53
|
+
}
|
|
@@ -3,12 +3,12 @@
|
|
|
3
3
|
.acp-primary {
|
|
4
4
|
@include mat.button-overrides(
|
|
5
5
|
(
|
|
6
|
-
filled-container-color: var(--theme-primary-color),
|
|
6
|
+
filled-container-color: var(--acp-theme-primary-color),
|
|
7
7
|
filled-label-text-color: #ffffff,
|
|
8
|
-
outlined-label-text-color: var(--theme-primary-color),
|
|
9
|
-
protected-label-text-color: var(--theme-primary-color),
|
|
10
|
-
text-label-text-color: var(--theme-primary-color),
|
|
11
|
-
text-state-layer-color: var(--theme-primary-color),
|
|
8
|
+
outlined-label-text-color: var(--acp-theme-primary-color),
|
|
9
|
+
protected-label-text-color: var(--acp-theme-primary-color),
|
|
10
|
+
text-label-text-color: var(--acp-theme-primary-color),
|
|
11
|
+
text-state-layer-color: var(--acp-theme-primary-color),
|
|
12
12
|
)
|
|
13
13
|
);
|
|
14
14
|
}
|
|
@@ -96,10 +96,10 @@
|
|
|
96
96
|
(
|
|
97
97
|
filled-container-color: #1f2937,
|
|
98
98
|
filled-label-text-color: #ffffff,
|
|
99
|
-
outlined-label-text-color: #1f2937,
|
|
100
|
-
protected-label-text-color: #1f2937,
|
|
101
|
-
text-label-text-color: #1f2937,
|
|
102
|
-
text-state-layer-color: #1f2937,
|
|
99
|
+
outlined-label-text-color: light-dark(#1f2937, #ffffff),
|
|
100
|
+
protected-label-text-color: light-dark(#1f2937, #ffffff),
|
|
101
|
+
text-label-text-color: light-dark(#1f2937, #ffffff),
|
|
102
|
+
text-state-layer-color: light-dark(#1f2937, #ffffff),
|
|
103
103
|
)
|
|
104
104
|
);
|
|
105
105
|
}
|
|
@@ -107,7 +107,7 @@
|
|
|
107
107
|
[matIconButton].acp-primary {
|
|
108
108
|
@include mat.icon-overrides(
|
|
109
109
|
(
|
|
110
|
-
color: var(--theme-primary-color),
|
|
110
|
+
color: var(--acp-theme-primary-color),
|
|
111
111
|
)
|
|
112
112
|
);
|
|
113
113
|
}
|
|
@@ -161,9 +161,173 @@
|
|
|
161
161
|
}
|
|
162
162
|
|
|
163
163
|
[matIconButton].acp-dark {
|
|
164
|
+
@include mat.icon-overrides(());
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
[matIconButton].acp-light {
|
|
164
168
|
@include mat.icon-overrides(
|
|
165
169
|
(
|
|
166
|
-
color: #
|
|
170
|
+
color: #ffffff,
|
|
171
|
+
)
|
|
172
|
+
);
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
[matFab].acp-primary {
|
|
176
|
+
@include mat.fab-overrides(
|
|
177
|
+
(
|
|
178
|
+
container-color: var(--acp-theme-primary-color),
|
|
179
|
+
foreground-color: #ffffff,
|
|
180
|
+
state-layer-color: #ffffff,
|
|
181
|
+
)
|
|
182
|
+
);
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
[matFab].acp-secondary {
|
|
186
|
+
@include mat.fab-overrides(
|
|
187
|
+
(
|
|
188
|
+
container-color: var(--mat-sys-secondary),
|
|
189
|
+
foreground-color: var(--mat-sys-on-secondary),
|
|
190
|
+
state-layer-color: var(--mat-sys-on-secondary),
|
|
191
|
+
)
|
|
192
|
+
);
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
[matFab].acp-accent {
|
|
196
|
+
@include mat.fab-overrides(
|
|
197
|
+
(
|
|
198
|
+
container-color: var(--mat-sys-tertiary),
|
|
199
|
+
foreground-color: var(--mat-sys-on-tertiary),
|
|
200
|
+
state-layer-color: var(--mat-sys-on-tertiary),
|
|
201
|
+
)
|
|
202
|
+
);
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
[matFab].acp-error {
|
|
206
|
+
@include mat.fab-overrides(
|
|
207
|
+
(
|
|
208
|
+
container-color: var(--mat-sys-error),
|
|
209
|
+
foreground-color: var(--mat-sys-on-error),
|
|
210
|
+
state-layer-color: var(--mat-sys-on-error),
|
|
211
|
+
)
|
|
212
|
+
);
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
[matFab].acp-success {
|
|
216
|
+
@include mat.fab-overrides(
|
|
217
|
+
(
|
|
218
|
+
container-color: #4caf50,
|
|
219
|
+
foreground-color: #ffffff,
|
|
220
|
+
state-layer-color: #ffffff,
|
|
221
|
+
)
|
|
222
|
+
);
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
[matFab].acp-warning {
|
|
226
|
+
@include mat.fab-overrides(
|
|
227
|
+
(
|
|
228
|
+
container-color: #f59e0b,
|
|
229
|
+
foreground-color: #ffffff,
|
|
230
|
+
state-layer-color: #ffffff,
|
|
231
|
+
)
|
|
232
|
+
);
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
[matFab].acp-info {
|
|
236
|
+
@include mat.fab-overrides(
|
|
237
|
+
(
|
|
238
|
+
container-color: #3b82f6,
|
|
239
|
+
foreground-color: #ffffff,
|
|
240
|
+
state-layer-color: #ffffff,
|
|
241
|
+
)
|
|
242
|
+
);
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
[matFab].acp-dark {
|
|
246
|
+
@include mat.fab-overrides(
|
|
247
|
+
(
|
|
248
|
+
container-color: #1f2937,
|
|
249
|
+
foreground-color: #ffffff,
|
|
250
|
+
state-layer-color: #ffffff,
|
|
251
|
+
)
|
|
252
|
+
);
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
[matMiniFab].acp-primary {
|
|
256
|
+
@include mat.fab-overrides(
|
|
257
|
+
(
|
|
258
|
+
small-container-color: var(--acp-theme-primary-color),
|
|
259
|
+
small-foreground-color: #ffffff,
|
|
260
|
+
small-state-layer-color: #ffffff,
|
|
261
|
+
)
|
|
262
|
+
);
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
[matMiniFab].acp-secondary {
|
|
266
|
+
@include mat.fab-overrides(
|
|
267
|
+
(
|
|
268
|
+
small-container-color: var(--mat-sys-secondary),
|
|
269
|
+
small-foreground-color: var(--mat-sys-on-secondary),
|
|
270
|
+
small-state-layer-color: var(--mat-sys-on-secondary),
|
|
271
|
+
)
|
|
272
|
+
);
|
|
273
|
+
}
|
|
274
|
+
|
|
275
|
+
[matMiniFab].acp-accent {
|
|
276
|
+
@include mat.fab-overrides(
|
|
277
|
+
(
|
|
278
|
+
small-container-color: var(--mat-sys-tertiary),
|
|
279
|
+
small-foreground-color: var(--mat-sys-on-tertiary),
|
|
280
|
+
small-state-layer-color: var(--mat-sys-on-tertiary),
|
|
281
|
+
)
|
|
282
|
+
);
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
[matMiniFab].acp-error {
|
|
286
|
+
@include mat.fab-overrides(
|
|
287
|
+
(
|
|
288
|
+
small-container-color: var(--mat-sys-error),
|
|
289
|
+
small-foreground-color: var(--mat-sys-on-error),
|
|
290
|
+
small-state-layer-color: var(--mat-sys-on-error),
|
|
291
|
+
)
|
|
292
|
+
);
|
|
293
|
+
}
|
|
294
|
+
|
|
295
|
+
[matMiniFab].acp-success {
|
|
296
|
+
@include mat.fab-overrides(
|
|
297
|
+
(
|
|
298
|
+
small-container-color: #4caf50,
|
|
299
|
+
small-foreground-color: #ffffff,
|
|
300
|
+
small-state-layer-color: #ffffff,
|
|
301
|
+
)
|
|
302
|
+
);
|
|
303
|
+
}
|
|
304
|
+
|
|
305
|
+
[matMiniFab].acp-warning {
|
|
306
|
+
@include mat.fab-overrides(
|
|
307
|
+
(
|
|
308
|
+
small-container-color: #f59e0b,
|
|
309
|
+
small-foreground-color: #ffffff,
|
|
310
|
+
small-state-layer-color: #ffffff,
|
|
311
|
+
)
|
|
312
|
+
);
|
|
313
|
+
}
|
|
314
|
+
|
|
315
|
+
[matMiniFab].acp-info {
|
|
316
|
+
@include mat.fab-overrides(
|
|
317
|
+
(
|
|
318
|
+
small-container-color: #3b82f6,
|
|
319
|
+
small-foreground-color: #ffffff,
|
|
320
|
+
small-state-layer-color: #ffffff,
|
|
321
|
+
)
|
|
322
|
+
);
|
|
323
|
+
}
|
|
324
|
+
|
|
325
|
+
[matMiniFab].acp-dark {
|
|
326
|
+
@include mat.fab-overrides(
|
|
327
|
+
(
|
|
328
|
+
small-container-color: #1f2937,
|
|
329
|
+
small-foreground-color: #ffffff,
|
|
330
|
+
small-state-layer-color: #ffffff,
|
|
167
331
|
)
|
|
168
332
|
);
|
|
169
333
|
}
|
|
@@ -181,6 +345,10 @@
|
|
|
181
345
|
--mat-icon-button-container-shape: 8px;
|
|
182
346
|
}
|
|
183
347
|
|
|
348
|
+
.acp-block {
|
|
349
|
+
width: 100%;
|
|
350
|
+
}
|
|
351
|
+
|
|
184
352
|
.acp-medium {
|
|
185
353
|
@include mat.theme(
|
|
186
354
|
(
|