@gientech/modual 2.0.8 → 2.0.9

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 (415) hide show
  1. package/.editorconfig +38 -0
  2. package/.prettierignore +16 -0
  3. package/.prettierrc +17 -0
  4. package/INSTALL_TROUBLESHOOTING.md +316 -0
  5. package/USAGE.md +247 -0
  6. package/bash.exe.stackdump +40 -0
  7. package/components.json +21 -0
  8. package/dist/README.md +761 -0
  9. package/dist/package.json +68 -0
  10. package/doc_assets/2.png +0 -0
  11. package/doc_assets/demo.md +27 -0
  12. package/doc_assets/demos/dist-app/assets/index.Dh-ZAS9Z.css +2 -0
  13. package/doc_assets/demos/dist-app/assets/index.Dv8KVW18.js +23699 -0
  14. package/doc_assets/demos/dist-app/assets/index.Dv8KVW18.js.map +1 -0
  15. package/doc_assets/demos/dist-app/index.html +14 -0
  16. package/doc_assets/demos/dist-app/vite.svg +1 -0
  17. package/doc_assets/images/1.png +0 -0
  18. package/doc_assets/images/3.png +0 -0
  19. package/doc_assets/images/component-screenshot.png +1 -0
  20. package/doc_assets/install.md +5 -0
  21. package/doc_assets/v2.0.7/345/217/230/346/233/264/346/200/273/347/273/223.md +115 -0
  22. package/doc_assets//346/226/271/346/241/210//344/274/230/345/214/226/346/226/271/346/241/210-/345/244/232/344/274/232/350/257/235SSE/350/277/236/346/216/245/347/256/241/347/220/206.md +504 -0
  23. package/eslint.config.js +92 -0
  24. package/index.html +13 -0
  25. package/package.json +103 -41
  26. package/package.json.demo-backup +109 -0
  27. package/postcss.config.cjs +19 -0
  28. package/public/icons/answerAwartar.png +0 -0
  29. package/public/icons/docx-file.png +0 -0
  30. package/public/icons/folder.png +0 -0
  31. package/public/icons/html.png +0 -0
  32. package/public/icons/image.png +0 -0
  33. package/public/icons/jpg-file.png +0 -0
  34. package/public/icons/json.png +0 -0
  35. package/public/icons/md.png +0 -0
  36. package/public/icons/pdf.png +0 -0
  37. package/public/icons/pptx.png +0 -0
  38. package/public/icons/questionAwartar.png +0 -0
  39. package/public/icons/sheets.png +0 -0
  40. package/public/icons/txt.png +0 -0
  41. package/public/icons/xlsx.png +0 -0
  42. package/public/vite.svg +1 -0
  43. package/public/worker/pdf.worker.min.js +22 -0
  44. package/scripts/README.md +133 -0
  45. package/scripts/build-demo.js +88 -0
  46. package/scripts/decrypt-api-key.js +95 -0
  47. package/scripts/demo-selector.js +216 -0
  48. package/scripts/dev-demo.js +76 -0
  49. package/scripts/preview-demo.js +130 -0
  50. package/scripts/run-demo.bat +34 -0
  51. package/src/assets/img/close.png +0 -0
  52. package/src/assets/img/database.png +0 -0
  53. package/src/assets/img/downArrow.png +0 -0
  54. package/src/assets/img/downLoad.png +0 -0
  55. package/src/assets/img/excel.png +0 -0
  56. package/src/assets/img/graphIcon.png +0 -0
  57. package/src/assets/img/img.png +0 -0
  58. package/src/assets/img/pdf.png +0 -0
  59. package/src/assets/img/ppt.png +0 -0
  60. package/src/assets/img/singleQa.png +0 -0
  61. package/src/assets/img/txt.png +0 -0
  62. package/src/assets/img/webSearch.png +0 -0
  63. package/src/assets/img/word.png +0 -0
  64. package/src/assets/login/homeBg.png +0 -0
  65. package/src/assets/login/left.jpg +0 -0
  66. package/src/assets/login/logoImg.png +0 -0
  67. package/src/examples/ConversationAssistantPage/index.tsx +41 -0
  68. package/src/examples/Demo/index.tsx +12 -0
  69. package/src/examples/LoginPage/index.tsx +18 -0
  70. package/src/examples/chat/components/DrawerGraphPreview.tsx +78 -0
  71. package/src/examples/chat/index.tsx +166 -0
  72. package/src/examples/chat/logo03.png +0 -0
  73. package/src/examples/gientechStreamFilesReader/index.tsx +951 -0
  74. package/src/examples/headlessChat/assets/mind.svg +6 -0
  75. package/src/examples/headlessChat/assets/net.svg +7 -0
  76. package/src/examples/headlessChat/index.tsx +285 -0
  77. package/src/examples/ragDatabaseDataPage/index.tsx +40 -0
  78. package/src/examples/ragDatabaseIdPage/index.tsx +47 -0
  79. package/src/examples/ragDatabasePage/index.tsx +36 -0
  80. package/src/examples/ragModelManagePage/index.tsx +38 -0
  81. package/src/examples/ragSearchPage/index.tsx +0 -0
  82. package/src/examples/ragSensitiveWordsPage/index.tsx +32 -0
  83. package/src/examples/streamFiles/index.tsx +417 -0
  84. package/src/lib_enter.ts +43 -0
  85. package/src/main.tsx +5 -0
  86. package/src/main.tsx.backup +5 -0
  87. package/src/modules/CHAT_UNIFICATION_PLAN.md +324 -0
  88. package/src/modules/assistantConfig/assets/databse.svg +6 -0
  89. package/src/modules/assistantConfig/assets/empty.png +0 -0
  90. package/src/modules/assistantConfig/assets/graph.svg +4 -0
  91. package/src/modules/assistantConfig/assets/knowledge.svg +4 -0
  92. package/src/modules/assistantConfig/assets/sensitive.svg +5 -0
  93. package/src/modules/assistantConfig/components/Database.tsx +171 -0
  94. package/src/modules/assistantConfig/components/Graph.tsx +177 -0
  95. package/src/modules/assistantConfig/components/Knowledge.tsx +276 -0
  96. package/src/modules/assistantConfig/components/NotFoundContent.tsx +21 -0
  97. package/src/modules/assistantConfig/components/Paragraph.tsx +51 -0
  98. package/src/modules/assistantConfig/components/ParamsItem.tsx +39 -0
  99. package/src/modules/assistantConfig/components/ResourceBinderItem.tsx +133 -0
  100. package/src/modules/assistantConfig/components/SearchableSelector.tsx +500 -0
  101. package/src/modules/assistantConfig/components/Sensitive.tsx +221 -0
  102. package/src/modules/assistantConfig/components/SliderInput.tsx +65 -0
  103. package/src/modules/assistantConfig/constants.tsx +75 -0
  104. package/src/modules/assistantConfig/index.tsx +710 -0
  105. package/src/modules/assistantConfig/server.ts +262 -0
  106. package/src/modules/chat/Conversations/Item.tsx +167 -0
  107. package/src/modules/chat/Conversations/List.tsx +210 -0
  108. package/src/modules/chat/Conversations/groupByTime.ts +39 -0
  109. package/src/modules/chat/Conversations/index.tsx +252 -0
  110. package/src/modules/chat/ReferenceBar.tsx +622 -0
  111. package/src/modules/chat/constants.tsx +57 -0
  112. package/src/modules/chat/index.tsx +2449 -0
  113. package/src/modules/chat/referenceCom/DeleteModal.tsx +75 -0
  114. package/src/modules/chat/referenceCom/DrawerContent.tsx +136 -0
  115. package/src/modules/chat/referenceCom/DrawerDatabase.tsx +102 -0
  116. package/src/modules/chat/referenceCom/DrawerGraphPreview.tsx +86 -0
  117. package/src/modules/chat/referenceCom/DrawerPreview.tsx +73 -0
  118. package/src/modules/chat/referenceCom/DrawerTitle.tsx +26 -0
  119. package/src/modules/chat/referenceCom/RenameModal.tsx +86 -0
  120. package/src/modules/chat/referenceCom/TagCom.tsx +30 -0
  121. package/src/modules/chat/style.less +3 -0
  122. package/src/modules/chat/types.ts +17 -0
  123. package/src/modules/chat/utils/index.ts +348 -0
  124. package/src/modules/database/CreateModal.tsx +403 -0
  125. package/src/modules/database/assets/Doris.png +0 -0
  126. package/src/modules/database/assets/PostgreSQL.png +0 -0
  127. package/src/modules/database/assets/SQLServer.png +0 -0
  128. package/src/modules/database/assets/database.svg +11 -0
  129. package/src/modules/database/assets/database_add.svg +53 -0
  130. package/src/modules/database/assets/database_connect.svg +66 -0
  131. package/src/modules/database/assets/database_upload.svg +29 -0
  132. package/src/modules/database/assets/empty.png +0 -0
  133. package/src/modules/database/assets/mysql.svg +14 -0
  134. package/src/modules/database/index.tsx +477 -0
  135. package/src/modules/database/server.ts +196 -0
  136. package/src/modules/databaseId/CustomCom.tsx +156 -0
  137. package/src/modules/databaseId/EditConfig.tsx +280 -0
  138. package/src/modules/databaseId/UploadDrawer.tsx +535 -0
  139. package/src/modules/databaseId/assets/aiOptimize.svg +10 -0
  140. package/src/modules/databaseId/assets/empty.png +0 -0
  141. package/src/modules/databaseId/assets/template.svg +6 -0
  142. package/src/modules/databaseId/assets/upload.svg +9 -0
  143. package/src/modules/databaseId/assets/useTemp.svg +6 -0
  144. package/src/modules/databaseId/index.tsx +769 -0
  145. package/src/modules/databaseId/server.ts +286 -0
  146. package/src/modules/databaseId/style.css +5 -0
  147. package/src/modules/databaseTable/EditRowDrawer.tsx +124 -0
  148. package/src/modules/databaseTable/index.tsx +359 -0
  149. package/src/modules/databaseTable/server.ts +180 -0
  150. package/src/modules/headlessChat/ReferenceBar.tsx +783 -0
  151. package/src/modules/headlessChat/constants.tsx +54 -0
  152. package/src/modules/headlessChat/index.tsx +1782 -0
  153. package/src/modules/headlessChat/referenceCom/DeleteModal.tsx +75 -0
  154. package/src/modules/headlessChat/referenceCom/DrawerContent.tsx +136 -0
  155. package/src/modules/headlessChat/referenceCom/DrawerDatabase.tsx +102 -0
  156. package/src/modules/headlessChat/referenceCom/DrawerGraphPreview.tsx +86 -0
  157. package/src/modules/headlessChat/referenceCom/DrawerPreview.tsx +73 -0
  158. package/src/modules/headlessChat/referenceCom/DrawerTitle.tsx +26 -0
  159. package/src/modules/headlessChat/referenceCom/RenameModal.tsx +86 -0
  160. package/src/modules/headlessChat/referenceCom/TagCom.tsx +30 -0
  161. package/src/modules/headlessChat/style.less +3 -0
  162. package/src/modules/headlessChat/types.ts +23 -0
  163. package/src/modules/headlessChat/utils/index.ts +348 -0
  164. package/src/modules/login/components/Login/LoginBox/index.tsx +102 -0
  165. package/src/modules/login/components/Login/RegisterBox/index.tsx +180 -0
  166. package/src/modules/login/components/Login/index.tsx +100 -0
  167. package/src/modules/login/index.tsx +106 -0
  168. package/src/modules/login/style.css +3 -0
  169. package/src/modules/login/useServices.ts +53 -0
  170. package/src/modules/login/utils.ts +42 -0
  171. package/src/modules/modelManage/ConfigDrawer.tsx +249 -0
  172. package/src/modules/modelManage/ReplaceModal.tsx +124 -0
  173. package/src/modules/modelManage/assets/empty.png +0 -0
  174. package/src/modules/modelManage/const.ts +51 -0
  175. package/src/modules/modelManage/index.tsx +606 -0
  176. package/src/modules/modelManage/server.ts +223 -0
  177. package/src/modules/nodegraph/index.tsx +1 -0
  178. package/src/modules/search/assets/Icon-history.svg +8 -0
  179. package/src/modules/search/assets/answerAwartar.png +0 -0
  180. package/src/modules/search/assets/doc.png +0 -0
  181. package/src/modules/search/assets/genera.gif +0 -0
  182. package/src/modules/search/assets/icon-robot.svg +9 -0
  183. package/src/modules/search/assets/icon-search-bar.svg +14 -0
  184. package/src/modules/search/assets/icon-sub-title.svg +3 -0
  185. package/src/modules/search/assets/icon-title.svg +9 -0
  186. package/src/modules/search/assets/icon-zoomOut.svg +9 -0
  187. package/src/modules/search/assets/iconAi.svg +9 -0
  188. package/src/modules/search/assets/pdf.png +0 -0
  189. package/src/modules/search/assets/ppt.png +0 -0
  190. package/src/modules/search/assets/search.svg +3 -0
  191. package/src/modules/search/assets/selected.svg +4 -0
  192. package/src/modules/search/assets/txt.png +0 -0
  193. package/src/modules/search/assets/xls.png +0 -0
  194. package/src/modules/search/components/AssisSelect.tsx +137 -0
  195. package/src/modules/search/components/Editor/ChatViewEditor.tsx +261 -0
  196. package/src/modules/search/components/Editor/aichat.css +1 -0
  197. package/src/modules/search/components/Editor/constant.ts +13 -0
  198. package/src/modules/search/components/Editor/index.tsx +113 -0
  199. package/src/modules/search/components/Editor/plugins/autofomatRules.ts +332 -0
  200. package/src/modules/search/components/Editor/plugins/convertImgPlugins.tsx +20 -0
  201. package/src/modules/search/components/Editor/plugins/createIndexes.tsx +38 -0
  202. package/src/modules/search/components/Editor/plugins/displayer.ts +298 -0
  203. package/src/modules/search/components/Editor/plugins/imageClick.tsx +32 -0
  204. package/src/modules/search/components/Editor/plugins/myplugin.tsx +98 -0
  205. package/src/modules/search/components/Editor/ui/avatar.tsx +19 -0
  206. package/src/modules/search/components/Editor/ui/blockquote-element.tsx +21 -0
  207. package/src/modules/search/components/Editor/ui/button.tsx +58 -0
  208. package/src/modules/search/components/Editor/ui/calendar.tsx +68 -0
  209. package/src/modules/search/components/Editor/ui/caption.tsx +46 -0
  210. package/src/modules/search/components/Editor/ui/checkbox.tsx +27 -0
  211. package/src/modules/search/components/Editor/ui/code-block-combobox.tsx +188 -0
  212. package/src/modules/search/components/Editor/ui/code-block-element.css +434 -0
  213. package/src/modules/search/components/Editor/ui/code-block-element.tsx +39 -0
  214. package/src/modules/search/components/Editor/ui/code-leaf.tsx +24 -0
  215. package/src/modules/search/components/Editor/ui/code-line-element.tsx +10 -0
  216. package/src/modules/search/components/Editor/ui/code-syntax-leaf.tsx +21 -0
  217. package/src/modules/search/components/Editor/ui/column-element.tsx +30 -0
  218. package/src/modules/search/components/Editor/ui/column-group-element.tsx +94 -0
  219. package/src/modules/search/components/Editor/ui/command.tsx +75 -0
  220. package/src/modules/search/components/Editor/ui/comment-avatar.tsx +22 -0
  221. package/src/modules/search/components/Editor/ui/comment-create-form.tsx +37 -0
  222. package/src/modules/search/components/Editor/ui/comment-item.tsx +74 -0
  223. package/src/modules/search/components/Editor/ui/comment-leaf.tsx +49 -0
  224. package/src/modules/search/components/Editor/ui/comment-more-dropdown.tsx +42 -0
  225. package/src/modules/search/components/Editor/ui/comment-reply-items.tsx +22 -0
  226. package/src/modules/search/components/Editor/ui/comment-resolve-button.tsx +32 -0
  227. package/src/modules/search/components/Editor/ui/comment-value.tsx +34 -0
  228. package/src/modules/search/components/Editor/ui/comments-popover.tsx +63 -0
  229. package/src/modules/search/components/Editor/ui/date-element.tsx +83 -0
  230. package/src/modules/search/components/Editor/ui/dialog.tsx +63 -0
  231. package/src/modules/search/components/Editor/ui/draggable.tsx +177 -0
  232. package/src/modules/search/components/Editor/ui/dropdown-menu.tsx +180 -0
  233. package/src/modules/search/components/Editor/ui/emoji-input-element.tsx +85 -0
  234. package/src/modules/search/components/Editor/ui/excalidraw-element.tsx +28 -0
  235. package/src/modules/search/components/Editor/ui/fixed-toolbar-buttons.tsx +76 -0
  236. package/src/modules/search/components/Editor/ui/fixed-toolbar.tsx +8 -0
  237. package/src/modules/search/components/Editor/ui/floating-toolbar-buttons.tsx +51 -0
  238. package/src/modules/search/components/Editor/ui/floating-toolbar.tsx +77 -0
  239. package/src/modules/search/components/Editor/ui/heading-element.tsx +48 -0
  240. package/src/modules/search/components/Editor/ui/highlight-leaf.tsx +17 -0
  241. package/src/modules/search/components/Editor/ui/hr-element.tsx +30 -0
  242. package/src/modules/search/components/Editor/ui/icons.tsx +267 -0
  243. package/src/modules/search/components/Editor/ui/image-element.tsx +74 -0
  244. package/src/modules/search/components/Editor/ui/inline-combobox.tsx +368 -0
  245. package/src/modules/search/components/Editor/ui/input.tsx +25 -0
  246. package/src/modules/search/components/Editor/ui/insert-dropdown-menu.tsx +218 -0
  247. package/src/modules/search/components/Editor/ui/kbd-leaf.tsx +20 -0
  248. package/src/modules/search/components/Editor/ui/link-element.tsx +29 -0
  249. package/src/modules/search/components/Editor/ui/link-floating-toolbar.tsx +161 -0
  250. package/src/modules/search/components/Editor/ui/list-element.tsx +30 -0
  251. package/src/modules/search/components/Editor/ui/mark-toolbar-button.tsx +24 -0
  252. package/src/modules/search/components/Editor/ui/media-embed-element.tsx +133 -0
  253. package/src/modules/search/components/Editor/ui/media-popover.tsx +97 -0
  254. package/src/modules/search/components/Editor/ui/mention-element.tsx +43 -0
  255. package/src/modules/search/components/Editor/ui/mention-input-element.tsx +141 -0
  256. package/src/modules/search/components/Editor/ui/mode-dropdown-menu.tsx +93 -0
  257. package/src/modules/search/components/Editor/ui/more-dropdown-menu.tsx +67 -0
  258. package/src/modules/search/components/Editor/ui/paragraph-element.tsx +4 -0
  259. package/src/modules/search/components/Editor/ui/placeholder.tsx +52 -0
  260. package/src/modules/search/components/Editor/ui/popover.tsx +32 -0
  261. package/src/modules/search/components/Editor/ui/resizable.tsx +66 -0
  262. package/src/modules/search/components/Editor/ui/separator.tsx +25 -0
  263. package/src/modules/search/components/Editor/ui/style.less +12 -0
  264. package/src/modules/search/components/Editor/ui/table-cell-element.tsx +143 -0
  265. package/src/modules/search/components/Editor/ui/table-element.tsx +243 -0
  266. package/src/modules/search/components/Editor/ui/table-row-element.tsx +22 -0
  267. package/src/modules/search/components/Editor/ui/tableValue.tsx +135 -0
  268. package/src/modules/search/components/Editor/ui/todo-list-element.tsx +43 -0
  269. package/src/modules/search/components/Editor/ui/toggle-element.tsx +31 -0
  270. package/src/modules/search/components/Editor/ui/toolbar.tsx +157 -0
  271. package/src/modules/search/components/Editor/ui/tooltip.tsx +65 -0
  272. package/src/modules/search/components/Editor/ui/turn-into-dropdown-menu.tsx +160 -0
  273. package/src/modules/search/components/Editor/ui/with-draggables.tsx +175 -0
  274. package/src/modules/search/components/FileList.tsx +287 -0
  275. package/src/modules/search/components/ImageGroupView/index.tsx +85 -0
  276. package/src/modules/search/components/ResultContent.tsx +232 -0
  277. package/src/modules/search/components/SearchInput.tsx +232 -0
  278. package/src/modules/search/components/SearchLanding.tsx +74 -0
  279. package/src/modules/search/components/SearchView.tsx +563 -0
  280. package/src/modules/search/components/SimpleEditor.tsx +158 -0
  281. package/src/modules/search/components/SimpleFileList.tsx +215 -0
  282. package/src/modules/search/index.tsx +10 -0
  283. package/src/modules/search/reademe.md +1 -0
  284. package/src/modules/search/servers/apis.tsx +19 -0
  285. package/src/modules/search/servers/index.ts +184 -0
  286. package/src/modules/search/style.less +503 -0
  287. package/src/modules/search/type.ts +22 -0
  288. package/src/modules/search/utils.ts +34 -0
  289. package/src/modules/sensitive/index.tsx +313 -0
  290. package/src/modules/sensitive/server.ts +122 -0
  291. package/src/modules/streamFilesReader/GientechStreamReader.tsx +1625 -0
  292. package/src/modules/streamFilesReader/components/Header/Toolbar.tsx +0 -0
  293. package/src/modules/streamFilesReader/components/Header/index.tsx +297 -0
  294. package/src/modules/streamFilesReader/index.tsx +3 -0
  295. package/src/style.css +6 -0
  296. package/src/type.d.ts +0 -0
  297. package/src/utils/commonFn.tsx +111 -0
  298. package/src/utils/decryptApiKey.ts +40 -0
  299. package/src/utils/gientechCommon/components/AppError.tsx +32 -0
  300. package/src/utils/gientechCommon/components/AppLoading.tsx +75 -0
  301. package/src/utils/gientechCommon/components/DeleteModal.tsx +75 -0
  302. package/src/utils/gientechCommon/components/DisplayError.tsx +33 -0
  303. package/src/utils/gientechCommon/components/DisplayLoading.tsx +38 -0
  304. package/src/utils/gientechCommon/components/FeedBackModal.tsx +319 -0
  305. package/src/utils/gientechCommon/components/FileCardCommon.tsx +82 -0
  306. package/src/utils/gientechCommon/components/FileManager/index.tsx +418 -0
  307. package/src/utils/gientechCommon/components/FileManager/style.css +5 -0
  308. package/src/utils/gientechCommon/components/Messages/GientechNewChatWelcome.tsx +581 -0
  309. package/src/utils/gientechCommon/components/Messages/ReferenceCard.tsx +359 -0
  310. package/src/utils/gientechCommon/components/Messages/RetriveItem.tsx +245 -0
  311. package/src/utils/gientechCommon/components/Messages/WebRetriveItem.tsx +209 -0
  312. package/src/utils/gientechCommon/components/Messages/defaultBot.png +0 -0
  313. package/src/utils/gientechCommon/components/Messages/defaultStyleSet.tsx +148 -0
  314. package/src/utils/gientechCommon/components/Messages/defaultWeLogo.svg +14 -0
  315. package/src/utils/gientechCommon/components/RenameModal.tsx +86 -0
  316. package/src/utils/gientechCommon/components/style.less +11 -0
  317. package/src/utils/gientechCommon/configs/commonConfig.ts +2 -0
  318. package/src/utils/gientechCommon/configs/senderConfig.ts +0 -0
  319. package/src/utils/gientechCommon/configs/stylesConfig.ts +142 -0
  320. package/src/utils/gientechCommon/hooks/AichatUseController.tsx +417 -0
  321. package/src/utils/gientechCommon/hooks/useFileDisplayTools.tsx +251 -0
  322. package/src/utils/gientechCommon/hooks/useFileManager.ts +208 -0
  323. package/src/utils/gientechCommon/slate/converters/deserializers.ts +763 -0
  324. package/src/utils/gientechCommon/slate/converters/mockData.ts +232 -0
  325. package/src/utils/gientechCommon/slate/converters/slateConverters.ts +258 -0
  326. package/src/utils/gientechCommon/slate/richElements/index.tsx +499 -0
  327. package/src/utils/gientechCommon/utils/fileUtils.ts +86 -0
  328. package/src/utils/gientechCommon/utils/request.ts +37 -0
  329. package/src/utils/gientechCommon/utils/serverFn.ts +172 -0
  330. package/src/utils/index.tsx +142 -0
  331. package/src/utils/testconfigs/demologin/index.tsx +32 -0
  332. package/src/utils/testconfigs/index.ts +59 -0
  333. package/src/vite-env.d.ts +42 -0
  334. package/stats.html +4949 -0
  335. package/tailwind.config.js +170 -0
  336. package/tsconfig.app.json +30 -0
  337. package/tsconfig.app.tsbuildinfo +11 -0
  338. package/tsconfig.json +13 -0
  339. package/tsconfig.node.json +22 -0
  340. package/tsconfig.node.tsbuildinfo +1 -0
  341. package/vite.config.app.ts +93 -0
  342. package/vite.config.ts +232 -0
  343. package/workflows/release.yml +60 -0
  344. package//346/215/242/350/241/214/346/240/274/345/274/217/344/277/235/346/214/201/344/274/230/345/214/226/346/226/271/346/241/210.md +359 -0
  345. /package/{assets → dist/assets}/Doris.png +0 -0
  346. /package/{assets → dist/assets}/GientechStreamReader-CNj6Rcm7.js +0 -0
  347. /package/{assets → dist/assets}/PostgreSQL.png +0 -0
  348. /package/{assets → dist/assets}/SQLServer.png +0 -0
  349. /package/{assets → dist/assets}/database.svg +0 -0
  350. /package/{assets → dist/assets}/database_add.svg +0 -0
  351. /package/{assets → dist/assets}/database_connect.svg +0 -0
  352. /package/{assets → dist/assets}/database_upload.svg +0 -0
  353. /package/{assets → dist/assets}/databse.svg +0 -0
  354. /package/{assets → dist/assets}/defaultWeLogo.svg +0 -0
  355. /package/{assets → dist/assets}/empty.png +0 -0
  356. /package/{assets → dist/assets}/graph.svg +0 -0
  357. /package/{assets → dist/assets}/homeBg.png +0 -0
  358. /package/{assets → dist/assets}/index-B2yNvzjy.js +0 -0
  359. /package/{assets → dist/assets}/index-BJv0t0eJ.js +0 -0
  360. /package/{assets → dist/assets}/index-BKe5FgcC.js +0 -0
  361. /package/{assets → dist/assets}/index-CU45mVZ4.js +0 -0
  362. /package/{assets → dist/assets}/index-CpW6Dhpp.js +0 -0
  363. /package/{assets → dist/assets}/index-D72cKELw.js +0 -0
  364. /package/{assets → dist/assets}/index-DdVFXD_y.js +0 -0
  365. /package/{assets → dist/assets}/index-DrkSoKz6.js +0 -0
  366. /package/{assets → dist/assets}/index-ZopkeZtI.js +0 -0
  367. /package/{assets → dist/assets}/index-g-SUxfJH.js +0 -0
  368. /package/{assets → dist/assets}/index-j0kQJd0a.js +0 -0
  369. /package/{assets → dist/assets}/knowledge.svg +0 -0
  370. /package/{assets → dist/assets}/left.jpg +0 -0
  371. /package/{assets → dist/assets}/logoImg.png +0 -0
  372. /package/{assets → dist/assets}/mysql.svg +0 -0
  373. /package/{assets → dist/assets}/plus-V9zUoSq6.js +0 -0
  374. /package/{assets → dist/assets}/sensitive.svg +0 -0
  375. /package/{assets → dist/assets}/style-CGmZ5osp.js +0 -0
  376. /package/{assets → dist/assets}/style.css +0 -0
  377. /package/{assets → dist/assets}/style2.css +0 -0
  378. /package/{assets → dist/assets}/style3.css +0 -0
  379. /package/{assets → dist/assets}/style4.css +0 -0
  380. /package/{assets → dist/assets}/worker-BbpylX7l.js +0 -0
  381. /package/{assets → dist/assets}/x-CnaaLGJF.js +0 -0
  382. /package/{assistantConfig.d.ts → dist/assistantConfig.d.ts} +0 -0
  383. /package/{assistantConfig.js → dist/assistantConfig.js} +0 -0
  384. /package/{chat.d.ts → dist/chat.d.ts} +0 -0
  385. /package/{chat.js → dist/chat.js} +0 -0
  386. /package/{database.d.ts → dist/database.d.ts} +0 -0
  387. /package/{database.js → dist/database.js} +0 -0
  388. /package/{databaseId.d.ts → dist/databaseId.d.ts} +0 -0
  389. /package/{databaseId.js → dist/databaseId.js} +0 -0
  390. /package/{databaseTable.d.ts → dist/databaseTable.d.ts} +0 -0
  391. /package/{databaseTable.js → dist/databaseTable.js} +0 -0
  392. /package/{icons → dist/icons}/answerAwartar.png +0 -0
  393. /package/{icons → dist/icons}/docx-file.png +0 -0
  394. /package/{icons → dist/icons}/folder.png +0 -0
  395. /package/{icons → dist/icons}/html.png +0 -0
  396. /package/{icons → dist/icons}/image.png +0 -0
  397. /package/{icons → dist/icons}/jpg-file.png +0 -0
  398. /package/{icons → dist/icons}/json.png +0 -0
  399. /package/{icons → dist/icons}/md.png +0 -0
  400. /package/{icons → dist/icons}/pdf.png +0 -0
  401. /package/{icons → dist/icons}/pptx.png +0 -0
  402. /package/{icons → dist/icons}/questionAwartar.png +0 -0
  403. /package/{icons → dist/icons}/sheets.png +0 -0
  404. /package/{icons → dist/icons}/txt.png +0 -0
  405. /package/{icons → dist/icons}/xlsx.png +0 -0
  406. /package/{index.d.ts → dist/index.d.ts} +0 -0
  407. /package/{index.js → dist/index.js} +0 -0
  408. /package/{modelManage.d.ts → dist/modelManage.d.ts} +0 -0
  409. /package/{modelManage.js → dist/modelManage.js} +0 -0
  410. /package/{sensitive.d.ts → dist/sensitive.d.ts} +0 -0
  411. /package/{sensitive.js → dist/sensitive.js} +0 -0
  412. /package/{streamFilesReader.d.ts → dist/streamFilesReader.d.ts} +0 -0
  413. /package/{streamFilesReader.js → dist/streamFilesReader.js} +0 -0
  414. /package/{vite.svg → dist/vite.svg} +0 -0
  415. /package/{worker → dist/worker}/pdf.worker.min.js +0 -0
