@reliability-design/web 1.1.1 → 1.2.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.
Files changed (64) hide show
  1. package/dist/components/rel-accordion/rel-accordion.ts +17 -32
  2. package/dist/components/rel-alert/rel-alert.ts +34 -34
  3. package/dist/components/rel-avatar/rel-avatar.ts +5 -3
  4. package/dist/components/rel-badge/rel-badge.ts +2 -1
  5. package/dist/components/rel-breadcrumb/rel-breadcrumb.ts +6 -6
  6. package/dist/components/rel-button/rel-button.ts +67 -21
  7. package/dist/components/rel-calendar/rel-calendar.ts +15 -8
  8. package/dist/components/rel-card/rel-card.ts +9 -17
  9. package/dist/components/rel-cardmedia/rel-cardmedia.ts +20 -23
  10. package/dist/components/rel-carousel/rel-carousel.ts +596 -468
  11. package/dist/components/rel-checkbox/rel-checkbox.ts +68 -16
  12. package/dist/components/rel-chip/rel-chip.ts +291 -244
  13. package/dist/components/rel-container/rel-container.ts +2 -2
  14. package/dist/components/rel-date-picker/rel-date-picker.ts +23 -19
  15. package/dist/components/rel-divider/rel-divider.ts +3 -3
  16. package/dist/components/rel-drawer/rel-drawer-footer.ts +0 -2
  17. package/dist/components/rel-drawer/rel-drawer.ts +41 -88
  18. package/dist/components/rel-kbd/rel-kbd.ts +94 -118
  19. package/dist/components/rel-layout/rel-layout.ts +49 -58
  20. package/dist/components/rel-menu/rel-menu.ts +359 -359
  21. package/dist/components/rel-menubar/rel-menubar-menu.css +3 -0
  22. package/dist/components/rel-menubar/rel-menubar-menu.ts +2 -1
  23. package/dist/components/rel-menubar/rel-menubar.ts +602 -605
  24. package/dist/components/rel-otp/rel-otp.ts +22 -25
  25. package/dist/components/rel-pagination/rel-pagination.ts +101 -57
  26. package/dist/components/rel-popover/rel-popover-content.ts +6 -5
  27. package/dist/components/rel-popover/rel-popover.ts +26 -7
  28. package/dist/components/rel-progress/rel-progress.ts +10 -9
  29. package/dist/components/rel-radio/rel-radio.ts +228 -172
  30. package/dist/components/rel-range-picker/rel-range-picker.css +349 -0
  31. package/dist/components/rel-range-picker/rel-range-picker.ts +1079 -0
  32. package/dist/components/rel-resizable/rel-resizable-handle.ts +8 -7
  33. package/dist/components/rel-segmented-button/rel-segmented-button.ts +41 -20
  34. package/dist/components/rel-select/rel-select.ts +103 -32
  35. package/dist/components/rel-sheet/rel-sheet.ts +362 -684
  36. package/dist/components/rel-slider/rel-slider.ts +49 -27
  37. package/dist/components/rel-snackbar/rel-snackbar.ts +28 -28
  38. package/dist/components/rel-stepper/rel-stepper.ts +11 -10
  39. package/dist/components/rel-switch/rel-switch.ts +7 -6
  40. package/dist/components/rel-tab/rel-tab.ts +15 -29
  41. package/dist/components/rel-textfield/rel-textfield.ts +144 -35
  42. package/dist/components/rel-toast/rel-toast.ts +25 -12
  43. package/dist/components/rel-tooltip/rel-tooltip.ts +123 -123
  44. package/dist/components/rel-topbar/rel-topbar-actions.ts +1 -0
  45. package/dist/components/rel-topbar/rel-topbar-brand.ts +1 -0
  46. package/dist/components/rel-topbar/rel-topbar-dropdown-item.ts +32 -2
  47. package/dist/components/rel-topbar/rel-topbar-dropdown.ts +1 -1
  48. package/dist/components/rel-topbar/rel-topbar-item.ts +15 -10
  49. package/dist/components/rel-topbar/rel-topbar-mobile-panel.ts +1 -0
  50. package/dist/components/rel-topbar/rel-topbar-profile.ts +30 -56
  51. package/dist/components/rel-topbar/rel-topbar-utilities.ts +1 -0
  52. package/dist/components/rel-topbar/rel-topbar.ts +137 -28
  53. package/dist/index.d.mts +153 -178
  54. package/dist/index.d.ts +153 -178
  55. package/dist/index.js +4711 -3875
  56. package/dist/index.js.map +1 -1
  57. package/dist/index.mjs +4047 -3202
  58. package/dist/index.mjs.map +1 -1
  59. package/dist/rel-menubar-menu-BEEQDAXW.css +3 -0
  60. package/dist/styles/vars-v2.css +525 -0
  61. package/dist/styles/vars.css +346 -346
  62. package/dist/{vars-TBB4BMSD.css → vars-I2PC74XD.css} +346 -346
  63. package/dist/vars-v2-VMGWTFJZ.css +525 -0
  64. package/package.json +2 -1
