@reliability-design/web 1.4.6 → 1.4.8

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 (148) hide show
  1. package/CHANGELOG.md +246 -49
  2. package/dist/components/rel-accordion/README.md +133 -132
  3. package/dist/components/rel-alert/README.md +145 -141
  4. package/dist/components/rel-autocomplete/README.md +172 -61
  5. package/dist/components/rel-avatar/README.md +118 -130
  6. package/dist/components/rel-badge/README.md +97 -93
  7. package/dist/components/rel-breadcrumb/README.md +96 -102
  8. package/dist/components/rel-button/README.md +190 -130
  9. package/dist/components/rel-calendar/README.md +109 -109
  10. package/dist/components/rel-card/README.md +75 -94
  11. package/dist/components/rel-cardmedia/README.md +100 -127
  12. package/dist/components/rel-carousel/README.md +186 -166
  13. package/dist/components/rel-checkbox/README.md +96 -75
  14. package/dist/components/rel-chip/README.md +138 -121
  15. package/dist/components/rel-container/README.md +107 -99
  16. package/dist/components/rel-date-picker/README.md +200 -289
  17. package/dist/components/rel-divider/README.md +88 -100
  18. package/dist/components/rel-drawer/README.md +187 -200
  19. package/dist/components/rel-kbd/README.md +141 -151
  20. package/dist/components/rel-layout/README.md +34 -0
  21. package/dist/components/rel-menu/README.md +180 -151
  22. package/dist/components/rel-menubar/README.md +218 -329
  23. package/dist/components/rel-otp/README.md +171 -440
  24. package/dist/components/rel-pagination/README.md +100 -424
  25. package/dist/components/rel-popover/README.md +203 -568
  26. package/dist/components/rel-progress/README.md +88 -110
  27. package/dist/components/rel-radio/README.md +131 -138
  28. package/dist/components/rel-range-picker/README.md +165 -0
  29. package/dist/components/rel-resizable/README.md +199 -140
  30. package/dist/components/rel-segmented-button/README.md +156 -141
  31. package/dist/components/rel-select/README.md +156 -93
  32. package/dist/components/rel-sheet/README.md +168 -224
  33. package/dist/components/rel-skeleton/README.md +104 -0
  34. package/dist/components/rel-slider/README.md +131 -135
  35. package/dist/components/rel-snackbar/README.md +168 -134
  36. package/dist/components/rel-stepper/README.md +162 -160
  37. package/dist/components/rel-switch/README.md +117 -102
  38. package/dist/components/rel-tab/README.md +173 -163
  39. package/dist/components/rel-textfield/README.md +176 -69
  40. package/dist/components/rel-time-picker/README.md +122 -157
  41. package/dist/components/rel-toast/README.md +165 -148
  42. package/dist/components/rel-tooltip/README.md +119 -111
  43. package/dist/components/rel-upload/README.md +220 -0
  44. package/dist/index.d.mts +1726 -447
  45. package/dist/index.d.ts +1726 -447
  46. package/dist/index.js +13715 -10870
  47. package/dist/index.js.map +1 -1
  48. package/dist/index.mjs +14018 -11163
  49. package/dist/index.mjs.map +1 -1
  50. package/dist/styles/focus-ring.ts +84 -0
  51. package/dist/styles/vars.css +892 -866
  52. package/dist/{vars-XNMTSRVN.css → vars-DXX6QOAG.css} +892 -866
  53. package/package.json +3 -2
  54. package/dist/components/rel-accordion/rel-accordion.ts +0 -336
  55. package/dist/components/rel-alert/rel-alert.ts +0 -305
  56. package/dist/components/rel-autocomplete/rel-autocomplete.ts +0 -720
  57. package/dist/components/rel-avatar/rel-avatar.ts +0 -142
  58. package/dist/components/rel-badge/rel-badge.ts +0 -175
  59. package/dist/components/rel-breadcrumb/rel-breadcrumb.ts +0 -106
  60. package/dist/components/rel-button/rel-button.ts +0 -560
  61. package/dist/components/rel-calendar/index.ts +0 -1
  62. package/dist/components/rel-calendar/rel-calendar.ts +0 -565
  63. package/dist/components/rel-card/rel-card.ts +0 -88
  64. package/dist/components/rel-cardmedia/rel-cardmedia.ts +0 -88
  65. package/dist/components/rel-carousel/index.ts +0 -1
  66. package/dist/components/rel-carousel/rel-carousel.ts +0 -723
  67. package/dist/components/rel-chart/README.md +0 -286
  68. package/dist/components/rel-chart/index.ts +0 -1
  69. package/dist/components/rel-chart/rel-chart.ts +0 -754
  70. package/dist/components/rel-checkbox/rel-checkbox.ts +0 -382
  71. package/dist/components/rel-chip/rel-chip.ts +0 -483
  72. package/dist/components/rel-container/rel-container.ts +0 -95
  73. package/dist/components/rel-date-picker/date-format.test.ts +0 -43
  74. package/dist/components/rel-date-picker/date-format.ts +0 -47
  75. package/dist/components/rel-date-picker/date-parse.test.ts +0 -116
  76. package/dist/components/rel-date-picker/date-parse.ts +0 -178
  77. package/dist/components/rel-date-picker/index.ts +0 -1
  78. package/dist/components/rel-date-picker/rel-date-picker.ts +0 -1676
  79. package/dist/components/rel-divider/rel-divider.ts +0 -54
  80. package/dist/components/rel-drawer/index.ts +0 -1
  81. package/dist/components/rel-drawer/rel-drawer-footer.ts +0 -27
  82. package/dist/components/rel-drawer/rel-drawer.ts +0 -607
  83. package/dist/components/rel-kbd/rel-kbd.ts +0 -188
  84. package/dist/components/rel-layout/rel-layout.ts +0 -49
  85. package/dist/components/rel-menu/rel-menu.ts +0 -541
  86. package/dist/components/rel-menubar/index.ts +0 -2
  87. package/dist/components/rel-menubar/rel-menubar-menu.css +0 -3
  88. package/dist/components/rel-menubar/rel-menubar-menu.ts +0 -17
  89. package/dist/components/rel-menubar/rel-menubar.ts +0 -777
  90. package/dist/components/rel-nav-menu/README.md +0 -289
  91. package/dist/components/rel-nav-menu/index.ts +0 -3
  92. package/dist/components/rel-nav-menu/rel-nav-menu-item.ts +0 -243
  93. package/dist/components/rel-nav-menu/rel-nav-menu-panel.ts +0 -72
  94. package/dist/components/rel-nav-menu/rel-nav-menu.ts +0 -270
  95. package/dist/components/rel-navbar/README.md +0 -126
  96. package/dist/components/rel-navbar/rel-navbar.ts +0 -105
  97. package/dist/components/rel-otp/index.ts +0 -1
  98. package/dist/components/rel-otp/rel-otp.ts +0 -527
  99. package/dist/components/rel-pagination/index.ts +0 -1
  100. package/dist/components/rel-pagination/rel-pagination.ts +0 -522
  101. package/dist/components/rel-popover/index.ts +0 -2
  102. package/dist/components/rel-popover/rel-popover-content.ts +0 -81
  103. package/dist/components/rel-popover/rel-popover.ts +0 -475
  104. package/dist/components/rel-progress/rel-progress.ts +0 -234
  105. package/dist/components/rel-radio/rel-radio.ts +0 -481
  106. package/dist/components/rel-range-picker/rel-range-picker.ts +0 -1688
  107. package/dist/components/rel-resizable/index.ts +0 -3
  108. package/dist/components/rel-resizable/rel-resizable-group.ts +0 -405
  109. package/dist/components/rel-resizable/rel-resizable-handle.ts +0 -150
  110. package/dist/components/rel-resizable/rel-resizable-panel.ts +0 -58
  111. package/dist/components/rel-segmented-button/rel-segmented-button.ts +0 -217
  112. package/dist/components/rel-select/rel-select.ts +0 -1416
  113. package/dist/components/rel-sheet/rel-sheet.ts +0 -610
  114. package/dist/components/rel-sidebar/README.md +0 -209
  115. package/dist/components/rel-sidebar/rel-sidebar.ts +0 -1191
  116. package/dist/components/rel-skeleton/rel-skeleton.ts +0 -143
  117. package/dist/components/rel-slider/rel-slider.ts +0 -673
  118. package/dist/components/rel-snackbar/rel-snackbar.ts +0 -329
  119. package/dist/components/rel-stepper/rel-stepper.ts +0 -567
  120. package/dist/components/rel-switch/rel-switch.ts +0 -199
  121. package/dist/components/rel-tab/rel-tab.ts +0 -264
  122. package/dist/components/rel-table/README.md +0 -178
  123. package/dist/components/rel-table/rel-table-body.ts +0 -22
  124. package/dist/components/rel-table/rel-table-caption.ts +0 -30
  125. package/dist/components/rel-table/rel-table-cell.ts +0 -43
  126. package/dist/components/rel-table/rel-table-footer.ts +0 -24
  127. package/dist/components/rel-table/rel-table-head.ts +0 -47
  128. package/dist/components/rel-table/rel-table-header.ts +0 -22
  129. package/dist/components/rel-table/rel-table-row.ts +0 -37
  130. package/dist/components/rel-table/rel-table.ts +0 -62
  131. package/dist/components/rel-textfield/rel-textfield.ts +0 -1054
  132. package/dist/components/rel-time-picker/rel-time-picker.ts +0 -1482
  133. package/dist/components/rel-time-picker/time-parse.test.ts +0 -67
  134. package/dist/components/rel-time-picker/time-parse.ts +0 -85
  135. package/dist/components/rel-toast/rel-toast.ts +0 -206
  136. package/dist/components/rel-tooltip/rel-tooltip.ts +0 -193
  137. package/dist/components/rel-topbar/rel-topbar-actions.ts +0 -27
  138. package/dist/components/rel-topbar/rel-topbar-brand.ts +0 -54
  139. package/dist/components/rel-topbar/rel-topbar-dropdown-item.ts +0 -69
  140. package/dist/components/rel-topbar/rel-topbar-dropdown.ts +0 -31
  141. package/dist/components/rel-topbar/rel-topbar-item.ts +0 -324
  142. package/dist/components/rel-topbar/rel-topbar-mobile-panel.ts +0 -27
  143. package/dist/components/rel-topbar/rel-topbar-profile.ts +0 -243
  144. package/dist/components/rel-topbar/rel-topbar-utilities.ts +0 -27
  145. package/dist/components/rel-topbar/rel-topbar.ts +0 -446
  146. package/dist/components/rel-upload/UPLOAD-DESIGN-CHANGES.md +0 -134
  147. package/dist/components/rel-upload/rel-upload-actions.ts +0 -163
  148. package/dist/components/rel-upload/rel-upload.ts +0 -968
