@liujitcn/kratos-admin-system 0.0.29 → 0.0.32

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 (332) hide show
  1. package/README.md +46 -15
  2. package/dist/package/declarations/src/api/base/v1/notification.d.ts +26 -0
  3. package/dist/package/declarations/src/api/system/admin/v1/base_api_log.d.ts +10 -0
  4. package/dist/package/declarations/src/api/system/{base_area.d.ts → admin/v1/base_area.d.ts} +1 -1
  5. package/dist/package/declarations/src/api/system/{base_config.d.ts → admin/v1/base_config.d.ts} +5 -1
  6. package/dist/package/declarations/src/api/system/admin/v1/base_dashboard.d.ts +14 -0
  7. package/dist/package/declarations/src/api/system/admin/v1/base_data_access_log.d.ts +10 -0
  8. package/dist/package/declarations/src/api/system/admin/v1/base_dict.d.ts +20 -0
  9. package/dist/package/declarations/src/api/system/admin/v1/base_dict_item.d.ts +18 -0
  10. package/dist/package/declarations/src/api/system/admin/v1/base_file.d.ts +13 -0
  11. package/dist/package/declarations/src/api/system/{base_job.d.ts → admin/v1/base_job.d.ts} +4 -5
  12. package/dist/package/declarations/src/api/system/admin/v1/base_job_log.d.ts +9 -0
  13. package/dist/package/declarations/src/api/system/{base_language.d.ts → admin/v1/base_language.d.ts} +3 -3
  14. package/dist/package/declarations/src/api/system/admin/v1/base_log.d.ts +8 -0
  15. package/dist/package/declarations/src/api/system/admin/v1/base_login_log.d.ts +10 -0
  16. package/dist/package/declarations/src/api/system/admin/v1/base_login_policy.d.ts +19 -0
  17. package/dist/package/declarations/src/api/system/admin/v1/base_message.d.ts +24 -0
  18. package/dist/package/declarations/src/api/system/admin/v1/base_message_category.d.ts +21 -0
  19. package/dist/package/declarations/src/api/system/admin/v1/base_operation_log.d.ts +10 -0
  20. package/dist/package/declarations/src/api/system/admin/v1/base_permission_log.d.ts +10 -0
  21. package/dist/package/declarations/src/api/system/admin/v1/base_policy_evaluation_log.d.ts +10 -0
  22. package/dist/package/declarations/src/api/system/admin/v1/base_session.d.ts +11 -0
  23. package/dist/package/declarations/src/api/system/admin/v1/base_table_archive.d.ts +20 -0
  24. package/dist/package/declarations/src/api/system/admin/v1/base_table_archive_record.d.ts +11 -0
  25. package/dist/package/declarations/src/api/system/admin/v1/base_table_archive_restore.d.ts +14 -0
  26. package/dist/package/declarations/src/api/system/admin/v1/base_table_backup.d.ts +20 -0
  27. package/dist/package/declarations/src/api/system/admin/v1/base_table_backup_record.d.ts +11 -0
  28. package/dist/package/declarations/src/api/system/admin/v1/base_table_backup_restore.d.ts +14 -0
  29. package/dist/package/declarations/src/api/system/admin/v1/base_table_source.d.ts +11 -0
  30. package/dist/package/declarations/src/api/system/admin/v1/cache.d.ts +7 -0
  31. package/dist/package/declarations/src/api/system/admin/v1/oauth_client.d.ts +24 -0
  32. package/dist/package/declarations/src/api/system/base_redact_field.d.ts +20 -0
  33. package/dist/package/declarations/src/api/system/base_redact_policy.d.ts +19 -0
  34. package/dist/package/declarations/src/api/system/base_redact_rule.d.ts +22 -0
  35. package/dist/package/declarations/src/components/DynamicI18nCell.vue.d.ts +5 -1
  36. package/dist/package/declarations/src/components/ForcedPasswordDialog.vue.d.ts +3 -0
  37. package/dist/package/declarations/src/components/LogTable.vue.d.ts +52 -0
  38. package/dist/package/declarations/src/components/Notification.vue.d.ts +3 -0
  39. package/dist/package/declarations/src/components/dynamicI18n.d.ts +4 -7
  40. package/dist/package/declarations/src/components/log.d.ts +20 -0
  41. package/dist/package/declarations/src/config/base-log-fallback.d.ts +7 -0
  42. package/dist/package/declarations/src/config/database-backup.d.ts +12 -0
  43. package/dist/package/declarations/src/config/index.d.ts +7 -0
  44. package/dist/package/declarations/src/config/types.d.ts +56 -0
  45. package/dist/package/declarations/src/locales/generated.d.ts +1968 -88
  46. package/dist/package/declarations/src/rpc/base/v1/login.d.ts +151 -0
  47. package/dist/package/declarations/src/rpc/base/v1/notification.d.ts +306 -0
  48. package/dist/package/declarations/src/rpc/base/v1/oauth.d.ts +25 -0
  49. package/dist/package/declarations/src/rpc/base/v1/oauth_client.d.ts +23 -0
  50. package/dist/package/declarations/src/rpc/system/admin/v1/auth.d.ts +13 -0
  51. package/dist/package/declarations/src/rpc/system/admin/v1/base_api.d.ts +2 -0
  52. package/dist/package/declarations/src/rpc/system/admin/v1/base_api_log.d.ts +84 -0
  53. package/dist/package/declarations/src/rpc/system/admin/v1/base_config.d.ts +38 -0
  54. package/dist/package/declarations/src/rpc/system/admin/v1/base_dashboard.d.ts +60 -0
  55. package/dist/package/declarations/src/rpc/system/admin/v1/base_data_access_log.d.ts +112 -0
  56. package/dist/package/declarations/src/rpc/system/admin/v1/base_dict.d.ts +0 -101
  57. package/dist/package/declarations/src/rpc/system/admin/v1/base_dict_item.d.ts +107 -0
  58. package/dist/package/declarations/src/rpc/system/admin/v1/base_file.d.ts +73 -0
  59. package/dist/package/declarations/src/rpc/system/admin/v1/base_i18n.d.ts +10 -6
  60. package/dist/package/declarations/src/rpc/system/admin/v1/base_job.d.ts +10 -56
  61. package/dist/package/declarations/src/rpc/system/admin/v1/base_job_log.d.ts +60 -0
  62. package/dist/package/declarations/src/rpc/system/admin/v1/base_log.d.ts +66 -76
  63. package/dist/package/declarations/src/rpc/system/admin/v1/base_login_log.d.ts +92 -0
  64. package/dist/package/declarations/src/rpc/system/admin/v1/base_login_policy.d.ts +179 -0
  65. package/dist/package/declarations/src/rpc/system/admin/v1/base_message.d.ts +193 -0
  66. package/dist/package/declarations/src/rpc/system/admin/v1/base_message_category.d.ts +125 -0
  67. package/dist/package/declarations/src/rpc/system/admin/v1/base_operation_log.d.ts +106 -0
  68. package/dist/package/declarations/src/rpc/system/admin/v1/base_permission_log.d.ts +118 -0
  69. package/dist/package/declarations/src/rpc/system/admin/v1/base_policy_evaluation_log.d.ts +119 -0
  70. package/dist/package/declarations/src/rpc/system/admin/v1/base_redact_common.d.ts +9 -0
  71. package/dist/package/declarations/src/rpc/system/admin/v1/base_redact_field.d.ts +161 -0
  72. package/dist/package/declarations/src/rpc/system/admin/v1/base_redact_policy.d.ts +150 -0
  73. package/dist/package/declarations/src/rpc/system/admin/v1/base_redact_rule.d.ts +111 -0
  74. package/dist/package/declarations/src/rpc/system/admin/v1/base_session.d.ts +33 -0
  75. package/dist/package/declarations/src/rpc/system/admin/v1/base_table_archive.d.ts +90 -0
  76. package/dist/package/declarations/src/rpc/system/admin/v1/base_table_archive_record.d.ts +82 -0
  77. package/dist/package/declarations/src/rpc/system/admin/v1/base_table_archive_restore.d.ts +76 -0
  78. package/dist/package/declarations/src/rpc/system/admin/v1/base_table_backup.d.ts +74 -0
  79. package/dist/package/declarations/src/rpc/system/admin/v1/base_table_backup_record.d.ts +69 -0
  80. package/dist/package/declarations/src/rpc/system/admin/v1/base_table_backup_restore.d.ts +76 -0
  81. package/dist/package/declarations/src/rpc/system/admin/v1/base_table_source.d.ts +16 -0
  82. package/dist/package/declarations/src/rpc/system/admin/v1/base_user.d.ts +18 -3
  83. package/dist/package/declarations/src/rpc/system/admin/v1/cache.d.ts +47 -0
  84. package/dist/package/declarations/src/rpc/system/admin/v1/code_gen_column.d.ts +2 -0
  85. package/dist/package/declarations/src/rpc/system/admin/v1/code_gen_table.d.ts +8 -0
  86. package/dist/package/declarations/src/rpc/system/admin/v1/oauth_client.d.ts +145 -0
  87. package/dist/package/declarations/src/rpc/system/common/v1/common.d.ts +26 -0
  88. package/dist/package/declarations/src/rpc/system/config/v1/system_config.d.ts +8 -0
  89. package/dist/package/declarations/src/{api/system → utils}/code_gen_i18n.d.ts +1 -2
  90. package/dist/package/declarations/src/{api/system → utils}/code_gen_sse.d.ts +1 -1
  91. package/dist/package/declarations/src/utils/notification-response.d.ts +5 -0
  92. package/dist/package/declarations/src/{api/system → utils}/ops_monitoring_sse.d.ts +1 -1
  93. package/dist/package/declarations/src/{api/system → utils}/runtime_log_sse.d.ts +1 -1
  94. package/dist/package/declarations/src/views/base/api-log/index.vue.d.ts +3 -0
  95. package/dist/package/declarations/src/views/base/backup-management/archive-config/index.vue.d.ts +3 -0
  96. package/dist/package/declarations/src/views/base/backup-management/archive-record/index.vue.d.ts +3 -0
  97. package/dist/package/declarations/src/views/base/backup-management/archive-restore/index.vue.d.ts +3 -0
  98. package/dist/package/declarations/src/views/base/backup-management/backup-config/index.vue.d.ts +3 -0
  99. package/dist/package/declarations/src/views/base/backup-management/backup-record/index.vue.d.ts +3 -0
  100. package/dist/package/declarations/src/views/base/backup-management/backup-restore/index.vue.d.ts +3 -0
  101. package/dist/package/declarations/src/views/base/dashboard/index.vue.d.ts +3 -0
  102. package/dist/package/declarations/src/views/base/data-access-log/index.vue.d.ts +3 -0
  103. package/dist/package/declarations/src/views/base/file/index.vue.d.ts +3 -0
  104. package/dist/package/declarations/src/views/base/login-log/index.vue.d.ts +3 -0
  105. package/dist/package/declarations/src/views/base/login-policy/format.d.ts +2 -0
  106. package/dist/package/declarations/src/views/base/login-policy/index.vue.d.ts +3 -0
  107. package/dist/package/declarations/src/views/base/message/index.vue.d.ts +3 -0
  108. package/dist/package/declarations/src/views/base/message-category/index.vue.d.ts +3 -0
  109. package/dist/package/declarations/src/views/base/oauth-client/index.vue.d.ts +3 -0
  110. package/dist/package/declarations/src/views/base/operation-log/index.vue.d.ts +3 -0
  111. package/dist/package/declarations/src/views/base/permission-log/index.vue.d.ts +3 -0
  112. package/dist/package/declarations/src/views/base/policy-evaluation-log/index.vue.d.ts +3 -0
  113. package/dist/package/declarations/src/views/base/redact-field/index.vue.d.ts +3 -0
  114. package/dist/package/declarations/src/views/base/redact-policy/index.vue.d.ts +3 -0
  115. package/dist/package/declarations/src/views/base/redact-rule/index.vue.d.ts +3 -0
  116. package/dist/package/declarations/src/views/base/runtime-config/index.vue.d.ts +3 -0
  117. package/dist/package/declarations/src/views/message/inbox/index.vue.d.ts +3 -0
  118. package/dist/package/declarations/src/views/profile/components/session.vue.d.ts +3 -0
  119. package/dist/package/declarations/src/views/tool/cache/index.vue.d.ts +3 -0
  120. package/dist/package/src/api/base/v1/notification.ts +99 -0
  121. package/dist/package/src/api/base/{sse.ts → v1/sse.ts} +4 -4
  122. package/dist/package/src/api/system/{auth.ts → admin/v1/auth.ts} +1 -0
  123. package/dist/package/src/api/system/admin/v1/base_api_log.ts +33 -0
  124. package/dist/package/src/api/system/{base_area.ts → admin/v1/base_area.ts} +1 -1
  125. package/dist/package/src/api/system/{base_config.ts → admin/v1/base_config.ts} +20 -0
  126. package/dist/package/src/api/system/admin/v1/base_dashboard.ts +55 -0
  127. package/dist/package/src/api/system/admin/v1/base_data_access_log.ts +33 -0
  128. package/dist/package/src/api/system/{base_dict.ts → admin/v1/base_dict.ts} +0 -60
  129. package/dist/package/src/api/system/admin/v1/base_dict_item.ts +72 -0
  130. package/dist/package/src/api/system/admin/v1/base_file.ts +43 -0
  131. package/dist/package/src/api/system/{base_job.ts → admin/v1/base_job.ts} +11 -22
  132. package/dist/package/src/api/system/admin/v1/base_job_log.ts +32 -0
  133. package/dist/package/src/api/system/{base_language.ts → admin/v1/base_language.ts} +3 -3
  134. package/dist/package/src/api/system/admin/v1/base_log.ts +23 -0
  135. package/dist/package/src/api/system/admin/v1/base_login_log.ts +33 -0
  136. package/dist/package/src/api/system/admin/v1/base_login_policy.ts +67 -0
  137. package/dist/package/src/api/system/admin/v1/base_message.ts +90 -0
  138. package/dist/package/src/api/system/admin/v1/base_message_category.ts +80 -0
  139. package/dist/package/src/api/system/admin/v1/base_operation_log.ts +33 -0
  140. package/dist/package/src/api/system/admin/v1/base_permission_log.ts +33 -0
  141. package/dist/package/src/api/system/admin/v1/base_policy_evaluation_log.ts +33 -0
  142. package/dist/package/src/api/system/admin/v1/base_session.ts +33 -0
  143. package/dist/package/src/api/system/admin/v1/base_table_archive.ts +70 -0
  144. package/dist/package/src/api/system/admin/v1/base_table_archive_record.ts +33 -0
  145. package/dist/package/src/api/system/admin/v1/base_table_archive_restore.ts +44 -0
  146. package/dist/package/src/api/system/admin/v1/base_table_backup.ts +70 -0
  147. package/dist/package/src/api/system/admin/v1/base_table_backup_record.ts +33 -0
  148. package/dist/package/src/api/system/admin/v1/base_table_backup_restore.ts +44 -0
  149. package/dist/package/src/api/system/admin/v1/base_table_source.ts +33 -0
  150. package/dist/package/src/api/system/admin/v1/cache.ts +22 -0
  151. package/dist/package/src/api/system/{code_gen_column.ts → admin/v1/code_gen_column.ts} +19 -3
  152. package/dist/package/src/api/system/{code_gen_table.ts → admin/v1/code_gen_table.ts} +13 -4
  153. package/dist/package/src/api/system/admin/v1/oauth_client.ts +102 -0
  154. package/dist/package/src/api/system/base_redact_field.ts +25 -0
  155. package/dist/package/src/api/system/base_redact_policy.ts +24 -0
  156. package/dist/package/src/api/system/base_redact_rule.ts +27 -0
  157. package/dist/package/src/components/Ai.vue +1 -1
  158. package/dist/package/src/components/ChangePasswordForm.vue +143 -0
  159. package/dist/package/src/components/DynamicI18nCell.vue +28 -8
  160. package/dist/package/src/components/DynamicI18nEditor.vue +1 -1
  161. package/dist/package/src/components/ForcedPasswordDialog.vue +40 -0
  162. package/dist/package/src/components/LogTable.vue +190 -0
  163. package/dist/package/src/components/Notification.vue +301 -0
  164. package/dist/package/src/components/dynamicI18n.ts +5 -9
  165. package/dist/package/src/components/log.ts +87 -0
  166. package/dist/package/src/config/base-log-fallback.ts +26 -0
  167. package/dist/package/src/config/database-backup.ts +57 -0
  168. package/dist/package/src/config/index.ts +26 -0
  169. package/dist/package/src/config/types.ts +59 -0
  170. package/dist/package/src/locales/README.md +6 -3
  171. package/dist/package/src/locales/en-US.json +511 -29
  172. package/dist/package/src/locales/ja-JP.json +515 -33
  173. package/dist/package/src/locales/zh-CN.json +511 -29
  174. package/dist/package/src/locales/zh-TW.json +514 -32
  175. package/dist/package/src/module.ts +7 -2
  176. package/dist/package/src/rpc/base/v1/login.ts +174 -0
  177. package/dist/package/src/rpc/base/v1/notification.ts +343 -0
  178. package/dist/package/src/rpc/base/v1/oauth.ts +25 -0
  179. package/dist/package/src/rpc/base/v1/oauth_client.ts +33 -0
  180. package/dist/package/src/rpc/system/admin/v1/auth.ts +13 -0
  181. package/dist/package/src/rpc/system/admin/v1/base_api.ts +2 -0
  182. package/dist/package/src/rpc/system/admin/v1/base_api_log.ts +102 -0
  183. package/dist/package/src/rpc/system/admin/v1/base_config.ts +42 -0
  184. package/dist/package/src/rpc/system/admin/v1/base_dashboard.ts +81 -0
  185. package/dist/package/src/rpc/system/admin/v1/base_data_access_log.ts +135 -0
  186. package/dist/package/src/rpc/system/admin/v1/base_dict.ts +0 -112
  187. package/dist/package/src/rpc/system/admin/v1/base_dict_item.ts +126 -0
  188. package/dist/package/src/rpc/system/admin/v1/base_file.ts +88 -0
  189. package/dist/package/src/rpc/system/admin/v1/base_i18n.ts +10 -6
  190. package/dist/package/src/rpc/system/admin/v1/base_job.ts +10 -62
  191. package/dist/package/src/rpc/system/admin/v1/base_job_log.ts +75 -0
  192. package/dist/package/src/rpc/system/admin/v1/base_log.ts +67 -78
  193. package/dist/package/src/rpc/system/admin/v1/base_login_log.ts +113 -0
  194. package/dist/package/src/rpc/system/admin/v1/base_login_policy.ts +212 -0
  195. package/dist/package/src/rpc/system/admin/v1/base_message.ts +236 -0
  196. package/dist/package/src/rpc/system/admin/v1/base_message_category.ts +149 -0
  197. package/dist/package/src/rpc/system/admin/v1/base_operation_log.ts +127 -0
  198. package/dist/package/src/rpc/system/admin/v1/base_permission_log.ts +142 -0
  199. package/dist/package/src/rpc/system/admin/v1/base_policy_evaluation_log.ts +143 -0
  200. package/dist/package/src/rpc/system/admin/v1/base_redact_common.ts +17 -0
  201. package/dist/package/src/rpc/system/admin/v1/base_redact_field.ts +182 -0
  202. package/dist/package/src/rpc/system/admin/v1/base_redact_policy.ts +174 -0
  203. package/dist/package/src/rpc/system/admin/v1/base_redact_rule.ts +131 -0
  204. package/dist/package/src/rpc/system/admin/v1/base_session.ts +44 -0
  205. package/dist/package/src/rpc/system/admin/v1/base_table_archive.ts +109 -0
  206. package/dist/package/src/rpc/system/admin/v1/base_table_archive_record.ts +95 -0
  207. package/dist/package/src/rpc/system/admin/v1/base_table_archive_restore.ts +93 -0
  208. package/dist/package/src/rpc/system/admin/v1/base_table_backup.ts +91 -0
  209. package/dist/package/src/rpc/system/admin/v1/base_table_backup_record.ts +82 -0
  210. package/dist/package/src/rpc/system/admin/v1/base_table_backup_restore.ts +91 -0
  211. package/dist/package/src/rpc/system/admin/v1/base_table_source.ts +26 -0
  212. package/dist/package/src/rpc/system/admin/v1/base_user.ts +18 -3
  213. package/dist/package/src/rpc/system/admin/v1/cache.ts +59 -0
  214. package/dist/package/src/rpc/system/admin/v1/code_gen_column.ts +2 -0
  215. package/dist/package/src/rpc/system/admin/v1/code_gen_table.ts +8 -0
  216. package/dist/package/src/rpc/system/admin/v1/oauth_client.ts +174 -0
  217. package/dist/package/src/rpc/system/common/v1/common.ts +35 -0
  218. package/dist/package/src/rpc/system/config/v1/system_config.ts +16 -0
  219. package/dist/package/src/{api/system → utils}/code_gen_i18n.ts +1 -1
  220. package/dist/package/src/{api/system → utils}/code_gen_sse.ts +1 -1
  221. package/dist/package/src/utils/notification-response.ts +22 -0
  222. package/dist/package/src/{api/system → utils}/ops_monitoring_sse.ts +1 -1
  223. package/dist/package/src/{api/system → utils}/runtime_log_sse.ts +1 -1
  224. package/dist/package/src/views/ai/chat/components/AiMarkdown.vue +1 -1
  225. package/dist/package/src/views/ai/chat/components/ChatPanel.vue +4 -6
  226. package/dist/package/src/views/ai/chat/components/XSender.vue +1 -1
  227. package/dist/package/src/views/ai/chat/index.vue +3 -3
  228. package/dist/package/src/views/ai/chat/message.ts +2 -3
  229. package/dist/package/src/views/base/api/index.vue +4 -4
  230. package/dist/package/src/views/base/api-log/index.vue +94 -0
  231. package/dist/package/src/views/base/area/index.vue +1 -1
  232. package/dist/package/src/views/base/backup-management/archive-config/index.vue +151 -0
  233. package/dist/package/src/views/base/backup-management/archive-record/index.vue +44 -0
  234. package/dist/package/src/views/base/backup-management/archive-restore/index.vue +59 -0
  235. package/dist/package/src/views/base/backup-management/backup-config/index.vue +119 -0
  236. package/dist/package/src/views/base/backup-management/backup-record/index.vue +41 -0
  237. package/dist/package/src/views/base/backup-management/backup-restore/index.vue +66 -0
  238. package/dist/package/src/views/base/config/index.vue +19 -28
  239. package/dist/package/src/views/base/dashboard/index.vue +202 -0
  240. package/dist/package/src/views/base/data-access-log/index.vue +96 -0
  241. package/dist/package/src/views/base/dept/index.vue +11 -11
  242. package/dist/package/src/views/base/dict/index.vue +7 -7
  243. package/dist/package/src/views/base/dict/item.vue +14 -14
  244. package/dist/package/src/views/base/file/index.vue +323 -0
  245. package/dist/package/src/views/base/job/index.vue +63 -8
  246. package/dist/package/src/views/base/job/log.vue +38 -11
  247. package/dist/package/src/views/base/language/index.vue +3 -2
  248. package/dist/package/src/views/base/login-log/index.vue +96 -0
  249. package/dist/package/src/views/base/login-policy/format.ts +4 -0
  250. package/dist/package/src/views/base/login-policy/index.vue +530 -0
  251. package/dist/package/src/views/base/menu/index.vue +19 -19
  252. package/dist/package/src/views/base/message/index.vue +712 -0
  253. package/dist/package/src/views/base/message-category/index.vue +387 -0
  254. package/dist/package/src/views/base/migration/index.vue +2 -2
  255. package/dist/package/src/views/base/oauth-client/index.vue +421 -0
  256. package/dist/package/src/views/base/operation-log/index.vue +86 -0
  257. package/dist/package/src/views/base/permission-log/index.vue +90 -0
  258. package/dist/package/src/views/base/policy-evaluation-log/index.vue +93 -0
  259. package/dist/package/src/views/base/post/index.vue +11 -11
  260. package/dist/package/src/views/base/redact-field/index.vue +59 -0
  261. package/dist/package/src/views/base/redact-policy/index.vue +92 -0
  262. package/dist/package/src/views/base/redact-rule/index.vue +51 -0
  263. package/dist/package/src/views/base/role/index.vue +9 -9
  264. package/dist/package/src/views/base/runtime-config/index.vue +479 -0
  265. package/dist/package/src/views/base/tenant/index.vue +9 -9
  266. package/dist/package/src/views/base/user/components/dept-tree.vue +1 -1
  267. package/dist/package/src/views/base/user/index.vue +86 -47
  268. package/dist/package/src/views/message/inbox/index.vue +276 -0
  269. package/dist/package/src/views/profile/components/base.vue +90 -13
  270. package/dist/package/src/views/profile/components/password.vue +3 -229
  271. package/dist/package/src/views/profile/components/security.vue +477 -64
  272. package/dist/package/src/views/profile/components/session.vue +161 -0
  273. package/dist/package/src/views/profile/index.vue +45 -31
  274. package/dist/package/src/views/tool/api-doc/index.vue +3 -3
  275. package/dist/package/src/views/tool/cache/index.vue +352 -0
  276. package/dist/package/src/views/tool/code-gen/code-preview/index.vue +4 -4
  277. package/dist/package/src/views/tool/code-gen/columns/index.vue +16 -16
  278. package/dist/package/src/views/tool/code-gen/components/CodeGenLocaleEditor.vue +2 -2
  279. package/dist/package/src/views/tool/code-gen/components/CodeGenProgressDialog.vue +2 -2
  280. package/dist/package/src/views/tool/code-gen/config.ts +3 -0
  281. package/dist/package/src/views/tool/code-gen/preview/index.vue +9 -9
  282. package/dist/package/src/views/tool/code-gen/proto/index.vue +10 -12
  283. package/dist/package/src/views/tool/code-gen/table/index.vue +71 -15
  284. package/dist/package/src/views/tool/ops-monitoring/index.vue +55 -116
  285. package/dist/package/src/views/tool/project-doc/index.vue +2 -2
  286. package/dist/package/src/views/tool/runtime-log/index.vue +6 -6
  287. package/package.json +7 -2
  288. package/dist/package/declarations/src/api/system/base_dict.d.ts +0 -32
  289. package/dist/package/declarations/src/api/system/base_log.d.ts +0 -9
  290. package/dist/package/src/api/system/base_log.ts +0 -32
  291. package/dist/package/src/views/base/log/index.vue +0 -339
  292. /package/dist/package/declarations/src/api/base/{ai_message.d.ts → v1/ai_message.d.ts} +0 -0
  293. /package/dist/package/declarations/src/api/base/{ai_session.d.ts → v1/ai_session.d.ts} +0 -0
  294. /package/dist/package/declarations/src/api/base/{ai_tool.d.ts → v1/ai_tool.d.ts} +0 -0
  295. /package/dist/package/declarations/src/api/base/{oauth.d.ts → v1/oauth.d.ts} +0 -0
  296. /package/dist/package/declarations/src/api/base/{sse.d.ts → v1/sse.d.ts} +0 -0
  297. /package/dist/package/declarations/src/api/system/{auth.d.ts → admin/v1/auth.d.ts} +0 -0
  298. /package/dist/package/declarations/src/api/system/{base_api.d.ts → admin/v1/base_api.d.ts} +0 -0
  299. /package/dist/package/declarations/src/api/system/{base_dept.d.ts → admin/v1/base_dept.d.ts} +0 -0
  300. /package/dist/package/declarations/src/api/system/{base_i18n.d.ts → admin/v1/base_i18n.d.ts} +0 -0
  301. /package/dist/package/declarations/src/api/system/{base_menu.d.ts → admin/v1/base_menu.d.ts} +0 -0
  302. /package/dist/package/declarations/src/api/system/{base_migration.d.ts → admin/v1/base_migration.d.ts} +0 -0
  303. /package/dist/package/declarations/src/api/system/{base_post.d.ts → admin/v1/base_post.d.ts} +0 -0
  304. /package/dist/package/declarations/src/api/system/{base_role.d.ts → admin/v1/base_role.d.ts} +0 -0
  305. /package/dist/package/declarations/src/api/system/{base_tenant.d.ts → admin/v1/base_tenant.d.ts} +0 -0
  306. /package/dist/package/declarations/src/api/system/{base_user.d.ts → admin/v1/base_user.d.ts} +0 -0
  307. /package/dist/package/declarations/src/api/system/{code_gen.d.ts → admin/v1/code_gen.d.ts} +0 -0
  308. /package/dist/package/declarations/src/api/system/{code_gen_column.d.ts → admin/v1/code_gen_column.d.ts} +0 -0
  309. /package/dist/package/declarations/src/api/system/{code_gen_proto.d.ts → admin/v1/code_gen_proto.d.ts} +0 -0
  310. /package/dist/package/declarations/src/api/system/{code_gen_table.d.ts → admin/v1/code_gen_table.d.ts} +0 -0
  311. /package/dist/package/declarations/src/api/system/{ops_monitoring.d.ts → admin/v1/ops_monitoring.d.ts} +0 -0
  312. /package/dist/package/declarations/src/api/system/{project_document.d.ts → admin/v1/project_document.d.ts} +0 -0
  313. /package/dist/package/declarations/src/api/system/{runtime_log.d.ts → admin/v1/runtime_log.d.ts} +0 -0
  314. /package/dist/package/declarations/src/{views/base/log/index.vue.d.ts → components/ChangePasswordForm.vue.d.ts} +0 -0
  315. /package/dist/package/src/api/base/{ai_message.ts → v1/ai_message.ts} +0 -0
  316. /package/dist/package/src/api/base/{ai_session.ts → v1/ai_session.ts} +0 -0
  317. /package/dist/package/src/api/base/{ai_tool.ts → v1/ai_tool.ts} +0 -0
  318. /package/dist/package/src/api/base/{oauth.ts → v1/oauth.ts} +0 -0
  319. /package/dist/package/src/api/system/{base_api.ts → admin/v1/base_api.ts} +0 -0
  320. /package/dist/package/src/api/system/{base_dept.ts → admin/v1/base_dept.ts} +0 -0
  321. /package/dist/package/src/api/system/{base_i18n.ts → admin/v1/base_i18n.ts} +0 -0
  322. /package/dist/package/src/api/system/{base_menu.ts → admin/v1/base_menu.ts} +0 -0
  323. /package/dist/package/src/api/system/{base_migration.ts → admin/v1/base_migration.ts} +0 -0
  324. /package/dist/package/src/api/system/{base_post.ts → admin/v1/base_post.ts} +0 -0
  325. /package/dist/package/src/api/system/{base_role.ts → admin/v1/base_role.ts} +0 -0
  326. /package/dist/package/src/api/system/{base_tenant.ts → admin/v1/base_tenant.ts} +0 -0
  327. /package/dist/package/src/api/system/{base_user.ts → admin/v1/base_user.ts} +0 -0
  328. /package/dist/package/src/api/system/{code_gen.ts → admin/v1/code_gen.ts} +0 -0
  329. /package/dist/package/src/api/system/{code_gen_proto.ts → admin/v1/code_gen_proto.ts} +0 -0
  330. /package/dist/package/src/api/system/{ops_monitoring.ts → admin/v1/ops_monitoring.ts} +0 -0
  331. /package/dist/package/src/api/system/{project_document.ts → admin/v1/project_document.ts} +0 -0
  332. /package/dist/package/src/api/system/{runtime_log.ts → admin/v1/runtime_log.ts} +0 -0
