@expressivecss/expressive 0.1.0-alpha.3 → 0.2.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 (154) hide show
  1. package/LICENSE +82 -2
  2. package/README.md +153 -43
  3. package/dist/css/expressive.css +7121 -9658
  4. package/dist/css/expressive.css.map +1 -0
  5. package/dist/css/expressive.min.css +1 -1
  6. package/dist/css/expressive.min.css.map +1 -0
  7. package/dist/js/expressive.cjs +7521 -0
  8. package/dist/js/expressive.cjs.map +7 -0
  9. package/dist/js/expressive.js +7383 -8099
  10. package/dist/js/expressive.js.map +7 -1
  11. package/dist/js/expressive.min.js +75 -1
  12. package/dist/js/expressive.min.js.map +7 -1
  13. package/dist/js/expressive.mjs +7292 -7998
  14. package/dist/js/expressive.mjs.map +7 -1
  15. package/dist/types/behaviors/dialogs.d.ts +25 -0
  16. package/dist/{js → types}/components/autocomplete.d.ts +10 -1
  17. package/dist/{js → types}/components/buttons.d.ts +11 -1
  18. package/dist/{js → types}/components/cards.d.ts +10 -1
  19. package/dist/{js → types}/components/carousel.d.ts +4 -5
  20. package/dist/{js/forms/character-counter.d.ts → types/components/characterCounter.d.ts} +1 -1
  21. package/dist/{js → types}/components/chips.d.ts +1 -1
  22. package/dist/{js → types}/components/collapsible.d.ts +1 -1
  23. package/dist/{js → types}/components/datepicker.d.ts +63 -2
  24. package/dist/{js → types}/components/dropdown.d.ts +3 -3
  25. package/dist/types/components/index.d.ts +23 -0
  26. package/dist/{js/components/materialbox.d.ts → types/components/lightbox.d.ts} +21 -21
  27. package/dist/{js → types}/components/modal.d.ts +1 -1
  28. package/dist/{js → types}/components/parallax.d.ts +11 -5
  29. package/dist/{js → types}/components/pushpin.d.ts +1 -1
  30. package/dist/{js/forms → types/components}/range.d.ts +3 -3
  31. package/dist/types/components/registry.d.ts +107 -0
  32. package/dist/{js → types}/components/scrollspy.d.ts +6 -9
  33. package/dist/{js/forms → types/components}/select.d.ts +11 -2
  34. package/dist/{js → types}/components/sidenav.d.ts +1 -1
  35. package/dist/{js → types}/components/slider.d.ts +3 -2
  36. package/dist/{js → types}/components/tabs.d.ts +3 -2
  37. package/dist/{js/components/tap-target.d.ts → types/components/tapTarget.d.ts} +2 -2
  38. package/dist/{js → types}/components/timepicker.d.ts +13 -5
  39. package/dist/{js/components/toast.d.ts → types/components/toasts.d.ts} +28 -4
  40. package/dist/{js → types}/components/tooltip.d.ts +2 -2
  41. package/dist/types/core/bounding.d.ts +6 -0
  42. package/dist/{js/foundation → types/core}/component.d.ts +1 -1
  43. package/dist/types/core/edges.d.ts +6 -0
  44. package/dist/{js/foundation → types/core}/utils.d.ts +21 -14
  45. package/dist/types/index.d.ts +7 -0
  46. package/dist/{js/plugins/docked-display.d.ts → types/plugins/dockedDisplayPlugin.d.ts} +7 -0
  47. package/package.json +60 -36
  48. package/src/sass/README.md +200 -0
  49. package/src/sass/abstracts/_breakpoints.scss +69 -0
  50. package/src/sass/abstracts/_elevation.scss +34 -0
  51. package/src/sass/abstracts/_index.scss +7 -0
  52. package/src/sass/abstracts/_mixins.scss +171 -0
  53. package/src/sass/abstracts/_variables.scss +57 -0
  54. package/src/{scss/layout/_table.scss → sass/base/_global.scss} +64 -2
  55. package/src/{scss/layout → sass/base}/_grid.scss +6 -6
  56. package/src/sass/base/_index.scss +6 -0
  57. package/src/{scss/foundation → sass/base}/_normalize.scss +51 -139
  58. package/src/sass/base/_typography.scss +90 -0
  59. package/src/sass/components/_badges.scss +77 -0
  60. package/src/{scss → sass}/components/_breadcrumb.scss +2 -0
  61. package/src/sass/components/_buttons.scss +407 -0
  62. package/src/sass/components/_cards.scss +328 -0
  63. package/src/{scss → sass}/components/_carousel.scss +5 -3
  64. package/src/sass/components/_chips.scss +140 -0
  65. package/src/sass/components/_collapsible.scss +81 -0
  66. package/src/{scss → sass}/components/_collection.scss +2 -2
  67. package/src/{scss/components/_date-picker.scss → sass/components/_datepicker.scss} +51 -44
  68. package/src/sass/components/_docked-display.scss +11 -0
  69. package/src/sass/components/_dropdown.scss +129 -0
  70. package/src/{scss/components/_material-icons.scss → sass/components/_icons-material-design.scss} +2 -0
  71. package/src/sass/components/_index.scss +35 -0
  72. package/src/{scss/components/_material-box.scss → sass/components/_lightbox.scss} +6 -4
  73. package/src/sass/components/_modal.scss +208 -0
  74. package/src/sass/components/_navbar.scss +345 -0
  75. package/src/{scss/layout/_footer.scss → sass/components/_page-footer.scss} +7 -6
  76. package/src/{scss → sass}/components/_pagination.scss +4 -3
  77. package/src/{scss → sass}/components/_parallax.scss +4 -1
  78. package/src/{scss → sass}/components/_preloader.scss +19 -97
  79. package/src/{scss → sass}/components/_pulse.scss +2 -0
  80. package/src/sass/components/_pushpin.scss +11 -0
  81. package/src/{scss → sass}/components/_sidenav.scss +99 -82
  82. package/src/{scss → sass}/components/_slider.scss +3 -1
  83. package/src/{scss/components/_table-of-contents.scss → sass/components/_table_of_contents.scss} +2 -0
  84. package/src/sass/components/_tabs.scss +232 -0
  85. package/src/{scss/components/_tap-target.scss → sass/components/_tapTarget.scss} +24 -22
  86. package/src/{scss/components/_time-picker.scss → sass/components/_timepicker.scss} +56 -56
  87. package/src/sass/components/_toast.scss +260 -0
  88. package/src/sass/components/_toolbar.scss +192 -0
  89. package/src/sass/components/_tooltip.scss +166 -0
  90. package/src/{scss → sass}/components/_transitions.scss +4 -4
  91. package/src/sass/components/forms/_checkboxes.scss +288 -0
  92. package/src/sass/components/forms/_fieldset.scss +128 -0
  93. package/src/{scss → sass/components}/forms/_file-input.scss +11 -9
  94. package/src/{scss → sass/components}/forms/_index.scss +2 -0
  95. package/src/sass/components/forms/_input-fields.scss +326 -0
  96. package/src/sass/components/forms/_radio-buttons.scss +190 -0
  97. package/src/sass/components/forms/_range.scss +310 -0
  98. package/src/sass/components/forms/_select.scss +103 -0
  99. package/src/sass/components/forms/_switches.scss +239 -0
  100. package/src/sass/expressive.scss +60 -0
  101. package/src/sass/tokens/_index.scss +4 -0
  102. package/src/sass/tokens/_reference.scss +265 -0
  103. package/src/sass/tokens/_theme.scss +49 -0
  104. package/src/sass/utilities/_helpers.scss +63 -0
  105. package/src/sass/utilities/_index.scss +8 -0
  106. package/src/{scss → sass}/utilities/_spacing.scss +4 -3
  107. package/src/sass/utilities/_typescale.scss +45 -0
  108. package/src/sass/utilities/_visibility.scss +63 -0
  109. package/src/sass/utilities/_z-depth.scss +18 -0
  110. package/dist/js/components/index.d.ts +0 -21
  111. package/dist/js/forms/index.d.ts +0 -4
  112. package/dist/js/foundation/index.d.ts +0 -2
  113. package/dist/js/index.d.ts +0 -52
  114. package/dist/js/plugins/index.d.ts +0 -1
  115. package/src/scss/components/_appbar.scss +0 -454
  116. package/src/scss/components/_badges.scss +0 -77
  117. package/src/scss/components/_buttons.scss +0 -412
  118. package/src/scss/components/_cards.scss +0 -267
  119. package/src/scss/components/_chips.scss +0 -147
  120. package/src/scss/components/_collapsible.scss +0 -84
  121. package/src/scss/components/_dropdown.scss +0 -98
  122. package/src/scss/components/_index.scss +0 -28
  123. package/src/scss/components/_modal.scss +0 -84
  124. package/src/scss/components/_tabs.scss +0 -176
  125. package/src/scss/components/_toast.scss +0 -70
  126. package/src/scss/components/_tooltip.scss +0 -49
  127. package/src/scss/components/_video.scss +0 -15
  128. package/src/scss/expressive.scss +0 -7
  129. package/src/scss/forms/_checkboxes.scss +0 -199
  130. package/src/scss/forms/_input-fields.scss +0 -360
  131. package/src/scss/forms/_radio-buttons.scss +0 -114
  132. package/src/scss/forms/_range.scss +0 -148
  133. package/src/scss/forms/_select.scss +0 -108
  134. package/src/scss/forms/_switches.scss +0 -127
  135. package/src/scss/foundation/_base.scss +0 -71
  136. package/src/scss/foundation/_color-palette.scss +0 -402
  137. package/src/scss/foundation/_index.scss +0 -10
  138. package/src/scss/foundation/_mixins.scss +0 -198
  139. package/src/scss/foundation/_motion.scss +0 -70
  140. package/src/scss/foundation/_shape.scss +0 -30
  141. package/src/scss/foundation/_state-layers.scss +0 -68
  142. package/src/scss/foundation/_theme.scss +0 -238
  143. package/src/scss/foundation/_tokens.scss +0 -511
  144. package/src/scss/foundation/_variables.scss +0 -57
  145. package/src/scss/layout/_index.scss +0 -3
  146. package/src/scss/utilities/_a11y.scss +0 -77
  147. package/src/scss/utilities/_elevation.scss +0 -63
  148. package/src/scss/utilities/_helpers.scss +0 -50
  149. package/src/scss/utilities/_index.scss +0 -7
  150. package/src/scss/utilities/_responsive.scss +0 -62
  151. package/src/scss/utilities/_typography.scss +0 -115
  152. /package/dist/{js/forms → types/behaviors}/forms.d.ts +0 -0
  153. /package/dist/{js/components → types/behaviors}/waves.d.ts +0 -0
  154. /package/src/{scss → sass}/utilities/_colors.scss +0 -0
