@ng-matero/extensions 16.1.3 → 16.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (147) hide show
  1. package/_index.scss +0 -3
  2. package/_theming.scss +0 -3
  3. package/alert/_alert-theme.scss +12 -28
  4. package/alert/alert.scss +28 -0
  5. package/colorpicker/_colorpicker-theme.scss +20 -8
  6. package/colorpicker/colorpicker-toggle.scss +23 -17
  7. package/column-resize/column-resize-notifier.d.ts +1 -1
  8. package/column-resize/polyfill.d.ts +1 -3
  9. package/column-resize/resizable.d.ts +1 -0
  10. package/column-resize/resize-strategy.d.ts +4 -3
  11. package/core/style/_sass-utils.scss +49 -0
  12. package/core/theming/_all-theme.scss +0 -2
  13. package/core/tokens/_token-utils.scss +127 -0
  14. package/core/tokens/m2/_index.scss +49 -0
  15. package/core/tokens/m2/mdc/_plain-tooltip.scss +72 -0
  16. package/core/tokens/m2/mtx/_alert.scss +55 -0
  17. package/core/tokens/m2/mtx/_colorpicker.scss +55 -0
  18. package/core/tokens/m2/mtx/_datetimepicker.scss +155 -0
  19. package/core/tokens/m2/mtx/_drawer.scss +45 -0
  20. package/core/tokens/m2/mtx/_grid.scss +57 -0
  21. package/core/tokens/m2/mtx/_loader.scss +45 -0
  22. package/core/tokens/m2/mtx/_popover.scss +46 -0
  23. package/core/tokens/m2/mtx/_progress.scss +56 -0
  24. package/core/tokens/m2/mtx/_select.scss +83 -0
  25. package/core/tokens/m2/mtx/_split.scss +54 -0
  26. package/core/typography/_typography.scss +203 -36
  27. package/datetimepicker/_datetimepicker-theme.scss +31 -183
  28. package/datetimepicker/calendar-body.scss +81 -1
  29. package/datetimepicker/calendar.scss +33 -3
  30. package/datetimepicker/clock.scss +50 -10
  31. package/datetimepicker/datetimepicker-content.scss +12 -0
  32. package/datetimepicker/datetimepicker-toggle.scss +23 -17
  33. package/datetimepicker/time.scss +41 -1
  34. package/drawer/_drawer-theme.scss +6 -10
  35. package/drawer/drawer-container.scss +11 -0
  36. package/esm2022/alert/alert.mjs +4 -4
  37. package/esm2022/colorpicker/colorpicker-toggle.mjs +2 -2
  38. package/esm2022/column-resize/column-resize-directives/column-resize-flex.mjs +3 -9
  39. package/esm2022/column-resize/column-resize-directives/column-resize.mjs +3 -9
  40. package/esm2022/column-resize/column-resize-directives/constants.mjs +1 -1
  41. package/esm2022/column-resize/column-resize-notifier.mjs +7 -2
  42. package/esm2022/column-resize/column-resize.mjs +3 -3
  43. package/esm2022/column-resize/event-dispatcher.mjs +5 -2
  44. package/esm2022/column-resize/polyfill.mjs +3 -19
  45. package/esm2022/column-resize/resizable.mjs +7 -7
  46. package/esm2022/column-resize/resize-ref.mjs +1 -1
  47. package/esm2022/column-resize/resize-strategy.mjs +16 -10
  48. package/esm2022/datetimepicker/calendar-body.mjs +2 -2
  49. package/esm2022/datetimepicker/calendar.mjs +3 -3
  50. package/esm2022/datetimepicker/clock.mjs +2 -2
  51. package/esm2022/datetimepicker/datetimepicker-toggle.mjs +2 -2
  52. package/esm2022/datetimepicker/datetimepicker.mjs +3 -3
  53. package/esm2022/datetimepicker/time.mjs +3 -3
  54. package/esm2022/drawer/drawer-container.mjs +3 -3
  55. package/esm2022/grid/cell.mjs +3 -19
  56. package/esm2022/grid/column-resize/column-resize-directives/common.mjs +1 -8
  57. package/esm2022/grid/column-resize/overlay-handle.mjs +11 -6
  58. package/esm2022/grid/column-resize/resizable-directives/common.mjs +1 -1
  59. package/esm2022/grid/column-resize/resizable-directives/resizable.mjs +3 -2
  60. package/esm2022/grid/column-resize/resize-strategy.mjs +10 -5
  61. package/esm2022/grid/grid-module.mjs +13 -9
  62. package/esm2022/grid/grid-utils.mjs +1 -9
  63. package/esm2022/grid/grid.mjs +28 -21
  64. package/esm2022/loader/loader.mjs +2 -2
  65. package/esm2022/photoviewer/mtxPhotoviewer.mjs +5 -0
  66. package/esm2022/photoviewer/photoviewer-module.mjs +17 -0
  67. package/esm2022/photoviewer/photoviewer.mjs +63 -0
  68. package/esm2022/photoviewer/public-api.mjs +3 -0
  69. package/esm2022/popover/popover-interfaces.mjs +1 -1
  70. package/esm2022/popover/popover.mjs +13 -3
  71. package/esm2022/progress/progress.mjs +4 -4
  72. package/esm2022/select/select.mjs +11 -3
  73. package/esm2022/split/split.mjs +2 -2
  74. package/esm2022/tooltip/tooltip.mjs +2 -2
  75. package/fesm2022/mtxAlert.mjs +3 -3
  76. package/fesm2022/mtxAlert.mjs.map +1 -1
  77. package/fesm2022/mtxColorpicker.mjs +2 -2
  78. package/fesm2022/mtxColorpicker.mjs.map +1 -1
  79. package/fesm2022/mtxColumnResize.mjs +38 -52
  80. package/fesm2022/mtxColumnResize.mjs.map +1 -1
  81. package/fesm2022/mtxDatetimepicker.mjs +12 -12
  82. package/fesm2022/mtxDatetimepicker.mjs.map +1 -1
  83. package/fesm2022/mtxDrawer.mjs +2 -2
  84. package/fesm2022/mtxDrawer.mjs.map +1 -1
  85. package/fesm2022/mtxGrid.mjs +188 -197
  86. package/fesm2022/mtxGrid.mjs.map +1 -1
  87. package/fesm2022/mtxLoader.mjs +2 -2
  88. package/fesm2022/mtxLoader.mjs.map +1 -1
  89. package/fesm2022/mtxPhotoviewer.mjs +84 -0
  90. package/fesm2022/mtxPhotoviewer.mjs.map +1 -0
  91. package/fesm2022/mtxPopover.mjs +12 -2
  92. package/fesm2022/mtxPopover.mjs.map +1 -1
  93. package/fesm2022/mtxProgress.mjs +3 -3
  94. package/fesm2022/mtxProgress.mjs.map +1 -1
  95. package/fesm2022/mtxSelect.mjs +10 -2
  96. package/fesm2022/mtxSelect.mjs.map +1 -1
  97. package/fesm2022/mtxSplit.mjs +2 -2
  98. package/fesm2022/mtxSplit.mjs.map +1 -1
  99. package/fesm2022/mtxTooltip.mjs +2 -2
  100. package/fesm2022/mtxTooltip.mjs.map +1 -1
  101. package/grid/_grid-theme.scss +14 -86
  102. package/grid/cell.d.ts +0 -2
  103. package/grid/cell.scss +0 -1
  104. package/grid/column-resize/_column-resize.scss +88 -94
  105. package/grid/column-resize/column-resize-directives/common.d.ts +0 -7
  106. package/grid/column-resize/overlay-handle.d.ts +1 -0
  107. package/grid/column-resize/resize-strategy.d.ts +2 -2
  108. package/grid/grid-module.d.ts +4 -4
  109. package/grid/grid-utils.d.ts +0 -6
  110. package/grid/grid.d.ts +10 -7
  111. package/grid/grid.scss +103 -15
  112. package/loader/_loader-theme.scss +6 -6
  113. package/loader/loader.scss +7 -0
  114. package/package.json +25 -25
  115. package/{slider → photoviewer}/index.d.ts +1 -1
  116. package/photoviewer/photoviewer-module.d.ts +7 -0
  117. package/photoviewer/photoviewer.d.ts +17 -0
  118. package/photoviewer/public-api.d.ts +2 -0
  119. package/popover/_popover-theme.scss +6 -40
  120. package/popover/popover-interfaces.d.ts +1 -0
  121. package/popover/popover.d.ts +6 -1
  122. package/popover/popover.scss +36 -2
  123. package/prebuilt-themes/deeppurple-amber.css +1 -1
  124. package/prebuilt-themes/indigo-pink.css +1 -1
  125. package/prebuilt-themes/pink-bluegrey.css +1 -1
  126. package/prebuilt-themes/purple-green.css +1 -1
  127. package/progress/_progress-theme.scss +6 -25
  128. package/progress/progress.scss +42 -0
  129. package/select/_select-theme.scss +19 -133
  130. package/select/select.d.ts +1 -0
  131. package/select/select.scss +147 -36
  132. package/split/_split-theme.scss +21 -18
  133. package/split/split.scss +13 -0
  134. package/tooltip/_tooltip-theme.scss +19 -24
  135. package/tooltip/tooltip.scss +18 -17
  136. package/esm2022/slider/mtxSlider.mjs +0 -5
  137. package/esm2022/slider/public-api.mjs +0 -3
  138. package/esm2022/slider/slider-module.mjs +0 -19
  139. package/esm2022/slider/slider.mjs +0 -1115
  140. package/fesm2022/mtxSlider.mjs +0 -1137
  141. package/fesm2022/mtxSlider.mjs.map +0 -1
  142. package/slider/_slider-theme.import.scss +0 -2
  143. package/slider/_slider-theme.scss +0 -232
  144. package/slider/public-api.d.ts +0 -2
  145. package/slider/slider-module.d.ts +0 -9
  146. package/slider/slider.d.ts +0 -277
  147. package/slider/slider.scss +0 -514
