@sondor-technology/sondor-components 1.0.5 → 1.0.6

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 (220) hide show
  1. package/dist/components/alert/alert.constants.d.ts +3 -0
  2. package/dist/components/alert/alert.constants.d.ts.map +1 -0
  3. package/dist/components/alert/alert.constants.js +2 -0
  4. package/dist/components/alert/alert.constants.js.map +1 -0
  5. package/dist/components/alert/alert.d.ts +4 -3
  6. package/dist/components/alert/alert.d.ts.map +1 -1
  7. package/dist/components/alert/alert.js +21 -11
  8. package/dist/components/alert/alert.js.map +1 -0
  9. package/dist/components/badge/badge.constants.d.ts +3 -0
  10. package/dist/components/badge/badge.constants.d.ts.map +1 -0
  11. package/dist/components/badge/badge.constants.js +2 -0
  12. package/dist/components/badge/badge.constants.js.map +1 -0
  13. package/dist/components/badge/badge.d.ts +1 -1
  14. package/dist/components/badge/badge.d.ts.map +1 -1
  15. package/dist/components/badge/badge.js +3 -2
  16. package/dist/components/badge/badge.js.map +1 -0
  17. package/dist/components/breadcrumb/breadcrumb.d.ts.map +1 -1
  18. package/dist/components/breadcrumb/breadcrumb.js +2 -1
  19. package/dist/components/breadcrumb/breadcrumb.js.map +1 -0
  20. package/dist/components/button/button.constants.d.ts +7 -0
  21. package/dist/components/button/button.constants.d.ts.map +1 -0
  22. package/dist/components/button/button.constants.js +4 -0
  23. package/dist/components/button/button.constants.js.map +1 -0
  24. package/dist/components/button/button.d.ts +8 -4
  25. package/dist/components/button/button.d.ts.map +1 -1
  26. package/dist/components/button/button.js +181 -137
  27. package/dist/components/button/button.js.map +1 -0
  28. package/dist/components/button-group/button-group.d.ts +1 -0
  29. package/dist/components/button-group/button-group.d.ts.map +1 -1
  30. package/dist/components/button-group/button-group.js +17 -21
  31. package/dist/components/button-group/button-group.js.map +1 -0
  32. package/dist/components/checkbox/checkbox.constants.d.ts +3 -0
  33. package/dist/components/checkbox/checkbox.constants.d.ts.map +1 -0
  34. package/dist/components/checkbox/checkbox.constants.js +2 -0
  35. package/dist/components/checkbox/checkbox.constants.js.map +1 -0
  36. package/dist/components/checkbox/checkbox.d.ts +5 -1
  37. package/dist/components/checkbox/checkbox.d.ts.map +1 -1
  38. package/dist/components/checkbox/checkbox.js +21 -5
  39. package/dist/components/checkbox/checkbox.js.map +1 -0
  40. package/dist/components/code-block/code-block.d.ts +7 -7
  41. package/dist/components/code-block/code-block.d.ts.map +1 -1
  42. package/dist/components/code-block/code-block.js +130 -66
  43. package/dist/components/code-block/code-block.js.map +1 -0
  44. package/dist/components/content-card/content-card.d.ts.map +1 -1
  45. package/dist/components/content-card/content-card.js +10 -15
  46. package/dist/components/content-card/content-card.js.map +1 -0
  47. package/dist/components/divider/divider.constants.d.ts +5 -0
  48. package/dist/components/divider/divider.constants.d.ts.map +1 -0
  49. package/dist/components/divider/divider.constants.js +3 -0
  50. package/dist/components/divider/divider.constants.js.map +1 -0
  51. package/dist/components/divider/divider.d.ts +4 -2
  52. package/dist/components/divider/divider.d.ts.map +1 -1
  53. package/dist/components/divider/divider.js +18 -9
  54. package/dist/components/divider/divider.js.map +1 -0
  55. package/dist/components/drawer/drawer.d.ts +7 -4
  56. package/dist/components/drawer/drawer.d.ts.map +1 -1
  57. package/dist/components/drawer/drawer.js +73 -30
  58. package/dist/components/drawer/drawer.js.map +1 -0
  59. package/dist/components/field/field.d.ts +2 -2
  60. package/dist/components/field/field.d.ts.map +1 -1
  61. package/dist/components/field/field.js +8 -9
  62. package/dist/components/field/field.js.map +1 -0
  63. package/dist/components/footer/footer.d.ts +8 -1
  64. package/dist/components/footer/footer.d.ts.map +1 -1
  65. package/dist/components/footer/footer.js +42 -12
  66. package/dist/components/footer/footer.js.map +1 -0
  67. package/dist/components/form/form-step.js +1 -0
  68. package/dist/components/form/form-step.js.map +1 -0
  69. package/dist/components/form/form.d.ts +3 -0
  70. package/dist/components/form/form.d.ts.map +1 -1
  71. package/dist/components/form/form.js +107 -67
  72. package/dist/components/form/form.js.map +1 -0
  73. package/dist/components/grid/grid-row.d.ts +3 -3
  74. package/dist/components/grid/grid-row.d.ts.map +1 -1
  75. package/dist/components/grid/grid-row.js +36 -22
  76. package/dist/components/grid/grid-row.js.map +1 -0
  77. package/dist/components/grid/grid.d.ts +2 -2
  78. package/dist/components/grid/grid.d.ts.map +1 -1
  79. package/dist/components/grid/grid.js +5 -2
  80. package/dist/components/grid/grid.js.map +1 -0
  81. package/dist/components/icon/icon-paths.js +1 -0
  82. package/dist/components/icon/icon-paths.js.map +1 -0
  83. package/dist/components/icon/icon.js +1 -0
  84. package/dist/components/icon/icon.js.map +1 -0
  85. package/dist/components/input/input.d.ts +9 -0
  86. package/dist/components/input/input.d.ts.map +1 -1
  87. package/dist/components/input/input.js +30 -37
  88. package/dist/components/input/input.js.map +1 -0
  89. package/dist/components/link/link.d.ts +6 -6
  90. package/dist/components/link/link.d.ts.map +1 -1
  91. package/dist/components/link/link.js +42 -19
  92. package/dist/components/link/link.js.map +1 -0
  93. package/dist/components/metadata/metadata.d.ts +3 -3
  94. package/dist/components/metadata/metadata.d.ts.map +1 -1
  95. package/dist/components/metadata/metadata.js +23 -20
  96. package/dist/components/metadata/metadata.js.map +1 -0
  97. package/dist/components/modal/modal.d.ts +4 -16
  98. package/dist/components/modal/modal.d.ts.map +1 -1
  99. package/dist/components/modal/modal.js +99 -62
  100. package/dist/components/modal/modal.js.map +1 -0
  101. package/dist/components/page-layout/page-layout.d.ts +4 -3
  102. package/dist/components/page-layout/page-layout.d.ts.map +1 -1
  103. package/dist/components/page-layout/page-layout.js +95 -68
  104. package/dist/components/page-layout/page-layout.js.map +1 -0
  105. package/dist/components/radio/radio.d.ts +8 -0
  106. package/dist/components/radio/radio.d.ts.map +1 -1
  107. package/dist/components/radio/radio.js +8 -12
  108. package/dist/components/radio/radio.js.map +1 -0
  109. package/dist/components/radio-group/radio-group.d.ts +6 -1
  110. package/dist/components/radio-group/radio-group.d.ts.map +1 -1
  111. package/dist/components/radio-group/radio-group.js +44 -18
  112. package/dist/components/radio-group/radio-group.js.map +1 -0
  113. package/dist/components/router/router.d.ts +5 -7
  114. package/dist/components/router/router.d.ts.map +1 -1
  115. package/dist/components/router/router.js +54 -38
  116. package/dist/components/router/router.js.map +1 -0
  117. package/dist/components/select/select.d.ts +1 -3
  118. package/dist/components/select/select.d.ts.map +1 -1
  119. package/dist/components/select/select.js +14 -5
  120. package/dist/components/select/select.js.map +1 -0
  121. package/dist/components/skeleton/skeleton.d.ts +3 -2
  122. package/dist/components/skeleton/skeleton.d.ts.map +1 -1
  123. package/dist/components/skeleton/skeleton.js +10 -13
  124. package/dist/components/skeleton/skeleton.js.map +1 -0
  125. package/dist/components/switch/switch.d.ts +12 -0
  126. package/dist/components/switch/switch.d.ts.map +1 -1
  127. package/dist/components/switch/switch.js +28 -22
  128. package/dist/components/switch/switch.js.map +1 -0
  129. package/dist/components/table/data-table.d.ts +3 -25
  130. package/dist/components/table/data-table.d.ts.map +1 -1
  131. package/dist/components/table/data-table.js +211 -146
  132. package/dist/components/table/data-table.js.map +1 -0
  133. package/dist/components/table/table.d.ts +3 -3
  134. package/dist/components/table/table.d.ts.map +1 -1
  135. package/dist/components/table/table.js +39 -20
  136. package/dist/components/table/table.js.map +1 -0
  137. package/dist/components/tabs/tab-panel.d.ts +3 -1
  138. package/dist/components/tabs/tab-panel.d.ts.map +1 -1
  139. package/dist/components/tabs/tab-panel.js +21 -11
  140. package/dist/components/tabs/tab-panel.js.map +1 -0
  141. package/dist/components/tabs/tab.d.ts +5 -1
  142. package/dist/components/tabs/tab.d.ts.map +1 -1
  143. package/dist/components/tabs/tab.js +46 -28
  144. package/dist/components/tabs/tab.js.map +1 -0
  145. package/dist/components/tabs/tabs.d.ts +4 -0
  146. package/dist/components/tabs/tabs.d.ts.map +1 -1
  147. package/dist/components/tabs/tabs.js +76 -13
  148. package/dist/components/tabs/tabs.js.map +1 -0
  149. package/dist/components/textarea/textarea.d.ts +13 -0
  150. package/dist/components/textarea/textarea.d.ts.map +1 -1
  151. package/dist/components/textarea/textarea.js +59 -13
  152. package/dist/components/textarea/textarea.js.map +1 -0
  153. package/dist/components/theme-toggle/theme-toggle.constants.d.ts +3 -0
  154. package/dist/components/theme-toggle/theme-toggle.constants.d.ts.map +1 -0
  155. package/dist/components/theme-toggle/theme-toggle.constants.js +2 -0
  156. package/dist/components/theme-toggle/theme-toggle.constants.js.map +1 -0
  157. package/dist/components/theme-toggle/theme-toggle.d.ts +3 -2
  158. package/dist/components/theme-toggle/theme-toggle.d.ts.map +1 -1
  159. package/dist/components/theme-toggle/theme-toggle.js +46 -19
  160. package/dist/components/theme-toggle/theme-toggle.js.map +1 -0
  161. package/dist/components/vertical-nav/vertical-nav-group.d.ts +5 -2
  162. package/dist/components/vertical-nav/vertical-nav-group.d.ts.map +1 -1
  163. package/dist/components/vertical-nav/vertical-nav-group.js +50 -14
  164. package/dist/components/vertical-nav/vertical-nav-group.js.map +1 -0
  165. package/dist/components/vertical-nav/vertical-nav-item.d.ts +3 -2
  166. package/dist/components/vertical-nav/vertical-nav-item.d.ts.map +1 -1
  167. package/dist/components/vertical-nav/vertical-nav-item.js +30 -8
  168. package/dist/components/vertical-nav/vertical-nav-item.js.map +1 -0
  169. package/dist/styles/index.css +48 -17
  170. package/dist/styles/reset.js +1 -0
  171. package/dist/styles/reset.js.map +1 -0
  172. package/package.json +2 -1
  173. package/src/components/alert/alert.constants.ts +2 -0
  174. package/src/components/alert/alert.ts +24 -15
  175. package/src/components/badge/badge.constants.ts +2 -0
  176. package/src/components/badge/badge.ts +3 -4
  177. package/src/components/breadcrumb/breadcrumb.ts +2 -2
  178. package/src/components/button/button.constants.ts +8 -0
  179. package/src/components/button/button.ts +184 -144
  180. package/src/components/button-group/button-group.ts +18 -22
  181. package/src/components/checkbox/checkbox.constants.ts +2 -0
  182. package/src/components/checkbox/checkbox.ts +33 -18
  183. package/src/components/code-block/code-block.ts +151 -84
  184. package/src/components/content-card/content-card.ts +10 -16
  185. package/src/components/divider/divider.constants.ts +5 -0
  186. package/src/components/divider/divider.ts +22 -11
  187. package/src/components/drawer/drawer.ts +79 -34
  188. package/src/components/field/field.ts +9 -11
  189. package/src/components/footer/footer.ts +43 -12
  190. package/src/components/form/form.ts +120 -83
  191. package/src/components/grid/grid-row.ts +45 -32
  192. package/src/components/grid/grid.ts +7 -4
  193. package/src/components/input/input.ts +32 -42
  194. package/src/components/link/link.ts +45 -21
  195. package/src/components/metadata/metadata.ts +26 -24
  196. package/src/components/modal/modal.ts +108 -74
  197. package/src/components/page-layout/page-layout.ts +97 -72
  198. package/src/components/radio/radio.ts +8 -13
  199. package/src/components/radio-group/radio-group.ts +45 -21
  200. package/src/components/router/router.ts +73 -50
  201. package/src/components/select/select.ts +18 -19
  202. package/src/components/skeleton/skeleton.ts +14 -14
  203. package/src/components/switch/switch.ts +31 -25
  204. package/src/components/table/data-table.ts +248 -177
  205. package/src/components/table/table.ts +52 -29
  206. package/src/components/tabs/tab-panel.ts +25 -13
  207. package/src/components/tabs/tab.ts +58 -33
  208. package/src/components/tabs/tabs.ts +77 -15
  209. package/src/components/textarea/textarea.ts +63 -15
  210. package/src/components/theme-toggle/theme-toggle.constants.ts +2 -0
  211. package/src/components/theme-toggle/theme-toggle.ts +47 -22
  212. package/src/components/vertical-nav/vertical-nav-group.ts +57 -18
  213. package/src/components/vertical-nav/vertical-nav-item.ts +35 -12
  214. package/src/styles/globals.css +27 -4
  215. package/src/styles/theme.css +38 -32
  216. package/tsconfig.json +2 -1
  217. package/dist/components/card/card.d.ts +0 -11
  218. package/dist/components/card/card.d.ts.map +0 -1
  219. package/dist/components/card/card.js +0 -54
  220. package/src/components/card/card.ts +0 -53
