aeico-components 0.1.6 → 0.1.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (380) hide show
  1. package/README.md +0 -0
  2. package/dist/alert.cjs +637 -4
  3. package/dist/alert.cjs.map +7 -1
  4. package/dist/alert.js +575 -3
  5. package/dist/alert.js.map +7 -1
  6. package/dist/badge.cjs +573 -4
  7. package/dist/badge.cjs.map +7 -1
  8. package/dist/badge.js +510 -3
  9. package/dist/badge.js.map +7 -1
  10. package/dist/breadcrumb.cjs +709 -5
  11. package/dist/breadcrumb.cjs.map +7 -1
  12. package/dist/breadcrumb.js +644 -4
  13. package/dist/breadcrumb.js.map +7 -1
  14. package/dist/button-group.cjs +546 -4
  15. package/dist/button-group.cjs.map +7 -1
  16. package/dist/button-group.js +489 -3
  17. package/dist/button-group.js.map +7 -1
  18. package/dist/button.cjs +834 -4
  19. package/dist/button.cjs.map +7 -1
  20. package/dist/button.js +771 -3
  21. package/dist/button.js.map +7 -1
  22. package/dist/card.cjs +574 -4
  23. package/dist/card.cjs.map +7 -1
  24. package/dist/card.js +516 -3
  25. package/dist/card.js.map +7 -1
  26. package/dist/checkbox.cjs +867 -4
  27. package/dist/checkbox.cjs.map +7 -1
  28. package/dist/checkbox.js +794 -3
  29. package/dist/checkbox.js.map +7 -1
  30. package/dist/copy-button.cjs +1046 -4
  31. package/dist/copy-button.cjs.map +7 -1
  32. package/dist/copy-button.js +969 -3
  33. package/dist/copy-button.js.map +7 -1
  34. package/dist/detail-group.cjs +533 -0
  35. package/dist/detail-group.cjs.map +7 -0
  36. package/dist/detail-group.js +477 -0
  37. package/dist/detail-group.js.map +7 -0
  38. package/dist/detail.cjs +627 -4
  39. package/dist/detail.cjs.map +7 -1
  40. package/dist/detail.js +569 -3
  41. package/dist/detail.js.map +7 -1
  42. package/dist/dialog.cjs +738 -4
  43. package/dist/dialog.cjs.map +7 -1
  44. package/dist/dialog.js +665 -3
  45. package/dist/dialog.js.map +7 -1
  46. package/dist/divider.cjs +558 -4
  47. package/dist/divider.cjs.map +7 -1
  48. package/dist/divider.js +502 -3
  49. package/dist/divider.js.map +7 -1
  50. package/dist/drawer.cjs +818 -4
  51. package/dist/drawer.cjs.map +7 -1
  52. package/dist/drawer.js +749 -3
  53. package/dist/drawer.js.map +7 -1
  54. package/dist/dropdown.cjs +1396 -5
  55. package/dist/dropdown.cjs.map +7 -1
  56. package/dist/dropdown.js +1316 -4
  57. package/dist/dropdown.js.map +7 -1
  58. package/dist/icon-button.cjs +999 -4
  59. package/dist/icon-button.cjs.map +7 -1
  60. package/dist/icon-button.js +930 -3
  61. package/dist/icon-button.js.map +7 -1
  62. package/dist/icon.cjs +613 -4
  63. package/dist/icon.cjs.map +7 -1
  64. package/dist/icon.js +547 -3
  65. package/dist/icon.js.map +7 -1
  66. package/dist/index.cjs +6484 -188
  67. package/dist/index.cjs.map +7 -1
  68. package/dist/index.js +6095 -147
  69. package/dist/index.js.map +7 -1
  70. package/dist/menu.cjs +841 -4
  71. package/dist/menu.cjs.map +7 -1
  72. package/dist/menu.js +785 -3
  73. package/dist/menu.js.map +7 -1
  74. package/dist/navbar.cjs +622 -4
  75. package/dist/navbar.cjs.map +7 -1
  76. package/dist/navbar.js +564 -3
  77. package/dist/navbar.js.map +7 -1
  78. package/dist/number-input.cjs +887 -0
  79. package/dist/number-input.cjs.map +7 -0
  80. package/dist/number-input.js +820 -0
  81. package/dist/number-input.js.map +7 -0
  82. package/dist/pagination.cjs +1099 -4
  83. package/dist/pagination.cjs.map +7 -1
  84. package/dist/pagination.js +1029 -3
  85. package/dist/pagination.js.map +7 -1
  86. package/dist/progress-bar.cjs +581 -4
  87. package/dist/progress-bar.cjs.map +7 -1
  88. package/dist/progress-bar.js +525 -3
  89. package/dist/progress-bar.js.map +7 -1
  90. package/dist/radio-group.cjs +973 -5
  91. package/dist/radio-group.cjs.map +7 -1
  92. package/dist/radio-group.js +899 -4
  93. package/dist/radio-group.js.map +7 -1
  94. package/dist/select.cjs +1242 -45
  95. package/dist/select.cjs.map +7 -1
  96. package/dist/select.js +1159 -44
  97. package/dist/select.js.map +7 -1
  98. package/dist/slider.cjs +1420 -4
  99. package/dist/slider.cjs.map +7 -1
  100. package/dist/slider.js +1351 -3
  101. package/dist/slider.js.map +7 -1
  102. package/dist/spinner.cjs +587 -4
  103. package/dist/spinner.cjs.map +7 -1
  104. package/dist/spinner.js +528 -3
  105. package/dist/spinner.js.map +7 -1
  106. package/dist/styles/layout.cjs +1 -0
  107. package/dist/styles/layout.js +1 -0
  108. package/dist/styles/radius.cjs +1 -0
  109. package/dist/styles/radius.js +1 -0
  110. package/dist/styles/variables.cjs +1 -0
  111. package/dist/styles/variables.js +1 -0
  112. package/dist/switch.cjs +1092 -4
  113. package/dist/switch.cjs.map +7 -1
  114. package/dist/switch.js +1013 -3
  115. package/dist/switch.js.map +7 -1
  116. package/dist/tabs.cjs +660 -6
  117. package/dist/tabs.cjs.map +7 -1
  118. package/dist/tabs.js +591 -5
  119. package/dist/tabs.js.map +7 -1
  120. package/dist/tag.cjs +591 -3
  121. package/dist/tag.cjs.map +7 -1
  122. package/dist/tag.js +532 -2
  123. package/dist/tag.js.map +7 -1
  124. package/dist/text-input.cjs +829 -4
  125. package/dist/text-input.cjs.map +7 -1
  126. package/dist/text-input.js +761 -3
  127. package/dist/text-input.js.map +7 -1
  128. package/dist/textarea.cjs +914 -3
  129. package/dist/textarea.cjs.map +7 -1
  130. package/dist/textarea.js +854 -2
  131. package/dist/textarea.js.map +7 -1
  132. package/dist/tooltip.cjs +764 -4
  133. package/dist/tooltip.cjs.map +7 -1
  134. package/dist/tooltip.js +711 -3
  135. package/dist/tooltip.js.map +7 -1
  136. package/dist/tree.cjs +1059 -4
  137. package/dist/tree.cjs.map +7 -1
  138. package/dist/tree.js +985 -3
  139. package/dist/tree.js.map +7 -1
  140. package/dist/types/card/defines.d.ts +1 -1
  141. package/dist/types/detail/defines.d.ts +1 -1
  142. package/dist/types/dialog/dialog.d.ts +1 -0
  143. package/dist/types/drawer/drawer.d.ts +2 -0
  144. package/dist/types/icon/defines.d.ts +7 -1
  145. package/dist/types/icon/index.d.ts +1 -1
  146. package/dist/types/menu/defines.d.ts +1 -0
  147. package/dist/types/menu/menu-item.d.ts +1 -0
  148. package/dist/types/menu/menu.d.ts +1 -0
  149. package/dist/types/styles/layout.d.ts +2 -0
  150. package/dist/types/styles/radius.d.ts +2 -0
  151. package/dist/types/styles/variables.d.ts +2 -0
  152. package/dist/types/tabs/defines.d.ts +1 -0
  153. package/dist/types/tabs/tabs.d.ts +3 -0
  154. package/package.json +31 -7
  155. package/src/alert/alert.ts +3 -3
  156. package/src/badge/badge.ts +4 -4
  157. package/src/breadcrumb/breadcrumb-item.ts +2 -2
  158. package/src/breadcrumb/breadcrumb.ts +3 -3
  159. package/src/button/button.ts +4 -4
  160. package/src/button-group/button-group.ts +8 -9
  161. package/src/card/card.ts +3 -3
  162. package/src/card/defines.ts +1 -1
  163. package/src/checkbox/checkbox.ts +6 -6
  164. package/src/copy-button/copy-button.ts +13 -9
  165. package/src/detail/defines.ts +1 -1
  166. package/src/detail/detail.ts +3 -3
  167. package/src/detail-group/detail-group.ts +2 -2
  168. package/src/dialog/dialog.ts +15 -14
  169. package/src/divider/divider.ts +3 -3
  170. package/src/drawer/drawer.ts +28 -11
  171. package/src/dropdown/dropdown-item.ts +2 -2
  172. package/src/dropdown/dropdown.ts +2 -2
  173. package/src/icon/defines.ts +8 -1
  174. package/src/icon/icon.ts +32 -14
  175. package/src/icon/index.ts +1 -1
  176. package/src/icon/registry.ts +2 -2
  177. package/src/menu/defines.ts +1 -0
  178. package/src/menu/menu-item.ts +14 -4
  179. package/src/menu/menu.ts +5 -2
  180. package/src/navbar/navbar.ts +3 -3
  181. package/src/number-input/number-input.ts +5 -5
  182. package/src/pagination/pagination.ts +3 -3
  183. package/src/progress-bar/progress-bar.ts +3 -3
  184. package/src/radio-group/radio-group.ts +12 -8
  185. package/src/select/select-option.ts +2 -2
  186. package/src/select/select.ts +5 -5
  187. package/src/slider/slider.ts +6 -6
  188. package/src/spinner/spinner.ts +4 -4
  189. package/src/styles/color.css +91 -91
  190. package/src/styles/components/action-button.css +12 -12
  191. package/src/styles/components/alert.css +22 -28
  192. package/src/styles/components/badge.css +13 -20
  193. package/src/styles/components/breadcrumb-item.css +7 -7
  194. package/src/styles/components/button-group.css +2 -0
  195. package/src/styles/components/button.css +39 -50
  196. package/src/styles/components/card.css +69 -30
  197. package/src/styles/components/checkbox.css +22 -16
  198. package/src/styles/components/copy-button.css +22 -33
  199. package/src/styles/components/detail.css +51 -39
  200. package/src/styles/components/dialog.css +11 -11
  201. package/src/styles/components/divider.css +3 -3
  202. package/src/styles/components/drawer.css +59 -27
  203. package/src/styles/components/dropdown-item.css +7 -8
  204. package/src/styles/components/dropdown.css +3 -4
  205. package/src/styles/components/field-label.css +13 -13
  206. package/src/styles/components/icon-button.css +25 -36
  207. package/src/styles/components/icon.css +1 -1
  208. package/src/styles/components/menu-item.css +13 -8
  209. package/src/styles/components/navbar.css +23 -44
  210. package/src/styles/components/number-input.css +27 -36
  211. package/src/styles/components/pagination.css +31 -31
  212. package/src/styles/components/progress-bar.css +2 -3
  213. package/src/styles/components/radio-group.css +88 -83
  214. package/src/styles/components/select-option.css +5 -5
  215. package/src/styles/components/select.css +21 -33
  216. package/src/styles/components/slider.css +56 -34
  217. package/src/styles/components/spinner.css +7 -9
  218. package/src/styles/components/switch.css +21 -19
  219. package/src/styles/components/tab.css +4 -5
  220. package/src/styles/components/tabs.css +48 -1
  221. package/src/styles/components/tag.css +14 -21
  222. package/src/styles/components/text-input.css +13 -22
  223. package/src/styles/components/textarea.css +12 -21
  224. package/src/styles/components/tooltip.css +4 -5
  225. package/src/styles/components/tree-item.css +12 -12
  226. package/src/styles/layout.css +5 -2
  227. package/src/styles/radius.css +25 -0
  228. package/src/styles/size.css +7 -7
  229. package/src/styles/variables.css +271 -247
  230. package/src/switch/switch.ts +6 -6
  231. package/src/tabs/defines.ts +1 -0
  232. package/src/tabs/tab-panel.ts +1 -1
  233. package/src/tabs/tab.ts +1 -1
  234. package/src/tabs/tabs.ts +14 -2
  235. package/src/tag/tag.ts +4 -4
  236. package/src/text-input/text-input.ts +5 -5
  237. package/src/textarea/textarea.ts +5 -5
  238. package/src/tooltip/tooltip.ts +2 -2
  239. package/src/tree/tree-item.ts +2 -2
  240. package/src/tree/tree.ts +2 -2
  241. package/dist/chunks/action-button.cjs +0 -296
  242. package/dist/chunks/action-button.cjs.map +0 -1
  243. package/dist/chunks/action-button.js +0 -297
  244. package/dist/chunks/action-button.js.map +0 -1
  245. package/dist/chunks/aeico-component.cjs +0 -17
  246. package/dist/chunks/aeico-component.cjs.map +0 -1
  247. package/dist/chunks/aeico-component.js +0 -18
  248. package/dist/chunks/aeico-component.js.map +0 -1
  249. package/dist/chunks/alert.cjs +0 -170
  250. package/dist/chunks/alert.cjs.map +0 -1
  251. package/dist/chunks/alert.js +0 -171
  252. package/dist/chunks/alert.js.map +0 -1
  253. package/dist/chunks/badge.cjs +0 -85
  254. package/dist/chunks/badge.cjs.map +0 -1
  255. package/dist/chunks/badge.js +0 -86
  256. package/dist/chunks/badge.js.map +0 -1
  257. package/dist/chunks/breadcrumb-item.cjs +0 -261
  258. package/dist/chunks/breadcrumb-item.cjs.map +0 -1
  259. package/dist/chunks/breadcrumb-item.js +0 -262
  260. package/dist/chunks/breadcrumb-item.js.map +0 -1
  261. package/dist/chunks/button-group.cjs +0 -79
  262. package/dist/chunks/button-group.cjs.map +0 -1
  263. package/dist/chunks/button-group.js +0 -80
  264. package/dist/chunks/button-group.js.map +0 -1
  265. package/dist/chunks/button.cjs +0 -348
  266. package/dist/chunks/button.cjs.map +0 -1
  267. package/dist/chunks/button.js +0 -349
  268. package/dist/chunks/button.js.map +0 -1
  269. package/dist/chunks/card.cjs +0 -93
  270. package/dist/chunks/card.cjs.map +0 -1
  271. package/dist/chunks/card.js +0 -94
  272. package/dist/chunks/card.js.map +0 -1
  273. package/dist/chunks/checkbox.cjs +0 -86
  274. package/dist/chunks/checkbox.cjs.map +0 -1
  275. package/dist/chunks/checkbox.js +0 -87
  276. package/dist/chunks/checkbox.js.map +0 -1
  277. package/dist/chunks/color.cjs +0 -4
  278. package/dist/chunks/color.cjs.map +0 -1
  279. package/dist/chunks/color.js +0 -5
  280. package/dist/chunks/color.js.map +0 -1
  281. package/dist/chunks/copy-button.cjs +0 -168
  282. package/dist/chunks/copy-button.cjs.map +0 -1
  283. package/dist/chunks/copy-button.js +0 -169
  284. package/dist/chunks/copy-button.js.map +0 -1
  285. package/dist/chunks/detail.cjs +0 -146
  286. package/dist/chunks/detail.cjs.map +0 -1
  287. package/dist/chunks/detail.js +0 -147
  288. package/dist/chunks/detail.js.map +0 -1
  289. package/dist/chunks/dialog.cjs +0 -117
  290. package/dist/chunks/dialog.cjs.map +0 -1
  291. package/dist/chunks/dialog.js +0 -118
  292. package/dist/chunks/dialog.js.map +0 -1
  293. package/dist/chunks/divider.cjs +0 -80
  294. package/dist/chunks/divider.cjs.map +0 -1
  295. package/dist/chunks/divider.js +0 -81
  296. package/dist/chunks/divider.js.map +0 -1
  297. package/dist/chunks/drawer.cjs +0 -180
  298. package/dist/chunks/drawer.cjs.map +0 -1
  299. package/dist/chunks/drawer.js +0 -181
  300. package/dist/chunks/drawer.js.map +0 -1
  301. package/dist/chunks/dropdown-button.cjs +0 -534
  302. package/dist/chunks/dropdown-button.cjs.map +0 -1
  303. package/dist/chunks/dropdown-button.js +0 -535
  304. package/dist/chunks/dropdown-button.js.map +0 -1
  305. package/dist/chunks/icon-button.cjs +0 -35
  306. package/dist/chunks/icon-button.cjs.map +0 -1
  307. package/dist/chunks/icon-button.js +0 -36
  308. package/dist/chunks/icon-button.js.map +0 -1
  309. package/dist/chunks/icon.cjs +0 -108
  310. package/dist/chunks/icon.cjs.map +0 -1
  311. package/dist/chunks/icon.js +0 -109
  312. package/dist/chunks/icon.js.map +0 -1
  313. package/dist/chunks/menu.cjs +0 -396
  314. package/dist/chunks/menu.cjs.map +0 -1
  315. package/dist/chunks/menu.js +0 -397
  316. package/dist/chunks/menu.js.map +0 -1
  317. package/dist/chunks/navbar.cjs +0 -142
  318. package/dist/chunks/navbar.cjs.map +0 -1
  319. package/dist/chunks/navbar.js +0 -143
  320. package/dist/chunks/navbar.js.map +0 -1
  321. package/dist/chunks/pagination.cjs +0 -475
  322. package/dist/chunks/pagination.cjs.map +0 -1
  323. package/dist/chunks/pagination.js +0 -476
  324. package/dist/chunks/pagination.js.map +0 -1
  325. package/dist/chunks/progress-bar.cjs +0 -101
  326. package/dist/chunks/progress-bar.cjs.map +0 -1
  327. package/dist/chunks/progress-bar.js +0 -102
  328. package/dist/chunks/progress-bar.js.map +0 -1
  329. package/dist/chunks/radio.cjs +0 -185
  330. package/dist/chunks/radio.cjs.map +0 -1
  331. package/dist/chunks/radio.js +0 -186
  332. package/dist/chunks/radio.js.map +0 -1
  333. package/dist/chunks/select.cjs +0 -381
  334. package/dist/chunks/select.cjs.map +0 -1
  335. package/dist/chunks/select.js +0 -382
  336. package/dist/chunks/select.js.map +0 -1
  337. package/dist/chunks/size.cjs +0 -4
  338. package/dist/chunks/size.cjs.map +0 -1
  339. package/dist/chunks/size.js +0 -5
  340. package/dist/chunks/size.js.map +0 -1
  341. package/dist/chunks/slider.cjs +0 -611
  342. package/dist/chunks/slider.cjs.map +0 -1
  343. package/dist/chunks/slider.js +0 -612
  344. package/dist/chunks/slider.js.map +0 -1
  345. package/dist/chunks/spinner.cjs +0 -102
  346. package/dist/chunks/spinner.cjs.map +0 -1
  347. package/dist/chunks/spinner.js +0 -103
  348. package/dist/chunks/spinner.js.map +0 -1
  349. package/dist/chunks/switch.cjs +0 -167
  350. package/dist/chunks/switch.cjs.map +0 -1
  351. package/dist/chunks/switch.js +0 -168
  352. package/dist/chunks/switch.js.map +0 -1
  353. package/dist/chunks/tab-panel.cjs +0 -165
  354. package/dist/chunks/tab-panel.cjs.map +0 -1
  355. package/dist/chunks/tab-panel.js +0 -166
  356. package/dist/chunks/tab-panel.js.map +0 -1
  357. package/dist/chunks/tag.cjs +0 -108
  358. package/dist/chunks/tag.cjs.map +0 -1
  359. package/dist/chunks/tag.js +0 -109
  360. package/dist/chunks/tag.js.map +0 -1
  361. package/dist/chunks/text-input.cjs +0 -54
  362. package/dist/chunks/text-input.cjs.map +0 -1
  363. package/dist/chunks/text-input.js +0 -55
  364. package/dist/chunks/text-input.js.map +0 -1
  365. package/dist/chunks/textarea.cjs +0 -137
  366. package/dist/chunks/textarea.cjs.map +0 -1
  367. package/dist/chunks/textarea.js +0 -138
  368. package/dist/chunks/textarea.js.map +0 -1
  369. package/dist/chunks/tooltip.cjs +0 -293
  370. package/dist/chunks/tooltip.cjs.map +0 -1
  371. package/dist/chunks/tooltip.js +0 -294
  372. package/dist/chunks/tooltip.js.map +0 -1
  373. package/dist/chunks/tree.cjs +0 -468
  374. package/dist/chunks/tree.cjs.map +0 -1
  375. package/dist/chunks/tree.js +0 -469
  376. package/dist/chunks/tree.js.map +0 -1
  377. package/dist/chunks/variables.cjs +0 -372
  378. package/dist/chunks/variables.cjs.map +0 -1
  379. package/dist/chunks/variables.js +0 -373
  380. package/dist/chunks/variables.js.map +0 -1
