@yoka-ui/ui 1.0.10-test

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 (484) hide show
  1. package/@Docs-yoka/exports.generated.md +92 -0
  2. package/@Docs-yoka/llms.txt +23 -0
  3. package/README.md +291 -0
  4. package/dist/es/Themes/InputTheme/index.d.ts +6 -0
  5. package/dist/es/Themes/InputTheme/index.js +22 -0
  6. package/dist/es/Themes/InputTheme/index.js.map +7 -0
  7. package/dist/es/Themes/TableTheme/index.d.ts +7 -0
  8. package/dist/es/Themes/TableTheme/index.js +31 -0
  9. package/dist/es/Themes/TableTheme/index.js.map +7 -0
  10. package/dist/es/Themes/TableTheme/index.less +46 -0
  11. package/dist/es/assets/image/YKUI-logo.png +0 -0
  12. package/dist/es/assets/less/ant-reset.less +402 -0
  13. package/dist/es/assets/less/index.less +1 -0
  14. package/dist/es/assets/less/variables.less +16 -0
  15. package/dist/es/business/AiChat/MarkdownRender.d.ts +9 -0
  16. package/dist/es/business/AiChat/MarkdownRender.js +72 -0
  17. package/dist/es/business/AiChat/MarkdownRender.js.map +7 -0
  18. package/dist/es/business/AiChat/index.d.ts +16 -0
  19. package/dist/es/business/AiChat/index.js +521 -0
  20. package/dist/es/business/AiChat/index.js.map +7 -0
  21. package/dist/es/business/AiChat/intentRecognizer.d.ts +33 -0
  22. package/dist/es/business/AiChat/intentRecognizer.js +166 -0
  23. package/dist/es/business/AiChat/intentRecognizer.js.map +7 -0
  24. package/dist/es/business/AiChat/navigationManager.d.ts +94 -0
  25. package/dist/es/business/AiChat/navigationManager.js +208 -0
  26. package/dist/es/business/AiChat/navigationManager.js.map +7 -0
  27. package/dist/es/business/AiChat/sse.d.ts +1 -0
  28. package/dist/es/business/AiChat/sse.js +60 -0
  29. package/dist/es/business/AiChat/sse.js.map +7 -0
  30. package/dist/es/business/AiChat/type.d.ts +157 -0
  31. package/dist/es/business/AiChat/type.js +1 -0
  32. package/dist/es/business/AiChat/type.js.map +7 -0
  33. package/dist/es/business/AiChat/useAiChat.d.ts +2 -0
  34. package/dist/es/business/AiChat/useAiChat.js +238 -0
  35. package/dist/es/business/AiChat/useAiChat.js.map +7 -0
  36. package/dist/es/business/AiChat/useTaskWorkflow.d.ts +26 -0
  37. package/dist/es/business/AiChat/useTaskWorkflow.js +230 -0
  38. package/dist/es/business/AiChat/useTaskWorkflow.js.map +7 -0
  39. package/dist/es/business/DrawerPageInfo/index.d.ts +35 -0
  40. package/dist/es/business/DrawerPageInfo/index.js +133 -0
  41. package/dist/es/business/DrawerPageInfo/index.js.map +7 -0
  42. package/dist/es/business/DrawerPageInfo/index.module.less +87 -0
  43. package/dist/es/business/DrawerPageInfo/test.png +0 -0
  44. package/dist/es/business/Editor/index.d.ts +11 -0
  45. package/dist/es/business/Editor/index.js +86 -0
  46. package/dist/es/business/Editor/index.js.map +7 -0
  47. package/dist/es/business/Editor/index.less +31 -0
  48. package/dist/es/business/Empty/empty.png +0 -0
  49. package/dist/es/business/Empty/index.d.ts +19 -0
  50. package/dist/es/business/Empty/index.js +51 -0
  51. package/dist/es/business/Empty/index.js.map +7 -0
  52. package/dist/es/business/ModCommonFilter/assets/images/empty.png +0 -0
  53. package/dist/es/business/ModCommonFilter/components/FilterButton/IconClose.d.ts +13 -0
  54. package/dist/es/business/ModCommonFilter/components/FilterButton/IconClose.js +51 -0
  55. package/dist/es/business/ModCommonFilter/components/FilterButton/IconClose.js.map +7 -0
  56. package/dist/es/business/ModCommonFilter/components/FilterButton/IconXiala.d.ts +13 -0
  57. package/dist/es/business/ModCommonFilter/components/FilterButton/IconXiala.js +51 -0
  58. package/dist/es/business/ModCommonFilter/components/FilterButton/IconXiala.js.map +7 -0
  59. package/dist/es/business/ModCommonFilter/components/FilterButton/index.d.ts +25 -0
  60. package/dist/es/business/ModCommonFilter/components/FilterButton/index.js +30 -0
  61. package/dist/es/business/ModCommonFilter/components/FilterButton/index.js.map +7 -0
  62. package/dist/es/business/ModCommonFilter/components/FilterButton/index.module.less +97 -0
  63. package/dist/es/business/ModCommonFilter/components/PopoverContent/Category.d.ts +18 -0
  64. package/dist/es/business/ModCommonFilter/components/PopoverContent/Category.js +74 -0
  65. package/dist/es/business/ModCommonFilter/components/PopoverContent/Category.js.map +7 -0
  66. package/dist/es/business/ModCommonFilter/components/PopoverContent/Content.d.ts +37 -0
  67. package/dist/es/business/ModCommonFilter/components/PopoverContent/Content.js +216 -0
  68. package/dist/es/business/ModCommonFilter/components/PopoverContent/Content.js.map +7 -0
  69. package/dist/es/business/ModCommonFilter/components/PopoverContent/Selected.d.ts +26 -0
  70. package/dist/es/business/ModCommonFilter/components/PopoverContent/Selected.js +102 -0
  71. package/dist/es/business/ModCommonFilter/components/PopoverContent/Selected.js.map +7 -0
  72. package/dist/es/business/ModCommonFilter/components/PopoverContent/index.d.ts +51 -0
  73. package/dist/es/business/ModCommonFilter/components/PopoverContent/index.js +71 -0
  74. package/dist/es/business/ModCommonFilter/components/PopoverContent/index.js.map +7 -0
  75. package/dist/es/business/ModCommonFilter/components/PopoverContent/index.module.less +260 -0
  76. package/dist/es/business/ModCommonFilter/index.d.ts +53 -0
  77. package/dist/es/business/ModCommonFilter/index.js +129 -0
  78. package/dist/es/business/ModCommonFilter/index.js.map +7 -0
  79. package/dist/es/business/ModCommonFilter/index.module.less +7 -0
  80. package/dist/es/business/ModCommonFilter/typing.d.ts +20 -0
  81. package/dist/es/business/ModCommonFilter/typing.js +1 -0
  82. package/dist/es/business/ModCommonFilter/typing.js.map +7 -0
  83. package/dist/es/business/YkPorjectSelect/icon-product.png +0 -0
  84. package/dist/es/business/YkPorjectSelect/index.d.ts +51 -0
  85. package/dist/es/business/YkPorjectSelect/index.js +260 -0
  86. package/dist/es/business/YkPorjectSelect/index.js.map +7 -0
  87. package/dist/es/business/YkPorjectSelect/index.module.less +334 -0
  88. package/dist/es/business/YkPorjectSelect/product-close.png +0 -0
  89. package/dist/es/components/Clock/index.d.ts +19 -0
  90. package/dist/es/components/Clock/index.js +55 -0
  91. package/dist/es/components/Clock/index.js.map +7 -0
  92. package/dist/es/components/DebounceInput/index.d.ts +16 -0
  93. package/dist/es/components/DebounceInput/index.js +77 -0
  94. package/dist/es/components/DebounceInput/index.js.map +7 -0
  95. package/dist/es/components/DebounceInput/index.module.less +23 -0
  96. package/dist/es/components/MultipleSelect/index.d.ts +23 -0
  97. package/dist/es/components/MultipleSelect/index.js +249 -0
  98. package/dist/es/components/MultipleSelect/index.js.map +7 -0
  99. package/dist/es/components/MultipleSelect/index.module.less +174 -0
  100. package/dist/es/components/NumericInput/index.d.ts +19 -0
  101. package/dist/es/components/NumericInput/index.js +56 -0
  102. package/dist/es/components/NumericInput/index.js.map +7 -0
  103. package/dist/es/components/RefreshButton/index.d.ts +8 -0
  104. package/dist/es/components/RefreshButton/index.js +21 -0
  105. package/dist/es/components/RefreshButton/index.js.map +7 -0
  106. package/dist/es/components/SearchWithHistory/index.d.ts +21 -0
  107. package/dist/es/components/SearchWithHistory/index.js +115 -0
  108. package/dist/es/components/SearchWithHistory/index.js.map +7 -0
  109. package/dist/es/components/SearchWithHistory/index.module.less +64 -0
  110. package/dist/es/components/TextWithInput/index.d.ts +15 -0
  111. package/dist/es/components/TextWithInput/index.js +35 -0
  112. package/dist/es/components/TextWithInput/index.js.map +7 -0
  113. package/dist/es/components/TextWithToolTip/index.d.ts +17 -0
  114. package/dist/es/components/TextWithToolTip/index.js +118 -0
  115. package/dist/es/components/TextWithToolTip/index.js.map +7 -0
  116. package/dist/es/components/TreeTransfer/components/TreeTransferPanel/index.d.ts +28 -0
  117. package/dist/es/components/TreeTransfer/components/TreeTransferPanel/index.js +161 -0
  118. package/dist/es/components/TreeTransfer/components/TreeTransferPanel/index.js.map +7 -0
  119. package/dist/es/components/TreeTransfer/components/TreeTransferPanel/index.less +151 -0
  120. package/dist/es/components/TreeTransfer/index.d.ts +28 -0
  121. package/dist/es/components/TreeTransfer/index.js +210 -0
  122. package/dist/es/components/TreeTransfer/index.js.map +7 -0
  123. package/dist/es/components/TreeTransfer/index.less +69 -0
  124. package/dist/es/components/TreeTransfer/types.d.ts +122 -0
  125. package/dist/es/components/TreeTransfer/types.js +6 -0
  126. package/dist/es/components/TreeTransfer/types.js.map +7 -0
  127. package/dist/es/components/TreeTransfer/utils/index.d.ts +120 -0
  128. package/dist/es/components/TreeTransfer/utils/index.js +195 -0
  129. package/dist/es/components/TreeTransfer/utils/index.js.map +7 -0
  130. package/dist/es/components/YkDateRangePicker/index.d.ts +57 -0
  131. package/dist/es/components/YkDateRangePicker/index.js +261 -0
  132. package/dist/es/components/YkDateRangePicker/index.js.map +7 -0
  133. package/dist/es/components/YkDateRangePicker/index.module.less +281 -0
  134. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSCompare.d.ts +16 -0
  135. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSCompare.js +193 -0
  136. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSCompare.js.map +7 -0
  137. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSRange.d.ts +31 -0
  138. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSRange.js +556 -0
  139. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSRange.js.map +7 -0
  140. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSSelect.d.ts +16 -0
  141. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSSelect.js +55 -0
  142. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSSelect.js.map +7 -0
  143. package/dist/es/components/YkRangeDateWithVS/index.d.ts +62 -0
  144. package/dist/es/components/YkRangeDateWithVS/index.js +130 -0
  145. package/dist/es/components/YkRangeDateWithVS/index.js.map +7 -0
  146. package/dist/es/components/YkRangeDateWithVS/index.module.less +548 -0
  147. package/dist/es/components/YkRangeDateWithVS/styles.d.ts +2 -0
  148. package/dist/es/components/YkRangeDateWithVS/styles.js +18 -0
  149. package/dist/es/components/YkRangeDateWithVS/styles.js.map +7 -0
  150. package/dist/es/components/YkRangeDateWithVS/typing.d.ts +15 -0
  151. package/dist/es/components/YkRangeTimeWithRecent/constants.d.ts +48 -0
  152. package/dist/es/components/YkRangeTimeWithRecent/constants.js +288 -0
  153. package/dist/es/components/YkRangeTimeWithRecent/constants.js.map +7 -0
  154. package/dist/es/components/YkRangeTimeWithRecent/index.d.ts +26 -0
  155. package/dist/es/components/YkRangeTimeWithRecent/index.js +647 -0
  156. package/dist/es/components/YkRangeTimeWithRecent/index.js.map +7 -0
  157. package/dist/es/components/YkRangeTimeWithRecent/index.module.less +263 -0
  158. package/dist/es/creative/ButtonRadioWithInfo/index.d.ts +17 -0
  159. package/dist/es/creative/ButtonRadioWithInfo/index.js +103 -0
  160. package/dist/es/creative/ButtonRadioWithInfo/index.js.map +7 -0
  161. package/dist/es/creative/ButtonRadioWithInfo/index.less +106 -0
  162. package/dist/es/creative/ButtonWithProgress/index.d.ts +11 -0
  163. package/dist/es/creative/ButtonWithProgress/index.js +79 -0
  164. package/dist/es/creative/ButtonWithProgress/index.js.map +7 -0
  165. package/dist/es/creative/ButtonWithProgress/index.less +66 -0
  166. package/dist/es/global.less +12 -0
  167. package/dist/es/index.d.ts +41 -0
  168. package/dist/es/index.js +85 -0
  169. package/dist/es/index.js.map +7 -0
  170. package/dist/es/layout/FlexGrid/index.d.ts +25 -0
  171. package/dist/es/layout/FlexGrid/index.js +63 -0
  172. package/dist/es/layout/FlexGrid/index.js.map +7 -0
  173. package/dist/es/layout/YkContainer/index.d.ts +27 -0
  174. package/dist/es/layout/YkContainer/index.js +79 -0
  175. package/dist/es/layout/YkContainer/index.js.map +7 -0
  176. package/dist/es/layout/YkDrawer/index.d.ts +22 -0
  177. package/dist/es/layout/YkDrawer/index.js +160 -0
  178. package/dist/es/layout/YkDrawer/index.js.map +7 -0
  179. package/dist/es/layout/YkDrawer/index.module.less +45 -0
  180. package/dist/es/ui/LabelSelect/demo.d.ts +3 -0
  181. package/dist/es/ui/LabelSelect/demo.js +83 -0
  182. package/dist/es/ui/LabelSelect/demo.js.map +7 -0
  183. package/dist/es/ui/LabelSelect/index.d.ts +41 -0
  184. package/dist/es/ui/LabelSelect/index.js +136 -0
  185. package/dist/es/ui/LabelSelect/index.js.map +7 -0
  186. package/dist/es/ui/LogicOperator/index.d.ts +10 -0
  187. package/dist/es/ui/LogicOperator/index.js +12 -0
  188. package/dist/es/ui/LogicOperator/index.js.map +7 -0
  189. package/dist/es/ui/LogicOperator/index.module.less +97 -0
  190. package/dist/es/ui/YkButton/index.d.ts +9 -0
  191. package/dist/es/ui/YkButton/index.js +59 -0
  192. package/dist/es/ui/YkButton/index.js.map +7 -0
  193. package/dist/es/ui/YkCard/index.d.ts +4 -0
  194. package/dist/es/ui/YkCard/index.js +79 -0
  195. package/dist/es/ui/YkCard/index.js.map +7 -0
  196. package/dist/es/ui/YkCard/index.module.less +30 -0
  197. package/dist/es/ui/YkCheckbox/index.d.ts +4 -0
  198. package/dist/es/ui/YkCheckbox/index.js +45 -0
  199. package/dist/es/ui/YkCheckbox/index.js.map +7 -0
  200. package/dist/es/ui/YkCheckbox/index.module.less +22 -0
  201. package/dist/es/ui/YkDescriptions/index.d.ts +4 -0
  202. package/dist/es/ui/YkDescriptions/index.js +41 -0
  203. package/dist/es/ui/YkDescriptions/index.js.map +7 -0
  204. package/dist/es/ui/YkPagination/index.d.ts +4 -0
  205. package/dist/es/ui/YkPagination/index.js +63 -0
  206. package/dist/es/ui/YkPagination/index.js.map +7 -0
  207. package/dist/es/ui/YkPagination/index.module.less +22 -0
  208. package/dist/es/ui/YkRadio/index.d.ts +4 -0
  209. package/dist/es/ui/YkRadio/index.js +51 -0
  210. package/dist/es/ui/YkRadio/index.js.map +7 -0
  211. package/dist/es/ui/YkRadio/index.module.less +22 -0
  212. package/dist/es/ui/YkRadioBtnSpecial/index.d.ts +15 -0
  213. package/dist/es/ui/YkRadioBtnSpecial/index.js +23 -0
  214. package/dist/es/ui/YkRadioBtnSpecial/index.js.map +7 -0
  215. package/dist/es/ui/YkRadioBtnSpecial/index.module.less +112 -0
  216. package/dist/es/ui/YkSegmented/index.d.ts +4 -0
  217. package/dist/es/ui/YkSegmented/index.js +41 -0
  218. package/dist/es/ui/YkSegmented/index.js.map +7 -0
  219. package/dist/es/ui/YkSelect/index.d.ts +7 -0
  220. package/dist/es/ui/YkSelect/index.js +54 -0
  221. package/dist/es/ui/YkSelect/index.js.map +7 -0
  222. package/dist/es/ui/YkSpin/index.d.ts +4 -0
  223. package/dist/es/ui/YkSpin/index.js +41 -0
  224. package/dist/es/ui/YkSpin/index.js.map +7 -0
  225. package/dist/es/ui/YkStatistic/index.d.ts +4 -0
  226. package/dist/es/ui/YkStatistic/index.js +41 -0
  227. package/dist/es/ui/YkStatistic/index.js.map +7 -0
  228. package/dist/es/ui/YkSwitch/index.d.ts +4 -0
  229. package/dist/es/ui/YkSwitch/index.js +51 -0
  230. package/dist/es/ui/YkSwitch/index.js.map +7 -0
  231. package/dist/es/ui/YkTabs/index.d.ts +12 -0
  232. package/dist/es/ui/YkTabs/index.js +75 -0
  233. package/dist/es/ui/YkTabs/index.js.map +7 -0
  234. package/dist/es/ui/YkTabs/index.module.less +11 -0
  235. package/dist/es/ui/YkTooltip/index.d.ts +4 -0
  236. package/dist/es/ui/YkTooltip/index.js +50 -0
  237. package/dist/es/ui/YkTooltip/index.js.map +7 -0
  238. package/dist/es/utils/styleUtils.d.ts +18 -0
  239. package/dist/es/utils/styleUtils.js +57 -0
  240. package/dist/es/utils/styleUtils.js.map +7 -0
  241. package/dist/es/utils/ykStorybookDoc.d.ts +17 -0
  242. package/dist/es/utils/ykStorybookDoc.js +18 -0
  243. package/dist/es/utils/ykStorybookDoc.js.map +7 -0
  244. package/dist/lib/Themes/InputTheme/index.d.ts +6 -0
  245. package/dist/lib/Themes/InputTheme/index.js +52 -0
  246. package/dist/lib/Themes/InputTheme/index.js.map +7 -0
  247. package/dist/lib/Themes/TableTheme/index.d.ts +7 -0
  248. package/dist/lib/Themes/TableTheme/index.js +61 -0
  249. package/dist/lib/Themes/TableTheme/index.js.map +7 -0
  250. package/dist/lib/Themes/TableTheme/index.less +46 -0
  251. package/dist/lib/assets/image/YKUI-logo.png +0 -0
  252. package/dist/lib/assets/less/ant-reset.less +402 -0
  253. package/dist/lib/assets/less/index.less +1 -0
  254. package/dist/lib/assets/less/variables.less +16 -0
  255. package/dist/lib/business/AiChat/MarkdownRender.d.ts +9 -0
  256. package/dist/lib/business/AiChat/MarkdownRender.js +102 -0
  257. package/dist/lib/business/AiChat/MarkdownRender.js.map +7 -0
  258. package/dist/lib/business/AiChat/index.d.ts +16 -0
  259. package/dist/lib/business/AiChat/index.js +514 -0
  260. package/dist/lib/business/AiChat/index.js.map +7 -0
  261. package/dist/lib/business/AiChat/intentRecognizer.d.ts +33 -0
  262. package/dist/lib/business/AiChat/intentRecognizer.js +193 -0
  263. package/dist/lib/business/AiChat/intentRecognizer.js.map +7 -0
  264. package/dist/lib/business/AiChat/navigationManager.d.ts +94 -0
  265. package/dist/lib/business/AiChat/navigationManager.js +214 -0
  266. package/dist/lib/business/AiChat/navigationManager.js.map +7 -0
  267. package/dist/lib/business/AiChat/sse.d.ts +1 -0
  268. package/dist/lib/business/AiChat/sse.js +61 -0
  269. package/dist/lib/business/AiChat/sse.js.map +7 -0
  270. package/dist/lib/business/AiChat/type.d.ts +157 -0
  271. package/dist/lib/business/AiChat/type.js +18 -0
  272. package/dist/lib/business/AiChat/type.js.map +7 -0
  273. package/dist/lib/business/AiChat/useAiChat.d.ts +2 -0
  274. package/dist/lib/business/AiChat/useAiChat.js +222 -0
  275. package/dist/lib/business/AiChat/useAiChat.js.map +7 -0
  276. package/dist/lib/business/AiChat/useTaskWorkflow.d.ts +26 -0
  277. package/dist/lib/business/AiChat/useTaskWorkflow.js +216 -0
  278. package/dist/lib/business/AiChat/useTaskWorkflow.js.map +7 -0
  279. package/dist/lib/business/DrawerPageInfo/index.d.ts +35 -0
  280. package/dist/lib/business/DrawerPageInfo/index.js +163 -0
  281. package/dist/lib/business/DrawerPageInfo/index.js.map +7 -0
  282. package/dist/lib/business/DrawerPageInfo/index.module.less +87 -0
  283. package/dist/lib/business/DrawerPageInfo/test.png +0 -0
  284. package/dist/lib/business/Editor/index.d.ts +11 -0
  285. package/dist/lib/business/Editor/index.js +99 -0
  286. package/dist/lib/business/Editor/index.js.map +7 -0
  287. package/dist/lib/business/Editor/index.less +31 -0
  288. package/dist/lib/business/Empty/empty.png +0 -0
  289. package/dist/lib/business/Empty/index.d.ts +19 -0
  290. package/dist/lib/business/Empty/index.js +65 -0
  291. package/dist/lib/business/Empty/index.js.map +7 -0
  292. package/dist/lib/business/ModCommonFilter/assets/images/empty.png +0 -0
  293. package/dist/lib/business/ModCommonFilter/components/FilterButton/IconClose.d.ts +13 -0
  294. package/dist/lib/business/ModCommonFilter/components/FilterButton/IconClose.js +50 -0
  295. package/dist/lib/business/ModCommonFilter/components/FilterButton/IconClose.js.map +7 -0
  296. package/dist/lib/business/ModCommonFilter/components/FilterButton/IconXiala.d.ts +13 -0
  297. package/dist/lib/business/ModCommonFilter/components/FilterButton/IconXiala.js +50 -0
  298. package/dist/lib/business/ModCommonFilter/components/FilterButton/IconXiala.js.map +7 -0
  299. package/dist/lib/business/ModCommonFilter/components/FilterButton/index.d.ts +25 -0
  300. package/dist/lib/business/ModCommonFilter/components/FilterButton/index.js +60 -0
  301. package/dist/lib/business/ModCommonFilter/components/FilterButton/index.js.map +7 -0
  302. package/dist/lib/business/ModCommonFilter/components/FilterButton/index.module.less +97 -0
  303. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Category.d.ts +18 -0
  304. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Category.js +69 -0
  305. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Category.js.map +7 -0
  306. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Content.d.ts +37 -0
  307. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Content.js +211 -0
  308. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Content.js.map +7 -0
  309. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Selected.d.ts +26 -0
  310. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Selected.js +97 -0
  311. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Selected.js.map +7 -0
  312. package/dist/lib/business/ModCommonFilter/components/PopoverContent/index.d.ts +51 -0
  313. package/dist/lib/business/ModCommonFilter/components/PopoverContent/index.js +101 -0
  314. package/dist/lib/business/ModCommonFilter/components/PopoverContent/index.js.map +7 -0
  315. package/dist/lib/business/ModCommonFilter/components/PopoverContent/index.module.less +260 -0
  316. package/dist/lib/business/ModCommonFilter/index.d.ts +53 -0
  317. package/dist/lib/business/ModCommonFilter/index.js +143 -0
  318. package/dist/lib/business/ModCommonFilter/index.js.map +7 -0
  319. package/dist/lib/business/ModCommonFilter/index.module.less +7 -0
  320. package/dist/lib/business/ModCommonFilter/typing.d.ts +20 -0
  321. package/dist/lib/business/ModCommonFilter/typing.js +18 -0
  322. package/dist/lib/business/ModCommonFilter/typing.js.map +7 -0
  323. package/dist/lib/business/YkPorjectSelect/icon-product.png +0 -0
  324. package/dist/lib/business/YkPorjectSelect/index.d.ts +51 -0
  325. package/dist/lib/business/YkPorjectSelect/index.js +235 -0
  326. package/dist/lib/business/YkPorjectSelect/index.js.map +7 -0
  327. package/dist/lib/business/YkPorjectSelect/index.module.less +334 -0
  328. package/dist/lib/business/YkPorjectSelect/product-close.png +0 -0
  329. package/dist/lib/components/Clock/index.d.ts +19 -0
  330. package/dist/lib/components/Clock/index.js +85 -0
  331. package/dist/lib/components/Clock/index.js.map +7 -0
  332. package/dist/lib/components/DebounceInput/index.d.ts +16 -0
  333. package/dist/lib/components/DebounceInput/index.js +107 -0
  334. package/dist/lib/components/DebounceInput/index.js.map +7 -0
  335. package/dist/lib/components/DebounceInput/index.module.less +23 -0
  336. package/dist/lib/components/MultipleSelect/index.d.ts +23 -0
  337. package/dist/lib/components/MultipleSelect/index.js +279 -0
  338. package/dist/lib/components/MultipleSelect/index.js.map +7 -0
  339. package/dist/lib/components/MultipleSelect/index.module.less +174 -0
  340. package/dist/lib/components/NumericInput/index.d.ts +19 -0
  341. package/dist/lib/components/NumericInput/index.js +67 -0
  342. package/dist/lib/components/NumericInput/index.js.map +7 -0
  343. package/dist/lib/components/RefreshButton/index.d.ts +8 -0
  344. package/dist/lib/components/RefreshButton/index.js +51 -0
  345. package/dist/lib/components/RefreshButton/index.js.map +7 -0
  346. package/dist/lib/components/SearchWithHistory/index.d.ts +21 -0
  347. package/dist/lib/components/SearchWithHistory/index.js +145 -0
  348. package/dist/lib/components/SearchWithHistory/index.js.map +7 -0
  349. package/dist/lib/components/SearchWithHistory/index.module.less +64 -0
  350. package/dist/lib/components/TextWithInput/index.d.ts +15 -0
  351. package/dist/lib/components/TextWithInput/index.js +65 -0
  352. package/dist/lib/components/TextWithInput/index.js.map +7 -0
  353. package/dist/lib/components/TextWithToolTip/index.d.ts +17 -0
  354. package/dist/lib/components/TextWithToolTip/index.js +134 -0
  355. package/dist/lib/components/TextWithToolTip/index.js.map +7 -0
  356. package/dist/lib/components/TreeTransfer/components/TreeTransferPanel/index.d.ts +28 -0
  357. package/dist/lib/components/TreeTransfer/components/TreeTransferPanel/index.js +191 -0
  358. package/dist/lib/components/TreeTransfer/components/TreeTransferPanel/index.js.map +7 -0
  359. package/dist/lib/components/TreeTransfer/components/TreeTransferPanel/index.less +151 -0
  360. package/dist/lib/components/TreeTransfer/index.d.ts +28 -0
  361. package/dist/lib/components/TreeTransfer/index.js +214 -0
  362. package/dist/lib/components/TreeTransfer/index.js.map +7 -0
  363. package/dist/lib/components/TreeTransfer/index.less +69 -0
  364. package/dist/lib/components/TreeTransfer/types.d.ts +122 -0
  365. package/dist/lib/components/TreeTransfer/types.js +30 -0
  366. package/dist/lib/components/TreeTransfer/types.js.map +7 -0
  367. package/dist/lib/components/TreeTransfer/utils/index.d.ts +120 -0
  368. package/dist/lib/components/TreeTransfer/utils/index.js +208 -0
  369. package/dist/lib/components/TreeTransfer/utils/index.js.map +7 -0
  370. package/dist/lib/components/YkDateRangePicker/index.d.ts +57 -0
  371. package/dist/lib/components/YkDateRangePicker/index.js +282 -0
  372. package/dist/lib/components/YkDateRangePicker/index.js.map +7 -0
  373. package/dist/lib/components/YkDateRangePicker/index.module.less +281 -0
  374. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSCompare.d.ts +16 -0
  375. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSCompare.js +223 -0
  376. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSCompare.js.map +7 -0
  377. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSRange.d.ts +31 -0
  378. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSRange.js +567 -0
  379. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSRange.js.map +7 -0
  380. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSSelect.d.ts +16 -0
  381. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSSelect.js +85 -0
  382. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSSelect.js.map +7 -0
  383. package/dist/lib/components/YkRangeDateWithVS/index.d.ts +62 -0
  384. package/dist/lib/components/YkRangeDateWithVS/index.js +140 -0
  385. package/dist/lib/components/YkRangeDateWithVS/index.js.map +7 -0
  386. package/dist/lib/components/YkRangeDateWithVS/index.module.less +548 -0
  387. package/dist/lib/components/YkRangeDateWithVS/styles.d.ts +2 -0
  388. package/dist/lib/components/YkRangeDateWithVS/styles.js +48 -0
  389. package/dist/lib/components/YkRangeDateWithVS/styles.js.map +7 -0
  390. package/dist/lib/components/YkRangeDateWithVS/typing.d.ts +15 -0
  391. package/dist/lib/components/YkRangeTimeWithRecent/constants.d.ts +48 -0
  392. package/dist/lib/components/YkRangeTimeWithRecent/constants.js +333 -0
  393. package/dist/lib/components/YkRangeTimeWithRecent/constants.js.map +7 -0
  394. package/dist/lib/components/YkRangeTimeWithRecent/index.d.ts +26 -0
  395. package/dist/lib/components/YkRangeTimeWithRecent/index.js +647 -0
  396. package/dist/lib/components/YkRangeTimeWithRecent/index.js.map +7 -0
  397. package/dist/lib/components/YkRangeTimeWithRecent/index.module.less +263 -0
  398. package/dist/lib/creative/ButtonRadioWithInfo/index.d.ts +17 -0
  399. package/dist/lib/creative/ButtonRadioWithInfo/index.js +102 -0
  400. package/dist/lib/creative/ButtonRadioWithInfo/index.js.map +7 -0
  401. package/dist/lib/creative/ButtonRadioWithInfo/index.less +106 -0
  402. package/dist/lib/creative/ButtonWithProgress/index.d.ts +11 -0
  403. package/dist/lib/creative/ButtonWithProgress/index.js +70 -0
  404. package/dist/lib/creative/ButtonWithProgress/index.js.map +7 -0
  405. package/dist/lib/creative/ButtonWithProgress/index.less +66 -0
  406. package/dist/lib/global.less +12 -0
  407. package/dist/lib/index.d.ts +41 -0
  408. package/dist/lib/index.js +158 -0
  409. package/dist/lib/index.js.map +7 -0
  410. package/dist/lib/layout/FlexGrid/index.d.ts +25 -0
  411. package/dist/lib/layout/FlexGrid/index.js +77 -0
  412. package/dist/lib/layout/FlexGrid/index.js.map +7 -0
  413. package/dist/lib/layout/YkContainer/index.d.ts +27 -0
  414. package/dist/lib/layout/YkContainer/index.js +79 -0
  415. package/dist/lib/layout/YkContainer/index.js.map +7 -0
  416. package/dist/lib/layout/YkDrawer/index.d.ts +22 -0
  417. package/dist/lib/layout/YkDrawer/index.js +152 -0
  418. package/dist/lib/layout/YkDrawer/index.js.map +7 -0
  419. package/dist/lib/layout/YkDrawer/index.module.less +45 -0
  420. package/dist/lib/ui/LabelSelect/demo.d.ts +3 -0
  421. package/dist/lib/ui/LabelSelect/demo.js +113 -0
  422. package/dist/lib/ui/LabelSelect/demo.js.map +7 -0
  423. package/dist/lib/ui/LabelSelect/index.d.ts +41 -0
  424. package/dist/lib/ui/LabelSelect/index.js +124 -0
  425. package/dist/lib/ui/LabelSelect/index.js.map +7 -0
  426. package/dist/lib/ui/LogicOperator/index.d.ts +10 -0
  427. package/dist/lib/ui/LogicOperator/index.js +42 -0
  428. package/dist/lib/ui/LogicOperator/index.js.map +7 -0
  429. package/dist/lib/ui/LogicOperator/index.module.less +97 -0
  430. package/dist/lib/ui/YkButton/index.d.ts +9 -0
  431. package/dist/lib/ui/YkButton/index.js +55 -0
  432. package/dist/lib/ui/YkButton/index.js.map +7 -0
  433. package/dist/lib/ui/YkCard/index.d.ts +4 -0
  434. package/dist/lib/ui/YkCard/index.js +76 -0
  435. package/dist/lib/ui/YkCard/index.js.map +7 -0
  436. package/dist/lib/ui/YkCard/index.module.less +30 -0
  437. package/dist/lib/ui/YkCheckbox/index.d.ts +4 -0
  438. package/dist/lib/ui/YkCheckbox/index.js +42 -0
  439. package/dist/lib/ui/YkCheckbox/index.js.map +7 -0
  440. package/dist/lib/ui/YkCheckbox/index.module.less +22 -0
  441. package/dist/lib/ui/YkDescriptions/index.d.ts +4 -0
  442. package/dist/lib/ui/YkDescriptions/index.js +41 -0
  443. package/dist/lib/ui/YkDescriptions/index.js.map +7 -0
  444. package/dist/lib/ui/YkPagination/index.d.ts +4 -0
  445. package/dist/lib/ui/YkPagination/index.js +60 -0
  446. package/dist/lib/ui/YkPagination/index.js.map +7 -0
  447. package/dist/lib/ui/YkPagination/index.module.less +22 -0
  448. package/dist/lib/ui/YkRadio/index.d.ts +4 -0
  449. package/dist/lib/ui/YkRadio/index.js +51 -0
  450. package/dist/lib/ui/YkRadio/index.js.map +7 -0
  451. package/dist/lib/ui/YkRadio/index.module.less +22 -0
  452. package/dist/lib/ui/YkRadioBtnSpecial/index.d.ts +15 -0
  453. package/dist/lib/ui/YkRadioBtnSpecial/index.js +53 -0
  454. package/dist/lib/ui/YkRadioBtnSpecial/index.js.map +7 -0
  455. package/dist/lib/ui/YkRadioBtnSpecial/index.module.less +112 -0
  456. package/dist/lib/ui/YkSegmented/index.d.ts +4 -0
  457. package/dist/lib/ui/YkSegmented/index.js +41 -0
  458. package/dist/lib/ui/YkSegmented/index.js.map +7 -0
  459. package/dist/lib/ui/YkSelect/index.d.ts +7 -0
  460. package/dist/lib/ui/YkSelect/index.js +54 -0
  461. package/dist/lib/ui/YkSelect/index.js.map +7 -0
  462. package/dist/lib/ui/YkSpin/index.d.ts +4 -0
  463. package/dist/lib/ui/YkSpin/index.js +41 -0
  464. package/dist/lib/ui/YkSpin/index.js.map +7 -0
  465. package/dist/lib/ui/YkStatistic/index.d.ts +4 -0
  466. package/dist/lib/ui/YkStatistic/index.js +41 -0
  467. package/dist/lib/ui/YkStatistic/index.js.map +7 -0
  468. package/dist/lib/ui/YkSwitch/index.d.ts +4 -0
  469. package/dist/lib/ui/YkSwitch/index.js +51 -0
  470. package/dist/lib/ui/YkSwitch/index.js.map +7 -0
  471. package/dist/lib/ui/YkTabs/index.d.ts +12 -0
  472. package/dist/lib/ui/YkTabs/index.js +70 -0
  473. package/dist/lib/ui/YkTabs/index.js.map +7 -0
  474. package/dist/lib/ui/YkTabs/index.module.less +11 -0
  475. package/dist/lib/ui/YkTooltip/index.d.ts +4 -0
  476. package/dist/lib/ui/YkTooltip/index.js +45 -0
  477. package/dist/lib/ui/YkTooltip/index.js.map +7 -0
  478. package/dist/lib/utils/styleUtils.d.ts +18 -0
  479. package/dist/lib/utils/styleUtils.js +84 -0
  480. package/dist/lib/utils/styleUtils.js.map +7 -0
  481. package/dist/lib/utils/ykStorybookDoc.d.ts +17 -0
  482. package/dist/lib/utils/ykStorybookDoc.js +41 -0
  483. package/dist/lib/utils/ykStorybookDoc.js.map +7 -0
  484. package/package.json +147 -0
