cx-chat 0.0.2 → 0.0.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 (406) hide show
  1. package/dist/cx-chat.css +1 -0
  2. package/dist/cx-chat.es.js +97326 -0
  3. package/dist/cx-chat.umd.js +734 -0
  4. package/package.json +21 -1
  5. package/.cursor/rules/i18n-cn-gloss-comments.mdc +0 -31
  6. package/.cursor/rules/list-page-view-pageconfig.mdc +0 -32
  7. package/.cursor/rules/no-over-defensive-programming.mdc +0 -90
  8. package/.cursor/rules/requirement-description-for-agent.mdc +0 -33
  9. package/.cursor/rules/use-showToast-not-antd-message.mdc +0 -28
  10. package/.docker/Dockerfile +0 -7
  11. package/.env +0 -9
  12. package/.env.development +0 -7
  13. package/.env.production +0 -7
  14. package/.gitlab-ci/docker-build.yaml +0 -28
  15. package/.gitlab-ci/k8s-deploy-dev-master.yaml +0 -42
  16. package/.gitlab-ci/npm-build.yaml +0 -17
  17. package/.gitlab-ci.yml +0 -8
  18. package/.k8s/0-namespace.yaml +0 -6
  19. package/.k8s/1-configmap-web.yaml +0 -7
  20. package/.k8s/1-nginx-conf-dev.yaml +0 -110
  21. package/.k8s/2-deployment.yaml +0 -27
  22. package/.k8s/3-service.yaml +0 -16
  23. package/.k8s/4-ingress-dev.yaml +0 -30
  24. package/.lingma/rules/use-showToast-not-antd-message.md +0 -34
  25. package/.nginx/nginx.conf +0 -52
  26. package/.prettierrc +0 -9
  27. package/eslint.config.js +0 -32
  28. package/index.html +0 -13
  29. package/postcss.config.js +0 -6
  30. package/src/App.tsx +0 -96
  31. package/src/_doc/0.docs-overview.md +0 -28
  32. package/src/_doc/cx-ui/0.docs-overview.md +0 -30
  33. package/src/_doc/cx-ui/comp.1.cx-ui-overview.md +0 -82
  34. package/src/_doc/cx-ui/comp.2.cx-modal.md +0 -82
  35. package/src/_doc/cx-ui/comp.3.cx-button.md +0 -89
  36. package/src/_doc/cx-ui/comp.4.cx-form.md +0 -72
  37. package/src/_doc/cx-ui/comp.5.cx-fields.md +0 -76
  38. package/src/_doc/cx-ui/comp.6.cx-tag.md +0 -57
  39. package/src/_doc/cx-ui/comp.7.cx-empty-state.md +0 -29
  40. package/src/_doc/meta/0.docs-overview.md +0 -24
  41. package/src/_doc/meta/comp.1.enum-runtime.md +0 -33
  42. package/src/_doc/meta/comp.2.dict-runtime.md +0 -39
  43. package/src/_doc/router/0.docs-overview.md +0 -14
  44. package/src/_doc/router/guide.1.menu-component-config.md +0 -181
  45. package/src/_doc/router/guide.2.router-auto-registration.md +0 -114
  46. package/src/_doc/table-view/0.docs-overview.md +0 -30
  47. package/src/_doc/table-view/comp.1.table-view.md +0 -542
  48. package/src/_doc/table-view/props.1.create-table-view-config.md +0 -193
  49. package/src/_doc/table-view/props.2.table-view-search-fields.md +0 -106
  50. package/src/api/_mock/README.md +0 -340
  51. package/src/api/_mock/api.ts +0 -1642
  52. package/src/api/_mock/bundle-shim.ts +0 -16
  53. package/src/api/_mock/handler-shim.ts +0 -6
  54. package/src/api/_mock/handler.ts +0 -458
  55. package/src/api/_mock/index.ts +0 -711
  56. package/src/api/_mock/interceptor.ts +0 -15
  57. package/src/api/_mock/mod.ts +0 -12
  58. package/src/api/_mock/utils.ts +0 -65
  59. package/src/api/base/memory.js +0 -24
  60. package/src/api/chat.js +0 -210
  61. package/src/api/common/auth.js +0 -70
  62. package/src/api/menus/business-rules.js +0 -76
  63. package/src/api/menus/feedback.js +0 -102
  64. package/src/api/menus/knowledge.js +0 -159
  65. package/src/api/menus/model-metadata/manage.js +0 -70
  66. package/src/api/menus/model-metadata/role.js +0 -50
  67. package/src/api/menus/model-metadata/training-detail-mock-data.js +0 -569
  68. package/src/api/menus/model-metadata/training.js +0 -28
  69. package/src/api/menus/skill.js +0 -40
  70. package/src/api/system/agent-config.js +0 -16
  71. package/src/api/system/department.js +0 -94
  72. package/src/api/system/dict.js +0 -86
  73. package/src/api/system/menu.js +0 -37
  74. package/src/api/system/permission.js +0 -26
  75. package/src/api/system/role.js +0 -34
  76. package/src/api/system/sys-config.js +0 -16
  77. package/src/api/system/sys-log.js +0 -17
  78. package/src/api/system/user.js +0 -75
  79. package/src/api/upload.js +0 -39
  80. package/src/assets/react.svg +0 -1
  81. package/src/components/auth/current-user-avatar.tsx +0 -77
  82. package/src/components/common/code-view.tsx +0 -149
  83. package/src/components/common/detail-link.tsx +0 -67
  84. package/src/components/common/error-boundary.tsx +0 -98
  85. package/src/components/common/language-switcher.tsx +0 -91
  86. package/src/components/common/lite-table/index.tsx +0 -135
  87. package/src/components/common/md-editor.tsx +0 -126
  88. package/src/components/common/modal/confirm-dialog.tsx +0 -113
  89. package/src/components/common/modal/dep-user-select-multi.tsx +0 -324
  90. package/src/components/common/modal/dep-user-select.tsx +0 -249
  91. package/src/components/common/modal/user-select-multi.tsx +0 -266
  92. package/src/components/common/pagination.tsx +0 -472
  93. package/src/components/common/path.tsx +0 -175
  94. package/src/components/common/system-logo-mark.tsx +0 -48
  95. package/src/components/cx-ui/button/index.less +0 -208
  96. package/src/components/cx-ui/button/index.tsx +0 -611
  97. package/src/components/cx-ui/checkbox/index.tsx +0 -78
  98. package/src/components/cx-ui/date-picker/index.less +0 -17
  99. package/src/components/cx-ui/date-picker/index.tsx +0 -193
  100. package/src/components/cx-ui/drawer/index.tsx +0 -47
  101. package/src/components/cx-ui/empty-state/index.tsx +0 -20
  102. package/src/components/cx-ui/floating-shell/CxFloatingShell.tsx +0 -89
  103. package/src/components/cx-ui/floating-shell/cx-floating-shell.less +0 -283
  104. package/src/components/cx-ui/floating-shell/has-floating-value.ts +0 -41
  105. package/src/components/cx-ui/form/CxForm.tsx +0 -15
  106. package/src/components/cx-ui/form/index.tsx +0 -20
  107. package/src/components/cx-ui/form-item/index.less +0 -26
  108. package/src/components/cx-ui/form-item/index.tsx +0 -36
  109. package/src/components/cx-ui/index.ts +0 -70
  110. package/src/components/cx-ui/input/auto-complete.tsx +0 -134
  111. package/src/components/cx-ui/input/index.tsx +0 -259
  112. package/src/components/cx-ui/input-number/index.jsx +0 -66
  113. package/src/components/cx-ui/modal/index.jsx +0 -212
  114. package/src/components/cx-ui/modal/index.less +0 -144
  115. package/src/components/cx-ui/modal/useCxModal.ts +0 -125
  116. package/src/components/cx-ui/multi-select/index.jsx +0 -74
  117. package/src/components/cx-ui/multi-select/index.less +0 -40
  118. package/src/components/cx-ui/multi-select/index2.tsx +0 -361
  119. package/src/components/cx-ui/radio/index.tsx +0 -33
  120. package/src/components/cx-ui/range-picker/index.less +0 -65
  121. package/src/components/cx-ui/range-picker/index.tsx +0 -219
  122. package/src/components/cx-ui/select/index.less +0 -34
  123. package/src/components/cx-ui/select/index.tsx +0 -196
  124. package/src/components/cx-ui/skeleton/index.tsx +0 -12
  125. package/src/components/cx-ui/steps/index.tsx +0 -14
  126. package/src/components/cx-ui/styles/_tokens.less +0 -79
  127. package/src/components/cx-ui/styles/index.less +0 -246
  128. package/src/components/cx-ui/switch/index.less +0 -106
  129. package/src/components/cx-ui/switch/index.tsx +0 -120
  130. package/src/components/cx-ui/table/index.less +0 -160
  131. package/src/components/cx-ui/table/index.tsx +0 -152
  132. package/src/components/cx-ui/tabs/index.less +0 -15
  133. package/src/components/cx-ui/tabs/index.tsx +0 -34
  134. package/src/components/cx-ui/tag/index.less +0 -51
  135. package/src/components/cx-ui/tag/index.tsx +0 -140
  136. package/src/components/cx-ui/timeline/index.tsx +0 -14
  137. package/src/components/cx-ui/tooltip/index.tsx +0 -67
  138. package/src/components/cx-ui/tree/index.tsx +0 -193
  139. package/src/components/cx-ui/tree-select/index.jsx +0 -91
  140. package/src/components/cx-ui/tree-select/index.less +0 -27
  141. package/src/components/cx-ui/upload-file/index.less +0 -223
  142. package/src/components/cx-ui/upload-file/index.tsx +0 -640
  143. package/src/components/cx-ui/upload-img/index.tsx +0 -291
  144. package/src/components/layout/components/Header.tsx +0 -216
  145. package/src/components/layout/components/Sidebar.tsx +0 -717
  146. package/src/components/layout/index.tsx +0 -95
  147. package/src/components/table-view/components/search-area.tsx +0 -411
  148. package/src/components/table-view/components/table-view-config.tsx +0 -528
  149. package/src/components/table-view/components/table-view.types.ts +0 -478
  150. package/src/components/table-view/components/tree-api-normalize.ts +0 -38
  151. package/src/components/table-view/components/tree-data-annotate.ts +0 -31
  152. package/src/components/table-view/components/tree-sidebar.tsx +0 -74
  153. package/src/components/table-view/index.tsx +0 -61
  154. package/src/components/table-view/list-page-view.tsx +0 -1049
  155. package/src/components/table-view/select-table-view.tsx +0 -1094
  156. package/src/components/table-view/styles/select-table-view.less +0 -51
  157. package/src/config/default-system-name.ts +0 -9
  158. package/src/config/system.ts +0 -165
  159. package/src/constants/countryCodes.ts +0 -3
  160. package/src/contexts/AuthContext.tsx +0 -256
  161. package/src/contexts/ChatContext.tsx +0 -839
  162. package/src/contexts/MenuContext.tsx +0 -62
  163. package/src/contexts/ToastContext.tsx +0 -181
  164. package/src/hooks/useCopyToClipboard.ts +0 -47
  165. package/src/hooks/useModalSubmit.ts +0 -104
  166. package/src/hooks/useRouter.ts +0 -240
  167. package/src/hooks/useStepForm.ts +0 -46
  168. package/src/hooks/useStickyHeader.ts +0 -42
  169. package/src/hooks/useThreadActions.ts +0 -105
  170. package/src/hooks/useUserPreferences.ts +0 -101
  171. package/src/http/axios.js +0 -372
  172. package/src/http/mock.interceptor.ts +0 -9
  173. package/src/http/obfuscationKey.ts +0 -41
  174. package/src/i18n.ts +0 -60
  175. package/src/index.js +0 -1
  176. package/src/index.less +0 -169
  177. package/src/locales/en/auth.ts +0 -70
  178. package/src/locales/en/base/memory.ts +0 -28
  179. package/src/locales/en/base/settings.ts +0 -41
  180. package/src/locales/en/chat.ts +0 -40
  181. package/src/locales/en/common.ts +0 -173
  182. package/src/locales/en/enum.ts +0 -27
  183. package/src/locales/en/menus/business-rules.ts +0 -48
  184. package/src/locales/en/menus/feedback.ts +0 -62
  185. package/src/locales/en/menus/knowledge.ts +0 -120
  186. package/src/locales/en/menus/model-metadata/index.ts +0 -10
  187. package/src/locales/en/menus/model-metadata/manage.ts +0 -151
  188. package/src/locales/en/menus/model-metadata/role.ts +0 -48
  189. package/src/locales/en/menus/model-metadata/training.ts +0 -65
  190. package/src/locales/en/menus/skill.ts +0 -34
  191. package/src/locales/en/system/agent-config.ts +0 -34
  192. package/src/locales/en/system/department.ts +0 -68
  193. package/src/locales/en/system/dict.ts +0 -44
  194. package/src/locales/en/system/menu.ts +0 -45
  195. package/src/locales/en/system/permission.ts +0 -89
  196. package/src/locales/en/system/role.ts +0 -25
  197. package/src/locales/en/system/sys-config.ts +0 -33
  198. package/src/locales/en/system/sys-log.ts +0 -38
  199. package/src/locales/en/system/user.ts +0 -113
  200. package/src/locales/en.ts +0 -68
  201. package/src/locales/zh/auth.ts +0 -70
  202. package/src/locales/zh/base/memory.ts +0 -29
  203. package/src/locales/zh/base/settings.ts +0 -41
  204. package/src/locales/zh/chat.ts +0 -47
  205. package/src/locales/zh/common.ts +0 -178
  206. package/src/locales/zh/enum.ts +0 -28
  207. package/src/locales/zh/menus/business-rules.ts +0 -47
  208. package/src/locales/zh/menus/feedback.ts +0 -62
  209. package/src/locales/zh/menus/knowledge.ts +0 -117
  210. package/src/locales/zh/menus/model-metadata/index.ts +0 -10
  211. package/src/locales/zh/menus/model-metadata/manage.ts +0 -151
  212. package/src/locales/zh/menus/model-metadata/role.ts +0 -47
  213. package/src/locales/zh/menus/model-metadata/training.ts +0 -64
  214. package/src/locales/zh/menus/skill.ts +0 -34
  215. package/src/locales/zh/system/agent-config.ts +0 -33
  216. package/src/locales/zh/system/department.ts +0 -69
  217. package/src/locales/zh/system/dict.ts +0 -44
  218. package/src/locales/zh/system/menu.ts +0 -47
  219. package/src/locales/zh/system/permission.ts +0 -94
  220. package/src/locales/zh/system/role.ts +0 -25
  221. package/src/locales/zh/system/sys-config.ts +0 -32
  222. package/src/locales/zh/system/sys-log.ts +0 -38
  223. package/src/locales/zh/system/user.ts +0 -114
  224. package/src/locales/zh.ts +0 -67
  225. package/src/main.tsx +0 -50
  226. package/src/meta/const/index.ts +0 -40
  227. package/src/meta/index-dict.ts +0 -56
  228. package/src/meta/index-enum.ts +0 -95
  229. package/src/meta/index.ts +0 -14
  230. package/src/meta/module/dict-data/runtime.ts +0 -199
  231. package/src/meta/module/dict-data/types.ts +0 -17
  232. package/src/meta/module/enum-data/runtime.ts +0 -75
  233. package/src/meta/module/enum-data/types.ts +0 -18
  234. package/src/router/index.tsx +0 -312
  235. package/src/styles/AntdThemeProvider.tsx +0 -40
  236. package/src/styles/antd-theme.ts +0 -20
  237. package/src/styles/global.less +0 -107
  238. package/src/styles/variable.less +0 -103
  239. package/src/types/feedback.ts +0 -43
  240. package/src/types/index.ts +0 -85
  241. package/src/types/menu.ts +0 -43
  242. package/src/utils/aesUtil.ts +0 -123
  243. package/src/utils/chatUtils.ts +0 -524
  244. package/src/utils/cn.ts +0 -6
  245. package/src/utils/crypto.ts +0 -164
  246. package/src/utils/date.ts +0 -72
  247. package/src/utils/file-icons.tsx +0 -79
  248. package/src/utils/index.ts +0 -168
  249. package/src/utils/markdown-math-plugins.ts +0 -21
  250. package/src/utils/menuI18n.ts +0 -305
  251. package/src/utils/menuRouteRegistry.ts +0 -78
  252. package/src/utils/permission-crud.ts +0 -147
  253. package/src/utils/routeConfig.ts +0 -350
  254. package/src/utils/storage.ts +0 -135
  255. package/src/utils/toastBridge.ts +0 -26
  256. package/src/utils/url.ts +0 -38
  257. package/src/utils/validation.ts +0 -16
  258. package/src/views/auth/auth-code/index.less +0 -169
  259. package/src/views/auth/auth-code/index.module.less +0 -174
  260. package/src/views/auth/auth-code/index.tsx +0 -233
  261. package/src/views/auth/login.tsx +0 -498
  262. package/src/views/auth/register.tsx +0 -388
  263. package/src/views/base/memory/index.tsx +0 -136
  264. package/src/views/base/memory/modal/detail-modal.tsx +0 -89
  265. package/src/views/base/memory/modal/submit-modal.tsx +0 -134
  266. package/src/views/base/settings/index.tsx +0 -657
  267. package/src/views/chat/chat.less +0 -323
  268. package/src/views/chat/components/chat-input.tsx +0 -298
  269. package/src/views/chat/components/header-thread-title.tsx +0 -210
  270. package/src/views/chat/components/message-list/content-answer.tsx +0 -100
  271. package/src/views/chat/components/message-list/content-question.tsx +0 -18
  272. package/src/views/chat/components/message-list/index.tsx +0 -520
  273. package/src/views/chat/components/message-list/message-item.tsx +0 -199
  274. package/src/views/chat/components/message-list/preparation-demo-items.ts +0 -147
  275. package/src/views/chat/components/message-list/preparation-steps.tsx +0 -506
  276. package/src/views/chat/components/message-list/suggestion-list.tsx +0 -36
  277. package/src/views/chat/components/message-list/thinking-process.tsx +0 -49
  278. package/src/views/chat/components/message-list/toolbar.tsx +0 -224
  279. package/src/views/chat/components/message-list/use-message-list-scroll.ts +0 -214
  280. package/src/views/chat/components/references-knowledge/context.tsx +0 -57
  281. package/src/views/chat/components/references-knowledge/index.ts +0 -9
  282. package/src/views/chat/components/references-knowledge/modal/knowledge-detail-drawer.tsx +0 -556
  283. package/src/views/chat/components/references-knowledge/modal/knowledge-doc-detail-drawer.tsx +0 -529
  284. package/src/views/chat/components/references-knowledge/panel.tsx +0 -115
  285. package/src/views/chat/hooks/use-chat-common.ts +0 -19
  286. package/src/views/chat/index-session.tsx +0 -647
  287. package/src/views/chat/index.tsx +0 -127
  288. package/src/views/page-error/401.tsx +0 -56
  289. package/src/views/page-error/404.tsx +0 -56
  290. package/src/views/page-menus/business-rules/index.tsx +0 -376
  291. package/src/views/page-menus/business-rules/modal/detail-modal.tsx +0 -186
  292. package/src/views/page-menus/business-rules/modal/scope-modal.tsx +0 -272
  293. package/src/views/page-menus/business-rules/modal/submit-modal.tsx +0 -142
  294. package/src/views/page-menus/feedback/components/feedback-dataset-list.tsx +0 -471
  295. package/src/views/page-menus/feedback/index.tsx +0 -166
  296. package/src/views/page-menus/feedback/modal/export-feedback-modal.tsx +0 -367
  297. package/src/views/page-menus/knowledge/components/doc-editor-by-type.tsx +0 -32
  298. package/src/views/page-menus/knowledge/components/doc-editor-type-file.tsx +0 -330
  299. package/src/views/page-menus/knowledge/detail.tsx +0 -600
  300. package/src/views/page-menus/knowledge/index.tsx +0 -337
  301. package/src/views/page-menus/knowledge/modal/detail-modal.tsx +0 -618
  302. package/src/views/page-menus/knowledge/modal/doc-detail-modal.tsx +0 -550
  303. package/src/views/page-menus/knowledge/modal/doc-parse.ts +0 -99
  304. package/src/views/page-menus/knowledge/modal/doc-submit-modal.tsx +0 -349
  305. package/src/views/page-menus/knowledge/modal/doc-type-picker-modal.tsx +0 -88
  306. package/src/views/page-menus/knowledge/modal/knowledge-user-select-modal.tsx +0 -283
  307. package/src/views/page-menus/knowledge/modal/submit-modal.tsx +0 -179
  308. package/src/views/page-menus/model-metadata/manage/components/metadata-detail-schema-tab.tsx +0 -114
  309. package/src/views/page-menus/model-metadata/manage/components/step1-basic-info.tsx +0 -232
  310. package/src/views/page-menus/model-metadata/manage/components/step2-schema.tsx +0 -316
  311. package/src/views/page-menus/model-metadata/manage/components/step3-permissions.tsx +0 -134
  312. package/src/views/page-menus/model-metadata/manage/components/step4-documents.tsx +0 -134
  313. package/src/views/page-menus/model-metadata/manage/components/step5-example-sql.tsx +0 -101
  314. package/src/views/page-menus/model-metadata/manage/components/submit-add.tsx +0 -338
  315. package/src/views/page-menus/model-metadata/manage/components/submit-edit.tsx +0 -276
  316. package/src/views/page-menus/model-metadata/manage/detail.tsx +0 -298
  317. package/src/views/page-menus/model-metadata/manage/hooks/model-metadata-submit-shared.ts +0 -113
  318. package/src/views/page-menus/model-metadata/manage/hooks/use-model-metadata-item-state.ts +0 -20
  319. package/src/views/page-menus/model-metadata/manage/index.tsx +0 -304
  320. package/src/views/page-menus/model-metadata/manage/modal/components/table-schema.ts +0 -374
  321. package/src/views/page-menus/model-metadata/manage/modal/components/use-table-detail-tabs.tsx +0 -151
  322. package/src/views/page-menus/model-metadata/manage/modal/components/use-table-submit-tabs.tsx +0 -423
  323. package/src/views/page-menus/model-metadata/manage/modal/detail-modal.tsx +0 -218
  324. package/src/views/page-menus/model-metadata/manage/modal/submit-modal.tsx +0 -261
  325. package/src/views/page-menus/model-metadata/manage/modal/table-detail-modal.tsx +0 -196
  326. package/src/views/page-menus/model-metadata/manage/modal/table-submit-modal.tsx +0 -229
  327. package/src/views/page-menus/model-metadata/manage/submit.tsx +0 -31
  328. package/src/views/page-menus/model-metadata/role/index.tsx +0 -207
  329. package/src/views/page-menus/model-metadata/role/modal/detail-modal.tsx +0 -97
  330. package/src/views/page-menus/model-metadata/role/modal/role-assign-users-modal.tsx +0 -254
  331. package/src/views/page-menus/model-metadata/role/modal/role-assign-users-panel.tsx +0 -393
  332. package/src/views/page-menus/model-metadata/role/modal/role-assign-users-utils.ts +0 -120
  333. package/src/views/page-menus/model-metadata/role/modal/role-permission-assign-panel.tsx +0 -698
  334. package/src/views/page-menus/model-metadata/role/modal/role-permission-modal.tsx +0 -237
  335. package/src/views/page-menus/model-metadata/role/modal/submit-modal.tsx +0 -135
  336. package/src/views/page-menus/model-metadata/training/components/detail-records/index.ts +0 -4
  337. package/src/views/page-menus/model-metadata/training/components/detail-records/node-card.tsx +0 -72
  338. package/src/views/page-menus/model-metadata/training/components/detail-records/summary-lines.ts +0 -196
  339. package/src/views/page-menus/model-metadata/training/components/detail-records/summary-list.tsx +0 -153
  340. package/src/views/page-menus/model-metadata/training/components/detail-records/timeline.tsx +0 -103
  341. package/src/views/page-menus/model-metadata/training/components/detail-records/types.ts +0 -82
  342. package/src/views/page-menus/model-metadata/training/detail.tsx +0 -159
  343. package/src/views/page-menus/model-metadata/training/index.tsx +0 -236
  344. package/src/views/page-menus/model-metadata/training/modal/update-detail-modal.tsx +0 -154
  345. package/src/views/page-menus/skill/index.tsx +0 -201
  346. package/src/views/page-menus/skill/modal/detail-modal.tsx +0 -156
  347. package/src/views/page-menus/skill/modal/submit-modal.tsx +0 -214
  348. package/src/views/page-system/agent-config/index.tsx +0 -370
  349. package/src/views/page-system/department/departmentFormShared.ts +0 -36
  350. package/src/views/page-system/department/index.tsx +0 -541
  351. package/src/views/page-system/department/modal/detail-modal.tsx +0 -94
  352. package/src/views/page-system/department/modal/member-role-modal.tsx +0 -128
  353. package/src/views/page-system/department/modal/submit-modal.tsx +0 -265
  354. package/src/views/page-system/dict/index.tsx +0 -440
  355. package/src/views/page-system/dict/modal/cate-submit-modal.tsx +0 -315
  356. package/src/views/page-system/dict/modal/submit-modal.tsx +0 -184
  357. package/src/views/page-system/logs/components/index.ts +0 -3
  358. package/src/views/page-system/logs/components/log-message-demo.tsx +0 -30
  359. package/src/views/page-system/logs/components/log-message-stream.ts +0 -184
  360. package/src/views/page-system/logs/components/message-list/content-answer.tsx +0 -100
  361. package/src/views/page-system/logs/components/message-list/content-question.tsx +0 -18
  362. package/src/views/page-system/logs/components/message-list/index.tsx +0 -515
  363. package/src/views/page-system/logs/components/message-list/message-item.tsx +0 -193
  364. package/src/views/page-system/logs/components/message-list/preparation-demo-items.ts +0 -147
  365. package/src/views/page-system/logs/components/message-list/preparation-steps.tsx +0 -506
  366. package/src/views/page-system/logs/components/message-list/suggestion-list.tsx +0 -36
  367. package/src/views/page-system/logs/components/message-list/thinking-process.tsx +0 -49
  368. package/src/views/page-system/logs/components/message-list/toolbar.tsx +0 -134
  369. package/src/views/page-system/logs/components/message-list/use-message-list-scroll.ts +0 -214
  370. package/src/views/page-system/logs/components/message-modal.tsx +0 -239
  371. package/src/views/page-system/logs/index.tsx +0 -132
  372. package/src/views/page-system/logs/modal/detail-modal.tsx +0 -157
  373. package/src/views/page-system/menu/components/menuFormShared.ts +0 -283
  374. package/src/views/page-system/menu/index.less +0 -12
  375. package/src/views/page-system/menu/index.tsx +0 -410
  376. package/src/views/page-system/menu/modal/icon-modal.less +0 -51
  377. package/src/views/page-system/menu/modal/icon-modal.tsx +0 -87
  378. package/src/views/page-system/menu/modal/submit-modal.tsx +0 -263
  379. package/src/views/page-system/permission/index.tsx +0 -562
  380. package/src/views/page-system/permission/modal/detail-modal.tsx +0 -179
  381. package/src/views/page-system/permission/modal/submit-modal.less +0 -146
  382. package/src/views/page-system/permission/modal/submit-modal.tsx +0 -650
  383. package/src/views/page-system/role/index.tsx +0 -163
  384. package/src/views/page-system/role/modal/detail-modal.tsx +0 -127
  385. package/src/views/page-system/role/modal/permission-assign-group-rules.ts +0 -86
  386. package/src/views/page-system/role/modal/permission-modal.tsx +0 -111
  387. package/src/views/page-system/role/modal/role-modal-shell-styles.ts +0 -21
  388. package/src/views/page-system/role/modal/role-permission-assign-panel.tsx +0 -916
  389. package/src/views/page-system/role/modal/role-permission-assign-shared.ts +0 -1047
  390. package/src/views/page-system/role/modal/submit-modal.tsx +0 -193
  391. package/src/views/page-system/sys-config/index.tsx +0 -294
  392. package/src/views/page-system/user/components/user-role-column.tsx +0 -87
  393. package/src/views/page-system/user/index.tsx +0 -439
  394. package/src/views/page-system/user/modal/assign-roles-modal.tsx +0 -389
  395. package/src/views/page-system/user/modal/detail-modal.tsx +0 -72
  396. package/src/views/page-system/user/modal/modal-style/submit-modal.less +0 -40
  397. package/src/views/page-system/user/modal/submit-modal.less +0 -40
  398. package/src/views/page-system/user/modal/submit-modal.tsx +0 -287
  399. package/src/views/page-system/user/userFormShared.ts +0 -51
  400. package/tailwind.config.js +0 -17
  401. package/tsconfig.app.json +0 -48
  402. package/tsconfig.json +0 -11
  403. package/tsconfig.node.json +0 -26
  404. package/vite.config.ts +0 -272
  405. /package/{public → dist}/favicon.ico +0 -0
  406. /package/{public → dist}/vite.svg +0 -0
