@gientech/modual 1.2.8 → 1.2.10

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 (306) hide show
  1. package/README.md +129 -129
  2. package/{dist/assets/mysql.svg → assets/MySQL.svg} +14 -14
  3. package/{dist/assets → assets}/database.svg +11 -11
  4. package/{src/modules/database/assets → assets}/database_add.svg +53 -53
  5. package/{dist/assets → assets}/database_connect.svg +66 -66
  6. package/{dist/assets → assets}/database_upload.svg +29 -29
  7. package/{dist/assets → assets}/defaultWeLogo.svg +14 -14
  8. package/assets/index-Ao_dzK_x.js +1230 -0
  9. package/{dist/assets/index-DIm7RgkM.js → assets/index-D-dGaGjW.js} +93 -279
  10. package/assets/style.css +1 -0
  11. package/assets/style3.css +1 -0
  12. package/{dist/chat.js → chat.js} +72 -66
  13. package/database.js +20 -0
  14. package/{dist/databaseId.js → databaseId.js} +1 -1
  15. package/{dist/databaseTable.js → databaseTable.js} +1 -1
  16. package/{dist/modelManage.js → modelManage.js} +1 -1
  17. package/package.json +56 -99
  18. package/{dist/sensitive.js → sensitive.js} +1 -1
  19. package/{dist/streamFilesReader.js → streamFilesReader.js} +10 -10
  20. package/{dist/worker → worker}/pdf.worker.min.js +21 -21
  21. package/.editorconfig +0 -38
  22. package/.prettierignore +0 -16
  23. package/.prettierrc +0 -17
  24. package/USAGE.md +0 -191
  25. package/bash.exe.stackdump +0 -40
  26. package/components.json +0 -21
  27. package/dist/README.md +0 -129
  28. package/dist/assets/database_add.svg +0 -53
  29. package/dist/assets/index-97TKgPKE.js +0 -1284
  30. package/dist/assets/style.css +0 -1
  31. package/dist/assets/style3.css +0 -1
  32. package/dist/database.js +0 -20
  33. package/dist/package.json +0 -56
  34. package/doc_assets/2.png +0 -0
  35. package/doc_assets/demo.md +0 -27
  36. package/doc_assets/demos/dist-app/assets/index.Dh-ZAS9Z.css +0 -2
  37. package/doc_assets/demos/dist-app/assets/index.Dv8KVW18.js +0 -23699
  38. package/doc_assets/demos/dist-app/assets/index.Dv8KVW18.js.map +0 -1
  39. package/doc_assets/demos/dist-app/index.html +0 -14
  40. package/doc_assets/demos/dist-app/vite.svg +0 -1
  41. package/doc_assets/images/1.png +0 -0
  42. package/doc_assets/images/3.png +0 -0
  43. package/doc_assets/images/component-screenshot.png +0 -1
  44. package/doc_assets/install.md +0 -5
  45. package/eslint.config.js +0 -92
  46. package/index.html +0 -13
  47. package/postcss.config.cjs +0 -19
  48. package/public/vite.svg +0 -1
  49. package/public/worker/pdf.worker.min.js +0 -22
  50. package/scripts/README.md +0 -133
  51. package/scripts/build-demo.js +0 -88
  52. package/scripts/demo-selector.js +0 -216
  53. package/scripts/dev-demo.js +0 -76
  54. package/scripts/preview-demo.js +0 -130
  55. package/scripts/run-demo.bat +0 -34
  56. package/src/assets/img/downArrow.png +0 -0
  57. package/src/assets/img/excel.png +0 -0
  58. package/src/assets/img/img.png +0 -0
  59. package/src/assets/img/pdf.png +0 -0
  60. package/src/assets/img/ppt.png +0 -0
  61. package/src/assets/img/txt.png +0 -0
  62. package/src/assets/img/word.png +0 -0
  63. package/src/assets/login/homeBg.png +0 -0
  64. package/src/assets/login/left.jpg +0 -0
  65. package/src/assets/login/logoImg.png +0 -0
  66. package/src/examples/LoginPage/index.tsx +0 -18
  67. package/src/examples/chat/index.tsx +0 -140
  68. package/src/examples/gientechStreamFilesReader/index.tsx +0 -1016
  69. package/src/examples/ragDatabaseDataPage/index.tsx +0 -36
  70. package/src/examples/ragDatabaseIdPage/index.tsx +0 -44
  71. package/src/examples/ragDatabasePage/index.tsx +0 -36
  72. package/src/examples/ragModelManagePage/index.tsx +0 -37
  73. package/src/examples/ragSearchPage/index.tsx +0 -0
  74. package/src/examples/ragSensitiveWordsPage/index.tsx +0 -32
  75. package/src/examples/streamFiles/index.tsx +0 -384
  76. package/src/lib_enter.ts +0 -38
  77. package/src/main.tsx +0 -5
  78. package/src/main.tsx.backup +0 -5
  79. package/src/modules/chat/Conversations/Item.tsx +0 -167
  80. package/src/modules/chat/Conversations/List.tsx +0 -143
  81. package/src/modules/chat/Conversations/groupByTime.ts +0 -39
  82. package/src/modules/chat/Conversations/index.tsx +0 -212
  83. package/src/modules/chat/constants.tsx +0 -33
  84. package/src/modules/chat/index.tsx +0 -1837
  85. package/src/modules/chat/types.ts +0 -17
  86. package/src/modules/database/CreateModal.tsx +0 -398
  87. package/src/modules/database/assets/Doris.png +0 -0
  88. package/src/modules/database/assets/PostgreSQL.png +0 -0
  89. package/src/modules/database/assets/SQLServer.png +0 -0
  90. package/src/modules/database/assets/database.svg +0 -11
  91. package/src/modules/database/assets/database_connect.svg +0 -66
  92. package/src/modules/database/assets/database_upload.svg +0 -29
  93. package/src/modules/database/assets/empty.png +0 -0
  94. package/src/modules/database/assets/mysql.svg +0 -14
  95. package/src/modules/database/index.tsx +0 -466
  96. package/src/modules/database/server.ts +0 -196
  97. package/src/modules/databaseId/CustomCom.tsx +0 -156
  98. package/src/modules/databaseId/EditConfig.tsx +0 -268
  99. package/src/modules/databaseId/UploadDrawer.tsx +0 -520
  100. package/src/modules/databaseId/assets/aiOptimize.svg +0 -10
  101. package/src/modules/databaseId/assets/empty.png +0 -0
  102. package/src/modules/databaseId/assets/template.svg +0 -6
  103. package/src/modules/databaseId/assets/upload.svg +0 -9
  104. package/src/modules/databaseId/assets/useTemp.svg +0 -6
  105. package/src/modules/databaseId/index.tsx +0 -734
  106. package/src/modules/databaseId/server.ts +0 -286
  107. package/src/modules/databaseId/style.css +0 -5
  108. package/src/modules/databaseTable/EditRowDrawer.tsx +0 -119
  109. package/src/modules/databaseTable/index.tsx +0 -357
  110. package/src/modules/databaseTable/server.ts +0 -180
  111. package/src/modules/headlessChat/constants.tsx +0 -32
  112. package/src/modules/headlessChat/index.tsx +0 -1065
  113. package/src/modules/headlessChat/types.ts +0 -23
  114. package/src/modules/login/components/Login/LoginBox/index.tsx +0 -102
  115. package/src/modules/login/components/Login/RegisterBox/index.tsx +0 -180
  116. package/src/modules/login/components/Login/index.tsx +0 -100
  117. package/src/modules/login/index.tsx +0 -106
  118. package/src/modules/login/style.css +0 -3
  119. package/src/modules/login/useServices.ts +0 -53
  120. package/src/modules/login/utils.ts +0 -42
  121. package/src/modules/modelManage/ConfigDrawer.tsx +0 -249
  122. package/src/modules/modelManage/assets/empty.png +0 -0
  123. package/src/modules/modelManage/const.ts +0 -50
  124. package/src/modules/modelManage/index.tsx +0 -439
  125. package/src/modules/modelManage/server.ts +0 -185
  126. package/src/modules/search/assets/Icon-history.svg +0 -8
  127. package/src/modules/search/assets/answerAwartar.png +0 -0
  128. package/src/modules/search/assets/doc.png +0 -0
  129. package/src/modules/search/assets/genera.gif +0 -0
  130. package/src/modules/search/assets/icon-robot.svg +0 -9
  131. package/src/modules/search/assets/icon-search-bar.svg +0 -14
  132. package/src/modules/search/assets/icon-sub-title.svg +0 -3
  133. package/src/modules/search/assets/icon-title.svg +0 -9
  134. package/src/modules/search/assets/icon-zoomOut.svg +0 -9
  135. package/src/modules/search/assets/iconAi.svg +0 -9
  136. package/src/modules/search/assets/pdf.png +0 -0
  137. package/src/modules/search/assets/ppt.png +0 -0
  138. package/src/modules/search/assets/search.svg +0 -3
  139. package/src/modules/search/assets/selected.svg +0 -4
  140. package/src/modules/search/assets/txt.png +0 -0
  141. package/src/modules/search/assets/xls.png +0 -0
  142. package/src/modules/search/components/AssisSelect.tsx +0 -137
  143. package/src/modules/search/components/Editor/ChatViewEditor.tsx +0 -261
  144. package/src/modules/search/components/Editor/aichat.css +0 -1
  145. package/src/modules/search/components/Editor/constant.ts +0 -13
  146. package/src/modules/search/components/Editor/index.tsx +0 -113
  147. package/src/modules/search/components/Editor/plugins/autofomatRules.ts +0 -332
  148. package/src/modules/search/components/Editor/plugins/convertImgPlugins.tsx +0 -20
  149. package/src/modules/search/components/Editor/plugins/createIndexes.tsx +0 -38
  150. package/src/modules/search/components/Editor/plugins/displayer.ts +0 -298
  151. package/src/modules/search/components/Editor/plugins/imageClick.tsx +0 -32
  152. package/src/modules/search/components/Editor/plugins/myplugin.tsx +0 -98
  153. package/src/modules/search/components/Editor/ui/avatar.tsx +0 -19
  154. package/src/modules/search/components/Editor/ui/blockquote-element.tsx +0 -21
  155. package/src/modules/search/components/Editor/ui/button.tsx +0 -58
  156. package/src/modules/search/components/Editor/ui/calendar.tsx +0 -68
  157. package/src/modules/search/components/Editor/ui/caption.tsx +0 -46
  158. package/src/modules/search/components/Editor/ui/checkbox.tsx +0 -27
  159. package/src/modules/search/components/Editor/ui/code-block-combobox.tsx +0 -188
  160. package/src/modules/search/components/Editor/ui/code-block-element.css +0 -434
  161. package/src/modules/search/components/Editor/ui/code-block-element.tsx +0 -39
  162. package/src/modules/search/components/Editor/ui/code-leaf.tsx +0 -24
  163. package/src/modules/search/components/Editor/ui/code-line-element.tsx +0 -10
  164. package/src/modules/search/components/Editor/ui/code-syntax-leaf.tsx +0 -21
  165. package/src/modules/search/components/Editor/ui/column-element.tsx +0 -30
  166. package/src/modules/search/components/Editor/ui/column-group-element.tsx +0 -94
  167. package/src/modules/search/components/Editor/ui/command.tsx +0 -75
  168. package/src/modules/search/components/Editor/ui/comment-avatar.tsx +0 -22
  169. package/src/modules/search/components/Editor/ui/comment-create-form.tsx +0 -37
  170. package/src/modules/search/components/Editor/ui/comment-item.tsx +0 -74
  171. package/src/modules/search/components/Editor/ui/comment-leaf.tsx +0 -49
  172. package/src/modules/search/components/Editor/ui/comment-more-dropdown.tsx +0 -42
  173. package/src/modules/search/components/Editor/ui/comment-reply-items.tsx +0 -22
  174. package/src/modules/search/components/Editor/ui/comment-resolve-button.tsx +0 -32
  175. package/src/modules/search/components/Editor/ui/comment-value.tsx +0 -34
  176. package/src/modules/search/components/Editor/ui/comments-popover.tsx +0 -63
  177. package/src/modules/search/components/Editor/ui/date-element.tsx +0 -83
  178. package/src/modules/search/components/Editor/ui/dialog.tsx +0 -63
  179. package/src/modules/search/components/Editor/ui/draggable.tsx +0 -177
  180. package/src/modules/search/components/Editor/ui/dropdown-menu.tsx +0 -180
  181. package/src/modules/search/components/Editor/ui/emoji-input-element.tsx +0 -85
  182. package/src/modules/search/components/Editor/ui/excalidraw-element.tsx +0 -28
  183. package/src/modules/search/components/Editor/ui/fixed-toolbar-buttons.tsx +0 -76
  184. package/src/modules/search/components/Editor/ui/fixed-toolbar.tsx +0 -8
  185. package/src/modules/search/components/Editor/ui/floating-toolbar-buttons.tsx +0 -51
  186. package/src/modules/search/components/Editor/ui/floating-toolbar.tsx +0 -77
  187. package/src/modules/search/components/Editor/ui/heading-element.tsx +0 -48
  188. package/src/modules/search/components/Editor/ui/highlight-leaf.tsx +0 -17
  189. package/src/modules/search/components/Editor/ui/hr-element.tsx +0 -30
  190. package/src/modules/search/components/Editor/ui/icons.tsx +0 -267
  191. package/src/modules/search/components/Editor/ui/image-element.tsx +0 -74
  192. package/src/modules/search/components/Editor/ui/inline-combobox.tsx +0 -368
  193. package/src/modules/search/components/Editor/ui/input.tsx +0 -25
  194. package/src/modules/search/components/Editor/ui/insert-dropdown-menu.tsx +0 -218
  195. package/src/modules/search/components/Editor/ui/kbd-leaf.tsx +0 -20
  196. package/src/modules/search/components/Editor/ui/link-element.tsx +0 -29
  197. package/src/modules/search/components/Editor/ui/link-floating-toolbar.tsx +0 -161
  198. package/src/modules/search/components/Editor/ui/list-element.tsx +0 -30
  199. package/src/modules/search/components/Editor/ui/mark-toolbar-button.tsx +0 -24
  200. package/src/modules/search/components/Editor/ui/media-embed-element.tsx +0 -133
  201. package/src/modules/search/components/Editor/ui/media-popover.tsx +0 -97
  202. package/src/modules/search/components/Editor/ui/mention-element.tsx +0 -43
  203. package/src/modules/search/components/Editor/ui/mention-input-element.tsx +0 -141
  204. package/src/modules/search/components/Editor/ui/mode-dropdown-menu.tsx +0 -93
  205. package/src/modules/search/components/Editor/ui/more-dropdown-menu.tsx +0 -67
  206. package/src/modules/search/components/Editor/ui/paragraph-element.tsx +0 -4
  207. package/src/modules/search/components/Editor/ui/placeholder.tsx +0 -52
  208. package/src/modules/search/components/Editor/ui/popover.tsx +0 -32
  209. package/src/modules/search/components/Editor/ui/resizable.tsx +0 -66
  210. package/src/modules/search/components/Editor/ui/separator.tsx +0 -25
  211. package/src/modules/search/components/Editor/ui/style.less +0 -12
  212. package/src/modules/search/components/Editor/ui/table-cell-element.tsx +0 -143
  213. package/src/modules/search/components/Editor/ui/table-element.tsx +0 -243
  214. package/src/modules/search/components/Editor/ui/table-row-element.tsx +0 -22
  215. package/src/modules/search/components/Editor/ui/tableValue.tsx +0 -135
  216. package/src/modules/search/components/Editor/ui/todo-list-element.tsx +0 -43
  217. package/src/modules/search/components/Editor/ui/toggle-element.tsx +0 -31
  218. package/src/modules/search/components/Editor/ui/toolbar.tsx +0 -157
  219. package/src/modules/search/components/Editor/ui/tooltip.tsx +0 -65
  220. package/src/modules/search/components/Editor/ui/turn-into-dropdown-menu.tsx +0 -160
  221. package/src/modules/search/components/Editor/ui/with-draggables.tsx +0 -175
  222. package/src/modules/search/components/FileList.tsx +0 -287
  223. package/src/modules/search/components/ImageGroupView/index.tsx +0 -85
  224. package/src/modules/search/components/ResultContent.tsx +0 -232
  225. package/src/modules/search/components/SearchInput.tsx +0 -232
  226. package/src/modules/search/components/SearchLanding.tsx +0 -74
  227. package/src/modules/search/components/SearchView.tsx +0 -563
  228. package/src/modules/search/components/SimpleEditor.tsx +0 -158
  229. package/src/modules/search/components/SimpleFileList.tsx +0 -215
  230. package/src/modules/search/index.tsx +0 -10
  231. package/src/modules/search/reademe.md +0 -1
  232. package/src/modules/search/servers/apis.tsx +0 -19
  233. package/src/modules/search/servers/index.ts +0 -184
  234. package/src/modules/search/style.less +0 -503
  235. package/src/modules/search/type.ts +0 -22
  236. package/src/modules/search/utils.ts +0 -34
  237. package/src/modules/sensitive/index.tsx +0 -313
  238. package/src/modules/sensitive/server.ts +0 -122
  239. package/src/modules/streamFilesReader/GientechStreamReader.tsx +0 -1555
  240. package/src/modules/streamFilesReader/components/Header/Toolbar.tsx +0 -0
  241. package/src/modules/streamFilesReader/components/Header/index.tsx +0 -297
  242. package/src/modules/streamFilesReader/index.tsx +0 -3
  243. package/src/style.css +0 -6
  244. package/src/type.d.ts +0 -0
  245. package/src/utils/commonFn.tsx +0 -111
  246. package/src/utils/gientechCommon/components/AppError.tsx +0 -32
  247. package/src/utils/gientechCommon/components/AppLoading.tsx +0 -75
  248. package/src/utils/gientechCommon/components/DeleteModal.tsx +0 -75
  249. package/src/utils/gientechCommon/components/DisplayError.tsx +0 -33
  250. package/src/utils/gientechCommon/components/DisplayLoading.tsx +0 -38
  251. package/src/utils/gientechCommon/components/FeedBackModal.tsx +0 -310
  252. package/src/utils/gientechCommon/components/FileCardCommon.tsx +0 -82
  253. package/src/utils/gientechCommon/components/FileManager/index.tsx +0 -390
  254. package/src/utils/gientechCommon/components/FileManager/style.css +0 -5
  255. package/src/utils/gientechCommon/components/Messages/GientechNewChatWelcome.tsx +0 -296
  256. package/src/utils/gientechCommon/components/Messages/ReferenceCard.tsx +0 -339
  257. package/src/utils/gientechCommon/components/Messages/RetriveItem.tsx +0 -245
  258. package/src/utils/gientechCommon/components/Messages/WebRetriveItem.tsx +0 -209
  259. package/src/utils/gientechCommon/components/Messages/defaultBot.png +0 -0
  260. package/src/utils/gientechCommon/components/Messages/defaultStyleSet.tsx +0 -148
  261. package/src/utils/gientechCommon/components/Messages/defaultWeLogo.svg +0 -14
  262. package/src/utils/gientechCommon/components/RenameModal.tsx +0 -86
  263. package/src/utils/gientechCommon/components/style.less +0 -11
  264. package/src/utils/gientechCommon/configs/commonConfig.ts +0 -2
  265. package/src/utils/gientechCommon/configs/senderConfig.ts +0 -0
  266. package/src/utils/gientechCommon/configs/stylesConfig.ts +0 -142
  267. package/src/utils/gientechCommon/hooks/AichatUseController.tsx +0 -339
  268. package/src/utils/gientechCommon/slate/converters/deserializers.ts +0 -763
  269. package/src/utils/gientechCommon/slate/converters/mockData.ts +0 -232
  270. package/src/utils/gientechCommon/slate/converters/slateConverters.ts +0 -258
  271. package/src/utils/gientechCommon/slate/richElements/index.tsx +0 -499
  272. package/src/utils/gientechCommon/utils/request.ts +0 -37
  273. package/src/utils/gientechCommon/utils/serverFn.ts +0 -172
  274. package/src/utils/index.tsx +0 -126
  275. package/src/utils/testconfigs/demologin/index.tsx +0 -32
  276. package/src/utils/testconfigs/index.ts +0 -53
  277. package/src/vite-env.d.ts +0 -11
  278. package/stats.html +0 -4949
  279. package/tailwind.config.js +0 -170
  280. package/tsconfig.app.json +0 -30
  281. package/tsconfig.app.tsbuildinfo +0 -11
  282. package/tsconfig.json +0 -13
  283. package/tsconfig.node.json +0 -22
  284. package/tsconfig.node.tsbuildinfo +0 -1
  285. package/vite.config.ts +0 -178
  286. package/workflows/release.yml +0 -60
  287. /package/{dist/assets → assets}/Doris.png +0 -0
  288. /package/{dist/assets → assets}/PostgreSQL.png +0 -0
  289. /package/{dist/assets → assets}/SQLServer.png +0 -0
  290. /package/{dist/assets → assets}/_commonjsHelpers-gnU0ypJ3.js +0 -0
  291. /package/{dist/assets → assets}/circle-alert-g2Y6zAjt.js +0 -0
  292. /package/{dist/assets → assets}/empty.png +0 -0
  293. /package/{dist/assets → assets}/index-CEK88UzR.js +0 -0
  294. /package/{dist/assets → assets}/index-CpW6Dhpp.js +0 -0
  295. /package/{dist/assets → assets}/plus-omCUN0e3.js +0 -0
  296. /package/{dist/assets → assets}/style2.css +0 -0
  297. /package/{dist/assets → assets}/styled-components.browser.esm-DPkS13KC.js +0 -0
  298. /package/{dist/assets → assets}/x-vPcWt3fC.js +0 -0
  299. /package/{dist/chat.d.ts → chat.d.ts} +0 -0
  300. /package/{dist/database.d.ts → database.d.ts} +0 -0
  301. /package/{dist/databaseId.d.ts → databaseId.d.ts} +0 -0
  302. /package/{dist/databaseTable.d.ts → databaseTable.d.ts} +0 -0
  303. /package/{dist/modelManage.d.ts → modelManage.d.ts} +0 -0
  304. /package/{dist/sensitive.d.ts → sensitive.d.ts} +0 -0
  305. /package/{dist/streamFilesReader.d.ts → streamFilesReader.d.ts} +0 -0
  306. /package/{dist/vite.svg → vite.svg} +0 -0
