mnfst 0.5.80 → 0.5.82
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/LICENSE +1 -1
- package/lib/manifest.accordion.css +4 -4
- package/lib/manifest.appwrite.auth.js +66 -33
- package/lib/manifest.avatar.css +8 -8
- package/lib/manifest.button.css +7 -7
- package/lib/manifest.checkbox.css +5 -5
- package/lib/manifest.code.css +152 -193
- package/lib/manifest.code.js +841 -881
- package/lib/manifest.code.min.css +1 -1
- package/lib/manifest.colorpicker.css +11 -11
- package/lib/manifest.components.js +25 -155
- package/lib/manifest.css +278 -230
- package/lib/manifest.data.js +46 -2
- package/lib/manifest.dialog.css +2 -2
- package/lib/manifest.divider.css +2 -2
- package/lib/manifest.dropdown.css +9 -9
- package/lib/manifest.form.css +10 -10
- package/lib/manifest.input.css +9 -9
- package/lib/manifest.integrity.json +26 -0
- package/lib/manifest.js +60 -5
- package/lib/manifest.markdown.js +192 -79
- package/lib/manifest.min.css +1 -1
- package/lib/manifest.radio.css +1 -1
- package/lib/manifest.range.css +7 -7
- package/lib/manifest.resize.css +1 -1
- package/lib/manifest.router.js +49 -76
- package/lib/manifest.schema.json +1 -1
- package/lib/manifest.sidebar.css +5 -6
- package/lib/manifest.slides.css +5 -5
- package/lib/manifest.svg.js +75 -5
- package/lib/manifest.switch.css +4 -4
- package/lib/manifest.table.css +4 -4
- package/lib/manifest.theme.css +46 -41
- package/lib/manifest.toast.css +7 -7
- package/lib/manifest.tooltip.css +3 -3
- package/lib/manifest.tooltips.js +41 -0
- package/lib/manifest.typography.css +124 -69
- package/lib/manifest.utilities.css +48 -54
- package/lib/manifest.utilities.js +9 -29
- package/package.json +4 -7
- package/lib/manifest.export.js +0 -535
- package/lib/manifest.virtual.js +0 -319
|
@@ -13,8 +13,9 @@
|
|
|
13
13
|
.paragraph,
|
|
14
14
|
.small,
|
|
15
15
|
.caption,
|
|
16
|
-
.label
|
|
17
|
-
|
|
16
|
+
.label,
|
|
17
|
+
.link {
|
|
18
|
+
color: var(--color-content-stark, darkslategray);
|
|
18
19
|
|
|
19
20
|
/* Support inline icons */
|
|
20
21
|
&:where(:has([x-icon])) {
|
|
@@ -41,18 +42,10 @@
|
|
|
41
42
|
.h4,
|
|
42
43
|
.h5,
|
|
43
44
|
.h6 {
|
|
44
|
-
font-weight:
|
|
45
|
+
font-weight: 550;
|
|
45
46
|
word-wrap: break-word
|
|
46
47
|
}
|
|
47
48
|
|
|
48
|
-
:where(h1, h2, h3, h4):not(.unstyle),
|
|
49
|
-
.h1,
|
|
50
|
-
.h2,
|
|
51
|
-
.h3,
|
|
52
|
-
.h4 {
|
|
53
|
-
font-weight: 700;
|
|
54
|
-
}
|
|
55
|
-
|
|
56
49
|
:where(h1, h2, h3):not(.unstyle),
|
|
57
50
|
.h1,
|
|
58
51
|
.h2,
|
|
@@ -62,18 +55,18 @@
|
|
|
62
55
|
|
|
63
56
|
:where(h1):not(.unstyle),
|
|
64
57
|
.h1 {
|
|
65
|
-
font-size:
|
|
58
|
+
font-size: 3rem;
|
|
66
59
|
line-height: 1.25
|
|
67
60
|
}
|
|
68
61
|
|
|
69
62
|
:where(h2):not(.unstyle),
|
|
70
63
|
.h2 {
|
|
71
|
-
font-size:
|
|
64
|
+
font-size: 2.25rem
|
|
72
65
|
}
|
|
73
66
|
|
|
74
67
|
:where(h3):not(.unstyle),
|
|
75
68
|
.h3 {
|
|
76
|
-
font-size: 1.
|
|
69
|
+
font-size: 1.75rem;
|
|
77
70
|
line-height: 1.4
|
|
78
71
|
}
|
|
79
72
|
|
|
@@ -84,18 +77,20 @@
|
|
|
84
77
|
|
|
85
78
|
:where(h5):not(.unstyle),
|
|
86
79
|
.h5 {
|
|
87
|
-
font-
|
|
88
|
-
font-size: .875rem;
|
|
80
|
+
font-size: 1rem;
|
|
89
81
|
line-height: 1rem;
|
|
90
|
-
color: var(--color-content-neutral,
|
|
82
|
+
color: var(--color-content-neutral, gray);
|
|
83
|
+
|
|
84
|
+
& a:hover {
|
|
85
|
+
color: var(--color-content-stark, darkslategray)
|
|
86
|
+
}
|
|
91
87
|
}
|
|
92
88
|
|
|
93
89
|
:where(h6):not(.unstyle),
|
|
94
90
|
.h6 {
|
|
95
|
-
font-weight: 600;
|
|
96
91
|
font-size: 0.8125rem;
|
|
97
92
|
line-height: 1.4;
|
|
98
|
-
|
|
93
|
+
color: var(--color-brand-content, goldenrod)
|
|
99
94
|
}
|
|
100
95
|
|
|
101
96
|
/* Paragraphs */
|
|
@@ -105,18 +100,48 @@
|
|
|
105
100
|
}
|
|
106
101
|
|
|
107
102
|
/* Links */
|
|
108
|
-
:where(a:not([role=button]),
|
|
109
|
-
text-
|
|
110
|
-
text-
|
|
103
|
+
:where(a:not([role=button]), .link):not(.unstyle) {
|
|
104
|
+
text-align: unset;
|
|
105
|
+
text-decoration: none;
|
|
111
106
|
cursor: pointer;
|
|
112
107
|
transition: var(--transition, all .05s ease-in-out);
|
|
113
108
|
|
|
114
109
|
&:hover {
|
|
115
|
-
color: var(--color-content-neutral,
|
|
110
|
+
color: var(--color-content-neutral, gray)
|
|
116
111
|
}
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
:where(abbr, address, blockquote, code, del, figcaption, h1, h2, h3, h4, h5, h6, ins, legend, p, small, cite, q, .h1, .h2, .h3, .h4, .h5, .h6, .paragraph, .small, .caption, .label):not(.unstyle)>a {
|
|
115
|
+
text-decoration: underline;
|
|
116
|
+
text-underline-offset: 2px
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
/* Asides */
|
|
120
|
+
:where(aside):not(.unstyle) {
|
|
121
|
+
padding: calc(var(--spacing, 0.25rem) * 4);
|
|
122
|
+
border: 1px solid var(--color-line, color-mix(darkslategray 10%, transparent));
|
|
123
|
+
border-radius: var(--radius, 0.5rem)
|
|
124
|
+
}
|
|
117
125
|
|
|
118
|
-
|
|
119
|
-
|
|
126
|
+
/* Badges */
|
|
127
|
+
:where(.badge) {
|
|
128
|
+
display: inline-flex;
|
|
129
|
+
justify-content: center;
|
|
130
|
+
align-items: center;
|
|
131
|
+
gap: 0.25rem;
|
|
132
|
+
width: fit-content;
|
|
133
|
+
height: fit-content;
|
|
134
|
+
padding: 0.35ch 0.65ch;
|
|
135
|
+
font-weight: 500;
|
|
136
|
+
font-size: 0.75rem;
|
|
137
|
+
line-height: 1;
|
|
138
|
+
color: var(--color-field-inverse, darkslategray);
|
|
139
|
+
background-color: var(--color-surface-2, gainsboro);
|
|
140
|
+
border-radius: 100px;
|
|
141
|
+
|
|
142
|
+
/* Solo icons */
|
|
143
|
+
&:has(svg:only-child) {
|
|
144
|
+
padding: 0.35ch
|
|
120
145
|
}
|
|
121
146
|
}
|
|
122
147
|
|
|
@@ -127,8 +152,8 @@
|
|
|
127
152
|
max-width: 100%;
|
|
128
153
|
margin: calc(var(--spacing, 0.25rem) * 4) 0;
|
|
129
154
|
padding: 0 calc(var(--spacing, 0.25rem) * 4);
|
|
130
|
-
color: var(--color-content-stark,
|
|
131
|
-
border-inline-start: 0.25rem solid color-mix(in oklch, var(--color-content-stark,
|
|
155
|
+
color: var(--color-content-stark, darkslategray);
|
|
156
|
+
border-inline-start: 0.25rem solid color-mix(in oklch, var(--color-content-stark, darkslategray) 25%, transparent);
|
|
132
157
|
border-inline-end: none;
|
|
133
158
|
|
|
134
159
|
& * {
|
|
@@ -136,29 +161,33 @@
|
|
|
136
161
|
}
|
|
137
162
|
}
|
|
138
163
|
|
|
139
|
-
/*
|
|
164
|
+
/* Code */
|
|
140
165
|
:where(code):not(.unstyle) {
|
|
141
166
|
display: inline-block;
|
|
142
167
|
width: fit-content;
|
|
143
168
|
height: fit-content;
|
|
144
|
-
padding: 0
|
|
169
|
+
padding: 0 0.7ch;
|
|
145
170
|
font-size: 82.5%;
|
|
171
|
+
line-height: 1.4;
|
|
146
172
|
word-wrap: break-word;
|
|
147
|
-
color: var(--color-content-neutral,
|
|
148
|
-
background-color: color-mix(in oklch, var(--color-content-neutral,
|
|
149
|
-
border: 1px solid color-mix(in oklch, var(--color-content-subtle,
|
|
150
|
-
border-radius: var(--radius, 0.5rem)
|
|
173
|
+
color: var(--color-content-neutral, gray);
|
|
174
|
+
background-color: color-mix(in oklch, var(--color-content-neutral, gray) 10%, transparent);
|
|
175
|
+
border: 1px solid color-mix(in oklch, var(--color-content-subtle, darkgray) 10%, transparent);
|
|
176
|
+
border-radius: var(--radius, 0.5rem);
|
|
177
|
+
|
|
178
|
+
&[role="button"] {
|
|
179
|
+
cursor: pointer
|
|
180
|
+
}
|
|
151
181
|
}
|
|
152
182
|
|
|
153
183
|
/* Captions */
|
|
154
184
|
:where(figcaption):not(.unstyle),
|
|
155
185
|
.caption {
|
|
156
186
|
font-size: 0.8125rem;
|
|
157
|
-
color: var(--color-content-neutral,
|
|
187
|
+
color: var(--color-content-neutral, gray);
|
|
158
188
|
|
|
159
|
-
& a {
|
|
160
|
-
|
|
161
|
-
color: inherit
|
|
189
|
+
& a:hover {
|
|
190
|
+
color: var(--color-content-stark, darkslategray)
|
|
162
191
|
}
|
|
163
192
|
}
|
|
164
193
|
|
|
@@ -171,7 +200,11 @@
|
|
|
171
200
|
:where(small):not(.unstyle),
|
|
172
201
|
.small {
|
|
173
202
|
font-size: 0.875rem;
|
|
174
|
-
color: var(--color-content-neutral,
|
|
203
|
+
color: var(--color-content-neutral, gray);
|
|
204
|
+
|
|
205
|
+
& a:hover {
|
|
206
|
+
color: var(--color-content-stark, darkslategray)
|
|
207
|
+
}
|
|
175
208
|
}
|
|
176
209
|
|
|
177
210
|
/* Icons */
|
|
@@ -198,8 +231,8 @@
|
|
|
198
231
|
font-weight: 600;
|
|
199
232
|
line-height: 1;
|
|
200
233
|
text-align: center;
|
|
201
|
-
color: var(--color-content-neutral,
|
|
202
|
-
background-color: color-mix(in oklch, var(--color-content-neutral,
|
|
234
|
+
color: var(--color-content-neutral, gray);
|
|
235
|
+
background-color: color-mix(in oklch, var(--color-content-neutral, gray) 10%, transparent);
|
|
203
236
|
border-radius: calc(var(--radius, 0.5rem) / 1.5);
|
|
204
237
|
|
|
205
238
|
&:not(:last-of-type) {
|
|
@@ -229,43 +262,21 @@
|
|
|
229
262
|
white-space: normal
|
|
230
263
|
}
|
|
231
264
|
|
|
232
|
-
/* Badges */
|
|
233
|
-
:where(mark):not(.unstyle),
|
|
234
|
-
.badge {
|
|
235
|
-
display: inline-flex;
|
|
236
|
-
justify-content: center;
|
|
237
|
-
align-items: center;
|
|
238
|
-
gap: 0.25rem;
|
|
239
|
-
width: fit-content;
|
|
240
|
-
height: fit-content;
|
|
241
|
-
padding: var(--spacing, 0.25rem) calc(var(--spacing, 0.25rem) * 1.5);
|
|
242
|
-
font-weight: 500;
|
|
243
|
-
font-size: 0.75rem;
|
|
244
|
-
line-height: 1;
|
|
245
|
-
color: var(--color-field-inverse, oklch(16.6% 0.026 267));
|
|
246
|
-
background-color: var(--color-field-surface, oklch(91.79% 0.0029 264.26));
|
|
247
|
-
border-radius: 100px;
|
|
248
|
-
|
|
249
|
-
/* Solo icons */
|
|
250
|
-
&:has(svg:only-child) {
|
|
251
|
-
padding: var(--spacing, 0.25rem) calc(var(--spacing, 0.25rem) * 1);
|
|
252
|
-
}
|
|
253
|
-
}
|
|
254
|
-
|
|
255
265
|
/* Lists */
|
|
256
|
-
:where(ol):not(
|
|
266
|
+
:where(ol):not(.unstyle) {
|
|
257
267
|
list-style-type: decimal;
|
|
258
268
|
}
|
|
259
269
|
|
|
260
|
-
:where(ul):not(
|
|
270
|
+
:where(ul):not(.unstyle) {
|
|
261
271
|
list-style-type: disc;
|
|
262
272
|
}
|
|
263
273
|
|
|
264
|
-
:where(ol):not(
|
|
265
|
-
:where(ul):not(
|
|
274
|
+
:where(ol):not(.unstyle),
|
|
275
|
+
:where(ul):not(.unstyle) {
|
|
276
|
+
padding-inline-start: 1.75ch;
|
|
266
277
|
|
|
267
|
-
&:
|
|
268
|
-
padding-inline-start:
|
|
278
|
+
&:has(input[type=checkbox]) {
|
|
279
|
+
padding-inline-start: 0
|
|
269
280
|
}
|
|
270
281
|
|
|
271
282
|
/* Offset items so markers align inside the element frame */
|
|
@@ -305,6 +316,18 @@
|
|
|
305
316
|
}
|
|
306
317
|
}
|
|
307
318
|
|
|
319
|
+
:where(nav, menu):not(.unstyle) ul,
|
|
320
|
+
:where(nav, menu):not(.unstyle) ol {
|
|
321
|
+
list-style: none;
|
|
322
|
+
padding: 0;
|
|
323
|
+
|
|
324
|
+
& li,
|
|
325
|
+
li:not(:last-of-type) {
|
|
326
|
+
margin: 0;
|
|
327
|
+
padding: 0
|
|
328
|
+
}
|
|
329
|
+
}
|
|
330
|
+
|
|
308
331
|
/* RTL list overrides */
|
|
309
332
|
[dir=rtl] :where(ol):not(nav ol):not(menu ol):not(.unstyle),
|
|
310
333
|
[dir=rtl] :where(ul):not(nav ul):not(menu ul):not(.unstyle) {
|
|
@@ -334,6 +357,38 @@
|
|
|
334
357
|
}
|
|
335
358
|
}
|
|
336
359
|
|
|
360
|
+
/* Pre code blocks */
|
|
361
|
+
:where(pre):not(.unstyle) {
|
|
362
|
+
display: flex;
|
|
363
|
+
flex-flow: row wrap;
|
|
364
|
+
font-size: 0.8125rem;
|
|
365
|
+
line-height: 1.7;
|
|
366
|
+
background-color: var(--color-page, white);
|
|
367
|
+
border: 1px solid var(--color-line, color-mix(darkslategray 10%, transparent));
|
|
368
|
+
border-radius: var(--radius, 0.5rem);
|
|
369
|
+
overflow: hidden;
|
|
370
|
+
tab-size: 4;
|
|
371
|
+
white-space: pre;
|
|
372
|
+
white-space-collapse: preserve;
|
|
373
|
+
overflow-x: auto;
|
|
374
|
+
|
|
375
|
+
& code {
|
|
376
|
+
flex-grow: 1;
|
|
377
|
+
display: inline-flex;
|
|
378
|
+
height: auto;
|
|
379
|
+
padding: calc(var(--spacing, 0.25rem) * 4);
|
|
380
|
+
font-size: inherit;
|
|
381
|
+
line-height: inherit;
|
|
382
|
+
background-color: transparent;
|
|
383
|
+
border: 0 none;
|
|
384
|
+
box-shadow: none
|
|
385
|
+
}
|
|
386
|
+
|
|
387
|
+
&:not(:has(code)) {
|
|
388
|
+
padding: calc(var(--spacing, 0.25rem) * 4)
|
|
389
|
+
}
|
|
390
|
+
}
|
|
391
|
+
|
|
337
392
|
/* Spans */
|
|
338
393
|
:where(span):not(.unstyle) {
|
|
339
394
|
vertical-align: middle
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
|
|
36
36
|
/* Content width & horizontal centering */
|
|
37
37
|
:where(.content) {
|
|
38
|
-
width: var(--spacing-content-width,
|
|
38
|
+
width: var(--spacing-content-width, 74rem);
|
|
39
39
|
max-width: 100%;
|
|
40
40
|
margin-inline-start: auto;
|
|
41
41
|
margin-inline-end: auto
|
|
@@ -46,20 +46,8 @@
|
|
|
46
46
|
background-color: transparent;
|
|
47
47
|
|
|
48
48
|
&:hover {
|
|
49
|
-
background-color: var(--color-field-surface,
|
|
49
|
+
background-color: var(--color-field-surface, color-mix(darkslategray 10%, transparent))
|
|
50
50
|
}
|
|
51
|
-
|
|
52
|
-
/* &.brand:hover {
|
|
53
|
-
color: var(--color-brand-inverse, #763518)
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
&.accent:hover {
|
|
57
|
-
color: var(--color-accent-inverse, oklch(100% 0 0))
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
&.negative:hover {
|
|
61
|
-
color: var(--color-negative-inverse, white)
|
|
62
|
-
} */
|
|
63
51
|
}
|
|
64
52
|
|
|
65
53
|
/* Hug */
|
|
@@ -74,21 +62,21 @@
|
|
|
74
62
|
:where(.outlined) {
|
|
75
63
|
border-width: 1px;
|
|
76
64
|
border-style: solid;
|
|
77
|
-
border-color: color-mix(in oklch, var(--color-field-surface,
|
|
65
|
+
border-color: color-mix(in oklch, var(--color-field-surface, color-mix(darkslategray 10%, transparent)) 90%, var(--color-field-inverse, darkslategray))
|
|
78
66
|
}
|
|
79
67
|
|
|
80
68
|
/* Dark theme override */
|
|
81
69
|
.dark :where(.outlined) {
|
|
82
|
-
border-color: color-mix(in oklch, var(--color-field-surface,
|
|
70
|
+
border-color: color-mix(in oklch, var(--color-field-surface, color-mix(darkslategray 10%, transparent)) 80%, var(--color-field-inverse, darkslategray))
|
|
83
71
|
}
|
|
84
72
|
|
|
85
73
|
/* Transparent */
|
|
86
74
|
:where(.transparent) {
|
|
87
|
-
color: var(--color-content-neutral,
|
|
75
|
+
color: var(--color-content-neutral, gray);
|
|
88
76
|
background-color: transparent !important;
|
|
89
77
|
|
|
90
78
|
&:hover {
|
|
91
|
-
color: var(--color-content-stark,
|
|
79
|
+
color: var(--color-content-stark, darkslategray)
|
|
92
80
|
}
|
|
93
81
|
}
|
|
94
82
|
|
|
@@ -135,10 +123,10 @@
|
|
|
135
123
|
}
|
|
136
124
|
|
|
137
125
|
/* Width and horizontal centering for content wrappers */
|
|
138
|
-
&>header nav,
|
|
139
|
-
&>footer nav,
|
|
126
|
+
&>header nav:not([popover]),
|
|
127
|
+
&>footer nav:not([popover]),
|
|
140
128
|
&>main>section:not(.banner, .overlay-dark, .overlay-light) {
|
|
141
|
-
width: var(--spacing-content-width,
|
|
129
|
+
width: var(--spacing-content-width, 74rem);
|
|
142
130
|
max-width: 100%;
|
|
143
131
|
margin-inline-start: auto;
|
|
144
132
|
margin-inline-end: auto
|
|
@@ -221,7 +209,7 @@
|
|
|
221
209
|
|
|
222
210
|
/* Prose styles for long-form content */
|
|
223
211
|
:where(.prose, .prose details) {
|
|
224
|
-
width:
|
|
212
|
+
width: 42rem;
|
|
225
213
|
max-width: 100%;
|
|
226
214
|
|
|
227
215
|
/* Asides inside a prose element are used as callouts */
|
|
@@ -229,9 +217,9 @@
|
|
|
229
217
|
margin-top: calc(1rem * 1.4);
|
|
230
218
|
padding: 1rem;
|
|
231
219
|
border-radius: calc(var(--radius, 0.5rem) * 2);
|
|
232
|
-
color: var(--color-content-stark,
|
|
233
|
-
background-color: color-mix(in oklch, var(--color-field-surface,
|
|
234
|
-
border: 1px solid color-mix(in oklch, var(--color-field-surface,
|
|
220
|
+
color: var(--color-content-stark, darkslategray);
|
|
221
|
+
background-color: color-mix(in oklch, var(--color-field-surface, color-mix(darkslategray 10%, transparent)) 20%, transparent);
|
|
222
|
+
border: 1px solid color-mix(in oklch, var(--color-field-surface, color-mix(darkslategray 10%, transparent)) 30%, transparent);
|
|
235
223
|
|
|
236
224
|
&:not(.frame) * {
|
|
237
225
|
color: inherit
|
|
@@ -292,18 +280,24 @@
|
|
|
292
280
|
}
|
|
293
281
|
}
|
|
294
282
|
|
|
283
|
+
&>h1 {
|
|
284
|
+
font-size: 2.25rem
|
|
285
|
+
}
|
|
286
|
+
|
|
295
287
|
&>h1+p {
|
|
296
288
|
margin-top: 0.625rem;
|
|
297
289
|
font-size: 1.125rem;
|
|
298
|
-
color: var(--color-content-neutral,
|
|
290
|
+
color: var(--color-content-neutral, gray)
|
|
299
291
|
}
|
|
300
292
|
|
|
301
293
|
&>h2 {
|
|
294
|
+
font-size: 1.75rem;
|
|
302
295
|
margin-top: 1rem;
|
|
303
296
|
margin-bottom: calc(1rem * 0.6667)
|
|
304
297
|
}
|
|
305
298
|
|
|
306
299
|
&>h3 {
|
|
300
|
+
font-size: 1.25rem;
|
|
307
301
|
margin-top: calc(1rem * 2.4)
|
|
308
302
|
}
|
|
309
303
|
|
|
@@ -373,59 +367,59 @@
|
|
|
373
367
|
:where(.trailing) {
|
|
374
368
|
display: inline-block;
|
|
375
369
|
margin-inline-start: auto;
|
|
376
|
-
color: var(--color-content-neutral,
|
|
370
|
+
color: var(--color-content-neutral, gray)
|
|
377
371
|
}
|
|
378
372
|
|
|
379
373
|
/* Brand colors */
|
|
380
374
|
:where(.brand) {
|
|
381
|
-
--color-field-surface: var(--color-brand-surface,
|
|
382
|
-
--color-field-surface-hover: var(--color-brand-surface-hover,
|
|
383
|
-
--color-field-inverse: var(--color-brand-inverse,
|
|
384
|
-
--color-content-stark: var(--color-brand-content,
|
|
385
|
-
--color-content-neutral: color-mix(in oklch, var(--color-brand-content,
|
|
386
|
-
--color-content-subtle: color-mix(in oklch, var(--color-brand-content,
|
|
375
|
+
--color-field-surface: var(--color-brand-surface, goldenrod);
|
|
376
|
+
--color-field-surface-hover: var(--color-brand-surface-hover, darkgoldenrod);
|
|
377
|
+
--color-field-inverse: var(--color-brand-inverse, white);
|
|
378
|
+
--color-content-stark: var(--color-brand-content, goldenrod);
|
|
379
|
+
--color-content-neutral: color-mix(in oklch, var(--color-brand-content, goldenrod) 85%, transparent);
|
|
380
|
+
--color-content-subtle: color-mix(in oklch, var(--color-brand-content, goldenrod) 70%, transparent)
|
|
387
381
|
}
|
|
388
382
|
|
|
389
383
|
/* Accent colors */
|
|
390
384
|
:where(.accent) {
|
|
391
|
-
--color-field-surface: var(--color-accent-surface,
|
|
392
|
-
--color-field-surface-hover: var(--color-accent-surface-hover,
|
|
393
|
-
--color-field-inverse: var(--color-accent-inverse,
|
|
394
|
-
--color-content-stark: var(--color-accent-content,
|
|
395
|
-
--color-content-neutral: color-mix(in oklch, var(--color-accent-content,
|
|
396
|
-
--color-content-subtle: color-mix(in oklch, var(--color-accent-content,
|
|
385
|
+
--color-field-surface: var(--color-accent-surface, darkslategray);
|
|
386
|
+
--color-field-surface-hover: var(--color-accent-surface-hover, color-mix(darkslategray 90%, white));
|
|
387
|
+
--color-field-inverse: var(--color-accent-inverse, white);
|
|
388
|
+
--color-content-stark: var(--color-accent-content, darkslategray);
|
|
389
|
+
--color-content-neutral: color-mix(in oklch, var(--color-accent-content, darkslategray) 85%, transparent);
|
|
390
|
+
--color-content-subtle: color-mix(in oklch, var(--color-accent-content, darkslategray) 70%, transparent)
|
|
397
391
|
}
|
|
398
392
|
|
|
399
393
|
/* Negative colors */
|
|
400
394
|
:where(.negative) {
|
|
401
|
-
--color-field-surface: var(--color-negative-surface,
|
|
402
|
-
--color-field-surface-hover: var(--color-negative-surface-hover,
|
|
403
|
-
--color-field-inverse: var(--color-negative-inverse,
|
|
404
|
-
--color-content-stark: var(--color-negative-content,
|
|
405
|
-
--color-content-neutral: color-mix(in oklch, var(--color-negative-content,
|
|
406
|
-
--color-content-subtle: color-mix(in oklch, var(--color-negative-content,
|
|
395
|
+
--color-field-surface: var(--color-negative-surface, salmon);
|
|
396
|
+
--color-field-surface-hover: var(--color-negative-surface-hover, lightcoral);
|
|
397
|
+
--color-field-inverse: var(--color-negative-inverse, maroon);
|
|
398
|
+
--color-content-stark: var(--color-negative-content, crimson);
|
|
399
|
+
--color-content-neutral: color-mix(in oklch, var(--color-negative-content, crimson) 85%, transparent);
|
|
400
|
+
--color-content-subtle: color-mix(in oklch, var(--color-negative-content, crimson) 70%, transparent)
|
|
407
401
|
}
|
|
408
402
|
|
|
409
403
|
/* Positive colors */
|
|
410
404
|
:where(.positive) {
|
|
411
|
-
--color-field-surface: var(--color-positive-surface,
|
|
412
|
-
--color-field-surface-hover: var(--color-positive-surface-hover,
|
|
413
|
-
--color-field-inverse: var(--color-positive-inverse,
|
|
414
|
-
--color-content-stark: var(--color-positive-content,
|
|
415
|
-
--color-content-neutral: color-mix(in oklch, var(--color-positive-content,
|
|
416
|
-
--color-content-subtle: color-mix(in oklch, var(--color-positive-content,
|
|
405
|
+
--color-field-surface: var(--color-positive-surface, palegreen);
|
|
406
|
+
--color-field-surface-hover: var(--color-positive-surface-hover, lightgreen);
|
|
407
|
+
--color-field-inverse: var(--color-positive-inverse, darkgreen);
|
|
408
|
+
--color-content-stark: var(--color-positive-content, limegreen);
|
|
409
|
+
--color-content-neutral: color-mix(in oklch, var(--color-positive-content, limegreen) 85%, transparent);
|
|
410
|
+
--color-content-subtle: color-mix(in oklch, var(--color-positive-content, limegreen) 70%, transparent)
|
|
417
411
|
}
|
|
418
412
|
|
|
419
413
|
/* Text colors */
|
|
420
414
|
:where(.stark) {
|
|
421
|
-
color: var(--color-content-stark,
|
|
415
|
+
color: var(--color-content-stark, darkslategray)
|
|
422
416
|
}
|
|
423
417
|
|
|
424
418
|
:where(.neutral) {
|
|
425
|
-
color: var(--color-content-neutral,
|
|
419
|
+
color: var(--color-content-neutral, gray)
|
|
426
420
|
}
|
|
427
421
|
|
|
428
422
|
:where(.subtle) {
|
|
429
|
-
color: var(--color-content-subtle,
|
|
423
|
+
color: var(--color-content-subtle, darkgray)
|
|
430
424
|
}
|
|
431
425
|
}
|
|
@@ -2399,7 +2399,6 @@ TailwindCompiler.prototype.generateUtilitiesFromVars = function (cssText, usedDa
|
|
|
2399
2399
|
let selector = `.${escapeClassName(variantClass)}`;
|
|
2400
2400
|
let hasMediaQuery = false;
|
|
2401
2401
|
let mediaQueryRule = '';
|
|
2402
|
-
let nestedSelector = null; // For variants that end with & (CSS nesting)
|
|
2403
2402
|
|
|
2404
2403
|
for (const variant of parsed.variants) {
|
|
2405
2404
|
if (variant.isArbitrary) {
|
|
@@ -2417,18 +2416,10 @@ TailwindCompiler.prototype.generateUtilitiesFromVars = function (cssText, usedDa
|
|
|
2417
2416
|
selector = { baseClass: selector, arbitrarySelector };
|
|
2418
2417
|
}
|
|
2419
2418
|
} else if (variant.selector.includes('&')) {
|
|
2420
|
-
//
|
|
2421
|
-
|
|
2422
|
-
|
|
2423
|
-
|
|
2424
|
-
const nestedSelectorText = `&${selectorWithoutAmpersand}`;
|
|
2425
|
-
nestedSelector = nestedSelector ? `${nestedSelector} ${nestedSelectorText}` : nestedSelectorText;
|
|
2426
|
-
} else {
|
|
2427
|
-
// Handle variants like .dark &, .light &, .group &, etc.
|
|
2428
|
-
// Replace & with the actual selector
|
|
2429
|
-
const replacedSelector = variant.selector.replace(/&/g, selector);
|
|
2430
|
-
selector = replacedSelector;
|
|
2431
|
-
}
|
|
2419
|
+
// Substitute & with the current selector. This produces flat CSS that
|
|
2420
|
+
// works for both ancestor patterns (`.dark &` → `.dark .X`) and
|
|
2421
|
+
// self-extending patterns (`& > p` → `.X > p`).
|
|
2422
|
+
selector = variant.selector.replace(/&/g, selector);
|
|
2432
2423
|
} else if (variant.selector.startsWith(':')) {
|
|
2433
2424
|
// For pseudo-classes, append to selector
|
|
2434
2425
|
selector = `${selector}${variant.selector}`;
|
|
@@ -2444,9 +2435,6 @@ TailwindCompiler.prototype.generateUtilitiesFromVars = function (cssText, usedDa
|
|
|
2444
2435
|
if (typeof selector === 'object' && selector.arbitrarySelector) {
|
|
2445
2436
|
// Handle arbitrary selectors with nested CSS (for non-& selectors)
|
|
2446
2437
|
rule = `${selector.baseClass} {\n ${selector.arbitrarySelector} {\n ${cssContent}\n }\n}`;
|
|
2447
|
-
} else if (nestedSelector) {
|
|
2448
|
-
// Handle nested selectors (variants ending with &)
|
|
2449
|
-
rule = `${selector} {\n ${nestedSelector} {\n ${cssContent}\n }\n}`;
|
|
2450
2438
|
} else {
|
|
2451
2439
|
// Regular selector
|
|
2452
2440
|
rule = `${selector} { ${cssContent} }`;
|
|
@@ -2719,7 +2707,7 @@ TailwindCompiler.prototype.generateCustomUtilities = function (usedData) {
|
|
|
2719
2707
|
let selector = `.${escapeClassName(variantClass)}`;
|
|
2720
2708
|
let hasMediaQuery = false;
|
|
2721
2709
|
let mediaQueryRule = '';
|
|
2722
|
-
let nestedSelector = null;
|
|
2710
|
+
let nestedSelector = null;
|
|
2723
2711
|
|
|
2724
2712
|
for (const variant of parsed.variants) {
|
|
2725
2713
|
if (variant.isArbitrary) {
|
|
@@ -2737,18 +2725,10 @@ TailwindCompiler.prototype.generateCustomUtilities = function (usedData) {
|
|
|
2737
2725
|
selector = { baseClass: selector, arbitrarySelector };
|
|
2738
2726
|
}
|
|
2739
2727
|
} else if (variant.selector.includes('&')) {
|
|
2740
|
-
//
|
|
2741
|
-
|
|
2742
|
-
|
|
2743
|
-
|
|
2744
|
-
const nestedSelectorText = `&${selectorWithoutAmpersand}`;
|
|
2745
|
-
nestedSelector = nestedSelector ? `${nestedSelector} ${nestedSelectorText}` : nestedSelectorText;
|
|
2746
|
-
} else {
|
|
2747
|
-
// Handle variants like .dark &, .light &, .group &, etc.
|
|
2748
|
-
// Replace & with the actual selector
|
|
2749
|
-
const replacedSelector = variant.selector.replace(/&/g, selector);
|
|
2750
|
-
selector = replacedSelector;
|
|
2751
|
-
}
|
|
2728
|
+
// Substitute & with the current selector. This produces flat CSS that
|
|
2729
|
+
// works for both ancestor patterns (`.dark &` → `.dark .X`) and
|
|
2730
|
+
// self-extending patterns (`& > p` → `.X > p`).
|
|
2731
|
+
selector = variant.selector.replace(/&/g, selector);
|
|
2752
2732
|
} else if (variant.selector.startsWith(':')) {
|
|
2753
2733
|
// For pseudo-classes, append to selector
|
|
2754
2734
|
selector = `${selector}${variant.selector}`;
|
package/package.json
CHANGED
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mnfst",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.82",
|
|
4
4
|
"private": false,
|
|
5
5
|
"workspaces": [
|
|
6
6
|
"templates/starter",
|
|
7
7
|
"packages/render",
|
|
8
8
|
"packages/types",
|
|
9
|
-
"packages/test"
|
|
10
|
-
"packages/export"
|
|
9
|
+
"packages/test"
|
|
11
10
|
],
|
|
12
11
|
"main": "lib/manifest.js",
|
|
13
12
|
"style": "lib/manifest.css",
|
|
@@ -24,18 +23,16 @@
|
|
|
24
23
|
"start:docs": "node packages/run/serve.mjs docs",
|
|
25
24
|
"start:starter": "node packages/run/serve.mjs templates/starter --port 3001",
|
|
26
25
|
"start:dist": "node packages/run/serve.mjs src/test-prerender --port 5003",
|
|
27
|
-
"
|
|
26
|
+
"render": "node src/scripts/manifest.render.mjs --root src",
|
|
28
27
|
"prerender:docs": "node src/scripts/manifest.render.mjs --root docs",
|
|
29
28
|
"prerender:starter": "node src/scripts/manifest.render.mjs --root templates/starter",
|
|
30
|
-
"render": "node src/scripts/manifest.render.mjs --root src",
|
|
31
29
|
"release": "npm version patch --no-git-tag-version && npm publish",
|
|
32
30
|
"release:run": "cd packages/run && npm version patch --no-git-tag-version && npm publish --auth-type=web",
|
|
33
31
|
"release:render": "cd packages/render && npm version patch --no-git-tag-version && npm publish --auth-type=web",
|
|
34
32
|
"release:types": "cd packages/types && npm version patch --no-git-tag-version && npm publish --auth-type=web",
|
|
35
33
|
"release:test": "cd packages/test && npm version patch --no-git-tag-version && npm publish --auth-type=web",
|
|
36
|
-
"release:export": "cd packages/export && npm version patch --no-git-tag-version && npm publish --auth-type=web",
|
|
37
34
|
"release:starter": "cd packages/create-starter && npm version patch --no-git-tag-version && npm publish --auth-type=web",
|
|
38
|
-
"release:all": "npm run release:run && npm run release:render && npm run release:types && npm run release:test && npm run release:
|
|
35
|
+
"release:all": "npm run release:run && npm run release:render && npm run release:types && npm run release:test && npm run release:starter && npm run release",
|
|
39
36
|
"prepublishOnly": "npm run build",
|
|
40
37
|
"test": "vitest run",
|
|
41
38
|
"lint": "echo 'No linting configured'"
|