@@ -1,6 +1,11 @@
1
+ @use '../core/tokens/token-utils';
2
+ @use '../core/tokens/m2/mtx/progress' as tokens-mtx-progress;
3
+
1
4
  $progress-height: 1rem !default;
2
5
  $progress-fill-animation-timing: 1s linear infinite !default;
3
6
 
7
+ $_tokens: tokens-mtx-progress.$prefix, tokens-mtx-progress.get-token-slots();
8
+
4
9
  @mixin gradient-striped($color: rgba(white, .15), $angle: 45deg) {
5
10
  background-image:
6
11
  linear-gradient(
@@ -22,6 +27,10 @@ $progress-fill-animation-timing: 1s linear infinite !default;
22
27
  overflow: hidden;
23
28
  font-size: .75rem;
24
29
  border-radius: .25rem;
30
+
31
+ @include token-utils.use-tokens($_tokens...) {
32
+ @include token-utils.create-token-slot(background-color, track-color);
33
+ }
25
34
  }
26
35
 
27
36
  .mtx-progress-fill {
@@ -30,6 +39,39 @@ $progress-fill-animation-timing: 1s linear infinite !default;
30
39
  justify-content: center;
31
40
  text-align: center;
32
41
  transition: width .6s ease;
42
+
43
+ @include token-utils.use-tokens($_tokens...) {
44
+ @include token-utils.create-token-slot(background-color, indicator-color);
45
+ @include token-utils.create-token-slot(color, text-color);
46
+ }
47
+ }
48
+
49
+ .mtx-progress-fill-info {
50
+ @include token-utils.use-tokens($_tokens...) {
51
+ @include token-utils.create-token-slot(background-color, info-indicator-color);
52
+ @include token-utils.create-token-slot(color, info-text-color);
53
+ }
54
+ }
55
+
56
+ .mtx-progress-fill-success {
57
+ @include token-utils.use-tokens($_tokens...) {
58
+ @include token-utils.create-token-slot(background-color, success-indicator-color);
59
+ @include token-utils.create-token-slot(color, success-text-color);
60
+ }
61
+ }
62
+
63
+ .mtx-progress-fill-warning {
64
+ @include token-utils.use-tokens($_tokens...) {
65
+ @include token-utils.create-token-slot(background-color, warning-indicator-color);
66
+ @include token-utils.create-token-slot(color, warning-text-color);
67
+ }
68
+ }
69
+
70
+ .mtx-progress-fill-danger {
71
+ @include token-utils.use-tokens($_tokens...) {
72
+ @include token-utils.create-token-slot(background-color, danger-indicator-color);
73
+ @include token-utils.create-token-slot(color, danger-text-color);
74
+ }
33
75
  }
34
76
 
35
77
  .mtx-progress-fill-striped {
@@ -1,144 +1,27 @@
1
1
  @use 'sass:map';
2
- @use '../core/theming/theming';
3
2
  @use './select-density';
3
+ @use '../core/theming/theming';
4
+ @use '../core/style/sass-utils';
5
+ @use '../core/tokens/token-utils';
6
+ @use '../core/tokens/m2/mtx/select' as tokens-mtx-select;
4
7
 
5
8
  @mixin color($config-or-theme) {
6
9
  $config: theming.get-color-config($config-or-theme);
7
- $warn: map.get($config, warn);
8
- $background: map.get($config, background);
9
- $foreground: map.get($config, foreground);
10
-
11
- .ng-select {
12
- .ng-select-container {
13
- color: theming.get-color-from-palette($foreground, text);
14
-
15
- .ng-value-container {
16
- .ng-placeholder {
17
- color: theming.get-color-from-palette($foreground, hint-text);
18
- }
19
-
20
- .ng-input {
21
- > input {
22
- color: theming.get-color-from-palette($foreground, text);
23
- }
24
- }
25
- }
26
- }
27
-
28
- &.ng-select-disabled {
29
- .ng-value {
30
- color: theming.get-color-from-palette($foreground, hint-text);
31
- }
32
- }
33
-
34
- &.ng-select-multiple {
35
- .ng-select-container {
36
- .ng-value-container {
37
- .ng-value {
38
- color: theming.get-color-from-palette($foreground, text);
39
- background-color: theming.get-color-from-palette($background, unselected-chip);
40
- border: 1px solid theming.get-color-from-palette($foreground, divider);
41
-
42
- &.ng-value-disabled {
43
- opacity: .4;
44
- }
45
-
46
- .ng-value-icon {
47
- &:hover {
48
- background-color: theming.get-color-from-palette($foreground, divider);
49
- }
50
- }
51
- }
52
- }
53
- }
54
- }
55
-
56
- .ng-clear-wrapper {
57
- color: theming.get-color-from-palette($foreground, secondary-text);
58
-
59
- &:hover .ng-clear {
60
- color: theming.get-color-from-palette($warn);
61
- }
62
- }
63
-
64
- .ng-arrow-wrapper .ng-arrow {
65
- border-color: theming.get-color-from-palette($foreground, secondary-text) transparent transparent;
66
- }
67
-
68
- &.ng-select-invalid {
69
- .ng-arrow-wrapper .ng-arrow {
70
- border-color: theming.get-color-from-palette($warn) transparent transparent;
71
- }
72
- }
73
10
 
74
- &.ng-select-opened {
75
- .ng-arrow-wrapper .ng-arrow {
76
- border-color: transparent transparent theming.get-color-from-palette($foreground, secondary-text);
77
- }
78
- }
79
-
80
- &.ng-select-opened.ng-select-invalid {
81
- .ng-arrow-wrapper .ng-arrow {
82
- border-color: transparent transparent theming.get-color-from-palette($warn);
83
- }
84
- }
11
+ @include sass-utils.current-selector-or-root() {
12
+ @include token-utils.create-token-values(tokens-mtx-select.$prefix,
13
+ tokens-mtx-select.get-color-tokens($config));
85
14
  }
86
15
 
87
16
  .ng-dropdown-panel {
88
- background-color: theming.get-color-from-palette($background, card);
89
-
90
- &.multiple {
91
- .ng-option {
92
- &.selected {
93
- background: theming.get-color-from-palette($foreground, divider);
94
- }
95
-
96
- &.marked {
97
- background: theming.get-color-from-palette($background, hover);
98
- }
99
- }
17
+ &.mat-accent {
18
+ $accent-tokens: tokens-mtx-select.private-get-color-palette-color-tokens($config, accent);
19
+ @include token-utils.create-token-values(tokens-mtx-select.$prefix, $accent-tokens);
100
20
  }
101
21
 
102
- .ng-dropdown-header {
103
- border-bottom: 1px solid theming.get-color-from-palette($foreground, divider);
104
- }
105
-
106
- .ng-dropdown-footer {
107
- border-top: 1px solid theming.get-color-from-palette($foreground, divider);
108
- }
109
-
110
- .ng-dropdown-panel-items {
111
- .ng-optgroup {
112
- color: theming.get-color-from-palette($foreground, secondary-text);
113
-
114
- &.ng-option-marked {
115
- background: theming.get-color-from-palette($background, hover);
116
- }
117
-
118
- &.ng-option-selected {
119
- background: theming.get-color-from-palette($foreground, divider);
120
- }
121
- }
122
-
123
- .ng-option {
124
- color: theming.get-color-from-palette($foreground, text);
125
-
126
- &.ng-option-marked {
127
- background: theming.get-color-from-palette($background, hover);
128
- }
129
-
130
- &.ng-option-selected {
131
- background: theming.get-color-from-palette($foreground, divider);
132
- }
133
-
134
- &.ng-option-disabled {
135
- color: theming.get-color-from-palette($foreground, hint-text);
136
- }
137
-
138
- .ng-tag-label {
139
- color: theming.get-color-from-palette($foreground, hint-text);
140
- }
141
- }
22
+ &.mat-warn {
23
+ $warn-tokens: tokens-mtx-select.private-get-color-palette-color-tokens($config, warn);
24
+ @include token-utils.create-token-values(tokens-mtx-select.$prefix, $warn-tokens);
142
25
  }
143
26
  }
144
27
  }
@@ -151,18 +34,21 @@
151
34
 
152
35
  @mixin theme($theme-or-color-config) {
153
36
  $theme: theming.private-legacy-get-theme($theme-or-color-config);
37
+
154
38
  @include theming.private-check-duplicate-theme-styles($theme, 'mtx-select') {
155
39
  $color: theming.get-color-config($theme);
156
40
  $density: theming.get-density-config($theme);
157
41
  $typography: theming.get-typography-config($theme);
158
42
 
159
- @if $color != null {
43
+ @if $color !=null {
160
44
  @include color($color);
161
45
  }
162
- @if $density != null {
46
+
47
+ @if $density !=null {
163
48
  @include density($density);
164
49
  }
165
- @if $typography != null {
50
+
51
+ @if $typography !=null {
166
52
  @include typography($typography);
167
53
  }
168
54
  }
@@ -240,6 +240,7 @@ export declare class MtxSelect extends _MtxSelectMixinBase implements OnInit, On
240
240
  close(): void;
241
241
  focus(): void;
242
242
  blur(): void;
243
+ openChange(): void;
243
244
  static ngAcceptInputType_required: BooleanInput;
244
245
  static ngAcceptInputType_disabled: BooleanInput;
245
246
  static ɵfac: i0.ɵɵFactoryDeclaration<MtxSelect, [null, null, null, null, { optional: true; }, { optional: true; }, { optional: true; self: true; }, { optional: true; }, { optional: true; }]>;
@@ -1,4 +1,8 @@
1
- @use '@angular/material' as mat;
1
+ @use '../core/style/elevation';
2
+ @use '../core/tokens/token-utils';
3
+ @use '../core/tokens/m2/mtx/select' as tokens-mtx-select;
4
+
5
+ $_tokens: tokens-mtx-select.$prefix, tokens-mtx-select.get-token-slots();
2
6
 
3
7
  @mixin rtl {
4
8
  @at-root [dir='rtl'] #{&} {
@@ -15,13 +19,18 @@
15
19
  .ng-select-container {
16
20
  align-items: center;
17
21
 
22
+ @include token-utils.use-tokens($_tokens...) {
23
+ @include token-utils.create-token-slot(color, container-text-color);
24
+ }
25
+
18
26
  .ng-value-container {
19
27
  align-items: center;
20
28
 
21
29
  .ng-input {
22
- > input {
23
- font: inherit;
30
+ >input {
24
31
  padding: 0;
32
+ color: inherit;
33
+ font: inherit;
25
34
  }
26
35
  }
27
36
  }
@@ -36,6 +45,10 @@
36
45
  transition: opacity 200ms;
37
46
  opacity: 1;
38
47
 
48
+ @include token-utils.use-tokens($_tokens...) {
49
+ @include token-utils.create-token-slot(color, placeholder-text-color);
50
+ }
51
+
39
52
  .mat-form-field-hide-placeholder & {
40
53
  opacity: 0;
41
54
  }
@@ -45,6 +58,24 @@
45
58
  display: none;
46
59
  }
47
60
 
61
+ .ng-clear-wrapper {
62
+ @include token-utils.use-tokens($_tokens...) {
63
+ @include token-utils.create-token-slot(color, clear-icon-color);
64
+
65
+ &:hover .ng-clear {
66
+ @include token-utils.create-token-slot(color, clear-icon-hover-color);
67
+ }
68
+ }
69
+ }
70
+
71
+ &.ng-select-disabled {
72
+ .ng-value {
73
+ @include token-utils.use-tokens($_tokens...) {
74
+ @include token-utils.create-token-slot(color, disabled-text-color);
75
+ }
76
+ }
77
+ }
78
+
48
79
  &.ng-select-opened {
49
80
  .ng-arrow-wrapper {
50
81
  .ng-arrow {
@@ -86,11 +117,23 @@
86
117
  font-size: .875em;
87
118
  line-height: 18px;
88
119
 
120
+ @include token-utils.use-tokens($_tokens...) {
121
+ @include token-utils.create-token-slot(background-color, multiple-value-background-color);
122
+
123
+ $border-color: token-utils.get-token-variable(multiple-value-border-color);
124
+
125
+ border: 1px solid var($border-color);
126
+ }
127
+
89
128
  @include rtl {
90
129
  margin-right: auto;
91
130
  margin-left: 4px;
92
131
  }
93
132
 
133
+ &.ng-value-disabled {
134
+ opacity: .4;
135
+ }
136
+
94
137
  .ng-value-label {
95
138
  display: inline-block;
96
139
  margin: 0 8px;
@@ -120,6 +163,12 @@
120
163
  margin-left: auto;
121
164
  }
122
165
  }
166
+
167
+ &:hover {
168
+ @include token-utils.use-tokens($_tokens...) {
169
+ @include token-utils.create-token-slot(background-color, multiple-value-icon-hover-background-color);
170
+ }
171
+ }
123
172
  }
124
173
  }
125
174
  }
@@ -128,10 +177,33 @@
128
177
 
129
178
  .ng-arrow-wrapper {
130
179
  width: 10px;
180
+ }
181
+
182
+ @include token-utils.use-tokens($_tokens...) {
183
+ $enabled-arrow-color: token-utils.get-token-variable(enabled-arrow-color);
184
+ $disabled-arrow-color: token-utils.get-token-variable(disabled-arrow-color);
185
+ $invalid-arrow-color: token-utils.get-token-variable(invalid-arrow-color);
131
186
 
132
187
  .ng-arrow {
133
188
  border-width: 5px 5px 2px;
134
189
  border-style: solid;
190
+ border-color: var($enabled-arrow-color) transparent transparent;
191
+ }
192
+
193
+ &.ng-select-disabled .ng-arrow {
194
+ border-color: var($disabled-arrow-color) transparent transparent;
195
+ }
196
+
197
+ &.ng-select-invalid .ng-arrow {
198
+ border-color: var($invalid-arrow-color) transparent transparent;
199
+ }
200
+
201
+ &.ng-select-opened .ng-arrow {
202
+ border-color: transparent transparent var($enabled-arrow-color);
203
+ }
204
+
205
+ &.ng-select-opened.ng-select-invalid .ng-arrow {
206
+ border-color: transparent transparent var($invalid-arrow-color);
135
207
  }
136
208
  }
137
209
  }
@@ -142,7 +214,7 @@
142
214
  border-bottom-left-radius: 4px;
143
215
  border-bottom-right-radius: 4px;
144
216
 
145
- @include mat.elevation(4);
217
+ @include elevation.elevation(8);
146
218
  }
147
219
 
148
220
  &.ng-select-top {
@@ -150,7 +222,7 @@
150
222
  border-top-left-radius: 4px;
151
223
  border-top-right-radius: 4px;
152
224
 
153
- @include mat.elevation(4);
225
+ @include elevation.elevation(8);
154
226
  }
155
227
 
156
228
  .ng-dropdown-header,
@@ -158,48 +230,87 @@
158
230
  padding: 14px 16px;
159
231
  }
160
232
 
161
- .ng-dropdown-panel-items {
162
- .ng-optgroup {
163
- padding: 14px 16px;
164
- font-weight: 500;
165
- user-select: none;
166
- cursor: pointer;
233
+ @include token-utils.use-tokens($_tokens...) {
234
+ @include token-utils.create-token-slot(background-color, panel-background-color);
167
235
 
168
- &.ng-option-disabled {
169
- cursor: default;
170
- }
236
+ $border-color: token-utils.get-token-variable(panel-divider-color);
237
+
238
+ .ng-dropdown-header {
239
+ border-bottom: 1px solid var($border-color);
171
240
  }
172
241
 
173
- .ng-option {
174
- position: relative;
175
- padding: 14px 16px;
176
- text-overflow: ellipsis;
177
- text-decoration: none;
178
- text-align: left;
179
- white-space: nowrap;
180
- overflow: hidden;
242
+ .ng-dropdown-footer {
243
+ border-top: 1px solid var($border-color);
244
+ }
181
245
 
182
- @include rtl {
183
- text-align: right;
184
- }
246
+ .ng-dropdown-panel-items {
247
+ .ng-optgroup {
248
+ padding: 14px 16px;
249
+ font-weight: 500;
250
+ user-select: none;
251
+ cursor: pointer;
185
252
 
186
- &.ng-option-child {
187
- padding-left: 32px;
253
+ @include token-utils.create-token-slot(color, optgroup-label-text-color);
188
254
 
189
- @include rtl {
190
- padding-right: 32px;
191
- padding-left: 0;
255
+ &.ng-option-disabled {
256
+ cursor: default;
257
+ }
258
+
259
+ &.ng-option-marked {
260
+ @include token-utils.create-token-slot(background-color, option-hover-state-background-color);
261
+ }
262
+
263
+ &.ng-option-selected {
264
+ @include token-utils.create-token-slot(background-color, option-selected-state-background-color);
265
+ @include token-utils.create-token-slot(color, option-selected-state-text-color);
192
266
  }
193
267
  }
194
268
 
195
- .ng-tag-label {
196
- padding-right: 5px;
197
- font-size: 80%;
198
- font-weight: 400;
269
+ .ng-option {
270
+ position: relative;
271
+ padding: 14px 16px;
272
+ text-overflow: ellipsis;
273
+ text-decoration: none;
274
+ text-align: left;
275
+ white-space: nowrap;
276
+ overflow: hidden;
277
+
278
+ @include token-utils.create-token-slot(color, option-label-text-color);
279
+
280
+ &.ng-option-marked {
281
+ @include token-utils.create-token-slot(background-color, option-hover-state-background-color);
282
+ }
283
+
284
+ &.ng-option-selected {
285
+ @include token-utils.create-token-slot(background-color, option-selected-state-background-color);
286
+ @include token-utils.create-token-slot(color, option-selected-state-text-color);
287
+ }
288
+
289
+ &.ng-option-disabled {
290
+ @include token-utils.create-token-slot(color, option-disabled-state-text-color);
291
+ }
199
292
 
200
293
  @include rtl {
201
- padding-left: 5px;
202
- padding-right: 0;
294
+ text-align: right;
295
+ }
296
+
297
+ &.ng-option-child {
298
+ padding-left: 32px;
299
+
300
+ @include rtl {
301
+ padding-right: 32px;
302
+ padding-left: 0;
303
+ }
304
+ }
305
+
306
+ .ng-tag-label {
307
+ margin-right: 6px;
308
+ font-size: 80%;
309
+
310
+ @include rtl {
311
+ margin-left: 6px;
312
+ margin-right: 0;
313
+ }
203
314
  }
204
315
  }
205
316
  }
@@ -1,25 +1,25 @@
1
- @use 'sass:map';
2
1
  @use '../core/theming/theming';
2
+ @use '../core/style/sass-utils';
3
+ @use '../core/tokens/token-utils';
4
+ @use '../core/tokens/m2/mtx/split' as tokens-mtx-split;
3
5
 
4
6
  @mixin color($config-or-theme) {
5
7
  $config: theming.get-color-config($config-or-theme);
6
- $foreground: map.get($config, foreground);
7
8
 
8
- .mtx-split {
9
- > .mtx-split-gutter {
10
- background-color: theming.get-color-from-palette($foreground, divider, .12);
11
-
12
- &:hover {
13
- background-color: theming.get-color-from-palette(map.get($config, primary), text);
14
- }
9
+ @include sass-utils.current-selector-or-root() {
10
+ @include token-utils.create-token-values(tokens-mtx-split.$prefix,
11
+ tokens-mtx-split.get-color-tokens($config));
12
+ }
15
13
 
16
- &.mat-accent:hover {
17
- background-color: theming.get-color-from-palette(map.get($config, accent), text);
18
- }
14
+ .mtx-split>.mtx-split-gutter {
15
+ &.mat-accent:hover {
16
+ $accent-tokens: tokens-mtx-split.private-get-color-palette-color-tokens($config, accent);
17
+ @include token-utils.create-token-values(tokens-mtx-split.$prefix, $accent-tokens);
18
+ }
19
19
 
20
- &.mat-warn:hover {
21
- background-color: theming.get-color-from-palette(map.get($config, warn), text);
22
- }
20
+ &.mat-warn:hover {
21
+ $warn-tokens: tokens-mtx-split.private-get-color-palette-color-tokens($config, warn);
22
+ @include token-utils.create-token-values(tokens-mtx-split.$prefix, $warn-tokens);
23
23
  }
24
24
  }
25
25
  }
@@ -30,18 +30,21 @@
30
30
 
31
31
  @mixin theme($theme-or-color-config) {
32
32
  $theme: theming.private-legacy-get-theme($theme-or-color-config);
33
+
33
34
  @include theming.private-check-duplicate-theme-styles($theme, 'mtx-split') {
34
35
  $color: theming.get-color-config($theme);
35
36
  $density: theming.get-density-config($theme);
36
37
  $typography: theming.get-typography-config($theme);
37
38
 
38
- @if $color != null {
39
+ @if $color !=null {
39
40
  @include color($color);
40
41
  }
41
- @if $density != null {
42
+
43
+ @if $density !=null {
42
44
  @include density($density);
43
45
  }
44
- @if $typography != null {
46
+
47
+ @if $typography !=null {
45
48
  @include typography($typography);
46
49
  }
47
50
  }
package/split/split.scss CHANGED
@@ -1,7 +1,12 @@
1
+ @use '../core/tokens/token-utils';
2
+ @use '../core/tokens/m2/mtx/split' as tokens-mtx-split;
3
+
1
4
  $gutter-size: 4px;
2
5
  $handle-size: 8px;
3
6
  $handle-offset: ($handle-size - $gutter-size) * .5;
4
7
 
8
+ $_tokens: tokens-mtx-split.$prefix, tokens-mtx-split.get-token-slots();
9
+
5
10
  .mtx-split {
6
11
  display: flex;
7
12
  flex-wrap: nowrap;
@@ -19,6 +24,14 @@ $handle-offset: ($handle-size - $gutter-size) * .5;
19
24
  align-items: center;
20
25
  justify-content: center;
21
26
 
27
+ @include token-utils.use-tokens($_tokens...) {
28
+ @include token-utils.create-token-slot(background-color, gutter-background-color);
29
+
30
+ &:hover {
31
+ @include token-utils.create-token-slot(background-color, gutter-hover-state-background-color);
32
+ }
33
+ }
34
+
22
35
  > .mtx-split-gutter-handle {
23
36
  position: absolute;
24
37
  opacity: 0;
@@ -1,41 +1,36 @@
1
- @use 'sass:map';
2
- @use '@material/tooltip/plain-tooltip-theme';
3
- @use '@material/theme/theme-color' as mdc-theme-color;
4
- @use '@material/typography/typography' as mdc-typography;
1
+ @use '@material/tooltip/plain-tooltip-theme' as mdc-plain-tooltip-theme;
5
2
  @use '../core/theming/theming';
6
- @use '../core/theming/palette';
7
- @use '../core/mdc-helpers/mdc-helpers';
8
3
  @use '../core/typography/typography';
4
+ @use '../core/tokens/m2/mdc/plain-tooltip' as m2-mdc-plain-tooltip;
9
5
 
10
6
  @mixin color($config-or-theme) {
11
7
  $config: theming.get-color-config($config-or-theme);
12
- @include mdc-helpers.using-mdc-theme($config) {
13
- .mtx-mdc-tooltip {
14
- @include plain-tooltip-theme.theme((
15
- container-color: map.get(palette.$light-theme-background-palette, tooltip),
16
- supporting-text-color: mdc-theme-color.prop-value(text-primary-on-dark)
17
- ));
18
- }
8
+ $mdc-tooltip-color-tokens: m2-mdc-plain-tooltip.get-color-tokens($config);
9
+
10
+ // Add values for MDC tooltip tokens.
11
+ .mtx-mdc-tooltip {
12
+ @include mdc-plain-tooltip-theme.theme($mdc-tooltip-color-tokens);
19
13
  }
20
14
  }
21
15
 
22
16
  @mixin typography($config-or-theme) {
23
- $config: typography.private-typography-to-2018-config(
24
- theming.get-typography-config($config-or-theme));
25
- @include mdc-helpers.using-mdc-typography($config) {
26
- .mtx-mdc-tooltip {
27
- @include plain-tooltip-theme.theme((
28
- supporting-text-font: mdc-typography.get-font(caption),
29
- supporting-text-size: mdc-typography.get-size(caption),
30
- supporting-text-weight: mdc-typography.get-weight(caption),
31
- supporting-text-tracking: mdc-typography.get-tracking(caption),
32
- ));
33
- }
17
+ $config: typography.private-typography-to-2018-config(theming.get-typography-config($config-or-theme));
18
+ $mdc-tooltip-typography-tokens: m2-mdc-plain-tooltip.get-typography-tokens($config);
19
+
20
+ // Add values for MDC tooltip tokens.
21
+ .mtx-mdc-tooltip {
22
+ @include mdc-plain-tooltip-theme.theme($mdc-tooltip-typography-tokens);
34
23
  }
35
24
  }
36
25
 
37
26
  @mixin density($config-or-theme) {
38
27
  $density-scale: theming.get-density-config($config-or-theme);
28
+ $mdc-tooltip-density-tokens: m2-mdc-plain-tooltip.get-density-tokens($density-scale);
29
+
30
+ // Add values for MDC tooltip tokens.
31
+ .mtx-mdc-tooltip {
32
+ @include mdc-plain-tooltip-theme.theme($mdc-tooltip-density-tokens);
33
+ }
39
34
  }
40
35
 
41
36
  @mixin theme($theme-or-color-config) {