@@ -1,3 +1,5 @@
1
+ @use "../abstracts" as *;
2
+
1
3
  .carousel {
2
4
  --carousel-height: 400px;
3
5
 
@@ -85,9 +87,9 @@
85
87
  }
86
88
  }
87
89
 
88
- // Materialbox compatibility
89
- &.scrolling .carousel-item .materialboxed,
90
- .carousel-item:not(.active) .materialboxed {
90
+ // Lightbox compatibility
91
+ &.scrolling .carousel-item .lightboxed,
92
+ .carousel-item:not(.active) .lightboxed {
91
93
  pointer-events: none;
92
94
  }
93
95
  }
@@ -0,0 +1,140 @@
1
+ @use "../abstracts" as *;
2
+
3
+ .chip {
4
+ --font-size: 14px;
5
+ --font-size-icon: 18px;
6
+ --padding: 8px;
7
+
8
+ color: var(--md-sys-color-on-surface-variant);
9
+ background-color: rgba(0, 0, 0, 0.09);
10
+ display: inline-flex;
11
+ white-space: nowrap;
12
+ gap: 8px;
13
+ margin: 0;
14
+ height: 32px;
15
+ padding-left: var(--padding);
16
+ padding-right: var(--padding);
17
+ font-size: var(--font-size);
18
+ font-weight: 500;
19
+ border-radius: 8px;
20
+ align-items: center;
21
+ user-select: none;
22
+ vertical-align: top;
23
+
24
+ &:focus {
25
+ outline: none;
26
+ background-color: var(--md-sys-color-primary);
27
+ color: var(--md-sys-color-on-primary);
28
+ }
29
+ }
30
+
31
+ .chip.outlined {
32
+ background-color: transparent;
33
+ border-color: var(--md-sys-color-outline);
34
+ border-width: 1px;
35
+ border-style: solid;
36
+ }
37
+
38
+ .chip > img {
39
+ margin: 0;
40
+ width: 24px;
41
+ height: 24px;
42
+ object-fit: cover;
43
+ border-radius: 12px;
44
+ }
45
+
46
+ .chip > .material-icons {
47
+ font-size: var(--font-size-icon);
48
+ color: var(--md-sys-color-on-surface-variant);
49
+ }
50
+
51
+ .chip .close {
52
+ border-radius: 50%;
53
+ height: 24px;
54
+ width: 24px;
55
+ padding: 0;
56
+ display: grid;
57
+ justify-content: center;
58
+ align-content: center;
59
+ cursor: pointer;
60
+ }
61
+
62
+ .chip .close:hover {
63
+ background-color: #8888;
64
+ }
65
+
66
+ //--------------------------
67
+
68
+ .chips {
69
+ display: flex;
70
+ gap: 4px;
71
+ flex-wrap: wrap;
72
+ border: none;
73
+ box-shadow: none;
74
+ margin: 0 0 8px 0;
75
+ padding: 4px;
76
+ // min-height: 45px;
77
+ outline: none;
78
+ transition: all .3s;
79
+
80
+ &.focus {
81
+ border-bottom: 1px solid var(--md-sys-color-primary);
82
+ box-shadow: 0 1px 0 0 var(--md-sys-color-primary);
83
+ }
84
+
85
+ &.input-field {
86
+ border-bottom: 1px solid var(--md-sys-color-on-surface-variant);
87
+
88
+ &:hover {
89
+ cursor: text;
90
+ }
91
+ }
92
+
93
+ input:not([type]):not(.browser-default).input {
94
+ background: none;
95
+ border: 0;
96
+ color: var(--md-sys-color-on-background);
97
+ display: inline-block;
98
+ font-size: 16px;
99
+ // height: 32px;
100
+ // line-height: 32px;
101
+ height: 32px;
102
+ outline: 0;
103
+ margin: 0;
104
+ padding: 0;
105
+ width: 120px;
106
+ width: fit-content;
107
+ min-width: 100px;
108
+ max-width: 200px;
109
+
110
+ &:focus {
111
+ border: 0;
112
+ box-shadow: none;
113
+ }
114
+ }
115
+
116
+ // Autocomplete
117
+ .autocomplete-content {
118
+ margin-top: 0;
119
+ margin-bottom: 0;
120
+ }
121
+ }
122
+
123
+ // Form prefix
124
+ .prefix ~ .chips {
125
+ margin-left: 3rem;
126
+ width: 92%;
127
+ width: calc(100% - 3rem);
128
+ }
129
+
130
+ // Form suffix
131
+ .suffix ~ .chips {
132
+ margin-right: 3rem;
133
+ width: 92%;
134
+ width: calc(100% - 3rem);
135
+ }
136
+
137
+ .chips:empty ~ label {
138
+ font-size: 0.8rem;
139
+ transform: translateY(-140%);
140
+ }
@@ -0,0 +1,81 @@
1
+ @use "../abstracts" as *;
2
+
3
+ .collapsible {
4
+ padding-left: 0;
5
+ list-style-type: none;
6
+ border-top: 1px solid var(--md-sys-color-outline-variant);
7
+ border-right: 1px solid var(--md-sys-color-outline-variant);
8
+ border-left: 1px solid var(--md-sys-color-outline-variant);
9
+ margin: $element-top-margin 0 $element-bottom-margin 0;
10
+ @include z-depth("1");
11
+ }
12
+
13
+ .collapsible-header {
14
+ display: flex;
15
+ cursor: pointer;
16
+ -webkit-tap-highlight-color: transparent;
17
+ line-height: 1.5;
18
+ padding: 1rem;
19
+ border-bottom: 1px solid var(--md-sys-color-outline-variant);
20
+
21
+ &:focus {
22
+ outline: 0
23
+ }
24
+
25
+ i {
26
+ width: 2rem;
27
+ font-size: 1.6rem;
28
+ display: inline-block;
29
+ text-align: center;
30
+ margin-right: 1rem;
31
+ }
32
+ }
33
+
34
+ .collapsible-header::after {
35
+ content: '\e5cf';
36
+ margin-left: .5rem;
37
+ font-family: 'Material Symbols Outlined', 'Material Symbols Rounded', 'Material Symbols Sharp', 'Material Icons';
38
+ font-size: 25px;
39
+ line-height: .9;
40
+ -webkit-font-smoothing: antialiased;
41
+ }
42
+
43
+ .active .collapsible-header::after {
44
+ content: '\e5ce';
45
+ }
46
+
47
+ .keyboard-focused .collapsible-header:focus {
48
+ background-color: rgba(0, 0, 0, 0.12);
49
+ }
50
+
51
+ .collapsible-header-content {
52
+ flex-grow: 1;
53
+ }
54
+
55
+ .collapsible-body {
56
+ max-height: 0;
57
+ border-bottom: 1px solid var(--md-sys-color-outline-variant);
58
+ box-sizing: border-box;
59
+ padding: 0 2rem;
60
+ overflow: hidden;
61
+ }
62
+
63
+ // Popout Collapsible
64
+
65
+ .collapsible.popout {
66
+ border: none;
67
+ box-shadow: none;
68
+
69
+ > li {
70
+ box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
71
+ // transform: scaleX(.92);
72
+ margin: 0 24px;
73
+ transition: margin .35s cubic-bezier(0.250, 0.460, 0.450, 0.940);
74
+ }
75
+
76
+ > li.active {
77
+ box-shadow: 0 5px 11px 0 rgba(0, 0, 0, 0.18), 0 4px 15px 0 rgba(0, 0, 0, 0.15);
78
+ margin: 16px 0;
79
+ // transform: scaleX(1);
80
+ }
81
+ }
@@ -1,4 +1,4 @@
1
- @use '../foundation/variables' as *;
1
+ @use "../abstracts" as *;
2
2
 