@@ -1,711 +0,0 @@
1
- /**
2
- * Mock 数据管理 - 用于本地开发和测试
3
- * 当 API 不可用时自动启用
4
- */
5
-
6
- // ==================== 用户管理 Mock 数据 ====================
7
- export const mockUsers = {
8
- items: [
9
- {
10
- id: 1,
11
- name: '系统管理员',
12
- email: 'admin@example.com',
13
- phone: '+86 13800138000',
14
- avatar: '',
15
- status: 1,
16
- roleNames: ['超级管理员'],
17
- roles: ['admin'],
18
- createTime: '2024-01-01 10:00:00',
19
- created_at: '2024-01-01T10:00:00Z',
20
- },
21
- {
22
- id: 2,
23
- name: '张三',
24
- email: 'zhangsan@example.com',
25
- phone: '+86 13900139000',
26
- avatar: '',
27
- status: 1,
28
- roleNames: ['普通用户'],
29
- roles: ['user'],
30
- createTime: '2024-01-15 14:30:00',
31
- created_at: '2024-01-15T14:30:00Z',
32
- },
33
- {
34
- id: 3,
35
- name: '李四',
36
- email: 'lisi@example.com',
37
- phone: '+86 13700137000',
38
- avatar: '',
39
- status: 0,
40
- roleNames: ['编辑人员'],
41
- roles: ['editor'],
42
- createTime: '2024-02-01 09:15:00',
43
- created_at: '2024-02-01T09:15:00Z',
44
- },
45
- {
46
- id: 4,
47
- name: '王五',
48
- email: 'wangwu@example.com',
49
- phone: '+86 13600136000',
50
- avatar: '',
51
- status: 1,
52
- roleNames: ['普通用户', '编辑人员'],
53
- roles: ['user', 'editor'],
54
- createTime: '2024-02-10 16:45:00',
55
- created_at: '2024-02-10T16:45:00Z',
56
- },
57
- {
58
- id: 5,
59
- name: '赵六',
60
- email: 'zhaoliu@example.com',
61
- phone: '+86 13500135000',
62
- avatar: '',
63
- status: 0,
64
- roleNames: ['普通用户'],
65
- roles: ['user'],
66
- createTime: '2024-03-05 11:20:00',
67
- created_at: '2024-03-05T11:20:00Z',
68
- },
69
- ],
70
- total: 5,
71
- page: 1,
72
- page_size: 10,
73
- pages: 1,
74
- }
75
-
76
- // ==================== 角色管理 Mock 数据 ====================
77
- export const mockRoles = {
78
- items: [
79
- {
80
- id: 1,
81
- name: 'admin',
82
- email: 'admin@example.com',
83
- description: '系统管理员',
84
- permissions: ['*'],
85
- created_at: '2024-01-01T00:00:00Z',
86
- },
87
- {
88
- id: 2,
89
- name: 'default user',
90
- email: 'user1@example.com',
91
- description: '普通用户',
92
- permissions: ['basic:read'],
93
- created_at: '2024-01-01T00:00:00Z',
94
- },
95
- {
96
- id: 3,
97
- name: 'editor',
98
- email: 'editor@example.com',
99
- description: '编辑人员',
100
- permissions: ['content:edit', 'content:read'],
101
- created_at: '2024-01-10T00:00:00Z',
102
- },
103
- ],
104
- total: 3,
105
- }
106
-
107
- // ==================== 部门管理 Mock 数据 ====================
108
- export const mockDepartments = {
109
- tree: [
110
- {
111
- id: 1,
112
- name: '总公司',
113
- code: 'HQ',
114
- parent_id: null,
115
- level: 0,
116
- path: '/1/',
117
- is_active: true,
118
- description: '集团总部',
119
- sort_order: 1,
120
- created_at: '2026-03-31T03:16:41.396605Z',
121
- updated_at: '2026-03-31T03:16:41.396605Z',
122
- creator_id: 2,
123
- children: [
124
- {
125
- id: 2,
126
- name: '技术部',
127
- code: 'TECH',
128
- parent_id: 1,
129
- level: 1,
130
- path: '/1/2/',
131
- is_active: true,
132
- description: '技术研发部门',
133
- sort_order: 1,
134
- created_at: '2026-03-31T03:17:45.267689Z',
135
- updated_at: '2026-03-31T03:17:45.267689Z',
136
- creator_id: 2,
137
- children: [
138
- {
139
- id: 3,
140
- name: '前端组',
141
- code: 'FE',
142
- parent_id: 2,
143
- level: 2,
144
- path: '/1/2/3/',
145
- is_active: true,
146
- description: '前端开发团队',
147
- sort_order: 1,
148
- created_at: '2026-03-31T03:25:23.635668Z',
149
- updated_at: '2026-03-31T03:25:23.635668Z',
150
- creator_id: 2,
151
- children: [
152
- {
153
- id: 4,
154
- name: '后端组',
155
- code: 'BE',
156
- parent_id: 3,
157
- level: 3,
158
- path: '/1/2/3/4/',
159
- is_active: true,
160
- description: '后端开发团队',
161
- sort_order: 1,
162
- created_at: '2026-03-31T03:25:29.280021Z',
163
- updated_at: '2026-03-31T03:25:29.280021Z',
164
- creator_id: 2,
165
- children: [],
166
- },
167
- ],
168
- },
169
- ],
170
- },
171
- ],
172
- },
173
- ],
174
- }
175
-
176
- // 部门成员数据池(用于随机生成)
177
- export const departmentMemberPool = [
178
- {
179
- id: 1,
180
- email: 'zhangsan@company.com',
181
- display_name: '张三',
182
- department_role: '前端工程师',
183
- joined_at: '2024-01-15T00:00:00Z',
184
- },
185
- {
186
- id: 2,
187
- email: 'lisi@company.com',
188
- display_name: '李四',
189
- department_role: '高级工程师',
190
- joined_at: '2024-02-01T00:00:00Z',
191
- },
192
- {
193
- id: 3,
194
- email: 'wangwu@company.com',
195
- display_name: '王五',
196
- department_role: '技术专家',
197
- joined_at: '2024-03-10T00:00:00Z',
198
- },
199
- {
200
- id: 4,
201
- email: 'zhaoliu@company.com',
202
- display_name: '赵六',
203
- department_role: '产品经理',
204
- joined_at: '2024-04-05T00:00:00Z',
205
- },
206
- {
207
- id: 5,
208
- email: 'sunqi@company.com',
209
- display_name: '孙七',
210
- department_role: 'UI 设计师',
211
- joined_at: '2024-05-20T00:00:00Z',
212
- },
213
- {
214
- id: 6,
215
- email: 'zhouba@company.com',
216
- display_name: '周八',
217
- department_role: '测试工程师',
218
- joined_at: '2024-06-15T00:00:00Z',
219
- },
220
- {
221
- id: 7,
222
- email: 'wujiu@company.com',
223
- display_name: '吴九',
224
- department_role: '运维工程师',
225
- joined_at: '2024-07-01T00:00:00Z',
226
- },
227
- {
228
- id: 8,
229
- email: 'zhengshi@company.com',
230
- display_name: '郑十',
231
- department_role: '架构师',
232
- joined_at: '2024-08-10T00:00:00Z',
233
- },
234
- ]
235
-
236
- export const mockDepartmentMembers = {
237
- items: departmentMemberPool.slice(0, 2),
238
- total: 2,
239
- }
240
-
241
- // ==================== 反馈管理 Mock 数据 ====================
242
- export const mockFeedbacks = {
243
- items: Array.from({ length: 15 }, (_, i) => ({
244
- id: i + 1,
245
- content: `反馈内容 ${i + 1}`,
246
- score: [0, 1][Math.floor(Math.random() * 2)],
247
- status: ['pending', 'approved', 'rejected'][Math.floor(Math.random() * 3)],
248
- created_at: new Date(
249
- Date.now() - Math.random() * 30 * 24 * 60 * 60 * 1000,
250
- ).toISOString(),
251
- user_email: `user${i + 1}@example.com`,
252
- })),
253
- total: 15,
254
- }
255
-
256
- // ==================== 菜单管理 Mock 数据 ====================
257
- // 注意:只返回管理相关的菜单,对话等固定菜单不在此配置
258
- // 仍保留 JSON 结构(便于后续多语言),但字段承载改为 title
259
- const menuTitleJson = (zh: string, en: string) => JSON.stringify({ zh, en })
260
-
261
- export const mockMenus = [
262
- {
263
- "id": "1",
264
- "title": "{\"zh\":\"菜单\",\"en\":\"Menus\"}",
265
- "code": "system",
266
- "level": 0,
267
- "path": "/",
268
- "component": "Root",
269
- "icon": "Home",
270
- "description": "",
271
- "sortOrder": 0.00,
272
- "status": 1,
273
- "fullDisplay": 0,
274
- "parentId": "0",
275
- "children": [
276
- {
277
- "id": "1054898035512840192",
278
- "title": "{\"zh\":\"业务规则\",\"en\":\"Business Rule\"}",
279
- "code": "menu-business-rules",
280
- "level": 1,
281
- "path": "/",
282
- "component": "Main",
283
- "icon": "LibraryBig",
284
- "description": "",
285
- "sortOrder": 1.00,
286
- "status": 1,
287
- "fullDisplay": 0,
288
- "parentId": "1",
289
- "children": [
290
- {
291
- "id": "1054911022143377408",
292
- "title": "{\"zh\":\"业务规则\",\"en\":\"Business Rule\"}",
293
- "code": "business-rules",
294
- "level": 2,
295
- "path": "/business-rules/index",
296
- "component": "/page-menus/business-rules/index",
297
- "icon": "LibraryBig",
298
- "description": "",
299
- "sortOrder": 1.00,
300
- "status": 1,
301
- "fullDisplay": 0,
302
- "parentId": "1054898035512840192",
303
- "children": null,
304
- "parentName": null,
305
- "permTypes": null
306
- }
307
- ],
308
- "parentName": null,
309
- "permTypes": null
310
- },
311
- {
312
- "id": "1056044876136714240",
313
- "title": "{\"zh\":\"知识库管理\",\"en\":\"Knowledge Base\"}",
314
- "code": "menu-knowledge-base",
315
- "level": 1,
316
- "path": "/",
317
- "component": "Main",
318
- "icon": "Database",
319
- "description": "",
320
- "sortOrder": 2.00,
321
- "status": 1,
322
- "fullDisplay": 0,
323
- "parentId": "1",
324
- "children": [
325
- {
326
- "id": "1056047551951671296",
327
- "title": "{\"zh\":\"知识库管理\",\"en\":\"Knowledge Base\"}",
328
- "code": "knowledge-base",
329
- "level": 2,
330
- "path": "/",
331
- "component": "/",
332
- "icon": "Database",
333
- "description": "",
334
- "sortOrder": -1.00,
335
- "status": 1,
336
- "fullDisplay": 0,
337
- "parentId": "1056044876136714240",
338
- "children": null,
339
- "parentName": null,
340
- "permTypes": null
341
- }
342
- ],
343
- "parentName": null,
344
- "permTypes": null
345
- },
346
- {
347
- "id": "1056045223651577856",
348
- "title": "{\"zh\":\"技能管理\",\"en\":\"Skill\"}",
349
- "code": "menu-skill",
350
- "level": 1,
351
- "path": "/",
352
- "component": "Main",
353
- "icon": "Cog",
354
- "description": "",
355
- "sortOrder": 3.00,
356
- "status": 1,
357
- "fullDisplay": 0,
358
- "parentId": "1",
359
- "children": [
360
- {
361
- "id": "1056047693979193344",
362
- "title": "{\"zh\":\"技能管理\",\"en\":\"Skill\"}",
363
- "code": "skill",
364
- "level": 2,
365
- "path": "/skill/index",
366
- "component": "/page-menus/skill/index",
367
- "icon": "Cog",
368
- "description": "",
369
- "sortOrder": 1.00,
370
- "status": 1,
371
- "fullDisplay": 0,
372
- "parentId": "1056045223651577856",
373
- "children": null,
374
- "parentName": null,
375
- "permTypes": null
376
- }
377
- ],
378
- "parentName": null,
379
- "permTypes": null
380
- },
381
- {
382
- "id": "1054898166907801600",
383
- "title": "{\"zh\":\"反馈审查\",\"en\":\"Feedback Review\"}",
384
- "code": "menu-feedback",
385
- "level": 1,
386
- "path": "/",
387
- "component": "Main",
388
- "icon": "MessageSquareQuote",
389
- "description": "",
390
- "sortOrder": 4.00,
391
- "status": 1,
392
- "fullDisplay": 0,
393
- "parentId": "1",
394
- "children": [
395
- {
396
- "id": "1054911370929115136",
397
- "title": "{\"zh\":\"反馈审查\",\"en\":\"Feedback Review\"}",
398
- "code": "feedback-manage",
399
- "level": 2,
400
- "path": "/feedback/index",
401
- "component": "/page-menus/feedback/index",
402
- "icon": "MessageSquareQuote",
403
- "description": "",
404
- "sortOrder": 0.00,
405
- "status": 1,
406
- "fullDisplay": 0,
407
- "parentId": "1054898166907801600",
408
- "children": null,
409
- "parentName": null,
410
- "permTypes": null
411
- }
412
- ],
413
- "parentName": null,
414
- "permTypes": null
415
- },
416
- {
417
- "id": "1054898321656647680",
418
- "title": "{\"zh\":\"系统日志\",\"en\":\"System Log\"}",
419
- "code": "menu-system-logs",
420
- "level": 1,
421
- "path": "/",
422
- "component": "Main",
423
- "icon": "FileText",
424
- "description": "",
425
- "sortOrder": 5.00,
426
- "status": 1,
427
- "fullDisplay": 0,
428
- "parentId": "1",
429
- "children": [
430
- {
431
- "id": "1054912501755416576",
432
- "title": "{\"zh\":\"系统日志\",\"en\":\"System Log\"}",
433
- "code": "system-logs",
434
- "level": 2,
435
- "path": "/system-logs/index",
436
- "component": "/page-system/logs/index",
437
- "icon": "FileText",
438
- "description": "",
439
- "sortOrder": 1.00,
440
- "status": 1,
441
- "fullDisplay": 0,
442
- "parentId": "1054898321656647680",
443
- "children": null,
444
- "parentName": null,
445
- "permTypes": null
446
- }
447
- ],
448
- "parentName": null,
449
- "permTypes": null
450
- },
451
- {
452
- "id": "1056045683586371584",
453
- "title": "{\"zh\":\"智能体配置\",\"en\":\"Agent Configuration\"}",
454
- "code": "menu-agent-configuration",
455
- "level": 1,
456
- "path": "/",
457
- "component": "Main",
458
- "icon": "UserCog",
459
- "description": "",
460
- "sortOrder": 6.00,
461
- "status": 1,
462
- "fullDisplay": 0,
463
- "parentId": "1",
464
- "children": [
465
- {
466
- "id": "1056047871767351296",
467
- "title": "{\"zh\":\"智能体配置\",\"en\":\"Agent Configuration\"}",
468
- "code": "agent-configuration",
469
- "level": 2,
470
- "path": "/agent-config/index",
471
- "component": "/page-system/agent-config/index",
472
- "icon": "UserCog",
473
- "description": "",
474
- "sortOrder": 6.00,
475
- "status": 1,
476
- "fullDisplay": 0,
477
- "parentId": "1056045683586371584",
478
- "children": null,
479
- "parentName": null,
480
- "permTypes": null
481
- }
482
- ],
483
- "parentName": null,
484
- "permTypes": null
485
- },
486
- {
487
- "id": "1056046571700883456",
488
- "title": "{\"zh\":\"系统管理\",\"en\":\"System Manage\"}",
489
- "code": "menu-system-manage",
490
- "level": 1,
491
- "path": "/",
492
- "component": "Main",
493
- "icon": "Settings",
494
- "description": "",
495
- "sortOrder": 7.00,
496
- "status": 1,
497
- "fullDisplay": 0,
498
- "parentId": "1",
499
- "children": [
500
- {
501
- "id": "1056047979019898880",
502
- "title": "{\"zh\":\"系统设置\",\"en\":\"System Setting\"}",
503
- "code": "system-settings",
504
- "level": 2,
505
- "path": "/sys-config/index",
506
- "component": "/page-system/sys-config/index",
507
- "icon": "Settings",
508
- "description": "",
509
- "sortOrder": 7.00,
510
- "status": 1,
511
- "fullDisplay": 0,
512
- "parentId": "1056046571700883456",
513
- "children": null,
514
- "parentName": null,
515
- "permTypes": null
516
- },
517
- {
518
- "id": "1054899268340420608",
519
- "title": "{\"zh\":\"部门管理\",\"en\":\"Department\"}",
520
- "code": "department",
521
- "level": 2,
522
- "path": "/department/index",
523
- "component": "/page-system/department/index",
524
- "icon": "HousePlus",
525
- "description": "",
526
- "sortOrder": 8.00,
527
- "status": 1,
528
- "fullDisplay": 0,
529
- "parentId": "1056046571700883456",
530
- "children": null,
531
- "parentName": null,
532
- "permTypes": null
533
- },
534
- {
535
- "id": "1054900585502871552",
536
- "title": "{\"zh\":\"角色管理\",\"en\":\"Role\"}",
537
- "code": "role",
538
- "level": 2,
539
- "path": "/roles/index",
540
- "component": "/page-system/role/index",
541
- "icon": "ShieldUser",
542
- "description": "",
543
- "sortOrder": 9.00,
544
- "status": 1,
545
- "fullDisplay": 0,
546
- "parentId": "1056046571700883456",
547
- "children": null,
548
- "parentName": null,
549
- "permTypes": null
550
- },
551
- {
552
- "id": "1054898909031174144",
553
- "title": "{\"zh\":\"用户管理\",\"en\":\"User\"}",
554
- "code": "user",
555
- "level": 2,
556
- "path": "/user/index",
557
- "component": "/page-system/user/index",
558
- "icon": "Users",
559
- "description": "",
560
- "sortOrder": 10.00,
561
- "status": 1,
562
- "fullDisplay": 0,
563
- "parentId": "1056046571700883456",
564
- "children": null,
565
- "parentName": null,
566
- "permTypes": null
567
- },
568
- {
569
- "id": "1056048093708947456",
570
- "title": "{\"zh\":\"数据字典\",\"en\":\"Data Dictionary\"}",
571
- "code": "dict",
572
- "level": 2,
573
- "path": "/dict/index",
574
- "component": "/page-system/dict/index",
575
- "icon": "BookOpen",
576
- "description": "",
577
- "sortOrder": 11.00,
578
- "status": 1,
579
- "fullDisplay": 0,
580
- "parentId": "1056046571700883456",
581
- "children": null,
582
- "parentName": null,
583
- "permTypes": null
584
- },
585
- {
586
- "id": "1054913118896918528",
587
- "title": "{\"zh\":\"菜单管理\",\"en\":\"Menu\"}",
588
- "code": "menu",
589
- "level": 2,
590
- "path": "/menu/index",
591
- "component": "/page-system/menu/index",
592
- "icon": "SlidersHorizontal",
593
- "description": "",
594
- "sortOrder": 12.00,
595
- "status": 1,
596
- "fullDisplay": 0,
597
- "parentId": "1056046571700883456",
598
- "children": null,
599
- "parentName": null,
600
- "permTypes": null
601
- },
602
- {
603
- "id": "1054900893914238976",
604
- "title": "{\"zh\":\"权限管理\",\"en\":\"Permission\"}",
605
- "code": "permission",
606
- "level": 2,
607
- "path": "/permission/index",
608
- "component": "/page-system/permission/index",
609
- "icon": "Lock",
610
- "description": "",
611
- "sortOrder": 13.00,
612
- "status": 1,
613
- "fullDisplay": 0,
614
- "parentId": "1056046571700883456",
615
- "children": null,
616
- "parentName": null,
617
- "permTypes": null
618
- }
619
- ],
620
- "parentName": null,
621
- "permTypes": null
622
- }
623
- ],
624
- "parentName": null,
625
- "permTypes": null
626
- }
627
- ]
628
-
629
- // ==================== 通用类型定义 ====================
630
- export interface MockResponse<T> {
631
- data: T
632
- config?: any
633
- }
634
-
635
- export interface MockApiConfig {
636
- enabled: boolean
637
- delay?: number // 模拟网络延迟(毫秒)
638
- debug?: boolean
639
- }
640
-
641
- // ==================== Mock 配置管理器 ====================
642
- class MockManager {
643
- private config: MockApiConfig = {
644
- enabled: false,
645
- delay: 300,
646
- debug: true,
647
- }
648
-
649
- /**
650
- * 启用 Mock
651
- */
652
- enable(delay = 300) {
653
- this.config.enabled = true
654
- this.config.delay = delay
655
- if (this.config.debug) {
656
- console.log('[Mock] Mock mode enabled')
657
- }
658
- }
659
-
660
- /**
661
- * 禁用 Mock 模式
662
- */
663
- disable() {
664
- this.config.enabled = false
665
- if (this.config.debug) {
666
- console.log('[Mock] Mock mode disabled')
667
- }
668
- }
669
-
670
- /**
671
- * 检查是否启用 Mock
672
- */
673
- isEnabled(): boolean {
674
- return this.config.enabled
675
- }
676
-
677
- /**
678
- * 模拟 API 响应
679
- */
680
- async response<T>(data: T, config?: any): Promise<MockResponse<T>> {
681
- if (this.config.delay && this.config.delay > 0) {
682
- await new Promise((resolve) => setTimeout(resolve, this.config.delay))
683
- }
684
-
685
- if (this.config.debug) {
686
- console.log('[Mock] Response:', { data, config })
687
- }
688
-
689
- return { data, config }
690
- }
691
-
692
- /**
693
- * 模拟错误响应
694
- */
695
- async error(message: string, status = 500) {
696
- if (this.config.delay && this.config.delay > 0) {
697
- await new Promise((resolve) => setTimeout(resolve, this.config.delay))
698
- }
699
-
700
- const error = new Error(message)
701
- ;(error as any).response = {
702
- status,
703
- data: { detail: message },
704
- }
705
-
706
- throw error
707
- }
708
- }
709
-
710
- export const mockManager = new MockManager()
711
- export default mockManager