aeico-components 0.1.5 → 0.1.7

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 (337) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +0 -0
  3. package/dist/chunks/action-button.cjs +296 -0
  4. package/dist/chunks/action-button.cjs.map +1 -0
  5. package/dist/chunks/action-button.js +297 -0
  6. package/dist/chunks/action-button.js.map +1 -0
  7. package/dist/chunks/alert.cjs +26 -32
  8. package/dist/chunks/alert.cjs.map +1 -1
  9. package/dist/chunks/alert.js +27 -33
  10. package/dist/chunks/alert.js.map +1 -1
  11. package/dist/chunks/badge.cjs +2 -2
  12. package/dist/chunks/badge.cjs.map +1 -1
  13. package/dist/chunks/badge.js +3 -3
  14. package/dist/chunks/badge.js.map +1 -1
  15. package/dist/chunks/breadcrumb-item.cjs +9 -9
  16. package/dist/chunks/breadcrumb-item.cjs.map +1 -1
  17. package/dist/chunks/breadcrumb-item.js +10 -10
  18. package/dist/chunks/breadcrumb-item.js.map +1 -1
  19. package/dist/chunks/button-group.cjs +1 -1
  20. package/dist/chunks/button-group.cjs.map +1 -1
  21. package/dist/chunks/button-group.js +2 -2
  22. package/dist/chunks/button-group.js.map +1 -1
  23. package/dist/chunks/button.cjs +40 -51
  24. package/dist/chunks/button.cjs.map +1 -1
  25. package/dist/chunks/button.js +41 -52
  26. package/dist/chunks/button.js.map +1 -1
  27. package/dist/chunks/card.cjs +2 -2
  28. package/dist/chunks/card.cjs.map +1 -1
  29. package/dist/chunks/card.js +3 -3
  30. package/dist/chunks/card.js.map +1 -1
  31. package/dist/chunks/checkbox.cjs +18 -5
  32. package/dist/chunks/checkbox.cjs.map +1 -1
  33. package/dist/chunks/checkbox.js +18 -5
  34. package/dist/chunks/checkbox.js.map +1 -1
  35. package/dist/chunks/color.cjs +1 -1
  36. package/dist/chunks/color.js +1 -1
  37. package/dist/chunks/copy-button.cjs +171 -0
  38. package/dist/chunks/copy-button.cjs.map +1 -0
  39. package/dist/chunks/copy-button.js +172 -0
  40. package/dist/chunks/copy-button.js.map +1 -0
  41. package/dist/chunks/detail-group.cjs +65 -0
  42. package/dist/chunks/detail-group.cjs.map +1 -0
  43. package/dist/chunks/detail-group.js +66 -0
  44. package/dist/chunks/detail-group.js.map +1 -0
  45. package/dist/chunks/detail.cjs +7 -4
  46. package/dist/chunks/detail.cjs.map +1 -1
  47. package/dist/chunks/detail.js +8 -5
  48. package/dist/chunks/detail.js.map +1 -1
  49. package/dist/chunks/dialog.cjs +2 -2
  50. package/dist/chunks/dialog.cjs.map +1 -1
  51. package/dist/chunks/dialog.js +3 -3
  52. package/dist/chunks/dialog.js.map +1 -1
  53. package/dist/chunks/divider.cjs +2 -2
  54. package/dist/chunks/divider.cjs.map +1 -1
  55. package/dist/chunks/divider.js +3 -3
  56. package/dist/chunks/divider.js.map +1 -1
  57. package/dist/chunks/drawer.cjs +180 -0
  58. package/dist/chunks/drawer.cjs.map +1 -0
  59. package/dist/chunks/drawer.js +181 -0
  60. package/dist/chunks/drawer.js.map +1 -0
  61. package/dist/chunks/dropdown-button.cjs +10 -11
  62. package/dist/chunks/dropdown-button.cjs.map +1 -1
  63. package/dist/chunks/dropdown-button.js +14 -15
  64. package/dist/chunks/dropdown-button.js.map +1 -1
  65. package/dist/chunks/icon.cjs +57 -11
  66. package/dist/chunks/icon.cjs.map +1 -1
  67. package/dist/chunks/icon.js +58 -12
  68. package/dist/chunks/icon.js.map +1 -1
  69. package/dist/chunks/menu.cjs +396 -0
  70. package/dist/chunks/menu.cjs.map +1 -0
  71. package/dist/chunks/menu.js +397 -0
  72. package/dist/chunks/menu.js.map +1 -0
  73. package/dist/chunks/navbar.cjs +2 -2
  74. package/dist/chunks/navbar.cjs.map +1 -1
  75. package/dist/chunks/navbar.js +3 -3
  76. package/dist/chunks/navbar.js.map +1 -1
  77. package/dist/chunks/number-input.cjs +110 -0
  78. package/dist/chunks/number-input.cjs.map +1 -0
  79. package/dist/chunks/number-input.js +111 -0
  80. package/dist/chunks/number-input.js.map +1 -0
  81. package/dist/chunks/pagination.cjs +475 -0
  82. package/dist/chunks/pagination.cjs.map +1 -0
  83. package/dist/chunks/pagination.js +476 -0
  84. package/dist/chunks/pagination.js.map +1 -0
  85. package/dist/chunks/progress-bar.cjs +101 -0
  86. package/dist/chunks/progress-bar.cjs.map +1 -0
  87. package/dist/chunks/progress-bar.js +102 -0
  88. package/dist/chunks/progress-bar.js.map +1 -0
  89. package/dist/chunks/radio.cjs +11 -7
  90. package/dist/chunks/radio.cjs.map +1 -1
  91. package/dist/chunks/radio.js +11 -7
  92. package/dist/chunks/radio.js.map +1 -1
  93. package/dist/chunks/select.cjs +97 -66
  94. package/dist/chunks/select.cjs.map +1 -1
  95. package/dist/chunks/select.js +97 -66
  96. package/dist/chunks/select.js.map +1 -1
  97. package/dist/chunks/size.cjs +1 -1
  98. package/dist/chunks/size.js +1 -1
  99. package/dist/chunks/slider.cjs +35 -75
  100. package/dist/chunks/slider.cjs.map +1 -1
  101. package/dist/chunks/slider.js +35 -75
  102. package/dist/chunks/slider.js.map +1 -1
  103. package/dist/chunks/spinner.cjs +102 -0
  104. package/dist/chunks/spinner.cjs.map +1 -0
  105. package/dist/chunks/spinner.js +103 -0
  106. package/dist/chunks/spinner.js.map +1 -0
  107. package/dist/chunks/switch.cjs +110 -16
  108. package/dist/chunks/switch.cjs.map +1 -1
  109. package/dist/chunks/switch.js +111 -17
  110. package/dist/chunks/switch.js.map +1 -1
  111. package/dist/chunks/tab-panel.cjs +14 -5
  112. package/dist/chunks/tab-panel.cjs.map +1 -1
  113. package/dist/chunks/tab-panel.js +15 -6
  114. package/dist/chunks/tab-panel.js.map +1 -1
  115. package/dist/chunks/tag.cjs +2 -2
  116. package/dist/chunks/tag.cjs.map +1 -1
  117. package/dist/chunks/tag.js +3 -3
  118. package/dist/chunks/tag.js.map +1 -1
  119. package/dist/chunks/text-input.cjs +11 -16
  120. package/dist/chunks/text-input.cjs.map +1 -1
  121. package/dist/chunks/text-input.js +11 -16
  122. package/dist/chunks/text-input.js.map +1 -1
  123. package/dist/chunks/textarea.cjs +137 -0
  124. package/dist/chunks/textarea.cjs.map +1 -0
  125. package/dist/chunks/textarea.js +138 -0
  126. package/dist/chunks/textarea.js.map +1 -0
  127. package/dist/chunks/tooltip.cjs +292 -0
  128. package/dist/chunks/tooltip.cjs.map +1 -0
  129. package/dist/chunks/tooltip.js +293 -0
  130. package/dist/chunks/tooltip.js.map +1 -0
  131. package/dist/chunks/tree.cjs +468 -0
  132. package/dist/chunks/tree.cjs.map +1 -0
  133. package/dist/chunks/tree.js +469 -0
  134. package/dist/chunks/tree.js.map +1 -0
  135. package/dist/chunks/variables.cjs +273 -249
  136. package/dist/chunks/variables.cjs.map +1 -1
  137. package/dist/chunks/variables.js +273 -249
  138. package/dist/chunks/variables.js.map +1 -1
  139. package/dist/copy-button.cjs +6 -0
  140. package/dist/copy-button.cjs.map +1 -0
  141. package/dist/copy-button.js +6 -0
  142. package/dist/copy-button.js.map +1 -0
  143. package/dist/detail-group.cjs +6 -0
  144. package/dist/detail-group.cjs.map +1 -0
  145. package/dist/detail-group.js +6 -0
  146. package/dist/detail-group.js.map +1 -0
  147. package/dist/drawer.cjs +6 -0
  148. package/dist/drawer.cjs.map +1 -0
  149. package/dist/drawer.js +6 -0
  150. package/dist/drawer.js.map +1 -0
  151. package/dist/dropdown.js +4 -4
  152. package/dist/index.cjs +24 -99
  153. package/dist/index.cjs.map +1 -1
  154. package/dist/index.js +41 -116
  155. package/dist/index.js.map +1 -1
  156. package/dist/menu.cjs +6 -0
  157. package/dist/menu.cjs.map +1 -0
  158. package/dist/menu.js +6 -0
  159. package/dist/menu.js.map +1 -0
  160. package/dist/number-input.cjs +6 -0
  161. package/dist/number-input.cjs.map +1 -0
  162. package/dist/number-input.js +6 -0
  163. package/dist/number-input.js.map +1 -0
  164. package/dist/pagination.cjs +6 -0
  165. package/dist/pagination.cjs.map +1 -0
  166. package/dist/pagination.js +6 -0
  167. package/dist/pagination.js.map +1 -0
  168. package/dist/progress-bar.cjs +6 -0
  169. package/dist/progress-bar.cjs.map +1 -0
  170. package/dist/progress-bar.js +6 -0
  171. package/dist/progress-bar.js.map +1 -0
  172. package/dist/select.cjs +2 -2
  173. package/dist/select.cjs.map +1 -1
  174. package/dist/select.js +3 -3
  175. package/dist/select.js.map +1 -1
  176. package/dist/spinner.cjs +6 -0
  177. package/dist/spinner.cjs.map +1 -0
  178. package/dist/spinner.js +6 -0
  179. package/dist/spinner.js.map +1 -0
  180. package/dist/textarea.cjs +5 -0
  181. package/dist/textarea.cjs.map +1 -0
  182. package/dist/textarea.js +5 -0
  183. package/dist/textarea.js.map +1 -0
  184. package/dist/tooltip.cjs +6 -0
  185. package/dist/tooltip.cjs.map +1 -0
  186. package/dist/tooltip.js +6 -0
  187. package/dist/tooltip.js.map +1 -0
  188. package/dist/tree.cjs +6 -0
  189. package/dist/tree.cjs.map +1 -0
  190. package/dist/tree.js +6 -0
  191. package/dist/tree.js.map +1 -0
  192. package/dist/types/aeico-field.d.ts +52 -0
  193. package/dist/types/alert/alert.d.ts +1 -0
  194. package/dist/types/card/defines.d.ts +1 -1
  195. package/dist/types/copy-button/copy-button.d.ts +32 -0
  196. package/dist/types/copy-button/defines.d.ts +1 -0
  197. package/dist/types/copy-button/index.d.ts +3 -0
  198. package/dist/types/detail/defines.d.ts +2 -1
  199. package/dist/types/detail/detail.d.ts +3 -1
  200. package/dist/types/detail/index.d.ts +1 -1
  201. package/dist/types/detail-group/detail-group.d.ts +39 -0
  202. package/dist/types/detail-group/index.d.ts +2 -0
  203. package/dist/types/drawer/defines.d.ts +1 -0
  204. package/dist/types/drawer/drawer.d.ts +31 -0
  205. package/dist/types/drawer/index.d.ts +3 -0
  206. package/dist/types/icon/built-in-icons.d.ts +1 -0
  207. package/dist/types/icon/defines.d.ts +5 -1
  208. package/dist/types/icon/icon.d.ts +1 -0
  209. package/dist/types/icon/index.d.ts +1 -1
  210. package/dist/types/icon/registry.d.ts +8 -0
  211. package/dist/types/index.d.ts +17 -0
  212. package/dist/types/menu/defines.d.ts +15 -0
  213. package/dist/types/menu/index.d.ts +5 -0
  214. package/dist/types/menu/menu-item.d.ts +63 -0
  215. package/dist/types/menu/menu.d.ts +34 -0
  216. package/dist/types/number-input/index.d.ts +2 -0
  217. package/dist/types/number-input/number-input.d.ts +35 -0
  218. package/dist/types/pagination/defines.d.ts +2 -0
  219. package/dist/types/pagination/index.d.ts +3 -0
  220. package/dist/types/pagination/pagination.d.ts +77 -0
  221. package/dist/types/select/select.d.ts +2 -2
  222. package/dist/types/spinner/defines.d.ts +3 -0
  223. package/dist/types/spinner/index.d.ts +3 -0
  224. package/dist/types/spinner/spinner.d.ts +35 -0
  225. package/dist/types/switch/defines.d.ts +1 -0
  226. package/dist/types/switch/switch.d.ts +8 -4
  227. package/dist/types/tabs/defines.d.ts +1 -0
  228. package/dist/types/tabs/tabs.d.ts +3 -0
  229. package/dist/types/text-input/text-input.d.ts +0 -4
  230. package/dist/types/textarea/index.d.ts +1 -0
  231. package/dist/types/textarea/textarea.d.ts +26 -0
  232. package/dist/types/tooltip/defines.d.ts +2 -0
  233. package/dist/types/tooltip/index.d.ts +4 -0
  234. package/dist/types/tooltip/tooltip.d.ts +48 -0
  235. package/dist/types/tree/defines.d.ts +23 -0
  236. package/dist/types/tree/index.d.ts +5 -0
  237. package/dist/types/tree/tree-item.d.ts +54 -0
  238. package/dist/types/tree/tree.d.ts +64 -0
  239. package/package.json +5 -5
  240. package/src/aeico-field.ts +142 -7
  241. package/src/alert/alert.ts +3 -2
  242. package/src/card/defines.ts +1 -1
  243. package/src/checkbox/checkbox.ts +17 -2
  244. package/src/copy-button/copy-button.ts +150 -0
  245. package/src/copy-button/defines.ts +5 -0
  246. package/src/copy-button/index.ts +3 -0
  247. package/src/detail/defines.ts +2 -1
  248. package/src/detail/detail.ts +5 -1
  249. package/src/detail/index.ts +1 -1
  250. package/src/detail-group/detail-group.ts +104 -0
  251. package/src/detail-group/index.ts +2 -0
  252. package/src/drawer/defines.ts +1 -0
  253. package/src/drawer/drawer.ts +157 -0
  254. package/src/drawer/index.ts +3 -0
  255. package/src/icon/built-in-icons.ts +21 -0
  256. package/src/icon/defines.ts +6 -1
  257. package/src/icon/icon.ts +29 -10
  258. package/src/icon/index.ts +1 -1
  259. package/src/icon/registry.ts +23 -1
  260. package/src/index.ts +30 -0
  261. package/src/menu/defines.ts +17 -0
  262. package/src/menu/index.ts +5 -0
  263. package/src/menu/menu-item.ts +315 -0
  264. package/src/menu/menu.ts +81 -0
  265. package/src/number-input/index.ts +2 -0
  266. package/src/number-input/number-input.ts +137 -0
  267. package/src/pagination/defines.ts +2 -0
  268. package/src/pagination/index.ts +3 -0
  269. package/src/pagination/pagination.ts +310 -0
  270. package/src/radio-group/radio-group.ts +11 -4
  271. package/src/select/select.ts +111 -70
  272. package/src/slider/slider.ts +9 -2
  273. package/src/spinner/defines.ts +12 -0
  274. package/src/spinner/index.ts +3 -0
  275. package/src/spinner/spinner.ts +81 -0
  276. package/src/styles/color.css +91 -91
  277. package/src/styles/components/action-button.css +37 -0
  278. package/src/styles/components/alert.css +22 -28
  279. package/src/styles/components/badge.css +13 -20
  280. package/src/styles/components/breadcrumb-item.css +7 -7
  281. package/src/styles/components/button.css +39 -50
  282. package/src/styles/components/card.css +45 -30
  283. package/src/styles/components/checkbox.css +9 -36
  284. package/src/styles/components/copy-button.css +108 -0
  285. package/src/styles/components/detail-group.css +10 -0
  286. package/src/styles/components/detail.css +56 -35
  287. package/src/styles/components/dialog.css +11 -11
  288. package/src/styles/components/divider.css +3 -3
  289. package/src/styles/components/drawer.css +152 -0
  290. package/src/styles/components/dropdown-item.css +7 -8
  291. package/src/styles/components/dropdown.css +3 -4
  292. package/src/styles/components/field-label.css +120 -0
  293. package/src/styles/components/icon-button.css +25 -36
  294. package/src/styles/components/icon.css +1 -1
  295. package/src/styles/components/menu-item.css +167 -0
  296. package/src/styles/components/menu.css +17 -0
  297. package/src/styles/components/navbar.css +16 -16
  298. package/src/styles/components/number-input.css +158 -0
  299. package/src/styles/components/pagination.css +205 -0
  300. package/src/styles/components/progress-bar.css +2 -3
  301. package/src/styles/components/radio-group.css +69 -106
  302. package/src/styles/components/select-option.css +5 -5
  303. package/src/styles/components/select.css +30 -69
  304. package/src/styles/components/slider.css +26 -71
  305. package/src/styles/components/spinner.css +78 -0
  306. package/src/styles/components/switch.css +64 -27
  307. package/src/styles/components/tab-panel.css +1 -1
  308. package/src/styles/components/tab.css +4 -5
  309. package/src/styles/components/tabs.css +49 -1
  310. package/src/styles/components/tag.css +14 -21
  311. package/src/styles/components/text-input.css +17 -64
  312. package/src/styles/components/textarea.css +66 -0
  313. package/src/styles/components/tooltip.css +102 -0
  314. package/src/styles/components/tree-item.css +152 -0
  315. package/src/styles/components/tree.css +10 -0
  316. package/src/styles/layout.css +457 -25
  317. package/src/styles/radius.css +10 -0
  318. package/src/styles/size.css +7 -7
  319. package/src/styles/variables.css +271 -247
  320. package/src/switch/defines.ts +1 -0
  321. package/src/switch/switch.ts +61 -12
  322. package/src/tabs/defines.ts +1 -0
  323. package/src/tabs/tabs.ts +12 -0
  324. package/src/text-input/text-input.ts +10 -15
  325. package/src/textarea/index.ts +1 -0
  326. package/src/textarea/textarea.ts +107 -0
  327. package/src/tooltip/defines.ts +11 -0
  328. package/src/tooltip/index.ts +4 -0
  329. package/src/tooltip/tooltip.ts +183 -0
  330. package/src/tree/defines.ts +26 -0
  331. package/src/tree/index.ts +5 -0
  332. package/src/tree/tree-item.ts +258 -0
  333. package/src/tree/tree.ts +237 -0
  334. package/dist/chunks/aeico-field.cjs +0 -179
  335. package/dist/chunks/aeico-field.cjs.map +0 -1
  336. package/dist/chunks/aeico-field.js +0 -180
  337. package/dist/chunks/aeico-field.js.map +0 -1
