@reliability-design/web 1.3.1 → 1.4.1
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/CHANGELOG.md +22 -0
- 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 +149 -158
- 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 +46 -11
- 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 +292 -105
- package/dist/components/rel-calendar/README.md +5 -5
- package/dist/components/rel-calendar/rel-calendar.ts +68 -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 +154 -82
- 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 +88 -25
- 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 +63 -19
- 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 +218 -92
- 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 +1 -2
- package/dist/components/rel-topbar/rel-topbar-brand.ts +8 -5
- package/dist/components/rel-topbar/rel-topbar-dropdown-item.ts +10 -8
- package/dist/components/rel-topbar/rel-topbar-dropdown.ts +4 -5
- package/dist/components/rel-topbar/rel-topbar-item.ts +23 -22
- package/dist/components/rel-topbar/rel-topbar-mobile-panel.ts +0 -1
- package/dist/components/rel-topbar/rel-topbar-profile.ts +68 -50
- package/dist/components/rel-topbar/rel-topbar-utilities.ts +1 -2
- package/dist/components/rel-topbar/rel-topbar.ts +31 -29
- package/dist/index.d.mts +159 -39
- package/dist/index.d.ts +159 -39
- package/dist/index.js +3600 -2269
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +3930 -2600
- package/dist/index.mjs.map +1 -1
- package/dist/styles/vars.css +866 -363
- package/dist/vars-BYCEEKWJ.css +866 -0
- package/package.json +5 -3
- package/dist/components/rel-range-picker/rel-range-picker.css +0 -349
- package/dist/styles/vars-v2.css +0 -525
- package/dist/vars-F54UGCHM.css +0 -363
- package/dist/vars-v2-VMGWTFJZ.css +0 -525
|
@@ -110,24 +110,24 @@ None exposed.
|
|
|
110
110
|
### Component-Level Custom Properties
|
|
111
111
|
The component defines CSS custom properties on `:host`:
|
|
112
112
|
|
|
113
|
-
- `--tab-active-color` - Active tab underline color (default: `--rel-
|
|
114
|
-
- `--tab-text-default` - Default tab text color (default: `--rel-text-
|
|
113
|
+
- `--tab-active-color` - Active tab underline color (default: `--rel-bg-brand`)
|
|
114
|
+
- `--tab-text-default` - Default tab text color (default: `--rel-text-default`)
|
|
115
115
|
- `--tab-text-disabled` - Disabled tab text color (default: `--rel-text-disabled`)
|
|
116
|
-
- `--tab-text-hover` - Hover tab text color (default: `--rel-text-
|
|
116
|
+
- `--tab-text-hover` - Hover tab text color (default: `--rel-text-label`)
|
|
117
117
|
- `--tab-underline-height` - Height of active underline (default: `3px`)
|
|
118
|
-
- `--tab-hover-color` - Background color on hover (default: `--rel-
|
|
118
|
+
- `--tab-hover-color` - Background color on hover (default: `--rel-bg-neutral-elevated-1`)
|
|
119
119
|
|
|
120
120
|
### Design Token References
|
|
121
|
-
- `--rel-
|
|
122
|
-
- `--rel-
|
|
123
|
-
- `--rel-
|
|
124
|
-
- `--rel-spacing-
|
|
125
|
-
- `--rel-spacing-
|
|
126
|
-
- `--rel-border-
|
|
121
|
+
- `--rel-fonts-font-family` - Font family
|
|
122
|
+
- `--rel-body-md-regular-font-size` - Font size
|
|
123
|
+
- `--rel-fonts-weight-body-medium` - Font weight
|
|
124
|
+
- `--rel-spacing-sm`, `--rel-spacing-md` - Tab padding
|
|
125
|
+
- `--rel-spacing-2xs` - Gap between label and badge
|
|
126
|
+
- `--rel-border-accent` - Bottom border color (default: `#c4c4c4`)
|
|
127
127
|
- `--rel-border-info` - Focus outline color
|
|
128
|
-
- `--rel-
|
|
129
|
-
- `--rel-
|
|
130
|
-
- `--rel-
|
|
128
|
+
- `--rel-border-radius-xs` - Focus outline border radius
|
|
129
|
+
- `--rel-bg-danger` - Badge background color
|
|
130
|
+
- `--rel-bg-surface` - Badge text color
|
|
131
131
|
|
|
132
132
|
## Accessibility
|
|
133
133
|
- Uses `role="tablist"` on container and `role="tab"` on each tab
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { LitElement, html, css } from "lit";
|
|
2
2
|
import { customElement, property, state } from "lit/decorators.js";
|
|
3
|
-
import "../../styles/vars-v2.css";
|
|
4
3
|
import "../rel-badge/rel-badge";
|
|
5
4
|
|
|
6
5
|
export interface TabItem {
|
|
@@ -28,44 +27,89 @@ export class RelTabItem extends LitElement {
|
|
|
28
27
|
export class RelTab extends LitElement {
|
|
29
28
|
@property({ type: Array }) tabs: TabItem[] = [];
|
|
30
29
|
@property({ type: Number, reflect: true }) activeIndex = 0;
|
|
30
|
+
|
|
31
|
+
/** Tab size — styled via :host([size]) rules. */
|
|
32
|
+
@property({ type: String, reflect: true })
|
|
33
|
+
size: "sm" | "md" | "lg" = "md";
|
|
31
34
|
@state() private _tabItems: RelTabItem[] = [];
|
|
32
35
|
|
|
33
36
|
static styles = css`
|
|
34
37
|
:host {
|
|
35
|
-
|
|
36
|
-
--tab-
|
|
37
|
-
--tab-text-
|
|
38
|
-
--tab-text-
|
|
38
|
+
color: var(--rel-text-default);
|
|
39
|
+
--tab-active-color: var(--rel-bg-brand);
|
|
40
|
+
--tab-text-default: var(--rel-text-default);
|
|
41
|
+
--tab-text-disabled: var(--rel-text-disabled);
|
|
42
|
+
--tab-text-hover: var(--rel-text-label);
|
|
39
43
|
--tab-underline-height: 3px;
|
|
40
|
-
--tab-hover-color: var(--rel-
|
|
44
|
+
--tab-hover-color: var(--rel-bg-neutral-elevated-1);
|
|
41
45
|
display: block;
|
|
42
|
-
font-family: var(--rel-
|
|
46
|
+
font-family: var(--rel-fonts-font-family);
|
|
43
47
|
}
|
|
44
48
|
|
|
45
49
|
.tabs-wrapper {
|
|
46
50
|
display: flex;
|
|
47
|
-
border-bottom: 1px solid var(--rel-border-
|
|
48
|
-
font-family: var(--rel-
|
|
51
|
+
border-bottom: 1px solid var(--rel-border-accent);
|
|
52
|
+
font-family: var(--rel-fonts-font-family);
|
|
49
53
|
user-select: none;
|
|
50
54
|
}
|
|
51
55
|
|
|
52
56
|
.tab {
|
|
53
57
|
position: relative;
|
|
54
|
-
padding: var(--rel-spacing-
|
|
58
|
+
padding: var(--rel-spacing-sm) var(--rel-spacing-md);
|
|
55
59
|
cursor: pointer;
|
|
56
|
-
color: var(--
|
|
57
|
-
font-size: var(--rel-fontSizes-md);
|
|
58
|
-
font-weight: var(--rel-fontWeights-medium);
|
|
60
|
+
color: var(--rel-text-body);
|
|
59
61
|
transition: color 0.2s ease;
|
|
60
62
|
display: flex;
|
|
61
63
|
align-items: center;
|
|
62
|
-
gap: var(--rel-spacing-
|
|
64
|
+
gap: var(--rel-spacing-xs);
|
|
65
|
+
font-family: var(--rel-body-md-regular-font-family);
|
|
66
|
+
font-weight: var(--rel-body-md-regular-font-weight);
|
|
67
|
+
font-size: var(--rel-body-md-regular-font-size);
|
|
68
|
+
line-height: var(--rel-body-md-regular-line-height);
|
|
69
|
+
letter-spacing: var(--rel-body-md-regular-letter-spacing);
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
.tab.active {
|
|
73
|
+
color: var(--tab-text-default);
|
|
74
|
+
font-weight: var(--rel-body-md-medium-font-weight);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/* Size variants (CSS-only, Figma tab sizes) */
|
|
78
|
+
:host([size="lg"]) .tab {
|
|
79
|
+
font-family: var(--rel-body-lg-regular-font-family);
|
|
80
|
+
font-weight: var(--rel-body-lg-regular-font-weight);
|
|
81
|
+
font-size: var(--rel-body-lg-regular-font-size);
|
|
82
|
+
line-height: var(--rel-body-lg-regular-line-height);
|
|
83
|
+
letter-spacing: var(--rel-body-lg-regular-letter-spacing);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
:host([size="lg"]) .tab.active {
|
|
87
|
+
font-weight: var(--rel-body-lg-medium-font-weight);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
:host([size="sm"]) .tab {
|
|
91
|
+
font-family: var(--rel-body-sm-regular-font-family);
|
|
92
|
+
font-weight: var(--rel-body-xs-medium-font-weight);
|
|
93
|
+
font-size: var(--rel-body-sm-medium-font-size);
|
|
94
|
+
line-height: var(--rel-body-sm-medium-line-height);
|
|
95
|
+
letter-spacing: var(--rel-body-sm-medium-letter-spacing);
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
/* Badge tones — pass through rel-badge custom-prop API */
|
|
99
|
+
.tab rel-badge {
|
|
100
|
+
--rel-badge-bg: var(--rel-bg-danger);
|
|
101
|
+
--rel-badge-color: var(--rel-text-static-light);
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
.tab.disabled rel-badge {
|
|
105
|
+
--rel-badge-bg: var(--rel-bg-neutral-inverse-2);
|
|
106
|
+
--rel-badge-color: var(--rel-text-inverse);
|
|
63
107
|
}
|
|
64
108
|
|
|
65
109
|
.tab:focus-visible {
|
|
66
|
-
outline: 2px solid var(--rel-
|
|
110
|
+
outline: 2px solid var(--rel-border-focus);
|
|
67
111
|
outline-offset: -2px;
|
|
68
|
-
border-radius: var(--rel-
|
|
112
|
+
border-radius: var(--rel-border-radius-xs);
|
|
69
113
|
}
|
|
70
114
|
|
|
71
115
|
.tab:hover:not(.disabled) .tab-label {
|
|
@@ -162,11 +206,11 @@ export class RelTab extends LitElement {
|
|
|
162
206
|
const tabs = this._effectiveTabs;
|
|
163
207
|
return html`
|
|
164
208
|
<slot name="items" style="display:none;" @slotchange="${this._onSlotChange}"></slot>
|
|
165
|
-
<div class="tabs-wrapper" role="tablist">
|
|
209
|
+
<div part="list" class="tabs-wrapper" role="tablist">
|
|
166
210
|
${tabs.map(
|
|
167
211
|
(tab, i) => html`
|
|
168
212
|
<div
|
|
169
|
-
class="tab ${i === this.activeIndex
|
|
213
|
+
part="item" class="tab ${i === this.activeIndex
|
|
170
214
|
? "active"
|
|
171
215
|
: ""} ${tab.disabled ? "disabled" : ""}"
|
|
172
216
|
role="tab"
|
|
@@ -176,7 +220,7 @@ export class RelTab extends LitElement {
|
|
|
176
220
|
@click="${() => this.selectTab(i)}"
|
|
177
221
|
@keydown="${(e: KeyboardEvent) => this.onKeyDown(e, i)}"
|
|
178
222
|
>
|
|
179
|
-
<span class="tab-label">${tab.label}</span>
|
|
223
|
+
<span part="label" class="tab-label">${tab.label}</span>
|
|
180
224
|
${tab.badgeDot
|
|
181
225
|
? html`<rel-badge variant="dot" size="sm"></rel-badge>`
|
|
182
226
|
: tab.badge
|
|
@@ -142,16 +142,16 @@ None exposed.
|
|
|
142
142
|
## Tokens / CSS Variables
|
|
143
143
|
|
|
144
144
|
### Semantic Tokens
|
|
145
|
-
- `--rel-
|
|
146
|
-
- `--rel-
|
|
145
|
+
- `--rel-fonts-font-family` - Font family
|
|
146
|
+
- `--rel-body-md-regular-font-size` - Table font size
|
|
147
147
|
|
|
148
148
|
### Color Tokens
|
|
149
|
-
- `--rel-
|
|
150
|
-
- `--rel-
|
|
149
|
+
- `--rel-text-default` - Table text color
|
|
150
|
+
- `--rel-border-default` - Border color (when bordered is true)
|
|
151
151
|
|
|
152
152
|
### Border Tokens
|
|
153
|
-
- `--rel-
|
|
154
|
-
- `--rel-
|
|
153
|
+
- `--rel-stroke-sm` - Border width
|
|
154
|
+
- `--rel-border-radius-sm` - Table wrapper border radius
|
|
155
155
|
|
|
156
156
|
## Accessibility
|
|
157
157
|
- Uses semantic native `<table>` element for proper screen reader support
|
|
@@ -168,7 +168,7 @@ None exposed.
|
|
|
168
168
|
## Notes / Edge Cases
|
|
169
169
|
- The component wraps the table in a `.table-wrapper` div with `overflow-x: auto` for horizontal scrolling
|
|
170
170
|
- The inner `<table>` element uses `border-collapse: collapse` for standard table rendering
|
|
171
|
-
- **bordered mode**: Applies a border with `--rel-
|
|
171
|
+
- **bordered mode**: Applies a border with `--rel-stroke-sm` and rounded corners to the wrapper
|
|
172
172
|
- The `bordered` and `compact` attributes are reflected in HTML (appear as actual attributes when set)
|
|
173
173
|
- **compact mode**: Currently reflected but no styling is applied in the component (may be intended for future use or external styling)
|
|
174
174
|
- The table is `width: 100%` by default
|
|
@@ -5,8 +5,9 @@ import { customElement } from "lit/decorators.js";
|
|
|
5
5
|
export class RelTableBody extends LitElement {
|
|
6
6
|
static styles = css`
|
|
7
7
|
:host {
|
|
8
|
+
color: var(--rel-text-default);
|
|
8
9
|
display: table-row-group;
|
|
9
|
-
font-family: var(--rel-
|
|
10
|
+
font-family: var(--rel-fonts-font-family);
|
|
10
11
|
}
|
|
11
12
|
`;
|
|
12
13
|
|
|
@@ -6,13 +6,16 @@ export class RelTableCaption extends LitElement {
|
|
|
6
6
|
static styles = css`
|
|
7
7
|
:host {
|
|
8
8
|
display: table-caption;
|
|
9
|
-
caption-side: bottom;
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
9
|
+
caption-side: bottom;
|
|
10
|
+
margin-top: var(--rel-spacing-md);
|
|
11
|
+
padding-top: var(--rel-spacing-sm);
|
|
12
|
+
color: var(--rel-text-placeholder);
|
|
13
|
+
text-align: left;
|
|
14
|
+
font-family: var(--rel-body-sm-regular-font-family);
|
|
15
|
+
font-weight: var(--rel-body-sm-regular-font-weight);
|
|
16
|
+
font-size: var(--rel-body-sm-regular-font-size);
|
|
17
|
+
line-height: var(--rel-body-sm-regular-line-height);
|
|
18
|
+
letter-spacing: var(--rel-body-sm-regular-letter-spacing);
|
|
16
19
|
}
|
|
17
20
|
`;
|
|
18
21
|
|
|
@@ -8,11 +8,12 @@ export class RelTableCell extends LitElement {
|
|
|
8
8
|
|
|
9
9
|
static styles = css`
|
|
10
10
|
:host {
|
|
11
|
+
color: var(--rel-text-default);
|
|
11
12
|
display: contents;
|
|
12
13
|
}
|
|
13
14
|
|
|
14
15
|
td {
|
|
15
|
-
border-right: 1px solid var(--rel-
|
|
16
|
+
border-right: 1px solid var(--rel-border-default);
|
|
16
17
|
}
|
|
17
18
|
|
|
18
19
|
:host(:last-child) td {
|
|
@@ -27,12 +28,12 @@ export class RelTableCell extends LitElement {
|
|
|
27
28
|
colspan="${this.colspan ?? 1}"
|
|
28
29
|
style="
|
|
29
30
|
text-align: ${this.align};
|
|
30
|
-
font-family: var(--rel-
|
|
31
|
-
padding: var(--rel-spacing-
|
|
32
|
-
font-size: var(--rel-
|
|
33
|
-
color: var(--rel-
|
|
31
|
+
font-family: var(--rel-fonts-font-family);
|
|
32
|
+
padding: var(--rel-spacing-sm) var(--rel-spacing-md);
|
|
33
|
+
font-size: var(--rel-body-md-regular-font-size);
|
|
34
|
+
color: var(--rel-text-default);
|
|
34
35
|
vertical-align: middle;
|
|
35
|
-
border-bottom: 1px solid var(--rel-
|
|
36
|
+
border-bottom: 1px solid var(--rel-border-default);
|
|
36
37
|
"
|
|
37
38
|
>
|
|
38
39
|
<slot></slot>
|
|
@@ -5,10 +5,11 @@ import { customElement } from "lit/decorators.js";
|
|
|
5
5
|
export class RelTableFooter extends LitElement {
|
|
6
6
|
static styles = css`
|
|
7
7
|
:host {
|
|
8
|
+
color: var(--rel-text-default);
|
|
8
9
|
display: table-footer-group;
|
|
9
|
-
font-family: var(--rel-
|
|
10
|
-
font-weight: var(--rel-
|
|
11
|
-
background-color: var(--rel-
|
|
10
|
+
font-family: var(--rel-fonts-font-family);
|
|
11
|
+
font-weight: var(--rel-fonts-weight-body-medium, 500);
|
|
12
|
+
background-color: var(--rel-bg-surface-elevated);
|
|
12
13
|
}
|
|
13
14
|
`;
|
|
14
15
|
|
|
@@ -7,17 +7,19 @@ export class RelTableHead extends LitElement {
|
|
|
7
7
|
|
|
8
8
|
static styles = css`
|
|
9
9
|
:host {
|
|
10
|
-
display: table-cell;
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
text-
|
|
14
|
-
font-weight: var(--rel-fontWeights-medium, 500);
|
|
15
|
-
font-size: var(--rel-fontSizes-sm);
|
|
16
|
-
color: var(--rel-colors-gray-placeholder);
|
|
10
|
+
display: table-cell;
|
|
11
|
+
padding: var(--rel-spacing-sm) var(--rel-spacing-md);
|
|
12
|
+
text-align: left;
|
|
13
|
+
color: var(--rel-text-placeholder);
|
|
17
14
|
vertical-align: middle;
|
|
18
15
|
height: var(--rel-table-head-height, 48px);
|
|
19
|
-
border-bottom: 1px solid var(--rel-
|
|
20
|
-
border-right: 1px solid var(--rel-
|
|
16
|
+
border-bottom: 1px solid var(--rel-border-default);
|
|
17
|
+
border-right: 1px solid var(--rel-border-default);
|
|
18
|
+
font-family: var(--rel-body-sm-medium-font-family);
|
|
19
|
+
font-weight: var(--rel-body-sm-medium-font-weight);
|
|
20
|
+
font-size: var(--rel-body-sm-medium-font-size);
|
|
21
|
+
line-height: var(--rel-body-sm-medium-line-height);
|
|
22
|
+
letter-spacing: var(--rel-body-sm-medium-letter-spacing);
|
|
21
23
|
}
|
|
22
24
|
|
|
23
25
|
:host(:last-child) {
|
|
@@ -5,8 +5,9 @@ import { customElement } from "lit/decorators.js";
|
|
|
5
5
|
export class RelTableHeader extends LitElement {
|
|
6
6
|
static styles = css`
|
|
7
7
|
:host {
|
|
8
|
+
color: var(--rel-text-default);
|
|
8
9
|
display: table-header-group;
|
|
9
|
-
font-family: var(--rel-
|
|
10
|
+
font-family: var(--rel-fonts-font-family);
|
|
10
11
|
}
|
|
11
12
|
`;
|
|
12
13
|
|
|
@@ -7,21 +7,22 @@ export class RelTableRow extends LitElement {
|
|
|
7
7
|
|
|
8
8
|
static styles = css`
|
|
9
9
|
:host {
|
|
10
|
+
color: var(--rel-text-default);
|
|
10
11
|
display: table-row;
|
|
11
|
-
font-family: var(--rel-
|
|
12
|
+
font-family: var(--rel-fonts-font-family);
|
|
12
13
|
transition: background-color 0.15s ease;
|
|
13
14
|
}
|
|
14
15
|
|
|
15
16
|
:host(:hover) {
|
|
16
|
-
background-color: var(--rel-
|
|
17
|
+
background-color: var(--rel-bg-surface-elevated);
|
|
17
18
|
}
|
|
18
19
|
|
|
19
20
|
:host([selected]) {
|
|
20
|
-
background-color: var(--rel-
|
|
21
|
+
background-color: var(--rel-bg-neutral-elevated-2);
|
|
21
22
|
}
|
|
22
23
|
|
|
23
24
|
:host([selected]:hover) {
|
|
24
|
-
background-color: var(--rel-
|
|
25
|
+
background-color: var(--rel-action-overlay-hover);
|
|
25
26
|
}
|
|
26
27
|
`;
|
|
27
28
|
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
import { LitElement, html, css } from "lit";
|
|
2
2
|
import { customElement, property } from "lit/decorators.js";
|
|
3
3
|
|
|
4
|
+
/**
|
|
5
|
+
* @deprecated rel-table has no Figma design in RelDS 2.0 and is excluded from
|
|
6
|
+
* the parity contract. It remains exported for compatibility but will be
|
|
7
|
+
* removed in a future major version.
|
|
8
|
+
*/
|
|
4
9
|
@customElement("rel-table")
|
|
5
10
|
export class RelTable extends LitElement {
|
|
6
11
|
@property({ type: Boolean, reflect: true }) bordered = false;
|
|
@@ -8,8 +13,9 @@ export class RelTable extends LitElement {
|
|
|
8
13
|
|
|
9
14
|
static styles = css`
|
|
10
15
|
:host {
|
|
16
|
+
color: var(--rel-text-default);
|
|
11
17
|
display: block;
|
|
12
|
-
font-family: var(--rel-
|
|
18
|
+
font-family: var(--rel-fonts-font-family);
|
|
13
19
|
position: relative;
|
|
14
20
|
width: 100%;
|
|
15
21
|
}
|
|
@@ -21,18 +27,21 @@ export class RelTable extends LitElement {
|
|
|
21
27
|
}
|
|
22
28
|
|
|
23
29
|
:host([bordered]) {
|
|
24
|
-
border: var(--rel-
|
|
25
|
-
border-radius: var(--rel-
|
|
30
|
+
border: var(--rel-stroke-sm) solid var(--rel-border-default);
|
|
31
|
+
border-radius: var(--rel-border-radius-sm);
|
|
26
32
|
overflow: hidden;
|
|
27
33
|
}
|
|
28
34
|
|
|
29
35
|
table {
|
|
30
36
|
width: 100%;
|
|
31
37
|
caption-side: bottom;
|
|
32
|
-
border-collapse: collapse;
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
font-
|
|
38
|
+
border-collapse: collapse;
|
|
39
|
+
color: var(--rel-text-default);
|
|
40
|
+
font-family: var(--rel-body-md-regular-font-family);
|
|
41
|
+
font-weight: var(--rel-body-md-regular-font-weight);
|
|
42
|
+
font-size: var(--rel-body-md-regular-font-size);
|
|
43
|
+
line-height: var(--rel-body-md-regular-line-height);
|
|
44
|
+
letter-spacing: var(--rel-body-md-regular-letter-spacing);
|
|
36
45
|
}
|
|
37
46
|
`;
|
|
38
47
|
|
|
@@ -58,20 +58,20 @@ None exposed.
|
|
|
58
58
|
|
|
59
59
|
## Tokens / CSS Variables
|
|
60
60
|
|
|
61
|
-
- `--rel-
|
|
62
|
-
- `--rel-
|
|
63
|
-
- `--rel-
|
|
64
|
-
- `--rel-text-
|
|
65
|
-
- `--rel-text-
|
|
61
|
+
- `--rel-fonts-font-family`: Font family
|
|
62
|
+
- `--rel-body-sm-regular-font-size`, `--rel-body-md-regular-font-size`: Font sizes
|
|
63
|
+
- `--rel-fonts-weight-body-medium`: Font weight for label
|
|
64
|
+
- `--rel-text-label`: Label color
|
|
65
|
+
- `--rel-text-default`: Input text color
|
|
66
66
|
- `--rel-text-placeholder`: Placeholder and icon color
|
|
67
67
|
- `--rel-text-disabled`: Disabled text color
|
|
68
68
|
- `--rel-border-default`: Default border color
|
|
69
|
-
- `--rel-
|
|
70
|
-
- `--rel-border-
|
|
71
|
-
- `--rel-
|
|
72
|
-
- `--rel-
|
|
73
|
-
- `--rel-spacing
|
|
74
|
-
- `--rel-
|
|
69
|
+
- `--rel-bg-info`: Focus border color
|
|
70
|
+
- `--rel-border-danger`: Error state border color
|
|
71
|
+
- `--rel-bg-surface`: Input background (light mode)
|
|
72
|
+
- `--rel-bg-neutral-elevated-1`: Disabled background
|
|
73
|
+
- `--rel-spacing-*`: Spacing tokens
|
|
74
|
+
- `--rel-border-radius-sm`: Border radius
|
|
75
75
|
|
|
76
76
|
## Accessibility
|
|
77
77
|
|