@ng-matero/extensions 19.4.0 → 20.0.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 (282) hide show
  1. package/_index.scss +1 -1
  2. package/alert/_alert-theme.scss +26 -31
  3. package/alert/_m2-alert.scss +59 -0
  4. package/alert/_m3-alert.scss +41 -0
  5. package/alert/alert.scss +27 -31
  6. package/alert/index.d.ts +30 -5
  7. package/button/index.d.ts +31 -5
  8. package/checkbox-group/index.d.ts +117 -5
  9. package/colorpicker/_colorpicker-theme.scss +31 -36
  10. package/{core/tokens/m2/mtx/_colorpicker.scss → colorpicker/_m2-colorpicker.scss} +6 -10
  11. package/colorpicker/_m3-colorpicker.scss +23 -0
  12. package/colorpicker/colorpicker-toggle.scss +4 -9
  13. package/colorpicker/index.d.ts +285 -3
  14. package/column-resize/index.d.ts +456 -3
  15. package/core/index.d.ts +147 -5
  16. package/core/theming/_color-api-backwards-compatibility.scss +8 -15
  17. package/core/theming/_definition.scss +81 -75
  18. package/core/theming/_palettes.scss +1036 -0
  19. package/core/tokens/{m2/_index.scss → _m2-tokens.scss} +22 -22
  20. package/core/tokens/_m2-utils.scss +108 -0
  21. package/core/tokens/_m3-system.scss +128 -106
  22. package/core/tokens/_m3-tokens.scss +36 -282
  23. package/core/tokens/_m3-utils.scss +48 -0
  24. package/core/tokens/_token-utils.scss +67 -239
  25. package/core/tokens/m3/_index.scss +7 -0
  26. package/core/tokens/m3/_md-sys-color.scss +156 -0
  27. package/core/tokens/m3/_md-sys-elevation.scss +15 -0
  28. package/core/tokens/m3/_md-sys-motion.scss +35 -0
  29. package/core/tokens/m3/_md-sys-shape.scss +21 -0
  30. package/core/tokens/m3/_md-sys-state.scss +13 -0
  31. package/core/tokens/m3/_md-sys-typescale.scss +128 -0
  32. package/core/tokens/m3/_theme.scss +47 -0
  33. package/datetimepicker/_datetimepicker-theme.scss +29 -39
  34. package/datetimepicker/_m2-datetimepicker.scss +149 -0
  35. package/datetimepicker/_m3-datetimepicker.scss +81 -0
  36. package/datetimepicker/calendar-body.scss +31 -56
  37. package/datetimepicker/calendar.scss +43 -79
  38. package/datetimepicker/clock.scss +28 -47
  39. package/datetimepicker/datetimepicker-content.scss +9 -15
  40. package/datetimepicker/datetimepicker-toggle.scss +4 -9
  41. package/datetimepicker/index.d.ts +1208 -3
  42. package/datetimepicker/time-view.scss +26 -32
  43. package/dialog/index.d.ts +54 -5
  44. package/drawer/_drawer-theme.scss +25 -30
  45. package/{core/tokens/m2/mtx/_drawer.scss → drawer/_m2-drawer.scss} +9 -12
  46. package/drawer/_m3-drawer.scss +24 -0
  47. package/drawer/drawer-container.scss +13 -24
  48. package/drawer/index.d.ts +221 -3
  49. package/fesm2022/mtxAlert.mjs +7 -7
  50. package/fesm2022/mtxAlert.mjs.map +1 -1
  51. package/fesm2022/mtxButton.mjs +7 -7
  52. package/fesm2022/mtxCheckboxGroup.mjs +7 -7
  53. package/fesm2022/mtxColorpicker.mjs +21 -21
  54. package/fesm2022/mtxColorpicker.mjs.map +1 -1
  55. package/fesm2022/mtxColumnResize.mjs +232 -103
  56. package/fesm2022/mtxColumnResize.mjs.map +1 -1
  57. package/fesm2022/mtxCore.mjs +21 -21
  58. package/fesm2022/mtxDatetimepicker.mjs +63 -63
  59. package/fesm2022/mtxDatetimepicker.mjs.map +1 -1
  60. package/fesm2022/mtxDialog.mjs +10 -10
  61. package/fesm2022/mtxDialog.mjs.map +1 -1
  62. package/fesm2022/mtxDrawer.mjs +10 -10
  63. package/fesm2022/mtxGrid.mjs +78 -77
  64. package/fesm2022/mtxGrid.mjs.map +1 -1
  65. package/fesm2022/mtxLoader.mjs +7 -7
  66. package/fesm2022/mtxPhotoviewer.mjs +7 -7
  67. package/fesm2022/mtxPopover.mjs +24 -25
  68. package/fesm2022/mtxPopover.mjs.map +1 -1
  69. package/fesm2022/mtxProgress.mjs +7 -7
  70. package/fesm2022/mtxSelect.mjs +54 -54
  71. package/fesm2022/mtxSelect.mjs.map +1 -1
  72. package/fesm2022/mtxSplit.mjs +10 -10
  73. package/fesm2022/mtxTooltip.mjs +13 -13
  74. package/fesm2022/mtxTooltip.mjs.map +1 -1
  75. package/grid/_grid-theme.scss +22 -35
  76. package/grid/_m2-grid.scss +66 -0
  77. package/grid/_m3-grid.scss +35 -0
  78. package/grid/column-menu.scss +6 -23
  79. package/grid/column-resize/_column-resize.scss +35 -30
  80. package/grid/grid.scss +41 -73
  81. package/grid/index.d.ts +799 -3
  82. package/index.d.ts +2 -5
  83. package/loader/_loader-theme.scss +26 -31
  84. package/{core/tokens/m2/mtx/_loader.scss → loader/_m2-loader.scss} +5 -10
  85. package/loader/_m3-loader.scss +20 -0
  86. package/loader/index.d.ts +43 -5
  87. package/loader/loader.scss +4 -5
  88. package/package.json +29 -29
  89. package/photoviewer/index.d.ts +26 -5
  90. package/{core/tokens/m2/mtx/_popover.scss → popover/_m2-popover.scss} +9 -12
  91. package/popover/_m3-popover.scss +26 -0
  92. package/popover/_popover-theme.scss +26 -31
  93. package/popover/index.d.ts +399 -3
  94. package/popover/popover.scss +23 -29
  95. package/prebuilt-themes/azure-blue.css +1 -1
  96. package/prebuilt-themes/cyan-orange.css +1 -1
  97. package/prebuilt-themes/deeppurple-amber.css +1 -1
  98. package/prebuilt-themes/indigo-pink.css +1 -1
  99. package/prebuilt-themes/magenta-violet.css +1 -1
  100. package/prebuilt-themes/pink-bluegrey.css +1 -1
  101. package/prebuilt-themes/purple-green.css +1 -1
  102. package/prebuilt-themes/rose-red.css +1 -1
  103. package/progress/_m2-progress.scss +53 -0
  104. package/progress/_m3-progress.scss +33 -0
  105. package/progress/_progress-theme.scss +22 -34
  106. package/progress/index.d.ts +35 -5
  107. package/progress/progress.scss +28 -43
  108. package/select/_m2-select.scss +79 -0
  109. package/select/_m3-select.scss +46 -0
  110. package/select/_select-theme.scss +27 -37
  111. package/select/index.d.ts +381 -3
  112. package/select/select.scss +189 -205
  113. package/{core/tokens/m2/mtx/_split.scss → split/_m2-split.scss} +6 -9
  114. package/split/_m3-split.scss +23 -0
  115. package/split/_split-theme.scss +31 -34
  116. package/split/index.d.ts +255 -3
  117. package/split/split.scss +8 -11
  118. package/tooltip/_m2-tooltip.scss +50 -0
  119. package/tooltip/_m3-tooltip.scss +28 -0
  120. package/tooltip/_tooltip-theme.scss +23 -47
  121. package/tooltip/index.d.ts +345 -3
  122. package/tooltip/tooltip.scss +11 -15
  123. package/alert/alert-module.d.ts +0 -8
  124. package/alert/alert.d.ts +0 -19
  125. package/alert/public-api.d.ts +0 -2
  126. package/button/button-loading.d.ts +0 -19
  127. package/button/button-module.d.ts +0 -10
  128. package/button/public-api.d.ts +0 -2
  129. package/checkbox-group/checkbox-group-module.d.ts +0 -11
  130. package/checkbox-group/checkbox-group.d.ts +0 -86
  131. package/checkbox-group/interfaces.d.ts +0 -17
  132. package/checkbox-group/public-api.d.ts +0 -3
  133. package/colorpicker/colorpicker-animations.d.ts +0 -9
  134. package/colorpicker/colorpicker-input.d.ts +0 -88
  135. package/colorpicker/colorpicker-module.d.ts +0 -15
  136. package/colorpicker/colorpicker-toggle.d.ts +0 -39
  137. package/colorpicker/colorpicker.d.ts +0 -140
  138. package/colorpicker/public-api.d.ts +0 -5
  139. package/column-resize/column-resize-directives/column-resize-flex.d.ts +0 -29
  140. package/column-resize/column-resize-directives/column-resize.d.ts +0 -29
  141. package/column-resize/column-resize-directives/constants.d.ts +0 -10
  142. package/column-resize/column-resize-module.d.ts +0 -12
  143. package/column-resize/column-resize-notifier.d.ts +0 -48
  144. package/column-resize/column-resize.d.ts +0 -39
  145. package/column-resize/column-size-store.d.ts +0 -12
  146. package/column-resize/event-dispatcher.d.ts +0 -35
  147. package/column-resize/overlay-handle.d.ts +0 -43
  148. package/column-resize/polyfill.d.ts +0 -9
  149. package/column-resize/public-api.d.ts +0 -12
  150. package/column-resize/resizable.d.ts +0 -63
  151. package/column-resize/resize-ref.d.ts +0 -17
  152. package/column-resize/resize-strategy.d.ts +0 -84
  153. package/column-resize/selectors.d.ts +0 -10
  154. package/core/datetime/datetime-adapter.d.ts +0 -45
  155. package/core/datetime/datetime-formats.d.ts +0 -22
  156. package/core/datetime/datetime.module.d.ts +0 -15
  157. package/core/datetime/index.d.ts +0 -5
  158. package/core/datetime/native-datetime-adapter.d.ts +0 -40
  159. package/core/datetime/native-datetime-formats.d.ts +0 -2
  160. package/core/pipes/index.d.ts +0 -3
  161. package/core/pipes/is-template-ref.pipe.d.ts +0 -7
  162. package/core/pipes/pipes.module.d.ts +0 -9
  163. package/core/pipes/to-observable.pipe.d.ts +0 -8
  164. package/core/public-api.d.ts +0 -2
  165. package/core/theming/_inspection.scss +0 -38
  166. package/core/theming/_validation.scss +0 -5
  167. package/core/tokens/_density.scss +0 -49
  168. package/core/tokens/_format-tokens.scss +0 -5
  169. package/core/tokens/_token-definition.scss +0 -271
  170. package/core/tokens/m2/mdc/_plain-tooltip.scss +0 -63
  171. package/core/tokens/m2/mtx/_alert.scss +0 -62
  172. package/core/tokens/m2/mtx/_datetimepicker.scss +0 -152
  173. package/core/tokens/m2/mtx/_grid.scss +0 -69
  174. package/core/tokens/m2/mtx/_progress.scss +0 -56
  175. package/core/tokens/m2/mtx/_select.scss +0 -82
  176. package/core/tokens/m3/definitions/_index.scss +0 -9
  177. package/core/tokens/m3/definitions/_md-comp-plain-tooltip.scss +0 -51
  178. package/core/tokens/m3/definitions/_md-ref-palette.scss +0 -100
  179. package/core/tokens/m3/definitions/_md-ref-typeface.scss +0 -14
  180. package/core/tokens/m3/definitions/_md-sys-color.scss +0 -126
  181. package/core/tokens/m3/definitions/_md-sys-elevation.scss +0 -15
  182. package/core/tokens/m3/definitions/_md-sys-motion.scss +0 -46
  183. package/core/tokens/m3/definitions/_md-sys-shape.scss +0 -24
  184. package/core/tokens/m3/definitions/_md-sys-state.scss +0 -13
  185. package/core/tokens/m3/definitions/_md-sys-typescale.scss +0 -308
  186. package/core/tokens/m3/index.scss +0 -47
  187. package/core/tokens/m3/mdc/_plain-tooltip.scss +0 -15
  188. package/core/tokens/m3/mtx/_alert.scss +0 -41
  189. package/core/tokens/m3/mtx/_colorpicker.scss +0 -19
  190. package/core/tokens/m3/mtx/_datetimepicker.scss +0 -140
  191. package/core/tokens/m3/mtx/_drawer.scss +0 -22
  192. package/core/tokens/m3/mtx/_grid.scss +0 -32
  193. package/core/tokens/m3/mtx/_loader.scss +0 -22
  194. package/core/tokens/m3/mtx/_popover.scss +0 -25
  195. package/core/tokens/m3/mtx/_progress.scss +0 -32
  196. package/core/tokens/m3/mtx/_select.scss +0 -76
  197. package/core/tokens/m3/mtx/_split.scss +0 -30
  198. package/datetimepicker/calendar-body.d.ts +0 -66
  199. package/datetimepicker/calendar.d.ts +0 -157
  200. package/datetimepicker/clock.d.ts +0 -101
  201. package/datetimepicker/datetimepicker-actions.d.ts +0 -36
  202. package/datetimepicker/datetimepicker-animations.d.ts +0 -11
  203. package/datetimepicker/datetimepicker-errors.d.ts +0 -2
  204. package/datetimepicker/datetimepicker-filtertype.d.ts +0 -5
  205. package/datetimepicker/datetimepicker-input.d.ts +0 -105
  206. package/datetimepicker/datetimepicker-intl.d.ts +0 -53
  207. package/datetimepicker/datetimepicker-module.d.ts +0 -22
  208. package/datetimepicker/datetimepicker-toggle.d.ts +0 -42
  209. package/datetimepicker/datetimepicker-types.d.ts +0 -6
  210. package/datetimepicker/datetimepicker.d.ts +0 -274
  211. package/datetimepicker/month-view.d.ts +0 -80
  212. package/datetimepicker/multi-year-view.d.ts +0 -86
  213. package/datetimepicker/public-api.d.ts +0 -16
  214. package/datetimepicker/time-view.d.ts +0 -147
  215. package/datetimepicker/year-view.d.ts +0 -68
  216. package/dialog/dialog-config.d.ts +0 -17
  217. package/dialog/dialog-container.d.ts +0 -11
  218. package/dialog/dialog-module.d.ts +0 -12
  219. package/dialog/dialog.d.ts +0 -15
  220. package/dialog/public-api.d.ts +0 -4
  221. package/drawer/drawer-animations.d.ts +0 -8
  222. package/drawer/drawer-config.d.ts +0 -63
  223. package/drawer/drawer-container.d.ts +0 -35
  224. package/drawer/drawer-module.d.ts +0 -10
  225. package/drawer/drawer-ref.d.ts +0 -53
  226. package/drawer/drawer.d.ts +0 -59
  227. package/drawer/public-api.d.ts +0 -6
  228. package/grid/cell.d.ts +0 -32
  229. package/grid/column-menu.d.ts +0 -39
  230. package/grid/column-resize/column-resize-directives/column-resize-flex.d.ts +0 -24
  231. package/grid/column-resize/column-resize-directives/column-resize.d.ts +0 -24
  232. package/grid/column-resize/column-resize-directives/common.d.ts +0 -13
  233. package/grid/column-resize/column-resize-module.d.ts +0 -17
  234. package/grid/column-resize/index.d.ts +0 -7
  235. package/grid/column-resize/overlay-handle.d.ts +0 -32
  236. package/grid/column-resize/resizable-directives/common.d.ts +0 -19
  237. package/grid/column-resize/resizable-directives/resizable.d.ts +0 -32
  238. package/grid/column-resize/resize-strategy.d.ts +0 -20
  239. package/grid/expansion-toggle.d.ts +0 -17
  240. package/grid/grid-module.d.ts +0 -31
  241. package/grid/grid-pipes.d.ts +0 -39
  242. package/grid/grid-utils.d.ts +0 -33
  243. package/grid/grid.d.ts +0 -268
  244. package/grid/interfaces.d.ts +0 -180
  245. package/grid/public-api.d.ts +0 -17
  246. package/grid/selectable-cell.d.ts +0 -16
  247. package/loader/loader-module.d.ts +0 -10
  248. package/loader/loader.d.ts +0 -30
  249. package/loader/public-api.d.ts +0 -2
  250. package/photoviewer/photoviewer-module.d.ts +0 -7
  251. package/photoviewer/photoviewer.d.ts +0 -17
  252. package/photoviewer/public-api.d.ts +0 -2
  253. package/popover/popover-animations.d.ts +0 -11
  254. package/popover/popover-content.d.ts +0 -43
  255. package/popover/popover-errors.d.ts +0 -14
  256. package/popover/popover-interfaces.d.ts +0 -50
  257. package/popover/popover-module.d.ts +0 -13
  258. package/popover/popover-target.d.ts +0 -7
  259. package/popover/popover-trigger.d.ts +0 -132
  260. package/popover/popover-types.d.ts +0 -10
  261. package/popover/popover.d.ts +0 -147
  262. package/popover/public-api.d.ts +0 -8
  263. package/progress/progress-module.d.ts +0 -8
  264. package/progress/progress.d.ts +0 -24
  265. package/progress/public-api.d.ts +0 -2
  266. package/public-api.d.ts +0 -2
  267. package/select/option.d.ts +0 -21
  268. package/select/public-api.d.ts +0 -5
  269. package/select/select-intl.d.ts +0 -18
  270. package/select/select-module.d.ts +0 -12
  271. package/select/select.d.ts +0 -270
  272. package/select/templates.d.ts +0 -67
  273. package/split/interfaces.d.ts +0 -52
  274. package/split/public-api.d.ts +0 -5
  275. package/split/split-module.d.ts +0 -9
  276. package/split/split-pane.d.ts +0 -53
  277. package/split/split.d.ts +0 -133
  278. package/split/utils.d.ts +0 -13
  279. package/tooltip/public-api.d.ts +0 -3
  280. package/tooltip/tooltip-animations.d.ts +0 -9
  281. package/tooltip/tooltip-module.d.ts +0 -13
  282. package/tooltip/tooltip.d.ts +0 -321
