@latty-ds/web 0.8.1 → 0.10.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/custom-elements.json +103 -33
- package/dist/components/accordion/index.js +44 -8
- package/dist/components/alert/index.js +72 -8
- package/dist/components/avatar/index.js +1 -1
- package/dist/components/badge/index.js +1 -1
- package/dist/components/breadcrumb/index.js +1 -1
- package/dist/components/button/button.d.ts +6 -0
- package/dist/components/button/index.js +29 -1
- package/dist/components/calendar/index.js +1 -1
- package/dist/components/checkbox/index.js +1 -1
- package/dist/components/chip/index.js +1 -1
- package/dist/components/color-input/index.js +44 -8
- package/dist/components/combobox/index.js +44 -8
- package/dist/components/date-input/index.js +45 -9
- package/dist/components/datepicker/index.js +44 -8
- package/dist/components/dialog/dialog.d.ts +11 -0
- package/dist/components/dialog/index.js +83 -10
- package/dist/components/divider/index.js +1 -1
- package/dist/components/dropdown/dropdown.d.ts +2 -0
- package/dist/components/dropdown/index.js +4 -3
- package/dist/components/icon-button/icon-button.d.ts +6 -0
- package/dist/components/icon-button/index.js +28 -0
- package/dist/components/list/index.js +1 -1
- package/dist/components/pagination/index.js +1 -1
- package/dist/components/radio/index.js +1 -1
- package/dist/components/radio-group/index.js +44 -8
- package/dist/components/select/index.js +54 -10
- package/dist/components/sidepanel/index.js +76 -11
- package/dist/components/sidepanel/sidepanel.d.ts +2 -0
- package/dist/components/slider/index.js +44 -8
- package/dist/components/snackbar/index.js +11 -3
- package/dist/components/snackbar/snackbar.d.ts +11 -0
- package/dist/components/surface/index.js +1 -1
- package/dist/components/switch/index.js +1 -1
- package/dist/components/tab/index.js +1 -1
- package/dist/components/tab-group/index.js +2 -2
- package/dist/components/table/index.js +1 -1
- package/dist/components/text/index.js +43 -7
- package/dist/components/text/text.d.ts +1 -0
- package/dist/components/textfield/index.js +44 -8
- package/dist/components/tooltip/index.js +43 -7
- package/dist/index.cjs +163 -44
- package/dist/index.js +163 -44
- package/dist/manifest.json +36 -0
- package/package.json +3 -3
|
@@ -42,7 +42,7 @@ import { css } from "lit";
|
|
|
42
42
|
var accordionStyles = css`
|
|
43
43
|
:host {
|
|
44
44
|
display: block;
|
|
45
|
-
font-family: var(--lt-typography-
|
|
45
|
+
font-family: var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif);
|
|
46
46
|
width: 100%;
|
|
47
47
|
}
|
|
48
48
|
|
|
@@ -198,67 +198,103 @@ var textStyles = css2`
|
|
|
198
198
|
[part='base'] {
|
|
199
199
|
margin: 0;
|
|
200
200
|
color: inherit;
|
|
201
|
-
font-family: var(--lt-typography-
|
|
201
|
+
font-family: var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif);
|
|
202
202
|
}
|
|
203
203
|
|
|
204
204
|
/* ── Display ─────────────────────────────────────────────────────────── */
|
|
205
205
|
|
|
206
206
|
:host([variant='display-2xl']) [part='base'] {
|
|
207
|
+
font-family: var(
|
|
208
|
+
--lt-typography-fontFamilyHeading,
|
|
209
|
+
var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif)
|
|
210
|
+
);
|
|
207
211
|
font-size: clamp(2.5rem, 6vw, 4.5rem);
|
|
208
212
|
font-weight: var(--lt-text-weight, 200);
|
|
209
213
|
line-height: 1.1;
|
|
210
|
-
letter-spacing: -0.02em;
|
|
214
|
+
letter-spacing: var(--lt-text-tracking, -0.02em);
|
|
211
215
|
}
|
|
212
216
|
|
|
213
217
|
:host([variant='display-xl']) [part='base'] {
|
|
218
|
+
font-family: var(
|
|
219
|
+
--lt-typography-fontFamilyHeading,
|
|
220
|
+
var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif)
|
|
221
|
+
);
|
|
214
222
|
font-size: clamp(2rem, 5vw, 3.75rem);
|
|
215
223
|
font-weight: var(--lt-text-weight, 200);
|
|
216
224
|
line-height: 1.1;
|
|
217
|
-
letter-spacing: -0.02em;
|
|
225
|
+
letter-spacing: var(--lt-text-tracking, -0.02em);
|
|
218
226
|
}
|
|
219
227
|
|
|
220
228
|
:host([variant='display-lg']) [part='base'] {
|
|
229
|
+
font-family: var(
|
|
230
|
+
--lt-typography-fontFamilyHeading,
|
|
231
|
+
var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif)
|
|
232
|
+
);
|
|
221
233
|
font-size: clamp(2rem, 4vw, 3rem);
|
|
222
234
|
font-weight: var(--lt-text-weight, 200);
|
|
223
235
|
line-height: 1.15;
|
|
224
|
-
letter-spacing: -0.01em;
|
|
236
|
+
letter-spacing: var(--lt-text-tracking, -0.01em);
|
|
225
237
|
}
|
|
226
238
|
|
|
227
239
|
/* ── Headings ─────────────────────────────────────────────────────────── */
|
|
228
240
|
|
|
229
241
|
:host([variant='h1']) [part='base'] {
|
|
242
|
+
font-family: var(
|
|
243
|
+
--lt-typography-fontFamilyHeading,
|
|
244
|
+
var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif)
|
|
245
|
+
);
|
|
230
246
|
font-size: clamp(1.75rem, 2.5vw + 0.75rem, 2.5rem);
|
|
231
247
|
font-weight: var(--lt-text-weight, 600);
|
|
232
248
|
line-height: 1.2;
|
|
233
|
-
letter-spacing: -0.02em;
|
|
249
|
+
letter-spacing: var(--lt-text-tracking, -0.02em);
|
|
234
250
|
}
|
|
235
251
|
|
|
236
252
|
:host([variant='h2']) [part='base'] {
|
|
253
|
+
font-family: var(
|
|
254
|
+
--lt-typography-fontFamilyHeading,
|
|
255
|
+
var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif)
|
|
256
|
+
);
|
|
237
257
|
font-size: clamp(1.5rem, 2vw + 0.5rem, 2rem);
|
|
238
258
|
font-weight: var(--lt-text-weight, 600);
|
|
239
259
|
line-height: 1.25;
|
|
240
|
-
letter-spacing: -0.01em;
|
|
260
|
+
letter-spacing: var(--lt-text-tracking, -0.01em);
|
|
241
261
|
}
|
|
242
262
|
|
|
243
263
|
:host([variant='h3']) [part='base'] {
|
|
264
|
+
font-family: var(
|
|
265
|
+
--lt-typography-fontFamilyHeading,
|
|
266
|
+
var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif)
|
|
267
|
+
);
|
|
244
268
|
font-size: clamp(1.25rem, 1.5vw + 0.5rem, 1.5rem);
|
|
245
269
|
font-weight: var(--lt-text-weight, 600);
|
|
246
270
|
line-height: 1.3;
|
|
247
271
|
}
|
|
248
272
|
|
|
249
273
|
:host([variant='h4']) [part='base'] {
|
|
274
|
+
font-family: var(
|
|
275
|
+
--lt-typography-fontFamilyHeading,
|
|
276
|
+
var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif)
|
|
277
|
+
);
|
|
250
278
|
font-size: 1.25rem;
|
|
251
279
|
font-weight: var(--lt-text-weight, 600);
|
|
252
280
|
line-height: 1.35;
|
|
253
281
|
}
|
|
254
282
|
|
|
255
283
|
:host([variant='h5']) [part='base'] {
|
|
284
|
+
font-family: var(
|
|
285
|
+
--lt-typography-fontFamilyHeading,
|
|
286
|
+
var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif)
|
|
287
|
+
);
|
|
256
288
|
font-size: 1.125rem;
|
|
257
289
|
font-weight: var(--lt-text-weight, 600);
|
|
258
290
|
line-height: 1.4;
|
|
259
291
|
}
|
|
260
292
|
|
|
261
293
|
:host([variant='h6']) [part='base'] {
|
|
294
|
+
font-family: var(
|
|
295
|
+
--lt-typography-fontFamilyHeading,
|
|
296
|
+
var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif)
|
|
297
|
+
);
|
|
262
298
|
font-size: 1rem;
|
|
263
299
|
font-weight: var(--lt-text-weight, 600);
|
|
264
300
|
line-height: 1.4;
|
|
@@ -297,7 +333,7 @@ var textStyles = css2`
|
|
|
297
333
|
font-size: 0.6875rem;
|
|
298
334
|
font-weight: var(--lt-text-weight, 600);
|
|
299
335
|
line-height: 1.2;
|
|
300
|
-
letter-spacing: 0.08em;
|
|
336
|
+
letter-spacing: var(--lt-text-tracking, 0.08em);
|
|
301
337
|
text-transform: uppercase;
|
|
302
338
|
}
|
|
303
339
|
|
|
@@ -43,7 +43,7 @@ import { css } from "lit";
|
|
|
43
43
|
var alertStyles = css`
|
|
44
44
|
:host {
|
|
45
45
|
display: block;
|
|
46
|
-
font-family: var(--lt-typography-
|
|
46
|
+
font-family: var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif);
|
|
47
47
|
opacity: 1;
|
|
48
48
|
transform: translateY(0);
|
|
49
49
|
transition:
|
|
@@ -408,6 +408,30 @@ var iconButtonStyles = css2`
|
|
|
408
408
|
--_active-bg: var(--lt-bg-info-subtle);
|
|
409
409
|
}
|
|
410
410
|
|
|
411
|
+
/* bordered — adds a border on top of whatever appearance is active; a no-op on
|
|
412
|
+
outlined, which already sets the same border color. */
|
|
413
|
+
:host([bordered][variant='primary']) {
|
|
414
|
+
--_border-color: var(--lt-border-primary-strong);
|
|
415
|
+
}
|
|
416
|
+
:host([bordered][variant='secondary']) {
|
|
417
|
+
--_border-color: var(--lt-border-secondary-strong);
|
|
418
|
+
}
|
|
419
|
+
:host([bordered][variant='neutral']) {
|
|
420
|
+
--_border-color: var(--lt-border-strong);
|
|
421
|
+
}
|
|
422
|
+
:host([bordered][variant='success']) {
|
|
423
|
+
--_border-color: var(--lt-border-success-strong);
|
|
424
|
+
}
|
|
425
|
+
:host([bordered][variant='warning']) {
|
|
426
|
+
--_border-color: var(--lt-border-warning-strong);
|
|
427
|
+
}
|
|
428
|
+
:host([bordered][variant='error']) {
|
|
429
|
+
--_border-color: var(--lt-border-error-strong);
|
|
430
|
+
}
|
|
431
|
+
:host([bordered][variant='info']) {
|
|
432
|
+
--_border-color: var(--lt-border-info-strong);
|
|
433
|
+
}
|
|
434
|
+
|
|
411
435
|
/* round shape */
|
|
412
436
|
:host([round]) [part='base'] {
|
|
413
437
|
border-radius: 50%;
|
|
@@ -457,6 +481,7 @@ var IconButton = class extends ThemeableElement {
|
|
|
457
481
|
this.label = "";
|
|
458
482
|
this.variant = "neutral";
|
|
459
483
|
this.appearance = "ghost";
|
|
484
|
+
this.bordered = false;
|
|
460
485
|
this.size = "md";
|
|
461
486
|
this.disabled = false;
|
|
462
487
|
this.href = "";
|
|
@@ -503,6 +528,9 @@ __decorateClass([
|
|
|
503
528
|
__decorateClass([
|
|
504
529
|
property2({ reflect: true })
|
|
505
530
|
], IconButton.prototype, "appearance", 2);
|
|
531
|
+
__decorateClass([
|
|
532
|
+
property2({ type: Boolean, reflect: true })
|
|
533
|
+
], IconButton.prototype, "bordered", 2);
|
|
506
534
|
__decorateClass([
|
|
507
535
|
property2({ reflect: true })
|
|
508
536
|
], IconButton.prototype, "size", 2);
|
|
@@ -547,67 +575,103 @@ var textStyles = css3`
|
|
|
547
575
|
[part='base'] {
|
|
548
576
|
margin: 0;
|
|
549
577
|
color: inherit;
|
|
550
|
-
font-family: var(--lt-typography-
|
|
578
|
+
font-family: var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif);
|
|
551
579
|
}
|
|
552
580
|
|
|
553
581
|
/* ── Display ─────────────────────────────────────────────────────────── */
|
|
554
582
|
|
|
555
583
|
:host([variant='display-2xl']) [part='base'] {
|
|
584
|
+
font-family: var(
|
|
585
|
+
--lt-typography-fontFamilyHeading,
|
|
586
|
+
var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif)
|
|
587
|
+
);
|
|
556
588
|
font-size: clamp(2.5rem, 6vw, 4.5rem);
|
|
557
589
|
font-weight: var(--lt-text-weight, 200);
|
|
558
590
|
line-height: 1.1;
|
|
559
|
-
letter-spacing: -0.02em;
|
|
591
|
+
letter-spacing: var(--lt-text-tracking, -0.02em);
|
|
560
592
|
}
|
|
561
593
|
|
|
562
594
|
:host([variant='display-xl']) [part='base'] {
|
|
595
|
+
font-family: var(
|
|
596
|
+
--lt-typography-fontFamilyHeading,
|
|
597
|
+
var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif)
|
|
598
|
+
);
|
|
563
599
|
font-size: clamp(2rem, 5vw, 3.75rem);
|
|
564
600
|
font-weight: var(--lt-text-weight, 200);
|
|
565
601
|
line-height: 1.1;
|
|
566
|
-
letter-spacing: -0.02em;
|
|
602
|
+
letter-spacing: var(--lt-text-tracking, -0.02em);
|
|
567
603
|
}
|
|
568
604
|
|
|
569
605
|
:host([variant='display-lg']) [part='base'] {
|
|
606
|
+
font-family: var(
|
|
607
|
+
--lt-typography-fontFamilyHeading,
|
|
608
|
+
var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif)
|
|
609
|
+
);
|
|
570
610
|
font-size: clamp(2rem, 4vw, 3rem);
|
|
571
611
|
font-weight: var(--lt-text-weight, 200);
|
|
572
612
|
line-height: 1.15;
|
|
573
|
-
letter-spacing: -0.01em;
|
|
613
|
+
letter-spacing: var(--lt-text-tracking, -0.01em);
|
|
574
614
|
}
|
|
575
615
|
|
|
576
616
|
/* ── Headings ─────────────────────────────────────────────────────────── */
|
|
577
617
|
|
|
578
618
|
:host([variant='h1']) [part='base'] {
|
|
619
|
+
font-family: var(
|
|
620
|
+
--lt-typography-fontFamilyHeading,
|
|
621
|
+
var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif)
|
|
622
|
+
);
|
|
579
623
|
font-size: clamp(1.75rem, 2.5vw + 0.75rem, 2.5rem);
|
|
580
624
|
font-weight: var(--lt-text-weight, 600);
|
|
581
625
|
line-height: 1.2;
|
|
582
|
-
letter-spacing: -0.02em;
|
|
626
|
+
letter-spacing: var(--lt-text-tracking, -0.02em);
|
|
583
627
|
}
|
|
584
628
|
|
|
585
629
|
:host([variant='h2']) [part='base'] {
|
|
630
|
+
font-family: var(
|
|
631
|
+
--lt-typography-fontFamilyHeading,
|
|
632
|
+
var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif)
|
|
633
|
+
);
|
|
586
634
|
font-size: clamp(1.5rem, 2vw + 0.5rem, 2rem);
|
|
587
635
|
font-weight: var(--lt-text-weight, 600);
|
|
588
636
|
line-height: 1.25;
|
|
589
|
-
letter-spacing: -0.01em;
|
|
637
|
+
letter-spacing: var(--lt-text-tracking, -0.01em);
|
|
590
638
|
}
|
|
591
639
|
|
|
592
640
|
:host([variant='h3']) [part='base'] {
|
|
641
|
+
font-family: var(
|
|
642
|
+
--lt-typography-fontFamilyHeading,
|
|
643
|
+
var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif)
|
|
644
|
+
);
|
|
593
645
|
font-size: clamp(1.25rem, 1.5vw + 0.5rem, 1.5rem);
|
|
594
646
|
font-weight: var(--lt-text-weight, 600);
|
|
595
647
|
line-height: 1.3;
|
|
596
648
|
}
|
|
597
649
|
|
|
598
650
|
:host([variant='h4']) [part='base'] {
|
|
651
|
+
font-family: var(
|
|
652
|
+
--lt-typography-fontFamilyHeading,
|
|
653
|
+
var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif)
|
|
654
|
+
);
|
|
599
655
|
font-size: 1.25rem;
|
|
600
656
|
font-weight: var(--lt-text-weight, 600);
|
|
601
657
|
line-height: 1.35;
|
|
602
658
|
}
|
|
603
659
|
|
|
604
660
|
:host([variant='h5']) [part='base'] {
|
|
661
|
+
font-family: var(
|
|
662
|
+
--lt-typography-fontFamilyHeading,
|
|
663
|
+
var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif)
|
|
664
|
+
);
|
|
605
665
|
font-size: 1.125rem;
|
|
606
666
|
font-weight: var(--lt-text-weight, 600);
|
|
607
667
|
line-height: 1.4;
|
|
608
668
|
}
|
|
609
669
|
|
|
610
670
|
:host([variant='h6']) [part='base'] {
|
|
671
|
+
font-family: var(
|
|
672
|
+
--lt-typography-fontFamilyHeading,
|
|
673
|
+
var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif)
|
|
674
|
+
);
|
|
611
675
|
font-size: 1rem;
|
|
612
676
|
font-weight: var(--lt-text-weight, 600);
|
|
613
677
|
line-height: 1.4;
|
|
@@ -646,7 +710,7 @@ var textStyles = css3`
|
|
|
646
710
|
font-size: 0.6875rem;
|
|
647
711
|
font-weight: var(--lt-text-weight, 600);
|
|
648
712
|
line-height: 1.2;
|
|
649
|
-
letter-spacing: 0.08em;
|
|
713
|
+
letter-spacing: var(--lt-text-tracking, 0.08em);
|
|
650
714
|
text-transform: uppercase;
|
|
651
715
|
}
|
|
652
716
|
|
|
@@ -64,7 +64,7 @@ var avatarStyles = css`
|
|
|
64
64
|
}
|
|
65
65
|
|
|
66
66
|
.initials {
|
|
67
|
-
font-family: var(--lt-typography-
|
|
67
|
+
font-family: var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif);
|
|
68
68
|
font-weight: 600;
|
|
69
69
|
letter-spacing: 0.02em;
|
|
70
70
|
line-height: 1;
|
|
@@ -42,7 +42,7 @@ import { css } from "lit";
|
|
|
42
42
|
var badgeStyles = css`
|
|
43
43
|
:host {
|
|
44
44
|
display: inline-flex;
|
|
45
|
-
font-family: var(--lt-typography-
|
|
45
|
+
font-family: var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif);
|
|
46
46
|
vertical-align: middle;
|
|
47
47
|
}
|
|
48
48
|
|
|
@@ -58,7 +58,7 @@ var breadcrumbItemStyles = css`
|
|
|
58
58
|
:host {
|
|
59
59
|
align-items: center;
|
|
60
60
|
display: inline-flex;
|
|
61
|
-
font-family: var(--lt-typography-
|
|
61
|
+
font-family: var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif);
|
|
62
62
|
font-size: 0.875rem;
|
|
63
63
|
}
|
|
64
64
|
|
|
@@ -55,6 +55,12 @@ export declare class Button extends ThemeableElement {
|
|
|
55
55
|
* @default 'filled'
|
|
56
56
|
*/
|
|
57
57
|
appearance: ButtonAppearance;
|
|
58
|
+
/**
|
|
59
|
+
* Adds a variant-colored border on top of the current appearance. A no-op on
|
|
60
|
+
* `outlined` (which already has one); adds a border to `filled`/`ghost`.
|
|
61
|
+
* @default false
|
|
62
|
+
*/
|
|
63
|
+
bordered: boolean;
|
|
58
64
|
/**
|
|
59
65
|
* Size of the button (affects height, font size, and padding).
|
|
60
66
|
* @default 'md'
|
|
@@ -43,7 +43,7 @@ import { css } from "lit";
|
|
|
43
43
|
var buttonStyles = css`
|
|
44
44
|
:host {
|
|
45
45
|
display: inline-block;
|
|
46
|
-
font-family: var(--lt-typography-
|
|
46
|
+
font-family: var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif);
|
|
47
47
|
|
|
48
48
|
/* Internal state props — set per variant/appearance below */
|
|
49
49
|
--_color: var(--lt-text-on-primary);
|
|
@@ -277,6 +277,30 @@ var buttonStyles = css`
|
|
|
277
277
|
opacity: 0.8;
|
|
278
278
|
}
|
|
279
279
|
|
|
280
|
+
/* bordered — adds a border on top of whatever appearance is active; a no-op on
|
|
281
|
+
outlined, which already sets the same border color. */
|
|
282
|
+
:host([bordered][variant='primary']) {
|
|
283
|
+
--_border-color: var(--lt-border-primary-strong);
|
|
284
|
+
}
|
|
285
|
+
:host([bordered][variant='secondary']) {
|
|
286
|
+
--_border-color: var(--lt-border-secondary-strong);
|
|
287
|
+
}
|
|
288
|
+
:host([bordered][variant='neutral']) {
|
|
289
|
+
--_border-color: var(--lt-border-strong);
|
|
290
|
+
}
|
|
291
|
+
:host([bordered][variant='success']) {
|
|
292
|
+
--_border-color: var(--lt-border-success-strong);
|
|
293
|
+
}
|
|
294
|
+
:host([bordered][variant='warning']) {
|
|
295
|
+
--_border-color: var(--lt-border-warning-strong);
|
|
296
|
+
}
|
|
297
|
+
:host([bordered][variant='error']) {
|
|
298
|
+
--_border-color: var(--lt-border-error-strong);
|
|
299
|
+
}
|
|
300
|
+
:host([bordered][variant='info']) {
|
|
301
|
+
--_border-color: var(--lt-border-info-strong);
|
|
302
|
+
}
|
|
303
|
+
|
|
280
304
|
/* loading */
|
|
281
305
|
.spinner {
|
|
282
306
|
animation: spin 700ms linear infinite;
|
|
@@ -442,6 +466,7 @@ var Button = class extends ThemeableElement {
|
|
|
442
466
|
this._ariaForwarding = new AriaForwardingController(this, () => this.shadowRoot?.querySelector('[part="base"]'));
|
|
443
467
|
this.variant = "primary";
|
|
444
468
|
this.appearance = "filled";
|
|
469
|
+
this.bordered = false;
|
|
445
470
|
this.size = "md";
|
|
446
471
|
this.disabled = false;
|
|
447
472
|
this.loading = false;
|
|
@@ -504,6 +529,9 @@ __decorateClass([
|
|
|
504
529
|
__decorateClass([
|
|
505
530
|
property3({ reflect: true })
|
|
506
531
|
], Button.prototype, "appearance", 2);
|
|
532
|
+
__decorateClass([
|
|
533
|
+
property3({ type: Boolean, reflect: true })
|
|
534
|
+
], Button.prototype, "bordered", 2);
|
|
507
535
|
__decorateClass([
|
|
508
536
|
property3({ reflect: true })
|
|
509
537
|
], Button.prototype, "size", 2);
|
|
@@ -43,7 +43,7 @@ import { css } from "lit";
|
|
|
43
43
|
var calendarStyles = css`
|
|
44
44
|
:host {
|
|
45
45
|
display: inline-block;
|
|
46
|
-
font-family: var(--lt-typography-
|
|
46
|
+
font-family: var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif);
|
|
47
47
|
}
|
|
48
48
|
|
|
49
49
|
.calendar {
|
|
@@ -42,7 +42,7 @@ import { css } from "lit";
|
|
|
42
42
|
var checkboxStyles = css`
|
|
43
43
|
:host {
|
|
44
44
|
display: inline-block;
|
|
45
|
-
font-family: var(--lt-typography-
|
|
45
|
+
font-family: var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif);
|
|
46
46
|
}
|
|
47
47
|
|
|
48
48
|
.checkbox-wrapper {
|
|
@@ -43,7 +43,7 @@ import { css } from "lit";
|
|
|
43
43
|
var chipStyles = css`
|
|
44
44
|
:host {
|
|
45
45
|
display: inline-flex;
|
|
46
|
-
font-family: var(--lt-typography-
|
|
46
|
+
font-family: var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif);
|
|
47
47
|
vertical-align: middle;
|
|
48
48
|
}
|
|
49
49
|
|
|
@@ -41,7 +41,7 @@ import { css } from "lit";
|
|
|
41
41
|
var colorInputStyles = css`
|
|
42
42
|
:host {
|
|
43
43
|
display: inline-block;
|
|
44
|
-
font-family: var(--lt-typography-
|
|
44
|
+
font-family: var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif);
|
|
45
45
|
width: 100%;
|
|
46
46
|
}
|
|
47
47
|
|
|
@@ -212,67 +212,103 @@ var textStyles = css2`
|
|
|
212
212
|
[part='base'] {
|
|
213
213
|
margin: 0;
|
|
214
214
|
color: inherit;
|
|
215
|
-
font-family: var(--lt-typography-
|
|
215
|
+
font-family: var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif);
|
|
216
216
|
}
|
|
217
217
|
|
|
218
218
|
/* ── Display ─────────────────────────────────────────────────────────── */
|
|
219
219
|
|
|
220
220
|
:host([variant='display-2xl']) [part='base'] {
|
|
221
|
+
font-family: var(
|
|
222
|
+
--lt-typography-fontFamilyHeading,
|
|
223
|
+
var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif)
|
|
224
|
+
);
|
|
221
225
|
font-size: clamp(2.5rem, 6vw, 4.5rem);
|
|
222
226
|
font-weight: var(--lt-text-weight, 200);
|
|
223
227
|
line-height: 1.1;
|
|
224
|
-
letter-spacing: -0.02em;
|
|
228
|
+
letter-spacing: var(--lt-text-tracking, -0.02em);
|
|
225
229
|
}
|
|
226
230
|
|
|
227
231
|
:host([variant='display-xl']) [part='base'] {
|
|
232
|
+
font-family: var(
|
|
233
|
+
--lt-typography-fontFamilyHeading,
|
|
234
|
+
var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif)
|
|
235
|
+
);
|
|
228
236
|
font-size: clamp(2rem, 5vw, 3.75rem);
|
|
229
237
|
font-weight: var(--lt-text-weight, 200);
|
|
230
238
|
line-height: 1.1;
|
|
231
|
-
letter-spacing: -0.02em;
|
|
239
|
+
letter-spacing: var(--lt-text-tracking, -0.02em);
|
|
232
240
|
}
|
|
233
241
|
|
|
234
242
|
:host([variant='display-lg']) [part='base'] {
|
|
243
|
+
font-family: var(
|
|
244
|
+
--lt-typography-fontFamilyHeading,
|
|
245
|
+
var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif)
|
|
246
|
+
);
|
|
235
247
|
font-size: clamp(2rem, 4vw, 3rem);
|
|
236
248
|
font-weight: var(--lt-text-weight, 200);
|
|
237
249
|
line-height: 1.15;
|
|
238
|
-
letter-spacing: -0.01em;
|
|
250
|
+
letter-spacing: var(--lt-text-tracking, -0.01em);
|
|
239
251
|
}
|
|
240
252
|
|
|
241
253
|
/* ── Headings ─────────────────────────────────────────────────────────── */
|
|
242
254
|
|
|
243
255
|
:host([variant='h1']) [part='base'] {
|
|
256
|
+
font-family: var(
|
|
257
|
+
--lt-typography-fontFamilyHeading,
|
|
258
|
+
var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif)
|
|
259
|
+
);
|
|
244
260
|
font-size: clamp(1.75rem, 2.5vw + 0.75rem, 2.5rem);
|
|
245
261
|
font-weight: var(--lt-text-weight, 600);
|
|
246
262
|
line-height: 1.2;
|
|
247
|
-
letter-spacing: -0.02em;
|
|
263
|
+
letter-spacing: var(--lt-text-tracking, -0.02em);
|
|
248
264
|
}
|
|
249
265
|
|
|
250
266
|
:host([variant='h2']) [part='base'] {
|
|
267
|
+
font-family: var(
|
|
268
|
+
--lt-typography-fontFamilyHeading,
|
|
269
|
+
var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif)
|
|
270
|
+
);
|
|
251
271
|
font-size: clamp(1.5rem, 2vw + 0.5rem, 2rem);
|
|
252
272
|
font-weight: var(--lt-text-weight, 600);
|
|
253
273
|
line-height: 1.25;
|
|
254
|
-
letter-spacing: -0.01em;
|
|
274
|
+
letter-spacing: var(--lt-text-tracking, -0.01em);
|
|
255
275
|
}
|
|
256
276
|
|
|
257
277
|
:host([variant='h3']) [part='base'] {
|
|
278
|
+
font-family: var(
|
|
279
|
+
--lt-typography-fontFamilyHeading,
|
|
280
|
+
var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif)
|
|
281
|
+
);
|
|
258
282
|
font-size: clamp(1.25rem, 1.5vw + 0.5rem, 1.5rem);
|
|
259
283
|
font-weight: var(--lt-text-weight, 600);
|
|
260
284
|
line-height: 1.3;
|
|
261
285
|
}
|
|
262
286
|
|
|
263
287
|
:host([variant='h4']) [part='base'] {
|
|
288
|
+
font-family: var(
|
|
289
|
+
--lt-typography-fontFamilyHeading,
|
|
290
|
+
var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif)
|
|
291
|
+
);
|
|
264
292
|
font-size: 1.25rem;
|
|
265
293
|
font-weight: var(--lt-text-weight, 600);
|
|
266
294
|
line-height: 1.35;
|
|
267
295
|
}
|
|
268
296
|
|
|
269
297
|
:host([variant='h5']) [part='base'] {
|
|
298
|
+
font-family: var(
|
|
299
|
+
--lt-typography-fontFamilyHeading,
|
|
300
|
+
var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif)
|
|
301
|
+
);
|
|
270
302
|
font-size: 1.125rem;
|
|
271
303
|
font-weight: var(--lt-text-weight, 600);
|
|
272
304
|
line-height: 1.4;
|
|
273
305
|
}
|
|
274
306
|
|
|
275
307
|
:host([variant='h6']) [part='base'] {
|
|
308
|
+
font-family: var(
|
|
309
|
+
--lt-typography-fontFamilyHeading,
|
|
310
|
+
var(--lt-typography-fontFamilyPrimary, 'Hanken Grotesk', sans-serif)
|
|
311
|
+
);
|
|
276
312
|
font-size: 1rem;
|
|
277
313
|
font-weight: var(--lt-text-weight, 600);
|
|
278
314
|
line-height: 1.4;
|
|
@@ -311,7 +347,7 @@ var textStyles = css2`
|
|
|
311
347
|
font-size: 0.6875rem;
|
|
312
348
|
font-weight: var(--lt-text-weight, 600);
|
|
313
349
|
line-height: 1.2;
|
|
314
|
-
letter-spacing: 0.08em;
|
|
350
|
+
letter-spacing: var(--lt-text-tracking, 0.08em);
|
|
315
351
|
text-transform: uppercase;
|
|
316
352
|
}
|
|
317
353
|
|