@reliability-design/web 1.3.0 → 1.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/dist/components/rel-accordion/README.md +13 -13
- package/dist/components/rel-accordion/rel-accordion.ts +80 -45
- package/dist/components/rel-alert/README.md +15 -15
- package/dist/components/rel-alert/rel-alert.ts +161 -159
- package/dist/components/rel-avatar/README.md +15 -15
- package/dist/components/rel-avatar/rel-avatar.ts +42 -38
- package/dist/components/rel-badge/README.md +5 -5
- package/dist/components/rel-badge/rel-badge.ts +69 -17
- package/dist/components/rel-breadcrumb/README.md +7 -7
- package/dist/components/rel-breadcrumb/rel-breadcrumb.ts +16 -13
- package/dist/components/rel-button/README.md +20 -20
- package/dist/components/rel-button/rel-button.ts +327 -105
- package/dist/components/rel-calendar/README.md +5 -5
- package/dist/components/rel-calendar/rel-calendar.ts +61 -45
- package/dist/components/rel-card/README.md +6 -6
- package/dist/components/rel-card/rel-card.ts +88 -35
- package/dist/components/rel-cardmedia/README.md +9 -9
- package/dist/components/rel-cardmedia/rel-cardmedia.ts +27 -20
- package/dist/components/rel-carousel/README.md +3 -3
- package/dist/components/rel-carousel/rel-carousel.ts +174 -90
- package/dist/components/rel-chart/README.md +8 -8
- package/dist/components/rel-chart/rel-chart.ts +59 -41
- package/dist/components/rel-checkbox/README.md +7 -7
- package/dist/components/rel-checkbox/rel-checkbox.ts +61 -61
- package/dist/components/rel-chip/README.md +16 -16
- package/dist/components/rel-chip/rel-chip.ts +143 -111
- package/dist/components/rel-container/README.md +11 -11
- package/dist/components/rel-container/rel-container.ts +35 -9
- package/dist/components/rel-date-picker/README.md +43 -7
- package/dist/components/rel-date-picker/date-format.test.ts +43 -0
- package/dist/components/rel-date-picker/date-format.ts +47 -0
- package/dist/components/rel-date-picker/rel-date-picker.ts +257 -83
- package/dist/components/rel-divider/README.md +9 -9
- package/dist/components/rel-divider/rel-divider.ts +10 -9
- package/dist/components/rel-drawer/README.md +1 -1
- package/dist/components/rel-drawer/rel-drawer-footer.ts +1 -1
- package/dist/components/rel-drawer/rel-drawer.ts +56 -28
- package/dist/components/rel-kbd/README.md +20 -20
- package/dist/components/rel-kbd/rel-kbd.ts +119 -25
- package/dist/components/rel-layout/README.md +1 -1
- package/dist/components/rel-layout/rel-layout.ts +2 -2
- package/dist/components/rel-menu/README.md +15 -15
- package/dist/components/rel-menu/rel-menu.ts +155 -88
- package/dist/components/rel-menubar/README.md +20 -20
- package/dist/components/rel-menubar/rel-menubar.ts +47 -31
- package/dist/components/rel-nav-menu/README.md +21 -21
- package/dist/components/rel-nav-menu/rel-nav-menu-item.ts +17 -14
- package/dist/components/rel-nav-menu/rel-nav-menu-panel.ts +33 -14
- package/dist/components/rel-nav-menu/rel-nav-menu.ts +14 -7
- package/dist/components/rel-navbar/README.md +7 -7
- package/dist/components/rel-navbar/rel-navbar.ts +12 -11
- package/dist/components/rel-otp/README.md +3 -3
- package/dist/components/rel-otp/rel-otp.ts +46 -30
- package/dist/components/rel-pagination/README.md +18 -18
- package/dist/components/rel-pagination/rel-pagination.ts +141 -90
- package/dist/components/rel-popover/README.md +13 -13
- package/dist/components/rel-popover/rel-popover-content.ts +39 -14
- package/dist/components/rel-popover/rel-popover.ts +18 -7
- package/dist/components/rel-progress/README.md +5 -5
- package/dist/components/rel-progress/rel-progress.ts +16 -12
- package/dist/components/rel-radio/README.md +9 -9
- package/dist/components/rel-radio/rel-radio.ts +64 -50
- package/dist/components/rel-range-picker/rel-range-picker.ts +120 -117
- package/dist/components/rel-resizable/README.md +4 -4
- package/dist/components/rel-resizable/rel-resizable-group.ts +15 -4
- package/dist/components/rel-resizable/rel-resizable-handle.ts +13 -9
- package/dist/components/rel-resizable/rel-resizable-panel.ts +11 -0
- package/dist/components/rel-segmented-button/README.md +10 -10
- package/dist/components/rel-segmented-button/rel-segmented-button.ts +39 -40
- package/dist/components/rel-select/README.md +14 -14
- package/dist/components/rel-select/rel-select.ts +120 -188
- package/dist/components/rel-sheet/README.md +10 -10
- package/dist/components/rel-sheet/rel-sheet.ts +82 -23
- package/dist/components/rel-sidebar/README.md +5 -5
- package/dist/components/rel-sidebar/rel-sidebar.ts +75 -60
- package/dist/components/rel-skeleton/rel-skeleton.ts +8 -13
- package/dist/components/rel-slider/README.md +10 -10
- package/dist/components/rel-slider/rel-slider.ts +230 -57
- package/dist/components/rel-snackbar/README.md +9 -9
- package/dist/components/rel-snackbar/rel-snackbar.ts +44 -32
- package/dist/components/rel-stepper/README.md +10 -10
- package/dist/components/rel-stepper/rel-stepper.ts +110 -46
- package/dist/components/rel-switch/README.md +5 -5
- package/dist/components/rel-switch/rel-switch.ts +23 -12
- package/dist/components/rel-tab/README.md +13 -13
- package/dist/components/rel-tab/rel-tab.ts +73 -23
- package/dist/components/rel-table/README.md +7 -7
- package/dist/components/rel-table/rel-table-body.ts +2 -1
- package/dist/components/rel-table/rel-table-caption.ts +10 -7
- package/dist/components/rel-table/rel-table-cell.ts +7 -6
- package/dist/components/rel-table/rel-table-footer.ts +4 -3
- package/dist/components/rel-table/rel-table-head.ts +11 -9
- package/dist/components/rel-table/rel-table-header.ts +2 -1
- package/dist/components/rel-table/rel-table-row.ts +5 -4
- package/dist/components/rel-table/rel-table.ts +16 -7
- package/dist/components/rel-textfield/README.md +11 -11
- package/dist/components/rel-textfield/rel-textfield.ts +718 -397
- package/dist/components/rel-toast/README.md +11 -11
- package/dist/components/rel-toast/rel-toast.ts +33 -30
- package/dist/components/rel-tooltip/README.md +7 -7
- package/dist/components/rel-tooltip/rel-tooltip.ts +160 -123
- package/dist/components/rel-topbar/rel-topbar-actions.ts +5 -2
- package/dist/components/rel-topbar/rel-topbar-brand.ts +12 -5
- package/dist/components/rel-topbar/rel-topbar-dropdown-item.ts +14 -8
- package/dist/components/rel-topbar/rel-topbar-dropdown.ts +8 -5
- package/dist/components/rel-topbar/rel-topbar-item.ts +27 -22
- package/dist/components/rel-topbar/rel-topbar-mobile-panel.ts +4 -1
- package/dist/components/rel-topbar/rel-topbar-profile.ts +71 -50
- package/dist/components/rel-topbar/rel-topbar-utilities.ts +5 -2
- package/dist/components/rel-topbar/rel-topbar.ts +37 -29
- package/dist/index.d.mts +227 -40
- package/dist/index.d.ts +227 -40
- package/dist/index.js +3930 -2247
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +4311 -2629
- package/dist/index.mjs.map +1 -1
- package/dist/styles/vars.css +653 -346
- package/dist/vars-WY2XCF5G.css +653 -0
- package/package.json +3 -2
- package/dist/components/rel-range-picker/rel-range-picker.css +0 -349
- package/dist/styles/vars-v2.css +0 -525
- package/dist/vars-I2PC74XD.css +0 -346
- package/dist/vars-v2-VMGWTFJZ.css +0 -525
|
@@ -55,13 +55,13 @@ None exposed.
|
|
|
55
55
|
## Tokens / CSS Variables
|
|
56
56
|
|
|
57
57
|
### Semantic Tokens
|
|
58
|
-
- `--rel-
|
|
59
|
-
- `--rel-
|
|
60
|
-
- `--rel-
|
|
58
|
+
- `--rel-fonts-font-family` - Font family
|
|
59
|
+
- `--rel-fonts-weight-body-semibold` - Font weight (number variant)
|
|
60
|
+
- `--rel-body-xs-regular-font-size`, `--rel-body-sm-regular-font-size`, `--rel-body-xl-regular-font-size` - Font sizes for number variant sizes
|
|
61
61
|
|
|
62
62
|
### Color Tokens
|
|
63
|
-
- `--rel-
|
|
64
|
-
- `--rel-
|
|
63
|
+
- `--rel-bg-danger` - Background color
|
|
64
|
+
- `--rel-bg-surface` - Text color
|
|
65
65
|
|
|
66
66
|
## Accessibility
|
|
67
67
|
- Purely visual indicator (no ARIA roles)
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import "../../styles/vars-v2.css";
|
|
2
1
|
import { LitElement, html, css } from "lit";
|
|
3
2
|
import { customElement, property } from "lit/decorators.js";
|
|
4
3
|
|
|
@@ -11,7 +10,7 @@ export class RelBadge extends LitElement {
|
|
|
11
10
|
@property({ type: String }) suffix: string = "notifications";
|
|
12
11
|
|
|
13
12
|
@property({ type: String, reflect: true })
|
|
14
|
-
size: "sm" | "md" | "lg" = "md";
|
|
13
|
+
size: "sm" | "md" | "lg" | "xl" = "md";
|
|
15
14
|
|
|
16
15
|
@property({ type: String, reflect: true })
|
|
17
16
|
variant: "dot" | "number" = "number";
|
|
@@ -36,53 +35,106 @@ export class RelBadge extends LitElement {
|
|
|
36
35
|
|
|
37
36
|
static styles = css`
|
|
38
37
|
:host {
|
|
38
|
+
color: var(--rel-text-default);
|
|
39
39
|
display: inline-flex;
|
|
40
40
|
}
|
|
41
41
|
|
|
42
42
|
.badge {
|
|
43
|
+
font-weight: var(--rel-body-sm-semibold-font-weight);
|
|
44
|
+
font-size: var(--rel-body-sm-semibold-font-size);
|
|
45
|
+
line-height: var(--rel-body-sm-semibold-line-height);
|
|
46
|
+
letter-spacing: var(--rel-body-sm-semibold-letter-spacing);
|
|
43
47
|
display: inline-flex;
|
|
44
48
|
align-items: center;
|
|
45
49
|
justify-content: center;
|
|
46
|
-
|
|
47
|
-
font-
|
|
48
|
-
background-color: var(--rel-badge-bg, var(--rel-
|
|
49
|
-
color: var(--rel-badge-color,
|
|
50
|
-
|
|
50
|
+
box-sizing: border-box;
|
|
51
|
+
font-family: var(--rel-fonts-font-family, sans-serif);
|
|
52
|
+
background-color: var(--rel-badge-bg, var(--rel-bg-danger));
|
|
53
|
+
color: var(--rel-badge-color, var(--rel-text-static-light));
|
|
54
|
+
/* Large fixed radius (not 50%) — stays a perfect circle for 1-2 digits,
|
|
55
|
+
but becomes a pill instead of clipping when content like "999+"
|
|
56
|
+
is wider than the minimum circle. */
|
|
57
|
+
border-radius: 999px;
|
|
58
|
+
white-space: nowrap;
|
|
51
59
|
}
|
|
52
60
|
|
|
53
|
-
/* NUMBER BADGES
|
|
61
|
+
/* NUMBER BADGES — min-width (not width) lets multi-character content
|
|
62
|
+
like "999+" grow the badge into a pill instead of overflowing a fixed circle. */
|
|
54
63
|
.badge-sm {
|
|
55
|
-
width: 20px;
|
|
64
|
+
min-width: 20px;
|
|
56
65
|
height: 20px;
|
|
57
|
-
|
|
66
|
+
padding: 0 4px;
|
|
67
|
+
font-family: var(--rel-body-xs-regular-font-family);
|
|
68
|
+
font-weight: var(--rel-body-xs-semibold-font-weight);
|
|
69
|
+
font-size: var(--rel-body-xs-semibold-font-size);
|
|
70
|
+
line-height: var(--rel-body-xs-semibold-line-height);
|
|
71
|
+
letter-spacing: var(--rel-body-xs-semibold-letter-spacing);
|
|
58
72
|
}
|
|
59
73
|
|
|
74
|
+
/* Size tiers follow Figma Badge S/M/L/XL (20/24/28/40px).
|
|
75
|
+
Figma binds a *-regular family with *-semibold metrics on S/M/L. */
|
|
60
76
|
.badge-md {
|
|
61
|
-
width:
|
|
62
|
-
height:
|
|
63
|
-
|
|
77
|
+
min-width: 24px;
|
|
78
|
+
height: 24px;
|
|
79
|
+
padding: 0 6px;
|
|
80
|
+
font-family: var(--rel-body-sm-regular-font-family);
|
|
81
|
+
font-weight: var(--rel-body-sm-semibold-font-weight);
|
|
82
|
+
font-size: var(--rel-body-sm-semibold-font-size);
|
|
83
|
+
line-height: var(--rel-body-sm-semibold-line-height);
|
|
84
|
+
letter-spacing: var(--rel-body-sm-semibold-letter-spacing);
|
|
64
85
|
}
|
|
65
86
|
|
|
66
87
|
.badge-lg {
|
|
67
|
-
width:
|
|
88
|
+
min-width: 28px;
|
|
89
|
+
height: 28px;
|
|
90
|
+
padding: 0 6px;
|
|
91
|
+
font-family: var(--rel-body-md-regular-font-family);
|
|
92
|
+
font-weight: var(--rel-body-md-semibold-font-weight);
|
|
93
|
+
font-size: var(--rel-body-md-regular-font-size);
|
|
94
|
+
line-height: var(--rel-body-md-regular-line-height);
|
|
95
|
+
letter-spacing: var(--rel-body-md-regular-letter-spacing);
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
.badge-xl {
|
|
99
|
+
min-width: 40px;
|
|
68
100
|
height: 40px;
|
|
69
|
-
|
|
101
|
+
padding: 0 8px;
|
|
102
|
+
font-family: var(--rel-body-xl-semibold-font-family);
|
|
103
|
+
font-weight: var(--rel-body-xl-semibold-font-weight);
|
|
104
|
+
font-size: var(--rel-body-xl-semibold-font-size);
|
|
105
|
+
line-height: var(--rel-body-xl-semibold-line-height);
|
|
106
|
+
letter-spacing: var(--rel-body-xl-semibold-letter-spacing);
|
|
70
107
|
}
|
|
71
108
|
|
|
72
|
-
/* DOT BADGES
|
|
109
|
+
/* DOT BADGES — explicitly reset min-width/padding inherited from the
|
|
110
|
+
number-badge size rules above; otherwise min-width wins over this
|
|
111
|
+
smaller width and the dot gets stretched into a squashed pill. */
|
|
73
112
|
.badge-dot.badge-sm {
|
|
74
113
|
width: 8px;
|
|
75
114
|
height: 8px;
|
|
115
|
+
min-width: 0;
|
|
116
|
+
padding: 0;
|
|
76
117
|
}
|
|
77
118
|
|
|
78
119
|
.badge-dot.badge-md {
|
|
79
120
|
width: 10px;
|
|
80
121
|
height: 10px;
|
|
122
|
+
min-width: 0;
|
|
123
|
+
padding: 0;
|
|
81
124
|
}
|
|
82
125
|
|
|
83
126
|
.badge-dot.badge-lg {
|
|
84
127
|
width: 12px;
|
|
85
128
|
height: 12px;
|
|
129
|
+
min-width: 0;
|
|
130
|
+
padding: 0;
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
.badge-dot.badge-xl {
|
|
134
|
+
width: 12px;
|
|
135
|
+
height: 12px;
|
|
136
|
+
min-width: 0;
|
|
137
|
+
padding: 0;
|
|
86
138
|
}
|
|
87
139
|
`;
|
|
88
140
|
|
|
@@ -110,7 +162,7 @@ export class RelBadge extends LitElement {
|
|
|
110
162
|
|
|
111
163
|
render() {
|
|
112
164
|
return html`
|
|
113
|
-
<span class="${this.classes}" aria-label=${this.ariaLabel || `${this.number} ${this.suffix}`}>
|
|
165
|
+
<span part="base" class="${this.classes}" aria-label=${this.ariaLabel || `${this.number} ${this.suffix}`}>
|
|
114
166
|
${this.variant === "number" ? this.number : null}
|
|
115
167
|
</span>
|
|
116
168
|
`;
|
|
@@ -65,15 +65,15 @@ None exposed.
|
|
|
65
65
|
## Tokens / CSS Variables
|
|
66
66
|
|
|
67
67
|
### Semantic Tokens
|
|
68
|
-
- `--rel-
|
|
69
|
-
- `--rel-
|
|
70
|
-
- `--rel-
|
|
71
|
-
- `--rel-
|
|
68
|
+
- `--rel-fonts-font-family` - Font family
|
|
69
|
+
- `--rel-body-md-regular-font-size` - Font size
|
|
70
|
+
- `--rel-fonts-weight-body-medium` - Font weight for links
|
|
71
|
+
- `--rel-fonts-weight-body-semibold` - Font weight for current page
|
|
72
72
|
|
|
73
73
|
### Color Tokens
|
|
74
|
-
- `--rel-text-
|
|
75
|
-
- `--rel-text-
|
|
76
|
-
- `--rel-
|
|
74
|
+
- `--rel-text-default` - Base text color
|
|
75
|
+
- `--rel-text-label` - Link and current page text color
|
|
76
|
+
- `--rel-bg-info` - Link hover color and focus outline
|
|
77
77
|
|
|
78
78
|
## Accessibility
|
|
79
79
|
- Uses semantic `<nav>` with `aria-label="Breadcrumb"`
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import "../../styles/vars-v2.css";
|
|
2
1
|
import { LitElement, html, css } from "lit";
|
|
3
2
|
import { customElement, property } from "lit/decorators.js";
|
|
4
3
|
|
|
@@ -14,10 +13,13 @@ export class RelBreadcrumbs extends LitElement {
|
|
|
14
13
|
|
|
15
14
|
static styles = css`
|
|
16
15
|
:host {
|
|
17
|
-
display: block;
|
|
18
|
-
|
|
19
|
-
font-
|
|
20
|
-
|
|
16
|
+
display: block;
|
|
17
|
+
color: var(--rel-text-default);
|
|
18
|
+
font-family: var(--rel-body-md-regular-font-family);
|
|
19
|
+
font-weight: var(--rel-body-md-regular-font-weight);
|
|
20
|
+
font-size: var(--rel-body-md-regular-font-size);
|
|
21
|
+
line-height: var(--rel-body-md-regular-line-height);
|
|
22
|
+
letter-spacing: var(--rel-body-md-regular-letter-spacing);
|
|
21
23
|
}
|
|
22
24
|
|
|
23
25
|
nav {
|
|
@@ -33,30 +35,31 @@ export class RelBreadcrumbs extends LitElement {
|
|
|
33
35
|
}
|
|
34
36
|
|
|
35
37
|
li {
|
|
38
|
+
gap: var(--rel-spacing-xs);
|
|
36
39
|
display: flex;
|
|
37
40
|
align-items: center;
|
|
38
41
|
}
|
|
39
42
|
|
|
40
43
|
a {
|
|
41
44
|
text-decoration: none;
|
|
42
|
-
font-weight: var(--rel-
|
|
43
|
-
color: var(--rel-
|
|
45
|
+
font-weight: var(--rel-body-md-regular-font-weight);
|
|
46
|
+
color: var(--rel-text-body);
|
|
44
47
|
}
|
|
45
48
|
|
|
46
49
|
a:hover {
|
|
47
50
|
text-decoration: underline;
|
|
48
|
-
color: var(--rel-
|
|
51
|
+
color: var(--rel-text-default);
|
|
49
52
|
}
|
|
50
53
|
|
|
51
54
|
a:focus-visible {
|
|
52
|
-
outline: 2px solid var(--rel-
|
|
55
|
+
outline: 2px solid var(--rel-border-focus);
|
|
53
56
|
outline-offset: 2px;
|
|
54
57
|
border-radius: 2px;
|
|
55
58
|
}
|
|
56
59
|
|
|
57
60
|
.current {
|
|
58
|
-
font-weight: var(--rel-
|
|
59
|
-
color: var(--rel-
|
|
61
|
+
font-weight: var(--rel-body-md-semibold-font-weight);
|
|
62
|
+
color: var(--rel-text-default);
|
|
60
63
|
cursor: default;
|
|
61
64
|
}
|
|
62
65
|
|
|
@@ -70,7 +73,7 @@ export class RelBreadcrumbs extends LitElement {
|
|
|
70
73
|
|
|
71
74
|
render() {
|
|
72
75
|
return html`
|
|
73
|
-
<nav aria-label="Breadcrumb">
|
|
76
|
+
<nav part="base" aria-label="Breadcrumb">
|
|
74
77
|
<ol>
|
|
75
78
|
${this.items.map((item, index) => {
|
|
76
79
|
const isLast = index === this.items.length - 1;
|
|
@@ -79,7 +82,7 @@ export class RelBreadcrumbs extends LitElement {
|
|
|
79
82
|
<li>
|
|
80
83
|
${item.url && !isLast
|
|
81
84
|
? html`<a href=${item.url}>${item.label}</a>`
|
|
82
|
-
: html`<span class="current" aria-current="page">${item.label}</span>`}
|
|
85
|
+
: html`<span part="label" class="current" aria-current="page">${item.label}</span>`}
|
|
83
86
|
${!isLast
|
|
84
87
|
? html`
|
|
85
88
|
<svg viewBox="0 0 24 24" aria-hidden="true">
|
|
@@ -75,31 +75,31 @@ None exposed.
|
|
|
75
75
|
## Tokens / CSS Variables
|
|
76
76
|
|
|
77
77
|
### Semantic Tokens
|
|
78
|
-
- `--rel-
|
|
79
|
-
- `--rel-
|
|
80
|
-
- `--rel-
|
|
78
|
+
- `--rel-fonts-font-family` - Font family
|
|
79
|
+
- `--rel-fonts-weight-body-semibold` - Font weight
|
|
80
|
+
- `--rel-body-sm-regular-font-size`, `--rel-body-md-regular-font-size`, `--rel-body-xl-regular-font-size` - Font sizes for sizes
|
|
81
81
|
|
|
82
82
|
### Spacing Tokens
|
|
83
|
-
- `--rel-spacing-
|
|
84
|
-
- `--rel-spacing-
|
|
83
|
+
- `--rel-spacing-2xs` - Internal gap between elements
|
|
84
|
+
- `--rel-spacing-md`, `--rel-spacing-lg`, `--rel-spacing-xl` - Horizontal padding by size
|
|
85
85
|
|
|
86
86
|
### Color Tokens (by variant/tone)
|
|
87
|
-
- **default + default tone**: `--rel-
|
|
88
|
-
- **default + critical tone**: `--rel-
|
|
89
|
-
- **default + success tone**: `--rel-
|
|
90
|
-
- **primary + default tone**: `--rel-
|
|
91
|
-
- **primary + critical tone**: `--rel-
|
|
92
|
-
- **primary + success tone**: `--rel-
|
|
93
|
-
- **secondary**: `--rel-
|
|
94
|
-
- **text**: transparent (bg), `--rel-
|
|
95
|
-
- **link**: transparent (bg), `--rel-
|
|
96
|
-
- **icon**: `--rel-
|
|
97
|
-
- **disabled**: `--rel-
|
|
87
|
+
- **default + default tone**: `--rel-text-default` (bg), `--rel-bg-surface` (text)
|
|
88
|
+
- **default + critical tone**: `--rel-bg-danger` (bg), `--rel-bg-surface` (text)
|
|
89
|
+
- **default + success tone**: `--rel-text-success` (bg), `--rel-bg-surface` (text)
|
|
90
|
+
- **primary + default tone**: `--rel-bg-brand` (bg), `--rel-text-default` (text)
|
|
91
|
+
- **primary + critical tone**: `--rel-bg-danger` (bg), `--rel-bg-surface` (text)
|
|
92
|
+
- **primary + success tone**: `--rel-text-success` (bg), `--rel-bg-surface` (text)
|
|
93
|
+
- **secondary**: `--rel-bg-surface` (bg), `--rel-text-default` (text + border)
|
|
94
|
+
- **text**: transparent (bg), `--rel-text-default` (text)
|
|
95
|
+
- **link**: transparent (bg), `--rel-bg-info` (text), underlined
|
|
96
|
+
- **icon**: `--rel-bg-surface-elevated` (bg), `--rel-text-default` (text), circular (40px × 40px)
|
|
97
|
+
- **disabled**: `--rel-border-default` (bg), `--rel-text-disabled` (text)
|
|
98
98
|
|
|
99
99
|
### Border Tokens
|
|
100
|
-
- `--rel-
|
|
101
|
-
- `--rel-
|
|
102
|
-
- `--rel-
|
|
100
|
+
- `--rel-border-radius-full-rounded` - Large corner radius
|
|
101
|
+
- `--rel-border-radius-sm` - Small corner radius
|
|
102
|
+
- `--rel-border-radius-square` - No corner radius
|
|
103
103
|
|
|
104
104
|
## Accessibility
|
|
105
105
|
- Uses native `<button>` element for proper semantics
|
|
@@ -126,5 +126,5 @@ None exposed.
|
|
|
126
126
|
- Clicking a disabled button prevents default and stops propagation
|
|
127
127
|
- Size variants affect height (32px/40px/48px) and horizontal padding
|
|
128
128
|
- The button has `display: inline-flex` with `align-items: center` and `justify-content: center`
|
|
129
|
-
- Internal gap of `var(--rel-spacing-
|
|
129
|
+
- Internal gap of `var(--rel-spacing-2xs)` allows icons + text combinations
|
|
130
130
|
- Transitions are `0.15s ease` for all visual changes
|