@gientech/modual 2.0.5 → 2.0.6

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 (413) hide show
  1. package/README.md +118 -0
  2. package/{dist/chat.js → chat.js} +98 -98
  3. package/package.json +41 -103
  4. package/.editorconfig +0 -38
  5. package/.prettierignore +0 -16
  6. package/.prettierrc +0 -17
  7. package/USAGE.md +0 -247
  8. package/bash.exe.stackdump +0 -40
  9. package/components.json +0 -21
  10. package/dist/README.md +0 -643
  11. package/dist/package.json +0 -68
  12. package/doc_assets/2.png +0 -0
  13. package/doc_assets/demo.md +0 -27
  14. package/doc_assets/demos/dist-app/assets/index.Dh-ZAS9Z.css +0 -2
  15. package/doc_assets/demos/dist-app/assets/index.Dv8KVW18.js +0 -23699
  16. package/doc_assets/demos/dist-app/assets/index.Dv8KVW18.js.map +0 -1
  17. package/doc_assets/demos/dist-app/index.html +0 -14
  18. package/doc_assets/demos/dist-app/vite.svg +0 -1
  19. package/doc_assets/images/1.png +0 -0
  20. package/doc_assets/images/3.png +0 -0
  21. package/doc_assets/images/component-screenshot.png +0 -1
  22. package/doc_assets/install.md +0 -5
  23. 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 +0 -504
  24. package/eslint.config.js +0 -92
  25. package/index.html +0 -13
  26. package/package.json.demo-backup +0 -109
  27. package/postcss.config.cjs +0 -19
  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 +0 -1
  43. package/public/worker/pdf.worker.min.js +0 -22
  44. package/scripts/README.md +0 -133
  45. package/scripts/build-demo.js +0 -88
  46. package/scripts/decrypt-api-key.js +0 -95
  47. package/scripts/demo-selector.js +0 -216
  48. package/scripts/dev-demo.js +0 -76
  49. package/scripts/preview-demo.js +0 -130
  50. package/scripts/run-demo.bat +0 -34
  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 +0 -41
  68. package/src/examples/Demo/index.tsx +0 -12
  69. package/src/examples/LoginPage/index.tsx +0 -18
  70. package/src/examples/chat/components/DrawerGraphPreview.tsx +0 -78
  71. package/src/examples/chat/index.tsx +0 -154
  72. package/src/examples/chat/logo03.png +0 -0
  73. package/src/examples/gientechStreamFilesReader/index.tsx +0 -951
  74. package/src/examples/headlessChat/index.tsx +0 -234
  75. package/src/examples/ragDatabaseDataPage/index.tsx +0 -40
  76. package/src/examples/ragDatabaseIdPage/index.tsx +0 -47
  77. package/src/examples/ragDatabasePage/index.tsx +0 -36
  78. package/src/examples/ragModelManagePage/index.tsx +0 -38
  79. package/src/examples/ragSearchPage/index.tsx +0 -0
  80. package/src/examples/ragSensitiveWordsPage/index.tsx +0 -32
  81. package/src/examples/streamFiles/index.tsx +0 -417
  82. package/src/lib_enter.ts +0 -43
  83. package/src/main.tsx +0 -5
  84. package/src/main.tsx.backup +0 -5
  85. package/src/modules/CHAT_UNIFICATION_PLAN.md +0 -324
  86. package/src/modules/assistantConfig/assets/databse.svg +0 -6
  87. package/src/modules/assistantConfig/assets/empty.png +0 -0
  88. package/src/modules/assistantConfig/assets/graph.svg +0 -4
  89. package/src/modules/assistantConfig/assets/knowledge.svg +0 -4
  90. package/src/modules/assistantConfig/assets/sensitive.svg +0 -5
  91. package/src/modules/assistantConfig/components/Database.tsx +0 -171
  92. package/src/modules/assistantConfig/components/Graph.tsx +0 -177
  93. package/src/modules/assistantConfig/components/Knowledge.tsx +0 -276
  94. package/src/modules/assistantConfig/components/NotFoundContent.tsx +0 -21
  95. package/src/modules/assistantConfig/components/Paragraph.tsx +0 -51
  96. package/src/modules/assistantConfig/components/ParamsItem.tsx +0 -39
  97. package/src/modules/assistantConfig/components/ResourceBinderItem.tsx +0 -133
  98. package/src/modules/assistantConfig/components/SearchableSelector.tsx +0 -500
  99. package/src/modules/assistantConfig/components/Sensitive.tsx +0 -221
  100. package/src/modules/assistantConfig/components/SliderInput.tsx +0 -65
  101. package/src/modules/assistantConfig/constants.tsx +0 -75
  102. package/src/modules/assistantConfig/index.tsx +0 -710
  103. package/src/modules/assistantConfig/server.ts +0 -262
  104. package/src/modules/chat/Conversations/Item.tsx +0 -167
  105. package/src/modules/chat/Conversations/List.tsx +0 -210
  106. package/src/modules/chat/Conversations/groupByTime.ts +0 -39
  107. package/src/modules/chat/Conversations/index.tsx +0 -252
  108. package/src/modules/chat/ReferenceBar.tsx +0 -622
  109. package/src/modules/chat/constants.tsx +0 -52
  110. package/src/modules/chat/data.txt +0 -82
  111. package/src/modules/chat/index.tsx +0 -2054
  112. package/src/modules/chat/referenceCom/DeleteModal.tsx +0 -75
  113. package/src/modules/chat/referenceCom/DrawerContent.tsx +0 -136
  114. package/src/modules/chat/referenceCom/DrawerDatabase.tsx +0 -102
  115. package/src/modules/chat/referenceCom/DrawerGraphPreview.tsx +0 -86
  116. package/src/modules/chat/referenceCom/DrawerPreview.tsx +0 -73
  117. package/src/modules/chat/referenceCom/DrawerTitle.tsx +0 -26
  118. package/src/modules/chat/referenceCom/RenameModal.tsx +0 -86
  119. package/src/modules/chat/referenceCom/TagCom.tsx +0 -30
  120. package/src/modules/chat/style.less +0 -3
  121. package/src/modules/chat/types.ts +0 -17
  122. package/src/modules/chat/utils/index.ts +0 -348
  123. package/src/modules/database/CreateModal.tsx +0 -403
  124. package/src/modules/database/assets/Doris.png +0 -0
  125. package/src/modules/database/assets/PostgreSQL.png +0 -0
  126. package/src/modules/database/assets/SQLServer.png +0 -0
  127. package/src/modules/database/assets/database.svg +0 -11
  128. package/src/modules/database/assets/database_add.svg +0 -53
  129. package/src/modules/database/assets/database_connect.svg +0 -66
  130. package/src/modules/database/assets/database_upload.svg +0 -29
  131. package/src/modules/database/assets/empty.png +0 -0
  132. package/src/modules/database/assets/mysql.svg +0 -14
  133. package/src/modules/database/index.tsx +0 -477
  134. package/src/modules/database/server.ts +0 -196
  135. package/src/modules/databaseId/CustomCom.tsx +0 -156
  136. package/src/modules/databaseId/EditConfig.tsx +0 -280
  137. package/src/modules/databaseId/UploadDrawer.tsx +0 -535
  138. package/src/modules/databaseId/assets/aiOptimize.svg +0 -10
  139. package/src/modules/databaseId/assets/empty.png +0 -0
  140. package/src/modules/databaseId/assets/template.svg +0 -6
  141. package/src/modules/databaseId/assets/upload.svg +0 -9
  142. package/src/modules/databaseId/assets/useTemp.svg +0 -6
  143. package/src/modules/databaseId/index.tsx +0 -769
  144. package/src/modules/databaseId/server.ts +0 -286
  145. package/src/modules/databaseId/style.css +0 -5
  146. package/src/modules/databaseTable/EditRowDrawer.tsx +0 -124
  147. package/src/modules/databaseTable/index.tsx +0 -359
  148. package/src/modules/databaseTable/server.ts +0 -180
  149. package/src/modules/headlessChat/ReferenceBar.tsx +0 -783
  150. package/src/modules/headlessChat/constants.tsx +0 -54
  151. package/src/modules/headlessChat/index.tsx +0 -1706
  152. package/src/modules/headlessChat/referenceCom/DeleteModal.tsx +0 -75
  153. package/src/modules/headlessChat/referenceCom/DrawerContent.tsx +0 -136
  154. package/src/modules/headlessChat/referenceCom/DrawerDatabase.tsx +0 -102
  155. package/src/modules/headlessChat/referenceCom/DrawerGraphPreview.tsx +0 -86
  156. package/src/modules/headlessChat/referenceCom/DrawerPreview.tsx +0 -73
  157. package/src/modules/headlessChat/referenceCom/DrawerTitle.tsx +0 -26
  158. package/src/modules/headlessChat/referenceCom/RenameModal.tsx +0 -86
  159. package/src/modules/headlessChat/referenceCom/TagCom.tsx +0 -30
  160. package/src/modules/headlessChat/style.less +0 -3
  161. package/src/modules/headlessChat/types.ts +0 -23
  162. package/src/modules/headlessChat/utils/index.ts +0 -348
  163. package/src/modules/login/components/Login/LoginBox/index.tsx +0 -102
  164. package/src/modules/login/components/Login/RegisterBox/index.tsx +0 -180
  165. package/src/modules/login/components/Login/index.tsx +0 -100
  166. package/src/modules/login/index.tsx +0 -106
  167. package/src/modules/login/style.css +0 -3
  168. package/src/modules/login/useServices.ts +0 -53
  169. package/src/modules/login/utils.ts +0 -42
  170. package/src/modules/modelManage/ConfigDrawer.tsx +0 -249
  171. package/src/modules/modelManage/ReplaceModal.tsx +0 -124
  172. package/src/modules/modelManage/assets/empty.png +0 -0
  173. package/src/modules/modelManage/const.ts +0 -51
  174. package/src/modules/modelManage/index.tsx +0 -606
  175. package/src/modules/modelManage/server.ts +0 -223
  176. package/src/modules/nodegraph/index.tsx +0 -1
  177. package/src/modules/search/assets/Icon-history.svg +0 -8
  178. package/src/modules/search/assets/answerAwartar.png +0 -0
  179. package/src/modules/search/assets/doc.png +0 -0
  180. package/src/modules/search/assets/genera.gif +0 -0
  181. package/src/modules/search/assets/icon-robot.svg +0 -9
  182. package/src/modules/search/assets/icon-search-bar.svg +0 -14
  183. package/src/modules/search/assets/icon-sub-title.svg +0 -3
  184. package/src/modules/search/assets/icon-title.svg +0 -9
  185. package/src/modules/search/assets/icon-zoomOut.svg +0 -9
  186. package/src/modules/search/assets/iconAi.svg +0 -9
  187. package/src/modules/search/assets/pdf.png +0 -0
  188. package/src/modules/search/assets/ppt.png +0 -0
  189. package/src/modules/search/assets/search.svg +0 -3
  190. package/src/modules/search/assets/selected.svg +0 -4
  191. package/src/modules/search/assets/txt.png +0 -0
  192. package/src/modules/search/assets/xls.png +0 -0
  193. package/src/modules/search/components/AssisSelect.tsx +0 -137
  194. package/src/modules/search/components/Editor/ChatViewEditor.tsx +0 -261
  195. package/src/modules/search/components/Editor/aichat.css +0 -1
  196. package/src/modules/search/components/Editor/constant.ts +0 -13
  197. package/src/modules/search/components/Editor/index.tsx +0 -113
  198. package/src/modules/search/components/Editor/plugins/autofomatRules.ts +0 -332
  199. package/src/modules/search/components/Editor/plugins/convertImgPlugins.tsx +0 -20
  200. package/src/modules/search/components/Editor/plugins/createIndexes.tsx +0 -38
  201. package/src/modules/search/components/Editor/plugins/displayer.ts +0 -298
  202. package/src/modules/search/components/Editor/plugins/imageClick.tsx +0 -32
  203. package/src/modules/search/components/Editor/plugins/myplugin.tsx +0 -98
  204. package/src/modules/search/components/Editor/ui/avatar.tsx +0 -19
  205. package/src/modules/search/components/Editor/ui/blockquote-element.tsx +0 -21
  206. package/src/modules/search/components/Editor/ui/button.tsx +0 -58
  207. package/src/modules/search/components/Editor/ui/calendar.tsx +0 -68
  208. package/src/modules/search/components/Editor/ui/caption.tsx +0 -46
  209. package/src/modules/search/components/Editor/ui/checkbox.tsx +0 -27
  210. package/src/modules/search/components/Editor/ui/code-block-combobox.tsx +0 -188
  211. package/src/modules/search/components/Editor/ui/code-block-element.css +0 -434
  212. package/src/modules/search/components/Editor/ui/code-block-element.tsx +0 -39
  213. package/src/modules/search/components/Editor/ui/code-leaf.tsx +0 -24
  214. package/src/modules/search/components/Editor/ui/code-line-element.tsx +0 -10
  215. package/src/modules/search/components/Editor/ui/code-syntax-leaf.tsx +0 -21
  216. package/src/modules/search/components/Editor/ui/column-element.tsx +0 -30
  217. package/src/modules/search/components/Editor/ui/column-group-element.tsx +0 -94
  218. package/src/modules/search/components/Editor/ui/command.tsx +0 -75
  219. package/src/modules/search/components/Editor/ui/comment-avatar.tsx +0 -22
  220. package/src/modules/search/components/Editor/ui/comment-create-form.tsx +0 -37
  221. package/src/modules/search/components/Editor/ui/comment-item.tsx +0 -74
  222. package/src/modules/search/components/Editor/ui/comment-leaf.tsx +0 -49
  223. package/src/modules/search/components/Editor/ui/comment-more-dropdown.tsx +0 -42
  224. package/src/modules/search/components/Editor/ui/comment-reply-items.tsx +0 -22
  225. package/src/modules/search/components/Editor/ui/comment-resolve-button.tsx +0 -32
  226. package/src/modules/search/components/Editor/ui/comment-value.tsx +0 -34
  227. package/src/modules/search/components/Editor/ui/comments-popover.tsx +0 -63
  228. package/src/modules/search/components/Editor/ui/date-element.tsx +0 -83
  229. package/src/modules/search/components/Editor/ui/dialog.tsx +0 -63
  230. package/src/modules/search/components/Editor/ui/draggable.tsx +0 -177
  231. package/src/modules/search/components/Editor/ui/dropdown-menu.tsx +0 -180
  232. package/src/modules/search/components/Editor/ui/emoji-input-element.tsx +0 -85
  233. package/src/modules/search/components/Editor/ui/excalidraw-element.tsx +0 -28
  234. package/src/modules/search/components/Editor/ui/fixed-toolbar-buttons.tsx +0 -76
  235. package/src/modules/search/components/Editor/ui/fixed-toolbar.tsx +0 -8
  236. package/src/modules/search/components/Editor/ui/floating-toolbar-buttons.tsx +0 -51
  237. package/src/modules/search/components/Editor/ui/floating-toolbar.tsx +0 -77
  238. package/src/modules/search/components/Editor/ui/heading-element.tsx +0 -48
  239. package/src/modules/search/components/Editor/ui/highlight-leaf.tsx +0 -17
  240. package/src/modules/search/components/Editor/ui/hr-element.tsx +0 -30
  241. package/src/modules/search/components/Editor/ui/icons.tsx +0 -267
  242. package/src/modules/search/components/Editor/ui/image-element.tsx +0 -74
  243. package/src/modules/search/components/Editor/ui/inline-combobox.tsx +0 -368
  244. package/src/modules/search/components/Editor/ui/input.tsx +0 -25
  245. package/src/modules/search/components/Editor/ui/insert-dropdown-menu.tsx +0 -218
  246. package/src/modules/search/components/Editor/ui/kbd-leaf.tsx +0 -20
  247. package/src/modules/search/components/Editor/ui/link-element.tsx +0 -29
  248. package/src/modules/search/components/Editor/ui/link-floating-toolbar.tsx +0 -161
  249. package/src/modules/search/components/Editor/ui/list-element.tsx +0 -30
  250. package/src/modules/search/components/Editor/ui/mark-toolbar-button.tsx +0 -24
  251. package/src/modules/search/components/Editor/ui/media-embed-element.tsx +0 -133
  252. package/src/modules/search/components/Editor/ui/media-popover.tsx +0 -97
  253. package/src/modules/search/components/Editor/ui/mention-element.tsx +0 -43
  254. package/src/modules/search/components/Editor/ui/mention-input-element.tsx +0 -141
  255. package/src/modules/search/components/Editor/ui/mode-dropdown-menu.tsx +0 -93
  256. package/src/modules/search/components/Editor/ui/more-dropdown-menu.tsx +0 -67
  257. package/src/modules/search/components/Editor/ui/paragraph-element.tsx +0 -4
  258. package/src/modules/search/components/Editor/ui/placeholder.tsx +0 -52
  259. package/src/modules/search/components/Editor/ui/popover.tsx +0 -32
  260. package/src/modules/search/components/Editor/ui/resizable.tsx +0 -66
  261. package/src/modules/search/components/Editor/ui/separator.tsx +0 -25
  262. package/src/modules/search/components/Editor/ui/style.less +0 -12
  263. package/src/modules/search/components/Editor/ui/table-cell-element.tsx +0 -143
  264. package/src/modules/search/components/Editor/ui/table-element.tsx +0 -243
  265. package/src/modules/search/components/Editor/ui/table-row-element.tsx +0 -22
  266. package/src/modules/search/components/Editor/ui/tableValue.tsx +0 -135
  267. package/src/modules/search/components/Editor/ui/todo-list-element.tsx +0 -43
  268. package/src/modules/search/components/Editor/ui/toggle-element.tsx +0 -31
  269. package/src/modules/search/components/Editor/ui/toolbar.tsx +0 -157
  270. package/src/modules/search/components/Editor/ui/tooltip.tsx +0 -65
  271. package/src/modules/search/components/Editor/ui/turn-into-dropdown-menu.tsx +0 -160
  272. package/src/modules/search/components/Editor/ui/with-draggables.tsx +0 -175
  273. package/src/modules/search/components/FileList.tsx +0 -287
  274. package/src/modules/search/components/ImageGroupView/index.tsx +0 -85
  275. package/src/modules/search/components/ResultContent.tsx +0 -232
  276. package/src/modules/search/components/SearchInput.tsx +0 -232
  277. package/src/modules/search/components/SearchLanding.tsx +0 -74
  278. package/src/modules/search/components/SearchView.tsx +0 -563
  279. package/src/modules/search/components/SimpleEditor.tsx +0 -158
  280. package/src/modules/search/components/SimpleFileList.tsx +0 -215
  281. package/src/modules/search/index.tsx +0 -10
  282. package/src/modules/search/reademe.md +0 -1
  283. package/src/modules/search/servers/apis.tsx +0 -19
  284. package/src/modules/search/servers/index.ts +0 -184
  285. package/src/modules/search/style.less +0 -503
  286. package/src/modules/search/type.ts +0 -22
  287. package/src/modules/search/utils.ts +0 -34
  288. package/src/modules/sensitive/index.tsx +0 -313
  289. package/src/modules/sensitive/server.ts +0 -122
  290. package/src/modules/streamFilesReader/GientechStreamReader.tsx +0 -1625
  291. package/src/modules/streamFilesReader/components/Header/Toolbar.tsx +0 -0
  292. package/src/modules/streamFilesReader/components/Header/index.tsx +0 -297
  293. package/src/modules/streamFilesReader/index.tsx +0 -3
  294. package/src/style.css +0 -6
  295. package/src/type.d.ts +0 -0
  296. package/src/utils/commonFn.tsx +0 -111
  297. package/src/utils/decryptApiKey.ts +0 -40
  298. package/src/utils/gientechCommon/components/AppError.tsx +0 -32
  299. package/src/utils/gientechCommon/components/AppLoading.tsx +0 -75
  300. package/src/utils/gientechCommon/components/DeleteModal.tsx +0 -75
  301. package/src/utils/gientechCommon/components/DisplayError.tsx +0 -33
  302. package/src/utils/gientechCommon/components/DisplayLoading.tsx +0 -38
  303. package/src/utils/gientechCommon/components/FeedBackModal.tsx +0 -319
  304. package/src/utils/gientechCommon/components/FileCardCommon.tsx +0 -82
  305. package/src/utils/gientechCommon/components/FileManager/index.tsx +0 -400
  306. package/src/utils/gientechCommon/components/FileManager/style.css +0 -5
  307. package/src/utils/gientechCommon/components/Messages/GientechNewChatWelcome.tsx +0 -581
  308. package/src/utils/gientechCommon/components/Messages/ReferenceCard.tsx +0 -359
  309. package/src/utils/gientechCommon/components/Messages/RetriveItem.tsx +0 -245
  310. package/src/utils/gientechCommon/components/Messages/WebRetriveItem.tsx +0 -209
  311. package/src/utils/gientechCommon/components/Messages/defaultBot.png +0 -0
  312. package/src/utils/gientechCommon/components/Messages/defaultStyleSet.tsx +0 -148
  313. package/src/utils/gientechCommon/components/Messages/defaultWeLogo.svg +0 -14
  314. package/src/utils/gientechCommon/components/RenameModal.tsx +0 -86
  315. package/src/utils/gientechCommon/components/style.less +0 -11
  316. package/src/utils/gientechCommon/configs/commonConfig.ts +0 -2
  317. package/src/utils/gientechCommon/configs/senderConfig.ts +0 -0
  318. package/src/utils/gientechCommon/configs/stylesConfig.ts +0 -142
  319. package/src/utils/gientechCommon/hooks/AichatUseController.tsx +0 -417
  320. package/src/utils/gientechCommon/hooks/useFileDisplayTools.tsx +0 -204
  321. package/src/utils/gientechCommon/hooks/useFileManager.ts +0 -193
  322. package/src/utils/gientechCommon/slate/converters/deserializers.ts +0 -763
  323. package/src/utils/gientechCommon/slate/converters/mockData.ts +0 -232
  324. package/src/utils/gientechCommon/slate/converters/slateConverters.ts +0 -258
  325. package/src/utils/gientechCommon/slate/richElements/index.tsx +0 -499
  326. package/src/utils/gientechCommon/utils/fileUtils.ts +0 -86
  327. package/src/utils/gientechCommon/utils/request.ts +0 -37
  328. package/src/utils/gientechCommon/utils/serverFn.ts +0 -172
  329. package/src/utils/index.tsx +0 -142
  330. package/src/utils/testconfigs/demologin/index.tsx +0 -32
  331. package/src/utils/testconfigs/index.ts +0 -59
  332. package/src/vite-env.d.ts +0 -42
  333. package/stats.html +0 -4949
  334. package/tailwind.config.js +0 -170
  335. package/tsconfig.app.json +0 -30
  336. package/tsconfig.app.tsbuildinfo +0 -11
  337. package/tsconfig.json +0 -13
  338. package/tsconfig.node.json +0 -22
  339. package/tsconfig.node.tsbuildinfo +0 -1
  340. package/vite.config.app.ts +0 -93
  341. package/vite.config.ts +0 -232
  342. package/workflows/release.yml +0 -60
  343. 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 +0 -359
  344. /package/{dist/assets → assets}/Doris.png +0 -0
  345. /package/{dist/assets → assets}/GientechStreamReader-DUCq-O5X.js +0 -0
  346. /package/{dist/assets → assets}/PostgreSQL.png +0 -0
  347. /package/{dist/assets → assets}/SQLServer.png +0 -0
  348. /package/{dist/assets → assets}/database.svg +0 -0
  349. /package/{dist/assets → assets}/database_add.svg +0 -0
  350. /package/{dist/assets → assets}/database_connect.svg +0 -0
  351. /package/{dist/assets → assets}/database_upload.svg +0 -0
  352. /package/{dist/assets → assets}/databse.svg +0 -0
  353. /package/{dist/assets → assets}/defaultWeLogo.svg +0 -0
  354. /package/{dist/assets → assets}/empty.png +0 -0
  355. /package/{dist/assets → assets}/graph.svg +0 -0
  356. /package/{dist/assets → assets}/homeBg.png +0 -0
  357. /package/{dist/assets → assets}/index-B2yNvzjy.js +0 -0
  358. /package/{dist/assets → assets}/index-BKe5FgcC.js +0 -0
  359. /package/{dist/assets → assets}/index-CpW6Dhpp.js +0 -0
  360. /package/{dist/assets → assets}/index-D72cKELw.js +0 -0
  361. /package/{dist/assets → assets}/index-DdVFXD_y.js +0 -0
  362. /package/{dist/assets → assets}/index-DrkSoKz6.js +0 -0
  363. /package/{dist/assets → assets}/index-KCfkkJKb.js +0 -0
  364. /package/{dist/assets → assets}/index-QI9biQrR.js +0 -0
  365. /package/{dist/assets → assets}/index-ZopkeZtI.js +0 -0
  366. /package/{dist/assets → assets}/index-g-SUxfJH.js +0 -0
  367. /package/{dist/assets → assets}/index-j0kQJd0a.js +0 -0
  368. /package/{dist/assets → assets}/knowledge.svg +0 -0
  369. /package/{dist/assets → assets}/left.jpg +0 -0
  370. /package/{dist/assets → assets}/logoImg.png +0 -0
  371. /package/{dist/assets → assets}/mysql.svg +0 -0
  372. /package/{dist/assets → assets}/plus-V9zUoSq6.js +0 -0
  373. /package/{dist/assets → assets}/sensitive.svg +0 -0
  374. /package/{dist/assets → assets}/style-CGmZ5osp.js +0 -0
  375. /package/{dist/assets → assets}/style.css +0 -0
  376. /package/{dist/assets → assets}/style2.css +0 -0
  377. /package/{dist/assets → assets}/style3.css +0 -0
  378. /package/{dist/assets → assets}/style4.css +0 -0
  379. /package/{dist/assets → assets}/worker-BbpylX7l.js +0 -0
  380. /package/{dist/assets → assets}/x-CnaaLGJF.js +0 -0
  381. /package/{dist/assistantConfig.d.ts → assistantConfig.d.ts} +0 -0
  382. /package/{dist/assistantConfig.js → assistantConfig.js} +0 -0
  383. /package/{dist/chat.d.ts → chat.d.ts} +0 -0
  384. /package/{dist/database.d.ts → database.d.ts} +0 -0
  385. /package/{dist/database.js → database.js} +0 -0
  386. /package/{dist/databaseId.d.ts → databaseId.d.ts} +0 -0
  387. /package/{dist/databaseId.js → databaseId.js} +0 -0
  388. /package/{dist/databaseTable.d.ts → databaseTable.d.ts} +0 -0
  389. /package/{dist/databaseTable.js → databaseTable.js} +0 -0
  390. /package/{dist/icons → icons}/answerAwartar.png +0 -0
  391. /package/{dist/icons → icons}/docx-file.png +0 -0
  392. /package/{dist/icons → icons}/folder.png +0 -0
  393. /package/{dist/icons → icons}/html.png +0 -0
  394. /package/{dist/icons → icons}/image.png +0 -0
  395. /package/{dist/icons → icons}/jpg-file.png +0 -0
  396. /package/{dist/icons → icons}/json.png +0 -0
  397. /package/{dist/icons → icons}/md.png +0 -0
  398. /package/{dist/icons → icons}/pdf.png +0 -0
  399. /package/{dist/icons → icons}/pptx.png +0 -0
  400. /package/{dist/icons → icons}/questionAwartar.png +0 -0
  401. /package/{dist/icons → icons}/sheets.png +0 -0
  402. /package/{dist/icons → icons}/txt.png +0 -0
  403. /package/{dist/icons → icons}/xlsx.png +0 -0
  404. /package/{dist/index.d.ts → index.d.ts} +0 -0
  405. /package/{dist/index.js → index.js} +0 -0
  406. /package/{dist/modelManage.d.ts → modelManage.d.ts} +0 -0
  407. /package/{dist/modelManage.js → modelManage.js} +0 -0
  408. /package/{dist/sensitive.d.ts → sensitive.d.ts} +0 -0
  409. /package/{dist/sensitive.js → sensitive.js} +0 -0
  410. /package/{dist/streamFilesReader.d.ts → streamFilesReader.d.ts} +0 -0
  411. /package/{dist/streamFilesReader.js → streamFilesReader.js} +0 -0
  412. /package/{dist/vite.svg → vite.svg} +0 -0
  413. /package/{dist/worker → worker}/pdf.worker.min.js +0 -0
