@yoka-ui/ui 1.0.1

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 (488) hide show
  1. package/@Docs-yoka/exports.generated.md +93 -0
  2. package/@Docs-yoka/llms.txt +23 -0
  3. package/README.md +113 -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 +733 -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 +16 -0
  28. package/dist/es/business/AiChat/sse.js +171 -0
  29. package/dist/es/business/AiChat/sse.js.map +7 -0
  30. package/dist/es/business/AiChat/type.d.ts +156 -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 +268 -0
  35. package/dist/es/business/AiChat/useAiChat.js.map +7 -0
  36. package/dist/es/business/AiChat/useTaskWorkflow.d.ts +25 -0
  37. package/dist/es/business/AiChat/useTaskWorkflow.js +196 -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/YkDateRangePicker.mdx +180 -0
  131. package/dist/es/components/YkDateRangePicker/index.d.ts +61 -0
  132. package/dist/es/components/YkDateRangePicker/index.js +317 -0
  133. package/dist/es/components/YkDateRangePicker/index.js.map +7 -0
  134. package/dist/es/components/YkDateRangePicker/index.module.less +304 -0
  135. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSCompare.d.ts +16 -0
  136. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSCompare.js +193 -0
  137. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSCompare.js.map +7 -0
  138. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSRange.d.ts +31 -0
  139. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSRange.js +576 -0
  140. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSRange.js.map +7 -0
  141. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSSelect.d.ts +16 -0
  142. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSSelect.js +55 -0
  143. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSSelect.js.map +7 -0
  144. package/dist/es/components/YkRangeDateWithVS/index.d.ts +62 -0
  145. package/dist/es/components/YkRangeDateWithVS/index.js +130 -0
  146. package/dist/es/components/YkRangeDateWithVS/index.js.map +7 -0
  147. package/dist/es/components/YkRangeDateWithVS/index.module.less +566 -0
  148. package/dist/es/components/YkRangeDateWithVS/styles.d.ts +2 -0
  149. package/dist/es/components/YkRangeDateWithVS/styles.js +18 -0
  150. package/dist/es/components/YkRangeDateWithVS/styles.js.map +7 -0
  151. package/dist/es/components/YkRangeDateWithVS/typing.d.ts +15 -0
  152. package/dist/es/components/YkRangeTimeWithRecent/constants.d.ts +48 -0
  153. package/dist/es/components/YkRangeTimeWithRecent/constants.js +288 -0
  154. package/dist/es/components/YkRangeTimeWithRecent/constants.js.map +7 -0
  155. package/dist/es/components/YkRangeTimeWithRecent/index.d.ts +26 -0
  156. package/dist/es/components/YkRangeTimeWithRecent/index.js +647 -0
  157. package/dist/es/components/YkRangeTimeWithRecent/index.js.map +7 -0
  158. package/dist/es/components/YkRangeTimeWithRecent/index.module.less +263 -0
  159. package/dist/es/creative/ButtonRadioWithInfo/index.d.ts +17 -0
  160. package/dist/es/creative/ButtonRadioWithInfo/index.js +103 -0
  161. package/dist/es/creative/ButtonRadioWithInfo/index.js.map +7 -0
  162. package/dist/es/creative/ButtonRadioWithInfo/index.less +106 -0
  163. package/dist/es/creative/ButtonWithProgress/index.d.ts +11 -0
  164. package/dist/es/creative/ButtonWithProgress/index.js +79 -0
  165. package/dist/es/creative/ButtonWithProgress/index.js.map +7 -0
  166. package/dist/es/creative/ButtonWithProgress/index.less +66 -0
  167. package/dist/es/global.less +12 -0
  168. package/dist/es/index.d.ts +43 -0
  169. package/dist/es/index.js +87 -0
  170. package/dist/es/index.js.map +7 -0
  171. package/dist/es/index.less +35 -0
  172. package/dist/es/layout/FlexGrid/index.d.ts +25 -0
  173. package/dist/es/layout/FlexGrid/index.js +63 -0
  174. package/dist/es/layout/FlexGrid/index.js.map +7 -0
  175. package/dist/es/layout/YkContainer/index.d.ts +27 -0
  176. package/dist/es/layout/YkContainer/index.js +79 -0
  177. package/dist/es/layout/YkContainer/index.js.map +7 -0
  178. package/dist/es/layout/YkDrawer/index.d.ts +22 -0
  179. package/dist/es/layout/YkDrawer/index.js +160 -0
  180. package/dist/es/layout/YkDrawer/index.js.map +7 -0
  181. package/dist/es/layout/YkDrawer/index.module.less +45 -0
  182. package/dist/es/ui/LabelSelect/demo.d.ts +3 -0
  183. package/dist/es/ui/LabelSelect/demo.js +83 -0
  184. package/dist/es/ui/LabelSelect/demo.js.map +7 -0
  185. package/dist/es/ui/LabelSelect/index.d.ts +41 -0
  186. package/dist/es/ui/LabelSelect/index.js +136 -0
  187. package/dist/es/ui/LabelSelect/index.js.map +7 -0
  188. package/dist/es/ui/LogicOperator/index.d.ts +10 -0
  189. package/dist/es/ui/LogicOperator/index.js +12 -0
  190. package/dist/es/ui/LogicOperator/index.js.map +7 -0
  191. package/dist/es/ui/LogicOperator/index.module.less +97 -0
  192. package/dist/es/ui/YkButton/index.d.ts +9 -0
  193. package/dist/es/ui/YkButton/index.js +59 -0
  194. package/dist/es/ui/YkButton/index.js.map +7 -0
  195. package/dist/es/ui/YkCard/index.d.ts +4 -0
  196. package/dist/es/ui/YkCard/index.js +79 -0
  197. package/dist/es/ui/YkCard/index.js.map +7 -0
  198. package/dist/es/ui/YkCard/index.module.less +30 -0
  199. package/dist/es/ui/YkCheckbox/index.d.ts +4 -0
  200. package/dist/es/ui/YkCheckbox/index.js +45 -0
  201. package/dist/es/ui/YkCheckbox/index.js.map +7 -0
  202. package/dist/es/ui/YkCheckbox/index.module.less +22 -0
  203. package/dist/es/ui/YkDescriptions/index.d.ts +4 -0
  204. package/dist/es/ui/YkDescriptions/index.js +41 -0
  205. package/dist/es/ui/YkDescriptions/index.js.map +7 -0
  206. package/dist/es/ui/YkPagination/index.d.ts +4 -0
  207. package/dist/es/ui/YkPagination/index.js +63 -0
  208. package/dist/es/ui/YkPagination/index.js.map +7 -0
  209. package/dist/es/ui/YkPagination/index.module.less +22 -0
  210. package/dist/es/ui/YkRadio/index.d.ts +4 -0
  211. package/dist/es/ui/YkRadio/index.js +51 -0
  212. package/dist/es/ui/YkRadio/index.js.map +7 -0
  213. package/dist/es/ui/YkRadio/index.module.less +22 -0
  214. package/dist/es/ui/YkRadioBtnSpecial/index.d.ts +15 -0
  215. package/dist/es/ui/YkRadioBtnSpecial/index.js +23 -0
  216. package/dist/es/ui/YkRadioBtnSpecial/index.js.map +7 -0
  217. package/dist/es/ui/YkRadioBtnSpecial/index.module.less +112 -0
  218. package/dist/es/ui/YkSegmented/index.d.ts +4 -0
  219. package/dist/es/ui/YkSegmented/index.js +41 -0
  220. package/dist/es/ui/YkSegmented/index.js.map +7 -0
  221. package/dist/es/ui/YkSelect/index.d.ts +7 -0
  222. package/dist/es/ui/YkSelect/index.js +54 -0
  223. package/dist/es/ui/YkSelect/index.js.map +7 -0
  224. package/dist/es/ui/YkSpin/index.d.ts +4 -0
  225. package/dist/es/ui/YkSpin/index.js +41 -0
  226. package/dist/es/ui/YkSpin/index.js.map +7 -0
  227. package/dist/es/ui/YkStatistic/index.d.ts +4 -0
  228. package/dist/es/ui/YkStatistic/index.js +41 -0
  229. package/dist/es/ui/YkStatistic/index.js.map +7 -0
  230. package/dist/es/ui/YkSwitch/index.d.ts +4 -0
  231. package/dist/es/ui/YkSwitch/index.js +51 -0
  232. package/dist/es/ui/YkSwitch/index.js.map +7 -0
  233. package/dist/es/ui/YkTabs/index.d.ts +12 -0
  234. package/dist/es/ui/YkTabs/index.js +75 -0
  235. package/dist/es/ui/YkTabs/index.js.map +7 -0
  236. package/dist/es/ui/YkTabs/index.module.less +11 -0
  237. package/dist/es/ui/YkTooltip/index.d.ts +4 -0
  238. package/dist/es/ui/YkTooltip/index.js +50 -0
  239. package/dist/es/ui/YkTooltip/index.js.map +7 -0
  240. package/dist/es/utils/styleUtils.d.ts +18 -0
  241. package/dist/es/utils/styleUtils.js +57 -0
  242. package/dist/es/utils/styleUtils.js.map +7 -0
  243. package/dist/es/utils/ykStorybookDoc.d.ts +17 -0
  244. package/dist/es/utils/ykStorybookDoc.js +18 -0
  245. package/dist/es/utils/ykStorybookDoc.js.map +7 -0
  246. package/dist/lib/Themes/InputTheme/index.d.ts +6 -0
  247. package/dist/lib/Themes/InputTheme/index.js +52 -0
  248. package/dist/lib/Themes/InputTheme/index.js.map +7 -0
  249. package/dist/lib/Themes/TableTheme/index.d.ts +7 -0
  250. package/dist/lib/Themes/TableTheme/index.js +61 -0
  251. package/dist/lib/Themes/TableTheme/index.js.map +7 -0
  252. package/dist/lib/Themes/TableTheme/index.less +46 -0
  253. package/dist/lib/assets/image/YKUI-logo.png +0 -0
  254. package/dist/lib/assets/less/ant-reset.less +402 -0
  255. package/dist/lib/assets/less/index.less +1 -0
  256. package/dist/lib/assets/less/variables.less +16 -0
  257. package/dist/lib/business/AiChat/MarkdownRender.d.ts +9 -0
  258. package/dist/lib/business/AiChat/MarkdownRender.js +102 -0
  259. package/dist/lib/business/AiChat/MarkdownRender.js.map +7 -0
  260. package/dist/lib/business/AiChat/index.d.ts +16 -0
  261. package/dist/lib/business/AiChat/index.js +723 -0
  262. package/dist/lib/business/AiChat/index.js.map +7 -0
  263. package/dist/lib/business/AiChat/intentRecognizer.d.ts +33 -0
  264. package/dist/lib/business/AiChat/intentRecognizer.js +193 -0
  265. package/dist/lib/business/AiChat/intentRecognizer.js.map +7 -0
  266. package/dist/lib/business/AiChat/navigationManager.d.ts +94 -0
  267. package/dist/lib/business/AiChat/navigationManager.js +214 -0
  268. package/dist/lib/business/AiChat/navigationManager.js.map +7 -0
  269. package/dist/lib/business/AiChat/sse.d.ts +16 -0
  270. package/dist/lib/business/AiChat/sse.js +171 -0
  271. package/dist/lib/business/AiChat/sse.js.map +7 -0
  272. package/dist/lib/business/AiChat/type.d.ts +156 -0
  273. package/dist/lib/business/AiChat/type.js +18 -0
  274. package/dist/lib/business/AiChat/type.js.map +7 -0
  275. package/dist/lib/business/AiChat/useAiChat.d.ts +2 -0
  276. package/dist/lib/business/AiChat/useAiChat.js +252 -0
  277. package/dist/lib/business/AiChat/useAiChat.js.map +7 -0
  278. package/dist/lib/business/AiChat/useTaskWorkflow.d.ts +25 -0
  279. package/dist/lib/business/AiChat/useTaskWorkflow.js +182 -0
  280. package/dist/lib/business/AiChat/useTaskWorkflow.js.map +7 -0
  281. package/dist/lib/business/DrawerPageInfo/index.d.ts +35 -0
  282. package/dist/lib/business/DrawerPageInfo/index.js +163 -0
  283. package/dist/lib/business/DrawerPageInfo/index.js.map +7 -0
  284. package/dist/lib/business/DrawerPageInfo/index.module.less +87 -0
  285. package/dist/lib/business/DrawerPageInfo/test.png +0 -0
  286. package/dist/lib/business/Editor/index.d.ts +11 -0
  287. package/dist/lib/business/Editor/index.js +99 -0
  288. package/dist/lib/business/Editor/index.js.map +7 -0
  289. package/dist/lib/business/Editor/index.less +31 -0
  290. package/dist/lib/business/Empty/empty.png +0 -0
  291. package/dist/lib/business/Empty/index.d.ts +19 -0
  292. package/dist/lib/business/Empty/index.js +65 -0
  293. package/dist/lib/business/Empty/index.js.map +7 -0
  294. package/dist/lib/business/ModCommonFilter/assets/images/empty.png +0 -0
  295. package/dist/lib/business/ModCommonFilter/components/FilterButton/IconClose.d.ts +13 -0
  296. package/dist/lib/business/ModCommonFilter/components/FilterButton/IconClose.js +50 -0
  297. package/dist/lib/business/ModCommonFilter/components/FilterButton/IconClose.js.map +7 -0
  298. package/dist/lib/business/ModCommonFilter/components/FilterButton/IconXiala.d.ts +13 -0
  299. package/dist/lib/business/ModCommonFilter/components/FilterButton/IconXiala.js +50 -0
  300. package/dist/lib/business/ModCommonFilter/components/FilterButton/IconXiala.js.map +7 -0
  301. package/dist/lib/business/ModCommonFilter/components/FilterButton/index.d.ts +25 -0
  302. package/dist/lib/business/ModCommonFilter/components/FilterButton/index.js +60 -0
  303. package/dist/lib/business/ModCommonFilter/components/FilterButton/index.js.map +7 -0
  304. package/dist/lib/business/ModCommonFilter/components/FilterButton/index.module.less +97 -0
  305. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Category.d.ts +18 -0
  306. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Category.js +69 -0
  307. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Category.js.map +7 -0
  308. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Content.d.ts +37 -0
  309. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Content.js +211 -0
  310. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Content.js.map +7 -0
  311. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Selected.d.ts +26 -0
  312. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Selected.js +97 -0
  313. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Selected.js.map +7 -0
  314. package/dist/lib/business/ModCommonFilter/components/PopoverContent/index.d.ts +51 -0
  315. package/dist/lib/business/ModCommonFilter/components/PopoverContent/index.js +101 -0
  316. package/dist/lib/business/ModCommonFilter/components/PopoverContent/index.js.map +7 -0
  317. package/dist/lib/business/ModCommonFilter/components/PopoverContent/index.module.less +260 -0
  318. package/dist/lib/business/ModCommonFilter/index.d.ts +53 -0
  319. package/dist/lib/business/ModCommonFilter/index.js +143 -0
  320. package/dist/lib/business/ModCommonFilter/index.js.map +7 -0
  321. package/dist/lib/business/ModCommonFilter/index.module.less +7 -0
  322. package/dist/lib/business/ModCommonFilter/typing.d.ts +20 -0
  323. package/dist/lib/business/ModCommonFilter/typing.js +18 -0
  324. package/dist/lib/business/ModCommonFilter/typing.js.map +7 -0
  325. package/dist/lib/business/YkPorjectSelect/icon-product.png +0 -0
  326. package/dist/lib/business/YkPorjectSelect/index.d.ts +51 -0
  327. package/dist/lib/business/YkPorjectSelect/index.js +235 -0
  328. package/dist/lib/business/YkPorjectSelect/index.js.map +7 -0
  329. package/dist/lib/business/YkPorjectSelect/index.module.less +334 -0
  330. package/dist/lib/business/YkPorjectSelect/product-close.png +0 -0
  331. package/dist/lib/components/Clock/index.d.ts +19 -0
  332. package/dist/lib/components/Clock/index.js +85 -0
  333. package/dist/lib/components/Clock/index.js.map +7 -0
  334. package/dist/lib/components/DebounceInput/index.d.ts +16 -0
  335. package/dist/lib/components/DebounceInput/index.js +107 -0
  336. package/dist/lib/components/DebounceInput/index.js.map +7 -0
  337. package/dist/lib/components/DebounceInput/index.module.less +23 -0
  338. package/dist/lib/components/MultipleSelect/index.d.ts +23 -0
  339. package/dist/lib/components/MultipleSelect/index.js +279 -0
  340. package/dist/lib/components/MultipleSelect/index.js.map +7 -0
  341. package/dist/lib/components/MultipleSelect/index.module.less +174 -0
  342. package/dist/lib/components/NumericInput/index.d.ts +19 -0
  343. package/dist/lib/components/NumericInput/index.js +67 -0
  344. package/dist/lib/components/NumericInput/index.js.map +7 -0
  345. package/dist/lib/components/RefreshButton/index.d.ts +8 -0
  346. package/dist/lib/components/RefreshButton/index.js +51 -0
  347. package/dist/lib/components/RefreshButton/index.js.map +7 -0
  348. package/dist/lib/components/SearchWithHistory/index.d.ts +21 -0
  349. package/dist/lib/components/SearchWithHistory/index.js +145 -0
  350. package/dist/lib/components/SearchWithHistory/index.js.map +7 -0
  351. package/dist/lib/components/SearchWithHistory/index.module.less +64 -0
  352. package/dist/lib/components/TextWithInput/index.d.ts +15 -0
  353. package/dist/lib/components/TextWithInput/index.js +65 -0
  354. package/dist/lib/components/TextWithInput/index.js.map +7 -0
  355. package/dist/lib/components/TextWithToolTip/index.d.ts +17 -0
  356. package/dist/lib/components/TextWithToolTip/index.js +134 -0
  357. package/dist/lib/components/TextWithToolTip/index.js.map +7 -0
  358. package/dist/lib/components/TreeTransfer/components/TreeTransferPanel/index.d.ts +28 -0
  359. package/dist/lib/components/TreeTransfer/components/TreeTransferPanel/index.js +191 -0
  360. package/dist/lib/components/TreeTransfer/components/TreeTransferPanel/index.js.map +7 -0
  361. package/dist/lib/components/TreeTransfer/components/TreeTransferPanel/index.less +151 -0
  362. package/dist/lib/components/TreeTransfer/index.d.ts +28 -0
  363. package/dist/lib/components/TreeTransfer/index.js +214 -0
  364. package/dist/lib/components/TreeTransfer/index.js.map +7 -0
  365. package/dist/lib/components/TreeTransfer/index.less +69 -0
  366. package/dist/lib/components/TreeTransfer/types.d.ts +122 -0
  367. package/dist/lib/components/TreeTransfer/types.js +30 -0
  368. package/dist/lib/components/TreeTransfer/types.js.map +7 -0
  369. package/dist/lib/components/TreeTransfer/utils/index.d.ts +120 -0
  370. package/dist/lib/components/TreeTransfer/utils/index.js +208 -0
  371. package/dist/lib/components/TreeTransfer/utils/index.js.map +7 -0
  372. package/dist/lib/components/YkDateRangePicker/YkDateRangePicker.mdx +180 -0
  373. package/dist/lib/components/YkDateRangePicker/index.d.ts +61 -0
  374. package/dist/lib/components/YkDateRangePicker/index.js +338 -0
  375. package/dist/lib/components/YkDateRangePicker/index.js.map +7 -0
  376. package/dist/lib/components/YkDateRangePicker/index.module.less +304 -0
  377. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSCompare.d.ts +16 -0
  378. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSCompare.js +223 -0
  379. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSCompare.js.map +7 -0
  380. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSRange.d.ts +31 -0
  381. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSRange.js +587 -0
  382. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSRange.js.map +7 -0
  383. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSSelect.d.ts +16 -0
  384. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSSelect.js +85 -0
  385. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSSelect.js.map +7 -0
  386. package/dist/lib/components/YkRangeDateWithVS/index.d.ts +62 -0
  387. package/dist/lib/components/YkRangeDateWithVS/index.js +140 -0
  388. package/dist/lib/components/YkRangeDateWithVS/index.js.map +7 -0
  389. package/dist/lib/components/YkRangeDateWithVS/index.module.less +566 -0
  390. package/dist/lib/components/YkRangeDateWithVS/styles.d.ts +2 -0
  391. package/dist/lib/components/YkRangeDateWithVS/styles.js +48 -0
  392. package/dist/lib/components/YkRangeDateWithVS/styles.js.map +7 -0
  393. package/dist/lib/components/YkRangeDateWithVS/typing.d.ts +15 -0
  394. package/dist/lib/components/YkRangeTimeWithRecent/constants.d.ts +48 -0
  395. package/dist/lib/components/YkRangeTimeWithRecent/constants.js +333 -0
  396. package/dist/lib/components/YkRangeTimeWithRecent/constants.js.map +7 -0
  397. package/dist/lib/components/YkRangeTimeWithRecent/index.d.ts +26 -0
  398. package/dist/lib/components/YkRangeTimeWithRecent/index.js +647 -0
  399. package/dist/lib/components/YkRangeTimeWithRecent/index.js.map +7 -0
  400. package/dist/lib/components/YkRangeTimeWithRecent/index.module.less +263 -0
  401. package/dist/lib/creative/ButtonRadioWithInfo/index.d.ts +17 -0
  402. package/dist/lib/creative/ButtonRadioWithInfo/index.js +102 -0
  403. package/dist/lib/creative/ButtonRadioWithInfo/index.js.map +7 -0
  404. package/dist/lib/creative/ButtonRadioWithInfo/index.less +106 -0
  405. package/dist/lib/creative/ButtonWithProgress/index.d.ts +11 -0
  406. package/dist/lib/creative/ButtonWithProgress/index.js +70 -0
  407. package/dist/lib/creative/ButtonWithProgress/index.js.map +7 -0
  408. package/dist/lib/creative/ButtonWithProgress/index.less +66 -0
  409. package/dist/lib/global.less +12 -0
  410. package/dist/lib/index.d.ts +43 -0
  411. package/dist/lib/index.js +161 -0
  412. package/dist/lib/index.js.map +7 -0
  413. package/dist/lib/index.less +35 -0
  414. package/dist/lib/layout/FlexGrid/index.d.ts +25 -0
  415. package/dist/lib/layout/FlexGrid/index.js +77 -0
  416. package/dist/lib/layout/FlexGrid/index.js.map +7 -0
  417. package/dist/lib/layout/YkContainer/index.d.ts +27 -0
  418. package/dist/lib/layout/YkContainer/index.js +79 -0
  419. package/dist/lib/layout/YkContainer/index.js.map +7 -0
  420. package/dist/lib/layout/YkDrawer/index.d.ts +22 -0
  421. package/dist/lib/layout/YkDrawer/index.js +152 -0
  422. package/dist/lib/layout/YkDrawer/index.js.map +7 -0
  423. package/dist/lib/layout/YkDrawer/index.module.less +45 -0
  424. package/dist/lib/ui/LabelSelect/demo.d.ts +3 -0
  425. package/dist/lib/ui/LabelSelect/demo.js +113 -0
  426. package/dist/lib/ui/LabelSelect/demo.js.map +7 -0
  427. package/dist/lib/ui/LabelSelect/index.d.ts +41 -0
  428. package/dist/lib/ui/LabelSelect/index.js +124 -0
  429. package/dist/lib/ui/LabelSelect/index.js.map +7 -0
  430. package/dist/lib/ui/LogicOperator/index.d.ts +10 -0
  431. package/dist/lib/ui/LogicOperator/index.js +42 -0
  432. package/dist/lib/ui/LogicOperator/index.js.map +7 -0
  433. package/dist/lib/ui/LogicOperator/index.module.less +97 -0
  434. package/dist/lib/ui/YkButton/index.d.ts +9 -0
  435. package/dist/lib/ui/YkButton/index.js +55 -0
  436. package/dist/lib/ui/YkButton/index.js.map +7 -0
  437. package/dist/lib/ui/YkCard/index.d.ts +4 -0
  438. package/dist/lib/ui/YkCard/index.js +76 -0
  439. package/dist/lib/ui/YkCard/index.js.map +7 -0
  440. package/dist/lib/ui/YkCard/index.module.less +30 -0
  441. package/dist/lib/ui/YkCheckbox/index.d.ts +4 -0
  442. package/dist/lib/ui/YkCheckbox/index.js +42 -0
  443. package/dist/lib/ui/YkCheckbox/index.js.map +7 -0
  444. package/dist/lib/ui/YkCheckbox/index.module.less +22 -0
  445. package/dist/lib/ui/YkDescriptions/index.d.ts +4 -0
  446. package/dist/lib/ui/YkDescriptions/index.js +41 -0
  447. package/dist/lib/ui/YkDescriptions/index.js.map +7 -0
  448. package/dist/lib/ui/YkPagination/index.d.ts +4 -0
  449. package/dist/lib/ui/YkPagination/index.js +60 -0
  450. package/dist/lib/ui/YkPagination/index.js.map +7 -0
  451. package/dist/lib/ui/YkPagination/index.module.less +22 -0
  452. package/dist/lib/ui/YkRadio/index.d.ts +4 -0
  453. package/dist/lib/ui/YkRadio/index.js +51 -0
  454. package/dist/lib/ui/YkRadio/index.js.map +7 -0
  455. package/dist/lib/ui/YkRadio/index.module.less +22 -0
  456. package/dist/lib/ui/YkRadioBtnSpecial/index.d.ts +15 -0
  457. package/dist/lib/ui/YkRadioBtnSpecial/index.js +53 -0
  458. package/dist/lib/ui/YkRadioBtnSpecial/index.js.map +7 -0
  459. package/dist/lib/ui/YkRadioBtnSpecial/index.module.less +112 -0
  460. package/dist/lib/ui/YkSegmented/index.d.ts +4 -0
  461. package/dist/lib/ui/YkSegmented/index.js +41 -0
  462. package/dist/lib/ui/YkSegmented/index.js.map +7 -0
  463. package/dist/lib/ui/YkSelect/index.d.ts +7 -0
  464. package/dist/lib/ui/YkSelect/index.js +54 -0
  465. package/dist/lib/ui/YkSelect/index.js.map +7 -0
  466. package/dist/lib/ui/YkSpin/index.d.ts +4 -0
  467. package/dist/lib/ui/YkSpin/index.js +41 -0
  468. package/dist/lib/ui/YkSpin/index.js.map +7 -0
  469. package/dist/lib/ui/YkStatistic/index.d.ts +4 -0
  470. package/dist/lib/ui/YkStatistic/index.js +41 -0
  471. package/dist/lib/ui/YkStatistic/index.js.map +7 -0
  472. package/dist/lib/ui/YkSwitch/index.d.ts +4 -0
  473. package/dist/lib/ui/YkSwitch/index.js +51 -0
  474. package/dist/lib/ui/YkSwitch/index.js.map +7 -0
  475. package/dist/lib/ui/YkTabs/index.d.ts +12 -0
  476. package/dist/lib/ui/YkTabs/index.js +70 -0
  477. package/dist/lib/ui/YkTabs/index.js.map +7 -0
  478. package/dist/lib/ui/YkTabs/index.module.less +11 -0
  479. package/dist/lib/ui/YkTooltip/index.d.ts +4 -0
  480. package/dist/lib/ui/YkTooltip/index.js +45 -0
  481. package/dist/lib/ui/YkTooltip/index.js.map +7 -0
  482. package/dist/lib/utils/styleUtils.d.ts +18 -0
  483. package/dist/lib/utils/styleUtils.js +84 -0
  484. package/dist/lib/utils/styleUtils.js.map +7 -0
  485. package/dist/lib/utils/ykStorybookDoc.d.ts +17 -0
  486. package/dist/lib/utils/ykStorybookDoc.js +41 -0
  487. package/dist/lib/utils/ykStorybookDoc.js.map +7 -0
  488. package/package.json +148 -0