package/index.d.ts CHANGED
@@ -1,5 +1,2 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- /// <amd-module name="@ng-matero/extensions" />
5
- export * from './public-api';
1
+
2
+ export { };
@@ -1,70 +1,74 @@
1
1
  @use 'sass:map';
2
2
  @use '@angular/material' as mat;
3
- @use '../core/theming/inspection';
4
- @use '../core/theming/validation';
5
3
  @use '../core/tokens/token-utils';
6
- @use '../core/tokens/m2/mtx/loader' as tokens-mtx-loader;
4
+ @use './m2-loader';
5
+ @use './m3-loader';
7
6
 
8
7
  @mixin base($theme) {
9
8
  @if mat.get-theme-version($theme) == 1 {
10
- @include _theme-from-tokens(inspection.get-theme-tokens($theme, base));
9
+ @include token-utils.create-token-values(map.get(m3-loader.get-tokens($theme), base));
11
10
  }
12
11
  @else {
13
12
  @include mat.private-current-selector-or-root() {
14
- @include token-utils.create-token-values(
15
- tokens-mtx-loader.$prefix,
16
- tokens-mtx-loader.get-unthemable-tokens()
17
- );
13
+ @include token-utils.create-token-values-mixed(m2-loader.get-unthemable-tokens());
18
14
  }
19
15
  }
20
16
  }