3
3
  .collection {
4
4
  padding-left: 0;
@@ -38,7 +38,7 @@
38
38
  font-size: 18px;
39
39
  line-height: 42px;
40
40
  color: #fff;
41
- background-color: var(--md-sys-color-shadow-light);
41
+ background-color: var(--md-sys-color-shadow);
42
42
  text-align: center;
43
43
  }
44
44
 
@@ -1,3 +1,5 @@
1
+ @use "../abstracts" as *;
2
+
1
3
  /* Modal */
2
4
  // @removed since v2.2.1
3
5
  /*.datepicker-modal {
@@ -56,14 +58,24 @@
56
58
  .select-year input,
57
59
  .select-month input {
58
60
  background-color: transparent;
61
+ // The text-input rules give every input `padding: 0 16px`, and these are
62
+ // border-box - which left the 50px year control 18px of content box and
63
+ // clipped every four-digit year. Nothing here needs the padding: the text
64
+ // is centred and the caret is hidden just above.
65
+ padding: 0;
59
66
  }
60
67
 
68
+ // An <input> cannot size to its own value in CSS - `width: auto` follows the
69
+ // `size` attribute, not the text, and `field-sizing: content` is still
70
+ // Chrome-only - so these stay explicit. In `ch` rather than px so they track
71
+ // the font instead of a measurement taken against one particular font.
72
+ // Widest label is "September".
61
73
  .select-year input {
62
- width: 50px;
74
+ width: 6ch;
63
75
  }
64
76
 
65
77
  .select-month input {
66
- width: 80px;
78
+ width: 12ch;
67
79
  }
68
80
 
69
81
  .month-prev,
@@ -72,11 +84,9 @@
72
84
  align-items: center;
73
85
  }
74
86
 
75
- .month-prev,
76
- .month-next {
77
- & > svg {
78
- fill: var(--md-sys-color-on-surface-variant);
79
- }
87
+ .month-prev > svg,
88
+ .month-next > svg {
89
+ fill: var(--md-sys-color-on-surface-variant);
80
90
  }
81
91
  }
82
92
 
@@ -96,7 +106,7 @@
96
106
  // background-color: var(--md-sys-color-primary);
97
107
  // color: var(--md-sys-color-on-primary);
98
108
  padding: 20px 22px;
99
- border-bottom: 1px solid var(--md-sys-color-surface-variant-light);
109
+ border-bottom: 1px solid var(--md-sys-color-surface-variant);
100
110
  font-weight: 500;
101
111
 
102
112
  .year-text {
@@ -165,44 +175,42 @@
165
175
  }
166
176
  }
167
177
 
168
- .datepicker-day {
169
- // @todo
170
- &.has-event {}
171
- // @todo
172
- &.is-inrange {}
173
- // @todo
174
- &.is-startrange {}
175
- // @todo
176
- &.is-endrange {}
177
-
178
- &.is-daterange-start,
179
- &.is-daterange-end,
180
- &.is-daterange {
181
- position: relative;
182
-
183
- &:before {
184
- position: absolute;
185
- top: 5px;
186
- width: 100%;
187
- height: 34px;
188
- content: '';
189
- background-color: var(--md-sys-color-primary-container);
190
- z-index: 0;
191
- }
192
- }
178
+ // @todo
179
+ .datepicker-day.has-event {}
180
+ // @todo
181
+ .datepicker-day.is-inrange {}
182
+ // @todo
183
+ .datepicker-day.is-startrange {}
184
+ // @todo
185
+ .datepicker-day.is-endrange {}
186
+
187
+ .datepicker-day.is-daterange-start,
188
+ .datepicker-day.is-daterange-end,
189
+ .datepicker-day.is-daterange {
190
+ position: relative;
193
191
 
194
- &.is-daterange-start:before,
195
- &.is-daterange-end:before {
196
- width: 50%;
192
+ &:before {
193
+ position: absolute;
194
+ top: 5px;
195
+ width: 100%;
196
+ height: 34px;
197
+ content: '';
198
+ background-color: var(--md-sys-color-primary-container);
199
+ z-index: 0;
197
200
  }
201
+ }
198
202
 
199
- &.is-daterange-start:before {
200
- left: 50%;
201
- }
203
+ .datepicker-day.is-daterange-start:before,
204
+ .datepicker-day.is-daterange-end:before {
205
+ width: 50%;
206
+ }
202
207
 
203
- &.is-daterange .datepicker-day-button:before {
204
- background-color: var(--md-sys-color-primary-container);
205
- }
208
+ .datepicker-day.is-daterange-start:before {
209
+ left: 50%;
210
+ }
211
+
212
+ .datepicker-day.is-daterange .datepicker-day-button:before {
213
+ background-color: var(--md-sys-color-primary-container);
206
214
  }
207
215
 
208
216
  .datepicker-day-button {
@@ -220,7 +228,7 @@
220
228
  z-index: 1;
221
229
 
222
230
  &:hover {
223
- background-color: rgba(var(--md-sys-color-primary-numeric), 0.06);
231
+ background-color: color-mix(in oklab, var(--md-sys-color-primary) 6%, transparent);
224
232
  }
225
233
 
226
234
  &:focus {
@@ -265,4 +273,3 @@
265
273
  color: var(--md-sys-color-error);
266
274
  }
267
275
 
268
-
@@ -0,0 +1,11 @@
1
+ @use "../abstracts" as *;
2
+
3
+ // Container created by src/ts/plugins/dockedDisplayPlugin.ts, which positions
4
+ // and animates it inline. Only the resting state belongs here.
5
+
6
+ .display-docked {
7
+ position: absolute;
8
+ opacity: 0;
9
+ z-index: 9999;
10
+ visibility: hidden;
11
+ }
@@ -0,0 +1,129 @@
1
+ @use "../abstracts" as *;
2
+
3
+ // Menus.
4
+ //
5
+ // Anatomy is the HTML. A <menu id> is the surface; each <li> is an item,
6
+ // an <hr> is a divider, and an <i> inside the item is the leading icon.
7
+ // The trigger is still .dropdown-trigger[data-target] — that is the JS
8
+ // contract. .dropdown-content is an alias (FormSelect and Autocomplete
9
+ // still generate it).
10
+ //
11
+ // Tokens follow https://m3.material.io/components/menus/specs
12
+ // container surface, 4dp corners, elevation 2, 112–280dp
13
+ // item 48dp, label-large / on-surface, 12dp inset
14
+ // leading icon 24dp, on-surface-variant
15
+ // divider 1dp outline-variant
16
+ // state layer 8% hover / 10% selected
17
+
18
+ [popover] {
19
+ outline: none;
20
+ padding: 0;
21
+ border: none;
22
+ }
23
+
24
+ .dropdown-content,
25
+ menu[id] {
26
+ --md-comp-menu-container-color: var(--md-sys-color-surface);
27
+ --md-comp-menu-container-shape: 4px;
28
+ --md-comp-menu-item-container-height: 48px;
29
+
30
+ box-sizing: border-box;
31
+ display: none;
32
+ position: absolute;
33
+ left: 0;
34
+ top: 0;
35
+ z-index: 9999;
36
+ min-width: 112px;
37
+ margin: 0;
38
+ padding: 8px 0;
39
+ list-style: none;
40
+ overflow-y: auto;
41
+ opacity: 0;
42
+ user-select: none;
43
+ transform-origin: 0 0;
44
+ background-color: var(--md-comp-menu-container-color);
45
+ border-radius: var(--md-comp-menu-container-shape);
46
+ color: var(--md-sys-color-on-surface);
47
+ @include z-depth("2");
48
+
49
+ > li {
50
+ margin: 0;
51
+ padding: 0;
52
+ width: 100%;
53
+ min-height: var(--md-comp-menu-item-container-height);
54
+ cursor: pointer;
55
+ text-align: left;
56
+
57
+ > a,
58
+ > button,
59
+ > span {
60
+ display: flex;
61
+ align-items: center;
62
+ gap: 12px;
63
+ box-sizing: border-box;
64
+ width: 100%;
65
+ min-height: var(--md-comp-menu-item-container-height);
66
+ margin: 0;
67
+ padding: 0 12px;
68
+ border: 0;
69
+ background: none;
70
+ color: var(--md-sys-color-on-surface);
71
+ text-decoration: none;
72
+ cursor: pointer;
73
+ @include typescale("label-large");
74
+ font-family: $font-stack;
75
+ }
76
+
77
+ > a > i,
78
+ > button > i,
79
+ > i {
80
+ flex: 0 0 24px;
81
+ font-size: 24px;
82
+ width: 24px;
83
+ height: 24px;
84
+ line-height: 24px;
85
+ color: var(--md-sys-color-on-surface-variant);
86
+ }
87
+ }
88
+
89
+ > li:not(.disabled, .divider):hover,
90
+ > li.active {
91
+ background-color: color-mix(in oklab, var(--md-sys-color-on-surface) 8%, transparent);
92
+ }
93
+
94
+ > li.disabled {
95
+ pointer-events: none;
96
+ opacity: 0.38;
97
+ }
98
+
99
+ > hr,
100
+ > li.divider {
101
+ display: block;
102
+ width: 100%;
103
+ height: 1px;
104
+ min-height: 0;
105
+ margin: 8px 0;
106
+ padding: 0;
107
+ border: 0;
108
+ background-color: var(--md-sys-color-outline-variant);
109
+ cursor: default;
110
+ }
111
+ }
112
+
113
+ body.keyboard-focused {
114
+ .dropdown-content > li:focus,
115
+ menu[id] > li:focus {
116
+ background-color: color-mix(in oklab, var(--md-sys-color-on-surface) 10%, transparent);
117
+ }
118
+ }
119
+
120
+ .input-field.col .dropdown-content [type="checkbox"] + label {
121
+ top: 1px;
122
+ left: 0;
123
+ height: 18px;
124
+ transform: none;
125
+ }
126
+
127
+ .dropdown-trigger {
128
+ cursor: pointer;
129
+ }
@@ -1,3 +1,5 @@
1
+ @use "../abstracts" as *;
2
+
1
3
  /* This is needed for some mobile phones to display the Google Icon font properly */
