aeico-components 0.1.8 → 0.1.10

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 (233) hide show
  1. package/README.md +0 -0
  2. package/dist/alert.cjs +20 -29
  3. package/dist/alert.cjs.map +3 -3
  4. package/dist/alert.js +20 -29
  5. package/dist/alert.js.map +3 -3
  6. package/dist/badge.cjs +19 -28
  7. package/dist/badge.cjs.map +3 -3
  8. package/dist/badge.js +19 -28
  9. package/dist/badge.js.map +3 -3
  10. package/dist/breadcrumb.cjs +22 -33
  11. package/dist/breadcrumb.cjs.map +3 -3
  12. package/dist/breadcrumb.js +22 -33
  13. package/dist/breadcrumb.js.map +3 -3
  14. package/dist/button-group.cjs +19 -28
  15. package/dist/button-group.cjs.map +3 -3
  16. package/dist/button-group.js +19 -28
  17. package/dist/button-group.js.map +3 -3
  18. package/dist/button.cjs +19 -29
  19. package/dist/button.cjs.map +3 -3
  20. package/dist/button.js +19 -29
  21. package/dist/button.js.map +3 -3
  22. package/dist/card.cjs +19 -29
  23. package/dist/card.cjs.map +3 -3
  24. package/dist/card.js +19 -29
  25. package/dist/card.js.map +3 -3
  26. package/dist/checkbox.cjs +21 -31
  27. package/dist/checkbox.cjs.map +3 -3
  28. package/dist/checkbox.js +21 -31
  29. package/dist/checkbox.js.map +3 -3
  30. package/dist/copy-button.cjs +25 -33
  31. package/dist/copy-button.cjs.map +2 -2
  32. package/dist/copy-button.js +25 -33
  33. package/dist/copy-button.js.map +3 -3
  34. package/dist/detail-group.cjs +19 -29
  35. package/dist/detail-group.cjs.map +3 -3
  36. package/dist/detail-group.js +19 -29
  37. package/dist/detail-group.js.map +3 -3
  38. package/dist/detail.cjs +19 -29
  39. package/dist/detail.cjs.map +3 -3
  40. package/dist/detail.js +19 -29
  41. package/dist/detail.js.map +3 -3
  42. package/dist/dialog.cjs +24 -32
  43. package/dist/dialog.cjs.map +2 -2
  44. package/dist/dialog.js +24 -32
  45. package/dist/dialog.js.map +3 -3
  46. package/dist/divider.cjs +20 -30
  47. package/dist/divider.cjs.map +3 -3
  48. package/dist/divider.js +20 -30
  49. package/dist/divider.js.map +3 -3
  50. package/dist/drawer.cjs +24 -32
  51. package/dist/drawer.cjs.map +2 -2
  52. package/dist/drawer.js +24 -32
  53. package/dist/drawer.js.map +3 -3
  54. package/dist/dropdown.cjs +31 -43
  55. package/dist/dropdown.cjs.map +3 -3
  56. package/dist/dropdown.js +31 -43
  57. package/dist/dropdown.js.map +3 -3
  58. package/dist/icon-button.cjs +25 -35
  59. package/dist/icon-button.cjs.map +3 -3
  60. package/dist/icon-button.js +25 -35
  61. package/dist/icon-button.js.map +3 -3
  62. package/dist/icon.cjs +20 -26
  63. package/dist/icon.cjs.map +2 -2
  64. package/dist/icon.js +20 -26
  65. package/dist/icon.js.map +2 -2
  66. package/dist/index.cjs +75 -113
  67. package/dist/index.cjs.map +3 -3
  68. package/dist/index.js +75 -113
  69. package/dist/index.js.map +3 -3
  70. package/dist/menu.cjs +20 -31
  71. package/dist/menu.cjs.map +3 -3
  72. package/dist/menu.js +20 -31
  73. package/dist/menu.js.map +3 -3
  74. package/dist/navbar.cjs +19 -29
  75. package/dist/navbar.cjs.map +3 -3
  76. package/dist/navbar.js +19 -29
  77. package/dist/navbar.js.map +3 -3
  78. package/dist/number-input.cjs +21 -31
  79. package/dist/number-input.cjs.map +3 -3
  80. package/dist/number-input.js +21 -31
  81. package/dist/number-input.js.map +3 -3
  82. package/dist/pagination.cjs +24 -33
  83. package/dist/pagination.cjs.map +2 -2
  84. package/dist/pagination.js +24 -33
  85. package/dist/pagination.js.map +3 -3
  86. package/dist/progress-bar.cjs +19 -29
  87. package/dist/progress-bar.cjs.map +3 -3
  88. package/dist/progress-bar.js +19 -29
  89. package/dist/progress-bar.js.map +3 -3
  90. package/dist/radio-group.cjs +24 -35
  91. package/dist/radio-group.cjs.map +3 -3
  92. package/dist/radio-group.js +24 -35
  93. package/dist/radio-group.js.map +3 -3
  94. package/dist/select.cjs +23 -34
  95. package/dist/select.cjs.map +3 -3
  96. package/dist/select.js +23 -34
  97. package/dist/select.js.map +3 -3
  98. package/dist/slider.cjs +21 -32
  99. package/dist/slider.cjs.map +3 -3
  100. package/dist/slider.js +21 -32
  101. package/dist/slider.js.map +3 -3
  102. package/dist/spinner.cjs +19 -29
  103. package/dist/spinner.cjs.map +3 -3
  104. package/dist/spinner.js +19 -29
  105. package/dist/spinner.js.map +3 -3
  106. package/dist/styles/layout.cjs +1 -1
  107. package/dist/styles/layout.js +1 -1
  108. package/dist/styles/radius.cjs +1 -1
  109. package/dist/styles/radius.js +1 -1
  110. package/dist/styles/variables.cjs +1 -1
  111. package/dist/styles/variables.js +1 -1
  112. package/dist/switch.cjs +26 -35
  113. package/dist/switch.cjs.map +3 -3
  114. package/dist/switch.js +26 -35
  115. package/dist/switch.js.map +3 -3
  116. package/dist/tabs.cjs +21 -30
  117. package/dist/tabs.cjs.map +3 -3
  118. package/dist/tabs.js +21 -30
  119. package/dist/tabs.js.map +3 -3
  120. package/dist/tag.cjs +19 -28
  121. package/dist/tag.cjs.map +3 -3
  122. package/dist/tag.js +19 -28
  123. package/dist/tag.js.map +3 -3
  124. package/dist/text-input.cjs +21 -31
  125. package/dist/text-input.cjs.map +3 -3
  126. package/dist/text-input.js +21 -31
  127. package/dist/text-input.js.map +3 -3
  128. package/dist/textarea.cjs +21 -31
  129. package/dist/textarea.cjs.map +3 -3
  130. package/dist/textarea.js +21 -31
  131. package/dist/textarea.js.map +3 -3
  132. package/dist/tooltip.cjs +19 -28
  133. package/dist/tooltip.cjs.map +3 -3
  134. package/dist/tooltip.js +19 -28
  135. package/dist/tooltip.js.map +3 -3
  136. package/dist/tree.cjs +25 -35
  137. package/dist/tree.cjs.map +3 -3
  138. package/dist/tree.js +25 -35
  139. package/dist/tree.js.map +3 -3
  140. package/dist/types/aeico-component.d.ts +1 -1
  141. package/dist/types/aeico-field.d.ts +1 -1
  142. package/dist/types/breadcrumb/breadcrumb-item.d.ts +0 -1
  143. package/dist/types/breadcrumb/breadcrumb.d.ts +2 -3
  144. package/dist/types/button-group/button-group.d.ts +1 -1
  145. package/dist/types/card/card.d.ts +0 -1
  146. package/dist/types/checkbox/checkbox.d.ts +0 -1
  147. package/dist/types/detail/detail.d.ts +0 -1
  148. package/dist/types/detail-group/detail-group.d.ts +1 -2
  149. package/dist/types/divider/divider.d.ts +0 -1
  150. package/dist/types/dropdown/dropdown-button.d.ts +4 -5
  151. package/dist/types/dropdown/dropdown-item.d.ts +3 -4
  152. package/dist/types/dropdown/dropdown.d.ts +4 -5
  153. package/dist/types/icon/icon.d.ts +0 -1
  154. package/dist/types/icon/registry.d.ts +1 -1
  155. package/dist/types/icon-button/icon-button.d.ts +0 -1
  156. package/dist/types/index.d.ts +4 -4
  157. package/dist/types/menu/menu-item.d.ts +3 -4
  158. package/dist/types/menu/menu.d.ts +3 -4
  159. package/dist/types/navbar/navbar.d.ts +5 -6
  160. package/dist/types/number-input/number-input.d.ts +0 -1
  161. package/dist/types/pagination/pagination.d.ts +0 -1
  162. package/dist/types/progress-bar/progress-bar.d.ts +0 -1
  163. package/dist/types/radio-group/radio-group.d.ts +0 -1
  164. package/dist/types/radio-group/radio.d.ts +6 -7
  165. package/dist/types/select/select-option.d.ts +0 -1
  166. package/dist/types/select/select.d.ts +0 -1
  167. package/dist/types/slider/defines.d.ts +5 -5
  168. package/dist/types/slider/slider.d.ts +0 -1
  169. package/dist/types/spinner/spinner.d.ts +1 -2
  170. package/dist/types/switch/switch.d.ts +0 -1
  171. package/dist/types/text-input/text-input.d.ts +0 -1
  172. package/dist/types/textarea/textarea.d.ts +0 -1
  173. package/dist/types/tree/tree-item.d.ts +1 -2
  174. package/dist/types/tree/tree.d.ts +0 -1
  175. package/package.json +5 -3
  176. package/src/aeico-component.ts +6 -5
  177. package/src/aeico-field.ts +2 -2
  178. package/src/alert/alert.ts +2 -2
  179. package/src/badge/badge.ts +2 -2
  180. package/src/breadcrumb/breadcrumb-item.ts +2 -4
  181. package/src/breadcrumb/breadcrumb.ts +4 -6
  182. package/src/button/button.ts +2 -2
  183. package/src/button-group/button-group.ts +3 -3
  184. package/src/card/card.ts +2 -4
  185. package/src/card/defines.ts +1 -1
  186. package/src/card/index.ts +1 -1
  187. package/src/checkbox/checkbox.ts +2 -4
  188. package/src/copy-button/copy-button.ts +1 -1
  189. package/src/detail/detail.ts +2 -4
  190. package/src/detail-group/detail-group.ts +2 -4
  191. package/src/dialog/dialog.ts +2 -2
  192. package/src/divider/divider.ts +2 -4
  193. package/src/drawer/drawer.ts +2 -2
  194. package/src/dropdown/dropdown-button.ts +6 -8
  195. package/src/dropdown/dropdown-item.ts +5 -7
  196. package/src/dropdown/dropdown.ts +7 -9
  197. package/src/icon/icon.ts +2 -4
  198. package/src/icon/registry.ts +1 -1
  199. package/src/icon-button/icon-button.ts +2 -4
  200. package/src/index.ts +4 -4
  201. package/src/menu/menu-item.ts +5 -7
  202. package/src/menu/menu.ts +4 -6
  203. package/src/navbar/navbar.ts +7 -9
  204. package/src/number-input/number-input.ts +1 -3
  205. package/src/pagination/pagination.ts +1 -3
  206. package/src/progress-bar/progress-bar.ts +1 -2
  207. package/src/radio-group/radio-group.ts +5 -7
  208. package/src/radio-group/radio.ts +8 -10
  209. package/src/select/select-option.ts +2 -4
  210. package/src/select/select.ts +4 -6
  211. package/src/slider/defines.ts +5 -5
  212. package/src/slider/slider.ts +5 -8
  213. package/src/spinner/spinner.ts +2 -4
  214. package/src/styles/components/action-button.css +1 -1
  215. package/src/styles/components/alert.css +1 -1
  216. package/src/styles/components/breadcrumb-item.css +2 -2
  217. package/src/styles/components/button.css +0 -1
  218. package/src/styles/components/divider.css +1 -1
  219. package/src/styles/components/dropdown-item.css +2 -2
  220. package/src/styles/components/dropdown.css +1 -1
  221. package/src/styles/layout.css +14 -14
  222. package/src/styles/radius.css +1 -1
  223. package/src/styles/variables.css +14 -16
  224. package/src/switch/switch.ts +2 -4
  225. package/src/tabs/tab-panel.ts +2 -2
  226. package/src/tabs/tab.ts +2 -2
  227. package/src/tabs/tabs.ts +2 -2
  228. package/src/tag/tag.ts +2 -2
  229. package/src/text-input/text-input.ts +2 -4
  230. package/src/textarea/textarea.ts +1 -3
  231. package/src/tooltip/tooltip.ts +1 -1
  232. package/src/tree/tree-item.ts +3 -5
  233. package/src/tree/tree.ts +2 -4
