mnfst 0.5.14

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 (47) hide show
  1. package/LICENSE +11 -0
  2. package/README.md +58 -0
  3. package/dist/manifest.accordion.css +81 -0
  4. package/dist/manifest.appwrite.auth.js +6247 -0
  5. package/dist/manifest.appwrite.data.js +1586 -0
  6. package/dist/manifest.appwrite.presence.js +1845 -0
  7. package/dist/manifest.avatar.css +113 -0
  8. package/dist/manifest.button.css +79 -0
  9. package/dist/manifest.checkbox.css +58 -0
  10. package/dist/manifest.code.css +453 -0
  11. package/dist/manifest.code.js +958 -0
  12. package/dist/manifest.code.min.css +1 -0
  13. package/dist/manifest.components.js +737 -0
  14. package/dist/manifest.css +3124 -0
  15. package/dist/manifest.data.js +11413 -0
  16. package/dist/manifest.dialog.css +130 -0
  17. package/dist/manifest.divider.css +77 -0
  18. package/dist/manifest.dropdown.css +278 -0
  19. package/dist/manifest.dropdowns.js +378 -0
  20. package/dist/manifest.form.css +169 -0
  21. package/dist/manifest.icons.js +161 -0
  22. package/dist/manifest.input.css +129 -0
  23. package/dist/manifest.js +302 -0
  24. package/dist/manifest.localization.js +571 -0
  25. package/dist/manifest.markdown.js +738 -0
  26. package/dist/manifest.min.css +1 -0
  27. package/dist/manifest.radio.css +38 -0
  28. package/dist/manifest.resize.css +233 -0
  29. package/dist/manifest.resize.js +442 -0
  30. package/dist/manifest.router.js +1207 -0
  31. package/dist/manifest.sidebar.css +102 -0
  32. package/dist/manifest.slides.css +80 -0
  33. package/dist/manifest.slides.js +173 -0
  34. package/dist/manifest.switch.css +44 -0
  35. package/dist/manifest.table.css +74 -0
  36. package/dist/manifest.tabs.js +273 -0
  37. package/dist/manifest.tailwind.js +578 -0
  38. package/dist/manifest.theme.css +119 -0
  39. package/dist/manifest.themes.js +109 -0
  40. package/dist/manifest.toast.css +92 -0
  41. package/dist/manifest.toasts.js +285 -0
  42. package/dist/manifest.tooltip.css +156 -0
  43. package/dist/manifest.tooltips.js +331 -0
  44. package/dist/manifest.typography.css +341 -0
  45. package/dist/manifest.utilities.css +399 -0
  46. package/dist/manifest.utilities.js +3197 -0
  47. package/package.json +63 -0