@@ -1,16 +1,5 @@
1
1
  :host {
2
2
  display: inline-block;
3
- --btn-solid-bg: var(--color-solid);
4
- --btn-solid-bg-hover: var(--color-solid-hover);
5
- --btn-solid-bg-active: var(--color-solid-active);
6
- --btn-solid-color: var(--color-on-solid);
7
- --btn-solid-color-hover: var(--color-on-solid-hover);
8
- --btn-border: var(--color-border);
9
- --btn-border-hover: var(--color-border-hover);
10
- --btn-accent: var(--color-accent);
11
- --btn-accent-hover: var(--color-accent-hover);
12
- --btn-subtle-bg: var(--color-subtle);
13
- --btn-subtle-bg-hover: var(--color-subtle-hover);
14
3
  }
15
4
 
16
5
  button {
@@ -31,100 +20,100 @@ button {
31
20
  padding: 0.429em 1.071em;
32
21
  font-size: 1em;
33
22
  line-height: 1.5;
34
- border-radius: var(--_btn-r-tl, 4px) var(--_btn-r-tr, 4px) var(--_btn-r-br, 4px) var(--_btn-r-bl, 4px);
23
+ border-radius: var(--ae-border-radius, var(--_btn-r-tl, var(--ae-radius-sm)) var(--_btn-r-tr, var(--ae-radius-sm)) var(--_btn-r-br, var(--ae-radius-sm)) var(--_btn-r-bl, var(--ae-radius-sm)));
35
24
  min-width: 4.571em;
36
25
  height: 2.286em;
37
26
  width: 100%;
38
27
 
39
- background: var(--btn-solid-bg);
40
- border: 1px solid var(--btn-solid-bg);
41
- color: var(--btn-solid-color);
28
+ background: var(--ae-color-solid);
29
+ border: 1px solid var(--ae-color-solid);
30
+ color: var(--ae-color-on-solid);
42
31
  }
43
32
 
44
33
  button:focus { outline: none; }
45
34
  button:active { transform: translateY(1px); }
46
35
 
47
36
  button:hover:not(:disabled) {
48
- background: var(--btn-solid-bg-hover);
49
- border-color: var(--btn-border-hover);
50
- color: var(--btn-solid-color-hover, var(--btn-solid-color));
37
+ background: var(--ae-color-solid-hover);
38
+ border-color: var(--ae-color-border-hover);
39
+ color: var(--ae-color-on-solid-hover, var(--ae-color-on-solid));
51
40
  }
52
41
 
53
- button:active:not(:disabled) { background: var(--btn-solid-bg-active); }
42
+ button:active:not(:disabled) { background: var(--ae-color-solid-active); }
54
43
 
55
44
  button:disabled {
56
45
  opacity: 0.5;
57
46
  cursor: not-allowed;
58
47
  }
59
48
 
60
- :host([size="xs"]) button { border-radius: var(--_btn-r-tl, 3px) var(--_btn-r-tr, 3px) var(--_btn-r-br, 3px) var(--_btn-r-bl, 3px); }
61
- :host([size="sm"]) button { border-radius: var(--_btn-r-tl, 3px) var(--_btn-r-tr, 3px) var(--_btn-r-br, 3px) var(--_btn-r-bl, 3px); }
49
+ :host([size="xs"]) button { border-radius: var(--ae-border-radius, var(--_btn-r-tl, var(--ae-radius-xs)) var(--_btn-r-tr, var(--ae-radius-xs)) var(--_btn-r-br, var(--ae-radius-xs)) var(--_btn-r-bl, var(--ae-radius-xs))); }
50
+ :host([size="sm"]) button { border-radius: var(--ae-border-radius, var(--_btn-r-tl, var(--ae-radius-xs)) var(--_btn-r-tr, var(--ae-radius-xs)) var(--_btn-r-br, var(--ae-radius-xs)) var(--_btn-r-bl, var(--ae-radius-xs))); }
62
51
 
63
52
  /* --- Variants --- */
64
53
 
65
54
  :host([variant="outlined"]) button {
66
55
  background: transparent;
67
- border-color: var(--btn-border);
68
- color: var(--btn-accent);
56
+ border-color: var(--ae-color-border);
57
+ color: var(--ae-color-accent);
69
58
  }
70
59
 
71
60
  :host([variant="outlined"]) button:hover:not(:disabled) {
72
- background: var(--btn-subtle-bg);
73
- border-color: var(--btn-border-hover);
74
- color: var(--btn-accent-hover);
61
+ background: var(--ae-color-subtle);
62
+ border-color: var(--ae-color-border-hover);
63
+ color: var(--ae-color-accent-hover);
75
64
  }
76
65
 
77
66
  :host([variant="outlined"]) button:active:not(:disabled) {
78
- background: var(--btn-subtle-bg-hover);
67
+ background: var(--ae-color-subtle-hover);
79
68
  }
80
69
 
81
70
  :host([variant="subtle"]) button {
82
- background: var(--btn-subtle-bg);
71
+ background: var(--ae-color-subtle);
83
72
  border-color: transparent;
84
- color: var(--btn-accent);
73
+ color: var(--ae-color-accent);
85
74
  }
86
75
 
87
76
  :host([variant="subtle"]) button:hover:not(:disabled) {
88
- background: var(--btn-subtle-bg-hover);
89
- color: var(--btn-accent-hover);
77
+ background: var(--ae-color-subtle-hover);
78
+ color: var(--ae-color-accent-hover);
90
79
  }
91
80
 
92
81
  :host([variant="subtle"]) button:active:not(:disabled) {
93
- background: var(--btn-subtle-bg-hover);
82
+ background: var(--ae-color-subtle-hover);
94
83
  }
95
84
 
96
85
  :host([variant="faint"]) button {
97
- background: var(--btn-subtle-bg);
98
- border-color: var(--btn-border);
99
- color: var(--btn-accent);
86
+ background: var(--ae-color-subtle);
87
+ border-color: var(--ae-color-border);
88
+ color: var(--ae-color-accent);
100
89
  }
101
90
 
102
91
  :host([variant="faint"]) button:hover:not(:disabled) {
103
- background: var(--btn-subtle-bg-hover);
104
- border-color: var(--btn-border-hover);
105
- color: var(--btn-accent-hover);
92
+ background: var(--ae-color-subtle-hover);
93
+ border-color: var(--ae-color-border-hover);
94
+ color: var(--ae-color-accent-hover);
106
95
  }
107
96
 
108
97
  :host([variant="faint"]) button:active:not(:disabled) {
109
- background: var(--btn-subtle-bg-hover);
98
+ background: var(--ae-color-subtle-hover);
110
99
  }
111
100
 
112
101
  :host([variant="text"]) button {
113
102
  background: transparent;
114
103
  border-color: transparent;
115
- color: var(--btn-accent);
104
+ color: var(--ae-color-accent);
116
105
  min-width: auto;
117
106
  padding-left: 4px;
118
107
  padding-right: 4px;
119
108
  }
120
109
 
121
110
  :host([variant="text"]) button:hover:not(:disabled) {
122
- background: var(--btn-subtle-bg);
123
- color: var(--btn-accent-hover);
111
+ background: var(--ae-color-subtle);
112
+ color: var(--ae-color-accent-hover);
124
113
  }
125
114
 
126
115
  :host([variant="text"]) button:active:not(:disabled) {
127
- background: var(--btn-subtle-bg-hover);
116
+ background: var(--ae-color-subtle-hover);
128
117
  }
129
118
 
130
119
  /* Icon-only: single ae-icon child → square compact layout */
@@ -133,7 +122,7 @@ button:disabled {
133
122
  }
134
123
 
135
124
  :host([icon-only]:not([size])) {
136
- font-size: var(--size-m);
125
+ font-size: var(--ae-size-m);
137
126
  }
138
127
 
139
128
  :host([icon-only]) button {
@@ -149,9 +138,9 @@ button:disabled {
149
138
  }
150
139
 
151
140
  :host([active]) button {
152
- background: var(--btn-solid-bg-active);
153
- border-color: var(--btn-border-hover);
154
- color: var(--btn-solid-color-hover, var(--btn-solid-color));
141
+ background: var(--ae-color-solid-active);
142
+ border-color: var(--ae-color-border-hover);
143
+ color: var(--ae-color-on-solid-hover, var(--ae-color-on-solid));
155
144
  }
156
145
 
157
146
  .btn-icon {
@@ -162,7 +151,7 @@ button:disabled {
162
151
  display: inline-flex;
163
152
  align-items: center;
164
153
  justify-content: center;
165
- border-radius: 4px;
154
+ border-radius: var(--ae-radius-sm);
166
155
  }
167
156
 
168
157
  .btn-icon.btn-lg {
@@ -171,7 +160,7 @@ button:disabled {
171
160
  }
172
161
 
173
162
  .btn-circle {
174
- border-radius: 50%;
163
+ border-radius: var(--ae-radius-circle);
175
164
  }
176
165
 
177
166
  :host([block]) {
@@ -191,7 +180,7 @@ button.btn-loading::before {
191
180
  height: 1em;
192
181
  border: 2px solid currentColor;
193
182
  border-top-color: transparent;
194
- border-radius: 50%;
183
+ border-radius: var(--ae-radius-circle);
195
184
  animation: btn-spin 0.6s linear infinite;
196
185
  color: currentColor;
197
186
  opacity: 0.8;
@@ -1,46 +1,61 @@
1
1
  :host {
2
2
  display: block;
3
+ }
3
4
 
4
- --card-bg: var(--color-bg-subtle);
5
- --card-color: var(--color-text-subtle);
6
- --card-border: var(--color-border-subtle);
7
- --card-divider: var(--color-border-subtle);
5
+ .card {
6
+ border: 1px solid var(--ae-color-border-subtle);
7
+ border-radius: var(--ae-border-radius, var(--ae-radius-lg));
8
+ background: var(--ae-color-bg-subtle);
9
+ color: var(--ae-color-text-subtle);
10
+ overflow: hidden;
8
11
  }
9
12
 
10
- :host([variant="faint"]) {
11
- --card-bg: var(--color-bg-subtle);
12
- --card-color: var(--color-text-subtle);
13
- --card-border: var(--color-border-subtle);
14
- --card-divider: var(--color-border-subtle);
13
+ /* variant overrides */
14
+ :host([variant="faint"]) .card {
15
+ border-color: var(--ae-color-border-subtle);
16
+ background: var(--ae-color-bg-subtle);
17
+ color: var(--ae-color-text-subtle);
15
18
  }
16
19
 
17
- :host([variant="subtle"]) {
18
- --card-border: transparent;
19
- --card-divider: transparent;
20
+ :host([variant="subtle"]) .card {
21
+ border-color: transparent;
20
22
  }
21
23
 
22
- :host([variant="filled"]) {
23
- --card-bg: var(--color-solid);
24
- --card-color: var(--color-on-solid);
25
- --card-border: var(--color-solid);
26
- --card-divider: color-mix(in srgb, var(--color-solid), black 15%);
24
+ :host([variant="subtle"]) .header { border-bottom-color: transparent; }
25
+ :host([variant="subtle"]) .footer { border-top-color: transparent; }
26
+
27
+ :host([variant="filled"]) .card {
28
+ border-color: var(--ae-color-solid);
29
+ background: var(--ae-color-solid);
30
+ color: var(--ae-color-on-solid);
27
31
  }
28
32
 
29
- :host([variant="outlined"]) {
30
- --card-bg: transparent;
31
- --card-color: var(--color-text-subtle);
32
- --card-border: var(--color-border);
33
- --card-divider: var(--color-border-subtle);
33
+ :host([variant="filled"]) .header {
34
+ border-bottom-color: color-mix(in srgb, var(--ae-color-solid), black 15%);
34
35
  }
35
36
 
36
- .card {
37
- border: 1px solid var(--card-border);
38
- border-radius: 8px;
39
- background: var(--card-bg);
40
- color: var(--card-color);
41
- overflow: hidden;
37
+ :host([variant="filled"]) .footer {
38
+ border-top-color: color-mix(in srgb, var(--ae-color-solid), black 15%);
42
39
  }
43
40
 
41
+ :host([variant="outlined"]) .card {
42
+ border-color: var(--ae-color-border);
43
+ background: transparent;
44
+ color: var(--ae-color-text-subtle);
45
+ }
46
+
47
+ :host([variant="outlined"]) .header { border-bottom-color: var(--ae-color-border-subtle); }
48
+ :host([variant="outlined"]) .footer { border-top-color: var(--ae-color-border-subtle); }
49
+
50
+ :host([variant="text"]) .card {
51
+ border-color: transparent;
52
+ background: transparent;
53
+ color: var(--ae-color-text-main);
54
+ }
55
+
56
+ :host([variant="text"]) .header { border-bottom-color: transparent; color: var(--ae-color-accent); }
57
+ :host([variant="text"]) .footer { border-top-color: transparent; color: var(--ae-color-accent); }
58
+
44
59
  .header,
45
60
  .footer {
46
61
  display: none;
@@ -51,12 +66,12 @@
51
66
 
52
67
  :host([has-header]) .header {
53
68
  display: block;
54
- border-bottom: 1px solid var(--card-divider);
69
+ border-bottom: 1px solid var(--ae-color-border-subtle);
55
70
  }
56
71
 
57
72
  :host([has-footer]) .footer {
58
73
  display: block;
59
- border-top: 1px solid var(--card-divider);
74
+ border-top: 1px solid var(--ae-color-border-subtle);
60
75
  }
61
76
 
62
77
  .body {
@@ -2,7 +2,7 @@
2
2
  display: block;
3
3
  flex: 1;
4
4
  min-width: 0;
5
- font-size: var(--size-base);
5
+ font-size: var(--ae-size-base);
6
6
 
7
7
  /* Layout */
8
8
  --checkbox-field-gap: 4px;
@@ -10,13 +10,8 @@
10
10
  /* Checkbox */
11
11
  --checkbox-size: 1.167em;
12
12
  --checkbox-border-width: 1px;
13
- --checkbox-border-radius: 2px;
14
- --checkbox-border-color: var(--border-subtle);
15
- --checkbox-bg: var(--surface-base);
16
- --checkbox-accent-color: var(--color-solid);
17
-
18
- /* Default color when no [color] attribute — overridden by color.css :host([color=...]) */
19
- --color-solid: var(--color-primary);
13
+ --checkbox-border-color: var(--ae-border-subtle);
14
+ --checkbox-bg: var(--ae-surface-base);
20
15
  }
21
16
 
22
17
  .checkbox-container {
@@ -37,9 +32,9 @@
37
32
  height: var(--checkbox-size);
38
33
  cursor: pointer;
39
34
  border: var(--checkbox-border-width) solid var(--checkbox-border-color);
40
- border-radius: var(--checkbox-border-radius);
35
+ border-radius: var(--ae-border-radius, var(--ae-radius-xs));
41
36
  background: var(--checkbox-bg);
42
- accent-color: var(--checkbox-accent-color);
37
+ accent-color: var(--ae-color-solid);
43
38
  margin: 0;
44
39
  flex-shrink: 0;
45
40
  }
@@ -49,30 +44,8 @@
49
44
  cursor: not-allowed;
50
45
  }
51
46
 
52
- /* action buttons */
53
- .reset-btn,
54
- .clear-btn {
55
- width: 1.333em;
56
- height: 1.333em;
57
- border: none;
58
- border-radius: var(--reset-btn-border-radius);
59
- cursor: pointer;
60
- display: flex;
61
- align-items: center;
62
- justify-content: center;
63
- background: var(--reset-btn-bg);
64
- color: var(--reset-btn-color);
65
- transition: var(--reset-btn-transition);
66
- flex-shrink: 0;
67
- line-height: 1;
68
- }
69
-
70
- .reset-btn:hover {
71
- background: var(--reset-btn-bg-hover);
72
- color: var(--reset-btn-color-hover);
73
- }
74
-
75
- .clear-btn:hover {
76
- background: var(--clear-btn-bg-hover);
77
- color: var(--clear-btn-color-hover);
47
+ /* Error state */
48
+ :host([error]) .field-input {
49
+ outline: 2px solid var(--field-error-color, var(--ae-red));
50
+ outline-offset: 1px;
78
51
  }
@@ -0,0 +1,108 @@
1
+ :host {
2
+ display: inline-block;
3
+ }
4
+
5
+ button {
6
+ display: inline-flex;
7
+ align-items: center;
8
+ justify-content: center;
9
+ gap: 6px;
10
+ font-family: inherit;
11
+ font-weight: 400;
12
+ text-align: center;
13
+ white-space: nowrap;
14
+ vertical-align: middle;
15
+ user-select: none;
16
+ cursor: pointer;
17
+ transition: all 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
18
+ outline: none;
19
+ position: relative;
20
+ padding: 0.429em 0.571em;
21
+ font-size: 1em;
22
+ line-height: 1.5;
23
+ border-radius: var(--ae-border-radius, var(--ae-radius-sm));
24
+ height: 2.286em;
25
+ width: 2.286em;
26
+ min-width: unset;
27
+
28
+ background: var(--ae-color-solid);
29
+ border: 1px solid var(--ae-color-solid);
30
+ color: var(--ae-color-on-solid);
31
+ }
32
+
33
+ button:focus { outline: none; }
34
+ button:active { transform: translateY(1px); }
35
+
36
+ button:hover:not(:disabled) {
37
+ background: var(--ae-color-solid-hover);
38
+ border-color: var(--ae-color-border-hover);
39
+ color: var(--ae-color-on-solid-hover, var(--ae-color-on-solid));
40
+ }
41
+
42
+ button:active:not(:disabled) { background: var(--ae-color-solid-active); }
43
+
44
+ button:disabled {
45
+ opacity: 0.5;
46
+ cursor: not-allowed;
47
+ }
48
+
49
+ /* Hide the fallback-text slot */
50
+ slot { display: none; }
51
+
52
+ /* Icon visibility */
53
+ .icon-copy,
54
+ .icon-check {
55
+ position: absolute;
56
+ inset: 0;
57
+ display: flex;
58
+ align-items: center;
59
+ justify-content: center;
60
+ transition: opacity 0.15s ease, transform 0.15s ease;
61
+ }
62
+
63
+ .icon-copy { opacity: 1; transform: scale(1); }
64
+ .icon-check { opacity: 0; transform: scale(0.6); }
65
+
66
+ :host([copied]) .icon-copy { opacity: 0; transform: scale(0.6); }
67
+ :host([copied]) .icon-check { opacity: 1; transform: scale(1); }
68
+
69
+ /* Variants */
70
+ :host([variant="outlined"]) button {
71
+ background: transparent;
72
+ border-color: var(--ae-color-border);
73
+ color: var(--ae-color-accent);
74
+ }
75
+ :host([variant="outlined"]) button:hover:not(:disabled) {
76
+ background: var(--ae-color-subtle);
77
+ border-color: var(--ae-color-border-hover);
78
+ color: var(--ae-color-accent-hover);
79
+ }
80
+
81
+ :host([variant="faint"]) button {
82
+ background: var(--ae-color-subtle);
83
+ border-color: transparent;
84
+ color: var(--ae-color-accent);
85
+ }
86
+ :host([variant="faint"]) button:hover:not(:disabled) {
87
+ background: var(--ae-color-subtle-hover);
88
+ color: var(--ae-color-accent-hover);
89
+ }
90
+
91
+ :host([variant="subtle"]) button {
92
+ background: transparent;
93
+ border-color: transparent;
94
+ color: var(--ae-color-accent);
95
+ }
96
+ :host([variant="subtle"]) button:hover:not(:disabled) {
97
+ background: var(--ae-color-subtle);
98
+ color: var(--ae-color-accent-hover);
99
+ }
100
+
101
+ :host([variant="text"]) button {
102
+ background: transparent;
103
+ border-color: transparent;
104
+ color: var(--ae-color-accent);
105
+ }
106
+ :host([variant="text"]) button:hover:not(:disabled) {
107
+ color: var(--ae-color-accent-hover);
108
+ }
@@ -0,0 +1,10 @@
1
+ :host {
2
+ display: block;
3
+ }
4
+
5
+ /* Raise hovered/focused item so its border shows above neighbours */
6
+ ::slotted(ae-detail:hover),
7
+ ::slotted(ae-detail:focus-within) {
8
+ position: relative;
9
+ z-index: 1;
10
+ }
@@ -1,61 +1,77 @@
1
1
  :host {
2
2
  display: block;
3
3
 
4
- --detail-bg: var(--color-solid);
5
- --detail-color: var(--color-on-solid);
6
- --detail-border: var(--color-solid);
7
- --detail-header-bg: color-mix(in srgb, var(--color-solid), black 10%);
8
4
  --detail-radius: 6px;
9
5
  }
10
6
 
11
- :host([variant="faint"]) {
12
- --detail-bg: var(--color-bg-subtle);
13
- --detail-color: var(--color-text-subtle);
14
- --detail-border: var(--color-border-subtle);
15
- --detail-header-bg: var(--color-bg-subtle);
7
+ .detail {
8
+ border: 1px solid var(--ae-color-solid);
9
+ border-radius:
10
+ var(--detail-r-tl, var(--detail-radius))
11
+ var(--detail-r-tr, var(--detail-radius))
12
+ var(--detail-r-br, var(--detail-radius))
13
+ var(--detail-r-bl, var(--detail-radius));
14
+ color: var(--ae-color-on-solid);
15
+ background: var(--ae-color-solid);
16
+ overflow: hidden;
17
+ }
18
+
19
+ /* variant overrides */
20
+ :host([variant="subtle"]) .detail {
21
+ border-color: transparent;
22
+ background: var(--ae-color-bg-subtle);
23
+ color: var(--ae-color-text-subtle);
16
24
  }
17
25
 
18
- :host([variant="subtle"]) {
19
- --detail-bg: transparent;
20
- --detail-color: var(--color-text-main);
21
- --detail-border: transparent;
22
- --detail-header-bg: transparent;
26
+ :host([variant="subtle"]) .summary { background: var(--ae-color-bg-subtle); }
27
+
28
+ :host([variant="faint"]) .detail {
29
+ border-color: var(--ae-color-border-subtle);
30
+ background: var(--ae-color-bg-subtle);
31
+ color: var(--ae-color-text-subtle);
23
32
  }
24
33
 
25
- :host([variant="filled"]) {
26
- --detail-bg: var(--color-solid);
27
- --detail-color: var(--color-on-solid);
28
- --detail-border: var(--color-solid);
29
- --detail-header-bg: color-mix(in srgb, var(--color-solid), black 10%);
34
+ :host([variant="faint"]) .summary { background: var(--ae-color-bg-subtle); }
35
+
36
+ :host([variant="text"]) .detail {
37
+ border-color: transparent;
38
+ background: transparent;
39
+ color: var(--ae-color-text-main);
30
40
  }
31
41
 
32
- :host([variant="outlined"]) {
33
- --detail-bg: transparent;
34
- --detail-color: var(--color-text-subtle);
35
- --detail-border: var(--color-border);
36
- --detail-header-bg: transparent;
42
+ :host([variant="text"]) .summary {
43
+ background: transparent;
37
44
  }
38
45
 
39
- :host([disabled]) {
40
- opacity: 0.5;
41
- pointer-events: none;
46
+ :host([variant="text"]) .label {
47
+ color: var(--ae-color-accent);
42
48
  }
43
49
 
44
- .detail {
45
- border: 1px solid var(--detail-border);
46
- border-radius: var(--detail-radius);
47
- color: var(--detail-color);
48
- background: var(--detail-bg);
49
- overflow: hidden;
50
+ :host([variant="filled"]) .detail {
51
+ border-color: var(--ae-color-solid);
52
+ background: var(--ae-color-solid);
53
+ color: var(--ae-color-on-solid);
50
54
  }
51
55
 
56
+ :host([variant="filled"]) .summary {
57
+ background: color-mix(in srgb, var(--ae-color-solid), black 10%);
58
+ }
59
+
60
+ :host([variant="outlined"]) .detail {
61
+ border-color: var(--ae-color-border);
62
+ background: transparent;
63
+ color: var(--ae-color-text-subtle);
64
+ }
65
+
66
+ :host([variant="outlined"]) .summary { background: transparent; }
67
+
52
68
  .summary {
53
69
  display: flex;
54
70
  align-items: center;
55
71
  gap: 6px;
56
72
  width: 100%;
57
73
  padding: 10px 14px;
58
- background: var(--detail-header-bg);
74
+ background: color-mix(in srgb, var(--ae-color-solid), black 10%);
59
75
  color: inherit;
60
76
  font-size: inherit;
61
77
  font-family: inherit;
@@ -72,7 +88,7 @@
72
88
  }
73
89
 
74
90
  .summary:focus-visible {
75
- outline: 2px solid var(--color-border);
91
+ outline: 2px solid var(--ae-color-border);
76
92
  }
77
93
 
78
94
  slot[name="summary"] {
@@ -93,6 +109,11 @@ slot[name="collapse"] {
93
109
  flex-shrink: 0;
94
110
  }
95
111
 
112
+ :host([icon-placement="start"]) slot[name="expand"],
113
+ :host([icon-placement="start"]) slot[name="collapse"] {
114
+ order: -1;
115
+ }
116
+
96
117
  slot[name="collapse"] {
97
118
  display: none;
98
119
  }