@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,454 +0,0 @@
1
- @use '../foundation/variables' as *;
2
- @use '../utilities/elevation' as *;
3
-
4
- // ==========================================================================
5
- // App Bar (Top) — M3 Expressive
6
- // ==========================================================================
7
- //
8
- // Implements Material Design 3 Expressive top app bar.
9
- // Reference: https://m3.material.io/components/app-bars
10
- //
11
- // Variants:
12
- // .appbar — Small (default, 64dp)
13
- // .appbar.appbar-medium — Medium flexible (112dp expanded)
14
- // .appbar.appbar-large — Large flexible (152dp expanded)
15
- //
16
- // Structure:
17
- // <header class="appbar" role="banner">
18
- // <div class="appbar-row">
19
- // <a class="sidenav-trigger" aria-label="Open navigation">
20
- // <i class="material-symbols-outlined">menu</i>
21
- // </a>
22
- // <a class="appbar-title">Title</a>
23
- // <ul class="right" role="toolbar" aria-label="Actions">
24
- // <li><a href="#" aria-label="Search"><i>search</i></a></li>
25
- // </ul>
26
- // </div>
27
- // </header>
28
- //
29
- // Accessibility:
30
- // - Use role="banner" on the root element (or <header>)
31
- // - Use role="toolbar" + aria-label on action item containers
32
- // - All icon-only actions require aria-label
33
- // - Navigation icon needs aria-label (e.g., "Open navigation menu")
34
- // - Minimum touch target: 48x48dp for all interactive elements
35
- // - Keyboard: Tab to enter toolbar, Arrow keys between items (roving tabindex)
36
- // ==========================================================================
37
-
38
- :root {
39
- // App bar dimensions
40
- --appbar-height: 64px;
41
- --appbar-height-mobile: 56px;
42
- --appbar-medium-height: 112px;
43
- --appbar-large-height: 152px;
44
- // App bar color tokens (M3 Expressive)
45
- --appbar-container-color: var(--md-sys-color-surface);
46
- --appbar-on-container-color: var(--md-sys-color-on-surface);
47
- --appbar-action-icon-color: var(--md-sys-color-on-surface-variant);
48
- --appbar-scrolled-container-color: var(--md-sys-color-surface-container);
49
- // App bar title typography (M3 titleLarge)
50
- --appbar-title-size: 1.375rem; // 22sp
51
- --appbar-title-line-height: 1.75rem; // 28sp
52
- --appbar-title-weight: 400;
53
- // App bar headline typography for medium/large (M3 headlineSmall)
54
- --appbar-headline-size: 1.5rem; // 24sp
55
- --appbar-headline-line-height: 2rem; // 32sp
56
- --appbar-headline-weight: 400;
57
- // Minimum interactive target for accessibility
58
- --appbar-min-touch-target: 48px;
59
- // Horizontal padding
60
- --appbar-padding-inline: 4px;
61
- --appbar-title-padding-inline: 16px;
62
- }
63
-
64
- // ==========================================================================
65
- // Small App Bar (default)
66
- // ==========================================================================
67
-
68
- .appbar {
69
- background-color: var(--appbar-container-color);
70
- color: var(--appbar-on-container-color);
71
- width: 100%;
72
- height: var(--appbar-height-mobile);
73
- line-height: var(--appbar-height-mobile);
74
- transition: background-color 0.2s ease, box-shadow 0.2s ease;
75
- position: relative;
76
- z-index: 1;
77
-
78
- // Scrolled / lifted state — add via JS or :has() when content scrolls
79
- &.appbar-scrolled {
80
- background-color: var(--appbar-scrolled-container-color);
81
- @extend .z-depth-2;
82
- }
83
-
84
- // Links inherit container text color
85
- a {
86
- color: var(--appbar-on-container-color);
87
- }
88
-
89
- // Icons
90
- i,
91
- [class^="mdi-"], [class*="mdi-"],
92
- i.material-icons, i.material-symbols-outlined,
93
- i.material-symbols-rounded, i.material-symbols-sharp {
94
- display: block;
95
- font-size: 24px;
96
- height: var(--appbar-height-mobile);
97
- line-height: var(--appbar-height-mobile);
98
- }
99
-
100
- // ------------------------------------------------------------------
101
- // App Bar Row — primary layout container
102
- // ------------------------------------------------------------------
103
- .appbar-row {
104
- position: relative;
105
- height: 100%;
106
- padding-inline: var(--appbar-padding-inline);
107
- display: flex;
108
- align-items: center;
109
- }
110
-
111
- // ------------------------------------------------------------------
112
- // Navigation icon (sidenav trigger)
113
- // ------------------------------------------------------------------
114
- @media #{$large-and-up} {
115
- a.sidenav-trigger {
116
- display: none;
117
- }
118
- }
119
-
120
- .sidenav-trigger {
121
- float: left;
122
- position: relative;
123
- z-index: 1;
124
- height: var(--appbar-height-mobile);
125
- min-width: var(--appbar-min-touch-target);
126
- min-height: var(--appbar-min-touch-target);
127
- margin: 0 18px;
128
- display: inline-flex;
129
- align-items: center;
130
- justify-content: center;
131
- border-radius: 50%;
132
-
133
- &:focus-visible {
134
- outline: 2px solid var(--md-sys-color-primary);
135
- outline-offset: 2px;
136
- }
137
-
138
- i {
139
- height: var(--appbar-height-mobile);
140
- line-height: var(--appbar-height-mobile);
141
- }
142
- }
143
-
144
- // ------------------------------------------------------------------
145
- // App Bar Title (M3 titleLarge)
146
- // ------------------------------------------------------------------
147
- .appbar-title {
148
- font-size: var(--appbar-title-size);
149
- font-weight: var(--appbar-title-weight);
150
- line-height: var(--appbar-title-line-height);
151
- color: var(--appbar-on-container-color);
152
- overflow: hidden;
153
- text-overflow: ellipsis;
154
- white-space: nowrap;
155
- padding-inline: var(--appbar-title-padding-inline);
156
- flex: 1;
157
-
158
- &.center {
159
- text-align: center;
160
- position: absolute;
161
- left: 50%;
162
- transform: translateX(-50%);
163
- }
164
-
165
- @media #{$medium-and-down} {
166
- text-align: center;
167
- position: absolute;
168
- left: 50%;
169
- transform: translateX(-50%);
170
- max-width: 60%;
171
-
172
- &.left, &.right {
173
- position: relative;
174
- left: auto;
175
- transform: none;
176
- text-align: left;
177
- max-width: none;
178
- }
179
-
180
- &.left {
181
- margin-left: 0.5rem;
182
- }
183
- &.right {
184
- margin-left: auto;
185
- margin-right: 0.5rem;
186
- }
187
- }
188
-
189
- &.right {
190
- margin-left: auto;
191
- margin-right: 0.5rem;
192
- text-align: right;
193
- flex: none;
194
- }
195
-
196
- // Icon within title
197
- i,
198
- [class^="mdi-"], [class*="mdi-"],
199
- i.material-icons, i.material-symbols-outlined,
200
- i.material-symbols-rounded, i.material-symbols-sharp {
201
- float: left;
202
- margin-right: 15px;
203
- }
204
- }
205
-
206
- // ------------------------------------------------------------------
207
- // Action items (navigation list)
208
- // ------------------------------------------------------------------
209
- ul:not(.dropdown-content) {
210
- list-style-type: none;
211
- margin: 0;
212
- display: flex;
213
- align-items: center;
214
-
215
- & > li {
216
- transition: background-color 0.2s ease;
217
- padding: 0;
218
-
219
- & > a {
220
- transition: background-color 0.2s ease;
221
- font-size: 1rem;
222
- color: var(--appbar-on-container-color);
223
- display: flex;
224
- align-items: center;
225
- justify-content: center;
226
- padding: 0 15px;
227
- cursor: pointer;
228
- min-width: var(--appbar-min-touch-target);
229
- min-height: var(--appbar-min-touch-target);
230
-
231
- &:focus-visible {
232
- outline: 2px solid var(--md-sys-color-primary);
233
- outline-offset: -2px;
234
- border-radius: 4px;
235
- }
236
-
237
- &.active {
238
- background-color: rgba(var(--md-sys-color-on-surface-rgb, 0, 0, 0), 0.12);
239
- }
240
-
241
- &:hover:not(.active) {
242
- background-color: rgba(var(--md-sys-color-on-surface-rgb, 0, 0, 0), 0.08);
243
- }
244
-
245
- &.btn, &.btn-large, &.btn-flat, &.btn-floating {
246
- margin-top: -2px;
247
- margin-left: 15px;
248
- margin-right: 15px;
249
- display: inline-flex;
250
-
251
- & > .material-icons, & > .material-symbols-outlined,
252
- & > .material-symbols-rounded, & > .material-symbols-sharp {
253
- height: inherit;
254
- line-height: inherit;
255
- }
256
- }
257
-
258
- // Action icons use on-surface-variant per M3 spec
259
- i,
260
- [class^="mdi-"], [class*="mdi-"],
261
- i.material-icons, i.material-symbols-outlined,
262
- i.material-symbols-rounded, i.material-symbols-sharp {
263
- color: var(--appbar-action-icon-color);
264
- }
265
- }
266
- }
267
-
268
- &.left {
269
- float: left;
270
- }
271
- }
272
-
273
- // ------------------------------------------------------------------
274
- // Search form integration
275
- // ------------------------------------------------------------------
276
- form {
277
- height: 100%;
278
- }
279
-
280
- .input-field {
281
- margin: 0;
282
- height: 100%;
283
-
284
- input[type=search] {
285
- height: 100%;
286
- font-size: 1.2rem;
287
- border: none;
288
- padding-left: 2rem;
289
- color: var(--appbar-on-container-color);
290
- background-color: transparent;
291
-
292
- &:focus, &[type=text]:valid, &[type=password]:valid,
293
- &[type=email]:valid, &[type=url]:valid, &[type=date]:valid {
294
- border: none;
295
- box-shadow: none;
296
- }
297
- }
298
-
299
- label {
300
- top: 0;
301
- left: 0;
302
-
303
- i {
304
- color: var(--appbar-action-icon-color);
305
- transition: color 0.2s ease;
306
- }
307
-
308
- &.active i {
309
- color: var(--appbar-on-container-color);
310
- }
311
- }
312
- }
313
-
314
- // ==========================================================================
315
- // Medium Flexible App Bar (M3 Expressive)
316
- // ==========================================================================
317
- &.appbar-medium {
318
- height: auto;
319
- min-height: var(--appbar-medium-height);
320
-
321
- .appbar-row {
322
- min-height: var(--appbar-height-mobile);
323
- height: auto;
324
- }
325
-
326
- .appbar-content {
327
- position: relative;
328
- padding: 0 var(--appbar-title-padding-inline) 20px;
329
- line-height: normal;
330
- }
331
-
332
- .appbar-headline {
333
- display: block;
334
- font-size: var(--appbar-headline-size);
335
- font-weight: var(--appbar-headline-weight);
336
- line-height: var(--appbar-headline-line-height);
337
- color: var(--appbar-on-container-color);
338
- padding: 0 var(--appbar-title-padding-inline);
339
- }
340
- }
341
-
342
- // ==========================================================================
343
- // Large Flexible App Bar (M3 Expressive)
344
- // ==========================================================================
345
- &.appbar-large {
346
- height: auto;
347
- min-height: var(--appbar-large-height);
348
-
349
- .appbar-row {
350
- min-height: var(--appbar-height-mobile);
351
- height: auto;
352
- }
353
-
354
- .appbar-content {
355
- position: relative;
356
- padding: 0 var(--appbar-title-padding-inline) 28px;
357
- line-height: normal;
358
- }
359
-
360
- .appbar-headline {
361
- display: block;
362
- font-size: 1.75rem; // 28sp — M3 headlineMedium
363
- font-weight: 400;
364
- line-height: 2.25rem; // 36sp
365
- color: var(--appbar-on-container-color);
366
- padding: 0 var(--appbar-title-padding-inline);
367
- }
368
- }
369
-
370
- // ==========================================================================
371
- // Subtitle support (M3 Expressive)
372
- // ==========================================================================
373
- .appbar-subtitle {
374
- display: block;
375
- font-size: 0.875rem; // 14sp — M3 titleSmall
376
- font-weight: 400;
377
- line-height: 1.25rem; // 20sp
378
- color: var(--appbar-action-icon-color);
379
- padding: 0 var(--appbar-title-padding-inline);
380
- }
381
-
382
- // ==========================================================================
383
- // Responsive — Desktop (nested inside .appbar)
384
- // ==========================================================================
385
- @media #{$medium-and-up} {
386
- &,
387
- .appbar-row i,
388
- a.sidenav-trigger,
389
- a.sidenav-trigger i {
390
- height: var(--appbar-height);
391
- line-height: var(--appbar-height);
392
- }
393
-
394
- &.appbar-medium .appbar-row,
395
- &.appbar-large .appbar-row {
396
- min-height: var(--appbar-height);
397
- }
398
- }
399
- }
400
-
401
- // ==========================================================================
402
- // Fixed App Bar
403
- // ==========================================================================
404
-
405
- .appbar-fixed {
406
- position: relative;
407
- height: var(--appbar-height-mobile);
408
- z-index: 997;
409
-
410
- .appbar {
411
- position: fixed;
412
- right: 0;
413
- left: 0;
414
- top: 0;
415
- }
416
-
417
- @media #{$medium-and-up} {
418
- height: var(--appbar-height);
419
- }
420
- }
421
-
422
- // ==========================================================================
423
- // Backward compatibility aliases (deprecated — will be removed in v3)
424
- // ==========================================================================
425
- // Allows existing markup using .navbar classes to continue working.
426
- // Migrate to .appbar equivalents.
427
-
428
- .navbar {
429
- @extend .appbar;
430
- }
431
-
432
- .navbar-fixed {
433
- @extend .appbar-fixed;
434
- }
435
-
436
- .nav-wrapper {
437
- @extend .appbar-row;
438
- }
439
-
440
- .nav-extended {
441
- @extend .appbar-medium;
442
- }
443
-
444
- .nav-content {
445
- @extend .appbar-content;
446
- }
447
-
448
- .brand-logo {
449
- @extend .appbar-title;
450
- }
451
-
452
- .nav-title {
453
- @extend .appbar-headline;
454
- }
@@ -1,77 +0,0 @@
1
- // TODO: Make better structure
2
- :root {
3
- --bagde-height: 22px;
4
- }
5
-
6
- span.badge {
7
- min-width: 3rem;
8
- padding: 0 6px;
9
- margin-left: 14px;
10
- text-align: center;
11
- font-size: 1rem;
12
- line-height: var(--bagde-height);
13
- height: var(--bagde-height);
14
- color: var(--md-sys-color-on-surface-variant);
15
- float: right;
16
- box-sizing: border-box;
17
-
18
- &.new {
19
- font-weight: 300;
20
- font-size: 0.8rem;
21
- color: var(--md-sys-color-on-primary);
22
- background-color: var(--md-sys-color-primary);
23
- border-radius: 2px;
24
-
25
- &:after {
26
- content: " new";
27
- }
28
- }
29
-
30
- &[data-badge-caption]::after {
31
- content: " " attr(data-badge-caption);
32
- }
33
-
34
- // Context-specific overrides
35
- .active & {
36
- color: var(--md-sys-color-on-primary);
37
- }
38
-
39
- .appbar ul a &,
40
- .navbar ul a & {
41
- display: inline-block;
42
- float: none;
43
- margin-left: 4px;
44
- line-height: var(--bagde-height);
45
- height: var(--bagde-height);
46
- -webkit-font-smoothing: auto;
47
- }
48
-
49
- .collection-item & {
50
- margin-top: calc(calc(1.5rem * 0.5) - calc(var(--bagde-height) * 0.5));
51
- }
52
-
53
- .sidenav & {
54
- margin-top: calc(calc(var(--sidenav-line-height) * 0.5) - calc(22px * 0.5));
55
- }
56
-
57
- table & {
58
- display: inline-block;
59
- float: none;
60
- margin-left: auto;
61
- }
62
- }
63
-
64
- .collapsible {
65
- span.badge {
66
- margin-left: auto;
67
-
68
- &.leading {
69
- margin-right: 7px;
70
- order: -1;
71
- }
72
- }
73
-
74
- .active span.badge:not(.new) {
75
- color: var(--md-sys-color-on-surface-variant);
76
- }
77
- }