@@ -0,0 +1,313 @@
1
+ import React, { useState, useEffect, useMemo, useRef } from 'react';
2
+ import { message, Modal, Form, Input } from 'antd';
3
+ import { Plus } from 'lucide-react';
4
+ import { Xviwer, CustomComponents } from '@mxmweb/xviewer';
5
+ import { DashboardContainer, Button } from '@mxmweb/zui';
6
+ import AxiosInstance from './server';
7
+ import '@mxmweb/zui/style.css';
8
+
9
+ const { confirm } = Modal;
10
+
11
+ // 敏感词库数据类型定义
12
+ interface SensitiveWordLibrary {
13
+ id: string;
14
+ name: string;
15
+ words: string[];
16
+ gmtCreate: string;
17
+ count: number;
18
+ }
19
+
20
+ const initialPage = {
21
+ pageNo: 1,
22
+ pageSize: 999,
23
+ };
24
+
25
+ // 业务层组件样式配置
26
+
27
+ /**
28
+ * 敏感词配置业务层组件
29
+ * 使用 DynamicDashDataCore 的 table 功能实现敏感词库管理
30
+ * @param props 组件属性
31
+ */
32
+ const SensitiveView: React.FC<{
33
+ url?: string;
34
+ token?: string;
35
+ role?: string;
36
+ CustomComponents?: CustomComponents;
37
+ eventsEmit?: (eventName: string, data: any) => void;
38
+ }> = ({ url, token, role, eventsEmit, CustomComponents }) => {
39
+ const [status, setStatus] = useState<any>({
40
+ container: 'ready',
41
+ content: 'ready',
42
+ });
43
+
44
+ const coreRef = useRef<any>(null);
45
+
46
+ // 敏感词库数据状态
47
+ const [data, setData] = useState<
48
+ {
49
+ id: string;
50
+ data?: any[];
51
+ }[]
52
+ >();
53
+ // 新建表单
54
+ const [form] = Form.useForm();
55
+
56
+ // 新建表单弹窗状态
57
+ const [showCreateModal, setShowCreateModal] = useState(false);
58
+
59
+ const { getLibraryList, deleteLibrary, createLibrary } = AxiosInstance({ url, token, role });
60
+
61
+ useEffect(() => {
62
+ setStatus((prev: any) => ({ ...prev, content: 'loading' }));
63
+ handleFetchList();
64
+ }, []);
65
+
66
+ /**
67
+ * 处理获取敏感词列表
68
+ */
69
+ const handleFetchList = async () => {
70
+ try {
71
+ const res = await getLibraryList({
72
+ ...initialPage,
73
+ });
74
+ if (res) {
75
+ const _data = convertToTableData(res.records);
76
+ setData(_data || []);
77
+ setStatus((prev: any) => ({ ...prev, content: 'ready' }));
78
+ }
79
+ } catch (e) {
80
+ console.log('[DatabaseApiError] getSensitiveList:', e);
81
+ }
82
+ };
83
+ /**
84
+ * 将敏感词库数据转换为表格数据格式
85
+ * @param libraries 敏感词库数组
86
+ * @returns 表格数据格式
87
+ */
88
+ const convertToTableData = (libraries: SensitiveWordLibrary[]) => {
89
+ return (libraries || []).map(library => ({
90
+ id: library.id,
91
+ data: [
92
+ { columnId: 'name', value: library.name, type: 'label' },
93
+ { columnId: 'sensitiveWords', value: library.words, type: 'tag' }, // 直接传递数组
94
+ { columnId: 'createDate', value: library.gmtCreate, type: 'date' },
95
+ { columnId: 'count', value: library.count, type: 'text' },
96
+ { columnId: 'actions', value: 'edit', label: '编辑', type: 'action' },
97
+ { columnId: 'actions', value: 'delete', label: '删除', type: 'action' },
98
+ ],
99
+ }));
100
+ };
101
+
102
+ // 表格配置
103
+ const tableConfig = useMemo(
104
+ () => ({
105
+ label: '敏感词配置',
106
+ model: null,
107
+ defaultActiveId: 'sensitive-table',
108
+
109
+ views: [
110
+ {
111
+ id: 'sensitive-table',
112
+ label: '敏感词库列表',
113
+ type: 'table',
114
+ viewBehavior: 'pagination' as const, //or pagination
115
+ allowMultiSelect: false,
116
+ viewPageSize: 10,
117
+ columns: [
118
+ {
119
+ title: '名称',
120
+ id: 'name',
121
+ type: 'label',
122
+ },
123
+ {
124
+ title: '敏感词',
125
+ id: 'sensitiveWords',
126
+ type: 'tag', // 使用 tag 类型,直接传递数组
127
+ },
128
+ {
129
+ title: '创建日期',
130
+ id: 'createDate',
131
+ type: 'date',
132
+ },
133
+ {
134
+ title: '数量',
135
+ id: 'count',
136
+ type: 'text',
137
+ },
138
+ {
139
+ title: '操作',
140
+ id: 'actions',
141
+ type: 'action',
142
+ },
143
+ ],
144
+ toolbar: [
145
+ {
146
+ type: 'button' as const,
147
+ key: 'create',
148
+ label: '新建敏感词库',
149
+ btnType: 'primary' as const,
150
+ icon: <Plus size={16} />,
151
+ },
152
+ {
153
+ type: 'fuzzy_search' as const,
154
+ key: 'search',
155
+ label: '请输入内容',
156
+ searchKeys: ['name', 'sensitiveWords'],
157
+ position: 'right',
158
+ },
159
+ ],
160
+ },
161
+ ],
162
+ }),
163
+ [data]
164
+ );
165
+
166
+ /**
167
+ * 处理新建敏感词库
168
+ */
169
+ const handleCreateLibrary = async () => {
170
+ try {
171
+ const value = await form.validateFields();
172
+ if (value) {
173
+ console.log('===val', value);
174
+ const res = await createLibrary({
175
+ ...value,
176
+ words: [],
177
+ });
178
+ if (res && coreRef?.current) {
179
+ const newLibrary: any = {
180
+ id: res,
181
+ data: [
182
+ { columnId: 'name', value: value.name, type: 'label' },
183
+ { columnId: 'sensitiveWords', value: [], type: 'tag' }, // 直接传递数组
184
+ {
185
+ columnId: 'createDate',
186
+ value: new Date()
187
+ .toLocaleString('zh-CN', {
188
+ year: '2-digit',
189
+ month: '2-digit',
190
+ day: '2-digit',
191
+ hour: '2-digit',
192
+ minute: '2-digit',
193
+ })
194
+ .replace(/\//g, '-'),
195
+ type: 'date',
196
+ },
197
+ { columnId: 'count', value: 0, type: 'text' },
198
+ { columnId: 'actions', value: 'edit', label: '编辑', type: 'action' },
199
+ { columnId: 'actions', value: 'delete', label: '删除', type: 'action' },
200
+ ],
201
+ };
202
+ coreRef?.current?.appFn?.addItem(newLibrary, { animate: true, position: 'start' });
203
+ message.success('新增敏感词成功!');
204
+ }
205
+ }
206
+ } catch (e) {
207
+ console.error('新增敏感词失败!');
208
+ } finally {
209
+ setShowCreateModal(false);
210
+ form.resetFields();
211
+ }
212
+ };
213
+
214
+ async function handleEventsEmit(name: string, data: any, appFn: any) {
215
+ console.log('[SensitiveView] 事件触发:', name, data);
216
+
217
+ switch (name) {
218
+ case 'toolbar_create':
219
+ // 新建敏感词库
220
+ setShowCreateModal(true);
221
+ break;
222
+ case 'table_action_delete': {
223
+ try {
224
+ // 删除敏感词库
225
+ confirm({
226
+ title: '确认删除敏感词库?',
227
+ content: '删除后,该敏感词库将无法恢复',
228
+ okText: '删除',
229
+ cancelText: '取消',
230
+ async onOk() {
231
+ const res = await deleteLibrary(data.id);
232
+ if (res && coreRef?.current) {
233
+ console.log('=====', coreRef?.current.appFn);
234
+
235
+ coreRef?.current.appFn.removeItem(data.id);
236
+ message.success(`删除成功`);
237
+ }
238
+ },
239
+ onCancel() {
240
+ console.log('Cancel');
241
+ },
242
+ });
243
+ } catch (e) {
244
+ console.error('删除敏感词库失败', e);
245
+ }
246
+ break;
247
+ }
248
+
249
+ default:
250
+ // 透传其他事件
251
+ if (typeof eventsEmit === 'function') {
252
+ eventsEmit(name, data);
253
+ }
254
+ break;
255
+ }
256
+ }
257
+
258
+ return (
259
+ <DashboardContainer title="敏感词库管理">
260
+ <Xviwer
261
+ dataSource={data}
262
+ ref={coreRef}
263
+ eventsEmit={handleEventsEmit}
264
+ status={status}
265
+ CustomComponents={{
266
+ ...CustomComponents,
267
+ }}
268
+ {...tableConfig}
269
+ />
270
+ <Modal
271
+ title="新建敏感词库"
272
+ open={showCreateModal}
273
+ width={520}
274
+ destroyOnHidden
275
+ onCancel={() => {
276
+ setShowCreateModal(false);
277
+ form.resetFields();
278
+ }}
279
+ footer={
280
+ <div
281
+ className="w-full flex flex-row"
282
+ style={{
283
+ justifyContent: 'end',
284
+ gap: '10px',
285
+ }}
286
+ >
287
+ <Button
288
+ mode="default"
289
+ label="取消"
290
+ onClick={() => {
291
+ setShowCreateModal(false);
292
+ form.resetFields();
293
+ }}
294
+ />
295
+ <Button mode="primary" label="确认" onClick={handleCreateLibrary} />
296
+ </div>
297
+ }
298
+ >
299
+ <Form form={form}>
300
+ <Form.Item
301
+ label={null}
302
+ name="name"
303
+ rules={[{ required: true, message: '请输入敏感词库名称!' }]}
304
+ >
305
+ <Input placeholder="请输入" />
306
+ </Form.Item>
307
+ </Form>
308
+ </Modal>
309
+ </DashboardContainer>
310
+ );
311
+ };
312
+
313
+ export default SensitiveView;
@@ -0,0 +1,122 @@
1
+ import { message } from 'antd';
2
+ import axios from 'axios';
3
+ const specialErrorCodes = ['10014'];
4
+
5
+ type IDataSourceType = 'DataTable' | 'DirectDB';
6
+
7
+ interface SensitiveApiProps {
8
+ url?: string;
9
+ token?: string;
10
+ role?: string;
11
+ }
12
+ const AxiosInstance = ({ url, token, role }: SensitiveApiProps) => {
13
+ const axios$ = axios.create({
14
+ baseURL: url,
15
+ // 配置请求超时时间
16
+ timeout: 1000000,
17
+ });
18
+ // 请求拦截
19
+ axios$.interceptors.request.use((config: any) => {
20
+ let target_cookie = token;
21
+
22
+ const noA = ['user/login', 'user/kaptcha', 'user/regist'];
23
+ // dangerous behaviour
24
+ if (!target_cookie && !noA.some((item: string) => config.url.includes(item))) {
25
+ window.location.pathname = '/login';
26
+ return;
27
+ }
28
+
29
+ config.headers.Authorization = target_cookie || '';
30
+ // 这里传中文会报错
31
+ config.headers.userName = role === '未登录用户' ? '' : role;
32
+ // config.headers.userId = roleId;
33
+ return config;
34
+ });
35
+ // 返回拦截
36
+ axios$.interceptors.response.use(
37
+ response => {
38
+ // 获取接口返回结果
39
+ const noA = ['user/kaptcha'];
40
+ const res = response.data;
41
+ if (noA.some((item: string) => response.config.url && response.config.url.includes(item))) {
42
+ return res;
43
+ }
44
+ if (res.size && res.type) {
45
+ return res;
46
+ }
47
+ const { success, errorMsg, errorCode } = res;
48
+ // 处理特殊错误码的情况,页面自己处理错误,例如上传文件重复
49
+ if (specialErrorCodes.includes(errorCode)) {
50
+ return res;
51
+ }
52
+ if (success) return res;
53
+ message.error(errorMsg || '请求出错,请稍后再试');
54
+ return false;
55
+ },
56
+ error => {
57
+ // 主动取消请求,不给报错信息
58
+ if (error.message === 'canceled') {
59
+ return;
60
+ }
61
+ if (
62
+ error?.response?.data?.errorCode === '30013' ||
63
+ error?.response?.data?.errorCode === '30023'
64
+ ) {
65
+ message.error((error?.response?.data || {}).errorMsg || '请求出错,请稍后再试');
66
+ // location.pathname = '/login';
67
+ }
68
+ if (error?.response?.status === 401) {
69
+ console.log('Error url:', error?.request?.responseURL);
70
+ message.error((error?.response?.data || {}).errorMsg || '没有足够权限');
71
+ //window.location.pathname = "/login";
72
+ }
73
+ console.log('Error occurs', error);
74
+ if ('未设置默认配置!' != (error?.response?.data || {}).errorMsg) {
75
+ message.error((error?.response?.data || {}).errorMsg || '请求出错,请稍后再试');
76
+ }
77
+ }
78
+ );
79
+ const getLibraryList = async (params: any) => {
80
+ try {
81
+ const res: any = await axios$.get(`/library?${new URLSearchParams(params).toString()}`);
82
+ const { success, data } = res;
83
+ if (success) return data;
84
+ return false;
85
+ } catch (e) {
86
+ console.log('e', e);
87
+ return false;
88
+ }
89
+ };
90
+
91
+ const createLibrary = async (params: any) => {
92
+ try {
93
+ const res: any = await axios$.post(`/library`, params);
94
+ const { success, data } = res;
95
+ if (success) return data;
96
+ return false;
97
+ } catch (e) {
98
+ console.log('e', e);
99
+ return false;
100
+ }
101
+ };
102
+
103
+ const deleteLibrary = async (id: any) => {
104
+ try {
105
+ const res: any = await axios$.delete(`/library/${id}`);
106
+ const { success, data } = res;
107
+ if (success) return data;
108
+ return false;
109
+ } catch (e) {
110
+ console.log('e', e);
111
+ return false;
112
+ }
113
+ };
114
+
115
+ return {
116
+ getLibraryList,
117
+ createLibrary,
118
+ deleteLibrary,
119
+ };
120
+ };
121
+
122
+ export default AxiosInstance;