@@ -1,209 +0,0 @@
1
- # rel-sidebar
2
-
3
- ## Overview
4
- A sophisticated sidebar navigation system with multiple components: `rel-sidebar-provider` (state manager), `rel-sidebar` (visual container), `rel-sidebar-trigger` (toggle button), and layout helpers (`rel-sidebar-header`, `rel-sidebar-footer`, `rel-sidebar-content`, `rel-sidebar-rail`). Supports three variants (sidebar, floating, inset), two collapsible modes (offcanvas, icon), mobile detection, localStorage persistence, keyboard shortcuts, and focus trapping.
5
-
6
- ## Components
7
- This sidebar system consists of multiple components that work together:
8
- - **`<rel-sidebar-provider>`**: Root wrapper that manages state
9
- - **`<rel-sidebar>`**: Visual sidebar container
10
- - **`<rel-sidebar-trigger>`**: Toggle button
11
- - **`<rel-sidebar-header>`**: Header layout helper
12
- - **`<rel-sidebar-footer>`**: Footer layout helper
13
- - **`<rel-sidebar-content>`**: Main content wrapper
14
- - **`<rel-sidebar-rail>`**: Collapsed (icon-only) state content
15
-
16
- ## Usage
17
- ```html
18
- <!-- Basic sidebar with provider -->
19
- <rel-sidebar-provider>
20
- <rel-sidebar>
21
- <rel-sidebar-header>
22
- <h2>App Name</h2>
23
- <rel-sidebar-trigger>
24
- <button>☰</button>
25
- </rel-sidebar-trigger>
26
- </rel-sidebar-header>
27
-
28
- <rel-sidebar-content>
29
- <nav>
30
- <a href="#home">Home</a>
31
- <a href="#about">About</a>
32
- <a href="#contact">Contact</a>
33
- </nav>
34
- </rel-sidebar-content>
35
-
36
- <rel-sidebar-footer>
37
- <p>© 2024 Company</p>
38
- </rel-sidebar-footer>
39
- </rel-sidebar>
40
-
41
- <main>
42
- <h1>Main Content</h1>
43
- <p>Page content goes here</p>
44
- </main>
45
- </rel-sidebar-provider>
46
-
47
- <!-- Controlled open state -->
48
- <rel-sidebar-provider open="true">
49
- <rel-sidebar>
50
- <nav>Navigation items</nav>
51
- </rel-sidebar>
52
- <main>Content</main>
53
- </rel-sidebar-provider>
54
-
55
- <!-- Right-side floating variant -->
56
- <rel-sidebar-provider side="right" variant="floating" width="lg">
57
- <rel-sidebar>
58
- <h3>Right Sidebar</h3>
59
- </rel-sidebar>
60
- <main>Content</main>
61
- </rel-sidebar-provider>
62
-
63
- <!-- Offcanvas mode (overlay on all screen sizes) -->
64
- <rel-sidebar-provider collapsible="offcanvas">
65
- <rel-sidebar>
66
- <nav>Menu</nav>
67
- </rel-sidebar>
68
- <main>Content</main>
69
- </rel-sidebar-provider>
70
-
71
- <!-- Listen for state changes -->
72
- <rel-sidebar-provider id="sidebarProvider">
73
- <rel-sidebar>Nav</rel-sidebar>
74
- <main>Content</main>
75
- </rel-sidebar-provider>
76
- <script>
77
- const provider = document.getElementById('sidebarProvider');
78
- provider.addEventListener('rel-sidebar-change', (e) => {
79
- console.log('Open:', e.detail.open);
80
- console.log('Collapsed:', e.detail.collapsed);
81
- console.log('Reason:', e.detail.reason);
82
- });
83
- </script>
84
- ```
85
-
86
- ## API
87
-
88
- ### rel-sidebar-provider Properties
89
- | Name | Type | Default | Description |
90
- |------|------|---------|-------------|
91
- | `open` (reflected) | `boolean?` | `undefined` | Controlled open state (undefined = uncontrolled) |
92
- | `defaultopen` | `boolean` | `true` | Default open state (uncontrolled mode) |
93
- | `collapsed` (reflected) | `boolean?` | `undefined` | Controlled collapsed state |
94
- | `defaultcollapsed` | `boolean` | `false` | Default collapsed state (uncontrolled mode) |
95
- | `variant` | `"sidebar" \| "floating" \| "inset"` | `"sidebar"` | Visual variant |
96
- | `side` | `"left" \| "right"` | `"left"` | Which side the sidebar appears on |
97
- | `collapsible` | `"offcanvas" \| "icon" \| "none"` | `"icon"` | Collapsible behavior mode |
98
- | `width` | `"sm" \| "md" \| "lg"` | `"md"` | Sidebar width (240/280/320px) |
99
- | `persist-key` | `string` | `"rel-sidebar"` | localStorage key for persistence |
100
- | `keyboard-shortcut` | `boolean` | `true` | Enable Ctrl/Cmd+B shortcut |
101
- | `disable-persist` | `boolean` | `false` | Disable localStorage persistence |
102
- | `disable-overlay-close` | `boolean` | `false` | Prevent closing on overlay click |
103
-
104
- ### rel-sidebar Properties
105
- | Name | Type | Default | Description |
106
- |------|------|---------|-------------|
107
- | `inset` | `boolean` | `false` | Use inset variant styling (overrides provider variant) |
108
-
109
- ## Events
110
- | Event | Detail | Description |
111
- |-------|--------|-------------|
112
- | `rel-sidebar-change` | `{ open, collapsed, reason }` | Fired when sidebar state changes |
113
- | `rel-sidebar-state` | `{ isOpen, isCollapsed, isMobile, side, variant, collapsible, width }` | Internal state sync event |
114
-
115
- ### Change Reasons
116
- - `"trigger"`: Toggled via trigger button
117
- - `"rail"`: Toggled collapsed state
118
- - `"overlay"`: Closed by clicking overlay
119
- - `"escape"`: Closed via Escape key
120
- - `"shortcut"`: Toggled via keyboard shortcut (Ctrl/Cmd+B)
121
- - `"api"`: Changed programmatically via `setOpen()` or `setCollapsed()`
122
-
123
- ## Methods
124
-
125
- ### Provider Methods
126
- ```typescript
127
- provider.setOpen(nextOpen: boolean, reason?: string): void
128
- provider.setCollapsed(nextCollapsed: boolean, reason?: string): void
129
- ```
130
-
131
- ##Slots
132
- | Slot | Component | Description |
133
- |------|-----------|-------------|
134
- | (default) | All | Main content area |
135
-
136
- ## CSS Parts
137
- None exposed.
138
-
139
- ## Tokens / CSS Variables
140
-
141
- ### Width Tokens (defined on `<rel-sidebar>`)
142
- - `--sidebar-width-sm`: `240px` (small width)
143
- - `--sidebar-width-md`: `280px` (medium width)
144
- - `--sidebar-width-lg`: `320px` (large width)
145
- - `--sidebar-width-collapsed`: `56px` (collapsed/icon-only width)
146
-
147
- ### Transition Tokens
148
- - `--sidebar-transition-duration`: `0.2s`
149
- - `--sidebar-transition-timing`: `cubic-bezier(0.4, 0, 0.2, 1)`
150
-
151
- ### Color Tokens
152
- - `--rel-bg-surface-elevated` - Sidebar background (`#fafafa`)
153
- - `--rel-text-default` - Text color
154
- - `--rel-border-default` - Border color
155
- - `--rel-overlay-scrim` - Overlay background (`rgba(0, 0, 0, 0.5)`)
156
-
157
- ### Shadow Tokens (floating variant)
158
- - `--rel-shadows-shadow-400` - Floating variant shadow
159
-
160
- ### Other Tokens
161
- - `--rel-border-radius-md` - Floating variant border radius
162
- - `--rel-spacing-md` - Floating variant inset, header/footer padding
163
- - `--rel-spacing-2xs` - Used in various layouts
164
-
165
- ## Accessibility
166
- - Sidebar uses `role="navigation"`
167
- - Focus trap active in offcanvas mode
168
- - Escape key closes offcanvas
169
- - Keyboard shortcut (Ctrl/Cmd+B) for toggling
170
- - Restores focus to trigger when closing
171
-
172
- ### Keyboard Interactions
173
- | Key | Action |
174
- |-----|--------|
175
- | `Ctrl/Cmd + B` | Toggle sidebar (open/collapsed depending on mode) |
176
- | `Escape` | Close sidebar (offcanvas mode only) |
177
- | `Tab` | Focus trap within sidebar when open in offcanvas mode |
178
-
179
- ### Focus Behavior
180
- - In offcanvas mode, focus moves to first focusable element when opened
181
- - Focus is trapped within sidebar in offcanvas mode
182
- - Focus restores to trigger button when closed
183
-
184
- ## Notes / Edge Cases
185
- - **Mobile detection**: Automatically detects `max-width: 768px` breakpoint and switches to offcanvas mode
186
- - **Collapsible modes**:
187
- - **offcanvas**: Sidebar slides in/out with overlay (like a drawer)
188
- - **icon**: Sidebar collapses to icon-only width (56px)
189
- - **none**: Sidebar cannot be collapsed (always full width)
190
-
191
- - **Variants**:
192
- - **sidebar**: Fixed position, full height
193
- - **floating**: Inset with margins, rounded corners, shadow
194
- - **inset**: Relative position, no shadow
195
-
196
- - **State persistence**: By default, sidebar state is saved to localStorage and restored on reload (disable with `disable-persist`)
197
- - **Controlled vs uncontrolled**: If `open` or `collapsed` props are set, the component is controlled and won't manage its own state
198
- - **Mobile behavior**: On mobile, sidebar starts closed and ignores persisted state
199
- - **Scroll locking**: In offcanvas mode, body scroll is locked when sidebar is open
200
- - **Transitions disabled**: When `prefers-reduced-motion: reduce`
201
- - The provider uses `display: contents` to avoid affecting layout
202
- - Sidebar is overlaid with `z-index: 1000` in offcanvas mode
203
- - Overlay is `z-index: 999`
204
-
205
- ### Width Values
206
- - **sm**: 240px
207
- - **md**: 280px
208
- - **lg**: 320px
209
- - **collapsed**: 56px