@inchurch/matcha-theme 20.0.3

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 (112) hide show
  1. package/README.md +303 -0
  2. package/abstracts/_colors.scss +405 -0
  3. package/abstracts/_elevation.scss +102 -0
  4. package/abstracts/_functions.scss +1213 -0
  5. package/abstracts/_media-breakpoint.scss +23 -0
  6. package/abstracts/_typography.scss +127 -0
  7. package/base/_reset.scss +438 -0
  8. package/components/matcha-accordion.scss +157 -0
  9. package/components/matcha-audio-player.scss +32 -0
  10. package/components/matcha-autocomplete.scss +134 -0
  11. package/components/matcha-avatar.scss +161 -0
  12. package/components/matcha-badge.scss +120 -0
  13. package/components/matcha-breadcrumb.scss +126 -0
  14. package/components/matcha-button-toggle.scss +363 -0
  15. package/components/matcha-buttons.scss +784 -0
  16. package/components/matcha-calendar.scss +154 -0
  17. package/components/matcha-cards.scss +205 -0
  18. package/components/matcha-chart-card.scss +60 -0
  19. package/components/matcha-checkbox.scss +554 -0
  20. package/components/matcha-chip.scss +212 -0
  21. package/components/matcha-color-pick.scss +35 -0
  22. package/components/matcha-command-palette.scss +89 -0
  23. package/components/matcha-crop.scss +172 -0
  24. package/components/matcha-date.scss +81 -0
  25. package/components/matcha-divider.scss +45 -0
  26. package/components/matcha-draggable.scss +24 -0
  27. package/components/matcha-drawer.scss +235 -0
  28. package/components/matcha-drop-list.scss +390 -0
  29. package/components/matcha-emoji.scss +69 -0
  30. package/components/matcha-empty-state.scss +118 -0
  31. package/components/matcha-flag.scss +62 -0
  32. package/components/matcha-footer.scss +187 -0
  33. package/components/matcha-form-field.scss +552 -0
  34. package/components/matcha-form-section.scss +101 -0
  35. package/components/matcha-header.scss +325 -0
  36. package/components/matcha-highlight.scss +296 -0
  37. package/components/matcha-hint-text.scss +66 -0
  38. package/components/matcha-horizontal-tree.scss +317 -0
  39. package/components/matcha-icon.scss +106 -0
  40. package/components/matcha-image.scss +62 -0
  41. package/components/matcha-list.scss +212 -0
  42. package/components/matcha-menu.scss +86 -0
  43. package/components/matcha-modal.scss +234 -0
  44. package/components/matcha-nav.scss +450 -0
  45. package/components/matcha-notification.scss +197 -0
  46. package/components/matcha-option.scss +95 -0
  47. package/components/matcha-page-builder.scss +4186 -0
  48. package/components/matcha-paginator.scss +235 -0
  49. package/components/matcha-panel.scss +167 -0
  50. package/components/matcha-profile-card.scss +50 -0
  51. package/components/matcha-progress-bar.scss +209 -0
  52. package/components/matcha-radio.scss +528 -0
  53. package/components/matcha-ripple.scss +7 -0
  54. package/components/matcha-scrollbar.scss +35 -0
  55. package/components/matcha-scrollbox-shadow.scss +123 -0
  56. package/components/matcha-section.scss +105 -0
  57. package/components/matcha-select.scss +661 -0
  58. package/components/matcha-skeleton.scss +138 -0
  59. package/components/matcha-slide-toggle.scss +590 -0
  60. package/components/matcha-slider.scss +188 -0
  61. package/components/matcha-snack-bar.scss +266 -0
  62. package/components/matcha-spin.scss +252 -0
  63. package/components/matcha-spinner.scss +78 -0
  64. package/components/matcha-stepper.scss +177 -0
  65. package/components/matcha-table-cell.scss +41 -0
  66. package/components/matcha-table.scss +785 -0
  67. package/components/matcha-tabs.scss +469 -0
  68. package/components/matcha-text-editor.scss +151 -0
  69. package/components/matcha-time.scss +33 -0
  70. package/components/matcha-timepicker.scss +13 -0
  71. package/components/matcha-toolbar.scss +206 -0
  72. package/components/matcha-tooltip.scss +128 -0
  73. package/components/matcha-uploader.scss +215 -0
  74. package/css/matcha-style.css +76772 -0
  75. package/fonts/CircularStd-Black.eot +0 -0
  76. package/fonts/CircularStd-Black.svg +3426 -0
  77. package/fonts/CircularStd-Black.ttf +0 -0
  78. package/fonts/CircularStd-Black.woff +0 -0
  79. package/fonts/CircularStd-Black.woff2 +0 -0
  80. package/fonts/CircularStd-Bold.eot +0 -0
  81. package/fonts/CircularStd-Bold.otf +0 -0
  82. package/fonts/CircularStd-Bold.svg +13532 -0
  83. package/fonts/CircularStd-Bold.ttf +0 -0
  84. package/fonts/CircularStd-Bold.woff +0 -0
  85. package/fonts/CircularStd-Bold.woff2 +0 -0
  86. package/fonts/CircularStd-Medium.eot +0 -0
  87. package/fonts/CircularStd-Medium.otf +0 -0
  88. package/fonts/CircularStd-Medium.svg +13511 -0
  89. package/fonts/CircularStd-Medium.ttf +0 -0
  90. package/fonts/CircularStd-Medium.woff +0 -0
  91. package/fonts/CircularStd-Medium.woff2 +0 -0
  92. package/fonts/CircularStd-Regular.eot +0 -0
  93. package/fonts/CircularStd-Regular.otf +0 -0
  94. package/fonts/CircularStd-Regular.svg +2378 -0
  95. package/fonts/CircularStd-Regular.ttf +0 -0
  96. package/fonts/CircularStd-Regular.woff +0 -0
  97. package/fonts/CircularStd-Regular.woff2 +0 -0
  98. package/main.scss +262 -0
  99. package/package.json +11 -0
  100. package/tokens/_animations-tokens.scss +37 -0
  101. package/tokens/_breakpoints-tokens.scss +26 -0
  102. package/tokens/_color-tokens.scss +1153 -0
  103. package/tokens/_css-custom-properties.scss +568 -0
  104. package/tokens/_elevation-tokens.scss +33 -0
  105. package/tokens/_spacing-tokens.scss +94 -0
  106. package/tokens/_typography-tokens.scss +65 -0
  107. package/vendors/angular-editor.scss +56 -0
  108. package/vendors/angular-material-fixes.scss +297 -0
  109. package/vendors/calendar.scss +2880 -0
  110. package/vendors/charts.scss +92 -0
  111. package/vendors/ng5-slider.scss +56 -0
  112. package/vendors/ngx-material-timepicker.scss +50 -0
