@aithe/aithe-ui 26.2.2

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 (694) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +466 -0
  3. package/dist/apps/api/app.d.ts +24 -0
  4. package/dist/apps/api/app.d.ts.map +1 -0
  5. package/dist/apps/api/demo-data.d.ts +3 -0
  6. package/dist/apps/api/demo-data.d.ts.map +1 -0
  7. package/dist/apps/api/docs-viewer.d.ts +54 -0
  8. package/dist/apps/api/docs-viewer.d.ts.map +1 -0
  9. package/dist/apps/api/i18n/en-US.d.ts +7 -0
  10. package/dist/apps/api/i18n/en-US.d.ts.map +1 -0
  11. package/dist/apps/api/i18n/index.d.ts +2 -0
  12. package/dist/apps/api/i18n/index.d.ts.map +1 -0
  13. package/dist/apps/api/i18n/zh-CN.d.ts +7 -0
  14. package/dist/apps/api/i18n/zh-CN.d.ts.map +1 -0
  15. package/dist/apps/api/index.html +13 -0
  16. package/dist/apps/api/pages/docs.d.ts +11 -0
  17. package/dist/apps/api/pages/docs.d.ts.map +1 -0
  18. package/dist/apps/api/standalone.d.ts +2 -0
  19. package/dist/apps/api/standalone.d.ts.map +1 -0
  20. package/dist/apps/demo/app.d.ts +28 -0
  21. package/dist/apps/demo/app.d.ts.map +1 -0
  22. package/dist/apps/demo/editor.d.ts +28 -0
  23. package/dist/apps/demo/editor.d.ts.map +1 -0
  24. package/dist/apps/demo/helpers.d.ts +2 -0
  25. package/dist/apps/demo/helpers.d.ts.map +1 -0
  26. package/dist/apps/demo/i18n/en-US.d.ts +7 -0
  27. package/dist/apps/demo/i18n/en-US.d.ts.map +1 -0
  28. package/dist/apps/demo/i18n/en.d.ts +3 -0
  29. package/dist/apps/demo/i18n/en.d.ts.map +1 -0
  30. package/dist/apps/demo/i18n/index.d.ts +2 -0
  31. package/dist/apps/demo/i18n/index.d.ts.map +1 -0
  32. package/dist/apps/demo/i18n/zh-CN.d.ts +7 -0
  33. package/dist/apps/demo/i18n/zh-CN.d.ts.map +1 -0
  34. package/dist/apps/demo/i18n/zh.d.ts +3 -0
  35. package/dist/apps/demo/i18n/zh.d.ts.map +1 -0
  36. package/dist/apps/demo/index.html +13 -0
  37. package/dist/apps/demo/pages/basic.d.ts +3 -0
  38. package/dist/apps/demo/pages/basic.d.ts.map +1 -0
  39. package/dist/apps/demo/pages/container.d.ts +3 -0
  40. package/dist/apps/demo/pages/container.d.ts.map +1 -0
  41. package/dist/apps/demo/pages/data.d.ts +3 -0
  42. package/dist/apps/demo/pages/data.d.ts.map +1 -0
  43. package/dist/apps/demo/pages/display.d.ts +3 -0
  44. package/dist/apps/demo/pages/display.d.ts.map +1 -0
  45. package/dist/apps/demo/pages/feedback.d.ts +3 -0
  46. package/dist/apps/demo/pages/feedback.d.ts.map +1 -0
  47. package/dist/apps/demo/pages/form.d.ts +3 -0
  48. package/dist/apps/demo/pages/form.d.ts.map +1 -0
  49. package/dist/apps/demo/pages/layout.d.ts +3 -0
  50. package/dist/apps/demo/pages/layout.d.ts.map +1 -0
  51. package/dist/apps/demo/pages/navigation.d.ts +3 -0
  52. package/dist/apps/demo/pages/navigation.d.ts.map +1 -0
  53. package/dist/apps/demo/pages/progress.d.ts +3 -0
  54. package/dist/apps/demo/pages/progress.d.ts.map +1 -0
  55. package/dist/apps/demo/pages/theme.d.ts +3 -0
  56. package/dist/apps/demo/pages/theme.d.ts.map +1 -0
  57. package/dist/apps/demo/standalone.d.ts +2 -0
  58. package/dist/apps/demo/standalone.d.ts.map +1 -0
  59. package/dist/base/aithe-element.d.ts +29 -0
  60. package/dist/base/aithe-element.d.ts.map +1 -0
  61. package/dist/components/avatar/avatar.d.ts +13 -0
  62. package/dist/components/avatar/avatar.d.ts.map +1 -0
  63. package/dist/components/badge/badge.d.ts +14 -0
  64. package/dist/components/badge/badge.d.ts.map +1 -0
  65. package/dist/components/basic/avatar.d.ts +13 -0
  66. package/dist/components/basic/avatar.d.ts.map +1 -0
  67. package/dist/components/basic/badge.d.ts +14 -0
  68. package/dist/components/basic/badge.d.ts.map +1 -0
  69. package/dist/components/basic/button-group.d.ts +11 -0
  70. package/dist/components/basic/button-group.d.ts.map +1 -0
  71. package/dist/components/basic/button.d.ts +13 -0
  72. package/dist/components/basic/button.d.ts.map +1 -0
  73. package/dist/components/basic/card.d.ts +18 -0
  74. package/dist/components/basic/card.d.ts.map +1 -0
  75. package/dist/components/basic/chip.d.ts +13 -0
  76. package/dist/components/basic/chip.d.ts.map +1 -0
  77. package/dist/components/basic/divider.d.ts +9 -0
  78. package/dist/components/basic/divider.d.ts.map +1 -0
  79. package/dist/components/basic/empty.d.ts +12 -0
  80. package/dist/components/basic/empty.d.ts.map +1 -0
  81. package/dist/components/basic/icon.d.ts +12 -0
  82. package/dist/components/basic/icon.d.ts.map +1 -0
  83. package/dist/components/basic/input.d.ts +28 -0
  84. package/dist/components/basic/input.d.ts.map +1 -0
  85. package/dist/components/basic/tag.d.ts +14 -0
  86. package/dist/components/basic/tag.d.ts.map +1 -0
  87. package/dist/components/basic/textarea.d.ts +18 -0
  88. package/dist/components/basic/textarea.d.ts.map +1 -0
  89. package/dist/components/breadcrumb/breadcrumb-item.d.ts +11 -0
  90. package/dist/components/breadcrumb/breadcrumb-item.d.ts.map +1 -0
  91. package/dist/components/breadcrumb/breadcrumb.d.ts +9 -0
  92. package/dist/components/breadcrumb/breadcrumb.d.ts.map +1 -0
  93. package/dist/components/button/button.d.ts +13 -0
  94. package/dist/components/button/button.d.ts.map +1 -0
  95. package/dist/components/card/card.d.ts +18 -0
  96. package/dist/components/card/card.d.ts.map +1 -0
  97. package/dist/components/checkbox/checkbox-group.d.ts +17 -0
  98. package/dist/components/checkbox/checkbox-group.d.ts.map +1 -0
  99. package/dist/components/checkbox/checkbox.d.ts +15 -0
  100. package/dist/components/checkbox/checkbox.d.ts.map +1 -0
  101. package/dist/components/container/callout.d.ts +11 -0
  102. package/dist/components/container/callout.d.ts.map +1 -0
  103. package/dist/components/container/details.d.ts +13 -0
  104. package/dist/components/container/details.d.ts.map +1 -0
  105. package/dist/components/container/scroller.d.ts +16 -0
  106. package/dist/components/container/scroller.d.ts.map +1 -0
  107. package/dist/components/container/split-panel.d.ts +20 -0
  108. package/dist/components/container/split-panel.d.ts.map +1 -0
  109. package/dist/components/data/pagination.d.ts +15 -0
  110. package/dist/components/data/pagination.d.ts.map +1 -0
  111. package/dist/components/data/tab-group.d.ts +8 -0
  112. package/dist/components/data/tab-group.d.ts.map +1 -0
  113. package/dist/components/data/tab-pane.d.ts +11 -0
  114. package/dist/components/data/tab-pane.d.ts.map +1 -0
  115. package/dist/components/data/table.d.ts +30 -0
  116. package/dist/components/data/table.d.ts.map +1 -0
  117. package/dist/components/data/tabs.d.ts +17 -0
  118. package/dist/components/data/tabs.d.ts.map +1 -0
  119. package/dist/components/data/tree.d.ts +21 -0
  120. package/dist/components/data/tree.d.ts.map +1 -0
  121. package/dist/components/display/animated-image.d.ts +13 -0
  122. package/dist/components/display/animated-image.d.ts.map +1 -0
  123. package/dist/components/display/carousel.d.ts +23 -0
  124. package/dist/components/display/carousel.d.ts.map +1 -0
  125. package/dist/components/display/comparison.d.ts +12 -0
  126. package/dist/components/display/comparison.d.ts.map +1 -0
  127. package/dist/components/display/markdown.d.ts +11 -0
  128. package/dist/components/display/markdown.d.ts.map +1 -0
  129. package/dist/components/divider/divider.d.ts +9 -0
  130. package/dist/components/divider/divider.d.ts.map +1 -0
  131. package/dist/components/drawer/drawer.d.ts +29 -0
  132. package/dist/components/drawer/drawer.d.ts.map +1 -0
  133. package/dist/components/dropdown/dropdown.d.ts +34 -0
  134. package/dist/components/dropdown/dropdown.d.ts.map +1 -0
  135. package/dist/components/feedback/alert.d.ts +15 -0
  136. package/dist/components/feedback/alert.d.ts.map +1 -0
  137. package/dist/components/feedback/dialog.d.ts +20 -0
  138. package/dist/components/feedback/dialog.d.ts.map +1 -0
  139. package/dist/components/feedback/drawer.d.ts +29 -0
  140. package/dist/components/feedback/drawer.d.ts.map +1 -0
  141. package/dist/components/feedback/dropdown.d.ts +34 -0
  142. package/dist/components/feedback/dropdown.d.ts.map +1 -0
  143. package/dist/components/feedback/loading.d.ts +13 -0
  144. package/dist/components/feedback/loading.d.ts.map +1 -0
  145. package/dist/components/feedback/modal.d.ts +28 -0
  146. package/dist/components/feedback/modal.d.ts.map +1 -0
  147. package/dist/components/feedback/notification.d.ts +20 -0
  148. package/dist/components/feedback/notification.d.ts.map +1 -0
  149. package/dist/components/feedback/popover.d.ts +16 -0
  150. package/dist/components/feedback/popover.d.ts.map +1 -0
  151. package/dist/components/feedback/toast.d.ts +18 -0
  152. package/dist/components/feedback/toast.d.ts.map +1 -0
  153. package/dist/components/feedback/tooltip.d.ts +18 -0
  154. package/dist/components/feedback/tooltip.d.ts.map +1 -0
  155. package/dist/components/form/checkbox-group.d.ts +17 -0
  156. package/dist/components/form/checkbox-group.d.ts.map +1 -0
  157. package/dist/components/form/checkbox.d.ts +15 -0
  158. package/dist/components/form/checkbox.d.ts.map +1 -0
  159. package/dist/components/form/color-picker.d.ts +17 -0
  160. package/dist/components/form/color-picker.d.ts.map +1 -0
  161. package/dist/components/form/combobox.d.ts +22 -0
  162. package/dist/components/form/combobox.d.ts.map +1 -0
  163. package/dist/components/form/date-picker.d.ts +15 -0
  164. package/dist/components/form/date-picker.d.ts.map +1 -0
  165. package/dist/components/form/form-item.d.ts +15 -0
  166. package/dist/components/form/form-item.d.ts.map +1 -0
  167. package/dist/components/form/form.d.ts +14 -0
  168. package/dist/components/form/form.d.ts.map +1 -0
  169. package/dist/components/form/radio-group.d.ts +15 -0
  170. package/dist/components/form/radio-group.d.ts.map +1 -0
  171. package/dist/components/form/radio.d.ts +12 -0
  172. package/dist/components/form/radio.d.ts.map +1 -0
  173. package/dist/components/form/rate.d.ts +14 -0
  174. package/dist/components/form/rate.d.ts.map +1 -0
  175. package/dist/components/form/select.d.ts +35 -0
  176. package/dist/components/form/select.d.ts.map +1 -0
  177. package/dist/components/form/slider.d.ts +17 -0
  178. package/dist/components/form/slider.d.ts.map +1 -0
  179. package/dist/components/form/switch.d.ts +12 -0
  180. package/dist/components/form/switch.d.ts.map +1 -0
  181. package/dist/components/form/time-picker.d.ts +13 -0
  182. package/dist/components/form/time-picker.d.ts.map +1 -0
  183. package/dist/components/form/transfer.d.ts +24 -0
  184. package/dist/components/form/transfer.d.ts.map +1 -0
  185. package/dist/components/form/upload.d.ts +16 -0
  186. package/dist/components/form/upload.d.ts.map +1 -0
  187. package/dist/components/input/input.d.ts +28 -0
  188. package/dist/components/input/input.d.ts.map +1 -0
  189. package/dist/components/layout/affix.d.ts +23 -0
  190. package/dist/components/layout/affix.d.ts.map +1 -0
  191. package/dist/components/layout/col.d.ts +17 -0
  192. package/dist/components/layout/col.d.ts.map +1 -0
  193. package/dist/components/layout/collapse-item.d.ts +15 -0
  194. package/dist/components/layout/collapse-item.d.ts.map +1 -0
  195. package/dist/components/layout/collapse.d.ts +18 -0
  196. package/dist/components/layout/collapse.d.ts.map +1 -0
  197. package/dist/components/layout/container.d.ts +15 -0
  198. package/dist/components/layout/container.d.ts.map +1 -0
  199. package/dist/components/layout/flex.d.ts +15 -0
  200. package/dist/components/layout/flex.d.ts.map +1 -0
  201. package/dist/components/layout/page-container.d.ts +11 -0
  202. package/dist/components/layout/page-container.d.ts.map +1 -0
  203. package/dist/components/layout/page.d.ts +8 -0
  204. package/dist/components/layout/page.d.ts.map +1 -0
  205. package/dist/components/layout/row.d.ts +13 -0
  206. package/dist/components/layout/row.d.ts.map +1 -0
  207. package/dist/components/layout/space.d.ts +13 -0
  208. package/dist/components/layout/space.d.ts.map +1 -0
  209. package/dist/components/layout/timeline-item.d.ts +12 -0
  210. package/dist/components/layout/timeline-item.d.ts.map +1 -0
  211. package/dist/components/layout/timeline.d.ts +12 -0
  212. package/dist/components/layout/timeline.d.ts.map +1 -0
  213. package/dist/components/modal/modal.d.ts +28 -0
  214. package/dist/components/modal/modal.d.ts.map +1 -0
  215. package/dist/components/navigation/back-top.d.ts +21 -0
  216. package/dist/components/navigation/back-top.d.ts.map +1 -0
  217. package/dist/components/navigation/breadcrumb-item.d.ts +11 -0
  218. package/dist/components/navigation/breadcrumb-item.d.ts.map +1 -0
  219. package/dist/components/navigation/breadcrumb.d.ts +9 -0
  220. package/dist/components/navigation/breadcrumb.d.ts.map +1 -0
  221. package/dist/components/navigation/menu-item.d.ts +16 -0
  222. package/dist/components/navigation/menu-item.d.ts.map +1 -0
  223. package/dist/components/navigation/menu.d.ts +18 -0
  224. package/dist/components/navigation/menu.d.ts.map +1 -0
  225. package/dist/components/navigation/steps.d.ts +14 -0
  226. package/dist/components/navigation/steps.d.ts.map +1 -0
  227. package/dist/components/navigation/sub-menu.d.ts +18 -0
  228. package/dist/components/navigation/sub-menu.d.ts.map +1 -0
  229. package/dist/components/popover/popover.d.ts +16 -0
  230. package/dist/components/popover/popover.d.ts.map +1 -0
  231. package/dist/components/progress/progress-bar.d.ts +12 -0
  232. package/dist/components/progress/progress-bar.d.ts.map +1 -0
  233. package/dist/components/progress/progress-ring.d.ts +13 -0
  234. package/dist/components/progress/progress-ring.d.ts.map +1 -0
  235. package/dist/components/progress/skeleton.d.ts +13 -0
  236. package/dist/components/progress/skeleton.d.ts.map +1 -0
  237. package/dist/components/progress/spinner.d.ts +12 -0
  238. package/dist/components/progress/spinner.d.ts.map +1 -0
  239. package/dist/components/radio/radio-group.d.ts +15 -0
  240. package/dist/components/radio/radio-group.d.ts.map +1 -0
  241. package/dist/components/radio/radio.d.ts +12 -0
  242. package/dist/components/radio/radio.d.ts.map +1 -0
  243. package/dist/components/select/select.d.ts +35 -0
  244. package/dist/components/select/select.d.ts.map +1 -0
  245. package/dist/components/switch/switch.d.ts +12 -0
  246. package/dist/components/switch/switch.d.ts.map +1 -0
  247. package/dist/components/table/table.d.ts +30 -0
  248. package/dist/components/table/table.d.ts.map +1 -0
  249. package/dist/components/tabs/tab-pane.d.ts +11 -0
  250. package/dist/components/tabs/tab-pane.d.ts.map +1 -0
  251. package/dist/components/tabs/tabs.d.ts +15 -0
  252. package/dist/components/tabs/tabs.d.ts.map +1 -0
  253. package/dist/components/tag/tag.d.ts +14 -0
  254. package/dist/components/tag/tag.d.ts.map +1 -0
  255. package/dist/components/tooltip/tooltip.d.ts +18 -0
  256. package/dist/components/tooltip/tooltip.d.ts.map +1 -0
  257. package/dist/core/aithe-element.d.ts +2 -0
  258. package/dist/core/aithe-element.d.ts.map +1 -0
  259. package/dist/core/anchored-overlay.d.ts +17 -0
  260. package/dist/core/anchored-overlay.d.ts.map +1 -0
  261. package/dist/core/floating.d.ts +12 -0
  262. package/dist/core/floating.d.ts.map +1 -0
  263. package/dist/core/styles.d.ts +8 -0
  264. package/dist/core/styles.d.ts.map +1 -0
  265. package/dist/core/types.d.ts +33 -0
  266. package/dist/core/types.d.ts.map +1 -0
  267. package/dist/core/utils.d.ts +6 -0
  268. package/dist/core/utils.d.ts.map +1 -0
  269. package/dist/demo/app.d.ts +19 -0
  270. package/dist/demo/app.d.ts.map +1 -0
  271. package/dist/demo/editor.d.ts +28 -0
  272. package/dist/demo/editor.d.ts.map +1 -0
  273. package/dist/demo/helpers.d.ts +2 -0
  274. package/dist/demo/helpers.d.ts.map +1 -0
  275. package/dist/demo/pages/basic.d.ts +3 -0
  276. package/dist/demo/pages/basic.d.ts.map +1 -0
  277. package/dist/demo/pages/container.d.ts +3 -0
  278. package/dist/demo/pages/container.d.ts.map +1 -0
  279. package/dist/demo/pages/data.d.ts +3 -0
  280. package/dist/demo/pages/data.d.ts.map +1 -0
  281. package/dist/demo/pages/display.d.ts +3 -0
  282. package/dist/demo/pages/display.d.ts.map +1 -0
  283. package/dist/demo/pages/feedback.d.ts +3 -0
  284. package/dist/demo/pages/feedback.d.ts.map +1 -0
  285. package/dist/demo/pages/form.d.ts +3 -0
  286. package/dist/demo/pages/form.d.ts.map +1 -0
  287. package/dist/demo/pages/layout.d.ts +3 -0
  288. package/dist/demo/pages/layout.d.ts.map +1 -0
  289. package/dist/demo/pages/navigation.d.ts +3 -0
  290. package/dist/demo/pages/navigation.d.ts.map +1 -0
  291. package/dist/demo/pages/progress.d.ts +3 -0
  292. package/dist/demo/pages/progress.d.ts.map +1 -0
  293. package/dist/demo/standalone.d.ts +2 -0
  294. package/dist/demo/standalone.d.ts.map +1 -0
  295. package/dist/demo-page.d.ts +2 -0
  296. package/dist/demo-page.d.ts.map +1 -0
  297. package/dist/demo.d.ts +2 -0
  298. package/dist/demo.d.ts.map +1 -0
  299. package/dist/global.d.ts +5 -0
  300. package/dist/global.d.ts.map +1 -0
  301. package/dist/index-jd7NIlfT.js +9798 -0
  302. package/dist/index-jd7NIlfT.js.map +1 -0
  303. package/dist/index.d.ts +80 -0
  304. package/dist/index.d.ts.map +1 -0
  305. package/dist/index.js +9728 -0
  306. package/dist/index.js.map +1 -0
  307. package/dist/index.umd.js +7189 -0
  308. package/dist/index.umd.js.map +1 -0
  309. package/dist/index2.js +9892 -0
  310. package/dist/index2.js.map +1 -0
  311. package/dist/src/base/aithe-element.d.ts +59 -0
  312. package/dist/src/base/aithe-element.d.ts.map +1 -0
  313. package/dist/src/components/basic/avatar.d.ts +31 -0
  314. package/dist/src/components/basic/avatar.d.ts.map +1 -0
  315. package/dist/src/components/basic/badge.d.ts +33 -0
  316. package/dist/src/components/basic/badge.d.ts.map +1 -0
  317. package/dist/src/components/basic/button-group.d.ts +23 -0
  318. package/dist/src/components/basic/button-group.d.ts.map +1 -0
  319. package/dist/src/components/basic/button.d.ts +44 -0
  320. package/dist/src/components/basic/button.d.ts.map +1 -0
  321. package/dist/src/components/basic/card.d.ts +38 -0
  322. package/dist/src/components/basic/card.d.ts.map +1 -0
  323. package/dist/src/components/basic/chip.d.ts +26 -0
  324. package/dist/src/components/basic/chip.d.ts.map +1 -0
  325. package/dist/src/components/basic/divider.d.ts +23 -0
  326. package/dist/src/components/basic/divider.d.ts.map +1 -0
  327. package/dist/src/components/basic/empty.d.ts +21 -0
  328. package/dist/src/components/basic/empty.d.ts.map +1 -0
  329. package/dist/src/components/basic/icon.d.ts +60 -0
  330. package/dist/src/components/basic/icon.d.ts.map +1 -0
  331. package/dist/src/components/basic/input.d.ts +57 -0
  332. package/dist/src/components/basic/input.d.ts.map +1 -0
  333. package/dist/src/components/basic/tag.d.ts +34 -0
  334. package/dist/src/components/basic/tag.d.ts.map +1 -0
  335. package/dist/src/components/basic/textarea.d.ts +34 -0
  336. package/dist/src/components/basic/textarea.d.ts.map +1 -0
  337. package/dist/src/components/container/callout.d.ts +23 -0
  338. package/dist/src/components/container/callout.d.ts.map +1 -0
  339. package/dist/src/components/container/details.d.ts +29 -0
  340. package/dist/src/components/container/details.d.ts.map +1 -0
  341. package/dist/src/components/container/scroller.d.ts +32 -0
  342. package/dist/src/components/container/scroller.d.ts.map +1 -0
  343. package/dist/src/components/container/split-panel.d.ts +38 -0
  344. package/dist/src/components/container/split-panel.d.ts.map +1 -0
  345. package/dist/src/components/data/pagination.d.ts +27 -0
  346. package/dist/src/components/data/pagination.d.ts.map +1 -0
  347. package/dist/src/components/data/tab-pane.d.ts +33 -0
  348. package/dist/src/components/data/tab-pane.d.ts.map +1 -0
  349. package/dist/src/components/data/table-column.d.ts +46 -0
  350. package/dist/src/components/data/table-column.d.ts.map +1 -0
  351. package/dist/src/components/data/table.d.ts +88 -0
  352. package/dist/src/components/data/table.d.ts.map +1 -0
  353. package/dist/src/components/data/tabs.d.ts +38 -0
  354. package/dist/src/components/data/tabs.d.ts.map +1 -0
  355. package/dist/src/components/data/timeline-item.d.ts +24 -0
  356. package/dist/src/components/data/timeline-item.d.ts.map +1 -0
  357. package/dist/src/components/data/timeline.d.ts +49 -0
  358. package/dist/src/components/data/timeline.d.ts.map +1 -0
  359. package/dist/src/components/data/tree-menu.d.ts +43 -0
  360. package/dist/src/components/data/tree-menu.d.ts.map +1 -0
  361. package/dist/src/components/data/tree.d.ts +45 -0
  362. package/dist/src/components/data/tree.d.ts.map +1 -0
  363. package/dist/src/components/display/animated-image.d.ts +25 -0
  364. package/dist/src/components/display/animated-image.d.ts.map +1 -0
  365. package/dist/src/components/display/carousel.d.ts +41 -0
  366. package/dist/src/components/display/carousel.d.ts.map +1 -0
  367. package/dist/src/components/display/comparison.d.ts +24 -0
  368. package/dist/src/components/display/comparison.d.ts.map +1 -0
  369. package/dist/src/components/display/markdown.d.ts +19 -0
  370. package/dist/src/components/display/markdown.d.ts.map +1 -0
  371. package/dist/src/components/feedback/alert.d.ts +32 -0
  372. package/dist/src/components/feedback/alert.d.ts.map +1 -0
  373. package/dist/src/components/feedback/dialog.d.ts +42 -0
  374. package/dist/src/components/feedback/dialog.d.ts.map +1 -0
  375. package/dist/src/components/feedback/drawer.d.ts +59 -0
  376. package/dist/src/components/feedback/drawer.d.ts.map +1 -0
  377. package/dist/src/components/feedback/dropdown.d.ts +70 -0
  378. package/dist/src/components/feedback/dropdown.d.ts.map +1 -0
  379. package/dist/src/components/feedback/loading.d.ts +27 -0
  380. package/dist/src/components/feedback/loading.d.ts.map +1 -0
  381. package/dist/src/components/feedback/modal.d.ts +58 -0
  382. package/dist/src/components/feedback/modal.d.ts.map +1 -0
  383. package/dist/src/components/feedback/notification.d.ts +35 -0
  384. package/dist/src/components/feedback/notification.d.ts.map +1 -0
  385. package/dist/src/components/feedback/popover.d.ts +35 -0
  386. package/dist/src/components/feedback/popover.d.ts.map +1 -0
  387. package/dist/src/components/feedback/toast.d.ts +35 -0
  388. package/dist/src/components/feedback/toast.d.ts.map +1 -0
  389. package/dist/src/components/feedback/tooltip.d.ts +41 -0
  390. package/dist/src/components/feedback/tooltip.d.ts.map +1 -0
  391. package/dist/src/components/form/checkbox-group.d.ts +38 -0
  392. package/dist/src/components/form/checkbox-group.d.ts.map +1 -0
  393. package/dist/src/components/form/checkbox.d.ts +35 -0
  394. package/dist/src/components/form/checkbox.d.ts.map +1 -0
  395. package/dist/src/components/form/color-picker.d.ts +32 -0
  396. package/dist/src/components/form/color-picker.d.ts.map +1 -0
  397. package/dist/src/components/form/combobox.d.ts +45 -0
  398. package/dist/src/components/form/combobox.d.ts.map +1 -0
  399. package/dist/src/components/form/date-picker.d.ts +30 -0
  400. package/dist/src/components/form/date-picker.d.ts.map +1 -0
  401. package/dist/src/components/form/form-item.d.ts +34 -0
  402. package/dist/src/components/form/form-item.d.ts.map +1 -0
  403. package/dist/src/components/form/form.d.ts +32 -0
  404. package/dist/src/components/form/form.d.ts.map +1 -0
  405. package/dist/src/components/form/radio-group.d.ts +34 -0
  406. package/dist/src/components/form/radio-group.d.ts.map +1 -0
  407. package/dist/src/components/form/radio.d.ts +30 -0
  408. package/dist/src/components/form/radio.d.ts.map +1 -0
  409. package/dist/src/components/form/rate.d.ts +27 -0
  410. package/dist/src/components/form/rate.d.ts.map +1 -0
  411. package/dist/src/components/form/select.d.ts +74 -0
  412. package/dist/src/components/form/select.d.ts.map +1 -0
  413. package/dist/src/components/form/slider.d.ts +33 -0
  414. package/dist/src/components/form/slider.d.ts.map +1 -0
  415. package/dist/src/components/form/switch.d.ts +28 -0
  416. package/dist/src/components/form/switch.d.ts.map +1 -0
  417. package/dist/src/components/form/time-picker.d.ts +26 -0
  418. package/dist/src/components/form/time-picker.d.ts.map +1 -0
  419. package/dist/src/components/form/transfer.d.ts +42 -0
  420. package/dist/src/components/form/transfer.d.ts.map +1 -0
  421. package/dist/src/components/form/upload.d.ts +34 -0
  422. package/dist/src/components/form/upload.d.ts.map +1 -0
  423. package/dist/src/components/layout/affix.d.ts +35 -0
  424. package/dist/src/components/layout/affix.d.ts.map +1 -0
  425. package/dist/src/components/layout/col.d.ts +32 -0
  426. package/dist/src/components/layout/col.d.ts.map +1 -0
  427. package/dist/src/components/layout/collapse-item.d.ts +31 -0
  428. package/dist/src/components/layout/collapse-item.d.ts.map +1 -0
  429. package/dist/src/components/layout/collapse.d.ts +31 -0
  430. package/dist/src/components/layout/collapse.d.ts.map +1 -0
  431. package/dist/src/components/layout/container.d.ts +30 -0
  432. package/dist/src/components/layout/container.d.ts.map +1 -0
  433. package/dist/src/components/layout/flex.d.ts +31 -0
  434. package/dist/src/components/layout/flex.d.ts.map +1 -0
  435. package/dist/src/components/layout/page-container.d.ts +22 -0
  436. package/dist/src/components/layout/page-container.d.ts.map +1 -0
  437. package/dist/src/components/layout/page.d.ts +26 -0
  438. package/dist/src/components/layout/page.d.ts.map +1 -0
  439. package/dist/src/components/layout/row.d.ts +27 -0
  440. package/dist/src/components/layout/row.d.ts.map +1 -0
  441. package/dist/src/components/layout/space.d.ts +27 -0
  442. package/dist/src/components/layout/space.d.ts.map +1 -0
  443. package/dist/src/components/layout/timeline-item.d.ts +24 -0
  444. package/dist/src/components/layout/timeline-item.d.ts.map +1 -0
  445. package/dist/src/components/layout/timeline.d.ts +49 -0
  446. package/dist/src/components/layout/timeline.d.ts.map +1 -0
  447. package/dist/src/components/navigation/back-top.d.ts +30 -0
  448. package/dist/src/components/navigation/back-top.d.ts.map +1 -0
  449. package/dist/src/components/navigation/breadcrumb-item.d.ts +26 -0
  450. package/dist/src/components/navigation/breadcrumb-item.d.ts.map +1 -0
  451. package/dist/src/components/navigation/breadcrumb.d.ts +24 -0
  452. package/dist/src/components/navigation/breadcrumb.d.ts.map +1 -0
  453. package/dist/src/components/navigation/dropdown.d.ts +70 -0
  454. package/dist/src/components/navigation/dropdown.d.ts.map +1 -0
  455. package/dist/src/components/navigation/menu-item.d.ts +33 -0
  456. package/dist/src/components/navigation/menu-item.d.ts.map +1 -0
  457. package/dist/src/components/navigation/menu.d.ts +35 -0
  458. package/dist/src/components/navigation/menu.d.ts.map +1 -0
  459. package/dist/src/components/navigation/steps.d.ts +31 -0
  460. package/dist/src/components/navigation/steps.d.ts.map +1 -0
  461. package/dist/src/components/navigation/sub-menu.d.ts +37 -0
  462. package/dist/src/components/navigation/sub-menu.d.ts.map +1 -0
  463. package/dist/src/components/navigation/theme-picker.d.ts +27 -0
  464. package/dist/src/components/navigation/theme-picker.d.ts.map +1 -0
  465. package/dist/src/components/progress/progress-bar.d.ts +21 -0
  466. package/dist/src/components/progress/progress-bar.d.ts.map +1 -0
  467. package/dist/src/components/progress/progress-ring.d.ts +23 -0
  468. package/dist/src/components/progress/progress-ring.d.ts.map +1 -0
  469. package/dist/src/components/progress/skeleton.d.ts +28 -0
  470. package/dist/src/components/progress/skeleton.d.ts.map +1 -0
  471. package/dist/src/components/progress/spinner.d.ts +21 -0
  472. package/dist/src/components/progress/spinner.d.ts.map +1 -0
  473. package/dist/src/components/theme/locale-switch.d.ts +24 -0
  474. package/dist/src/components/theme/locale-switch.d.ts.map +1 -0
  475. package/dist/src/components/theme/theme-picker.d.ts +43 -0
  476. package/dist/src/components/theme/theme-picker.d.ts.map +1 -0
  477. package/dist/src/components/theme/theme-preview.d.ts +29 -0
  478. package/dist/src/components/theme/theme-preview.d.ts.map +1 -0
  479. package/dist/src/core/aithe-element.d.ts +2 -0
  480. package/dist/src/core/aithe-element.d.ts.map +1 -0
  481. package/dist/src/core/anchored-overlay.d.ts +43 -0
  482. package/dist/src/core/anchored-overlay.d.ts.map +1 -0
  483. package/dist/src/core/floating.d.ts +43 -0
  484. package/dist/src/core/floating.d.ts.map +1 -0
  485. package/dist/src/core/i18n/index.d.ts +125 -0
  486. package/dist/src/core/i18n/index.d.ts.map +1 -0
  487. package/dist/src/core/i18n/locales/en-US.d.ts +7 -0
  488. package/dist/src/core/i18n/locales/en-US.d.ts.map +1 -0
  489. package/dist/src/core/i18n/locales/en.d.ts +3 -0
  490. package/dist/src/core/i18n/locales/en.d.ts.map +1 -0
  491. package/dist/src/core/i18n/locales/index.d.ts +7 -0
  492. package/dist/src/core/i18n/locales/index.d.ts.map +1 -0
  493. package/dist/src/core/i18n/locales/zh-CN.d.ts +7 -0
  494. package/dist/src/core/i18n/locales/zh-CN.d.ts.map +1 -0
  495. package/dist/src/core/i18n/locales/zh.d.ts +3 -0
  496. package/dist/src/core/i18n/locales/zh.d.ts.map +1 -0
  497. package/dist/src/core/styles.d.ts +17 -0
  498. package/dist/src/core/styles.d.ts.map +1 -0
  499. package/dist/src/core/types.d.ts +127 -0
  500. package/dist/src/core/types.d.ts.map +1 -0
  501. package/dist/src/core/utils.d.ts +44 -0
  502. package/dist/src/core/utils.d.ts.map +1 -0
  503. package/dist/src/global.d.ts +25 -0
  504. package/dist/src/global.d.ts.map +1 -0
  505. package/dist/src/index.d.ts +86 -0
  506. package/dist/src/index.d.ts.map +1 -0
  507. package/dist/src/styles/global.css.d.ts +5 -0
  508. package/dist/src/styles/global.css.d.ts.map +1 -0
  509. package/dist/src/styles/mixins.d.ts +9 -0
  510. package/dist/src/styles/mixins.d.ts.map +1 -0
  511. package/dist/src/styles/theme/amber.d.ts +3 -0
  512. package/dist/src/styles/theme/amber.d.ts.map +1 -0
  513. package/dist/src/styles/theme/blue.d.ts +3 -0
  514. package/dist/src/styles/theme/blue.d.ts.map +1 -0
  515. package/dist/src/styles/theme/charcoal.d.ts +3 -0
  516. package/dist/src/styles/theme/charcoal.d.ts.map +1 -0
  517. package/dist/src/styles/theme/cyan.d.ts +3 -0
  518. package/dist/src/styles/theme/cyan.d.ts.map +1 -0
  519. package/dist/src/styles/theme/dark.d.ts +3 -0
  520. package/dist/src/styles/theme/dark.d.ts.map +1 -0
  521. package/dist/src/styles/theme/ebony.d.ts +3 -0
  522. package/dist/src/styles/theme/ebony.d.ts.map +1 -0
  523. package/dist/src/styles/theme/festive.d.ts +3 -0
  524. package/dist/src/styles/theme/festive.d.ts.map +1 -0
  525. package/dist/src/styles/theme/graphite.d.ts +3 -0
  526. package/dist/src/styles/theme/graphite.d.ts.map +1 -0
  527. package/dist/src/styles/theme/gray.d.ts +3 -0
  528. package/dist/src/styles/theme/gray.d.ts.map +1 -0
  529. package/dist/src/styles/theme/indigo.d.ts +3 -0
  530. package/dist/src/styles/theme/indigo.d.ts.map +1 -0
  531. package/dist/src/styles/theme/ink.d.ts +3 -0
  532. package/dist/src/styles/theme/ink.d.ts.map +1 -0
  533. package/dist/src/styles/theme/light.d.ts +3 -0
  534. package/dist/src/styles/theme/light.d.ts.map +1 -0
  535. package/dist/src/styles/theme/midnight.d.ts +3 -0
  536. package/dist/src/styles/theme/midnight.d.ts.map +1 -0
  537. package/dist/src/styles/theme/navy.d.ts +3 -0
  538. package/dist/src/styles/theme/navy.d.ts.map +1 -0
  539. package/dist/src/styles/theme/obsidian.d.ts +3 -0
  540. package/dist/src/styles/theme/obsidian.d.ts.map +1 -0
  541. package/dist/src/styles/theme/onyx.d.ts +3 -0
  542. package/dist/src/styles/theme/onyx.d.ts.map +1 -0
  543. package/dist/src/styles/theme/orange.d.ts +3 -0
  544. package/dist/src/styles/theme/orange.d.ts.map +1 -0
  545. package/dist/src/styles/theme/pink.d.ts +3 -0
  546. package/dist/src/styles/theme/pink.d.ts.map +1 -0
  547. package/dist/src/styles/theme/purple.d.ts +3 -0
  548. package/dist/src/styles/theme/purple.d.ts.map +1 -0
  549. package/dist/src/styles/theme/raisin.d.ts +3 -0
  550. package/dist/src/styles/theme/raisin.d.ts.map +1 -0
  551. package/dist/src/styles/theme/slate.d.ts +3 -0
  552. package/dist/src/styles/theme/slate.d.ts.map +1 -0
  553. package/dist/src/styles/theme/teal.d.ts +3 -0
  554. package/dist/src/styles/theme/teal.d.ts.map +1 -0
  555. package/dist/src/styles/theme.d.ts +11 -0
  556. package/dist/src/styles/theme.d.ts.map +1 -0
  557. package/dist/src/types/component.d.ts +11 -0
  558. package/dist/src/types/component.d.ts.map +1 -0
  559. package/dist/src/types/index.d.ts +4 -0
  560. package/dist/src/types/index.d.ts.map +1 -0
  561. package/dist/src/types/theme.d.ts +17 -0
  562. package/dist/src/types/theme.d.ts.map +1 -0
  563. package/dist/src/utils/dom.d.ts +26 -0
  564. package/dist/src/utils/dom.d.ts.map +1 -0
  565. package/dist/src/utils/events.d.ts +11 -0
  566. package/dist/src/utils/events.d.ts.map +1 -0
  567. package/dist/src/utils/index.d.ts +6 -0
  568. package/dist/src/utils/index.d.ts.map +1 -0
  569. package/dist/src/utils/theme.d.ts +46 -0
  570. package/dist/src/utils/theme.d.ts.map +1 -0
  571. package/dist/src/utils/validation.d.ts +30 -0
  572. package/dist/src/utils/validation.d.ts.map +1 -0
  573. package/dist/styles/global.css.d.ts +3 -0
  574. package/dist/styles/global.css.d.ts.map +1 -0
  575. package/dist/styles/mixins.d.ts +5 -0
  576. package/dist/styles/mixins.d.ts.map +1 -0
  577. package/dist/styles/theme/blue.d.ts +2 -0
  578. package/dist/styles/theme/blue.d.ts.map +1 -0
  579. package/dist/styles/theme/dark.d.ts +2 -0
  580. package/dist/styles/theme/dark.d.ts.map +1 -0
  581. package/dist/styles/theme/gray.d.ts +2 -0
  582. package/dist/styles/theme/gray.d.ts.map +1 -0
  583. package/dist/styles/theme/light.d.ts +2 -0
  584. package/dist/styles/theme/light.d.ts.map +1 -0
  585. package/dist/styles/theme.d.ts +3 -0
  586. package/dist/styles/theme.d.ts.map +1 -0
  587. package/dist/types/component.d.ts +11 -0
  588. package/dist/types/component.d.ts.map +1 -0
  589. package/dist/types/index.d.ts +4 -0
  590. package/dist/types/index.d.ts.map +1 -0
  591. package/dist/types/theme.d.ts +17 -0
  592. package/dist/types/theme.d.ts.map +1 -0
  593. package/dist/utils/dom.d.ts +4 -0
  594. package/dist/utils/dom.d.ts.map +1 -0
  595. package/dist/utils/events.d.ts +2 -0
  596. package/dist/utils/events.d.ts.map +1 -0
  597. package/dist/utils/index.d.ts +6 -0
  598. package/dist/utils/index.d.ts.map +1 -0
  599. package/dist/utils/theme.d.ts +9 -0
  600. package/dist/utils/theme.d.ts.map +1 -0
  601. package/dist/utils/validation.d.ts +4 -0
  602. package/dist/utils/validation.d.ts.map +1 -0
  603. package/docs/api/basic/avatar.md +33 -0
  604. package/docs/api/basic/badge.md +34 -0
  605. package/docs/api/basic/button-group.md +32 -0
  606. package/docs/api/basic/button.md +38 -0
  607. package/docs/api/basic/card.md +43 -0
  608. package/docs/api/basic/chip.md +30 -0
  609. package/docs/api/basic/divider.md +31 -0
  610. package/docs/api/basic/empty.md +29 -0
  611. package/docs/api/basic/icon.md +245 -0
  612. package/docs/api/basic/input.md +43 -0
  613. package/docs/api/basic/tag.md +34 -0
  614. package/docs/api/basic/textarea.md +34 -0
  615. package/docs/api/container/callout.md +30 -0
  616. package/docs/api/container/details.md +31 -0
  617. package/docs/api/container/scroller.md +33 -0
  618. package/docs/api/container/split-panel.md +35 -0
  619. package/docs/api/data/pagination.md +31 -0
  620. package/docs/api/data/tab-pane.md +36 -0
  621. package/docs/api/data/table-column.md +58 -0
  622. package/docs/api/data/table.md +89 -0
  623. package/docs/api/data/tabs.md +35 -0
  624. package/docs/api/data/timeline-item.md +32 -0
  625. package/docs/api/data/timeline.md +67 -0
  626. package/docs/api/data/tree-menu.md +58 -0
  627. package/docs/api/data/tree.md +51 -0
  628. package/docs/api/display/animated-image.md +31 -0
  629. package/docs/api/display/carousel.md +35 -0
  630. package/docs/api/display/comparison.md +31 -0
  631. package/docs/api/display/markdown.md +29 -0
  632. package/docs/api/feedback/alert.md +35 -0
  633. package/docs/api/feedback/dialog.md +37 -0
  634. package/docs/api/feedback/drawer.md +39 -0
  635. package/docs/api/feedback/loading.md +34 -0
  636. package/docs/api/feedback/modal.md +40 -0
  637. package/docs/api/feedback/notification.md +33 -0
  638. package/docs/api/feedback/popover.md +32 -0
  639. package/docs/api/feedback/toast.md +33 -0
  640. package/docs/api/feedback/tooltip.md +34 -0
  641. package/docs/api/form/checkbox-group.md +34 -0
  642. package/docs/api/form/checkbox.md +34 -0
  643. package/docs/api/form/color-picker.md +33 -0
  644. package/docs/api/form/combobox.md +49 -0
  645. package/docs/api/form/date-picker.md +33 -0
  646. package/docs/api/form/form-item.md +35 -0
  647. package/docs/api/form/form.md +34 -0
  648. package/docs/api/form/radio-group.md +33 -0
  649. package/docs/api/form/radio.md +33 -0
  650. package/docs/api/form/rate.md +31 -0
  651. package/docs/api/form/select.md +56 -0
  652. package/docs/api/form/slider.md +34 -0
  653. package/docs/api/form/switch.md +31 -0
  654. package/docs/api/form/time-picker.md +31 -0
  655. package/docs/api/form/transfer.md +36 -0
  656. package/docs/api/form/upload.md +36 -0
  657. package/docs/api/layout/affix.md +31 -0
  658. package/docs/api/layout/col.md +35 -0
  659. package/docs/api/layout/collapse-item.md +34 -0
  660. package/docs/api/layout/collapse.md +32 -0
  661. package/docs/api/layout/container.md +35 -0
  662. package/docs/api/layout/flex.md +36 -0
  663. package/docs/api/layout/page-container.md +31 -0
  664. package/docs/api/layout/page.md +35 -0
  665. package/docs/api/layout/row.md +34 -0
  666. package/docs/api/layout/space.md +34 -0
  667. package/docs/api/navigation/back-top.md +29 -0
  668. package/docs/api/navigation/breadcrumb-item.md +32 -0
  669. package/docs/api/navigation/breadcrumb.md +32 -0
  670. package/docs/api/navigation/dropdown.md +50 -0
  671. package/docs/api/navigation/menu-item.md +34 -0
  672. package/docs/api/navigation/menu.md +36 -0
  673. package/docs/api/navigation/steps.md +32 -0
  674. package/docs/api/navigation/sub-menu.md +38 -0
  675. package/docs/api/progress/progress-bar.md +30 -0
  676. package/docs/api/progress/progress-ring.md +31 -0
  677. package/docs/api/progress/skeleton.md +34 -0
  678. package/docs/api/progress/spinner.md +30 -0
  679. package/docs/api/summary.md +162 -0
  680. package/docs/api/theme/locale-switch.md +98 -0
  681. package/docs/api/theme/theme-picker.md +37 -0
  682. package/docs/api/theme/theme-preview.md +29 -0
  683. package/docs/changelog/CHANGELOG.md +71 -0
  684. package/docs/changelog/VERSION_26.2.2.md +608 -0
  685. package/docs/framework-integration.md +422 -0
  686. package/docs/guide.md +326 -0
  687. package/docs/i18n.md +269 -0
  688. package/docs/issue/issue_26.2.2.1.md +58 -0
  689. package/docs/issue/issue_26.2.2.2.md +53 -0
  690. package/docs/issue/issue_26.2.2.3.md +86 -0
  691. package/docs/issue/issue_26.2.2.4.md +95 -0
  692. package/docs/quickstart.md +115 -0
  693. package/docs/theming.md +257 -0
  694. package/package.json +80 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index2.js","sources":["../apps/api/docs-viewer.ts","../apps/api/demo-data.ts","../apps/api/pages/docs.ts","../apps/api/app.ts"],"sourcesContent":["import { LitElement, css, html } from 'lit';\nimport { customElement, property, query, state } from 'lit/decorators.js';\n\nexport interface DocEntry {\n key: string;\n label: string;\n html: string;\n demoCode?: string;\n demoSetup?: (container: HTMLElement) => void;\n previewHeight?: string;\n}\n\nexport interface DocCategory {\n key: string;\n label: string;\n entries: DocEntry[];\n}\n\n@customElement('aithe-docs-viewer')\nexport class AitheDocsViewer extends LitElement {\n @property({ attribute: false }) categories: DocCategory[] = [];\n\n @state() private activeCategory = '';\n\n @state() private activeEntry = '';\n\n @state() private demoSource = '';\n\n @state() private demoError = '';\n\n static readonly styles = css`\n :host {\n display: block;\n }\n\n .shell {\n display: grid;\n grid-template-columns: 220px 1fr;\n gap: var(--aithe-space-6);\n min-height: 0;\n }\n\n .sidebar {\n position: sticky;\n top: 0;\n align-self: start;\n padding: var(--aithe-space-4);\n border: 1px solid var(--aithe-color-border);\n border-radius: var(--aithe-radius-xl);\n background: var(--aithe-color-surface);\n box-shadow: var(--aithe-shadow-1);\n overflow: auto;\n max-height: calc(100vh - 40px);\n }\n\n .cat-title {\n margin: var(--aithe-space-3) 0 var(--aithe-space-2);\n font-size: var(--aithe-font-size-sm);\n font-weight: var(--aithe-font-weight-bold);\n color: var(--aithe-color-text-muted);\n text-transform: uppercase;\n letter-spacing: 0.06em;\n }\n\n .cat-title:first-child {\n margin-top: 0;\n }\n\n .entry-btn {\n display: block;\n width: 100%;\n padding: var(--aithe-space-2) var(--aithe-space-3);\n border: none;\n border-radius: var(--aithe-radius-md);\n background: transparent;\n color: var(--aithe-color-text);\n font-size: var(--aithe-font-size-sm);\n text-align: left;\n cursor: pointer;\n transition: background 0.15s, color 0.15s;\n }\n\n .entry-btn:hover {\n background: var(--aithe-color-bg-subtle);\n }\n\n .entry-btn.active {\n background: linear-gradient(180deg, var(--aithe-primary-6), var(--aithe-primary-7));\n color: white;\n }\n\n .content {\n min-width: 0;\n padding: var(--aithe-space-6);\n border: 1px solid var(--aithe-color-border);\n border-radius: var(--aithe-radius-xl);\n background: var(--aithe-color-surface-elevated);\n box-shadow: var(--aithe-shadow-1);\n overflow: auto;\n }\n\n .content h1,\n .content h2,\n .content h3,\n .content h4 {\n color: var(--aithe-color-text);\n margin-top: var(--aithe-space-6);\n margin-bottom: var(--aithe-space-3);\n }\n\n .content h1 {\n font-size: var(--aithe-font-size-xl);\n border-bottom: 1px solid var(--aithe-color-border);\n padding-bottom: var(--aithe-space-3);\n }\n\n .content h1:first-child {\n margin-top: 0;\n }\n\n .content h2 {\n font-size: var(--aithe-font-size-lg);\n }\n\n .content h3 {\n font-size: var(--aithe-font-size-md);\n }\n\n .content p,\n .content blockquote {\n color: var(--aithe-color-text);\n line-height: 1.7;\n }\n\n .content blockquote {\n margin: var(--aithe-space-3) 0;\n padding: var(--aithe-space-3) var(--aithe-space-4);\n border-left: 3px solid var(--aithe-primary-6);\n background: var(--aithe-color-bg-subtle);\n border-radius: var(--aithe-radius-md);\n }\n\n .content table {\n width: 100%;\n border-collapse: collapse;\n margin: var(--aithe-space-4) 0;\n font-size: var(--aithe-font-size-sm);\n }\n\n .content th,\n .content td {\n padding: var(--aithe-space-2) var(--aithe-space-3);\n border: 1px solid var(--aithe-color-border);\n text-align: left;\n }\n\n .content th {\n background: var(--aithe-color-bg-subtle);\n font-weight: var(--aithe-font-weight-semibold);\n }\n\n .content code {\n padding: 2px 6px;\n border-radius: var(--aithe-radius-sm);\n background: var(--aithe-color-bg-subtle);\n font-family: var(--aithe-font-family-mono);\n font-size: 0.9em;\n }\n\n .content pre {\n margin: var(--aithe-space-4) 0;\n padding: var(--aithe-space-4);\n border: 1px solid var(--aithe-color-border);\n border-radius: var(--aithe-radius-xl);\n background: #09111f;\n color: #edf4ff;\n overflow-x: auto;\n font-family: var(--aithe-font-family-mono);\n font-size: 13px;\n line-height: 1.6;\n }\n\n .content pre code {\n padding: 0;\n background: transparent;\n color: inherit;\n }\n\n .content a {\n color: var(--aithe-primary-6);\n text-decoration: none;\n }\n\n .content a:hover {\n text-decoration: underline;\n }\n\n .content ul,\n .content ol {\n padding-left: var(--aithe-space-5);\n }\n\n .content hr {\n border: none;\n border-top: 1px solid var(--aithe-color-border);\n margin: var(--aithe-space-5) 0;\n }\n\n .empty {\n display: flex;\n align-items: center;\n justify-content: center;\n min-height: 320px;\n color: var(--aithe-color-text-muted);\n }\n\n .demo-section {\n margin-top: var(--aithe-space-6);\n border-top: 1px solid var(--aithe-color-border);\n padding-top: var(--aithe-space-5);\n }\n\n .demo-section-title {\n font-size: var(--aithe-font-size-lg);\n font-weight: var(--aithe-font-weight-semibold);\n color: var(--aithe-color-text);\n margin-bottom: var(--aithe-space-4);\n }\n\n .demo-body {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: var(--aithe-space-4);\n min-width: 0;\n }\n\n .demo-preview-shell {\n min-width: 0;\n max-width: 100%;\n border: 1px solid var(--aithe-color-border);\n border-radius: var(--aithe-radius-xl);\n background:\n radial-gradient(circle at top right, rgba(77, 141, 255, 0.08), transparent 32%),\n var(--aithe-color-bg);\n overflow: hidden;\n }\n\n .demo-preview {\n min-width: 0;\n max-width: 100%;\n min-height: 180px;\n padding: var(--aithe-space-5);\n overflow: auto;\n }\n\n .demo-code-shell {\n display: flex;\n flex-direction: column;\n min-width: 0;\n max-width: 100%;\n gap: var(--aithe-space-2);\n }\n\n .demo-code-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--aithe-space-3);\n }\n\n .demo-code-label {\n font-size: var(--aithe-font-size-sm);\n font-weight: var(--aithe-font-weight-semibold);\n color: var(--aithe-color-text-muted);\n }\n\n .demo-reset-btn {\n min-height: 36px;\n padding: 0 var(--aithe-space-3);\n border: 1px solid var(--aithe-color-border);\n border-radius: var(--aithe-radius-md);\n background: var(--aithe-color-surface);\n color: var(--aithe-color-text);\n cursor: pointer;\n font-size: var(--aithe-font-size-sm);\n }\n\n .demo-reset-btn:hover {\n background: var(--aithe-color-bg-subtle);\n }\n\n .demo-editor {\n display: block;\n width: 100%;\n min-width: 0;\n max-width: 100%;\n min-height: 220px;\n padding: var(--aithe-space-4);\n border: 1px solid var(--aithe-color-border);\n border-radius: var(--aithe-radius-xl);\n background: #09111f;\n color: #edf4ff;\n font: 13px/1.6 var(--aithe-font-family-mono);\n overflow-x: auto;\n resize: vertical;\n }\n\n .demo-error {\n padding: var(--aithe-space-3) var(--aithe-space-4);\n border-top: 1px solid var(--aithe-color-border);\n background: rgba(223, 82, 107, 0.08);\n color: var(--aithe-danger-7);\n font-family: var(--aithe-font-family-mono);\n font-size: var(--aithe-font-size-sm);\n white-space: pre-wrap;\n }\n\n @media (max-width: 768px) {\n .shell {\n grid-template-columns: 1fr;\n }\n\n .sidebar {\n position: static;\n max-height: none;\n }\n\n .demo-body {\n grid-template-columns: 1fr;\n }\n }\n `;\n\n connectedCallback(): void {\n super.connectedCallback();\n if (this.categories.length > 0 && !this.activeCategory) {\n this.activeCategory = this.categories[0]!.key;\n if (this.categories[0]!.entries.length > 0) {\n this.activeEntry = this.categories[0]!.entries[0]!.key;\n }\n }\n }\n\n private handleContentClick = (event: Event): void => {\n const target = event.target as HTMLElement;\n const anchor = target.closest('a');\n if (!anchor) return;\n\n const href = anchor.getAttribute('href');\n if (!href) return;\n\n if (!href.endsWith('.md')) return;\n\n event.preventDefault();\n\n const segments = href.replace(/^\\/+/, '').split('/');\n const lastTwo = segments.length >= 2 ? segments.slice(-2) : segments;\n const catDir = lastTwo[0];\n const filePart = lastTwo[1]?.replace(/\\.md$/, '') ?? lastTwo[0]?.replace(/\\.md$/, '');\n\n const catMap: Record<string, string> = {\n basic: 'basic',\n layout: 'layout',\n navigation: 'navigation',\n form: 'form',\n feedback: 'feedback',\n data: 'data',\n display: 'display',\n progress: 'progress',\n container: 'container',\n changelog: 'summary',\n };\n\n const catKey = catMap[catDir ?? ''];\n if (!catKey || !filePart) return;\n\n for (const cat of this.categories) {\n if (cat.key !== catKey) continue;\n for (const entry of cat.entries) {\n if (entry.key === `${catKey}-${filePart}`) {\n this.selectEntry(catKey, entry.key);\n return;\n }\n }\n }\n };\n\n private get currentEntry(): DocEntry | undefined {\n for (const cat of this.categories) {\n for (const entry of cat.entries) {\n if (entry.key === this.activeEntry) {\n return entry;\n }\n }\n }\n return undefined;\n }\n\n private get currentHtml(): string {\n return this.currentEntry?.html ?? '';\n }\n\n private selectEntry(catKey: string, entryKey: string): void {\n this.activeCategory = catKey;\n this.activeEntry = entryKey;\n }\n\n @query('.demo-preview') private demoPreview?: HTMLElement;\n\n private demoDebounceTimer?: ReturnType<typeof setTimeout>;\n\n protected willUpdate(changed: Map<string, unknown>): void {\n if (changed.has('activeEntry')) {\n const entry = this.currentEntry;\n this.demoSource = entry?.demoCode ?? '';\n this.demoError = '';\n }\n }\n\n protected updated(changed: Map<string, unknown>): void {\n if ((changed.has('demoSource') || changed.has('activeEntry')) && this.demoPreview) {\n this.scheduleDemoRender();\n }\n }\n\n private scheduleDemoRender(): void {\n clearTimeout(this.demoDebounceTimer);\n this.demoDebounceTimer = setTimeout(() => this.renderDemoPreview(), 300);\n }\n\n private renderDemoPreview(): void {\n if (!this.demoPreview) return;\n const entry = this.currentEntry;\n if (!entry?.demoCode) return;\n try {\n this.demoPreview.innerHTML = this.demoSource;\n entry.demoSetup?.(this.demoPreview);\n this.demoError = '';\n } catch (error) {\n this.demoError = error instanceof Error ? error.stack || error.message : String(error);\n }\n }\n\n render() {\n const entry = this.currentEntry;\n const currentHtml = entry?.html ?? '';\n const hasDemo = !!entry?.demoCode;\n\n return html`\n <div class=\"shell\">\n <aside class=\"sidebar\">\n ${this.categories.map(\n (cat) => html`\n <div class=\"cat-title\">${cat.label}</div>\n ${cat.entries.map(\n (entry) => html`\n <button\n class=${`entry-btn ${this.activeEntry === entry.key ? 'active' : ''}`}\n type=\"button\"\n @click=${() => this.selectEntry(cat.key, entry.key)}\n >\n ${entry.label}\n </button>\n `,\n )}\n `,\n )}\n </aside>\n\n <main class=\"content\">\n ${currentHtml\n ? html`\n <div .innerHTML=${currentHtml} @click=${this.handleContentClick}></div>\n ${hasDemo\n ? html`\n <div class=\"demo-section\">\n <div class=\"demo-section-title\">Demo / 示例演示</div>\n <div class=\"demo-body\">\n <div class=\"demo-preview-shell\">\n <div\n class=\"demo-preview\"\n style=${entry?.previewHeight\n ? `min-height:${entry.previewHeight}`\n : ''}\n ></div>\n ${this.demoError\n ? html`<div class=\"demo-error\">${this.demoError}</div>`\n : ''}\n </div>\n <div class=\"demo-code-shell\">\n <div class=\"demo-code-header\">\n <span class=\"demo-code-label\">Code</span>\n <button\n class=\"demo-reset-btn\"\n type=\"button\"\n @click=${() => {\n this.demoSource = entry?.demoCode ?? '';\n }}\n >\n Reset\n </button>\n </div>\n <textarea\n class=\"demo-editor\"\n .value=${this.demoSource}\n spellcheck=\"false\"\n @input=${(event: Event) => {\n this.demoSource = (event.currentTarget as HTMLTextAreaElement).value;\n }}\n ></textarea>\n </div>\n </div>\n </div>\n `\n : ''}\n `\n : html`<div class=\"empty\">Select a component from the sidebar to view its API documentation.</div>`}\n </main>\n </div>\n `;\n }\n}","import type { DocEntry } from './docs-viewer';\n\nconst animatedSvg = encodeURIComponent(`\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 960 540\">\n <defs>\n <linearGradient id=\"g\" x1=\"0\" x2=\"1\" y1=\"0\" y2=\"1\">\n <stop stop-color=\"#1d4ed8\"/>\n <stop offset=\"1\" stop-color=\"#0f172a\"/>\n </linearGradient>\n </defs>\n <rect width=\"960\" height=\"540\" fill=\"url(#g)\"/>\n <circle cx=\"180\" cy=\"160\" r=\"110\" fill=\"rgba(255,255,255,0.1)\"/>\n <circle cx=\"760\" cy=\"360\" r=\"150\" fill=\"rgba(96,165,250,0.18)\"/>\n <text x=\"80\" y=\"300\" fill=\"#eff6ff\" font-family=\"Arial\" font-size=\"72\" font-weight=\"700\">Aithe UI</text>\n <text x=\"82\" y=\"360\" fill=\"#cbd5e1\" font-family=\"Arial\" font-size=\"28\">Enterprise Design System</text>\n </svg>\n`);\n\nconst demoMap: Record<string, Pick<DocEntry, 'demoCode' | 'demoSetup' | 'previewHeight'> | undefined> = {\n 'basic-button': {\n demoCode: `<aithe-space size=\"16\" direction=\"horizontal\" wrap>\n <aithe-button type=\"primary\" title=\"Submit form\">Primary Action</aithe-button>\n <aithe-button type=\"default\" title=\"Default action\">Default</aithe-button>\n <aithe-button type=\"dashed\">Dashed</aithe-button>\n <aithe-button type=\"text\">Text</aithe-button>\n <aithe-button type=\"link\">Link</aithe-button>\n <aithe-button type=\"primary\" loading>Generating</aithe-button>\n <aithe-button type=\"primary\" danger>Delete</aithe-button>\n</aithe-space>`,\n },\n 'basic-button-group': {\n demoCode: `<aithe-button-group gap=\"12\">\n <aithe-button type=\"default\">Cancel</aithe-button>\n <aithe-button type=\"primary\">Save Workspace</aithe-button>\n</aithe-button-group>`,\n },\n 'basic-icon': {\n demoCode: `<style>\n .icon-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:8px;}\n .icon-cell{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 4px;border:1px solid var(--aithe-color-border);border-radius:8px;background:var(--aithe-color-surface);cursor:default;transition:background .15s;}\n .icon-cell:hover{background:var(--aithe-color-bg-subtle);}\n .icon-name{font-size:11px;color:var(--aithe-color-text-muted);font-family:var(--aithe-font-family-mono);word-break:break-all;text-align:center;line-height:1.3;}\n</style>\n<div class=\"icon-grid\">\n <div class=\"icon-cell\"><aithe-icon name=\"sparkles\" size=\"20\"></aithe-icon><span class=\"icon-name\">sparkles</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"close\" size=\"20\"></aithe-icon><span class=\"icon-name\">close</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"check\" size=\"20\"></aithe-icon><span class=\"icon-name\">check</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"info\" size=\"20\"></aithe-icon><span class=\"icon-name\">info</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"warning\" size=\"20\"></aithe-icon><span class=\"icon-name\">warning</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"image\" size=\"20\"></aithe-icon><span class=\"icon-name\">image</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"search\" size=\"20\"></aithe-icon><span class=\"icon-name\">search</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"plus\" size=\"20\"></aithe-icon><span class=\"icon-name\">plus</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"minus\" size=\"20\"></aithe-icon><span class=\"icon-name\">minus</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"menu\" size=\"20\"></aithe-icon><span class=\"icon-name\">menu</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"more\" size=\"20\"></aithe-icon><span class=\"icon-name\">more</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"settings\" size=\"20\"></aithe-icon><span class=\"icon-name\">settings</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"home\" size=\"20\"></aithe-icon><span class=\"icon-name\">home</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"star\" size=\"20\"></aithe-icon><span class=\"icon-name\">star</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"heart\" size=\"20\"></aithe-icon><span class=\"icon-name\">heart</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"copy\" size=\"20\"></aithe-icon><span class=\"icon-name\">copy</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"download\" size=\"20\"></aithe-icon><span class=\"icon-name\">download</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"upload\" size=\"20\"></aithe-icon><span class=\"icon-name\">upload</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"share\" size=\"20\"></aithe-icon><span class=\"icon-name\">share</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"link\" size=\"20\"></aithe-icon><span class=\"icon-name\">link</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"external\" size=\"20\"></aithe-icon><span class=\"icon-name\">external</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"refresh\" size=\"20\"></aithe-icon><span class=\"icon-name\">refresh</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"edit\" size=\"20\"></aithe-icon><span class=\"icon-name\">edit</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"trash\" size=\"20\"></aithe-icon><span class=\"icon-name\">trash</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"filter\" size=\"20\"></aithe-icon><span class=\"icon-name\">filter</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"sort\" size=\"20\"></aithe-icon><span class=\"icon-name\">sort</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"lock\" size=\"20\"></aithe-icon><span class=\"icon-name\">lock</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"unlock\" size=\"20\"></aithe-icon><span class=\"icon-name\">unlock</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"eye\" size=\"20\"></aithe-icon><span class=\"icon-name\">eye</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"eyeOff\" size=\"20\"></aithe-icon><span class=\"icon-name\">eyeOff</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"clock\" size=\"20\"></aithe-icon><span class=\"icon-name\">clock</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"calendar\" size=\"20\"></aithe-icon><span class=\"icon-name\">calendar</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"pin\" size=\"20\"></aithe-icon><span class=\"icon-name\">pin</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"flag\" size=\"20\"></aithe-icon><span class=\"icon-name\">flag</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"bookmark\" size=\"20\"></aithe-icon><span class=\"icon-name\">bookmark</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"paperclip\" size=\"20\"></aithe-icon><span class=\"icon-name\">paperclip</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"tag\" size=\"20\"></aithe-icon><span class=\"icon-name\">tag</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"thumbUp\" size=\"20\"></aithe-icon><span class=\"icon-name\">thumbUp</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"thumbDown\" size=\"20\"></aithe-icon><span class=\"icon-name\">thumbDown</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"arrowUp\" size=\"20\"></aithe-icon><span class=\"icon-name\">arrowUp</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"arrowDown\" size=\"20\"></aithe-icon><span class=\"icon-name\">arrowDown</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"arrowLeft\" size=\"20\"></aithe-icon><span class=\"icon-name\">arrowLeft</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"arrowRight\" size=\"20\"></aithe-icon><span class=\"icon-name\">arrowRight</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"chevronUp\" size=\"20\"></aithe-icon><span class=\"icon-name\">chevronUp</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"chevronDown\" size=\"20\"></aithe-icon><span class=\"icon-name\">chevronDown</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"chevronLeft\" size=\"20\"></aithe-icon><span class=\"icon-name\">chevronLeft</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"chevronRight\" size=\"20\"></aithe-icon><span class=\"icon-name\">chevronRight</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"expand\" size=\"20\"></aithe-icon><span class=\"icon-name\">expand</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"collapse\" size=\"20\"></aithe-icon><span class=\"icon-name\">collapse</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"success\" size=\"20\" color=\"var(--aithe-success-6)\"></aithe-icon><span class=\"icon-name\">success</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"error\" size=\"20\" color=\"var(--aithe-danger-6)\"></aithe-icon><span class=\"icon-name\">error</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"question\" size=\"20\" color=\"var(--aithe-primary-6)\"></aithe-icon><span class=\"icon-name\">question</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"play\" size=\"20\"></aithe-icon><span class=\"icon-name\">play</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"pause\" size=\"20\"></aithe-icon><span class=\"icon-name\">pause</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"volume\" size=\"20\"></aithe-icon><span class=\"icon-name\">volume</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"mute\" size=\"20\"></aithe-icon><span class=\"icon-name\">mute</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"camera\" size=\"20\"></aithe-icon><span class=\"icon-name\">camera</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"video\" size=\"20\"></aithe-icon><span class=\"icon-name\">video</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"music\" size=\"20\"></aithe-icon><span class=\"icon-name\">music</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"mail\" size=\"20\"></aithe-icon><span class=\"icon-name\">mail</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"bell\" size=\"20\"></aithe-icon><span class=\"icon-name\">bell</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"chat\" size=\"20\"></aithe-icon><span class=\"icon-name\">chat</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"phone\" size=\"20\"></aithe-icon><span class=\"icon-name\">phone</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"barChart\" size=\"20\"></aithe-icon><span class=\"icon-name\">barChart</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"pieChart\" size=\"20\"></aithe-icon><span class=\"icon-name\">pieChart</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"database\" size=\"20\"></aithe-icon><span class=\"icon-name\">database</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"code\" size=\"20\"></aithe-icon><span class=\"icon-name\">code</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"terminal\" size=\"20\"></aithe-icon><span class=\"icon-name\">terminal</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"file\" size=\"20\"></aithe-icon><span class=\"icon-name\">file</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"folder\" size=\"20\"></aithe-icon><span class=\"icon-name\">folder</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"grid\" size=\"20\"></aithe-icon><span class=\"icon-name\">grid</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"list\" size=\"20\"></aithe-icon><span class=\"icon-name\">list</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"sidebar\" size=\"20\"></aithe-icon><span class=\"icon-name\">sidebar</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"maximize\" size=\"20\"></aithe-icon><span class=\"icon-name\">maximize</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"minimize\" size=\"20\"></aithe-icon><span class=\"icon-name\">minimize</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"user\" size=\"20\"></aithe-icon><span class=\"icon-name\">user</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"users\" size=\"20\"></aithe-icon><span class=\"icon-name\">users</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"sun\" size=\"20\"></aithe-icon><span class=\"icon-name\">sun</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"moon\" size=\"20\"></aithe-icon><span class=\"icon-name\">moon</span></div>\n <div class=\"icon-cell\"><aithe-icon name=\"cloud\" size=\"20\"></aithe-icon><span class=\"icon-name\">cloud</span></div>\n</div>\n<div style=\"display:flex;gap:16px;align-items:center;margin-top:16px;\">\n <aithe-icon name=\"sparkles\" size=\"sm\"></aithe-icon><span style=\"font-size:12px;color:var(--aithe-color-text-muted);\">sm</span>\n <aithe-icon name=\"sparkles\" size=\"md\"></aithe-icon><span style=\"font-size:12px;color:var(--aithe-color-text-muted);\">md</span>\n <aithe-icon name=\"sparkles\" size=\"lg\"></aithe-icon><span style=\"font-size:12px;color:var(--aithe-color-text-muted);\">lg</span>\n <aithe-icon name=\"sparkles\" size=\"32px\" color=\"var(--aithe-primary-6)\"></aithe-icon><span style=\"font-size:12px;color:var(--aithe-color-text-muted);\">32px</span>\n</div>`,\n previewHeight: '520px',\n },\n 'basic-input': {\n demoCode: `<div style=\"display:grid;gap:16px;max-width:720px;\">\n <aithe-input placeholder=\"Search agents, prompts or datasets\" clearable value=\"Aithe UI\">\n <span slot=\"prefix\">⌕</span>\n <span slot=\"suffix\">⌘K</span>\n </aithe-input>\n <aithe-input type=\"email\" placeholder=\"owner@company.com\" status=\"success\"></aithe-input>\n</div>`,\n },\n 'basic-textarea': {\n demoCode: `<aithe-textarea rows=\"4\" placeholder=\"Describe the system message...\"></aithe-textarea>`,\n },\n 'basic-card': {\n demoCode: `<aithe-space direction=\"vertical\" size=\"16\">\n <aithe-card style=\"display:block;max-width:720px;\" shadow=\"3\" title=\"Model Output Summary\" icon=\"sparkles\">\n <div style=\"display:grid;gap:12px;\">\n <p style=\"margin:0;color:var(--aithe-color-text-muted);\">\n This card uses the design token system and supports fluid content width.\n </p>\n </div>\n <span slot=\"footer\">Updated just now</span>\n </aithe-card>\n <aithe-card style=\"display:block;max-width:720px;\" shadow=\"2\" title=\"No Dividers\" icon=\"file-text\" divider=\"none\">\n <p style=\"margin:0;\">divider=\"none\" — no lines between sections.</p>\n <span slot=\"footer\">Footer without divider</span>\n </aithe-card>\n</aithe-space>`,\n },\n 'basic-badge': {\n demoCode: `<aithe-badge count=\"128\">\n <aithe-button type=\"default\">Queued Jobs</aithe-button>\n</aithe-badge>`,\n },\n 'basic-tag': {\n demoCode: `<aithe-space size=\"12\" direction=\"horizontal\" wrap>\n <aithe-tag type=\"primary\">Inference</aithe-tag>\n <aithe-tag type=\"success\">Stable</aithe-tag>\n <aithe-tag type=\"warning\" closable>Reviewing</aithe-tag>\n <aithe-tag type=\"danger\">Critical</aithe-tag>\n</aithe-space>`,\n },\n 'basic-avatar': {\n demoCode: `<aithe-space size=\"12\" direction=\"horizontal\">\n <aithe-avatar text=\"AI\"></aithe-avatar>\n <aithe-avatar shape=\"square\" text=\"ML\"></aithe-avatar>\n <aithe-avatar size=\"lg\" text=\"SYS\"></aithe-avatar>\n</aithe-space>`,\n },\n 'basic-divider': {\n demoCode: `<div style=\"display:grid;gap:20px;max-width:720px;\">\n <aithe-divider>System Modules</aithe-divider>\n <div style=\"display:flex;gap:16px;align-items:center;\">\n <span>Retrieval</span>\n <aithe-divider direction=\"vertical\"></aithe-divider>\n <span>Reasoning</span>\n <aithe-divider direction=\"vertical\"></aithe-divider>\n <span>Delivery</span>\n </div>\n</div>`,\n },\n 'basic-empty': {\n demoCode: `<aithe-empty text=\"No generated artifacts yet. Start by creating a workflow.\"></aithe-empty>`,\n previewHeight: '220px',\n },\n 'basic-chip': {\n demoCode: `<aithe-space size=\"12\" direction=\"horizontal\" wrap>\n <aithe-chip selected>Realtime</aithe-chip>\n <aithe-chip closable>Vision</aithe-chip>\n</aithe-space>`,\n },\n\n 'layout-container': {\n demoCode: `<aithe-container direction=\"column\" gap=\"16\">\n <aithe-flex justify=\"space-between\" align=\"center\" gap=\"16\">\n <div style=\"font-weight:600;\">Aithe Workspace</div>\n <aithe-space size=\"8\" direction=\"horizontal\">\n <aithe-tag>US-East</aithe-tag>\n <aithe-tag type=\"success\">Healthy</aithe-tag>\n </aithe-space>\n </aithe-flex>\n <aithe-space size=\"12\" direction=\"vertical\">\n <aithe-card>Prompt Registry</aithe-card>\n <aithe-card>Model Routing</aithe-card>\n <aithe-card>Guardrails</aithe-card>\n </aithe-space>\n</aithe-container>`,\n },\n 'layout-row': {\n demoCode: `<aithe-row gutter=\"16\">\n <aithe-col span=\"12\"><aithe-card>Span 12</aithe-card></aithe-col>\n <aithe-col span=\"12\"><aithe-card>Span 12</aithe-card></aithe-col>\n <aithe-col span=\"8\"><aithe-card>Span 8</aithe-card></aithe-col>\n <aithe-col span=\"8\"><aithe-card>Span 8</aithe-card></aithe-col>\n <aithe-col span=\"8\"><aithe-card>Span 8</aithe-card></aithe-col>\n</aithe-row>`,\n },\n 'layout-col': {\n demoCode: `<aithe-row gutter=\"16\">\n <aithe-col span=\"12\"><aithe-card>Span 12</aithe-card></aithe-col>\n <aithe-col span=\"12\"><aithe-card>Span 12</aithe-card></aithe-col>\n</aithe-row>`,\n },\n 'layout-flex': {\n demoCode: `<aithe-flex justify=\"space-between\" align=\"center\" gap=\"16\">\n <div style=\"font-weight:600;\">Aithe Workspace</div>\n <aithe-space size=\"8\" direction=\"horizontal\">\n <aithe-tag>US-East</aithe-tag>\n <aithe-tag type=\"success\">Healthy</aithe-tag>\n </aithe-space>\n</aithe-flex>`,\n },\n 'layout-space': {\n demoCode: `<aithe-space size=\"12\" direction=\"vertical\">\n <aithe-card>Prompt Registry</aithe-card>\n <aithe-card>Model Routing</aithe-card>\n <aithe-card>Guardrails</aithe-card>\n</aithe-space>`,\n },\n 'layout-page-container': {\n demoCode: `<aithe-page-container title=\"Operations Center\">\n <div style=\"display:grid;gap:12px;\">\n <aithe-card>Traffic Overview</aithe-card>\n <aithe-card>Deployment Tasks</aithe-card>\n </div>\n</aithe-page-container>`,\n },\n 'layout-page': {\n demoCode: `<aithe-page-container title=\"Operations Center\">\n <div style=\"display:grid;gap:12px;\">\n <aithe-card>Traffic Overview</aithe-card>\n <aithe-card>Deployment Tasks</aithe-card>\n </div>\n</aithe-page-container>`,\n },\n 'layout-collapse': {\n demoCode: `<aithe-collapse active-key=\"api\">\n <aithe-collapse-item name=\"api\" title=\"API Design\" icon=\"settings\">Stable, event-based and theme-driven.</aithe-collapse-item>\n <aithe-collapse-item name=\"theme\" title=\"Theme System\" icon=\"star\">4 official themes and unlimited extensions.</aithe-collapse-item>\n</aithe-collapse>`,\n previewHeight: '320px',\n },\n 'layout-collapse-item': {\n demoCode: `<aithe-collapse active-key=\"api\">\n <aithe-collapse-item name=\"api\" title=\"API Design\" icon=\"settings\">Stable, event-based and theme-driven.</aithe-collapse-item>\n <aithe-collapse-item name=\"theme\" title=\"Theme System\" icon=\"star\">4 official themes and unlimited extensions.</aithe-collapse-item>\n</aithe-collapse>`,\n previewHeight: '320px',\n },\n 'layout-timeline': {\n demoCode: `<aithe-timeline>\n <aithe-timeline-item type=\"primary\" timestamp=\"09:00\">Design tokens published</aithe-timeline-item>\n <aithe-timeline-item type=\"success\" timestamp=\"11:30\">Demo routing completed</aithe-timeline-item>\n <aithe-timeline-item type=\"warning\" timestamp=\"15:20\">Accessibility audit pending</aithe-timeline-item>\n</aithe-timeline>`,\n previewHeight: '320px',\n },\n 'layout-timeline-item': {\n demoCode: `<aithe-timeline>\n <aithe-timeline-item type=\"primary\" timestamp=\"09:00\">Design tokens published</aithe-timeline-item>\n <aithe-timeline-item type=\"success\" timestamp=\"11:30\">Demo routing completed</aithe-timeline-item>\n</aithe-timeline>`,\n previewHeight: '320px',\n },\n 'layout-affix': {\n demoCode: `<div class=\"affix-scroll\" style=\"height:280px;overflow:auto;border:1px solid var(--aithe-color-border);border-radius:20px;padding:16px;background:var(--aithe-color-surface-elevated);\">\n <aithe-affix offset-top=\"16\" target=\".affix-scroll\">\n <aithe-tag type=\"primary\">Pinned Summary</aithe-tag>\n </aithe-affix>\n <div style=\"height:560px;padding-top:48px;color:var(--aithe-color-text-muted);\">\n Scroll this panel to see the summary remain attached near the top edge.\n </div>\n</div>`,\n previewHeight: '320px',\n },\n\n 'nav-menu': {\n demoCode: `<aithe-menu active=\"overview\" style=\"max-width:280px;\">\n <aithe-menu-item name=\"overview\">Overview</aithe-menu-item>\n <aithe-sub-menu name=\"assets\" title=\"Assets\" icon=\"star\" open>\n <aithe-menu-item name=\"library\">Component Library</aithe-menu-item>\n <aithe-menu-item name=\"tokens\">Design Tokens</aithe-menu-item>\n </aithe-sub-menu>\n <aithe-menu-item name=\"governance\">Governance</aithe-menu-item>\n</aithe-menu>`,\n previewHeight: '260px',\n },\n 'nav-menu-item': {\n demoCode: `<aithe-menu active=\"overview\" style=\"max-width:280px;\">\n <aithe-menu-item name=\"overview\">Overview</aithe-menu-item>\n <aithe-menu-item name=\"governance\">Governance</aithe-menu-item>\n</aithe-menu>`,\n previewHeight: '260px',\n },\n 'nav-sub-menu': {\n demoCode: `<aithe-menu active=\"library\" style=\"max-width:280px;\">\n <aithe-sub-menu name=\"assets\" title=\"Assets\" icon=\"star\" open>\n <aithe-menu-item name=\"library\">Component Library</aithe-menu-item>\n <aithe-menu-item name=\"tokens\">Design Tokens</aithe-menu-item>\n </aithe-sub-menu>\n</aithe-menu>`,\n previewHeight: '260px',\n },\n 'nav-breadcrumb': {\n demoCode: `<aithe-breadcrumb separator=\"/\">\n <aithe-breadcrumb-item href=\"#\">Workspace</aithe-breadcrumb-item>\n <aithe-breadcrumb-item href=\"#\">Aithe UI</aithe-breadcrumb-item>\n <aithe-breadcrumb-item>Release Candidate</aithe-breadcrumb-item>\n</aithe-breadcrumb>`,\n },\n 'nav-breadcrumb-item': {\n demoCode: `<aithe-breadcrumb separator=\"/\">\n <aithe-breadcrumb-item href=\"#\">Workspace</aithe-breadcrumb-item>\n <aithe-breadcrumb-item>Current Page</aithe-breadcrumb-item>\n</aithe-breadcrumb>`,\n },\n 'nav-steps': {\n demoCode: `<aithe-steps\n current=\"1\"\n items='[\n {\"title\":\"Define\",\"description\":\"Prompt and token system\"},\n {\"title\":\"Implement\",\"description\":\"Components and demo\"},\n {\"title\":\"Release\",\"description\":\"QA and package publish\"}\n ]'\n></aithe-steps>`,\n previewHeight: '220px',\n },\n 'nav-back-top': {\n demoCode: `<div class=\"backtop-scroll\" style=\"position:relative;height:280px;overflow:auto;border:1px solid var(--aithe-color-border);border-radius:20px;padding:16px;background:var(--aithe-color-surface-elevated);\">\n <aithe-back-top target=\".backtop-scroll\" visibility-height=\"80\"></aithe-back-top>\n <div style=\"height:720px;color:var(--aithe-color-text-muted);\">\n This block intentionally creates vertical overflow inside the preview region.\n </div>\n</div>`,\n previewHeight: '320px',\n },\n\n 'form-checkbox': {\n demoCode: `<aithe-checkbox-group value='[\"components\"]'>\n <aithe-checkbox value=\"design\">Design Tokens</aithe-checkbox>\n <aithe-checkbox value=\"components\">Components</aithe-checkbox>\n <aithe-checkbox value=\"docs\">Docs</aithe-checkbox>\n</aithe-checkbox-group>`,\n },\n 'form-checkbox-group': {\n demoCode: `<aithe-checkbox-group value='[\"components\"]'>\n <aithe-checkbox value=\"design\">Design Tokens</aithe-checkbox>\n <aithe-checkbox value=\"components\">Components</aithe-checkbox>\n <aithe-checkbox value=\"docs\">Docs</aithe-checkbox>\n</aithe-checkbox-group>`,\n },\n 'form-radio': {\n demoCode: `<aithe-radio-group value=\"beta\">\n <aithe-radio value=\"alpha\">Alpha</aithe-radio>\n <aithe-radio value=\"beta\">Beta</aithe-radio>\n <aithe-radio value=\"ga\">GA</aithe-radio>\n</aithe-radio-group>`,\n },\n 'form-radio-group': {\n demoCode: `<aithe-radio-group value=\"beta\">\n <aithe-radio value=\"alpha\">Alpha</aithe-radio>\n <aithe-radio value=\"beta\">Beta</aithe-radio>\n <aithe-radio value=\"ga\">GA</aithe-radio>\n</aithe-radio-group>`,\n },\n 'form-select': {\n demoCode: `<aithe-select\n placeholder=\"Choose a model\"\n clearable\n searchable\n options='[{\"label\":\"GPT-5.4\",\"value\":\"gpt-5.4\",\"icon\":\"sparkles\",\"description\":\"Frontier reasoning model\"},{\"label\":\"GPT-5.3 Codex\",\"value\":\"gpt-5.3-codex\",\"icon\":\"code\",\"description\":\"Agentic coding model\"},{\"label\":\"Vision Worker\",\"value\":\"vision-worker\",\"icon\":\"eye\",\"description\":\"Image parsing runtime\",\"style\":\"warning\"}]'\n></aithe-select>`,\n },\n 'form-switch': {\n demoCode: `<aithe-switch checked></aithe-switch>`,\n },\n 'form-color-picker': {\n demoCode: `<aithe-color-picker alpha></aithe-color-picker>`,\n },\n 'form-combobox': {\n demoCode: `<aithe-combobox\n placeholder=\"Search presets\"\n options='[{\"label\":\"A/B Test\",\"value\":\"ab-test\",\"icon\":\"barChart\"},{\"label\":\"Assistant Shell\",\"value\":\"assistant-shell\",\"icon\":\"terminal\"},{\"label\":\"Retrieval QA\",\"value\":\"retrieval-qa\",\"icon\":\"search\",\"style\":\"primary\"},{\"label\":\"Workflow Editor\",\"value\":\"workflow-editor\",\"icon\":\"edit\",\"style\":\"warning\"}]'\n></aithe-combobox>`,\n },\n 'form-date-picker': {\n demoCode: `<aithe-date-picker value=\"2026-05-08\"></aithe-date-picker>`,\n },\n 'form-time-picker': {\n demoCode: `<aithe-time-picker value=\"10:30\"></aithe-time-picker>`,\n },\n 'form-slider': {\n demoCode: `<div style=\"display:grid;gap:16px;max-width:360px;\">\n <aithe-slider value=\"64\"></aithe-slider>\n <aithe-slider range value=\"24,76\"></aithe-slider>\n</div>`,\n },\n 'form-rate': {\n demoCode: `<aithe-rate allow-half value=\"3.5\"></aithe-rate>`,\n },\n 'form-form': {\n demoCode: `<aithe-form id=\"demo-form\">\n <aithe-form-item label=\"Project Name\" required>\n <aithe-input name=\"projectName\" placeholder=\"Aithe UI\"></aithe-input>\n </aithe-form-item>\n <aithe-form-item label=\"Owner Email\" required>\n <aithe-input name=\"ownerEmail\" type=\"email\" placeholder=\"owner@company.com\"></aithe-input>\n </aithe-form-item>\n <aithe-button id=\"demo-submit\" type=\"primary\">Submit Form</aithe-button>\n</aithe-form>`,\n demoSetup: (root) => {\n const button = root.querySelector('aithe-button');\n const form = root.querySelector<HTMLElement>('aithe-form');\n button?.addEventListener('click', () => {\n (form as HTMLElement & { validate?: () => boolean }).validate?.();\n form?.dispatchEvent(new Event('submit', { bubbles: true, cancelable: true }));\n });\n },\n previewHeight: '260px',\n },\n 'form-form-item': {\n demoCode: `<aithe-form>\n <aithe-form-item label=\"Project Name\" required>\n <aithe-input name=\"projectName\" placeholder=\"Aithe UI\"></aithe-input>\n </aithe-form-item>\n</aithe-form>`,\n },\n 'form-upload': {\n demoCode: `<aithe-upload accept=\".png,.jpg,.svg\">Upload Assets</aithe-upload>`,\n },\n 'form-transfer': {\n demoCode: `<aithe-transfer\n searchable\n titles='[\"Available Blocks\",\"Enabled Blocks\"]'\n data='[{\"label\":\"Button\",\"value\":\"button\"},{\"label\":\"Input\",\"value\":\"input\"},{\"label\":\"Modal\",\"value\":\"modal\"},{\"label\":\"Table\",\"value\":\"table\"}]'\n value='[\"button\",\"modal\"]'\n></aithe-transfer>`,\n previewHeight: '420px',\n },\n\n 'fb-dialog': {\n demoCode: `<div style=\"display:flex;gap:12px;flex-wrap:wrap;\">\n <aithe-button id=\"open-dialog\" type=\"default\">Open Dialog</aithe-button>\n</div>\n<aithe-dialog id=\"demo-dialog\" title=\"Discard changes?\">This action will remove unsaved prompt edits.</aithe-dialog>`,\n demoSetup: (root) => {\n const dialog = root.querySelector<HTMLElement>('#demo-dialog') as HTMLElement & { visible: boolean };\n root.querySelector('#open-dialog')?.addEventListener('click', () => {\n dialog.visible = true;\n });\n },\n previewHeight: '240px',\n },\n 'fb-modal': {\n demoCode: `<div style=\"display:flex;gap:12px;flex-wrap:wrap;\">\n <aithe-button id=\"open-modal\" type=\"primary\">Open Modal</aithe-button>\n</div>\n<aithe-modal id=\"demo-modal\" title=\"Aithe Release Notes\">\n <p style=\"margin:0;color:var(--aithe-color-text-muted);\">The new build ships categorized exports and a live demo site.</p>\n</aithe-modal>`,\n demoSetup: (root) => {\n const modal = root.querySelector<HTMLElement>('#demo-modal') as HTMLElement & { open: boolean };\n root.querySelector('#open-modal')?.addEventListener('click', () => {\n modal.open = true;\n });\n },\n previewHeight: '240px',\n },\n 'fb-drawer': {\n demoCode: `<div style=\"display:flex;gap:12px;flex-wrap:wrap;\">\n <aithe-button id=\"open-drawer\" type=\"dashed\">Open Drawer</aithe-button>\n</div>\n<aithe-drawer id=\"demo-drawer\" title=\"Workspace Settings\">\n <p style=\"margin:0;color:var(--aithe-color-text-muted);\">Configure theme, density and deployment defaults.</p>\n</aithe-drawer>`,\n demoSetup: (root) => {\n const drawer = root.querySelector<HTMLElement>('#demo-drawer') as HTMLElement & { open: boolean };\n root.querySelector('#open-drawer')?.addEventListener('click', () => {\n drawer.open = true;\n });\n },\n previewHeight: '240px',\n },\n 'fb-tooltip': {\n demoCode: `<aithe-tooltip content=\"Realtime token usage insights\">\n <aithe-button type=\"default\">Tooltip</aithe-button>\n</aithe-tooltip>`,\n },\n 'fb-popover': {\n demoCode: `<aithe-popover>\n <aithe-button type=\"default\">Popover</aithe-button>\n <div slot=\"content\" style=\"display:grid;gap:8px;\">\n <strong>Assistant Context</strong>\n <span style=\"color:var(--aithe-color-text-muted);\">Aithe UI keeps tokens and themes isolated.</span>\n </div>\n</aithe-popover>`,\n },\n 'fb-dropdown': {\n demoCode: `<aithe-dropdown\n items='[{\"label\":\"Open playground\",\"value\":\"playground\",\"icon\":\"play\"},{\"label\":\"Themes\",\"value\":\"themes\",\"icon\":\"palette\",\"children\":[{\"label\":\"Light\",\"value\":\"light\"},{\"label\":\"Dark\",\"value\":\"dark\"},{\"label\":\"Blue\",\"value\":\"blue\"}]},{\"divider\":true,\"label\":\"\",\"value\":\"divider\"},{\"label\":\"Delete workspace\",\"value\":\"delete\",\"icon\":\"trash\",\"style\":\"danger\"}]'\n>\n <aithe-button type=\"default\">Dropdown</aithe-button>\n</aithe-dropdown>`,\n },\n 'fb-toast': {\n demoCode: `<div style=\"display:flex;gap:12px;flex-wrap:wrap;\">\n <aithe-button id=\"show-toast\" type=\"primary\">Show Toast</aithe-button>\n</div>\n<aithe-toast id=\"demo-toast\" content=\"\" duration=\"1800\"></aithe-toast>`,\n demoSetup: (root) => {\n const toast = root.querySelector<HTMLElement>('#demo-toast') as HTMLElement & {\n content: string;\n visible: boolean;\n };\n root.querySelector('#show-toast')?.addEventListener('click', () => {\n toast.content = 'Build finished successfully.';\n toast.visible = true;\n });\n },\n previewHeight: '180px',\n },\n 'fb-alert': {\n demoCode: `<aithe-alert type=\"warning\" title=\"Release Candidate\" closable>\n Accessibility review is still in progress.\n</aithe-alert>`,\n },\n 'fb-notification': {\n demoCode: `<div style=\"display:flex;gap:12px;flex-wrap:wrap;\">\n <aithe-button id=\"show-notice\" type=\"default\">Show Notification</aithe-button>\n</div>\n<aithe-notification id=\"demo-notification\" title=\"Deployment\" content=\"\" duration=\"2200\"></aithe-notification>`,\n demoSetup: (root) => {\n const notice = root.querySelector<HTMLElement>('#demo-notification') as HTMLElement & {\n content: string;\n open: boolean;\n };\n root.querySelector('#show-notice')?.addEventListener('click', () => {\n notice.content = 'The demo site theme has been synchronized.';\n notice.open = true;\n });\n },\n previewHeight: '180px',\n },\n 'fb-loading': {\n demoCode: `<div style=\"position:relative;min-height:160px;\">\n <aithe-loading spinning tip=\"Rebuilding component registry...\">\n <aithe-card style=\"display:block;height:160px;\">Content remains mounted below the overlay.</aithe-card>\n </aithe-loading>\n</div>`,\n previewHeight: '280px',\n },\n\n 'data-table': {\n demoCode: `<aithe-table\n striped\n selectable\n columns='[{\"key\":\"name\",\"title\":\"Module\",\"icon\":\"folder\",\"sortable\":true},{\"key\":\"owner\",\"title\":\"Owner\"},{\"key\":\"status\",\"title\":\"Status\",\"style\":\"success\",\"sortable\":true}]'\n data='[{\"id\":1,\"name\":\"Theme Engine\",\"owner\":\"Design Systems\",\"status\":\"Ready\"},{\"id\":2,\"name\":\"Component API\",\"owner\":\"Frontend Platform\",\"status\":\"Review\"},{\"id\":3,\"name\":\"Demo Router\",\"owner\":\"Experience Team\",\"status\":\"Ready\"}]'\n></aithe-table>`,\n previewHeight: '320px',\n },\n 'data-tabs': {\n demoCode: `<aithe-tab-group type=\"card\" active-key=\"tokens\">\n <aithe-tab-pane tab-key=\"tokens\" label=\"Tokens\">Theme tokens and semantic scales.</aithe-tab-pane>\n <aithe-tab-pane tab-key=\"components\" label=\"Components\">Enterprise-ready component catalog.</aithe-tab-pane>\n <aithe-tab-pane tab-key=\"demo\" label=\"Demo Site\">Sidebar routing and live editing.</aithe-tab-pane>\n</aithe-tab-group>`,\n previewHeight: '220px',\n },\n 'data-tab-pane': {\n demoCode: `<aithe-tab-group type=\"card\" active-key=\"tokens\">\n <aithe-tab-pane tab-key=\"tokens\" label=\"Tokens\">Theme tokens and semantic scales.</aithe-tab-pane>\n <aithe-tab-pane tab-key=\"components\" label=\"Components\">Enterprise-ready component catalog.</aithe-tab-pane>\n</aithe-tab-group>`,\n previewHeight: '220px',\n },\n 'data-tree': {\n demoCode: `<aithe-tree\n checkable\n expand-all\n data='[\n {\"label\":\"Foundation\",\"value\":\"foundation\",\"icon\":\"folder\",\"children\":[\n {\"label\":\"Theme\",\"value\":\"theme\",\"icon\":\"palette\",\"style\":\"primary\"},\n {\"label\":\"Typography\",\"value\":\"typography\",\"icon\":\"edit\"}\n ]},\n {\"label\":\"Components\",\"value\":\"components\",\"icon\":\"box\",\"children\":[\n {\"label\":\"Basic\",\"value\":\"basic\",\"style\":\"success\"},\n {\"label\":\"Feedback\",\"value\":\"feedback\",\"style\":\"warning\"}\n ]}\n ]'\n></aithe-tree>`,\n previewHeight: '260px',\n },\n 'data-pagination': {\n demoCode: `<aithe-pagination total=\"96\" page-size=\"12\" current-page=\"3\"></aithe-pagination>`,\n },\n\n 'disp-carousel': {\n demoCode: `<aithe-carousel autoplay interval=\"2400\">\n <div style=\"height:280px;display:grid;place-items:center;background:linear-gradient(135deg,#dbeafe,#eff6ff);font-size:28px;font-weight:700;\">Launch Faster</div>\n <div style=\"height:280px;display:grid;place-items:center;background:linear-gradient(135deg,#dcfce7,#f0fdf4);font-size:28px;font-weight:700;\">Theme Everything</div>\n <div style=\"height:280px;display:grid;place-items:center;background:linear-gradient(135deg,#ede9fe,#faf5ff);font-size:28px;font-weight:700;\">Ship Cross-Framework</div>\n</aithe-carousel>`,\n previewHeight: '320px',\n },\n 'disp-comparison': {\n demoCode: `<aithe-comparison ratio=\"52\">\n <div slot=\"before\" style=\"height:320px;display:grid;place-items:center;background:#f8fafc;color:#0f172a;font-size:28px;font-weight:700;\">Before</div>\n <div slot=\"after\" style=\"height:320px;display:grid;place-items:center;background:#0f172a;color:#eff6ff;font-size:28px;font-weight:700;\">After</div>\n</aithe-comparison>`,\n previewHeight: '360px',\n },\n 'disp-animated-image': {\n demoCode: `<aithe-animated-image src=\"data:image/svg+xml;utf8,${animatedSvg}\" speed=\"1.2\"></aithe-animated-image>`,\n previewHeight: '280px',\n },\n 'disp-markdown': {\n demoCode: `<aithe-markdown content=\"# Aithe UI\n\n- Lit + TypeScript + Web Components\n- Multi-theme design tokens\n- Live demo editor\n\n> Enterprise-grade component architecture.\n\n&#96;&#96;&#96;ts\nexport const theme = 'blue';\n&#96;&#96;&#96;\"></aithe-markdown>`,\n previewHeight: '340px',\n },\n\n 'prog-bar': {\n demoCode: `<div style=\"display:grid;gap:16px;max-width:420px;\">\n <aithe-progress-bar percent=\"42\"></aithe-progress-bar>\n <aithe-progress-bar percent=\"76\" status=\"success\"></aithe-progress-bar>\n <aithe-progress-bar percent=\"91\" status=\"danger\"></aithe-progress-bar>\n</div>`,\n },\n 'prog-ring': {\n demoCode: `<aithe-progress-ring percent=\"68\" size=\"132\" status=\"warning\"></aithe-progress-ring>`,\n previewHeight: '180px',\n },\n 'prog-spinner': {\n demoCode: `<div style=\"display:flex;gap:16px;align-items:center;\">\n <aithe-spinner size=\"sm\"></aithe-spinner>\n <aithe-spinner size=\"md\"></aithe-spinner>\n <aithe-spinner variant=\"dots\" color=\"var(--aithe-success-6)\"></aithe-spinner>\n</div>`,\n },\n 'prog-skeleton': {\n demoCode: `<div style=\"display:grid;gap:16px;\">\n <aithe-skeleton rows=\"3\"></aithe-skeleton>\n <aithe-skeleton rows=\"1\" shape=\"circle\"></aithe-skeleton>\n <aithe-skeleton rows=\"1\" shape=\"rect\"></aithe-skeleton>\n</div>`,\n previewHeight: '320px',\n },\n\n 'cont-callout': {\n demoCode: `<aithe-callout type=\"primary\" title=\"Shipping Note\">\n Aithe UI components inherit theme changes automatically through CSS variables.\n</aithe-callout>`,\n },\n 'cont-details': {\n demoCode: `<aithe-details summary=\"What does the global theme initializer do?\">\n It registers design tokens, restores the persisted theme and synchronizes the root attribute.\n</aithe-details>`,\n previewHeight: '200px',\n },\n 'cont-scroller': {\n demoCode: `<aithe-scroller height=\"220px\" shadow>\n <div style=\"height:560px;display:grid;place-items:center;color:var(--aithe-color-text-muted);\">\n Scroll inside this container to observe edge shadows and themed scrollbars.\n </div>\n</aithe-scroller>`,\n previewHeight: '260px',\n },\n 'cont-split-panel': {\n demoCode: `<aithe-split-panel value=\"38\">\n <div slot=\"start\" style=\"height:240px;display:grid;place-items:center;background:var(--aithe-neutral-1);\">Navigator</div>\n <div slot=\"end\" style=\"height:240px;display:grid;place-items:center;background:var(--aithe-color-surface);\">Editor</div>\n</aithe-split-panel>`,\n previewHeight: '300px',\n },\n};\n\nexport function getDemoData(entryKey: string): Pick<DocEntry, 'demoCode' | 'demoSetup' | 'previewHeight'> | undefined {\n return demoMap[entryKey];\n}","import type { DocCategory, DocEntry } from '../docs-viewer';\nimport { getDemoData } from '../demo-data';\n\nimport { html as summaryHtml } from '../../../docs/api/summary.md';\nimport { html as buttonHtml } from '../../../docs/api/basic/button.md';\nimport { html as buttonGroupHtml } from '../../../docs/api/basic/button-group.md';\nimport { html as iconHtml } from '../../../docs/api/basic/icon.md';\nimport { html as inputHtml } from '../../../docs/api/basic/input.md';\nimport { html as textareaHtml } from '../../../docs/api/basic/textarea.md';\nimport { html as cardHtml } from '../../../docs/api/basic/card.md';\nimport { html as badgeHtml } from '../../../docs/api/basic/badge.md';\nimport { html as tagHtml } from '../../../docs/api/basic/tag.md';\nimport { html as avatarHtml } from '../../../docs/api/basic/avatar.md';\nimport { html as dividerHtml } from '../../../docs/api/basic/divider.md';\nimport { html as emptyHtml } from '../../../docs/api/basic/empty.md';\nimport { html as chipHtml } from '../../../docs/api/basic/chip.md';\n\nimport { html as containerHtml } from '../../../docs/api/layout/container.md';\nimport { html as rowHtml } from '../../../docs/api/layout/row.md';\nimport { html as colHtml } from '../../../docs/api/layout/col.md';\nimport { html as flexHtml } from '../../../docs/api/layout/flex.md';\nimport { html as spaceHtml } from '../../../docs/api/layout/space.md';\nimport { html as pageContainerHtml } from '../../../docs/api/layout/page-container.md';\nimport { html as pageHtml } from '../../../docs/api/layout/page.md';\nimport { html as collapseHtml } from '../../../docs/api/layout/collapse.md';\nimport { html as collapseItemHtml } from '../../../docs/api/layout/collapse-item.md';\nimport { html as timelineHtml } from '../../../docs/api/layout/timeline.md';\nimport { html as timelineItemHtml } from '../../../docs/api/layout/timeline-item.md';\nimport { html as affixHtml } from '../../../docs/api/layout/affix.md';\n\nimport { html as menuHtml } from '../../../docs/api/navigation/menu.md';\nimport { html as menuItemHtml } from '../../../docs/api/navigation/menu-item.md';\nimport { html as subMenuHtml } from '../../../docs/api/navigation/sub-menu.md';\nimport { html as breadcrumbHtml } from '../../../docs/api/navigation/breadcrumb.md';\nimport { html as breadcrumbItemHtml } from '../../../docs/api/navigation/breadcrumb-item.md';\nimport { html as stepsHtml } from '../../../docs/api/navigation/steps.md';\nimport { html as backTopHtml } from '../../../docs/api/navigation/back-top.md';\n\nimport { html as checkboxHtml } from '../../../docs/api/form/checkbox.md';\nimport { html as checkboxGroupHtml } from '../../../docs/api/form/checkbox-group.md';\nimport { html as radioHtml } from '../../../docs/api/form/radio.md';\nimport { html as radioGroupHtml } from '../../../docs/api/form/radio-group.md';\nimport { html as selectHtml } from '../../../docs/api/form/select.md';\nimport { html as switchHtml } from '../../../docs/api/form/switch.md';\nimport { html as colorPickerHtml } from '../../../docs/api/form/color-picker.md';\nimport { html as comboboxHtml } from '../../../docs/api/form/combobox.md';\nimport { html as datePickerHtml } from '../../../docs/api/form/date-picker.md';\nimport { html as timePickerHtml } from '../../../docs/api/form/time-picker.md';\nimport { html as sliderHtml } from '../../../docs/api/form/slider.md';\nimport { html as rateHtml } from '../../../docs/api/form/rate.md';\nimport { html as formHtml } from '../../../docs/api/form/form.md';\nimport { html as formItemHtml } from '../../../docs/api/form/form-item.md';\nimport { html as uploadHtml } from '../../../docs/api/form/upload.md';\nimport { html as transferHtml } from '../../../docs/api/form/transfer.md';\n\nimport { html as dialogHtml } from '../../../docs/api/feedback/dialog.md';\nimport { html as modalHtml } from '../../../docs/api/feedback/modal.md';\nimport { html as drawerHtml } from '../../../docs/api/feedback/drawer.md';\nimport { html as tooltipHtml } from '../../../docs/api/feedback/tooltip.md';\nimport { html as popoverHtml } from '../../../docs/api/feedback/popover.md';\nimport { html as dropdownHtml } from '../../../docs/api/feedback/dropdown.md';\nimport { html as toastHtml } from '../../../docs/api/feedback/toast.md';\nimport { html as alertHtml } from '../../../docs/api/feedback/alert.md';\nimport { html as notificationHtml } from '../../../docs/api/feedback/notification.md';\nimport { html as loadingHtml } from '../../../docs/api/feedback/loading.md';\n\nimport { html as tableHtml } from '../../../docs/api/data/table.md';\nimport { html as tabsHtml } from '../../../docs/api/data/tabs.md';\nimport { html as tabPaneHtml } from '../../../docs/api/data/tab-pane.md';\nimport { html as treeHtml } from '../../../docs/api/data/tree.md';\nimport { html as paginationHtml } from '../../../docs/api/data/pagination.md';\n\nimport { html as carouselHtml } from '../../../docs/api/display/carousel.md';\nimport { html as comparisonHtml } from '../../../docs/api/display/comparison.md';\nimport { html as animatedImageHtml } from '../../../docs/api/display/animated-image.md';\nimport { html as markdownHtml } from '../../../docs/api/display/markdown.md';\n\nimport { html as progressBarHtml } from '../../../docs/api/progress/progress-bar.md';\nimport { html as progressRingHtml } from '../../../docs/api/progress/progress-ring.md';\nimport { html as spinnerHtml } from '../../../docs/api/progress/spinner.md';\nimport { html as skeletonHtml } from '../../../docs/api/progress/skeleton.md';\n\nimport { html as calloutHtml } from '../../../docs/api/container/callout.md';\nimport { html as detailsHtml } from '../../../docs/api/container/details.md';\nimport { html as scrollerHtml } from '../../../docs/api/container/scroller.md';\nimport { html as splitPanelHtml } from '../../../docs/api/container/split-panel.md';\n\nconst docCategories: DocCategory[] = [\n {\n key: 'summary',\n label: 'Overview',\n entries: [\n { key: 'summary', label: 'API Summary', html: summaryHtml }\n ],\n },\n {\n key: 'basic',\n label: 'Basic',\n entries: [\n { key: 'basic-button', label: 'Button', html: buttonHtml },\n { key: 'basic-button-group', label: 'Button Group', html: buttonGroupHtml },\n { key: 'basic-icon', label: 'Icon', html: iconHtml },\n { key: 'basic-input', label: 'Input', html: inputHtml },\n { key: 'basic-textarea', label: 'Textarea', html: textareaHtml },\n { key: 'basic-card', label: 'Card', html: cardHtml },\n { key: 'basic-badge', label: 'Badge', html: badgeHtml },\n { key: 'basic-tag', label: 'Tag', html: tagHtml },\n { key: 'basic-avatar', label: 'Avatar', html: avatarHtml },\n { key: 'basic-divider', label: 'Divider', html: dividerHtml },\n { key: 'basic-empty', label: 'Empty', html: emptyHtml },\n { key: 'basic-chip', label: 'Chip', html: chipHtml },\n ],\n },\n {\n key: 'layout',\n label: 'Layout',\n entries: [\n { key: 'layout-container', label: 'Container', html: containerHtml },\n { key: 'layout-row', label: 'Row', html: rowHtml },\n { key: 'layout-col', label: 'Col', html: colHtml },\n { key: 'layout-flex', label: 'Flex', html: flexHtml },\n { key: 'layout-space', label: 'Space', html: spaceHtml },\n { key: 'layout-page-container', label: 'Page Container', html: pageContainerHtml },\n { key: 'layout-page', label: 'Page', html: pageHtml },\n { key: 'layout-collapse', label: 'Collapse', html: collapseHtml },\n { key: 'layout-collapse-item', label: 'Collapse Item', html: collapseItemHtml },\n { key: 'layout-timeline', label: 'Timeline', html: timelineHtml },\n { key: 'layout-timeline-item', label: 'Timeline Item', html: timelineItemHtml },\n { key: 'layout-affix', label: 'Affix', html: affixHtml },\n ],\n },\n {\n key: 'navigation',\n label: 'Navigation',\n entries: [\n { key: 'nav-menu', label: 'Menu', html: menuHtml },\n { key: 'nav-menu-item', label: 'Menu Item', html: menuItemHtml },\n { key: 'nav-sub-menu', label: 'Sub Menu', html: subMenuHtml },\n { key: 'nav-breadcrumb', label: 'Breadcrumb', html: breadcrumbHtml },\n { key: 'nav-breadcrumb-item', label: 'Breadcrumb Item', html: breadcrumbItemHtml },\n { key: 'nav-steps', label: 'Steps', html: stepsHtml },\n { key: 'nav-back-top', label: 'Back Top', html: backTopHtml },\n ],\n },\n {\n key: 'form',\n label: 'Form',\n entries: [\n { key: 'form-checkbox', label: 'Checkbox', html: checkboxHtml },\n { key: 'form-checkbox-group', label: 'Checkbox Group', html: checkboxGroupHtml },\n { key: 'form-radio', label: 'Radio', html: radioHtml },\n { key: 'form-radio-group', label: 'Radio Group', html: radioGroupHtml },\n { key: 'form-select', label: 'Select', html: selectHtml },\n { key: 'form-switch', label: 'Switch', html: switchHtml },\n { key: 'form-color-picker', label: 'Color Picker', html: colorPickerHtml },\n { key: 'form-combobox', label: 'Combobox', html: comboboxHtml },\n { key: 'form-date-picker', label: 'Date Picker', html: datePickerHtml },\n { key: 'form-time-picker', label: 'Time Picker', html: timePickerHtml },\n { key: 'form-slider', label: 'Slider', html: sliderHtml },\n { key: 'form-rate', label: 'Rate', html: rateHtml },\n { key: 'form-form', label: 'Form', html: formHtml },\n { key: 'form-form-item', label: 'Form Item', html: formItemHtml },\n { key: 'form-upload', label: 'Upload', html: uploadHtml },\n { key: 'form-transfer', label: 'Transfer', html: transferHtml },\n ],\n },\n {\n key: 'feedback',\n label: 'Feedback',\n entries: [\n { key: 'fb-dialog', label: 'Dialog', html: dialogHtml },\n { key: 'fb-modal', label: 'Modal', html: modalHtml },\n { key: 'fb-drawer', label: 'Drawer', html: drawerHtml },\n { key: 'fb-tooltip', label: 'Tooltip', html: tooltipHtml },\n { key: 'fb-popover', label: 'Popover', html: popoverHtml },\n { key: 'fb-dropdown', label: 'Dropdown', html: dropdownHtml },\n { key: 'fb-toast', label: 'Toast', html: toastHtml },\n { key: 'fb-alert', label: 'Alert', html: alertHtml },\n { key: 'fb-notification', label: 'Notification', html: notificationHtml },\n { key: 'fb-loading', label: 'Loading', html: loadingHtml },\n ],\n },\n {\n key: 'data',\n label: 'Data',\n entries: [\n { key: 'data-table', label: 'Table', html: tableHtml },\n { key: 'data-tabs', label: 'Tabs', html: tabsHtml },\n { key: 'data-tab-pane', label: 'Tab Pane', html: tabPaneHtml },\n { key: 'data-tree', label: 'Tree', html: treeHtml },\n { key: 'data-pagination', label: 'Pagination', html: paginationHtml },\n ],\n },\n {\n key: 'display',\n label: 'Display',\n entries: [\n { key: 'disp-carousel', label: 'Carousel', html: carouselHtml },\n { key: 'disp-comparison', label: 'Comparison', html: comparisonHtml },\n { key: 'disp-animated-image', label: 'Animated Image', html: animatedImageHtml },\n { key: 'disp-markdown', label: 'Markdown', html: markdownHtml },\n ],\n },\n {\n key: 'progress',\n label: 'Progress',\n entries: [\n { key: 'prog-bar', label: 'Progress Bar', html: progressBarHtml },\n { key: 'prog-ring', label: 'Progress Ring', html: progressRingHtml },\n { key: 'prog-spinner', label: 'Spinner', html: spinnerHtml },\n { key: 'prog-skeleton', label: 'Skeleton', html: skeletonHtml },\n ],\n },\n {\n key: 'container',\n label: 'Container',\n entries: [\n { key: 'cont-callout', label: 'Callout', html: calloutHtml },\n { key: 'cont-details', label: 'Details', html: detailsHtml },\n { key: 'cont-scroller', label: 'Scroller', html: scrollerHtml },\n { key: 'cont-split-panel', label: 'Split Panel', html: splitPanelHtml },\n ],\n },\n];\n\nfunction enrichWithDemo(entries: DocEntry[]): DocEntry[] {\n return entries.map((entry) => {\n const demo = getDemoData(entry.key);\n if (!demo) return entry;\n return { ...entry, ...demo };\n });\n}\n\ndocCategories.forEach((cat) => {\n cat.entries = enrichWithDemo(cat.entries);\n});\n\nexport { docCategories };","import { LitElement, css, html } from 'lit';\nimport { customElement, state } from 'lit/decorators.js';\n\nimport '../../src/index';\nimport { getAitheTheme, initializeAitheUI, setAitheTheme } from '../../src/global';\nimport './docs-viewer';\nimport { docCategories } from './pages/docs';\n\ninitializeAitheUI();\n\nconst themes = ['light', 'dark', 'gray', 'blue'] as const;\n\n@customElement('aithe-api-app')\nexport class AitheApiApp extends LitElement {\n @state() private theme = getAitheTheme();\n\n static readonly styles = css`\n :host {\n display: block;\n min-height: 100vh;\n background:\n radial-gradient(circle at top right, rgba(77, 141, 255, 0.12), transparent 26%),\n var(--aithe-color-bg-subtle);\n color: var(--aithe-color-text);\n font-family: var(--aithe-font-family);\n }\n\n .shell {\n display: grid;\n grid-template-rows: auto 1fr;\n min-height: 100vh;\n }\n\n .topbar {\n position: sticky;\n top: 0;\n z-index: 5;\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--aithe-space-4);\n padding: var(--aithe-space-4) var(--aithe-space-6);\n border-bottom: 1px solid var(--aithe-color-border);\n background: color-mix(in srgb, var(--aithe-color-surface-elevated) 84%, transparent);\n backdrop-filter: blur(18px);\n }\n\n .brand {\n display: grid;\n gap: 4px;\n }\n\n .name {\n font-size: var(--aithe-font-size-xl);\n font-weight: var(--aithe-font-weight-bold);\n letter-spacing: 0.02em;\n }\n\n .meta {\n color: var(--aithe-color-text-muted);\n font-size: var(--aithe-font-size-sm);\n }\n\n .topbar-actions {\n display: flex;\n align-items: center;\n gap: var(--aithe-space-3);\n }\n\n .action-btn {\n display: inline-flex;\n align-items: center;\n gap: var(--aithe-space-2);\n min-height: 34px;\n padding: 0 var(--aithe-space-3);\n border: 1px solid var(--aithe-color-border);\n border-radius: var(--aithe-radius-full);\n background: var(--aithe-color-surface);\n color: var(--aithe-color-text);\n cursor: pointer;\n font-size: var(--aithe-font-size-sm);\n transition: border-color 0.15s, background 0.15s;\n }\n\n .action-btn:hover {\n border-color: var(--aithe-primary-6);\n }\n\n .link-btn {\n display: inline-flex;\n align-items: center;\n gap: var(--aithe-space-2);\n min-height: 34px;\n padding: 0 var(--aithe-space-3);\n border: 1px solid var(--aithe-color-border);\n border-radius: var(--aithe-radius-full);\n background: var(--aithe-color-surface);\n color: var(--aithe-color-text);\n cursor: pointer;\n font-size: var(--aithe-font-size-sm);\n text-decoration: none;\n transition: border-color 0.15s, background 0.15s;\n }\n\n .link-btn:hover {\n border-color: var(--aithe-primary-6);\n color: var(--aithe-primary-6);\n }\n\n .action-btn .dot {\n width: 14px;\n height: 14px;\n border-radius: var(--aithe-radius-full);\n background: var(--aithe-primary-6);\n }\n\n .docs-page {\n width: min(1600px, calc(100vw - 48px));\n margin: 0 auto;\n padding: var(--aithe-space-6) 0;\n }\n `;\n\n private changeTheme(theme: (typeof themes)[number]): void {\n setAitheTheme(theme);\n this.theme = getAitheTheme();\n }\n\n render() {\n const themeColors: Record<string, string> = {\n light: '#f5f5f5',\n dark: '#1a1a2e',\n gray: '#8c8c8c',\n blue: '#4d8dff',\n };\n\n const themeItems = themes.map((t) => ({\n value: t,\n label: t.charAt(0).toUpperCase() + t.slice(1),\n icon: html`<span style=\"display:inline-block;width:12px;height:12px;border-radius:50%;background:${themeColors[t]};border:1px solid rgba(0,0,0,0.15);\"></span>`,\n }));\n\n return html`\n <div class=\"shell\">\n <header class=\"topbar\">\n <div class=\"brand\">\n <div class=\"name\">Aithe UI API Docs</div>\n <div class=\"meta\">Lit + TypeScript + Web Components enterprise design system</div>\n </div>\n <div class=\"topbar-actions\">\n <a class=\"link-btn\" href=\"/apps/demo/index.html\">\n Demo\n </a>\n <aithe-dropdown\n .items=${themeItems}\n placement=\"bottom-end\"\n @aithe-select=${(event: CustomEvent<{ value: string }>) => {\n this.changeTheme(event.detail.value as (typeof themes)[number]);\n }}\n >\n <button class=\"action-btn\" type=\"button\">\n <span class=\"dot\"></span>\n ${this.theme.charAt(0).toUpperCase() + this.theme.slice(1)}\n </button>\n </aithe-dropdown>\n </div>\n </header>\n\n <div class=\"docs-page\">\n <aithe-docs-viewer .categories=${docCategories}></aithe-docs-viewer>\n </div>\n </div>\n `;\n }\n}"],"names":["AitheDocsViewer","LitElement","event","anchor","href","segments","lastTwo","catDir","filePart","_a","_b","catKey","cat","entry","entryKey","changed","error","currentHtml","hasDemo","html","css","__decorateClass","property","state","query","customElement","animatedSvg","demoMap","root","button","form","dialog","modal","drawer","toast","notice","getDemoData","docCategories","summaryHtml","buttonHtml","buttonGroupHtml","iconHtml","inputHtml","textareaHtml","cardHtml","badgeHtml","tagHtml","avatarHtml","dividerHtml","emptyHtml","chipHtml","containerHtml","rowHtml","colHtml","flexHtml","spaceHtml","pageContainerHtml","pageHtml","collapseHtml","collapseItemHtml","timelineHtml","timelineItemHtml","affixHtml","menuHtml","menuItemHtml","subMenuHtml","breadcrumbHtml","breadcrumbItemHtml","stepsHtml","backTopHtml","checkboxHtml","checkboxGroupHtml","radioHtml","radioGroupHtml","selectHtml","switchHtml","colorPickerHtml","comboboxHtml","datePickerHtml","timePickerHtml","sliderHtml","rateHtml","formHtml","formItemHtml","uploadHtml","transferHtml","dialogHtml","modalHtml","drawerHtml","tooltipHtml","popoverHtml","dropdownHtml","toastHtml","alertHtml","notificationHtml","loadingHtml","tableHtml","tabsHtml","tabPaneHtml","treeHtml","paginationHtml","carouselHtml","comparisonHtml","animatedImageHtml","markdownHtml","progressBarHtml","progressRingHtml","spinnerHtml","skeletonHtml","calloutHtml","detailsHtml","scrollerHtml","splitPanelHtml","enrichWithDemo","entries","demo","initializeAitheUI","themes","AitheApiApp","getAitheTheme","theme","setAitheTheme","themeColors","themeItems","t"],"mappings":"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;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}
@@ -0,0 +1,59 @@
1
+ import { LitElement } from 'lit';
2
+ /**
3
+ * Minimal shared base element for all Aithe UI components.
4
+ * 所有 Aithe UI 组件的最小共享基元素。
5
+ *
6
+ * Provides common reactive properties (`variant`, `size`, `theme`, `disabled`),
7
+ * an `emit()` helper for composed custom events, theme resolution, and
8
+ * focus-trapping utilities.
9
+ * 提供通用响应式属性(`variant`、`size`、`theme`、`disabled`)、
10
+ * 组合自定义事件的 `emit()` 辅助方法、主题解析和焦点陷阱工具。
11
+ */
12
+ export declare class AitheElement extends LitElement {
13
+ /** Visual variant. Default: `default`. 视觉变体,默认 `default`。 */
14
+ variant: string;
15
+ /** Shared size scale. Default: `md`. 共享尺寸规格,默认 `md`。 */
16
+ size: string;
17
+ /** Optional local theme override. 可选的本地主题覆盖。 */
18
+ theme: string;
19
+ /** Disabled state. Default: `false`. 禁用状态,默认 `false`。 */
20
+ disabled: boolean;
21
+ /**
22
+ * Register the default theme on first instantiation.
23
+ * 在首次实例化时注册默认主题。
24
+ */
25
+ constructor();
26
+ /**
27
+ * Emits a composed custom event with standard Aithe defaults.
28
+ * 使用 Aithe 默认值发出组合自定义事件。
29
+ *
30
+ * @param type - Event type string. 事件类型字符串。
31
+ * @param detail - Optional payload attached to the event. 附带在事件上的可选载荷。
32
+ */
33
+ emit(type: string, detail?: unknown): void;
34
+ /**
35
+ * Final resolved theme name (local override → closest themed ancestor → global).
36
+ * 最终解析的主题名称(本地覆盖 → 最近带主题祖先 → 全局)。
37
+ */
38
+ get computedTheme(): string;
39
+ connectedCallback(): void;
40
+ /**
41
+ * Focus the first focusable child inside the render root.
42
+ * 聚焦渲染根中的第一个可聚焦子元素。
43
+ *
44
+ * @param root - Scope to search within. Defaults to `this.renderRoot`. 搜索范围,默认为 `this.renderRoot`。
45
+ */
46
+ protected focusFirst(root?: ParentNode): void;
47
+ /**
48
+ * Trap Tab focus within a root container (shift+Tab wraps to last, Tab wraps to first).
49
+ * 在根容器内捕获 Tab 焦点(shift+Tab 跳到最后,Tab 跳到第一个)。
50
+ *
51
+ * @param event - The keyboard event. 键盘事件。
52
+ * @param root - Scope to trap within. Defaults to `this.renderRoot`. 捕获范围,默认为 `this.renderRoot`。
53
+ */
54
+ protected trapFocus(event: KeyboardEvent, root?: ParentNode): void;
55
+ /** Sync `aria-disabled` and `data-aithe-theme` on attribute changes. 在属性变化时同步 `aria-disabled` 和 `data-aithe-theme`。 */
56
+ private syncBaseA11yState;
57
+ attributeChangedCallback(name: string, oldValue: string | null, newValue: string | null): void;
58
+ }
59
+ //# sourceMappingURL=aithe-element.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aithe-element.d.ts","sourceRoot":"","sources":["../../../src/base/aithe-element.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAWjC;;;;;;;;;GASG;AACH,qBAAa,YAAa,SAAQ,UAAU;IAC1C,6DAA6D;IACjC,OAAO,SAAa;IAEhD,wDAAwD;IAC5B,IAAI,SAAQ;IAExC,gDAAgD;IACpB,KAAK,SAAM;IAEvC,yDAAyD;IACb,QAAQ,UAAS;IAE7D;;;OAGG;;IAMH;;;;;;OAMG;IACH,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,IAAI;IAI1C;;;OAGG;IACH,IAAI,aAAa,IAAI,MAAM,CAE1B;IAEQ,iBAAiB,IAAI,IAAI;IAKlC;;;;;OAKG;IACH,SAAS,CAAC,UAAU,CAAC,IAAI,GAAE,UAA4B,GAAG,IAAI;IAI9D;;;;;;OAMG;IACH,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE,aAAa,EAAE,IAAI,GAAE,UAA4B,GAAG,IAAI;IA0BnF,uHAAuH;IACvH,OAAO,CAAC,iBAAiB;IAYhB,wBAAwB,CAC/B,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,GAAG,IAAI,EACvB,QAAQ,EAAE,MAAM,GAAG,IAAI,GACtB,IAAI;CAIR"}
@@ -0,0 +1,31 @@
1
+ import { AitheElement } from '../../core/aithe-element';
2
+ /**
3
+ * Avatar displaying an image, initials, or custom content.
4
+ * 头像组件,显示图片、首字母或自定义内容。
5
+ *
6
+ * @slot - Default slot for fallback content when image fails. 图片加载失败时的后备内容。
7
+ * @example
8
+ * ```html
9
+ * <aithe-avatar src="/photo.jpg" alt="User" shape="circle" size="md"></aithe-avatar>
10
+ * <aithe-avatar text="Jane Smith" shape="square" size="lg"></aithe-avatar>
11
+ * ```
12
+ */
13
+ export declare class AitheAvatar extends AitheElement {
14
+ /** Image source URL. 图片源地址。 */
15
+ src: string;
16
+ /** Alt text for the image. 图片替代文本。 */
17
+ alt: string;
18
+ /** Text used to generate initials fallback. 用于生成首字母后备显示的文本。 */
19
+ text: string;
20
+ /** Avatar shape variant. 头像形状。 */
21
+ shape: 'circle' | 'square';
22
+ /** Avatar size preset. 头像尺寸预设。 */
23
+ size: 'sm' | 'md' | 'lg';
24
+ /** Whether the image failed to load. 图片是否加载失败。 */
25
+ private imageBroken;
26
+ static readonly styles: (import("lit").CSSResult | import("lit").CSSResult[])[];
27
+ /** Extracts up to two initials from the text property. 从 text 属性提取最多两个首字母。 */
28
+ private get fallbackText();
29
+ render(): import("lit-html").TemplateResult<1>;
30
+ }
31
+ //# sourceMappingURL=avatar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"avatar.d.ts","sourceRoot":"","sources":["../../../../src/components/basic/avatar.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAIxD;;;;;;;;;;GAUG;AACH,qBACa,WAAY,SAAQ,YAAY;IAC3C,+BAA+B;IACH,GAAG,SAAM;IACrC,sCAAsC;IACV,GAAG,SAAM;IACrC,+DAA+D;IACnC,IAAI,SAAM;IACtC,kCAAkC;IACN,KAAK,EAAE,QAAQ,GAAG,QAAQ,CAAY;IAClE,kCAAkC;IACN,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAQ;IAE5D,kDAAkD;IACzC,OAAO,CAAC,WAAW,CAAS;IAErC,MAAM,CAAC,QAAQ,CAAC,MAAM,0DAmDpB;IAEF,8EAA8E;IAC9E,OAAO,KAAK,YAAY,GAQvB;IAED,MAAM;CAuBP"}
@@ -0,0 +1,33 @@
1
+ import { AitheElement } from '../../core/aithe-element';
2
+ /**
3
+ * Badge / count indicator overlaid on an anchor element.
4
+ * 徽标/计数指示器,覆盖在锚点元素上。
5
+ *
6
+ * @slot - Default slot for the anchor element. 锚点元素内容。
7
+ * @slot badge - Custom badge content (overrides `value` display). 自定义徽标内容。
8
+ * @example
9
+ * ```html
10
+ * <aithe-badge value="5">
11
+ * <aithe-button type="default">Messages</aithe-button>
12
+ * </aithe-badge>
13
+ * ```
14
+ */
15
+ export declare class AitheBadge extends AitheElement {
16
+ /** Badge display value (number or string). 徽标显示值(数字或字符串)。 */
17
+ value: string;
18
+ /** Maximum count before showing "N+" format. 超过此数值显示"N+"格式。 */
19
+ maxCount: number;
20
+ /** Whether to show a small dot instead of a count. 是否显示小圆点而非数字。 */
21
+ dot: boolean;
22
+ /** Badge position relative to the anchor. 徽标相对于锚点的位置。 */
23
+ position: 'top-right' | 'top-left' | 'bottom-right' | 'bottom-left';
24
+ private readonly badgeSlotNodes;
25
+ private hasBadgeSlot;
26
+ static readonly styles: (import("lit").CSSResult | import("lit").CSSResult[])[];
27
+ /** Syncs badge slot presence state. 同步徽标插槽状态。 */
28
+ private readonly syncSlot;
29
+ /** Computes the formatted badge display value. 计算格式化后的徽标显示值。 */
30
+ private get displayValue();
31
+ render(): import("lit-html").TemplateResult<1>;
32
+ }
33
+ //# sourceMappingURL=badge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"badge.d.ts","sourceRoot":"","sources":["../../../../src/components/basic/badge.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGxD;;;;;;;;;;;;GAYG;AACH,qBACa,UAAW,SAAQ,YAAY;IAC1C,6DAA6D;IACjC,KAAK,SAAM;IACvC,+DAA+D;IACX,QAAQ,SAAM;IAClE,mEAAmE;IACtC,GAAG,UAAS;IACzC,yDAAyD;IAC7B,QAAQ,EAAE,WAAW,GAAG,UAAU,GAAG,cAAc,GAAG,aAAa,CACjF;IAE4B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAiB;IACjF,OAAO,CAAC,YAAY,CAAS;IAEtC,MAAM,CAAC,QAAQ,CAAC,MAAM,0DA6DpB;IAEF,iDAAiD;IACjD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAEvB;IAEF,gEAAgE;IAChE,OAAO,KAAK,YAAY,GAYvB;IAED,MAAM;CAmBP"}
@@ -0,0 +1,23 @@
1
+ import { AitheElement } from '../../base/aithe-element';
2
+ /**
3
+ * Button group layout helper for consistent spacing.
4
+ * 按钮组布局辅助组件,提供统一间距。
5
+ *
6
+ * @slot - Default slot for button elements. 按钮元素内容。
7
+ * @example
8
+ * ```html
9
+ * <aithe-button-group gap="var(--aithe-space-3)">
10
+ * <aithe-button>Cancel</aithe-button>
11
+ * <aithe-button type="primary">Submit</aithe-button>
12
+ * </aithe-button-group>
13
+ * ```
14
+ */
15
+ export declare class AitheButtonGroup extends AitheElement {
16
+ /** Gap between buttons (CSS value). 按钮间距(CSS 值)。 */
17
+ gap: string;
18
+ /** Whether buttons are stacked vertically. 是否垂直排列按钮。 */
19
+ vertical: boolean;
20
+ static readonly styles: (import("lit").CSSResult | import("lit").CSSResult[])[];
21
+ render(): import("lit-html").TemplateResult<1>;
22
+ }
23
+ //# sourceMappingURL=button-group.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button-group.d.ts","sourceRoot":"","sources":["../../../../src/components/basic/button-group.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAIxD;;;;;;;;;;;;GAYG;AACH,qBACa,gBAAiB,SAAQ,YAAY;IAChD,oDAAoD;IACxB,GAAG,SAA0B;IACzD,wDAAwD;IAC3B,QAAQ,UAAS;IAE9C,MAAM,CAAC,QAAQ,CAAC,MAAM,0DAQpB;IAEF,MAAM;CAkBP"}
@@ -0,0 +1,44 @@
1
+ import { AitheElement } from '../../core/aithe-element';
2
+ /**
3
+ * Button component with multiple visual types, sizes, and states.
4
+ * 按钮组件,支持多种视觉类型、尺寸和状态。
5
+ *
6
+ * @slot - Default slot for button label. 默认插槽,用于按钮标签。
7
+ * @slot prefix - Icon or content before the label. 标签前的图标或内容。
8
+ * @slot suffix - Icon or content after the label. 标签后的图标或内容。
9
+ *
10
+ * @fires aithe-click - Emitted when the button is clicked (not when disabled/loading). 按钮被点击时发出(禁用/加载时不发出)。
11
+ *
12
+ * @example
13
+ * ```html
14
+ * <aithe-button type="primary" size="medium">Submit</aithe-button>
15
+ * <aithe-button type="danger" loading>Deleting...</aithe-button>
16
+ * ```
17
+ */
18
+ export declare class AitheButton extends AitheElement {
19
+ /** Visual type of the button. 按钮的视觉类型。 */
20
+ type: 'primary' | 'default' | 'dashed' | 'text' | 'link';
21
+ /** Size scale of the button. 按钮的尺寸规格。 */
22
+ size: 'small' | 'medium' | 'large';
23
+ /** Display title for the button (shown as tooltip). 按钮的显示标题(作为工具提示)。 */
24
+ title: string;
25
+ /** Icon name to display before the label. 在标签前显示的图标名称。 */
26
+ icon: string;
27
+ /** Whether the button is disabled. 按钮是否禁用。 */
28
+ disabled: boolean;
29
+ /** Whether the button shows a loading spinner. 按钮是否显示加载旋转器。 */
30
+ loading: boolean;
31
+ /** Whether the button uses danger styling. 按钮是否使用危险样式。 */
32
+ danger: boolean;
33
+ /** Whether the button spans the full width of its container. 按钮是否占满容器宽度。 */
34
+ block: boolean;
35
+ static readonly styles: (import("lit").CSSResult | import("lit").CSSResult[])[];
36
+ /**
37
+ * Handle click: prevent interaction when disabled or loading,
38
+ * then emit `aithe-click` with the original mouse event.
39
+ * 处理点击:在禁用或加载时阻止交互,然后附带原始鼠标事件发出 `aithe-click`。
40
+ */
41
+ private readonly handleClick;
42
+ render(): import("lit-html").TemplateResult<1>;
43
+ }
44
+ //# sourceMappingURL=button.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../../../src/components/basic/button.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGxD;;;;;;;;;;;;;;;GAeG;AACH,qBACa,WAAY,SAAQ,YAAY;IAC3C,0CAA0C;IACd,IAAI,EAAE,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAa;IACjG,yCAAyC;IACb,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAY;IAC1E,wEAAwE;IAC5C,KAAK,SAAM;IACvC,0DAA0D;IAC9B,IAAI,SAAM;IACtC,8CAA8C;IACF,QAAQ,UAAS;IAC7D,+DAA+D;IACnB,OAAO,UAAS;IAC5D,0DAA0D;IACd,MAAM,UAAS;IAC3D,4EAA4E;IAChC,KAAK,UAAS;IAE1D,MAAM,CAAC,QAAQ,CAAC,MAAM,0DAgJpB;IAEF;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,WAAW,CAQ1B;IAEF,MAAM;CAmCP"}
@@ -0,0 +1,38 @@
1
+ import { AitheElement } from '../../core/aithe-element';
2
+ /**
3
+ * Card container with header, body, and footer sections.
4
+ * 卡片容器,包含标题、正文和底部区域。
5
+ *
6
+ * @slot - Default slot for card body content. 卡片正文内容。
7
+ * @slot header - Custom header content (overrides title). 自定义头部内容。
8
+ * @slot footer - Footer action area. 底部操作区域。
9
+ * @example
10
+ * ```html
11
+ * <aithe-card title="Settings" icon="settings" shadow="2">
12
+ * <p>Card body content here.</p>
13
+ * <slot name="footer"><button>Save</button></slot>
14
+ * </aithe-card>
15
+ * ```
16
+ */
17
+ export declare class AitheCard extends AitheElement {
18
+ /** Card title text. 卡片标题文本。 */
19
+ title: string;
20
+ /** Icon name to display before the title. 在标题前显示的图标名称。 */
21
+ icon: string;
22
+ /** Shadow elevation level (0–4). 阴影层级(0–4)。 */
23
+ shadow: number;
24
+ /** Padding for the card body section. 卡片正文区域内边距。 */
25
+ bodyPadding: string;
26
+ /** Whether to show a border around the card. 是否显示卡片边框。 */
27
+ bordered: boolean;
28
+ /** Divider style between sections: 'border' | 'none'. 区域间分割线样式:'border' | 'none'。 */
29
+ divider: 'border' | 'none';
30
+ private headerSlotNodes;
31
+ private footerSlotNodes;
32
+ private hasHeaderSlot;
33
+ private hasFooterSlot;
34
+ static readonly styles: (import("lit").CSSResult | import("lit").CSSResult[])[];
35
+ private readonly syncSlots;
36
+ render(): import("lit-html").TemplateResult<1>;
37
+ }
38
+ //# sourceMappingURL=card.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"card.d.ts","sourceRoot":"","sources":["../../../../src/components/basic/card.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGxD;;;;;;;;;;;;;;GAcG;AACH,qBACa,SAAU,SAAQ,YAAY;IACzC,+BAA+B;IACH,KAAK,SAAM;IACvC,0DAA0D;IAC9B,IAAI,SAAM;IACtC,+CAA+C;IACnB,MAAM,SAAK;IACvC,oDAAoD;IACG,WAAW,SAA2B;IAC7F,0DAA0D;IAC7B,QAAQ,UAAQ;IAC7C,qFAAqF;IACzD,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAY;IAEvB,OAAO,CAAC,eAAe,CAAiB;IACxC,OAAO,CAAC,eAAe,CAAiB;IAE1E,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,aAAa,CAAS;IAEvC,MAAM,CAAC,QAAQ,CAAC,MAAM,0DA2DpB;IAEF,OAAO,CAAC,QAAQ,CAAC,SAAS,CAGxB;IAEF,MAAM;CA4CP"}
@@ -0,0 +1,26 @@
1
+ import { AitheElement } from '../../base/aithe-element';
2
+ /**
3
+ * Compact selectable chip with optional close button.
4
+ * 紧凑的可选中芯片,支持可选关闭按钮。
5
+ *
6
+ * @slot - Default slot for chip label content. 芯片标签内容。
7
+ * @fires aithe-select - Emitted when chip selection state changes. 选中状态变更时触发。
8
+ * @fires aithe-close - Emitted when the close button is clicked. 关闭按钮点击时触发。
9
+ * @example
10
+ * ```html
11
+ * <aithe-chip closable>Filter Tag</aithe-chip>
12
+ * ```
13
+ */
14
+ export declare class AitheChip extends AitheElement {
15
+ /** Whether the chip is selected. 是否选中。 */
16
+ selected: boolean;
17
+ /** Whether the chip shows a close button. 是否显示关闭按钮。 */
18
+ closable: boolean;
19
+ static readonly styles: (import("lit").CSSResult | import("lit").CSSResult[])[];
20
+ /** Toggles the selected state and emits select event. 切换选中状态并触发 select 事件。 */
21
+ private readonly toggleSelect;
22
+ /** Handles close button click: emits event, then removes the chip from DOM. 处理关闭按钮点击:触发事件、然后从 DOM 移除芯片。 */
23
+ private readonly handleClose;
24
+ render(): import("lit-html").TemplateResult<1>;
25
+ }
26
+ //# sourceMappingURL=chip.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chip.d.ts","sourceRoot":"","sources":["../../../../src/components/basic/chip.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGxD;;;;;;;;;;;GAWG;AACH,qBACa,SAAU,SAAQ,YAAY;IACzC,0CAA0C;IACE,QAAQ,UAAS;IAC7D,uDAAuD;IAC1B,QAAQ,UAAS;IAE9C,MAAM,CAAC,QAAQ,CAAC,MAAM,0DAiCpB;IAEF,8EAA8E;IAC9E,OAAO,CAAC,QAAQ,CAAC,YAAY,CAG3B;IAEF,2GAA2G;IAC3G,OAAO,CAAC,QAAQ,CAAC,WAAW,CAI1B;IAEF,MAAM;CAgBP"}
@@ -0,0 +1,23 @@
1
+ import { AitheElement } from '../../core/aithe-element';
2
+ /**
3
+ * Horizontal or vertical divider line with optional label.
4
+ * 水平或垂直分割线,支持可选标签。
5
+ *
6
+ * @slot - Default slot for divider label text (horizontal mode). 分割线标签文本(水平模式)。
7
+ * @example
8
+ * ```html
9
+ * <aithe-divider label="Section"></aithe-divider>
10
+ * <aithe-divider vertical dashed></aithe-divider>
11
+ * ```
12
+ */
13
+ export declare class AitheDivider extends AitheElement {
14
+ /** Whether the divider renders vertically. 是否垂直渲染分割线。 */
15
+ vertical: boolean;
16
+ /** Whether the line style is dashed. 是否使用虚线样式。 */
17
+ dashed: boolean;
18
+ /** Center label text for horizontal divider. 水平分割线的居中标签文本。 */
19
+ label: string;
20
+ static readonly styles: (import("lit").CSSResult | import("lit").CSSResult[])[];
21
+ render(): import("lit-html").TemplateResult<1>;
22
+ }
23
+ //# sourceMappingURL=divider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"divider.d.ts","sourceRoot":"","sources":["../../../../src/components/basic/divider.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGxD;;;;;;;;;;GAUG;AACH,qBACa,YAAa,SAAQ,YAAY;IAC5C,yDAAyD;IACb,QAAQ,UAAS;IAC7D,kDAAkD;IACrB,MAAM,UAAS;IAC5C,8DAA8D;IAClC,KAAK,SAAM;IAEvC,MAAM,CAAC,QAAQ,CAAC,MAAM,0DAoDpB;IAEF,MAAM;CA+BP"}