@@ -1,6 +1,972 @@
1
- import { C, C as C2 } from "./chunks/copy-button.js";
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : /* @__PURE__ */ Symbol.for("Symbol." + name);
5
+ var __typeError = (msg) => {
6
+ throw TypeError(msg);
7
+ };
8
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
9
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
10
+ var __decoratorStart = (base) => [, , , __create(base?.[__knownSymbol("metadata")] ?? null)];
11
+ var __decoratorStrings = ["class", "method", "getter", "setter", "accessor", "field", "value", "get", "set"];
12
+ var __expectFn = (fn) => fn !== void 0 && typeof fn !== "function" ? __typeError("Function expected") : fn;
13
+ var __decoratorContext = (kind, name, done, metadata, fns) => ({ kind: __decoratorStrings[kind], name, metadata, addInitializer: (fn) => done._ ? __typeError("Already initialized") : fns.push(__expectFn(fn || null)) });
14
+ var __decoratorMetadata = (array, target) => __defNormalProp(target, __knownSymbol("metadata"), array[3]);
15
+ var __runInitializers = (array, flags, self, value) => {
16
+ for (var i = 0, fns = array[flags >> 1], n = fns && fns.length; i < n; i++) flags & 1 ? fns[i].call(self) : value = fns[i].call(self, value);
17
+ return value;
18
+ };
19
+ var __decorateElement = (array, flags, name, decorators, target, extra) => {
20
+ var fn, it, done, ctx, access, k = flags & 7, s = !!(flags & 8), p = !!(flags & 16);
21
+ var j = k > 3 ? array.length + 1 : k ? s ? 1 : 2 : 0, key = __decoratorStrings[k + 5];
22
+ var initializers = k > 3 && (array[j - 1] = []), extraInitializers = array[j] || (array[j] = []);
23
+ var desc = k && (!p && !s && (target = target.prototype), k < 5 && (k > 3 || !p) && __getOwnPropDesc(k < 4 ? target : { get [name]() {
24
+ return __privateGet(this, extra);
25
+ }, set [name](x) {
26
+ return __privateSet(this, extra, x);
27
+ } }, name));
28
+ k ? p && k < 4 && __name(extra, (k > 2 ? "set " : k > 1 ? "get " : "") + name) : __name(target, name);
29
+ for (var i = decorators.length - 1; i >= 0; i--) {
30
+ ctx = __decoratorContext(k, name, done = {}, array[3], extraInitializers);
31
+ if (k) {
32
+ ctx.static = s, ctx.private = p, access = ctx.access = { has: p ? (x) => __privateIn(target, x) : (x) => name in x };
33
+ if (k ^ 3) access.get = p ? (x) => (k ^ 1 ? __privateGet : __privateMethod)(x, target, k ^ 4 ? extra : desc.get) : (x) => x[name];
34
+ if (k > 2) access.set = p ? (x, y) => __privateSet(x, target, y, k ^ 4 ? extra : desc.set) : (x, y) => x[name] = y;
35
+ }
36
+ it = (0, decorators[i])(k ? k < 4 ? p ? extra : desc[key] : k > 4 ? void 0 : { get: desc.get, set: desc.set } : target, ctx), done._ = 1;
37
+ if (k ^ 4 || it === void 0) __expectFn(it) && (k > 4 ? initializers.unshift(it) : k ? p ? extra = it : desc[key] = it : target = it);
38
+ else if (typeof it !== "object" || it === null) __typeError("Object expected");
39
+ else __expectFn(fn = it.get) && (desc.get = fn), __expectFn(fn = it.set) && (desc.set = fn), __expectFn(fn = it.init) && initializers.unshift(fn);
40
+ }
41
+ return k || __decoratorMetadata(array, target), desc && __defProp(target, name, desc), p ? k ^ 4 ? extra : desc : target;
42
+ };
43
+ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
44
+ var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
45
+ var __privateIn = (member, obj) => Object(obj) !== obj ? __typeError('Cannot use the "in" operator on this value') : member.has(obj);
46
+ var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
47
+ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
48
+ var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
49
+ var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method);
50
+
51
+ // css-inline:/home/runner/work/aeico-components/aeico-components/src/styles/variables.css
52
+ var variables_default = `:root,
53
+ :host {
54
+ --ae-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue",
55
+ "Noto Sans", "Liberation Sans", Arial, sans-serif,
56
+ "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
57
+ --ae-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas,
58
+ "Liberation Mono", "Courier New", monospace;
59
+ font-family: var(--ae-font-sans-serif);
60
+ --ae-blue: #0e639c;
61
+ --ae-green: #28a745;
62
+ --ae-red: #dc3545;
63
+ --ae-yellow: #ffc107;
64
+ --ae-cyan: #17a2b8;
65
+ --ae-gray: #6e6e6e;
66
+ --ae-slate: #64748b;
67
+ --ae-dark: #343a40;
68
+ --ae-light: #f8f9fa;
69
+ }
70
+
71
+ :root,
72
+ :host {
73
+ /* Blue */
74
+ --ae-blue-100: color-mix(in srgb, var(--ae-blue) 20%, white);
75
+ --ae-blue-200: color-mix(in srgb, var(--ae-blue) 40%, white);
76
+ --ae-blue-300: color-mix(in srgb, var(--ae-blue) 60%, white);
77
+ --ae-blue-400: color-mix(in srgb, var(--ae-blue) 80%, white);
78
+ --ae-blue-500: var(--ae-blue);
79
+ --ae-blue-600: color-mix(in srgb, var(--ae-blue) 80%, black);
80
+ --ae-blue-700: color-mix(in srgb, var(--ae-blue) 60%, black);
81
+ --ae-blue-800: color-mix(in srgb, var(--ae-blue) 40%, black);
82
+ --ae-blue-900: color-mix(in srgb, var(--ae-blue) 20%, black);
83
+
84
+ /* Green */
85
+ --ae-green-100: color-mix(in srgb, var(--ae-green) 20%, white);
86
+ --ae-green-200: color-mix(in srgb, var(--ae-green) 40%, white);
87
+ --ae-green-300: color-mix(in srgb, var(--ae-green) 60%, white);
88
+ --ae-green-400: color-mix(in srgb, var(--ae-green) 80%, white);
89
+ --ae-green-500: var(--ae-green);
90
+ --ae-green-600: color-mix(in srgb, var(--ae-green) 80%, black);
91
+ --ae-green-700: color-mix(in srgb, var(--ae-green) 60%, black);
92
+ --ae-green-800: color-mix(in srgb, var(--ae-green) 40%, black);
93
+ --ae-green-900: color-mix(in srgb, var(--ae-green) 20%, black);
94
+
95
+ /* Red */
96
+ --ae-red-100: color-mix(in srgb, var(--ae-red) 20%, white);
97
+ --ae-red-200: color-mix(in srgb, var(--ae-red) 40%, white);
98
+ --ae-red-300: color-mix(in srgb, var(--ae-red) 60%, white);
99
+ --ae-red-400: color-mix(in srgb, var(--ae-red) 80%, white);
100
+ --ae-red-500: var(--ae-red);
101
+ --ae-red-600: color-mix(in srgb, var(--ae-red) 80%, black);
102
+ --ae-red-700: color-mix(in srgb, var(--ae-red) 60%, black);
103
+ --ae-red-800: color-mix(in srgb, var(--ae-red) 40%, black);
104
+ --ae-red-900: color-mix(in srgb, var(--ae-red) 20%, black);
105
+
106
+ /* Yellow */
107
+ --ae-yellow-100: color-mix(in srgb, var(--ae-yellow) 20%, white);
108
+ --ae-yellow-200: color-mix(in srgb, var(--ae-yellow) 40%, white);
109
+ --ae-yellow-300: color-mix(in srgb, var(--ae-yellow) 60%, white);
110
+ --ae-yellow-400: color-mix(in srgb, var(--ae-yellow) 80%, white);
111
+ --ae-yellow-500: var(--ae-yellow);
112
+ --ae-yellow-600: color-mix(in srgb, var(--ae-yellow) 80%, black);
113
+ --ae-yellow-700: color-mix(in srgb, var(--ae-yellow) 60%, black);
114
+ --ae-yellow-800: color-mix(in srgb, var(--ae-yellow) 40%, black);
115
+ --ae-yellow-900: color-mix(in srgb, var(--ae-yellow) 20%, black);
116
+
117
+ /* Cyan */
118
+ --ae-cyan-100: color-mix(in srgb, var(--ae-cyan) 20%, white);
119
+ --ae-cyan-200: color-mix(in srgb, var(--ae-cyan) 40%, white);
120
+ --ae-cyan-300: color-mix(in srgb, var(--ae-cyan) 60%, white);
121
+ --ae-cyan-400: color-mix(in srgb, var(--ae-cyan) 80%, white);
122
+ --ae-cyan-500: var(--ae-cyan);
123
+ --ae-cyan-600: color-mix(in srgb, var(--ae-cyan) 80%, black);
124
+ --ae-cyan-700: color-mix(in srgb, var(--ae-cyan) 60%, black);
125
+ --ae-cyan-800: color-mix(in srgb, var(--ae-cyan) 40%, black);
126
+ --ae-cyan-900: color-mix(in srgb, var(--ae-cyan) 20%, black);
127
+
128
+ /* Gray (neutral \u2014 base #6e6e6e) */
129
+ --ae-gray-100: color-mix(in srgb, var(--ae-gray) 20%, white);
130
+ --ae-gray-200: color-mix(in srgb, var(--ae-gray) 40%, white);
131
+ --ae-gray-300: color-mix(in srgb, var(--ae-gray) 60%, white);
132
+ --ae-gray-400: color-mix(in srgb, var(--ae-gray) 80%, white);
133
+ --ae-gray-500: var(--ae-gray);
134
+ --ae-gray-600: color-mix(in srgb, var(--ae-gray) 80%, black);
135
+ --ae-gray-700: color-mix(in srgb, var(--ae-gray) 60%, black);
136
+ --ae-gray-800: color-mix(in srgb, var(--ae-gray) 40%, black);
137
+ --ae-gray-900: color-mix(in srgb, var(--ae-gray) 20%, black);
138
+
139
+ /* Slate (blue-gray \u2014 base #64748b, used for 'secondary') */
140
+ --ae-slate-100: color-mix(in srgb, var(--ae-slate) 20%, white);
141
+ --ae-slate-200: color-mix(in srgb, var(--ae-slate) 40%, white);
142
+ --ae-slate-300: color-mix(in srgb, var(--ae-slate) 60%, white);
143
+ --ae-slate-400: color-mix(in srgb, var(--ae-slate) 80%, white);
144
+ --ae-slate-500: var(--ae-slate);
145
+ --ae-slate-600: color-mix(in srgb, var(--ae-slate) 80%, black);
146
+ --ae-slate-700: color-mix(in srgb, var(--ae-slate) 60%, black);
147
+ --ae-slate-800: color-mix(in srgb, var(--ae-slate) 40%, black);
148
+ --ae-slate-900: color-mix(in srgb, var(--ae-slate) 20%, black);
149
+
150
+ /* Dark (base #343a40) */
151
+ --ae-dark-100: color-mix(in srgb, var(--ae-dark) 20%, white);
152
+ --ae-dark-200: color-mix(in srgb, var(--ae-dark) 40%, white);
153
+ --ae-dark-300: color-mix(in srgb, var(--ae-dark) 60%, white);
154
+ --ae-dark-400: color-mix(in srgb, var(--ae-dark) 80%, white);
155
+ --ae-dark-500: var(--ae-dark);
156
+ --ae-dark-600: color-mix(in srgb, var(--ae-dark) 80%, black);
157
+ --ae-dark-700: color-mix(in srgb, var(--ae-dark) 60%, black);
158
+ --ae-dark-800: color-mix(in srgb, var(--ae-dark) 40%, black);
159
+ --ae-dark-900: color-mix(in srgb, var(--ae-dark) 20%, black);
160
+
161
+ /* Light (base #f8f9fa) */
162
+ --ae-light-100: color-mix(in srgb, var(--ae-light) 20%, white);
163
+ --ae-light-200: color-mix(in srgb, var(--ae-light) 40%, white);
164
+ --ae-light-300: color-mix(in srgb, var(--ae-light) 60%, white);
165
+ --ae-light-400: color-mix(in srgb, var(--ae-light) 80%, white);
166
+ --ae-light-500: var(--ae-light);
167
+ --ae-light-600: color-mix(in srgb, var(--ae-light) 80%, black);
168
+ --ae-light-700: color-mix(in srgb, var(--ae-light) 60%, black);
169
+ --ae-light-800: color-mix(in srgb, var(--ae-light) 40%, black);
170
+ --ae-light-900: color-mix(in srgb, var(--ae-light) 20%, black);
171
+ }
172
+
173
+ :root,
174
+ :host {
175
+ /* Hover / active mix (light default \u2014 overridden in \xA7 6 dark) */
176
+ --ae-color-mix-hover: black 10%;
177
+ --ae-color-mix-active: black 20%;
178
+
179
+ /* Primary (Blue) */
180
+ --ae-color-primary: var(--ae-blue-500);
181
+ --ae-color-primary-hover: color-mix(in srgb, var(--ae-color-primary), var(--ae-color-mix-hover));
182
+ --ae-color-primary-active: color-mix(in srgb, var(--ae-color-primary), var(--ae-color-mix-active));
183
+ --ae-color-primary-disabled: color-mix(in srgb, var(--ae-blue) 50%, var(--ae-gray-500));
184
+
185
+ /* Success (Green) */
186
+ --ae-color-success: var(--ae-green-500);
187
+ --ae-color-success-hover: color-mix(in srgb, var(--ae-color-success), var(--ae-color-mix-hover));
188
+ --ae-color-success-active: color-mix(in srgb, var(--ae-color-success), var(--ae-color-mix-active));
189
+ --ae-color-success-disabled: color-mix(in srgb, var(--ae-green) 50%, var(--ae-gray-500));
190
+
191
+ /* Danger (Red) */
192
+ --ae-color-danger: var(--ae-red-500);
193
+ --ae-color-danger-hover: color-mix(in srgb, var(--ae-color-danger), var(--ae-color-mix-hover));
194
+ --ae-color-danger-active: color-mix(in srgb, var(--ae-color-danger), var(--ae-color-mix-active));
195
+ --ae-color-danger-disabled: color-mix(in srgb, var(--ae-red) 50%, var(--ae-gray-500));
196
+
197
+ /* Warning (Yellow) */
198
+ --ae-color-warning: var(--ae-yellow-500);
199
+ --ae-color-warning-hover: color-mix(in srgb, var(--ae-color-warning), var(--ae-color-mix-hover));
200
+ --ae-color-warning-active: color-mix(in srgb, var(--ae-color-warning), var(--ae-color-mix-active));
201
+ --ae-color-warning-disabled: color-mix(in srgb, var(--ae-yellow) 50%, var(--ae-gray-500));
202
+
203
+ /* Info (Cyan) */
204
+ --ae-color-info: var(--ae-cyan-500);
205
+ --ae-color-info-hover: color-mix(in srgb, var(--ae-color-info), var(--ae-color-mix-hover));
206
+ --ae-color-info-active: color-mix(in srgb, var(--ae-color-info), var(--ae-color-mix-active));
207
+ --ae-color-info-disabled: color-mix(in srgb, var(--ae-cyan) 50%, var(--ae-gray-500));
208
+
209
+ /* Secondary (Slate) \u2014 base differs per theme, overridden in \xA7 6 dark */
210
+ --ae-color-secondary: var(--ae-slate-500);
211
+ --ae-color-secondary-hover: color-mix(in srgb, var(--ae-color-secondary), var(--ae-color-mix-hover));
212
+ --ae-color-secondary-active: color-mix(in srgb, var(--ae-color-secondary), var(--ae-color-mix-active));
213
+ --ae-color-secondary-text: var(--ae-slate-700);
214
+ }
215
+
216
+
217
+ .theme-light,
218
+ :root[theme="light"],
219
+ :host([theme="light"]),
220
+ :host-context([theme="light"]),
221
+ :where(:root),
222
+ :host {
223
+ color-scheme: light;
224
+
225
+ /* Gray UI aliases \u2014 lighter palette steps for elements on white background */
226
+ --ae-color-gray-dark: var(--ae-gray-400);
227
+ --ae-color-gray: var(--ae-gray-300);
228
+ --ae-color-gray-light: var(--ae-gray-200);
229
+ --ae-color-gray-lighter: var(--ae-gray-100);
230
+ --ae-color-gray-lightest: color-mix(in srgb, var(--ae-gray) 10%, white);
231
+
232
+ /* Text */
233
+ --ae-color-text-main: var(--ae-dark-700);
234
+ --ae-color-text-muted: var(--ae-gray-600);
235
+ --ae-color-text-disabled: var(--ae-gray-300);
236
+ --ae-color-text-link: var(--ae-blue-500);
237
+ --ae-color-text-link-hover: var(--ae-blue-700);
238
+
239
+ /* Surfaces */
240
+ --ae-surface-sunken: var(--ae-light-500);
241
+ --ae-surface-base: white;
242
+ --ae-surface-raised: var(--ae-light-500);
243
+ --ae-surface-overlay: white;
244
+ --ae-color-overlay: rgba(0, 0, 0, 0.4);
245
+
246
+ /* Borders */
247
+ --ae-border-subtle: rgba(0, 0, 0, 0.08);
248
+ --ae-border-default: rgba(0, 0, 0, 0.15);
249
+ --ae-border-hover: rgba(0, 0, 0, 0.25);
250
+ --ae-border-focus: var(--ae-color-primary);
251
+ --ae-border-disabled: rgba(0, 0, 0, 0.06);
252
+
253
+ /* Focus ring */
254
+ --ae-focus-ring: rgb(from var(--ae-blue) r g b / 0.30);
255
+ --ae-focus-ring-sm: rgb(from var(--ae-blue) r g b / 0.15);
256
+
257
+ /* Subtle intent tokens \u2014 light context */
258
+ --ae-color-primary-bg-subtle: rgb(from var(--ae-blue) r g b / 0.08);
259
+ --ae-color-primary-border-subtle: rgb(from var(--ae-blue) r g b / 0.40);
260
+ --ae-color-primary-text-emphasis: var(--ae-blue-700);
261
+
262
+ --ae-color-success-bg-subtle: rgb(from var(--ae-green) r g b / 0.08);
263
+ --ae-color-success-border-subtle: rgb(from var(--ae-green) r g b / 0.40);
264
+ --ae-color-success-text-emphasis: var(--ae-green-700);
265
+
266
+ --ae-color-danger-bg-subtle: rgb(from var(--ae-red) r g b / 0.08);
267
+ --ae-color-danger-border-subtle: rgb(from var(--ae-red) r g b / 0.40);
268
+ --ae-color-danger-text-emphasis: var(--ae-red-700);
269
+
270
+ --ae-color-warning-bg-subtle: rgb(from var(--ae-yellow) r g b / 0.08);
271
+ --ae-color-warning-border-subtle: rgb(from var(--ae-yellow) r g b / 0.40);
272
+ --ae-color-warning-text-emphasis: var(--ae-yellow-700);
273
+
274
+ --ae-color-info-bg-subtle: rgb(from var(--ae-cyan) r g b / 0.08);
275
+ --ae-color-info-border-subtle: rgb(from var(--ae-cyan) r g b / 0.40);
276
+ --ae-color-info-text-emphasis: var(--ae-cyan-700);
277
+
278
+ --ae-color-secondary-bg-subtle: rgb(from var(--ae-slate) r g b / 0.08);
279
+ --ae-color-secondary-border-subtle: rgb(from var(--ae-slate) r g b / 0.40);
280
+ --ae-color-secondary-text-emphasis: var(--ae-slate-700);
281
+
282
+ --ae-color-light-bg-subtle: var(--ae-gray-100); /* opaque on white: ~#e2e2e2 */
283
+ --ae-color-light-border-subtle: var(--ae-gray-200); /* opaque on white: ~#c4c4c4 */
284
+
285
+ --ae-color-dark-bg-subtle: var(--ae-dark-100); /* opaque on white: ~#d6d8d9 */
286
+ --ae-color-dark-border-subtle: var(--ae-dark-300); /* opaque on white: ~#85898c */
287
+
288
+ /* Component tokens \u2014 light defaults */
289
+ --ae-action-btn-bg: var(--ae-gray-200);
290
+ --ae-action-btn-bg-hover: var(--ae-color-primary);
291
+ --ae-action-btn-color: var(--ae-gray-600);
292
+ --ae-action-btn-color-hover: white;
293
+
294
+ --ae-clear-btn-bg-hover: var(--ae-color-danger);
295
+ --ae-clear-btn-color-hover: white;
296
+
297
+ --ae-reset-btn-border-radius: var(--ae-radius-xs);
298
+ --ae-reset-btn-bg: var(--ae-action-btn-bg);
299
+ --ae-reset-btn-bg-hover: var(--ae-action-btn-bg-hover);
300
+ --ae-reset-btn-color: var(--ae-action-btn-color);
301
+ --ae-reset-btn-color-hover: var(--ae-action-btn-color-hover);
302
+ --ae-reset-btn-transition: all 0.12s;
303
+
304
+ --ae-clear-btn-border-radius: var(--ae-radius-xs);
305
+ --ae-clear-btn-bg: var(--ae-action-btn-bg);
306
+ --ae-clear-btn-color: var(--ae-action-btn-color);
307
+ --ae-clear-btn-transition: all 0.12s;
308
+ }
309
+
310
+ :root,
311
+ :host {
312
+ --ae-size-scale: 1;
313
+ --ae-size-base: calc(1rem * var(--ae-size-scale)); /* 16px */
314
+ --ae-size-xl: round(calc(var(--ae-size-l) * 1.125), 1px); /* 23px */
315
+ --ae-size-l: round(calc(var(--ae-size-m) * 1.125 * 1.125), 1px); /* 20px */
316
+ --ae-size-m: var(--ae-size-base); /* 16px */
317
+ --ae-size-s: round(calc(var(--ae-size-m) / 1.125), 1px); /* 14px */
318
+ --ae-size-xs: round(calc(var(--ae-size-s) / 1.125), 1px); /* 12px */
319
+ --ae-size-2xs: round(calc(var(--ae-size-xs) / 1.125), 1px); /* 11px */
320
+ --ae-size-3xs: round(calc(var(--ae-size-2xs) / 1.125), 1px); /* 10px */
321
+ }
322
+
323
+ /* Border-radius tokens \u2014 shared across all components */
324
+ :root,
325
+ :host {
326
+ /**
327
+ * Unified border-radius hook for all components.
328
+ *
329
+ * Not set by default \u2014 each component falls back to its own --ae-radius-*
330
+ * token (e.g. button \u2192 sm, card \u2192 lg, input \u2192 xs).
331
+ *
332
+ * Usage:
333
+ * :root { --ae-border-radius: 0; } // global: all components square
334
+ * :root { --ae-border-radius: 999px; } // global: all components pill
335
+ * ae-button { --ae-border-radius: 50%; } // scoped: only buttons circular
336
+ * .sidebar { --ae-border-radius: 8px; } // scoped: everything inside .sidebar
337
+ *
338
+ * To restore a component to its own default:
339
+ * ae-card { --ae-border-radius: initial; }
340
+ */
341
+
342
+ --ae-radius-square: 0;
343
+ --ae-radius-xs: 2px;
344
+ --ae-radius-sm: 4px;
345
+ --ae-radius-md: 6px;
346
+ --ae-radius-lg: 8px;
347
+ --ae-radius-xl: 12px;
348
+ --ae-radius-pill: 999px;
349
+ --ae-radius-circle: 50%;
350
+ }
351
+
352
+ /* Layout tokens \u2014 defined on :root so all light DOM elements can use them */
353
+ :root,
354
+ :host {
355
+ --container-max-width: 1280px;
356
+ --container-padding-x: 1.5rem;
357
+ }
358
+
359
+ .theme-dark,
360
+ :root[theme="dark"],
361
+ :host([theme="dark"]),
362
+ :host-context([theme="dark"]) {
363
+ color-scheme: dark;
364
+
365
+ /* Hover / active \u2014 slightly gentler on dark backgrounds */
366
+ --ae-color-mix-hover: black 8%;
367
+ --ae-color-mix-active: black 16%;
368
+
369
+ /* Gray UI aliases \u2014 darker palette steps for elements on dark background */
370
+ --ae-color-gray-dark: var(--ae-gray-800);
371
+ --ae-color-gray: var(--ae-gray-700);
372
+ --ae-color-gray-light: var(--ae-gray-600);
373
+ --ae-color-gray-lighter: var(--ae-gray-500);
374
+ --ae-color-gray-lightest: var(--ae-gray-400);
375
+
376
+ /* Secondary \u2014 deeper base on dark background */
377
+ --ae-color-secondary: var(--ae-slate-700);
378
+ --ae-color-secondary-text: var(--ae-slate-300);
379
+
380
+ /* Text */
381
+ --ae-color-text-main: white;
382
+ --ae-color-text-muted: var(--ae-gray-200);
383
+ --ae-color-text-disabled: var(--ae-gray-500);
384
+ --ae-color-text-link: var(--ae-blue-300);
385
+ --ae-color-text-link-hover: var(--ae-blue-200);
386
+
387
+ /* Surfaces */
388
+ --ae-surface-sunken: var(--ae-gray-900);
389
+ --ae-surface-base: color-mix(in srgb, var(--ae-gray) 27%, black);
390
+ --ae-surface-raised: color-mix(in srgb, var(--ae-gray) 34%, black);
391
+ --ae-surface-overlay: color-mix(in srgb, var(--ae-gray) 38%, black);
392
+ --ae-color-overlay: rgba(0, 0, 0, 0.6);
393
+
394
+ /* Borders */
395
+ --ae-border-subtle: rgba(255, 255, 255, 0.08);
396
+ --ae-border-default: rgba(255, 255, 255, 0.12);
397
+ --ae-border-hover: rgba(255, 255, 255, 0.20);
398
+ --ae-border-focus: var(--ae-color-primary);
399
+ --ae-border-disabled: rgba(255, 255, 255, 0.06);
400
+
401
+ /* Focus ring */
402
+ --ae-focus-ring: rgb(from var(--ae-blue) r g b / 0.25);
403
+ --ae-focus-ring-sm: rgb(from var(--ae-blue) r g b / 0.10);
404
+
405
+ /* Subtle intent tokens \u2014 dark context (more alpha, lighter text-emphasis) */
406
+ --ae-color-primary-bg-subtle: rgb(from var(--ae-blue) r g b / 0.10);
407
+ --ae-color-primary-border-subtle: rgb(from var(--ae-blue) r g b / 0.30);
408
+ --ae-color-primary-text-emphasis: var(--ae-blue-300);
409
+
410
+ --ae-color-success-bg-subtle: rgb(from var(--ae-green) r g b / 0.10);
411
+ --ae-color-success-border-subtle: rgb(from var(--ae-green) r g b / 0.30);
412
+ --ae-color-success-text-emphasis: var(--ae-green-300);
413
+
414
+ --ae-color-danger-bg-subtle: rgb(from var(--ae-red) r g b / 0.10);
415
+ --ae-color-danger-border-subtle: rgb(from var(--ae-red) r g b / 0.30);
416
+ --ae-color-danger-text-emphasis: var(--ae-red-300);
417
+
418
+ --ae-color-warning-bg-subtle: rgb(from var(--ae-yellow) r g b / 0.10);
419
+ --ae-color-warning-border-subtle: rgb(from var(--ae-yellow) r g b / 0.30);
420
+ --ae-color-warning-text-emphasis: var(--ae-yellow-300);
421
+
422
+ --ae-color-info-bg-subtle: rgb(from var(--ae-cyan) r g b / 0.10);
423
+ --ae-color-info-border-subtle: rgb(from var(--ae-cyan) r g b / 0.30);
424
+ --ae-color-info-text-emphasis: var(--ae-cyan-300);
425
+
426
+ --ae-color-secondary-bg-subtle: rgb(from var(--ae-slate) r g b / 0.10);
427
+ --ae-color-secondary-border-subtle: rgb(from var(--ae-slate) r g b / 0.30);
428
+ --ae-color-secondary-text-emphasis: var(--ae-slate-300);
429
+
430
+ --ae-color-light-bg-subtle: rgb(from var(--ae-light) r g b / 0.20);
431
+ --ae-color-light-border-subtle: rgb(from var(--ae-light) r g b / 0.25);
432
+
433
+ --ae-color-dark-bg-subtle: rgb(from var(--ae-dark) r g b / 0.30);
434
+ --ae-color-dark-border-subtle: rgb(from var(--ae-dark) r g b / 0.50);
435
+
436
+ /* Component tokens \u2014 dark overrides */
437
+ --ae-action-btn-bg: var(--ae-color-gray);
438
+ --ae-action-btn-bg-hover: color-mix(in srgb, var(--ae-blue) 25%, var(--ae-gray-800));
439
+ --ae-action-btn-color: var(--ae-gray-400);
440
+ --ae-action-btn-color-hover: var(--ae-cyan-300);
441
+ --ae-clear-btn-bg-hover: color-mix(in srgb, var(--ae-red) 25%, var(--ae-gray-800));
442
+ --ae-clear-btn-color-hover: var(--ae-red-300);
443
+ }
444
+ `;
445
+
446
+ // css-inline:/home/runner/work/aeico-components/aeico-components/src/styles/size.css
447
+ var size_default = ':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';
448
+
449
+ // css-inline:/home/runner/work/aeico-components/aeico-components/src/styles/color.css
450
+ var color_default = ':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';
451
+
452
+ // css-inline:/home/runner/work/aeico-components/aeico-components/src/styles/components/copy-button.css
453
+ var copy_button_default = ':host {\n display: inline-block;\n}\n\nbutton {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: 6px;\n font-family: inherit;\n font-weight: 400;\n text-align: center;\n white-space: nowrap;\n vertical-align: middle;\n user-select: none;\n cursor: pointer;\n transition: all 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);\n outline: none;\n position: relative;\n padding: 0.429em 0.571em;\n font-size: 1em;\n line-height: 1.5;\n border-radius: var(--ae-border-radius, var(--ae-radius-sm));\n height: 2.286em;\n width: 2.286em;\n min-width: unset;\n\n background: var(--ae-color-solid);\n border: 1px solid var(--ae-color-solid);\n color: var(--ae-color-on-solid);\n}\n\nbutton:focus { outline: none; }\nbutton:active { transform: translateY(1px); }\n\nbutton:hover:not(:disabled) {\n background: var(--ae-color-solid-hover);\n border-color: var(--ae-color-border-hover);\n color: var(--ae-color-on-solid-hover, var(--ae-color-on-solid));\n}\n\nbutton:active:not(:disabled) { background: var(--ae-color-solid-active); }\n\nbutton:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n/* Hide the fallback-text slot */\nslot { display: none; }\n\n/* Icon visibility */\n.icon-copy,\n.icon-check {\n position: absolute;\n inset: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n transition: opacity 0.15s ease, transform 0.15s ease;\n}\n\n.icon-copy { opacity: 1; transform: scale(1); }\n.icon-check { opacity: 0; transform: scale(0.6); }\n\n:host([copied]) .icon-copy { opacity: 0; transform: scale(0.6); }\n:host([copied]) .icon-check { opacity: 1; transform: scale(1); }\n\n/* Variants */\n:host([variant="outlined"]) button {\n background: transparent;\n border-color: var(--ae-color-border);\n color: var(--ae-color-accent);\n}\n:host([variant="outlined"]) button:hover:not(:disabled) {\n background: var(--ae-color-subtle);\n border-color: var(--ae-color-border-hover);\n color: var(--ae-color-accent-hover);\n}\n\n:host([variant="faint"]) button {\n background: var(--ae-color-subtle);\n border-color: transparent;\n color: var(--ae-color-accent);\n}\n:host([variant="faint"]) button:hover:not(:disabled) {\n background: var(--ae-color-subtle-hover);\n color: var(--ae-color-accent-hover);\n}\n\n:host([variant="subtle"]) button {\n background: transparent;\n border-color: transparent;\n color: var(--ae-color-accent);\n}\n:host([variant="subtle"]) button:hover:not(:disabled) {\n background: var(--ae-color-subtle);\n color: var(--ae-color-accent-hover);\n}\n\n:host([variant="text"]) button {\n background: transparent;\n border-color: transparent;\n color: var(--ae-color-accent);\n}\n:host([variant="text"]) button:hover:not(:disabled) {\n color: var(--ae-color-accent-hover);\n}\n';
454
+
455
+ // src/aeico-component.ts
456
+ import { AeicoElement } from "aeico";
457
+
458
+ // src/utils.ts
459
+ var SVG_NS = "http://www.w3.org/2000/svg";
460
+ function toKebab(str) {
461
+ const cleaned = str.replace(/^[_\d]+/, "");
462
+ return cleaned.replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase();
463
+ }
464
+
465
+ // src/aeico-component.ts
466
+ var TAG_NAME_PREFIX = "ae";
467
+ var AeicoComponent = class extends AeicoElement {
468
+ static register(name) {
469
+ const tagName = name || `${TAG_NAME_PREFIX}-${this.tagName || toKebab(this.name)}`;
470
+ super.register(tagName);
471
+ }
472
+ };
473
+ var aeico_component_default = AeicoComponent;
474
+
475
+ // src/copy-button/copy-button.ts
476
+ import { html as html3 } from "aeico";
477
+ import { prop as prop2 } from "aeico";
478
+
479
+ // src/icon/icon.ts
480
+ import { html } from "aeico";
481
+
482
+ // css-inline:/home/runner/work/aeico-components/aeico-components/src/styles/components/icon.css
483
+ var icon_default = ":host {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n font-size: 20px;\n width: 1em;\n height: 1em;\n color: inherit;\n flex-shrink: 0;\n line-height: 0;\n vertical-align: middle;\n}\n\n:host([color]) {\n color: var(--ae-color-solid);\n}\n\n.icon-svg {\n display: block;\n width: 100%;\n height: 100%;\n fill: var(--icon-fill, currentColor);\n stroke: var(--icon-stroke, none);\n stroke-width: var(--icon-stroke-width, 2);\n stroke-linecap: var(--icon-stroke-linecap, round);\n stroke-linejoin: var(--icon-stroke-linejoin, round);\n pointer-events: none;\n overflow: visible;\n}\n";
484
+
485
+ // src/icon/defines.ts
486
+ var defaultViewBox = "0 0 24 24";
487
+
488
+ // src/icon/registry.ts
489
+ var IconRegistry = class {
490
+ static _icons = /* @__PURE__ */ new Map();
491
+ /** Names registered via addBuiltIn — can be overridden by user add() calls */
492
+ static _builtInKeys = /* @__PURE__ */ new Set();
493
+ /** Register user icons. Always takes priority over built-in icons. */
494
+ static add(icons) {
495
+ for (const [name, data] of Object.entries(icons)) {
496
+ if (typeof data === "string") {
497
+ this._icons.set(name, { paths: data, viewBox: defaultViewBox });
498
+ } else {
499
+ this._icons.set(name, data);
500
+ }
501
+ this._builtInKeys.delete(name);
502
+ }
503
+ }
504
+ /**
505
+ * Register built-in icons provided by the library.
506
+ * A built-in icon will NOT overwrite an icon already registered by the user.
507
+ */
508
+ static addBuiltIn(icons) {
509
+ for (const [name, data] of Object.entries(icons)) {
510
+ if (this._icons.has(name) && !this._builtInKeys.has(name)) continue;
511
+ if (typeof data === "string") {
512
+ this._icons.set(name, { paths: data, viewBox: defaultViewBox });
513
+ } else {
514
+ this._icons.set(name, data);
515
+ }
516
+ this._builtInKeys.add(name);
517
+ }
518
+ }
519
+ static get(name) {
520
+ return this._icons.get(name);
521
+ }
522
+ static has(name) {
523
+ return this._icons.has(name);
524
+ }
525
+ };
526
+ var registry_default = IconRegistry;
527
+
528
+ // src/icon/built-in-icons.ts
529
+ registry_default.addBuiltIn({
530
+ copy: "M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z",
531
+ check: "M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z",
532
+ "chevron-left": "M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z",
533
+ "chevron-right": "M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z",
534
+ "chevron-up": "M12 8l-6 6 1.41 1.41L12 10.83l4.59 4.58L18 14z",
535
+ "chevron-down": "M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z",
536
+ "chevrons-left": "M18.41 16.59L13.82 12l4.59-4.59L17 6l-6 6 6 6zM6 6h2v12H6z",
537
+ "chevrons-right": "M5.59 7.41L10.18 12l-4.59 4.59L7 18l6-6-6-6zM16 6h2v12h-2z",
538
+ close: "M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"
539
+ });
540
+
541
+ // src/icon/icon.ts
542
+ var Icon = class extends aeico_component_default {
543
+ static tagName = "icon";
544
+ static props = {
545
+ name: { type: String },
546
+ size: { type: String },
547
+ color: { type: String },
548
+ stroke: { type: Boolean },
549
+ strokeWidth: { type: Number }
550
+ };
551
+ static styles = [variables_default, size_default, color_default, icon_default];
552
+ render() {
553
+ const def = this.name ? registry_default.get(this.name) : void 0;
554
+ const numericSize = Number(this.size);
555
+ if (this.size !== void 0 && !isNaN(numericSize) && numericSize > 0) {
556
+ this.style.setProperty("font-size", `${numericSize}px`);
557
+ } else {
558
+ this.style.removeProperty("font-size");
559
+ }
560
+ if (!def) return;
561
+ const { paths } = def;
562
+ const isMultiPath = Array.isArray(paths);
563
+ if (!isMultiPath) {
564
+ const useStroke = this.stroke ?? (this.strokeWidth !== void 0 ? true : def.stroke ?? false);
565
+ const useStrokeWidth = this.strokeWidth ?? def.strokeWidth ?? 2;
566
+ if (useStroke) {
567
+ this.style.setProperty("--icon-fill", "none");
568
+ this.style.setProperty("--icon-stroke", "currentColor");
569
+ this.style.setProperty("--icon-stroke-width", String(useStrokeWidth));
570
+ } else {
571
+ this.style.removeProperty("--icon-fill");
572
+ this.style.removeProperty("--icon-stroke");
573
+ this.style.removeProperty("--icon-stroke-width");
574
+ }
575
+ } else {
576
+ this.style.removeProperty("--icon-fill");
577
+ this.style.removeProperty("--icon-stroke");
578
+ this.style.removeProperty("--icon-stroke-width");
579
+ }
580
+ return html(({ svg, path }) => {
581
+ svg(
582
+ {
583
+ className: "icon-svg",
584
+ viewBox: def.viewBox ?? defaultViewBox,
585
+ "aria-hidden": "true",
586
+ xmlns: SVG_NS
587
+ },
588
+ () => {
589
+ if (typeof paths === "string") {
590
+ path({ d: paths });
591
+ } else {
592
+ for (const p of paths) {
593
+ const attrs = { d: p.d };
594
+ if (p.fill) attrs.style = { fill: p.fill };
595
+ path(attrs);
596
+ }
597
+ }
598
+ }
599
+ );
600
+ });
601
+ }
602
+ };
603
+ Icon.register();
604
+
605
+ // css-inline:/home/runner/work/aeico-components/aeico-components/src/styles/components/tooltip.css
606
+ var tooltip_default = `:host {
607
+ display: inline-flex;
608
+ position: relative;
609
+ vertical-align: middle;
610
+
611
+ --ae-tooltip-z-index: 1000;
612
+ --ae-tooltip-bg: var(--ae-dark, #343a40);
613
+ --ae-tooltip-color: #fff;
614
+ --ae-tooltip-padding: 0.3125rem 0.625rem;
615
+ --ae-tooltip-font-size: 0.8125rem;
616
+ --ae-tooltip-arrow-size: 5px;
617
+ --ae-tooltip-gap: 6px;
618
+ --ae-tooltip-max-width: 20rem;
619
+ }
620
+
621
+ :host-context([theme="dark"]) {
622
+ --ae-tooltip-bg: var(--ae-light, #f8f9fa);
623
+ --ae-tooltip-color: var(--ae-dark, #343a40);
624
+ }
625
+
626
+ .tooltip-panel {
627
+ display: none;
628
+ position: fixed;
629
+ z-index: var(--ae-tooltip-z-index);
630
+ background: var(--ae-tooltip-bg);
631
+ color: var(--ae-tooltip-color);
632
+ padding: var(--ae-tooltip-padding);
633
+ font-size: var(--ae-tooltip-font-size);
634
+ font-family: inherit;
635
+ border-radius: var(--ae-border-radius, var(--ae-radius-sm));
636
+ line-height: 1.4;
637
+ white-space: nowrap;
638
+ max-width: var(--ae-tooltip-max-width);
639
+ pointer-events: none;
640
+ box-sizing: border-box;
641
+ }
642
+
643
+ :host([open]) .tooltip-panel {
644
+ display: block;
645
+ }
646
+
647
+ /* Arrow */
648
+ .tooltip-panel::after {
649
+ content: '';
650
+ position: absolute;
651
+ border: var(--ae-tooltip-arrow-size) solid transparent;
652
+ pointer-events: none;
653
+ }
654
+
655
+ .placement-top::after,
656
+ .placement-top-start::after,
657
+ .placement-top-end::after {
658
+ top: 100%;
659
+ border-top-color: var(--ae-tooltip-bg);
660
+ }
661
+
662
+ .placement-top::after {
663
+ left: 50%;
664
+ transform: translateX(-50%);
665
+ }
666
+
667
+ .placement-top-start::after {
668
+ left: calc(var(--ae-tooltip-arrow-size) * 2);
669
+ }
670
+
671
+ .placement-top-end::after {
672
+ right: calc(var(--ae-tooltip-arrow-size) * 2);
673
+ }
674
+
675
+ .placement-bottom::after,
676
+ .placement-bottom-start::after,
677
+ .placement-bottom-end::after {
678
+ bottom: 100%;
679
+ border-bottom-color: var(--ae-tooltip-bg);
680
+ }
681
+
682
+ .placement-bottom::after {
683
+ left: 50%;
684
+ transform: translateX(-50%);
685
+ }
686
+
687
+ .placement-bottom-start::after {
688
+ left: calc(var(--ae-tooltip-arrow-size) * 2);
689
+ }
690
+
691
+ .placement-bottom-end::after {
692
+ right: calc(var(--ae-tooltip-arrow-size) * 2);
693
+ }
694
+
695
+ .placement-left::after {
696
+ left: 100%;
697
+ top: 50%;
698
+ transform: translateY(-50%);
699
+ border-left-color: var(--ae-tooltip-bg);
700
+ }
701
+
702
+ .placement-right::after {
703
+ right: 100%;
704
+ top: 50%;
705
+ transform: translateY(-50%);
706
+ border-right-color: var(--ae-tooltip-bg);
707
+ }
708
+ `;
709
+
710
+ // src/tooltip/tooltip.ts
711
+ import { html as html2, prop } from "aeico";
712
+ var _open_dec, _trigger_dec, _disabled_dec, _placement_dec, _content_dec, _a, _init, _content, _placement, _disabled, _trigger, _open;
713
+ var Tooltip = class extends (_a = aeico_component_default, _content_dec = [prop({ type: String })], _placement_dec = [prop({ type: String })], _disabled_dec = [prop({ type: Boolean })], _trigger_dec = [prop({ type: String })], _open_dec = [prop({ type: Boolean })], _a) {
714
+ constructor() {
715
+ super(...arguments);
716
+ __privateAdd(this, _content, __runInitializers(_init, 8, this)), __runInitializers(_init, 11, this);
717
+ __privateAdd(this, _placement, __runInitializers(_init, 12, this, "top")), __runInitializers(_init, 15, this);
718
+ __privateAdd(this, _disabled, __runInitializers(_init, 16, this, false)), __runInitializers(_init, 19, this);
719
+ __privateAdd(this, _trigger, __runInitializers(_init, 20, this, "hover")), __runInitializers(_init, 23, this);
720
+ __privateAdd(this, _open, __runInitializers(_init, 24, this, false)), __runInitializers(_init, 27, this);
721
+ __publicField(this, "_outsideClickHandler", null);
722
+ __publicField(this, "_handleMouseEnter", () => {
723
+ if (this.trigger !== "hover") return;
724
+ if (this.disabled) return;
725
+ this.open = true;
726
+ });
727
+ __publicField(this, "_handleMouseLeave", () => {
728
+ if (this.trigger !== "hover") return;
729
+ this.open = false;
730
+ });
731
+ __publicField(this, "_handleFocusin", () => {
732
+ if (this.trigger !== "hover") return;
733
+ if (this.disabled) return;
734
+ this.open = true;
735
+ });
736
+ __publicField(this, "_handleFocusout", () => {
737
+ if (this.trigger !== "hover") return;
738
+ this.open = false;
739
+ });
740
+ __publicField(this, "_handleClick", () => {
741
+ if (this.trigger !== "click") return;
742
+ if (this.disabled) return;
743
+ this.open = !this.open;
744
+ });
745
+ }
746
+ connectedCallback() {
747
+ super.connectedCallback();
748
+ this.listen("mouseenter", this._handleMouseEnter);
749
+ this.listen("mouseleave", this._handleMouseLeave);
750
+ this.listen("focusin", this._handleFocusin);
751
+ this.listen("focusout", this._handleFocusout);
752
+ this.listen("click", this._handleClick);
753
+ this._outsideClickHandler = (e) => {
754
+ if (!this.open) return;
755
+ if (!e.composedPath().includes(this)) this.open = false;
756
+ };
757
+ document.addEventListener("click", this._outsideClickHandler);
758
+ }
759
+ disconnectedCallback() {
760
+ super.disconnectedCallback();
761
+ if (this._outsideClickHandler) {
762
+ document.removeEventListener("click", this._outsideClickHandler);
763
+ this._outsideClickHandler = null;
764
+ }
765
+ }
766
+ _updatePosition() {
767
+ const panel = this.shadowRoot?.querySelector(".tooltip-panel");
768
+ if (!panel) return;
769
+ const host = this.getBoundingClientRect();
770
+ const panelRect = panel.getBoundingClientRect();
771
+ const gap = 6;
772
+ const pw = panelRect.width;
773
+ const ph = panelRect.height;
774
+ let top;
775
+ let left;
776
+ switch (this.placement) {
777
+ case "top-start":
778
+ top = host.top - ph - gap;
779
+ left = host.left;
780
+ break;
781
+ case "top-end":
782
+ top = host.top - ph - gap;
783
+ left = host.right - pw;
784
+ break;
785
+ case "bottom":
786
+ top = host.bottom + gap;
787
+ left = host.left + host.width / 2 - pw / 2;
788
+ break;
789
+ case "bottom-start":
790
+ top = host.bottom + gap;
791
+ left = host.left;
792
+ break;
793
+ case "bottom-end":
794
+ top = host.bottom + gap;
795
+ left = host.right - pw;
796
+ break;
797
+ case "left":
798
+ top = host.top + host.height / 2 - ph / 2;
799
+ left = host.left - pw - gap;
800
+ break;
801
+ case "right":
802
+ top = host.top + host.height / 2 - ph / 2;
803
+ left = host.right + gap;
804
+ break;
805
+ default:
806
+ top = host.top - ph - gap;
807
+ left = host.left + host.width / 2 - pw / 2;
808
+ }
809
+ panel.style.top = `${top}px`;
810
+ panel.style.left = `${left}px`;
811
+ }
812
+ onUpdated(changedProps) {
813
+ if (changedProps.has("open") && this.open) {
814
+ this._updatePosition();
815
+ }
816
+ }
817
+ render() {
818
+ return html2(({ div, span, slot }) => {
819
+ slot();
820
+ div(
821
+ {
822
+ className: `tooltip-panel placement-${this.placement ?? "top"}`,
823
+ role: "tooltip",
824
+ "aria-hidden": String(!this.open)
825
+ },
826
+ () => {
827
+ slot({ name: "tooltip" }, () => {
828
+ span({ textContent: this.content ?? "" });
829
+ });
830
+ }
831
+ );
832
+ });
833
+ }
834
+ };
835
+ _init = __decoratorStart(_a);
836
+ _content = new WeakMap();
837
+ _placement = new WeakMap();
838
+ _disabled = new WeakMap();
839
+ _trigger = new WeakMap();
840
+ _open = new WeakMap();
841
+ __decorateElement(_init, 4, "content", _content_dec, Tooltip, _content);
842
+ __decorateElement(_init, 4, "placement", _placement_dec, Tooltip, _placement);
843
+ __decorateElement(_init, 4, "disabled", _disabled_dec, Tooltip, _disabled);
844
+ __decorateElement(_init, 4, "trigger", _trigger_dec, Tooltip, _trigger);
845
+ __decorateElement(_init, 4, "open", _open_dec, Tooltip, _open);
846
+ __decoratorMetadata(_init, Tooltip);
847
+ __publicField(Tooltip, "styles", [variables_default, tooltip_default]);
848
+ Tooltip.register();
849
+
850
+ // src/copy-button/copy-button.ts
851
+ var _tooltipPlacement_dec, _tooltipCopied_dec, _tooltip_dec, _duration_dec, _disabled_dec2, _size_dec, _variant_dec, _color_dec, _text_dec, _a2, _init2, _text, _color, _variant, _size, _disabled2, _duration, _tooltip, _tooltipCopied, _tooltipPlacement;
852
+ var CopyButton = class extends (_a2 = aeico_component_default, _text_dec = [prop2({ type: String })], _color_dec = [prop2({ type: String })], _variant_dec = [prop2({ type: String })], _size_dec = [prop2({ type: String })], _disabled_dec2 = [prop2({ type: Boolean })], _duration_dec = [prop2({ type: Number })], _tooltip_dec = [prop2({ type: String })], _tooltipCopied_dec = [prop2({ type: String })], _tooltipPlacement_dec = [prop2({ type: String })], _a2) {
853
+ constructor() {
854
+ super(...arguments);
855
+ __privateAdd(this, _text, __runInitializers(_init2, 8, this)), __runInitializers(_init2, 11, this);
856
+ __privateAdd(this, _color, __runInitializers(_init2, 12, this)), __runInitializers(_init2, 15, this);
857
+ __privateAdd(this, _variant, __runInitializers(_init2, 16, this)), __runInitializers(_init2, 19, this);
858
+ __privateAdd(this, _size, __runInitializers(_init2, 20, this)), __runInitializers(_init2, 23, this);
859
+ __privateAdd(this, _disabled2, __runInitializers(_init2, 24, this)), __runInitializers(_init2, 27, this);
860
+ __privateAdd(this, _duration, __runInitializers(_init2, 28, this)), __runInitializers(_init2, 31, this);
861
+ __privateAdd(this, _tooltip, __runInitializers(_init2, 32, this, "Copy")), __runInitializers(_init2, 35, this);
862
+ __privateAdd(this, _tooltipCopied, __runInitializers(_init2, 36, this, "Copied!")), __runInitializers(_init2, 39, this);
863
+ __privateAdd(this, _tooltipPlacement, __runInitializers(_init2, 40, this, "top")), __runInitializers(_init2, 43, this);
864
+ __publicField(this, "_slotElement", null);
865
+ __publicField(this, "_tooltipEl", null);
866
+ __publicField(this, "_resetTimer", null);
867
+ __publicField(this, "_handleClick", () => {
868
+ if (this.disabled) return;
869
+ const textToCopy = this._getTextToCopy();
870
+ void navigator.clipboard.writeText(textToCopy).then(() => {
871
+ this.setAttribute("copied", "");
872
+ if (this._tooltipEl) {
873
+ this._tooltipEl.content = this.tooltipCopied;
874
+ this._tooltipEl.open = true;
875
+ }
876
+ if (this._resetTimer !== null) {
877
+ clearTimeout(this._resetTimer);
878
+ }
879
+ const duration = this.duration ?? 2e3;
880
+ this._resetTimer = setTimeout(() => {
881
+ this.removeAttribute("copied");
882
+ if (this._tooltipEl) {
883
+ this._tooltipEl.content = this.tooltip;
884
+ this._tooltipEl.open = false;
885
+ }
886
+ this._resetTimer = null;
887
+ }, duration);
888
+ this.dispatchEvent(
889
+ new CustomEvent("copy", {
890
+ bubbles: true,
891
+ composed: true,
892
+ detail: { text: textToCopy }
893
+ })
894
+ );
895
+ });
896
+ });
897
+ }
898
+ _getTextToCopy() {
899
+ if (this.text != null) return this.text;
900
+ const nodes = this._slotElement?.assignedNodes({ flatten: true }) ?? [];
901
+ return nodes.reduce((text, n) => {
902
+ if (n.nodeType === Node.TEXT_NODE) return text + (n.textContent ?? "");
903
+ return text;
904
+ }, "").trim();
905
+ }
906
+ onUnmounted() {
907
+ if (this._resetTimer !== null) {
908
+ clearTimeout(this._resetTimer);
909
+ this._resetTimer = null;
910
+ }
911
+ }
912
+ render() {
913
+ return html3(({ aeTooltip, button, span, slot, aeIcon }) => {
914
+ this._tooltipEl = aeTooltip(
915
+ {
916
+ content: this.tooltip,
917
+ placement: this.tooltipPlacement,
918
+ disabled: this.disabled
919
+ },
920
+ () => {
921
+ button(
922
+ {
923
+ type: "button",
924
+ disabled: this.disabled,
925
+ part: "button",
926
+ "aria-label": this.tooltip,
927
+ "aria-disabled": this.disabled,
928
+ "@click": this._handleClick
929
+ },
930
+ () => {
931
+ span({ className: "icon-copy" }, () => {
932
+ aeIcon({ name: "copy", size: this.size });
933
+ });
934
+ span({ className: "icon-check" }, () => {
935
+ aeIcon({ name: "check", size: this.size });
936
+ });
937
+ this._slotElement = slot();
938
+ }
939
+ );
940
+ }
941
+ );
942
+ });
943
+ }
944
+ };
945
+ _init2 = __decoratorStart(_a2);
946
+ _text = new WeakMap();
947
+ _color = new WeakMap();
948
+ _variant = new WeakMap();
949
+ _size = new WeakMap();
950
+ _disabled2 = new WeakMap();
951
+ _duration = new WeakMap();
952
+ _tooltip = new WeakMap();
953
+ _tooltipCopied = new WeakMap();
954
+ _tooltipPlacement = new WeakMap();
955
+ __decorateElement(_init2, 4, "text", _text_dec, CopyButton, _text);
956
+ __decorateElement(_init2, 4, "color", _color_dec, CopyButton, _color);
957
+ __decorateElement(_init2, 4, "variant", _variant_dec, CopyButton, _variant);
958
+ __decorateElement(_init2, 4, "size", _size_dec, CopyButton, _size);
959
+ __decorateElement(_init2, 4, "disabled", _disabled_dec2, CopyButton, _disabled2);
960
+ __decorateElement(_init2, 4, "duration", _duration_dec, CopyButton, _duration);
961
+ __decorateElement(_init2, 4, "tooltip", _tooltip_dec, CopyButton, _tooltip);
962
+ __decorateElement(_init2, 4, "tooltipCopied", _tooltipCopied_dec, CopyButton, _tooltipCopied);
963
+ __decorateElement(_init2, 4, "tooltipPlacement", _tooltipPlacement_dec, CopyButton, _tooltipPlacement);
964
+ __decoratorMetadata(_init2, CopyButton);
965
+ __publicField(CopyButton, "styles", [variables_default, size_default, color_default, copy_button_default]);
966
+ CopyButton.register();
967
+ var copy_button_default2 = CopyButton;
2
968
  export {
3
- C as CopyButton,
4
- C2 as default
969
+ copy_button_default2 as CopyButton,
970
+ copy_button_default2 as default
5
971
  };
6
972
  //# sourceMappingURL=copy-button.js.map