maverick-wave 6.3.0 → 6.4.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.
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "maverick-wave",
3
- "version": "6.3.0",
3
+ "version": "6.4.0",
4
4
  "config": {
5
- "version_short": "6.3"
5
+ "version_short": "6.4"
6
6
  },
7
7
  "description": "A lightweight, modern CSS framework for building responsive websites with elegance and speed.",
8
8
  "main": "src/js/main.js",
@@ -43,7 +43,7 @@
43
43
  font-weight: font-weight('medium');
44
44
  white-space: nowrap;
45
45
 
46
- > i {
46
+ > :is(i, svg, .mw-icon) {
47
47
  color: var(--mw-primary-text-color);
48
48
  }
49
49
 
@@ -30,6 +30,13 @@
30
30
  max-width: 960px;
31
31
  --mw-modal-max-height: 92dvh;
32
32
  }
33
+
34
+ // A document at a fixed height - one page gets the same box as twelve
35
+ &.mw-modal-full {
36
+ max-width: 1400px;
37
+ height: 92dvh;
38
+ --mw-modal-max-height: 92dvh;
39
+ }
33
40
  }
34
41
 
35
42
  // Phone: the dialog becomes a sheet
@@ -282,6 +289,20 @@
282
289
  }
283
290
  }
284
291
 
292
+ // Flex is safe at a fixed height, as in the drawer below: the body takes the rest
293
+ dialog.mw-modal.mw-modal-full {
294
+ &[open] {
295
+ display: flex;
296
+ flex-direction: column;
297
+ }
298
+
299
+ .mw-modal-body {
300
+ flex: 1 1 0;
301
+ min-height: 0;
302
+ max-height: none;
303
+ }
304
+ }
305
+
285
306
  // Stays a side panel on a phone, where every other modal becomes a sheet
286
307
  dialog.mw-modal.mw-modal-drawer {
287
308
  inset-block: 0;
@@ -32,10 +32,16 @@
32
32
  background: var(--mw-card-background);
33
33
  transition: transform var(--mw-duration-fast) var(--mw-ease-out);
34
34
 
35
- > a {
35
+ // A button where an application opens its own lightbox
36
+ > :is(a, button) {
36
37
  position: absolute;
37
38
  inset: 0;
38
39
  display: block;
40
+ width: 100%;
41
+ padding: 0;
42
+ border: 0;
43
+ background: none;
44
+ cursor: pointer;
39
45
  @include tappable;
40
46
  @include focus-ring-inset(-3px);
41
47
  }
@@ -58,7 +64,7 @@
58
64
  }
59
65
  }
60
66
 
61
- &:has(> a:active) {
67
+ &:has(> :is(a, button):active) {
62
68
  transform: scale(0.97);
63
69
  transition-duration: var(--mw-duration-instant);
64
70
  }
@@ -85,6 +85,11 @@
85
85
  cursor: text;
86
86
  }
87
87
 
88
+ // A row header stands first in its card and becomes its title
89
+ tbody th {
90
+ display: block;
91
+ }
92
+
88
93
  // Style each cell as a row in the card
89
94
  td {
90
95
  display: flex;
@@ -61,5 +61,17 @@
61
61
  font-size: font-size('base');
62
62
  transform: rotate(16deg);
63
63
  }
64
+
65
+ // Both icons in the markup, for an inline SVG the script cannot swap by class
66
+ &-sun,
67
+ &.mw-active &-moon,
68
+ &.active &-moon {
69
+ display: none;
70
+ }
71
+
72
+ &.mw-active &-sun,
73
+ &.active &-sun {
74
+ display: block;
75
+ }
64
76
  }
65
77
  }