@@ -120,7 +120,7 @@ var require_variables = __commonJS({
120
120
  --ae-cyan-800: color-mix(in srgb, var(--ae-cyan) 40%, black);
121
121
  --ae-cyan-900: color-mix(in srgb, var(--ae-cyan) 20%, black);
122
122
 
123
- /* Gray (neutral \u2014 base #6e6e6e) */
123
+ /* Gray (neutral - base #6e6e6e) */
124
124
  --ae-gray-100: color-mix(in srgb, var(--ae-gray) 20%, white);
125
125
  --ae-gray-200: color-mix(in srgb, var(--ae-gray) 40%, white);
126
126
  --ae-gray-300: color-mix(in srgb, var(--ae-gray) 60%, white);
@@ -131,7 +131,7 @@ var require_variables = __commonJS({
131
131
  --ae-gray-800: color-mix(in srgb, var(--ae-gray) 40%, black);
132
132
  --ae-gray-900: color-mix(in srgb, var(--ae-gray) 20%, black);
133
133
 
134
- /* Slate (blue-gray \u2014 base #64748b, used for 'secondary') */
134
+ /* Slate (blue-gray - base #64748b, used for 'secondary') */
135
135
  --ae-slate-100: color-mix(in srgb, var(--ae-slate) 20%, white);
136
136
  --ae-slate-200: color-mix(in srgb, var(--ae-slate) 40%, white);
137
137
  --ae-slate-300: color-mix(in srgb, var(--ae-slate) 60%, white);
@@ -167,7 +167,7 @@ var require_variables = __commonJS({
167
167
 
168
168
  :root,
169
169
  :host {
170
- /* Hover / active mix (light default \u2014 overridden in \xA7 6 dark) */
170
+ /* Hover / active mix (light default - overridden in \xA7 6 dark) */
171
171
  --ae-color-mix-hover: black 10%;
172
172
  --ae-color-mix-active: black 20%;
173
173
 
@@ -201,7 +201,7 @@ var require_variables = __commonJS({
201
201
  --ae-color-info-active: color-mix(in srgb, var(--ae-color-info), var(--ae-color-mix-active));
202
202
  --ae-color-info-disabled: color-mix(in srgb, var(--ae-cyan) 50%, var(--ae-gray-500));
203
203
 
204
- /* Secondary (Slate) \u2014 base differs per theme, overridden in \xA7 6 dark */
204
+ /* Secondary (Slate) - base differs per theme, overridden in \xA7 6 dark */
205
205
  --ae-color-secondary: var(--ae-slate-500);
206
206
  --ae-color-secondary-hover: color-mix(in srgb, var(--ae-color-secondary), var(--ae-color-mix-hover));
207
207
  --ae-color-secondary-active: color-mix(in srgb, var(--ae-color-secondary), var(--ae-color-mix-active));
@@ -217,7 +217,7 @@ var require_variables = __commonJS({
217
217
  :host {
218
218
  color-scheme: light;
219
219
 
220
- /* Gray UI aliases \u2014 lighter palette steps for elements on white background */
220
+ /* Gray UI aliases - lighter palette steps for elements on white background */
221
221
  --ae-color-gray-dark: var(--ae-gray-400);
222
222
  --ae-color-gray: var(--ae-gray-300);
223
223
  --ae-color-gray-light: var(--ae-gray-200);
@@ -249,7 +249,7 @@ var require_variables = __commonJS({
249
249
  --ae-focus-ring: rgb(from var(--ae-blue) r g b / 0.30);
250
250
  --ae-focus-ring-sm: rgb(from var(--ae-blue) r g b / 0.15);
251
251
 
252
- /* Subtle intent tokens \u2014 light context */
252
+ /* Subtle intent tokens - light context */
253
253
  --ae-color-primary-bg-subtle: rgb(from var(--ae-blue) r g b / 0.08);
254
254
  --ae-color-primary-border-subtle: rgb(from var(--ae-blue) r g b / 0.40);
255
255
  --ae-color-primary-text-emphasis: var(--ae-blue-700);
@@ -280,7 +280,7 @@ var require_variables = __commonJS({
280
280
  --ae-color-dark-bg-subtle: var(--ae-dark-100); /* opaque on white: ~#d6d8d9 */
281
281
  --ae-color-dark-border-subtle: var(--ae-dark-300); /* opaque on white: ~#85898c */
282
282
 
283
- /* Component tokens \u2014 light defaults */
283
+ /* Component tokens - light defaults */
284
284
  --ae-action-btn-bg: var(--ae-gray-200);
285
285
  --ae-action-btn-bg-hover: var(--ae-color-primary);
286
286
  --ae-action-btn-color: var(--ae-gray-600);
@@ -315,14 +315,12 @@ var require_variables = __commonJS({
315
315
  --ae-size-3xs: round(calc(var(--ae-size-2xs) / 1.125), 1px); /* 10px */
316
316
  }
317
317
 
318
- /* Border-radius tokens \u2014 shared across all components */
318
+ /* Border-radius tokens - shared across all components */
319
319
  :root,
320
320
  :host {
321
321
  /**
322
322
  * Unified border-radius hook for all components.
323
323
  *
324
- * Not set by default \u2014 each component falls back to its own --ae-radius-*
325
- * token (e.g. button \u2192 sm, card \u2192 lg, input \u2192 xs).
326
324
  *
327
325
  * Usage:
328
326
  * :root { --ae-border-radius: 0; } // global: all components square
@@ -344,7 +342,7 @@ var require_variables = __commonJS({
344
342
  --ae-radius-circle: 50%;
345
343
  }
346
344
 
347
- /* Layout tokens \u2014 defined on :root so all light DOM elements can use them */
345
+ /* Layout tokens - defined on :root so all light DOM elements can use them */
348
346
  :root,
349
347
  :host {
350
348
  --container-max-width: 1280px;
@@ -357,18 +355,18 @@ var require_variables = __commonJS({
357
355
  :host-context([theme="dark"]) {
358
356
  color-scheme: dark;
359
357
 
360
- /* Hover / active \u2014 slightly gentler on dark backgrounds */
358
+ /* Hover / active - slightly gentler on dark backgrounds */
361
359
  --ae-color-mix-hover: black 8%;
362
360
  --ae-color-mix-active: black 16%;
363
361
 
364
- /* Gray UI aliases \u2014 darker palette steps for elements on dark background */
362
+ /* Gray UI aliases - darker palette steps for elements on dark background */
365
363
  --ae-color-gray-dark: var(--ae-gray-800);
366
364
  --ae-color-gray: var(--ae-gray-700);
367
365
  --ae-color-gray-light: var(--ae-gray-600);
368
366
  --ae-color-gray-lighter: var(--ae-gray-500);
369
367
  --ae-color-gray-lightest: var(--ae-gray-400);
370
368
 
371
- /* Secondary \u2014 deeper base on dark background */
369
+ /* Secondary - deeper base on dark background */
372
370
  --ae-color-secondary: var(--ae-slate-700);
373
371
  --ae-color-secondary-text: var(--ae-slate-300);
374
372
 
@@ -397,7 +395,7 @@ var require_variables = __commonJS({
397
395
  --ae-focus-ring: rgb(from var(--ae-blue) r g b / 0.25);
398
396
  --ae-focus-ring-sm: rgb(from var(--ae-blue) r g b / 0.10);
399
397
 
400
- /* Subtle intent tokens \u2014 dark context (more alpha, lighter text-emphasis) */
398
+ /* Subtle intent tokens - dark context (more alpha, lighter text-emphasis) */
401
399
  --ae-color-primary-bg-subtle: rgb(from var(--ae-blue) r g b / 0.10);
402
400
  --ae-color-primary-border-subtle: rgb(from var(--ae-blue) r g b / 0.30);
403
401
  --ae-color-primary-text-emphasis: var(--ae-blue-300);
@@ -428,7 +426,7 @@ var require_variables = __commonJS({
428
426
  --ae-color-dark-bg-subtle: rgb(from var(--ae-dark) r g b / 0.30);
429
427
  --ae-color-dark-border-subtle: rgb(from var(--ae-dark) r g b / 0.50);
430
428
 
431
- /* Component tokens \u2014 dark overrides */
429
+ /* Component tokens - dark overrides */
432
430
  --ae-action-btn-bg: var(--ae-color-gray);
433
431
  --ae-action-btn-bg-hover: color-mix(in srgb, var(--ae-blue) 25%, var(--ae-gray-800));
434
432
  --ae-action-btn-color: var(--ae-gray-400);
@@ -464,7 +462,7 @@ var require_field_label = __commonJS({
464
462
  // css-inline:/home/runner/work/aeico-components/aeico-components/src/styles/components/action-button.css
465
463
  var require_action_button = __commonJS({
466
464
  "css-inline:/home/runner/work/aeico-components/aeico-components/src/styles/components/action-button.css"(exports2, module2) {
467
- module2.exports = "/* Action button base styles \u2014 shared by clear-btn and reset-btn (standalone mode) */\n.clear-btn:not(.action-btn),\n.reset-btn:not(.action-btn) {\n width: 1.333em;\n height: 1.333em;\n border: none;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n line-height: 1;\n}\n\n.clear-btn:not(.action-btn) {\n border-radius: var(--ae-clear-btn-border-radius);\n background: var(--ae-clear-btn-bg);\n color: var(--ae-clear-btn-color);\n transition: var(--ae-clear-btn-transition);\n}\n\n.reset-btn:not(.action-btn) {\n border-radius: var(--ae-reset-btn-border-radius);\n background: var(--ae-reset-btn-bg);\n color: var(--ae-reset-btn-color);\n transition: var(--ae-reset-btn-transition);\n}\n\n.clear-btn:not(.action-btn):hover {\n background: var(--ae-clear-btn-bg-hover);\n color: var(--ae-clear-btn-color-hover);\n}\n\n.reset-btn:not(.action-btn):hover {\n background: var(--ae-reset-btn-bg-hover);\n color: var(--ae-reset-btn-color-hover);\n}\n";
465
+ module2.exports = "/* Action button base styles - shared by clear-btn and reset-btn (standalone mode) */\n.clear-btn:not(.action-btn),\n.reset-btn:not(.action-btn) {\n width: 1.333em;\n height: 1.333em;\n border: none;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n line-height: 1;\n}\n\n.clear-btn:not(.action-btn) {\n border-radius: var(--ae-clear-btn-border-radius);\n background: var(--ae-clear-btn-bg);\n color: var(--ae-clear-btn-color);\n transition: var(--ae-clear-btn-transition);\n}\n\n.reset-btn:not(.action-btn) {\n border-radius: var(--ae-reset-btn-border-radius);\n background: var(--ae-reset-btn-bg);\n color: var(--ae-reset-btn-color);\n transition: var(--ae-reset-btn-transition);\n}\n\n.clear-btn:not(.action-btn):hover {\n background: var(--ae-clear-btn-bg-hover);\n color: var(--ae-clear-btn-color-hover);\n}\n\n.reset-btn:not(.action-btn):hover {\n background: var(--ae-reset-btn-bg-hover);\n color: var(--ae-reset-btn-color-hover);\n}\n";
468
466
  }
469
467
  });
470
468
 
@@ -482,19 +480,12 @@ var import_aeico2 = require("aeico");
482
480
 
483
481
  // src/aeico-component.ts
484
482
  var import_aeico = require("aeico");
485
-
486
- // src/utils.ts
487
- function toKebab(str) {
488
- const cleaned = str.replace(/^[_\d]+/, "");
489
- return cleaned.replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase();
490
- }
491
-
492
- // src/aeico-component.ts
493
483
  var TAG_NAME_PREFIX = "ae";
494
484
  var AeicoComponent = class extends import_aeico.AeicoElement {
495
- static register(name) {
496
- const tagName = name || `${TAG_NAME_PREFIX}-${this.tagName || toKebab(this.name)}`;
497
- super.register(tagName);
485
+ static define(name) {
486
+ const prefix = `${TAG_NAME_PREFIX}-`;
487
+ const tagName = name.startsWith(prefix) ? name : `${prefix}${name}`;
488
+ super.define(tagName);
498
489
  }
499
490
  };
500
491
  var aeico_component_default = AeicoComponent;
@@ -649,7 +640,7 @@ var AeicoField = class _AeicoField extends aeico_component_default {
649
640
  }
650
641
  }
651
642
  /**
652
- * Watcher for error property syncs aria-invalid on the field element
643
+ * Watcher for error property - syncs aria-invalid on the field element
653
644
  */
654
645
  onErrorChanged(newValue) {
655
646
  if (this.fieldElement) {
@@ -798,7 +789,6 @@ var RadioGroup = class _RadioGroup extends aeico_field_default {
798
789
  _slotOptions = [];
799
790
  static _instanceCount = 0;
800
791
  _groupName;
801
- static tagName = "radio-group";
802
792
  static props = {
803
793
  options: { type: Array },
804
794
  mode: { type: String },
@@ -842,7 +832,7 @@ var RadioGroup = class _RadioGroup extends aeico_field_default {
842
832
  );
843
833
  this.update();
844
834
  }
845
- // Single handler for radio inputs handles both select and deselect.
835
+ // Single handler for radio inputs - handles both select and deselect.
846
836
  // Only uses `click` (not `change`) because `change` fires before `click`;
847
837
  // if we set value in `change`, the `click` handler would see the updated
848
838
  // value and immediately deselect.
@@ -952,20 +942,19 @@ var RadioGroup = class _RadioGroup extends aeico_field_default {
952
942
  }
953
943
  }
954
944
  };
955
- RadioGroup.register();
945
+ RadioGroup.define("radio-group");
956
946
  var radio_group_default = RadioGroup;
957
947
 
958
948
  // src/radio-group/radio.ts
959
949
  var Radio = class extends aeico_component_default {
960
- static tagName = "radio";
961
- /** No shadow DOM — this element is a transparent data/content carrier. */
950
+ /** No shadow DOM - this element is a transparent data/content carrier. */
962
951
  static useShadowDOM = false;
963
952
  static props = {
964
953
  value: { type: String },
965
954
  disabled: { type: Boolean }
966
955
  };
967
956
  };
968
- Radio.register();
957
+ Radio.define("radio");
969
958
  var radio_default = Radio;
970
959
  // Annotate the CommonJS export names for ESM import in node:
971
960
  0 && (module.exports = {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["css-inline:/home/runner/work/aeico-components/aeico-components/src/styles/components/radio-group.css", "css-inline:/home/runner/work/aeico-components/aeico-components/src/styles/variables.css", "css-inline:/home/runner/work/aeico-components/aeico-components/src/styles/size.css", "css-inline:/home/runner/work/aeico-components/aeico-components/src/styles/color.css", "css-inline:/home/runner/work/aeico-components/aeico-components/src/styles/components/field-label.css", "css-inline:/home/runner/work/aeico-components/aeico-components/src/styles/components/action-button.css", "../src/radio-group/index.ts", "../src/aeico-field.ts", "../src/aeico-component.ts", "../src/utils.ts", "../src/radio-group/radio-group.ts", "../src/radio-group/radio.ts"],
4
- "sourcesContent": ["module.exports = \":host {\\n display: inline-flex;\\n align-items: center;\\n gap: var(--rg-gap, 0.286em);\\n font-size: var(--ae-size-m);\\n\\n --rg-font-size: 1em;\\n --rg-height: 2.286em;\\n --rg-padding: 0.429em 1.071em;\\n --rg-min-width: 4.571em;\\n --rg-radius: 4px;\\n --rg-font-weight: 400;\\n}\\n\\n:host([size=\\\"xs\\\"]) { --rg-radius: 3px; }\\n:host([size=\\\"sm\\\"]) { --rg-radius: 3px; }\\n\\n.rg-container {\\n display: inline-flex;\\n align-items: center;\\n flex-wrap: wrap;\\n gap: 6px;\\n}\\n\\n:host(:not([mode])) .rg-container .action-controls,\\n:host([mode=\\\"default\\\"]) .rg-container .action-controls {\\n display: flex;\\n align-self: center;\\n margin-left: 2px;\\n border: 1px solid var(--field-action-border-color, var(--ae-border-subtle));\\n border-radius: var(--rg-radius);\\n overflow: hidden;\\n background: var(--field-action-bg, var(--ae-surface-base));\\n height: 1.333em;\\n box-sizing: border-box;\\n}\\n\\n:host(:not([mode])) .rg-container .action-controls .action-btn,\\n:host([mode=\\\"default\\\"]) .rg-container .action-controls .action-btn {\\n padding: 0 0.35em;\\n font-size: 0.7em;\\n}\\n\\nslot {\\n display: none;\\n}\\n\\n.rg-radio-option {\\n display: inline-flex;\\n align-items: center;\\n gap: 6px;\\n cursor: pointer;\\n font-size: var(--rg-font-size);\\n color: var(--ae-color-text-main);\\n user-select: none;\\n}\\n\\n.rg-radio-input {\\n width: 14px;\\n height: 14px;\\n accent-color: var(--ae-color-solid, var(--ae-color-primary));\\n cursor: pointer;\\n margin: 0;\\n flex-shrink: 0;\\n}\\n\\n.rg-radio-label {\\n line-height: 1.5;\\n}\\n\\n.rg-btn {\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n font-family: inherit;\\n font-size: var(--rg-font-size);\\n font-weight: 400;\\n height: var(--rg-height);\\n padding: var(--rg-padding);\\n min-width: var(--rg-min-width);\\n white-space: nowrap;\\n cursor: pointer;\\n user-select: none;\\n transition: background 0.15s, color 0.15s, border-color 0.15s, box-shadow 0.15s;\\n outline: none;\\n border-radius: var(--rg-radius);\\n\\n background: var(--ae-surface-base);\\n border: 1px solid var(--ae-color-gray-light);\\n color: var(--ae-color-text-muted);\\n}\\n\\n.rg-btn:hover:not(:disabled):not(.selected) {\\n background: var(--ae-surface-base-hover);\\n border-color: var(--ae-color-gray-light);\\n color: var(--ae-color-text-main);\\n}\\n\\n.rg-btn.selected {\\n background: var(--ae-color-solid);\\n border-color: var(--ae-color-solid);\\n color: var(--ae-color-on-solid);\\n font-weight: 500;\\n box-shadow: 0 1px 4px rgb(from black r g b / 0.22);\\n}\\n\\n.rg-btn.selected:hover:not(:disabled) {\\n background: var(--ae-color-solid-hover);\\n border-color: var(--ae-color-solid-hover);\\n}\\n\\n.rg-btn:active:not(:disabled):not(.selected) {\\n background: var(--ae-color-subtle-hover);\\n transform: translateY(1px);\\n}\\n\\n.rg-btn:disabled {\\n opacity: 0.45;\\n cursor: not-allowed;\\n pointer-events: none;\\n}\\n\\n:host([variant=\\\"outlined\\\"]) .rg-btn {\\n background: transparent;\\n border-color: var(--ae-color-border);\\n color: var(--ae-color-accent);\\n}\\n:host([variant=\\\"outlined\\\"]) .rg-btn:hover:not(:disabled):not(.selected) {\\n background: var(--ae-color-subtle);\\n border-color: var(--ae-color-accent);\\n color: var(--ae-color-accent-hover);\\n}\\n:host([variant=\\\"outlined\\\"]) .rg-btn.selected {\\n background: var(--ae-color-solid);\\n border-color: var(--ae-color-solid);\\n color: var(--ae-color-on-solid);\\n}\\n\\n:host([variant=\\\"subtle\\\"]) .rg-btn {\\n background: transparent;\\n border-color: transparent;\\n color: var(--ae-color-accent);\\n}\\n:host([variant=\\\"subtle\\\"]) .rg-btn:hover:not(:disabled):not(.selected) {\\n background: var(--ae-color-subtle);\\n border-color: transparent;\\n color: var(--ae-color-accent-hover);\\n}\\n:host([variant=\\\"subtle\\\"]) .rg-btn.selected {\\n background: var(--ae-color-subtle-hover);\\n border-color: transparent;\\n color: var(--ae-color-accent-hover);\\n font-weight: 600;\\n box-shadow: none;\\n}\\n\\n:host([variant=\\\"filled\\\"]) .rg-btn:not(.selected) {\\n background: var(--ae-surface-base);\\n border-color: var(--ae-border-default);\\n color: var(--ae-color-text-muted);\\n}\\n\\n:host([variant=\\\"filled\\\"]) .rg-btn:hover:not(:disabled):not(.selected) {\\n background: var(--ae-surface-raised);\\n border-color: var(--ae-border-hover);\\n color: var(--ae-color-text-main);\\n}\\n\\n:host([mode=\\\"button\\\"]) .rg-container {\\n gap: 6px;\\n}\\n\\n:host([mode=\\\"button-group\\\"]) .rg-container {\\n gap: 0;\\n}\\n\\n:host([mode=\\\"button-group\\\"]) .rg-btn:not(.first):not(.only) {\\n margin-left: -1px;\\n}\\n\\n:host([mode=\\\"button-group\\\"]) .rg-btn.first {\\n border-radius: var(--rg-radius) 0 0 var(--rg-radius);\\n}\\n:host([mode=\\\"button-group\\\"]) .rg-btn.inner {\\n border-radius: var(--ae-radius-square);\\n}\\n:host([mode=\\\"button-group\\\"]) .rg-btn.last {\\n border-radius: 0 var(--rg-radius) var(--rg-radius) 0;\\n}\\n:host([mode=\\\"button-group\\\"]) .rg-btn.only {\\n border-radius: var(--rg-radius);\\n}\\n\\n:host([mode=\\\"button-group\\\"]) .rg-btn:hover:not(:disabled),\\n:host([mode=\\\"button-group\\\"]) .rg-btn.selected {\\n position: relative;\\n z-index: 1;\\n}\\n\\n:host([mode=\\\"segmented\\\"]) .rg-container {\\n gap: 2px;\\n background: var(--ae-surface-raised);\\n border: 1px solid var(--ae-border-subtle);\\n border-radius: calc(var(--rg-radius) + 2px);\\n padding: 2px;\\n flex-wrap: nowrap;\\n}\\n\\n:host([mode=\\\"segmented\\\"]) .rg-btn {\\n background: transparent;\\n border-color: transparent;\\n color: var(--ae-color-text-muted);\\n border-radius: var(--rg-radius);\\n min-width: var(--rg-min-width);\\n box-shadow: none;\\n font-weight: 400;\\n}\\n\\n:host([mode=\\\"segmented\\\"]) .rg-btn:hover:not(:disabled):not(.selected) {\\n background: var(--ae-color-subtle);\\n border-color: transparent;\\n color: var(--ae-color-text-secondary, var(--ae-color-text-main));\\n}\\n\\n:host([mode=\\\"segmented\\\"]) .rg-btn.selected {\\n background: var(--ae-color-solid);\\n border-color: transparent;\\n color: var(--ae-color-on-solid);\\n font-weight: 500;\\n box-shadow: 0 1px 4px rgb(from black r g b / 0.35);\\n}\\n\\n:host([mode=\\\"segmented\\\"]) .rg-btn.selected:hover:not(:disabled) {\\n background: var(--ae-color-solid-hover);\\n}\\n\\n:host([mode=\\\"segmented\\\"]:not([color])) .rg-btn.selected {\\n background: var(--ae-color-gray-lighter);\\n color: var(--ae-color-text-main);\\n}\\n\\n:host([mode=\\\"segmented\\\"][variant=\\\"outlined\\\"]) .rg-container {\\n border-color: var(--ae-color-border);\\n}\\n:host([mode=\\\"segmented\\\"][variant=\\\"outlined\\\"]) .rg-btn.selected {\\n background: var(--ae-color-solid);\\n border-color: transparent;\\n color: var(--ae-color-on-solid);\\n}\\n\\n:host([mode=\\\"button\\\"]) .reset-btn,\\n:host([mode=\\\"button\\\"]) .clear-btn,\\n:host([mode=\\\"button-group\\\"]) .reset-btn,\\n:host([mode=\\\"button-group\\\"]) .clear-btn,\\n:host([mode=\\\"segmented\\\"]) .reset-btn,\\n:host([mode=\\\"segmented\\\"]) .clear-btn {\\n height: var(--rg-height);\\n width: var(--rg-height);\\n border-radius: var(--rg-radius);\\n font-size: var(--rg-font-size);\\n}\\n\\n:host([mode=\\\"button\\\"]) .reset-btn,\\n:host([mode=\\\"button\\\"]) .clear-btn,\\n:host([mode=\\\"button-group\\\"]) .reset-btn,\\n:host([mode=\\\"button-group\\\"]) .clear-btn,\\n:host([mode=\\\"segmented\\\"]) .reset-btn,\\n:host([mode=\\\"segmented\\\"]) .clear-btn {\\n background: transparent;\\n border: 1px solid var(--ae-color-gray-light);\\n color: var(--ae-color-text-muted);\\n}\\n\\n:host([mode=\\\"button\\\"]) .reset-btn:hover,\\n:host([mode=\\\"button-group\\\"]) .reset-btn:hover,\\n:host([mode=\\\"segmented\\\"]) .reset-btn:hover {\\n background: var(--ae-border-subtle);\\n border-color: var(--ae-color-gray-lighter);\\n color: var(--ae-color-text-main);\\n}\\n\\n:host([mode=\\\"button\\\"]) .clear-btn:hover,\\n:host([mode=\\\"button-group\\\"]) .clear-btn:hover,\\n:host([mode=\\\"segmented\\\"]) .clear-btn:hover {\\n background: rgb(from var(--ae-red) r g b / 0.10);\\n border-color: var(--ae-color-gray-lighter);\\n color: var(--ae-color-danger);\\n}\\n\\n:host([variant=\\\"outlined\\\"][mode=\\\"button\\\"]) .reset-btn,\\n:host([variant=\\\"outlined\\\"][mode=\\\"button\\\"]) .clear-btn,\\n:host([variant=\\\"outlined\\\"][mode=\\\"button-group\\\"]) .reset-btn,\\n:host([variant=\\\"outlined\\\"][mode=\\\"button-group\\\"]) .clear-btn,\\n:host([variant=\\\"outlined\\\"][mode=\\\"segmented\\\"]) .reset-btn,\\n:host([variant=\\\"outlined\\\"][mode=\\\"segmented\\\"]) .clear-btn {\\n background: transparent;\\n border-color: var(--ae-color-border);\\n color: var(--ae-color-accent);\\n}\\n\\n:host([variant=\\\"outlined\\\"][mode=\\\"button\\\"]) .reset-btn:hover,\\n:host([variant=\\\"outlined\\\"][mode=\\\"button-group\\\"]) .reset-btn:hover,\\n:host([variant=\\\"outlined\\\"][mode=\\\"segmented\\\"]) .reset-btn:hover {\\n background: var(--ae-border-subtle);\\n border-color: var(--ae-color-border-hover);\\n color: var(--ae-color-accent-hover);\\n}\\n\\n:host([variant=\\\"outlined\\\"][mode=\\\"button\\\"]) .clear-btn:hover,\\n:host([variant=\\\"outlined\\\"][mode=\\\"button-group\\\"]) .clear-btn:hover,\\n:host([variant=\\\"outlined\\\"][mode=\\\"segmented\\\"]) .clear-btn:hover {\\n background: rgb(from var(--ae-red) r g b / 0.10);\\n border-color: var(--ae-color-border-hover);\\n color: var(--ae-color-danger);\\n}\\n\\n:host([variant=\\\"subtle\\\"][mode=\\\"button\\\"]) .reset-btn,\\n:host([variant=\\\"subtle\\\"][mode=\\\"button\\\"]) .clear-btn,\\n:host([variant=\\\"subtle\\\"][mode=\\\"button-group\\\"]) .reset-btn,\\n:host([variant=\\\"subtle\\\"][mode=\\\"button-group\\\"]) .clear-btn,\\n:host([variant=\\\"subtle\\\"][mode=\\\"segmented\\\"]) .reset-btn,\\n:host([variant=\\\"subtle\\\"][mode=\\\"segmented\\\"]) .clear-btn {\\n background: transparent;\\n border-color: transparent;\\n color: var(--ae-color-accent);\\n}\\n\\n:host([variant=\\\"subtle\\\"][mode=\\\"button\\\"]) .reset-btn:hover,\\n:host([variant=\\\"subtle\\\"][mode=\\\"button-group\\\"]) .reset-btn:hover,\\n:host([variant=\\\"subtle\\\"][mode=\\\"segmented\\\"]) .reset-btn:hover {\\n background: var(--ae-border-subtle);\\n border-color: transparent;\\n color: var(--ae-color-accent-hover);\\n}\\n\\n:host([variant=\\\"subtle\\\"][mode=\\\"button\\\"]) .clear-btn:hover,\\n:host([variant=\\\"subtle\\\"][mode=\\\"button-group\\\"]) .clear-btn:hover,\\n:host([variant=\\\"subtle\\\"][mode=\\\"segmented\\\"]) .clear-btn:hover {\\n background: rgb(from var(--ae-red) r g b / 0.10);\\n border-color: transparent;\\n color: var(--ae-color-danger);\\n}\\n\"", "module.exports = \":root,\\n:host {\\n --ae-font-sans-serif: system-ui, -apple-system, \\\"Segoe UI\\\", Roboto, \\\"Helvetica Neue\\\",\\n \\\"Noto Sans\\\", \\\"Liberation Sans\\\", Arial, sans-serif,\\n \\\"Apple Color Emoji\\\", \\\"Segoe UI Emoji\\\", \\\"Segoe UI Symbol\\\", \\\"Noto Color Emoji\\\";\\n --ae-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas,\\n \\\"Liberation Mono\\\", \\\"Courier New\\\", monospace;\\n font-family: var(--ae-font-sans-serif);\\n --ae-blue: #0e639c;\\n --ae-green: #28a745;\\n --ae-red: #dc3545;\\n --ae-yellow: #ffc107;\\n --ae-cyan: #17a2b8;\\n --ae-gray: #6e6e6e;\\n --ae-slate: #64748b;\\n --ae-dark: #343a40;\\n --ae-light: #f8f9fa;\\n}\\n\\n:root,\\n:host {\\n /* Blue */\\n --ae-blue-100: color-mix(in srgb, var(--ae-blue) 20%, white);\\n --ae-blue-200: color-mix(in srgb, var(--ae-blue) 40%, white);\\n --ae-blue-300: color-mix(in srgb, var(--ae-blue) 60%, white);\\n --ae-blue-400: color-mix(in srgb, var(--ae-blue) 80%, white);\\n --ae-blue-500: var(--ae-blue);\\n --ae-blue-600: color-mix(in srgb, var(--ae-blue) 80%, black);\\n --ae-blue-700: color-mix(in srgb, var(--ae-blue) 60%, black);\\n --ae-blue-800: color-mix(in srgb, var(--ae-blue) 40%, black);\\n --ae-blue-900: color-mix(in srgb, var(--ae-blue) 20%, black);\\n\\n /* Green */\\n --ae-green-100: color-mix(in srgb, var(--ae-green) 20%, white);\\n --ae-green-200: color-mix(in srgb, var(--ae-green) 40%, white);\\n --ae-green-300: color-mix(in srgb, var(--ae-green) 60%, white);\\n --ae-green-400: color-mix(in srgb, var(--ae-green) 80%, white);\\n --ae-green-500: var(--ae-green);\\n --ae-green-600: color-mix(in srgb, var(--ae-green) 80%, black);\\n --ae-green-700: color-mix(in srgb, var(--ae-green) 60%, black);\\n --ae-green-800: color-mix(in srgb, var(--ae-green) 40%, black);\\n --ae-green-900: color-mix(in srgb, var(--ae-green) 20%, black);\\n\\n /* Red */\\n --ae-red-100: color-mix(in srgb, var(--ae-red) 20%, white);\\n --ae-red-200: color-mix(in srgb, var(--ae-red) 40%, white);\\n --ae-red-300: color-mix(in srgb, var(--ae-red) 60%, white);\\n --ae-red-400: color-mix(in srgb, var(--ae-red) 80%, white);\\n --ae-red-500: var(--ae-red);\\n --ae-red-600: color-mix(in srgb, var(--ae-red) 80%, black);\\n --ae-red-700: color-mix(in srgb, var(--ae-red) 60%, black);\\n --ae-red-800: color-mix(in srgb, var(--ae-red) 40%, black);\\n --ae-red-900: color-mix(in srgb, var(--ae-red) 20%, black);\\n\\n /* Yellow */\\n --ae-yellow-100: color-mix(in srgb, var(--ae-yellow) 20%, white);\\n --ae-yellow-200: color-mix(in srgb, var(--ae-yellow) 40%, white);\\n --ae-yellow-300: color-mix(in srgb, var(--ae-yellow) 60%, white);\\n --ae-yellow-400: color-mix(in srgb, var(--ae-yellow) 80%, white);\\n --ae-yellow-500: var(--ae-yellow);\\n --ae-yellow-600: color-mix(in srgb, var(--ae-yellow) 80%, black);\\n --ae-yellow-700: color-mix(in srgb, var(--ae-yellow) 60%, black);\\n --ae-yellow-800: color-mix(in srgb, var(--ae-yellow) 40%, black);\\n --ae-yellow-900: color-mix(in srgb, var(--ae-yellow) 20%, black);\\n\\n /* Cyan */\\n --ae-cyan-100: color-mix(in srgb, var(--ae-cyan) 20%, white);\\n --ae-cyan-200: color-mix(in srgb, var(--ae-cyan) 40%, white);\\n --ae-cyan-300: color-mix(in srgb, var(--ae-cyan) 60%, white);\\n --ae-cyan-400: color-mix(in srgb, var(--ae-cyan) 80%, white);\\n --ae-cyan-500: var(--ae-cyan);\\n --ae-cyan-600: color-mix(in srgb, var(--ae-cyan) 80%, black);\\n --ae-cyan-700: color-mix(in srgb, var(--ae-cyan) 60%, black);\\n --ae-cyan-800: color-mix(in srgb, var(--ae-cyan) 40%, black);\\n --ae-cyan-900: color-mix(in srgb, var(--ae-cyan) 20%, black);\\n\\n /* Gray (neutral \u2014 base #6e6e6e) */\\n --ae-gray-100: color-mix(in srgb, var(--ae-gray) 20%, white);\\n --ae-gray-200: color-mix(in srgb, var(--ae-gray) 40%, white);\\n --ae-gray-300: color-mix(in srgb, var(--ae-gray) 60%, white);\\n --ae-gray-400: color-mix(in srgb, var(--ae-gray) 80%, white);\\n --ae-gray-500: var(--ae-gray);\\n --ae-gray-600: color-mix(in srgb, var(--ae-gray) 80%, black);\\n --ae-gray-700: color-mix(in srgb, var(--ae-gray) 60%, black);\\n --ae-gray-800: color-mix(in srgb, var(--ae-gray) 40%, black);\\n --ae-gray-900: color-mix(in srgb, var(--ae-gray) 20%, black);\\n\\n /* Slate (blue-gray \u2014 base #64748b, used for 'secondary') */\\n --ae-slate-100: color-mix(in srgb, var(--ae-slate) 20%, white);\\n --ae-slate-200: color-mix(in srgb, var(--ae-slate) 40%, white);\\n --ae-slate-300: color-mix(in srgb, var(--ae-slate) 60%, white);\\n --ae-slate-400: color-mix(in srgb, var(--ae-slate) 80%, white);\\n --ae-slate-500: var(--ae-slate);\\n --ae-slate-600: color-mix(in srgb, var(--ae-slate) 80%, black);\\n --ae-slate-700: color-mix(in srgb, var(--ae-slate) 60%, black);\\n --ae-slate-800: color-mix(in srgb, var(--ae-slate) 40%, black);\\n --ae-slate-900: color-mix(in srgb, var(--ae-slate) 20%, black);\\n\\n /* Dark (base #343a40) */\\n --ae-dark-100: color-mix(in srgb, var(--ae-dark) 20%, white);\\n --ae-dark-200: color-mix(in srgb, var(--ae-dark) 40%, white);\\n --ae-dark-300: color-mix(in srgb, var(--ae-dark) 60%, white);\\n --ae-dark-400: color-mix(in srgb, var(--ae-dark) 80%, white);\\n --ae-dark-500: var(--ae-dark);\\n --ae-dark-600: color-mix(in srgb, var(--ae-dark) 80%, black);\\n --ae-dark-700: color-mix(in srgb, var(--ae-dark) 60%, black);\\n --ae-dark-800: color-mix(in srgb, var(--ae-dark) 40%, black);\\n --ae-dark-900: color-mix(in srgb, var(--ae-dark) 20%, black);\\n\\n /* Light (base #f8f9fa) */\\n --ae-light-100: color-mix(in srgb, var(--ae-light) 20%, white);\\n --ae-light-200: color-mix(in srgb, var(--ae-light) 40%, white);\\n --ae-light-300: color-mix(in srgb, var(--ae-light) 60%, white);\\n --ae-light-400: color-mix(in srgb, var(--ae-light) 80%, white);\\n --ae-light-500: var(--ae-light);\\n --ae-light-600: color-mix(in srgb, var(--ae-light) 80%, black);\\n --ae-light-700: color-mix(in srgb, var(--ae-light) 60%, black);\\n --ae-light-800: color-mix(in srgb, var(--ae-light) 40%, black);\\n --ae-light-900: color-mix(in srgb, var(--ae-light) 20%, black);\\n}\\n\\n:root,\\n:host {\\n /* Hover / active mix (light default \u2014 overridden in \u00A7 6 dark) */\\n --ae-color-mix-hover: black 10%;\\n --ae-color-mix-active: black 20%;\\n\\n /* Primary (Blue) */\\n --ae-color-primary: var(--ae-blue-500);\\n --ae-color-primary-hover: color-mix(in srgb, var(--ae-color-primary), var(--ae-color-mix-hover));\\n --ae-color-primary-active: color-mix(in srgb, var(--ae-color-primary), var(--ae-color-mix-active));\\n --ae-color-primary-disabled: color-mix(in srgb, var(--ae-blue) 50%, var(--ae-gray-500));\\n\\n /* Success (Green) */\\n --ae-color-success: var(--ae-green-500);\\n --ae-color-success-hover: color-mix(in srgb, var(--ae-color-success), var(--ae-color-mix-hover));\\n --ae-color-success-active: color-mix(in srgb, var(--ae-color-success), var(--ae-color-mix-active));\\n --ae-color-success-disabled: color-mix(in srgb, var(--ae-green) 50%, var(--ae-gray-500));\\n\\n /* Danger (Red) */\\n --ae-color-danger: var(--ae-red-500);\\n --ae-color-danger-hover: color-mix(in srgb, var(--ae-color-danger), var(--ae-color-mix-hover));\\n --ae-color-danger-active: color-mix(in srgb, var(--ae-color-danger), var(--ae-color-mix-active));\\n --ae-color-danger-disabled: color-mix(in srgb, var(--ae-red) 50%, var(--ae-gray-500));\\n\\n /* Warning (Yellow) */\\n --ae-color-warning: var(--ae-yellow-500);\\n --ae-color-warning-hover: color-mix(in srgb, var(--ae-color-warning), var(--ae-color-mix-hover));\\n --ae-color-warning-active: color-mix(in srgb, var(--ae-color-warning), var(--ae-color-mix-active));\\n --ae-color-warning-disabled: color-mix(in srgb, var(--ae-yellow) 50%, var(--ae-gray-500));\\n\\n /* Info (Cyan) */\\n --ae-color-info: var(--ae-cyan-500);\\n --ae-color-info-hover: color-mix(in srgb, var(--ae-color-info), var(--ae-color-mix-hover));\\n --ae-color-info-active: color-mix(in srgb, var(--ae-color-info), var(--ae-color-mix-active));\\n --ae-color-info-disabled: color-mix(in srgb, var(--ae-cyan) 50%, var(--ae-gray-500));\\n\\n /* Secondary (Slate) \u2014 base differs per theme, overridden in \u00A7 6 dark */\\n --ae-color-secondary: var(--ae-slate-500);\\n --ae-color-secondary-hover: color-mix(in srgb, var(--ae-color-secondary), var(--ae-color-mix-hover));\\n --ae-color-secondary-active: color-mix(in srgb, var(--ae-color-secondary), var(--ae-color-mix-active));\\n --ae-color-secondary-text: var(--ae-slate-700);\\n}\\n\\n\\n.theme-light,\\n:root[theme=\\\"light\\\"],\\n:host([theme=\\\"light\\\"]),\\n:host-context([theme=\\\"light\\\"]),\\n:where(:root),\\n:host {\\n color-scheme: light;\\n\\n /* Gray UI aliases \u2014 lighter palette steps for elements on white background */\\n --ae-color-gray-dark: var(--ae-gray-400);\\n --ae-color-gray: var(--ae-gray-300);\\n --ae-color-gray-light: var(--ae-gray-200);\\n --ae-color-gray-lighter: var(--ae-gray-100);\\n --ae-color-gray-lightest: color-mix(in srgb, var(--ae-gray) 10%, white);\\n\\n /* Text */\\n --ae-color-text-main: var(--ae-dark-700);\\n --ae-color-text-muted: var(--ae-gray-600);\\n --ae-color-text-disabled: var(--ae-gray-300);\\n --ae-color-text-link: var(--ae-blue-500);\\n --ae-color-text-link-hover: var(--ae-blue-700);\\n\\n /* Surfaces */\\n --ae-surface-sunken: var(--ae-light-500);\\n --ae-surface-base: white;\\n --ae-surface-raised: var(--ae-light-500);\\n --ae-surface-overlay: white;\\n --ae-color-overlay: rgba(0, 0, 0, 0.4);\\n\\n /* Borders */\\n --ae-border-subtle: rgba(0, 0, 0, 0.08);\\n --ae-border-default: rgba(0, 0, 0, 0.15);\\n --ae-border-hover: rgba(0, 0, 0, 0.25);\\n --ae-border-focus: var(--ae-color-primary);\\n --ae-border-disabled: rgba(0, 0, 0, 0.06);\\n\\n /* Focus ring */\\n --ae-focus-ring: rgb(from var(--ae-blue) r g b / 0.30);\\n --ae-focus-ring-sm: rgb(from var(--ae-blue) r g b / 0.15);\\n\\n /* Subtle intent tokens \u2014 light context */\\n --ae-color-primary-bg-subtle: rgb(from var(--ae-blue) r g b / 0.08);\\n --ae-color-primary-border-subtle: rgb(from var(--ae-blue) r g b / 0.40);\\n --ae-color-primary-text-emphasis: var(--ae-blue-700);\\n\\n --ae-color-success-bg-subtle: rgb(from var(--ae-green) r g b / 0.08);\\n --ae-color-success-border-subtle: rgb(from var(--ae-green) r g b / 0.40);\\n --ae-color-success-text-emphasis: var(--ae-green-700);\\n\\n --ae-color-danger-bg-subtle: rgb(from var(--ae-red) r g b / 0.08);\\n --ae-color-danger-border-subtle: rgb(from var(--ae-red) r g b / 0.40);\\n --ae-color-danger-text-emphasis: var(--ae-red-700);\\n\\n --ae-color-warning-bg-subtle: rgb(from var(--ae-yellow) r g b / 0.08);\\n --ae-color-warning-border-subtle: rgb(from var(--ae-yellow) r g b / 0.40);\\n --ae-color-warning-text-emphasis: var(--ae-yellow-700);\\n\\n --ae-color-info-bg-subtle: rgb(from var(--ae-cyan) r g b / 0.08);\\n --ae-color-info-border-subtle: rgb(from var(--ae-cyan) r g b / 0.40);\\n --ae-color-info-text-emphasis: var(--ae-cyan-700);\\n\\n --ae-color-secondary-bg-subtle: rgb(from var(--ae-slate) r g b / 0.08);\\n --ae-color-secondary-border-subtle: rgb(from var(--ae-slate) r g b / 0.40);\\n --ae-color-secondary-text-emphasis: var(--ae-slate-700);\\n\\n --ae-color-light-bg-subtle: var(--ae-gray-100); /* opaque on white: ~#e2e2e2 */\\n --ae-color-light-border-subtle: var(--ae-gray-200); /* opaque on white: ~#c4c4c4 */\\n\\n --ae-color-dark-bg-subtle: var(--ae-dark-100); /* opaque on white: ~#d6d8d9 */\\n --ae-color-dark-border-subtle: var(--ae-dark-300); /* opaque on white: ~#85898c */\\n\\n /* Component tokens \u2014 light defaults */\\n --ae-action-btn-bg: var(--ae-gray-200);\\n --ae-action-btn-bg-hover: var(--ae-color-primary);\\n --ae-action-btn-color: var(--ae-gray-600);\\n --ae-action-btn-color-hover: white;\\n\\n --ae-clear-btn-bg-hover: var(--ae-color-danger);\\n --ae-clear-btn-color-hover: white;\\n\\n --ae-reset-btn-border-radius: var(--ae-radius-xs);\\n --ae-reset-btn-bg: var(--ae-action-btn-bg);\\n --ae-reset-btn-bg-hover: var(--ae-action-btn-bg-hover);\\n --ae-reset-btn-color: var(--ae-action-btn-color);\\n --ae-reset-btn-color-hover: var(--ae-action-btn-color-hover);\\n --ae-reset-btn-transition: all 0.12s;\\n\\n --ae-clear-btn-border-radius: var(--ae-radius-xs);\\n --ae-clear-btn-bg: var(--ae-action-btn-bg);\\n --ae-clear-btn-color: var(--ae-action-btn-color);\\n --ae-clear-btn-transition: all 0.12s;\\n}\\n\\n:root,\\n:host {\\n --ae-size-scale: 1;\\n --ae-size-base: calc(1rem * var(--ae-size-scale)); /* 16px */\\n --ae-size-xl: round(calc(var(--ae-size-l) * 1.125), 1px); /* 23px */\\n --ae-size-l: round(calc(var(--ae-size-m) * 1.125 * 1.125), 1px); /* 20px */\\n --ae-size-m: var(--ae-size-base); /* 16px */\\n --ae-size-s: round(calc(var(--ae-size-m) / 1.125), 1px); /* 14px */\\n --ae-size-xs: round(calc(var(--ae-size-s) / 1.125), 1px); /* 12px */\\n --ae-size-2xs: round(calc(var(--ae-size-xs) / 1.125), 1px); /* 11px */\\n --ae-size-3xs: round(calc(var(--ae-size-2xs) / 1.125), 1px); /* 10px */\\n}\\n\\n/* Border-radius tokens \u2014 shared across all components */\\n:root,\\n:host {\\n /**\\n * Unified border-radius hook for all components.\\n *\\n * Not set by default \u2014 each component falls back to its own --ae-radius-*\\n * token (e.g. button \u2192 sm, card \u2192 lg, input \u2192 xs).\\n *\\n * Usage:\\n * :root { --ae-border-radius: 0; } // global: all components square\\n * :root { --ae-border-radius: 999px; } // global: all components pill\\n * ae-button { --ae-border-radius: 50%; } // scoped: only buttons circular\\n * .sidebar { --ae-border-radius: 8px; } // scoped: everything inside .sidebar\\n *\\n * To restore a component to its own default:\\n * ae-card { --ae-border-radius: initial; }\\n */\\n\\n --ae-radius-square: 0;\\n --ae-radius-xs: 2px;\\n --ae-radius-sm: 4px;\\n --ae-radius-md: 6px;\\n --ae-radius-lg: 8px;\\n --ae-radius-xl: 12px;\\n --ae-radius-pill: 999px;\\n --ae-radius-circle: 50%;\\n}\\n\\n/* Layout tokens \u2014 defined on :root so all light DOM elements can use them */\\n:root,\\n:host {\\n --container-max-width: 1280px;\\n --container-padding-x: 1.5rem;\\n}\\n\\n.theme-dark,\\n:root[theme=\\\"dark\\\"],\\n:host([theme=\\\"dark\\\"]),\\n:host-context([theme=\\\"dark\\\"]) {\\n color-scheme: dark;\\n\\n /* Hover / active \u2014 slightly gentler on dark backgrounds */\\n --ae-color-mix-hover: black 8%;\\n --ae-color-mix-active: black 16%;\\n\\n /* Gray UI aliases \u2014 darker palette steps for elements on dark background */\\n --ae-color-gray-dark: var(--ae-gray-800);\\n --ae-color-gray: var(--ae-gray-700);\\n --ae-color-gray-light: var(--ae-gray-600);\\n --ae-color-gray-lighter: var(--ae-gray-500);\\n --ae-color-gray-lightest: var(--ae-gray-400);\\n\\n /* Secondary \u2014 deeper base on dark background */\\n --ae-color-secondary: var(--ae-slate-700);\\n --ae-color-secondary-text: var(--ae-slate-300);\\n\\n /* Text */\\n --ae-color-text-main: white;\\n --ae-color-text-muted: var(--ae-gray-200);\\n --ae-color-text-disabled: var(--ae-gray-500);\\n --ae-color-text-link: var(--ae-blue-300);\\n --ae-color-text-link-hover: var(--ae-blue-200);\\n\\n /* Surfaces */\\n --ae-surface-sunken: var(--ae-gray-900);\\n --ae-surface-base: color-mix(in srgb, var(--ae-gray) 27%, black);\\n --ae-surface-raised: color-mix(in srgb, var(--ae-gray) 34%, black);\\n --ae-surface-overlay: color-mix(in srgb, var(--ae-gray) 38%, black);\\n --ae-color-overlay: rgba(0, 0, 0, 0.6);\\n\\n /* Borders */\\n --ae-border-subtle: rgba(255, 255, 255, 0.08);\\n --ae-border-default: rgba(255, 255, 255, 0.12);\\n --ae-border-hover: rgba(255, 255, 255, 0.20);\\n --ae-border-focus: var(--ae-color-primary);\\n --ae-border-disabled: rgba(255, 255, 255, 0.06);\\n\\n /* Focus ring */\\n --ae-focus-ring: rgb(from var(--ae-blue) r g b / 0.25);\\n --ae-focus-ring-sm: rgb(from var(--ae-blue) r g b / 0.10);\\n\\n /* Subtle intent tokens \u2014 dark context (more alpha, lighter text-emphasis) */\\n --ae-color-primary-bg-subtle: rgb(from var(--ae-blue) r g b / 0.10);\\n --ae-color-primary-border-subtle: rgb(from var(--ae-blue) r g b / 0.30);\\n --ae-color-primary-text-emphasis: var(--ae-blue-300);\\n\\n --ae-color-success-bg-subtle: rgb(from var(--ae-green) r g b / 0.10);\\n --ae-color-success-border-subtle: rgb(from var(--ae-green) r g b / 0.30);\\n --ae-color-success-text-emphasis: var(--ae-green-300);\\n\\n --ae-color-danger-bg-subtle: rgb(from var(--ae-red) r g b / 0.10);\\n --ae-color-danger-border-subtle: rgb(from var(--ae-red) r g b / 0.30);\\n --ae-color-danger-text-emphasis: var(--ae-red-300);\\n\\n --ae-color-warning-bg-subtle: rgb(from var(--ae-yellow) r g b / 0.10);\\n --ae-color-warning-border-subtle: rgb(from var(--ae-yellow) r g b / 0.30);\\n --ae-color-warning-text-emphasis: var(--ae-yellow-300);\\n\\n --ae-color-info-bg-subtle: rgb(from var(--ae-cyan) r g b / 0.10);\\n --ae-color-info-border-subtle: rgb(from var(--ae-cyan) r g b / 0.30);\\n --ae-color-info-text-emphasis: var(--ae-cyan-300);\\n\\n --ae-color-secondary-bg-subtle: rgb(from var(--ae-slate) r g b / 0.10);\\n --ae-color-secondary-border-subtle: rgb(from var(--ae-slate) r g b / 0.30);\\n --ae-color-secondary-text-emphasis: var(--ae-slate-300);\\n\\n --ae-color-light-bg-subtle: rgb(from var(--ae-light) r g b / 0.20);\\n --ae-color-light-border-subtle: rgb(from var(--ae-light) r g b / 0.25);\\n\\n --ae-color-dark-bg-subtle: rgb(from var(--ae-dark) r g b / 0.30);\\n --ae-color-dark-border-subtle: rgb(from var(--ae-dark) r g b / 0.50);\\n\\n /* Component tokens \u2014 dark overrides */\\n --ae-action-btn-bg: var(--ae-color-gray);\\n --ae-action-btn-bg-hover: color-mix(in srgb, var(--ae-blue) 25%, var(--ae-gray-800));\\n --ae-action-btn-color: var(--ae-gray-400);\\n --ae-action-btn-color-hover: var(--ae-cyan-300);\\n --ae-clear-btn-bg-hover: color-mix(in srgb, var(--ae-red) 25%, var(--ae-gray-800));\\n --ae-clear-btn-color-hover: var(--ae-red-300);\\n}\\n\"", "module.exports = \":host([size=\\\"xs\\\"]) { font-size: var(--ae-size-xs); }\\n:host([size=\\\"sm\\\"]) { font-size: var(--ae-size-s); }\\n:host([size=\\\"md\\\"]) { font-size: var(--ae-size-m); }\\n:host([size=\\\"lg\\\"]) { font-size: var(--ae-size-l); }\\n:host([size=\\\"xl\\\"]) { font-size: var(--ae-size-xl); }\\n:host([size=\\\"3xs\\\"]) { font-size: var(--ae-size-3xs); }\\n:host([size=\\\"2xs\\\"]) { font-size: var(--ae-size-2xs); }\\n\"", "module.exports = \":host {\\n --ae-color-solid: var(--ae-color-gray);\\n --ae-color-solid-hover: color-mix(in srgb, var(--ae-color-solid), var(--ae-color-mix-hover));\\n --ae-color-solid-active: color-mix(in srgb, var(--ae-color-solid), var(--ae-color-mix-active));\\n --ae-color-on-solid: var(--ae-color-text-main);\\n --ae-color-border: var(--ae-color-gray);\\n --ae-color-border-hover: color-mix(in srgb, var(--ae-color-border), var(--ae-color-mix-hover));\\n --ae-color-accent: var(--ae-color-text-muted);\\n --ae-color-accent-hover: var(--ae-color-text-main);\\n --ae-color-subtle: var(--ae-border-subtle);\\n --ae-color-subtle-hover: var(--ae-border-default);\\n --ae-color-bg-subtle: var(--ae-border-subtle);\\n --ae-color-text-subtle: var(--ae-color-text-muted);\\n --ae-color-border-subtle: var(--ae-border-default);\\n}\\n\\n:host([color=\\\"primary\\\"]) {\\n --ae-color-solid: var(--ae-color-primary);\\n --ae-color-on-solid: white;\\n --ae-color-border: var(--ae-color-primary);\\n --ae-color-accent: var(--ae-color-text-link);\\n --ae-color-accent-hover: var(--ae-color-text-link-hover);\\n --ae-color-subtle: var(--ae-color-primary-bg-subtle);\\n --ae-color-subtle-hover: rgb(from var(--ae-blue) r g b / 0.15);\\n --ae-color-bg-subtle: var(--ae-color-primary-bg-subtle);\\n --ae-color-text-subtle: var(--ae-color-primary-text-emphasis);\\n --ae-color-border-subtle: var(--ae-color-primary-border-subtle);\\n}\\n\\n:host([color=\\\"secondary\\\"]) {\\n --ae-color-solid: var(--ae-color-secondary);\\n --ae-color-on-solid: white;\\n --ae-color-border: var(--ae-color-secondary-hover);\\n --ae-color-accent: var(--ae-color-secondary-text-emphasis);\\n --ae-color-accent-hover: var(--ae-color-text-main);\\n --ae-color-subtle: rgb(from var(--ae-slate) r g b / 0.06);\\n --ae-color-subtle-hover: rgb(from var(--ae-slate) r g b / 0.12);\\n --ae-color-bg-subtle: var(--ae-color-secondary-bg-subtle);\\n --ae-color-text-subtle: var(--ae-color-secondary-text-emphasis);\\n --ae-color-border-subtle: var(--ae-color-secondary-border-subtle);\\n}\\n\\n:host([color=\\\"success\\\"]) {\\n --ae-color-solid: var(--ae-color-success);\\n --ae-color-on-solid: white;\\n --ae-color-border: var(--ae-color-success);\\n --ae-color-accent: var(--ae-color-success-text-emphasis);\\n --ae-color-accent-hover: var(--ae-color-success-hover);\\n --ae-color-subtle: var(--ae-color-success-bg-subtle);\\n --ae-color-subtle-hover: rgb(from var(--ae-green) r g b / 0.15);\\n --ae-color-bg-subtle: var(--ae-color-success-bg-subtle);\\n --ae-color-text-subtle: var(--ae-color-success-text-emphasis);\\n --ae-color-border-subtle: var(--ae-color-success-border-subtle);\\n}\\n\\n:host([color=\\\"danger\\\"]) {\\n --ae-color-solid: var(--ae-color-danger);\\n --ae-color-on-solid: white;\\n --ae-color-border: var(--ae-color-danger);\\n --ae-color-accent: var(--ae-color-danger-text-emphasis);\\n --ae-color-accent-hover: var(--ae-color-danger-hover);\\n --ae-color-subtle: var(--ae-color-danger-bg-subtle);\\n --ae-color-subtle-hover: rgb(from var(--ae-red) r g b / 0.15);\\n --ae-color-bg-subtle: var(--ae-color-danger-bg-subtle);\\n --ae-color-text-subtle: var(--ae-color-danger-text-emphasis);\\n --ae-color-border-subtle: var(--ae-color-danger-border-subtle);\\n}\\n\\n:host([color=\\\"warning\\\"]) {\\n --ae-color-solid: var(--ae-color-warning);\\n --ae-color-on-solid: var(--ae-gray-900);\\n --ae-color-border: var(--ae-color-warning);\\n --ae-color-accent: var(--ae-color-warning-text-emphasis);\\n --ae-color-accent-hover: var(--ae-color-warning-hover);\\n --ae-color-subtle: var(--ae-color-warning-bg-subtle);\\n --ae-color-subtle-hover: rgb(from var(--ae-yellow) r g b / 0.15);\\n --ae-color-bg-subtle: var(--ae-color-warning-bg-subtle);\\n --ae-color-text-subtle: var(--ae-color-warning-text-emphasis);\\n --ae-color-border-subtle: var(--ae-color-warning-border-subtle);\\n}\\n\\n:host([color=\\\"info\\\"]) {\\n --ae-color-solid: var(--ae-color-info);\\n --ae-color-on-solid: white;\\n --ae-color-border: var(--ae-color-info);\\n --ae-color-accent: var(--ae-color-info-text-emphasis);\\n --ae-color-accent-hover: var(--ae-color-info-hover);\\n --ae-color-subtle: var(--ae-color-info-bg-subtle);\\n --ae-color-subtle-hover: rgb(from var(--ae-cyan) r g b / 0.15);\\n --ae-color-bg-subtle: var(--ae-color-info-bg-subtle);\\n --ae-color-text-subtle: var(--ae-color-info-text-emphasis);\\n --ae-color-border-subtle: var(--ae-color-info-border-subtle);\\n}\\n\\n:host([color=\\\"light\\\"]) {\\n --ae-color-solid: var(--ae-light);\\n --ae-color-on-solid: var(--ae-gray-900);\\n --ae-color-border: var(--ae-border-hover);\\n --ae-color-subtle: var(--ae-color-light-bg-subtle);\\n --ae-color-subtle-hover: var(--ae-color-light-border-subtle);\\n --ae-color-bg-subtle: var(--ae-color-light-bg-subtle);\\n --ae-color-text-subtle: var(--ae-color-text-muted);\\n --ae-color-border-subtle: var(--ae-color-light-border-subtle);\\n}\\n\\n:host([color=\\\"dark\\\"]) {\\n --ae-color-solid: var(--ae-dark-500);\\n --ae-color-on-solid: white;\\n --ae-color-border: var(--ae-dark-500);\\n --ae-color-accent: var(--ae-color-text-main);\\n --ae-color-accent-hover: var(--ae-color-text-main);\\n --ae-color-subtle: var(--ae-color-dark-bg-subtle);\\n --ae-color-subtle-hover: var(--ae-color-dark-border-subtle);\\n --ae-color-bg-subtle: var(--ae-color-dark-bg-subtle);\\n --ae-color-text-subtle: var(--ae-color-text-main);\\n --ae-color-border-subtle: var(--ae-color-dark-border-subtle);\\n}\\n\"", "module.exports = \":host {\\n --field-label-gap: 4px;\\n --field-label-col-gap: 8px;\\n --field-label-width: 100px;\\n --field-label-font-size: 0.875em;\\n --field-label-color: inherit;\\n --field-required-color: var(--ae-red, #dc3545);\\n --field-helper-color: var(--ae-color-text-muted, #6e6e6e);\\n --field-error-color: var(--ae-red, #dc3545);\\n}\\n\\n:host([label]) {\\n display: flex;\\n flex-direction: column;\\n align-items: stretch;\\n gap: var(--field-label-gap);\\n}\\n\\n:host([label][label-placement=\\\"left\\\"]) {\\n display: grid;\\n grid-template-columns: var(--field-label-width) 1fr;\\n column-gap: var(--field-label-col-gap);\\n row-gap: var(--field-label-gap);\\n align-items: center;\\n}\\n\\n:host([label][label-placement=\\\"left\\\"]) .field-label {\\n align-self: center;\\n}\\n\\n:host([label][label-placement=\\\"left\\\"]) .field-helper,\\n:host([label][label-placement=\\\"left\\\"]) .field-error {\\n grid-column: 2;\\n}\\n\\n.field-label {\\n font-size: var(--field-label-font-size);\\n color: var(--field-label-color);\\n user-select: none;\\n line-height: 1.4;\\n}\\n\\n.field-required {\\n color: var(--field-required-color);\\n margin-left: 2px;\\n}\\n\\n.field-helper {\\n font-size: 0.8em;\\n color: var(--field-helper-color);\\n line-height: 1.4;\\n}\\n\\n.field-error {\\n font-size: 0.8em;\\n color: var(--field-error-color);\\n line-height: 1.4;\\n}\\n\\n/* Action controls container (integrated style) */\\n.action-controls {\\n display: flex;\\n flex-direction: row;\\n align-items: stretch;\\n margin-left: calc(-1 * var(--field-action-gap, 4px) - 1px);\\n border: var(--field-action-border-width, 1px) solid var(--field-action-border-color, var(--ae-border-subtle));\\n border-radius: 0 var(--field-action-border-radius, var(--ae-radius-xs)) var(--field-action-border-radius, var(--ae-radius-xs)) 0;\\n overflow: hidden;\\n flex-shrink: 0;\\n transition: border-color 0.12s;\\n background: var(--field-action-bg, var(--ae-surface-base));\\n position: relative;\\n z-index: 1;\\n align-self: stretch;\\n}\\n\\n.action-controls .action-btn {\\n border: none;\\n background: transparent;\\n color: var(--field-action-color, var(--ae-color-text-muted));\\n font-size: 0.875em;\\n line-height: 1;\\n cursor: pointer;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n padding: 0 0.5em;\\n transition: background 0.12s;\\n}\\n\\n.action-controls .action-btn:hover:not(:disabled) {\\n background: var(--field-action-bg-hover, var(--ae-surface-raised));\\n}\\n\\n.action-controls .action-btn:active:not(:disabled) {\\n background: var(--field-action-bg-focus, var(--ae-surface-raised));\\n}\\n\\n.action-controls .action-btn:disabled {\\n opacity: 0.5;\\n cursor: not-allowed;\\n}\\n\\n.action-controls .action-btn + .action-btn {\\n border-left: var(--field-action-border-width, 1px) solid var(--field-action-border-color, var(--ae-border-subtle));\\n}\\n\\n.input-container:has(input:focus) ~ .action-controls,\\n.input-container:has(input:focus) .action-controls,\\n.container:has(.trigger.open) ~ .action-controls,\\n.container:has(.trigger.open) .action-controls {\\n border-color: var(--field-action-border-color-focus, var(--ae-border-focus));\\n}\\n\\n.input-container:has(input:hover:not(:focus)) ~ .action-controls,\\n.input-container:has(input:hover:not(:focus)) .action-controls,\\n.container:has(.trigger:hover:not(.disabled)) ~ .action-controls,\\n.container:has(.trigger:hover:not(.disabled)) .action-controls {\\n border-color: var(--field-action-border-color-hover, var(--ae-border-default));\\n}\\n\"", "module.exports = \"/* Action button base styles \u2014 shared by clear-btn and reset-btn (standalone mode) */\\n.clear-btn:not(.action-btn),\\n.reset-btn:not(.action-btn) {\\n width: 1.333em;\\n height: 1.333em;\\n border: none;\\n cursor: pointer;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n flex-shrink: 0;\\n line-height: 1;\\n}\\n\\n.clear-btn:not(.action-btn) {\\n border-radius: var(--ae-clear-btn-border-radius);\\n background: var(--ae-clear-btn-bg);\\n color: var(--ae-clear-btn-color);\\n transition: var(--ae-clear-btn-transition);\\n}\\n\\n.reset-btn:not(.action-btn) {\\n border-radius: var(--ae-reset-btn-border-radius);\\n background: var(--ae-reset-btn-bg);\\n color: var(--ae-reset-btn-color);\\n transition: var(--ae-reset-btn-transition);\\n}\\n\\n.clear-btn:not(.action-btn):hover {\\n background: var(--ae-clear-btn-bg-hover);\\n color: var(--ae-clear-btn-color-hover);\\n}\\n\\n.reset-btn:not(.action-btn):hover {\\n background: var(--ae-reset-btn-bg-hover);\\n color: var(--ae-reset-btn-color-hover);\\n}\\n\"", "export { default, default as RadioGroup } from './radio-group';\nexport type { RadioGroupProps } from './radio-group';\nexport type { RadioGroupMode, RadioGroupOption, RadioGroupOptions } from './defines';\nexport { default as Radio } from './radio';\nexport type { RadioProps } from './radio';\n", "\uFEFFimport type { InferProps, Props, Watchers } from 'aeico';\nimport { tags } from 'aeico';\nimport AeicoComponent from './aeico-component';\n\nexport type FieldAction = 'clear' | 'reset' | 'change';\nexport type FieldElement = HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;\nexport type ActionButtonStyle = 'standalone' | 'integrated';\n\n/**\n * Base class for form field components\n *\n * Provides common functionality for field components including:\n * - Theme support\n * - i18n integration (via Localizable mixin)\n * - Reset button management\n * - Value management\n * - Common configuration handling\n */\nclass AeicoField<TValue = string> extends AeicoComponent {\n /**\n * Define base field properties (extends AeicoElement properties)\n */\n static props: Props = {\n value: { type: String },\n defaultValue: { type: String },\n resettable: { type: Boolean },\n resetText: { type: String },\n resetTitle: { type: String },\n clearable: { type: Boolean },\n clearText: { type: String },\n clearTitle: { type: String },\n actionButtonStyle: { type: String },\n size: { type: String },\n disabled: { type: Boolean },\n label: { type: String },\n labelPlacement: { type: String },\n required: { type: Boolean },\n helperText: { type: String },\n error: { type: String },\n };\n\n /**\n * Property watchers\n */\n static watchers: Watchers = {\n disabled: 'onDisabledChanged',\n error: 'onErrorChanged',\n };\n\n private static _fieldIdCounter = 0;\n private readonly _fieldId: string;\n\n constructor() {\n super();\n this._fieldId = `ae-field-${++AeicoField._fieldIdCounter}`;\n }\n\n /**\n * The underlying form control element (input, select, etc.)\n * Subclasses should set this to their specific element\n */\n protected fieldElement: FieldElement | null = null;\n\n protected resetBtn: HTMLButtonElement | null = null;\n protected clearBtn: HTMLButtonElement | null = null;\n\n protected readonly boundOnChange = () =>\n this.setValue(this.getValue(), { silent: false, action: 'change' });\n\n protected readonly boundOnReset = () => this.onReset();\n protected readonly boundOnClear = () => this.onClear();\n\n // Declare reactive properties for TypeScript\n declare value?: TValue;\n declare defaultValue?: TValue | string;\n declare resettable?: boolean;\n declare resetText?: string;\n declare resetTitle?: string;\n declare clearable?: boolean;\n declare clearText?: string;\n declare clearTitle?: string;\n declare actionButtonStyle?: ActionButtonStyle;\n declare size?: string;\n declare disabled?: boolean;\n declare label?: string;\n declare labelPlacement?: 'top' | 'left';\n declare required?: boolean;\n declare helperText?: string;\n declare error?: string;\n\n /**\n * Lifecycle: Component connected to DOM\n */\n connectedCallback() {\n super.connectedCallback();\n }\n\n /**\n * Lifecycle: Component disconnected from DOM\n */\n disconnectedCallback() {\n super.disconnectedCallback();\n }\n\n /**\n * Render action buttons (clear/reset) using this.builder.\n * Must be called from within a build() callback.\n */\n protected renderActionButtons(force: boolean = false) {\n const style = this.actionButtonStyle || 'integrated';\n const hasActions = force || this.clearable || this.resettable;\n\n if (hasActions && style === 'integrated') {\n tags.div({ className: 'action-controls' }, () => {\n this.renderClearButton(force);\n this.renderResetButton(force);\n });\n } else {\n this.renderClearButton(force);\n this.renderResetButton(force);\n }\n }\n\n protected renderResetButton(force: boolean = false) {\n const { button } = tags;\n const style = this.actionButtonStyle || 'integrated';\n\n if (force || this.resettable) {\n const className = style === 'integrated' ? 'reset-btn action-btn' : 'reset-btn';\n this.resetBtn = button({\n className,\n textContent: this.resetText || '\u21BA',\n title: this.resetTitle || '\u21BA',\n '@click': this.boundOnReset,\n });\n }\n }\n\n protected renderClearButton(force: boolean = false) {\n const { button } = tags;\n const style = this.actionButtonStyle || 'integrated';\n\n if (force || this.clearable) {\n const className = style === 'integrated' ? 'clear-btn action-btn' : 'clear-btn';\n this.clearBtn = button({\n className,\n textContent: this.clearText || '\u2715',\n title: this.clearTitle || '\u2715',\n '@click': this.boundOnClear,\n });\n }\n }\n\n /**\n * Returns a stable unique ID for this field instance,\n * used to associate <label htmlFor> with the underlying input.\n */\n protected getFieldId(): string {\n return this._fieldId;\n }\n\n /**\n * Renders a <label> element when the `label` prop is set.\n * Call this as the first statement inside the render() html() callback.\n * @param fieldId - The id to set on the underlying form control element (pass to input via id prop)\n */\n protected renderLabel(fieldId: string): void {\n if (!this.label) return;\n const { span } = tags;\n tags.label({ id: `${fieldId}-label`, className: 'field-label', for: fieldId }, () => {\n span({ textContent: this.label! });\n if (this.required) {\n span({ className: 'field-required', 'aria-hidden': 'true', textContent: ' *' });\n }\n });\n }\n\n /**\n * Renders helper text below the field. Hidden when `error` is set.\n * Call this after the field-body div in render().\n */\n protected renderHelperText(): void {\n if (!this.helperText || this.error) return;\n const { span } = tags;\n span({ className: 'field-helper', textContent: this.helperText });\n }\n\n /**\n * Renders an error message below the field when `error` is set.\n * Call this after renderHelperText() in render().\n */\n protected renderError(): void {\n if (!this.error) return;\n const { span } = tags;\n span({ className: 'field-error', textContent: this.error });\n }\n\n /**\n * Watcher for disabled property\n */\n protected onDisabledChanged(newValue: boolean) {\n if (this.fieldElement) {\n (this.fieldElement as HTMLInputElement | HTMLSelectElement).disabled = Boolean(newValue);\n }\n }\n\n /**\n * Watcher for error property \u2014 syncs aria-invalid on the field element\n */\n protected onErrorChanged(newValue: string | undefined): void {\n if (this.fieldElement) {\n if (newValue) {\n this.fieldElement.setAttribute('aria-invalid', 'true');\n } else {\n this.fieldElement.removeAttribute('aria-invalid');\n }\n }\n }\n\n /**\n * Lifecycle: called after every render update.\n * Keeps aria-invalid on fieldElement in sync regardless of watcher timing.\n */\n protected onUpdated(_changedProps: Map<string, unknown>): void {\n if (!this.fieldElement) return;\n if (this.error) {\n this.fieldElement.setAttribute('aria-invalid', 'true');\n } else {\n this.fieldElement.removeAttribute('aria-invalid');\n }\n }\n\n /**\n * Returns true if the field passes constraint validation.\n * Delegates to the underlying fieldElement when available;\n * falls back to a manual required-check otherwise.\n */\n public checkValidity(): boolean {\n if (this.fieldElement) {\n return this.fieldElement.checkValidity();\n }\n if (this.required) {\n const v = this.value;\n return v !== undefined && v !== '' && v !== null;\n }\n return true;\n }\n\n /**\n * Reports validity, showing the browser's built-in validation UI when possible.\n */\n public reportValidity(): boolean {\n if (this.fieldElement) {\n return this.fieldElement.reportValidity();\n }\n return this.checkValidity();\n }\n\n /**\n * Render the field component\n * Override in subclass to provide custom rendering\n */\n render(): void {\n // Default implementation - subclasses can override\n }\n\n /**\n * Get current value from the field element\n * Default implementation returns the value property of fieldElement\n * Override in subclasses if needed (e.g., checkbox uses checked instead of value)\n *\n * @returns Current field value\n */\n protected getValue(): TValue {\n return (this.fieldElement?.value || '') as TValue;\n }\n\n /**\n * Write value to the underlying UI element and sync props\n * Subclasses must override this to update their specific UI element\n *\n * @param _value New value to write to the element\n */\n protected writeValue(_value: TValue): void {\n // Base implementation - subclasses override\n }\n\n /**\n * Get event payload for change events\n * Override in subclasses to customize event data (e.g., { checked, oldChecked } for checkbox)\n *\n * @param value New value\n * @param oldValue Previous value\n * @param action Action type\n * @returns Event payload object\n */\n protected getEventPayload(\n value: TValue,\n oldValue: TValue,\n action: FieldAction,\n ): Record<string, unknown> {\n return { value, oldValue, action };\n }\n\n /**\n * Update field value programmatically (internal method)\n * Subclasses should provide type-safe public wrappers (e.g., change() method)\n *\n * @param value New value\n * @param options.silent If true, won't emit change event (default: true)\n * @param options.action Action type for the event (default: 'change')\n */\n protected setValue(value: TValue, options?: { silent?: boolean; action?: FieldAction }): void {\n const oldValue = this.getValue();\n\n // Update property value\n this.value = value;\n\n // Write to UI element (DOM only)\n this.writeValue(value);\n\n // Emit event if not silent\n if (options?.silent === false) {\n const payload = this.getEventPayload(value, oldValue, options.action || 'change');\n this.emit('change', { detail: payload });\n }\n }\n\n /**\n * Reset field to specified value or default value\n *\n * @param value Value to reset to, defaults to defaultValue prop\n * @param options.silent If false, will emit reset event (default: true)\n */\n public reset(value?: TValue, options?: { silent?: boolean }): void {\n const resetValue = value !== undefined ? value : this.defaultValue;\n this.setValue(resetValue as TValue, { ...options, action: 'reset' });\n }\n\n /**\n * Clear the field value\n *\n * @param options.silent If false, will emit clear event (default: true)\n */\n public clear(options?: { silent?: boolean }): void {\n this.setValue('' as TValue, { ...options, action: 'clear' });\n }\n\n /**\n * Handle clear button click\n * Clears the field and dispatches event\n */\n protected onClear(): void {\n this.clear({ silent: false });\n }\n\n /**\n * Handle reset button click\n * Resets to default value and dispatches event\n */\n protected onReset(): void {\n this.reset(undefined, { silent: false });\n }\n}\n\nexport default AeicoField;\nexport type AeicoFieldProps = InferProps<typeof AeicoField>;\n", "\uFEFFimport { AeicoElement } from 'aeico';\nimport { toKebab } from './utils';\n\nconst TAG_NAME_PREFIX = 'ae';\n\n/**\n * AeicoComponent is the base class for all built-in Aeico components.\n */\nclass AeicoComponent extends AeicoElement {\n static register(name?: string) {\n const tagName = name || `${TAG_NAME_PREFIX}-${this.tagName || toKebab(this.name)}`;\n\n super.register(tagName);\n }\n}\n\nexport default AeicoComponent;\n", "export const SVG_NS = 'http://www.w3.org/2000/svg';\n\nexport function toKebab(str: string): string {\n const cleaned = str.replace(/^[_\\d]+/, '');\n\n return cleaned.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();\n}\n", "\uFEFFimport AeicoField from '../aeico-field';\nimport type { InferProps, Props } from 'aeico';\nimport { html, tags } from 'aeico';\nimport type { ButtonColor, ButtonVariant, ButtonSize } from '../button';\nimport type { RadioGroupMode, RadioGroupOption, RadioGroupOptions } from './defines';\nimport Radio from './radio';\nimport style from '../styles/components/radio-group.css';\nimport variables from '../styles/variables.css';\nimport sizeCSS from '../styles/size.css';\nimport colorCSS from '../styles/color.css';\nimport fieldLabelCSS from '../styles/components/field-label.css';\nimport actionButtonCSS from '../styles/components/action-button.css';\n\nclass RadioGroup extends AeicoField {\n protected fieldElement: HTMLInputElement | null = null;\n\n private _slotEl: HTMLSlotElement | null = null;\n private _slotOptions: Radio[] = [];\n\n private static _instanceCount = 0;\n private readonly _groupName: string;\n\n static tagName = 'radio-group';\n\n static props: Props = {\n options: { type: Array },\n mode: { type: String },\n color: { type: String },\n variant: { type: String },\n size: { type: String },\n allowEmpty: { type: Boolean },\n actionButtonStyle: { type: String },\n };\n\n declare options?: RadioGroupOptions;\n declare mode?: RadioGroupMode;\n declare color?: ButtonColor;\n declare variant?: ButtonVariant;\n declare size?: ButtonSize;\n declare allowEmpty?: boolean;\n\n protected static styles = [variables, sizeCSS, colorCSS, fieldLabelCSS, actionButtonCSS, style];\n\n constructor() {\n super();\n this._groupName = `rg-${++RadioGroup._instanceCount}`;\n }\n\n private _optLabel(opt: RadioGroupOption): string {\n if (opt !== null && typeof opt === 'object') {\n return String(opt.label);\n }\n return String(opt);\n }\n\n private _optValue(opt: RadioGroupOption): string {\n if (opt !== null && typeof opt === 'object') return String(opt.value);\n return String(opt);\n }\n\n private _allOptions(): Array<{ label: string; value: string; disabled?: boolean }> {\n const from_props = (Array.isArray(this.options) ? this.options : []).map((o) => ({\n label: this._optLabel(o),\n value: this._optValue(o),\n }));\n\n const from_slot = this._slotOptions.map((el) => ({\n label: el.textContent?.trim() || el.value,\n value: el.value,\n disabled: el.disabled,\n }));\n\n return [...from_props, ...from_slot];\n }\n\n private _onSlotChange(): void {\n if (!this._slotEl) return;\n\n this._slotOptions = (this._slotEl.assignedElements({ flatten: true }) as HTMLElement[]).filter(\n (el) => el.tagName.toLowerCase() === 'ae-radio',\n ) as Radio[];\n this.update();\n }\n\n // Single handler for radio inputs \u2014 handles both select and deselect.\n // Only uses `click` (not `change`) because `change` fires before `click`;\n // if we set value in `change`, the `click` handler would see the updated\n // value and immediately deselect.\n private _boundOnRadioClick = (e: Event) => {\n const input = e.target as HTMLInputElement;\n const current = this.value ?? '';\n if (input.value === current) {\n if (this.allowEmpty) {\n input.checked = false;\n this.setValue('', { silent: false, action: 'change' });\n }\n // !allowEmpty: do nothing\n } else {\n this.setValue(input.value, { silent: false, action: 'change' });\n }\n };\n\n private _boundOnButtonClick = (e: Event) => {\n const btn = e.currentTarget as HTMLElement;\n const val = btn.dataset.value ?? '';\n const current = this.value ?? '';\n // Toggle off if clicking already-selected option\n if (val === current) {\n if (this.allowEmpty) {\n this.setValue('', { silent: false, action: 'change' });\n }\n // !allowEmpty: already selected, do nothing\n } else {\n this.setValue(val, { silent: false, action: 'change' });\n }\n };\n\n protected getValue(): string {\n return this.value ?? '';\n }\n\n protected writeValue(_value: string): void {\n // All visual state is driven by builder diff on next render;\n // for native radio inputs we need to sync checked immediately.\n // The render() reads this.value, so update handles the rest.\n }\n\n protected onReset(): void {\n this.setValue(this.defaultValue ?? '', { silent: false, action: 'reset' });\n }\n\n protected onClear(): void {\n this.setValue('', { silent: false, action: 'clear' });\n }\n\n render() {\n const mode = (this.mode as RadioGroupMode) || 'default';\n const opts = this._allOptions();\n const current = this.value ?? '';\n\n return html(({ div, slot }) => {\n const id = this.getFieldId();\n this.renderLabel(id);\n div({ id, role: 'group', className: 'rg-container field-body' }, () => {\n if (mode === 'default') {\n this._renderRadio(opts, current);\n this.renderActionButtons();\n } else {\n this._renderButtons(opts, current, mode);\n }\n });\n\n if (mode !== 'default') {\n if (this.allowEmpty) this.renderClearButton();\n this.renderResetButton();\n }\n\n // Hidden slot \u2014 captures <option> light DOM children\n this._slotEl = slot({\n style: { display: 'none' },\n '@slotchange': () => this._onSlotChange(),\n });\n\n this.renderHelperText();\n this.renderError();\n });\n }\n\n private _renderRadio(\n opts: Array<{ label: string; value: string; disabled?: boolean }>,\n current: string,\n ): void {\n const { label, input, span } = tags;\n for (const opt of opts) {\n const isChecked = opt.value === current;\n\n label({ key: `opt-${opt.value}`, className: 'rg-radio-option' }, () => {\n const el = input({\n type: 'radio',\n className: 'rg-radio-input',\n name: this._groupName,\n value: opt.value,\n disabled: Boolean(this.disabled) || Boolean(opt.disabled),\n required: Boolean(this.required),\n '@click': this._boundOnRadioClick,\n });\n // Sync DOM property directly \u2014 setAttribute('checked') doesn't work\n // after user interaction; only the .checked property controls state.\n el.checked = isChecked;\n // Keep fieldElement pointing to first radio for base-class compat\n if (!this.fieldElement) this.fieldElement = el;\n span({ className: 'rg-radio-label', textContent: opt.label });\n });\n }\n }\n\n private _renderButtons(\n opts: Array<{ label: string; value: string; disabled?: boolean }>,\n current: string,\n mode: RadioGroupMode,\n ): void {\n const { button } = tags;\n const count = opts.length;\n for (let i = 0; i < count; i++) {\n const opt = opts[i];\n const isSelected = opt.value === current;\n\n // Position class for button-group border-radius (CSS handles all styling)\n let posClass = '';\n if (mode === 'button-group') {\n if (count === 1) posClass = ' only';\n else if (i === 0) posClass = ' first';\n else if (i === count - 1) posClass = ' last';\n else posClass = ' inner';\n }\n\n button({\n key: `opt-${opt.value}`,\n className: `rg-btn${isSelected ? ' selected' : ''}${posClass}`,\n textContent: opt.label,\n disabled: Boolean(this.disabled) || Boolean(opt.disabled),\n 'data-value': opt.value,\n '@click': this._boundOnButtonClick,\n });\n }\n }\n}\n\nRadioGroup.register();\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'ae-radio-group': RadioGroup;\n }\n}\n\nexport default RadioGroup;\nexport type RadioGroupProps = InferProps<typeof RadioGroup>;\n", "\uFEFFimport AeicoComponent from '../aeico-component';\nimport type { InferProps, Props } from 'aeico';\n\n/**\n * AeRadio \u2014 structured option element for ae-radio-group.\n *\n * Replaces the native `<option>` approach with a custom element that is\n * fully extensible. Current surface:\n * - `value` \u2014 option value submitted / matched against radio-group value\n * - `disabled` \u2014 disables this individual option (independent of the group)\n * - Light DOM \u2014 label content; can be plain text or rich HTML (icons, etc.)\n *\n * This element has **no shadow DOM** \u2014 it is a pure data / content carrier.\n * ae-radio-group reads its properties and light-DOM content, then renders\n * the appropriate UI (radio input, button, segmented pill, \u2026).\n *\n * @example Plain text options\n * ```html\n * <ae-radio-group mode=\"button\" color=\"primary\" value=\"a\">\n * <ae-radio value=\"a\">Option A</ae-radio>\n * <ae-radio value=\"b\">Option B</ae-radio>\n * <ae-radio value=\"c\" disabled>Option C</ae-radio>\n * </ae-radio-group>\n * ```\n *\n * @example Rich content options (icons)\n * ```html\n * <ae-radio-group mode=\"button\" color=\"primary\" value=\"list\">\n * <ae-radio value=\"list\"><ae-icon name=\"list\"></ae-icon> List</ae-radio>\n * <ae-radio value=\"grid\"><ae-icon name=\"grid\"></ae-icon> Grid</ae-radio>\n * </ae-radio-group>\n * ```\n */\nclass Radio extends AeicoComponent {\n static tagName = 'radio';\n\n /** No shadow DOM \u2014 this element is a transparent data/content carrier. */\n static override useShadowDOM = false;\n\n static override props: Props = {\n value: { type: String },\n disabled: { type: Boolean },\n };\n\n declare value: string;\n declare disabled?: boolean;\n}\n\nRadio.register();\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'ae-radio': Radio;\n }\n}\n\nexport default Radio;\nexport type RadioProps = InferProps<typeof Radio>;\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA,yGAAAA,UAAAC,SAAA;AAAA,IAAAA,QAAO,UAAU;AAAA;AAAA;;;ACAjB;AAAA,4FAAAC,UAAAC,SAAA;AAAA,IAAAA,QAAO,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA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",
3
+ "sources": ["css-inline:/home/runner/work/aeico-components/aeico-components/src/styles/components/radio-group.css", "css-inline:/home/runner/work/aeico-components/aeico-components/src/styles/variables.css", "css-inline:/home/runner/work/aeico-components/aeico-components/src/styles/size.css", "css-inline:/home/runner/work/aeico-components/aeico-components/src/styles/color.css", "css-inline:/home/runner/work/aeico-components/aeico-components/src/styles/components/field-label.css", "css-inline:/home/runner/work/aeico-components/aeico-components/src/styles/components/action-button.css", "../src/radio-group/index.ts", "../src/aeico-field.ts", "../src/aeico-component.ts", "../src/radio-group/radio-group.ts", "../src/radio-group/radio.ts"],
4
+ "sourcesContent": ["module.exports = \":host {\\n display: inline-flex;\\n align-items: center;\\n gap: var(--rg-gap, 0.286em);\\n font-size: var(--ae-size-m);\\n\\n --rg-font-size: 1em;\\n --rg-height: 2.286em;\\n --rg-padding: 0.429em 1.071em;\\n --rg-min-width: 4.571em;\\n --rg-radius: 4px;\\n --rg-font-weight: 400;\\n}\\n\\n:host([size=\\\"xs\\\"]) { --rg-radius: 3px; }\\n:host([size=\\\"sm\\\"]) { --rg-radius: 3px; }\\n\\n.rg-container {\\n display: inline-flex;\\n align-items: center;\\n flex-wrap: wrap;\\n gap: 6px;\\n}\\n\\n:host(:not([mode])) .rg-container .action-controls,\\n:host([mode=\\\"default\\\"]) .rg-container .action-controls {\\n display: flex;\\n align-self: center;\\n margin-left: 2px;\\n border: 1px solid var(--field-action-border-color, var(--ae-border-subtle));\\n border-radius: var(--rg-radius);\\n overflow: hidden;\\n background: var(--field-action-bg, var(--ae-surface-base));\\n height: 1.333em;\\n box-sizing: border-box;\\n}\\n\\n:host(:not([mode])) .rg-container .action-controls .action-btn,\\n:host([mode=\\\"default\\\"]) .rg-container .action-controls .action-btn {\\n padding: 0 0.35em;\\n font-size: 0.7em;\\n}\\n\\nslot {\\n display: none;\\n}\\n\\n.rg-radio-option {\\n display: inline-flex;\\n align-items: center;\\n gap: 6px;\\n cursor: pointer;\\n font-size: var(--rg-font-size);\\n color: var(--ae-color-text-main);\\n user-select: none;\\n}\\n\\n.rg-radio-input {\\n width: 14px;\\n height: 14px;\\n accent-color: var(--ae-color-solid, var(--ae-color-primary));\\n cursor: pointer;\\n margin: 0;\\n flex-shrink: 0;\\n}\\n\\n.rg-radio-label {\\n line-height: 1.5;\\n}\\n\\n.rg-btn {\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n font-family: inherit;\\n font-size: var(--rg-font-size);\\n font-weight: 400;\\n height: var(--rg-height);\\n padding: var(--rg-padding);\\n min-width: var(--rg-min-width);\\n white-space: nowrap;\\n cursor: pointer;\\n user-select: none;\\n transition: background 0.15s, color 0.15s, border-color 0.15s, box-shadow 0.15s;\\n outline: none;\\n border-radius: var(--rg-radius);\\n\\n background: var(--ae-surface-base);\\n border: 1px solid var(--ae-color-gray-light);\\n color: var(--ae-color-text-muted);\\n}\\n\\n.rg-btn:hover:not(:disabled):not(.selected) {\\n background: var(--ae-surface-base-hover);\\n border-color: var(--ae-color-gray-light);\\n color: var(--ae-color-text-main);\\n}\\n\\n.rg-btn.selected {\\n background: var(--ae-color-solid);\\n border-color: var(--ae-color-solid);\\n color: var(--ae-color-on-solid);\\n font-weight: 500;\\n box-shadow: 0 1px 4px rgb(from black r g b / 0.22);\\n}\\n\\n.rg-btn.selected:hover:not(:disabled) {\\n background: var(--ae-color-solid-hover);\\n border-color: var(--ae-color-solid-hover);\\n}\\n\\n.rg-btn:active:not(:disabled):not(.selected) {\\n background: var(--ae-color-subtle-hover);\\n transform: translateY(1px);\\n}\\n\\n.rg-btn:disabled {\\n opacity: 0.45;\\n cursor: not-allowed;\\n pointer-events: none;\\n}\\n\\n:host([variant=\\\"outlined\\\"]) .rg-btn {\\n background: transparent;\\n border-color: var(--ae-color-border);\\n color: var(--ae-color-accent);\\n}\\n:host([variant=\\\"outlined\\\"]) .rg-btn:hover:not(:disabled):not(.selected) {\\n background: var(--ae-color-subtle);\\n border-color: var(--ae-color-accent);\\n color: var(--ae-color-accent-hover);\\n}\\n:host([variant=\\\"outlined\\\"]) .rg-btn.selected {\\n background: var(--ae-color-solid);\\n border-color: var(--ae-color-solid);\\n color: var(--ae-color-on-solid);\\n}\\n\\n:host([variant=\\\"subtle\\\"]) .rg-btn {\\n background: transparent;\\n border-color: transparent;\\n color: var(--ae-color-accent);\\n}\\n:host([variant=\\\"subtle\\\"]) .rg-btn:hover:not(:disabled):not(.selected) {\\n background: var(--ae-color-subtle);\\n border-color: transparent;\\n color: var(--ae-color-accent-hover);\\n}\\n:host([variant=\\\"subtle\\\"]) .rg-btn.selected {\\n background: var(--ae-color-subtle-hover);\\n border-color: transparent;\\n color: var(--ae-color-accent-hover);\\n font-weight: 600;\\n box-shadow: none;\\n}\\n\\n:host([variant=\\\"filled\\\"]) .rg-btn:not(.selected) {\\n background: var(--ae-surface-base);\\n border-color: var(--ae-border-default);\\n color: var(--ae-color-text-muted);\\n}\\n\\n:host([variant=\\\"filled\\\"]) .rg-btn:hover:not(:disabled):not(.selected) {\\n background: var(--ae-surface-raised);\\n border-color: var(--ae-border-hover);\\n color: var(--ae-color-text-main);\\n}\\n\\n:host([mode=\\\"button\\\"]) .rg-container {\\n gap: 6px;\\n}\\n\\n:host([mode=\\\"button-group\\\"]) .rg-container {\\n gap: 0;\\n}\\n\\n:host([mode=\\\"button-group\\\"]) .rg-btn:not(.first):not(.only) {\\n margin-left: -1px;\\n}\\n\\n:host([mode=\\\"button-group\\\"]) .rg-btn.first {\\n border-radius: var(--rg-radius) 0 0 var(--rg-radius);\\n}\\n:host([mode=\\\"button-group\\\"]) .rg-btn.inner {\\n border-radius: var(--ae-radius-square);\\n}\\n:host([mode=\\\"button-group\\\"]) .rg-btn.last {\\n border-radius: 0 var(--rg-radius) var(--rg-radius) 0;\\n}\\n:host([mode=\\\"button-group\\\"]) .rg-btn.only {\\n border-radius: var(--rg-radius);\\n}\\n\\n:host([mode=\\\"button-group\\\"]) .rg-btn:hover:not(:disabled),\\n:host([mode=\\\"button-group\\\"]) .rg-btn.selected {\\n position: relative;\\n z-index: 1;\\n}\\n\\n:host([mode=\\\"segmented\\\"]) .rg-container {\\n gap: 2px;\\n background: var(--ae-surface-raised);\\n border: 1px solid var(--ae-border-subtle);\\n border-radius: calc(var(--rg-radius) + 2px);\\n padding: 2px;\\n flex-wrap: nowrap;\\n}\\n\\n:host([mode=\\\"segmented\\\"]) .rg-btn {\\n background: transparent;\\n border-color: transparent;\\n color: var(--ae-color-text-muted);\\n border-radius: var(--rg-radius);\\n min-width: var(--rg-min-width);\\n box-shadow: none;\\n font-weight: 400;\\n}\\n\\n:host([mode=\\\"segmented\\\"]) .rg-btn:hover:not(:disabled):not(.selected) {\\n background: var(--ae-color-subtle);\\n border-color: transparent;\\n color: var(--ae-color-text-secondary, var(--ae-color-text-main));\\n}\\n\\n:host([mode=\\\"segmented\\\"]) .rg-btn.selected {\\n background: var(--ae-color-solid);\\n border-color: transparent;\\n color: var(--ae-color-on-solid);\\n font-weight: 500;\\n box-shadow: 0 1px 4px rgb(from black r g b / 0.35);\\n}\\n\\n:host([mode=\\\"segmented\\\"]) .rg-btn.selected:hover:not(:disabled) {\\n background: var(--ae-color-solid-hover);\\n}\\n\\n:host([mode=\\\"segmented\\\"]:not([color])) .rg-btn.selected {\\n background: var(--ae-color-gray-lighter);\\n color: var(--ae-color-text-main);\\n}\\n\\n:host([mode=\\\"segmented\\\"][variant=\\\"outlined\\\"]) .rg-container {\\n border-color: var(--ae-color-border);\\n}\\n:host([mode=\\\"segmented\\\"][variant=\\\"outlined\\\"]) .rg-btn.selected {\\n background: var(--ae-color-solid);\\n border-color: transparent;\\n color: var(--ae-color-on-solid);\\n}\\n\\n:host([mode=\\\"button\\\"]) .reset-btn,\\n:host([mode=\\\"button\\\"]) .clear-btn,\\n:host([mode=\\\"button-group\\\"]) .reset-btn,\\n:host([mode=\\\"button-group\\\"]) .clear-btn,\\n:host([mode=\\\"segmented\\\"]) .reset-btn,\\n:host([mode=\\\"segmented\\\"]) .clear-btn {\\n height: var(--rg-height);\\n width: var(--rg-height);\\n border-radius: var(--rg-radius);\\n font-size: var(--rg-font-size);\\n}\\n\\n:host([mode=\\\"button\\\"]) .reset-btn,\\n:host([mode=\\\"button\\\"]) .clear-btn,\\n:host([mode=\\\"button-group\\\"]) .reset-btn,\\n:host([mode=\\\"button-group\\\"]) .clear-btn,\\n:host([mode=\\\"segmented\\\"]) .reset-btn,\\n:host([mode=\\\"segmented\\\"]) .clear-btn {\\n background: transparent;\\n border: 1px solid var(--ae-color-gray-light);\\n color: var(--ae-color-text-muted);\\n}\\n\\n:host([mode=\\\"button\\\"]) .reset-btn:hover,\\n:host([mode=\\\"button-group\\\"]) .reset-btn:hover,\\n:host([mode=\\\"segmented\\\"]) .reset-btn:hover {\\n background: var(--ae-border-subtle);\\n border-color: var(--ae-color-gray-lighter);\\n color: var(--ae-color-text-main);\\n}\\n\\n:host([mode=\\\"button\\\"]) .clear-btn:hover,\\n:host([mode=\\\"button-group\\\"]) .clear-btn:hover,\\n:host([mode=\\\"segmented\\\"]) .clear-btn:hover {\\n background: rgb(from var(--ae-red) r g b / 0.10);\\n border-color: var(--ae-color-gray-lighter);\\n color: var(--ae-color-danger);\\n}\\n\\n:host([variant=\\\"outlined\\\"][mode=\\\"button\\\"]) .reset-btn,\\n:host([variant=\\\"outlined\\\"][mode=\\\"button\\\"]) .clear-btn,\\n:host([variant=\\\"outlined\\\"][mode=\\\"button-group\\\"]) .reset-btn,\\n:host([variant=\\\"outlined\\\"][mode=\\\"button-group\\\"]) .clear-btn,\\n:host([variant=\\\"outlined\\\"][mode=\\\"segmented\\\"]) .reset-btn,\\n:host([variant=\\\"outlined\\\"][mode=\\\"segmented\\\"]) .clear-btn {\\n background: transparent;\\n border-color: var(--ae-color-border);\\n color: var(--ae-color-accent);\\n}\\n\\n:host([variant=\\\"outlined\\\"][mode=\\\"button\\\"]) .reset-btn:hover,\\n:host([variant=\\\"outlined\\\"][mode=\\\"button-group\\\"]) .reset-btn:hover,\\n:host([variant=\\\"outlined\\\"][mode=\\\"segmented\\\"]) .reset-btn:hover {\\n background: var(--ae-border-subtle);\\n border-color: var(--ae-color-border-hover);\\n color: var(--ae-color-accent-hover);\\n}\\n\\n:host([variant=\\\"outlined\\\"][mode=\\\"button\\\"]) .clear-btn:hover,\\n:host([variant=\\\"outlined\\\"][mode=\\\"button-group\\\"]) .clear-btn:hover,\\n:host([variant=\\\"outlined\\\"][mode=\\\"segmented\\\"]) .clear-btn:hover {\\n background: rgb(from var(--ae-red) r g b / 0.10);\\n border-color: var(--ae-color-border-hover);\\n color: var(--ae-color-danger);\\n}\\n\\n:host([variant=\\\"subtle\\\"][mode=\\\"button\\\"]) .reset-btn,\\n:host([variant=\\\"subtle\\\"][mode=\\\"button\\\"]) .clear-btn,\\n:host([variant=\\\"subtle\\\"][mode=\\\"button-group\\\"]) .reset-btn,\\n:host([variant=\\\"subtle\\\"][mode=\\\"button-group\\\"]) .clear-btn,\\n:host([variant=\\\"subtle\\\"][mode=\\\"segmented\\\"]) .reset-btn,\\n:host([variant=\\\"subtle\\\"][mode=\\\"segmented\\\"]) .clear-btn {\\n background: transparent;\\n border-color: transparent;\\n color: var(--ae-color-accent);\\n}\\n\\n:host([variant=\\\"subtle\\\"][mode=\\\"button\\\"]) .reset-btn:hover,\\n:host([variant=\\\"subtle\\\"][mode=\\\"button-group\\\"]) .reset-btn:hover,\\n:host([variant=\\\"subtle\\\"][mode=\\\"segmented\\\"]) .reset-btn:hover {\\n background: var(--ae-border-subtle);\\n border-color: transparent;\\n color: var(--ae-color-accent-hover);\\n}\\n\\n:host([variant=\\\"subtle\\\"][mode=\\\"button\\\"]) .clear-btn:hover,\\n:host([variant=\\\"subtle\\\"][mode=\\\"button-group\\\"]) .clear-btn:hover,\\n:host([variant=\\\"subtle\\\"][mode=\\\"segmented\\\"]) .clear-btn:hover {\\n background: rgb(from var(--ae-red) r g b / 0.10);\\n border-color: transparent;\\n color: var(--ae-color-danger);\\n}\\n\"", "module.exports = \":root,\\n:host {\\n --ae-font-sans-serif: system-ui, -apple-system, \\\"Segoe UI\\\", Roboto, \\\"Helvetica Neue\\\",\\n \\\"Noto Sans\\\", \\\"Liberation Sans\\\", Arial, sans-serif,\\n \\\"Apple Color Emoji\\\", \\\"Segoe UI Emoji\\\", \\\"Segoe UI Symbol\\\", \\\"Noto Color Emoji\\\";\\n --ae-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas,\\n \\\"Liberation Mono\\\", \\\"Courier New\\\", monospace;\\n font-family: var(--ae-font-sans-serif);\\n --ae-blue: #0e639c;\\n --ae-green: #28a745;\\n --ae-red: #dc3545;\\n --ae-yellow: #ffc107;\\n --ae-cyan: #17a2b8;\\n --ae-gray: #6e6e6e;\\n --ae-slate: #64748b;\\n --ae-dark: #343a40;\\n --ae-light: #f8f9fa;\\n}\\n\\n:root,\\n:host {\\n /* Blue */\\n --ae-blue-100: color-mix(in srgb, var(--ae-blue) 20%, white);\\n --ae-blue-200: color-mix(in srgb, var(--ae-blue) 40%, white);\\n --ae-blue-300: color-mix(in srgb, var(--ae-blue) 60%, white);\\n --ae-blue-400: color-mix(in srgb, var(--ae-blue) 80%, white);\\n --ae-blue-500: var(--ae-blue);\\n --ae-blue-600: color-mix(in srgb, var(--ae-blue) 80%, black);\\n --ae-blue-700: color-mix(in srgb, var(--ae-blue) 60%, black);\\n --ae-blue-800: color-mix(in srgb, var(--ae-blue) 40%, black);\\n --ae-blue-900: color-mix(in srgb, var(--ae-blue) 20%, black);\\n\\n /* Green */\\n --ae-green-100: color-mix(in srgb, var(--ae-green) 20%, white);\\n --ae-green-200: color-mix(in srgb, var(--ae-green) 40%, white);\\n --ae-green-300: color-mix(in srgb, var(--ae-green) 60%, white);\\n --ae-green-400: color-mix(in srgb, var(--ae-green) 80%, white);\\n --ae-green-500: var(--ae-green);\\n --ae-green-600: color-mix(in srgb, var(--ae-green) 80%, black);\\n --ae-green-700: color-mix(in srgb, var(--ae-green) 60%, black);\\n --ae-green-800: color-mix(in srgb, var(--ae-green) 40%, black);\\n --ae-green-900: color-mix(in srgb, var(--ae-green) 20%, black);\\n\\n /* Red */\\n --ae-red-100: color-mix(in srgb, var(--ae-red) 20%, white);\\n --ae-red-200: color-mix(in srgb, var(--ae-red) 40%, white);\\n --ae-red-300: color-mix(in srgb, var(--ae-red) 60%, white);\\n --ae-red-400: color-mix(in srgb, var(--ae-red) 80%, white);\\n --ae-red-500: var(--ae-red);\\n --ae-red-600: color-mix(in srgb, var(--ae-red) 80%, black);\\n --ae-red-700: color-mix(in srgb, var(--ae-red) 60%, black);\\n --ae-red-800: color-mix(in srgb, var(--ae-red) 40%, black);\\n --ae-red-900: color-mix(in srgb, var(--ae-red) 20%, black);\\n\\n /* Yellow */\\n --ae-yellow-100: color-mix(in srgb, var(--ae-yellow) 20%, white);\\n --ae-yellow-200: color-mix(in srgb, var(--ae-yellow) 40%, white);\\n --ae-yellow-300: color-mix(in srgb, var(--ae-yellow) 60%, white);\\n --ae-yellow-400: color-mix(in srgb, var(--ae-yellow) 80%, white);\\n --ae-yellow-500: var(--ae-yellow);\\n --ae-yellow-600: color-mix(in srgb, var(--ae-yellow) 80%, black);\\n --ae-yellow-700: color-mix(in srgb, var(--ae-yellow) 60%, black);\\n --ae-yellow-800: color-mix(in srgb, var(--ae-yellow) 40%, black);\\n --ae-yellow-900: color-mix(in srgb, var(--ae-yellow) 20%, black);\\n\\n /* Cyan */\\n --ae-cyan-100: color-mix(in srgb, var(--ae-cyan) 20%, white);\\n --ae-cyan-200: color-mix(in srgb, var(--ae-cyan) 40%, white);\\n --ae-cyan-300: color-mix(in srgb, var(--ae-cyan) 60%, white);\\n --ae-cyan-400: color-mix(in srgb, var(--ae-cyan) 80%, white);\\n --ae-cyan-500: var(--ae-cyan);\\n --ae-cyan-600: color-mix(in srgb, var(--ae-cyan) 80%, black);\\n --ae-cyan-700: color-mix(in srgb, var(--ae-cyan) 60%, black);\\n --ae-cyan-800: color-mix(in srgb, var(--ae-cyan) 40%, black);\\n --ae-cyan-900: color-mix(in srgb, var(--ae-cyan) 20%, black);\\n\\n /* Gray (neutral - base #6e6e6e) */\\n --ae-gray-100: color-mix(in srgb, var(--ae-gray) 20%, white);\\n --ae-gray-200: color-mix(in srgb, var(--ae-gray) 40%, white);\\n --ae-gray-300: color-mix(in srgb, var(--ae-gray) 60%, white);\\n --ae-gray-400: color-mix(in srgb, var(--ae-gray) 80%, white);\\n --ae-gray-500: var(--ae-gray);\\n --ae-gray-600: color-mix(in srgb, var(--ae-gray) 80%, black);\\n --ae-gray-700: color-mix(in srgb, var(--ae-gray) 60%, black);\\n --ae-gray-800: color-mix(in srgb, var(--ae-gray) 40%, black);\\n --ae-gray-900: color-mix(in srgb, var(--ae-gray) 20%, black);\\n\\n /* Slate (blue-gray - base #64748b, used for 'secondary') */\\n --ae-slate-100: color-mix(in srgb, var(--ae-slate) 20%, white);\\n --ae-slate-200: color-mix(in srgb, var(--ae-slate) 40%, white);\\n --ae-slate-300: color-mix(in srgb, var(--ae-slate) 60%, white);\\n --ae-slate-400: color-mix(in srgb, var(--ae-slate) 80%, white);\\n --ae-slate-500: var(--ae-slate);\\n --ae-slate-600: color-mix(in srgb, var(--ae-slate) 80%, black);\\n --ae-slate-700: color-mix(in srgb, var(--ae-slate) 60%, black);\\n --ae-slate-800: color-mix(in srgb, var(--ae-slate) 40%, black);\\n --ae-slate-900: color-mix(in srgb, var(--ae-slate) 20%, black);\\n\\n /* Dark (base #343a40) */\\n --ae-dark-100: color-mix(in srgb, var(--ae-dark) 20%, white);\\n --ae-dark-200: color-mix(in srgb, var(--ae-dark) 40%, white);\\n --ae-dark-300: color-mix(in srgb, var(--ae-dark) 60%, white);\\n --ae-dark-400: color-mix(in srgb, var(--ae-dark) 80%, white);\\n --ae-dark-500: var(--ae-dark);\\n --ae-dark-600: color-mix(in srgb, var(--ae-dark) 80%, black);\\n --ae-dark-700: color-mix(in srgb, var(--ae-dark) 60%, black);\\n --ae-dark-800: color-mix(in srgb, var(--ae-dark) 40%, black);\\n --ae-dark-900: color-mix(in srgb, var(--ae-dark) 20%, black);\\n\\n /* Light (base #f8f9fa) */\\n --ae-light-100: color-mix(in srgb, var(--ae-light) 20%, white);\\n --ae-light-200: color-mix(in srgb, var(--ae-light) 40%, white);\\n --ae-light-300: color-mix(in srgb, var(--ae-light) 60%, white);\\n --ae-light-400: color-mix(in srgb, var(--ae-light) 80%, white);\\n --ae-light-500: var(--ae-light);\\n --ae-light-600: color-mix(in srgb, var(--ae-light) 80%, black);\\n --ae-light-700: color-mix(in srgb, var(--ae-light) 60%, black);\\n --ae-light-800: color-mix(in srgb, var(--ae-light) 40%, black);\\n --ae-light-900: color-mix(in srgb, var(--ae-light) 20%, black);\\n}\\n\\n:root,\\n:host {\\n /* Hover / active mix (light default - overridden in \u00A7 6 dark) */\\n --ae-color-mix-hover: black 10%;\\n --ae-color-mix-active: black 20%;\\n\\n /* Primary (Blue) */\\n --ae-color-primary: var(--ae-blue-500);\\n --ae-color-primary-hover: color-mix(in srgb, var(--ae-color-primary), var(--ae-color-mix-hover));\\n --ae-color-primary-active: color-mix(in srgb, var(--ae-color-primary), var(--ae-color-mix-active));\\n --ae-color-primary-disabled: color-mix(in srgb, var(--ae-blue) 50%, var(--ae-gray-500));\\n\\n /* Success (Green) */\\n --ae-color-success: var(--ae-green-500);\\n --ae-color-success-hover: color-mix(in srgb, var(--ae-color-success), var(--ae-color-mix-hover));\\n --ae-color-success-active: color-mix(in srgb, var(--ae-color-success), var(--ae-color-mix-active));\\n --ae-color-success-disabled: color-mix(in srgb, var(--ae-green) 50%, var(--ae-gray-500));\\n\\n /* Danger (Red) */\\n --ae-color-danger: var(--ae-red-500);\\n --ae-color-danger-hover: color-mix(in srgb, var(--ae-color-danger), var(--ae-color-mix-hover));\\n --ae-color-danger-active: color-mix(in srgb, var(--ae-color-danger), var(--ae-color-mix-active));\\n --ae-color-danger-disabled: color-mix(in srgb, var(--ae-red) 50%, var(--ae-gray-500));\\n\\n /* Warning (Yellow) */\\n --ae-color-warning: var(--ae-yellow-500);\\n --ae-color-warning-hover: color-mix(in srgb, var(--ae-color-warning), var(--ae-color-mix-hover));\\n --ae-color-warning-active: color-mix(in srgb, var(--ae-color-warning), var(--ae-color-mix-active));\\n --ae-color-warning-disabled: color-mix(in srgb, var(--ae-yellow) 50%, var(--ae-gray-500));\\n\\n /* Info (Cyan) */\\n --ae-color-info: var(--ae-cyan-500);\\n --ae-color-info-hover: color-mix(in srgb, var(--ae-color-info), var(--ae-color-mix-hover));\\n --ae-color-info-active: color-mix(in srgb, var(--ae-color-info), var(--ae-color-mix-active));\\n --ae-color-info-disabled: color-mix(in srgb, var(--ae-cyan) 50%, var(--ae-gray-500));\\n\\n /* Secondary (Slate) - base differs per theme, overridden in \u00A7 6 dark */\\n --ae-color-secondary: var(--ae-slate-500);\\n --ae-color-secondary-hover: color-mix(in srgb, var(--ae-color-secondary), var(--ae-color-mix-hover));\\n --ae-color-secondary-active: color-mix(in srgb, var(--ae-color-secondary), var(--ae-color-mix-active));\\n --ae-color-secondary-text: var(--ae-slate-700);\\n}\\n\\n\\n.theme-light,\\n:root[theme=\\\"light\\\"],\\n:host([theme=\\\"light\\\"]),\\n:host-context([theme=\\\"light\\\"]),\\n:where(:root),\\n:host {\\n color-scheme: light;\\n\\n /* Gray UI aliases - lighter palette steps for elements on white background */\\n --ae-color-gray-dark: var(--ae-gray-400);\\n --ae-color-gray: var(--ae-gray-300);\\n --ae-color-gray-light: var(--ae-gray-200);\\n --ae-color-gray-lighter: var(--ae-gray-100);\\n --ae-color-gray-lightest: color-mix(in srgb, var(--ae-gray) 10%, white);\\n\\n /* Text */\\n --ae-color-text-main: var(--ae-dark-700);\\n --ae-color-text-muted: var(--ae-gray-600);\\n --ae-color-text-disabled: var(--ae-gray-300);\\n --ae-color-text-link: var(--ae-blue-500);\\n --ae-color-text-link-hover: var(--ae-blue-700);\\n\\n /* Surfaces */\\n --ae-surface-sunken: var(--ae-light-500);\\n --ae-surface-base: white;\\n --ae-surface-raised: var(--ae-light-500);\\n --ae-surface-overlay: white;\\n --ae-color-overlay: rgba(0, 0, 0, 0.4);\\n\\n /* Borders */\\n --ae-border-subtle: rgba(0, 0, 0, 0.08);\\n --ae-border-default: rgba(0, 0, 0, 0.15);\\n --ae-border-hover: rgba(0, 0, 0, 0.25);\\n --ae-border-focus: var(--ae-color-primary);\\n --ae-border-disabled: rgba(0, 0, 0, 0.06);\\n\\n /* Focus ring */\\n --ae-focus-ring: rgb(from var(--ae-blue) r g b / 0.30);\\n --ae-focus-ring-sm: rgb(from var(--ae-blue) r g b / 0.15);\\n\\n /* Subtle intent tokens - light context */\\n --ae-color-primary-bg-subtle: rgb(from var(--ae-blue) r g b / 0.08);\\n --ae-color-primary-border-subtle: rgb(from var(--ae-blue) r g b / 0.40);\\n --ae-color-primary-text-emphasis: var(--ae-blue-700);\\n\\n --ae-color-success-bg-subtle: rgb(from var(--ae-green) r g b / 0.08);\\n --ae-color-success-border-subtle: rgb(from var(--ae-green) r g b / 0.40);\\n --ae-color-success-text-emphasis: var(--ae-green-700);\\n\\n --ae-color-danger-bg-subtle: rgb(from var(--ae-red) r g b / 0.08);\\n --ae-color-danger-border-subtle: rgb(from var(--ae-red) r g b / 0.40);\\n --ae-color-danger-text-emphasis: var(--ae-red-700);\\n\\n --ae-color-warning-bg-subtle: rgb(from var(--ae-yellow) r g b / 0.08);\\n --ae-color-warning-border-subtle: rgb(from var(--ae-yellow) r g b / 0.40);\\n --ae-color-warning-text-emphasis: var(--ae-yellow-700);\\n\\n --ae-color-info-bg-subtle: rgb(from var(--ae-cyan) r g b / 0.08);\\n --ae-color-info-border-subtle: rgb(from var(--ae-cyan) r g b / 0.40);\\n --ae-color-info-text-emphasis: var(--ae-cyan-700);\\n\\n --ae-color-secondary-bg-subtle: rgb(from var(--ae-slate) r g b / 0.08);\\n --ae-color-secondary-border-subtle: rgb(from var(--ae-slate) r g b / 0.40);\\n --ae-color-secondary-text-emphasis: var(--ae-slate-700);\\n\\n --ae-color-light-bg-subtle: var(--ae-gray-100); /* opaque on white: ~#e2e2e2 */\\n --ae-color-light-border-subtle: var(--ae-gray-200); /* opaque on white: ~#c4c4c4 */\\n\\n --ae-color-dark-bg-subtle: var(--ae-dark-100); /* opaque on white: ~#d6d8d9 */\\n --ae-color-dark-border-subtle: var(--ae-dark-300); /* opaque on white: ~#85898c */\\n\\n /* Component tokens - light defaults */\\n --ae-action-btn-bg: var(--ae-gray-200);\\n --ae-action-btn-bg-hover: var(--ae-color-primary);\\n --ae-action-btn-color: var(--ae-gray-600);\\n --ae-action-btn-color-hover: white;\\n\\n --ae-clear-btn-bg-hover: var(--ae-color-danger);\\n --ae-clear-btn-color-hover: white;\\n\\n --ae-reset-btn-border-radius: var(--ae-radius-xs);\\n --ae-reset-btn-bg: var(--ae-action-btn-bg);\\n --ae-reset-btn-bg-hover: var(--ae-action-btn-bg-hover);\\n --ae-reset-btn-color: var(--ae-action-btn-color);\\n --ae-reset-btn-color-hover: var(--ae-action-btn-color-hover);\\n --ae-reset-btn-transition: all 0.12s;\\n\\n --ae-clear-btn-border-radius: var(--ae-radius-xs);\\n --ae-clear-btn-bg: var(--ae-action-btn-bg);\\n --ae-clear-btn-color: var(--ae-action-btn-color);\\n --ae-clear-btn-transition: all 0.12s;\\n}\\n\\n:root,\\n:host {\\n --ae-size-scale: 1;\\n --ae-size-base: calc(1rem * var(--ae-size-scale)); /* 16px */\\n --ae-size-xl: round(calc(var(--ae-size-l) * 1.125), 1px); /* 23px */\\n --ae-size-l: round(calc(var(--ae-size-m) * 1.125 * 1.125), 1px); /* 20px */\\n --ae-size-m: var(--ae-size-base); /* 16px */\\n --ae-size-s: round(calc(var(--ae-size-m) / 1.125), 1px); /* 14px */\\n --ae-size-xs: round(calc(var(--ae-size-s) / 1.125), 1px); /* 12px */\\n --ae-size-2xs: round(calc(var(--ae-size-xs) / 1.125), 1px); /* 11px */\\n --ae-size-3xs: round(calc(var(--ae-size-2xs) / 1.125), 1px); /* 10px */\\n}\\n\\n/* Border-radius tokens - shared across all components */\\n:root,\\n:host {\\n /**\\n * Unified border-radius hook for all components.\\n *\\n *\\n * Usage:\\n * :root { --ae-border-radius: 0; } // global: all components square\\n * :root { --ae-border-radius: 999px; } // global: all components pill\\n * ae-button { --ae-border-radius: 50%; } // scoped: only buttons circular\\n * .sidebar { --ae-border-radius: 8px; } // scoped: everything inside .sidebar\\n *\\n * To restore a component to its own default:\\n * ae-card { --ae-border-radius: initial; }\\n */\\n\\n --ae-radius-square: 0;\\n --ae-radius-xs: 2px;\\n --ae-radius-sm: 4px;\\n --ae-radius-md: 6px;\\n --ae-radius-lg: 8px;\\n --ae-radius-xl: 12px;\\n --ae-radius-pill: 999px;\\n --ae-radius-circle: 50%;\\n}\\n\\n/* Layout tokens - defined on :root so all light DOM elements can use them */\\n:root,\\n:host {\\n --container-max-width: 1280px;\\n --container-padding-x: 1.5rem;\\n}\\n\\n.theme-dark,\\n:root[theme=\\\"dark\\\"],\\n:host([theme=\\\"dark\\\"]),\\n:host-context([theme=\\\"dark\\\"]) {\\n color-scheme: dark;\\n\\n /* Hover / active - slightly gentler on dark backgrounds */\\n --ae-color-mix-hover: black 8%;\\n --ae-color-mix-active: black 16%;\\n\\n /* Gray UI aliases - darker palette steps for elements on dark background */\\n --ae-color-gray-dark: var(--ae-gray-800);\\n --ae-color-gray: var(--ae-gray-700);\\n --ae-color-gray-light: var(--ae-gray-600);\\n --ae-color-gray-lighter: var(--ae-gray-500);\\n --ae-color-gray-lightest: var(--ae-gray-400);\\n\\n /* Secondary - deeper base on dark background */\\n --ae-color-secondary: var(--ae-slate-700);\\n --ae-color-secondary-text: var(--ae-slate-300);\\n\\n /* Text */\\n --ae-color-text-main: white;\\n --ae-color-text-muted: var(--ae-gray-200);\\n --ae-color-text-disabled: var(--ae-gray-500);\\n --ae-color-text-link: var(--ae-blue-300);\\n --ae-color-text-link-hover: var(--ae-blue-200);\\n\\n /* Surfaces */\\n --ae-surface-sunken: var(--ae-gray-900);\\n --ae-surface-base: color-mix(in srgb, var(--ae-gray) 27%, black);\\n --ae-surface-raised: color-mix(in srgb, var(--ae-gray) 34%, black);\\n --ae-surface-overlay: color-mix(in srgb, var(--ae-gray) 38%, black);\\n --ae-color-overlay: rgba(0, 0, 0, 0.6);\\n\\n /* Borders */\\n --ae-border-subtle: rgba(255, 255, 255, 0.08);\\n --ae-border-default: rgba(255, 255, 255, 0.12);\\n --ae-border-hover: rgba(255, 255, 255, 0.20);\\n --ae-border-focus: var(--ae-color-primary);\\n --ae-border-disabled: rgba(255, 255, 255, 0.06);\\n\\n /* Focus ring */\\n --ae-focus-ring: rgb(from var(--ae-blue) r g b / 0.25);\\n --ae-focus-ring-sm: rgb(from var(--ae-blue) r g b / 0.10);\\n\\n /* Subtle intent tokens - dark context (more alpha, lighter text-emphasis) */\\n --ae-color-primary-bg-subtle: rgb(from var(--ae-blue) r g b / 0.10);\\n --ae-color-primary-border-subtle: rgb(from var(--ae-blue) r g b / 0.30);\\n --ae-color-primary-text-emphasis: var(--ae-blue-300);\\n\\n --ae-color-success-bg-subtle: rgb(from var(--ae-green) r g b / 0.10);\\n --ae-color-success-border-subtle: rgb(from var(--ae-green) r g b / 0.30);\\n --ae-color-success-text-emphasis: var(--ae-green-300);\\n\\n --ae-color-danger-bg-subtle: rgb(from var(--ae-red) r g b / 0.10);\\n --ae-color-danger-border-subtle: rgb(from var(--ae-red) r g b / 0.30);\\n --ae-color-danger-text-emphasis: var(--ae-red-300);\\n\\n --ae-color-warning-bg-subtle: rgb(from var(--ae-yellow) r g b / 0.10);\\n --ae-color-warning-border-subtle: rgb(from var(--ae-yellow) r g b / 0.30);\\n --ae-color-warning-text-emphasis: var(--ae-yellow-300);\\n\\n --ae-color-info-bg-subtle: rgb(from var(--ae-cyan) r g b / 0.10);\\n --ae-color-info-border-subtle: rgb(from var(--ae-cyan) r g b / 0.30);\\n --ae-color-info-text-emphasis: var(--ae-cyan-300);\\n\\n --ae-color-secondary-bg-subtle: rgb(from var(--ae-slate) r g b / 0.10);\\n --ae-color-secondary-border-subtle: rgb(from var(--ae-slate) r g b / 0.30);\\n --ae-color-secondary-text-emphasis: var(--ae-slate-300);\\n\\n --ae-color-light-bg-subtle: rgb(from var(--ae-light) r g b / 0.20);\\n --ae-color-light-border-subtle: rgb(from var(--ae-light) r g b / 0.25);\\n\\n --ae-color-dark-bg-subtle: rgb(from var(--ae-dark) r g b / 0.30);\\n --ae-color-dark-border-subtle: rgb(from var(--ae-dark) r g b / 0.50);\\n\\n /* Component tokens - dark overrides */\\n --ae-action-btn-bg: var(--ae-color-gray);\\n --ae-action-btn-bg-hover: color-mix(in srgb, var(--ae-blue) 25%, var(--ae-gray-800));\\n --ae-action-btn-color: var(--ae-gray-400);\\n --ae-action-btn-color-hover: var(--ae-cyan-300);\\n --ae-clear-btn-bg-hover: color-mix(in srgb, var(--ae-red) 25%, var(--ae-gray-800));\\n --ae-clear-btn-color-hover: var(--ae-red-300);\\n}\\n\"", "module.exports = \":host([size=\\\"xs\\\"]) { font-size: var(--ae-size-xs); }\\n:host([size=\\\"sm\\\"]) { font-size: var(--ae-size-s); }\\n:host([size=\\\"md\\\"]) { font-size: var(--ae-size-m); }\\n:host([size=\\\"lg\\\"]) { font-size: var(--ae-size-l); }\\n:host([size=\\\"xl\\\"]) { font-size: var(--ae-size-xl); }\\n:host([size=\\\"3xs\\\"]) { font-size: var(--ae-size-3xs); }\\n:host([size=\\\"2xs\\\"]) { font-size: var(--ae-size-2xs); }\\n\"", "module.exports = \":host {\\n --ae-color-solid: var(--ae-color-gray);\\n --ae-color-solid-hover: color-mix(in srgb, var(--ae-color-solid), var(--ae-color-mix-hover));\\n --ae-color-solid-active: color-mix(in srgb, var(--ae-color-solid), var(--ae-color-mix-active));\\n --ae-color-on-solid: var(--ae-color-text-main);\\n --ae-color-border: var(--ae-color-gray);\\n --ae-color-border-hover: color-mix(in srgb, var(--ae-color-border), var(--ae-color-mix-hover));\\n --ae-color-accent: var(--ae-color-text-muted);\\n --ae-color-accent-hover: var(--ae-color-text-main);\\n --ae-color-subtle: var(--ae-border-subtle);\\n --ae-color-subtle-hover: var(--ae-border-default);\\n --ae-color-bg-subtle: var(--ae-border-subtle);\\n --ae-color-text-subtle: var(--ae-color-text-muted);\\n --ae-color-border-subtle: var(--ae-border-default);\\n}\\n\\n:host([color=\\\"primary\\\"]) {\\n --ae-color-solid: var(--ae-color-primary);\\n --ae-color-on-solid: white;\\n --ae-color-border: var(--ae-color-primary);\\n --ae-color-accent: var(--ae-color-text-link);\\n --ae-color-accent-hover: var(--ae-color-text-link-hover);\\n --ae-color-subtle: var(--ae-color-primary-bg-subtle);\\n --ae-color-subtle-hover: rgb(from var(--ae-blue) r g b / 0.15);\\n --ae-color-bg-subtle: var(--ae-color-primary-bg-subtle);\\n --ae-color-text-subtle: var(--ae-color-primary-text-emphasis);\\n --ae-color-border-subtle: var(--ae-color-primary-border-subtle);\\n}\\n\\n:host([color=\\\"secondary\\\"]) {\\n --ae-color-solid: var(--ae-color-secondary);\\n --ae-color-on-solid: white;\\n --ae-color-border: var(--ae-color-secondary-hover);\\n --ae-color-accent: var(--ae-color-secondary-text-emphasis);\\n --ae-color-accent-hover: var(--ae-color-text-main);\\n --ae-color-subtle: rgb(from var(--ae-slate) r g b / 0.06);\\n --ae-color-subtle-hover: rgb(from var(--ae-slate) r g b / 0.12);\\n --ae-color-bg-subtle: var(--ae-color-secondary-bg-subtle);\\n --ae-color-text-subtle: var(--ae-color-secondary-text-emphasis);\\n --ae-color-border-subtle: var(--ae-color-secondary-border-subtle);\\n}\\n\\n:host([color=\\\"success\\\"]) {\\n --ae-color-solid: var(--ae-color-success);\\n --ae-color-on-solid: white;\\n --ae-color-border: var(--ae-color-success);\\n --ae-color-accent: var(--ae-color-success-text-emphasis);\\n --ae-color-accent-hover: var(--ae-color-success-hover);\\n --ae-color-subtle: var(--ae-color-success-bg-subtle);\\n --ae-color-subtle-hover: rgb(from var(--ae-green) r g b / 0.15);\\n --ae-color-bg-subtle: var(--ae-color-success-bg-subtle);\\n --ae-color-text-subtle: var(--ae-color-success-text-emphasis);\\n --ae-color-border-subtle: var(--ae-color-success-border-subtle);\\n}\\n\\n:host([color=\\\"danger\\\"]) {\\n --ae-color-solid: var(--ae-color-danger);\\n --ae-color-on-solid: white;\\n --ae-color-border: var(--ae-color-danger);\\n --ae-color-accent: var(--ae-color-danger-text-emphasis);\\n --ae-color-accent-hover: var(--ae-color-danger-hover);\\n --ae-color-subtle: var(--ae-color-danger-bg-subtle);\\n --ae-color-subtle-hover: rgb(from var(--ae-red) r g b / 0.15);\\n --ae-color-bg-subtle: var(--ae-color-danger-bg-subtle);\\n --ae-color-text-subtle: var(--ae-color-danger-text-emphasis);\\n --ae-color-border-subtle: var(--ae-color-danger-border-subtle);\\n}\\n\\n:host([color=\\\"warning\\\"]) {\\n --ae-color-solid: var(--ae-color-warning);\\n --ae-color-on-solid: var(--ae-gray-900);\\n --ae-color-border: var(--ae-color-warning);\\n --ae-color-accent: var(--ae-color-warning-text-emphasis);\\n --ae-color-accent-hover: var(--ae-color-warning-hover);\\n --ae-color-subtle: var(--ae-color-warning-bg-subtle);\\n --ae-color-subtle-hover: rgb(from var(--ae-yellow) r g b / 0.15);\\n --ae-color-bg-subtle: var(--ae-color-warning-bg-subtle);\\n --ae-color-text-subtle: var(--ae-color-warning-text-emphasis);\\n --ae-color-border-subtle: var(--ae-color-warning-border-subtle);\\n}\\n\\n:host([color=\\\"info\\\"]) {\\n --ae-color-solid: var(--ae-color-info);\\n --ae-color-on-solid: white;\\n --ae-color-border: var(--ae-color-info);\\n --ae-color-accent: var(--ae-color-info-text-emphasis);\\n --ae-color-accent-hover: var(--ae-color-info-hover);\\n --ae-color-subtle: var(--ae-color-info-bg-subtle);\\n --ae-color-subtle-hover: rgb(from var(--ae-cyan) r g b / 0.15);\\n --ae-color-bg-subtle: var(--ae-color-info-bg-subtle);\\n --ae-color-text-subtle: var(--ae-color-info-text-emphasis);\\n --ae-color-border-subtle: var(--ae-color-info-border-subtle);\\n}\\n\\n:host([color=\\\"light\\\"]) {\\n --ae-color-solid: var(--ae-light);\\n --ae-color-on-solid: var(--ae-gray-900);\\n --ae-color-border: var(--ae-border-hover);\\n --ae-color-subtle: var(--ae-color-light-bg-subtle);\\n --ae-color-subtle-hover: var(--ae-color-light-border-subtle);\\n --ae-color-bg-subtle: var(--ae-color-light-bg-subtle);\\n --ae-color-text-subtle: var(--ae-color-text-muted);\\n --ae-color-border-subtle: var(--ae-color-light-border-subtle);\\n}\\n\\n:host([color=\\\"dark\\\"]) {\\n --ae-color-solid: var(--ae-dark-500);\\n --ae-color-on-solid: white;\\n --ae-color-border: var(--ae-dark-500);\\n --ae-color-accent: var(--ae-color-text-main);\\n --ae-color-accent-hover: var(--ae-color-text-main);\\n --ae-color-subtle: var(--ae-color-dark-bg-subtle);\\n --ae-color-subtle-hover: var(--ae-color-dark-border-subtle);\\n --ae-color-bg-subtle: var(--ae-color-dark-bg-subtle);\\n --ae-color-text-subtle: var(--ae-color-text-main);\\n --ae-color-border-subtle: var(--ae-color-dark-border-subtle);\\n}\\n\"", "module.exports = \":host {\\n --field-label-gap: 4px;\\n --field-label-col-gap: 8px;\\n --field-label-width: 100px;\\n --field-label-font-size: 0.875em;\\n --field-label-color: inherit;\\n --field-required-color: var(--ae-red, #dc3545);\\n --field-helper-color: var(--ae-color-text-muted, #6e6e6e);\\n --field-error-color: var(--ae-red, #dc3545);\\n}\\n\\n:host([label]) {\\n display: flex;\\n flex-direction: column;\\n align-items: stretch;\\n gap: var(--field-label-gap);\\n}\\n\\n:host([label][label-placement=\\\"left\\\"]) {\\n display: grid;\\n grid-template-columns: var(--field-label-width) 1fr;\\n column-gap: var(--field-label-col-gap);\\n row-gap: var(--field-label-gap);\\n align-items: center;\\n}\\n\\n:host([label][label-placement=\\\"left\\\"]) .field-label {\\n align-self: center;\\n}\\n\\n:host([label][label-placement=\\\"left\\\"]) .field-helper,\\n:host([label][label-placement=\\\"left\\\"]) .field-error {\\n grid-column: 2;\\n}\\n\\n.field-label {\\n font-size: var(--field-label-font-size);\\n color: var(--field-label-color);\\n user-select: none;\\n line-height: 1.4;\\n}\\n\\n.field-required {\\n color: var(--field-required-color);\\n margin-left: 2px;\\n}\\n\\n.field-helper {\\n font-size: 0.8em;\\n color: var(--field-helper-color);\\n line-height: 1.4;\\n}\\n\\n.field-error {\\n font-size: 0.8em;\\n color: var(--field-error-color);\\n line-height: 1.4;\\n}\\n\\n/* Action controls container (integrated style) */\\n.action-controls {\\n display: flex;\\n flex-direction: row;\\n align-items: stretch;\\n margin-left: calc(-1 * var(--field-action-gap, 4px) - 1px);\\n border: var(--field-action-border-width, 1px) solid var(--field-action-border-color, var(--ae-border-subtle));\\n border-radius: 0 var(--field-action-border-radius, var(--ae-radius-xs)) var(--field-action-border-radius, var(--ae-radius-xs)) 0;\\n overflow: hidden;\\n flex-shrink: 0;\\n transition: border-color 0.12s;\\n background: var(--field-action-bg, var(--ae-surface-base));\\n position: relative;\\n z-index: 1;\\n align-self: stretch;\\n}\\n\\n.action-controls .action-btn {\\n border: none;\\n background: transparent;\\n color: var(--field-action-color, var(--ae-color-text-muted));\\n font-size: 0.875em;\\n line-height: 1;\\n cursor: pointer;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n padding: 0 0.5em;\\n transition: background 0.12s;\\n}\\n\\n.action-controls .action-btn:hover:not(:disabled) {\\n background: var(--field-action-bg-hover, var(--ae-surface-raised));\\n}\\n\\n.action-controls .action-btn:active:not(:disabled) {\\n background: var(--field-action-bg-focus, var(--ae-surface-raised));\\n}\\n\\n.action-controls .action-btn:disabled {\\n opacity: 0.5;\\n cursor: not-allowed;\\n}\\n\\n.action-controls .action-btn + .action-btn {\\n border-left: var(--field-action-border-width, 1px) solid var(--field-action-border-color, var(--ae-border-subtle));\\n}\\n\\n.input-container:has(input:focus) ~ .action-controls,\\n.input-container:has(input:focus) .action-controls,\\n.container:has(.trigger.open) ~ .action-controls,\\n.container:has(.trigger.open) .action-controls {\\n border-color: var(--field-action-border-color-focus, var(--ae-border-focus));\\n}\\n\\n.input-container:has(input:hover:not(:focus)) ~ .action-controls,\\n.input-container:has(input:hover:not(:focus)) .action-controls,\\n.container:has(.trigger:hover:not(.disabled)) ~ .action-controls,\\n.container:has(.trigger:hover:not(.disabled)) .action-controls {\\n border-color: var(--field-action-border-color-hover, var(--ae-border-default));\\n}\\n\"", "module.exports = \"/* Action button base styles - shared by clear-btn and reset-btn (standalone mode) */\\n.clear-btn:not(.action-btn),\\n.reset-btn:not(.action-btn) {\\n width: 1.333em;\\n height: 1.333em;\\n border: none;\\n cursor: pointer;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n flex-shrink: 0;\\n line-height: 1;\\n}\\n\\n.clear-btn:not(.action-btn) {\\n border-radius: var(--ae-clear-btn-border-radius);\\n background: var(--ae-clear-btn-bg);\\n color: var(--ae-clear-btn-color);\\n transition: var(--ae-clear-btn-transition);\\n}\\n\\n.reset-btn:not(.action-btn) {\\n border-radius: var(--ae-reset-btn-border-radius);\\n background: var(--ae-reset-btn-bg);\\n color: var(--ae-reset-btn-color);\\n transition: var(--ae-reset-btn-transition);\\n}\\n\\n.clear-btn:not(.action-btn):hover {\\n background: var(--ae-clear-btn-bg-hover);\\n color: var(--ae-clear-btn-color-hover);\\n}\\n\\n.reset-btn:not(.action-btn):hover {\\n background: var(--ae-reset-btn-bg-hover);\\n color: var(--ae-reset-btn-color-hover);\\n}\\n\"", "export { default, default as RadioGroup } from './radio-group';\nexport type { RadioGroupProps } from './radio-group';\nexport type { RadioGroupMode, RadioGroupOption, RadioGroupOptions } from './defines';\nexport { default as Radio } from './radio';\nexport type { RadioProps } from './radio';\n", "import type { InferProps, Props, Watchers } from 'aeico';\nimport { tags } from 'aeico';\nimport AeicoComponent from './aeico-component';\n\nexport type FieldAction = 'clear' | 'reset' | 'change';\nexport type FieldElement = HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;\nexport type ActionButtonStyle = 'standalone' | 'integrated';\n\n/**\n * Base class for form field components\n *\n * Provides common functionality for field components including:\n * - Theme support\n * - i18n integration (via Localizable mixin)\n * - Reset button management\n * - Value management\n * - Common configuration handling\n */\nclass AeicoField<TValue = string> extends AeicoComponent {\n /**\n * Define base field properties (extends AeicoElement properties)\n */\n static props: Props = {\n value: { type: String },\n defaultValue: { type: String },\n resettable: { type: Boolean },\n resetText: { type: String },\n resetTitle: { type: String },\n clearable: { type: Boolean },\n clearText: { type: String },\n clearTitle: { type: String },\n actionButtonStyle: { type: String },\n size: { type: String },\n disabled: { type: Boolean },\n label: { type: String },\n labelPlacement: { type: String },\n required: { type: Boolean },\n helperText: { type: String },\n error: { type: String },\n };\n\n /**\n * Property watchers\n */\n static watchers: Watchers = {\n disabled: 'onDisabledChanged',\n error: 'onErrorChanged',\n };\n\n private static _fieldIdCounter = 0;\n private readonly _fieldId: string;\n\n constructor() {\n super();\n this._fieldId = `ae-field-${++AeicoField._fieldIdCounter}`;\n }\n\n /**\n * The underlying form control element (input, select, etc.)\n * Subclasses should set this to their specific element\n */\n protected fieldElement: FieldElement | null = null;\n\n protected resetBtn: HTMLButtonElement | null = null;\n protected clearBtn: HTMLButtonElement | null = null;\n\n protected readonly boundOnChange = () =>\n this.setValue(this.getValue(), { silent: false, action: 'change' });\n\n protected readonly boundOnReset = () => this.onReset();\n protected readonly boundOnClear = () => this.onClear();\n\n // Declare reactive properties for TypeScript\n declare value?: TValue;\n declare defaultValue?: TValue | string;\n declare resettable?: boolean;\n declare resetText?: string;\n declare resetTitle?: string;\n declare clearable?: boolean;\n declare clearText?: string;\n declare clearTitle?: string;\n declare actionButtonStyle?: ActionButtonStyle;\n declare size?: string;\n declare disabled?: boolean;\n declare label?: string;\n declare labelPlacement?: 'top' | 'left';\n declare required?: boolean;\n declare helperText?: string;\n declare error?: string;\n\n /**\n * Lifecycle: Component connected to DOM\n */\n connectedCallback() {\n super.connectedCallback();\n }\n\n /**\n * Lifecycle: Component disconnected from DOM\n */\n disconnectedCallback() {\n super.disconnectedCallback();\n }\n\n /**\n * Render action buttons (clear/reset) using this.builder.\n * Must be called from within a build() callback.\n */\n protected renderActionButtons(force: boolean = false) {\n const style = this.actionButtonStyle || 'integrated';\n const hasActions = force || this.clearable || this.resettable;\n\n if (hasActions && style === 'integrated') {\n tags.div({ className: 'action-controls' }, () => {\n this.renderClearButton(force);\n this.renderResetButton(force);\n });\n } else {\n this.renderClearButton(force);\n this.renderResetButton(force);\n }\n }\n\n protected renderResetButton(force: boolean = false) {\n const { button } = tags;\n const style = this.actionButtonStyle || 'integrated';\n\n if (force || this.resettable) {\n const className = style === 'integrated' ? 'reset-btn action-btn' : 'reset-btn';\n this.resetBtn = button({\n className,\n textContent: this.resetText || '\u21BA',\n title: this.resetTitle || '\u21BA',\n '@click': this.boundOnReset,\n });\n }\n }\n\n protected renderClearButton(force: boolean = false) {\n const { button } = tags;\n const style = this.actionButtonStyle || 'integrated';\n\n if (force || this.clearable) {\n const className = style === 'integrated' ? 'clear-btn action-btn' : 'clear-btn';\n this.clearBtn = button({\n className,\n textContent: this.clearText || '\u2715',\n title: this.clearTitle || '\u2715',\n '@click': this.boundOnClear,\n });\n }\n }\n\n /**\n * Returns a stable unique ID for this field instance,\n * used to associate <label htmlFor> with the underlying input.\n */\n protected getFieldId(): string {\n return this._fieldId;\n }\n\n /**\n * Renders a <label> element when the `label` prop is set.\n * Call this as the first statement inside the render() html() callback.\n * @param fieldId - The id to set on the underlying form control element (pass to input via id prop)\n */\n protected renderLabel(fieldId: string): void {\n if (!this.label) return;\n const { span } = tags;\n tags.label({ id: `${fieldId}-label`, className: 'field-label', for: fieldId }, () => {\n span({ textContent: this.label! });\n if (this.required) {\n span({ className: 'field-required', 'aria-hidden': 'true', textContent: ' *' });\n }\n });\n }\n\n /**\n * Renders helper text below the field. Hidden when `error` is set.\n * Call this after the field-body div in render().\n */\n protected renderHelperText(): void {\n if (!this.helperText || this.error) return;\n const { span } = tags;\n span({ className: 'field-helper', textContent: this.helperText });\n }\n\n /**\n * Renders an error message below the field when `error` is set.\n * Call this after renderHelperText() in render().\n */\n protected renderError(): void {\n if (!this.error) return;\n const { span } = tags;\n span({ className: 'field-error', textContent: this.error });\n }\n\n /**\n * Watcher for disabled property\n */\n protected onDisabledChanged(newValue: boolean) {\n if (this.fieldElement) {\n (this.fieldElement as HTMLInputElement | HTMLSelectElement).disabled = Boolean(newValue);\n }\n }\n\n /**\n * Watcher for error property - syncs aria-invalid on the field element\n */\n protected onErrorChanged(newValue: string | undefined): void {\n if (this.fieldElement) {\n if (newValue) {\n this.fieldElement.setAttribute('aria-invalid', 'true');\n } else {\n this.fieldElement.removeAttribute('aria-invalid');\n }\n }\n }\n\n /**\n * Lifecycle: called after every render update.\n * Keeps aria-invalid on fieldElement in sync regardless of watcher timing.\n */\n protected onUpdated(_changedProps: Map<string, unknown>): void {\n if (!this.fieldElement) return;\n if (this.error) {\n this.fieldElement.setAttribute('aria-invalid', 'true');\n } else {\n this.fieldElement.removeAttribute('aria-invalid');\n }\n }\n\n /**\n * Returns true if the field passes constraint validation.\n * Delegates to the underlying fieldElement when available;\n * falls back to a manual required-check otherwise.\n */\n public checkValidity(): boolean {\n if (this.fieldElement) {\n return this.fieldElement.checkValidity();\n }\n if (this.required) {\n const v = this.value;\n return v !== undefined && v !== '' && v !== null;\n }\n return true;\n }\n\n /**\n * Reports validity, showing the browser's built-in validation UI when possible.\n */\n public reportValidity(): boolean {\n if (this.fieldElement) {\n return this.fieldElement.reportValidity();\n }\n return this.checkValidity();\n }\n\n /**\n * Render the field component\n * Override in subclass to provide custom rendering\n */\n render(): void {\n // Default implementation - subclasses can override\n }\n\n /**\n * Get current value from the field element\n * Default implementation returns the value property of fieldElement\n * Override in subclasses if needed (e.g., checkbox uses checked instead of value)\n *\n * @returns Current field value\n */\n protected getValue(): TValue {\n return (this.fieldElement?.value || '') as TValue;\n }\n\n /**\n * Write value to the underlying UI element and sync props\n * Subclasses must override this to update their specific UI element\n *\n * @param _value New value to write to the element\n */\n protected writeValue(_value: TValue): void {\n // Base implementation - subclasses override\n }\n\n /**\n * Get event payload for change events\n * Override in subclasses to customize event data (e.g., { checked, oldChecked } for checkbox)\n *\n * @param value New value\n * @param oldValue Previous value\n * @param action Action type\n * @returns Event payload object\n */\n protected getEventPayload(\n value: TValue,\n oldValue: TValue,\n action: FieldAction,\n ): Record<string, unknown> {\n return { value, oldValue, action };\n }\n\n /**\n * Update field value programmatically (internal method)\n * Subclasses should provide type-safe public wrappers (e.g., change() method)\n *\n * @param value New value\n * @param options.silent If true, won't emit change event (default: true)\n * @param options.action Action type for the event (default: 'change')\n */\n protected setValue(value: TValue, options?: { silent?: boolean; action?: FieldAction }): void {\n const oldValue = this.getValue();\n\n // Update property value\n this.value = value;\n\n // Write to UI element (DOM only)\n this.writeValue(value);\n\n // Emit event if not silent\n if (options?.silent === false) {\n const payload = this.getEventPayload(value, oldValue, options.action || 'change');\n this.emit('change', { detail: payload });\n }\n }\n\n /**\n * Reset field to specified value or default value\n *\n * @param value Value to reset to, defaults to defaultValue prop\n * @param options.silent If false, will emit reset event (default: true)\n */\n public reset(value?: TValue, options?: { silent?: boolean }): void {\n const resetValue = value !== undefined ? value : this.defaultValue;\n this.setValue(resetValue as TValue, { ...options, action: 'reset' });\n }\n\n /**\n * Clear the field value\n *\n * @param options.silent If false, will emit clear event (default: true)\n */\n public clear(options?: { silent?: boolean }): void {\n this.setValue('' as TValue, { ...options, action: 'clear' });\n }\n\n /**\n * Handle clear button click\n * Clears the field and dispatches event\n */\n protected onClear(): void {\n this.clear({ silent: false });\n }\n\n /**\n * Handle reset button click\n * Resets to default value and dispatches event\n */\n protected onReset(): void {\n this.reset(undefined, { silent: false });\n }\n}\n\nexport default AeicoField;\nexport type AeicoFieldProps = InferProps<typeof AeicoField>;\n", "import { AeicoElement } from 'aeico';\n\nconst TAG_NAME_PREFIX = 'ae';\n\n/**\n * AeicoComponent is the base class for all built-in Aeico components.\n */\nclass AeicoComponent extends AeicoElement {\n static define(name: string) {\n const prefix = `${TAG_NAME_PREFIX}-`;\n\n const tagName = name.startsWith(prefix) ? name : `${prefix}${name}`;\n\n super.define(tagName);\n }\n}\n\nexport default AeicoComponent;\n", "import AeicoField from '../aeico-field';\nimport type { InferProps, Props } from 'aeico';\nimport { html, tags } from 'aeico';\nimport type { ButtonColor, ButtonVariant, ButtonSize } from '../button';\nimport type { RadioGroupMode, RadioGroupOption, RadioGroupOptions } from './defines';\nimport Radio from './radio';\nimport style from '../styles/components/radio-group.css';\nimport variables from '../styles/variables.css';\nimport sizeCSS from '../styles/size.css';\nimport colorCSS from '../styles/color.css';\nimport fieldLabelCSS from '../styles/components/field-label.css';\nimport actionButtonCSS from '../styles/components/action-button.css';\n\nclass RadioGroup extends AeicoField {\n protected fieldElement: HTMLInputElement | null = null;\n\n private _slotEl: HTMLSlotElement | null = null;\n private _slotOptions: Radio[] = [];\n\n private static _instanceCount = 0;\n private readonly _groupName: string;\n\n static props: Props = {\n options: { type: Array },\n mode: { type: String },\n color: { type: String },\n variant: { type: String },\n size: { type: String },\n allowEmpty: { type: Boolean },\n actionButtonStyle: { type: String },\n };\n\n declare options?: RadioGroupOptions;\n declare mode?: RadioGroupMode;\n declare color?: ButtonColor;\n declare variant?: ButtonVariant;\n declare size?: ButtonSize;\n declare allowEmpty?: boolean;\n\n protected static styles = [variables, sizeCSS, colorCSS, fieldLabelCSS, actionButtonCSS, style];\n\n constructor() {\n super();\n this._groupName = `rg-${++RadioGroup._instanceCount}`;\n }\n\n private _optLabel(opt: RadioGroupOption): string {\n if (opt !== null && typeof opt === 'object') {\n return String(opt.label);\n }\n return String(opt);\n }\n\n private _optValue(opt: RadioGroupOption): string {\n if (opt !== null && typeof opt === 'object') return String(opt.value);\n return String(opt);\n }\n\n private _allOptions(): Array<{ label: string; value: string; disabled?: boolean }> {\n const from_props = (Array.isArray(this.options) ? this.options : []).map((o) => ({\n label: this._optLabel(o),\n value: this._optValue(o),\n }));\n\n const from_slot = this._slotOptions.map((el) => ({\n label: el.textContent?.trim() || el.value,\n value: el.value,\n disabled: el.disabled,\n }));\n\n return [...from_props, ...from_slot];\n }\n\n private _onSlotChange(): void {\n if (!this._slotEl) return;\n\n this._slotOptions = (this._slotEl.assignedElements({ flatten: true }) as HTMLElement[]).filter(\n (el) => el.tagName.toLowerCase() === 'ae-radio',\n ) as Radio[];\n this.update();\n }\n\n // Single handler for radio inputs - handles both select and deselect.\n // Only uses `click` (not `change`) because `change` fires before `click`;\n // if we set value in `change`, the `click` handler would see the updated\n // value and immediately deselect.\n private _boundOnRadioClick = (e: Event) => {\n const input = e.target as HTMLInputElement;\n const current = this.value ?? '';\n if (input.value === current) {\n if (this.allowEmpty) {\n input.checked = false;\n this.setValue('', { silent: false, action: 'change' });\n }\n // !allowEmpty: do nothing\n } else {\n this.setValue(input.value, { silent: false, action: 'change' });\n }\n };\n\n private _boundOnButtonClick = (e: Event) => {\n const btn = e.currentTarget as HTMLElement;\n const val = btn.dataset.value ?? '';\n const current = this.value ?? '';\n // Toggle off if clicking already-selected option\n if (val === current) {\n if (this.allowEmpty) {\n this.setValue('', { silent: false, action: 'change' });\n }\n // !allowEmpty: already selected, do nothing\n } else {\n this.setValue(val, { silent: false, action: 'change' });\n }\n };\n\n protected getValue(): string {\n return this.value ?? '';\n }\n\n protected writeValue(_value: string): void {\n // All visual state is driven by builder diff on next render;\n // for native radio inputs we need to sync checked immediately.\n // The render() reads this.value, so update handles the rest.\n }\n\n protected onReset(): void {\n this.setValue(this.defaultValue ?? '', { silent: false, action: 'reset' });\n }\n\n protected onClear(): void {\n this.setValue('', { silent: false, action: 'clear' });\n }\n\n render() {\n const mode = (this.mode as RadioGroupMode) || 'default';\n const opts = this._allOptions();\n const current = this.value ?? '';\n\n return html(({ div, slot }) => {\n const id = this.getFieldId();\n this.renderLabel(id);\n div({ id, role: 'group', className: 'rg-container field-body' }, () => {\n if (mode === 'default') {\n this._renderRadio(opts, current);\n this.renderActionButtons();\n } else {\n this._renderButtons(opts, current, mode);\n }\n });\n\n if (mode !== 'default') {\n if (this.allowEmpty) this.renderClearButton();\n this.renderResetButton();\n }\n\n // Hidden slot - captures <option> light DOM children\n this._slotEl = slot({\n style: { display: 'none' },\n '@slotchange': () => this._onSlotChange(),\n });\n\n this.renderHelperText();\n this.renderError();\n });\n }\n\n private _renderRadio(\n opts: Array<{ label: string; value: string; disabled?: boolean }>,\n current: string,\n ): void {\n const { label, input, span } = tags;\n for (const opt of opts) {\n const isChecked = opt.value === current;\n\n label({ key: `opt-${opt.value}`, className: 'rg-radio-option' }, () => {\n const el = input({\n type: 'radio',\n className: 'rg-radio-input',\n name: this._groupName,\n value: opt.value,\n disabled: Boolean(this.disabled) || Boolean(opt.disabled),\n required: Boolean(this.required),\n '@click': this._boundOnRadioClick,\n });\n // Sync DOM property directly - setAttribute('checked') doesn't work\n // after user interaction; only the .checked property controls state.\n el.checked = isChecked;\n // Keep fieldElement pointing to first radio for base-class compat\n if (!this.fieldElement) this.fieldElement = el;\n span({ className: 'rg-radio-label', textContent: opt.label });\n });\n }\n }\n\n private _renderButtons(\n opts: Array<{ label: string; value: string; disabled?: boolean }>,\n current: string,\n mode: RadioGroupMode,\n ): void {\n const { button } = tags;\n const count = opts.length;\n for (let i = 0; i < count; i++) {\n const opt = opts[i];\n const isSelected = opt.value === current;\n\n // Position class for button-group border-radius (CSS handles all styling)\n let posClass = '';\n if (mode === 'button-group') {\n if (count === 1) posClass = ' only';\n else if (i === 0) posClass = ' first';\n else if (i === count - 1) posClass = ' last';\n else posClass = ' inner';\n }\n\n button({\n key: `opt-${opt.value}`,\n className: `rg-btn${isSelected ? ' selected' : ''}${posClass}`,\n textContent: opt.label,\n disabled: Boolean(this.disabled) || Boolean(opt.disabled),\n 'data-value': opt.value,\n '@click': this._boundOnButtonClick,\n });\n }\n }\n}\n\nRadioGroup.define('radio-group');\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'ae-radio-group': RadioGroup;\n }\n}\n\nexport default RadioGroup;\nexport type RadioGroupProps = InferProps<typeof RadioGroup>;\n", "import AeicoComponent from '../aeico-component';\nimport type { InferProps, Props } from 'aeico';\n\n/**\n * AeRadio - structured option element for ae-radio-group.\n *\n * Replaces the native `<option>` approach with a custom element that is\n * fully extensible. Current surface:\n * - `value` - option value submitted / matched against radio-group value\n * - `disabled` - disables this individual option (independent of the group)\n * - Light DOM - label content; can be plain text or rich HTML (icons, etc.)\n *\n * This element has **no shadow DOM** - it is a pure data / content carrier.\n * ae-radio-group reads its properties and light-DOM content, then renders\n * the appropriate UI (radio input, button, segmented pill, \u2026).\n *\n * @example Plain text options\n * ```html\n * <ae-radio-group mode=\"button\" color=\"primary\" value=\"a\">\n * <ae-radio value=\"a\">Option A</ae-radio>\n * <ae-radio value=\"b\">Option B</ae-radio>\n * <ae-radio value=\"c\" disabled>Option C</ae-radio>\n * </ae-radio-group>\n * ```\n *\n * @example Rich content options (icons)\n * ```html\n * <ae-radio-group mode=\"button\" color=\"primary\" value=\"list\">\n * <ae-radio value=\"list\"><ae-icon name=\"list\"></ae-icon> List</ae-radio>\n * <ae-radio value=\"grid\"><ae-icon name=\"grid\"></ae-icon> Grid</ae-radio>\n * </ae-radio-group>\n * ```\n */\nclass Radio extends AeicoComponent {\n /** No shadow DOM - this element is a transparent data/content carrier. */\n static override useShadowDOM = false;\n\n static override props: Props = {\n value: { type: String },\n disabled: { type: Boolean },\n };\n\n declare value: string;\n declare disabled?: boolean;\n}\n\nRadio.define('radio');\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'ae-radio': Radio;\n }\n}\n\nexport default Radio;\nexport type RadioProps = InferProps<typeof Radio>;\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA,yGAAAA,UAAAC,SAAA;AAAA,IAAAA,QAAO,UAAU;AAAA;AAAA;;;ACAjB;AAAA,4FAAAC,UAAAC,SAAA;AAAA,IAAAA,QAAO,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA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",
6
6
  "names": ["exports", "module", "exports", "module", "exports", "module", "exports", "module", "exports", "module", "exports", "module", "import_aeico", "style", "import_aeico", "variables", "sizeCSS", "colorCSS", "fieldLabelCSS", "actionButtonCSS", "style"]
7
7
  }