@@ -0,0 +1,733 @@
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/index.tsx
42
+ import {
43
+ CloseOutlined,
44
+ CompressOutlined,
45
+ CopyOutlined,
46
+ DeleteOutlined,
47
+ ExpandOutlined,
48
+ FileImageOutlined,
49
+ MenuOutlined,
50
+ MessageOutlined,
51
+ PaperClipOutlined,
52
+ PlusOutlined,
53
+ ReloadOutlined,
54
+ SendOutlined,
55
+ StopOutlined
56
+ } from "@ant-design/icons";
57
+ import { Button, Input, List, message, Popconfirm, Space, Tooltip, Typography, Upload } from "antd";
58
+ import React, { useCallback, useEffect, useRef, useState } from "react";
59
+ import { generateSuggestions, isTaskCreationIntent, recognizeIntent } from "./intentRecognizer";
60
+ import MarkdownRender from "./MarkdownRender";
61
+ import { useAiChat } from "./useAiChat";
62
+ import { useTaskWorkflow } from "./useTaskWorkflow";
63
+ import { generateSuggestions as generateSuggestions2, isTaskCreationIntent as isTaskCreationIntent2, parseTaskDescription, recognizeIntent as recognizeIntent2 } from "./intentRecognizer";
64
+ import { delay, NavigationManager } from "./navigationManager";
65
+ import { useAiChat as useAiChat2 } from "./useAiChat";
66
+ import { useTaskWorkflow as useTaskWorkflow2 } from "./useTaskWorkflow";
67
+ var { TextArea } = Input;
68
+ var { Title } = Typography;
69
+ var AiChat = ({
70
+ apiPath = "/api/ai/chat-stream",
71
+ storageKey = "ai_chat_sessions",
72
+ position: initialPosition = { bottom: 24, right: 24 },
73
+ buttonSize = 56,
74
+ zIndex = 1080,
75
+ showSessionPanel = true,
76
+ onBeforeSend,
77
+ onError,
78
+ onSuccess,
79
+ onFetchSessions,
80
+ onFetchSessionDetail,
81
+ onCreateSession,
82
+ onSendMessage,
83
+ onUploadFile,
84
+ className,
85
+ style,
86
+ renderTrigger,
87
+ renderHeader,
88
+ renderFooter,
89
+ // 增强配置
90
+ taskWorkflow,
91
+ intentRecognition: intentConfig,
92
+ navigation: navConfig
93
+ }) => {
94
+ const {
95
+ sessions,
96
+ activeSession,
97
+ loading,
98
+ visible,
99
+ createNewSession,
100
+ switchSession,
101
+ deleteSession,
102
+ sendQuestion,
103
+ regenerateAnswer,
104
+ deleteSingleMsg,
105
+ cancelRequest,
106
+ toggleVisible
107
+ } = useAiChat({
108
+ apiPath,
109
+ storageKey,
110
+ onBeforeSend,
111
+ onError,
112
+ onSuccess,
113
+ onFetchSessions,
114
+ onFetchSessionDetail,
115
+ onCreateSession,
116
+ onSendMessage,
117
+ onUploadFile
118
+ });
119
+ const {
120
+ tasks,
121
+ createTask,
122
+ updateTaskStatus,
123
+ deleteTask,
124
+ createTaskFromNaturalLanguage,
125
+ updateUrlWithTaskId,
126
+ refreshCurrentPage,
127
+ executeTaskCreationWorkflow
128
+ } = useTaskWorkflow({
129
+ enabled: taskWorkflow == null ? void 0 : taskWorkflow.enabled,
130
+ createTaskApi: taskWorkflow == null ? void 0 : taskWorkflow.createTaskApi,
131
+ supportedTaskTypes: taskWorkflow == null ? void 0 : taskWorkflow.supportedTaskTypes,
132
+ autoNavigate: taskWorkflow == null ? void 0 : taskWorkflow.autoNavigate,
133
+ refreshDelay: navConfig == null ? void 0 : navConfig.refreshDelay,
134
+ taskIdParamName: taskWorkflow == null ? void 0 : taskWorkflow.taskIdParamName,
135
+ taskTypeParamName: taskWorkflow == null ? void 0 : taskWorkflow.taskTypeParamName,
136
+ onTaskCreated: (taskId, taskData) => {
137
+ if (activeSession) {
138
+ const systemMsg = {
139
+ id: `${Date.now()}_sys`,
140
+ role: "system",
141
+ content: `任务创建成功,ID: ${taskId}`,
142
+ taskId
143
+ };
144
+ }
145
+ },
146
+ onError
147
+ });
148
+ const [inputValue, setInputValue] = useState("");
149
+ const [showSessions, setShowSessions] = useState(false);
150
+ const [suggestions, setSuggestions] = useState([]);
151
+ const [fileList, setFileList] = useState([]);
152
+ const [isMaximized, setIsMaximized] = useState(false);
153
+ const [dialogPosition, setDialogPosition] = useState({ x: 0, y: 0 });
154
+ const [isDragging, setIsDragging] = useState(false);
155
+ const dragOffset = useRef({ x: 0, y: 0 });
156
+ const messagesEndRef = useRef(null);
157
+ const triggerRef = useRef(null);
158
+ const fileInputRef = useRef(null);
159
+ useEffect(() => {
160
+ var _a;
161
+ (_a = messagesEndRef.current) == null ? void 0 : _a.scrollIntoView({ behavior: "smooth" });
162
+ }, [activeSession == null ? void 0 : activeSession.messages]);
163
+ const handleTriggerMouseDown = useCallback(
164
+ (e) => {
165
+ if (visible)
166
+ return;
167
+ const target = e.target;
168
+ if (target.closest(".ant-upload, .ant-btn"))
169
+ return;
170
+ e.preventDefault();
171
+ const triggerEl = triggerRef.current;
172
+ if (!triggerEl)
173
+ return;
174
+ const rect = triggerEl.getBoundingClientRect();
175
+ dragOffset.current = {
176
+ x: e.clientX - rect.left,
177
+ y: e.clientY - rect.top
178
+ };
179
+ setIsDragging(true);
180
+ },
181
+ [visible]
182
+ );
183
+ const handleTriggerMouseMove = useCallback(
184
+ (e) => {
185
+ if (!isDragging || visible)
186
+ return;
187
+ setDialogPosition({
188
+ x: e.clientX - dragOffset.current.x,
189
+ y: e.clientY - dragOffset.current.y
190
+ });
191
+ },
192
+ [isDragging, visible]
193
+ );
194
+ const handleTriggerMouseUp = useCallback(() => {
195
+ setIsDragging(false);
196
+ }, []);
197
+ useEffect(() => {
198
+ if (isDragging && !visible) {
199
+ document.addEventListener("mousemove", handleTriggerMouseMove);
200
+ document.addEventListener("mouseup", handleTriggerMouseUp);
201
+ return () => {
202
+ document.removeEventListener("mousemove", handleTriggerMouseMove);
203
+ document.removeEventListener("mouseup", handleTriggerMouseUp);
204
+ };
205
+ }
206
+ return void 0;
207
+ }, [isDragging, visible, handleTriggerMouseMove, handleTriggerMouseUp]);
208
+ const handleInputChange = useCallback((e) => {
209
+ const value = e.target.value;
210
+ setInputValue(value);
211
+ if (value.length > 3) {
212
+ const intent = recognizeIntent(value);
213
+ const newSuggestions = generateSuggestions(value, intent);
214
+ setSuggestions(newSuggestions);
215
+ } else {
216
+ setSuggestions([]);
217
+ }
218
+ }, []);
219
+ const handleFileChange = useCallback(
220
+ (info) => __async(void 0, null, function* () {
221
+ const uploadFile = info.file;
222
+ if (!uploadFile || !uploadFile.originFileObj) {
223
+ setFileList(info.fileList);
224
+ return;
225
+ }
226
+ const file = uploadFile.originFileObj;
227
+ const isImage = file.type.startsWith("image/");
228
+ const fileType = isImage ? "image" : "document";
229
+ try {
230
+ if (onUploadFile && activeSession) {
231
+ const result = yield onUploadFile({
232
+ sessionId: activeSession.id,
233
+ file,
234
+ type: fileType
235
+ });
236
+ const uploadedFile = {
237
+ uid: file.name,
238
+ name: result.name || file.name,
239
+ status: "done",
240
+ url: result.url
241
+ };
242
+ setFileList([...fileList, uploadedFile]);
243
+ message.success(`${fileType === "image" ? "图片" : "文件"}上传成功`);
244
+ } else {
245
+ setFileList([...fileList, uploadFile]);
246
+ }
247
+ } catch (err) {
248
+ console.error("文件上传失败:", err);
249
+ message.error("文件上传失败");
250
+ setFileList(fileList.filter((f) => f.uid !== file.name));
251
+ }
252
+ }),
253
+ [fileList, activeSession, onUploadFile]
254
+ );
255
+ const handleSend = useCallback(() => __async(void 0, null, function* () {
256
+ if (!inputValue.trim() && fileList.length === 0) {
257
+ message.warning("请输入问题或上传文件");
258
+ return;
259
+ }
260
+ let content = inputValue.trim();
261
+ if (fileList.length > 0) {
262
+ const fileInfo = fileList.map((f) => f.name).join(", ");
263
+ content += `
264
+ [附件: ${fileInfo}]`;
265
+ }
266
+ setInputValue("");
267
+ setSuggestions([]);
268
+ setFileList([]);
269
+ const intentEnabled = (intentConfig == null ? void 0 : intentConfig.enabled) !== false;
270
+ if (intentEnabled && isTaskCreationIntent(content)) {
271
+ yield executeTaskCreationWorkflow(content);
272
+ return;
273
+ }
274
+ sendQuestion(content);
275
+ }), [inputValue, fileList, intentConfig == null ? void 0 : intentConfig.enabled, executeTaskCreationWorkflow, sendQuestion]);
276
+ const copyMsg = (c) => {
277
+ navigator.clipboard.writeText(c);
278
+ message.success("复制成功");
279
+ };
280
+ const toggleMaximize = useCallback(() => {
281
+ setIsMaximized((prev) => !prev);
282
+ }, []);
283
+ const renderMsg = (item) => /* @__PURE__ */ React.createElement(
284
+ List.Item,
285
+ {
286
+ key: item.id,
287
+ style: {
288
+ justifyContent: item.role === "user" ? "flex-end" : "flex-start",
289
+ marginBottom: 12,
290
+ padding: "4px 0"
291
+ }
292
+ },
293
+ /* @__PURE__ */ React.createElement(
294
+ "div",
295
+ {
296
+ style: {
297
+ maxWidth: "85%",
298
+ padding: "10px 14px",
299
+ borderRadius: 12,
300
+ backgroundColor: item.role === "user" ? "#1677ff" : item.role === "system" ? "#f6ffed" : "#fafafa",
301
+ color: item.role === "user" ? "#fff" : "#333",
302
+ border: item.role === "ai" ? "1px solid #f0f0f0" : item.role === "system" ? "1px solid #b7eb8f" : "none",
303
+ boxShadow: item.role === "user" ? "0 2px 8px rgba(22, 119, 255, 0.3)" : item.role === "system" ? "0 1px 4px rgba(82, 196, 26, 0.1)" : "0 1px 4px rgba(0,0,0,0.05)"
304
+ }
305
+ },
306
+ item.role === "user" ? /* @__PURE__ */ React.createElement("div", { style: { display: "flex", alignItems: "flex-start", gap: 8 } }, /* @__PURE__ */ React.createElement("span", null, item.content), /* @__PURE__ */ React.createElement(
307
+ CopyOutlined,
308
+ {
309
+ onClick: () => copyMsg(item.content),
310
+ style: {
311
+ fontSize: 12,
312
+ color: "rgba(255,255,255,0.7)",
313
+ cursor: "pointer",
314
+ flexShrink: 0
315
+ }
316
+ }
317
+ )) : item.role === "system" ? /* @__PURE__ */ React.createElement(
318
+ "div",
319
+ {
320
+ style: {
321
+ display: "flex",
322
+ alignItems: "center",
323
+ gap: 8,
324
+ fontSize: 13
325
+ }
326
+ },
327
+ /* @__PURE__ */ React.createElement("span", { style: { color: "#52c41a" } }, "✓"),
328
+ /* @__PURE__ */ React.createElement("span", null, item.content),
329
+ item.taskId && /* @__PURE__ */ React.createElement(
330
+ Button,
331
+ {
332
+ type: "link",
333
+ size: "small",
334
+ style: { padding: 0, fontSize: 12 },
335
+ onClick: () => updateUrlWithTaskId(item.taskId)
336
+ },
337
+ "查看任务"
338
+ )
339
+ ) : /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("div", { style: { minHeight: 20 } }, /* @__PURE__ */ React.createElement(MarkdownRender, { content: item.content, msgId: item.id, isAi: true, onDelete: deleteSingleMsg })), item.loading && /* @__PURE__ */ React.createElement("span", { style: { color: "#1677ff", fontSize: 12 } }, " 思考中..."), !item.loading && /* @__PURE__ */ React.createElement(Space, { size: 8, style: { fontSize: 12, marginTop: 6, display: "flex" } }, /* @__PURE__ */ React.createElement(Tooltip, { title: "复制" }, /* @__PURE__ */ React.createElement(CopyOutlined, { onClick: () => copyMsg(item.content), style: { cursor: "pointer", color: "#999" } })), /* @__PURE__ */ React.createElement(Tooltip, { title: "重新生成" }, /* @__PURE__ */ React.createElement(ReloadOutlined, { onClick: () => regenerateAnswer(item), style: { cursor: "pointer", color: "#999" } }))))
340
+ )
341
+ );
342
+ const renderSession = (s) => /* @__PURE__ */ React.createElement(
343
+ List.Item,
344
+ {
345
+ key: s.id,
346
+ onClick: (e) => {
347
+ if (e.target.closest(".ant-popover, .ant-popconfirm")) {
348
+ return;
349
+ }
350
+ switchSession(s.id);
351
+ },
352
+ style: {
353
+ padding: "10px 12px",
354
+ borderRadius: 8,
355
+ cursor: "pointer",
356
+ backgroundColor: (activeSession == null ? void 0 : activeSession.id) === s.id ? "#e6f7ff" : "#fff",
357
+ transition: "all 0.2s",
358
+ marginBottom: 8
359
+ }
360
+ },
361
+ /* @__PURE__ */ React.createElement(
362
+ "div",
363
+ {
364
+ style: {
365
+ flex: 1,
366
+ overflow: "hidden",
367
+ display: "flex",
368
+ justifyContent: "space-between",
369
+ alignItems: "center"
370
+ }
371
+ },
372
+ /* @__PURE__ */ React.createElement("div", { style: { flex: 1, overflow: "hidden" } }, /* @__PURE__ */ React.createElement(
373
+ "div",
374
+ {
375
+ style: {
376
+ fontSize: 14,
377
+ fontWeight: 500,
378
+ overflow: "hidden",
379
+ textOverflow: "ellipsis",
380
+ whiteSpace: "nowrap"
381
+ }
382
+ },
383
+ s.title
384
+ ), /* @__PURE__ */ React.createElement("div", { style: { fontSize: 12, color: "#999", marginTop: 2 } }, new Date(s.createTime).toLocaleString().slice(0, 16))),
385
+ /* @__PURE__ */ React.createElement(
386
+ Popconfirm,
387
+ {
388
+ title: "确定删除?",
389
+ onConfirm: (e) => {
390
+ deleteSession(s.id, e);
391
+ }
392
+ },
393
+ /* @__PURE__ */ React.createElement(
394
+ DeleteOutlined,
395
+ {
396
+ style: { color: "#ff4d4f", cursor: "pointer", marginLeft: 8 },
397
+ onClick: (e) => e.stopPropagation()
398
+ }
399
+ )
400
+ )
401
+ )
402
+ );
403
+ const getDialogStyle = () => {
404
+ if (isMaximized) {
405
+ return {
406
+ position: "fixed",
407
+ top: 0,
408
+ left: 0,
409
+ width: "100vw",
410
+ height: "100vh",
411
+ borderRadius: 0
412
+ };
413
+ }
414
+ const baseStyle = {
415
+ position: "relative",
416
+ width: showSessions ? 960 : 720,
417
+ height: 680,
418
+ borderRadius: 12
419
+ };
420
+ if (dialogPosition.x !== 0 || dialogPosition.y !== 0) {
421
+ return __spreadProps(__spreadValues({}, baseStyle), {
422
+ transform: `translate(${dialogPosition.x}px, ${dialogPosition.y}px)`
423
+ });
424
+ }
425
+ return baseStyle;
426
+ };
427
+ return /* @__PURE__ */ React.createElement(
428
+ "div",
429
+ {
430
+ className,
431
+ style: __spreadValues({
432
+ position: "fixed",
433
+ bottom: initialPosition.bottom,
434
+ right: initialPosition.right,
435
+ zIndex,
436
+ display: "flex",
437
+ flexDirection: "column",
438
+ alignItems: "flex-end",
439
+ transform: dialogPosition.x !== 0 || dialogPosition.y !== 0 ? `translate(${dialogPosition.x}px, ${dialogPosition.y}px)` : void 0
440
+ }, style)
441
+ },
442
+ !visible ? renderTrigger ? /* @__PURE__ */ React.createElement(
443
+ "div",
444
+ {
445
+ ref: triggerRef,
446
+ onMouseDown: handleTriggerMouseDown,
447
+ onClick: () => !isDragging && toggleVisible(true),
448
+ style: { cursor: isDragging ? "grabbing" : "grab" }
449
+ },
450
+ renderTrigger
451
+ ) : /* @__PURE__ */ React.createElement(
452
+ "div",
453
+ {
454
+ ref: triggerRef,
455
+ onMouseDown: handleTriggerMouseDown,
456
+ onClick: () => !isDragging && toggleVisible(true),
457
+ style: { cursor: isDragging ? "grabbing" : "grab" }
458
+ },
459
+ /* @__PURE__ */ React.createElement(
460
+ Button,
461
+ {
462
+ type: "primary",
463
+ shape: "circle",
464
+ size: "large",
465
+ icon: /* @__PURE__ */ React.createElement(MessageOutlined, null),
466
+ style: {
467
+ width: buttonSize,
468
+ height: buttonSize,
469
+ boxShadow: "0 4px 16px rgba(22, 119, 255, 0.4)"
470
+ }
471
+ }
472
+ )
473
+ ) : /* @__PURE__ */ React.createElement(
474
+ "div",
475
+ {
476
+ style: __spreadProps(__spreadValues({}, getDialogStyle()), {
477
+ background: "#fff",
478
+ boxShadow: "0 4px 20px rgba(0,0,0,0.15)",
479
+ overflow: "hidden",
480
+ display: "flex",
481
+ flexDirection: "row",
482
+ marginBottom: isMaximized ? 0 : 12,
483
+ transition: "all 0.3s ease"
484
+ })
485
+ },
486
+ showSessionPanel && showSessions && /* @__PURE__ */ React.createElement(
487
+ "div",
488
+ {
489
+ style: {
490
+ width: 280,
491
+ borderRight: "1px solid #f0f0f0",
492
+ background: "#fafafa",
493
+ display: "flex",
494
+ flexDirection: "column",
495
+ flexShrink: 0
496
+ }
497
+ },
498
+ /* @__PURE__ */ React.createElement(
499
+ "div",
500
+ {
501
+ style: {
502
+ padding: "12px 16px",
503
+ borderBottom: "1px solid #f0f0f0",
504
+ display: "flex",
505
+ justifyContent: "space-between",
506
+ alignItems: "center"
507
+ }
508
+ },
509
+ /* @__PURE__ */ React.createElement(Title, { level: 5, style: { margin: 0, fontSize: 16 } }, "历史会话"),
510
+ /* @__PURE__ */ React.createElement(Button, { type: "text", size: "small", icon: /* @__PURE__ */ React.createElement(CloseOutlined, null), onClick: () => setShowSessions(false) })
511
+ ),
512
+ /* @__PURE__ */ React.createElement("div", { style: { flex: 1, padding: 16, overflowY: "auto" } }, /* @__PURE__ */ React.createElement(
513
+ Button,
514
+ {
515
+ type: "primary",
516
+ block: true,
517
+ icon: /* @__PURE__ */ React.createElement(PlusOutlined, null),
518
+ onClick: createNewSession,
519
+ style: { marginBottom: 12 }
520
+ },
521
+ "新建会话"
522
+ ), /* @__PURE__ */ React.createElement(List, { dataSource: sessions, renderItem: renderSession, locale: { emptyText: "暂无会话" } }))
523
+ ),
524
+ /* @__PURE__ */ React.createElement(
525
+ "div",
526
+ {
527
+ style: {
528
+ flex: 1,
529
+ display: "flex",
530
+ flexDirection: "column",
531
+ minWidth: 0
532
+ }
533
+ },
534
+ renderHeader || /* @__PURE__ */ React.createElement(
535
+ "div",
536
+ {
537
+ className: "ai-chat-header",
538
+ style: {
539
+ padding: "12px 16px",
540
+ background: "#fafafa",
541
+ borderBottom: "1px solid #f0f0f0",
542
+ display: "flex",
543
+ justifyContent: "space-between",
544
+ alignItems: "center",
545
+ flexShrink: 0
546
+ }
547
+ },
548
+ /* @__PURE__ */ React.createElement(Space, null, showSessionPanel && /* @__PURE__ */ React.createElement(
549
+ Button,
550
+ {
551
+ type: showSessions ? "primary" : "text",
552
+ icon: /* @__PURE__ */ React.createElement(MenuOutlined, null),
553
+ size: "small",
554
+ onClick: () => setShowSessions(!showSessions)
555
+ },
556
+ showSessions ? "收起" : "会话"
557
+ ), /* @__PURE__ */ React.createElement(Button, { type: "text", icon: /* @__PURE__ */ React.createElement(PlusOutlined, null), onClick: createNewSession, size: "small" }, "新会话")),
558
+ /* @__PURE__ */ React.createElement(Space, null, /* @__PURE__ */ React.createElement(Tooltip, { title: isMaximized ? "还原" : "最大化" }, /* @__PURE__ */ React.createElement(
559
+ Button,
560
+ {
561
+ type: "text",
562
+ icon: isMaximized ? /* @__PURE__ */ React.createElement(CompressOutlined, null) : /* @__PURE__ */ React.createElement(ExpandOutlined, null),
563
+ onClick: toggleMaximize,
564
+ size: "small"
565
+ }
566
+ )), /* @__PURE__ */ React.createElement(Tooltip, { title: "关闭" }, /* @__PURE__ */ React.createElement(Button, { type: "text", icon: /* @__PURE__ */ React.createElement(CloseOutlined, null), onClick: () => toggleVisible(false), size: "small" })))
567
+ ),
568
+ /* @__PURE__ */ React.createElement(
569
+ "div",
570
+ {
571
+ style: {
572
+ flex: 1,
573
+ padding: 16,
574
+ overflowY: "auto"
575
+ }
576
+ },
577
+ !activeSession || activeSession.messages.length === 0 ? /* @__PURE__ */ React.createElement(
578
+ "div",
579
+ {
580
+ style: {
581
+ textAlign: "center",
582
+ padding: "60px 0",
583
+ color: "#999"
584
+ }
585
+ },
586
+ /* @__PURE__ */ React.createElement(MessageOutlined, { style: { fontSize: 48, color: "#d9d9d9" } }),
587
+ /* @__PURE__ */ React.createElement("div", { style: { marginTop: 16, fontSize: 16 } }, "开始你的 AI 对话"),
588
+ /* @__PURE__ */ React.createElement("div", { style: { marginTop: 8, fontSize: 13, color: "#bfbfbf" } }, "我可以帮你解答问题、创建任务"),
589
+ /* @__PURE__ */ React.createElement(Button, { type: "primary", onClick: createNewSession, style: { marginTop: 20 } }, "新建会话")
590
+ ) : /* @__PURE__ */ React.createElement(List, { dataSource: activeSession.messages, renderItem: renderMsg }),
591
+ /* @__PURE__ */ React.createElement("div", { ref: messagesEndRef })
592
+ ),
593
+ renderFooter || /* @__PURE__ */ React.createElement(
594
+ "div",
595
+ {
596
+ style: {
597
+ padding: 12,
598
+ borderTop: "1px solid #f0f0f0",
599
+ background: "#fafafa",
600
+ flexShrink: 0
601
+ }
602
+ },
603
+ suggestions.length > 0 && /* @__PURE__ */ React.createElement(
604
+ "div",
605
+ {
606
+ style: {
607
+ marginBottom: 8,
608
+ display: "flex",
609
+ flexWrap: "wrap",
610
+ gap: 4
611
+ }
612
+ },
613
+ suggestions.slice(0, 3).map((suggestion, index) => /* @__PURE__ */ React.createElement(
614
+ Button,
615
+ {
616
+ key: index,
617
+ size: "small",
618
+ type: "dashed",
619
+ onClick: () => setInputValue(suggestion),
620
+ style: { fontSize: 12 }
621
+ },
622
+ suggestion
623
+ ))
624
+ ),
625
+ fileList.length > 0 && /* @__PURE__ */ React.createElement("div", { style: { marginBottom: 8 } }, fileList.map((file) => /* @__PURE__ */ React.createElement(
626
+ "div",
627
+ {
628
+ key: file.uid,
629
+ style: {
630
+ display: "inline-block",
631
+ padding: "4px 8px",
632
+ background: "#e6f7ff",
633
+ borderRadius: 4,
634
+ marginRight: 8,
635
+ fontSize: 12
636
+ }
637
+ },
638
+ file.name,
639
+ /* @__PURE__ */ React.createElement(
640
+ CloseOutlined,
641
+ {
642
+ style: {
643
+ marginLeft: 8,
644
+ cursor: "pointer",
645
+ fontSize: 10
646
+ },
647
+ onClick: () => setFileList(fileList.filter((f) => f.uid !== file.uid))
648
+ }
649
+ )
650
+ ))),
651
+ /* @__PURE__ */ React.createElement("div", { style: { position: "relative" } }, /* @__PURE__ */ React.createElement(
652
+ TextArea,
653
+ {
654
+ value: inputValue,
655
+ onChange: handleInputChange,
656
+ placeholder: "输入问题或任务描述,如:帮我创建一个paimon调用任务",
657
+ autoSize: { minRows: 2, maxRows: 4 },
658
+ onPressEnter: (e) => {
659
+ if (!e.shiftKey) {
660
+ e.preventDefault();
661
+ handleSend();
662
+ }
663
+ },
664
+ style: {
665
+ marginBottom: 8,
666
+ borderRadius: 8,
667
+ paddingRight: 80
668
+ },
669
+ disabled: loading
670
+ }
671
+ ), /* @__PURE__ */ React.createElement(
672
+ "div",
673
+ {
674
+ style: {
675
+ position: "absolute",
676
+ right: 12,
677
+ bottom: 16,
678
+ display: "flex",
679
+ gap: 8
680
+ }
681
+ },
682
+ /* @__PURE__ */ React.createElement(
683
+ Upload,
684
+ {
685
+ fileList,
686
+ onChange: handleFileChange,
687
+ beforeUpload: () => false,
688
+ showUploadList: false,
689
+ accept: "image/*"
690
+ },
691
+ /* @__PURE__ */ React.createElement(Tooltip, { title: "上传图片" }, /* @__PURE__ */ React.createElement(Button, { type: "text", size: "small", icon: /* @__PURE__ */ React.createElement(FileImageOutlined, null) }))
692
+ ),
693
+ /* @__PURE__ */ React.createElement(
694
+ Upload,
695
+ {
696
+ fileList,
697
+ onChange: handleFileChange,
698
+ beforeUpload: () => false,
699
+ showUploadList: false
700
+ },
701
+ /* @__PURE__ */ React.createElement(Tooltip, { title: "上传文件" }, /* @__PURE__ */ React.createElement(Button, { type: "text", size: "small", icon: /* @__PURE__ */ React.createElement(PaperClipOutlined, null) }))
702
+ )
703
+ )),
704
+ /* @__PURE__ */ React.createElement("div", { style: { display: "flex", justifyContent: "flex-end" } }, /* @__PURE__ */ React.createElement(Space, null, loading && /* @__PURE__ */ React.createElement(Button, { danger: true, icon: /* @__PURE__ */ React.createElement(StopOutlined, null), onClick: cancelRequest, size: "small" }, "终止"), /* @__PURE__ */ React.createElement(
705
+ Button,
706
+ {
707
+ type: "primary",
708
+ icon: /* @__PURE__ */ React.createElement(SendOutlined, null),
709
+ onClick: handleSend,
710
+ loading,
711
+ disabled: !inputValue.trim() && fileList.length === 0,
712
+ size: "small"
713
+ },
714
+ "发送"
715
+ )))
716
+ )
717
+ )
718
+ )
719
+ );
720
+ };
721
+ var AiChat_default = AiChat;
722
+ export {
723
+ NavigationManager,
724
+ AiChat_default as default,
725
+ delay,
726
+ generateSuggestions2 as generateSuggestions,
727
+ isTaskCreationIntent2 as isTaskCreationIntent,
728
+ parseTaskDescription,
729
+ recognizeIntent2 as recognizeIntent,
730
+ useAiChat2 as useAiChat,
731
+ useTaskWorkflow2 as useTaskWorkflow
732
+ };
733
+ //# sourceMappingURL=index.js.map