@@ -1,196 +0,0 @@
1
- import axios from 'axios';
2
-
3
- type IDataSourceType = 'DataTable' | 'DirectDB';
4
-
5
- interface DatabaseApiProps {
6
- url?: string;
7
- token?: string;
8
- role?: string;
9
- eventsEmit?: (name: string, data: any) => void;
10
- }
11
-
12
- const AxiosInstance = ({ url, token, role, eventsEmit }: DatabaseApiProps) => {
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
- // 通过eventsEmit抛出认证错误事件,让调用层处理
26
- if (eventsEmit) {
27
- eventsEmit('request:error_auth', {
28
- errorMsg: '未登录或token已过期',
29
- redirect: '/login',
30
- });
31
- }
32
- return Promise.reject(new Error('未登录或token已过期'));
33
- }
34
-
35
- config.headers.Authorization = target_cookie || '';
36
- // 这里传中文会报错
37
- config.headers.userName = role === '未登录用户' ? '' : role;
38
- // config.headers.userId = roleId;
39
- return config;
40
- });
41
-
42
- // 返回拦截
43
- axios$.interceptors.response.use(
44
- response => {
45
- // 获取接口返回结果
46
- const noA = ['user/kaptcha'];
47
- const res = response.data;
48
- if (noA.some((item: string) => response.config.url && response.config.url.includes(item))) {
49
- return res;
50
- }
51
- if (res.size && res.type) {
52
- return res;
53
- }
54
- const { success, errorMsg, errorCode } = res;
55
-
56
- if (success) {
57
- return res;
58
- } else {
59
- // 通过eventsEmit抛出业务错误事件,让调用层处理
60
- if (eventsEmit) {
61
- eventsEmit('request:error_business', {
62
- errorCode,
63
- errorMsg: errorMsg || '请求出错,请稍后再试',
64
- response: res,
65
- });
66
- }
67
- }
68
- return false;
69
- },
70
- async error => {
71
- // 主动取消请求,不给报错信息
72
- if (error.message === 'canceled') {
73
- return Promise.reject(error);
74
- }
75
-
76
- // 通过eventsEmit抛出网络错误事件,让调用层处理
77
- if (eventsEmit) {
78
- let errorType = 'request:error_network';
79
- let errorData: any = {
80
- errorMsg: '网络请求失败',
81
- error: error,
82
- };
83
-
84
- if (error?.response?.status === 401) {
85
- errorType = 'request:error_auth';
86
- errorData = {
87
- errorMsg: '没有足够权限',
88
- error: error,
89
- redirect: '/login',
90
- };
91
- } else if (
92
- error?.response?.data?.errorCode === '30013' ||
93
- error?.response?.data?.errorCode === '30023'
94
- ) {
95
- errorType = 'request:error_business';
96
- errorData = {
97
- errorCode: error?.response?.data?.errorCode,
98
- errorMsg: error?.response?.data?.errorMsg || '请求出错,请稍后再试',
99
- error: error,
100
- };
101
- }
102
-
103
- eventsEmit(errorType, errorData);
104
- }
105
-
106
- console.log('Error occurs', error);
107
- return Promise.reject(error);
108
- }
109
- );
110
-
111
- //数据库列表
112
- const getDatabaseList = async (params: any) => {
113
- try {
114
- const res: any = await axios$.get(
115
- `/queryPageDBList?${new URLSearchParams(params).toString()}`
116
- );
117
- const { success, data } = res;
118
- if (success) return data;
119
- } catch (e) {
120
- console.log('getDatabaseList error:', e);
121
- }
122
- };
123
- //共享数据库列表
124
- // /database/queryShareDBList
125
- const getShareDatabaseList = async (params: any) => {
126
- try {
127
- const res: any = await axios$.get(
128
- `/queryShareDBList?${new URLSearchParams(params).toString()}`
129
- );
130
- const { success, data } = res;
131
- if (success) return data;
132
- } catch (e) {
133
- console.log('getShareDatabaseList error:', e);
134
- }
135
- };
136
- //删除数据库
137
- const delDatabaseById = async (id: string | number, type: IDataSourceType) => {
138
- const typeToUrl = getTypeToUrl(type);
139
- try {
140
- const res: any = await axios$.delete(`/${typeToUrl}/deleteDB/${id}`);
141
-
142
- const { success, data } = res;
143
- if (success) return data;
144
- } catch (e) {
145
- console.log('delDatabaseById error:', e);
146
- }
147
- };
148
-
149
- // 保存数据库
150
- const saveDatabase = async (params: any, type: IDataSourceType) => {
151
- const typeToUrl = getTypeToUrl(type);
152
- try {
153
- const res: any = await axios$.post(`/${typeToUrl}/saveDBInfo`, params);
154
-
155
- const { success, data } = res;
156
- if (success) return data;
157
- } catch (e) {
158
- console.log('saveDatabase error:', e);
159
- }
160
- };
161
-
162
- const testConnection = async (params: any) => {
163
- try {
164
- const res: any = await axios$.post(`/directDB/testConnect`, params);
165
-
166
- const { success, data } = res;
167
- if (success) return data;
168
- } catch (e) {
169
- console.log('testConnection error:', e);
170
- }
171
- };
172
-
173
- const syncSchema = async (id: any) => {
174
- try {
175
- const res: any = await axios$.get(`/directDB/syncSchema/${id}`);
176
- const { success, data } = res;
177
- if (success) return data;
178
- } catch (e) {
179
- console.log('syncSchema error:', e);
180
- }
181
- };
182
- return {
183
- getDatabaseList,
184
- getShareDatabaseList,
185
- delDatabaseById,
186
- saveDatabase,
187
- testConnection,
188
- syncSchema,
189
- };
190
- };
191
-
192
- const getTypeToUrl = (type: IDataSourceType) => {
193
- return type == 'DataTable' ? 'dataTable' : 'directDB';
194
- };
195
-
196
- export default AxiosInstance;
@@ -1,156 +0,0 @@
1
- import { TriangleAlert, LoaderCircle } from 'lucide-react';
2
- import { Tooltip, Tag, Badge } from 'antd';
3
- import { Button } from '@mxmweb/zui';
4
- import EmptyImg from './assets/empty.png';
5
-
6
- enum OPT_BTN {
7
- DATE = 0,
8
- VIEW,
9
- ERROR,
10
- AUTHORIZE,
11
- DELETE,
12
- ANALYSIS_OR_EXTRACT,
13
- DOWNLOAD,
14
- EDIT,
15
- ADD,
16
- ANALYSIS_CONFIG,
17
- AUTHORIZE_CONFIG,
18
- }
19
-
20
- enum DescStatus {
21
- GENERATING = 'generating',
22
- SUCCESS = 'success',
23
- FAIL = 'fail',
24
- }
25
-
26
- const statusColorMap = {
27
- success: 'green',
28
- error: 'red',
29
- warning: 'orange',
30
- processing: 'blue',
31
- info: 'cyan',
32
- default: 'default',
33
- };
34
-
35
- type StatusColorKey = keyof typeof statusColorMap;
36
- const getStatusColor = (statusType: unknown): string => {
37
- if (typeof statusType === 'string' && (statusType as string) in statusColorMap) {
38
- return statusColorMap[statusType as StatusColorKey];
39
- }
40
- return statusColorMap.default;
41
- };
42
-
43
- const StatusComponent = (props: any) => {
44
- const { value, cell } = props;
45
-
46
- switch (cell.columnId) {
47
- case 'importstatus':
48
- if (value) {
49
- return (
50
- <Tooltip title="有追加失败的文件,请及时处理">
51
- <Tag color="red" bordered={false}>
52
- 追加失败
53
- </Tag>
54
- </Tooltip>
55
- );
56
- }
57
- return <></>;
58
- case 'status':
59
- const color = getStatusColor(props.cell.statusType);
60
- if (value == '导入失败') {
61
- return (
62
- <Tooltip title={cell.errorMsg}>
63
- <div className="flex items-center gap-2">
64
- <Badge color={color} text={value} />
65
- <TriangleAlert size={14} color="red" />
66
- </div>
67
- </Tooltip>
68
- );
69
- } else {
70
- return <Badge color={color} text={value} />;
71
- }
72
- default:
73
- return <></>;
74
- }
75
- };
76
- const statusArr = [
77
- { statusType: 'success', value: '导入成功', status: '30' },
78
- { statusType: 'error', value: '导入失败', status: '00' },
79
- { statusType: 'default', value: '待导入', status: '10' },
80
- { statusType: 'processing', value: '导入中', status: '20' },
81
- { statusType: 'processing', value: '导入中', status: '11' }, //11是导入中但未建表, 需要在前端展示导入中
82
- ];
83
-
84
- const TableMetaDescriptionCom = (info: any) => {
85
- const { cell, value } = info;
86
- if (typeof value == 'string') {
87
- return (
88
- <div
89
- title={value}
90
- style={{
91
- maxWidth: 240,
92
- whiteSpace: 'nowrap',
93
- overflow: 'hidden',
94
- textOverflow: 'ellipsis',
95
- }}
96
- >
97
- {value}
98
- </div>
99
- );
100
- } else {
101
- if (cell.tableMeta?.isGenDescription) {
102
- //如果用户选择了自动生成描述
103
- if (cell.tableMeta?.generateDescriptionStatus == 'generating') {
104
- return (
105
- <div
106
- className="flex items-center gap-1 text-[#84ADFF]"
107
- style={{
108
- color: '#84ADFF',
109
- }}
110
- >
111
- <span>生成中</span>
112
- <LoaderCircle size={14} />
113
- </div>
114
- );
115
- }
116
-
117
- return '-';
118
- }
119
-
120
- return '-';
121
- }
122
- };
123
-
124
- const EmptyData = ({
125
- dbInfo,
126
- setDrawerTitle,
127
- setDrawerVisible,
128
- getBtnDisabled,
129
- }: {
130
- dbInfo: any;
131
- setDrawerTitle: (title: string) => void;
132
- setDrawerVisible: (open: boolean) => void;
133
- getBtnDisabled?: (type: OPT_BTN, permission: number) => boolean;
134
- }) => (
135
- <div className="flex flex-col items-center justify-center h-full">
136
- <div className="text-xl font-semibold mb-3">
137
- <img src={EmptyImg} width={120} />
138
- </div>
139
- <div className="text-base mb-2" style={{ color: '#888888' }}>
140
- 暂无数据文件
141
- </div>
142
- <div className="flex gap-3">
143
- <Button
144
- mode="primary"
145
- label="上传数据文件"
146
- disabled={getBtnDisabled && getBtnDisabled(OPT_BTN.ADD, dbInfo?.permission)}
147
- onClick={() => {
148
- setDrawerTitle('上传数据文件');
149
- setDrawerVisible(true);
150
- }}
151
- />
152
- </div>
153
- </div>
154
- );
155
-
156
- export { StatusComponent, TableMetaDescriptionCom, statusArr, EmptyData, OPT_BTN, DescStatus };
@@ -1,268 +0,0 @@
1
- import { useState, useCallback, useMemo, useEffect } from 'react';
2
- import { message, Drawer, Popover, Modal } from 'antd';
3
- import { Button } from '@mxmweb/zui';
4
- import { X } from 'lucide-react';
5
- import TemIcon from './assets/template.svg';
6
- import AIIcon from './assets/aiOptimize.svg';
7
- import { PromptTempDesigner } from '@mxmweb/rtext';
8
- const { confirm } = Modal;
9
-
10
- const initTemplate =
11
- '<template key="type" placeholder="输入表格类型"></template>表格主要展示了<template key="scene" placeholder="输入场景名称"></template>场景的数据,包含<template key="primary_key" placeholder="主要字段(可写多个,用顿号分隔)"></template>等主要字段,支持用户查询<template key="search_direction" placeholder="大概介绍需要查询的方向"></template>问题,如果设计多表关联查询,最好说明此表格通过<template key="key_name" placeholder="字段名称"></template>字段可以关联另一个<template key="table_name" placeholder="表格名称"></template>表格。';
12
- interface UploadDrawerProps {
13
- drawerTitle: string;
14
- drawerVisible: boolean;
15
- handleDrawerClose: () => void;
16
- optimizeDesc: (tableId: string | number) => Promise<any>;
17
- tableInfo?: any;
18
- eventsEmit: (name: string, data: any, appFn?: any) => void;
19
- }
20
- const EditConfig = ({
21
- drawerTitle,
22
- drawerVisible,
23
- tableInfo,
24
- handleDrawerClose,
25
- optimizeDesc,
26
- eventsEmit,
27
- }: UploadDrawerProps) => {
28
- const tbTitle = useMemo(() => {
29
- return tableInfo?.data.find((d: any) => d.columnId == 'name').value || '-';
30
- }, [tableInfo]);
31
-
32
- const [templateContent, setTemplateContent] = useState('');
33
- const [getDataFunction, setGetDataFunction] = useState<
34
- ((format: 'pure_string' | 'string' | 'markdown' | 'html') => string) | null
35
- >(null);
36
- const [data, setData] = useState<string>('');
37
- const [version, setVersion] = useState<number>(0);
38
-
39
- // AI优化loading
40
- const [optimizeLoading, setOptimizeLoading] = useState(false);
41
-
42
- //使用模版popover
43
- const [showModel, setShowModel] = useState(false);
44
-
45
- useEffect(() => {
46
- const tbDesc = tableInfo?.data.find((d: any) => d.columnId == 'description').value || '-';
47
- setData(tbDesc);
48
- }, [tableInfo]);
49
-
50
- const showConfirm = () => {
51
- confirm({
52
- title: '你确定要使用模板吗?',
53
- content: '这将替换你当前已填写的内容,且无法撤销。',
54
- okText: '确认替换',
55
- cancelText: '取消',
56
- onOk() {
57
- setData(initTemplate);
58
- setVersion(v => v + 1);
59
- },
60
- onCancel() {
61
- console.log('Cancel');
62
- },
63
- });
64
- };
65
-
66
- // 处理模版内容变化
67
- const handleTemplateChange = useCallback((template: string) => {
68
- setTemplateContent(template);
69
- console.log('模版内容变化:', template);
70
- }, []);
71
-
72
- // 处理getData回调
73
- const handleGetData = useCallback(
74
- (getData: (format: 'pure_string' | 'string' | 'markdown' | 'html') => string) => {
75
- setGetDataFunction(() => getData);
76
- console.log('getData函数已设置');
77
- },
78
- []
79
- );
80
-
81
- const handleOptimize = async () => {
82
- try {
83
- setOptimizeLoading(true);
84
- const res = await optimizeDesc(tableInfo.tableId);
85
- if (res) {
86
- setData(res);
87
- setVersion(v => v + 1);
88
- setOptimizeLoading(false);
89
- }
90
- } catch (e) {
91
- message.error('AI 优化失败');
92
- }
93
- };
94
-
95
- const handleDesData = useCallback(() => {
96
- if (!getDataFunction) {
97
- console.error('getData函数尚未准备好,请稍后再试');
98
- return;
99
- }
100
-
101
- const result = getDataFunction('pure_string');
102
- eventsEmit('table_info:update', result);
103
- }, [getDataFunction, eventsEmit]);
104
- return (
105
- <Drawer
106
- title={drawerTitle}
107
- placement="right"
108
- width={720}
109
- onClose={handleDrawerClose}
110
- closeIcon={false}
111
- extra={<X size={20} color="#888888" onClick={handleDrawerClose} className="cursor-pointer" />}
112
- open={drawerVisible}
113
- destroyOnHidden
114
- footer={
115
- <div className={`flex justify-end items-center`}>
116
- {/* 右侧:操作按钮组 */}
117
- <div className="flex self-end gap-3">
118
- <Button mode="default" label="取消" onClick={handleDrawerClose} />
119
- <Button
120
- mode="primary"
121
- label="确认"
122
- onClick={() => handleDesData()}
123
- disabled={optimizeLoading}
124
- />
125
- </div>
126
- </div>
127
- }
128
- >
129
- <div className="mb-[10px] font-bold">{tbTitle}</div>
130
- <div className="mb-[10px]">
131
- <span
132
- style={{
133
- color: '#FF3B30',
134
- marginRight: '4px',
135
- }}
136
- >
137
- *
138
- </span>
139
- <span>数据表描述</span>
140
- <span className="text-[#888888] ml-[4px]">
141
- (请准确填写表格的应用场景描述,大模型将依赖此信息识别并正确调用该数据表。)
142
- </span>
143
- </div>
144
- <PromptTempDesigner
145
- key={version}
146
- data={data}
147
- onChange={handleTemplateChange}
148
- onGetData={handleGetData}
149
- styles={{
150
- theme: {
151
- colors: {
152
- primary: '#0969da',
153
- secondary: '#6b7280',
154
- success: '#10b981',
155
- warning: '#f59e0b',
156
- error: '#ef4444',
157
- info: '#3b82f6',
158
- background: '#ffffff',
159
- text: '#1f2937',
160
- border: '#e5e7eb',
161
- disabled: '#9ca3af',
162
- disabledBackground: '#f3f4f6',
163
- disabledText: '#6b7280',
164
- shadow: '0 1px 3px rgba(0, 0, 0, 0.1)',
165
- appBackground: 'transparent',
166
- listBackground: '#f9fafb',
167
- dashboardBackground: '#ffffff',
168
- textSecondary: '#6b7280',
169
- },
170
- space: {
171
- sidebar: '260px',
172
- size: '12px',
173
- radius: '8px',
174
- padding: '1rem',
175
- margin: '1rem',
176
- shadow: '0 2px 8px rgba(0,0,0,0.1)',
177
- lineHeight: '1.8',
178
- },
179
- icons: {},
180
- fonts: {
181
- body: {
182
- size: '14px',
183
- weight: 'normal',
184
- family: 'PingFang SC, Microsoft YaHei, Arial, sans-serif',
185
- },
186
- heading: {
187
- size: '14px',
188
- weight: '600',
189
- family: 'PingFang SC, Microsoft YaHei, Arial, sans-serif',
190
- },
191
- },
192
- others: {
193
- baseFontWeight: 'normal',
194
- },
195
- },
196
- templateField: {
197
- backgroundColor: '#E5EEFF', // 输入框背景色
198
- borderColor: '#84ADFF', // 输入框边框颜色
199
- borderRadius: '6px',
200
- padding: '6px 12px', // 调整为1px间距,让蓝色块之间有精确的1px间距
201
- margin: '2px',
202
- fontSize: '14px',
203
- fontWeight: '500',
204
- minWidth: '80px',
205
- textColor: '#84ADFF', // 未激活前文字颜色
206
- },
207
- }}
208
- />
209
- <div>
210
- <Popover
211
- open={showModel}
212
- onOpenChange={v => setShowModel(!!v)}
213
- content={
214
- <div
215
- style={{
216
- width: '600px',
217
- margin: '10px',
218
- padding: '10px',
219
- }}
220
- onClick={showConfirm}
221
- className="hover:bg-gray-100 h-[80px] cursor-pointer rounded"
222
- >
223
- {
224
- '______表格主要展示了______场景的数据,包含______、______、______等主要字段,支持用户查询______问题(大概介绍)如果涉及多表关联查询,最好说明此表格通过______字段可以关联另一个______表格。'
225
- }
226
- </div>
227
- }
228
- title={
229
- <div
230
- className="flex justify-between items-center"
231
- style={{
232
- margin: '10px',
233
- }}
234
- >
235
- <div className="text-[16px]">模版</div>
236
- <X
237
- size={20}
238
- color="#888888"
239
- onClick={() => setShowModel(false)}
240
- className="cursor-pointer"
241
- />
242
- </div>
243
- }
244
- trigger="click"
245
- destroyOnHidden
246
- placement="bottomRight"
247
- getPopupContainer={(triggerNode: HTMLElement) => triggerNode}
248
- >
249
- <span>
250
- <Button mode="text" icon={<img src={TemIcon} />}>
251
- 使用模版
252
- </Button>
253
- </span>
254
- </Popover>
255
- <Button
256
- onClick={handleOptimize}
257
- mode="text"
258
- icon={<img src={AIIcon} />}
259
- loading={optimizeLoading}
260
- >
261
- AI优化
262
- </Button>
263
- </div>
264
- </Drawer>
265
- );
266
- };
267
-
268
- export default EditConfig;