@inchurch/matcha-theme 20.0.11 → 20.277.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 (116) hide show
  1. package/abstracts/_colors.scss +404 -404
  2. package/abstracts/_elevation.scss +102 -102
  3. package/abstracts/_functions.scss +1186 -1212
  4. package/abstracts/_media-breakpoint.scss +23 -23
  5. package/abstracts/_theme-api.scss +230 -0
  6. package/abstracts/_typography.scss +127 -127
  7. package/base/_reset.scss +438 -438
  8. package/components/app-page-header.scss +259 -0
  9. package/components/matcha-accordion.scss +293 -157
  10. package/components/matcha-audio-player.scss +1 -2
  11. package/components/matcha-autocomplete.scss +10 -11
  12. package/components/matcha-avatar.scss +173 -33
  13. package/components/matcha-badge.scss +15 -15
  14. package/components/matcha-breadcrumb.scss +231 -126
  15. package/components/matcha-button-toggle.scss +46 -2
  16. package/components/matcha-buttons.scss +908 -784
  17. package/components/matcha-calendar.scss +99 -35
  18. package/components/matcha-cards.scss +58 -33
  19. package/components/matcha-chart-card.scss +5 -12
  20. package/components/matcha-checkbox.scss +191 -490
  21. package/components/matcha-chip.scss +297 -212
  22. package/components/matcha-color-pick.scss +1 -2
  23. package/components/matcha-command-palette.scss +290 -63
  24. package/components/matcha-crop.scss +406 -172
  25. package/components/matcha-date.scss +81 -81
  26. package/components/matcha-divider.scss +86 -31
  27. package/components/matcha-draggable.scss +4 -5
  28. package/components/matcha-drawer.scss +207 -66
  29. package/components/matcha-drop-image.scss +14 -0
  30. package/components/matcha-drop-list.scss +87 -47
  31. package/components/matcha-emoji.scss +2 -2
  32. package/components/matcha-empty-state.scss +195 -83
  33. package/components/matcha-file-uploader.scss +462 -0
  34. package/components/matcha-flag.scss +93 -52
  35. package/components/matcha-footer.scss +67 -164
  36. package/components/matcha-form-field.scss +55 -3
  37. package/components/matcha-form-section.scss +100 -101
  38. package/components/matcha-header.scss +134 -325
  39. package/components/matcha-highlight.scss +65 -197
  40. package/components/matcha-hint-text.scss +25 -4
  41. package/components/matcha-horizontal-tree.scss +316 -317
  42. package/components/matcha-icon.scss +37 -45
  43. package/components/matcha-image.scss +2 -3
  44. package/components/matcha-list.scss +14 -15
  45. package/components/matcha-menu.scss +15 -2
  46. package/components/matcha-modal.scss +59 -86
  47. package/components/matcha-nav.scss +362 -231
  48. package/components/matcha-notification.scss +412 -197
  49. package/components/matcha-option.scss +98 -23
  50. package/components/matcha-page-builder.scss +16 -16
  51. package/components/matcha-paginator.scss +688 -235
  52. package/components/matcha-panel.scss +42 -27
  53. package/components/matcha-profile-card.scss +50 -50
  54. package/components/matcha-progress-bar.scss +257 -153
  55. package/components/matcha-radio.scss +244 -452
  56. package/components/matcha-scrollbar.scss +1 -2
  57. package/components/matcha-scrollbox-shadow.scss +120 -122
  58. package/components/matcha-section.scss +5 -9
  59. package/components/matcha-select-multiple.scss +56 -0
  60. package/components/matcha-select.scss +10 -10
  61. package/components/matcha-skeleton.scss +24 -7
  62. package/components/matcha-slide-toggle.scss +80 -301
  63. package/components/matcha-slider.scss +174 -77
  64. package/components/matcha-snack-bar.scss +123 -131
  65. package/components/matcha-spin.scss +12 -103
  66. package/components/matcha-spinner.scss +76 -57
  67. package/components/matcha-status-pill.scss +82 -0
  68. package/components/matcha-stepper.scss +376 -177
  69. package/components/matcha-table.scss +568 -785
  70. package/components/matcha-tabs.scss +622 -469
  71. package/components/matcha-text-editor.scss +78 -78
  72. package/components/matcha-time.scss +2 -2
  73. package/components/matcha-toolbar.scss +359 -206
  74. package/components/matcha-tooltip.scss +158 -62
  75. package/components/matcha-tree-view.scss +189 -0
  76. package/fonts/manrope/manrope-latin-ext.woff2 +0 -0
  77. package/fonts/manrope/manrope-latin.woff2 +0 -0
  78. package/layout/matcha-page-layout.scss +4 -4
  79. package/main.scss +237 -265
  80. package/package.json +1 -1
  81. package/tokens/_animations-tokens.scss +37 -37
  82. package/tokens/_breakpoints-tokens.scss +35 -26
  83. package/tokens/_color-tokens.scss +1149 -1152
  84. package/tokens/_css-custom-properties.scss +704 -568
  85. package/tokens/_primitives.scss +82 -0
  86. package/tokens/_semantic-aliases.scss +120 -0
  87. package/tokens/_spacing-tokens.scss +94 -94
  88. package/vendors/angular-editor.scss +56 -56
  89. package/vendors/angular-material-fixes.scss +297 -297
  90. package/vendors/charts.scss +92 -92
  91. package/vendors/ng5-slider.scss +56 -56
  92. package/vendors/ngx-material-timepicker.scss +50 -50
  93. package/components/matcha-uploader.scss +0 -215
  94. package/fonts/CircularStd-Black.eot +0 -0
  95. package/fonts/CircularStd-Black.svg +0 -3426
  96. package/fonts/CircularStd-Black.ttf +0 -0
  97. package/fonts/CircularStd-Black.woff +0 -0
  98. package/fonts/CircularStd-Black.woff2 +0 -0
  99. package/fonts/CircularStd-Bold.eot +0 -0
  100. package/fonts/CircularStd-Bold.otf +0 -0
  101. package/fonts/CircularStd-Bold.svg +0 -13532
  102. package/fonts/CircularStd-Bold.ttf +0 -0
  103. package/fonts/CircularStd-Bold.woff +0 -0
  104. package/fonts/CircularStd-Bold.woff2 +0 -0
  105. package/fonts/CircularStd-Medium.eot +0 -0
  106. package/fonts/CircularStd-Medium.otf +0 -0
  107. package/fonts/CircularStd-Medium.svg +0 -13511
  108. package/fonts/CircularStd-Medium.ttf +0 -0
  109. package/fonts/CircularStd-Medium.woff +0 -0
  110. package/fonts/CircularStd-Medium.woff2 +0 -0
  111. package/fonts/CircularStd-Regular.eot +0 -0
  112. package/fonts/CircularStd-Regular.otf +0 -0
  113. package/fonts/CircularStd-Regular.svg +0 -2378
  114. package/fonts/CircularStd-Regular.ttf +0 -0
  115. package/fonts/CircularStd-Regular.woff +0 -0
  116. package/fonts/CircularStd-Regular.woff2 +0 -0
