@aithe/aithe-ui 26.2.3 → 26.3.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 (620) hide show
  1. package/README.md +19 -11
  2. package/dist/apps/admin/app.js +12 -0
  3. package/dist/apps/admin/components/admin-app.js +83 -0
  4. package/dist/apps/admin/components/admin-layout.d.ts +0 -1
  5. package/dist/apps/admin/components/admin-layout.d.ts.map +1 -1
  6. package/dist/apps/admin/components/admin-layout.js +250 -0
  7. package/dist/apps/admin/datahub/auth.js +24 -0
  8. package/dist/apps/admin/datahub/dashboard.js +16 -0
  9. package/dist/apps/admin/datahub/index.js +42 -0
  10. package/dist/apps/admin/datahub/menu.js +16 -0
  11. package/dist/apps/admin/datahub/mock/auth.js +11 -0
  12. package/dist/apps/admin/datahub/mock/dashboard.js +10 -0
  13. package/dist/apps/admin/datahub/mock/menu.js +42 -0
  14. package/dist/apps/admin/i18n/de-DE.js +37 -0
  15. package/dist/apps/admin/i18n/en-US.js +37 -0
  16. package/dist/apps/admin/i18n/es-ES.js +38 -0
  17. package/dist/apps/admin/i18n/fr-FR.js +37 -0
  18. package/dist/apps/admin/i18n/index.js +27 -0
  19. package/dist/apps/admin/i18n/ja-JP.js +38 -0
  20. package/dist/apps/admin/i18n/ko-KR.js +37 -0
  21. package/dist/apps/admin/i18n/pt-BR.js +37 -0
  22. package/dist/apps/admin/i18n/zh-CN.js +37 -0
  23. package/dist/apps/admin/i18n/zh-HK.js +37 -0
  24. package/dist/apps/admin/i18n/zh-TW.js +37 -0
  25. package/dist/apps/admin/pages/dashboard-page.d.ts +1 -0
  26. package/dist/apps/admin/pages/dashboard-page.d.ts.map +1 -1
  27. package/dist/apps/admin/pages/dashboard-page.js +199 -0
  28. package/dist/apps/admin/pages/login-page.js +278 -0
  29. package/dist/apps/admin/pages/not-found-page.js +57 -0
  30. package/dist/apps/admin/pages/role-page.js +76 -0
  31. package/dist/apps/admin/pages/settings-page.js +95 -0
  32. package/dist/apps/admin/pages/user-page.js +76 -0
  33. package/dist/apps/admin/router/index.js +43 -0
  34. package/dist/apps/admin/standalone.js +1 -0
  35. package/dist/apps/admin/store/auth.js +42 -0
  36. package/dist/apps/api/app.js +82 -0
  37. package/dist/apps/api/demo-data.d.ts.map +1 -1
  38. package/dist/apps/api/demo-data.js +965 -0
  39. package/dist/apps/api/docs-viewer.js +684 -0
  40. package/dist/apps/api/i18n/de-DE.d.ts.map +1 -1
  41. package/dist/apps/api/i18n/de-DE.js +131 -0
  42. package/dist/apps/api/i18n/en-US.d.ts.map +1 -1
  43. package/dist/apps/api/i18n/en-US.js +141 -0
  44. package/dist/apps/api/i18n/es-ES.d.ts.map +1 -1
  45. package/dist/apps/api/i18n/es-ES.js +131 -0
  46. package/dist/apps/api/i18n/fr-FR.d.ts.map +1 -1
  47. package/dist/apps/api/i18n/fr-FR.js +131 -0
  48. package/dist/apps/api/i18n/index.js +27 -0
  49. package/dist/apps/api/i18n/ja-JP.d.ts.map +1 -1
  50. package/dist/apps/api/i18n/ja-JP.js +131 -0
  51. package/dist/apps/api/i18n/ko-KR.d.ts.map +1 -1
  52. package/dist/apps/api/i18n/ko-KR.js +131 -0
  53. package/dist/apps/api/i18n/pt-BR.d.ts.map +1 -1
  54. package/dist/apps/api/i18n/pt-BR.js +131 -0
  55. package/dist/apps/api/i18n/zh-CN.d.ts.map +1 -1
  56. package/dist/apps/api/i18n/zh-CN.js +141 -0
  57. package/dist/apps/api/i18n/zh-HK.d.ts.map +1 -1
  58. package/dist/apps/api/i18n/zh-HK.js +131 -0
  59. package/dist/apps/api/i18n/zh-TW.d.ts.map +1 -1
  60. package/dist/apps/api/i18n/zh-TW.js +131 -0
  61. package/dist/apps/api/pages/docs.d.ts.map +1 -1
  62. package/dist/apps/api/pages/docs.js +369 -0
  63. package/dist/apps/api/standalone.js +1 -0
  64. package/dist/apps/demo/app.d.ts.map +1 -1
  65. package/dist/apps/demo/app.js +275 -0
  66. package/dist/apps/demo/editor.d.ts.map +1 -1
  67. package/dist/apps/demo/editor.js +270 -0
  68. package/dist/apps/demo/helpers.js +7 -0
  69. package/dist/apps/demo/i18n/de-DE.d.ts.map +1 -1
  70. package/dist/apps/demo/i18n/de-DE.js +289 -0
  71. package/dist/apps/demo/i18n/en-US.d.ts.map +1 -1
  72. package/dist/apps/demo/i18n/en-US.js +301 -0
  73. package/dist/apps/demo/i18n/es-ES.d.ts.map +1 -1
  74. package/dist/apps/demo/i18n/es-ES.js +289 -0
  75. package/dist/apps/demo/i18n/fr-FR.d.ts.map +1 -1
  76. package/dist/apps/demo/i18n/fr-FR.js +289 -0
  77. package/dist/apps/demo/i18n/index.js +27 -0
  78. package/dist/apps/demo/i18n/ja-JP.d.ts.map +1 -1
  79. package/dist/apps/demo/i18n/ja-JP.js +289 -0
  80. package/dist/apps/demo/i18n/ko-KR.d.ts.map +1 -1
  81. package/dist/apps/demo/i18n/ko-KR.js +289 -0
  82. package/dist/apps/demo/i18n/pt-BR.d.ts.map +1 -1
  83. package/dist/apps/demo/i18n/pt-BR.js +289 -0
  84. package/dist/apps/demo/i18n/zh-CN.d.ts.map +1 -1
  85. package/dist/apps/demo/i18n/zh-CN.js +301 -0
  86. package/dist/apps/demo/i18n/zh-HK.d.ts.map +1 -1
  87. package/dist/apps/demo/i18n/zh-HK.js +289 -0
  88. package/dist/apps/demo/i18n/zh-TW.d.ts.map +1 -1
  89. package/dist/apps/demo/i18n/zh-TW.js +289 -0
  90. package/dist/apps/demo/pages/autoform.d.ts.map +1 -1
  91. package/dist/apps/demo/pages/autoform.js +422 -0
  92. package/dist/apps/demo/pages/autoview.d.ts +3 -0
  93. package/dist/apps/demo/pages/autoview.d.ts.map +1 -0
  94. package/dist/apps/demo/pages/autoview.js +310 -0
  95. package/dist/apps/demo/pages/basic.js +157 -0
  96. package/dist/apps/demo/pages/code.js +1088 -0
  97. package/dist/apps/demo/pages/container.js +42 -0
  98. package/dist/apps/demo/pages/dashboard.js +159 -0
  99. package/dist/apps/demo/pages/data.d.ts.map +1 -1
  100. package/dist/apps/demo/pages/data.js +327 -0
  101. package/dist/apps/demo/pages/display.d.ts.map +1 -1
  102. package/dist/apps/demo/pages/display.js +295 -0
  103. package/dist/apps/demo/pages/feedback.js +94 -0
  104. package/dist/apps/demo/pages/form.d.ts.map +1 -1
  105. package/dist/apps/demo/pages/form.js +119 -0
  106. package/dist/apps/demo/pages/layout.js +74 -0
  107. package/dist/apps/demo/pages/navigation.js +54 -0
  108. package/dist/apps/demo/pages/progress.js +42 -0
  109. package/dist/apps/demo/pages/theme.js +126 -0
  110. package/dist/apps/demo/standalone.js +1 -0
  111. package/dist/components/basic/AGENTS.md +1 -0
  112. package/dist/components/basic/avatar.js +168 -0
  113. package/dist/components/basic/badge.js +157 -0
  114. package/dist/components/basic/button-group.js +70 -0
  115. package/dist/components/basic/button.d.ts +2 -4
  116. package/dist/components/basic/button.d.ts.map +1 -1
  117. package/dist/components/basic/button.js +315 -0
  118. package/dist/components/basic/card.js +186 -0
  119. package/dist/components/basic/chip.js +103 -0
  120. package/dist/components/basic/divider.js +127 -0
  121. package/dist/components/basic/empty.js +72 -0
  122. package/dist/components/basic/icon.js +129 -0
  123. package/dist/components/basic/input.d.ts.map +1 -1
  124. package/dist/components/basic/input.js +314 -0
  125. package/dist/components/basic/tag.d.ts +7 -2
  126. package/dist/components/basic/tag.d.ts.map +1 -1
  127. package/dist/components/basic/tag.js +248 -0
  128. package/dist/components/basic/textarea.d.ts +0 -1
  129. package/dist/components/basic/textarea.d.ts.map +1 -1
  130. package/dist/components/basic/textarea.js +130 -0
  131. package/dist/components/container/callout.js +108 -0
  132. package/dist/components/container/details.js +117 -0
  133. package/dist/components/container/scroller.js +144 -0
  134. package/dist/components/container/split-panel.js +150 -0
  135. package/dist/components/data/AGENTS.md +1 -1
  136. package/dist/components/data/box-table.d.ts +53 -0
  137. package/dist/components/data/box-table.d.ts.map +1 -0
  138. package/dist/components/data/box-table.js +220 -0
  139. package/dist/components/data/dropdown.d.ts +8 -5
  140. package/dist/components/data/dropdown.d.ts.map +1 -1
  141. package/dist/components/data/dropdown.js +219 -0
  142. package/dist/components/data/metrics-group.js +180 -0
  143. package/dist/components/data/metrics.d.ts +11 -0
  144. package/dist/components/data/metrics.d.ts.map +1 -1
  145. package/dist/components/data/metrics.js +309 -0
  146. package/dist/components/data/pagination.js +119 -0
  147. package/dist/components/data/tab-pane.d.ts +58 -12
  148. package/dist/components/data/tab-pane.d.ts.map +1 -1
  149. package/dist/components/data/tab-pane.js +130 -0
  150. package/dist/components/data/table-column.d.ts +29 -5
  151. package/dist/components/data/table-column.d.ts.map +1 -1
  152. package/dist/components/data/table-column.js +123 -0
  153. package/dist/components/data/table.d.ts +134 -54
  154. package/dist/components/data/table.d.ts.map +1 -1
  155. package/dist/components/data/table.js +1210 -0
  156. package/dist/components/data/tabs.d.ts +60 -3
  157. package/dist/components/data/tabs.d.ts.map +1 -1
  158. package/dist/components/data/tabs.js +416 -0
  159. package/dist/components/data/timeline-item.js +127 -0
  160. package/dist/components/data/timeline.js +204 -0
  161. package/dist/components/data/tree-menu.d.ts +12 -2
  162. package/dist/components/data/tree-menu.d.ts.map +1 -1
  163. package/dist/components/data/tree-menu.js +482 -0
  164. package/dist/components/data/tree.js +269 -0
  165. package/dist/components/display/AGENTS.md +5 -2
  166. package/dist/components/display/animated-image.js +98 -0
  167. package/dist/components/display/autoview.d.ts +139 -0
  168. package/dist/components/display/autoview.d.ts.map +1 -0
  169. package/dist/components/display/autoview.js +460 -0
  170. package/dist/components/display/brief-box.d.ts +42 -0
  171. package/dist/components/display/brief-box.d.ts.map +1 -0
  172. package/dist/components/display/brief-box.js +117 -0
  173. package/dist/components/display/carousel.js +223 -0
  174. package/dist/components/display/code-editor.d.ts.map +1 -1
  175. package/dist/components/display/code-editor.js +976 -0
  176. package/dist/components/display/comparison.js +132 -0
  177. package/dist/components/display/desc-item.d.ts +48 -0
  178. package/dist/components/display/desc-item.d.ts.map +1 -0
  179. package/dist/components/display/desc-item.js +150 -0
  180. package/dist/components/display/desc.d.ts +68 -0
  181. package/dist/components/display/desc.d.ts.map +1 -0
  182. package/dist/components/display/desc.js +405 -0
  183. package/dist/components/display/detail-box.d.ts +51 -0
  184. package/dist/components/display/detail-box.d.ts.map +1 -0
  185. package/dist/components/display/detail-box.js +157 -0
  186. package/dist/components/display/label.js +166 -0
  187. package/dist/components/display/markdown-editor.js +319 -0
  188. package/dist/components/display/markdown.d.ts.map +1 -1
  189. package/dist/components/display/markdown.js +193 -0
  190. package/dist/components/display/mini-box.d.ts +31 -0
  191. package/dist/components/display/mini-box.d.ts.map +1 -0
  192. package/dist/components/display/mini-box.js +137 -0
  193. package/dist/components/display/profile.d.ts +18 -0
  194. package/dist/components/display/profile.d.ts.map +1 -0
  195. package/dist/components/display/profile.js +164 -0
  196. package/dist/components/feedback/AGENTS.md +1 -0
  197. package/dist/components/feedback/alert.js +150 -0
  198. package/dist/components/feedback/dialog.js +228 -0
  199. package/dist/components/feedback/drawer.d.ts.map +1 -1
  200. package/dist/components/feedback/drawer.js +338 -0
  201. package/dist/components/feedback/loading.js +130 -0
  202. package/dist/components/feedback/modal.d.ts.map +1 -1
  203. package/dist/components/feedback/modal.js +303 -0
  204. package/dist/components/feedback/notification.js +170 -0
  205. package/dist/components/feedback/popover.d.ts +1 -1
  206. package/dist/components/feedback/popover.js +124 -0
  207. package/dist/components/feedback/toast.js +142 -0
  208. package/dist/components/feedback/tooltip.d.ts +1 -1
  209. package/dist/components/feedback/tooltip.js +153 -0
  210. package/dist/components/form/AGENTS.md +4 -0
  211. package/dist/components/form/autoform-item.d.ts +6 -0
  212. package/dist/components/form/autoform-item.d.ts.map +1 -1
  213. package/dist/components/form/autoform-item.js +791 -0
  214. package/dist/components/form/autoform.d.ts +15 -5
  215. package/dist/components/form/autoform.d.ts.map +1 -1
  216. package/dist/components/form/autoform.js +303 -0
  217. package/dist/components/form/checkbox-group.js +118 -0
  218. package/dist/components/form/checkbox.js +123 -0
  219. package/dist/components/form/color-picker.js +148 -0
  220. package/dist/components/form/combobox.d.ts +4 -0
  221. package/dist/components/form/combobox.d.ts.map +1 -1
  222. package/dist/components/form/combobox.js +325 -0
  223. package/dist/components/form/date-picker.js +123 -0
  224. package/dist/components/form/form-item.d.ts.map +1 -1
  225. package/dist/components/form/form-item.js +141 -0
  226. package/dist/components/form/form.js +94 -0
  227. package/dist/components/form/radio-group.js +106 -0
  228. package/dist/components/form/radio.js +110 -0
  229. package/dist/components/form/rate.js +116 -0
  230. package/dist/components/form/select.d.ts +5 -1
  231. package/dist/components/form/select.d.ts.map +1 -1
  232. package/dist/components/form/select.js +539 -0
  233. package/dist/components/form/slider.js +134 -0
  234. package/dist/components/form/switch.js +146 -0
  235. package/dist/components/form/time-picker.js +92 -0
  236. package/dist/components/form/transfer.js +273 -0
  237. package/dist/components/form/upload.js +138 -0
  238. package/dist/components/framework/body.js +333 -0
  239. package/dist/components/framework/dashboard-panel.js +519 -0
  240. package/dist/components/framework/dashboard.d.ts.map +1 -1
  241. package/dist/components/framework/dashboard.js +1084 -0
  242. package/dist/components/framework/header.js +237 -0
  243. package/dist/components/framework/log-panel.js +637 -0
  244. package/dist/components/framework/page.js +151 -0
  245. package/dist/components/framework/sidebar.d.ts +4 -10
  246. package/dist/components/framework/sidebar.d.ts.map +1 -1
  247. package/dist/components/framework/sidebar.js +477 -0
  248. package/dist/components/layout/affix.js +137 -0
  249. package/dist/components/layout/col.js +103 -0
  250. package/dist/components/layout/collapse-item.js +165 -0
  251. package/dist/components/layout/collapse.js +108 -0
  252. package/dist/components/layout/container.js +92 -0
  253. package/dist/components/layout/flex.js +100 -0
  254. package/dist/components/layout/row.js +103 -0
  255. package/dist/components/layout/space.js +85 -0
  256. package/dist/components/navigation/back-top.js +127 -0
  257. package/dist/components/navigation/breadcrumb-item.js +108 -0
  258. package/dist/components/navigation/breadcrumb.js +70 -0
  259. package/dist/components/navigation/menu-item.js +181 -0
  260. package/dist/components/navigation/menu.js +126 -0
  261. package/dist/components/navigation/steps.js +183 -0
  262. package/dist/components/navigation/sub-menu.d.ts.map +1 -1
  263. package/dist/components/navigation/sub-menu.js +252 -0
  264. package/dist/components/progress/progress-bar.js +97 -0
  265. package/dist/components/progress/progress-ring.js +111 -0
  266. package/dist/components/progress/skeleton.js +108 -0
  267. package/dist/components/progress/spinner.js +129 -0
  268. package/dist/components/theme/locale-switch.js +241 -0
  269. package/dist/components/theme/shadow-picker.js +233 -0
  270. package/dist/components/theme/shape-picker.js +232 -0
  271. package/dist/components/theme/theme-picker.js +236 -0
  272. package/dist/components/theme/theme-preview.d.ts +1 -2
  273. package/dist/components/theme/theme-preview.d.ts.map +1 -1
  274. package/dist/components/theme/theme-preview.js +376 -0
  275. package/dist/components/theme/theme-switch.d.ts.map +1 -1
  276. package/dist/components/theme/theme-switch.js +318 -0
  277. package/dist/components/theme/typo-picker.js +219 -0
  278. package/dist/core/AGENTS.md +6 -1
  279. package/dist/core/aithe-element.d.ts +2 -2
  280. package/dist/core/aithe-element.js +135 -0
  281. package/dist/core/aithe-widget.js +30 -0
  282. package/dist/core/anchored-overlay.d.ts +3 -0
  283. package/dist/core/anchored-overlay.d.ts.map +1 -1
  284. package/dist/core/anchored-overlay.js +111 -0
  285. package/dist/core/autoform/autoform.js +79 -0
  286. package/dist/core/autoform/autoview.d.ts +86 -0
  287. package/dist/core/autoform/autoview.d.ts.map +1 -0
  288. package/dist/core/autoform/autoview.js +37 -0
  289. package/dist/core/autoform/condition.js +170 -0
  290. package/dist/core/autoform/index.d.ts +2 -0
  291. package/dist/core/autoform/index.d.ts.map +1 -1
  292. package/dist/core/autoform/index.js +9 -0
  293. package/dist/core/autoform/types.js +7 -0
  294. package/dist/core/datahub/__tests__/force-options.test.d.ts +8 -0
  295. package/dist/core/datahub/__tests__/force-options.test.d.ts.map +1 -0
  296. package/dist/core/datahub/__tests__/force-options.test.js +161 -0
  297. package/dist/core/datahub/config/strategy.d.ts +1 -1
  298. package/dist/core/datahub/config/strategy.d.ts.map +1 -1
  299. package/dist/core/datahub/config/strategy.js +50 -0
  300. package/dist/core/datahub/core/adapter/fetch-adapter.d.ts +1 -1
  301. package/dist/core/datahub/core/adapter/fetch-adapter.d.ts.map +1 -1
  302. package/dist/core/datahub/core/adapter/fetch-adapter.js +118 -0
  303. package/dist/core/datahub/core/adapter/index.js +7 -0
  304. package/dist/core/datahub/core/adapter/mock-adapter.d.ts +1 -1
  305. package/dist/core/datahub/core/adapter/mock-adapter.d.ts.map +1 -1
  306. package/dist/core/datahub/core/adapter/mock-adapter.js +58 -0
  307. package/dist/core/datahub/core/api-styles.d.ts +1 -1
  308. package/dist/core/datahub/core/api-styles.d.ts.map +1 -1
  309. package/dist/core/datahub/core/api-styles.js +136 -0
  310. package/dist/core/datahub/core/datahub-core.d.ts +53 -3
  311. package/dist/core/datahub/core/datahub-core.d.ts.map +1 -1
  312. package/dist/core/datahub/core/datahub-core.js +520 -0
  313. package/dist/core/datahub/core/index.js +7 -0
  314. package/dist/core/datahub/index.js +50 -0
  315. package/dist/core/datahub/types.d.ts +24 -0
  316. package/dist/core/datahub/types.d.ts.map +1 -1
  317. package/dist/core/datahub/types.js +31 -0
  318. package/dist/core/datahub/utils/cache.js +55 -0
  319. package/dist/core/datahub/utils/common.js +23 -0
  320. package/dist/core/datahub/utils/dedup.d.ts +1 -1
  321. package/dist/core/datahub/utils/dedup.d.ts.map +1 -1
  322. package/dist/core/datahub/utils/dedup.js +52 -0
  323. package/dist/core/datahub/utils/idempotent.js +61 -0
  324. package/dist/core/datahub/utils/is-query.js +53 -0
  325. package/dist/core/datahub/utils/loading.js +78 -0
  326. package/dist/core/filter/__tests__/index.test.d.ts +2 -0
  327. package/dist/core/filter/__tests__/index.test.d.ts.map +1 -0
  328. package/dist/core/filter/__tests__/index.test.js +230 -0
  329. package/dist/core/filter/builtins.d.ts +60 -0
  330. package/dist/core/filter/builtins.d.ts.map +1 -0
  331. package/dist/core/filter/builtins.js +172 -0
  332. package/dist/core/filter/factory.d.ts +54 -0
  333. package/dist/core/filter/factory.d.ts.map +1 -0
  334. package/dist/core/filter/factory.js +96 -0
  335. package/dist/core/filter/index.d.ts +11 -0
  336. package/dist/core/filter/index.d.ts.map +1 -0
  337. package/dist/core/filter/index.js +9 -0
  338. package/dist/core/filter/types.d.ts +12 -0
  339. package/dist/core/filter/types.d.ts.map +1 -0
  340. package/dist/core/filter/types.js +1 -0
  341. package/dist/core/floating.js +132 -0
  342. package/dist/core/highlight/index.js +43 -0
  343. package/dist/core/highlight/lang-bash.js +27 -0
  344. package/dist/core/highlight/lang-c.js +27 -0
  345. package/dist/core/highlight/lang-cmake.js +27 -0
  346. package/dist/core/highlight/lang-cpp.js +27 -0
  347. package/dist/core/highlight/lang-css.js +24 -0
  348. package/dist/core/highlight/lang-dart.js +27 -0
  349. package/dist/core/highlight/lang-dockerfile.js +16 -0
  350. package/dist/core/highlight/lang-fsharp.js +23 -0
  351. package/dist/core/highlight/lang-go.js +22 -0
  352. package/dist/core/highlight/lang-html.js +12 -0
  353. package/dist/core/highlight/lang-java.js +22 -0
  354. package/dist/core/highlight/lang-javascript.js +26 -0
  355. package/dist/core/highlight/lang-json.js +13 -0
  356. package/dist/core/highlight/lang-jsonline.js +13 -0
  357. package/dist/core/highlight/lang-jsx.js +30 -0
  358. package/dist/core/highlight/lang-kotlin.js +27 -0
  359. package/dist/core/highlight/lang-latex.js +22 -0
  360. package/dist/core/highlight/lang-lua.js +26 -0
  361. package/dist/core/highlight/lang-makefile.js +22 -0
  362. package/dist/core/highlight/lang-markdown.js +18 -0
  363. package/dist/core/highlight/lang-objectivec.js +24 -0
  364. package/dist/core/highlight/lang-perl.js +30 -0
  365. package/dist/core/highlight/lang-powershell.js +23 -0
  366. package/dist/core/highlight/lang-python.js +27 -0
  367. package/dist/core/highlight/lang-r.js +21 -0
  368. package/dist/core/highlight/lang-ruby.js +29 -0
  369. package/dist/core/highlight/lang-rust.js +24 -0
  370. package/dist/core/highlight/lang-scala.js +26 -0
  371. package/dist/core/highlight/lang-sql.js +21 -0
  372. package/dist/core/highlight/lang-svelte.js +27 -0
  373. package/dist/core/highlight/lang-swift.js +28 -0
  374. package/dist/core/highlight/lang-tsx.js +35 -0
  375. package/dist/core/highlight/lang-typescript.js +31 -0
  376. package/dist/core/highlight/lang-vue.js +29 -0
  377. package/dist/core/highlight/lang-wasm.js +22 -0
  378. package/dist/core/highlight/lang-xml.js +12 -0
  379. package/dist/core/highlight/lang-yaml.js +14 -0
  380. package/dist/core/highlight/registry.js +99 -0
  381. package/dist/core/logger/LoggerCore.js +626 -0
  382. package/dist/core/logger/index.js +10 -0
  383. package/dist/core/logger/types.js +29 -0
  384. package/dist/core/markdown/index.js +20 -0
  385. package/dist/core/markdown/parser.d.ts +2 -0
  386. package/dist/core/markdown/parser.d.ts.map +1 -1
  387. package/dist/core/markdown/parser.js +376 -0
  388. package/dist/core/markdown/plugins.d.ts +2 -1
  389. package/dist/core/markdown/plugins.d.ts.map +1 -1
  390. package/dist/core/markdown/plugins.js +755 -0
  391. package/dist/core/markdown/types.d.ts +5 -0
  392. package/dist/core/markdown/types.d.ts.map +1 -1
  393. package/dist/core/markdown/types.js +7 -0
  394. package/dist/core/router/index.js +244 -0
  395. package/dist/core/styles.js +44 -0
  396. package/dist/core/types.d.ts +52 -3
  397. package/dist/core/types.d.ts.map +1 -1
  398. package/dist/core/types.js +1 -0
  399. package/dist/index.d.ts +9 -0
  400. package/dist/index.d.ts.map +1 -1
  401. package/dist/index.js +3695 -1622
  402. package/dist/index.js.map +1 -1
  403. package/dist/index.umd.js +1844 -758
  404. package/dist/index.umd.js.map +1 -1
  405. package/dist/styles/aithe-ui.d.ts +23 -0
  406. package/dist/styles/aithe-ui.d.ts.map +1 -1
  407. package/dist/styles/aithe-ui.js +185 -0
  408. package/dist/styles/global.css.d.ts +1 -1
  409. package/dist/styles/global.css.d.ts.map +1 -1
  410. package/dist/styles/global.css.js +119 -0
  411. package/dist/styles/i18n/index.js +206 -0
  412. package/dist/styles/i18n/locales/de-DE.d.ts.map +1 -1
  413. package/dist/styles/i18n/locales/de-DE.js +151 -0
  414. package/dist/styles/i18n/locales/en-US.d.ts.map +1 -1
  415. package/dist/styles/i18n/locales/en-US.js +160 -0
  416. package/dist/styles/i18n/locales/es-ES.d.ts.map +1 -1
  417. package/dist/styles/i18n/locales/es-ES.js +151 -0
  418. package/dist/styles/i18n/locales/fr-FR.d.ts.map +1 -1
  419. package/dist/styles/i18n/locales/fr-FR.js +151 -0
  420. package/dist/styles/i18n/locales/index.js +14 -0
  421. package/dist/styles/i18n/locales/ja-JP.d.ts.map +1 -1
  422. package/dist/styles/i18n/locales/ja-JP.js +151 -0
  423. package/dist/styles/i18n/locales/ko-KR.d.ts.map +1 -1
  424. package/dist/styles/i18n/locales/ko-KR.js +151 -0
  425. package/dist/styles/i18n/locales/pt-BR.d.ts.map +1 -1
  426. package/dist/styles/i18n/locales/pt-BR.js +151 -0
  427. package/dist/styles/i18n/locales/zh-CN.d.ts.map +1 -1
  428. package/dist/styles/i18n/locales/zh-CN.js +160 -0
  429. package/dist/styles/i18n/locales/zh-HK.d.ts.map +1 -1
  430. package/dist/styles/i18n/locales/zh-HK.js +151 -0
  431. package/dist/styles/i18n/locales/zh-TW.d.ts.map +1 -1
  432. package/dist/styles/i18n/locales/zh-TW.js +151 -0
  433. package/dist/styles/layout/index.js +88 -0
  434. package/dist/styles/mixins.js +43 -0
  435. package/dist/styles/shadow/cyber.js +19 -0
  436. package/dist/styles/shadow/deep.js +19 -0
  437. package/dist/styles/shadow/diffuse.js +19 -0
  438. package/dist/styles/shadow/flat.js +19 -0
  439. package/dist/styles/shadow/glassmorphism.js +19 -0
  440. package/dist/styles/shadow/index.js +129 -0
  441. package/dist/styles/shadow/neumorphism.js +21 -0
  442. package/dist/styles/shadow/retro.js +19 -0
  443. package/dist/styles/shadow/sharp-business.js +19 -0
  444. package/dist/styles/shadow/skeuomorphic.js +21 -0
  445. package/dist/styles/shape/chamfer.js +19 -0
  446. package/dist/styles/shape/circle.js +19 -0
  447. package/dist/styles/shape/index.js +174 -0
  448. package/dist/styles/shape/organic.js +19 -0
  449. package/dist/styles/shape/pill.js +19 -0
  450. package/dist/styles/shape/rounded.js +21 -0
  451. package/dist/styles/shape/rounder.js +19 -0
  452. package/dist/styles/shape/sharp.js +19 -0
  453. package/dist/styles/shape/smooth.js +19 -0
  454. package/dist/styles/theme/aliyun.d.ts +1 -1
  455. package/dist/styles/theme/aliyun.d.ts.map +1 -1
  456. package/dist/styles/theme/aliyun.js +102 -0
  457. package/dist/styles/theme/amber.d.ts +1 -1
  458. package/dist/styles/theme/amber.d.ts.map +1 -1
  459. package/dist/styles/theme/amber.js +101 -0
  460. package/dist/styles/theme/blue.d.ts +1 -1
  461. package/dist/styles/theme/blue.d.ts.map +1 -1
  462. package/dist/styles/theme/blue.js +101 -0
  463. package/dist/styles/theme/charcoal.d.ts +1 -1
  464. package/dist/styles/theme/charcoal.d.ts.map +1 -1
  465. package/dist/styles/theme/charcoal.js +106 -0
  466. package/dist/styles/theme/cyan.d.ts +1 -1
  467. package/dist/styles/theme/cyan.d.ts.map +1 -1
  468. package/dist/styles/theme/cyan.js +96 -0
  469. package/dist/styles/theme/dark.d.ts +1 -1
  470. package/dist/styles/theme/dark.d.ts.map +1 -1
  471. package/dist/styles/theme/dark.js +106 -0
  472. package/dist/styles/theme/ebony.d.ts +1 -1
  473. package/dist/styles/theme/ebony.d.ts.map +1 -1
  474. package/dist/styles/theme/ebony.js +106 -0
  475. package/dist/styles/theme/festive.d.ts +1 -1
  476. package/dist/styles/theme/festive.d.ts.map +1 -1
  477. package/dist/styles/theme/festive.js +101 -0
  478. package/dist/styles/theme/graphite.d.ts +1 -1
  479. package/dist/styles/theme/graphite.d.ts.map +1 -1
  480. package/dist/styles/theme/graphite.js +106 -0
  481. package/dist/styles/theme/gray.d.ts +1 -1
  482. package/dist/styles/theme/gray.d.ts.map +1 -1
  483. package/dist/styles/theme/gray.js +101 -0
  484. package/dist/styles/theme/huawei.d.ts +1 -1
  485. package/dist/styles/theme/huawei.d.ts.map +1 -1
  486. package/dist/styles/theme/huawei.js +102 -0
  487. package/dist/styles/theme/index.d.ts +1 -1
  488. package/dist/styles/theme/index.d.ts.map +1 -1
  489. package/dist/styles/theme/index.js +276 -0
  490. package/dist/styles/theme/indigo.d.ts +1 -1
  491. package/dist/styles/theme/indigo.d.ts.map +1 -1
  492. package/dist/styles/theme/indigo.js +101 -0
  493. package/dist/styles/theme/ink.d.ts +1 -1
  494. package/dist/styles/theme/ink.d.ts.map +1 -1
  495. package/dist/styles/theme/ink.js +106 -0
  496. package/dist/styles/theme/light.d.ts +1 -1
  497. package/dist/styles/theme/light.d.ts.map +1 -1
  498. package/dist/styles/theme/light.js +102 -0
  499. package/dist/styles/theme/midnight.d.ts +1 -1
  500. package/dist/styles/theme/midnight.d.ts.map +1 -1
  501. package/dist/styles/theme/midnight.js +106 -0
  502. package/dist/styles/theme/navy.d.ts +1 -1
  503. package/dist/styles/theme/navy.d.ts.map +1 -1
  504. package/dist/styles/theme/navy.js +106 -0
  505. package/dist/styles/theme/obsidian.d.ts +1 -1
  506. package/dist/styles/theme/obsidian.d.ts.map +1 -1
  507. package/dist/styles/theme/obsidian.js +106 -0
  508. package/dist/styles/theme/onyx.d.ts +1 -1
  509. package/dist/styles/theme/onyx.d.ts.map +1 -1
  510. package/dist/styles/theme/onyx.js +106 -0
  511. package/dist/styles/theme/orange.d.ts +1 -1
  512. package/dist/styles/theme/orange.d.ts.map +1 -1
  513. package/dist/styles/theme/orange.js +101 -0
  514. package/dist/styles/theme/pink.d.ts +1 -1
  515. package/dist/styles/theme/pink.d.ts.map +1 -1
  516. package/dist/styles/theme/pink.js +101 -0
  517. package/dist/styles/theme/purple.d.ts +1 -1
  518. package/dist/styles/theme/purple.d.ts.map +1 -1
  519. package/dist/styles/theme/purple.js +101 -0
  520. package/dist/styles/theme/raisin.d.ts +1 -1
  521. package/dist/styles/theme/raisin.d.ts.map +1 -1
  522. package/dist/styles/theme/raisin.js +106 -0
  523. package/dist/styles/theme/slate.d.ts +1 -1
  524. package/dist/styles/theme/slate.d.ts.map +1 -1
  525. package/dist/styles/theme/slate.js +106 -0
  526. package/dist/styles/theme/teal.d.ts +1 -1
  527. package/dist/styles/theme/teal.d.ts.map +1 -1
  528. package/dist/styles/theme/teal.js +101 -0
  529. package/dist/styles/theme/tianyi.d.ts +1 -1
  530. package/dist/styles/theme/tianyi.d.ts.map +1 -1
  531. package/dist/styles/theme/tianyi.js +102 -0
  532. package/dist/styles/types.js +1 -0
  533. package/dist/styles/typo/business.js +34 -0
  534. package/dist/styles/typo/compact.js +34 -0
  535. package/dist/styles/typo/index.js +99 -0
  536. package/dist/styles/typo/luxury.js +34 -0
  537. package/dist/styles/typo/minimal.js +34 -0
  538. package/dist/types/index.js +2 -0
  539. package/dist/utils/dom.js +51 -0
  540. package/dist/utils/events.js +32 -0
  541. package/dist/utils/icon.js +176 -0
  542. package/dist/utils/index.js +4 -0
  543. package/dist/utils/utils.d.ts +5 -5
  544. package/dist/utils/utils.js +89 -0
  545. package/dist/utils/validation.js +52 -0
  546. package/docs/api/basic/button.md +9 -6
  547. package/docs/api/basic/tag.md +24 -17
  548. package/docs/api/data/box-table.md +73 -0
  549. package/docs/api/data/dropdown.md +3 -2
  550. package/docs/api/data/metrics.md +2 -0
  551. package/docs/api/data/table-column.md +37 -23
  552. package/docs/api/data/table.md +158 -44
  553. package/docs/api/data/tabs.md +46 -1
  554. package/docs/api/data/tree-menu.md +55 -2
  555. package/docs/api/display/autoview.md +277 -0
  556. package/docs/api/display/box.md +66 -0
  557. package/docs/api/display/brief-box.md +73 -0
  558. package/docs/api/display/desc-item.md +57 -0
  559. package/docs/api/display/desc.md +246 -0
  560. package/docs/api/display/detail-box.md +75 -0
  561. package/docs/api/display/mini-box.md +100 -0
  562. package/docs/api/display/profile.md +92 -0
  563. package/docs/api/feedback/popover.md +10 -10
  564. package/docs/api/feedback/tooltip.md +14 -14
  565. package/docs/api/form/autoform-item.md +115 -0
  566. package/docs/api/form/autoform.md +7 -3
  567. package/docs/api/form/combobox.md +27 -7
  568. package/docs/api/form/select.md +50 -28
  569. package/docs/api/framework/log-panel.md +46 -0
  570. package/docs/api/framework/sidebar.md +3 -2
  571. package/docs/api/summary.md +46 -35
  572. package/docs/api/theme/theme-switch.md +1 -1
  573. package/docs/autoform.md +14 -33
  574. package/docs/changelog/CHANGELOG.md +155 -0
  575. package/docs/changelog/VERSION_26.3.1.md +966 -0
  576. package/docs/changelog/VERSION_26.3.2.md +852 -0
  577. package/docs/datahub.md +4 -1
  578. package/docs/filter.md +332 -0
  579. package/docs/framework-integration.md +2 -2
  580. package/docs/guide.md +72 -6
  581. package/docs/i18n.md +2 -4
  582. package/docs/issue/26.3.1/issue_26.3.1.0.md +84 -0
  583. package/docs/issue/26.3.1/issue_26.3.1.1.md +72 -0
  584. package/docs/issue/26.3.1/issue_26.3.1.2.md +75 -0
  585. package/docs/issue/26.3.1/issue_26.3.1.3.md +78 -0
  586. package/docs/issue/26.3.1/issue_26.3.1.4.md +113 -0
  587. package/docs/issue/26.3.1/issue_26.3.1.5.md +142 -0
  588. package/docs/issue/26.3.1/issue_26.3.1.6.md +100 -0
  589. package/docs/issue/26.3.1/issue_26.3.1.7.md +78 -0
  590. package/docs/issue/26.3.2/issue_26.3.2.1.md +46 -0
  591. package/docs/issue/26.3.2/issue_26.3.2.2.md +82 -0
  592. package/docs/issue/26.3.2/issue_26.3.2.3.md +57 -0
  593. package/docs/issue/26.3.2/issue_26.3.2.4.md +43 -0
  594. package/docs/issue/AGENTS.md +24 -3
  595. package/docs/markdown.md +2 -2
  596. package/docs/quickstart.md +5 -5
  597. package/docs/theming.md +5 -4
  598. package/package.json +5 -2
  599. package/dist/components/navigation/dropdown.d.ts +0 -56
  600. package/dist/components/navigation/dropdown.d.ts.map +0 -1
  601. /package/docs/issue/{issue_26.2.2.1.md → 26.2.2/issue_26.2.2.1.md} +0 -0
  602. /package/docs/issue/{issue_26.2.2.2.md → 26.2.2/issue_26.2.2.2.md} +0 -0
  603. /package/docs/issue/{issue_26.2.2.3.md → 26.2.2/issue_26.2.2.3.md} +0 -0
  604. /package/docs/issue/{issue_26.2.2.4.md → 26.2.2/issue_26.2.2.4.md} +0 -0
  605. /package/docs/issue/{issue_26.2.3.1.md → 26.2.3/issue_26.2.3.1.md} +0 -0
  606. /package/docs/issue/{issue_26.2.3.10.md → 26.2.3/issue_26.2.3.10.md} +0 -0
  607. /package/docs/issue/{issue_26.2.3.11.md → 26.2.3/issue_26.2.3.11.md} +0 -0
  608. /package/docs/issue/{issue_26.2.3.12.md → 26.2.3/issue_26.2.3.12.md} +0 -0
  609. /package/docs/issue/{issue_26.2.3.13.md → 26.2.3/issue_26.2.3.13.md} +0 -0
  610. /package/docs/issue/{issue_26.2.3.14.md → 26.2.3/issue_26.2.3.14.md} +0 -0
  611. /package/docs/issue/{issue_26.2.3.15.md → 26.2.3/issue_26.2.3.15.md} +0 -0
  612. /package/docs/issue/{issue_26.2.3.16.md → 26.2.3/issue_26.2.3.16.md} +0 -0
  613. /package/docs/issue/{issue_26.2.3.2.md → 26.2.3/issue_26.2.3.2.md} +0 -0
  614. /package/docs/issue/{issue_26.2.3.3.md → 26.2.3/issue_26.2.3.3.md} +0 -0
  615. /package/docs/issue/{issue_26.2.3.4.md → 26.2.3/issue_26.2.3.4.md} +0 -0
  616. /package/docs/issue/{issue_26.2.3.5.md → 26.2.3/issue_26.2.3.5.md} +0 -0
  617. /package/docs/issue/{issue_26.2.3.6.md → 26.2.3/issue_26.2.3.6.md} +0 -0
  618. /package/docs/issue/{issue_26.2.3.7.md → 26.2.3/issue_26.2.3.7.md} +0 -0
  619. /package/docs/issue/{issue_26.2.3.8.md → 26.2.3/issue_26.2.3.8.md} +0 -0
  620. /package/docs/issue/{issue_26.2.3.9.md → 26.2.3/issue_26.2.3.9.md} +0 -0
