@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
@@ -1,23 +1,33 @@
1
1
  // =============================================================================
2
- // matcha-option.scss — Dropdown option item
3
- // Aligned with Figma matcha/option (7 states, tokenized)
2
+ // matcha-option.scss — Item selecionável (dropdowns, menus, drawer)
3
+ // Aligned with Figma DSV3 matcha/option (7 estados, tokenized accent)
4
+ // Node: 14237:113
4
5
  // =============================================================================
5
6
 
6
7
  // ── Structural (outside mixin) ──────────────────────────────────────────────
7
8
 
8
9
  .matcha-option {
9
- // Figma matcha/option: pad 12/16, gap 16, h 44
10
+ // Figma matcha/option: pad 12/16, gap 16, min-height 48
10
11
  position: relative;
11
12
  display: flex;
12
13
  align-items: center;
13
14
  gap: var(--matcha-space-200, 16px);
14
15
  padding: var(--matcha-space-150, 12px) var(--matcha-space-200, 16px);
15
- min-height: var(--matcha-option-height, 44px);
16
+ min-height: var(--matcha-option-height, 48px);
16
17
  box-sizing: border-box;
17
18
  cursor: pointer;
18
19
  border-radius: var(--matcha-radius-md, 4px);
19
20
  margin: var(--matcha-space-025, 2px) var(--matcha-space-050, 4px);
20
- transition: background-color var(--matcha-duration-instant, 80ms) ease;
21
+ transition:
22
+ background-color var(--matcha-duration-instant, 80ms) ease,
23
+ box-shadow var(--matcha-duration-instant, 80ms) ease;
24
+
25
+ // Touch: força click imediato (sem aguardar 300ms de double-tap) e impede
26
+ // o browser de interpretar tap leve como scroll dentro de containers com
27
+ // overflow-y: auto (dropdowns, command-palette, autocomplete results).
28
+ // Sem isso, click em touchscreen e DevTools touch-emulation às vezes não
29
+ // chega no @HostListener('click') da matcha-option.
30
+ touch-action: manipulation;
21
31
 
22
32
  // Disabled — pointer/cursor only
23
33
  &[aria-disabled="true"],
@@ -39,57 +49,122 @@
39
49
  color: var(--matcha-color-text-primary);
40
50
  background: transparent;
41
51
 
42
- // ── Hover direto no background (sem state layer tipo 2021) ──
43
- &:hover:not([aria-disabled="true"]):not([disabled]):not(.matcha-option-disabled) {
44
- background: var(--matcha-color-surface-bg);
52
+ // ── Hover (não selected) state-layer/hover 8% ──
53
+ &:hover:not([aria-disabled="true"]):not([disabled]):not(.matcha-option-disabled):not([aria-selected="true"]) {
54
+ background: color-mix(
55
+ in srgb,
56
+ var(--matcha-color-state-layer-fg) calc(var(--matcha-state-layer-hover, 0.08) * 100%),
57
+ transparent
58
+ );
45
59
  }
46
60
 
47
- // ── Selected — tint primary + weight medium + inset marker lateral ──
61
+ // ── Selected — accent/alpha ──
48
62
  &[aria-selected="true"] {
49
- background: var(--matcha-color-primary-surface-hover);
50
- color: var(--matcha-color-primary);
63
+ background: var(--matcha-color-accent-alpha);
51
64
  font-weight: var(--matcha-weight-medium, 500);
52
65
 
53
- // Hover sobre selected: intensifica o tint primary
66
+ // Hover sobre selected accent/surface-hover (mais opaco)
54
67
  &:hover:not([aria-disabled="true"]) {
55
- background: var(--matcha-color-primary-surface-pressed);
68
+ background: var(--matcha-color-accent-surface-hover);
56
69
  }
57
70
  }
58
71
 
59
72
  // ── Danger ──
60
73
  &.matcha-option--danger {
61
- color: var(--matcha-color-danger, #{getDanger($theme)});
74
+ color: var(--matcha-color-danger);
62
75
 
63
76
  &:hover:not([aria-disabled="true"]) {
64
- background: var(--matcha-color-danger-surface-hover, rgba(211, 47, 47, 0.08));
77
+ background: var(--matcha-color-danger-surface-hover);
65
78
  }
66
79
  }
67
80
 
68
- // ── Disabled ──
81
+ // ── Disabled — Figma DSV3 matcha/option: opacity 0.5 (não 0.38 do token global) ──
82
+ // O componente Figma especifica 0.5 explicitamente — visualmente mais leve do que
83
+ // 0.38 do --matcha-opacity-disabled (Material 3 default). Mantemos fidelidade ao Figma.
69
84
  &[aria-disabled="true"],
70
85
  &[disabled],
71
86
  &.matcha-option-disabled {
72
87
  color: var(--matcha-color-interaction-disabled-fg);
73
- opacity: var(--matcha-opacity-disabled, 0.38);
88
+ opacity: var(--matcha-opacity-option-disabled, 0.5);
74
89
  background: transparent;
75
90
  }
76
91
 
77
- // ── Focus ring ──
92
+ // ── Focused border 2px primary/default (Figma DSV3) sem deslocar layout ──
93
+ // outline-offset negativo simula border interno sem afetar box-sizing.
78
94
  &:focus-visible:not([aria-disabled="true"]):not([disabled]):not(.matcha-option-disabled) {
79
95
  outline: var(--matcha-state-focus-ring-width, 2px) solid var(--matcha-color-primary);
80
- outline-offset: var(--matcha-state-focus-ring-offset, 2px);
96
+ outline-offset: calc(-1 * var(--matcha-state-focus-ring-width, 2px));
81
97
  }
82
98
 
83
99
  // ── Keyboard highlight (cursor de navegação, orthogonal a selected) ──
84
100
  // Aplicado pelo matcha-select ao navegar com ArrowUp/Down.
85
- // Hover-like mas um pouco mais intenso pra destacar a posição atual.
86
101
  &.matcha-option-highlighted:not([aria-disabled="true"]):not([disabled]) {
87
- background: var(--matcha-color-surface-hover);
102
+ background: color-mix(
103
+ in srgb,
104
+ var(--matcha-color-state-layer-fg) calc(var(--matcha-state-layer-hover, 0.08) * 100%),
105
+ transparent
106
+ );
88
107
 
89
- // Combinado com selected: mantém tint primary + leve inset
108
+ // Combinado com selected: mantém tint accent + leve intensificação
90
109
  &[aria-selected="true"] {
91
- background: var(--matcha-color-primary-surface-pressed);
110
+ background: var(--matcha-color-accent-surface-hover);
111
+ }
112
+ }
113
+
114
+ // ── Modo múltiplo (matcha-select-multiple) — checkbox à esquerda ──
115
+ // O realce do item marcado é o próprio checkbox; por isso o fundo
116
+ // accent/alpha do single-select é neutralizado quando não há hover/cursor.
117
+ &.matcha-option-multiple {
118
+ gap: var(--matcha-space-100, 8px);
119
+
120
+ &[aria-selected="true"]:not(:hover):not(.matcha-option-highlighted) {
121
+ background: transparent;
122
+ }
123
+
124
+ .matcha-option-checkbox {
125
+ display: inline-flex;
126
+ align-items: center;
127
+ // Checkbox é puramente visual: o clique cai no host matcha-option,
128
+ // que faz o toggle (tanto na opção quanto sobre o checkbox).
129
+ pointer-events: none;
92
130
  }
93
131
  }
94
132
  }
95
133
  }
134
+
135
+ // ── Forced colors ──
136
+ @media (forced-colors: active) {
137
+ matcha-option {
138
+ color: CanvasText !important;
139
+
140
+ &:hover:not(.is-disabled):not([disabled]) {
141
+ background: SelectedItem !important;
142
+ color: SelectedItemText !important;
143
+ }
144
+
145
+ &.is-active,
146
+ &[active],
147
+ &[aria-selected="true"] {
148
+ background: Highlight !important;
149
+ color: HighlightText !important;
150
+ }
151
+
152
+ &:focus-visible {
153
+ outline: 2px solid CanvasText !important;
154
+ outline-offset: -2px;
155
+ }
156
+
157
+ &.is-disabled,
158
+ &[disabled] {
159
+ color: GrayText !important;
160
+ }
161
+ }
162
+ }
163
+
164
+ // ── Print ──
165
+ // Options são parte de UI interativa — não renderizam em papel.
166
+ @media print {
167
+ matcha-option {
168
+ display: none !important;
169
+ }
170
+ }
@@ -10,25 +10,25 @@
10
10
  min-height: 800px;
11
11
  width: 100%;
12
12
 
13
- --gjs-main-color: #{getSurface($theme)};
14
- --gjs-primary-color: #{getBackground($theme)};
15
- --gjs-secondary-color: #{getBlueGrey($theme)};
16
- --gjs-tertiary-color: #{getSurface($theme)};
17
- --gjs-quaternary-color: #{getAccent($theme)};
18
-
19
- --gjs-main-dark-color: #{getSurfaceAlpha($theme)};
20
- --gjs-secondary-dark-color: #{getSurface($theme)};
21
- --gjs-quaternary-dark-color: #{getAccentAlpha($theme)};
22
-
23
- --gjs-font-color: #{getForeground($theme)};
24
- --gjs-font-color-active: #{getForegroundAlpha($theme)};
13
+ --gjs-main-color: var(--matcha-color-surface);
14
+ --gjs-primary-color: var(--matcha-color-bg);
15
+ --gjs-secondary-color: var(--matcha-color-text-hint);
16
+ --gjs-tertiary-color: var(--matcha-color-surface);
17
+ --gjs-quaternary-color: var(--matcha-color-accent);
18
+
19
+ --gjs-main-dark-color: var(--matcha-color-surface-card-alpha);
20
+ --gjs-secondary-dark-color: var(--matcha-color-surface);
21
+ --gjs-quaternary-dark-color: var(--matcha-color-accent-alpha);
22
+
23
+ --gjs-font-color: var(--matcha-color-fg);
24
+ --gjs-font-color-active: var(--matcha-color-fg-alpha);
25
25
  --gjs-main-light-color: rgba(255, 255, 255, 0.1);
26
26
  --gjs-secondary-light-color: rgba(255, 255, 255, 0.7);
27
27
  --gjs-soft-light-color: rgba(255, 255, 255, 0.015);
28
- --gjs-color-blue: #{getBlue($theme)};
29
- --gjs-color-red: #{getRed($theme)};
30
- --gjs-color-yellow: #{getYellow($theme)};
31
- --gjs-color-green: #{getGreen($theme)};
28
+ --gjs-color-blue: var(--matcha-prim-blue-700);
29
+ --gjs-color-red: var(--matcha-color-danger);
30
+ --gjs-color-yellow: var(--matcha-prim-yellow-500);
31
+ --gjs-color-green: var(--matcha-color-success);
32
32
  --gjs-left-width: 15%;
33
33
  --gjs-color-highlight: #71b7f1;
34
34
  --gjs-color-warn: #ffca6f;