@@ -4,32 +4,33 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
4
4
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
- import { LitElement, html, css } from 'lit';
8
- import { customElement, property, state } from 'lit/decorators.js';
9
- import { resetStyles } from '../../styles/reset.js';
7
+ import { LitElement, html, css } from "lit";
8
+ import { customElement, property, state } from "lit/decorators.js";
9
+ import { resetStyles } from "../../styles/reset.js";
10
10
  let StPageLayout = class StPageLayout extends LitElement {
11
11
  constructor() {
12
12
  super(...arguments);
13
13
  /**
14
14
  * Defines the structural layout variant to render.
15
15
  */
16
- this.variant = 'single-column';
16
+ this.variant = "single-column";
17
17
  /**
18
18
  * Maximum width for the left sidebar section (e.g., '20rem', '300px').
19
19
  */
20
- this.sidebarWidth = '';
20
+ this.sidebarWidth = "";
21
21
  /**
22
22
  * Maximum width for the right sidebar section (e.g., '16rem', '250px').
23
23
  */
24
- this.rightSidebarWidth = '';
24
+ this.rightSidebarWidth = "";
25
25
  /**
26
26
  * Optional maximum width for the main content area (e.g., '48rem', '800px').
27
27
  */
28
- this.mainMaxWidth = '';
28
+ this.mainMaxWidth = "";
29
29
  /**
30
30
  * When true, expands the main content area to fill 100% of the available width between sidebars.
31
31
  */
32
32
  this.fillMain = false;
33
+ this.clearFooterPadding = false;
33
34
  this._mobileMenuOpen = false;
34
35
  this._touchStartX = 0;
35
36
  this._currentTranslateX = 0;
@@ -43,9 +44,9 @@ let StPageLayout = class StPageLayout extends LitElement {
43
44
  // Only close if an actual navigation link/item was clicked
44
45
  this._handleNavClick = (e) => {
45
46
  const path = e.composedPath();
46
- const clickedLink = path.some(node => {
47
+ const clickedLink = path.some((node) => {
47
48
  const el = node;
48
- return el.tagName === 'A' || el.tagName === 'ST-VERTICAL-NAV-ITEM';
49
+ return el.tagName === "A" || el.tagName === "ST-VERTICAL-NAV-ITEM";
49
50
  });
50
51
  if (clickedLink) {
51
52
  this._closeMobileMenu();
@@ -57,7 +58,7 @@ let StPageLayout = class StPageLayout extends LitElement {
57
58
  this._touchStartX = e.touches[0].clientX;
58
59
  this._isDragging = true;
59
60
  const sidebar = e.currentTarget;
60
- sidebar.style.transition = 'none';
61
+ sidebar.style.transition = "none";
61
62
  };
62
63
  this._handleTouchMove = (e) => {
63
64
  if (!this._isDragging || window.innerWidth >= 768)
@@ -75,13 +76,13 @@ let StPageLayout = class StPageLayout extends LitElement {
75
76
  return;
76
77
  this._isDragging = false;
77
78
  const sidebar = e.currentTarget;
78
- sidebar.style.transition = '';
79
+ sidebar.style.transition = "";
79
80
  if (this._currentTranslateX < -70) {
80
81
  this._closeMobileMenu();
81
- sidebar.style.transform = '';
82
+ sidebar.style.transform = "";
82
83
  }
83
84
  else {
84
- sidebar.style.transform = '';
85
+ sidebar.style.transform = "";
85
86
  }
86
87
  this._currentTranslateX = 0;
87
88
  };
@@ -93,65 +94,74 @@ let StPageLayout = class StPageLayout extends LitElement {
93
94
  }
94
95
  updated(changedProperties) {
95
96
  super.updated(changedProperties);
96
- if (changedProperties.has('sidebarWidth')) {
97
+ if (changedProperties.has("sidebarWidth")) {
97
98
  if (this.sidebarWidth) {
98
- this.style.setProperty('--layout-sidebar-width', this.sidebarWidth);
99
+ this.style.setProperty("--layout-sidebar-width", this.sidebarWidth);
99
100
  }
100
101
  else {
101
- this.style.removeProperty('--layout-sidebar-width');
102
+ this.style.removeProperty("--layout-sidebar-width");
102
103
  }
103
104
  }
104
- if (changedProperties.has('rightSidebarWidth')) {
105
+ if (changedProperties.has("rightSidebarWidth")) {
105
106
  if (this.rightSidebarWidth) {
106
- this.style.setProperty('--layout-right-sidebar-width', this.rightSidebarWidth);
107
+ this.style.setProperty("--layout-right-sidebar-width", this.rightSidebarWidth);
107
108
  }
108
109
  else {
109
- this.style.removeProperty('--layout-right-sidebar-width');
110
+ this.style.removeProperty("--layout-right-sidebar-width");
110
111
  }
111
112
  }
112
- if (changedProperties.has('mainMaxWidth')) {
113
+ if (changedProperties.has("mainMaxWidth")) {
113
114
  if (this.mainMaxWidth) {
114
- this.style.setProperty('--layout-main-max-width', this.mainMaxWidth);
115
+ this.style.setProperty("--layout-main-max-width", this.mainMaxWidth);
115
116
  }
116
117
  else {
117
- this.style.removeProperty('--layout-main-max-width');
118
+ this.style.removeProperty("--layout-main-max-width");
118
119
  }
119
120
  }
120
121
  }
121
122
  connectedCallback() {
122
123
  super.connectedCallback();
123
- window.addEventListener('resize', this._resizeListener);
124
+ window.addEventListener("resize", this._resizeListener);
124
125
  }
125
126
  disconnectedCallback() {
126
127
  super.disconnectedCallback();
127
- window.removeEventListener('resize', this._resizeListener);
128
+ window.removeEventListener("resize", this._resizeListener);
128
129
  }
129
130
  render() {
130
131
  const backdrop = html `
131
- <div
132
- class="mobile-backdrop ${this._mobileMenuOpen ? 'open' : ''}"
132
+ <div
133
+ class="mobile-backdrop ${this._mobileMenuOpen ? "open" : ""}"
133
134
  @click=${this._closeMobileMenu}
134
135
  ></div>
135
136
  `;
136
137
  const hamburgerBtn = html `
137
- <button class="mobile-menu-btn" @click=${this._toggleMobileMenu} aria-label="Open Navigation Menu">
138
+ <button
139
+ class="mobile-menu-btn"
140
+ @click=${this._toggleMobileMenu}
141
+ aria-label="Open Navigation Menu"
142
+ >
138
143
  <svg viewBox="0 0 24 24"><path d="M3 12h18M3 6h18M3 18h18"></path></svg>
139
144
  </button>
140
145
  `;
141
146
  const drawerHeader = html `
142
147
  <div class="mobile-drawer-header">
143
148
  <span class="mobile-drawer-title">Menu</span>
144
- <button class="mobile-close-btn" @click=${this._closeMobileMenu} aria-label="Close Navigation Menu">
149
+ <button
150
+ class="mobile-close-btn"
151
+ @click=${this._closeMobileMenu}
152
+ aria-label="Close Navigation Menu"
153
+ >
145
154
  <svg viewBox="0 0 24 24"><path d="M18 6L6 18M6 6l12 12"></path></svg>
146
155
  </button>
147
156
  </div>
148
157
  `;
149
- if (this.variant === 'app-shell') {
158
+ if (this.variant === "app-shell") {
150
159
  return html `
151
160
  ${backdrop}
152
161
  <div class="layout-app-shell">
153
- <aside
154
- class="app-shell-sidebar ${this._mobileMenuOpen ? 'open' : ''}"
162
+ <aside
163
+ class="app-shell-sidebar ${this._mobileMenuOpen ? "open" : ""}"
164
+ aria-label="Primary Sidebar"
155
165
  @click=${this._handleNavClick}
156
166
  @touchstart=${this._handleTouchStart}
157
167
  @touchmove=${this._handleTouchMove}
@@ -162,17 +172,17 @@ let StPageLayout = class StPageLayout extends LitElement {
162
172
  <slot name="sidebar"></slot>
163
173
  </div>
164
174
  </aside>
165
-
175
+
166
176
  <div class="app-shell-content">
167
177
  <header class="app-shell-nav">
168
178
  ${hamburgerBtn}
169
179
  <slot name="nav"></slot>
170
180
  </header>
171
-
181
+
172
182
  <main class="app-shell-main">
173
183
  <slot></slot>
174
184
  </main>
175
-
185
+
176
186
  <footer class="app-shell-footer">
177
187
  <slot name="footer"></slot>
178
188
  </footer>
@@ -180,34 +190,36 @@ let StPageLayout = class StPageLayout extends LitElement {
180
190
  </div>
181
191
  `;
182
192
  }
183
- if (this.variant === 'content-sidebar') {
193
+ if (this.variant === "content-sidebar") {
184
194
  return html `
185
195
  <div class="layout-content-sidebar">
186
196
  <header class="content-sidebar-nav">
187
- <div style="display: flex; align-items: center; padding: 0 var(--st-spacing-md); height: var(--layout-nav-height);">
197
+ <div
198
+ style="display: flex; align-items: center; padding: 0 var(--st-spacing-md); height: var(--layout-nav-height);"
199
+ >
188
200
  <slot name="nav"></slot>
189
201
  </div>
190
202
  </header>
191
-
203
+
192
204
  <div class="content-sidebar-container">
193
205
  <main class="content-sidebar-main">
194
206
  <slot></slot>
195
207
  </main>
196
-
197
- <aside class="content-sidebar-aside">
208
+
209
+ <aside class="content-sidebar-aside" aria-label="Related Content">
198
210
  <div class="content-sidebar-aside-inner">
199
211
  <slot name="aside"></slot>
200
212
  </div>
201
213
  </aside>
202
214
  </div>
203
-
215
+
204
216
  <footer class="content-sidebar-footer">
205
217
  <slot name="footer"></slot>
206
218
  </footer>
207
219
  </div>
208
220
  `;
209
221
  }
210
- if (this.variant === 'three-column') {
222
+ if (this.variant === "three-column") {
211
223
  return html `
212
224
  ${backdrop}
213
225
  <div class="layout-three-column">
@@ -217,8 +229,9 @@ let StPageLayout = class StPageLayout extends LitElement {
217
229
  </header>
218
230
 
219
231
  <div class="three-column-body">
220
- <aside
221
- class="three-column-sidebar-left ${this._mobileMenuOpen ? 'open' : ''}"
232
+ <aside
233
+ class="three-column-sidebar-left ${this._mobileMenuOpen ? "open" : ""}"
234
+ aria-label="Primary Sidebar"
222
235
  @click=${this._handleNavClick}
223
236
  @touchstart=${this._handleTouchStart}
224
237
  @touchmove=${this._handleTouchMove}
@@ -234,7 +247,7 @@ let StPageLayout = class StPageLayout extends LitElement {
234
247
  <slot></slot>
235
248
  </main>
236
249
 
237
- <aside class="three-column-sidebar-right">
250
+ <aside class="three-column-sidebar-right" aria-label="Secondary Sidebar">
238
251
  <div class="three-column-sidebar-right-inner">
239
252
  <slot name="sidebar-right"></slot>
240
253
  </div>
@@ -250,16 +263,20 @@ let StPageLayout = class StPageLayout extends LitElement {
250
263
  return html `
251
264
  <div class="layout-single-column">
252
265
  <header class="single-column-nav">
253
- <div style="display: flex; align-items: center; padding: 0 var(--st-spacing-md); height: var(--layout-nav-height);">
266
+ <div
267
+ style="display: flex; align-items: center; padding: 0 var(--st-spacing-md); height: var(--layout-nav-height);"
268
+ >
254
269
  <slot name="nav"></slot>
255
270
  </div>
256
271
  </header>
257
-
272
+
258
273
  <main class="single-column-main">
259
274
  <slot></slot>
260
275
  </main>
261
-
262
- <footer class="single-column-footer">
276
+
277
+ <footer
278
+ class="single-column-footer ${this.clearFooterPadding ? "clear-footer-padding" : ""}"
279
+ >
263
280
  <slot name="footer"></slot>
264
281
  </footer>
265
282
  </div>
@@ -281,7 +298,9 @@ StPageLayout.styles = [
281
298
  --layout-nav-height: 4rem;
282
299
  }
283
300
 
284
- *, *::before, *::after {
301
+ *,
302
+ *::before,
303
+ *::after {
285
304
  box-sizing: inherit;
286
305
  }
287
306
 
@@ -406,7 +425,7 @@ StPageLayout.styles = [
406
425
  overflow: hidden;
407
426
  background-color: var(--layout-surface-color);
408
427
  }
409
-
428
+
410
429
  .app-shell-sidebar {
411
430
  display: none;
412
431
  border-right: 1px solid var(--layout-border-color);
@@ -417,14 +436,14 @@ StPageLayout.styles = [
417
436
  flex: 1;
418
437
  overflow-y: auto;
419
438
  }
420
-
439
+
421
440
  .app-shell-content {
422
441
  display: flex;
423
442
  flex-direction: column;
424
443
  flex: 1;
425
444
  width: 100%;
426
445
  }
427
-
446
+
428
447
  .app-shell-nav {
429
448
  height: var(--layout-nav-height);
430
449
  border-bottom: 1px solid var(--layout-border-color);
@@ -433,13 +452,13 @@ StPageLayout.styles = [
433
452
  align-items: center;
434
453
  padding: 0 var(--st-spacing-md);
435
454
  }
436
-
455
+
437
456
  .app-shell-main {
438
457
  flex: 1;
439
458
  overflow-y: auto;
440
459
  padding: var(--st-spacing-lg);
441
460
  }
442
-
461
+
443
462
  .app-shell-footer {
444
463
  background: var(--layout-bg-color);
445
464
  border-top: 1px solid var(--layout-border-color);
@@ -465,12 +484,12 @@ StPageLayout.styles = [
465
484
  flex-direction: column;
466
485
  background: var(--layout-bg-color);
467
486
  }
468
-
487
+
469
488
  .content-sidebar-nav {
470
489
  border-bottom: 1px solid var(--layout-border-color);
471
490
  background: var(--layout-bg-color);
472
491
  }
473
-
492
+
474
493
  .content-sidebar-container {
475
494
  flex: 1;
476
495
  width: 100%;
@@ -481,17 +500,17 @@ StPageLayout.styles = [
481
500
  flex-direction: column;
482
501
  gap: var(--st-spacing-xl);
483
502
  }
484
-
503
+
485
504
  .content-sidebar-main {
486
505
  flex: 1;
487
506
  max-width: 48rem;
488
507
  }
489
-
508
+
490
509
  .content-sidebar-aside {
491
510
  width: 100%;
492
511
  flex-shrink: 0;
493
512
  }
494
-
513
+
495
514
  .content-sidebar-footer {
496
515
  margin-top: auto;
497
516
  border-top: 1px solid var(--layout-border-color);
@@ -522,7 +541,7 @@ StPageLayout.styles = [
522
541
  flex-direction: column;
523
542
  background: var(--layout-bg-color);
524
543
  }
525
-
544
+
526
545
  .single-column-nav {
527
546
  position: sticky;
528
547
  top: 0;
@@ -531,13 +550,13 @@ StPageLayout.styles = [
531
550
  background: var(--layout-bg-color);
532
551
  border-bottom: 1px solid var(--layout-border-color);
533
552
  }
534
-
553
+
535
554
  .single-column-main {
536
555
  flex: 1;
537
556
  display: flex;
538
557
  flex-direction: column;
539
558
  }
540
-
559
+
541
560
  .single-column-footer {
542
561
  margin-top: auto;
543
562
  }
@@ -625,6 +644,10 @@ StPageLayout.styles = [
625
644
  padding: var(--st-spacing-lg);
626
645
  }
627
646
 
647
+ :host([clear-footer-padding]) footer {
648
+ padding: 0;
649
+ }
650
+
628
651
  @media (min-width: 768px) {
629
652
  .three-column-sidebar-left {
630
653
  display: block;
@@ -671,27 +694,31 @@ StPageLayout.styles = [
671
694
  overflow-y: auto;
672
695
  }
673
696
  }
674
- `
697
+ `,
675
698
  ];
676
699
  __decorate([
677
700
  property({ type: String, reflect: true })
678
701
  ], StPageLayout.prototype, "variant", void 0);
679
702
  __decorate([
680
- property({ type: String, attribute: 'sidebar-width' })
703
+ property({ type: String, attribute: "sidebar-width" })
681
704
  ], StPageLayout.prototype, "sidebarWidth", void 0);
682
705
  __decorate([
683
- property({ type: String, attribute: 'right-sidebar-width' })
706
+ property({ type: String, attribute: "right-sidebar-width" })
684
707
  ], StPageLayout.prototype, "rightSidebarWidth", void 0);
685
708
  __decorate([
686
- property({ type: String, attribute: 'main-max-width' })
709
+ property({ type: String, attribute: "main-max-width" })
687
710
  ], StPageLayout.prototype, "mainMaxWidth", void 0);
688
711
  __decorate([
689
- property({ type: Boolean, attribute: 'fill-main', reflect: true })
712
+ property({ type: Boolean, attribute: "fill-main", reflect: true })
690
713
  ], StPageLayout.prototype, "fillMain", void 0);
714
+ __decorate([
715
+ property({ type: Boolean, attribute: "clear-footer-padding", reflect: true })
716
+ ], StPageLayout.prototype, "clearFooterPadding", void 0);
691
717
  __decorate([
692
718
  state()
693
719
  ], StPageLayout.prototype, "_mobileMenuOpen", void 0);
694
720
  StPageLayout = __decorate([
695
- customElement('st-page-layout')
721
+ customElement("st-page-layout")
696
722
  ], StPageLayout);
697
723
  export { StPageLayout };
724
+ //# sourceMappingURL=page-layout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"page-layout.js","sourceRoot":"","sources":["../../../src/components/page-layout/page-layout.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,13 @@
1
1
  import { LitElement } from "lit";
2
2
  export declare class StRadio extends LitElement {
3
+ static shadowRootOptions: {
4
+ clonable?: boolean;
5
+ customElementRegistry?: CustomElementRegistry | null;
6
+ mode: ShadowRootMode;
7
+ serializable?: boolean;
8
+ slotAssignment?: SlotAssignmentMode;
9
+ delegatesFocus: boolean;
10
+ };
3
11
  value: string;
4
12
  checked: boolean;
5
13
  disabled: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"radio.d.ts","sourceRoot":"","sources":["../../../src/components/radio/radio.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAY,MAAM,KAAK,CAAC;AAI1C,qBACa,OAAQ,SAAQ,UAAU;IACX,KAAK,SAAM;IACK,OAAO,UAAS;IAChB,QAAQ,UAAS;IAEtB,SAAS,SAAM;IAEpD,MAAM,CAAC,MAAM,4BAyFX;IAEF,OAAO,CAAC,aAAa;IAgBrB,MAAM,yCAeL;CACF;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,UAAU,EAAE,OAAO,CAAC;KACrB;CACF"}
1
+ {"version":3,"file":"radio.d.ts","sourceRoot":"","sources":["../../../src/components/radio/radio.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAY,MAAM,KAAK,CAAC;AAK1C,qBACa,OAAQ,SAAQ,UAAU;IACrC,MAAM,CAAC,iBAAiB;;;;;;;MAA2D;IAEzD,KAAK,SAAM;IACK,OAAO,UAAS;IAChB,QAAQ,UAAS;IACtB,SAAS,SAAM;IAEpD,MAAM,CAAC,MAAM,4BAoFX;IAEF,OAAO,CAAC,aAAa;IAcrB,MAAM,yCAeL;CACF;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,UAAU,EAAE,OAAO,CAAC;KACrB;CACF"}
@@ -6,6 +6,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import { LitElement, html, css } from "lit";
8
8
  import { customElement, property } from "lit/decorators.js";
9
+ import { ifDefined } from "lit/directives/if-defined.js";
9
10
  import { resetStyles } from "../../styles/reset.js";
10
11
  let StRadio = class StRadio extends LitElement {
11
12
  constructor() {
@@ -16,10 +17,8 @@ let StRadio = class StRadio extends LitElement {
16
17
  this.ariaLabel = "";
17
18
  }
18
19
  _handleChange(e) {
19
- // Prevent the native change event from leaking out
20
20
  e.stopPropagation();
21
21
  if (!this.disabled) {
22
- // Dispatch a custom event to tell the parent group this radio was selected
23
22
  this.dispatchEvent(new CustomEvent("st-radio-select", {
24
23
  detail: { value: this.value },
25
24
  bubbles: true,
@@ -32,7 +31,7 @@ let StRadio = class StRadio extends LitElement {
32
31
  <label>
33
32
  <input
34
33
  type="radio"
35
- aria-label=${this.ariaLabel || ""}
34
+ aria-label=${ifDefined(this.ariaLabel || undefined)}
36
35
  .value=${this.value}
37
36
  .checked=${this.checked}
38
37
  ?disabled=${this.disabled}
@@ -44,6 +43,7 @@ let StRadio = class StRadio extends LitElement {
44
43
  `;
45
44
  }
46
45
  };
46
+ StRadio.shadowRootOptions = { ...LitElement.shadowRootOptions, delegatesFocus: true };
47
47
  StRadio.styles = [
48
48
  resetStyles,
49
49
  css `
@@ -62,7 +62,6 @@ StRadio.styles = [
62
62
  font-size: var(--st-font-size-base);
63
63
  }
64
64
 
65
- /* Hide the native input visually, but keep it accessible for screen readers */
66
65
  input {
67
66
  position: absolute;
68
67
  width: 1px;
@@ -75,7 +74,6 @@ StRadio.styles = [
75
74
  border-width: 0;
76
75
  }
77
76
 
78
- /* Custom Radio Circle */
79
77
  .control {
80
78
  display: flex;
81
79
  align-items: center;
@@ -89,45 +87,42 @@ StRadio.styles = [
89
87
  flex-shrink: 0;
90
88
  }
91
89
 
92
- /* Inner Dot (Hidden by default) */
93
90
  .control::after {
94
91
  content: "";
95
92
  width: 0.625rem;
96
93
  height: 0.625rem;
97
94
  border-radius: 50%;
98
- background-color: var(--st-color-bg); /* Matches the dot color to background initially */
95
+ background-color: var(--st-color-bg);
99
96
  transition:
100
97
  transform 0.2s ease,
101
98
  background-color 0.2s ease;
102
99
  transform: scale(0);
103
100
  }
104
101
 
105
- /* Hover State */
106
102
  label:hover .control {
107
103
  border-color: var(--st-color-primary-hover);
108
104
  }
109
105
 
110
- /* Focus State (Driven by the hidden input) */
111
106
  input:focus-visible + .control {
112
107
  box-shadow:
113
108
  0 0 0 2px var(--st-color-bg),
114
109
  0 0 0 4px var(--st-color-primary);
115
110
  }
116
111
 
117
- /* Checked State */
118
112
  :host([checked]) .control {
119
113
  border-color: var(--st-color-primary);
120
114
  background-color: var(--st-color-primary);
121
115
  }
116
+
122
117
  :host([checked]) .control::after {
123
- background-color: var(--st-white); /* White dot inside the primary circle */
118
+ background-color: #ffffff; /* Explicitly white for contrast */
124
119
  transform: scale(1);
125
120
  }
126
121
 
127
- /* Disabled State */
128
122
  :host([disabled]) {
129
123
  pointer-events: none;
130
124
  }
125
+
131
126
  :host([disabled]) label {
132
127
  opacity: 0.5;
133
128
  cursor: not-allowed;
@@ -150,3 +145,4 @@ StRadio = __decorate([
150
145
  customElement("st-radio")
151
146
  ], StRadio);
152
147
  export { StRadio };
148
+ //# sourceMappingURL=radio.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radio.js","sourceRoot":"","sources":["../../../src/components/radio/radio.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAC,UAAU,EAAE,IAAI,EAAE,GAAG,EAAC,MAAM,KAAK,CAAC;AAC1C,OAAO,EAAC,aAAa,EAAE,QAAQ,EAAC,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAC,SAAS,EAAC,MAAM,8BAA8B,CAAC;AACvD,OAAO,EAAC,WAAW,EAAC,MAAM,uBAAuB,CAAC;AAG3C,IAAM,OAAO,GAAb,MAAM,OAAQ,SAAQ,UAAU;IAAhC;;QAGqB,UAAK,GAAG,EAAE,CAAC;QACK,YAAO,GAAG,KAAK,CAAC;QAChB,aAAQ,GAAG,KAAK,CAAC;QACtB,cAAS,GAAG,EAAE,CAAC;IAsHtD,CAAC;IA9BS,aAAa,CAAC,CAAQ;QAC5B,CAAC,CAAC,eAAe,EAAE,CAAC;QAEpB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,aAAa,CAChB,IAAI,WAAW,CAAC,iBAAiB,EAAE;gBACjC,MAAM,EAAE,EAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAC;gBAC3B,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,IAAI;aACf,CAAC,CACH,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAA;;;;uBAIQ,SAAS,CAAC,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC;mBAC1C,IAAI,CAAC,KAAK;qBACR,IAAI,CAAC,OAAO;sBACX,IAAI,CAAC,QAAQ;oBACf,IAAI,CAAC,aAAa;;;;;KAKjC,CAAC;IACJ,CAAC;CACF,CAAA;AA3HQ,yBAAiB,GAAG,EAAC,GAAG,UAAU,CAAC,iBAAiB,EAAE,cAAc,EAAE,IAAI,EAAC,AAA1D,CAA2D;AAO5E,cAAM,GAAG;IACd,WAAW;IACX,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAiFF;CACF,AApFY,CAoFX;AAzFwB;IAAzB,QAAQ,CAAC,EAAC,IAAI,EAAE,MAAM,EAAC,CAAC;sCAAY;AACK;IAAzC,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAC,CAAC;wCAAiB;AAChB;IAAzC,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAC,CAAC;yCAAkB;AACtB;IAApC,QAAQ,CAAC,EAAC,SAAS,EAAE,YAAY,EAAC,CAAC;0CAAgB;AANzC,OAAO;IADnB,aAAa,CAAC,UAAU,CAAC;GACb,OAAO,CA4HnB"}
@@ -6,17 +6,22 @@ export declare class StRadioGroup extends LitElement {
6
6
  value: string;
7
7
  label: string;
8
8
  helpText: string;
9
+ layout: "vertical" | "horizontal";
10
+ required: boolean;
9
11
  disabled: boolean;
10
12
  invalid: boolean;
11
13
  private _radios;
12
14
  constructor();
13
15
  static styles: import("lit").CSSResult[];
16
+ private _handleRadioSelect;
14
17
  connectedCallback(): void;
15
18
  disconnectedCallback(): void;
16
- private _handleRadioSelect;
17
19
  updated(changedProperties: PropertyValues<this>): void;
20
+ private _syncValidity;
18
21
  private _syncRadios;
19
22
  formResetCallback(): void;
23
+ checkValidity(): boolean;
24
+ reportValidity(): boolean;
20
25
  render(): import("lit-html").TemplateResult<1>;
21
26
  }
22
27
  declare global {
@@ -1 +1 @@
1
- {"version":3,"file":"radio-group.d.ts","sourceRoot":"","sources":["../../../src/components/radio-group/radio-group.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAa,cAAc,EAAC,MAAM,KAAK,CAAC;AAK1D,qBACa,YAAa,SAAQ,UAAU;IAC1C,MAAM,CAAC,cAAc,UAAQ;IAC7B,OAAO,CAAC,UAAU,CAAmB;IAEI,IAAI,SAAM;IACzB,KAAK,SAAM;IACX,KAAK,SAAM;IACD,QAAQ,SAAM;IACR,QAAQ,UAAS;IACjB,OAAO,UAAS;IAI1D,OAAO,CAAC,OAAO,CAAa;IAE5B,cAaC;IAED,MAAM,CAAC,MAAM,4BAiDX;IAEF,iBAAiB,SAIhB;IAED,oBAAoB,SAGnB;IAED,OAAO,CAAC,kBAAkB;IAMjB,OAAO,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,QAYvD;IAGD,OAAO,CAAC,WAAW;IAYnB,iBAAiB,SAIhB;IAED,MAAM,yCAYL;CACF;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,gBAAgB,EAAE,YAAY,CAAC;KAChC;CACF"}
1
+ {"version":3,"file":"radio-group.d.ts","sourceRoot":"","sources":["../../../src/components/radio-group/radio-group.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAa,cAAc,EAAC,MAAM,KAAK,CAAC;AAK1D,qBACa,YAAa,SAAQ,UAAU;IAC1C,MAAM,CAAC,cAAc,UAAQ;IAC7B,OAAO,CAAC,UAAU,CAAmB;IAEI,IAAI,SAAM;IACzB,KAAK,SAAM;IACX,KAAK,SAAM;IACD,QAAQ,SAAM;IACT,MAAM,EAAE,UAAU,GAAG,YAAY,CAAc;IAC9C,QAAQ,UAAS;IACjB,QAAQ,UAAS;IACjB,OAAO,UAAS;IAG1D,OAAO,CAAC,OAAO,CAAa;IAE5B,cAYC;IAED,MAAM,CAAC,MAAM,4BA8CX;IAEF,OAAO,CAAC,kBAAkB,CAYxB;IAEF,iBAAiB,SAGhB;IAED,oBAAoB,SAGnB;IAEQ,OAAO,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,QAevD;IAED,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,WAAW;IAWnB,iBAAiB,SAMhB;IAGD,aAAa,YAEZ;IAED,cAAc,YAEb;IAED,MAAM,yCAYL;CACF;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,gBAAgB,EAAE,YAAY,CAAC;KAChC;CACF"}