@@ -0,0 +1,157 @@
1
+ /// <reference types="react" />
2
+ export interface Message {
3
+ id: string;
4
+ role: 'user' | 'ai' | 'system';
5
+ content: string;
6
+ loading?: boolean;
7
+ category?: MessageCategory;
8
+ tags?: string[];
9
+ taskId?: string;
10
+ }
11
+ export type MessageCategory = 'technical' | 'business' | 'general' | 'task_creation' | 'task_query' | 'api_call';
12
+ export interface ChatSession {
13
+ id: string;
14
+ title: string;
15
+ createTime: number;
16
+ messages: Message[];
17
+ }
18
+ export interface AiChatConfig {
19
+ apiPath?: string;
20
+ storageKey?: string;
21
+ position?: {
22
+ bottom?: number;
23
+ right?: number;
24
+ };
25
+ buttonSize?: number;
26
+ drawerWidth?: number;
27
+ zIndex?: number;
28
+ showSessionPanel?: boolean;
29
+ showExport?: boolean;
30
+ onBeforeSend?: (content: string) => boolean | Promise<boolean>;
31
+ onError?: (error: Error) => void;
32
+ onSuccess?: () => void;
33
+ }
34
+ export interface UseAiChatOptions {
35
+ apiPath?: string;
36
+ storageKey?: string;
37
+ onBeforeSend?: (content: string) => boolean | Promise<boolean>;
38
+ onError?: (error: Error) => void;
39
+ onSuccess?: () => void;
40
+ }
41
+ export interface UseAiChatReturn {
42
+ sessions: ChatSession[];
43
+ activeSession: ChatSession | null;
44
+ loading: boolean;
45
+ visible: boolean;
46
+ createNewSession: () => void;
47
+ switchSession: (id: string) => void;
48
+ deleteSession: (id: string, e: React.MouseEvent) => void;
49
+ sendQuestion: (content: string, regenId?: string) => Promise<void>;
50
+ regenerateAnswer: (msg: Message) => void;
51
+ deleteSingleMsg: (id: string, e: React.MouseEvent) => void;
52
+ clearCurrentSession: () => void;
53
+ exportCurrentSession: () => void;
54
+ cancelRequest: () => void;
55
+ toggleVisible: (v?: boolean) => void;
56
+ }
57
+ export interface Intent {
58
+ type: IntentType;
59
+ confidence: number;
60
+ parameters: Record<string, any>;
61
+ rawText: string;
62
+ matchedPattern?: string;
63
+ }
64
+ export type IntentType = 'create_task' | 'query_task' | 'update_task' | 'delete_task' | 'call_api' | 'general_question';
65
+ export interface IntentPattern {
66
+ type: IntentType;
67
+ patterns: RegExp[];
68
+ taskType?: TaskCategory;
69
+ }
70
+ export interface Task {
71
+ id: string;
72
+ title: string;
73
+ description: string;
74
+ category: TaskCategory;
75
+ priority: TaskPriority;
76
+ status: TaskStatus;
77
+ dueDate?: number;
78
+ assignee?: string;
79
+ sourceMessageId?: string;
80
+ createTime: number;
81
+ apiResponse?: Record<string, any>;
82
+ }
83
+ export type TaskCategory = 'paimon' | 'data_sync' | 'report' | 'etl' | 'bug' | 'feature' | 'analysis' | 'other';
84
+ export type TaskPriority = 'high' | 'medium' | 'low';
85
+ export type TaskStatus = 'pending' | 'in_progress' | 'completed' | 'cancelled' | 'failed';
86
+ export interface TaskTypeConfig {
87
+ type: string;
88
+ name: string;
89
+ description?: string;
90
+ apiEndpoint?: string;
91
+ defaultParams?: Record<string, any>;
92
+ urlPattern?: string;
93
+ keywords?: string[];
94
+ }
95
+ export interface TaskCreationResult {
96
+ success: boolean;
97
+ taskId?: string;
98
+ taskData?: any;
99
+ error?: string;
100
+ redirectUrl?: string;
101
+ }
102
+ export interface NavigationOptions {
103
+ replace?: boolean;
104
+ merge?: boolean;
105
+ queryParams?: Record<string, string>;
106
+ fragment?: string;
107
+ }
108
+ export interface QuestionTemplate {
109
+ id: string;
110
+ name: string;
111
+ content: string;
112
+ category?: MessageCategory;
113
+ tags?: string[];
114
+ }
115
+ export interface EnhancedAiChatConfig extends AiChatConfig {
116
+ taskWorkflow?: {
117
+ enabled?: boolean;
118
+ createTaskApi?: string;
119
+ supportedTaskTypes?: TaskTypeConfig[];
120
+ autoNavigate?: boolean;
121
+ taskIdParamName?: string;
122
+ taskTypeParamName?: string;
123
+ };
124
+ intentRecognition?: {
125
+ enabled?: boolean;
126
+ customPatterns?: IntentPattern[];
127
+ confidenceThreshold?: number;
128
+ };
129
+ navigation?: {
130
+ refreshStrategy?: 'immediate' | 'delayed' | 'manual';
131
+ refreshDelay?: number;
132
+ preserveQueryParams?: boolean;
133
+ urlBuilder?: (taskId: string, taskType: string) => string;
134
+ };
135
+ questionConfig?: {
136
+ enableQuestionEnhancement?: boolean;
137
+ categories?: string[];
138
+ templates?: QuestionTemplate[];
139
+ maxRelatedQuestions?: number;
140
+ };
141
+ }
142
+ export interface EnhancedUseAiChatReturn extends UseAiChatReturn {
143
+ tasks: Task[];
144
+ createTask: (task: Omit<Task, 'id' | 'createTime'>) => void;
145
+ updateTaskStatus: (taskId: string, status: TaskStatus) => void;
146
+ deleteTask: (taskId: string) => void;
147
+ exportTasks: (format?: 'json' | 'csv') => void;
148
+ recognizeIntent: (text: string) => Intent;
149
+ createTaskFromNaturalLanguage: (description: string) => Promise<TaskCreationResult>;
150
+ updateUrlWithTaskId: (taskId: string, options?: NavigationOptions) => void;
151
+ refreshCurrentPage: (taskId?: string) => void;
152
+ executeTaskCreationWorkflow: (description: string) => Promise<void>;
153
+ categorizeQuestion: (content: string) => MessageCategory;
154
+ getRelatedQuestions: (messageId: string) => string[];
155
+ applyQuestionTemplate: (templateId: string) => void;
156
+ questionTemplates: QuestionTemplate[];
157
+ }
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=type.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1,2 @@
1
+ import type { UseAiChatOptions, UseAiChatReturn } from './type';
2
+ export declare function useAiChat(options?: UseAiChatOptions): UseAiChatReturn;
@@ -0,0 +1,238 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ var __async = (__this, __arguments, generator) => {
21
+ return new Promise((resolve, reject) => {
22
+ var fulfilled = (value) => {
23
+ try {
24
+ step(generator.next(value));
25
+ } catch (e) {
26
+ reject(e);
27
+ }
28
+ };
29
+ var rejected = (value) => {
30
+ try {
31
+ step(generator.throw(value));
32
+ } catch (e) {
33
+ reject(e);
34
+ }
35
+ };
36
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
37
+ step((generator = generator.apply(__this, __arguments)).next());
38
+ });
39
+ };
40
+
41
+ // src/business/AiChat/useAiChat.ts
42
+ import { message } from "antd";
43
+ import { useCallback, useEffect, useState } from "react";
44
+ import { createSSE } from "./sse";
45
+ function useAiChat(options) {
46
+ const apiPath = (options == null ? void 0 : options.apiPath) || "/api/ai/chat-stream";
47
+ const storageKey = (options == null ? void 0 : options.storageKey) || "ai_chat_sessions";
48
+ const [sessions, setSessions] = useState([]);
49
+ const [activeSession, setActiveSession] = useState(null);
50
+ const [loading, setLoading] = useState(false);
51
+ const [cancelFn, setCancelFn] = useState(null);
52
+ const [visible, setVisible] = useState(false);
53
+ useEffect(() => {
54
+ const saved = localStorage.getItem(storageKey);
55
+ if (saved) {
56
+ const list = JSON.parse(saved);
57
+ setSessions(list);
58
+ if (list.length > 0)
59
+ setActiveSession(list[list.length - 1]);
60
+ }
61
+ }, [storageKey]);
62
+ useEffect(() => {
63
+ if (sessions.length)
64
+ localStorage.setItem(storageKey, JSON.stringify(sessions));
65
+ }, [sessions, storageKey]);
66
+ const createNewSession = useCallback(() => {
67
+ const s = {
68
+ id: Date.now().toString(),
69
+ title: "新会话",
70
+ createTime: Date.now(),
71
+ messages: []
72
+ };
73
+ setSessions((prev) => [...prev, s]);
74
+ setActiveSession(s);
75
+ setVisible(true);
76
+ }, []);
77
+ const switchSession = useCallback(
78
+ (id) => {
79
+ const s = sessions.find((x) => x.id === id);
80
+ if (s)
81
+ setActiveSession(s);
82
+ },
83
+ [sessions]
84
+ );
85
+ const deleteSession = useCallback(
86
+ (id, e) => {
87
+ var _a;
88
+ e.stopPropagation();
89
+ const ns = sessions.filter((x) => x.id !== id);
90
+ setSessions(ns);
91
+ if ((activeSession == null ? void 0 : activeSession.id) === id)
92
+ setActiveSession((_a = ns.at(-1)) != null ? _a : null);
93
+ },
94
+ [sessions, activeSession]
95
+ );
96
+ const sendQuestion = useCallback(
97
+ (content, regenId) => __async(this, null, function* () {
98
+ if (!content.trim() || !activeSession)
99
+ return;
100
+ if (options == null ? void 0 : options.onBeforeSend) {
101
+ const canSend = yield options.onBeforeSend(content);
102
+ if (!canSend)
103
+ return;
104
+ }
105
+ const user = { id: `${Date.now()}_u`, role: "user", content };
106
+ const ai = {
107
+ id: `${Date.now()}_ai`,
108
+ role: "ai",
109
+ content: "",
110
+ loading: true
111
+ };
112
+ let newMsgs = [];
113
+ if (regenId) {
114
+ newMsgs = activeSession.messages.map((m) => m.id === regenId ? ai : m);
115
+ } else {
116
+ newMsgs = [...activeSession.messages, user, ai];
117
+ }
118
+ const updated = __spreadProps(__spreadValues({}, activeSession), {
119
+ title: activeSession.messages.length === 0 ? content.slice(0, 20) : activeSession.title,
120
+ messages: newMsgs
121
+ });
122
+ setActiveSession(updated);
123
+ setSessions((prev) => prev.map((x) => x.id === updated.id ? updated : x));
124
+ setLoading(true);
125
+ const cancel = yield createSSE(
126
+ apiPath,
127
+ {
128
+ prompt: content,
129
+ history: updated.messages.filter((m) => !m.loading),
130
+ useMcp: true,
131
+ sessionId: activeSession.id
132
+ },
133
+ (text) => {
134
+ if (!activeSession)
135
+ return;
136
+ const ms = updated.messages.map((m) => m.loading ? __spreadProps(__spreadValues({}, m), { content: m.content + text }) : m);
137
+ const su = __spreadProps(__spreadValues({}, updated), { messages: ms });
138
+ setActiveSession(su);
139
+ setSessions((prev) => prev.map((x) => x.id === su.id ? su : x));
140
+ },
141
+ () => {
142
+ var _a;
143
+ setLoading(false);
144
+ const ms = updated.messages.map((m) => m.loading ? __spreadProps(__spreadValues({}, m), { loading: false }) : m);
145
+ const su = __spreadProps(__spreadValues({}, updated), { messages: ms });
146
+ setActiveSession(su);
147
+ setSessions((prev) => prev.map((x) => x.id === su.id ? su : x));
148
+ (_a = options == null ? void 0 : options.onSuccess) == null ? void 0 : _a.call(options);
149
+ },
150
+ (err) => {
151
+ var _a;
152
+ setLoading(false);
153
+ const errorMsg = err.message;
154
+ message.error(`请求异常:${errorMsg}`);
155
+ (_a = options == null ? void 0 : options.onError) == null ? void 0 : _a.call(options, err);
156
+ }
157
+ );
158
+ setCancelFn(() => cancel);
159
+ }),
160
+ [activeSession, apiPath, options]
161
+ );
162
+ const regenerateAnswer = useCallback(
163
+ (msg) => {
164
+ if (!activeSession)
165
+ return;
166
+ const idx = activeSession.messages.findIndex((x) => x.id === msg.id);
167
+ const userMsg = activeSession.messages[idx - 1];
168
+ if ((userMsg == null ? void 0 : userMsg.role) === "user")
169
+ sendQuestion(userMsg.content, msg.id);
170
+ },
171
+ [activeSession, sendQuestion]
172
+ );
173
+ const deleteSingleMsg = useCallback(
174
+ (id, e) => {
175
+ e.stopPropagation();
176
+ if (!activeSession)
177
+ return;
178
+ const ms = activeSession.messages.filter((x) => x.id !== id);
179
+ const up = __spreadProps(__spreadValues({}, activeSession), { messages: ms });
180
+ setActiveSession(up);
181
+ setSessions((prev) => prev.map((x) => x.id === up.id ? up : x));
182
+ },
183
+ [activeSession]
184
+ );
185
+ const clearCurrentSession = useCallback(() => {
186
+ if (!activeSession)
187
+ return;
188
+ const up = __spreadProps(__spreadValues({}, activeSession), { messages: [] });
189
+ setActiveSession(up);
190
+ setSessions((prev) => prev.map((x) => x.id === up.id ? up : x));
191
+ }, [activeSession]);
192
+ const exportCurrentSession = useCallback(() => {
193
+ if (!activeSession || activeSession.messages.length === 0) {
194
+ message.warning("无内容可导出");
195
+ return;
196
+ }
197
+ const data = {
198
+ title: activeSession.title,
199
+ createTime: new Date(activeSession.createTime).toLocaleString(),
200
+ exportTime: (/* @__PURE__ */ new Date()).toLocaleString(),
201
+ messages: activeSession.messages
202
+ };
203
+ const blob = new Blob([JSON.stringify(data, null, 2)], {
204
+ type: "application/json"
205
+ });
206
+ const a = document.createElement("a");
207
+ a.href = URL.createObjectURL(blob);
208
+ a.download = `${activeSession.title}_${Date.now()}.json`;
209
+ a.click();
210
+ URL.revokeObjectURL(a.href);
211
+ message.success("导出成功");
212
+ }, [activeSession]);
213
+ const cancelRequest = useCallback(() => {
214
+ cancelFn == null ? void 0 : cancelFn();
215
+ setLoading(false);
216
+ }, [cancelFn]);
217
+ const toggleVisible = useCallback((v) => setVisible(v != null ? v : !visible), [visible]);
218
+ return {
219
+ sessions,
220
+ activeSession,
221
+ loading,
222
+ visible,
223
+ createNewSession,
224
+ switchSession,
225
+ deleteSession,
226
+ sendQuestion,
227
+ regenerateAnswer,
228
+ deleteSingleMsg,
229
+ clearCurrentSession,
230
+ exportCurrentSession,
231
+ cancelRequest,
232
+ toggleVisible
233
+ };
234
+ }
235
+ export {
236
+ useAiChat
237
+ };
238
+ //# sourceMappingURL=useAiChat.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/business/AiChat/useAiChat.ts"],
4
+ "sourcesContent": ["import { message } from 'antd';\nimport { useCallback, useEffect, useState } from 'react';\nimport { createSSE } from './sse';\nimport type { ChatSession, Message, UseAiChatOptions, UseAiChatReturn } from './type';\n\nexport function useAiChat(options?: UseAiChatOptions): UseAiChatReturn {\n const apiPath = options?.apiPath || '/api/ai/chat-stream';\n const storageKey = options?.storageKey || 'ai_chat_sessions';\n\n const [sessions, setSessions] = useState<ChatSession[]>([]);\n const [activeSession, setActiveSession] = useState<ChatSession | null>(null);\n const [loading, setLoading] = useState(false);\n const [cancelFn, setCancelFn] = useState<(() => void) | null>(null);\n const [visible, setVisible] = useState(false);\n\n useEffect(() => {\n const saved = localStorage.getItem(storageKey);\n if (saved) {\n const list = JSON.parse(saved);\n setSessions(list);\n if (list.length > 0) setActiveSession(list[list.length - 1]);\n }\n }, [storageKey]);\n\n useEffect(() => {\n if (sessions.length) localStorage.setItem(storageKey, JSON.stringify(sessions));\n }, [sessions, storageKey]);\n\n const createNewSession = useCallback(() => {\n const s: ChatSession = {\n id: Date.now().toString(),\n title: '新会话',\n createTime: Date.now(),\n messages: [],\n };\n setSessions((prev) => [...prev, s]);\n setActiveSession(s);\n setVisible(true);\n }, []);\n\n const switchSession = useCallback(\n (id: string) => {\n const s = sessions.find((x) => x.id === id);\n if (s) setActiveSession(s);\n },\n [sessions],\n );\n\n const deleteSession = useCallback(\n (id: string, e: React.MouseEvent) => {\n e.stopPropagation();\n const ns = sessions.filter((x) => x.id !== id);\n setSessions(ns);\n if (activeSession?.id === id) setActiveSession(ns.at(-1) ?? null);\n },\n [sessions, activeSession],\n );\n\n const sendQuestion = useCallback(\n async (content: string, regenId?: string) => {\n if (!content.trim() || !activeSession) return;\n\n if (options?.onBeforeSend) {\n const canSend = await options.onBeforeSend(content);\n if (!canSend) return;\n }\n\n const user: Message = { id: `${Date.now()}_u`, role: 'user', content };\n const ai: Message = {\n id: `${Date.now()}_ai`,\n role: 'ai',\n content: '',\n loading: true,\n };\n\n let newMsgs: Message[] = [];\n if (regenId) {\n newMsgs = activeSession.messages.map((m) => (m.id === regenId ? ai : m));\n } else {\n newMsgs = [...activeSession.messages, user, ai];\n }\n\n const updated: ChatSession = {\n ...activeSession,\n title: activeSession.messages.length === 0 ? content.slice(0, 20) : activeSession.title,\n messages: newMsgs,\n };\n setActiveSession(updated);\n setSessions((prev) => prev.map((x) => (x.id === updated.id ? updated : x)));\n\n setLoading(true);\n const cancel = await createSSE(\n apiPath,\n {\n prompt: content,\n history: updated.messages.filter((m) => !m.loading),\n useMcp: true,\n sessionId: activeSession.id,\n },\n (text) => {\n if (!activeSession) return;\n const ms = updated.messages.map((m) => (m.loading ? { ...m, content: m.content + text } : m));\n const su = { ...updated, messages: ms };\n setActiveSession(su);\n setSessions((prev) => prev.map((x) => (x.id === su.id ? su : x)));\n },\n () => {\n setLoading(false);\n const ms = updated.messages.map((m) => (m.loading ? { ...m, loading: false } : m));\n const su = { ...updated, messages: ms };\n setActiveSession(su);\n setSessions((prev) => prev.map((x) => (x.id === su.id ? su : x)));\n options?.onSuccess?.();\n },\n (err) => {\n setLoading(false);\n const errorMsg = err.message;\n message.error(`请求异常:${errorMsg}`);\n options?.onError?.(err);\n },\n );\n setCancelFn(() => cancel);\n },\n [activeSession, apiPath, options],\n );\n\n const regenerateAnswer = useCallback(\n (msg: Message) => {\n if (!activeSession) return;\n const idx = activeSession.messages.findIndex((x) => x.id === msg.id);\n const userMsg = activeSession.messages[idx - 1];\n if (userMsg?.role === 'user') sendQuestion(userMsg.content, msg.id);\n },\n [activeSession, sendQuestion],\n );\n\n const deleteSingleMsg = useCallback(\n (id: string, e: React.MouseEvent) => {\n e.stopPropagation();\n if (!activeSession) return;\n const ms = activeSession.messages.filter((x) => x.id !== id);\n const up = { ...activeSession, messages: ms };\n setActiveSession(up);\n setSessions((prev) => prev.map((x) => (x.id === up.id ? up : x)));\n },\n [activeSession],\n );\n\n const clearCurrentSession = useCallback(() => {\n if (!activeSession) return;\n const up = { ...activeSession, messages: [] };\n setActiveSession(up);\n setSessions((prev) => prev.map((x) => (x.id === up.id ? up : x)));\n }, [activeSession]);\n\n const exportCurrentSession = useCallback(() => {\n if (!activeSession || activeSession.messages.length === 0) {\n message.warning('无内容可导出');\n return;\n }\n const data = {\n title: activeSession.title,\n createTime: new Date(activeSession.createTime).toLocaleString(),\n exportTime: new Date().toLocaleString(),\n messages: activeSession.messages,\n };\n const blob = new Blob([JSON.stringify(data, null, 2)], {\n type: 'application/json',\n });\n const a = document.createElement('a');\n a.href = URL.createObjectURL(blob);\n a.download = `${activeSession.title}_${Date.now()}.json`;\n a.click();\n URL.revokeObjectURL(a.href);\n message.success('导出成功');\n }, [activeSession]);\n\n const cancelRequest = useCallback(() => {\n cancelFn?.();\n setLoading(false);\n }, [cancelFn]);\n\n const toggleVisible = useCallback((v?: boolean) => setVisible(v ?? !visible), [visible]);\n\n return {\n sessions,\n activeSession,\n loading,\n visible,\n createNewSession,\n switchSession,\n deleteSession,\n sendQuestion,\n regenerateAnswer,\n deleteSingleMsg,\n clearCurrentSession,\n exportCurrentSession,\n cancelRequest,\n toggleVisible,\n };\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -0,0 +1,26 @@
1
+ import { recognizeIntent } from './intentRecognizer';
2
+ import type { Task, TaskCreationResult, NavigationOptions, TaskTypeConfig } from './type';
3
+ export interface UseTaskWorkflowOptions {
4
+ enabled?: boolean;
5
+ createTaskApi?: string;
6
+ supportedTaskTypes?: TaskTypeConfig[];
7
+ autoNavigate?: boolean;
8
+ refreshDelay?: number;
9
+ taskIdParamName?: string;
10
+ taskTypeParamName?: string;
11
+ onTaskCreated?: (taskId: string, taskData?: any) => void;
12
+ onError?: (error: Error) => void;
13
+ }
14
+ export interface UseTaskWorkflowReturn {
15
+ tasks: Task[];
16
+ createTask: (task: Omit<Task, 'id' | 'createTime'>) => void;
17
+ updateTaskStatus: (taskId: string, status: Task['status']) => void;
18
+ deleteTask: (taskId: string) => void;
19
+ exportTasks: (format?: 'json' | 'csv') => void;
20
+ recognizeIntent: (text: string) => ReturnType<typeof recognizeIntent>;
21
+ createTaskFromNaturalLanguage: (description: string) => Promise<TaskCreationResult>;
22
+ updateUrlWithTaskId: (taskId: string, options?: NavigationOptions) => void;
23
+ refreshCurrentPage: (taskId?: string) => void;
24
+ executeTaskCreationWorkflow: (description: string) => Promise<void>;
25
+ }
26
+ export declare function useTaskWorkflow(options?: UseTaskWorkflowOptions): UseTaskWorkflowReturn;