@gientech/modual 1.3.2 → 1.3.3

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 (309) hide show
  1. package/.editorconfig +38 -0
  2. package/.prettierignore +16 -0
  3. package/.prettierrc +17 -0
  4. package/README.md +129 -129
  5. package/USAGE.md +191 -0
  6. package/bash.exe.stackdump +40 -0
  7. package/components.json +21 -0
  8. package/dist/README.md +129 -0
  9. package/{assets → dist/assets}/database.svg +11 -11
  10. package/{assets → dist/assets}/database_add.svg +53 -53
  11. package/{assets → dist/assets}/database_connect.svg +66 -66
  12. package/{assets → dist/assets}/database_upload.svg +29 -29
  13. package/{assets → dist/assets}/defaultWeLogo.svg +14 -14
  14. package/{assets/index-ldqIbm0x.js → dist/assets/index-XvC_4jDB.js} +106 -101
  15. package/{assets/index-D-dGaGjW.js → dist/assets/index-mPgEc8KC.js} +288 -102
  16. package/{assets/MySQL.svg → dist/assets/mysql.svg} +14 -14
  17. package/dist/assets/style.css +1 -0
  18. package/dist/assets/style3.css +1 -0
  19. package/{chat.js → dist/chat.js} +78 -78
  20. package/dist/database.js +20 -0
  21. package/{databaseId.js → dist/databaseId.js} +1 -1
  22. package/{databaseTable.js → dist/databaseTable.js} +1 -1
  23. package/{modelManage.js → dist/modelManage.js} +1 -1
  24. package/dist/package.json +56 -0
  25. package/{sensitive.js → dist/sensitive.js} +1 -1
  26. package/{streamFilesReader.js → dist/streamFilesReader.js} +11 -11
  27. package/{worker → dist/worker}/pdf.worker.min.js +21 -21
  28. package/doc_assets/2.png +0 -0
  29. package/doc_assets/demo.md +27 -0
  30. package/doc_assets/demos/dist-app/assets/index.Dh-ZAS9Z.css +2 -0
  31. package/doc_assets/demos/dist-app/assets/index.Dv8KVW18.js +23699 -0
  32. package/doc_assets/demos/dist-app/assets/index.Dv8KVW18.js.map +1 -0
  33. package/doc_assets/demos/dist-app/index.html +14 -0
  34. package/doc_assets/demos/dist-app/vite.svg +1 -0
  35. package/doc_assets/images/1.png +0 -0
  36. package/doc_assets/images/3.png +0 -0
  37. package/doc_assets/images/component-screenshot.png +1 -0
  38. package/doc_assets/install.md +5 -0
  39. package/eslint.config.js +92 -0
  40. package/index.html +13 -0
  41. package/package.json +83 -39
  42. package/postcss.config.cjs +19 -0
  43. package/public/vite.svg +1 -0
  44. package/public/worker/pdf.worker.min.js +22 -0
  45. package/scripts/README.md +133 -0
  46. package/scripts/build-demo.js +88 -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/downArrow.png +0 -0
  52. package/src/assets/img/excel.png +0 -0
  53. package/src/assets/img/img.png +0 -0
  54. package/src/assets/img/pdf.png +0 -0
  55. package/src/assets/img/ppt.png +0 -0
  56. package/src/assets/img/txt.png +0 -0
  57. package/src/assets/img/word.png +0 -0
  58. package/src/assets/login/homeBg.png +0 -0
  59. package/src/assets/login/left.jpg +0 -0
  60. package/src/assets/login/logoImg.png +0 -0
  61. package/src/examples/LoginPage/index.tsx +18 -0
  62. package/src/examples/aaa/index.tsx +3758 -0
  63. package/src/examples/chat/components/DrawerGraphPreview.tsx +78 -0
  64. package/src/examples/chat/index.tsx +190 -0
  65. package/src/examples/gientechStreamFilesReader/index.tsx +1016 -0
  66. package/src/examples/ragDatabaseDataPage/index.tsx +36 -0
  67. package/src/examples/ragDatabaseIdPage/index.tsx +44 -0
  68. package/src/examples/ragDatabasePage/index.tsx +36 -0
  69. package/src/examples/ragModelManagePage/index.tsx +37 -0
  70. package/src/examples/ragSearchPage/index.tsx +0 -0
  71. package/src/examples/ragSensitiveWordsPage/index.tsx +32 -0
  72. package/src/examples/streamFiles/index.tsx +384 -0
  73. package/src/lib_enter.ts +38 -0
  74. package/src/main.tsx +5 -0
  75. package/src/main.tsx.backup +5 -0
  76. package/src/modules/chat/Conversations/Item.tsx +167 -0
  77. package/src/modules/chat/Conversations/List.tsx +143 -0
  78. package/src/modules/chat/Conversations/groupByTime.ts +39 -0
  79. package/src/modules/chat/Conversations/index.tsx +212 -0
  80. package/src/modules/chat/constants.tsx +33 -0
  81. package/src/modules/chat/data.txt +82 -0
  82. package/src/modules/chat/index.tsx +1908 -0
  83. package/src/modules/chat/types.ts +17 -0
  84. package/src/modules/database/CreateModal.tsx +398 -0
  85. package/src/modules/database/assets/Doris.png +0 -0
  86. package/src/modules/database/assets/PostgreSQL.png +0 -0
  87. package/src/modules/database/assets/SQLServer.png +0 -0
  88. package/src/modules/database/assets/database.svg +11 -0
  89. package/src/modules/database/assets/database_add.svg +53 -0
  90. package/src/modules/database/assets/database_connect.svg +66 -0
  91. package/src/modules/database/assets/database_upload.svg +29 -0
  92. package/src/modules/database/assets/empty.png +0 -0
  93. package/src/modules/database/assets/mysql.svg +14 -0
  94. package/src/modules/database/index.tsx +466 -0
  95. package/src/modules/database/server.ts +196 -0
  96. package/src/modules/databaseId/CustomCom.tsx +156 -0
  97. package/src/modules/databaseId/EditConfig.tsx +268 -0
  98. package/src/modules/databaseId/UploadDrawer.tsx +520 -0
  99. package/src/modules/databaseId/assets/aiOptimize.svg +10 -0
  100. package/src/modules/databaseId/assets/empty.png +0 -0
  101. package/src/modules/databaseId/assets/template.svg +6 -0
  102. package/src/modules/databaseId/assets/upload.svg +9 -0
  103. package/src/modules/databaseId/assets/useTemp.svg +6 -0
  104. package/src/modules/databaseId/index.tsx +734 -0
  105. package/src/modules/databaseId/server.ts +286 -0
  106. package/src/modules/databaseId/style.css +5 -0
  107. package/src/modules/databaseTable/EditRowDrawer.tsx +119 -0
  108. package/src/modules/databaseTable/index.tsx +357 -0
  109. package/src/modules/databaseTable/server.ts +180 -0
  110. package/src/modules/headlessChat/constants.tsx +32 -0
  111. package/src/modules/headlessChat/index.tsx +1065 -0
  112. package/src/modules/headlessChat/types.ts +23 -0
  113. package/src/modules/login/components/Login/LoginBox/index.tsx +102 -0
  114. package/src/modules/login/components/Login/RegisterBox/index.tsx +180 -0
  115. package/src/modules/login/components/Login/index.tsx +100 -0
  116. package/src/modules/login/index.tsx +106 -0
  117. package/src/modules/login/style.css +3 -0
  118. package/src/modules/login/useServices.ts +53 -0
  119. package/src/modules/login/utils.ts +42 -0
  120. package/src/modules/modelManage/ConfigDrawer.tsx +249 -0
  121. package/src/modules/modelManage/assets/empty.png +0 -0
  122. package/src/modules/modelManage/const.ts +50 -0
  123. package/src/modules/modelManage/index.tsx +439 -0
  124. package/src/modules/modelManage/server.ts +185 -0
  125. package/src/modules/nodegraph/index.tsx +1 -0
  126. package/src/modules/search/assets/Icon-history.svg +8 -0
  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 +9 -0
  131. package/src/modules/search/assets/icon-search-bar.svg +14 -0
  132. package/src/modules/search/assets/icon-sub-title.svg +3 -0
  133. package/src/modules/search/assets/icon-title.svg +9 -0
  134. package/src/modules/search/assets/icon-zoomOut.svg +9 -0
  135. package/src/modules/search/assets/iconAi.svg +9 -0
  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 +3 -0
  139. package/src/modules/search/assets/selected.svg +4 -0
  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 +137 -0
  143. package/src/modules/search/components/Editor/ChatViewEditor.tsx +261 -0
  144. package/src/modules/search/components/Editor/aichat.css +1 -0
  145. package/src/modules/search/components/Editor/constant.ts +13 -0
  146. package/src/modules/search/components/Editor/index.tsx +113 -0
  147. package/src/modules/search/components/Editor/plugins/autofomatRules.ts +332 -0
  148. package/src/modules/search/components/Editor/plugins/convertImgPlugins.tsx +20 -0
  149. package/src/modules/search/components/Editor/plugins/createIndexes.tsx +38 -0
  150. package/src/modules/search/components/Editor/plugins/displayer.ts +298 -0
  151. package/src/modules/search/components/Editor/plugins/imageClick.tsx +32 -0
  152. package/src/modules/search/components/Editor/plugins/myplugin.tsx +98 -0
  153. package/src/modules/search/components/Editor/ui/avatar.tsx +19 -0
  154. package/src/modules/search/components/Editor/ui/blockquote-element.tsx +21 -0
  155. package/src/modules/search/components/Editor/ui/button.tsx +58 -0
  156. package/src/modules/search/components/Editor/ui/calendar.tsx +68 -0
  157. package/src/modules/search/components/Editor/ui/caption.tsx +46 -0
  158. package/src/modules/search/components/Editor/ui/checkbox.tsx +27 -0
  159. package/src/modules/search/components/Editor/ui/code-block-combobox.tsx +188 -0
  160. package/src/modules/search/components/Editor/ui/code-block-element.css +434 -0
  161. package/src/modules/search/components/Editor/ui/code-block-element.tsx +39 -0
  162. package/src/modules/search/components/Editor/ui/code-leaf.tsx +24 -0
  163. package/src/modules/search/components/Editor/ui/code-line-element.tsx +10 -0
  164. package/src/modules/search/components/Editor/ui/code-syntax-leaf.tsx +21 -0
  165. package/src/modules/search/components/Editor/ui/column-element.tsx +30 -0
  166. package/src/modules/search/components/Editor/ui/column-group-element.tsx +94 -0
  167. package/src/modules/search/components/Editor/ui/command.tsx +75 -0
  168. package/src/modules/search/components/Editor/ui/comment-avatar.tsx +22 -0
  169. package/src/modules/search/components/Editor/ui/comment-create-form.tsx +37 -0
  170. package/src/modules/search/components/Editor/ui/comment-item.tsx +74 -0
  171. package/src/modules/search/components/Editor/ui/comment-leaf.tsx +49 -0
  172. package/src/modules/search/components/Editor/ui/comment-more-dropdown.tsx +42 -0
  173. package/src/modules/search/components/Editor/ui/comment-reply-items.tsx +22 -0
  174. package/src/modules/search/components/Editor/ui/comment-resolve-button.tsx +32 -0
  175. package/src/modules/search/components/Editor/ui/comment-value.tsx +34 -0
  176. package/src/modules/search/components/Editor/ui/comments-popover.tsx +63 -0
  177. package/src/modules/search/components/Editor/ui/date-element.tsx +83 -0
  178. package/src/modules/search/components/Editor/ui/dialog.tsx +63 -0
  179. package/src/modules/search/components/Editor/ui/draggable.tsx +177 -0
  180. package/src/modules/search/components/Editor/ui/dropdown-menu.tsx +180 -0
  181. package/src/modules/search/components/Editor/ui/emoji-input-element.tsx +85 -0
  182. package/src/modules/search/components/Editor/ui/excalidraw-element.tsx +28 -0
  183. package/src/modules/search/components/Editor/ui/fixed-toolbar-buttons.tsx +76 -0
  184. package/src/modules/search/components/Editor/ui/fixed-toolbar.tsx +8 -0
  185. package/src/modules/search/components/Editor/ui/floating-toolbar-buttons.tsx +51 -0
  186. package/src/modules/search/components/Editor/ui/floating-toolbar.tsx +77 -0
  187. package/src/modules/search/components/Editor/ui/heading-element.tsx +48 -0
  188. package/src/modules/search/components/Editor/ui/highlight-leaf.tsx +17 -0
  189. package/src/modules/search/components/Editor/ui/hr-element.tsx +30 -0
  190. package/src/modules/search/components/Editor/ui/icons.tsx +267 -0
  191. package/src/modules/search/components/Editor/ui/image-element.tsx +74 -0
  192. package/src/modules/search/components/Editor/ui/inline-combobox.tsx +368 -0
  193. package/src/modules/search/components/Editor/ui/input.tsx +25 -0
  194. package/src/modules/search/components/Editor/ui/insert-dropdown-menu.tsx +218 -0
  195. package/src/modules/search/components/Editor/ui/kbd-leaf.tsx +20 -0
  196. package/src/modules/search/components/Editor/ui/link-element.tsx +29 -0
  197. package/src/modules/search/components/Editor/ui/link-floating-toolbar.tsx +161 -0
  198. package/src/modules/search/components/Editor/ui/list-element.tsx +30 -0
  199. package/src/modules/search/components/Editor/ui/mark-toolbar-button.tsx +24 -0
  200. package/src/modules/search/components/Editor/ui/media-embed-element.tsx +133 -0
  201. package/src/modules/search/components/Editor/ui/media-popover.tsx +97 -0
  202. package/src/modules/search/components/Editor/ui/mention-element.tsx +43 -0
  203. package/src/modules/search/components/Editor/ui/mention-input-element.tsx +141 -0
  204. package/src/modules/search/components/Editor/ui/mode-dropdown-menu.tsx +93 -0
  205. package/src/modules/search/components/Editor/ui/more-dropdown-menu.tsx +67 -0
  206. package/src/modules/search/components/Editor/ui/paragraph-element.tsx +4 -0
  207. package/src/modules/search/components/Editor/ui/placeholder.tsx +52 -0
  208. package/src/modules/search/components/Editor/ui/popover.tsx +32 -0
  209. package/src/modules/search/components/Editor/ui/resizable.tsx +66 -0
  210. package/src/modules/search/components/Editor/ui/separator.tsx +25 -0
  211. package/src/modules/search/components/Editor/ui/style.less +12 -0
  212. package/src/modules/search/components/Editor/ui/table-cell-element.tsx +143 -0
  213. package/src/modules/search/components/Editor/ui/table-element.tsx +243 -0
  214. package/src/modules/search/components/Editor/ui/table-row-element.tsx +22 -0
  215. package/src/modules/search/components/Editor/ui/tableValue.tsx +135 -0
  216. package/src/modules/search/components/Editor/ui/todo-list-element.tsx +43 -0
  217. package/src/modules/search/components/Editor/ui/toggle-element.tsx +31 -0
  218. package/src/modules/search/components/Editor/ui/toolbar.tsx +157 -0
  219. package/src/modules/search/components/Editor/ui/tooltip.tsx +65 -0
  220. package/src/modules/search/components/Editor/ui/turn-into-dropdown-menu.tsx +160 -0
  221. package/src/modules/search/components/Editor/ui/with-draggables.tsx +175 -0
  222. package/src/modules/search/components/FileList.tsx +287 -0
  223. package/src/modules/search/components/ImageGroupView/index.tsx +85 -0
  224. package/src/modules/search/components/ResultContent.tsx +232 -0
  225. package/src/modules/search/components/SearchInput.tsx +232 -0
  226. package/src/modules/search/components/SearchLanding.tsx +74 -0
  227. package/src/modules/search/components/SearchView.tsx +563 -0
  228. package/src/modules/search/components/SimpleEditor.tsx +158 -0
  229. package/src/modules/search/components/SimpleFileList.tsx +215 -0
  230. package/src/modules/search/index.tsx +10 -0
  231. package/src/modules/search/reademe.md +1 -0
  232. package/src/modules/search/servers/apis.tsx +19 -0
  233. package/src/modules/search/servers/index.ts +184 -0
  234. package/src/modules/search/style.less +503 -0
  235. package/src/modules/search/type.ts +22 -0
  236. package/src/modules/search/utils.ts +34 -0
  237. package/src/modules/sensitive/index.tsx +313 -0
  238. package/src/modules/sensitive/server.ts +122 -0
  239. package/src/modules/streamFilesReader/GientechStreamReader.tsx +1555 -0
  240. package/src/modules/streamFilesReader/components/Header/Toolbar.tsx +0 -0
  241. package/src/modules/streamFilesReader/components/Header/index.tsx +297 -0
  242. package/src/modules/streamFilesReader/index.tsx +3 -0
  243. package/src/style.css +6 -0
  244. package/src/type.d.ts +0 -0
  245. package/src/utils/commonFn.tsx +111 -0
  246. package/src/utils/gientechCommon/components/AppError.tsx +32 -0
  247. package/src/utils/gientechCommon/components/AppLoading.tsx +75 -0
  248. package/src/utils/gientechCommon/components/DeleteModal.tsx +75 -0
  249. package/src/utils/gientechCommon/components/DisplayError.tsx +33 -0
  250. package/src/utils/gientechCommon/components/DisplayLoading.tsx +38 -0
  251. package/src/utils/gientechCommon/components/FeedBackModal.tsx +310 -0
  252. package/src/utils/gientechCommon/components/FileCardCommon.tsx +82 -0
  253. package/src/utils/gientechCommon/components/FileManager/index.tsx +390 -0
  254. package/src/utils/gientechCommon/components/FileManager/style.css +5 -0
  255. package/src/utils/gientechCommon/components/Messages/GientechNewChatWelcome.tsx +296 -0
  256. package/src/utils/gientechCommon/components/Messages/ReferenceCard.tsx +339 -0
  257. package/src/utils/gientechCommon/components/Messages/RetriveItem.tsx +245 -0
  258. package/src/utils/gientechCommon/components/Messages/WebRetriveItem.tsx +209 -0
  259. package/src/utils/gientechCommon/components/Messages/defaultBot.png +0 -0
  260. package/src/utils/gientechCommon/components/Messages/defaultStyleSet.tsx +148 -0
  261. package/src/utils/gientechCommon/components/Messages/defaultWeLogo.svg +14 -0
  262. package/src/utils/gientechCommon/components/RenameModal.tsx +86 -0
  263. package/src/utils/gientechCommon/components/style.less +11 -0
  264. package/src/utils/gientechCommon/configs/commonConfig.ts +2 -0
  265. package/src/utils/gientechCommon/configs/senderConfig.ts +0 -0
  266. package/src/utils/gientechCommon/configs/stylesConfig.ts +142 -0
  267. package/src/utils/gientechCommon/hooks/AichatUseController.tsx +345 -0
  268. package/src/utils/gientechCommon/slate/converters/deserializers.ts +763 -0
  269. package/src/utils/gientechCommon/slate/converters/mockData.ts +232 -0
  270. package/src/utils/gientechCommon/slate/converters/slateConverters.ts +258 -0
  271. package/src/utils/gientechCommon/slate/richElements/index.tsx +499 -0
  272. package/src/utils/gientechCommon/utils/request.ts +37 -0
  273. package/src/utils/gientechCommon/utils/serverFn.ts +172 -0
  274. package/src/utils/index.tsx +126 -0
  275. package/src/utils/testconfigs/demologin/index.tsx +32 -0
  276. package/src/utils/testconfigs/index.ts +53 -0
  277. package/src/vite-env.d.ts +11 -0
  278. package/stats.html +4949 -0
  279. package/tailwind.config.js +170 -0
  280. package/tsconfig.app.json +30 -0
  281. package/tsconfig.app.tsbuildinfo +11 -0
  282. package/tsconfig.json +13 -0
  283. package/tsconfig.node.json +22 -0
  284. package/tsconfig.node.tsbuildinfo +1 -0
  285. package/vite.config.ts +177 -0
  286. package/workflows/release.yml +60 -0
  287. package/assets/style.css +0 -1
  288. package/assets/style3.css +0 -1
  289. package/database.js +0 -20
  290. /package/{assets → dist/assets}/Doris.png +0 -0
  291. /package/{assets → dist/assets}/PostgreSQL.png +0 -0
  292. /package/{assets → dist/assets}/SQLServer.png +0 -0
  293. /package/{assets → dist/assets}/_commonjsHelpers-gnU0ypJ3.js +0 -0
  294. /package/{assets → dist/assets}/circle-alert-g2Y6zAjt.js +0 -0
  295. /package/{assets → dist/assets}/empty.png +0 -0
  296. /package/{assets → dist/assets}/index-CEK88UzR.js +0 -0
  297. /package/{assets → dist/assets}/index-CpW6Dhpp.js +0 -0
  298. /package/{assets → dist/assets}/plus-omCUN0e3.js +0 -0
  299. /package/{assets → dist/assets}/style2.css +0 -0
  300. /package/{assets → dist/assets}/styled-components.browser.esm-DPkS13KC.js +0 -0
  301. /package/{assets → dist/assets}/x-vPcWt3fC.js +0 -0
  302. /package/{chat.d.ts → dist/chat.d.ts} +0 -0
  303. /package/{database.d.ts → dist/database.d.ts} +0 -0
  304. /package/{databaseId.d.ts → dist/databaseId.d.ts} +0 -0
  305. /package/{databaseTable.d.ts → dist/databaseTable.d.ts} +0 -0
  306. /package/{modelManage.d.ts → dist/modelManage.d.ts} +0 -0
  307. /package/{sensitive.d.ts → dist/sensitive.d.ts} +0 -0
  308. /package/{streamFilesReader.d.ts → dist/streamFilesReader.d.ts} +0 -0
  309. /package/{vite.svg → dist/vite.svg} +0 -0