@@ -0,0 +1,75 @@
1
+ # Issue 26.3.1.2
2
+
3
+ ## 版本信息
4
+
5
+ - **版本号**: 26.3.1.2
6
+ - **基线版本**: 26.3.1
7
+ - **类型**: Feature
8
+ - **日期**: 2026-06-18
9
+
10
+ ## 变更概述
11
+
12
+ 1. **Filter 数据格式化框架** — 新增轻量 Filter 模块,支持声明式过滤器表达式,零第三方依赖;内置 5 种过滤器(金额、日期、空值替换、字节数、时间友好显示);支持链式过滤和自定义扩展
13
+ 2. **`<aithe-metrics>` 集成 filter** — `MetricsData` 接口新增 `filter` 字段,支持通过 `data.filter` / `params.filter` 设置过滤器表达式格式化指标值
14
+ 3. **`<aithe-table-column>` 集成 filter** — 新增 `filter` 属性,支持对列单元格值进行格式化,优先级:`cellRenderer` > `filter` > 原始值
15
+ 4. **`<aithe-table>` 集成 filter** — `syncSlotColumns` 同步 `filter` 到列元数据;`renderCell` 新增 filter 格式化逻辑
16
+ 5. **`<aithe-modal>` / `<aithe-drawer>` transform 定位修复** — 将 `transform` 动画从 `.panel` 移至内部 `.panel-inner` 包装层,避免破坏内部 `fixed` 定位子元素的参考系
17
+ 6. **`MockAdapter` 增强** — 新增 `mockPath` 支持,可通过 URL 加载远程 Mock 数据文件
18
+ 7. **国际化扩展** — `zh-CN` / `en-US` 新增 `filter.timeAgo.*` 翻译键(共 18 条),支持时间友好显示的本地化文案
19
+ 8. **测试框架集成** — 安装 `vitest@^4.1.6`,新增 `vitest.config.ts` 配置,添加 `test` / `test:watch` 脚本;Filter 模块 38 个测试用例全部通过
20
+ 9. **文档同步更新** — 新增 `docs/filter.md`(完整 Filter 模块文档);更新 `docs/guide.md`(新增 Filter 数据格式化章节);更新 `metrics.md`、`table.md`、`table-column.md` API 文档(新增 `filter` 字段说明)
21
+
22
+ ## 破坏性变更
23
+
24
+ 无。
25
+
26
+ ## 变更内容
27
+
28
+ ### 新增
29
+
30
+ - **Filter 数据格式化模块** — `src/core/filter/` 目录下新建 4 个核心文件:
31
+ - `types.ts` — 定义 `Filter<T, R>` 接口、`FilterExpression`、`FilterConfig` 类型
32
+ - `builtins.ts` — 5 个内置过滤器:`AmountFilter`(金额保留两位小数)、`DateFilter`(日期格式化,支持自定义格式占位符)、`EmptyFilter`(空值替换,支持自定义占位符)、`BytesFilter`(字节数格式化,IEC/SI 双标准)、`TimeAgoFilter`(时间友好显示,支持过去/未来时间,超 1 年显示日期)
33
+ - `factory.ts` — `FilterFactory` 工厂类,提供 `register`/`get`/`has`/`names`/`format`/`parse`/`stringify` 方法;支持链式表达式解析(如 `"date yyyy/MM/dd | empty"`)
34
+ - `index.ts` — 模块统一导出入口,导出 `filterFactory` 全局实例
35
+ - **`src/index.ts`** — 新增 `export * from '@core/filter'`,Filter 模块对外导出
36
+ - **`<aithe-table-column.filter>` 属性** — `src/components/data/table-column.ts` 新增 `@property({ type: String }) filter = ''`,支持声明式过滤器表达式
37
+ - **`vitest.config.ts`** — 新增 Vitest 配置文件,配置 `@core`/`@styles` 路径别名,`node` 测试环境
38
+ - **`docs/filter.md`** — 完整 Filter 模块文档(332 行),包含快速开始、5 个内置过滤器详解(输入输出对照表)、表达式语法、组件集成示例、编程式使用、自定义过滤器开发指南、类型定义和 API 参考
39
+ - **国际化翻译键** — `zh-CN.ts` 和 `en-US.ts` 各新增 9 条 `filter.timeAgo.*` 翻译键(justNow、minutesAgo、minutesLater、hoursAgo、hoursLater、daysAgo、daysLater、monthsAgo、monthsLater)
40
+
41
+ ### 修改
42
+
43
+ #### Filter 模块
44
+
45
+ - **`src/core/types.ts`** — `AitheTableColumnMeta` 接口新增 `filter?: string` 字段
46
+
47
+ #### 组件集成
48
+
49
+ - **`src/components/data/metrics.ts`** — `MetricsData` 接口新增 `filter?: string` 字段(含 JSDoc 优先级说明和 `@see` 链接);`renderMetrics` 中解析 `data.filter` / `params.filter` 优先级,通过 `filterFactory.format()` 格式化值
50
+ - **`src/components/data/table.ts`** — 导入 `filterFactory`;`syncSlotColumns` 同步 `filter` 到列元数据;`renderCell` 新增 filter 格式化逻辑,优先级:`cellRender` > `filter` > 原始值
51
+
52
+ #### modal/drawer transform 定位修复
53
+
54
+ - **`src/components/feedback/modal.ts`** — 将 `transform` 动画从 `.panel` 移至内部新增的 `.panel-inner` 包装层,`.panel` 自身不再持有 `transform`,避免破坏内部 `fixed` 定位子元素
55
+ - **`src/components/feedback/drawer.ts`** — 同上,将 `placement` 相关的 `transform`(`top`/`right`/`bottom`/`left`)移至 `.panel-inner`;`.overlay.open .panel-inner` 控制动画归零
56
+
57
+ #### MockAdapter 增强
58
+
59
+ - **`src/core/datahub/core/adapter/mock-adapter.ts`** — 重构 `request` 方法:支持 `mockData` 和 `mockPath` 两种模式;`mockPath` 模式下通过 `fetch` 加载远程 JSON 文件;提取 `mockDelay` 配置项
60
+
61
+ #### 文档更新
62
+
63
+ - **`docs/api/data/metrics.md`** — Properties 表格新增 `filter` 字段行
64
+ - **`docs/api/data/table-column.md`** — Properties 表格新增 `filter` 字段行
65
+ - **`docs/api/data/table.md`** — Column Fields 表格新增 `filter` 字段行
66
+ - **`docs/guide.md`** — 在 TypeScript 支持之后新增 Filter 数据格式化章节(基本用法、内置过滤器一览表、组件使用示例、自定义过滤器示例),并在"下一步"链接中新增 filter.md 入口
67
+
68
+ #### 构建与测试
69
+
70
+ - **`package.json`** — 新增 `test` / `test:watch` 脚本;新增 `vitest@^4.1.6` 开发依赖
71
+ - **`package-lock.json`** — 更新 lockfile,新增 vitest 及其子依赖(`@vitest/*`、`tinybench`、`tinyexec`、`tinyrainbow`、`std-env`、`stackback`、`why-is-node-running`、`siginfo`、`pathe`、`expect-type`、`obug` 等)
72
+
73
+ ### 删除
74
+
75
+ 无。
@@ -0,0 +1,78 @@
1
+ # Issue 26.3.1.3
2
+
3
+ ## 版本信息
4
+
5
+ - **版本号**: 26.3.1.3
6
+ - **基线版本**: 26.3.1
7
+ - **类型**: Feature
8
+ - **日期**: 2026-06-23
9
+
10
+ ## 变更概述
11
+
12
+ 1. **`<aithe-autoform>` 增强** — 新增 `initial-values` 属性支持外部初始值覆盖 `dft`;新增 `show-submit` 属性控制内置提交按钮显隐;新增 `submit()` 方法编程触发提交;操作区改用 `<aithe-button-group>` 包裹 slot 和内置按钮
13
+ 2. **`<aithe-anchored-overlay>` 含入块偏移修正** — 修复 `position:fixed` 面板在 `transform`/`filter` 等祖先元素内定位偏移的问题,通过临时设置 `left:0;top:0` 测量含入块偏移量并补偿
14
+ 3. **事件名统一** — `<aithe-dropdown>`、`<aithe-popover>`、`<aithe-tooltip>`、`<aithe-select>` 的开关状态变更事件由 `aithe-open-change` 统一为 `aithe-dropdown-change`
15
+ 4. **原生事件冒泡控制** — `<aithe-input>`、`<aithe-textarea>`、`<aithe-code-editor>`、`<aithe-combobox>` 在原生事件处理器中调用 `event.stopPropagation()`,防止原生事件逃逸到组件外部
16
+ 5. **文档与注释同步更新** — 更新 `autoform.ts`/`anchored-overlay.ts` JSDoc;更新 `docs/autoform.md`/`docs/api/form/autoform.md`;更新 6 个 AGENTS.md
17
+
18
+ ## 破坏性变更
19
+
20
+ | 变更项 | 旧值 | 新值 |
21
+ |--------|------|------|
22
+ | `<aithe-dropdown>` 开关状态事件名 | `aithe-open-change` | `aithe-dropdown-change` |
23
+ | `<aithe-popover>` 开关状态事件名 | `aithe-open-change` | `aithe-dropdown-change` |
24
+ | `<aithe-tooltip>` 开关状态事件名 | `aithe-open-change` | `aithe-dropdown-change` |
25
+ | `<aithe-select>` 开关状态事件名 | `aithe-open-change` | `aithe-dropdown-change` |
26
+ | `<aithe-autoform>` slot 行为 | 传入 slot 内容时替换内置提交按钮 | slot 与内置按钮共存,通过 `show-submit` 控制显隐 |
27
+
28
+ ## 变更内容
29
+
30
+ ### 新增
31
+
32
+ - **`<aithe-autoform>.initial-values` 属性** — `src/components/form/autoform.ts` 新增 `@property({ type: Object, attribute: 'initial-values' })`,支持对象或 JSON 字符串,匹配字段名覆盖 `dft` 值
33
+ - **`<aithe-autoform>.show-submit` 属性** — `src/components/form/autoform.ts` 新增 `@property({ type: Boolean, attribute: 'show-submit' })`,控制内置提交按钮显隐,默认 `true`
34
+ - **`<aithe-autoform>.submit()` 方法** — `src/components/form/autoform.ts` 新增 `submit(): void` 方法,编程触发表单校验和提交,通过后触发 `aithe-submit` 事件
35
+
36
+ ### 修改
37
+
38
+ #### `<aithe-autoform>` 重构
39
+
40
+ - **`src/components/form/autoform.ts`** — 移除 `@queryAssignedElements`/`@state hasActionSlot`/`syncActionSlot`/`aithe-divider`;新增 `initial-values`/`show-submit`/`submit()`;操作区改用 `<aithe-button-group>` 包裹 `<slot>` 和内置按钮,通过 `show-submit` 条件渲染;`field.dft` 改为优先取 `initVals[field.name]`;移除 `.autoform-actions` CSS;`@property` 导入移除 `queryAssignedElements`;新增 `nothing` 导入
41
+ - **`src/components/form/autoform-item.ts`** — 移除 `connectedCallback` 和 `updated` 中的两处 `console.log` 调试日志
42
+
43
+ #### 事件名统一(`aithe-open-change` → `aithe-dropdown-change`)
44
+
45
+ - **`src/components/data/dropdown.ts`** — JSDoc `@fires` 更新;`updated` 中事件名改为 `aithe-dropdown-change`
46
+ - **`src/components/feedback/popover.ts`** — JSDoc `@fires` 更新;`updated` 中事件名改为 `aithe-dropdown-change`
47
+ - **`src/components/feedback/tooltip.ts`** — JSDoc `@fires` 更新
48
+ - **`src/components/form/select.ts`** — JSDoc `@fires` 更新;`updated` 中事件名改为 `aithe-dropdown-change`
49
+
50
+ #### 原生事件冒泡控制
51
+
52
+ - **`src/components/basic/input.ts`** — `handleInput` 和 `handleChange` 中增加 `event.stopPropagation()`
53
+ - **`src/components/basic/textarea.ts`** — `handleInput` 和 `handleChange` 中增加 `event.stopPropagation()`
54
+ - **`src/components/display/code-editor.ts`** — `handleInput` 中增加 `e.stopPropagation()`
55
+ - **`src/components/form/combobox.ts`** — `handleInput` 中增加 `event.stopPropagation()`
56
+
57
+ #### `<aithe-anchored-overlay>` 含入块偏移修正
58
+
59
+ - **`src/core/anchored-overlay.ts`** — `updateFloatingPosition` 中新增含入块偏移测量逻辑:临时设置 `panel.style.left = '0px'` 和 `panel.style.top = '0px'`,通过 `getBoundingClientRect()` 获取含入块偏移 `cbOffsetX`/`cbOffsetY`,最终定位时减去偏移量;类 JSDoc 补充含入块偏移修正说明
60
+
61
+ #### 文档更新
62
+
63
+ - **`docs/autoform.md`** — API 参考表格新增 `initial-values`/`show-submit` 属性、`submit()` 方法;自定义提交按钮示例更新为 slot + `show-submit` 两种模式;JavaScript API 示例新增 `form.submit()`
64
+ - **`docs/api/form/autoform.md`** — Properties 表格新增 `initial-values`/`show-submit`;Methods 表格新增 `submit`;Slots 描述更新为 slot 与 `show-submit` 配合使用
65
+ - **`src/components/form/autoform.ts`** — `@slot` JSDoc 更新,说明 slot 配合 `show-submit` 使用
66
+ - **`src/core/anchored-overlay.ts`** — 类 JSDoc 补充含入块偏移修正说明
67
+ - **`src/components/form/AGENTS.md`** — 新增 autoform 新属性/方法约定、select 事件名、combobox stopPropagation
68
+ - **`src/components/basic/AGENTS.md`** — 新增输入类组件 `stopPropagation` 约定
69
+ - **`src/components/display/AGENTS.md`** — 新增 code-editor `stopPropagation` 约定
70
+ - **`src/components/feedback/AGENTS.md`** — 新增浮层组件统一使用 `aithe-dropdown-change` 事件名
71
+ - **`src/components/data/AGENTS.md`** — 新增 dropdown 事件名 `aithe-dropdown-change`
72
+ - **`src/core/AGENTS.md`** — anchored-overlay 描述补充含入块偏移修正
73
+
74
+ ### 删除
75
+
76
+ - **`<aithe-autoform>` 的 `hasActionSlot` 状态和 `syncActionSlot` 方法** — 移除 `@queryAssignedElements actionNodes`、`@state hasActionSlot`、`syncActionSlot` 方法,改用 `show-submit` 属性控制
77
+ - **`<aithe-autoform>` 的 `.autoform-actions` CSS** — 移除操作区容器样式
78
+ - **`<aithe-autoform>` 的 `<aithe-divider>`** — 移除表单与操作区之间的分割线
@@ -0,0 +1,113 @@
1
+ # Issue 26.3.1.4
2
+
3
+ ## 版本信息
4
+
5
+ - **版本号**: 26.3.1.4
6
+ - **基线版本**: 26.3.1
7
+ - **类型**: Feature
8
+ - **日期**: 2026-06-26
9
+
10
+ ## 变更概述
11
+
12
+ 1. **`<aithe-table>` 六项新功能** — 列固定(`fixed`)、列宽拖拽调整(`resizable`)、列拖拽排序(`draggable`)、loading 加载占位、行单选模式(`selectable="single"`)、键盘导航(ArrowDown/ArrowUp/空格/Enter)
13
+ 2. **`<aithe-button>` variant 重构** — 废弃 `danger` 属性,统一使用 `variant` 属性控制按钮危险样式
14
+ 3. **`<aithe-tag>` 尺寸系统与 variant 重构** — 新增 `size` 属性(sm/md/lg),`type` 标记为 `@deprecated`,推荐使用 `variant`;移除 `min-height` 硬编码
15
+ 4. **`<aithe-table-column>` 属性扩展** — 新增 `fixed`、`resizable`、`draggable`、`min-width`、`box` 属性;`cellRenderer` 签名变更为 `(key, value, record)`
16
+ 5. **类型系统增强** — 新增 `AitheSelectableType`、`AitheColumnFixed`、`AitheDataRenderer`、`AitheDataProvider` 类型
17
+ 6. **`<aithe-box-table>` 导出** — 新增 `box-table` 组件导出,支持卡片式布局模式
18
+ 7. **Display 组件系列** — 新增 `mini-box`、`brief-box`、`detail-box`、`profile`、`desc`、`desc-item` 六个 display 组件导出
19
+ 8. **API 应用 Demo 页** — 新增 `docs` 页面,11 种语言 i18n 翻译,`demo-data.ts` 增强
20
+ 9. **Demo 页面增强** — `data.ts` 新增 7 个 table 示例(固定列、调整宽度、拖拽排序、loading、单选、键盘导航、box-table);`display.ts` 新增 225 行 display 示例
21
+ 10. **SonarQube 代码质量修复** — 修复 `table.ts`、`profile.ts`、`box-table.ts`、`desc.ts` 中的 S3358、S6660、S1128、S7761、S4325、S3776、S1854、S2156 等 15+ 项告警;更新 `CONTRIBUTING.md` 新增 8 条规则
22
+
23
+ ## 破坏性变更
24
+
25
+ | 变更项 | 旧值 | 新值 |
26
+ |--------|------|------|
27
+ | `AitheTableColumnMeta.render` 签名 | `(value, record, rowIndex)` | `(key, value, record)` — 移除 `rowIndex`,新增 `key` 参数 |
28
+ | `AitheTableColumn.cellRenderer` 签名 | `(value, record, rowIndex)` | `(key, value, record)` — 同上 |
29
+ | `<aithe-button>` `danger` 属性 | 独立 `@property` | 废弃,改用 `variant="danger"` |
30
+ | `<aithe-table>` `selectedKeys` 状态 | `string[]` | `selectionSet: Set<string>` |
31
+ | `<aithe-table>` `aithe-selection-change` 事件载荷 | `{ selectedKeys }` | `{ selectionSet }` |
32
+ | `<aithe-table>` `renderCell` 方法签名 | `(column, record, rowIndex)` | `(column, record)` — 移除 `rowIndex` 参数 |
33
+
34
+ ## 变更内容
35
+
36
+ ### 新增
37
+
38
+ - **`<aithe-table>` 列固定** — `src/components/data/table.ts` 新增 `fixed` 属性支持,使用 `position: sticky` + `left`/`right` 偏移计算;新增 `_getFixedStyle`、`_calcLeftOffset`、`_calcRightOffset`、`_hasFixedLeft`、`_hasFixedRight` 方法;新增 `.fixed-left-shadow` / `.fixed-right-shadow` CSS 阴影指示器
39
+ - **`<aithe-table>` 列宽拖拽调整** — `src/components/data/table.ts` 新增 `resizable` 属性支持;新增 `_onResizeStart`、`_onResizeMove`、`_onResizeEnd` 方法;document 级别 mousemove/mouseup 监听;新增 `aithe-column-resize` 事件
40
+ - **`<aithe-table>` 列拖拽排序** — `src/components/data/table.ts` 新增 `draggable` 属性支持;新增 `_onThMouseDown`、`_startDrag`、`_onDragMove`、`_onDragEnd`、`_clearDragClasses`、`_findDropTarget`、`_applyColumnReorder` 方法;5px 拖拽阈值;新增 `aithe-column-reorder` 事件
41
+ - **`<aithe-table>` loading 加载占位** — `src/components/data/table.ts` 新增 `loading`、`loadingText` 属性;半透明遮罩层 + 旋转 spinner + shimmer 动画占位行;`loading` 具名插槽支持自定义内容
42
+ - **`<aithe-table>` 行单选模式** — `src/components/data/table.ts` 新增 `selectable="single"` 支持;单选使用 radio input,隐藏全选 checkbox;`selectionSet` 在单选模式下 clear 后 add
43
+ - **`<aithe-table>` 键盘导航** — `src/components/data/table.ts` 新增 `_onKeyDown` 处理器;ArrowDown/ArrowUp 移动焦点行;空格切换选中;Enter 触发行点击;`_scrollRowIntoView` 自动滚动
44
+ - **`<aithe-tag>` 尺寸系统** — `src/components/basic/tag.ts` 新增 `size` 属性(sm/md/lg),对应 `.size-sm` / `.size-md` / `.size-lg` CSS 类;通过垂直 padding 控制高度
45
+ - **`src/index.ts` 导出扩展** — 新增 `box-table`、`mini-box`、`brief-box`、`detail-box`、`profile`、`desc`、`desc-item` 组件导出
46
+ - **`src/core/types.ts` 类型定义** — 新增 `AitheSelectableType`、`AitheColumnFixed`、`AitheDataRenderer`、`AitheDataProvider` 类型
47
+ - **`src/apps/api/pages/docs.ts`** — 新增 API 文档 Demo 页面
48
+ - **`src/apps/api/i18n/`** — 11 种语言新增翻译键
49
+ - **`src/apps/demo/pages/display.ts`** — 新增 225 行 display 组件示例
50
+ - **`src/apps/demo/pages/data.ts`** — 新增 7 个 table 演示示例(固定列、调整宽度、拖拽排序、loading、单选、键盘导航、box-table)
51
+ - **`CONTRIBUTING.md`** — 新增 8 条 SonarQube 规则(S7735、S3358、S6660、S6551、S1128、S7761、S3776、S1854)
52
+
53
+ ### 修改
54
+
55
+ #### `<aithe-table>` 重构
56
+
57
+ - **`src/components/data/table.ts`** — 完整重写(1035 行变更),主要变更:
58
+ - `selectable` 类型扩展为 `AitheSelectableType`,添加自定义 converter 支持 `"single"` 属性值
59
+ - `selectedKeys: string[]` → `selectionSet: Set<string>`,事件载荷同步变更
60
+ - `renderCell` 签名移除 `rowIndex` 参数
61
+ - `renderColumnHeader` 新增 drag handle 和 resize handle 渲染
62
+ - `render()` 新增 `tabindex="0"`、loading 遮罩层、固定列 CSS 类、`data-column-id` 属性
63
+ - 提取 `_renderTableBody`、`_renderSelectAllCheckbox`、`_renderSelectionCell`、`_renderLoadingRows` 方法
64
+ - 新增 `columnOrder` 状态管理拖拽排序后的列顺序
65
+ - `syncSlotColumns` 同步读取 `fixed`、`resizable`、`draggable`、`minWidth`、`box` 属性
66
+ - 提取常量:`SELECTION_COL_WIDTH(52)`、`MIN_COL_WIDTH(40)`、`DEFAULT_COL_WIDTH(120)`、`DRAG_THRESHOLD(5)`、`SHADOW_WIDTH(15)`
67
+ - 新增 `updated` 生命周期,data/sort 变化时重置 `focusedRowIndex`
68
+
69
+ #### `<aithe-table-column>` 属性扩展
70
+
71
+ - **`src/components/data/table-column.ts`** — 新增 `fixed`、`resizable`、`draggable`、`min-width`、`box` 属性;`cellRenderer` 类型变更为 `AitheDataRenderer`;移除未使用的 `CellRenderer` 类型别名
72
+
73
+ #### `<aithe-button>` variant 重构
74
+
75
+ - **`src/components/basic/button.ts`** — 移除 `danger` 属性;`type` 移除 `'primary'` 枚举值(primary 通过 variant 控制);CSS 选择器从 `.danger.primary` 改为 `:host([variant='danger']) .primary`;classMap 使用 `this.variant` 替代 `this.danger`
76
+
77
+ #### `<aithe-tag>` 重构
78
+
79
+ - **`src/components/basic/tag.ts`** — `type` 属性标记为 `@deprecated`;新增 `size` 属性;CSS 变体选择器从 `.primary` 等 class 改为 `:host([variant='primary']) .tag`;保留 `type` class 向后兼容;移除 `min-height: 30px` 硬编码
80
+
81
+ #### 类型系统
82
+
83
+ - **`src/core/types.ts`** — `AitheTableColumnMeta` 新增 `minWidth`、`fixed`、`resizable`、`draggable`、`box` 字段;`render` 签名变更为 `AitheDataRenderer`
84
+
85
+ #### SonarQube 代码质量修复
86
+
87
+ - **`src/components/data/table.ts`** — 修复 S2156(箭头函数成员添加 `readonly`)、S7761(`.dataset` 替代 `getAttribute`)、S4325(移除无用断言)、S1854(移除无用赋值)、S6660(合并 else if)、S3358(嵌套三元提取为独立方法)、S3776(认知复杂度拆分:`_onDragEnd`、`render`、`_getFixedStyle` 各拆分为 3 个子方法)
88
+ - **`src/components/data/profile.ts`** — 修复 S3358、S6660、S7735
89
+ - **`src/components/data/box-table.ts`** — 修复 S3358(提取 `_renderBoxSelection` 方法)
90
+ - **`src/components/data/desc.ts`** — 修复 S1128(移除未使用的 `TemplateResult` 导入)
91
+
92
+ #### Demo 页面
93
+
94
+ - **`src/apps/demo/pages/data.ts`** — 提取 `TABLE_DATA`、`TABLE_COLUMNS` 公共常量;新增 7 个 table 示例
95
+ - **`src/apps/demo/pages/basic.ts`** — 适配 button/tag 变更
96
+ - **`src/apps/demo/pages/dashboard.ts`** — 适配 button 变更
97
+ - **`src/apps/demo/pages/layout.ts`** — 适配 button 变更
98
+ - **`src/apps/demo/editor.ts`** — 适配 button 变更
99
+ - **`src/apps/demo/i18n/`** — 11 种语言新增 table 相关翻译键
100
+
101
+ #### 文档更新
102
+
103
+ - **`docs/api/data/table.md`** — Properties/Events/Column Fields/Examples 全部更新,新增固定列、调整宽度、拖拽排序、loading、单选、键盘导航示例
104
+ - **`docs/api/data/table-column.md`** — Properties 表格新增 `fixed`、`resizable`、`draggable`、`min-width`、`box` 字段
105
+ - **`docs/api/basic/button.md`** — 适配 `variant` 变更
106
+ - **`docs/api/basic/tag.md`** — 适配 `size` 和 `variant` 变更
107
+ - **`docs/api/summary.md`** — 新增 display 组件入口
108
+
109
+ ### 删除
110
+
111
+ - **`<aithe-button>` `danger` 属性** — `src/components/basic/button.ts` 移除 `@property({ type: Boolean, reflect: true }) danger`
112
+ - **`<aithe-button>` `type` 中的 `'primary'`** — `src/components/basic/button.ts` 移除 `'primary'` 枚举值
113
+ - **`<aithe-tag>` `min-height: 30px`** — `src/components/basic/tag.ts` 移除硬编码高度
@@ -0,0 +1,142 @@
1
+ # Issue 26.3.1.5
2
+
3
+ ## 版本信息
4
+
5
+ - **版本号**: 26.3.1.5
6
+ - **基线版本**: 26.3.1
7
+ - **类型**: Feature
8
+ - **日期**: 2026-06-30
9
+
10
+ ## 变更概述
11
+
12
+ 1. **`<aithe-tabs>` 组件增强** — 修复 line 模式边框重复、修复 button 模式 icon 前景色、新增 `max-visible-tabs` 溢出折叠、新增 `extra` 具名插槽、溢出菜单改用 `<aithe-select>` 组件、提取 `renderTab` 方法、代码注释全面增强(9 个 CSS Parts、10 个 CSS 自定义属性)
13
+ 2. **`<aithe-tab-pane>` 注释增强** — 所有属性扩展为多行双语注释,补充 JSDoc 标签
14
+ 3. **`<aithe-table>` 列固定优化** — 选择列 `selection-cell` 改为 `position: sticky` 固定左侧、新增 `has-fixed` 属性控制 `table` 的 `min-width: max-content`、修复斑马纹行固定列背景色
15
+ 4. **`<aithe-desc>` 描述列表重构** — 布局算法从 label+content 合并单元格改为独立 grid 列、新增 `content`/`filter` 属性支持过滤器、`label-width` 默认值改为 `150px`、移除 `desc-item` 的 `labelWidth` 属性、边框样式重构
16
+ 5. **`<aithe-desc-item>` 属性扩展** — 新增 `content` 和 `filter` 属性,支持直接传入值并应用过滤器
17
+ 6. **`<aithe-box-table>` 卡片表格重构** — 移除自建卡片 DOM,改用 `<aithe-brief-box>` 组件渲染卡片、移除 `content` 列插槽、`boxCols=0` 时改为自适应流式布局
18
+ 7. **`<aithe-detail-box>` 插槽动态隐藏** — 新增 `_hasContent`/`_hasActions` 状态,空插槽自动 `hidden`,添加 `@slotchange` 监听
19
+ 8. **`<aithe-brief-box>` 操作区样式修复** — `brief-actions` 改为 `align-items: stretch`,新增 `::slotted` 样式支持垂直排列
20
+ 9. **`<aithe-tag>` 注释增强** — 补充 JSDoc 标签
21
+ 10. **Demo 页面增强** — `data.ts` 新增 7 个 tabs 演示示例
22
+ 11. **国际化扩展** — 11 种语言新增 `data.tabs.moreTabsAriaLabel` 翻译键
23
+ 13. **SonarQube 代码质量修复** — `<aithe-desc>` 提取 `_getItemContent`/`_findNextPosition`/`_markOccupied` 消除 S3358/S3776 告警;`<aithe-desc-item>` 提取 `renderContent` 消除 S3358 告警
24
+ 14. **`AitheSelectableType` 类型重构** — 从 `boolean | 'single'` 改为 `'none' | 'multi' | 'single'` 纯字符串枚举,消除混合返回类型告警;`<aithe-table>` 移除自定义 converter;Box 组件族 `selectable` 从 `Boolean` 统一为 `AitheSelectableType`
25
+
26
+ ## 破坏性变更
27
+
28
+ | 变更项 | 旧值 | 新值 |
29
+ |--------|------|------|
30
+ | `<aithe-desc-item>` `labelWidth` 属性 | 独立 `@property` | 已移除(使用父级 `aithe-desc` 的 `label-width` 统一控制) |
31
+ | `<aithe-desc>` `labelWidth` 默认值 | `''`(空字符串) | `'150px'` |
32
+ | `AitheSelectableType` 类型定义 | `boolean \| 'single'` | `'none' \| 'multi' \| 'single'` — 统一为字符串枚举,默认值 `'none'` |
33
+ | `<aithe-table>` `selectable` 属性默认值 | `false` | `'none'` |
34
+ | `<aithe-mini-box>` / `<aithe-brief-box>` / `<aithe-detail-box>` `selectable` 属性 | `Boolean`(`true`/`false`) | `AitheSelectableType`(`'none'`/`'multi'`/`'single'`) |
35
+
36
+ ## 变更内容
37
+
38
+ ### 新增
39
+
40
+ #### `<aithe-tabs>` 功能增强
41
+
42
+ - **`src/components/data/tabs.ts`** — 新增 `maxVisibleTabs` 属性(默认 `0` 不限制),tab 数量超出时自动折叠到溢出下拉菜单;新增 `extra` 具名插槽,使用 `margin-left: auto` 推至右侧;新增 `visiblePanes`/`overflowPanes`/`overflowOptions` 计算属性;溢出菜单使用 `<aithe-select>` 组件;提取 `renderTab` 方法复用渲染逻辑;新增 `handleOverflowChange` 事件处理器;代码注释全面增强(9 个 CSS Parts、10 个 CSS 自定义属性、所有属性多行双语注释)
43
+
44
+ #### `<aithe-tab-pane>` 注释增强
45
+
46
+ - **`src/components/data/tab-pane.ts`** — 所有属性扩展为多行双语注释,补充 `@slot`、`@csspart`、`@example` JSDoc 标签
47
+
48
+ #### `<aithe-desc-item>` 属性扩展
49
+
50
+ - **`src/components/display/desc-item.ts`** — 新增 `content` 属性(直接传入内容值,优先于 slot 内容)、`filter` 属性(过滤器表达式,通过 `filterFactory.format` 格式化);移除 `labelWidth` 属性;提取 `renderContent()` 方法消除 S3358 嵌套三元表达式告警
51
+
52
+ #### `AitheSelectableType` 类型重构
53
+
54
+ - **`src/core/types.ts`** — `AitheSelectableType` 从 `boolean \| 'single'` 重构为 `'none' \| 'multi' \| 'single'` 纯字符串枚举
55
+ - **`src/components/data/table.ts`** — `selectable` 默认值 `false` → `'none'`;移除自定义 converter;所有 `this.selectable`/`!this.selectable` 改为 `this.selectable !== 'none'`/`this.selectable === 'single'`;`_renderSelectionCell` 中 radio/checkbox 统一使用 `.checked` 属性绑定
56
+ - **`src/components/data/box-table.ts`** — 传递 `selectable` 从 `?selectable=${!!this.selectable}` 改为 `selectable=${this.selectable}`
57
+ - **`src/components/display/mini-box.ts`** — `selectable` 从 `Boolean` 改为 `AitheSelectableType`,统一渲染 checkbox
58
+
59
+ #### `<aithe-detail-box>` 插槽动态隐藏
60
+
61
+ - **`src/components/display/detail-box.ts`** — 新增 `_hasContent`/`_hasActions` 状态;`firstUpdated` 初始化检查;`_onSlotChange` 监听 `@slotchange` 动态更新;`content`/`actions` 区域使用 `?hidden` 属性控制显示
62
+
63
+ #### 国际化
64
+
65
+ - **`src/styles/i18n/locales/*.ts`** — 11 种语言(zh-CN/zh-TW/zh-HK/en-US/ja-JP/ko-KR/es-ES/pt-BR/fr-FR/de-DE)新增 `data.tabs.moreTabsAriaLabel` 翻译键
66
+ - **`src/apps/demo/i18n/*.ts`** — 11 种语言同步新增 `data.tabs.moreTabsAriaLabel` 翻译键
67
+
68
+ #### Demo 页面
69
+
70
+ - **`src/apps/demo/pages/data.ts`** — 新增 7 个 tabs 演示示例(标签类型、带图标、可关闭、可添加、禁用、溢出下拉、额外插槽)
71
+ - **`src/apps/demo/demo-data.ts`** — 更新 tabs 演示代码
72
+
73
+ ### 修改
74
+
75
+ #### `<aithe-tabs>` 样式修复
76
+
77
+ - **`src/components/data/tabs.ts`**:
78
+ - line 模式下 `.nav` 去掉 `border-bottom` 和 `padding-bottom`,`.tabs.line` 去掉 `gap`,修复边框重复问题
79
+ - button 模式下 `.tab.active.button .tab-icon` 设置 `color: var(--aithe-color-text-on-primary)`,修复 icon 前景色对比度问题
80
+ - `splitPanes` 逻辑重构:始终显示前 `max - 1` 个 tab,第 `max` 个位置留给溢出 select,激活 tab 切换时可见 tab 数量固定不变
81
+ - `syncPanes` 方法末尾多余空格修复(`) ;` → `);`)
82
+ - 导入规范修复:`import type { AitheTabPane }` 从相对路径 `'./tab-pane'` 改为路径别名 `'@components/data/tab-pane'`
83
+
84
+ #### `<aithe-table>` 列固定优化
85
+
86
+ - **`src/components/data/table.ts`**:
87
+ - 新增 `:host([has-fixed]) table { min-width: max-content }` 样式,防止固定列时表格宽度不足
88
+ - 选择列 `selection-cell` 新增 `position: sticky; left: 0; z-index: 3`,表头选择列 `z-index: 5`
89
+ - `render` 方法中新增 `this.toggleAttribute('has-fixed', ...)` 逻辑
90
+ - 新增斑马纹行固定列背景色样式:`tbody tr.striped:nth-child(even) td.fixed-left/fixed-right/selection-cell`
91
+ - `_getColumnWidth` 方法注释修正
92
+
93
+ #### `<aithe-desc>` 描述列表重构
94
+
95
+ - **`src/components/display/desc.ts`**:
96
+ - 布局算法重构:从 label+content 合并单元格改为独立 grid 列,水平模式下 `grid-template-columns` 为 `repeat(N, labelWidth 1fr)`
97
+ - `label-width` 默认值从 `''` 改为 `'150px'`
98
+ - 边框样式重构:`desc-cell-label`/`desc-cell-content` 各自独立控制边框,新增 `is-bordered`/`no-border` CSS 类
99
+ - 新增 `classMap` 导入和 `labelClasses`/`contentClasses` 动态类计算
100
+ - `_layoutCells` 方法适配独立 grid 列布局:水平模式 `gridCols = column * 2`;提取 `_findNextPosition` 和 `_markOccupied` 方法消除 S3776 认知复杂度告警
101
+ - 渲染逻辑拆分:vertical 模式保持合并单元格,horizontal 模式 label 和 content 独立 grid 定位
102
+ - 支持 `desc-item` 的 `content`/`filter` 属性渲染;提取 `_getItemContent` 方法消除 S3358 嵌套三元表达式告警
103
+ - 移除 `desc-item` 的 `labelWidth` 引用
104
+
105
+ #### `<aithe-box-table>` 卡片表格重构
106
+
107
+ - **`src/components/data/box-table.ts`**:
108
+ - 移除自建卡片 DOM(`.box-card`/`.box-card-header`/`.box-card-check`/`.box-card-name`/`.box-card-status`/`.box-card-tags`/`.box-card-content`/`.box-card-actions` 等全部 CSS 和 HTML),改用 `<aithe-brief-box>` 组件渲染卡片
109
+ - 移除 `content` 列插槽处理逻辑
110
+ - 移除 `toggleBoxSelection`/`_renderRadioInput`/`_renderCheckboxInput`/`_renderBoxSelection` 方法
111
+ - 新增 `handleBriefBoxSelect` 方法,监听 `<aithe-brief-box>` 的 `selected-change` 事件
112
+ - `renderBoxCard` 方法改为通过 slot 传递 name/status/tags/actions 到 `<aithe-brief-box>`
113
+ - `renderBoxGrid` 方法:`boxCols=0` 时改为自适应流式布局(所有行在一个 grid-row 中),移除 `colWidth` 计算变量
114
+ - 移除 `content` 列在 `boxColumns` 中的 case 处理
115
+
116
+ #### `<aithe-brief-box>` 操作区样式修复
117
+
118
+ - **`src/components/display/brief-box.ts`** — `brief-actions` 从 `align-items: center; justify-content: center` 改为 `align-items: stretch`;新增 `::slotted(*)` 样式支持垂直排列
119
+
120
+ #### `<aithe-tag>` 注释增强
121
+
122
+ - **`src/components/basic/tag.ts`** — 补充 JSDoc 标签
123
+
124
+ #### `<aithe-autoform>` 代码规范
125
+
126
+ - **`src/components/form/autoform.ts`** — 三元表达式格式化调整
127
+
128
+ #### Demo 页面
129
+
130
+ - **`src/apps/demo/pages/display.ts`** — 适配 desc/box-table 变更
131
+
132
+ #### 文档更新
133
+
134
+ - **`docs/api/data/tabs.md`** — 新增 `extra` 插槽说明、`maxVisibleTabs` 属性说明、CSS 自定义属性表、CSS Parts 表、溢出下拉示例代码
135
+ - **`docs/api/data/table.md`** — 同步更新
136
+
137
+ ### 删除
138
+
139
+ - **`<aithe-desc-item>` `labelWidth` 属性** — `src/components/display/desc-item.ts` 移除 `@property({ type: String }) labelWidth`
140
+ - **`<aithe-box-table>` 自建卡片 DOM** — `src/components/data/box-table.ts` 移除 `.box-card` 相关全部 CSS 和 HTML 模板
141
+ - **`<aithe-box-table>` 选中相关方法** — 移除 `toggleBoxSelection`/`_renderRadioInput`/`_renderCheckboxInput`/`_renderBoxSelection` 方法
142
+ - **`<aithe-box-table>` `content` 列插槽** — 移除 `content` 列在 `boxColumns` 中的 case 处理和相关变量
@@ -0,0 +1,100 @@
1
+ # Issue 26.3.1.6
2
+
3
+ ## 版本信息
4
+
5
+ - **版本号**: 26.3.1.6
6
+ - **基线版本**: 26.3.1
7
+ - **类型**: Quality / Bug Fix
8
+ - **日期**: 2026-07-02
9
+
10
+ ## 变更概述
11
+
12
+ 1. **CSS 自定义属性统一** — 将组件中使用的 CSS 自定义属性从旧命名规范迁移到新规范(`--aithe-duration-normal` → `--aithe-duration-base`/`--aithe-duration-slow`,`--aithe-container-radius` → `--aithe-container-radius-md`,`--aithe-border-radius-md` → `--aithe-radius-md`,`--aithe-font-mono` → `--aithe-font-family-mono`)
13
+ 2. **CSS 变量新增** — `global.css.ts` 新增 `--aithe-font-size-base`/`--aithe-font-size-3xl`/`--aithe-font-size-4xl`/`--aithe-font-size-5xl` 字体尺寸变量
14
+ 3. **主题系统增强** — 所有 24 个主题统一新增 `--aithe-fill-1`/`--aithe-fill-2`/`--aithe-color-surface-hover`/`--aithe-color-text-secondary`/`--aithe-color-bg-muted`/`--aithe-color-bg-hover`/`--aithe-color-border-subtle`/`--aithe-primary-6-rgb` 8 个 CSS 变量
15
+ 4. **`<aithe-desc>` 样式重构** — 移除 `desc-cell-label` 的 `padding`,改用 flex 居中;移除 `desc-item` 的 `padding`;`desc-cell-content` 的 `background` 移除回退值
16
+ 5. **`<aithe-mini-box>` 样式修复** — hover 背景色移除嵌套的 `--aithe-color-bg-hover` 回退
17
+ 6. **`<aithe-autoform-item>` 颜色修正** — `box-shadow` 中的 `--aithe-primary-6-rgb` 回退值从 `59, 130, 246` 改为 `77, 141, 255`
18
+ 7. **`<aithe-sidebar>` 导入增强** — 新增 `browserEnv` 导入
19
+ 8. **`<aithe-element>` JSDoc 更新** — 类注释补充浏览器环境检测说明
20
+ 9. **`AitheUI` 类增强** — 新增 `_ua` 私有字段和 10 个浏览器环境检测 getter(`isMobile`/`isAndroid`/`isIOS`/`isChrome`/`isEdge`/`isWechat`/`isWindows`/`isMacOS`/`isRealMobile`/`isChromeEmulator`/`supportsTouch`)
21
+
22
+ ## 破坏性变更
23
+
24
+ 无。
25
+
26
+ ## 变更内容
27
+
28
+ ### 新增
29
+
30
+ #### 字体尺寸变量
31
+
32
+ - **`src/styles/global.css.ts`** — 新增 `--aithe-font-size-base: 14px`、`--aithe-font-size-3xl: 32px`、`--aithe-font-size-4xl: 48px`、`--aithe-font-size-5xl: 64px` CSS 自定义属性
33
+
34
+ #### 主题 CSS 变量统一
35
+
36
+ - **`src/styles/theme/*.ts`(24 个主题)** — 每个主题统一新增 8 个 CSS 变量:
37
+ - `--aithe-fill-1` / `--aithe-fill-2`:填充色(浅色主题 `#f7f8fa`/`#f0f1f3`,深色主题 `#1a2133`/`#1e263a`)
38
+ - `--aithe-color-surface-hover`:表面悬停色(浅色 `rgba(0,0,0,0.04)`,深色 `rgba(255,255,255,0.04)`)
39
+ - `--aithe-color-text-secondary`:次要文本色(浅色 `#3d4a66`,深色 `#8894ab`)
40
+ - `--aithe-color-bg-muted`:背景静默色(浅色 `#e8ecf4`,深色 `#151c2b`)
41
+ - `--aithe-color-bg-hover`:背景悬停色(浅色 `rgba(0,0,0,0.04)`,深色 `rgba(255,255,255,0.04)`)
42
+ - `--aithe-color-border-subtle`:边框弱色(浅色 `rgba(76,94,132,0.10)`,深色 `rgba(172,188,217,0.08)`)
43
+ - `--aithe-primary-6-rgb`:主色 RGB 值(浅色 `77,141,255`,深色 `74,125,255`)
44
+
45
+ #### `AitheUI` 浏览器环境检测
46
+
47
+ - **`src/styles/aithe-ui.ts`** — 新增 `_ua` 私有字段(构造时缓存 `navigator.userAgent`);新增 10 个 getter:
48
+ - `isMobile` — Android/iOS/WebOS/Blackberry
49
+ - `isAndroid` — Android
50
+ - `isIOS` — iPhone/iPad/iPod
51
+ - `isChrome` — Chrome(非 Edge)
52
+ - `isEdge` — Edge
53
+ - `isWechat` — 微信内置浏览器
54
+ - `isWindows` — Windows
55
+ - `isMacOS` — macOS
56
+ - `isRealMobile` — 真实移动设备(UA + 触摸 + 小屏幕 + 非桌面 OS)
57
+ - `isChromeEmulator` — Chrome DevTools 设备模拟
58
+ - `supportsTouch` — 触摸事件支持
59
+
60
+ #### `<aithe-sidebar>` 导入
61
+
62
+ - **`src/components/framework/sidebar.ts`** — 新增 `import { browserEnv } from '@utils'`
63
+
64
+ ### 修改
65
+
66
+ #### CSS 自定义属性重命名
67
+
68
+ - **`src/components/data/tree-menu.ts`** — `--aithe-duration-normal` → `--aithe-duration-base`
69
+ - **`src/components/display/code-editor.ts`** — `--aithe-container-radius` → `--aithe-container-radius-md`
70
+ - **`src/components/display/desc.ts`** — `--aithe-border-radius-md` → `--aithe-radius-md`(2 处)
71
+ - **`src/components/display/markdown-editor.ts`** — `--aithe-container-radius` → `--aithe-container-radius-md`
72
+ - **`src/components/display/markdown.ts`** — `--aithe-container-radius` → `--aithe-container-radius-md`
73
+ - **`src/components/framework/dashboard-panel.ts`** — `--aithe-duration-normal` → `--aithe-duration-base`
74
+ - **`src/components/framework/dashboard.ts`** — `--aithe-duration-normal` → `--aithe-duration-slow`(4 处面板过渡)、`--aithe-duration-normal` → `--aithe-duration-base`(4 处面板定位过渡)
75
+ - **`src/components/framework/log-panel.ts`** — `--aithe-font-mono` → `--aithe-font-family-mono`
76
+ - **`src/components/framework/sidebar.ts`** — `--aithe-duration-normal` → `--aithe-duration-base`
77
+
78
+ #### `<aithe-desc>` 样式重构
79
+
80
+ - **`src/components/display/desc.ts`** — `.desc-cell-label` 移除 `padding`,新增 `display: flex; align-items: center` 实现居中;`.desc-cell-content.is-bordered:hover` 的 `background` 移除 `#e8e9ed` 回退值
81
+
82
+ #### `<aithe-desc-item>` 样式清理
83
+
84
+ - **`src/components/display/desc-item.ts`** — `.item-label` 移除 `padding: var(--aithe-space-2, 8px) var(--aithe-space-3, 12px)`
85
+
86
+ #### `<aithe-mini-box>` 样式修复
87
+
88
+ - **`src/components/display/mini-box.ts`** — hover 背景色从 `var(--aithe-color-surface-hover, var(--aithe-color-bg-hover, rgba(0,0,0,0.02)))` 简化为 `var(--aithe-color-surface-hover, rgba(0,0,0,0.02))`
89
+
90
+ #### `<aithe-autoform-item>` 颜色修正
91
+
92
+ - **`src/components/form/autoform-item.ts`** — `box-shadow` 中 `--aithe-primary-6-rgb` 回退值从 `59, 130, 246` 修正为 `77, 141, 255`
93
+
94
+ #### `<aithe-element>` JSDoc 更新
95
+
96
+ - **`src/core/aithe-element.ts`** — 类注释补充"浏览器环境检测"说明
97
+
98
+ ### 删除
99
+
100
+ 无。
@@ -0,0 +1,78 @@
1
+ # Issue 26.3.1.7
2
+
3
+ ## 版本信息
4
+
5
+ - **版本号**: 26.3.1.7
6
+ - **基线版本**: 26.3.1
7
+ - **类型**: Quality / Bug Fix
8
+ - **日期**: 2026-08-06
9
+
10
+ ## 变更概述
11
+
12
+ 1. **DataHub 错误处理增强** — HTTP 非 2xx 错误响应优先用 APIStyle 解析响应体,提取业务错误信息(code/message),避免丢失后端返回的友好错误描述;`DataHubError` 新增 `data` 字段携带原始响应体
13
+ 2. **K8s APIStyle 错误响应支持** — `k8sStyle.onResponse` 新增对 K8s `Status` 对象(`{kind:"Status", status:"Failure", message, reason, code}`)的识别,正确解析非 2xx 错误响应的 `reason`/`message`
14
+ 3. **DataHub 导入路径规范化** — datahub 模块内 5 个文件的 `../` 跨目录相对路径导入统一改为 `@core/datahub/*` 别名导入,符合 `src/core/AGENTS.md` 规范
15
+ 4. **Filter 测试导入路径规范化** — `filter/__tests__/index.test.ts` 的相对路径导入改为 `@core/filter/*` 别名导入
16
+ 5. **SSR 环境适配** — `<aithe-log-panel>`、`<aithe-affix>`、`<aithe-back-top>`、`<aithe-theme-switch>` 4 个组件的 `window` 引用改为 `globalThis`,兼容非浏览器环境
17
+ 6. **API 文档补充** — 新增 `<aithe-log-panel>`、`<aithe-desc-item>`、`<aithe-autoform-item>` 3 个组件的 API 文档;更新 `summary.md` 索引
18
+
19
+ ## 破坏性变更
20
+
21
+ 无。
22
+
23
+ ## 变更内容
24
+
25
+ ### 新增
26
+
27
+ #### API 文档
28
+
29
+ - **`docs/api/framework/log-panel.md`** — 新增 `<aithe-log-panel>` 组件 API 文档
30
+ - **`docs/api/display/desc-item.md`** — 新增 `<aithe-desc-item>` 组件 API 文档
31
+ - **`docs/api/form/autoform-item.md`** — 新增 `<aithe-autoform-item>` 组件 API 文档
32
+
33
+ #### DataHub 类型字段
34
+
35
+ - **`src/core/datahub/types.ts`** — `DataHubErrorDetail` 接口新增 `data?: unknown` 字段(原始响应体);`DataHubError` 类新增 `data?: unknown` 只读属性,构造函数同步赋值
36
+
37
+ ### 修改
38
+
39
+ #### DataHub 错误处理增强
40
+
41
+ - **`src/core/datahub/core/datahub-core.ts`** — HTTP 非 2xx 错误处理逻辑优化:`!res.ok` 时优先调用 `requestStyle.onResponse` 解析响应体,提取业务 `code`/`message` 后抛出 `DataHubError`;无 APIStyle 时回退到 `createTransportError`。复用 `:217` 已计算的 `requestStyle`,消除 `resolveRequestStyle` 重复调用
42
+ - **`src/core/datahub/core/datahub-core.ts`** — `createTransportError` 方法补充 `data: res.data`,与错误路径保持一致
43
+ - **`src/core/datahub/core/api-styles.ts`** — `k8sStyle.onResponse` 新增 K8s `Status` 错误对象识别:当 `!res.ok && typeof obj.status === 'string'` 时,返回 `{code: obj.reason ?? obj.status, message: obj.message, data: rawData}`,精确区分错误响应(顶层 `status` 为字符串)与正常响应(`status` 为对象)
44
+
45
+ #### DataHub 导入路径规范化
46
+
47
+ - **`src/core/datahub/core/adapter/fetch-adapter.ts`** — `../../types` → `@core/datahub/types`
48
+ - **`src/core/datahub/core/adapter/mock-adapter.ts`** — `../../types` → `@core/datahub/types`
49
+ - **`src/core/datahub/core/api-styles.ts`** — `../types` → `@core/datahub/types`
50
+ - **`src/core/datahub/core/datahub-core.ts`** — `../types`、`../config/strategy`、`../utils/*` → `@core/datahub/types`、`@core/datahub/config/strategy`、`@core/datahub/utils/*`(同目录的 `./api-styles`、`./adapter/*` 保持不变)
51
+ - **`src/core/datahub/config/strategy.ts`** — `../types`、`../utils/is-query` → `@core/datahub/types`、`@core/datahub/utils/is-query`
52
+ - **`src/core/datahub/utils/idempotent.ts`** — `../types` → `@core/datahub/types`(同目录的 `./common` 保持不变)
53
+
54
+ #### Filter 测试导入路径规范化
55
+
56
+ - **`src/core/filter/__tests__/index.test.ts`** — `../types`、`../builtins`、`../factory`、`../index` → `@core/filter/types`、`@core/filter/builtins`、`@core/filter/factory`、`@core/filter/index`
57
+
58
+ #### SSR 环境适配
59
+
60
+ - **`src/components/framework/log-panel.ts`** — `window.innerHeight` → `globalThis.innerHeight`
61
+ - **`src/components/layout/affix.ts`** — `window.addEventListener/removeEventListener('resize'/'scroll')` → `globalThis.addEventListener/removeEventListener`
62
+ - **`src/components/navigation/back-top.ts`** — `window.scrollY`、`window.scrollTo` → `globalThis.scrollY`、`globalThis.scrollTo`
63
+ - **`src/components/theme/theme-switch.ts`** — `window.addEventListener/removeEventListener('resize'/'scroll')` → `globalThis.addEventListener/removeEventListener`
64
+
65
+ #### API 文档更新
66
+
67
+ - **`docs/api/summary.md`** — 索引表新增 `<aithe-log-panel>` 行;表格列宽对齐调整
68
+ - **`docs/api/basic/tag.md`** — 文档内容更新
69
+ - **`docs/api/data/table.md`** — 文档内容更新
70
+ - **`docs/api/data/table-column.md`** — 文档内容更新
71
+ - **`docs/api/feedback/popover.md`** — 文档内容更新
72
+ - **`docs/api/feedback/tooltip.md`** — 文档内容更新
73
+ - **`docs/api/form/select.md`** — 文档内容更新
74
+ - **`docs/quickstart.md`** — 文档内容更新
75
+
76
+ ### 删除
77
+
78
+ 无。