@mxmweb/aichat 1.1.1 → 1.1.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (523) hide show
  1. package/.editorconfig +38 -0
  2. package/.github/workflows/release.yml +60 -0
  3. package/.prettierignore +16 -0
  4. package/.prettierrc +17 -0
  5. package/.releaserc.json +36 -0
  6. package/CHANGELOG.md +58 -0
  7. package/CONTRIBUTING.md +111 -0
  8. package/NPMREADME.md +215 -0
  9. package/bash.exe.stackdump +40 -0
  10. package/components.json +21 -0
  11. package/demo.txt +134 -0
  12. package/dist/README.md +216 -0
  13. package/{adopters → dist/adopters}/GientechChat/Conversations/Item.d.ts +4 -2
  14. package/{adopters → dist/adopters}/GientechChat/Conversations/List.d.ts +4 -1
  15. package/{adopters → dist/adopters}/GientechChat/Conversations/index.d.ts +1 -0
  16. package/{adopters → dist/adopters}/gientechCommon/components/Messages/ReferenceCard.d.ts +7 -3
  17. package/dist/adopters/gientechCommon/components/Messages/RetriveItem.d.ts +25 -0
  18. package/dist/assets/aichat.css +1 -0
  19. package/{components → dist/components}/AiChat.d.ts +2 -1
  20. package/{index.js → dist/index.js} +13403 -13142
  21. package/dist/package.json +19 -0
  22. package/eslint.config.js +92 -0
  23. package/index.html +14 -0
  24. package/package.json +41 -10
  25. package/postcss.config.cjs +19 -0
  26. package/public/icons/answerAwartar.png +0 -0
  27. package/public/icons/docx-file.png +0 -0
  28. package/public/icons/folder.png +0 -0
  29. package/public/icons/html.png +0 -0
  30. package/public/icons/image.png +0 -0
  31. package/public/icons/jpg-file.png +0 -0
  32. package/public/icons/json.png +0 -0
  33. package/public/icons/md.png +0 -0
  34. package/public/icons/pdf.png +0 -0
  35. package/public/icons/pptx.png +0 -0
  36. package/public/icons/questionAwartar.png +0 -0
  37. package/public/icons/sheets.png +0 -0
  38. package/public/icons/txt.png +0 -0
  39. package/public/icons/xlsx.png +0 -0
  40. package/public/libs/luckysheet/fontAwesome.otf +0 -0
  41. package/public/libs/luckysheet/fontawesome-webfont.eot +0 -0
  42. package/public/libs/luckysheet/fontawesome-webfont.svg +2671 -0
  43. package/public/libs/luckysheet/fontawesome-webfont.ttf +0 -0
  44. package/public/libs/luckysheet/fontawesome-webfont.woff +0 -0
  45. package/public/libs/luckysheet/fontawesome-webfont.woff2 +0 -0
  46. package/public/libs/luckysheet/fonts/fontawesome-webfont.ttf +0 -0
  47. package/public/libs/luckysheet/fonts/fontawesome-webfont.woff +0 -0
  48. package/public/libs/luckysheet/fonts/fontawesome-webfont.woff2 +0 -0
  49. package/public/libs/luckysheet/iconfont.css +461 -0
  50. package/public/libs/luckysheet/jquery.min.js +2 -0
  51. package/public/libs/luckysheet/luckysheet.css +1 -0
  52. package/public/libs/luckysheet/luckysheet.umd.js +27 -0
  53. package/public/libs/luckysheet/plugin.js +1 -0
  54. package/public/libs/luckysheet/plugins.css +10 -0
  55. package/public/libs/luckysheet/pluginsCss.css +1 -0
  56. package/public/vite.svg +1 -0
  57. package/public/vs/base/browser/ui/codicons/codicon/codicon.ttf +0 -0
  58. package/public/vs/base/common/worker/simpleWorker.nls.de.js +8 -0
  59. package/public/vs/base/common/worker/simpleWorker.nls.es.js +8 -0
  60. package/public/vs/base/common/worker/simpleWorker.nls.fr.js +8 -0
  61. package/public/vs/base/common/worker/simpleWorker.nls.it.js +8 -0
  62. package/public/vs/base/common/worker/simpleWorker.nls.ja.js +8 -0
  63. package/public/vs/base/common/worker/simpleWorker.nls.js +8 -0
  64. package/public/vs/base/common/worker/simpleWorker.nls.ko.js +8 -0
  65. package/public/vs/base/common/worker/simpleWorker.nls.ru.js +8 -0
  66. package/public/vs/base/common/worker/simpleWorker.nls.zh-cn.js +8 -0
  67. package/public/vs/base/common/worker/simpleWorker.nls.zh-tw.js +8 -0
  68. package/public/vs/base/worker/workerMain.js +27 -0
  69. package/public/vs/basic-languages/abap/abap.js +10 -0
  70. package/public/vs/basic-languages/apex/apex.js +10 -0
  71. package/public/vs/basic-languages/azcli/azcli.js +10 -0
  72. package/public/vs/basic-languages/bat/bat.js +10 -0
  73. package/public/vs/basic-languages/bicep/bicep.js +11 -0
  74. package/public/vs/basic-languages/cameligo/cameligo.js +10 -0
  75. package/public/vs/basic-languages/clojure/clojure.js +10 -0
  76. package/public/vs/basic-languages/coffee/coffee.js +10 -0
  77. package/public/vs/basic-languages/cpp/cpp.js +10 -0
  78. package/public/vs/basic-languages/csharp/csharp.js +10 -0
  79. package/public/vs/basic-languages/csp/csp.js +10 -0
  80. package/public/vs/basic-languages/css/css.js +12 -0
  81. package/public/vs/basic-languages/cypher/cypher.js +10 -0
  82. package/public/vs/basic-languages/dart/dart.js +10 -0
  83. package/public/vs/basic-languages/dockerfile/dockerfile.js +10 -0
  84. package/public/vs/basic-languages/ecl/ecl.js +10 -0
  85. package/public/vs/basic-languages/elixir/elixir.js +10 -0
  86. package/public/vs/basic-languages/flow9/flow9.js +10 -0
  87. package/public/vs/basic-languages/freemarker2/freemarker2.js +12 -0
  88. package/public/vs/basic-languages/fsharp/fsharp.js +10 -0
  89. package/public/vs/basic-languages/go/go.js +10 -0
  90. package/public/vs/basic-languages/graphql/graphql.js +10 -0
  91. package/public/vs/basic-languages/handlebars/handlebars.js +10 -0
  92. package/public/vs/basic-languages/hcl/hcl.js +10 -0
  93. package/public/vs/basic-languages/html/html.js +10 -0
  94. package/public/vs/basic-languages/ini/ini.js +10 -0
  95. package/public/vs/basic-languages/java/java.js +10 -0
  96. package/public/vs/basic-languages/javascript/javascript.js +10 -0
  97. package/public/vs/basic-languages/julia/julia.js +10 -0
  98. package/public/vs/basic-languages/kotlin/kotlin.js +10 -0
  99. package/public/vs/basic-languages/less/less.js +11 -0
  100. package/public/vs/basic-languages/lexon/lexon.js +10 -0
  101. package/public/vs/basic-languages/liquid/liquid.js +10 -0
  102. package/public/vs/basic-languages/lua/lua.js +10 -0
  103. package/public/vs/basic-languages/m3/m3.js +10 -0
  104. package/public/vs/basic-languages/markdown/markdown.js +10 -0
  105. package/public/vs/basic-languages/mdx/mdx.js +10 -0
  106. package/public/vs/basic-languages/mips/mips.js +10 -0
  107. package/public/vs/basic-languages/msdax/msdax.js +10 -0
  108. package/public/vs/basic-languages/mysql/mysql.js +10 -0
  109. package/public/vs/basic-languages/objective-c/objective-c.js +10 -0
  110. package/public/vs/basic-languages/pascal/pascal.js +10 -0
  111. package/public/vs/basic-languages/pascaligo/pascaligo.js +10 -0
  112. package/public/vs/basic-languages/perl/perl.js +10 -0
  113. package/public/vs/basic-languages/pgsql/pgsql.js +10 -0
  114. package/public/vs/basic-languages/php/php.js +10 -0
  115. package/public/vs/basic-languages/pla/pla.js +10 -0
  116. package/public/vs/basic-languages/postiats/postiats.js +10 -0
  117. package/public/vs/basic-languages/powerquery/powerquery.js +10 -0
  118. package/public/vs/basic-languages/powershell/powershell.js +10 -0
  119. package/public/vs/basic-languages/protobuf/protobuf.js +11 -0
  120. package/public/vs/basic-languages/pug/pug.js +10 -0
  121. package/public/vs/basic-languages/python/python.js +10 -0
  122. package/public/vs/basic-languages/qsharp/qsharp.js +10 -0
  123. package/public/vs/basic-languages/r/r.js +10 -0
  124. package/public/vs/basic-languages/razor/razor.js +10 -0
  125. package/public/vs/basic-languages/redis/redis.js +10 -0
  126. package/public/vs/basic-languages/redshift/redshift.js +10 -0
  127. package/public/vs/basic-languages/restructuredtext/restructuredtext.js +10 -0
  128. package/public/vs/basic-languages/ruby/ruby.js +10 -0
  129. package/public/vs/basic-languages/rust/rust.js +10 -0
  130. package/public/vs/basic-languages/sb/sb.js +10 -0
  131. package/public/vs/basic-languages/scala/scala.js +10 -0
  132. package/public/vs/basic-languages/scheme/scheme.js +10 -0
  133. package/public/vs/basic-languages/scss/scss.js +12 -0
  134. package/public/vs/basic-languages/shell/shell.js +10 -0
  135. package/public/vs/basic-languages/solidity/solidity.js +10 -0
  136. package/public/vs/basic-languages/sophia/sophia.js +10 -0
  137. package/public/vs/basic-languages/sparql/sparql.js +10 -0
  138. package/public/vs/basic-languages/sql/sql.js +10 -0
  139. package/public/vs/basic-languages/st/st.js +10 -0
  140. package/public/vs/basic-languages/swift/swift.js +13 -0
  141. package/public/vs/basic-languages/systemverilog/systemverilog.js +10 -0
  142. package/public/vs/basic-languages/tcl/tcl.js +10 -0
  143. package/public/vs/basic-languages/twig/twig.js +10 -0
  144. package/public/vs/basic-languages/typescript/typescript.js +10 -0
  145. package/public/vs/basic-languages/vb/vb.js +10 -0
  146. package/public/vs/basic-languages/wgsl/wgsl.js +307 -0
  147. package/public/vs/basic-languages/xml/xml.js +10 -0
  148. package/public/vs/basic-languages/yaml/yaml.js +10 -0
  149. package/public/vs/editor/editor.main.css +6 -0
  150. package/public/vs/editor/editor.main.js +745 -0
  151. package/public/vs/editor/editor.main.js.gz +0 -0
  152. package/public/vs/editor/editor.main.nls.de.js +31 -0
  153. package/public/vs/editor/editor.main.nls.es.js +31 -0
  154. package/public/vs/editor/editor.main.nls.fr.js +29 -0
  155. package/public/vs/editor/editor.main.nls.it.js +29 -0
  156. package/public/vs/editor/editor.main.nls.ja.js +31 -0
  157. package/public/vs/editor/editor.main.nls.js +29 -0
  158. package/public/vs/editor/editor.main.nls.ko.js +29 -0
  159. package/public/vs/editor/editor.main.nls.ru.js +31 -0
  160. package/public/vs/editor/editor.main.nls.zh-cn.js +31 -0
  161. package/public/vs/editor/editor.main.nls.zh-tw.js +29 -0
  162. package/public/vs/language/css/cssMode.js +13 -0
  163. package/public/vs/language/css/cssWorker.js +81 -0
  164. package/public/vs/language/css/cssWorker.js.gz +0 -0
  165. package/public/vs/language/html/htmlMode.js +13 -0
  166. package/public/vs/language/html/htmlWorker.js +453 -0
  167. package/public/vs/language/json/jsonMode.js +15 -0
  168. package/public/vs/language/json/jsonWorker.js +36 -0
  169. package/public/vs/language/typescript/tsMode.js +20 -0
  170. package/public/vs/language/typescript/tsWorker.js +37016 -0
  171. package/public/vs/language/typescript/tsWorker.js.gz +0 -0
  172. package/public/vs/loader.js +11 -0
  173. package/public/worker/pdf.worker.min.js +32 -0
  174. package/src/HeadlessChat.tsx +250 -0
  175. package/src/LoginPage/components/Login/LoginBox/index.tsx +103 -0
  176. package/src/LoginPage/components/Login/RegisterBox/index.tsx +181 -0
  177. package/src/LoginPage/components/Login/index.tsx +101 -0
  178. package/src/LoginPage/index.tsx +103 -0
  179. package/src/LoginPage/useServices.ts +53 -0
  180. package/src/LoginPage/utils.ts +42 -0
  181. package/src/Preview.tsx +278 -0
  182. package/src/UseLogingHeadless.tsx +238 -0
  183. package/src/adopters/GientechChat/Conversations/Item.tsx +132 -0
  184. package/src/adopters/GientechChat/Conversations/List.tsx +127 -0
  185. package/src/adopters/GientechChat/Conversations/groupByTime.ts +39 -0
  186. package/src/adopters/GientechChat/Conversations/index.tsx +102 -0
  187. package/src/adopters/GientechChat/constants.tsx +33 -0
  188. package/src/adopters/GientechChat/index.tsx +1242 -0
  189. package/src/adopters/GientechChat/types.ts +17 -0
  190. package/src/adopters/HeadLessChat/constants.tsx +32 -0
  191. package/src/adopters/HeadLessChat/index.tsx +1038 -0
  192. package/src/adopters/HeadLessChat/types.ts +23 -0
  193. package/src/adopters/gientechCommon/components/AppError.tsx +32 -0
  194. package/src/adopters/gientechCommon/components/AppLoading.tsx +75 -0
  195. package/src/adopters/gientechCommon/components/DisplayError.tsx +33 -0
  196. package/src/adopters/gientechCommon/components/DisplayLoading.tsx +38 -0
  197. package/src/adopters/gientechCommon/components/FeedBackModal.tsx +310 -0
  198. package/src/adopters/gientechCommon/components/FileManager/index.tsx +381 -0
  199. package/src/adopters/gientechCommon/components/FileManager/style.css +5 -0
  200. package/src/adopters/gientechCommon/components/Messages/AiChatBox.tsx +530 -0
  201. package/src/adopters/gientechCommon/components/Messages/GientechNewChatWelcome.tsx +245 -0
  202. package/src/adopters/gientechCommon/components/Messages/ReferenceCard.tsx +302 -0
  203. package/src/adopters/gientechCommon/components/Messages/RetriveItem.tsx +194 -0
  204. package/src/adopters/gientechCommon/components/Messages/UserChatBox.tsx +211 -0
  205. package/src/adopters/gientechCommon/components/RenameModal.tsx +75 -0
  206. package/src/adopters/gientechCommon/components/style.less +11 -0
  207. package/src/adopters/gientechCommon/configs/commonConfig.ts +2 -0
  208. package/src/adopters/gientechCommon/configs/senderConfig.ts +0 -0
  209. package/src/adopters/gientechCommon/configs/stylesConfig.ts +142 -0
  210. package/src/adopters/gientechCommon/hooks/AichatUseController.tsx +308 -0
  211. package/src/adopters/gientechCommon/slate/converters/deserializers.ts +757 -0
  212. package/src/adopters/gientechCommon/slate/converters/mockData.ts +232 -0
  213. package/src/adopters/gientechCommon/slate/converters/slateConverters.ts +258 -0
  214. package/src/adopters/gientechCommon/slate/richElements/index.tsx +476 -0
  215. package/src/adopters/gientechCommon/utils/request.ts +37 -0
  216. package/src/adopters/gientechCommon/utils/serverFn.ts +143 -0
  217. package/src/assets/img/downArrow.png +0 -0
  218. package/src/assets/img/excel.png +0 -0
  219. package/src/assets/img/img.png +0 -0
  220. package/src/assets/img/pdf.png +0 -0
  221. package/src/assets/img/ppt.png +0 -0
  222. package/src/assets/img/txt.png +0 -0
  223. package/src/assets/img/word.png +0 -0
  224. package/src/assets/login/homeBg.png +0 -0
  225. package/src/assets/login/left.jpg +0 -0
  226. package/src/assets/login/logoImg.png +0 -0
  227. package/src/assets/style.css +1 -0
  228. package/src/components/AiChat.tsx +647 -0
  229. package/src/components/AiChat.types.tsx +110 -0
  230. package/src/components/DefaultAppError.tsx +7 -0
  231. package/src/components/DefaultAppLoading.tsx +7 -0
  232. package/src/components/DefaultDisplayError.tsx +7 -0
  233. package/src/components/DefaultDisplayLoading.tsx +7 -0
  234. package/src/components/DefaultNewChatWelcome.tsx +10 -0
  235. package/src/components/Displayer/DefaultAiChatBox.tsx +64 -0
  236. package/src/components/Displayer/DefaultUserChatBox.tsx +34 -0
  237. package/src/components/Displayer/index.tsx +107 -0
  238. package/src/components/Displayer/slate/converters/deserializers.ts +427 -0
  239. package/src/components/Displayer/slate/converters/mockData.ts +190 -0
  240. package/src/components/Displayer/slate/converters/slateConverters.ts +258 -0
  241. package/src/components/Displayer/slate/richElements/index.tsx +308 -0
  242. package/src/components/DrawerContent.tsx +105 -0
  243. package/src/components/DrawerPreview.tsx +36 -0
  244. package/src/components/DynamicForm.tsx +29 -0
  245. package/src/components/Loading.tsx +0 -0
  246. package/src/components/RetrieveTest/components/ChatInput.tsx +198 -0
  247. package/src/components/RetrieveTest/components/ChatMessage.tsx +894 -0
  248. package/src/components/RetrieveTest/components/ConfigPanel.tsx +472 -0
  249. package/src/components/RetrieveTest/components/RichTextEditor.tsx +97 -0
  250. package/src/components/RetrieveTest/components/VoiceInput.tsx +257 -0
  251. package/src/components/RetrieveTest/components/config/index.ts +0 -0
  252. package/src/components/RetrieveTest/components/converters/deserializers.ts +393 -0
  253. package/src/components/RetrieveTest/components/converters/mockData.ts +190 -0
  254. package/src/components/RetrieveTest/components/converters/slateConverters.ts +164 -0
  255. package/src/components/RetrieveTest/components/richElements/index.tsx +339 -0
  256. package/src/components/RetrieveTest/components/style.css +3 -0
  257. package/src/components/RetrieveTest/index.tsx +679 -0
  258. package/src/components/Sender/FileUpload.tsx +76 -0
  259. package/src/components/Sender/FilesDisplay.tsx +103 -0
  260. package/src/components/Sender/VoiceInput.tsx +81 -0
  261. package/src/components/Sender/contexts/BadgeContext.tsx +36 -0
  262. package/src/components/Sender/index.tsx +545 -0
  263. package/src/components/Sidebar/Loading.tsx +0 -0
  264. package/src/components/Sidebar/RetriveConfigPanel.tsx +41 -0
  265. package/src/components/Sidebar/useDynamicFormItems.tsx +176 -0
  266. package/src/components/SidebarProp.ts +41 -0
  267. package/src/components/common/FileCardCommon.tsx +82 -0
  268. package/src/components/defaultStyleSet.tsx +142 -0
  269. package/src/components/styles.config.ts +4 -0
  270. package/src/lib_enter.ts +12 -0
  271. package/src/main.tsx +12 -0
  272. package/src/mockForm.ts +91 -0
  273. package/src/servers/chatApi.ts +43 -0
  274. package/src/servers/fileApi.ts +12 -0
  275. package/src/servers/modelApi.ts +19 -0
  276. package/src/style.css +22 -0
  277. package/src/testj.js +3 -0
  278. package/src/type.d.ts +0 -0
  279. package/src/utils/commonFn.tsx +111 -0
  280. package/src/utils/index.tsx +94 -0
  281. package/src/vite-env.d.ts +11 -0
  282. package/tailwind.config.js +18 -0
  283. package/tsconfig.app.json +29 -0
  284. package/tsconfig.app.tsbuildinfo +11 -0
  285. package/tsconfig.json +13 -0
  286. package/tsconfig.node.json +22 -0
  287. package/tsconfig.node.tsbuildinfo +1 -0
  288. package/vite.config.ts +138 -0
  289. package/vite.config_mainapp.ts +126 -0
  290. package/assets/aichat.css +0 -1
  291. /package/{HeadlessChat.d.ts → dist/HeadlessChat.d.ts} +0 -0
  292. /package/{LoginPage → dist/LoginPage}/components/Login/LoginBox/index.d.ts +0 -0
  293. /package/{LoginPage → dist/LoginPage}/components/Login/RegisterBox/index.d.ts +0 -0
  294. /package/{LoginPage → dist/LoginPage}/components/Login/index.d.ts +0 -0
  295. /package/{LoginPage → dist/LoginPage}/index.d.ts +0 -0
  296. /package/{LoginPage → dist/LoginPage}/useServices.d.ts +0 -0
  297. /package/{LoginPage → dist/LoginPage}/utils.d.ts +0 -0
  298. /package/{Preview.d.ts → dist/Preview.d.ts} +0 -0
  299. /package/{UseLogingHeadless.d.ts → dist/UseLogingHeadless.d.ts} +0 -0
  300. /package/{adopters → dist/adopters}/GientechChat/Conversations/groupByTime.d.ts +0 -0
  301. /package/{adopters → dist/adopters}/GientechChat/constants.d.ts +0 -0
  302. /package/{adopters → dist/adopters}/GientechChat/index.d.ts +0 -0
  303. /package/{adopters → dist/adopters}/GientechChat/types.d.ts +0 -0
  304. /package/{adopters → dist/adopters}/HeadLessChat/constants.d.ts +0 -0
  305. /package/{adopters → dist/adopters}/HeadLessChat/index.d.ts +0 -0
  306. /package/{adopters → dist/adopters}/HeadLessChat/types.d.ts +0 -0
  307. /package/{adopters → dist/adopters}/gientechCommon/components/AppError.d.ts +0 -0
  308. /package/{adopters → dist/adopters}/gientechCommon/components/AppLoading.d.ts +0 -0
  309. /package/{adopters → dist/adopters}/gientechCommon/components/DisplayError.d.ts +0 -0
  310. /package/{adopters → dist/adopters}/gientechCommon/components/DisplayLoading.d.ts +0 -0
  311. /package/{adopters → dist/adopters}/gientechCommon/components/FeedBackModal.d.ts +0 -0
  312. /package/{adopters → dist/adopters}/gientechCommon/components/FileManager/index.d.ts +0 -0
  313. /package/{adopters → dist/adopters}/gientechCommon/components/Messages/AiChatBox.d.ts +0 -0
  314. /package/{adopters → dist/adopters}/gientechCommon/components/Messages/GientechNewChatWelcome.d.ts +0 -0
  315. /package/{adopters → dist/adopters}/gientechCommon/components/Messages/UserChatBox.d.ts +0 -0
  316. /package/{adopters → dist/adopters}/gientechCommon/components/RenameModal.d.ts +0 -0
  317. /package/{adopters → dist/adopters}/gientechCommon/configs/commonConfig.d.ts +0 -0
  318. /package/{adopters → dist/adopters}/gientechCommon/configs/senderConfig.d.ts +0 -0
  319. /package/{adopters → dist/adopters}/gientechCommon/configs/stylesConfig.d.ts +0 -0
  320. /package/{adopters → dist/adopters}/gientechCommon/hooks/AichatUseController.d.ts +0 -0
  321. /package/{adopters → dist/adopters}/gientechCommon/slate/converters/deserializers.d.ts +0 -0
  322. /package/{adopters → dist/adopters}/gientechCommon/slate/converters/mockData.d.ts +0 -0
  323. /package/{adopters → dist/adopters}/gientechCommon/slate/converters/slateConverters.d.ts +0 -0
  324. /package/{adopters → dist/adopters}/gientechCommon/slate/richElements/index.d.ts +0 -0
  325. /package/{adopters → dist/adopters}/gientechCommon/utils/request.d.ts +0 -0
  326. /package/{adopters → dist/adopters}/gientechCommon/utils/serverFn.d.ts +0 -0
  327. /package/{components → dist/components}/AiChat.types.d.ts +0 -0
  328. /package/{components → dist/components}/DefaultAppError.d.ts +0 -0
  329. /package/{components → dist/components}/DefaultAppLoading.d.ts +0 -0
  330. /package/{components → dist/components}/DefaultDisplayError.d.ts +0 -0
  331. /package/{components → dist/components}/DefaultDisplayLoading.d.ts +0 -0
  332. /package/{components → dist/components}/DefaultNewChatWelcome.d.ts +0 -0
  333. /package/{components → dist/components}/Displayer/DefaultAiChatBox.d.ts +0 -0
  334. /package/{components → dist/components}/Displayer/DefaultUserChatBox.d.ts +0 -0
  335. /package/{components → dist/components}/Displayer/index.d.ts +0 -0
  336. /package/{components → dist/components}/Displayer/slate/converters/deserializers.d.ts +0 -0
  337. /package/{components → dist/components}/Displayer/slate/converters/mockData.d.ts +0 -0
  338. /package/{components → dist/components}/Displayer/slate/converters/slateConverters.d.ts +0 -0
  339. /package/{components → dist/components}/Displayer/slate/richElements/index.d.ts +0 -0
  340. /package/{components → dist/components}/DrawerContent.d.ts +0 -0
  341. /package/{components → dist/components}/DrawerPreview.d.ts +0 -0
  342. /package/{components → dist/components}/DynamicForm.d.ts +0 -0
  343. /package/{components → dist/components}/Loading.d.ts +0 -0
  344. /package/{components → dist/components}/RetrieveTest/components/ChatInput.d.ts +0 -0
  345. /package/{components → dist/components}/RetrieveTest/components/ChatMessage.d.ts +0 -0
  346. /package/{components → dist/components}/RetrieveTest/components/ConfigPanel.d.ts +0 -0
  347. /package/{components → dist/components}/RetrieveTest/components/RichTextEditor.d.ts +0 -0
  348. /package/{components → dist/components}/RetrieveTest/components/VoiceInput.d.ts +0 -0
  349. /package/{components → dist/components}/RetrieveTest/components/config/index.d.ts +0 -0
  350. /package/{components → dist/components}/RetrieveTest/components/converters/deserializers.d.ts +0 -0
  351. /package/{components → dist/components}/RetrieveTest/components/converters/mockData.d.ts +0 -0
  352. /package/{components → dist/components}/RetrieveTest/components/converters/slateConverters.d.ts +0 -0
  353. /package/{components → dist/components}/RetrieveTest/components/richElements/index.d.ts +0 -0
  354. /package/{components → dist/components}/RetrieveTest/index.d.ts +0 -0
  355. /package/{components → dist/components}/Sender/FileUpload.d.ts +0 -0
  356. /package/{components → dist/components}/Sender/FilesDisplay.d.ts +0 -0
  357. /package/{components → dist/components}/Sender/VoiceInput.d.ts +0 -0
  358. /package/{components → dist/components}/Sender/contexts/BadgeContext.d.ts +0 -0
  359. /package/{components → dist/components}/Sender/index.d.ts +0 -0
  360. /package/{components → dist/components}/Sidebar/Loading.d.ts +0 -0
  361. /package/{components → dist/components}/Sidebar/RetriveConfigPanel.d.ts +0 -0
  362. /package/{components → dist/components}/Sidebar/useDynamicFormItems.d.ts +0 -0
  363. /package/{components → dist/components}/SidebarProp.d.ts +0 -0
  364. /package/{components → dist/components}/common/FileCardCommon.d.ts +0 -0
  365. /package/{components → dist/components}/defaultStyleSet.d.ts +0 -0
  366. /package/{components → dist/components}/styles.config.d.ts +0 -0
  367. /package/{icons → dist/icons}/answerAwartar.png +0 -0
  368. /package/{icons → dist/icons}/docx-file.png +0 -0
  369. /package/{icons → dist/icons}/folder.png +0 -0
  370. /package/{icons → dist/icons}/html.png +0 -0
  371. /package/{icons → dist/icons}/image.png +0 -0
  372. /package/{icons → dist/icons}/jpg-file.png +0 -0
  373. /package/{icons → dist/icons}/json.png +0 -0
  374. /package/{icons → dist/icons}/md.png +0 -0
  375. /package/{icons → dist/icons}/pdf.png +0 -0
  376. /package/{icons → dist/icons}/pptx.png +0 -0
  377. /package/{icons → dist/icons}/questionAwartar.png +0 -0
  378. /package/{icons → dist/icons}/sheets.png +0 -0
  379. /package/{icons → dist/icons}/txt.png +0 -0
  380. /package/{icons → dist/icons}/xlsx.png +0 -0
  381. /package/{index.d.ts → dist/index.d.ts} +0 -0
  382. /package/{lib_enter.d.ts → dist/lib_enter.d.ts} +0 -0
  383. /package/{libs → dist/libs}/luckysheet/fontAwesome.otf +0 -0
  384. /package/{libs → dist/libs}/luckysheet/fontawesome-webfont.eot +0 -0
  385. /package/{libs → dist/libs}/luckysheet/fontawesome-webfont.svg +0 -0
  386. /package/{libs → dist/libs}/luckysheet/fontawesome-webfont.ttf +0 -0
  387. /package/{libs → dist/libs}/luckysheet/fontawesome-webfont.woff +0 -0
  388. /package/{libs → dist/libs}/luckysheet/fontawesome-webfont.woff2 +0 -0
  389. /package/{libs → dist/libs}/luckysheet/fonts/fontawesome-webfont.ttf +0 -0
  390. /package/{libs → dist/libs}/luckysheet/fonts/fontawesome-webfont.woff +0 -0
  391. /package/{libs → dist/libs}/luckysheet/fonts/fontawesome-webfont.woff2 +0 -0
  392. /package/{libs → dist/libs}/luckysheet/iconfont.css +0 -0
  393. /package/{libs → dist/libs}/luckysheet/jquery.min.js +0 -0
  394. /package/{libs → dist/libs}/luckysheet/luckysheet.css +0 -0
  395. /package/{libs → dist/libs}/luckysheet/luckysheet.umd.js +0 -0
  396. /package/{libs → dist/libs}/luckysheet/plugin.js +0 -0
  397. /package/{libs → dist/libs}/luckysheet/plugins.css +0 -0
  398. /package/{libs → dist/libs}/luckysheet/pluginsCss.css +0 -0
  399. /package/{main.d.ts → dist/main.d.ts} +0 -0
  400. /package/{mockForm.d.ts → dist/mockForm.d.ts} +0 -0
  401. /package/{servers → dist/servers}/chatApi.d.ts +0 -0
  402. /package/{servers → dist/servers}/fileApi.d.ts +0 -0
  403. /package/{servers → dist/servers}/modelApi.d.ts +0 -0
  404. /package/{utils → dist/utils}/commonFn.d.ts +0 -0
  405. /package/{utils → dist/utils}/index.d.ts +0 -0
  406. /package/{vite.svg → dist/vite.svg} +0 -0
  407. /package/{vs → dist/vs}/base/browser/ui/codicons/codicon/codicon.ttf +0 -0
  408. /package/{vs → dist/vs}/base/common/worker/simpleWorker.nls.de.js +0 -0
  409. /package/{vs → dist/vs}/base/common/worker/simpleWorker.nls.es.js +0 -0
  410. /package/{vs → dist/vs}/base/common/worker/simpleWorker.nls.fr.js +0 -0
  411. /package/{vs → dist/vs}/base/common/worker/simpleWorker.nls.it.js +0 -0
  412. /package/{vs → dist/vs}/base/common/worker/simpleWorker.nls.ja.js +0 -0
  413. /package/{vs → dist/vs}/base/common/worker/simpleWorker.nls.js +0 -0
  414. /package/{vs → dist/vs}/base/common/worker/simpleWorker.nls.ko.js +0 -0
  415. /package/{vs → dist/vs}/base/common/worker/simpleWorker.nls.ru.js +0 -0
  416. /package/{vs → dist/vs}/base/common/worker/simpleWorker.nls.zh-cn.js +0 -0
  417. /package/{vs → dist/vs}/base/common/worker/simpleWorker.nls.zh-tw.js +0 -0
  418. /package/{vs → dist/vs}/base/worker/workerMain.js +0 -0
  419. /package/{vs → dist/vs}/basic-languages/abap/abap.js +0 -0
  420. /package/{vs → dist/vs}/basic-languages/apex/apex.js +0 -0
  421. /package/{vs → dist/vs}/basic-languages/azcli/azcli.js +0 -0
  422. /package/{vs → dist/vs}/basic-languages/bat/bat.js +0 -0
  423. /package/{vs → dist/vs}/basic-languages/bicep/bicep.js +0 -0
  424. /package/{vs → dist/vs}/basic-languages/cameligo/cameligo.js +0 -0
  425. /package/{vs → dist/vs}/basic-languages/clojure/clojure.js +0 -0
  426. /package/{vs → dist/vs}/basic-languages/coffee/coffee.js +0 -0
  427. /package/{vs → dist/vs}/basic-languages/cpp/cpp.js +0 -0
  428. /package/{vs → dist/vs}/basic-languages/csharp/csharp.js +0 -0
  429. /package/{vs → dist/vs}/basic-languages/csp/csp.js +0 -0
  430. /package/{vs → dist/vs}/basic-languages/css/css.js +0 -0
  431. /package/{vs → dist/vs}/basic-languages/cypher/cypher.js +0 -0
  432. /package/{vs → dist/vs}/basic-languages/dart/dart.js +0 -0
  433. /package/{vs → dist/vs}/basic-languages/dockerfile/dockerfile.js +0 -0
  434. /package/{vs → dist/vs}/basic-languages/ecl/ecl.js +0 -0
  435. /package/{vs → dist/vs}/basic-languages/elixir/elixir.js +0 -0
  436. /package/{vs → dist/vs}/basic-languages/flow9/flow9.js +0 -0
  437. /package/{vs → dist/vs}/basic-languages/freemarker2/freemarker2.js +0 -0
  438. /package/{vs → dist/vs}/basic-languages/fsharp/fsharp.js +0 -0
  439. /package/{vs → dist/vs}/basic-languages/go/go.js +0 -0
  440. /package/{vs → dist/vs}/basic-languages/graphql/graphql.js +0 -0
  441. /package/{vs → dist/vs}/basic-languages/handlebars/handlebars.js +0 -0
  442. /package/{vs → dist/vs}/basic-languages/hcl/hcl.js +0 -0
  443. /package/{vs → dist/vs}/basic-languages/html/html.js +0 -0
  444. /package/{vs → dist/vs}/basic-languages/ini/ini.js +0 -0
  445. /package/{vs → dist/vs}/basic-languages/java/java.js +0 -0
  446. /package/{vs → dist/vs}/basic-languages/javascript/javascript.js +0 -0
  447. /package/{vs → dist/vs}/basic-languages/julia/julia.js +0 -0
  448. /package/{vs → dist/vs}/basic-languages/kotlin/kotlin.js +0 -0
  449. /package/{vs → dist/vs}/basic-languages/less/less.js +0 -0
  450. /package/{vs → dist/vs}/basic-languages/lexon/lexon.js +0 -0
  451. /package/{vs → dist/vs}/basic-languages/liquid/liquid.js +0 -0
  452. /package/{vs → dist/vs}/basic-languages/lua/lua.js +0 -0
  453. /package/{vs → dist/vs}/basic-languages/m3/m3.js +0 -0
  454. /package/{vs → dist/vs}/basic-languages/markdown/markdown.js +0 -0
  455. /package/{vs → dist/vs}/basic-languages/mdx/mdx.js +0 -0
  456. /package/{vs → dist/vs}/basic-languages/mips/mips.js +0 -0
  457. /package/{vs → dist/vs}/basic-languages/msdax/msdax.js +0 -0
  458. /package/{vs → dist/vs}/basic-languages/mysql/mysql.js +0 -0
  459. /package/{vs → dist/vs}/basic-languages/objective-c/objective-c.js +0 -0
  460. /package/{vs → dist/vs}/basic-languages/pascal/pascal.js +0 -0
  461. /package/{vs → dist/vs}/basic-languages/pascaligo/pascaligo.js +0 -0
  462. /package/{vs → dist/vs}/basic-languages/perl/perl.js +0 -0
  463. /package/{vs → dist/vs}/basic-languages/pgsql/pgsql.js +0 -0
  464. /package/{vs → dist/vs}/basic-languages/php/php.js +0 -0
  465. /package/{vs → dist/vs}/basic-languages/pla/pla.js +0 -0
  466. /package/{vs → dist/vs}/basic-languages/postiats/postiats.js +0 -0
  467. /package/{vs → dist/vs}/basic-languages/powerquery/powerquery.js +0 -0
  468. /package/{vs → dist/vs}/basic-languages/powershell/powershell.js +0 -0
  469. /package/{vs → dist/vs}/basic-languages/protobuf/protobuf.js +0 -0
  470. /package/{vs → dist/vs}/basic-languages/pug/pug.js +0 -0
  471. /package/{vs → dist/vs}/basic-languages/python/python.js +0 -0
  472. /package/{vs → dist/vs}/basic-languages/qsharp/qsharp.js +0 -0
  473. /package/{vs → dist/vs}/basic-languages/r/r.js +0 -0
  474. /package/{vs → dist/vs}/basic-languages/razor/razor.js +0 -0
  475. /package/{vs → dist/vs}/basic-languages/redis/redis.js +0 -0
  476. /package/{vs → dist/vs}/basic-languages/redshift/redshift.js +0 -0
  477. /package/{vs → dist/vs}/basic-languages/restructuredtext/restructuredtext.js +0 -0
  478. /package/{vs → dist/vs}/basic-languages/ruby/ruby.js +0 -0
  479. /package/{vs → dist/vs}/basic-languages/rust/rust.js +0 -0
  480. /package/{vs → dist/vs}/basic-languages/sb/sb.js +0 -0
  481. /package/{vs → dist/vs}/basic-languages/scala/scala.js +0 -0
  482. /package/{vs → dist/vs}/basic-languages/scheme/scheme.js +0 -0
  483. /package/{vs → dist/vs}/basic-languages/scss/scss.js +0 -0
  484. /package/{vs → dist/vs}/basic-languages/shell/shell.js +0 -0
  485. /package/{vs → dist/vs}/basic-languages/solidity/solidity.js +0 -0
  486. /package/{vs → dist/vs}/basic-languages/sophia/sophia.js +0 -0
  487. /package/{vs → dist/vs}/basic-languages/sparql/sparql.js +0 -0
  488. /package/{vs → dist/vs}/basic-languages/sql/sql.js +0 -0
  489. /package/{vs → dist/vs}/basic-languages/st/st.js +0 -0
  490. /package/{vs → dist/vs}/basic-languages/swift/swift.js +0 -0
  491. /package/{vs → dist/vs}/basic-languages/systemverilog/systemverilog.js +0 -0
  492. /package/{vs → dist/vs}/basic-languages/tcl/tcl.js +0 -0
  493. /package/{vs → dist/vs}/basic-languages/twig/twig.js +0 -0
  494. /package/{vs → dist/vs}/basic-languages/typescript/typescript.js +0 -0
  495. /package/{vs → dist/vs}/basic-languages/vb/vb.js +0 -0
  496. /package/{vs → dist/vs}/basic-languages/wgsl/wgsl.js +0 -0
  497. /package/{vs → dist/vs}/basic-languages/xml/xml.js +0 -0
  498. /package/{vs → dist/vs}/basic-languages/yaml/yaml.js +0 -0
  499. /package/{vs → dist/vs}/editor/editor.main.css +0 -0
  500. /package/{vs → dist/vs}/editor/editor.main.js +0 -0
  501. /package/{vs → dist/vs}/editor/editor.main.js.gz +0 -0
  502. /package/{vs → dist/vs}/editor/editor.main.nls.de.js +0 -0
  503. /package/{vs → dist/vs}/editor/editor.main.nls.es.js +0 -0
  504. /package/{vs → dist/vs}/editor/editor.main.nls.fr.js +0 -0
  505. /package/{vs → dist/vs}/editor/editor.main.nls.it.js +0 -0
  506. /package/{vs → dist/vs}/editor/editor.main.nls.ja.js +0 -0
  507. /package/{vs → dist/vs}/editor/editor.main.nls.js +0 -0
  508. /package/{vs → dist/vs}/editor/editor.main.nls.ko.js +0 -0
  509. /package/{vs → dist/vs}/editor/editor.main.nls.ru.js +0 -0
  510. /package/{vs → dist/vs}/editor/editor.main.nls.zh-cn.js +0 -0
  511. /package/{vs → dist/vs}/editor/editor.main.nls.zh-tw.js +0 -0
  512. /package/{vs → dist/vs}/language/css/cssMode.js +0 -0
  513. /package/{vs → dist/vs}/language/css/cssWorker.js +0 -0
  514. /package/{vs → dist/vs}/language/css/cssWorker.js.gz +0 -0
  515. /package/{vs → dist/vs}/language/html/htmlMode.js +0 -0
  516. /package/{vs → dist/vs}/language/html/htmlWorker.js +0 -0
  517. /package/{vs → dist/vs}/language/json/jsonMode.js +0 -0
  518. /package/{vs → dist/vs}/language/json/jsonWorker.js +0 -0
  519. /package/{vs → dist/vs}/language/typescript/tsMode.js +0 -0
  520. /package/{vs → dist/vs}/language/typescript/tsWorker.js +0 -0
  521. /package/{vs → dist/vs}/language/typescript/tsWorker.js.gz +0 -0
  522. /package/{vs → dist/vs}/loader.js +0 -0
  523. /package/{worker → dist/worker}/pdf.worker.min.js +0 -0