package/dist/index.d.mts CHANGED
@@ -32,6 +32,7 @@ declare class RelAvatar extends LitElement {
32
32
  src: string;
33
33
  text: string;
34
34
  alt: string;
35
+ bg: string;
35
36
  static styles: lit.CSSResult;
36
37
  render(): lit_html.TemplateResult<1>;
37
38
  }
@@ -59,7 +60,7 @@ declare class RelBreadcrumbs extends LitElement {
59
60
 
60
61
  declare class RelButton extends LitElement {
61
62
  variant: "default" | "primary" | "secondary" | "text" | "link" | "icon";
62
- tone: "default" | "critical" | "success";
63
+ tone: "default" | "primary" | "secondary" | "critical" | "success";
63
64
  size: "small" | "medium" | "large";
64
65
  border: "corner-radius" | "small-corner-radius" | "no-corner-radius";
65
66
  disabled: boolean;
@@ -126,13 +127,19 @@ declare class RelCarousel extends LitElement {
126
127
  private autoplayTimer?;
127
128
  private animationId?;
128
129
  private prefersReducedMotion;
130
+ private clonesBefore;
131
+ private _silentJumping;
132
+ private _ro?;
129
133
  static styles: lit.CSSResult;
130
134
  connectedCallback(): void;
135
+ firstUpdated(): void;
131
136
  disconnectedCallback(): void;
132
137
  private handleSlotChange;
138
+ private unit;
133
139
  private updateTransform;
134
140
  private goToPrevious;
135
141
  private goToNext;
142
+ private silentJump;
136
143
  private goToSlide;
137
144
  private emitChange;
138
145
  private startAutoplay;
@@ -229,14 +236,65 @@ declare class RelDatePicker extends LitElement {
229
236
  render(): lit_html.TemplateResult<1>;
230
237
  }
231
238
 
239
+ declare class RelRangePicker extends LitElement {
240
+ from: string;
241
+ to: string;
242
+ locale: string;
243
+ weekStart: "mon" | "sun";
244
+ minDate: string;
245
+ maxDate: string;
246
+ disabled: boolean;
247
+ open: boolean;
248
+ mode: "popover" | "popup";
249
+ private draftFrom;
250
+ private draftTo;
251
+ private draftActivePreset;
252
+ private viewYear;
253
+ private viewMonth;
254
+ private isSelectingRange;
255
+ private hoverDate;
256
+ private triggerButton?;
257
+ static styles: lit.CSSResult;
258
+ connectedCallback(): void;
259
+ disconnectedCallback(): void;
260
+ private handleClickOutside;
261
+ private handleGlobalKeydown;
262
+ private toggleOpen;
263
+ private openPopover;
264
+ private cancelPopover;
265
+ private applySelection;
266
+ private resetDraft;
267
+ private getTriggerLabel;
268
+ private parseISODate;
269
+ private formatISODate;
270
+ private formatDisplayDate;
271
+ private isSameDay;
272
+ private isDateDisabled;
273
+ private getQuickSelects;
274
+ private selectQuickSelect;
275
+ private previousMonth;
276
+ private nextMonth;
277
+ private getMonthName;
278
+ private getWeekdayLabels;
279
+ private getCalendarDays;
280
+ private handleDayClick;
281
+ private handleDayHover;
282
+ render(): lit_html.TemplateResult<1>;
283
+ }
284
+ declare global {
285
+ interface HTMLElementTagNameMap {
286
+ "rel-range-picker": RelRangePicker;
287
+ }
288
+ }
289
+
232
290
  declare class RelChip extends LitElement {
233
291
  label: string;
234
- tone: "default" | "blue" | "yellow" | "red" | "green";
292
+ tone: "default" | "blue" | "orange" | "red" | "green";
235
293
  leadingIcon?: string;
236
294
  trailingIcon?: string;
295
+ /** Initials text for the avatar (e.g. "JD"). Mutually exclusive with leadingIcon. */
237
296
  avatar?: string;
238
297
  removable: boolean;
239
- outline: boolean;
240
298
  /** IMPORTANT: reflected so CSS + Angular can see it */
241
299
  removed: boolean;
242
300
  static styles: lit.CSSResult;
@@ -273,7 +331,7 @@ declare global {
273
331
  }
274
332
  }
275
333
 
276
- type DrawerSide = "bottom" | "left" | "right" | "top";
334
+ type DrawerSide = "bottom" | "left" | "right";
277
335
  type DrawerCloseReason = "backdrop" | "escape" | "drag" | "programmatic";
278
336
  declare class RelDrawer extends LitElement {
279
337
  open: boolean;
@@ -287,7 +345,6 @@ declare class RelDrawer extends LitElement {
287
345
  snapThreshold: number;
288
346
  maxHeight: string;
289
347
  width: string;
290
- disabled: boolean;
291
348
  title: string;
292
349
  description: string;
293
350
  private isDragging;
@@ -307,7 +364,6 @@ declare class RelDrawer extends LitElement {
307
364
  private handleClose;
308
365
  private lockScroll;
309
366
  private unlockScroll;
310
- private focusPanel;
311
367
  private getFocusableElements;
312
368
  private handleKeydown;
313
369
  private handleOverlayClick;
@@ -318,7 +374,6 @@ declare class RelDrawer extends LitElement {
318
374
  private handlePointerUp;
319
375
  private getPanelStyle;
320
376
  private getOverlayStyle;
321
- private hasSlotContent;
322
377
  render(): lit_html.TemplateResult<1>;
323
378
  }
324
379
  declare global {
@@ -333,7 +388,6 @@ declare class RelKbd extends LitElement {
333
388
  pill: boolean;
334
389
  inset: boolean;
335
390
  static styles: lit.CSSResult;
336
- private get classes();
337
391
  render(): lit_html.TemplateResult<1>;
338
392
  }
339
393
 
@@ -342,6 +396,7 @@ declare class RelLayout extends LitElement {
342
396
  columns: number;
343
397
  responsive: boolean;
344
398
  static styles: lit.CSSResult;
399
+ willUpdate(): void;
345
400
  render(): lit_html.TemplateResult<1>;
346
401
  }
347
402
 
@@ -359,18 +414,19 @@ declare class RelMenuItem extends LitElement {
359
414
  value: string;
360
415
  disabled: boolean;
361
416
  icon: string;
417
+ createRenderRoot(): this;
362
418
  render(): lit_html.TemplateResult<1>;
363
419
  }
364
420
  declare class RelMenu extends LitElement {
365
421
  type: MenuType;
366
422
  items: MenuItem[];
367
423
  private focusedIndex;
368
- private _menuItems;
369
- static styles: lit.CSSResult;
370
- private _onSlotChange;
371
- private get _effectiveItems();
424
+ private _items;
425
+ static readonly _css = "\n :host {\n display: inline-block;\n }\n\n .rel-menu {\n position: relative;\n display: inline-block;\n background: var(--rel-color-bg-primary);\n color: var(--rel-color-text-primary);\n border-radius: var(--rel-borders-radius-border-radius-300);\n box-shadow: var(--rel-shadows-shadow-300);\n min-width: 220px;\n font-family: var(--rel-fontFamilies-primary, sans-serif);\n font-size: var(--rel-fontSizes-sm);\n padding: var(--rel-spacing-space-3xs) 0;\n outline: none;\n overflow: hidden;\n }\n\n .rel-menu:focus-visible,\n :host(:focus-visible) .rel-menu {\n outline: 2px solid var(--rel-color-border-focus);\n outline-offset: 2px;\n }\n\n .rel-menu-item {\n position: relative;\n display: flex;\n align-items: center;\n gap: var(--rel-spacing-space-xs);\n padding: var(--rel-spacing-space-xs) var(--rel-spacing-space-sm);\n line-height: var(--rel-lineHeights-sm);\n cursor: pointer;\n transition: background 0.15s ease, color 0.15s ease;\n user-select: none;\n }\n\n .rel-menu-item:hover {\n background: var(--rel-color-bg-hover);\n }\n\n .rel-menu-item:active {\n background: var(--rel-color-bg-hover);\n }\n\n .rel-menu-item.active {\n background: var(--rel-color-bg-hover);\n font-weight: var(--rel-fontWeights-medium);\n }\n\n .rel-menu-item.disabled {\n background-color: transparent;\n color: var(--rel-color-text-disabled);\n cursor: not-allowed;\n }\n\n .rel-menu-item[data-focused=\"true\"] {\n outline: 2px solid var(--rel-color-border-focus);\n outline-offset: -2px;\n }\n\n .menu-check-row {\n display: inline-flex;\n align-items: center;\n gap: var(--rel-spacing-space-2xs);\n width: 100%;\n }\n\n .menu-checkbox {\n width: 16px;\n height: 16px;\n cursor: pointer;\n }\n\n .menu-checkbox:disabled {\n cursor: not-allowed;\n }\n\n .menu-label {\n flex: 1 1 auto;\n }\n\n .chevron {\n font-size: var(--rel-fontSizes-lg);\n opacity: 0.75;\n transform: translateY(1px);\n }\n\n .rel-submenu {\n position: absolute;\n top: calc(-1 * var(--rel-spacing-space-3xs));\n left: calc(100% + var(--rel-spacing-space-2xs));\n min-width: 200px;\n background: var(--rel-color-bg-primary);\n color: var(--rel-color-text-primary);\n border-radius: var(--rel-borders-radius-border-radius-300);\n box-shadow: var(--rel-shadows-shadow-300);\n padding: var(--rel-spacing-space-3xs) 0;\n visibility: hidden;\n pointer-events: none;\n z-index: 20;\n }\n\n .rel-submenu.visible {\n visibility: visible;\n pointer-events: auto;\n }\n\n .rel-submenu .rel-menu-item {\n padding: var(--rel-spacing-space-xs) var(--rel-spacing-space-sm);\n }\n ";
426
+ createRenderRoot(): this;
372
427
  connectedCallback(): void;
373
428
  disconnectedCallback(): void;
429
+ updated(changedProperties: Map<string, unknown>): void;
374
430
  private handleDocumentClick;
375
431
  private onItemEnter;
376
432
  private onItemLeave;
@@ -382,17 +438,46 @@ declare class RelMenu extends LitElement {
382
438
  render(): lit_html.TemplateResult<1>;
383
439
  }
384
440
 
441
+ interface RadioOption {
442
+ value: string;
443
+ label: string;
444
+ supportingText?: string;
445
+ disabled?: boolean;
446
+ }
447
+ declare class RelRadio extends LitElement {
448
+ options: RadioOption[];
449
+ name: string;
450
+ selectedValue: string | null;
451
+ disabled: boolean;
452
+ error: boolean;
453
+ errorMessage: string;
454
+ value: string;
455
+ checked: boolean;
456
+ private _onChange;
457
+ private _onTouched;
458
+ static styles: lit.CSSResult;
459
+ private onChange;
460
+ registerOnChange(fn: (value: string) => void): void;
461
+ registerOnTouched(fn: () => void): void;
462
+ writeValue(value: string): void;
463
+ private renderOption;
464
+ render(): lit_html.TemplateResult<1>;
465
+ }
466
+
385
467
  declare class RelMenubar extends LitElement {
386
468
  private menus;
387
469
  private openMenuIndex;
388
470
  private focusedTriggerIndex;
389
471
  private focusedItemIndex;
390
472
  private openSubmenuElement;
391
- private container;
392
473
  private hoverSwitchEnabled;
393
- static styles: lit.CSSResult;
474
+ private _onScroll?;
475
+ static readonly _css = "\n :host {\n display: block;\n }\n\n :host > slot {\n display: none;\n }\n\n .menubar-container {\n display: flex;\n align-items: stretch;\n background: var(--rel-color-bg-secondary);\n border: var(--rel-borders-width-stroke-100) solid var(--rel-color-border-default);\n border-radius: var(--rel-borders-radius-border-radius-200);\n overflow: hidden;\n padding: 0;\n gap: var(--rel-spacing-space-3xs);\n font-family: var(--rel-fontFamilies-primary);\n font-size: var(--rel-fontSizes-sm);\n height: 40px;\n }\n\n .menubar-trigger {\n display: flex;\n align-items: center;\n align-self: stretch;\n height: 100%;\n padding: 0 var(--rel-spacing-space-sm);\n background: transparent;\n border: none;\n cursor: pointer;\n font-family: inherit;\n font-size: inherit;\n color: var(--rel-color-text-heading);\n transition: background 0.15s ease;\n user-select: none;\n outline: none;\n }\n\n .menubar-trigger:hover,\n .menubar-trigger.active {\n background: var(--rel-color-bg-selected);\n }\n\n .menubar-trigger:focus-visible {\n outline: 2px solid var(--rel-color-border-focus);\n outline-offset: 2px;\n }\n\n .menubar-panel {\n position: fixed;\n min-width: 220px;\n background: var(--rel-color-bg-primary);\n border: var(--rel-borders-width-stroke-100) solid var(--rel-color-border-default);\n border-radius: var(--rel-borders-radius-border-radius-200);\n box-shadow: var(--rel-shadows-shadow-300);\n padding: 0;\n overflow: hidden;\n z-index: 1000;\n display: none;\n }\n\n .menubar-panel.open {\n display: block;\n }\n\n .menu-item {\n position: relative;\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--rel-spacing-space-sm);\n padding: var(--rel-spacing-space-xs) var(--rel-spacing-space-md);\n cursor: pointer;\n transition: background 0.15s ease;\n user-select: none;\n color: var(--rel-color-text-heading);\n line-height: var(--rel-lineHeights-sm);\n }\n\n .menu-item:hover,\n .menu-item.focused {\n background: var(--rel-color-bg-selected);\n }\n\n .menu-item[data-disabled=\"true\"] {\n opacity: 0.5;\n cursor: not-allowed;\n }\n\n .menu-separator {\n height: var(--rel-borders-width-stroke-100);\n background: var(--rel-color-border-divider);\n margin: 0;\n padding: 0;\n }\n\n rel-icon {\n display: inline-flex;\n pointer-events: none;\n }\n\n .menu-submenu-trigger {\n position: relative;\n }\n\n .menu-submenu-trigger rel-icon {\n opacity: 0.6;\n }\n\n .submenu-panel {\n position: fixed;\n min-width: 200px;\n background: var(--rel-color-bg-primary);\n border: var(--rel-borders-width-stroke-100) solid var(--rel-color-border-default);\n border-radius: var(--rel-borders-radius-border-radius-200);\n box-shadow: var(--rel-shadows-shadow-300);\n padding: 0;\n overflow: hidden;\n z-index: 1001;\n display: none;\n }\n\n .submenu-panel.open {\n display: block;\n }\n\n .menu-shortcut {\n opacity: 0.6;\n font-size: var(--rel-fontSizes-xs);\n margin-left: auto;\n display: flex;\n align-items: center;\n gap: var(--rel-spacing-space-3xs);\n }\n\n .menubar-panel rel-checkbox {\n display: block;\n width: 100%;\n padding: var(--rel-spacing-space-xs, 8px) var(--rel-spacing-space-md, 16px);\n box-sizing: border-box;\n cursor: pointer;\n }\n ";
476
+ createRenderRoot(): this;
394
477
  connectedCallback(): void;
395
478
  disconnectedCallback(): void;
479
+ private _repositionOpenSubmenu;
480
+ private _repositionOpenMenu;
396
481
  private discoverMenus;
397
482
  private handleOutsideClick;
398
483
  private closeAllMenus;
@@ -420,59 +505,6 @@ declare class RelMenubarMenu extends LitElement {
420
505
  render(): lit_html.TemplateResult<1>;
421
506
  }
422
507
 
423
- type DensityType$1 = "comfortable" | "compact";
424
- declare class RelNavMenu extends LitElement {
425
- open: string;
426
- disabled: boolean;
427
- density: DensityType$1;
428
- private items;
429
- private focusedIndex;
430
- private hoverSwitchEnabled;
431
- private container;
432
- static styles: lit.CSSResult;
433
- connectedCallback(): void;
434
- disconnectedCallback(): void;
435
- private discoverItems;
436
- private handleSlotChange;
437
- private handleOutsideClick;
438
- private handleNavItemClick;
439
- private handleNavItemHover;
440
- private openPanel;
441
- private closePanel;
442
- private handleKeyDown;
443
- private focusItem;
444
- render(): lit_html.TemplateResult<1>;
445
- }
446
-
447
- declare class RelNavMenuItem extends LitElement {
448
- label: string;
449
- href: string;
450
- itemId: string;
451
- disabled: boolean;
452
- icon: string;
453
- /** Promoted from @state so rel-nav-menu can read it as a property. */
454
- hasContent: boolean;
455
- /** Set by rel-nav-menu to open/close this item's panel. */
456
- open: boolean;
457
- static styles: lit.CSSResult;
458
- connectedCallback(): void;
459
- firstUpdated(): void;
460
- updated(changed: Map<string, any>): void;
461
- private updateHasContent;
462
- private handleSlotChange;
463
- private positionPanel;
464
- private handleTriggerClick;
465
- private handleTriggerMouseEnter;
466
- get triggerId(): string;
467
- get panelId(): string;
468
- render(): lit_html.TemplateResult<1>;
469
- }
470
-
471
- declare class RelNavMenuPanel extends LitElement {
472
- static styles: lit.CSSResult;
473
- render(): lit_html.TemplateResult<1>;
474
- }
475
-
476
508
  /**
477
509
  * @deprecated rel-navbar is deprecated and will be removed in a future release.
478
510
  * Use rel-topbar and its sub-components instead:
@@ -530,6 +562,30 @@ declare global {
530
562
  }
531
563
  }
532
564
 
565
+ declare class RelTopbarDropdown extends LitElement {
566
+ static styles: lit.CSSResult;
567
+ render(): lit_html.TemplateResult<1>;
568
+ }
569
+ declare global {
570
+ interface HTMLElementTagNameMap {
571
+ "rel-topbar-dropdown": RelTopbarDropdown;
572
+ }
573
+ }
574
+
575
+ declare class RelTopbarDropdownItem extends LitElement {
576
+ label: string;
577
+ href: string;
578
+ active: boolean;
579
+ static styles: lit.CSSResult;
580
+ private _handleClick;
581
+ render(): lit_html.TemplateResult<1>;
582
+ }
583
+ declare global {
584
+ interface HTMLElementTagNameMap {
585
+ "rel-topbar-dropdown-item": RelTopbarDropdownItem;
586
+ }
587
+ }
588
+
533
589
  type TopbarVariant = "customer" | "carrier";
534
590
  type TopbarForceLayout = "auto" | "desktop" | "tablet" | "mobile";
535
591
  /**
@@ -564,35 +620,23 @@ declare class RelTopbar extends LitElement {
564
620
  * 'auto' respects CSS media queries.
565
621
  */
566
622
  forceLayout: TopbarForceLayout;
623
+ private _overflowItems;
624
+ private _overflowCount;
625
+ private _overflowItemsData;
626
+ private _resizeObserver?;
627
+ private _resizeTimer?;
628
+ private _measuring;
629
+ private _lastNavWidth;
567
630
  static styles: lit.CSSResult;
631
+ firstUpdated(): void;
632
+ disconnectedCallback(): void;
633
+ private _measureNav;
568
634
  private onRouterSlotChange;
569
635
  private get layoutClass();
570
636
  private handleMenuToggle;
571
637
  render(): lit_html.TemplateResult<1>;
572
638
  }
573
639
 
574
- declare class RelTopbarDropdown extends LitElement {
575
- static styles: lit.CSSResult;
576
- render(): lit_html.TemplateResult<1>;
577
- }
578
- declare global {
579
- interface HTMLElementTagNameMap {
580
- "rel-topbar-dropdown": RelTopbarDropdown;
581
- }
582
- }
583
-
584
- declare class RelTopbarDropdownItem extends LitElement {
585
- label: string;
586
- href: string;
587
- static styles: lit.CSSResult;
588
- render(): lit_html.TemplateResult<1>;
589
- }
590
- declare global {
591
- interface HTMLElementTagNameMap {
592
- "rel-topbar-dropdown-item": RelTopbarDropdownItem;
593
- }
594
- }
595
-
596
640
  /**
597
641
  * `rel-topbar-item` — A navigation item within rel-topbar.
598
642
  *
@@ -661,6 +705,7 @@ declare class RelTopbarProfile extends LitElement {
661
705
  static styles: lit.CSSResult;
662
706
  render(): lit_html.TemplateResult<1>;
663
707
  private _renderAvatar;
708
+ private _avatarBg;
664
709
  private _renderCarrier;
665
710
  }
666
711
 
@@ -684,7 +729,6 @@ declare class RelOtp extends LitElement {
684
729
  showSeparator: boolean;
685
730
  size: "sm" | "md" | "lg";
686
731
  private cells;
687
- private focusedIndex;
688
732
  private hiddenInput?;
689
733
  private isUpdatingFromValue;
690
734
  static styles: lit.CSSResult;
@@ -813,31 +857,6 @@ declare class RelProgress extends LitElement {
813
857
  render(): lit_html.TemplateResult<1>;
814
858
  }
815
859
 
816
- interface RadioOption {
817
- value: string;
818
- label: string;
819
- supportingText?: string;
820
- disabled?: boolean;
821
- error?: boolean;
822
- }
823
- declare class RelRadio extends LitElement {
824
- options: RadioOption[];
825
- name: string;
826
- selectedValue: string | null;
827
- disabled: boolean;
828
- value: string;
829
- checked: boolean;
830
- private _onChange;
831
- private _onTouched;
832
- static styles: lit.CSSResult;
833
- private onChange;
834
- registerOnChange(fn: (value: string) => void): void;
835
- registerOnTouched(fn: () => void): void;
836
- writeValue(value: string): void;
837
- private renderOption;
838
- render(): lit_html.TemplateResult<1>;
839
- }
840
-
841
860
  declare class RelResizableGroup extends LitElement {
842
861
  direction: "horizontal" | "vertical";
843
862
  private panels;
@@ -937,87 +956,40 @@ declare class RelSelect extends LitElement {
937
956
  leftIcon: string;
938
957
  rightIcon: string;
939
958
  static styles: lit.CSSResult;
959
+ connectedCallback(): void;
940
960
  private onChange;
941
961
  render(): lit_html.TemplateResult<1>;
942
962
  }
943
963
 
944
- type SheetSide = "top" | "right" | "bottom" | "left";
945
- type SheetSize = "sm" | "md" | "lg" | "xl";
946
- type SheetCloseReason = "trigger" | "close" | "overlay" | "escape" | "api";
947
- declare class RelSheet extends LitElement {
948
- open?: boolean;
949
- defaultOpen: boolean;
950
- disabled: boolean;
964
+ type ModalSide = "top" | "bottom" | "center";
965
+ declare class RelModal extends LitElement {
966
+ open: boolean;
967
+ side: ModalSide;
968
+ title: string;
969
+ description: string;
970
+ dismissible: boolean;
951
971
  modal: boolean;
952
- private internalOpen;
953
- static styles: lit.CSSResult;
954
- connectedCallback(): void;
955
- updated(changed: Map<string, unknown>): void;
956
- private isControlled;
957
- get activeOpen(): boolean;
958
- setOpen(next: boolean, reason?: SheetCloseReason): void;
959
- render(): lit_html.TemplateResult<1>;
960
- }
961
- declare class RelSheetTrigger extends LitElement {
962
- static styles: lit.CSSResult;
963
- private getSheet;
964
- private handleClick;
965
- render(): lit_html.TemplateResult<1>;
966
- }
967
- declare class RelSheetContent extends LitElement {
968
- side: SheetSide;
969
- size: SheetSize;
970
- hideOverlay: boolean;
971
- closeOnOverlay: boolean;
972
- showClose: boolean;
973
- private panelElement;
974
972
  private overlayElement;
975
- private sheet;
976
973
  private previousFocus;
977
974
  private originalBodyOverflow;
978
975
  private originalBodyPaddingRight;
979
- private isOpen;
980
976
  static styles: lit.CSSResult;
981
977
  connectedCallback(): void;
982
978
  disconnectedCallback(): void;
983
- private findSheet;
984
- private handleSheetOpenChange;
979
+ updated(changed: Map<string, unknown>): void;
985
980
  private handleOpen;
986
981
  private handleClose;
987
- private cleanup;
988
982
  private lockScroll;
989
983
  private unlockScroll;
990
- private focusPanel;
991
- private getFocusableElements;
992
984
  private handleKeydown;
993
985
  private handleOverlayClick;
994
- private handleCloseClick;
995
- private getSizeValue;
996
- private getTitle;
997
- private getDescription;
998
- render(): lit_html.TemplateResult<1>;
999
- }
1000
- declare class RelSheetHeader extends LitElement {
1001
- static styles: lit.CSSResult;
1002
- render(): lit_html.TemplateResult<1>;
1003
- }
1004
- declare class RelSheetFooter extends LitElement {
1005
- static styles: lit.CSSResult;
1006
- render(): lit_html.TemplateResult<1>;
1007
- }
1008
- declare class RelSheetTitle extends LitElement {
1009
- static styles: lit.CSSResult;
1010
- render(): lit_html.TemplateResult<1>;
1011
- }
1012
- declare class RelSheetDescription extends LitElement {
1013
- static styles: lit.CSSResult;
986
+ private handleCloseButtonClick;
1014
987
  render(): lit_html.TemplateResult<1>;
1015
988
  }
1016
- declare class RelSheetClose extends LitElement {
1017
- static styles: lit.CSSResult;
1018
- private getSheet;
1019
- private handleClick;
1020
- render(): lit_html.TemplateResult<1>;
989
+ declare global {
990
+ interface HTMLElementTagNameMap {
991
+ "rel-modal": RelModal;
992
+ }
1021
993
  }
1022
994
 
1023
995
  type SliderType = "continuous" | "discrete";
@@ -1075,7 +1047,7 @@ declare class RelSnackbar extends LitElement {
1075
1047
  private clearDismissTimer;
1076
1048
  private onActionClick;
1077
1049
  private dismiss;
1078
- private getIcon;
1050
+ private renderIcon;
1079
1051
  render(): lit_html.TemplateResult<1>;
1080
1052
  }
1081
1053
 
@@ -1158,9 +1130,12 @@ declare class RelTextfield extends LitElement {
1158
1130
  supportingText?: string;
1159
1131
  state: TextFieldState;
1160
1132
  size: TextFieldSize;
1133
+ floatingLabel: boolean;
1161
1134
  private internalState;
1135
+ private _wasError;
1162
1136
  private uniqueId;
1163
1137
  static styles: lit.CSSResult;
1138
+ connectedCallback(): void;
1164
1139
  private handleFocus;
1165
1140
  private handleBlur;
1166
1141
  private handleInput;
@@ -1197,4 +1172,4 @@ declare class RelTooltip extends LitElement {
1197
1172
  render(): lit_html.TemplateResult<1>;
1198
1173
  }
1199
1174
 
1200
- export { type BreadcrumbItem, type DrawerCloseReason, type DrawerSide, type MenuItem, type MenuType, type Orientation, type OtpType, type ProgressMode, type RadioOption, RelAccordion, RelAlert, RelAvatar, RelBadge, RelBreadcrumbs, RelButton, RelCalendar, RelCard, RelCardMedia, RelCarousel, RelCheckbox, RelChip, RelContainer, RelDatePicker, RelDivider, RelDrawer, RelDrawerFooter, RelKbd, RelLayout, RelMenu, RelMenuItem, RelMenubar, RelMenubarMenu, RelNavMenu, RelNavMenuItem, RelNavMenuPanel, RelNavbar, RelOtp, RelPagination, RelPopover, RelPopoverContent, RelProgress, RelRadio, RelResizableGroup, RelResizableHandle, RelResizablePanel, RelSegmentedButton, RelSelect, RelSheet, RelSheetClose, RelSheetContent, RelSheetDescription, RelSheetFooter, RelSheetHeader, RelSheetTitle, RelSheetTrigger, RelSlider, RelSnackbar, RelStepper, RelSwitch, RelTab, RelTabItem, RelTextfield, RelToast, RelTooltip, RelTopbar, RelTopbarActions, RelTopbarBrand, RelTopbarDropdown, RelTopbarDropdownItem, RelTopbarItem, RelTopbarMobilePanel, RelTopbarProfile, RelTopbarUtilities, type SegmentAlign, type SegmentOption, type SegmentSize, type SelectBorder, type SelectSize, type SelectState, type SheetCloseReason, type SheetSide, type SheetSize, type SliderType, type SnackbarLines, type SnackbarType, type Step, type StepStatus, type StepperSize, type TabItem, type TextAlign, type TextFieldSize, type TextFieldState, type ToastType, type TooltipPosition, type TopbarForceLayout, type TopbarProfileType, type TopbarRewardTier, type TopbarVariant, type TrackStyle };
1175
+ export { type BreadcrumbItem, type DrawerCloseReason, type DrawerSide, type MenuItem, type MenuType, type ModalSide, type Orientation, type OtpType, type ProgressMode, type RadioOption, RelAccordion, RelAlert, RelAvatar, RelBadge, RelBreadcrumbs, RelButton, RelCalendar, RelCard, RelCardMedia, RelCarousel, RelCheckbox, RelChip, RelContainer, RelDatePicker, RelDivider, RelDrawer, RelDrawerFooter, RelKbd, RelLayout, RelMenu, RelMenuItem, RelMenubar, RelMenubarMenu, RelModal, RelNavbar, RelOtp, RelPagination, RelPopover, RelPopoverContent, RelProgress, RelRadio, RelRangePicker, RelResizableGroup, RelResizableHandle, RelResizablePanel, RelSegmentedButton, RelSelect, RelSlider, RelSnackbar, RelStepper, RelSwitch, RelTab, RelTabItem, RelTextfield, RelToast, RelTooltip, RelTopbar, RelTopbarActions, RelTopbarBrand, RelTopbarDropdown, RelTopbarDropdownItem, RelTopbarItem, RelTopbarMobilePanel, RelTopbarProfile, RelTopbarUtilities, type SegmentAlign, type SegmentOption, type SegmentSize, type SelectBorder, type SelectSize, type SelectState, type SliderType, type SnackbarLines, type SnackbarType, type Step, type StepStatus, type StepperSize, type TabItem, type TextAlign, type TextFieldSize, type TextFieldState, type ToastType, type TooltipPosition, type TopbarForceLayout, type TopbarProfileType, type TopbarRewardTier, type TopbarVariant, type TrackStyle };