@@ -1,232 +0,0 @@
1
- // Markdown 示例数据
2
- export const markdownExample = `# 产品功能概述
3
-
4
- 这是一个**重要**的产品说明文档,包含了_主要功能_和<u>使用说明</u>。
5
-
6
- ## 核心功能
7
-
8
- * **实时同步:** 数据实时更新
9
- * **多端支持:** 支持各种设备访问
10
- * **安全可靠:** 数据加密存储
11
-
12
- 1. 第一步:安装应用
13
- 2. 第二步:注册账号
14
- 3. 第三步:开始使用
15
-
16
- | 功能 | 基础版 | 专业版 |
17
- |------|--------|--------|
18
- | 实时同步 | ✓ | ✓ |
19
- | 多人协作 | × | ✓ |
20
- | 历史记录 | × | ✓ |
21
-
22
- ![产品界面预览](https://example.com/preview.jpg)
23
-
24
- 更多详细信息请访问我们的官网。`;
25
-
26
- // HTML 示例数据
27
- export const htmlExample = `<h1>产品功能概述</h1>
28
-
29
- <p>这是一个<strong>重要</strong>的产品说明文档,包含了<em>主要功能</em>和<u>使用说明</u>。</p>
30
-
31
- <h2>核心功能</h2>
32
-
33
- <ul>
34
- <li><strong>实时同步:</strong> 数据实时更新</li>
35
- <li><strong>多端支持:</strong> 支持各种设备访问</li>
36
- <li><strong>安全可靠:</strong> 数据加密存储</li>
37
- </ul>
38
-
39
- <ol>
40
- <li>第一步:安装应用</li>
41
- <li>第二步:注册账号</li>
42
- <li>第三步:开始使用</li>
43
- </ol>
44
-
45
- <table>
46
- <thead>
47
- <tr>
48
- <th>功能</th>
49
- <th>基础版</th>
50
- <th>专业版</th>
51
- </tr>
52
- </thead>
53
- <tbody>
54
- <tr>
55
- <td>实时同步</td>
56
- <td>✓</td>
57
- <td>✓</td>
58
- </tr>
59
- <tr>
60
- <td>多人协作</td>
61
- <td>×</td>
62
- <td>✓</td>
63
- </tr>
64
- <tr>
65
- <td>历史记录</td>
66
- <td>×</td>
67
- <td>✓</td>
68
- </tr>
69
- </tbody>
70
- </table>
71
-
72
- <p style="text-align: center">
73
- <img src="https://example.com/preview.jpg" alt="" style="display: block; margin: 0 auto;">
74
- </p>
75
-
76
- <p>更多详细信息请访问我们的官网。</p>`;
77
-
78
-
79
- export const mockMd2 = `
80
- "<think>
81
- 好的,我现在需要回答用户的问题:“疑似非法汇兑型地下钱庄身份信息的识别点的团伙特征是什么?”首先,我要查看提供的参考资料,找到相关的内容。
82
-
83
- 在参考资料0中,我看到“团伙特征”部分详细描述了多个公司账户和个人账户被同一团伙控制的情况,包括开户时间集中、法定代表人等信息相同或交叉,注册地址相似,个人住址、联系方式等相同或相似,以及家族式特点。这些都是团伙特征的重要点。
84
-
85
- 接着,参考资料1提到了买卖账户、虚假信息、电子银行开通情况、特殊证件使用和多头开户现象,这些都是团伙特征的补充信息。
86
-
87
- 参考资料6也提到了循环开户的现象,这进一步丰富了团伙特征的内容。
88
-
89
- 综合这些资料,我需要将这些要点整理出来,确保回答准确且符合用户的要求。同时,要注意使用简洁的Markdown格式,避免使用表格,保持段落清晰。
90
-
91
- 最后,确保回答中没有超出参考资料的内容,只基于提供的信息进行回答,不添加额外解释或无关内容。
92
-
93
-
94
- </think>
95
-
96
- 疑似非法汇兑型地下钱庄身份信息的识别点的团伙特征包括:[retrive-tag id="1064785817904724594" image_urls=""][7][/retrive-tag][retrive-tag id="1829039266324864708" image_urls=""][2][/retrive-tag][retrive-tag id="1874804944617086940" image_urls=""][5][/retrive-tag]
97
-
98
- 1. **账户控制特征**:多个公司账户和个人账户疑似被同一团伙控制,身份信息相同或相似。[retrive-tag id="1543787458259360472" image_urls=""][1][/retrive-tag][retrive-tag id="1874804944617086940" image_urls=""][5][/retrive-tag][retrive-tag id="3840907266571900665" image_urls=""][6][/retrive-tag]例如,开户时间集中,多家公司法定代表人、股东、实际控制人、受益所有人、联系人(授权办理业务人员)相同或存在交叉,注册时间较为集中,注册地址相同或相似。[retrive-tag id="1392836396093964572" image_urls=""][4][/retrive-tag][retrive-tag id="2007405847532305063" image_urls=""][0][/retrive-tag]
99
-
100
- 2. **个人背景特征**:多名个人住址、联系方式、工作单位相同或相似,代理人相同等。[retrive-tag id="1392836396093964572" image_urls=""][4][/retrive-tag][retrive-tag id="2007405847532305063" image_urls=""][0][/retrive-tag]部分地下钱庄呈现“家族式”特点,其账户持有人多为家族成员。[retrive-tag id="1392836396093964572" image_urls=""][4][/retrive-tag][retrive-tag id="2007405847532305063" image_urls=""][0][/retrive-tag]
101
-
102
- 3. **公司背景特征**:公司经营范围多与留学、对外投资、对外贸易等涉外需求相关。[retrive-tag id="2007405847532305063" image_urls=""][0][/retrive-tag]以个体工商户名义开立账户。[retrive-tag id="2007405847532305063" image_urls=""][0][/retrive-tag]部分公司名称中出现生僻字眼,公司注册资金或实缴资本往往较少,公司成立时间往往较短。[retrive-tag id="1392836396093964572" image_urls=""][4][/retrive-tag][retrive-tag id="2007405847532305063" image_urls=""][0][/retrive-tag]
103
-
104
- 4. **个人背景特征**:个人客户身份资料显示无固定职业或收入不高,个人身份与其账户实际交易规模不符。[retrive-tag id="1392836396093964572" image_urls=""][4][/retrive-tag][retrive-tag id="2007405847532305063" image_urls=""][0][/retrive-tag]部分团伙成员为边境地区人士或特定少数民族人士等,或个人身份能够为外币交易提供掩饰,如境外导游、代购,或广东、福建等地某些传统“侨乡”、境外务工输出地人员。[retrive-tag id="1829039266324864708" image_urls=""][2][/retrive-tag][retrive-tag id="2007405847532305063" image_urls=""][0][/retrive-tag]
105
-
106
- 5. **账户使用特征**:团伙非法获取多名个人信息用于注册空壳公司或开立人头账户。[retrive-tag id="1392836396093964572" image_urls=""][4][/retrive-tag][retrive-tag id="1543787458259360472" image_urls=""][1][/retrive-tag][retrive-tag id="3537493967718409081" image_urls=""][8][/retrive-tag]相关主体开户资料中存在个人或公司法定代表人年龄偏大或偏小、住址偏远等异常现象。[retrive-tag id="1392836396093964572" image_urls=""][4][/retrive-tag][retrive-tag id="1543787458259360472" image_urls=""][1][/retrive-tag]
107
-
108
- 6. **虚假信息特征**:留存的联系方式、联系地址等信息虚假。[retrive-tag id="1543787458259360472" image_urls=""][1][/retrive-tag][retrive-tag id="1874804944617086940" image_urls=""][5][/retrive-tag]例如,后续尽职调查中发现手机号码为空号、停机或由他人使用,联系地址为公共场所或不存在的地址等。[retrive-tag id="1543787458259360472" image_urls=""][1][/retrive-tag][retrive-tag id="1874804944617086940" image_urls=""][5][/retrive-tag]
109
-
110
- 7. **电子银行特征**:开户时主动要求开通多项电子银行服务。[retrive-tag id="1543787458259360472" image_urls=""][1][/retrive-tag][retrive-tag id="1874804944617086940" image_urls=""][5][/retrive-tag]例如,主动要求同时开通网上银行、手机银行、余额变动提醒等功能,要求将交易限额设置为最高额度。[retrive-tag id="1543787458259360472" image_urls=""][1][/retrive-tag][retrive-tag id="1874804944617086940" image_urls=""][5][/retrive-tag]
111
-
112
- 8. **特殊证件特征**:部分个人开户时使用护照、港澳通行证、台湾居民来往大陆通行证、边民证等特殊证件。[retrive-tag id="1543787458259360472" image_urls=""][1][/retrive-tag]
113
-
114
- 9. **多头开户特征**:团伙公司和个人在多家银行开立多个账户,往往存在异地开户现象。[retrive-tag id="1392836396093964572" image_urls=""][4][/retrive-tag][retrive-tag id="1543787458259360472" image_urls=""][1][/retrive-tag][retrive-tag id="1874804944617086940" image_urls=""][5][/retrive-tag]
115
-
116
- 10. **循环开户特征**:个人为规避对账户资金交易的阶段性监测,会在账户使用一段时间或被采取风险控制措施后办理销户,随后再重新开户,或出现频繁挂失补卡现象。[retrive-tag id="3840907266571900665" image_urls=""][6][/retrive-tag]"
117
- `
118
-
119
-
120
- // Slate 数据结构示例
121
- export const slateExample = [
122
- {
123
- type: 'heading-one',
124
- children: [{ text: '产品功能概述', bold: true }],
125
- },
126
- {
127
- type: 'paragraph',
128
- children: [
129
- { text: '这是一个' },
130
- { text: '重要', bold: true },
131
- { text: '的产品说明文档,包含了' },
132
- { text: '主要功能', italic: true },
133
- { text: '和' },
134
- { text: '使用说明', underline: true },
135
- { text: '。' },
136
- ],
137
- },
138
- {
139
- type: 'heading-two',
140
- children: [{ text: '核心功能', bold: true }],
141
- },
142
- {
143
- type: 'bulleted-list',
144
- children: [
145
- {
146
- type: 'list-item',
147
- children: [
148
- { text: '实时同步:', bold: true },
149
- { text: ' 数据实时更新' },
150
- ],
151
- },
152
- {
153
- type: 'list-item',
154
- children: [
155
- { text: '多端支持:', bold: true },
156
- { text: ' 支持各种设备访问' },
157
- ],
158
- },
159
- {
160
- type: 'list-item',
161
- children: [
162
- { text: '安全可靠:', bold: true },
163
- { text: ' 数据加密存储' },
164
- ],
165
- },
166
- ],
167
- },
168
- {
169
- type: 'numbered-list',
170
- children: [
171
- {
172
- type: 'list-item',
173
- children: [{ text: '第一步:安装应用' }],
174
- },
175
- {
176
- type: 'list-item',
177
- children: [{ text: '第二步:注册账号' }],
178
- },
179
- {
180
- type: 'list-item',
181
- children: [{ text: '第三步:开始使用' }],
182
- },
183
- ],
184
- },
185
- {
186
- type: 'table',
187
- children: [
188
- {
189
- type: 'table-row',
190
- children: [
191
- { type: 'table-cell', children: [{ text: '功能', bold: true }] },
192
- { type: 'table-cell', children: [{ text: '基础版', bold: true }] },
193
- { type: 'table-cell', children: [{ text: '专业版', bold: true }] },
194
- ],
195
- },
196
- {
197
- type: 'table-row',
198
- children: [
199
- { type: 'table-cell', children: [{ text: '实时同步' }] },
200
- { type: 'table-cell', children: [{ text: '✓' }] },
201
- { type: 'table-cell', children: [{ text: '✓' }] },
202
- ],
203
- },
204
- {
205
- type: 'table-row',
206
- children: [
207
- { type: 'table-cell', children: [{ text: '多人协作' }] },
208
- { type: 'table-cell', children: [{ text: '×' }] },
209
- { type: 'table-cell', children: [{ text: '✓' }] },
210
- ],
211
- },
212
- {
213
- type: 'table-row',
214
- children: [
215
- { type: 'table-cell', children: [{ text: '历史记录' }] },
216
- { type: 'table-cell', children: [{ text: '×' }] },
217
- { type: 'table-cell', children: [{ text: '✓' }] },
218
- ],
219
- },
220
- ],
221
- },
222
- {
223
- type: 'image',
224
- url: 'https://example.com/preview.jpg',
225
- children: [{ text: '' }],
226
- align: 'center',
227
- },
228
- {
229
- type: 'paragraph',
230
- children: [{ text: '更多详细信息请访问我们的官网。' }],
231
- },
232
- ];
@@ -1,258 +0,0 @@
1
- import { BaseEditor } from 'slate';
2
- import { ReactEditor } from 'slate-react';
3
- import React from 'react';
4
-
5
- // 定义自定义文本类型
6
- export type CustomText = {
7
- text: string;
8
- bold?: boolean;
9
- italic?: boolean;
10
- underline?: boolean;
11
- code?: boolean;
12
- retrive?: boolean;
13
- strikethrough?: boolean;
14
- link?: string;
15
- id?: string;
16
- }
17
-
18
- // 定义基础元素类型
19
- export interface BaseElement {
20
- type: string;
21
- children: (CustomElement | CustomText)[];
22
- align?: 'left' | 'center' | 'right';
23
- }
24
-
25
- // 定义各种元素类型
26
- export interface ParagraphElement extends BaseElement {
27
- type: 'paragraph';
28
- }
29
-
30
- export interface HeadingOneElement extends BaseElement {
31
- type: 'heading-one';
32
- }
33
-
34
- export interface HeadingTwoElement extends BaseElement {
35
- type: 'heading-two';
36
- }
37
-
38
- export interface HeadingThreeElement extends BaseElement {
39
- type: 'heading-three';
40
- }
41
-
42
- export interface ListElement extends BaseElement {
43
- type: 'bulleted-list' | 'numbered-list';
44
- }
45
-
46
- export interface ListItemElement extends BaseElement {
47
- type: 'list-item';
48
- }
49
-
50
- export interface TableElement extends BaseElement {
51
- type: 'table';
52
- }
53
-
54
- export interface TableRowElement extends BaseElement {
55
- type: 'table-row';
56
- }
57
-
58
- export interface TableCellElement extends BaseElement {
59
- type: 'table-cell';
60
- header?: boolean;
61
- }
62
-
63
- export interface ImageElement extends BaseElement {
64
- type: 'image';
65
- url: string;
66
- }
67
-
68
- export interface CodeBlockElement extends BaseElement {
69
- type: 'code-block';
70
- }
71
-
72
- export interface BlockQuoteElement extends BaseElement {
73
- type: 'block-quote';
74
- }
75
-
76
- // 组合所有元素类型
77
- export type CustomElement =
78
- | ParagraphElement
79
- | HeadingOneElement
80
- | HeadingTwoElement
81
- | HeadingThreeElement
82
- | ListElement
83
- | ListItemElement
84
- | TableElement
85
- | TableRowElement
86
- | TableCellElement
87
- | ImageElement
88
- | CodeBlockElement
89
- | BlockQuoteElement;
90
-
91
- declare module 'slate' {
92
- interface CustomTypes {
93
- Editor: BaseEditor & ReactEditor;
94
- Element: CustomElement;
95
- Text: CustomText;
96
- }
97
- }
98
- // Markdown 转换器
99
- export const serializeToMarkdown = (nodes: CustomElement[]): string => {
100
- return nodes.map(node => {
101
- switch (node.type) {
102
- case 'heading-one':
103
- return `# ${serializeLeaf(node.children[0] as CustomText)}\n\n`;
104
- case 'heading-two':
105
- return `## ${serializeLeaf(node.children[0] as CustomText)}\n\n`;
106
- case 'paragraph':
107
- return `${node.children.map(child => serializeLeaf(child as CustomText)).join('')}\n\n`;
108
- case 'bulleted-list':
109
- return (node.children as CustomElement[]).map(item => `* ${(item.children as CustomText[]).map(child => serializeLeaf(child)).join('')}\n`).join('') + '\n';
110
- case 'numbered-list':
111
- return (node.children as CustomElement[]).map((item, i) => `${i + 1}. ${(item.children as CustomText[]).map(child => serializeLeaf(child)).join('')}\n`).join('') + '\n';
112
- case 'block-quote':
113
- return `> ${node.children.map(child => serializeLeaf(child as CustomText)).join('')}\n\n`;
114
- case 'table':
115
- return serializeTable(node) + '\n';
116
- case 'image':
117
- const align = node.align ? ` align="${node.align}"` : '';
118
- return `![](${node.url}${align})\n\n`;
119
- default:
120
- return '';
121
- }
122
- }).join('');
123
- };
124
-
125
- const serializeLeaf = (leaf: CustomText): string => {
126
- let text = leaf.text;
127
- if (leaf.bold) text = `**${text}**`;
128
- if (leaf.italic) text = `_${text}_`;
129
- if (leaf.underline) text = `<u>${text}</u>`;
130
- if (leaf.strikethrough) text = `~~${text}~~`;
131
- if (leaf.code) text = `\`${text}\``;
132
- if (leaf.link) text = `[${text}](${leaf.link})`;
133
- return text;
134
- };
135
-
136
- const serializeTable = (table: CustomElement): string => {
137
- const rows = table.children as CustomElement[];
138
- if (rows.length === 0) return '';
139
-
140
- // 创建表头
141
- const headerRow = rows[0];
142
- const headerCells = headerRow.children as CustomElement[];
143
- let markdown = '| ' + headerCells.map(cell => {
144
- const text = (cell.children[0] as CustomText).text;
145
- return text.replace(/\|/g, '\\|'); // 转义表格中的竖线
146
- }).join(' | ') + ' |\n';
147
-
148
- // 添加分隔行
149
- markdown += '| ' + headerCells.map(() => '---').join(' | ') + ' |\n';
150
-
151
- // 添加数据行
152
- for (let i = 1; i < rows.length; i++) {
153
- const row = rows[i];
154
- markdown += '| ' + (row.children as CustomElement[])
155
- .map(cell => {
156
- const text = (cell.children[0] as CustomText).text;
157
- return text.replace(/\|/g, '\\|'); // 转义表格中的竖线
158
- })
159
- .join(' | ') + ' |\n';
160
- }
161
-
162
- return markdown;
163
- };
164
-
165
- // HTML 转换器
166
- export const serializeToHtml = (nodes: CustomElement[]): string => {
167
- return nodes.map(node => {
168
- switch (node.type) {
169
- case 'heading-one':
170
- return `<h1>${serializeLeafToHtml(node.children[0] as CustomText)}</h1>`;
171
- case 'heading-two':
172
- return `<h2>${serializeLeafToHtml(node.children[0] as CustomText)}</h2>`;
173
- case 'paragraph':
174
- const align = node.align ? ` style="text-align: ${node.align};"` : '';
175
- return `<p${align}>${node.children.map(child => serializeLeafToHtml(child as CustomText)).join('')}</p>`;
176
- case 'bulleted-list':
177
- return `<ul>${(node.children as CustomElement[]).map(item => `<li>${(item.children as CustomText[]).map(child => serializeLeafToHtml(child)).join('')}</li>`).join('')}</ul>`;
178
- case 'numbered-list':
179
- return `<ol>${(node.children as CustomElement[]).map(item => `<li>${(item.children as CustomText[]).map(child => serializeLeafToHtml(child)).join('')}</li>`).join('')}</ol>`;
180
- case 'block-quote':
181
- return `<blockquote>${node.children.map(child => serializeLeafToHtml(child as CustomText)).join('')}</blockquote>`;
182
- case 'table':
183
- return serializeTableToHtml(node);
184
- case 'image':
185
- const imgAlign = node.align ? ` style="display: block; margin: 0 auto;"` : '';
186
- return `<img src="${node.url}" alt=""${imgAlign}/>`;
187
- default:
188
- return '';
189
- }
190
- }).join('\n');
191
- };
192
-
193
- const serializeLeafToHtml = (leaf: CustomText): string => {
194
- let text = leaf.text;
195
- if (leaf.bold) text = `<strong>${text}</strong>`;
196
- if (leaf.italic) text = `<em>${text}</em>`;
197
- if (leaf.underline) text = `<u>${text}</u>`;
198
- if (leaf.strikethrough) text = `<del>${text}</del>`;
199
- if (leaf.code) text = `<code>${text}</code>`;
200
- if (leaf.link) text = `<a href="${leaf.link}">${text}</a>`;
201
- return text;
202
- };
203
-
204
- const serializeTableToHtml = (table: CustomElement): string => {
205
- const rows = table.children as CustomElement[];
206
- if (rows.length === 0) return '';
207
-
208
- const tableStyles = {
209
- wrapper: 'style="overflow-x: auto; margin: 1rem 0;"',
210
- table: 'style="min-width: 420px; width: 550px; border-collapse: collapse; border: 1px solid #e5e7eb;"',
211
- thead: 'style="background-color: #f0f9ff;"',
212
- headerRow: 'style="border-bottom: 2px solid #93c5fd;"',
213
- headerCell: 'style="padding: 0.75rem 1.5rem; text-align: left; font-size: 0.875rem; font-weight: 600; color: #1e3a8a; text-transform: uppercase; letter-spacing: 0.05em; border-right: 1px solid #93c5fd;"',
214
- tbody: 'style="background-color: #ffffff;"',
215
- row: 'style="border-bottom: 1px solid #e5e7eb;"',
216
- cell: 'style="padding: 0.75rem 1.5rem; font-size: 0.875rem; color: #374151; border-right: 1px solid #e5e7eb;"',
217
- lastCell: 'style="padding: 0.75rem 1.5rem; font-size: 0.875rem; color: #374151;"'
218
- };
219
-
220
- let html = `<div ${tableStyles.wrapper}><table ${tableStyles.table}>`;
221
-
222
- // 添加表头
223
- html += `<thead ${tableStyles.thead}>`;
224
- const headerRow = rows[0];
225
- if (headerRow) {
226
- html += `<tr ${tableStyles.headerRow}>`;
227
- const cells = headerRow.children as CustomElement[];
228
- html += cells.map((cell, index) => {
229
- const isLast = index === cells.length - 1;
230
- const cellStyle = isLast ? tableStyles.lastCell : tableStyles.headerCell;
231
- return `<th scope="col" ${cellStyle}>${(cell.children[0] as CustomText).text}</th>`;
232
- }).join('');
233
- html += '</tr>';
234
- }
235
- html += '</thead>';
236
-
237
- // 添加表格主体
238
- html += `<tbody ${tableStyles.tbody}>`;
239
- if (rows.length > 1) {
240
- for (let i = 1; i < rows.length; i++) {
241
- const row = rows[i];
242
- html += `<tr ${tableStyles.row}>`;
243
- const cells = row.children as CustomElement[];
244
- html += cells.map((cell, index) => {
245
- const isLast = index === cells.length - 1;
246
- const cellStyle = isLast ? tableStyles.lastCell : tableStyles.cell;
247
- return `<td ${cellStyle}>${(cell.children[0] as CustomText).text}</td>`;
248
- }).join('');
249
- html += '</tr>';
250
- }
251
- } else {
252
- // 如果没有数据行,添加一个空的行
253
- html += `<tr ${tableStyles.row}><td colspan="100" style="padding: 0.75rem 1.5rem; text-align: center; color: #6b7280;">暂无数据</td></tr>`;
254
- }
255
- html += '</tbody></table></div>';
256
-
257
- return html;
258
- };