@@ -0,0 +1,399 @@
1
+ /* Manifest Utilities */
2
+
3
+ @layer utilities {
4
+
5
+ /* Center in flex parent */
6
+ :where(.center) {
7
+ justify-content: center;
8
+ align-items: center
9
+ }
10
+
11
+ /* Flex utilities */
12
+ :where(.row, .row-wrap, .col, .col-wrap) {
13
+ display: flex
14
+ }
15
+
16
+ /* Flex column */
17
+ :where(.col) {
18
+ flex-flow: column nowrap
19
+ }
20
+
21
+ /* Wrapping flex column */
22
+ :where(.col-wrap) {
23
+ flex-flow: column wrap
24
+ }
25
+
26
+ /* Flex row */
27
+ :where(.row) {
28
+ flex-flow: row nowrap
29
+ }
30
+
31
+ /* Wrapping flex row */
32
+ :where(.row-wrap) {
33
+ flex-flow: row wrap
34
+ }
35
+
36
+ /* Content width & horizontal centering */
37
+ :where(.content) {
38
+ width: var(--spacing-content-width, 68.75rem);
39
+ max-width: 100%;
40
+ margin-inline-start: auto;
41
+ margin-inline-end: auto
42
+ }
43
+
44
+ /* Ghost */
45
+ :where(.ghost) {
46
+ color: var(--color-content-stark, oklch(16.6% 0.026 267));
47
+ background-color: transparent;
48
+
49
+ &:hover {
50
+ background-color: var(--color-field-surface, oklch(91.79% 0.0029 264.26))
51
+ }
52
+
53
+ &.brand:hover {
54
+ color: var(--color-brand-inverse, #763518)
55
+ }
56
+
57
+ &.accent:hover {
58
+ color: var(--color-accent-inverse, oklch(100% 0 0))
59
+ }
60
+
61
+ &.negative:hover {
62
+ color: var(--color-negative-inverse, white)
63
+ }
64
+ }
65
+
66
+ /* Hug */
67
+ :where(.hug) {
68
+ min-width: 0;
69
+ width: fit-content;
70
+ height: fit-content;
71
+ padding: 0
72
+ }
73
+
74
+ /* Outlined */
75
+ :where(.outlined) {
76
+ border-width: 1px;
77
+ border-style: solid;
78
+ border-color: color-mix(in oklch, var(--color-field-surface, oklch(91.79% 0.0029 264.26)) 90%, var(--color-field-inverse, oklch(16.6% 0.026 267)))
79
+ }
80
+
81
+ /* Dark theme override */
82
+ .dark :where(.outlined) {
83
+ border-color: color-mix(in oklch, var(--color-field-surface, oklch(91.79% 0.0029 264.26)) 80%, var(--color-field-inverse, oklch(16.6% 0.026 267)))
84
+ }
85
+
86
+ /* Selected */
87
+ :where(.selected) {
88
+ background-color: color-mix(in oklch, var(--color-field-surface, oklch(91.79% 0.0029 264.26)) 25%, transparent);
89
+ }
90
+
91
+ /* Transparent */
92
+ :where(.transparent) {
93
+ color: var(--color-content-neutral, oklch(48.26% 0.0365 255.09));
94
+ background-color: transparent !important;
95
+
96
+ &:hover {
97
+ color: var(--color-content-stark, oklch(16.6% 0.026 267))
98
+ }
99
+ }
100
+
101
+ /* Large */
102
+ :where(.lg) {
103
+ --spacing-field-height: 2.5rem;
104
+ --spacing-field-padding: 0.78rem;
105
+ font-size: 125%
106
+ }
107
+
108
+ /* Small */
109
+ :where(.sm) {
110
+ --spacing-field-height: 1.5rem;
111
+ --spacing-field-padding: 0.49rem;
112
+ font-size: 75%;
113
+
114
+ /* Reposition select picker icon */
115
+ &::picker-icon {
116
+ line-height: 0.2
117
+ }
118
+ }
119
+
120
+ /* Page content layout */
121
+ :where(body.page) {
122
+ display: flex;
123
+ flex-direction: column;
124
+ min-height: 100vh
125
+ }
126
+
127
+ .page {
128
+
129
+ /* Overlay header & footer if fixed */
130
+ &>header,
131
+ &>footer {
132
+ z-index: 30
133
+ }
134
+
135
+ /* Page margins */
136
+ &>header,
137
+ &>footer,
138
+ &>main {
139
+ padding-inline-start: var(--spacing-viewport-padding, 5vw);
140
+ padding-inline-end: var(--spacing-viewport-padding, 5vw);
141
+ }
142
+
143
+ /* Width and horizontal centering for content wrappers */
144
+ &>header nav,
145
+ &>footer nav,
146
+ &>main>section:not(.banner, .overlay-dark, .overlay-light) {
147
+ width: var(--spacing-content-width, 68.75rem);
148
+ max-width: 100%;
149
+ margin-inline-start: auto;
150
+ margin-inline-end: auto
151
+ }
152
+
153
+ /* Push footer down */
154
+ &>footer {
155
+ margin-top: auto
156
+ }
157
+ }
158
+
159
+ /* No focus */
160
+ .no-focus:focus,
161
+ .no-focus:focus-visible,
162
+ .no-focus:focus-within {
163
+ box-shadow: 0 0 0 0 transparent
164
+ }
165
+
166
+ /* No scrollbar */
167
+ :where(.no-scrollbar) {
168
+ -ms-overflow-style: none;
169
+ scrollbar-width: none;
170
+
171
+ &::-webkit-scrollbar {
172
+ display: none
173
+ }
174
+ }
175
+
176
+ /* Banner overlays */
177
+ :where(.overlay-dark, .overlay-light) {
178
+ position: relative;
179
+
180
+ &::after {
181
+ content: "";
182
+ position: absolute;
183
+ top: 0;
184
+ left: 0;
185
+ z-index: 0;
186
+ width: 100%;
187
+ height: 100%
188
+ }
189
+
190
+ >* {
191
+ position: relative;
192
+ z-index: 1
193
+ }
194
+ }
195
+
196
+ /* Dark overlay */
197
+ :where(.overlay-dark) {
198
+ color: white !important;
199
+
200
+ &::after {
201
+ background: oklch(0% 0 0 / 50%)
202
+ }
203
+ }
204
+
205
+ /* Light overlay */
206
+ :where(.overlay-light) {
207
+ color: black !important;
208
+
209
+ &::after {
210
+ background: oklch(100% 0 0 / 75%)
211
+ }
212
+ }
213
+
214
+ /* Prose styles for long-form content */
215
+ :where(.prose) {
216
+ width: 65ch;
217
+ max-width: 100%;
218
+
219
+ /* Asides inside a prose element are used as callouts */
220
+ & aside:not([popover]) {
221
+ margin-top: calc(1rem * 1.4);
222
+ padding: 1rem;
223
+ border-radius: calc(var(--radius, 0.5rem) * 2);
224
+ color: var(--color-content-stark, oklch(16.6% 0.026 267));
225
+ background-color: color-mix(in oklch, var(--color-field-surface, oklch(91.79% 0.0029 264.26)) 20%, transparent);
226
+ border: 1px solid color-mix(in oklch, var(--color-field-surface, oklch(91.79% 0.0029 264.26)) 30%, transparent);
227
+
228
+ &:not(.frame) * {
229
+ color: inherit
230
+ }
231
+
232
+ &:has([x-icon]):not(.frame) {
233
+ display: flex;
234
+ flex-direction: row;
235
+ gap: 1rem;
236
+
237
+ & [x-icon] {
238
+ padding-top: 0.25rem;
239
+ font-size: 1.25rem
240
+ }
241
+ }
242
+ }
243
+
244
+ &>a:not(:where(h1, h2, h3, h4, h5, h6, p, small, figcaption, label, li, blockquote, pre code, code, kbd, span, mark, [role=button]) a) {
245
+ margin-top: calc(1rem * 1.4);
246
+ }
247
+
248
+ &>blockquote {
249
+ margin-top: calc(1rem * 2);
250
+
251
+ & * {
252
+ margin: 0
253
+ }
254
+ }
255
+
256
+ &>figcaption {
257
+ margin-top: 1rem
258
+ }
259
+
260
+ &>figure {
261
+ margin-top: calc(1rem * 1.4);
262
+
263
+ & img {
264
+ margin: 0
265
+ }
266
+ }
267
+
268
+ &>h1+p {
269
+ margin-top: 0.625rem;
270
+ font-size: 1.125rem;
271
+ color: var(--color-content-neutral, oklch(48.26% 0.0365 255.09))
272
+ }
273
+
274
+ &>h2 {
275
+ margin-top: 1rem;
276
+ margin-bottom: calc(1rem * 0.6667)
277
+ }
278
+
279
+ &>h3 {
280
+ margin-top: calc(1rem * 2.4)
281
+ }
282
+
283
+ &>h4 {
284
+ margin-top: calc(1rem * 3)
285
+ }
286
+
287
+ &>h4+p {
288
+ margin-top: 0.25rem;
289
+ }
290
+
291
+ &>h5 {
292
+ margin-top: 1rem;
293
+ margin-bottom: 1rem
294
+ }
295
+
296
+ &>h6 {
297
+ margin-top: calc(1rem * 2);
298
+ margin-bottom: 1rem
299
+ }
300
+
301
+ &>hr {
302
+ margin-top: calc(1rem * 3);
303
+ margin-bottom: calc(1rem * 3)
304
+ }
305
+
306
+ &>img,
307
+ &>p {
308
+ margin-top: calc(1rem * 1.4)
309
+ }
310
+
311
+ &>ol,
312
+ &>ul,
313
+ &>small {
314
+ margin-top: 1rem
315
+ }
316
+
317
+ &>table {
318
+ margin-top: calc(1rem * 2);
319
+ margin-bottom: calc(1rem * 2)
320
+ }
321
+
322
+ &>x-code-group,
323
+ &>x-code,
324
+ &>pre {
325
+ margin-top: 2rem;
326
+ margin-bottom: 2rem
327
+ }
328
+
329
+ &>x-code-group x-code {
330
+ margin-top: 0;
331
+ margin-bottom: 0
332
+ }
333
+
334
+ &>x-code pre {
335
+ margin-top: 0;
336
+ margin-bottom: 0
337
+ }
338
+ }
339
+
340
+ /* Inline trailing content */
341
+ :where(.trailing) {
342
+ display: inline-block;
343
+ margin-inline-start: auto;
344
+ color: var(--color-content-neutral, oklch(48.26% 0.0365 255.09))
345
+ }
346
+
347
+ /* Brand colors */
348
+ :where(.brand) {
349
+ --color-field-surface: var(--color-brand-surface, #f6c07b);
350
+ --color-field-surface-hover: var(--color-brand-surface-hover, #f19b46);
351
+ --color-field-inverse: var(--color-brand-inverse, #763518);
352
+ --color-content-stark: var(--color-brand-content, #de6618);
353
+ --color-content-neutral: color-mix(in oklch, var(--color-brand-content, #de6618) 85%, transparent);
354
+ --color-content-subtle: color-mix(in oklch, var(--color-brand-content, #de6618) 70%, transparent);
355
+ }
356
+
357
+ /* Accent colors */
358
+ :where(.accent) {
359
+ --color-field-surface: var(--color-accent-surface, oklch(16.6% 0.026 267));
360
+ --color-field-surface-hover: var(--color-accent-surface-hover, oklch(28.7% 0.030787 270.1));
361
+ --color-field-inverse: var(--color-accent-inverse, oklch(100% 0 0));
362
+ --color-content-stark: var(--color-accent-content, oklch(16.6% 0.026 267));
363
+ --color-content-neutral: color-mix(in oklch, var(--color-accent-content, oklch(16.6% 0.026 267)) 85%, transparent);
364
+ --color-content-subtle: color-mix(in oklch, var(--color-accent-content, oklch(16.6% 0.026 267)) 70%, transparent);
365
+ }
366
+
367
+ /* Negative colors */
368
+ :where(.negative) {
369
+ --color-field-surface: var(--color-negative-surface, #ef4444);
370
+ --color-field-surface-hover: var(--color-negative-surface-hover, #dc2626);
371
+ --color-field-inverse: var(--color-negative-inverse, white);
372
+ --color-content-stark: var(--color-negative-content, #ef4444);
373
+ --color-content-neutral: color-mix(in oklch, var(--color-negative-content, #ef4444) 85%, transparent);
374
+ --color-content-subtle: color-mix(in oklch, var(--color-negative-content, #ef4444) 70%, transparent);
375
+ }
376
+
377
+ /* Positive colors */
378
+ :where(.positive) {
379
+ --color-field-surface: var(--color-positive-surface, #16a34a);
380
+ --color-field-surface-hover: var(--color-positive-surface-hover, #166534);
381
+ --color-field-inverse: var(--color-positive-inverse, white);
382
+ --color-content-stark: var(--color-positive-content, #16a34a);
383
+ --color-content-neutral: color-mix(in oklch, var(--color-positive-content, #16a34a) 85%, transparent);
384
+ --color-content-subtle: color-mix(in oklch, var(--color-positive-content, #16a34a) 70%, transparent);
385
+ }
386
+
387
+ /* Text colors */
388
+ :where(.stark) {
389
+ color: var(--color-content-stark, oklch(16.6% 0.026 267));
390
+ }
391
+
392
+ :where(.neutral) {
393
+ color: var(--color-content-neutral, oklch(48.26% 0.0365 255.09));
394
+ }
395
+
396
+ :where(.subtle) {
397
+ color: var(--color-content-subtle, oklch(67.4% 0.0318 251.27));
398
+ }
399
+ }