@@ -14,7 +14,9 @@
14
14
  <div class="avatar-panel">
15
15
  <div class="avatar-shell">
16
16
  <el-avatar :src="avatarSrc" :size="116" @error="handleAvatarError" />
17
- <el-button class="avatar-trigger" circle type="primary" :icon="Camera" @click="triggerFileUpload" />
17
+ <el-button class="avatar-trigger" circle type="primary" @click="triggerFileUpload">
18
+ <el-icon><Camera /></el-icon>
19
+ </el-button>
18
20
  <input ref="fileInputRef" type="file" class="hidden-input" accept="image/*" @change="handleFileChange" />
19
21
  </div>
20
22
  <div class="avatar-copy">
@@ -41,11 +43,23 @@
41
43
  <span class="detail-value">{{ profile.phone || t("system.profile.value.unbound") }}</span>
42
44
  </div>
43
45
  <div class="detail-item">
44
- <span class="detail-label">{{ t("system.profile.account.field.role") }}</span>
46
+ <span class="detail-label">{{ t("system.profile.account.field.email") }}</span>
47
+ <span class="detail-value">{{ profile.email || t("system.profile.value.unbound") }}</span>
48
+ </div>
49
+ <div class="detail-item">
50
+ <span class="detail-label">{{ t("system.profile.account.field.id_type") }}</span>
51
+ <span class="detail-value">{{ idTypeText }}</span>
52
+ </div>
53
+ <div class="detail-item">
54
+ <span class="detail-label">{{ t("system.profile.account.field.id_code") }}</span>
55
+ <span class="detail-value">{{ profile.id_code || t("system.profile.value.unbound") }}</span>
56
+ </div>
57
+ <div class="detail-item">
58
+ <span class="detail-label">{{ t("common.field.role") }}</span>
45
59
  <span class="detail-value">{{ profile.role_name || "--" }}</span>