21
17
 
22
18
  @mixin color($theme) {
23
19
  @if mat.get-theme-version($theme) == 1 {
24
- @include _theme-from-tokens(inspection.get-theme-tokens($theme, color));
20
+ @include token-utils.create-token-values(map.get(m3-loader.get-tokens($theme), color));
25
21
  }
26
22
  @else {
27
23
  @include mat.private-current-selector-or-root() {
28
- @include token-utils.create-token-values(
29
- tokens-mtx-loader.$prefix,
30
- tokens-mtx-loader.get-color-tokens($theme)
31
- );
24
+ @include token-utils.create-token-values-mixed(m2-loader.get-color-tokens($theme));
32
25
  }
33
26
  }
34
27
  }
35
28
 
36
29
  @mixin typography($theme) {
37
30
  @if mat.get-theme-version($theme) == 1 {
38
- @include _theme-from-tokens(inspection.get-theme-tokens($theme, typography));
31
+ @include token-utils.create-token-values(map.get(m3-loader.get-tokens($theme), typography));
32
+ }
33
+ @else {
34
+ @include mat.private-current-selector-or-root() {
35
+ @include token-utils.create-token-values-mixed(m2-loader.get-typography-tokens($theme));
36
+ }
39
37
  }
40
- @else {}
41
38
  }
