@lukeashford/aurelius 2.1.0 → 2.3.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/README.md +1 -3
- package/dist/index.d.mts +577 -2
- package/dist/index.d.ts +577 -2
- package/dist/index.js +2683 -164
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +2624 -162
- package/dist/index.mjs.map +1 -1
- package/dist/styles/base.css +4 -0
- package/dist/styles/prose.css +61 -0
- package/dist/styles/theme.css +230 -42
- package/llms.md +39 -3
- package/package.json +19 -5
- package/scripts/eslint.mjs +127 -117
package/dist/styles/base.css
CHANGED
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
@utility prose {
|
|
2
|
+
/* Body text */
|
|
3
|
+
--tw-prose-body: var(--color-silver);
|
|
4
|
+
--tw-prose-headings: var(--color-gold);
|
|
5
|
+
--tw-prose-lead: var(--color-silver);
|
|
6
|
+
--tw-prose-links: var(--color-gold);
|
|
7
|
+
--tw-prose-bold: var(--color-white);
|
|
8
|
+
--tw-prose-counters: var(--color-gold-muted);
|
|
9
|
+
--tw-prose-bullets: var(--color-gold-muted);
|
|
10
|
+
--tw-prose-hr: var(--color-ash);
|
|
11
|
+
--tw-prose-quotes: var(--color-silver);
|
|
12
|
+
--tw-prose-quote-borders: var(--color-gold-muted);
|
|
13
|
+
--tw-prose-captions: var(--color-zinc);
|
|
14
|
+
--tw-prose-kbd: var(--color-white);
|
|
15
|
+
--tw-prose-kbd-shadows: 0 0 0 var(--color-ash);
|
|
16
|
+
--tw-prose-code: var(--color-gold-light);
|
|
17
|
+
--tw-prose-pre-code: var(--color-silver);
|
|
18
|
+
--tw-prose-pre-bg: var(--color-charcoal);
|
|
19
|
+
--tw-prose-th-borders: var(--color-ash);
|
|
20
|
+
--tw-prose-td-borders: var(--color-slate);
|
|
21
|
+
|
|
22
|
+
/* Invert variants (used with prose-invert) */
|
|
23
|
+
--tw-prose-invert-body: var(--color-silver);
|
|
24
|
+
--tw-prose-invert-headings: var(--color-gold);
|
|
25
|
+
--tw-prose-invert-lead: var(--color-silver);
|
|
26
|
+
--tw-prose-invert-links: var(--color-gold);
|
|
27
|
+
--tw-prose-invert-bold: var(--color-white);
|
|
28
|
+
--tw-prose-invert-counters: var(--color-gold-muted);
|
|
29
|
+
--tw-prose-invert-bullets: var(--color-gold-muted);
|
|
30
|
+
--tw-prose-invert-hr: var(--color-ash);
|
|
31
|
+
--tw-prose-invert-quotes: var(--color-silver);
|
|
32
|
+
--tw-prose-invert-quote-borders: var(--color-gold-muted);
|
|
33
|
+
--tw-prose-invert-captions: var(--color-zinc);
|
|
34
|
+
--tw-prose-invert-kbd: var(--color-white);
|
|
35
|
+
--tw-prose-invert-kbd-shadows: 0 0 0 var(--color-ash);
|
|
36
|
+
--tw-prose-invert-code: var(--color-gold-light);
|
|
37
|
+
--tw-prose-invert-pre-code: var(--color-silver);
|
|
38
|
+
--tw-prose-invert-pre-bg: var(--color-charcoal);
|
|
39
|
+
--tw-prose-invert-th-borders: var(--color-ash);
|
|
40
|
+
--tw-prose-invert-td-borders: var(--color-slate);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
@utility prose-inherit {
|
|
44
|
+
--tw-prose-body: currentColor;
|
|
45
|
+
--tw-prose-headings: currentColor;
|
|
46
|
+
--tw-prose-lead: currentColor;
|
|
47
|
+
--tw-prose-links: currentColor;
|
|
48
|
+
--tw-prose-bold: currentColor;
|
|
49
|
+
--tw-prose-counters: currentColor;
|
|
50
|
+
--tw-prose-bullets: currentColor;
|
|
51
|
+
--tw-prose-hr: currentColor;
|
|
52
|
+
--tw-prose-quotes: currentColor;
|
|
53
|
+
--tw-prose-quote-borders: currentColor;
|
|
54
|
+
--tw-prose-captions: currentColor;
|
|
55
|
+
--tw-prose-kbd: currentColor;
|
|
56
|
+
--tw-prose-code: currentColor;
|
|
57
|
+
--tw-prose-pre-code: currentColor;
|
|
58
|
+
--tw-prose-pre-bg: transparent;
|
|
59
|
+
--tw-prose-th-borders: currentColor;
|
|
60
|
+
--tw-prose-td-borders: currentColor;
|
|
61
|
+
}
|
package/dist/styles/theme.css
CHANGED
|
@@ -5,7 +5,6 @@
|
|
|
5
5
|
|
|
6
6
|
@theme {
|
|
7
7
|
/* ===== COLORS ===== */
|
|
8
|
-
|
|
9
8
|
/* Black spectrum */
|
|
10
9
|
--color-void: #000000;
|
|
11
10
|
--color-obsidian: #0a0a0a;
|
|
@@ -14,13 +13,18 @@
|
|
|
14
13
|
--color-slate: #2a2a2a;
|
|
15
14
|
--color-ash: #3d3d3d;
|
|
16
15
|
|
|
17
|
-
/*
|
|
16
|
+
/* Core RGB helpers (reduce repeated rgba() literals) */
|
|
17
|
+
--ink-rgb: 0 0 0;
|
|
18
|
+
--gold-rgb: 201 162 39;
|
|
19
|
+
--glass-rgb: 20 20 20;
|
|
20
|
+
|
|
21
|
+
/* Gold spectrum (derived from one base where possible) */
|
|
18
22
|
--color-gold: #c9a227;
|
|
19
|
-
--color-gold-light:
|
|
20
|
-
--color-gold-bright:
|
|
21
|
-
--color-gold-muted: #
|
|
22
|
-
--color-gold-pale:
|
|
23
|
-
--color-gold-glow:
|
|
23
|
+
--color-gold-light: color-mix(in oklab, var(--color-gold) 75%, white);
|
|
24
|
+
--color-gold-bright: color-mix(in oklab, var(--color-gold) 60%, white);
|
|
25
|
+
--color-gold-muted: color-mix(in oklab, var(--color-gold) 55%, #6b5a44);
|
|
26
|
+
--color-gold-pale: color-mix(in oklab, var(--color-gold) 25%, white);
|
|
27
|
+
--color-gold-glow: rgb(var(--gold-rgb) / 0.15);
|
|
24
28
|
|
|
25
29
|
/* Neutrals */
|
|
26
30
|
--color-white: #ffffff;
|
|
@@ -39,7 +43,6 @@
|
|
|
39
43
|
--color-info-muted: #0369a1;
|
|
40
44
|
|
|
41
45
|
/* ===== TYPOGRAPHY ===== */
|
|
42
|
-
|
|
43
46
|
/* Font families */
|
|
44
47
|
--font-heading: "Marcellus", serif;
|
|
45
48
|
--font-body: "Raleway", system-ui, sans-serif;
|
|
@@ -112,8 +115,11 @@
|
|
|
112
115
|
--spacing-16: 4rem;
|
|
113
116
|
--spacing-20: 5rem;
|
|
114
117
|
--spacing-24: 6rem;
|
|
118
|
+
--spacing-25: 6.25rem;
|
|
115
119
|
--spacing-28: 7rem;
|
|
116
120
|
--spacing-32: 8rem;
|
|
121
|
+
--spacing-cursor: 1.1em;
|
|
122
|
+
--spacing-cursor-offset: 0.1em;
|
|
117
123
|
|
|
118
124
|
/* ===== BORDER RADIUS ===== */
|
|
119
125
|
--radius-sm: 0.125rem;
|
|
@@ -125,19 +131,31 @@
|
|
|
125
131
|
--radius-full: 9999px;
|
|
126
132
|
|
|
127
133
|
/* ===== SHADOWS ===== */
|
|
128
|
-
--shadow-sm: 0 1px 2px 0
|
|
129
|
-
--shadow-md: 0 4px 6px -1px
|
|
130
|
-
|
|
131
|
-
--shadow-
|
|
132
|
-
|
|
133
|
-
--shadow-
|
|
134
|
-
|
|
135
|
-
--shadow-
|
|
136
|
-
|
|
134
|
+
--shadow-sm: 0 1px 2px 0 rgb(var(--ink-rgb) / 0.4);
|
|
135
|
+
--shadow-md: 0 4px 6px -1px rgb(var(--ink-rgb) / 0.4),
|
|
136
|
+
0 2px 4px -2px rgb(var(--ink-rgb) / 0.3);
|
|
137
|
+
--shadow-lg: 0 10px 15px -3px rgb(var(--ink-rgb) / 0.4),
|
|
138
|
+
0 4px 6px -4px rgb(var(--ink-rgb) / 0.3);
|
|
139
|
+
--shadow-xl: 0 20px 25px -5px rgb(var(--ink-rgb) / 0.4),
|
|
140
|
+
0 8px 10px -6px rgb(var(--ink-rgb) / 0.3);
|
|
141
|
+
--shadow-2xl: 0 25px 50px -12px rgb(var(--ink-rgb) / 0.5);
|
|
142
|
+
|
|
143
|
+
--shadow-glow: 0 0 20px rgb(var(--gold-rgb) / 0.3);
|
|
144
|
+
--shadow-glow-sm: 0 0 10px rgb(var(--gold-rgb) / 0.2);
|
|
145
|
+
--shadow-glow-md: 0 0 15px rgb(var(--gold-rgb) / 0.3);
|
|
146
|
+
--shadow-glow-lg: 0 0 40px rgb(var(--gold-rgb) / 0.4);
|
|
147
|
+
|
|
148
|
+
--shadow-inner: inset 0 2px 4px 0 rgb(var(--ink-rgb) / 0.3);
|
|
137
149
|
|
|
138
150
|
/* ===== TRANSITIONS ===== */
|
|
139
|
-
|
|
140
|
-
|
|
151
|
+
/* Durations - use --transition-duration-* for Tailwind v4 duration-* utilities */
|
|
152
|
+
--transition-duration-instant: 75ms;
|
|
153
|
+
--transition-duration-fast: 150ms;
|
|
154
|
+
--transition-duration-normal: 200ms;
|
|
155
|
+
--transition-duration-slow: 300ms;
|
|
156
|
+
--transition-duration-slower: 500ms;
|
|
157
|
+
|
|
158
|
+
/* Legacy duration aliases for CSS usage */
|
|
141
159
|
--duration-instant: 75ms;
|
|
142
160
|
--duration-fast: 150ms;
|
|
143
161
|
--duration-normal: 200ms;
|
|
@@ -148,37 +166,84 @@
|
|
|
148
166
|
--ease-smooth: cubic-bezier(0.16, 1, 0.3, 1);
|
|
149
167
|
--ease-snap: cubic-bezier(0.5, 0, 0.1, 1);
|
|
150
168
|
|
|
169
|
+
/* ===== ASPECT RATIOS ===== */
|
|
170
|
+
--aspect-ratio-wide: 21 / 9;
|
|
171
|
+
|
|
151
172
|
/* ===== ANIMATIONS ===== */
|
|
152
173
|
--animate-fade-in: fade-in 200ms ease-out;
|
|
153
174
|
--animate-fade-out: fade-out 150ms ease-in;
|
|
154
175
|
--animate-slide-in-right: slide-in-right 300ms var(--ease-smooth);
|
|
155
176
|
--animate-slide-out-right: slide-out-right 200ms ease-in;
|
|
156
177
|
--animate-pulse-glow: pulse-glow 2s ease-in-out infinite;
|
|
178
|
+
--animate-cursor-blink: cursor-blink 1s steps(1) infinite;
|
|
179
|
+
|
|
180
|
+
/* ===== LAYOUT TOKENS ===== */
|
|
181
|
+
--container-sm: 640px;
|
|
182
|
+
--container-md: 768px;
|
|
183
|
+
--container-lg: 1024px;
|
|
184
|
+
--container-xl: 1280px;
|
|
185
|
+
--container-2xl: 1536px;
|
|
157
186
|
}
|
|
158
187
|
|
|
159
188
|
@keyframes fade-in {
|
|
160
|
-
0% {
|
|
161
|
-
|
|
189
|
+
0% {
|
|
190
|
+
opacity: 0;
|
|
191
|
+
}
|
|
192
|
+
100% {
|
|
193
|
+
opacity: 1;
|
|
194
|
+
}
|
|
162
195
|
}
|
|
163
196
|
|
|
164
197
|
@keyframes fade-out {
|
|
165
|
-
0% {
|
|
166
|
-
|
|
198
|
+
0% {
|
|
199
|
+
opacity: 1;
|
|
200
|
+
}
|
|
201
|
+
100% {
|
|
202
|
+
opacity: 0;
|
|
203
|
+
}
|
|
167
204
|
}
|
|
168
205
|
|
|
169
206
|
@keyframes slide-in-right {
|
|
170
|
-
0% {
|
|
171
|
-
|
|
207
|
+
0% {
|
|
208
|
+
transform: translateX(100%);
|
|
209
|
+
opacity: 0;
|
|
210
|
+
}
|
|
211
|
+
100% {
|
|
212
|
+
transform: translateX(0);
|
|
213
|
+
opacity: 1;
|
|
214
|
+
}
|
|
172
215
|
}
|
|
173
216
|
|
|
174
217
|
@keyframes slide-out-right {
|
|
175
|
-
0% {
|
|
176
|
-
|
|
218
|
+
0% {
|
|
219
|
+
transform: translateX(0);
|
|
220
|
+
opacity: 1;
|
|
221
|
+
}
|
|
222
|
+
100% {
|
|
223
|
+
transform: translateX(100%);
|
|
224
|
+
opacity: 0;
|
|
225
|
+
}
|
|
177
226
|
}
|
|
178
227
|
|
|
179
228
|
@keyframes pulse-glow {
|
|
180
|
-
0%,
|
|
181
|
-
|
|
229
|
+
0%,
|
|
230
|
+
100% {
|
|
231
|
+
box-shadow: 0 0 20px rgb(var(--gold-rgb) / 0.3);
|
|
232
|
+
}
|
|
233
|
+
50% {
|
|
234
|
+
box-shadow: 0 0 30px rgb(var(--gold-rgb) / 0.5);
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
@keyframes cursor-blink {
|
|
239
|
+
0%,
|
|
240
|
+
50% {
|
|
241
|
+
opacity: 1;
|
|
242
|
+
}
|
|
243
|
+
51%,
|
|
244
|
+
100% {
|
|
245
|
+
opacity: 0;
|
|
246
|
+
}
|
|
182
247
|
}
|
|
183
248
|
|
|
184
249
|
/* ===== BASE STYLES (applied via @layer base) ===== */
|
|
@@ -202,11 +267,14 @@
|
|
|
202
267
|
width: 100%;
|
|
203
268
|
}
|
|
204
269
|
|
|
205
|
-
table,
|
|
270
|
+
table,
|
|
271
|
+
th,
|
|
272
|
+
td {
|
|
206
273
|
border: 1px solid var(--color-gold-muted);
|
|
207
274
|
}
|
|
208
275
|
|
|
209
|
-
th,
|
|
276
|
+
th,
|
|
277
|
+
td {
|
|
210
278
|
padding: 0.5rem 0.75rem;
|
|
211
279
|
}
|
|
212
280
|
|
|
@@ -238,22 +306,58 @@
|
|
|
238
306
|
}
|
|
239
307
|
|
|
240
308
|
/* Headings */
|
|
241
|
-
h1,
|
|
309
|
+
h1,
|
|
310
|
+
h2,
|
|
311
|
+
h3,
|
|
312
|
+
h4,
|
|
313
|
+
h5,
|
|
314
|
+
h6 {
|
|
242
315
|
font-family: var(--font-heading);
|
|
243
316
|
font-weight: 600;
|
|
244
317
|
letter-spacing: -0.025em;
|
|
245
318
|
color: var(--color-white);
|
|
246
319
|
}
|
|
247
320
|
|
|
248
|
-
h1
|
|
249
|
-
h2 {
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
321
|
+
h1,
|
|
322
|
+
h2 {
|
|
323
|
+
color: var(--color-gold);
|
|
324
|
+
}
|
|
325
|
+
|
|
326
|
+
h1 {
|
|
327
|
+
font-size: 2.25rem;
|
|
328
|
+
line-height: 1.25;
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
h2 {
|
|
332
|
+
font-size: 1.875rem;
|
|
333
|
+
line-height: 1.25;
|
|
334
|
+
}
|
|
335
|
+
|
|
336
|
+
h3 {
|
|
337
|
+
font-size: 1.5rem;
|
|
338
|
+
line-height: 1.375;
|
|
339
|
+
}
|
|
340
|
+
|
|
341
|
+
h4 {
|
|
342
|
+
font-size: 1.25rem;
|
|
343
|
+
line-height: 1.375;
|
|
344
|
+
}
|
|
345
|
+
|
|
346
|
+
h5 {
|
|
347
|
+
font-size: 1.125rem;
|
|
348
|
+
line-height: 1.5;
|
|
349
|
+
}
|
|
350
|
+
|
|
351
|
+
h6 {
|
|
352
|
+
font-size: 1rem;
|
|
353
|
+
line-height: 1.5;
|
|
354
|
+
}
|
|
254
355
|
|
|
255
356
|
/* Code */
|
|
256
|
-
code,
|
|
357
|
+
code,
|
|
358
|
+
pre,
|
|
359
|
+
kbd,
|
|
360
|
+
samp {
|
|
257
361
|
font-family: var(--font-mono);
|
|
258
362
|
font-size: 0.875em;
|
|
259
363
|
}
|
|
@@ -303,7 +407,12 @@
|
|
|
303
407
|
|
|
304
408
|
/* ===== UTILITY CLASSES ===== */
|
|
305
409
|
@utility text-gradient-gold {
|
|
306
|
-
background: linear-gradient(
|
|
410
|
+
background: linear-gradient(
|
|
411
|
+
to right,
|
|
412
|
+
var(--color-gold),
|
|
413
|
+
var(--color-gold-light),
|
|
414
|
+
var(--color-gold)
|
|
415
|
+
);
|
|
307
416
|
-webkit-background-clip: text;
|
|
308
417
|
background-clip: text;
|
|
309
418
|
color: transparent;
|
|
@@ -317,6 +426,10 @@
|
|
|
317
426
|
box-shadow: var(--shadow-glow-sm);
|
|
318
427
|
}
|
|
319
428
|
|
|
429
|
+
@utility glow-md {
|
|
430
|
+
box-shadow: var(--shadow-glow-md);
|
|
431
|
+
}
|
|
432
|
+
|
|
320
433
|
@utility glow-lg {
|
|
321
434
|
box-shadow: var(--shadow-glow-lg);
|
|
322
435
|
}
|
|
@@ -336,12 +449,12 @@
|
|
|
336
449
|
|
|
337
450
|
@utility backdrop-glass {
|
|
338
451
|
backdrop-filter: blur(12px);
|
|
339
|
-
background-color:
|
|
452
|
+
background-color: rgb(var(--glass-rgb) / 0.8);
|
|
340
453
|
}
|
|
341
454
|
|
|
342
455
|
@utility focus-ring {
|
|
343
456
|
&:focus-visible {
|
|
344
|
-
outline: 2px solid
|
|
457
|
+
outline: 2px solid var(--color-gold);
|
|
345
458
|
outline-offset: 2px;
|
|
346
459
|
}
|
|
347
460
|
}
|
|
@@ -366,3 +479,78 @@
|
|
|
366
479
|
left: 50%;
|
|
367
480
|
transform: translate(-50%, -50%);
|
|
368
481
|
}
|
|
482
|
+
|
|
483
|
+
@utility aspect-wide {
|
|
484
|
+
aspect-ratio: var(--aspect-ratio-wide);
|
|
485
|
+
}
|
|
486
|
+
|
|
487
|
+
/* ===== LAYOUT COMPONENTS ===== */
|
|
488
|
+
/* Container - Responsive max-width wrapper with horizontal padding */
|
|
489
|
+
@utility container {
|
|
490
|
+
width: 100%;
|
|
491
|
+
margin-inline: auto;
|
|
492
|
+
padding-inline: var(--spacing-4);
|
|
493
|
+
|
|
494
|
+
@media (min-width: 640px) {
|
|
495
|
+
max-width: var(--container-sm);
|
|
496
|
+
}
|
|
497
|
+
|
|
498
|
+
@media (min-width: 768px) {
|
|
499
|
+
max-width: var(--container-md);
|
|
500
|
+
}
|
|
501
|
+
|
|
502
|
+
@media (min-width: 1024px) {
|
|
503
|
+
max-width: var(--container-lg);
|
|
504
|
+
}
|
|
505
|
+
|
|
506
|
+
@media (min-width: 1280px) {
|
|
507
|
+
max-width: var(--container-xl);
|
|
508
|
+
}
|
|
509
|
+
|
|
510
|
+
@media (min-width: 1536px) {
|
|
511
|
+
max-width: var(--container-2xl);
|
|
512
|
+
}
|
|
513
|
+
}
|
|
514
|
+
|
|
515
|
+
/* Container size variants */
|
|
516
|
+
@utility container-sm {
|
|
517
|
+
width: 100%;
|
|
518
|
+
max-width: var(--container-sm);
|
|
519
|
+
margin-inline: auto;
|
|
520
|
+
padding-inline: var(--spacing-4);
|
|
521
|
+
}
|
|
522
|
+
|
|
523
|
+
@utility container-md {
|
|
524
|
+
width: 100%;
|
|
525
|
+
max-width: var(--container-md);
|
|
526
|
+
margin-inline: auto;
|
|
527
|
+
padding-inline: var(--spacing-4);
|
|
528
|
+
}
|
|
529
|
+
|
|
530
|
+
@utility container-lg {
|
|
531
|
+
width: 100%;
|
|
532
|
+
max-width: var(--container-lg);
|
|
533
|
+
margin-inline: auto;
|
|
534
|
+
padding-inline: var(--spacing-4);
|
|
535
|
+
}
|
|
536
|
+
|
|
537
|
+
@utility container-xl {
|
|
538
|
+
width: 100%;
|
|
539
|
+
max-width: var(--container-xl);
|
|
540
|
+
margin-inline: auto;
|
|
541
|
+
padding-inline: var(--spacing-4);
|
|
542
|
+
}
|
|
543
|
+
|
|
544
|
+
@utility container-fluid {
|
|
545
|
+
width: 100%;
|
|
546
|
+
padding-inline: var(--spacing-4);
|
|
547
|
+
}
|
|
548
|
+
|
|
549
|
+
/* Row - CSS Grid-based 12-column layout
|
|
550
|
+
* Uses CSS Grid instead of flexbox for cleaner, modern layout.
|
|
551
|
+
* Children use Tailwind's col-span-* utilities (e.g., col-span-6, md:col-span-4).
|
|
552
|
+
*/
|
|
553
|
+
@utility row {
|
|
554
|
+
display: grid;
|
|
555
|
+
grid-template-columns: repeat(12, minmax(0, 1fr));
|
|
556
|
+
}
|
package/llms.md
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
```bash
|
|
8
8
|
npm install @lukeashford/aurelius
|
|
9
|
-
npm install -D eslint @typescript-eslint/parser eslint-plugin-better-tailwindcss @poupe/eslint-plugin-tailwindcss @eslint/css tailwind-csstree
|
|
9
|
+
npm install -D tailwindcss postcss @tailwindcss/postcss eslint @typescript-eslint/parser eslint-plugin-better-tailwindcss @poupe/eslint-plugin-tailwindcss @eslint/css tailwind-csstree
|
|
10
10
|
```
|
|
11
11
|
|
|
12
12
|
### 2. Import the design system
|
|
@@ -57,22 +57,51 @@ Import from `@lukeashford/aurelius`:
|
|
|
57
57
|
|
|
58
58
|
| Component | Props |
|
|
59
59
|
|-----------|-------|
|
|
60
|
+
| Accordion | defaultValue, value |
|
|
60
61
|
| Alert | variant (info, success, warning, error), title |
|
|
61
62
|
| Avatar | src, alt, name, size (xs, sm, md, lg, xl, 2xl), status (online, offline, busy) |
|
|
62
63
|
| Badge | variant (default, gold, success, error, warning, info) |
|
|
64
|
+
| BrandIcon | size (sm, md, lg), variant (solid, outline) |
|
|
65
|
+
| Breadcrumb | separator |
|
|
63
66
|
| Button | variant (primary, important, elevated, outlined, featured, ghost, danger), size (sm, md, lg, xl), loading |
|
|
64
|
-
| Card | variant (default, elevated, outlined, ghost, featured), interactive |
|
|
67
|
+
| Card | variant (default, elevated, outlined, ghost, featured), interactive, selected, noPadding |
|
|
68
|
+
| ChatHistory | messages |
|
|
65
69
|
| Checkbox | label |
|
|
70
|
+
| Col | children |
|
|
71
|
+
| ColorSwatch | color, label |
|
|
72
|
+
| Container | size (sm, md, lg, xl, fluid, responsive) |
|
|
73
|
+
| Dialog | description, confirmText, cancelText, isLoading |
|
|
74
|
+
| Divider | orientation (horizontal, vertical), variant (solid, dashed, dotted), label |
|
|
75
|
+
| Drawer | isOpen, position (left, right, top, bottom), title, children, className |
|
|
66
76
|
| HelperText | error |
|
|
77
|
+
| ImageCard | src, alt, title, subtitle, aspectRatio (${number}/${number}), overlay, mediaClassName, contentClassName |
|
|
67
78
|
| Input | error, leadingIcon, trailingIcon |
|
|
79
|
+
| InputGroup | children |
|
|
68
80
|
| Label | required |
|
|
81
|
+
| List | ordered |
|
|
82
|
+
| MarkdownContent | content, sanitizeConfig |
|
|
83
|
+
| Menu | children, open |
|
|
84
|
+
| Message | variant (user, assistant), content, isStreaming |
|
|
69
85
|
| Modal | isOpen, title, children, className |
|
|
86
|
+
| Navbar | fixed, bordered |
|
|
87
|
+
| Pagination | page, totalPages, siblingCount, showEdges |
|
|
88
|
+
| Popover | children, trigger, position (top, bottom, left, right), align (start, center, end), open, closeOnClickOutside |
|
|
89
|
+
| Progress | value, max, size (sm, md, lg), variant (default, success, warning, error), showValue, indeterminate |
|
|
70
90
|
| Radio | label |
|
|
91
|
+
| Row | gutter, gutterX, gutterY, justify (start, center, end, between, around, evenly), align (start, center, end, stretch, baseline) |
|
|
92
|
+
| SectionHeading | level (h2, h3) |
|
|
71
93
|
| Select | error, options |
|
|
72
94
|
| Skeleton | children |
|
|
95
|
+
| Slider | value, defaultValue, min, max, step, disabled, showTooltip |
|
|
73
96
|
| Spinner | size (sm, md, lg) |
|
|
97
|
+
| Stack | direction (horizontal, vertical), align (start, center, end, stretch, baseline), justify (start, center, end, between, around, evenly), gap, wrap |
|
|
98
|
+
| Stepper | steps, currentStep, status (complete, error) |
|
|
99
|
+
| StreamingCursor | children |
|
|
74
100
|
| Switch | checked, defaultChecked, label |
|
|
101
|
+
| Table | responsive |
|
|
102
|
+
| Tabs | defaultValue, value |
|
|
75
103
|
| Textarea | error |
|
|
104
|
+
| Toast | children, position (top-right, top-left, bottom-right, bottom-left, top-center, bottom-center), defaultDuration |
|
|
76
105
|
| Tooltip | content, children, open, side (top, right, bottom, left) |
|
|
77
106
|
|
|
78
107
|
### Component usage example
|
|
@@ -109,8 +138,15 @@ border-void, border-obsidian, border-charcoal, border-graphite, border-slate, bo
|
|
|
109
138
|
|
|
110
139
|
Standard Tailwind classes for size (`text-sm`, `text-lg`, etc.), weight (`font-medium`, `font-bold`), and spacing are available.
|
|
111
140
|
|
|
141
|
+
### Layout Classes
|
|
142
|
+
**Containers:** `container`, `container-sm`, `container-md`, `container-lg`, `container-xl`, `container-fluid`
|
|
143
|
+
|
|
144
|
+
**Grid:** `row` (creates 12-column CSS Grid)
|
|
145
|
+
|
|
146
|
+
**Columns (Tailwind built-in):** `col-span-{1-12}`, `col-span-full`, `col-auto`, `sm:col-span-*`, `md:col-span-*`, `lg:col-span-*`, `xl:col-span-*`
|
|
147
|
+
|
|
112
148
|
### Custom Utilities
|
|
113
|
-
text-gradient-gold, glow, glow-sm, glow-lg, scroll-smooth, scrollbar-hide, backdrop-glass, focus-ring, line-clamp-2, line-clamp-3, center-absolute
|
|
149
|
+
text-gradient-gold, glow, glow-sm, glow-md, glow-lg, scroll-smooth, scrollbar-hide, backdrop-glass, focus-ring, line-clamp-2, line-clamp-3, center-absolute, aspect-wide, container, container-sm, container-md, container-lg, container-xl, container-fluid, row
|
|
114
150
|
|
|
115
151
|
### Opacity modifiers
|
|
116
152
|
Append `/10`, `/20`, `/30`, etc. to colors: `bg-gold/20`, `border-ash/50`
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lukeashford/aurelius",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.3.0",
|
|
4
4
|
"description": "Design system for Aurelius applications — A cohesive visual language for creative technologists",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/index.mjs",
|
|
@@ -12,9 +12,6 @@
|
|
|
12
12
|
"require": "./dist/index.js"
|
|
13
13
|
},
|
|
14
14
|
"./eslint": "./scripts/eslint.mjs",
|
|
15
|
-
"./styles/base.css": "./dist/styles/base.css",
|
|
16
|
-
"./styles/theme.css": "./dist/styles/theme.css",
|
|
17
|
-
"./styles/fonts.css": "./dist/styles/fonts.css",
|
|
18
15
|
"./styles/*": "./dist/styles/*",
|
|
19
16
|
"./llms.md": "./llms.md",
|
|
20
17
|
"./package.json": "./package.json"
|
|
@@ -24,6 +21,12 @@
|
|
|
24
21
|
"scripts/eslint.mjs",
|
|
25
22
|
"llms.md"
|
|
26
23
|
],
|
|
24
|
+
"publishConfig": {
|
|
25
|
+
"access": "public"
|
|
26
|
+
},
|
|
27
|
+
"engines": {
|
|
28
|
+
"node": ">=22.14.0"
|
|
29
|
+
},
|
|
27
30
|
"scripts": {
|
|
28
31
|
"build": "npm run typecheck && npm run lint && tsup && node scripts/generate-manifest.js",
|
|
29
32
|
"dev": "tsup --watch",
|
|
@@ -31,7 +34,8 @@
|
|
|
31
34
|
"lint": "eslint src --max-warnings 0",
|
|
32
35
|
"prepublishOnly": "npm run build",
|
|
33
36
|
"dev:demo": "npm --prefix demo run dev",
|
|
34
|
-
"dev:all": "concurrently -k \"npm run dev\" \"npm run dev:demo\""
|
|
37
|
+
"dev:all": "concurrently -k \"npm run dev\" \"npm run dev:demo\"",
|
|
38
|
+
"test": "npm run build && npm --prefix demo run test && npm --prefix demo run test:e2e"
|
|
35
39
|
},
|
|
36
40
|
"peerDependencies": {
|
|
37
41
|
"@eslint/css": ">=0.9.0",
|
|
@@ -68,11 +72,17 @@
|
|
|
68
72
|
}
|
|
69
73
|
},
|
|
70
74
|
"devDependencies": {
|
|
75
|
+
"@commitlint/cli": "*",
|
|
76
|
+
"@commitlint/config-conventional": "*",
|
|
71
77
|
"@eslint/css": "^0.9.0",
|
|
72
78
|
"@poupe/eslint-plugin-tailwindcss": "^0.2.4",
|
|
79
|
+
"@semantic-release/changelog": "*",
|
|
80
|
+
"@semantic-release/git": "*",
|
|
81
|
+
"@semantic-release/github": "*",
|
|
73
82
|
"@testing-library/jest-dom": "^6.6.3",
|
|
74
83
|
"@testing-library/react": "^16.1.0",
|
|
75
84
|
"@testing-library/user-event": "^14.5.2",
|
|
85
|
+
"@types/dompurify": "^3.0.5",
|
|
76
86
|
"@types/jest": "^29.5.14",
|
|
77
87
|
"@types/node": "^20.0.0",
|
|
78
88
|
"@types/react": "^19.2.7",
|
|
@@ -81,12 +91,14 @@
|
|
|
81
91
|
"@typescript-eslint/parser": "^8.49.0",
|
|
82
92
|
"@vitejs/plugin-react": "^4.3.4",
|
|
83
93
|
"concurrently": "^8.2.2",
|
|
94
|
+
"conventional-changelog-conventionalcommits": "*",
|
|
84
95
|
"eslint": "^9.0.0",
|
|
85
96
|
"eslint-plugin-better-tailwindcss": "^4.0.0-beta",
|
|
86
97
|
"jest": "^29.7.0",
|
|
87
98
|
"jest-environment-jsdom": "^29.7.0",
|
|
88
99
|
"react": "^19.2.1",
|
|
89
100
|
"react-dom": "^19.2.1",
|
|
101
|
+
"semantic-release": "*",
|
|
90
102
|
"tailwindcss": "^4.1.17",
|
|
91
103
|
"ts-jest": "^29.2.5",
|
|
92
104
|
"ts-node": "^10.9.2",
|
|
@@ -110,6 +122,8 @@
|
|
|
110
122
|
"author": "Your Name",
|
|
111
123
|
"license": "MIT",
|
|
112
124
|
"dependencies": {
|
|
125
|
+
"@tailwindcss/typography": "^0.5.15",
|
|
126
|
+
"dompurify": "^3.3.1",
|
|
113
127
|
"lucide-react": "^0.555.0"
|
|
114
128
|
}
|
|
115
129
|
}
|