46
60
  </div>
47
61
  <div class="detail-item">
48
- <span class="detail-label">{{ t("system.profile.account.field.dept") }}</span>
62
+ <span class="detail-label">{{ t("common.field.department") }}</span>
49
63
  <span class="detail-value">{{ profile.dept_name || "--" }}</span>
50
64
  </div>
51
65
  <div class="detail-item detail-item--wide">
@@ -61,7 +75,7 @@
61
75
  :width="520"
62
76
  @closed="handleDialogClosed"
63
77
  >
64
- <ProForm ref="accountFormRef" :model="accountForm" :fields="accountFormFields" />
78
+ <ProForm ref="accountFormRef" :model="accountForm" :fields="accountFormFields" :rules="accountFormRules" />
65
79
  <template #footer>
66
80
  <div class="dialog-footer">
67
81
  <el-button @click="accountDialogVisible = false">{{ t("common.action.cancel") }}</el-button>
@@ -77,14 +91,14 @@
77
91
  <script setup lang="ts">
78
92
  import { computed, reactive, ref, watch } from "vue";
79
93
  import { t } from "@liujitcn/kratos-admin-core";
80
- import { defProfileAuthService } from "@liujitcn/kratos-admin-system/api/system/auth";
94
+ import { defProfileAuthService } from "@liujitcn/kratos-admin-system/api/system/admin/v1/auth";
81
95
  import type { UserProfileForm } from "@liujitcn/kratos-admin-system/rpc/system/admin/v1/auth";
