@wlcm/angular 19.2.6 → 22.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.
Files changed (217) hide show
  1. package/README.md +37 -0
  2. package/button/fesm2022/wlcm-angular-button.mjs +25 -31
  3. package/button/fesm2022/wlcm-angular-button.mjs.map +1 -1
  4. package/button/package.json +25 -0
  5. package/button/types/wlcm-angular-button.d.ts +28 -0
  6. package/core/fesm2022/wlcm-angular-core.mjs +76 -92
  7. package/core/fesm2022/wlcm-angular-core.mjs.map +1 -1
  8. package/core/package.json +26 -0
  9. package/core/types/wlcm-angular-core.d.ts +102 -0
  10. package/datepicker/fesm2022/wlcm-angular-datepicker.mjs +329 -500
  11. package/datepicker/fesm2022/wlcm-angular-datepicker.mjs.map +1 -1
  12. package/datepicker/package.json +33 -0
  13. package/datepicker/types/wlcm-angular-datepicker.d.ts +285 -0
  14. package/filters/fesm2022/wlcm-angular-filters.mjs +32 -38
  15. package/filters/fesm2022/wlcm-angular-filters.mjs.map +1 -1
  16. package/filters/package.json +25 -0
  17. package/filters/types/wlcm-angular-filters.d.ts +81 -0
  18. package/forms/fesm2022/wlcm-angular-forms.mjs +375 -401
  19. package/forms/fesm2022/wlcm-angular-forms.mjs.map +1 -1
  20. package/forms/package.json +31 -0
  21. package/forms/types/wlcm-angular-forms.d.ts +365 -0
  22. package/package.json +27 -46
  23. package/phone-input/fesm2022/wlcm-angular-phone-input.mjs +67 -85
  24. package/phone-input/fesm2022/wlcm-angular-phone-input.mjs.map +1 -1
  25. package/phone-input/package.json +32 -0
  26. package/phone-input/types/wlcm-angular-phone-input.d.ts +81 -0
  27. package/search-field/fesm2022/wlcm-angular-search-field.mjs +25 -30
  28. package/search-field/fesm2022/wlcm-angular-search-field.mjs.map +1 -1
  29. package/search-field/package.json +28 -0
  30. package/search-field/types/wlcm-angular-search-field.d.ts +24 -0
  31. package/stepper/fesm2022/wlcm-angular-stepper.mjs +171 -294
  32. package/stepper/fesm2022/wlcm-angular-stepper.mjs.map +1 -1
  33. package/stepper/package.json +24 -0
  34. package/stepper/types/wlcm-angular-stepper.d.ts +114 -0
  35. package/styles/components/button/index.scss +25 -82
  36. package/styles/components/calendar/_calendar-header.scss +3 -6
  37. package/styles/components/calendar/_calendar.scss +10 -13
  38. package/styles/components/common/index.scss +4 -7
  39. package/styles/components/datepicker/_datepicker-input-container.scss +0 -3
  40. package/styles/components/datepicker/_datepicker-panel.scss +2 -5
  41. package/styles/components/datepicker/_datepicker-trigger.scss +0 -3
  42. package/styles/components/datepicker/date-range-picker/_date-range-picker-body.scss +0 -3
  43. package/styles/components/datepicker/date-range-picker/_date-range-picker-input.scss +4 -7
  44. package/styles/components/datepicker/date-range-picker/_date-range-picker-panel.scss +2 -5
  45. package/styles/components/forms/_autocomplete.scss +0 -3
  46. package/styles/components/forms/_checkbox-group.scss +0 -3
  47. package/styles/components/forms/_checkbox.scss +6 -8
  48. package/styles/components/forms/_error.scss +2 -13
  49. package/styles/components/forms/_form-field.scss +9 -10
  50. package/styles/components/forms/_label.scss +2 -11
  51. package/styles/components/forms/_radio.scss +13 -12
  52. package/styles/components/forms/_select.scss +5 -8
  53. package/styles/components/forms/partials/_dropdown-panel.scss +4 -6
  54. package/styles/components/loader/_loader.scss +5 -9
  55. package/styles/components/phone-input/_country-code-select.scss +0 -5
  56. package/styles/components/phone-input/_phone-input-container.scss +1 -6
  57. package/styles/components/search-field/index.scss +0 -4
  58. package/styles/components/stepper/_step-header.scss +8 -11
  59. package/styles/components/stepper/_step.scss +0 -5
  60. package/styles/components/stepper/_stepper-header.scss +0 -5
  61. package/styles/components/stepper/_stepper.scss +0 -4
  62. package/styles/components/table/_table-head-data.scss +6 -9
  63. package/styles/components/table/_table-head.scss +0 -5
  64. package/styles/components/table/_table-row-data.scss +2 -7
  65. package/styles/components/table/_table-row.scss +0 -5
  66. package/styles/components/table/_table.scss +0 -5
  67. package/styles/core/_all-theme.scss +8 -3
  68. package/styles/core/_tokens.scss +41 -0
  69. package/styles/core/_utils.scss +11 -44
  70. package/styles/wlcm.scss +1 -3
  71. package/table/fesm2022/wlcm-angular-table.mjs +130 -160
  72. package/table/fesm2022/wlcm-angular-table.mjs.map +1 -1
  73. package/table/package.json +27 -0
  74. package/table/types/wlcm-angular-table.d.ts +115 -0
  75. package/button/index.d.ts +0 -2
  76. package/button/lib/button.module.d.ts +0 -7
  77. package/button/lib/components/button/button.component.d.ts +0 -19
  78. package/button/lib/models/button.models.d.ts +0 -4
  79. package/core/index.d.ts +0 -11
  80. package/core/lib/components/default-loader/default-loader.component.d.ts +0 -5
  81. package/core/lib/components/icons/calendar-icon/calendar-icon.component.d.ts +0 -5
  82. package/core/lib/components/icons/chevron-down-icon/chevron-down-icon.component.d.ts +0 -5
  83. package/core/lib/components/icons/close-icon/close-icon.component.d.ts +0 -5
  84. package/core/lib/components/icons/search-icon/search-icon.component.d.ts +0 -5
  85. package/core/lib/components/loader/loader.component.d.ts +0 -11
  86. package/core/lib/constants/_index.d.ts +0 -2
  87. package/core/lib/constants/http.constants.d.ts +0 -2
  88. package/core/lib/constants/icon.contants.d.ts +0 -4
  89. package/core/lib/constants/loader.constants.d.ts +0 -2
  90. package/core/lib/directives/_index.d.ts +0 -1
  91. package/core/lib/directives/icon.directive.d.ts +0 -15
  92. package/core/lib/models/_index.d.ts +0 -2
  93. package/core/lib/models/icon.models.d.ts +0 -9
  94. package/core/lib/models/option.models.d.ts +0 -14
  95. package/core/lib/services/scroll-detection.api.d.ts +0 -10
  96. package/core/lib/utils/paginated-data-emulator.utils.d.ts +0 -9
  97. package/core/lib/utils/stream.utils.d.ts +0 -6
  98. package/datepicker/index.d.ts +0 -18
  99. package/datepicker/lib/components/calendar-header/calendar-header.component.d.ts +0 -24
  100. package/datepicker/lib/components/range/date-range-calendar-header/date-range-calendar-header.component.d.ts +0 -24
  101. package/datepicker/lib/components/range/date-range-picker-bottom-panel/date-range-picker-bottom-panel.component.d.ts +0 -8
  102. package/datepicker/lib/components/range/date-range-picker-input/date-range-picker-input.component.d.ts +0 -36
  103. package/datepicker/lib/components/range/double-calendar-range-picker/double-calendar-range-picker.component.d.ts +0 -37
  104. package/datepicker/lib/components/range/single-calendar-range-picker/single-calendar-range-picker.component.d.ts +0 -27
  105. package/datepicker/lib/components/single/datepicker-input-container/datepicker-input-container.component.d.ts +0 -30
  106. package/datepicker/lib/components/single/datepicker-panel/datepicker-panel.component.d.ts +0 -17
  107. package/datepicker/lib/constants/datepicker.constants.d.ts +0 -7
  108. package/datepicker/lib/constants/range/date-range-picker.constants.d.ts +0 -5
  109. package/datepicker/lib/constants/range/date-range-selection-model.constants.d.ts +0 -4
  110. package/datepicker/lib/constants/range/date-range-trigger-selection-model.constants.d.ts +0 -4
  111. package/datepicker/lib/datepicker.module.d.ts +0 -12
  112. package/datepicker/lib/directives/calendar.directive.d.ts +0 -5
  113. package/datepicker/lib/directives/datepicker-input.base.d.ts +0 -33
  114. package/datepicker/lib/directives/datepicker-trigger.base.d.ts +0 -33
  115. package/datepicker/lib/directives/ragne/date-range-picker-input-end.directive.d.ts +0 -20
  116. package/datepicker/lib/directives/ragne/date-range-picker-input-start.directive.d.ts +0 -20
  117. package/datepicker/lib/directives/ragne/date-range-picker-input.base.d.ts +0 -23
  118. package/datepicker/lib/directives/ragne/left-calendar.directive.d.ts +0 -17
  119. package/datepicker/lib/directives/ragne/right-calendar.directive.d.ts +0 -20
  120. package/datepicker/lib/directives/single/datepicker-input.directive.d.ts +0 -21
  121. package/datepicker/lib/models/date-picker.models.d.ts +0 -18
  122. package/datepicker/lib/models/range/data-range-calendar.models.d.ts +0 -25
  123. package/datepicker/lib/models/range/date-range-picker.models.d.ts +0 -19
  124. package/datepicker/lib/models/range/date-range-validation.models.d.ts +0 -3
  125. package/datepicker/lib/utils/range/date-range-input.validators.d.ts +0 -2
  126. package/datepicker/lib/utils/range/date-range-picker-errors.d.ts +0 -4
  127. package/filters/index.d.ts +0 -5
  128. package/filters/lib/components/filters-group/filters-group.component.d.ts +0 -6
  129. package/filters/lib/constants/filter.constants.d.ts +0 -3
  130. package/filters/lib/constants/index.d.ts +0 -1
  131. package/filters/lib/directives/filter.directive.d.ts +0 -5
  132. package/filters/lib/directives/index.d.ts +0 -1
  133. package/filters/lib/filters.module.d.ts +0 -9
  134. package/filters/lib/models/array-filter.models.d.ts +0 -19
  135. package/filters/lib/models/filter.models.d.ts +0 -19
  136. package/filters/lib/models/filters-group.models.d.ts +0 -22
  137. package/filters/lib/models/index.d.ts +0 -3
  138. package/forms/index.d.ts +0 -12
  139. package/forms/lib/forms/components/autocomplete/autocomplete.component.d.ts +0 -76
  140. package/forms/lib/forms/components/checkbox/checkbox.component.d.ts +0 -28
  141. package/forms/lib/forms/components/checkbox-group/checkbox-group.component.d.ts +0 -25
  142. package/forms/lib/forms/components/error/error.component.d.ts +0 -5
  143. package/forms/lib/forms/components/form-field/form-field.component.d.ts +0 -34
  144. package/forms/lib/forms/components/index.d.ts +0 -8
  145. package/forms/lib/forms/components/label/label.component.d.ts +0 -7
  146. package/forms/lib/forms/components/partials/autocomplete-suffix/autocomplete-suffix.component.d.ts +0 -10
  147. package/forms/lib/forms/components/partials/index.d.ts +0 -1
  148. package/forms/lib/forms/components/select/select.component.d.ts +0 -90
  149. package/forms/lib/forms/constants/form-elements.constants.d.ts +0 -6
  150. package/forms/lib/forms/constants/form-errors.constants.d.ts +0 -4
  151. package/forms/lib/forms/constants/form-field.constants.d.ts +0 -1
  152. package/forms/lib/forms/constants/form-state-handlers.constants.d.ts +0 -6
  153. package/forms/lib/forms/constants/index.d.ts +0 -5
  154. package/forms/lib/forms/constants/select.constants.d.ts +0 -3
  155. package/forms/lib/forms/directives/autocomplete.directive.d.ts +0 -16
  156. package/forms/lib/forms/directives/form-field-custom-container.directive.d.ts +0 -8
  157. package/forms/lib/forms/directives/form-field-hint.directive.d.ts +0 -5
  158. package/forms/lib/forms/directives/form-field-prefix.directive.d.ts +0 -6
  159. package/forms/lib/forms/directives/form-field-suffix.directive.d.ts +0 -5
  160. package/forms/lib/forms/directives/input.directive.d.ts +0 -14
  161. package/forms/lib/forms/directives/select-input-binder.directive.d.ts +0 -5
  162. package/forms/lib/forms/forms.module.d.ts +0 -19
  163. package/forms/lib/forms/models/_index.d.ts +0 -5
  164. package/forms/lib/forms/models/autocomplete.models.d.ts +0 -9
  165. package/forms/lib/forms/models/form-errors.models.d.ts +0 -5
  166. package/forms/lib/forms/models/form.models.d.ts +0 -11
  167. package/forms/lib/forms/models/input.models.d.ts +0 -13
  168. package/forms/lib/forms/models/select.models.d.ts +0 -9
  169. package/forms/lib/forms/pipes/errors-mapper.pipe.d.ts +0 -17
  170. package/forms/lib/forms/services/form-state-handler.service.d.ts +0 -10
  171. package/forms/lib/forms/services/index.d.ts +0 -2
  172. package/forms/lib/forms/services/places.api.d.ts +0 -11
  173. package/phone-input/index.d.ts +0 -4
  174. package/phone-input/lib/components/country-code-select/country-code-select.component.d.ts +0 -15
  175. package/phone-input/lib/components/phone-input-container/phone-input-container.component.d.ts +0 -30
  176. package/phone-input/lib/constants/country-code-options.constants.d.ts +0 -3
  177. package/phone-input/lib/constants/phone-adapter.constants.d.ts +0 -3
  178. package/phone-input/lib/directives/phone-input.directive.d.ts +0 -36
  179. package/phone-input/lib/models/country-code.models.d.ts +0 -7
  180. package/phone-input/lib/models/phone-adapter.models.d.ts +0 -10
  181. package/phone-input/lib/models/phone.models.d.ts +0 -3
  182. package/phone-input/lib/phone-input.module.d.ts +0 -9
  183. package/phone-input/lib/pipes/phone-code.pipe.d.ts +0 -8
  184. package/search-field/index.d.ts +0 -2
  185. package/search-field/lib/components/search-field/search-field.component.d.ts +0 -16
  186. package/search-field/lib/search-field.module.d.ts +0 -8
  187. package/stepper/index.d.ts +0 -10
  188. package/stepper/lib/components/step/step.component.d.ts +0 -16
  189. package/stepper/lib/components/step-header/step-header.component.d.ts +0 -20
  190. package/stepper/lib/components/stepper/stepper.component.d.ts +0 -6
  191. package/stepper/lib/components/stepper-header/stepper-header.component.d.ts +0 -8
  192. package/stepper/lib/constants/step.constants.d.ts +0 -4
  193. package/stepper/lib/constants/stepper.stepper.d.ts +0 -3
  194. package/stepper/lib/directives/load-on-active-step.directive.d.ts +0 -13
  195. package/stepper/lib/models/step.models.d.ts +0 -43
  196. package/stepper/lib/models/stepper.models.d.ts +0 -44
  197. package/stepper/lib/stepper.module.d.ts +0 -12
  198. package/styles/core/_core.scss +0 -10
  199. package/table/index.d.ts +0 -9
  200. package/table/lib/components/table/table.component.d.ts +0 -24
  201. package/table/lib/components/table-head/table-head.component.d.ts +0 -8
  202. package/table/lib/components/table-head-actions/table-head-actions.component.d.ts +0 -12
  203. package/table/lib/components/table-head-data/table-head-data.component.d.ts +0 -5
  204. package/table/lib/components/table-row/table-row.component.d.ts +0 -23
  205. package/table/lib/components/table-row-actions/table-row-actions.component.d.ts +0 -5
  206. package/table/lib/components/table-row-data/table-row-data.component.d.ts +0 -5
  207. package/table/lib/components/table-row-spacer/table-row-spacer.component.d.ts +0 -5
  208. package/table/lib/constants/table-row.constants.d.ts +0 -3
  209. package/table/lib/constants/table.constants.d.ts +0 -3
  210. package/table/lib/directives/scrollable-table-container.directive.d.ts +0 -13
  211. package/table/lib/models/table-config-manager.models.d.ts +0 -12
  212. package/table/lib/models/table-row.models.d.ts +0 -10
  213. package/table/lib/models/table-selection-model.d.ts +0 -25
  214. package/table/lib/models/table.models.d.ts +0 -4
  215. package/table/lib/pipes/table-row-injector.pipe.d.ts +0 -9
  216. package/table/lib/table.module.d.ts +0 -13
  217. package/table/lib/utils/table-errors.utils.d.ts +0 -3