2
4
  .material-icons, .material-symbols-outlined,
3
5
  .material-symbols-rounded, .material-symbols-sharp {
@@ -0,0 +1,35 @@
1
+ // One line per component. Order is cascade order, so keep related widgets
2
+ // together and append new components at the end unless order matters.
3
+
4
+ @forward "buttons";
5
+ @forward "collection";
6
+ @forward "badges";
7
+ @forward "icons-material-design";
8
+ @forward "navbar";
9
+ @forward "toolbar";
10
+ @forward "transitions";
11
+ @forward "cards";
12
+ @forward "toast";
13
+ @forward "tabs";
14
+ @forward "tooltip";
15
+ @forward "dropdown";
16
+ @forward "modal";
17
+ @forward "collapsible";
18
+ @forward "chips";
19
+ @forward "lightbox";
20
+ @forward "parallax";
21
+ @forward "pushpin";
22
+ @forward "docked-display";
23
+ @forward "page-footer";
24
+ @forward "forms";
25
+ @forward "table_of_contents";
26
+ @forward "sidenav";
27
+ @forward "preloader";
28
+ @forward "slider";
29
+ @forward "carousel";
30
+ @forward "tapTarget";
31
+ @forward "pulse";
32
+ @forward "datepicker";
33
+ @forward "timepicker";
34
+ @forward "breadcrumb";
35
+ @forward "pagination";
@@ -1,9 +1,11 @@
1
- .materialboxed {
1
+ @use "../abstracts" as *;
2
+
3
+ .lightboxed {
2
4
  display: block;
3
5
  cursor: zoom-in;
4
6
  position: relative;
5
7
  transition: opacity .4s;
6
- -webkit-backface-visibility: hidden;
8
+ backface-visibility: hidden;
7
9
 
8
10
  &:hover {
9
11
  &:not(.active) {
@@ -15,7 +17,7 @@
15
17
  }
16
18
  }
17
19
 
18
- #materialbox-overlay {
20
+ #lightbox-overlay {
19
21
  position:fixed;
20
22
  top: 0;
21
23
  right: 0;
@@ -26,7 +28,7 @@
26
28
  will-change: opacity;
27
29
  }
28
30
 
29
- .materialbox-caption {
31
+ .lightbox-caption {
30
32
  position: fixed;
31
33
  display: none;
32
34
  color: var(--md-sys-color-on-background);