42
39
 
43
40
  @mixin density($theme) {
44
41
  @if mat.get-theme-version($theme) == 1 {
45
- @include _theme-from-tokens(inspection.get-theme-tokens($theme, density));
42
+ @include token-utils.create-token-values(map.get(m3-loader.get-tokens($theme), density));
43
+ }
44
+ @else {
45
+ @include mat.private-current-selector-or-root() {
46
+ @include token-utils.create-token-values-mixed(m2-loader.get-density-tokens($theme));
47
+ }
46
48
  }
47
- @else {}
48
49
  }
49
50
 
50
51
  /// Defines the tokens that will be available in the `overrides` mixin and for docs extraction.
51
52
  @function _define-overrides() {
52
53
  @return (
53
54
  (
54
- namespace: tokens-mtx-loader.$prefix,
55
- tokens: tokens-mtx-loader.get-token-slots(),
55
+ namespace: loader,
56
+ tokens: token-utils.get-overrides(m3-loader.get-tokens(), loader),
56
57
  ),
57
58
  );
58
59
  }
59
60
 
60
61
  @mixin overrides($tokens: ()) {
61
- @include token-utils.batch-create-token-values($tokens, _define-overrides()...);
62
+ @include token-utils.batch-create-token-values($tokens, _define-overrides());
62
63
  }
