@ng-matero/extensions 19.4.1 → 20.0.1
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/alert/_alert-theme.scss +26 -31
- package/alert/_m2-alert.scss +59 -0
- package/alert/_m3-alert.scss +41 -0
- package/alert/alert.scss +27 -31
- package/alert/index.d.ts +30 -5
- package/button/index.d.ts +31 -5
- package/checkbox-group/index.d.ts +117 -5
- package/colorpicker/_colorpicker-theme.scss +31 -36
- package/{core/tokens/m2/mtx/_colorpicker.scss → colorpicker/_m2-colorpicker.scss} +6 -10
- package/colorpicker/_m3-colorpicker.scss +23 -0
- package/colorpicker/colorpicker-toggle.scss +4 -9
- package/colorpicker/index.d.ts +285 -3
- package/column-resize/index.d.ts +456 -3
- package/core/index.d.ts +147 -5
- package/core/theming/_color-api-backwards-compatibility.scss +8 -15
- package/core/theming/_definition.scss +81 -75
- package/core/theming/_palettes.scss +1036 -0
- package/core/tokens/{m2/_index.scss → _m2-tokens.scss} +22 -22
- package/core/tokens/_m2-utils.scss +108 -0
- package/core/tokens/_m3-system.scss +128 -106
- package/core/tokens/_m3-tokens.scss +36 -282
- package/core/tokens/_m3-utils.scss +48 -0
- package/core/tokens/_token-utils.scss +67 -239
- package/core/tokens/m3/_index.scss +7 -0
- package/core/tokens/m3/_md-sys-color.scss +156 -0
- package/core/tokens/m3/_md-sys-elevation.scss +15 -0
- package/core/tokens/m3/_md-sys-motion.scss +35 -0
- package/core/tokens/m3/_md-sys-shape.scss +21 -0
- package/core/tokens/m3/_md-sys-state.scss +13 -0
- package/core/tokens/m3/_md-sys-typescale.scss +128 -0
- package/core/tokens/m3/_theme.scss +47 -0
- package/datetimepicker/_datetimepicker-theme.scss +29 -39
- package/datetimepicker/_m2-datetimepicker.scss +149 -0
- package/datetimepicker/_m3-datetimepicker.scss +81 -0
- package/datetimepicker/calendar-body.scss +31 -56
- package/datetimepicker/calendar.scss +43 -79
- package/datetimepicker/clock.scss +28 -47
- package/datetimepicker/datetimepicker-content.scss +9 -15
- package/datetimepicker/datetimepicker-toggle.scss +4 -9
- package/datetimepicker/index.d.ts +1208 -3
- package/datetimepicker/time-view.scss +26 -32
- package/dialog/index.d.ts +54 -5
- package/drawer/_drawer-theme.scss +25 -30
- package/{core/tokens/m2/mtx/_drawer.scss → drawer/_m2-drawer.scss} +9 -12
- package/drawer/_m3-drawer.scss +24 -0
- package/drawer/drawer-container.scss +13 -24
- package/drawer/index.d.ts +221 -3
- package/fesm2022/mtxAlert.mjs +7 -7
- package/fesm2022/mtxAlert.mjs.map +1 -1
- package/fesm2022/mtxButton.mjs +11 -11
- package/fesm2022/mtxButton.mjs.map +1 -1
- package/fesm2022/mtxCheckboxGroup.mjs +7 -7
- package/fesm2022/mtxColorpicker.mjs +21 -21
- package/fesm2022/mtxColorpicker.mjs.map +1 -1
- package/fesm2022/mtxColumnResize.mjs +232 -103
- package/fesm2022/mtxColumnResize.mjs.map +1 -1
- package/fesm2022/mtxCore.mjs +21 -21
- package/fesm2022/mtxDatetimepicker.mjs +63 -67
- package/fesm2022/mtxDatetimepicker.mjs.map +1 -1
- package/fesm2022/mtxDialog.mjs +10 -10
- package/fesm2022/mtxDialog.mjs.map +1 -1
- package/fesm2022/mtxDrawer.mjs +10 -10
- package/fesm2022/mtxGrid.mjs +78 -77
- package/fesm2022/mtxGrid.mjs.map +1 -1
- package/fesm2022/mtxLoader.mjs +7 -7
- package/fesm2022/mtxPhotoviewer.mjs +7 -7
- package/fesm2022/mtxPopover.mjs +24 -25
- package/fesm2022/mtxPopover.mjs.map +1 -1
- package/fesm2022/mtxProgress.mjs +7 -7
- package/fesm2022/mtxSelect.mjs +54 -54
- package/fesm2022/mtxSelect.mjs.map +1 -1
- package/fesm2022/mtxSplit.mjs +10 -10
- package/fesm2022/mtxTooltip.mjs +13 -13
- package/fesm2022/mtxTooltip.mjs.map +1 -1
- package/grid/_grid-theme.scss +24 -34
- package/grid/_m2-grid.scss +66 -0
- package/grid/_m3-grid.scss +35 -0
- package/grid/column-menu.scss +6 -23
- package/grid/column-resize/_column-resize.scss +35 -30
- package/grid/grid.scss +41 -74
- package/grid/index.d.ts +799 -3
- package/index.d.ts +2 -5
- package/loader/_loader-theme.scss +26 -31
- package/{core/tokens/m2/mtx/_loader.scss → loader/_m2-loader.scss} +5 -10
- package/loader/_m3-loader.scss +20 -0
- package/loader/index.d.ts +43 -5
- package/loader/loader.scss +4 -5
- package/package.json +28 -28
- package/photoviewer/index.d.ts +26 -5
- package/{core/tokens/m2/mtx/_popover.scss → popover/_m2-popover.scss} +9 -12
- package/popover/_m3-popover.scss +26 -0
- package/popover/_popover-theme.scss +26 -31
- package/popover/index.d.ts +399 -3
- package/popover/popover.scss +23 -29
- package/prebuilt-themes/azure-blue.css +1 -1
- package/prebuilt-themes/cyan-orange.css +1 -1
- package/prebuilt-themes/deeppurple-amber.css +1 -1
- package/prebuilt-themes/indigo-pink.css +1 -1
- package/prebuilt-themes/magenta-violet.css +1 -1
- package/prebuilt-themes/pink-bluegrey.css +1 -1
- package/prebuilt-themes/purple-green.css +1 -1
- package/prebuilt-themes/rose-red.css +1 -1
- package/progress/_m2-progress.scss +53 -0
- package/progress/_m3-progress.scss +33 -0
- package/progress/_progress-theme.scss +22 -34
- package/progress/index.d.ts +35 -5
- package/progress/progress.scss +28 -43
- package/select/_m2-select.scss +79 -0
- package/select/_m3-select.scss +46 -0
- package/select/_select-theme.scss +27 -37
- package/select/index.d.ts +381 -3
- package/select/select.scss +189 -205
- package/{core/tokens/m2/mtx/_split.scss → split/_m2-split.scss} +6 -9
- package/split/_m3-split.scss +23 -0
- package/split/_split-theme.scss +31 -34
- package/split/index.d.ts +255 -3
- package/split/split.scss +8 -11
- package/tooltip/_m2-tooltip.scss +50 -0
- package/tooltip/_m3-tooltip.scss +28 -0
- package/tooltip/_tooltip-theme.scss +23 -47
- package/tooltip/index.d.ts +345 -3
- package/tooltip/tooltip.scss +11 -15
- package/alert/alert-module.d.ts +0 -8
- package/alert/alert.d.ts +0 -19
- package/alert/public-api.d.ts +0 -2
- package/button/button-loading.d.ts +0 -19
- package/button/button-module.d.ts +0 -10
- package/button/public-api.d.ts +0 -2
- package/checkbox-group/checkbox-group-module.d.ts +0 -11
- package/checkbox-group/checkbox-group.d.ts +0 -86
- package/checkbox-group/interfaces.d.ts +0 -17
- package/checkbox-group/public-api.d.ts +0 -3
- package/colorpicker/colorpicker-animations.d.ts +0 -9
- package/colorpicker/colorpicker-input.d.ts +0 -88
- package/colorpicker/colorpicker-module.d.ts +0 -15
- package/colorpicker/colorpicker-toggle.d.ts +0 -39
- package/colorpicker/colorpicker.d.ts +0 -140
- package/colorpicker/public-api.d.ts +0 -5
- package/column-resize/column-resize-directives/column-resize-flex.d.ts +0 -29
- package/column-resize/column-resize-directives/column-resize.d.ts +0 -29
- package/column-resize/column-resize-directives/constants.d.ts +0 -10
- package/column-resize/column-resize-module.d.ts +0 -12
- package/column-resize/column-resize-notifier.d.ts +0 -48
- package/column-resize/column-resize.d.ts +0 -39
- package/column-resize/column-size-store.d.ts +0 -12
- package/column-resize/event-dispatcher.d.ts +0 -35
- package/column-resize/overlay-handle.d.ts +0 -43
- package/column-resize/polyfill.d.ts +0 -9
- package/column-resize/public-api.d.ts +0 -12
- package/column-resize/resizable.d.ts +0 -63
- package/column-resize/resize-ref.d.ts +0 -17
- package/column-resize/resize-strategy.d.ts +0 -84
- package/column-resize/selectors.d.ts +0 -10
- package/core/datetime/datetime-adapter.d.ts +0 -45
- package/core/datetime/datetime-formats.d.ts +0 -22
- package/core/datetime/datetime.module.d.ts +0 -15
- package/core/datetime/index.d.ts +0 -5
- package/core/datetime/native-datetime-adapter.d.ts +0 -40
- package/core/datetime/native-datetime-formats.d.ts +0 -2
- package/core/pipes/index.d.ts +0 -3
- package/core/pipes/is-template-ref.pipe.d.ts +0 -7
- package/core/pipes/pipes.module.d.ts +0 -9
- package/core/pipes/to-observable.pipe.d.ts +0 -8
- package/core/public-api.d.ts +0 -2
- package/core/theming/_inspection.scss +0 -38
- package/core/theming/_validation.scss +0 -5
- package/core/tokens/_density.scss +0 -49
- package/core/tokens/_format-tokens.scss +0 -5
- package/core/tokens/_token-definition.scss +0 -271
- package/core/tokens/m2/mdc/_plain-tooltip.scss +0 -63
- package/core/tokens/m2/mtx/_alert.scss +0 -62
- package/core/tokens/m2/mtx/_datetimepicker.scss +0 -152
- package/core/tokens/m2/mtx/_grid.scss +0 -69
- package/core/tokens/m2/mtx/_progress.scss +0 -56
- package/core/tokens/m2/mtx/_select.scss +0 -82
- package/core/tokens/m3/definitions/_index.scss +0 -9
- package/core/tokens/m3/definitions/_md-comp-plain-tooltip.scss +0 -51
- package/core/tokens/m3/definitions/_md-ref-palette.scss +0 -100
- package/core/tokens/m3/definitions/_md-ref-typeface.scss +0 -14
- package/core/tokens/m3/definitions/_md-sys-color.scss +0 -126
- package/core/tokens/m3/definitions/_md-sys-elevation.scss +0 -15
- package/core/tokens/m3/definitions/_md-sys-motion.scss +0 -46
- package/core/tokens/m3/definitions/_md-sys-shape.scss +0 -24
- package/core/tokens/m3/definitions/_md-sys-state.scss +0 -13
- package/core/tokens/m3/definitions/_md-sys-typescale.scss +0 -308
- package/core/tokens/m3/index.scss +0 -47
- package/core/tokens/m3/mdc/_plain-tooltip.scss +0 -15
- package/core/tokens/m3/mtx/_alert.scss +0 -41
- package/core/tokens/m3/mtx/_colorpicker.scss +0 -19
- package/core/tokens/m3/mtx/_datetimepicker.scss +0 -140
- package/core/tokens/m3/mtx/_drawer.scss +0 -22
- package/core/tokens/m3/mtx/_grid.scss +0 -32
- package/core/tokens/m3/mtx/_loader.scss +0 -22
- package/core/tokens/m3/mtx/_popover.scss +0 -25
- package/core/tokens/m3/mtx/_progress.scss +0 -32
- package/core/tokens/m3/mtx/_select.scss +0 -76
- package/core/tokens/m3/mtx/_split.scss +0 -30
- package/datetimepicker/calendar-body.d.ts +0 -66
- package/datetimepicker/calendar.d.ts +0 -157
- package/datetimepicker/clock.d.ts +0 -101
- package/datetimepicker/datetimepicker-actions.d.ts +0 -36
- package/datetimepicker/datetimepicker-animations.d.ts +0 -11
- package/datetimepicker/datetimepicker-errors.d.ts +0 -2
- package/datetimepicker/datetimepicker-filtertype.d.ts +0 -5
- package/datetimepicker/datetimepicker-input.d.ts +0 -105
- package/datetimepicker/datetimepicker-intl.d.ts +0 -53
- package/datetimepicker/datetimepicker-module.d.ts +0 -22
- package/datetimepicker/datetimepicker-toggle.d.ts +0 -42
- package/datetimepicker/datetimepicker-types.d.ts +0 -6
- package/datetimepicker/datetimepicker.d.ts +0 -274
- package/datetimepicker/month-view.d.ts +0 -80
- package/datetimepicker/multi-year-view.d.ts +0 -86
- package/datetimepicker/public-api.d.ts +0 -16
- package/datetimepicker/time-view.d.ts +0 -147
- package/datetimepicker/year-view.d.ts +0 -68
- package/dialog/dialog-config.d.ts +0 -17
- package/dialog/dialog-container.d.ts +0 -11
- package/dialog/dialog-module.d.ts +0 -12
- package/dialog/dialog.d.ts +0 -15
- package/dialog/public-api.d.ts +0 -4
- package/drawer/drawer-animations.d.ts +0 -8
- package/drawer/drawer-config.d.ts +0 -63
- package/drawer/drawer-container.d.ts +0 -35
- package/drawer/drawer-module.d.ts +0 -10
- package/drawer/drawer-ref.d.ts +0 -53
- package/drawer/drawer.d.ts +0 -59
- package/drawer/public-api.d.ts +0 -6
- package/grid/cell.d.ts +0 -32
- package/grid/column-menu.d.ts +0 -39
- package/grid/column-resize/column-resize-directives/column-resize-flex.d.ts +0 -24
- package/grid/column-resize/column-resize-directives/column-resize.d.ts +0 -24
- package/grid/column-resize/column-resize-directives/common.d.ts +0 -13
- package/grid/column-resize/column-resize-module.d.ts +0 -17
- package/grid/column-resize/index.d.ts +0 -7
- package/grid/column-resize/overlay-handle.d.ts +0 -32
- package/grid/column-resize/resizable-directives/common.d.ts +0 -19
- package/grid/column-resize/resizable-directives/resizable.d.ts +0 -32
- package/grid/column-resize/resize-strategy.d.ts +0 -20
- package/grid/expansion-toggle.d.ts +0 -17
- package/grid/grid-module.d.ts +0 -31
- package/grid/grid-pipes.d.ts +0 -39
- package/grid/grid-utils.d.ts +0 -33
- package/grid/grid.d.ts +0 -268
- package/grid/interfaces.d.ts +0 -180
- package/grid/public-api.d.ts +0 -17
- package/grid/selectable-cell.d.ts +0 -16
- package/loader/loader-module.d.ts +0 -10
- package/loader/loader.d.ts +0 -30
- package/loader/public-api.d.ts +0 -2
- package/photoviewer/photoviewer-module.d.ts +0 -7
- package/photoviewer/photoviewer.d.ts +0 -17
- package/photoviewer/public-api.d.ts +0 -2
- package/popover/popover-animations.d.ts +0 -11
- package/popover/popover-content.d.ts +0 -43
- package/popover/popover-errors.d.ts +0 -14
- package/popover/popover-interfaces.d.ts +0 -50
- package/popover/popover-module.d.ts +0 -13
- package/popover/popover-target.d.ts +0 -7
- package/popover/popover-trigger.d.ts +0 -132
- package/popover/popover-types.d.ts +0 -10
- package/popover/popover.d.ts +0 -147
- package/popover/public-api.d.ts +0 -8
- package/progress/progress-module.d.ts +0 -8
- package/progress/progress.d.ts +0 -24
- package/progress/public-api.d.ts +0 -2
- package/public-api.d.ts +0 -2
- package/select/option.d.ts +0 -21
- package/select/public-api.d.ts +0 -5
- package/select/select-intl.d.ts +0 -18
- package/select/select-module.d.ts +0 -12
- package/select/select.d.ts +0 -270
- package/select/templates.d.ts +0 -67
- package/split/interfaces.d.ts +0 -52
- package/split/public-api.d.ts +0 -5
- package/split/split-module.d.ts +0 -9
- package/split/split-pane.d.ts +0 -53
- package/split/split.d.ts +0 -133
- package/split/utils.d.ts +0 -13
- package/tooltip/public-api.d.ts +0 -3
- package/tooltip/tooltip-animations.d.ts +0 -9
- package/tooltip/tooltip-module.d.ts +0 -13
- package/tooltip/tooltip.d.ts +0 -321
|
@@ -1,86 +1,6 @@
|
|
|
1
1
|
@use 'sass:map';
|
|
2
2
|
@use '@angular/material' as mat;
|
|
3
3
|
@use './m3';
|
|
4
|
-
@use './m3/definitions' as m3-token-definitions;
|
|
5
|
-
@use '../tokens/m2' as m2-tokens;
|
|
6
|
-
@use './density';
|
|
7
|
-
@use './format-tokens';
|
|
8
|
-
|
|
9
|
-
/// Generates tokens for the given palette with the given prefix.
|
|
10
|
-
/// @param {Map} $palette The palette to generate tokens for
|
|
11
|
-
/// @param {String} $prefix The key prefix used to name the tokens
|
|
12
|
-
/// @return {Map} A set of tokens for the given palette
|
|
13
|
-
@function _generate-palette-tokens($palette, $prefix) {
|
|
14
|
-
$palette: map.remove($palette, neutral, neutral-variant);
|
|
15
|
-
$result: ();
|
|
16
|
-
@each $hue, $value in $palette {
|
|
17
|
-
$result: map.set($result, '#{$prefix}#{$hue}', $value);
|
|
18
|
-
}
|
|
19
|
-
@return $result;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
/// Creates a set of `md-ref-palette` tokens from the given palettes. (See
|
|
23
|
-
/// ./m3/definitions/_md-ref-palette.scss)
|
|
24
|
-
/// @param {Map} $primary The primary palette
|
|
25
|
-
/// @param {Map} $secondary The secondary palette
|
|
26
|
-
/// @param {Map} $tertiary The tertiary palette
|
|
27
|
-
/// @param {Map} $error The error palette
|
|
28
|
-
/// @return {Map} A set of `md-ref-palette` tokens
|
|
29
|
-
@function generate-ref-palette-tokens($primary, $tertiary, $error) {
|
|
30
|
-
@return mat.private-merge-all(
|
|
31
|
-
(black: #000, white: #fff),
|
|
32
|
-
_generate-palette-tokens($primary, primary),
|
|
33
|
-
_generate-palette-tokens(map.get($primary, secondary), secondary),
|
|
34
|
-
_generate-palette-tokens($tertiary, tertiary),
|
|
35
|
-
_generate-palette-tokens(map.get($primary, neutral), neutral),
|
|
36
|
-
_generate-palette-tokens(map.get($primary, neutral-variant), neutral-variant),
|
|
37
|
-
_generate-palette-tokens($error, error),
|
|
38
|
-
);
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
/// Creates a set of `md-ref-typeface` tokens from the given palettes. (See
|
|
42
|
-
/// ./m3/definitions/_md-ref-typeface.scss)
|
|
43
|
-
/// @param {List|String} $brand The font-family to use for brand text
|
|
44
|
-
/// @param {List|String} $plain The font-family to use for plain text
|
|
45
|
-
/// @param {String} $bold The font-weight to use for bold text
|
|
46
|
-
/// @param {String} $medium The font-weight to use for medium text
|
|
47
|
-
/// @param {String} $regular The font-weight to use for regular text
|
|
48
|
-
/// @return {Map} A set of `md-ref-typeface` tokens
|
|
49
|
-
@function generate-ref-typeface-tokens($brand, $plain, $bold, $medium, $regular) {
|
|
50
|
-
@return (
|
|
51
|
-
brand: $brand,
|
|
52
|
-
plain: $plain,
|
|
53
|
-
weight-bold: $bold,
|
|
54
|
-
weight-medium: $medium,
|
|
55
|
-
weight-regular: $regular,
|
|
56
|
-
);
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
$_cached-token-slots: null;
|
|
60
|
-
|
|
61
|
-
/// Determines the token slots for all components.
|
|
62
|
-
@function _get-token-slots() {
|
|
63
|
-
// Cache the slots since they're constant and calculating
|
|
64
|
-
// them appears to be expensive (see #29009).
|
|
65
|
-
@if ($_cached-token-slots) {
|
|
66
|
-
@return $_cached-token-slots;
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
// TODO(mmalerba): Refactor this to not depend on the legacy theme when moving out of
|
|
70
|
-
// material-experimental. This is a hack for now because there is no good way to get the token
|
|
71
|
-
// slots in material-experimental without exposing them all from material.
|
|
72
|
-
$fake-theme: mat.m2-define-light-theme((
|
|
73
|
-
color: (
|
|
74
|
-
primary: mat.m2-define-palette(mat.$m2-red-palette),
|
|
75
|
-
accent: mat.m2-define-palette(mat.$m2-red-palette),
|
|
76
|
-
warn: mat.m2-define-palette(mat.$m2-red-palette),
|
|
77
|
-
),
|
|
78
|
-
typography: mat.m2-define-typography-config(),
|
|
79
|
-
density: 0
|
|
80
|
-
));
|
|
81
|
-
$_cached-token-slots: m2-tokens.m2-tokens-from-theme($fake-theme) !global;
|
|
82
|
-
@return $_cached-token-slots;
|
|
83
|
-
}
|
|
84
4
|
|
|
85
5
|
/// Generates a set of namespaced tokens for all components.
|
|
86
6
|
/// @param {Map} $systems The MDC system tokens
|
|
@@ -98,31 +18,15 @@ $_cached-token-slots: null;
|
|
|
98
18
|
), $systems);
|
|
99
19
|
$exclude-hardcoded: not $include-non-systemized;
|
|
100
20
|
|
|
101
|
-
// DO NOT REMOVE
|
|
102
|
-
// This function is used internally.
|
|
103
|
-
$systems: format-tokens.private-format-tokens($systems);
|
|
104
|
-
$token-slots: _get-token-slots();
|
|
105
|
-
|
|
106
21
|
// TODO(mmalerba): Fill in remaining tokens.
|
|
107
22
|
$result: mat.private-deep-merge-all(
|
|
108
23
|
// Add the system color & typography tokens (so we can give users access via an API).
|
|
109
24
|
(
|
|
110
|
-
(
|
|
111
|
-
(
|
|
25
|
+
(mat, theme): map.get($systems, md-sys-color),
|
|
26
|
+
(mat, typography): map.get($systems, md-sys-typescale),
|
|
112
27
|
),
|
|
113
|
-
m3.get-m3-tokens($systems, $exclude-hardcoded, $token-slots),
|
|
114
28
|
);
|
|
115
29
|
|
|
116
|
-
// Strip out tokens that are systemized by our made up density system.
|
|
117
|
-
@each $namespace, $tokens in $result {
|
|
118
|
-
@each $token, $value in $tokens {
|
|
119
|
-
@if density.is-systemized($namespace, $token) and not $include-density {
|
|
120
|
-
$tokens: map.remove($tokens, $token);
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
$result: map.set($result, $namespace, $tokens);
|
|
124
|
-
}
|
|
125
|
-
|
|
126
30
|
@return $result;
|
|
127
31
|
}
|
|
128
32
|
|
|
@@ -134,170 +38,34 @@ $_cached-token-slots: null;
|
|
|
134
38
|
@return $result;
|
|
135
39
|
}
|
|
136
40
|
|
|
137
|
-
@function
|
|
138
|
-
$
|
|
139
|
-
m3
|
|
140
|
-
m3
|
|
41
|
+
@function get-sys-color($type, $palettes, $prefix) {
|
|
42
|
+
$sys-color: if($type == dark,
|
|
43
|
+
m3.md-sys-color-values-dark($palettes),
|
|
44
|
+
m3.md-sys-color-values-light($palettes));
|
|
141
45
|
|
|
142
46
|
@if (mat.$private-use-system-color-variables) {
|
|
143
|
-
$
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
'inverse-surface',
|
|
150
|
-
'on-background',
|
|
151
|
-
'on-error',
|
|
152
|
-
'on-error-container',
|
|
153
|
-
'on-primary',
|
|
154
|
-
'on-primary-container',
|
|
155
|
-
'on-primary-fixed',
|
|
156
|
-
'on-primary-fixed-variant',
|
|
157
|
-
'on-secondary',
|
|
158
|
-
'on-secondary-container',
|
|
159
|
-
'on-secondary-fixed',
|
|
160
|
-
'on-secondary-fixed-variant',
|
|
161
|
-
'on-surface',
|
|
162
|
-
'on-surface-variant',
|
|
163
|
-
'on-tertiary',
|
|
164
|
-
'on-tertiary-container',
|
|
165
|
-
'on-tertiary-fixed',
|
|
166
|
-
'on-tertiary-fixed-variant',
|
|
167
|
-
'outline',
|
|
168
|
-
'outline-variant',
|
|
169
|
-
'primary',
|
|
170
|
-
'primary-container',
|
|
171
|
-
'primary-fixed',
|
|
172
|
-
'primary-fixed-dim',
|
|
173
|
-
'scrim',
|
|
174
|
-
'secondary',
|
|
175
|
-
'secondary-container',
|
|
176
|
-
'secondary-fixed',
|
|
177
|
-
'secondary-fixed-dim',
|
|
178
|
-
'surface',
|
|
179
|
-
'surface-bright',
|
|
180
|
-
'surface-container',
|
|
181
|
-
'surface-container-high',
|
|
182
|
-
'surface-container-highest',
|
|
183
|
-
'surface-container-low',
|
|
184
|
-
'surface-container-lowest',
|
|
185
|
-
'surface-dim',
|
|
186
|
-
'surface-tint',
|
|
187
|
-
'surface-variant',
|
|
188
|
-
'tertiary',
|
|
189
|
-
'tertiary-container',
|
|
190
|
-
'tertiary-fixed',
|
|
191
|
-
'tertiary-fixed-dim'
|
|
192
|
-
);
|
|
193
|
-
@return map.merge(create-map($keys, $prefix), (
|
|
194
|
-
shadow: map.get($mdc-sys-color, shadow)
|
|
195
|
-
));
|
|
47
|
+
$var-values: ();
|
|
48
|
+
@each $key in map.keys($sys-color) {
|
|
49
|
+
$var-values: map.set($var-values, $key, var(--#{$prefix}-#{$key}));
|
|
50
|
+
}
|
|
51
|
+
$var-values: map.set($var-values, shadow, map.get($sys-color, shadow));
|
|
52
|
+
@return $var-values;
|
|
196
53
|
}
|
|
197
54
|
|
|
198
|
-
@return $
|
|
55
|
+
@return $sys-color;
|
|
199
56
|
}
|
|
200
57
|
|
|
201
|
-
@function
|
|
58
|
+
@function get-sys-typeface($typography, $prefix) {
|
|
59
|
+
$sys-typography: m3.md-sys-typescale-values($typography);
|
|
202
60
|
@if (mat.$private-use-system-typography-variables) {
|
|
203
|
-
$
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
'body-large-tracking',
|
|
209
|
-
'body-large-weight',
|
|
210
|
-
'body-medium',
|
|
211
|
-
'body-medium-font',
|
|
212
|
-
'body-medium-line-height',
|
|
213
|
-
'body-medium-size',
|
|
214
|
-
'body-medium-tracking',
|
|
215
|
-
'body-medium-weight',
|
|
216
|
-
'body-small',
|
|
217
|
-
'body-small-font',
|
|
218
|
-
'body-small-line-height',
|
|
219
|
-
'body-small-size',
|
|
220
|
-
'body-small-tracking',
|
|
221
|
-
'body-small-weight',
|
|
222
|
-
'display-large',
|
|
223
|
-
'display-large-font',
|
|
224
|
-
'display-large-line-height',
|
|
225
|
-
'display-large-size',
|
|
226
|
-
'display-large-tracking',
|
|
227
|
-
'display-large-weight',
|
|
228
|
-
'display-medium',
|
|
229
|
-
'display-medium-font',
|
|
230
|
-
'display-medium-line-height',
|
|
231
|
-
'display-medium-size',
|
|
232
|
-
'display-medium-tracking',
|
|
233
|
-
'display-medium-weight',
|
|
234
|
-
'display-small',
|
|
235
|
-
'display-small-font',
|
|
236
|
-
'display-small-line-height',
|
|
237
|
-
'display-small-size',
|
|
238
|
-
'display-small-tracking',
|
|
239
|
-
'display-small-weight',
|
|
240
|
-
'headline-large',
|
|
241
|
-
'headline-large-font',
|
|
242
|
-
'headline-large-line-height',
|
|
243
|
-
'headline-large-size',
|
|
244
|
-
'headline-large-tracking',
|
|
245
|
-
'headline-large-weight',
|
|
246
|
-
'headline-medium',
|
|
247
|
-
'headline-medium-font',
|
|
248
|
-
'headline-medium-line-height',
|
|
249
|
-
'headline-medium-size',
|
|
250
|
-
'headline-medium-tracking',
|
|
251
|
-
'headline-medium-weight',
|
|
252
|
-
'headline-small',
|
|
253
|
-
'headline-small-font',
|
|
254
|
-
'headline-small-line-height',
|
|
255
|
-
'headline-small-size',
|
|
256
|
-
'headline-small-tracking',
|
|
257
|
-
'headline-small-weight',
|
|
258
|
-
'label-large',
|
|
259
|
-
'label-large-font',
|
|
260
|
-
'label-large-line-height',
|
|
261
|
-
'label-large-size',
|
|
262
|
-
'label-large-tracking',
|
|
263
|
-
'label-large-weight',
|
|
264
|
-
'label-large-weight-prominent',
|
|
265
|
-
'label-medium',
|
|
266
|
-
'label-medium-font',
|
|
267
|
-
'label-medium-line-height',
|
|
268
|
-
'label-medium-size',
|
|
269
|
-
'label-medium-tracking',
|
|
270
|
-
'label-medium-weight',
|
|
271
|
-
'label-medium-weight-prominent',
|
|
272
|
-
'label-small',
|
|
273
|
-
'label-small-font',
|
|
274
|
-
'label-small-line-height',
|
|
275
|
-
'label-small-size',
|
|
276
|
-
'label-small-tracking',
|
|
277
|
-
'label-small-weight',
|
|
278
|
-
'title-large',
|
|
279
|
-
'title-large-font',
|
|
280
|
-
'title-large-line-height',
|
|
281
|
-
'title-large-size',
|
|
282
|
-
'title-large-tracking',
|
|
283
|
-
'title-large-weight',
|
|
284
|
-
'title-medium',
|
|
285
|
-
'title-medium-font',
|
|
286
|
-
'title-medium-line-height',
|
|
287
|
-
'title-medium-size',
|
|
288
|
-
'title-medium-tracking',
|
|
289
|
-
'title-medium-weight',
|
|
290
|
-
'title-small',
|
|
291
|
-
'title-small-font',
|
|
292
|
-
'title-small-line-height',
|
|
293
|
-
'title-small-size',
|
|
294
|
-
'title-small-tracking',
|
|
295
|
-
'title-small-weight'
|
|
296
|
-
);
|
|
297
|
-
|
|
298
|
-
@return create-map($keys, $prefix);
|
|
61
|
+
$var-values: ();
|
|
62
|
+
@each $key in map.keys($sys-typography) {
|
|
63
|
+
$var-values: map.set($var-values, $key, var(--#{$prefix}-#{$key}));
|
|
64
|
+
}
|
|
65
|
+
@return $var-values;
|
|
299
66
|
}
|
|
300
|
-
|
|
67
|
+
|
|
68
|
+
@return $sys-typography;
|
|
301
69
|
}
|
|
302
70
|
|
|
303
71
|
/// Generates a set of namespaced color tokens for all components.
|
|
@@ -307,27 +75,24 @@ $_cached-token-slots: null;
|
|
|
307
75
|
/// @param {Map} $error The error palette
|
|
308
76
|
/// @param {String} $system-variables-prefix The prefix of system tokens
|
|
309
77
|
/// @return {Map} A map of namespaced color tokens
|
|
310
|
-
@function generate-color-tokens($type, $
|
|
311
|
-
$
|
|
312
|
-
md-ref-palette: generate-ref-palette-tokens($primary, $tertiary, $error)
|
|
313
|
-
);
|
|
314
|
-
|
|
315
|
-
$sys-color: _get-sys-color($type, $ref, $system-variables-prefix);
|
|
316
|
-
|
|
317
|
-
@return generate-tokens(map.merge($ref, (
|
|
318
|
-
// Used to get the theme type
|
|
319
|
-
md-sys-type: $type,
|
|
78
|
+
@function generate-color-tokens($type, $palettes, $system-variables-prefix) {
|
|
79
|
+
$sys-color: get-sys-color($type, $palettes, $system-variables-prefix);
|
|
320
80
|
|
|
81
|
+
@return generate-tokens((
|
|
321
82
|
md-sys-color: $sys-color,
|
|
83
|
+
md-ref-palette: (
|
|
84
|
+
neutral-10: map.get($palettes, neutral, 10),
|
|
85
|
+
neutral-variant20: map.get($palettes, neutral-variant, 20),
|
|
86
|
+
),
|
|
322
87
|
// Because the elevation values are always combined with color values to create the box shadow,
|
|
323
88
|
// elevation needs to be part of the color dimension.
|
|
324
|
-
md-sys-elevation: m3
|
|
89
|
+
md-sys-elevation: m3.md-sys-elevation-values(),
|
|
325
90
|
// Because the state values are sometimes combined with color values to create rgba colors,
|
|
326
91
|
// state needs to be part of color dimension.
|
|
327
92
|
// TODO(mmalerba): If at some point we remove the need for these combined values, we can move
|
|
328
93
|
// state to the base dimension.
|
|
329
|
-
md-sys-state: m3
|
|
330
|
-
))
|
|
94
|
+
md-sys-state: m3.md-sys-state-values(),
|
|
95
|
+
));
|
|
331
96
|
}
|
|
332
97
|
|
|
333
98
|
/// Generates a set of namespaced color tokens for all components.
|
|
@@ -338,31 +103,20 @@ $_cached-token-slots: null;
|
|
|
338
103
|
/// @param {String|Number} $regular The regular font-weight
|
|
339
104
|
/// @param {String} $system-variables-prefix The prefix of system tokens
|
|
340
105
|
/// @return {Map} A map of namespaced typography tokens
|
|
341
|
-
@function generate-typography-tokens($
|
|
342
|
-
$system-variables-prefix)
|
|
343
|
-
$ref: (
|
|
344
|
-
md-ref-typeface: generate-ref-typeface-tokens($brand, $plain, $bold, $medium, $regular)
|
|
345
|
-
);
|
|
346
|
-
$sys-typeface: _get-sys-typeface($ref, $system-variables-prefix);
|
|
106
|
+
@function generate-typography-tokens($typography, $system-variables-prefix) {
|
|
107
|
+
$sys-typeface: get-sys-typeface($typography, $system-variables-prefix);
|
|
347
108
|
@return generate-tokens((
|
|
348
109
|
md-sys-typescale: $sys-typeface
|
|
349
110
|
));
|
|
350
111
|
}
|
|
351
112
|
|
|
352
|
-
/// Generates a set of namespaced density tokens for all components.
|
|
353
|
-
/// @param {String|Number} $scale The regular font-weight
|
|
354
|
-
/// @return {Map} A map of namespaced density tokens
|
|
355
|
-
@function generate-density-tokens($scale) {
|
|
356
|
-
@return density.get-tokens-for-scale($scale);
|
|
357
|
-
}
|
|
358
|
-
|
|
359
113
|
/// Generates a set of namespaced tokens not related to color, typography, or density for all
|
|
360
114
|
/// components.
|
|
361
115
|
/// @return {Map} A map of namespaced tokens not related to color, typography, or density
|
|
362
116
|
@function generate-base-tokens() {
|
|
363
117
|
// TODO(mmalerba): Exclude density tokens once implemented.
|
|
364
118
|
@return generate-tokens((
|
|
365
|
-
md-sys-motion: m3
|
|
366
|
-
md-sys-shape: m3
|
|
119
|
+
md-sys-motion: m3.md-sys-motion-values(),
|
|
120
|
+
md-sys-shape: m3.md-sys-shape-values(),
|
|
367
121
|
), $include-non-systemized: true);
|
|
368
122
|
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
@use 'sass:map';
|
|
2
|
+
@use 'sass:meta';
|
|
3
|
+
@use 'sass:string';
|
|
4
|
+
|
|
5
|
+
// Replaces color tokens in the map with those defined as the variant color.
|
|
6
|
+
@function replace-colors-with-variant($system, $color, $variant) {
|
|
7
|
+
$system: map.set($system, on-#{$color}, map.get($system, on-#{$variant}));
|
|
8
|
+
$system: map.set($system, on-#{$color}-container, map.get($system, on-#{$variant}-container));
|
|
9
|
+
$system: map.set($system, #{$color}, map.get($system, #{$variant}));
|
|
10
|
+
$system: map.set($system, #{$color}-container, map.get($system, #{$variant}-container));
|
|
11
|
+
@return $system;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
// Gets the theme's system values as a flat map.
|
|
15
|
+
@function get-system($theme) {
|
|
16
|
+
$system: ();
|
|
17
|
+
$system: map.merge($system,
|
|
18
|
+
map.get($theme, _mat-theming-internals-do-not-access, md-sys-color));
|
|
19
|
+
$system: map.merge($system,
|
|
20
|
+
map.get($theme, _mat-theming-internals-do-not-access, md-sys-elevation));
|
|
21
|
+
$system: map.merge($system,
|
|
22
|
+
map.get($theme, _mat-theming-internals-do-not-access, md-sys-shape));
|
|
23
|
+
$system: map.merge($system,
|
|
24
|
+
map.get($theme, _mat-theming-internals-do-not-access, md-sys-state));
|
|
25
|
+
$system: map.merge($system,
|
|
26
|
+
map.get($theme, _mat-theming-internals-do-not-access, md-sys-typescale));
|
|
27
|
+
$system: map.merge($system,
|
|
28
|
+
map.get($theme, _mat-theming-internals-do-not-access, md-ref-palette));
|
|
29
|
+
@return $system;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
// Returns the color with an opacity value using color-mix. If the color is a variable name, it
|
|
33
|
+
// will wrap it with `var()`.
|
|
34
|
+
@function color-with-opacity($color, $opacity) {
|
|
35
|
+
@if (meta.type-of($color) == string and string.index($color, '--') == 1) {
|
|
36
|
+
$color: var($color);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
// Opacity may be a system level value less than 1, instead of the intended
|
|
40
|
+
// whole percentage, e.g. 38%. Remove this support when possible.
|
|
41
|
+
@if (meta.type-of($opacity) == string and string.index($opacity, '--') == 1) {
|
|
42
|
+
$opacity: 'calc(var(#{$opacity}) * 100%)';
|
|
43
|
+
} @else if (meta.type-of($opacity) == number and $opacity < 1) {
|
|
44
|
+
$opacity: '#{$opacity * 100}%';
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
@return color-mix(in srgb, #{$color} #{$opacity}, transparent);
|
|
48
|
+
}
|