@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
|
@@ -2,12 +2,15 @@ import { LitElement, html, css } from "lit";
|
|
|
2
2
|
import { customElement, property, state } from "lit/decorators.js";
|
|
3
3
|
import "./rel-topbar-dropdown";
|
|
4
4
|
import "./rel-topbar-dropdown-item";
|
|
5
|
-
import "../../styles/vars-v2.css";
|
|
6
5
|
import "@reliability-design/icons/rel-icon";
|
|
7
6
|
|
|
8
7
|
/**
|
|
9
8
|
* `rel-topbar-item` — A navigation item within rel-topbar.
|
|
10
9
|
*
|
|
10
|
+
* @deprecated Part of the deprecated rel-topbar family. Use the "App
|
|
11
|
+
* Topbar" recipe at /docs/recipes/app-topbar, which composes nav links and
|
|
12
|
+
* `rel-menu`/`rel-popover` dropdowns directly instead of a dedicated item component.
|
|
13
|
+
*
|
|
11
14
|
* Renders as an `<a>` when `href` is supplied, otherwise a `<button>`.
|
|
12
15
|
*
|
|
13
16
|
* Slots:
|
|
@@ -49,14 +52,15 @@ export class RelTopbarItem extends LitElement {
|
|
|
49
52
|
static styles = css`
|
|
50
53
|
/* ─── Component tokens ──────────────────────────────────────────── */
|
|
51
54
|
:host {
|
|
52
|
-
|
|
53
|
-
--_item-
|
|
54
|
-
--_item-active-
|
|
55
|
-
--_item-
|
|
55
|
+
color: var(--rel-text-default);
|
|
56
|
+
--_item-color: var(--rel-topbar-item-color, var(--rel-text-default));
|
|
57
|
+
--_item-active-color: var(--rel-topbar-item-active-color, var(--rel-text-success));
|
|
58
|
+
--_item-active-indicator: var(--rel-topbar-item-active-indicator, var(--rel-bg-brand));
|
|
59
|
+
--_item-hover-bg: var(--rel-topbar-item-hover-bg, var(--rel-bg-surface-elevated));
|
|
56
60
|
|
|
57
61
|
display: inline-block;
|
|
58
62
|
position: relative;
|
|
59
|
-
font-family: var(--rel-
|
|
63
|
+
font-family: var(--rel-fonts-font-family, Poppins, sans-serif);
|
|
60
64
|
}
|
|
61
65
|
|
|
62
66
|
:host([hidden]) {
|
|
@@ -67,30 +71,31 @@ export class RelTopbarItem extends LitElement {
|
|
|
67
71
|
.trigger {
|
|
68
72
|
display: inline-flex;
|
|
69
73
|
align-items: center;
|
|
70
|
-
gap: var(--rel-spacing-
|
|
71
|
-
padding: var(--rel-spacing-
|
|
74
|
+
gap: var(--rel-spacing-2xs, 4px);
|
|
75
|
+
padding: var(--rel-spacing-xs, 8px) var(--rel-spacing-sm, 12px);
|
|
72
76
|
border: none;
|
|
73
77
|
background: transparent;
|
|
74
|
-
border-radius: var(--rel-
|
|
78
|
+
border-radius: var(--rel-border-radius-sm, 8px);
|
|
75
79
|
cursor: pointer;
|
|
76
|
-
color: var(--_item-color);
|
|
77
|
-
font-family: inherit;
|
|
78
|
-
font-size: var(--rel-fontSizes-md, 14px);
|
|
79
|
-
font-weight: var(--rel-fontWeights-medium, 500);
|
|
80
|
-
line-height: var(--rel-lineHeights-md, 20px);
|
|
80
|
+
color: var(--_item-color);
|
|
81
81
|
text-decoration: none;
|
|
82
82
|
white-space: nowrap;
|
|
83
83
|
position: relative;
|
|
84
84
|
transition: background 0.15s ease, color 0.15s ease;
|
|
85
|
-
box-sizing: border-box;
|
|
85
|
+
box-sizing: border-box;
|
|
86
|
+
font-family: var(--rel-body-md-medium-font-family);
|
|
87
|
+
font-weight: var(--rel-body-md-medium-font-weight);
|
|
88
|
+
font-size: var(--rel-body-md-medium-font-size);
|
|
89
|
+
line-height: var(--rel-body-md-medium-line-height);
|
|
90
|
+
letter-spacing: var(--rel-body-md-medium-letter-spacing);
|
|
86
91
|
}
|
|
87
92
|
|
|
88
93
|
.trigger::after {
|
|
89
94
|
content: "";
|
|
90
95
|
position: absolute;
|
|
91
96
|
bottom: -2px;
|
|
92
|
-
left: var(--rel-spacing-
|
|
93
|
-
right: var(--rel-spacing-
|
|
97
|
+
left: var(--rel-spacing-sm, 12px);
|
|
98
|
+
right: var(--rel-spacing-sm, 12px);
|
|
94
99
|
height: 2px;
|
|
95
100
|
border-radius: 1px;
|
|
96
101
|
background: transparent;
|
|
@@ -100,7 +105,7 @@ export class RelTopbarItem extends LitElement {
|
|
|
100
105
|
/* Active state */
|
|
101
106
|
:host([active]) .trigger {
|
|
102
107
|
color: var(--_item-active-color);
|
|
103
|
-
font-weight: var(--rel-
|
|
108
|
+
font-weight: var(--rel-fonts-weight-body-semibold, 600);
|
|
104
109
|
}
|
|
105
110
|
|
|
106
111
|
:host([active]) .trigger::after {
|
|
@@ -159,11 +164,11 @@ export class RelTopbarItem extends LitElement {
|
|
|
159
164
|
top: calc(100% + 6px);
|
|
160
165
|
left: 0;
|
|
161
166
|
min-width: 200px;
|
|
162
|
-
background: var(--rel-
|
|
163
|
-
border: var(--rel-
|
|
164
|
-
border-radius: var(--rel-
|
|
167
|
+
background: var(--rel-bg-surface);
|
|
168
|
+
border: var(--rel-stroke-sm, 1px) solid var(--rel-border-default);
|
|
169
|
+
border-radius: var(--rel-border-radius-sm, 8px);
|
|
165
170
|
box-shadow: var(--rel-shadows-shadow-300);
|
|
166
|
-
padding: var(--rel-spacing-
|
|
171
|
+
padding: var(--rel-spacing-2xs, 4px);
|
|
167
172
|
z-index: 200;
|
|
168
173
|
display: none;
|
|
169
174
|
}
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { LitElement, html, css } from "lit";
|
|
2
2
|
import { customElement } from "lit/decorators.js";
|
|
3
|
-
import "../../styles/vars-v2.css";
|
|
4
3
|
|
|
4
|
+
/**
|
|
5
|
+
* @deprecated Part of the deprecated rel-topbar family. Use `rel-drawer`
|
|
6
|
+
* for the mobile nav panel in the "App Topbar" recipe at /docs/recipes/app-topbar.
|
|
7
|
+
*/
|
|
5
8
|
@customElement("rel-topbar-mobile-panel")
|
|
6
9
|
export class RelTopbarMobilePanel extends LitElement {
|
|
7
10
|
static styles = css`
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { LitElement, html, css } from "lit";
|
|
2
2
|
import { customElement, property } from "lit/decorators.js";
|
|
3
|
-
import "../../styles/vars-v2.css";
|
|
4
3
|
import "../rel-avatar/rel-avatar.js";
|
|
5
4
|
|
|
6
5
|
export type TopbarProfileType = "avatar" | "carrier";
|
|
@@ -9,6 +8,9 @@ export type TopbarRewardTier = "gold" | "silver" | "platinum" | "bronze" | "regu
|
|
|
9
8
|
/**
|
|
10
9
|
* `rel-topbar-profile` — Profile / user tile for the topbar right region.
|
|
11
10
|
*
|
|
11
|
+
* @deprecated Part of the deprecated rel-topbar family. Compose `rel-avatar`
|
|
12
|
+
* directly inside the "App Topbar" recipe at /docs/recipes/app-topbar.
|
|
13
|
+
*
|
|
12
14
|
* type="avatar" Customer avatar with initials circle + optional name/subtitle.
|
|
13
15
|
* type="carrier" Carrier reward tile with reward-tier badge + name/subtitle.
|
|
14
16
|
*/
|
|
@@ -35,28 +37,29 @@ export class RelTopbarProfile extends LitElement {
|
|
|
35
37
|
static styles = css`
|
|
36
38
|
/* ─── Component tokens (reward tier palette) ────────────────────── */
|
|
37
39
|
:host {
|
|
38
|
-
|
|
40
|
+
color: var(--rel-text-default);
|
|
41
|
+
--_profile-radius: var(--rel-border-radius-full-rounded, 1000px);
|
|
39
42
|
--_avatar-size: 36px;
|
|
40
43
|
--_avatar-size-sm: 28px;
|
|
41
|
-
--_avatar-bg: var(--rel-
|
|
42
|
-
--_avatar-color: var(--rel-
|
|
44
|
+
--_avatar-bg: var(--rel-bg-brand);
|
|
45
|
+
--_avatar-color: var(--rel-text-default);
|
|
43
46
|
|
|
44
47
|
/* Reward tier colours (reference existing token palette) */
|
|
45
|
-
--rel-topbar-reward-gold: var(--rel-
|
|
46
|
-
--rel-topbar-reward-gold-bg: var(--rel-
|
|
47
|
-
--rel-topbar-reward-silver: var(--rel-
|
|
48
|
-
--rel-topbar-reward-silver-bg: var(--rel-
|
|
49
|
-
--rel-topbar-reward-platinum: var(--rel-
|
|
50
|
-
--rel-topbar-reward-platinum-bg: var(--rel-
|
|
51
|
-
--rel-topbar-reward-bronze: var(--rel-
|
|
52
|
-
--rel-topbar-reward-bronze-bg: var(--rel-
|
|
53
|
-
--rel-topbar-reward-regular: var(--rel-
|
|
54
|
-
--rel-topbar-reward-regular-bg: var(--rel-
|
|
48
|
+
--rel-topbar-reward-gold: var(--rel-bg-warning);
|
|
49
|
+
--rel-topbar-reward-gold-bg: var(--rel-bg-warning-light);
|
|
50
|
+
--rel-topbar-reward-silver: var(--rel-text-caption);
|
|
51
|
+
--rel-topbar-reward-silver-bg: var(--rel-bg-neutral-elevated-1);
|
|
52
|
+
--rel-topbar-reward-platinum: var(--rel-text-info);
|
|
53
|
+
--rel-topbar-reward-platinum-bg: var(--rel-bg-info-light);
|
|
54
|
+
--rel-topbar-reward-bronze: var(--rel-text-warning);
|
|
55
|
+
--rel-topbar-reward-bronze-bg: var(--rel-bg-warning-light);
|
|
56
|
+
--rel-topbar-reward-regular: var(--rel-border-default);
|
|
57
|
+
--rel-topbar-reward-regular-bg: var(--rel-bg-surface-elevated);
|
|
55
58
|
|
|
56
59
|
display: inline-flex;
|
|
57
60
|
align-items: center;
|
|
58
|
-
gap: var(--rel-spacing-
|
|
59
|
-
font-family: var(--rel-
|
|
61
|
+
gap: var(--rel-spacing-xs, 8px);
|
|
62
|
+
font-family: var(--rel-fonts-font-family, Poppins, sans-serif);
|
|
60
63
|
cursor: pointer;
|
|
61
64
|
}
|
|
62
65
|
|
|
@@ -72,38 +75,56 @@ export class RelTopbarProfile extends LitElement {
|
|
|
72
75
|
display: none;
|
|
73
76
|
}
|
|
74
77
|
|
|
75
|
-
.name {
|
|
76
|
-
|
|
77
|
-
font-weight: var(--rel-fontWeights-medium, 500);
|
|
78
|
-
color: var(--rel-color-text-primary);
|
|
79
|
-
line-height: var(--rel-lineHeights-md, 20px);
|
|
78
|
+
.name {
|
|
79
|
+
color: var(--rel-text-default);
|
|
80
80
|
white-space: nowrap;
|
|
81
81
|
overflow: hidden;
|
|
82
|
-
text-overflow: ellipsis;
|
|
82
|
+
text-overflow: ellipsis;
|
|
83
|
+
|
|
84
|
+
font-family: var(--rel-body-md-medium-font-family);
|
|
85
|
+
|
|
86
|
+
font-weight: var(--rel-body-md-medium-font-weight);
|
|
87
|
+
|
|
88
|
+
font-size: var(--rel-body-md-medium-font-size);
|
|
89
|
+
|
|
90
|
+
line-height: var(--rel-body-md-medium-line-height);
|
|
91
|
+
|
|
92
|
+
letter-spacing: var(--rel-body-md-medium-letter-spacing);
|
|
93
|
+
|
|
83
94
|
}
|
|
84
95
|
|
|
85
|
-
.subtitle {
|
|
86
|
-
|
|
87
|
-
font-weight: var(--rel-fontWeights-regular, 400);
|
|
88
|
-
color: var(--rel-color-text-placeholder);
|
|
89
|
-
line-height: var(--rel-lineHeights-sm, 18px);
|
|
96
|
+
.subtitle {
|
|
97
|
+
color: var(--rel-text-placeholder);
|
|
90
98
|
white-space: nowrap;
|
|
91
99
|
overflow: hidden;
|
|
92
|
-
text-overflow: ellipsis;
|
|
100
|
+
text-overflow: ellipsis;
|
|
101
|
+
|
|
102
|
+
font-family: var(--rel-body-sm-regular-font-family);
|
|
103
|
+
|
|
104
|
+
font-weight: var(--rel-body-sm-regular-font-weight);
|
|
105
|
+
|
|
106
|
+
font-size: var(--rel-body-sm-regular-font-size);
|
|
107
|
+
|
|
108
|
+
line-height: var(--rel-body-sm-regular-line-height);
|
|
109
|
+
|
|
110
|
+
letter-spacing: var(--rel-body-sm-regular-letter-spacing);
|
|
111
|
+
|
|
93
112
|
}
|
|
94
113
|
|
|
95
114
|
/* ─── Carrier reward badge ──────────────────────────────────────── */
|
|
96
115
|
.reward-badge {
|
|
97
116
|
display: inline-flex;
|
|
98
117
|
align-items: center;
|
|
99
|
-
gap: var(--rel-spacing-
|
|
100
|
-
padding: 2px var(--rel-spacing-
|
|
101
|
-
border-radius: var(--rel-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
118
|
+
gap: var(--rel-spacing-3xs, 2px);
|
|
119
|
+
padding: 2px var(--rel-spacing-2xs, 4px);
|
|
120
|
+
border-radius: var(--rel-border-radius-xs, 2px);
|
|
121
|
+
text-transform: uppercase;
|
|
122
|
+
flex-shrink: 0;
|
|
123
|
+
font-family: var(--rel-body-xs-semibold-font-family);
|
|
124
|
+
font-weight: var(--rel-body-xs-semibold-font-weight);
|
|
125
|
+
font-size: var(--rel-body-xs-semibold-font-size);
|
|
126
|
+
line-height: var(--rel-body-xs-semibold-line-height);
|
|
127
|
+
letter-spacing: var(--rel-body-xs-semibold-letter-spacing);
|
|
107
128
|
}
|
|
108
129
|
|
|
109
130
|
/* Gold */
|
|
@@ -115,7 +136,7 @@ export class RelTopbarProfile extends LitElement {
|
|
|
115
136
|
/* Silver */
|
|
116
137
|
:host([reward="silver"]) .reward-badge {
|
|
117
138
|
background: var(--rel-topbar-reward-silver-bg);
|
|
118
|
-
color: var(--rel-
|
|
139
|
+
color: var(--rel-text-default);
|
|
119
140
|
}
|
|
120
141
|
|
|
121
142
|
/* Platinum */
|
|
@@ -133,22 +154,22 @@ export class RelTopbarProfile extends LitElement {
|
|
|
133
154
|
/* Regular */
|
|
134
155
|
:host([reward="regular"]) .reward-badge {
|
|
135
156
|
background: var(--rel-topbar-reward-regular-bg);
|
|
136
|
-
color: var(--rel-
|
|
157
|
+
color: var(--rel-text-default);
|
|
137
158
|
}
|
|
138
159
|
|
|
139
160
|
/* ─── Carrier tile shell ────────────────────────────────────────── */
|
|
140
161
|
.carrier-tile {
|
|
141
162
|
display: flex;
|
|
142
163
|
align-items: center;
|
|
143
|
-
gap: var(--rel-spacing-
|
|
144
|
-
padding: var(--rel-spacing-
|
|
145
|
-
border-radius: var(--rel-
|
|
146
|
-
background: var(--rel-surface-
|
|
147
|
-
border: var(--rel-
|
|
164
|
+
gap: var(--rel-spacing-xs, 8px);
|
|
165
|
+
padding: var(--rel-spacing-2xs, 4px) var(--rel-spacing-xs, 8px);
|
|
166
|
+
border-radius: var(--rel-border-radius-sm, 8px);
|
|
167
|
+
background: var(--rel-bg-surface-elevated);
|
|
168
|
+
border: var(--rel-stroke-sm, 1px) solid var(--rel-border-default);
|
|
148
169
|
}
|
|
149
170
|
|
|
150
171
|
:host([compact]) .carrier-tile {
|
|
151
|
-
padding: var(--rel-spacing-
|
|
172
|
+
padding: var(--rel-spacing-2xs, 4px);
|
|
152
173
|
}
|
|
153
174
|
|
|
154
175
|
.carrier-meta {
|
|
@@ -191,13 +212,13 @@ export class RelTopbarProfile extends LitElement {
|
|
|
191
212
|
|
|
192
213
|
private _avatarBg(): string {
|
|
193
214
|
const map: Record<string, string> = {
|
|
194
|
-
gold: "var(--rel-
|
|
195
|
-
platinum: "var(--rel-
|
|
196
|
-
silver: "var(--rel-
|
|
197
|
-
bronze: "var(--rel-
|
|
198
|
-
regular: "var(--rel-
|
|
215
|
+
gold: "var(--rel-bg-warning)",
|
|
216
|
+
platinum: "var(--rel-text-info)",
|
|
217
|
+
silver: "var(--rel-text-caption)",
|
|
218
|
+
bronze: "var(--rel-text-warning)",
|
|
219
|
+
regular: "var(--rel-bg-brand)",
|
|
199
220
|
};
|
|
200
|
-
return map[this.reward] ?? "var(--rel-
|
|
221
|
+
return map[this.reward] ?? "var(--rel-bg-brand)";
|
|
201
222
|
}
|
|
202
223
|
|
|
203
224
|
private _renderCarrier() {
|
|
@@ -1,14 +1,17 @@
|
|
|
1
1
|
import { LitElement, html, css } from "lit";
|
|
2
2
|
import { customElement } from "lit/decorators.js";
|
|
3
|
-
import "../../styles/vars-v2.css";
|
|
4
3
|
|
|
4
|
+
/**
|
|
5
|
+
* @deprecated Part of the deprecated rel-topbar family. Use plain
|
|
6
|
+
* `rel-button` (icon variant) elements inside the "App Topbar" recipe at /docs/recipes/app-topbar.
|
|
7
|
+
*/
|
|
5
8
|
@customElement("rel-topbar-utilities")
|
|
6
9
|
export class RelTopbarUtilities extends LitElement {
|
|
7
10
|
static styles = css`
|
|
8
11
|
.utilities {
|
|
9
12
|
display: inline-flex;
|
|
10
13
|
align-items: center;
|
|
11
|
-
gap: var(--rel-spacing-
|
|
14
|
+
gap: var(--rel-spacing-xs, 8px);
|
|
12
15
|
}
|
|
13
16
|
`;
|
|
14
17
|
|
|
@@ -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 "@reliability-design/icons/rel-icon";
|
|
5
4
|
import "./rel-topbar-brand";
|
|
6
5
|
import "./rel-topbar-actions";
|
|
@@ -15,6 +14,12 @@ export type TopbarForceLayout = "auto" | "desktop" | "tablet" | "mobile";
|
|
|
15
14
|
/**
|
|
16
15
|
* `rel-topbar` — Application-level top navigation / header shell.
|
|
17
16
|
*
|
|
17
|
+
* @deprecated This component's fixed slot structure, hardcoded breakpoint,
|
|
18
|
+
* and built-in overflow logic are too rigid for most real layouts. Use the
|
|
19
|
+
* "App Topbar" recipe at /docs/recipes/app-topbar instead, composed from
|
|
20
|
+
* rel-menu/rel-popover, rel-drawer, and rel-button. Still supported, but
|
|
21
|
+
* will be removed in a future major version.
|
|
22
|
+
*
|
|
18
23
|
* Slots:
|
|
19
24
|
* brand — Logo / wordmark region (left)
|
|
20
25
|
* (default) — Primary nav items (rel-topbar-item elements)
|
|
@@ -62,22 +67,23 @@ export class RelTopbar extends LitElement {
|
|
|
62
67
|
static styles = css`
|
|
63
68
|
/* ─── Component tokens ─────────────────────────────────────────── */
|
|
64
69
|
:host {
|
|
70
|
+
color: var(--rel-text-default);
|
|
65
71
|
--rel-topbar-height: 64px;
|
|
66
72
|
--rel-topbar-height-compact: 48px;
|
|
67
|
-
--rel-topbar-bg: var(--rel-
|
|
68
|
-
--rel-topbar-border-color: var(--rel-border-default
|
|
69
|
-
--rel-topbar-item-color: var(--rel-
|
|
70
|
-
--rel-topbar-item-active-color: var(--rel-
|
|
71
|
-
--rel-topbar-item-active-indicator: var(--rel-
|
|
72
|
-
--rel-topbar-item-hover-bg: var(--rel-
|
|
73
|
-
--rel-topbar-divider-color: var(--rel-border-
|
|
74
|
-
--rel-topbar-carrier-action-bg: var(--rel-
|
|
75
|
-
--rel-topbar-carrier-action-color: var(--rel-
|
|
73
|
+
--rel-topbar-bg: var(--rel-bg-surface);
|
|
74
|
+
--rel-topbar-border-color: var(--rel-border-default);
|
|
75
|
+
--rel-topbar-item-color: var(--rel-text-default);
|
|
76
|
+
--rel-topbar-item-active-color: var(--rel-text-success);
|
|
77
|
+
--rel-topbar-item-active-indicator: var(--rel-bg-brand);
|
|
78
|
+
--rel-topbar-item-hover-bg: var(--rel-bg-surface-elevated);
|
|
79
|
+
--rel-topbar-divider-color: var(--rel-border-default);
|
|
80
|
+
--rel-topbar-carrier-action-bg: var(--rel-text-default);
|
|
81
|
+
--rel-topbar-carrier-action-color: var(--rel-bg-surface);
|
|
76
82
|
--rel-topbar-z: 100;
|
|
77
83
|
|
|
78
84
|
display: block;
|
|
79
85
|
width: 100%;
|
|
80
|
-
font-family: var(--rel-
|
|
86
|
+
font-family: var(--rel-fonts-font-family, Poppins, sans-serif);
|
|
81
87
|
}
|
|
82
88
|
|
|
83
89
|
/* ─── Sticky host ───────────────────────────────────────────────── */
|
|
@@ -93,10 +99,10 @@ export class RelTopbar extends LitElement {
|
|
|
93
99
|
align-items: center;
|
|
94
100
|
height: var(--rel-topbar-height);
|
|
95
101
|
background: var(--rel-topbar-bg);
|
|
96
|
-
border-bottom: var(--rel-
|
|
97
|
-
padding: 0 var(--rel-spacing-
|
|
102
|
+
border-bottom: var(--rel-stroke-sm, 1px) solid var(--rel-topbar-border-color);
|
|
103
|
+
padding: 0 var(--rel-spacing-xl, 24px);
|
|
98
104
|
box-sizing: border-box;
|
|
99
|
-
gap: var(--rel-spacing-
|
|
105
|
+
gap: var(--rel-spacing-md, 16px);
|
|
100
106
|
}
|
|
101
107
|
|
|
102
108
|
:host([compact]) .topbar {
|
|
@@ -115,7 +121,7 @@ export class RelTopbar extends LitElement {
|
|
|
115
121
|
display: flex;
|
|
116
122
|
align-items: center;
|
|
117
123
|
flex: 1 1 0;
|
|
118
|
-
gap: var(--rel-spacing-
|
|
124
|
+
gap: var(--rel-spacing-2xs, 4px);
|
|
119
125
|
min-width: 0;
|
|
120
126
|
}
|
|
121
127
|
|
|
@@ -125,7 +131,7 @@ export class RelTopbar extends LitElement {
|
|
|
125
131
|
align-items: center;
|
|
126
132
|
flex-shrink: 0;
|
|
127
133
|
margin-left: auto;
|
|
128
|
-
gap: var(--rel-spacing-
|
|
134
|
+
gap: var(--rel-spacing-xs, 8px);
|
|
129
135
|
}
|
|
130
136
|
|
|
131
137
|
.actions-region,
|
|
@@ -136,7 +142,7 @@ export class RelTopbar extends LitElement {
|
|
|
136
142
|
|
|
137
143
|
/* Vertical divider between util/profile when both are populated */
|
|
138
144
|
.divider {
|
|
139
|
-
width: var(--rel-
|
|
145
|
+
width: var(--rel-stroke-sm, 1px);
|
|
140
146
|
height: 24px;
|
|
141
147
|
background: var(--rel-topbar-divider-color);
|
|
142
148
|
flex-shrink: 0;
|
|
@@ -146,11 +152,11 @@ export class RelTopbar extends LitElement {
|
|
|
146
152
|
:host([variant="carrier"]) .actions-region ::slotted(*) {
|
|
147
153
|
display: flex;
|
|
148
154
|
align-items: center;
|
|
149
|
-
gap: var(--rel-spacing-
|
|
155
|
+
gap: var(--rel-spacing-xs, 8px);
|
|
150
156
|
background: var(--rel-topbar-carrier-action-bg);
|
|
151
157
|
color: var(--rel-topbar-carrier-action-color);
|
|
152
|
-
padding: var(--rel-spacing-
|
|
153
|
-
border-radius: var(--rel-
|
|
158
|
+
padding: var(--rel-spacing-2xs, 4px) var(--rel-spacing-sm, 12px);
|
|
159
|
+
border-radius: var(--rel-border-radius-full-rounded, 1000px);
|
|
154
160
|
}
|
|
155
161
|
|
|
156
162
|
/* ─── Mobile toggle button ──────────────────────────────────────── */
|
|
@@ -163,7 +169,7 @@ export class RelTopbar extends LitElement {
|
|
|
163
169
|
padding: 0;
|
|
164
170
|
border: none;
|
|
165
171
|
background: transparent;
|
|
166
|
-
border-radius: var(--rel-
|
|
172
|
+
border-radius: var(--rel-border-radius-sm, 8px);
|
|
167
173
|
cursor: pointer;
|
|
168
174
|
color: var(--rel-topbar-item-color);
|
|
169
175
|
flex-shrink: 0;
|
|
@@ -186,7 +192,7 @@ export class RelTopbar extends LitElement {
|
|
|
186
192
|
.mobile-panel {
|
|
187
193
|
display: none;
|
|
188
194
|
background: var(--rel-topbar-bg);
|
|
189
|
-
border-bottom: var(--rel-
|
|
195
|
+
border-bottom: var(--rel-stroke-sm, 1px) solid var(--rel-topbar-border-color);
|
|
190
196
|
}
|
|
191
197
|
|
|
192
198
|
.mobile-panel.open {
|
|
@@ -196,18 +202,20 @@ export class RelTopbar extends LitElement {
|
|
|
196
202
|
.mobile-overflow-nav {
|
|
197
203
|
display: flex;
|
|
198
204
|
flex-direction: column;
|
|
199
|
-
padding: var(--rel-spacing-
|
|
205
|
+
padding: var(--rel-spacing-xs, 8px) 0;
|
|
200
206
|
border-top: 1px solid var(--rel-topbar-border-color);
|
|
201
207
|
}
|
|
202
208
|
|
|
203
209
|
.mobile-overflow-item {
|
|
204
210
|
display: block;
|
|
205
|
-
padding: var(--rel-spacing-
|
|
206
|
-
color: var(--rel-topbar-item-color);
|
|
207
|
-
|
|
208
|
-
font-
|
|
209
|
-
font-weight: var(--rel-
|
|
210
|
-
|
|
211
|
+
padding: var(--rel-spacing-xs, 8px) var(--rel-spacing-xl, 24px);
|
|
212
|
+
color: var(--rel-topbar-item-color);
|
|
213
|
+
text-decoration: none;
|
|
214
|
+
font-family: var(--rel-body-md-medium-font-family);
|
|
215
|
+
font-weight: var(--rel-body-md-medium-font-weight);
|
|
216
|
+
font-size: var(--rel-body-md-medium-font-size);
|
|
217
|
+
line-height: var(--rel-body-md-medium-line-height);
|
|
218
|
+
letter-spacing: var(--rel-body-md-medium-letter-spacing);
|
|
211
219
|
}
|
|
212
220
|
|
|
213
221
|
.mobile-overflow-item:hover {
|