63
64
 
64
- @mixin theme($theme) {
65
+ @mixin theme($theme, $color-variant: null) {
65
66
  @include mat.private-check-duplicate-theme-styles($theme, 'mtx-loader') {
66
67
  @if mat.get-theme-version($theme) == 1 {
67
- @include _theme-from-tokens(inspection.get-theme-tokens($theme));
68
+ @include base($theme);
69
+ @include color($theme);
70
+ @include density($theme);
71
+ @include typography($theme);
68
72
  }
69
73
  @else {
70
74
  @include base($theme);
@@ -80,12 +84,3 @@
80
84
  }
81
85
  }
82
86
  }
83
-
84
- @mixin _theme-from-tokens($tokens) {
85
- @include validation.selector-defined(
86
- 'Calls to Angular Material theme mixins with an M3 theme must be wrapped in a selector');
87
- @if ($tokens != ()) {
88
- @include token-utils.create-token-values(tokens-mtx-loader.$prefix,
89
- map.get($tokens, tokens-mtx-loader.$prefix));
90
- }
91
- }
@@ -2,10 +2,7 @@
2
2
  @use 'sass:map';
3
3
  @use 'sass:meta';
4
4
  @use '@angular/material' as mat;
5
- @use '../../token-definition';
6
-
7
- // The prefix used to generate the fully qualified name for tokens in this file.
8
- $prefix: (mtx, loader);
5
+ @use '../core/tokens/m2-utils';
9
6
 
10
7
  // Tokens that can't be configured through Angular Material's current theming API,
11
8
  // but may be in a future version of the theming API.
@@ -15,10 +12,8 @@ $prefix: (mtx, loader);
15
12
 
16
13
  // Tokens that can be configured through Angular Material's color theming API.
17
14
  @function get-color-tokens($theme) {
18
- $background-color: mat.get-theme-color($theme, background, background);
19
-
20
15
  @return (
21
- backdrop-background-color: mat.private-safe-color-change($background-color, $alpha: .75),
16
+ loader-backdrop-background-color: mat.get-theme-color($theme, background, background, 0.75)
22
17
  );
23
18
  }
24
19
 
@@ -37,8 +32,8 @@ $prefix: (mtx, loader);
37
32
  @function get-token-slots() {
38
33
  @return mat.private-deep-merge-all(
39
34
  get-unthemable-tokens(),
40
- get-color-tokens(token-definition.$placeholder-color-config),
41
- get-typography-tokens(token-definition.$placeholder-typography-config),
42
- get-density-tokens(token-definition.$placeholder-density-config)
35
+ get-color-tokens(m2-utils.$placeholder-color-config),
36
+ get-typography-tokens(m2-utils.$placeholder-typography-config),
37
+ get-density-tokens(m2-utils.$placeholder-density-config)
43
38
  );
44
39
  }
@@ -0,0 +1,20 @@
1
+ @use 'sass:map';
2
+ @use '@angular/material' as mat;
3
+ @use '../core/tokens/m3-utils';
4
+ @use '../core/tokens/m3';
5
+
6
+ /// Generates custom tokens for the mtx-loader.
7
+ @function get-tokens($theme: m3.$sys-theme) {
8
+ $system: m3-utils.get-system($theme);
9
+
10
+ $tokens: (
11
+ base: (),
12
+ color: (
13
+ loader-backdrop-background-color: m3-utils.color-with-opacity(map.get($system, surface), 75%),
14
+ ),
15
+ typography: (),
16
+ density: (),
17
+ );
18
+
19
+ @return $tokens;
20
+ }
package/loader/index.d.ts CHANGED
@@ -1,5 +1,43 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- /// <amd-module name="@ng-matero/extensions/loader" />
5
- export * from './public-api';
1
+ import * as i0 from '@angular/core';
2
+ import * as i1 from '@angular/common';
3
+ import * as i2 from '@angular/material/progress-spinner';
4
+ import { ProgressSpinnerMode } from '@angular/material/progress-spinner';
5
+ import * as i3 from '@angular/material/progress-bar';
6
+ import { ProgressBarMode } from '@angular/material/progress-bar';
7
+ import { ThemePalette } from '@angular/material/core';
8
+
9
+ type MtxLoaderType = 'spinner' | 'progressbar';
10
+ declare class MtxLoader {
11
+ private _changeDetectorRef;
12
+ /** The loader's type. Can be `spinner` or `progressbar` */
13
+ type: MtxLoaderType;
14
+ /** Theme color palette for the component. */
15
+ color: ThemePalette;
16
+ /** Mode of the progress circle or the progress bar. */
17
+ mode: ProgressSpinnerMode | ProgressBarMode;
18
+ /** Stroke width of the spinner loader. */
19
+ strokeWidth: number;
20
+ /** The diameter of the spinner loader (will set width and height of svg). */
21
+ diameter: number;
22
+ /** Buffer value of the progressbar loader. */
23
+ bufferValue: number;
24
+ /** Value of the progress circle or the progress bar. */
25
+ value: number;
26
+ /** Whether the loader is loading. */
27
+ loading: boolean;
28
+ /** Whether the loader has a backdrop. */
29
+ hasBackdrop: boolean;
30
+ static ɵfac: i0.ɵɵFactoryDeclaration<MtxLoader, never>;
31
+ static ɵcmp: i0.ɵɵComponentDeclaration<MtxLoader, "mtx-loader", ["mtxLoader"], { "type": { "alias": "type"; "required": false; }; "color": { "alias": "color"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "strokeWidth": { "alias": "strokeWidth"; "required": false; }; "diameter": { "alias": "diameter"; "required": false; }; "bufferValue": { "alias": "bufferValue"; "required": false; }; "value": { "alias": "value"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "hasBackdrop": { "alias": "hasBackdrop"; "required": false; }; }, {}, never, ["*"], true, never>;
32
+ static ngAcceptInputType_loading: unknown;
33
+ static ngAcceptInputType_hasBackdrop: unknown;
34
+ }
35
+
36
+ declare class MtxLoaderModule {
37
+ static ɵfac: i0.ɵɵFactoryDeclaration<MtxLoaderModule, never>;
38
+ static ɵmod: i0.ɵɵNgModuleDeclaration<MtxLoaderModule, never, [typeof i1.CommonModule, typeof i2.MatProgressSpinnerModule, typeof i3.MatProgressBarModule, typeof MtxLoader], [typeof MtxLoader]>;
39
+ static ɵinj: i0.ɵɵInjectorDeclaration<MtxLoaderModule>;
40
+ }
41
+
42
+ export { MtxLoader, MtxLoaderModule };
43
+ export type { MtxLoaderType };
@@ -1,5 +1,7 @@
1
1
  @use '../core/tokens/token-utils';
2
- @use '../core/tokens/m2/mtx/loader' as tokens-mtx-loader;
2
+ @use './m3-loader';
3
+
4
+ $fallbacks: m3-loader.get-tokens();
3
5
 
4
6
  .mtx-loader {
5
7
  position: relative;
@@ -40,8 +42,5 @@
40
42
  width: 100%;
41
43
  height: 100%;
42
44
  content: '';
43
-
44
- @include token-utils.use-tokens(tokens-mtx-loader.$prefix, tokens-mtx-loader.get-token-slots()) {
45
- @include token-utils.create-token-slot(background-color, backdrop-background-color);
46
- }
45
+ background-color: token-utils.slot(loader-backdrop-background-color, $fallbacks);
47
46
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ng-matero/extensions",
3
- "version": "19.4.0",
3
+ "version": "20.0.0",
4
4
  "description": "Angular Material Extensions",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -74,14 +74,6 @@
74
74
  "types": "./alert/index.d.ts",
75
75
  "default": "./fesm2022/mtxAlert.mjs"
76
76
  },
77
- "./checkbox-group": {
78
- "types": "./checkbox-group/index.d.ts",
79
- "default": "./fesm2022/mtxCheckboxGroup.mjs"
80
- },
81
- "./core": {
82
- "types": "./core/index.d.ts",
83
- "default": "./fesm2022/mtxCore.mjs"
84
- },
85
77
  "./button": {
86
78
  "types": "./button/index.d.ts",
87
79
  "default": "./fesm2022/mtxButton.mjs"
@@ -90,33 +82,41 @@
90
82
  "types": "./colorpicker/index.d.ts",
91
83
  "default": "./fesm2022/mtxColorpicker.mjs"
92
84
  },
85
+ "./checkbox-group": {
86
+ "types": "./checkbox-group/index.d.ts",
87
+ "default": "./fesm2022/mtxCheckboxGroup.mjs"
88
+ },
93
89
  "./column-resize": {
94
90
  "types": "./column-resize/index.d.ts",
95
91
  "default": "./fesm2022/mtxColumnResize.mjs"
96
92
  },
93
+ "./core": {
94
+ "types": "./core/index.d.ts",
95
+ "default": "./fesm2022/mtxCore.mjs"
96
+ },
97
+ "./datetimepicker": {
98
+ "types": "./datetimepicker/index.d.ts",
99
+ "default": "./fesm2022/mtxDatetimepicker.mjs"
100
+ },
97
101
  "./dialog": {
98
102
  "types": "./dialog/index.d.ts",
99
103
  "default": "./fesm2022/mtxDialog.mjs"
100
104
  },
101
- "./grid": {
102
- "types": "./grid/index.d.ts",
103
- "default": "./fesm2022/mtxGrid.mjs"
104
- },
105
105
  "./drawer": {
106
106
  "types": "./drawer/index.d.ts",
107
107
  "default": "./fesm2022/mtxDrawer.mjs"
108
108
  },
109
- "./datetimepicker": {
110
- "types": "./datetimepicker/index.d.ts",
111
- "default": "./fesm2022/mtxDatetimepicker.mjs"
112
- },
113
109
  "./loader": {
114
110
  "types": "./loader/index.d.ts",
115
111
  "default": "./fesm2022/mtxLoader.mjs"
116
112
  },
117
- "./progress": {
118
- "types": "./progress/index.d.ts",
119
- "default": "./fesm2022/mtxProgress.mjs"
113
+ "./grid": {
114
+ "types": "./grid/index.d.ts",
115
+ "default": "./fesm2022/mtxGrid.mjs"
116
+ },
117
+ "./photoviewer": {
118
+ "types": "./photoviewer/index.d.ts",
119
+ "default": "./fesm2022/mtxPhotoviewer.mjs"
120
120
  },
121
121
  "./popover": {
122
122
  "types": "./popover/index.d.ts",
@@ -126,6 +126,10 @@
126
126
  "types": "./select/index.d.ts",
127
127
  "default": "./fesm2022/mtxSelect.mjs"
128
128
  },
129
+ "./progress": {
130
+ "types": "./progress/index.d.ts",
131
+ "default": "./fesm2022/mtxProgress.mjs"
132
+ },
129
133
  "./split": {
130
134
  "types": "./split/index.d.ts",
131
135
  "default": "./fesm2022/mtxSplit.mjs"
@@ -133,23 +137,19 @@
133
137
  "./tooltip": {
134
138
  "types": "./tooltip/index.d.ts",
135
139
  "default": "./fesm2022/mtxTooltip.mjs"
136
- },
137
- "./photoviewer": {
138
- "types": "./photoviewer/index.d.ts",
139
- "default": "./fesm2022/mtxPhotoviewer.mjs"
140
140
  }
141
141
  },
142
142
  "dependencies": {
143
- "@ng-select/ng-select": "^14.2.0",
143
+ "@ng-select/ng-select": "^15.0.0",
144
144
  "ngx-color": "^10.0.0",
145
145
  "photoviewer": "^3.10.0",
146
146
  "tslib": "^2.4.0"
147
147
  },
148
148
  "peerDependencies": {
149
- "@angular/cdk": ">=19.0.0",
150
- "@angular/common": ">=19.0.0",
151
- "@angular/core": ">=19.0.0",
152
- "@angular/material": ">=19.0.0"
149
+ "@angular/cdk": ">=20.0.0",
150
+ "@angular/common": ">=20.0.0",
151
+ "@angular/core": ">=20.0.0",
152
+ "@angular/material": ">=20.0.0"
153
153
  },
154
154
  "sideEffects": false,
155
155
  "module": "fesm2022/ng-matero-extensions.mjs",
@@ -1,5 +1,26 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- /// <amd-module name="@ng-matero/extensions/photoviewer" />
5
- export * from './public-api';
1
+ import * as i0 from '@angular/core';
2
+ import { OnInit, OnDestroy } from '@angular/core';
3
+ import PhotoViewer from 'photoviewer';
4
+
5
+ declare class MtxPhotoviewer implements OnInit, OnDestroy {
6
+ private _elementRef;
7
+ images: PhotoViewer.Img[];
8
+ options?: PhotoViewer.Options;
9
+ embed: boolean;
10
+ photoviewerInstance?: PhotoViewer;
11
+ ngOnInit(): void;
12
+ ngOnDestroy(): void;
13
+ onClick(event: MouseEvent): void;
14
+ initPhotoViewer(): void;
15
+ static ɵfac: i0.ɵɵFactoryDeclaration<MtxPhotoviewer, never>;
16
+ static ɵdir: i0.ɵɵDirectiveDeclaration<MtxPhotoviewer, "[mtxPhotoviewer]", ["mtxPhotoviewer"], { "images": { "alias": "mtxPhotoviewerItems"; "required": false; }; "options": { "alias": "mtxPhotoviewerOptions"; "required": false; }; "embed": { "alias": "mtxPhotoviewerEmbed"; "required": false; }; }, {}, never, never, true, never>;
17
+ static ngAcceptInputType_embed: unknown;
18
+ }
19
+
20
+ declare class MtxPhotoviewerModule {
21
+ static ɵfac: i0.ɵɵFactoryDeclaration<MtxPhotoviewerModule, never>;
22
+ static ɵmod: i0.ɵɵNgModuleDeclaration<MtxPhotoviewerModule, never, [typeof MtxPhotoviewer], [typeof MtxPhotoviewer]>;
23
+ static ɵinj: i0.ɵɵInjectorDeclaration<MtxPhotoviewerModule>;
24
+ }
25
+
26
+ export { MtxPhotoviewer, MtxPhotoviewerModule };
@@ -1,27 +1,24 @@
1
1
  @use 'sass:map';
2
2
  @use '@angular/material' as mat;
3
- @use '../../token-definition';
4
-
5
- // The prefix used to generate the fully qualified name for tokens in this file.
6
- $prefix: (mtx, popover);
3
+ @use '../core/tokens/m2-utils';
7
4
 
8
5
  // Tokens that can't be configured through Angular Material's current theming API,
9
6
  // but may be in a future version of the theming API.
10
7
  @function get-unthemable-tokens() {
11
8
  @return (
12
- container-shape: 4px,
9
+ popover-container-shape: 4px,
13
10
  // Note that this uses a value, rather than a computed box-shadow, because we use
14
11
  // the value at runtime to determine which shadow to set based on the popover's depth.
15
- base-elevation-level: 8,
12
+ popover-base-elevation-level: 8,
16
13
  );
17
14
  }
18
15
 
19
16
  // Tokens that can be configured through Angular Material's color theming API.
20
17
  @function get-color-tokens($theme) {
21
18
  @return (
22
- outline-color: mat.get-theme-color($theme, foreground, divider),
23
- background-color: mat.get-theme-color($theme, background, card),
24
- text-color: mat.get-theme-color($theme, foreground, text),
19
+ popover-outline-color: mat.get-theme-color($theme, foreground, divider),
20
+ popover-background-color: mat.get-theme-color($theme, background, card),
21
+ popover-text-color: mat.get-theme-color($theme, foreground, text),
25
22
  );
26
23
  }
27
24
 
@@ -40,8 +37,8 @@ $prefix: (mtx, popover);
40
37
  @function get-token-slots() {
41
38
  @return mat.private-deep-merge-all(
42
39
  get-unthemable-tokens(),
43
- get-color-tokens(token-definition.$placeholder-color-config),
44
- get-typography-tokens(token-definition.$placeholder-typography-config),
45
- get-density-tokens(token-definition.$placeholder-density-config)
40
+ get-color-tokens(m2-utils.$placeholder-color-config),
41
+ get-typography-tokens(m2-utils.$placeholder-typography-config),
42
+ get-density-tokens(m2-utils.$placeholder-density-config)
46
43
  );
47
44
  }
@@ -0,0 +1,26 @@
1
+ @use 'sass:map';
2
+ @use '../core/tokens/m3-utils';
3
+ @use '../core/tokens/m3';
4
+
5
+ /// Generates custom tokens for the mtx-popover.
6
+ @function get-tokens($theme: m3.$sys-theme) {
7
+ $system: m3-utils.get-system($theme);
8
+
9
+ $tokens: (
10
+ base: (
11
+ popover-container-shape: map.get($system, corner-extra-small),
12
+ // Note that this uses a value, rather than a computed box-shadow, because we use
13
+ // the value at runtime to determine which shadow to set based on the popover's depth.
14
+ popover-base-elevation-level: 2,
15
+ ),
16
+ color: (
17
+ popover-outline-color: map.get($system, surface-container),
18
+ popover-background-color: map.get($system, surface-container),
19
+ popover-text-color: map.get($system, on-surface),
20
+ ),
21
+ typography: (),
22
+ density: (),
23
+ );
24
+
25
+ @return $tokens;
26
+ }
@@ -1,70 +1,74 @@
1
1
  @use 'sass:map';
2
2
  @use '@angular/material' as mat;
3
- @use '../core/theming/inspection';
4
- @use '../core/theming/validation';
5
3
  @use '../core/tokens/token-utils';
6
- @use '../core/tokens/m2/mtx/popover' as tokens-mtx-popover;
4
+ @use './m2-popover';
5
+ @use './m3-popover';
7
6
 
8
7
  @mixin base($theme) {
9
8
  @if mat.get-theme-version($theme) == 1 {
10
- @include _theme-from-tokens(inspection.get-theme-tokens($theme, base));
9
+ @include token-utils.create-token-values(map.get(m3-popover.get-tokens($theme), base));
11
10
  }
12
11
  @else {
13
12
  @include mat.private-current-selector-or-root() {
14
- @include token-utils.create-token-values(
15
- tokens-mtx-popover.$prefix,
16
- tokens-mtx-popover.get-unthemable-tokens()
17
- );
13
+ @include token-utils.create-token-values-mixed(m2-popover.get-unthemable-tokens());
18
14
  }
19
15
  }
20
16
  }
21
17
 
22
18
  @mixin color($theme) {
23
19
  @if mat.get-theme-version($theme) == 1 {
24
- @include _theme-from-tokens(inspection.get-theme-tokens($theme, color));
20
+ @include token-utils.create-token-values(map.get(m3-popover.get-tokens($theme), color));
25
21
  }
26
22
  @else {
27
23
  @include mat.private-current-selector-or-root() {
28
- @include token-utils.create-token-values(
29
- tokens-mtx-popover.$prefix,
30
- tokens-mtx-popover.get-color-tokens($theme)
31
- );
24
+ @include token-utils.create-token-values-mixed(m2-popover.get-color-tokens($theme));
32
25
  }
33
26
  }
34
27
  }
35
28
 
36
29
  @mixin typography($theme) {
37
30
  @if mat.get-theme-version($theme) == 1 {
38
- @include _theme-from-tokens(inspection.get-theme-tokens($theme, typography));
31
+ @include token-utils.create-token-values(map.get(m3-popover.get-tokens($theme), typography));
32
+ }
33
+ @else {
34
+ @include mat.private-current-selector-or-root() {
35
+ @include token-utils.create-token-values-mixed(m2-popover.get-typography-tokens($theme));
36
+ }
39
37
  }
40
- @else {}
41
38
  }
42
39
 
43
40
  @mixin density($theme) {
44
41
  @if mat.get-theme-version($theme) == 1 {
45
- @include _theme-from-tokens(inspection.get-theme-tokens($theme, density));
42
+ @include token-utils.create-token-values(map.get(m3-popover.get-tokens($theme), density));
43
+ }
44
+ @else {
45
+ @include mat.private-current-selector-or-root() {
46
+ @include token-utils.create-token-values-mixed(m2-popover.get-density-tokens($theme));
47
+ }
46
48
  }
47
- @else {}
48
49
  }
49
50
 
50
51
  /// Defines the tokens that will be available in the `overrides` mixin and for docs extraction.
51
52
  @function _define-overrides() {
52
53
  @return (
53
54
  (
54
- namespace: tokens-mtx-popover.$prefix,
55
- tokens: tokens-mtx-popover.get-token-slots(),
55
+ namespace: popover,
56
+ tokens: token-utils.get-overrides(m3-popover.get-tokens(), popover),
56
57
  ),
57
58
  );
58
59
  }
59
60
 
60
61
  @mixin overrides($tokens: ()) {
61
- @include token-utils.batch-create-token-values($tokens, _define-overrides()...);
62
+ @include token-utils.batch-create-token-values($tokens, _define-overrides());
62
63
  }
63
64
 
64
- @mixin theme($theme) {
65
+ @mixin theme($theme, $color-variant: null) {
65
66
  @include mat.private-check-duplicate-theme-styles($theme, 'mtx-popover') {
66
67
  @if mat.get-theme-version($theme) == 1 {
67
- @include _theme-from-tokens(inspection.get-theme-tokens($theme));
68
+ @include base($theme);
69
+ @include color($theme);
70
+ @include density($theme);
71
+ @include typography($theme);
68
72
  }
69
73
  @else {
70
74
  @include base($theme);
@@ -80,12 +84,3 @@
80
84
  }
81
85
  }
82
86
  }
83
-
84
- @mixin _theme-from-tokens($tokens) {
85
- @include validation.selector-defined(
86
- 'Calls to Angular Material theme mixins with an M3 theme must be wrapped in a selector');
87
- @if ($tokens != ()) {
88
- @include token-utils.create-token-values(tokens-mtx-popover.$prefix,
89
- map.get($tokens, tokens-mtx-popover.$prefix));
90
- }
91
- }