@@ -0,0 +1,123 @@
1
+ @mixin matcha-scrollbox-shadow($theme) {
2
+ $is-dark: map-get($theme, is-dark);
3
+
4
+ // Drop shadow inside of area when scrolled vertically
5
+ .scrollbox,
6
+ .scrollbox-vertical,
7
+ .scrollbox-v,
8
+ .scrollbox-y {
9
+ overflow: overlay;
10
+ background:
11
+ /* Shadow covers */
12
+ linear-gradient(getSurface($theme) 30%, rgba(255, 255, 255, 0)),
13
+ linear-gradient(rgba(255, 255, 255, 0), getSurface($theme) 70%) 0 100%,
14
+ /* Shadows */
15
+ linear-gradient(180deg, rgba(0, 0, 0, 0.1) 0%, rgba(0, 0, 0, 0) 50%),
16
+ linear-gradient(0deg, rgba(0, 0, 0, 0.1) 0%, rgba(0, 0, 0, 0) 50%) 0 100%;
17
+
18
+ background-repeat: no-repeat;
19
+ background-color: getSurface($theme);
20
+ background-size: 100% 40px, 100% 40px, 100% 14px, 100% 14px;
21
+
22
+ /* Opera doesn't support this in the shorthand */
23
+ background-attachment: local, local, scroll, scroll;
24
+ }
25
+
26
+ // Drop shadow inside of area when scrolled horizontally
27
+ .scrollbox-horizontal,
28
+ .scrollbox-h,
29
+ .scrollbox-x {
30
+ $fg: if(getForeground($theme), getForeground($theme), #212121);
31
+ box-shadow: 0px -16px 0px 0px inset getSurface($theme), 20px 0 16px -24px inset rgba($fg, 0.15),
32
+ -20px 0 16px -24px inset rgba($fg, 0.15), 0px 2px 2px 0px rgba($fg, 0.035), 0px 2px 2px 0px rgba($fg, 0.035),
33
+ 0px 2px 2px 0px rgba($fg, 0.035);
34
+ overflow: auto;
35
+ background: linear-gradient(90deg,
36
+ rgba(0, 0, 0, 0.1),
37
+ rgba(0, 0, 0, 0) calc(0% + 10px),
38
+ rgba(0, 0, 0, 0) calc(100% - 10px),
39
+ rgba(0, 0, 0, 0.1));
40
+
41
+ background: -moz-linear-gradient(90deg,
42
+ rgba(0, 0, 0, 0.1),
43
+ rgba(0, 0, 0, 0) calc(0% + 10px),
44
+ rgba(0, 0, 0, 0) calc(100% - 10px),
45
+ rgba(0, 0, 0, 0.1));
46
+
47
+ background: -webkit-linear-gradient(0deg,
48
+ rgba(0, 0, 0, 0.1),
49
+ rgba(0, 0, 0, 0) calc(0% + 10px),
50
+ rgba(0, 0, 0, 0) calc(100% - 10px),
51
+ rgba(0, 0, 0, 0.1));
52
+ }
53
+
54
+ .scrollbox-horizontal-content,
55
+ .scrollbox-h-content,
56
+ .scrollbox-x-content {
57
+ background: getSurface($theme);
58
+ background: linear-gradient(90deg,
59
+ getSurface($theme) 10px,
60
+ getSurface($theme),
61
+ rgba(255, 255, 255, 0) calc(0% + 10px),
62
+ rgba(255, 255, 255, 0) calc(100% - 10px),
63
+ getSurface($theme) 10px,
64
+ getSurface($theme));
65
+ background: -moz-linear-gradient(90deg,
66
+ getSurface($theme) 10px,
67
+ getSurface($theme),
68
+ rgba(255, 255, 255, 0) calc(0% + 10px),
69
+ rgba(255, 255, 255, 0) calc(100% - 10px),
70
+ getSurface($theme) 10px,
71
+ getSurface($theme));
72
+ background: -webkit-linear-gradient(0deg,
73
+ getSurface($theme) 10px,
74
+ getSurface($theme),
75
+ rgba(255, 255, 255, 0) calc(0% + 10px),
76
+ rgba(255, 255, 255, 0) calc(100% - 10px),
77
+ getSurface($theme) 10px,
78
+ getSurface($theme));
79
+ }
80
+
81
+ .scrollbox-horizontal-content-background,
82
+ .scrollbox-h-content-background,
83
+ .scrollbox-x-content-background {
84
+ background: getBackground($theme);
85
+ background: linear-gradient(90deg,
86
+ getBackground($theme) 10px,
87
+ getBackground($theme),
88
+ rgba(255, 255, 255, 0) calc(0% + 10px),
89
+ rgba(255, 255, 255, 0) calc(100% - 10px),
90
+ getBackground($theme) 10px,
91
+ getBackground($theme));
92
+ background: -moz-linear-gradient(90deg,
93
+ getBackground($theme) 10px,
94
+ getBackground($theme),
95
+ rgba(255, 255, 255, 0) calc(0% + 10px),
96
+ rgba(255, 255, 255, 0) calc(100% - 10px),
97
+ getBackground($theme) 10px,
98
+ getBackground($theme));
99
+ background: -webkit-linear-gradient(0deg,
100
+ getBackground($theme) 10px,
101
+ getBackground($theme),
102
+ rgba(255, 255, 255, 0) calc(0% + 10px),
103
+ rgba(255, 255, 255, 0) calc(100% - 10px),
104
+ getBackground($theme) 10px,
105
+ getBackground($theme));
106
+ }
107
+
108
+ .scrollbox-background {
109
+ overflow: overlay;
110
+ background:
111
+ /* Shadow covers */
112
+ linear-gradient(getBackground($theme) 30%, rgba(255, 255, 255, 0)),
113
+ linear-gradient(rgba(255, 255, 255, 0), getBackground($theme) 70%) 0 100%,
114
+ /* Shadows */
115
+ linear-gradient(180deg, rgba(0, 0, 0, 0.1) 0%, rgba(0, 0, 0, 0) 50%),
116
+ linear-gradient(0deg, rgba(0, 0, 0, 0.1) 0%, rgba(0, 0, 0, 0) 50%) 0 100%;
117
+ background-repeat: no-repeat;
118
+ background-color: getBackground($theme);
119
+ background-size: 100% 40px, 100% 40px, 100% 14px, 100% 14px;
120
+ /* Opera doesn't support this in the shorthand */
121
+ background-attachment: local, local, scroll, scroll;
122
+ }
123
+ }
@@ -0,0 +1,105 @@
1
+ @use "sass:map";
2
+
3
+ // =============================================================================
4
+ // matcha-section.scss — Section card (config block, settings group)
5
+ // Aligned with Figma matcha/section:
6
+ // Slots: Header (title + badge + action), Body (subtitle + desc + content)
7
+ // Angular: matcha-section
8
+ // =============================================================================
9
+
10
+ @mixin matcha-section-theme($theme) {
11
+ $is-dark: map.get($theme, is-dark);
12
+
13
+ .matcha-section {
14
+ background: var(--matcha-color-surface, #{getSurface($theme)});
15
+
16
+ @if $is-dark {
17
+ border: var(--matcha-border-hairline, 1px) solid rgba(#212121, 0.06); // ok: structural
18
+ }
19
+ }
20
+
21
+ .matcha-section__subtitle {
22
+ color: var(--matcha-color-fg, #{getForeground($theme)});
23
+ }
24
+
25
+ .matcha-section__description {
26
+ color: var(--matcha-color-text-label, #{getBlueGrey($theme)});
27
+ }
28
+ }
29
+
30
+ // ── Layout ──────────────────────────────────────────────────────────────────
31
+
32
+ .matcha-section {
33
+ display: flex;
34
+ flex-direction: column;
35
+ width: 100%;
36
+ border-radius: var(--matcha-radius-lg, 8px);
37
+ overflow: hidden;
38
+ box-sizing: border-box;
39
+ }
40
+
41
+ // ── Header ──
42
+ .matcha-section__header {
43
+ display: flex;
44
+ align-items: center;
45
+ justify-content: space-between;
46
+ gap: var(--matcha-space-150, 12px);
47
+ padding: var(--matcha-space-200, 16px) var(--matcha-space-300, 24px);
48
+ }
49
+
50
+ .matcha-section__header-left {
51
+ display: flex;
52
+ align-items: center;
53
+ gap: var(--matcha-space-150, 12px);
54
+ flex: 1;
55
+ min-width: 0;
56
+ }
57
+
58
+ .matcha-section__header-actions {
59
+ display: flex;
60
+ align-items: center;
61
+ gap: var(--matcha-space-100, 8px);
62
+ flex-shrink: 0;
63
+ }
64
+
65
+ // ── Body ──
66
+ .matcha-section__body {
67
+ display: flex;
68
+ flex-direction: column;
69
+ gap: var(--matcha-space-150, 12px);
70
+ padding: var(--matcha-space-200, 16px) var(--matcha-space-300, 24px) var(--matcha-space-300, 24px);
71
+ }
72
+
73
+ .matcha-section__subtitle {
74
+ font-family: var(--matcha-font-family);
75
+ font-size: var(--matcha-text-title-sm, 16px);
76
+ font-weight: var(--matcha-weight-semibold, 600);
77
+ line-height: var(--matcha-leading-title-sm, 22px);
78
+ }
79
+
80
+ .matcha-section__description {
81
+ font-family: var(--matcha-font-family);
82
+ font-size: var(--matcha-text-body-md, 14px);
83
+ font-weight: var(--matcha-weight-regular, 400);
84
+ line-height: var(--matcha-leading-body-md, 20px);
85
+ }
86
+
87
+ .matcha-section__content {
88
+ display: flex;
89
+ flex-direction: column;
90
+ gap: var(--matcha-space-150, 12px);
91
+ }
92
+
93
+ // ── Responsive ──────────────────────────────────────────────────────────────
94
+
95
+ @include media-breakpoint('xs') {
96
+ .matcha-section__header {
97
+ flex-direction: column;
98
+ align-items: flex-start;
99
+ padding: var(--matcha-space-200, 16px);
100
+ }
101
+
102
+ .matcha-section__body {
103
+ padding: var(--matcha-space-200, 16px);
104
+ }
105
+ }