82
- import { defFileService } from "@liujitcn/kratos-admin-core/api/base/file";
96
+ import { BaseUserIDType } from "@liujitcn/kratos-admin-system/rpc/system/common/v1/common";
97
+ import { defFileService } from "@liujitcn/kratos-admin-core/api/base/v1/file";
83
98
  import defaultAvatar from "@liujitcn/kratos-admin-core/assets/images/avatar.png";
84
99
  import ProDialog from "@liujitcn/kratos-admin-core/components/Dialog/ProDialog.vue";
85
100
  import ProForm from "@liujitcn/kratos-admin-core/components/ProForm/index.vue";
86
101
  import type { ProFormField, ProFormInstance } from "@liujitcn/kratos-admin-core/components/ProForm/interface";
87
- import { Camera } from "@element-plus/icons-vue";
88
102
 
89
103
  /** 个人中心基础资料组件属性。 */
90
104
  interface ProfileBaseProps {
@@ -103,9 +117,12 @@ const accountFormRef = ref<ProFormInstance>();
103
117
  const accountDialogVisible = ref(false);
104
118
  const submitLoading = ref(false);
105
119
  const avatarSrc = ref(defaultAvatar);
106
- const accountForm = reactive<Pick<UserProfileForm, "nick_name" | "gender">>({
120
+ const accountForm = reactive<Pick<UserProfileForm, "nick_name" | "gender" | "email" | "id_type" | "id_code">>({
107
121
  nick_name: "",
108
- gender: 3
122
+ gender: 3,
123
+ email: "",
124
+ id_type: BaseUserIDType.BASE_USER_ID_TYPE_UNSPECIFIED,
125
+ id_code: ""
109
126
  });
110
127
 
111
128
  const accountFormFields = computed<ProFormField[]>(() => [
@@ -120,9 +137,52 @@ const accountFormFields = computed<ProFormField[]>(() => [
120
137
  label: t("system.profile.account.field.gender"),
121
138
  component: "dict",
122
139
  props: { code: "base_user_gender" }
140
+ },
141
+ {
142
+ prop: "email",
143
+ label: t("system.profile.account.field.email"),
144
+ component: "input",
145
+ props: { placeholder: t("system.base.user.placeholder.email") }
146
+ },
147
+ {
148
+ prop: "id_type",
149
+ label: t("system.profile.account.field.id_type"),
150
+ component: "select",
151
+ options: idTypeOptions.value,
152
+ props: { placeholder: t("common.placeholder.select") }
153
+ },
154
+ {
155
+ prop: "id_code",
156
+ label: t("system.profile.account.field.id_code"),
157
+ component: "input",
158
+ props: { placeholder: t("system.base.user.placeholder.id_code") }
123
159
  }
124
160
  ]);
125
161
 
162
+ const idTypeOptions = computed(() => [
163
+ { label: t("system.base.user.id_type.unspecified"), value: BaseUserIDType.BASE_USER_ID_TYPE_UNSPECIFIED },
164
+ { label: t("system.base.user.id_type.id_card"), value: BaseUserIDType.BASE_USER_ID_TYPE_ID_CARD },
165
+ { label: t("system.base.user.id_type.passport"), value: BaseUserIDType.BASE_USER_ID_TYPE_PASSPORT },
166
+ { label: t("system.base.user.id_type.hk_macao_permit"), value: BaseUserIDType.BASE_USER_ID_TYPE_HK_MACAO_PERMIT },
167
+ { label: t("system.base.user.id_type.taiwan_permit"), value: BaseUserIDType.BASE_USER_ID_TYPE_TAIWAN_PERMIT },
168
+ {
169
+ label: t("system.base.user.id_type.foreign_permanent_residence"),
170
+ value: BaseUserIDType.BASE_USER_ID_TYPE_FOREIGN_PERMANENT_RESIDENCE
171
+ },
172
+ { label: t("system.base.user.id_type.other"), value: BaseUserIDType.BASE_USER_ID_TYPE_OTHER }
173
+ ]);
174
+
175
+ const accountFormRules = computed(() => ({
176
+ email: [{ type: "email", message: t("system.base.user.validation.email_invalid"), trigger: "blur" }],
177
+ id_code: [
178
+ {
179
+ pattern: /^[A-Za-z0-9][A-Za-z0-9-]{0,63}$/,
180
+ message: t("system.base.user.validation.id_code_invalid"),
181
+ trigger: "blur"
182
+ }
183
+ ]
184
+ }));
185
+
126
186
  /** 根据资料中的性别值输出展示文案。 */
127
187
  const genderText = computed(() => {
128
188
  if (props.profile.gender === 1) return t("common.value.male");
@@ -130,6 +190,11 @@ const genderText = computed(() => {
130
190
  return t("system.profile.value.private");
131
191
  });
132
192
 
193
+ /** 根据证件类型输出展示文案。 */
194
+ const idTypeText = computed(() => {
195
+ return idTypeOptions.value.find(item => item.value === props.profile.id_type)?.label ?? t("system.profile.value.unbound");
196
+ });
197
+
133
198
  /**
134
199
  * 同步个人中心头像展示,优先使用用户头像,为空时回退默认头像。
135
200
  *
@@ -145,6 +210,9 @@ watch(
145
210
  profile => {
146
211
  accountForm.nick_name = profile.nick_name;
147
212
  accountForm.gender = profile.gender;
213
+ accountForm.email = profile.email;
214
+ accountForm.id_type = profile.id_type;
215
+ accountForm.id_code = profile.id_code;
148
216
  syncAvatarSrc(profile.avatar);
149
217
  },
150
218
  { immediate: true, deep: true }
@@ -165,6 +233,9 @@ function triggerFileUpload() {
165
233
  function openAccountDialog() {
166
234
  accountForm.nick_name = props.profile.nick_name;
167
235
  accountForm.gender = props.profile.gender;
236
+ accountForm.email = props.profile.email;
237
+ accountForm.id_type = props.profile.id_type;
238
+ accountForm.id_code = props.profile.id_code;
168
239
  accountDialogVisible.value = true;
169
240
  }
170
241
 
@@ -201,7 +272,10 @@ async function handleSubmitAccount() {
201
272
  user_profile: {
202
273
  ...props.profile,
203
274
  nick_name: accountForm.nick_name,
204
- gender: accountForm.gender
275
+ gender: accountForm.gender,
276
+ email: accountForm.email,
277
+ id_type: accountForm.id_type,
278
+ id_code: accountForm.id_code
205
279
  }
206
280
  });
207
281
  ElMessage.success(t("system.profile.account.message.updated"));
@@ -217,13 +291,16 @@ function handleDialogClosed() {
217
291
  accountFormRef.value?.clearValidate();
218
292
  accountForm.nick_name = props.profile.nick_name;
219
293
  accountForm.gender = props.profile.gender;
294
+ accountForm.email = props.profile.email;
295
+ accountForm.id_type = props.profile.id_type;
296
+ accountForm.id_code = props.profile.id_code;
220
297
  }
221
298
  </script>
222
299
 
223
300
  <style scoped lang="scss">
224
301
  .base-card {
225
302
  border: 1px solid #ebeef5;
226
- border-radius: 12px;
303
+ border-radius: var(--admin-page-radius);
227
304
  }
228
305
  :deep(.base-card .el-card__header) {
229
306
  padding: 18px 20px;
@@ -259,7 +336,7 @@ function handleDialogClosed() {
259
336
  text-align: center;
260
337
  background: #f8fafc;
261
338
  border: 1px solid #eef2f6;
262
- border-radius: 12px;
339
+ border-radius: var(--admin-page-radius);
263
340
  }
264
341
  .avatar-shell {
265
342
  position: relative;
@@ -296,7 +373,7 @@ function handleDialogClosed() {
296
373
  padding: 16px;
297
374
  background: #ffffff;
298
375
  border: 1px solid #f0f2f5;
299
- border-radius: 10px;
376
+ border-radius: var(--admin-page-radius);
300
377
  }
301
378
  .detail-item--wide {
302
379
  grid-column: 1 / -1;
@@ -10,189 +10,20 @@
10
10
  <el-tag type="warning" effect="plain">{{ t("system.profile.password.value.strong_recommended") }}</el-tag>
11
11
  </div>
12
12
  </template>
13
- <div class="password-layout">
14
- <div class="password-form-wrap">
15
- <ProForm
16
- ref="passwordFormRef"
17
- :model="passwordForm"
18
- :fields="passwordFormFields"
19
- :rules="passwordFormRules"
20
- />
21
- <PasswordStrength :password="passwordForm.new_pwd" class="password-form-wrap__strength" />
22
- <div class="password-footer">
23
- <el-button @click="resetPasswordForm">{{ t("common.action.reset") }}</el-button>
24
- <el-button type="primary" :loading="submitLoading" @click="handleSubmitPassword">
25
- {{ t("system.profile.password.action.update") }}
26
- </el-button>
27
- </div>
28
- </div>
29
- <div class="password-tips">
30
- <div class="tip-card">
31
- <span class="tip-badge">01</span>
32
- <strong>{{ t("system.profile.password.tip.unique_title") }}</strong>
33
- <p>{{ t("system.profile.password.tip.unique_description") }}</p>
34
- </div>
35
- <div class="tip-card">
36
- <span class="tip-badge">02</span>
37
- <strong>{{ t("system.profile.password.tip.strength_title") }}</strong>
38
- <p>{{ t("system.profile.password.tip.strength_description") }}</p>
39
- </div>
40
- <div class="tip-card">
41
- <span class="tip-badge">03</span>
42
- <strong>{{ t("system.profile.password.tip.record_title") }}</strong>
43
- <p>{{ t("system.profile.password.tip.record_description") }}</p>
44
- </div>
45
- </div>
46
- </div>
13
+ <ChangePasswordForm />
47
14
  </el-card>
48
15
  </div>
49
16
  </template>
50
17
 
51
18
  <script setup lang="ts">
52
- import { computed, reactive, ref } from "vue";
53
- import { useRouter } from "vue-router";
54
19
  import { t } from "@liujitcn/kratos-admin-core";
55
- import { defProfileAuthService } from "@liujitcn/kratos-admin-system/api/system/auth";
56
- import type { UserPasswordForm } from "@liujitcn/kratos-admin-system/rpc/system/admin/v1/auth";
57
- import PasswordStrength from "@liujitcn/kratos-admin-core/components/PasswordStrength/index.vue";
58
- import ProForm from "@liujitcn/kratos-admin-core/components/ProForm/index.vue";
59
- import type { ProFormField, ProFormInstance } from "@liujitcn/kratos-admin-core/components/ProForm/interface";
60
- import { LOGIN_URL } from "@liujitcn/kratos-admin-core/config";
61
- import { useUserStore } from "@liujitcn/kratos-admin-core/stores/runtime";
62
- import {
63
- PASSWORD_CRYPTO_SCENE,
64
- encryptPassword,
65
- getPasswordStrength,
66
- validatePasswordStrengthValue
67
- } from "@liujitcn/kratos-admin-core/security";
68
-
69
- /** 修改密码表单状态,明文只在前端校验和加密前短暂保存。 */
70
- interface UserPasswordFormState {
71
- /** 原密码明文只保留在前端表单中,提交前转换为密码密文。 */
72
- old_pwd: string;
73
- /** 新密码明文只保留在前端表单中,提交前转换为密码密文。 */
74
- new_pwd: string;
75
- /** 确认密码只用于前端一致性校验,不提交后端。 */
76
- confirm_pwd: string;
77
- }
78
-
79
- const router = useRouter();
80
- const userStore = useUserStore();
81
- const passwordFormRef = ref<ProFormInstance>();
82
- const submitLoading = ref(false);
83
- const passwordForm = reactive<UserPasswordFormState>({
84
- old_pwd: "",
85
- new_pwd: "",
86
- confirm_pwd: ""
87
- });
88
-
89
- const passwordFormFields = computed<ProFormField[]>(() => [
90
- {
91
- prop: "old_pwd",
92
- label: t("system.profile.password.field.old_password"),
93
- component: "password",
94
- props: { placeholder: t("system.profile.password.placeholder.old_password") }
95
- },
96
- {
97
- prop: "new_pwd",
98
- label: t("system.profile.password.field.new_password"),
99
- component: "password",
100
- props: { placeholder: t("system.profile.password.placeholder.new_password") }
101
- },
102
- {
103
- prop: "confirm_pwd",
104
- label: t("system.profile.password.field.confirm_password"),
105
- component: "password",
106
- props: { placeholder: t("system.profile.password.placeholder.confirm_password") }
107
- }
108
- ]);
109
-
110
- const passwordFormRules = computed(() => ({
111
- old_pwd: [{ required: true, message: t("system.profile.password.placeholder.old_password"), trigger: "blur" }],
112
- new_pwd: [
113
- { required: true, message: t("system.profile.password.placeholder.new_password"), trigger: "blur" },
114
- { validator: validatePasswordStrength, trigger: "blur" }
115
- ],
116
- confirm_pwd: [{ required: true, message: t("system.profile.password.placeholder.confirm_password"), trigger: "blur" }]
117
- }));
118
-
119
- /** 统一计算当前新密码强度,供展示和提交校验复用。 */
120
- const passwordStrength = computed(() => getPasswordStrength(passwordForm.new_pwd));
121
-
122
- /** 提交修改密码请求,并校验两次输入的一致性。 */
123
- async function handleSubmitPassword() {
124
- if (!(await passwordFormRef.value?.validate())) return;
125
- if (passwordForm.new_pwd !== passwordForm.confirm_pwd) {
126
- ElMessage.error(t("system.profile.password.message.mismatch"));
127
- return;
128
- }
129
- if (!passwordStrength.value.isValid) {
130
- ElMessage.error(t("system.profile.password.message.strength_insufficient"));
131
- return;
132
- }
133
-
134
- submitLoading.value = true;
135
- try {
136
- const oldPwd = await encryptPassword(passwordForm.old_pwd, PASSWORD_CRYPTO_SCENE.PASSWORD_CRYPTO_SCENE_UPDATE_USER_PASSWORD);
137
- const newPwd = await encryptPassword(passwordForm.new_pwd, PASSWORD_CRYPTO_SCENE.PASSWORD_CRYPTO_SCENE_UPDATE_USER_PASSWORD);
138
- const userPassword: UserPasswordForm = {
139
- old_pwd: oldPwd,
140
- new_pwd: newPwd
141
- };
142
- await defProfileAuthService.UpdateUserPassword({ user_password: userPassword });
143
- ElMessage.success(t("system.profile.password.message.updated"));
144
- resetPasswordForm();
145
- await forceRelogin();
146
- } finally {
147
- submitLoading.value = false;
148
- }
149
- }
150
-
151
- /** 重置密码表单内容与校验状态。 */
152
- function resetPasswordForm() {
153
- passwordFormRef.value?.resetFields();
154
- passwordFormRef.value?.clearValidate();
155
- passwordForm.old_pwd = "";
156
- passwordForm.new_pwd = "";
157
- passwordForm.confirm_pwd = "";
158
- }
159
-
160
- /** 修改密码成功后强制重新登录,避免旧登录态继续使用。 */
161
- async function forceRelogin() {
162
- try {
163
- await userStore.logout();
164
- } catch (_error) {
165
- // 若后端已提前让旧令牌失效,前端仍需保证本地登录态被清空。
166
- userStore.clearAuthData();
167
- }
168
- await router.replace(LOGIN_URL);
169
- }
170
-
171
- /**
172
- * 校验新密码强度,必须达到最高强度才允许提交。
173
- *
174
- * @param _rule 表单规则对象
175
- * @param value 当前输入的新密码
176
- * @param callback 校验回调
177
- */
178
- function validatePasswordStrength(_rule: unknown, value: string, callback: (error?: Error) => void) {
179
- if (!value) {
180
- callback();
181
- return;
182
- }
183
- const result = validatePasswordStrengthValue(value);
184
- if (!result.valid) {
185
- callback(new Error(t("core.password.error")));
186
- return;
187
- }
188
- callback();
189
- }
20
+ import ChangePasswordForm from "../../../components/ChangePasswordForm.vue";
190
21
  </script>
191
22
 
192
23
  <style scoped lang="scss">
193
24
  .password-card {
194
25
  border: 1px solid #ebeef5;
195
- border-radius: 12px;
26
+ border-radius: var(--admin-page-radius);
196
27
  }
197
28
  :deep(.password-card .el-card__header) {
198
29
  padding: 18px 20px;
@@ -217,63 +48,6 @@ function validatePasswordStrength(_rule: unknown, value: string, callback: (erro
217
48
  font-size: 13px;
218
49
  color: #909399;
219
50
  }
220
- .password-layout {
221
- display: grid;
222
- grid-template-columns: minmax(0, 1.2fr) minmax(260px, 0.9fr);
223
- gap: 16px;
224
- }
225
- .password-form-wrap,
226
- .tip-card {
227
- padding: 18px;
228
- background: #ffffff;
229
- border: 1px solid #f0f2f5;
230
- border-radius: 10px;
231
- }
232
- .password-form-wrap__strength {
233
- margin-top: 16px;
234
- }
235
- .password-footer {
236
- display: flex;
237
- gap: 12px;
238
- justify-content: flex-end;
239
- margin-top: 24px;
240
- }
241
- .password-tips {
242
- display: flex;
243
- flex-direction: column;
244
- gap: 12px;
245
- }
246
- .tip-badge {
247
- display: inline-flex;
248
- align-items: center;
249
- justify-content: center;
250
- width: 28px;
251
- height: 28px;
252
- margin-bottom: 10px;
253
- font-size: 12px;
254
- font-weight: 700;
255
- color: #409eff;
256
- background: #ecf5ff;
257
- border-radius: 8px;
258
- }
259
- .tip-card strong {
260
- display: block;
261
- margin-bottom: 8px;
262
- font-size: 15px;
263
- color: #303133;
264
- }
265
- .tip-card p {
266
- margin: 0;
267
- font-size: 13px;
268
- line-height: 1.6;
269
- color: #909399;
270
- }
271
-
272
- @media screen and (width <= 960px) {
273
- .password-layout {
274
- grid-template-columns: 1fr;
275
- }
276
- }
277
51
 
278
52
  @media screen and (width <= 640px) {
279
53
  .panel-header {