@@ -1,12 +1,9 @@
1
- @use 'sass:map';
2
1
  @use '../../../core//utils' as utils;
3
2
 
4
3
  @mixin theme($theme-config) {
5
- $theme: utils.using-theme($theme_config);
6
-
7
4
  .wlcm-date-range-picker-panel {
8
- background: #ffffff;
9
- box-shadow: 0 4px 32px 0 rgba(0, 0, 0, 0.16);
5
+ background: var(--mat-sys-surface);
6
+ box-shadow: 0 4px 32px 0 color-mix(in srgb, var(--mat-sys-shadow) 16%, transparent);
10
7
  border-radius: 12px;
11
8
  padding: 16px;
12
9
  }
@@ -1,10 +1,7 @@
1
- @use 'sass:map';
2
1
  @use '../../core/utils';
3
2
  @use 'partials/dropdown-panel';
4
3
 
5
4
  @mixin theme($theme-config) {
6
- $theme: utils.using-theme($theme_config);
7
-
8
5
  .wlcm-autocomplete {
9
6
  width: 100%;
10
7
  display: block;
@@ -1,9 +1,6 @@
1
- @use 'sass:map';
2
1
  @use '../../core/utils' as utils;
3
2
 
4
3
  @mixin theme($theme-config) {
5
- $theme: utils.using-theme($theme_config);
6
-
7
4
  .wlcm-checkbox-group {
8
5
  display: grid;
9
6
  grid-auto-flow: row;
@@ -1,9 +1,6 @@
1
- @use 'sass:map';
2
1
  @use '../../core/utils' as utils;
3
2
 
4
3
  @mixin theme($theme-config) {
5
- $theme: utils.using-theme($theme_config);
6
-
7
4
  .wlcm-checkbox {
8
5
  mat-checkbox {
9
6
  .mdc-checkbox {
@@ -16,7 +13,7 @@
16
13
  }
17
14
 
18
15
  .mdc-checkbox__background {
19
- $border-color: map-get($theme, field-outline-color);
16
+ $border-color: var(--mat-sys-outline-variant);
20
17
  --mdc-checkbox-unselected-focus-icon-color: #{$border-color};
21
18
  width: 16px;
22
19
  height: 16px;
@@ -25,6 +22,7 @@
25
22
  left: 0;
26
23
  border: 1px solid $border-color;
27
24
  border-radius: 4px;
25
+ background-color: var(--mat-sys-surface-container-lowest);
28
26
 
29
27
  .mdc-checkbox__checkmark {
30
28
  transition: 0s;
@@ -33,7 +31,7 @@
33
31
 
34
32
  .mdc-checkbox__checkmark-path {
35
33
  stroke-width: 3px;
36
- stroke: map-get($theme, primary-color);
34
+ stroke: var(--mat-sys-primary);
37
35
  d: path('M 5 11.7 L 11 16.6 L 19 7');
38
36
  }
39
37
 
@@ -56,7 +54,7 @@
56
54
  // States
57
55
  &:hover {
58
56
  .mdc-checkbox__background {
59
- $border-hover-color: map-get($theme, text-black-color);
57
+ $border-hover-color: var(--mat-sys-on-surface);
60
58
  --mdc-checkbox-unselected-focus-icon-color: #{$border-hover-color};
61
59
  border-color: $border-hover-color;
62
60
  }
@@ -64,8 +62,8 @@
64
62
 
65
63
  &.mat-mdc-checkbox-checked {
66
64
  .mdc-checkbox__background {
67
- border-color: map-get($theme, primary-color) !important;
68
- background-color: #ffffff !important;
65
+ border-color: var(--mat-sys-primary) !important;
66
+ background-color: var(--mat-sys-on-primary) !important;
69
67
  }
70
68
  }
71
69
  }
@@ -1,23 +1,12 @@
1
- @use 'sass:map';
2
1
  @use '../../core/utils' as utils;
3
2
 
4
3
  @mixin theme($theme-config) {
5
- $color-config: utils.get-color-config($theme_config);
6
- $primary: map-get($color-config, primary);
7
- $accent: map-get($color-config, accent);
8
- $warn: map-get($color-config, warn);
9
-
10
- $typography-config: utils.get-typography-config($theme_config);
11
- $bold-font-family: utils.get-bold-typography($typography-config);
12
- $medium-font-family: utils.get-medium-typography($typography-config);
13
- $regular-font-family: utils.get-regular-typography($typography-config);
14
-
15
4
  .wlcm-error {
16
5
  display: block;
17
- color: $warn;
6
+ color: var(--mat-sys-error);
18
7
  font-size: 13px;
19
8
  letter-spacing: 0.35px;
20
- font-family: $regular-font-family;
9
+ @include utils.font(regular);
21
10
  line-height: 20px;
22
11
  }
23
12
  }
@@ -1,15 +1,12 @@
1
- @use 'sass:map';
2
1
  @use '../../core/utils' as utils;
3
2
 
4
3
  @mixin theme($theme-config) {
5
- $theme: utils.using-theme($theme_config);
6
-
7
4
  .wlcm-form-field {
8
5
  display: block;
9
6
 
10
7
  &.wlcm-field-focused {
11
8
  .wlcm-field-container {
12
- border-color: map-get($theme, focus-field-outline-color);
9
+ border-color: var(--mat-sys-primary);
13
10
  }
14
11
  }
15
12
 
@@ -24,7 +21,7 @@
24
21
  .wlcm-field-touched.wlcm-field-invalid
25
22
  ) {
26
23
  .wlcm-field-container:hover {
27
- border-color: map-get($theme, hover-field-outline-color);
24
+ border-color: var(--wlcm-hover-field-outline-color);
28
25
  }
29
26
  }
30
27
  }
@@ -32,7 +29,7 @@
32
29
  .wlcm-field-touched {
33
30
  &.wlcm-field-invalid {
34
31
  .wlcm-field-container {
35
- border-color: map-get($theme, warn-color);
32
+ border-color: var(--mat-sys-error);
36
33
  }
37
34
 
38
35
  .wlcm-field-error-container {
@@ -59,10 +56,11 @@
59
56
  display: flex;
60
57
  align-items: center;
61
58
  padding: 6px 8px;
62
- border: 1px solid map-get($theme, field-outline-color);
59
+ border: 1px solid var(--mat-sys-outline-variant);
63
60
  box-sizing: border-box;
64
61
  border-radius: 4px;
65
62
  position: relative;
63
+ background-color: var(--mat-sys-surface-container-lowest);
66
64
  }
67
65
 
68
66
  .wlcm-field-error-container {
@@ -81,11 +79,12 @@
81
79
  width: 100%;
82
80
  font-size: 14px;
83
81
  letter-spacing: 0.41px;
84
- font-family: map-get($theme, regular-font-family);
85
- color: map-get($theme, field-text-color);
82
+ @include utils.font(regular);
83
+ color: var(--mat-sys-on-surface);
84
+ background-color: transparent;
86
85
 
87
86
  &:disabled {
88
- background-color: inherit;
87
+ background-color: transparent;
89
88
  }
90
89
  }
91
90
  }
@@ -1,21 +1,12 @@
1
- @use 'sass:map';
2
1
  @use '../../core/utils' as utils;
3
2
 
4
3
  @mixin theme($theme-config) {
5
- $color-config: utils.get-color-config($theme_config);
6
- $primary: map-get($color-config, primary);
7
- $accent: map-get($color-config, accent);
8
- $warn: map-get($color-config, warn);
9
-
10
- $typography-config: utils.get-typography-config($theme_config);
11
- $bold-font-family: utils.get-bold-typography($typography-config);
12
- $medium-font-family: utils.get-medium-typography($typography-config);
13
- $regular-font-family: utils.get-regular-typography($typography-config);
4
+ $warn: var(--mat-sys-error);
14
5
 
15
6
  .wlcm-label {
16
7
  display: flex;
17
8
  align-items: center;
18
- font-family: $medium-font-family;
9
+ @include utils.font(medium);
19
10
  letter-spacing: 0.41px;
20
11
  line-height: 20px;
21
12
  margin-bottom: 5px;
@@ -1,9 +1,6 @@
1
- @use 'sass:map';
2
1
  @use '../../core/utils' as utils;
3
2
 
4
3
  @mixin theme($theme-config) {
5
- $theme: utils.using-theme($theme_config);
6
-
7
4
  // TODO replace with `wlcm-radio-group`
8
5
  .wlcm-form-field {
9
6
  .mat-mdc-radio-group {
@@ -14,10 +11,9 @@
14
11
  label {
15
12
  cursor: pointer;
16
13
  font-size: 14px;
17
- font-family: map-get($theme, regular-font-family);
18
- color: map-get($theme, text-black-color);
14
+ @include utils.font(regular);
15
+ color: var(--mat-sys-on-surface);
19
16
  -webkit-font-smoothing: initial;
20
- font-weight: normal;
21
17
  }
22
18
 
23
19
  .mat-mdc-radio-touch-target {
@@ -37,6 +33,8 @@
37
33
  &__background {
38
34
  width: 16px;
39
35
  height: 16px;
36
+ background-color: var(--mat-sys-surface-container-lowest);
37
+ border-radius: 50%;
40
38
 
41
39
  &::before {
42
40
  display: none;
@@ -44,21 +42,24 @@
44
42
  }
45
43
 
46
44
  &__inner-circle {
47
- top: -2px;
48
- left: -2px;
45
+ top: 0;
46
+ left: 0;
49
47
  }
50
48
 
51
49
  &__outer-circle {
52
- $border-color: map-get($theme, field-outline-color);
50
+ $border-color: var(--mat-sys-outline-variant);
51
+ --mat-radio-unselected-icon-color: #{$border-color};
53
52
  --mdc-radio-unselected-icon-color: #{$border-color};
54
- border: 1px solid $border-color;
53
+ border-width: 1px;
54
+ border-color: $border-color;
55
55
  }
56
56
  }
57
57
 
58
58
  // States
59
59
  .mdc-form-field:hover {
60
60
  .mdc-radio__outer-circle {
61
- $border-hover-color: map-get($theme, text-black-color);
61
+ $border-hover-color: var(--mat-sys-on-surface);
62
+ --mat-radio-unselected-icon-color: #{$border-hover-color};
62
63
  --mdc-radio-unselected-icon-color: #{$border-hover-color};
63
64
  border: 1px solid $border-hover-color;
64
65
  }
@@ -70,7 +71,7 @@
70
71
  }
71
72
 
72
73
  .mdc-radio__inner-circle {
73
- transform: scale(0.4) !important;
74
+ transform: scale(0.5) !important;
74
75
  }
75
76
  }
76
77
  }
@@ -1,10 +1,7 @@
1
- @use 'sass:map';
2
1
  @use '../../core/utils';
3
2
  @use 'partials/dropdown-panel';
4
3
 
5
4
  @mixin theme($theme-config) {
6
- $theme: utils.using-theme($theme_config);
7
-
8
5
  .wlcm-form-field.wlcm-field-disabled {
9
6
  .wlcm-select {
10
7
  pointer-events: none;
@@ -33,7 +30,7 @@
33
30
  font-size: 14px;
34
31
  -webkit-font-smoothing: initial;
35
32
  letter-spacing: 0.41px;
36
- color: map-get($theme, placeholder-color);
33
+ color: var(--mat-sys-on-surface-variant);
37
34
  }
38
35
  }
39
36
  }
@@ -49,17 +46,17 @@
49
46
  .mat-pseudo-checkbox {
50
47
  width: 16px;
51
48
  height: 16px;
52
- border: 1px solid map-get($theme, field-outline-color);
49
+ border: 1px solid var(--mat-sys-outline-variant);
53
50
  border-radius: 4px;
54
51
 
55
52
  &.mat-pseudo-checkbox-checked {
56
- border-color: map-get($theme, primary-color);
57
- background-color: white;
53
+ border-color: var(--mat-sys-primary);
54
+ background-color: var(--mat-sys-on-primary);
58
55
 
59
56
  &::after {
60
57
  width: 5px;
61
58
  height: 3px;
62
- border-color: map-get($theme, primary-color);
59
+ border-color: var(--mat-sys-primary);
63
60
  top: -1.5px;
64
61
  }
65
62
  }
@@ -1,17 +1,15 @@
1
- @use 'sass:map';
2
1
  @use '../../../core/utils' as utils;
3
2
 
4
3
  @mixin theme($theme-config) {
5
- $theme: utils.using-theme($theme_config);
6
-
7
4
  // Panel (cdk-overlay-pane)
8
- border: 1px solid map-get($theme, focus-field-outline-color);
5
+ border: 1px solid var(--mat-sys-primary);
9
6
  border-radius: 4px;
10
7
  box-shadow: none;
11
8
  overflow: hidden;
12
9
 
13
10
  .mdc-menu-surface {
14
11
  padding: 0;
12
+ background: var(--mat-sys-surface-container-lowest);
15
13
  }
16
14
 
17
15
  // Option
@@ -25,7 +23,7 @@
25
23
  overflow: hidden;
26
24
  text-overflow: ellipsis;
27
25
  white-space: nowrap;
28
- font-family: map-get($theme, regular-font-family);
26
+ @include utils.font(regular);
29
27
  -webkit-font-smoothing: initial;
30
28
  font-size: 14px;
31
29
  letter-spacing: 0.41px;
@@ -34,7 +32,7 @@
34
32
 
35
33
  // States
36
34
  &.mdc-list-item--selected {
37
- background-color: map-get($theme, selected-option-color) !important;
35
+ background-color: var(--mat-sys-primary-container);
38
36
  }
39
37
  }
40
38
  }
@@ -1,9 +1,4 @@
1
- @use 'sass:map';
2
- @use '../../core/utils' as utils;
3
-
4
1
  @mixin theme($theme-config) {
5
- $theme: utils.using-theme($theme_config);
6
-
7
2
  .wlcm-loader {
8
3
  width: 100%;
9
4
  display: block;
@@ -23,13 +18,14 @@
23
18
  }
24
19
 
25
20
  .wlcm-default-loader {
26
- width: 28px;
27
- height: 28px;
21
+ // Size is driven by the loader's `diameter` input via --wlcm-loader-size (default 28px).
22
+ width: var(--wlcm-loader-size, 28px);
23
+ height: var(--wlcm-loader-size, 28px);
28
24
  display: block;
29
25
  position: relative;
30
26
 
31
27
  .spinner {
32
- font-size: 28px;
28
+ font-size: var(--wlcm-loader-size, 28px);
33
29
  position: relative;
34
30
  display: inline-block;
35
31
  width: 1em;
@@ -157,7 +153,7 @@
157
153
 
158
154
  @keyframes spinner-fade {
159
155
  0% {
160
- background-color: map-get($theme, primary-color);
156
+ background-color: currentColor;
161
157
  }
162
158
 
163
159
  100% {
@@ -1,9 +1,4 @@
1
- @use 'sass:map';
2
- @use '../../core/utils' as utils;
3
-
4
1
  @mixin theme($theme-config) {
5
- $theme: utils.using-theme($theme_config);
6
-
7
2
  .wlcm-country-code-select {
8
3
  cursor: pointer;
9
4
 
@@ -1,9 +1,4 @@
1
- @use 'sass:map';
2
- @use '../../core/utils' as utils;
3
-
4
1
  @mixin theme($theme-config) {
5
- $theme: utils.using-theme($theme_config);
6
-
7
2
  .wlcm-phone-input-container {
8
3
  width: 100%;
9
4
  height: 18px;
@@ -15,6 +10,6 @@
15
10
  width: 1.5px;
16
11
  height: 100%;
17
12
  margin: 0 12px;
18
- background: map-get($theme, field-outline-color);
13
+ background: var(--mat-sys-outline-variant);
19
14
  }
20
15
  }
@@ -1,6 +1,2 @@
1
- @use 'sass:map';
2
- @use '../../core/utils' as utils;
3
-
4
1
  @mixin theme($theme-config) {
5
- $theme: utils.using-theme($theme_config);
6
2
  }
@@ -1,4 +1,3 @@
1
- @use 'sass:map';
2
1
  @use '../../core/utils' as utils;
3
2
 
4
3
  @keyframes pass-indicator-animation {
@@ -24,16 +23,14 @@
24
23
  }
25
24
 
26
25
  @mixin theme($theme-config) {
27
- $theme: utils.using-theme($theme_config);
28
-
29
26
  .wlcm-step-header {
30
27
  &.wlcm-step-header-passed {
31
28
  .wlcm-step-header-complete-indicator {
32
- border-color: map-get($theme, primary-color);
29
+ border-color: var(--mat-sys-primary);
33
30
  }
34
31
 
35
32
  .wlcm-step-header-label {
36
- color: map-get($theme, primary-color);
33
+ color: var(--mat-sys-primary);
37
34
  }
38
35
  }
39
36
 
@@ -44,7 +41,7 @@
44
41
  display: block;
45
42
  position: absolute;
46
43
  border-radius: 50%;
47
- background: map-get($theme, primary-color);
44
+ background: var(--mat-sys-primary);
48
45
  animation: complete-indicator-animation 250ms
49
46
  cubic-bezier(0.4, 0, 0.6, 1) forwards;
50
47
  }
@@ -60,7 +57,7 @@
60
57
  height: 2px;
61
58
  display: block;
62
59
  position: absolute;
63
- background: map-get($theme, primary-color);
60
+ background: var(--mat-sys-primary);
64
61
  animation: pass-indicator-animation 250ms cubic-bezier(0.4, 0, 0.6, 1)
65
62
  forwards;
66
63
  }
@@ -88,8 +85,8 @@
88
85
 
89
86
  .wlcm-step-header-label {
90
87
  display: inline-block;
91
- font-family: map-get($theme, bold-font-family);
92
- color: map-get($theme, field-outline-color);
88
+ @include utils.font(bold);
89
+ color: var(--mat-sys-outline-variant);
93
90
  margin-bottom: 5px;
94
91
  line-height: 20px;
95
92
  font-size: 14px;
@@ -106,7 +103,7 @@
106
103
  width: 16px;
107
104
  height: 16px;
108
105
  border-radius: 50%;
109
- border: 2px solid map-get($theme, field-outline-color);
106
+ border: 2px solid var(--mat-sys-outline-variant);
110
107
  box-sizing: border-box;
111
108
  display: flex;
112
109
  align-items: center;
@@ -117,7 +114,7 @@
117
114
  .wlcm-step-header-pass-indicator {
118
115
  flex: 1;
119
116
  height: 2px;
120
- background: map-get($theme, field-outline-color);
117
+ background: var(--mat-sys-outline-variant);
121
118
  position: relative;
122
119
  }
123
120
  }
@@ -1,9 +1,4 @@
1
- @use 'sass:map';
2
- @use '../../core/utils' as utils;
3
-
4
1
  @mixin theme($theme-config) {
5
- $theme: utils.using-theme($theme_config);
6
-
7
2
  .wlcm-step {
8
3
  width: 100%;
9
4
  display: none;
@@ -1,9 +1,4 @@
1
- @use 'sass:map';
2
- @use '../../core/utils' as utils;
3
-
4
1
  @mixin theme($theme-config) {
5
- $theme: utils.using-theme($theme_config);
6
-
7
2
  .wlcm-stepper-header {
8
3
  display: grid;
9
4
  grid-auto-columns: 1fr;
@@ -1,6 +1,2 @@
1
- @use 'sass:map';
2
- @use '../../core/utils' as utils;
3
-
4
1
  @mixin theme($theme-config) {
5
- $theme: utils.using-theme($theme_config);
6
2
  }
@@ -1,19 +1,16 @@
1
- @use 'sass:map';
2
1
  @use '../../core/utils' as utils;
3
2
 
4
3
  @mixin theme($theme-config) {
5
- $theme: utils.using-theme($theme_config);
6
-
7
4
  .wlcm-table-head-data,
8
5
  .wlcm-table-head-actions {
9
6
  min-width: min-content;
10
7
  display: table-cell;
11
8
  vertical-align: inherit;
12
9
  unicode-bidi: isolate;
13
- background: #eceff1;
10
+ background: var(--mat-sys-surface-container);
14
11
  white-space: nowrap;
15
- font-family: map-get($theme, regular-font-family);
16
- color: map-get($theme, placeholder-color);
12
+ @include utils.font(regular);
13
+ color: var(--mat-sys-on-surface-variant);
17
14
  font-size: 14px;
18
15
  height: 32px;
19
16
 
@@ -29,15 +26,15 @@
29
26
  }
30
27
 
31
28
  .wlcm-table-head-data {
32
- padding: 0px 16px;
29
+ padding: 0 16px;
33
30
  }
34
31
 
35
32
  .wlcm-table-head-actions {
36
33
  width: 16px;
37
- padding: 0px 8px;
34
+ padding: 0 8px;
38
35
 
39
36
  & + .wlcm-table-head-data {
40
- padding-left: 0px;
37
+ padding-left: 0;
41
38
  }
42
39
  }
43
40
  }
@@ -1,9 +1,4 @@
1
- @use 'sass:map';
2
- @use '../../core/utils' as utils;
3
-
4
1
  @mixin theme($theme-config) {
5
- $theme: utils.using-theme($theme_config);
6
-
7
2
  .wlcm-table-head {
8
3
  display: table-header-group;
9
4
  vertical-align: middle;
@@ -1,9 +1,4 @@
1
- @use 'sass:map';
2
- @use '../../core/utils' as utils;
3
-
4
1
  @mixin theme($theme-config) {
5
- $theme: utils.using-theme($theme_config);
6
-
7
2
  .wlcm-table-row-data,
8
3
  .wlcm-table-row-actions {
9
4
  display: table-cell;
@@ -12,7 +7,7 @@
12
7
  vertical-align: inherit;
13
8
  unicode-bidi: isolate;
14
9
  box-sizing: border-box;
15
- background: #ffffff;
10
+ background: var(--mat-sys-surface);
16
11
  font-size: 16px;
17
12
 
18
13
  &:first-child {
@@ -41,7 +36,7 @@
41
36
 
42
37
  .wlcm-table-row-selected {
43
38
  .wlcm-table-row-data {
44
- color: map-get($theme, primary-color);
39
+ color: var(--mat-sys-primary);
45
40
  }
46
41
  }
47
42
  }
@@ -1,9 +1,4 @@
1
- @use 'sass:map';
2
- @use '../../core/utils' as utils;
3
-
4
1
  @mixin theme($theme-config) {
5
- $theme: utils.using-theme($theme_config);
6
-
7
2
  .wlcm-table-row {
8
3
  display: table-row;
9
4
  vertical-align: inherit;
@@ -1,9 +1,4 @@
1
- @use 'sass:map';
2
- @use '../../core/utils' as utils;
3
-
4
1
  @mixin theme($theme-config) {
5
- $theme: utils.using-theme($theme_config);
6
-
7
2
  .wlcm-table {
8
3
  width: 100%;
9
4
  display: table;
@@ -1,5 +1,4 @@
1
- @use 'sass:map';
2
- @use 'utils' as utils;
1
+ @use 'tokens' as tokens;
3
2
  @use '../components/common/index' as common;
4
3
  @use '../components/forms/index' as forms;
5
4
  @use '../components/button/index' as button;
@@ -11,7 +10,13 @@
11
10
  @use '../components/loader/index' as loader;
12
11
  @use '../components/table/index' as table;
13
12
 
14
- @mixin all-component-themes($theme-config) {
13
+ @mixin theme($theme-config) {
14
+ // Emit the `--wlcm-*` token contract; `emit-tokens` owns its own selectors
15
+ // (`:root` for light, plus `prefers-color-scheme` / `[data-theme]` blocks for
16
+ // dark) so component styles below can consume the `--wlcm-*` / `--mat-sys-*`
17
+ // `var()` references directly under either scheme.
18
+ @include tokens.emit-tokens($theme-config);
19
+
15
20
  @include common.theme($theme-config);
16
21
  @include forms.theme($theme-config);
17
22
  @include button.theme($theme-config);