@@ -0,0 +1,36 @@
1
+ import DatabaseTableView from '../../modules/databaseTable';
2
+ import { rag_dev_database_data } from '../../utils/testconfigs';
3
+
4
+ export default function DatabaseDataPage() {
5
+ const customComponents: any = {
6
+ ContentLoading: () => (
7
+ <div className="flex flex-col items-center justify-center h-full">
8
+ <div className="text-xl font-semibold mb-3">
9
+ {/* <Spin indicator={<LoadingOutlined spin />} size="large" /> */}
10
+ </div>
11
+ <div className="text-base mb-2" style={{ color: '#055AFF' }}>
12
+ 加载中...
13
+ </div>
14
+ </div>
15
+ ),
16
+ };
17
+
18
+ const handlePageEventsEmit = (name: string, data: any) => {
19
+ console.log('[DatabaseIdPage] pageEventsEmit ', name, data);
20
+ };
21
+ return (
22
+ <DatabaseTableView
23
+ url={rag_dev_database_data.url}
24
+ token={rag_dev_database_data.token}
25
+ role="admin"
26
+ fileId={rag_dev_database_data.fileId}
27
+ dbId={rag_dev_database_data.dbId}
28
+ tableId={rag_dev_database_data.tableId}
29
+ tableName={rag_dev_database_data.tableName}
30
+ dbType={rag_dev_database_data.dbType}
31
+ eventsEmit={handlePageEventsEmit}
32
+ // getBtnDisabled={getBtnDisabled}
33
+ CustomComponents={customComponents}
34
+ />
35
+ );
36
+ }
@@ -0,0 +1,44 @@
1
+ import DatabaseIdView from '../../modules/databaseId';
2
+
3
+ import { rag_dev_database_id } from '../../utils/testconfigs';
4
+
5
+ export default function DatabaseIdPage() {
6
+ const customComponents: any = {
7
+ ContentLoading: () => (
8
+ <div className="flex flex-col items-center justify-center h-full">
9
+ <div className="text-xl font-semibold mb-3">
10
+ {/* <Spin indicator={<LoadingOutlined spin />} size="large" /> */}
11
+ </div>
12
+ <div className="text-base mb-2" style={{ color: '#055AFF' }}>
13
+ 加载中...
14
+ </div>
15
+ </div>
16
+ ),
17
+ ContainerLoading: () => (
18
+ <div className="flex flex-col items-center justify-center h-full">
19
+ <div className="text-xl font-semibold mb-3">
20
+ {/* <Spin indicator={<LoadingOutlined spin />} size="large" /> */}
21
+ </div>
22
+ <div className="text-base mb-2" style={{ color: '#055AFF' }}>
23
+ 加载中...
24
+ </div>
25
+ </div>
26
+ ),
27
+ };
28
+
29
+ const handlePageEventsEmit = (name: string, data: any) => {
30
+ console.log('[DatabaseIdPage] pageEventsEmit ', name, data);
31
+ };
32
+ return (
33
+ <DatabaseIdView
34
+ url={rag_dev_database_id.url}
35
+ token={rag_dev_database_id.token}
36
+ role="admin"
37
+ id={rag_dev_database_id.id}
38
+ dbType={rag_dev_database_id.dbType}
39
+ CustomComponents={customComponents}
40
+ eventsEmit={handlePageEventsEmit}
41
+ // getBtnDisabled={getBtnDisabled}
42
+ />
43
+ );
44
+ }
@@ -0,0 +1,36 @@
1
+ import DatabaseView from '../../modules/database';
2
+ import { rag_dev_database } from '../../utils/testconfigs';
3
+
4
+ const token = rag_dev_database.token;
5
+ const url = rag_dev_database.url;
6
+
7
+ const DatabasePage = () => {
8
+ const customComponents: any = {
9
+ ContentLoading: () => (
10
+ <div className="flex flex-col items-center justify-center h-full">
11
+ <div className="text-xl font-semibold mb-3">
12
+ {/* <Spin indicator={<LoadingOutlined spin />} size="large" /> */}
13
+ </div>
14
+ <div className="text-base mb-2" style={{ color: '#055AFF' }}>
15
+ 加载中...
16
+ </div>
17
+ </div>
18
+ ),
19
+ };
20
+
21
+ const handlePageEventsEmit = (name: string, data: any) => {
22
+ console.log('[DatabasePage] pageEventsEmit ', name, data);
23
+ };
24
+ return (
25
+ <DatabaseView
26
+ url={url}
27
+ token={token}
28
+ role="admin"
29
+ eventsEmit={handlePageEventsEmit}
30
+ CustomComponents={customComponents}
31
+ // getBtnDisabled={getBtnDisabled}
32
+ />
33
+ );
34
+ };
35
+
36
+ export default DatabasePage;
@@ -0,0 +1,37 @@
1
+ import ModelManageView from '../../modules/modelManage';
2
+ import { rag_dev_model_manage } from '../../utils/testconfigs';
3
+
4
+ const token = rag_dev_model_manage.token;
5
+ const url = rag_dev_model_manage.url;
6
+
7
+ export default function DatabasePage() {
8
+ const customComponents: any = {
9
+ ContentLoading: () => (
10
+ <div className="flex flex-col items-center justify-center h-full">
11
+ <div className="text-xl font-semibold mb-3">
12
+ {/* <Spin indicator={<LoadingOutlined spin />} size="large" /> */}
13
+ </div>
14
+ <div className="text-base mb-2" style={{ color: '#055AFF' }}>
15
+ 加载中...
16
+ </div>
17
+ </div>
18
+ ),
19
+ };
20
+
21
+ const handlePageEventsEmit = (name: string, data: any) => {
22
+ console.log('[DatabasePage] pageEventsEmit ', name, data);
23
+ };
24
+
25
+ return (
26
+ <>
27
+ <ModelManageView
28
+ url={url}
29
+ token={token}
30
+ role={'admin'}
31
+ eventsEmit={handlePageEventsEmit}
32
+ CustomComponents={customComponents}
33
+ // getBtnDisabled={getBtnDisabled}
34
+ />
35
+ </>
36
+ );
37
+ }
File without changes
@@ -0,0 +1,32 @@
1
+ import SensitivityView from '../../modules/sensitive';
2
+ import { rag_dev_sensitive_words } from '../../utils/testconfigs';
3
+
4
+ const token = rag_dev_sensitive_words.token;
5
+ const url = rag_dev_sensitive_words.url;
6
+
7
+ export default function DatabasePage() {
8
+ const customComponents: any = {
9
+ ContentLoading: () => (
10
+ <div className="flex flex-col items-center justify-center h-full">
11
+ <div className="text-xl font-semibold mb-3">
12
+ {/* <Spin indicator={<LoadingOutlined spin />} size="large" /> */}
13
+ </div>
14
+ <div className="text-base mb-2" style={{ color: '#055AFF' }}>
15
+ 加载中...
16
+ </div>
17
+ </div>
18
+ ),
19
+ };
20
+ const handlePageEventsEmit = (name: string, data: any) => {
21
+ console.log('[DatabasePage] pageEventsEmit ', name, data);
22
+ };
23
+ return (
24
+ <SensitivityView
25
+ url={url}
26
+ token={token}
27
+ role="admin"
28
+ eventsEmit={handlePageEventsEmit}
29
+ CustomComponents={customComponents}
30
+ />
31
+ );
32
+ }
@@ -0,0 +1,384 @@
1
+ import React, { useState } from 'react';
2
+ import { GientechStreamReader } from '../../modules/streamFilesReader';
3
+ import { Styles } from '@mxmweb/zui';
4
+
5
+ // 演示用的主题配置
6
+ const demoTheme: Styles = {
7
+ colors: {
8
+ primary: '#1890ff',
9
+ secondary: '#52c41a',
10
+ success: '#52c41a',
11
+ warning: '#faad14',
12
+ error: '#ff4d4f',
13
+ info: '#1890ff',
14
+ background: '#ffffff',
15
+ text: '#262626',
16
+ border: '#d9d9d9',
17
+ disabled: '#bfbfbf',
18
+ disabledBackground: '#f5f5f5',
19
+ disabledText: '#bfbfbf',
20
+ },
21
+ space: {
22
+ sidebar: '200px',
23
+ size: '14px',
24
+ radius: '6px',
25
+ padding: '16px',
26
+ margin: '8px',
27
+ shadow: '0 2px 8px rgba(0,0,0,0.15)',
28
+ lineHeight: '1.5715',
29
+ },
30
+ icons: {},
31
+ others: {
32
+ baseFontWeight: 'normal',
33
+ },
34
+ };
35
+
36
+ // 模拟的标注数据
37
+ const mockAnnotations = [
38
+ {
39
+ id: '1',
40
+ type: 'highlight',
41
+ content: '这是一个重要的段落',
42
+ position: { x: 100, y: 200 },
43
+ page: 1,
44
+ },
45
+ {
46
+ id: '2',
47
+ type: 'note',
48
+ content: '这是备注内容',
49
+ position: { x: 150, y: 300 },
50
+ page: 1,
51
+ },
52
+ ];
53
+
54
+ const StreamFilesDemo: React.FC = () => {
55
+ const [currentFile, setCurrentFile] = useState({
56
+ convertedFilePath: '/api/files/sample.pdf',
57
+ fileName: '示例文档.pdf',
58
+ fileType: 'pdf',
59
+ totalPages: 10,
60
+ });
61
+
62
+ const [fileType, setFileType] = useState<'pdf' | 'markdown' | 'image' | 'text'>('pdf');
63
+
64
+ // 处理事件
65
+ const handleEventsEmit = (name: string, data?: any) => {
66
+ console.log('GientechStreamReader 事件:', name, data);
67
+
68
+ switch (name) {
69
+ case 'pageChange':
70
+ console.log('页面变化:', data);
71
+ break;
72
+ case 'zoomChange':
73
+ console.log('缩放变化:', data);
74
+ break;
75
+ case 'rotateChange':
76
+ console.log('旋转变化:', data);
77
+ break;
78
+ case 'md_annotation_add':
79
+ console.log('Markdown 标注添加:', data);
80
+ break;
81
+ case 'table_annotation_add':
82
+ console.log('表格标注添加:', data);
83
+ break;
84
+ case 'request_finish':
85
+ console.log('请求完成,CSRF Token:', data);
86
+ break;
87
+ case 'viewer:close':
88
+ console.log('查看器关闭');
89
+ break;
90
+ default:
91
+ console.log('其他事件:', name, data);
92
+ }
93
+ };
94
+
95
+ // 切换文件类型
96
+ const switchFileType = (type: 'pdf' | 'markdown' | 'image' | 'text') => {
97
+ setFileType(type);
98
+
99
+ const fileConfigs = {
100
+ pdf: {
101
+ convertedFilePath: '/api/files/sample.pdf',
102
+ fileName: '示例PDF文档.pdf',
103
+ fileType: 'pdf',
104
+ totalPages: 10,
105
+ },
106
+ markdown: {
107
+ convertedFilePath: '/api/files/sample.md',
108
+ fileName: '示例Markdown文档.md',
109
+ fileType: 'markdown',
110
+ totalPages: 1,
111
+ },
112
+ image: {
113
+ convertedFilePath: '/api/files/sample.jpg',
114
+ fileName: '示例图片.jpg',
115
+ fileType: 'image',
116
+ totalPages: 1,
117
+ },
118
+ text: {
119
+ convertedFilePath: '/api/files/sample.txt',
120
+ fileName: '示例文本文件.txt',
121
+ fileType: 'text',
122
+ totalPages: 1,
123
+ },
124
+ };
125
+
126
+ setCurrentFile(fileConfigs[type]);
127
+ };
128
+
129
+ return (
130
+ <div style={{
131
+ display: 'flex',
132
+ flexDirection: 'column',
133
+ height: '100vh',
134
+ background: '#f0f2f5',
135
+ fontFamily: '-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif'
136
+ }}>
137
+ {/* 顶部控制栏 */}
138
+ <div style={{
139
+ background: '#fff',
140
+ padding: '16px',
141
+ borderBottom: '1px solid #d9d9d9',
142
+ display: 'flex',
143
+ alignItems: 'center',
144
+ gap: '16px',
145
+ boxShadow: '0 2px 8px rgba(0,0,0,0.06)'
146
+ }}>
147
+ <h2 style={{ margin: 0, color: '#262626' }}>GientechStreamReader 演示</h2>
148
+
149
+ <div style={{ display: 'flex', gap: '8px' }}>
150
+ <button
151
+ onClick={() => switchFileType('pdf')}
152
+ style={{
153
+ padding: '6px 12px',
154
+ border: '1px solid #d9d9d9',
155
+ borderRadius: '4px',
156
+ background: fileType === 'pdf' ? '#1890ff' : '#fff',
157
+ color: fileType === 'pdf' ? '#fff' : '#262626',
158
+ cursor: 'pointer',
159
+ fontSize: '12px'
160
+ }}
161
+ >
162
+ PDF
163
+ </button>
164
+ <button
165
+ onClick={() => switchFileType('markdown')}
166
+ style={{
167
+ padding: '6px 12px',
168
+ border: '1px solid #d9d9d9',
169
+ borderRadius: '4px',
170
+ background: fileType === 'markdown' ? '#1890ff' : '#fff',
171
+ color: fileType === 'markdown' ? '#fff' : '#262626',
172
+ cursor: 'pointer',
173
+ fontSize: '12px'
174
+ }}
175
+ >
176
+ Markdown
177
+ </button>
178
+ <button
179
+ onClick={() => switchFileType('image')}
180
+ style={{
181
+ padding: '6px 12px',
182
+ border: '1px solid #d9d9d9',
183
+ borderRadius: '4px',
184
+ background: fileType === 'image' ? '#1890ff' : '#fff',
185
+ color: fileType === 'image' ? '#fff' : '#262626',
186
+ cursor: 'pointer',
187
+ fontSize: '12px'
188
+ }}
189
+ >
190
+ 图片
191
+ </button>
192
+ <button
193
+ onClick={() => switchFileType('text')}
194
+ style={{
195
+ padding: '6px 12px',
196
+ border: '1px solid #d9d9d9',
197
+ borderRadius: '4px',
198
+ background: fileType === 'text' ? '#1890ff' : '#fff',
199
+ color: fileType === 'text' ? '#fff' : '#262626',
200
+ cursor: 'pointer',
201
+ fontSize: '12px'
202
+ }}
203
+ >
204
+ 文本
205
+ </button>
206
+ </div>
207
+
208
+ <div style={{ marginLeft: 'auto', fontSize: '12px', color: '#8c8c8c' }}>
209
+ 当前文件: {currentFile.fileName}
210
+ </div>
211
+ </div>
212
+
213
+ {/* 主要内容区域 */}
214
+ <div style={{ flex: 1, display: 'flex', gap: '16px', padding: '16px' }}>
215
+ {/* 左侧信息面板 */}
216
+ <div style={{
217
+ width: '300px',
218
+ background: '#fff',
219
+ borderRadius: '6px',
220
+ padding: '16px',
221
+ boxShadow: '0 2px 8px rgba(0,0,0,0.06)',
222
+ height: 'fit-content'
223
+ }}>
224
+ <h3 style={{ margin: '0 0 16px 0', color: '#262626' }}>配置信息</h3>
225
+
226
+ <div style={{ marginBottom: '12px' }}>
227
+ <label style={{ display: 'block', fontSize: '12px', color: '#8c8c8c', marginBottom: '4px' }}>
228
+ 文件路径:
229
+ </label>
230
+ <code style={{
231
+ display: 'block',
232
+ padding: '4px 8px',
233
+ background: '#f5f5f5',
234
+ borderRadius: '4px',
235
+ fontSize: '11px',
236
+ wordBreak: 'break-all'
237
+ }}>
238
+ {currentFile.convertedFilePath}
239
+ </code>
240
+ </div>
241
+
242
+ <div style={{ marginBottom: '12px' }}>
243
+ <label style={{ display: 'block', fontSize: '12px', color: '#8c8c8c', marginBottom: '4px' }}>
244
+ 文件类型:
245
+ </label>
246
+ <span style={{
247
+ display: 'inline-block',
248
+ padding: '2px 8px',
249
+ background: '#e6f7ff',
250
+ color: '#1890ff',
251
+ borderRadius: '4px',
252
+ fontSize: '11px'
253
+ }}>
254
+ {currentFile.fileType}
255
+ </span>
256
+ </div>
257
+
258
+ <div style={{ marginBottom: '12px' }}>
259
+ <label style={{ display: 'block', fontSize: '12px', color: '#8c8c8c', marginBottom: '4px' }}>
260
+ 总页数:
261
+ </label>
262
+ <span style={{ fontSize: '14px', color: '#262626' }}>
263
+ {currentFile.totalPages}
264
+ </span>
265
+ </div>
266
+
267
+ <div style={{ marginBottom: '12px' }}>
268
+ <label style={{ display: 'block', fontSize: '12px', color: '#8c8c8c', marginBottom: '4px' }}>
269
+ 标注数量:
270
+ </label>
271
+ <span style={{ fontSize: '14px', color: '#262626' }}>
272
+ {mockAnnotations.length}
273
+ </span>
274
+ </div>
275
+
276
+ <div style={{ marginBottom: '12px' }}>
277
+ <label style={{ display: 'block', fontSize: '12px', color: '#8c8c8c', marginBottom: '4px' }}>
278
+ 功能特性:
279
+ </label>
280
+ <ul style={{ margin: 0, paddingLeft: '16px', fontSize: '12px', color: '#595959' }}>
281
+ <li>分页加载 (PDF)</li>
282
+ <li>缓存机制</li>
283
+ <li>缩放控制</li>
284
+ <li>旋转功能 (图片)</li>
285
+ <li>标注支持</li>
286
+ <li>主题定制</li>
287
+ </ul>
288
+ </div>
289
+ </div>
290
+
291
+ {/* 右侧文件查看器 */}
292
+ <div style={{ flex: 1, background: '#fff', borderRadius: '6px', overflow: 'hidden', boxShadow: '0 2px 8px rgba(0,0,0,0.06)' }}>
293
+ <GientechStreamReader
294
+ convertedFilePath={currentFile.convertedFilePath}
295
+ fileName={currentFile.fileName}
296
+ fileType={currentFile.fileType}
297
+ totalPages={currentFile.totalPages}
298
+ initialPage={1}
299
+ initialZoom={1}
300
+ annotations={mockAnnotations}
301
+ pageSize={5}
302
+ streamApiUrl="http://10.15.12.13:9005/proxy/index/knowledgeBase/file/stream"
303
+ authorization="Bearer your-token-here"
304
+ eventsEmit={handleEventsEmit}
305
+ styles={{ theme: demoTheme }}
306
+ tools={{
307
+ annotation: true,
308
+ download: true,
309
+ zoom: true,
310
+ close: false,
311
+ navigation: true,
312
+ rotate: fileType === 'image',
313
+ }}
314
+ customComponents={{
315
+ LoadingComponent: ({ status, theme }) => (
316
+ <div style={{
317
+ display: 'flex',
318
+ flexDirection: 'column',
319
+ alignItems: 'center',
320
+ justifyContent: 'center',
321
+ height: '400px',
322
+ background: theme.colors.background,
323
+ color: theme.colors.text
324
+ }}>
325
+ <div style={{
326
+ width: '40px',
327
+ height: '40px',
328
+ border: `3px solid ${theme.colors.border}`,
329
+ borderTop: `3px solid ${theme.colors.primary}`,
330
+ borderRadius: '50%',
331
+ animation: 'spin 1s linear infinite',
332
+ marginBottom: '16px'
333
+ }} />
334
+ <div style={{ fontSize: '14px' }}>{status}</div>
335
+ <style>{`
336
+ @keyframes spin {
337
+ 0% { transform: rotate(0deg); }
338
+ 100% { transform: rotate(360deg); }
339
+ }
340
+ `}</style>
341
+ </div>
342
+ ),
343
+ ErrorComponent: ({ error, theme }) => (
344
+ <div style={{
345
+ display: 'flex',
346
+ flexDirection: 'column',
347
+ alignItems: 'center',
348
+ justifyContent: 'center',
349
+ height: '400px',
350
+ background: theme.colors.background,
351
+ color: theme.colors.error,
352
+ textAlign: 'center',
353
+ padding: '20px'
354
+ }}>
355
+ <div style={{ fontSize: '48px', marginBottom: '16px' }}>⚠️</div>
356
+ <div style={{ fontSize: '16px', marginBottom: '8px' }}>加载失败</div>
357
+ <div style={{ fontSize: '12px', color: theme.colors.text }}>{error}</div>
358
+ </div>
359
+ ),
360
+ }}
361
+ />
362
+ </div>
363
+ </div>
364
+
365
+ {/* 底部日志区域 */}
366
+ <div style={{
367
+ background: '#fff',
368
+ borderTop: '1px solid #d9d9d9',
369
+ padding: '12px 16px',
370
+ fontSize: '12px',
371
+ color: '#8c8c8c',
372
+ maxHeight: '120px',
373
+ overflow: 'auto'
374
+ }}>
375
+ <div style={{ marginBottom: '8px', fontWeight: '500' }}>事件日志:</div>
376
+ <div style={{ fontFamily: 'Monaco, Consolas, "Courier New", monospace' }}>
377
+ 打开浏览器控制台查看详细的事件日志...
378
+ </div>
379
+ </div>
380
+ </div>
381
+ );
382
+ };
383
+
384
+ export default StreamFilesDemo;
@@ -0,0 +1,38 @@
1
+ // Gientech 多入口集成项目 - 统一导出入口
2
+ // 导出所有业务模块和组件
3
+
4
+ // 聊天模块
5
+ export * from './modules/chat';
6
+
7
+ // 数据库模块
8
+ export * from './modules/database';
9
+
10
+ // 数据库ID模块
11
+ export * from './modules/databaseId';
12
+
13
+ // 数据库表模块
14
+ export * from './modules/databaseTable';
15
+
16
+ // 无头聊天模块
17
+ export * from './modules/headlessChat';
18
+
19
+ // 登录模块
20
+ export * from './modules/login';
21
+
22
+ // 模型管理模块
23
+ export * from './modules/modelManage';
24
+
25
+ // 搜索模块(暂不导出,待重构后再开放)
26
+ // export * from './modules/search';
27
+
28
+ // 敏感词模块
29
+ export * from './modules/sensitive';
30
+
31
+ // 流式文件读取器模块
32
+ export * from './modules/streamFilesReader';
33
+
34
+ // // 通用工具和组件
35
+ // export * from './utils/gientechCommon';
36
+
37
+ // // 类型定义
38
+ // export * from './type.d';
package/src/main.tsx ADDED
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import ReactDOM from 'react-dom/client';
3
+ import Chat from './examples/chat/index';
4
+
5
+ ReactDOM.createRoot(document.getElementById('root')!).render(<Chat />);
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import ReactDOM from 'react-dom/client';
3
+ import Aaa from './examples/aaa/index';
4
+
5
+ ReactDOM.createRoot(document.getElementById('root')!).render(<Aaa />);