@@ -23,7 +23,7 @@
23
23
  input[type="checkbox"] {
24
24
  &::before {
25
25
  background-color: transparent;
26
- border-color: var(--matcha-color-text-label, #{getGrey($theme)});
26
+ border-color: var(--matcha-color-text-label);
27
27
  }
28
28
 
29
29
  &::after {
@@ -37,356 +37,90 @@
37
37
  &[color="accent"] {
38
38
  // [3.1-A] color no label → currentColor para o state layer
39
39
  label {
40
- color: var(--matcha-color-accent, #{getAccent($theme)});
40
+ color: var(--matcha-color-accent);
41
41
  }
42
42
 
43
43
  input[type="checkbox"] {
44
44
  &:checked {
45
45
  &::before {
46
- background-color: var(--matcha-color-accent, #{getAccent($theme)});
47
- border-color: var(--matcha-color-accent, #{getAccent($theme)});
46
+ background-color: var(--matcha-color-accent);
47
+ border-color: var(--matcha-color-accent);
48
48
  }
49
49
 
50
50
  &::after {
51
- background-color: getAccentContrast($theme);
51
+ background-color: var(--matcha-color-accent-contrast);
52
52
  }
53
53
  }
54
54
  }
55
55
  }
56
56
 
57
- // ── Paleta: red ────────────────────────────────────────────────────
58
- &[color="red"] {
59
- label { color: getRed($theme); } // [3.1-A]
60
-
61
- input[type="checkbox"]:checked::before {
62
- background-color: getRed($theme);
63
- border-color: getRed($theme);
64
- }
65
-
66
- input[type="checkbox"]:checked::after {
67
- background-color: getRedContrast($theme);
68
- }
69
- }
70
-
71
- // ── Paleta: pink ───────────────────────────────────────────────────
72
- &[color="pink"] {
73
- label { color: getPink($theme); } // [3.1-A]
74
-
75
- input[type="checkbox"]:checked::before {
76
- background-color: getPink($theme);
77
- border-color: getPink($theme);
78
- }
79
-
80
- input[type="checkbox"]:checked::after {
81
- background-color: getPinkContrast($theme);
82
- }
83
- }
84
-
85
- // ── Paleta: purple ─────────────────────────────────────────────────
86
- &[color="purple"] {
87
- label { color: getPurple($theme); } // [3.1-A]
88
-
89
- input[type="checkbox"]:checked::before {
90
- background-color: getPurple($theme);
91
- border-color: getPurple($theme);
92
- }
93
-
94
- input[type="checkbox"]:checked::after {
95
- background-color: getPurpleContrast($theme);
96
- }
97
- }
98
-
99
- // ── Paleta: deep-purple ────────────────────────────────────────────
100
- &[color="deep-purple"] {
101
- label { color: getDeepPurple($theme); } // [3.1-A]
102
-
103
- input[type="checkbox"]:checked::before {
104
- background-color: getDeepPurple($theme);
105
- border-color: getDeepPurple($theme);
106
- }
107
-
108
- input[type="checkbox"]:checked::after {
109
- background-color: getDeepPurpleContrast($theme);
110
- }
111
- }
112
-
113
- // ── Paleta: indigo ─────────────────────────────────────────────────
114
- &[color="indigo"] {
115
- label { color: getIndigo($theme); } // [3.1-A]
116
-
117
- input[type="checkbox"]:checked::before {
118
- background-color: getIndigo($theme);
119
- border-color: getIndigo($theme);
120
- }
121
-
122
- input[type="checkbox"]:checked::after {
123
- background-color: getIndigoContrast($theme);
124
- }
125
- }
126
-
127
- // ── Paleta: blue ───────────────────────────────────────────────────
128
- &[color="blue"] {
129
- label { color: getBlue($theme); } // [3.1-A]
130
-
131
- input[type="checkbox"]:checked::before {
132
- background-color: getBlue($theme);
133
- border-color: getBlue($theme);
134
- }
135
-
136
- input[type="checkbox"]:checked::after {
137
- background-color: getBlueContrast($theme);
138
- }
139
- }
140
-
141
- // ── Paleta: light-blue ─────────────────────────────────────────────
142
- &[color="light-blue"] {
143
- label { color: getLightBlue($theme); } // [3.1-A]
144
-
145
- input[type="checkbox"]:checked::before {
146
- background-color: getLightBlue($theme);
147
- border-color: getLightBlue($theme);
148
- }
149
-
150
- input[type="checkbox"]:checked::after {
151
- background-color: getLightBlueContrast($theme);
152
- }
153
- }
154
-
155
- // ── Paleta: cyan ───────────────────────────────────────────────────
156
- &[color="cyan"] {
157
- label { color: getCyan($theme); } // [3.1-A]
158
-
159
- input[type="checkbox"]:checked::before {
160
- background-color: getCyan($theme);
161
- border-color: getCyan($theme);
162
- }
163
-
164
- input[type="checkbox"]:checked::after {
165
- background-color: getCyanContrast($theme);
166
- }
167
- }
168
-
169
- // ── Paleta: teal ───────────────────────────────────────────────────
170
- &[color="teal"] {
171
- label { color: getTeal($theme); } // [3.1-A]
172
-
173
- input[type="checkbox"]:checked::before {
174
- background-color: getTeal($theme);
175
- border-color: getTeal($theme);
176
- }
177
-
178
- input[type="checkbox"]:checked::after {
179
- background-color: getTealContrast($theme);
180
- }
181
- }
182
-
183
- // ── Paleta: green ──────────────────────────────────────────────────
184
- &[color="green"] {
185
- label { color: getGreen($theme); } // [3.1-A]
186
-
187
- input[type="checkbox"]:checked::before {
188
- background-color: getGreen($theme);
189
- border-color: getGreen($theme);
190
- }
191
-
192
- input[type="checkbox"]:checked::after {
193
- background-color: getGreenContrast($theme);
194
- }
195
- }
196
-
197
- // ── Paleta: light-green ────────────────────────────────────────────
198
- &[color="light-green"] {
199
- label { color: getLightGreen($theme); } // [3.1-A]
200
-
201
- input[type="checkbox"]:checked::before {
202
- background-color: getLightGreen($theme);
203
- border-color: getLightGreen($theme);
204
- }
205
-
206
- input[type="checkbox"]:checked::after {
207
- background-color: getLightGreenContrast($theme);
208
- }
209
- }
210
-
211
- // ── Paleta: lime ───────────────────────────────────────────────────
212
- &[color="lime"] {
213
- label { color: getLime($theme); } // [3.1-A]
214
-
215
- input[type="checkbox"]:checked::before {
216
- background-color: getLime($theme);
217
- border-color: getLime($theme);
218
- }
219
-
220
- input[type="checkbox"]:checked::after {
221
- background-color: getLimeContrast($theme);
222
- }
223
- }
224
-
225
- // ── Paleta: yellow ─────────────────────────────────────────────────
226
- &[color="yellow"] {
227
- label { color: getYellow($theme); } // [3.1-A]
228
-
229
- input[type="checkbox"]:checked::before {
230
- background-color: getYellow($theme);
231
- border-color: getYellow($theme);
232
- }
233
-
234
- input[type="checkbox"]:checked::after {
235
- background-color: getYellowContrast($theme);
236
- }
237
- }
238
-
239
- // ── Paleta: amber ──────────────────────────────────────────────────
240
- &[color="amber"] {
241
- label { color: getAmber($theme); } // [3.1-A]
242
-
243
- input[type="checkbox"]:checked::before {
244
- background-color: getAmber($theme);
245
- border-color: getAmber($theme);
246
- }
247
-
248
- input[type="checkbox"]:checked::after {
249
- background-color: getAmberContrast($theme);
250
- }
251
- }
252
-
253
- // ── Paleta: orange ─────────────────────────────────────────────────
254
- &[color="orange"] {
255
- label { color: getOrange($theme); } // [3.1-A]
256
-
257
- input[type="checkbox"]:checked::before {
258
- background-color: getOrange($theme);
259
- border-color: getOrange($theme);
260
- }
261
-
262
- input[type="checkbox"]:checked::after {
263
- background-color: getOrangeContrast($theme);
264
- }
265
- }
266
-
267
- // ── Paleta: deep-orange ────────────────────────────────────────────
268
- &[color="deep-orange"] {
269
- label { color: getDeepOrange($theme); } // [3.1-A]
270
-
271
- input[type="checkbox"]:checked::before {
272
- background-color: getDeepOrange($theme);
273
- border-color: getDeepOrange($theme);
274
- }
275
-
276
- input[type="checkbox"]:checked::after {
277
- background-color: getDeepOrangeContrast($theme);
278
- }
279
- }
280
-
281
- // ── Paleta: brown ──────────────────────────────────────────────────
282
- &[color="brown"] {
283
- label { color: getBrown($theme); } // [3.1-A]
284
-
285
- input[type="checkbox"]:checked::before {
286
- background-color: getBrown($theme);
287
- border-color: getBrown($theme);
288
- }
289
-
290
- input[type="checkbox"]:checked::after {
291
- background-color: getBrownContrast($theme);
292
- }
293
- }
294
-
295
- // ── Paleta: grey ───────────────────────────────────────────────────
296
- &[color="grey"] {
297
- label { color: getGrey($theme); } // [3.1-A]
298
-
299
- input[type="checkbox"]:checked::before {
300
- background-color: getGrey($theme);
301
- border-color: getGrey($theme);
302
- }
303
-
304
- input[type="checkbox"]:checked::after {
305
- background-color: getGreyContrast($theme);
306
- }
307
- }
308
-
309
- // ── Paleta: blue-grey ──────────────────────────────────────────────
310
- &[color="blue-grey"] {
311
- label { color: getBlueGrey($theme); } // [3.1-A]
312
-
313
- input[type="checkbox"]:checked::before {
314
- background-color: getBlueGrey($theme);
315
- border-color: getBlueGrey($theme);
316
- }
317
-
318
- input[type="checkbox"]:checked::after {
319
- background-color: getBlueGreyContrast($theme);
320
- }
321
- }
322
-
323
57
  // ── Semântica: primary ─────────────────────────────────────────────
324
58
  &[color="primary"] {
325
- label { color: var(--matcha-color-primary, #{getPrimary($theme)}); } // [3.1-A]
59
+ label { color: var(--matcha-color-primary); } // [3.1-A]
326
60
 
327
61
  input[type="checkbox"]:checked::before {
328
- background-color: var(--matcha-color-primary, #{getPrimary($theme)});
329
- border-color: var(--matcha-color-primary, #{getPrimary($theme)});
62
+ background-color: var(--matcha-color-primary);
63
+ border-color: var(--matcha-color-primary);
330
64
  }
331
65
 
332
66
  input[type="checkbox"]:checked::after {
333
- background-color: getPrimaryContrast($theme);
67
+ background-color: var(--matcha-color-primary-contrast);
334
68
  }
335
69
  }
336
70
 
337
71
  // ── Semântica: success ─────────────────────────────────────────────
338
72
  &[color="success"] {
339
- label { color: getSuccess($theme); } // [3.1-A]
73
+ label { color: var(--matcha-color-success); } // [3.1-A]
340
74
 
341
75
  input[type="checkbox"]:checked::before {
342
- background-color: getSuccess($theme);
343
- border-color: getSuccess($theme);
76
+ background-color: var(--matcha-color-success);
77
+ border-color: var(--matcha-color-success);
344
78
  }
345
79
 
346
80
  input[type="checkbox"]:checked::after {
347
- background-color: getSuccessContrast($theme);
81
+ background-color: var(--matcha-color-success-contrast);
348
82
  }
349
83
  }
350
84
 
351
85
  // ── Semântica: warn ────────────────────────────────────────────────
352
86
  &[color="warn"] {
353
- label { color: getWarn($theme); } // [3.1-A]
87
+ label { color: var(--matcha-color-warn); } // [3.1-A]
354
88
 
355
89
  input[type="checkbox"]:checked::before {
356
- background-color: getWarn($theme);
357
- border-color: getWarn($theme);
90
+ background-color: var(--matcha-color-warn);
91
+ border-color: var(--matcha-color-warn);
358
92
  }
359
93
 
360
94
  input[type="checkbox"]:checked::after {
361
- background-color: getWarnContrast($theme);
95
+ background-color: var(--matcha-color-warn-contrast);
362
96
  }
363
97
  }
364
98
 
365
99
  // ── Semântica: danger ──────────────────────────────────────────────
366
100
  &[color="danger"] {
367
- label { color: getDanger($theme); } // [3.1-A]
101
+ label { color: var(--matcha-color-danger); } // [3.1-A]
368
102
 
369
103
  input[type="checkbox"]:checked::before {
370
- background-color: getDanger($theme);
371
- border-color: getDanger($theme);
104
+ background-color: var(--matcha-color-danger);
105
+ border-color: var(--matcha-color-danger);
372
106
  }
373
107
 
374
108
  input[type="checkbox"]:checked::after {
375
- background-color: getDangerContrast($theme);
109
+ background-color: var(--matcha-color-danger-contrast);
376
110
  }
377
111
  }
378
112
 
379
113
  // ── Semântica: info ────────────────────────────────────────────────
380
114
  &[color="info"] {
381
- label { color: getInfo($theme); } // [3.1-A]
115
+ label { color: var(--matcha-color-info); } // [3.1-A]
382
116
 
383
117
  input[type="checkbox"]:checked::before {
384
- background-color: getInfo($theme);
385
- border-color: getInfo($theme);
118
+ background-color: var(--matcha-color-info);
119
+ border-color: var(--matcha-color-info);
386
120
  }
387
121
 
388
122
  input[type="checkbox"]:checked::after {
389
- background-color: getInfoContrast($theme);
123
+ background-color: var(--matcha-color-info-contrast);
390
124
  }
391
125
  }
392
126
 
@@ -395,12 +129,12 @@
395
129
  &[error] {
396
130
  input[type="checkbox"] {
397
131
  &::before {
398
- border-color: var(--matcha-color-danger, #{getDanger($theme)});
132
+ border-color: var(--matcha-color-danger);
399
133
  }
400
134
 
401
135
  &:checked::before {
402
- background-color: var(--matcha-color-danger, #{getDanger($theme)});
403
- border-color: var(--matcha-color-danger, #{getDanger($theme)});
136
+ background-color: var(--matcha-color-danger);
137
+ border-color: var(--matcha-color-danger);
404
138
  }
405
139
  }
406
140
  }
@@ -418,17 +152,17 @@
418
152
  // ── [3.1-C] Disabled — tokens semânticos (sem opacity no host) ─────
419
153
  &[disabled] {
420
154
  label {
421
- color: var(--matcha-color-disabled-fg, #{getDisabledBgContrast($theme)});
155
+ color: var(--matcha-color-disabled-fg);
422
156
  }
423
157
 
424
158
  input[type="checkbox"] {
425
159
  &::before {
426
- background-color: var(--matcha-color-disabled-bg, #{getDisabled($theme)});
427
- border-color: var(--matcha-color-disabled-bg, #{getDisabled($theme)});
160
+ background-color: var(--matcha-color-disabled-bg);
161
+ border-color: var(--matcha-color-disabled-bg);
428
162
  }
429
163
 
430
164
  &::after {
431
- background-color: var(--matcha-color-disabled-fg, #{getDisabledBgContrast($theme)});
165
+ background-color: var(--matcha-color-disabled-fg);
432
166
  }
433
167
  }
434
168
  }
@@ -438,13 +172,13 @@
438
172
  // tem focus-visible (keyboard nav), não em :focus geral (mouse click).
439
173
  label:has(input:focus-visible) {
440
174
  outline: var(--matcha-state-focus-ring-width, 2px) solid
441
- var(--matcha-color-primary, #{getPrimary($theme)});
175
+ var(--matcha-color-primary);
442
176
  outline-offset: var(--matcha-state-focus-ring-offset, 2px);
443
177
  }
444
178
 
445
- // Label padrão — Figma: text-primary (não text-label cinza)
179
+ // Label padrão — Figma: text-primary. Slot pra consumer override.
446
180
  .matcha-slide-toggle-label {
447
- color: var(--matcha-color-text-primary);
181
+ color: var(--matcha-slide-toggle-label-color, var(--matcha-color-text-primary));
448
182
  }
449
183
  }
450
184
  }
@@ -588,3 +322,48 @@ matcha-slide-toggle {
588
322
  label::before { transition: none; }
589
323
  }
590
324
  }
325
+
326
+ // ── Forced colors ──
327
+ @media (forced-colors: active) {
328
+ matcha-slide-toggle,
329
+ .matcha-slide-toggle {
330
+ input[type="checkbox"] {
331
+ // Track
332
+ &::before {
333
+ background: Canvas !important;
334
+ border: 1px solid CanvasText !important;
335
+ }
336
+
337
+ // Thumb
338
+ &::after {
339
+ background: ButtonFace !important;
340
+ border: 1px solid CanvasText !important;
341
+ }
342
+
343
+ &:checked::before {
344
+ background: Highlight !important;
345
+ border-color: Highlight !important;
346
+ }
347
+
348
+ &:focus-visible::before {
349
+ outline: 2px solid CanvasText !important;
350
+ outline-offset: 2px;
351
+ }
352
+
353
+ &:disabled::before,
354
+ &:disabled::after {
355
+ border-color: GrayText !important;
356
+ }
357
+ }
358
+ }
359
+ }
360
+
361
+ // ── Print ──
362
+ @media print {
363
+ matcha-slide-toggle,
364
+ .matcha-slide-toggle {
365
+ input[type="checkbox"] {
366
+ &::before { border: 1px solid currentColor !important; }
367
+ }
368
+ }
369
+ }