@@ -0,0 +1,381 @@
1
+ import { Modal, Button, Upload, Popconfirm } from "antd";
2
+ import { FileText, FileImage, FileSpreadsheet, File, Plus, X } from 'lucide-react';
3
+ import { useEffect, useState } from "react";
4
+ import './style.css';
5
+ import { AiChatStyles } from "../../../../components/defaultStyleSet";
6
+ import ReferenceCard from '../Messages/ReferenceCard';
7
+ import type { ThemeColors } from '../../../../components/defaultStyleSet';
8
+ import FileCardCommon from '../../../../components/common/FileCardCommon';
9
+
10
+ // 文件类型icon获取函数,优先用用户传入styles.theme.icons
11
+ export function getFileTypeIcon(type: string, styles?: any) {
12
+ const icons = styles?.theme?.icons || {};
13
+ //console.log('type``````````', type,icons)
14
+ switch (type.toLowerCase()) {
15
+ case 'docx':
16
+ case 'doc':
17
+ return icons.docx ? (
18
+ <img src={icons.docx} alt="docx" style={{ width: 20, height: 20 }} />
19
+ ) : (
20
+ <FileText className="w-5 h-5 text-blue-400" />
21
+ );
22
+ case 'image':
23
+ case 'jpg':
24
+ case 'jpeg':
25
+ case 'png':
26
+ case 'gif':
27
+ case 'bmp':
28
+ case 'webp':
29
+ case 'svg':
30
+ case 'ico':
31
+ return icons.image ? (
32
+ <img src={icons.image} alt="image" style={{ width: 20, height: 20 }} />
33
+ ) : (
34
+ <FileImage className="w-5 h-5 text-blue-400" />
35
+ );
36
+ case 'pptx':
37
+ case 'ppt':
38
+ return icons.pptx ? (
39
+ <img src={icons.pptx} alt="pptx" style={{ width: 20, height: 20 }} />
40
+ ) : (
41
+ <File className="w-5 h-5 text-orange-400" />
42
+ );
43
+ case 'sheets':
44
+ case 'excel':
45
+ case 'xls':
46
+ case 'csv':
47
+ case 'xlsx':
48
+ case 'xlsm':
49
+ case 'xlsb':
50
+ case 'xltx':
51
+ case 'xltm':
52
+ case 'xlt':
53
+ case 'xlam':
54
+ return icons.sheets ? (
55
+ <img src={icons.sheets} alt="sheets" style={{ width: 20, height: 20 }} />
56
+ ) : (
57
+ <FileSpreadsheet className="w-5 h-5 text-green-400" />
58
+ );
59
+ case 'pdf':
60
+ return icons.pdf ? (
61
+ <img src={icons.pdf} alt="pdf" style={{ width: 20, height: 20 }} />
62
+ ) : (
63
+ <FileText className="w-5 h-5 text-red-400" />
64
+ );
65
+ case 'txt':
66
+ return icons.txt ? (
67
+ <img src={icons.txt} alt="txt" style={{ width: 20, height: 20 }} />
68
+ ) : (
69
+ <FileText className="w-5 h-5 text-gray-400" />
70
+ );
71
+ case 'md':
72
+ return icons.md ? (
73
+ <img src={icons.md} alt="txt" style={{ width: 20, height: 20 }} />
74
+ ) : (
75
+ <FileText className="w-5 h-5 text-gray-400" />
76
+ );
77
+ case 'json':
78
+ return icons.json ? (
79
+ <img src={icons.json} alt="json" style={{ width: 20, height: 20 }} />
80
+ ) : (
81
+ <FileText className="w-5 h-5 text-gray-400" />
82
+ );
83
+ case 'html':
84
+ case 'htm':
85
+ return icons.html ? (
86
+ <img src={icons.html} alt="html" style={{ width: 20, height: 20 }} />
87
+ ) : (
88
+ <FileText className="w-5 h-5 text-gray-400" />
89
+ );
90
+ case 'xml':
91
+ default:
92
+ return <File className="w-5 h-5 text-gray-400" />;
93
+ }
94
+ }
95
+ interface FileItem {
96
+ file: File;
97
+ preview?: string;
98
+ type: string;
99
+ status?: 'pending' | 'uploading' | 'uploaded' | 'error';
100
+ url?: string;
101
+ error?: string;
102
+ }
103
+
104
+ // Mock数据
105
+ const mockFiles: FileItem[] = [
106
+ {
107
+ file: {
108
+ name: '产品需求文档.pdf',
109
+ size: 1024 * 1024 * 2.5, // 2.5MB
110
+ type: 'application/pdf',
111
+ } as File,
112
+ type: 'pdf',
113
+ status: 'uploaded',
114
+ url: 'https://example.com/file1.pdf',
115
+ },
116
+ {
117
+ file: {
118
+ name: '数据分析报告.xlsx',
119
+ size: 1024 * 1024 * 1.2, // 1.2MB
120
+ type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
121
+ } as File,
122
+ type: 'excel',
123
+ status: 'uploaded',
124
+ url: 'https://example.com/file3.xlsx',
125
+ },
126
+ {
127
+ file: {
128
+ name: '系统架构图.png',
129
+ size: 1024 * 512, // 512KB
130
+ type: 'image/png',
131
+ } as File,
132
+ type: 'image',
133
+ status: 'uploaded',
134
+ url: 'https://example.com/file2.png',
135
+ },
136
+ ];
137
+
138
+ const formatFileSize = (bytes: number) => {
139
+ if (bytes < 1024) return bytes + ' B';
140
+ if (bytes < 1024 * 1024) return (bytes / 1024).toFixed(1) + ' KB';
141
+ return (bytes / (1024 * 1024)).toFixed(1) + ' MB';
142
+ };
143
+
144
+ export default function FileManager({
145
+ open,
146
+ onCancel,
147
+ files = mockFiles,
148
+ currentFiles = [],
149
+ onUpload,
150
+ onRemoveFile,
151
+ styles,
152
+ eventsEmit
153
+ }: {
154
+ open: boolean;
155
+ onCancel: () => void;
156
+ files: FileItem[];
157
+ styles: AiChatStyles;
158
+ currentFiles: FileItem[];
159
+ onUpload?: (files: FileList) => void;
160
+ onRemoveFile?: (file: FileItem, idx: number, type: 'uploaded' | 'pending') => void;
161
+ eventsEmit?: (eventName: string, payload?: any) => void;
162
+ }) {
163
+ // 状态映射
164
+ const statusMap = {
165
+ pending: '待上传',
166
+ uploading: '上传中',
167
+ uploaded: '已上传',
168
+ analyzing: '解析中',
169
+ analyze_failed: '解析失败',
170
+ error: '失败',
171
+ };
172
+
173
+ // 选中状态
174
+ const [selectedFiles, setSelectedFiles] = useState<number[]>([]);
175
+
176
+ const handleSelect = (idx: number) => {
177
+ setSelectedFiles(prev => prev.includes(idx) ? prev.filter(i => i !== idx) : [...prev, idx]);
178
+ };
179
+
180
+ // 已上传文件删除事件抛出
181
+ const handleRemove = (file: FileItem, idx: number) => {
182
+ eventsEmit && eventsEmit('uploaded_file:removeFromTemp', { file, idx });
183
+ };
184
+
185
+
186
+ // 主题色,提前定义,避免未初始化访问
187
+ const themeColors: ThemeColors = (styles && styles.theme && styles.theme.colors) ? styles.theme.colors : {
188
+ primary: '#007bff',
189
+ secondary: '#6c757d',
190
+ success: '#008000',
191
+ warning: '#FFA500',
192
+ error: '#FF0000',
193
+ info: '#0000FF',
194
+ background: '#f8f9fa',
195
+ text: '#343a40',
196
+ border: '#dee2e6',
197
+ disabled: '#808080',
198
+ disabledBackground: '#F5F5F5',
199
+ disabledText: '#808080',
200
+ shadow: '#000000',
201
+ appBackground: 'transparent',
202
+ };
203
+
204
+ // 拆分文件
205
+ const uploadedFileCards = files.map((f, idx) => (
206
+ <div key={f.file.name + idx} className="relative flex flex-col gap-2.5 items-center justify-center">
207
+ <div className="absolute right-1 top-1 z-10">
208
+ <Popconfirm
209
+ title="确认从临时对话知识库移除该文件?"
210
+ onConfirm={() => handleRemove(f, idx)}
211
+ okText="确认"
212
+ cancelText="取消"
213
+ >
214
+ <button
215
+ className="bg-white cursor-pointer rounded-full p-0.5"
216
+ style={{
217
+ lineHeight: 0,
218
+ color: themeColors && themeColors.text ? themeColors.text : '#FF0000',
219
+ transition: 'background 0.2s, color 0.2s',
220
+ }}
221
+ onMouseOver={e => {
222
+ (e.currentTarget as HTMLElement).style.color = themeColors && themeColors.error ? themeColors.error : '#FF0000';
223
+ }}
224
+ onMouseOut={e => {
225
+ (e.currentTarget as HTMLElement).style.color = themeColors.text;
226
+ }}
227
+ title="移除"
228
+ >
229
+ <X className="w-3 h-3" />
230
+ </button>
231
+ </Popconfirm>
232
+ </div>
233
+ <ReferenceCard
234
+ file_type={f.type}
235
+ file_name={f.file.name}
236
+ url={f.url}
237
+ retrieve_tags={[]}
238
+ styles={styles}
239
+ isUploadFile={true}
240
+ eventsEmit={eventsEmit}
241
+ />
242
+ </div>
243
+ ));
244
+ const pendingFileCards = currentFiles.map((f, idx) => {
245
+ const fileType = f.file.name.split('.').pop() || '';
246
+ const icon = getFileTypeIcon(fileType, styles);
247
+ return (
248
+ <FileCardCommon
249
+ key={f.file.name + idx}
250
+ cardId={`pending-file-card-${idx}`}
251
+ fileName={f.file.name}
252
+ fileSize={f.file.size}
253
+ icon={icon}
254
+ statusText={statusMap[f.status || 'pending']}
255
+ statusColor="text-gray-400"
256
+ showRemove={true}
257
+ onRemove={() => onRemoveFile && onRemoveFile(f, idx, 'pending')}
258
+ themeColors={themeColors}
259
+ style={{ boxShadow: 'none', height: 55, background: '#f8fafc' }}
260
+ />
261
+ );
262
+ });
263
+
264
+ // 多选删除
265
+ const handleBatchRemove = () => {
266
+ if (eventsEmit) {
267
+ const filesToRemove = selectedFiles.map(idx => ({ file: files[idx], idx })).filter(f => f.file);
268
+ eventsEmit('uploaded_file:remove_batch', filesToRemove);
269
+ }
270
+ setSelectedFiles([]);
271
+ };
272
+
273
+ // 主题色
274
+ const batchDeleteBtnStyle = selectedFiles.length > 0
275
+ ? {
276
+ borderColor: themeColors && themeColors.error ? themeColors.error : '#FF0000',
277
+ background: themeColors && themeColors.error ? themeColors.error + '22' : '#FF000022',
278
+ color: themeColors && themeColors.error ? themeColors.error : '#FF0000',
279
+ }
280
+ : {
281
+ borderColor: themeColors && themeColors.disabledText ? themeColors.disabledText : '#808080',
282
+ background: themeColors && themeColors.disabledBackground ? themeColors.disabledBackground : '#F5F5F5',
283
+ color: themeColors && themeColors.disabledText ? themeColors.disabledText : '#808080',
284
+ cursor: 'not-allowed',
285
+ };
286
+
287
+ return (
288
+ <Modal
289
+ open={open}
290
+ onCancel={onCancel}
291
+ footer={null}
292
+ title={'对话临时文件知识库'}
293
+ closable={false}
294
+ width={800}
295
+ styles={{
296
+ body: {
297
+ padding: '0',
298
+ maxHeight: '70vh',
299
+ overflow: 'auto',
300
+ },
301
+ }}
302
+ >
303
+ <div className="file-manager-modal space-y-6 px-4 py-4">
304
+ {/* 已上传文件区域 */}
305
+ <div className="">
306
+ <div className="flex items-center mb-2 justify-between">
307
+ <div className="flex items-center">
308
+ <span className="text-xs font-semibold text-gray-700">已上传文件</span>
309
+ <span className="ml-2 text-xs text-gray-400">{files.length} 个</span>
310
+ </div>
311
+ {/* <button
312
+ className="ml-4 px-2 cursor-pointer py-1 text-xs rounded border"
313
+ disabled={selectedFiles.length === 0}
314
+ onClick={handleBatchRemove}
315
+ style={batchDeleteBtnStyle}
316
+ >
317
+ 删除知识文档
318
+ </button> */}
319
+ </div>
320
+ <div
321
+ className="w-full relative min-h-[200px] max-h-[260px] bg-slate-50 p-2 overflow-y-auto"
322
+ style={{ overflowX: 'hidden' }}
323
+ >
324
+ <div className="flex flex-wrap gap-1">
325
+ {uploadedFileCards.length > 0 ? (
326
+ uploadedFileCards
327
+ ) : (
328
+ <div className="flex items-center w-full h-full py-10 justify-center text-gray-400 text-sm">
329
+ 暂无已上传文件
330
+ </div>
331
+ )}
332
+ </div>
333
+ </div>
334
+ </div>
335
+ {/* 待上传文件区域 */}
336
+ <div>
337
+ <div className="flex items-center mb-2">
338
+ <span className="text-xs font-semibold text-gray-700">待上传文件</span>
339
+ <span className="ml-2 text-xs text-gray-400">{currentFiles.length} 个</span>
340
+ </div>
341
+ <div className="flex gap-2 overflow-x-auto pb-2">
342
+ {pendingFileCards}
343
+ {/* 上传卡片 */}
344
+ <Upload.Dragger
345
+ multiple
346
+ showUploadList={false}
347
+ beforeUpload={(file, fileList) => {
348
+ if (file === fileList[0]) {
349
+ onUpload?.(fileList as unknown as FileList);
350
+ }
351
+ return false;
352
+ }}
353
+ className="!bg-gray-50 !border-dashed !border-gray-300 hover:!border-blue-400 cursor-pointer min-w-[160px] max-w-[220px] flex flex-row items-center justify-center border-2 rounded-lg transition-all"
354
+ style={{ height: 45, boxShadow: 'none', padding: 0 }}
355
+ >
356
+ <div className="flex flex-row items-center pb-8 justify-center">
357
+ <Plus size={20} className="text-blue-400 mr-2" />
358
+ <div className="text-xs text-gray-500">上传文件</div>
359
+ </div>
360
+ </Upload.Dragger>
361
+ </div>
362
+ </div>
363
+ <div className="flex justify-end gap-2">
364
+ <Button type="primary" onClick={onCancel}>
365
+ 确认
366
+ </Button>
367
+ {/* <Button onClick={onCancel}>取消</Button> */}
368
+ </div>
369
+ </div>
370
+ <style>{`
371
+ .file-manager-modal .ant-upload-wrapper,
372
+ .file-manager-modal .ant-upload-drag,
373
+ .file-manager-modal .ant-upload-drag-container {
374
+ min-height: 55px !important;
375
+ height: 55px !important;
376
+ padding: 0 !important;
377
+ }
378
+ `}</style>
379
+ </Modal>
380
+ );
381
+ }
@@ -0,0 +1,5 @@
1
+ .ant-upload-drag-container {
2
+ height: 45px !important;
3
+ min-height: 45px !important;
4
+ padding: 0 !important;
5
+ }