smart-admin-web 10.5.0

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 (718) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +78 -0
  3. package/dist/App.vue.d.ts +3 -0
  4. package/dist/App.vue.js +54 -0
  5. package/dist/App.vue.js.map +1 -0
  6. package/dist/App2.vue.js +5 -0
  7. package/dist/App2.vue.js.map +1 -0
  8. package/dist/_virtual/_plugin-vue_export-helper.js +10 -0
  9. package/dist/_virtual/_plugin-vue_export-helper.js.map +1 -0
  10. package/dist/api/client.d.ts +29 -0
  11. package/dist/api/client.js +139 -0
  12. package/dist/api/client.js.map +1 -0
  13. package/dist/api/index.d.ts +672 -0
  14. package/dist/api/index.js +638 -0
  15. package/dist/api/index.js.map +1 -0
  16. package/dist/api/reauthGate.d.ts +16 -0
  17. package/dist/api/reauthGate.js +21 -0
  18. package/dist/api/reauthGate.js.map +1 -0
  19. package/dist/api/schema.d.ts +10230 -0
  20. package/dist/assets/icons/ph-subset.json.js +16 -0
  21. package/dist/assets/icons/ph-subset.json.js.map +1 -0
  22. package/dist/assets/oauth/dingtalk.svg.js +5 -0
  23. package/dist/assets/oauth/dingtalk.svg.js.map +1 -0
  24. package/dist/assets/oauth/gitee.svg.js +5 -0
  25. package/dist/assets/oauth/gitee.svg.js.map +1 -0
  26. package/dist/assets/oauth/github.svg.js +5 -0
  27. package/dist/assets/oauth/github.svg.js.map +1 -0
  28. package/dist/assets/oauth/qq.svg.js +5 -0
  29. package/dist/assets/oauth/qq.svg.js.map +1 -0
  30. package/dist/assets/oauth/wechat.svg.js +5 -0
  31. package/dist/assets/oauth/wechat.svg.js.map +1 -0
  32. package/dist/assets/oauth/wecom.svg.js +5 -0
  33. package/dist/assets/oauth/wecom.svg.js.map +1 -0
  34. package/dist/assets/svg/star.svg.js +6 -0
  35. package/dist/assets/svg/star.svg.js.map +1 -0
  36. package/dist/components/ApiSelect/index.vue.d.ts +22 -0
  37. package/dist/components/ApiSelect/index.vue.js +50 -0
  38. package/dist/components/ApiSelect/index.vue.js.map +1 -0
  39. package/dist/components/ApiSelect/index2.vue.js +5 -0
  40. package/dist/components/ApiSelect/index2.vue.js.map +1 -0
  41. package/dist/components/AppIcon.vue.d.ts +7 -0
  42. package/dist/components/AppIcon.vue.js +33 -0
  43. package/dist/components/AppIcon.vue.js.map +1 -0
  44. package/dist/components/AppIcon2.vue.js +5 -0
  45. package/dist/components/AppIcon2.vue.js.map +1 -0
  46. package/dist/components/Chart/BarChart.vue.d.ts +13 -0
  47. package/dist/components/Chart/BarChart.vue.js +27 -0
  48. package/dist/components/Chart/BarChart.vue.js.map +1 -0
  49. package/dist/components/Chart/BarChart2.vue.js +5 -0
  50. package/dist/components/Chart/BarChart2.vue.js.map +1 -0
  51. package/dist/components/Chart/LineChart.vue.d.ts +15 -0
  52. package/dist/components/Chart/LineChart.vue.js +33 -0
  53. package/dist/components/Chart/LineChart.vue.js.map +1 -0
  54. package/dist/components/Chart/LineChart2.vue.js +5 -0
  55. package/dist/components/Chart/LineChart2.vue.js.map +1 -0
  56. package/dist/components/Chart/PieChart.vue.d.ts +14 -0
  57. package/dist/components/Chart/PieChart.vue.js +31 -0
  58. package/dist/components/Chart/PieChart.vue.js.map +1 -0
  59. package/dist/components/Chart/PieChart2.vue.js +5 -0
  60. package/dist/components/Chart/PieChart2.vue.js.map +1 -0
  61. package/dist/components/Chart/echarts.d.ts +57 -0
  62. package/dist/components/Chart/echarts.js +47 -0
  63. package/dist/components/Chart/echarts.js.map +1 -0
  64. package/dist/components/Chart/index.vue.d.ts +12 -0
  65. package/dist/components/Chart/index.vue.js +8 -0
  66. package/dist/components/Chart/index.vue.js.map +1 -0
  67. package/dist/components/Chart/index2.vue.js +27 -0
  68. package/dist/components/Chart/index2.vue.js.map +1 -0
  69. package/dist/components/CodeBlock/index.vue.d.ts +17 -0
  70. package/dist/components/CodeBlock/index.vue.js +8 -0
  71. package/dist/components/CodeBlock/index.vue.js.map +1 -0
  72. package/dist/components/CodeBlock/index2.vue.js +48 -0
  73. package/dist/components/CodeBlock/index2.vue.js.map +1 -0
  74. package/dist/components/CronEditor/index.vue.d.ts +15 -0
  75. package/dist/components/CronEditor/index.vue.js +8 -0
  76. package/dist/components/CronEditor/index.vue.js.map +1 -0
  77. package/dist/components/CronEditor/index2.vue.js +528 -0
  78. package/dist/components/CronEditor/index2.vue.js.map +1 -0
  79. package/dist/components/DetailPage/index.vue.d.ts +26 -0
  80. package/dist/components/DetailPage/index.vue.js +8 -0
  81. package/dist/components/DetailPage/index.vue.js.map +1 -0
  82. package/dist/components/DetailPage/index2.vue.js +51 -0
  83. package/dist/components/DetailPage/index2.vue.js.map +1 -0
  84. package/dist/components/DictCheckbox/index.vue.d.ts +6 -0
  85. package/dist/components/DictCheckbox/index.vue.js +43 -0
  86. package/dist/components/DictCheckbox/index.vue.js.map +1 -0
  87. package/dist/components/DictCheckbox/index2.vue.js +5 -0
  88. package/dist/components/DictCheckbox/index2.vue.js.map +1 -0
  89. package/dist/components/DictRadio/index.vue.d.ts +6 -0
  90. package/dist/components/DictRadio/index.vue.js +38 -0
  91. package/dist/components/DictRadio/index.vue.js.map +1 -0
  92. package/dist/components/DictRadio/index2.vue.js +5 -0
  93. package/dist/components/DictRadio/index2.vue.js.map +1 -0
  94. package/dist/components/DictSelect/index.vue.d.ts +6 -0
  95. package/dist/components/DictSelect/index.vue.js +37 -0
  96. package/dist/components/DictSelect/index.vue.js.map +1 -0
  97. package/dist/components/DictSelect/index2.vue.js +5 -0
  98. package/dist/components/DictSelect/index2.vue.js.map +1 -0
  99. package/dist/components/DictTag/index.vue.d.ts +10 -0
  100. package/dist/components/DictTag/index.vue.js +48 -0
  101. package/dist/components/DictTag/index.vue.js.map +1 -0
  102. package/dist/components/DictTag/index2.vue.js +5 -0
  103. package/dist/components/DictTag/index2.vue.js.map +1 -0
  104. package/dist/components/ErrorBoundary/index.vue.d.ts +13 -0
  105. package/dist/components/ErrorBoundary/index.vue.js +8 -0
  106. package/dist/components/ErrorBoundary/index.vue.js.map +1 -0
  107. package/dist/components/ErrorBoundary/index2.vue.js +61 -0
  108. package/dist/components/ErrorBoundary/index2.vue.js.map +1 -0
  109. package/dist/components/ExportColumnsModal/index.vue.d.ts +19 -0
  110. package/dist/components/ExportColumnsModal/index.vue.js +8 -0
  111. package/dist/components/ExportColumnsModal/index.vue.js.map +1 -0
  112. package/dist/components/ExportColumnsModal/index2.vue.js +121 -0
  113. package/dist/components/ExportColumnsModal/index2.vue.js.map +1 -0
  114. package/dist/components/FileUpload/index.vue.d.ts +24 -0
  115. package/dist/components/FileUpload/index.vue.js +42 -0
  116. package/dist/components/FileUpload/index.vue.js.map +1 -0
  117. package/dist/components/FileUpload/index2.vue.js +5 -0
  118. package/dist/components/FileUpload/index2.vue.js.map +1 -0
  119. package/dist/components/FormContainer/index.vue.d.ts +51 -0
  120. package/dist/components/FormContainer/index.vue.js +160 -0
  121. package/dist/components/FormContainer/index.vue.js.map +1 -0
  122. package/dist/components/FormContainer/index3.vue.js +6 -0
  123. package/dist/components/FormContainer/index3.vue.js.map +1 -0
  124. package/dist/components/IconPicker/index.vue.d.ts +18 -0
  125. package/dist/components/IconPicker/index.vue.js +43 -0
  126. package/dist/components/IconPicker/index.vue.js.map +1 -0
  127. package/dist/components/IconPicker/index2.vue.js +5 -0
  128. package/dist/components/IconPicker/index2.vue.js.map +1 -0
  129. package/dist/components/ImportWizard/index.vue.d.ts +39 -0
  130. package/dist/components/ImportWizard/index.vue.js +8 -0
  131. package/dist/components/ImportWizard/index.vue.js.map +1 -0
  132. package/dist/components/ImportWizard/index2.vue.js +634 -0
  133. package/dist/components/ImportWizard/index2.vue.js.map +1 -0
  134. package/dist/components/JsonEditor/index.vue.d.ts +12 -0
  135. package/dist/components/JsonEditor/index.vue.js +87 -0
  136. package/dist/components/JsonEditor/index.vue.js.map +1 -0
  137. package/dist/components/JsonEditor/index2.vue.js +5 -0
  138. package/dist/components/JsonEditor/index2.vue.js.map +1 -0
  139. package/dist/components/MarkdownEditor/MarkdownView.vue.d.ts +6 -0
  140. package/dist/components/MarkdownEditor/MarkdownView.vue.js +33 -0
  141. package/dist/components/MarkdownEditor/MarkdownView.vue.js.map +1 -0
  142. package/dist/components/MarkdownEditor/MarkdownView2.vue.js +5 -0
  143. package/dist/components/MarkdownEditor/MarkdownView2.vue.js.map +1 -0
  144. package/dist/components/MarkdownEditor/index.vue.d.ts +10 -0
  145. package/dist/components/MarkdownEditor/index.vue.js +35 -0
  146. package/dist/components/MarkdownEditor/index.vue.js.map +1 -0
  147. package/dist/components/MarkdownEditor/index2.vue.js +5 -0
  148. package/dist/components/MarkdownEditor/index2.vue.js.map +1 -0
  149. package/dist/components/MenuSearch.vue.d.ts +10 -0
  150. package/dist/components/MenuSearch.vue.js +8 -0
  151. package/dist/components/MenuSearch.vue.js.map +1 -0
  152. package/dist/components/MenuSearch2.vue.js +121 -0
  153. package/dist/components/MenuSearch2.vue.js.map +1 -0
  154. package/dist/components/OrgTreeSelect/index.vue.d.ts +6 -0
  155. package/dist/components/OrgTreeSelect/index.vue.js +42 -0
  156. package/dist/components/OrgTreeSelect/index.vue.js.map +1 -0
  157. package/dist/components/OrgTreeSelect/index2.vue.js +5 -0
  158. package/dist/components/OrgTreeSelect/index2.vue.js.map +1 -0
  159. package/dist/components/PasswordStrength/index.vue.d.ts +6 -0
  160. package/dist/components/PasswordStrength/index.vue.js +8 -0
  161. package/dist/components/PasswordStrength/index.vue.js.map +1 -0
  162. package/dist/components/PasswordStrength/index2.vue.js +91 -0
  163. package/dist/components/PasswordStrength/index2.vue.js.map +1 -0
  164. package/dist/components/ReauthModal.vue.d.ts +3 -0
  165. package/dist/components/ReauthModal.vue.js +8 -0
  166. package/dist/components/ReauthModal.vue.js.map +1 -0
  167. package/dist/components/ReauthModal2.vue.js +139 -0
  168. package/dist/components/ReauthModal2.vue.js.map +1 -0
  169. package/dist/components/RoleSelect/index.vue.d.ts +8 -0
  170. package/dist/components/RoleSelect/index.vue.js +26 -0
  171. package/dist/components/RoleSelect/index.vue.js.map +1 -0
  172. package/dist/components/RoleSelect/index2.vue.js +5 -0
  173. package/dist/components/RoleSelect/index2.vue.js.map +1 -0
  174. package/dist/components/SelectTable/index.vue.d.ts +76 -0
  175. package/dist/components/SelectTable/index.vue.js +8 -0
  176. package/dist/components/SelectTable/index.vue.js.map +1 -0
  177. package/dist/components/SelectTable/index2.vue.js +256 -0
  178. package/dist/components/SelectTable/index2.vue.js.map +1 -0
  179. package/dist/components/SmartLogo.vue.d.ts +8 -0
  180. package/dist/components/SmartLogo.vue.js +8 -0
  181. package/dist/components/SmartLogo.vue.js.map +1 -0
  182. package/dist/components/SmartLogo2.vue.js +74 -0
  183. package/dist/components/SmartLogo2.vue.js.map +1 -0
  184. package/dist/components/StatusSwitch/index.vue.d.ts +21 -0
  185. package/dist/components/StatusSwitch/index.vue.js +45 -0
  186. package/dist/components/StatusSwitch/index.vue.js.map +1 -0
  187. package/dist/components/StatusSwitch/index2.vue.js +5 -0
  188. package/dist/components/StatusSwitch/index2.vue.js.map +1 -0
  189. package/dist/components/TableZoomButton/index.vue.d.ts +13 -0
  190. package/dist/components/TableZoomButton/index.vue.js +42 -0
  191. package/dist/components/TableZoomButton/index.vue.js.map +1 -0
  192. package/dist/components/TableZoomButton/index2.vue.js +5 -0
  193. package/dist/components/TableZoomButton/index2.vue.js.map +1 -0
  194. package/dist/components/UserPicker/index.vue.d.ts +13 -0
  195. package/dist/components/UserPicker/index.vue.js +8 -0
  196. package/dist/components/UserPicker/index.vue.js.map +1 -0
  197. package/dist/components/UserPicker/index2.vue.js +214 -0
  198. package/dist/components/UserPicker/index2.vue.js.map +1 -0
  199. package/dist/components/UserSelect/index.vue.d.ts +9 -0
  200. package/dist/components/UserSelect/index.vue.js +32 -0
  201. package/dist/components/UserSelect/index.vue.js.map +1 -0
  202. package/dist/components/UserSelect/index2.vue.js +5 -0
  203. package/dist/components/UserSelect/index2.vue.js.map +1 -0
  204. package/dist/components/oauth/BrandIcon.vue.d.ts +12 -0
  205. package/dist/components/oauth/BrandIcon.vue.js +8 -0
  206. package/dist/components/oauth/BrandIcon.vue.js.map +1 -0
  207. package/dist/components/oauth/BrandIcon2.vue.js +95 -0
  208. package/dist/components/oauth/BrandIcon2.vue.js.map +1 -0
  209. package/dist/composables/authMenuRoute.d.ts +32 -0
  210. package/dist/composables/authMenuRoute.js +37 -0
  211. package/dist/composables/authMenuRoute.js.map +1 -0
  212. package/dist/composables/clearClientCache.d.ts +10 -0
  213. package/dist/composables/clearClientCache.js +17 -0
  214. package/dist/composables/clearClientCache.js.map +1 -0
  215. package/dist/composables/useAuthMenu.d.ts +3 -0
  216. package/dist/composables/useAuthMenu.js +61 -0
  217. package/dist/composables/useAuthMenu.js.map +1 -0
  218. package/dist/composables/useBatchDelete.d.ts +18 -0
  219. package/dist/composables/useBatchDelete.js +21 -0
  220. package/dist/composables/useBatchDelete.js.map +1 -0
  221. package/dist/composables/useCompactScreen.d.ts +12 -0
  222. package/dist/composables/useCompactScreen.js +17 -0
  223. package/dist/composables/useCompactScreen.js.map +1 -0
  224. package/dist/composables/useConfirm.d.ts +18 -0
  225. package/dist/composables/useConfirm.js +61 -0
  226. package/dist/composables/useConfirm.js.map +1 -0
  227. package/dist/composables/useFullscreenToggle.d.ts +11 -0
  228. package/dist/composables/useFullscreenToggle.js +64 -0
  229. package/dist/composables/useFullscreenToggle.js.map +1 -0
  230. package/dist/composables/useHeaderTools.d.ts +31 -0
  231. package/dist/composables/useHeaderTools.js +15 -0
  232. package/dist/composables/useHeaderTools.js.map +1 -0
  233. package/dist/composables/useLayoutMenu.d.ts +17 -0
  234. package/dist/composables/useLayoutMenu.js +93 -0
  235. package/dist/composables/useLayoutMenu.js.map +1 -0
  236. package/dist/composables/useMenuBadge.d.ts +11 -0
  237. package/dist/composables/useMenuBadge.js +17 -0
  238. package/dist/composables/useMenuBadge.js.map +1 -0
  239. package/dist/composables/useMenuFlat.d.ts +8 -0
  240. package/dist/composables/useMenuFlat.js +29 -0
  241. package/dist/composables/useMenuFlat.js.map +1 -0
  242. package/dist/composables/useModule.d.ts +16 -0
  243. package/dist/composables/useModule.js +44 -0
  244. package/dist/composables/useModule.js.map +1 -0
  245. package/dist/composables/useNoticeAction.d.ts +8 -0
  246. package/dist/composables/useNoticeAction.js +79 -0
  247. package/dist/composables/useNoticeAction.js.map +1 -0
  248. package/dist/composables/usePageTitle.d.ts +1 -0
  249. package/dist/composables/usePageTitle.js +20 -0
  250. package/dist/composables/usePageTitle.js.map +1 -0
  251. package/dist/composables/useRealtime.d.ts +31 -0
  252. package/dist/composables/useRealtime.js +59 -0
  253. package/dist/composables/useRealtime.js.map +1 -0
  254. package/dist/composables/useSite.d.ts +24 -0
  255. package/dist/composables/useSite.js +27 -0
  256. package/dist/composables/useSite.js.map +1 -0
  257. package/dist/composables/useTabTitle.d.ts +1 -0
  258. package/dist/composables/useTabTitle.js +10 -0
  259. package/dist/composables/useTabTitle.js.map +1 -0
  260. package/dist/composables/useTableRowSort.d.ts +20 -0
  261. package/dist/composables/useTableRowSort.js +59 -0
  262. package/dist/composables/useTableRowSort.js.map +1 -0
  263. package/dist/composables/useTableZoom.d.ts +5 -0
  264. package/dist/composables/useTableZoom.js +30 -0
  265. package/dist/composables/useTableZoom.js.map +1 -0
  266. package/dist/composables/useTheme.d.ts +13 -0
  267. package/dist/composables/useTheme.js +30 -0
  268. package/dist/composables/useTheme.js.map +1 -0
  269. package/dist/composables/useVisualViewportHeight.d.ts +3 -0
  270. package/dist/composables/useVisualViewportHeight.js +16 -0
  271. package/dist/composables/useVisualViewportHeight.js.map +1 -0
  272. package/dist/createSmartAdmin.d.ts +56 -0
  273. package/dist/createSmartAdmin.js +76 -0
  274. package/dist/createSmartAdmin.js.map +1 -0
  275. package/dist/directives/auth.d.ts +16 -0
  276. package/dist/directives/auth.js +19 -0
  277. package/dist/directives/auth.js.map +1 -0
  278. package/dist/env.d.ts +10 -0
  279. package/dist/index.d.ts +90 -0
  280. package/dist/index.js +273 -0
  281. package/dist/index.js.map +1 -0
  282. package/dist/layouts/AppHeader.vue.d.ts +12 -0
  283. package/dist/layouts/AppHeader.vue.js +8 -0
  284. package/dist/layouts/AppHeader.vue.js.map +1 -0
  285. package/dist/layouts/AppHeader2.vue.js +352 -0
  286. package/dist/layouts/AppHeader2.vue.js.map +1 -0
  287. package/dist/layouts/LayoutModeCards.vue.d.ts +3 -0
  288. package/dist/layouts/LayoutModeCards.vue.js +8 -0
  289. package/dist/layouts/LayoutModeCards.vue.js.map +1 -0
  290. package/dist/layouts/LayoutModeCards2.vue.js +67 -0
  291. package/dist/layouts/LayoutModeCards2.vue.js.map +1 -0
  292. package/dist/layouts/NoticeBell.vue.d.ts +3 -0
  293. package/dist/layouts/NoticeBell.vue.js +8 -0
  294. package/dist/layouts/NoticeBell.vue.js.map +1 -0
  295. package/dist/layouts/NoticeBell2.vue.js +292 -0
  296. package/dist/layouts/NoticeBell2.vue.js.map +1 -0
  297. package/dist/layouts/PersonalLayout.vue.d.ts +3 -0
  298. package/dist/layouts/PersonalLayout.vue.js +8 -0
  299. package/dist/layouts/PersonalLayout.vue.js.map +1 -0
  300. package/dist/layouts/PersonalLayout2.vue.js +65 -0
  301. package/dist/layouts/PersonalLayout2.vue.js.map +1 -0
  302. package/dist/layouts/SettingRow.vue.d.ts +16 -0
  303. package/dist/layouts/SettingRow.vue.js +8 -0
  304. package/dist/layouts/SettingRow.vue.js.map +1 -0
  305. package/dist/layouts/SettingRow2.vue.js +23 -0
  306. package/dist/layouts/SettingRow2.vue.js.map +1 -0
  307. package/dist/layouts/SettingsDrawer.vue.d.ts +10 -0
  308. package/dist/layouts/SettingsDrawer.vue.js +8 -0
  309. package/dist/layouts/SettingsDrawer.vue.js.map +1 -0
  310. package/dist/layouts/SettingsDrawer2.vue.js +380 -0
  311. package/dist/layouts/SettingsDrawer2.vue.js.map +1 -0
  312. package/dist/layouts/TabsBar.vue.d.ts +3 -0
  313. package/dist/layouts/TabsBar.vue.js +8 -0
  314. package/dist/layouts/TabsBar.vue.js.map +1 -0
  315. package/dist/layouts/TabsBar2.vue.js +132 -0
  316. package/dist/layouts/TabsBar2.vue.js.map +1 -0
  317. package/dist/layouts/components/SideNav.vue.d.ts +15 -0
  318. package/dist/layouts/components/SideNav.vue.js +8 -0
  319. package/dist/layouts/components/SideNav.vue.js.map +1 -0
  320. package/dist/layouts/components/SideNav2.vue.js +49 -0
  321. package/dist/layouts/components/SideNav2.vue.js.map +1 -0
  322. package/dist/layouts/default.vue.d.ts +3 -0
  323. package/dist/layouts/default.vue.js +8 -0
  324. package/dist/layouts/default.vue.js.map +1 -0
  325. package/dist/layouts/default2.vue.js +213 -0
  326. package/dist/layouts/default2.vue.js.map +1 -0
  327. package/dist/lib/chunkReload.d.ts +9 -0
  328. package/dist/lib/chunkReload.js +24 -0
  329. package/dist/lib/chunkReload.js.map +1 -0
  330. package/dist/lib/icons.d.ts +2 -0
  331. package/dist/lib/icons.js +39 -0
  332. package/dist/lib/icons.js.map +1 -0
  333. package/dist/lib/loadingBar.d.ts +7 -0
  334. package/dist/lib/loadingBar.js +18 -0
  335. package/dist/lib/loadingBar.js.map +1 -0
  336. package/dist/lib/markdown.d.ts +8 -0
  337. package/dist/lib/markdown.js +16 -0
  338. package/dist/lib/markdown.js.map +1 -0
  339. package/dist/lib/markdownLinks.d.ts +26 -0
  340. package/dist/lib/markdownLinks.js +21 -0
  341. package/dist/lib/markdownLinks.js.map +1 -0
  342. package/dist/lib/noticeActions.d.ts +13 -0
  343. package/dist/lib/noticeActions.js +16 -0
  344. package/dist/lib/noticeActions.js.map +1 -0
  345. package/dist/lib/runtime.d.ts +21 -0
  346. package/dist/lib/runtime.js +13 -0
  347. package/dist/lib/runtime.js.map +1 -0
  348. package/dist/locales/en-US.d.ts +1358 -0
  349. package/dist/locales/en-US.js +1362 -0
  350. package/dist/locales/en-US.js.map +1 -0
  351. package/dist/locales/index.d.ts +30 -0
  352. package/dist/locales/index.js +46 -0
  353. package/dist/locales/index.js.map +1 -0
  354. package/dist/locales/menuTitle.d.ts +8 -0
  355. package/dist/locales/menuTitle.js +19 -0
  356. package/dist/locales/menuTitle.js.map +1 -0
  357. package/dist/locales/zh-CN.d.ts +1358 -0
  358. package/dist/locales/zh-CN.js +1368 -0
  359. package/dist/locales/zh-CN.js.map +1 -0
  360. package/dist/router/bootFailure.d.ts +8 -0
  361. package/dist/router/bootFailure.js +11 -0
  362. package/dist/router/bootFailure.js.map +1 -0
  363. package/dist/router/detailRoutes.d.ts +2 -0
  364. package/dist/router/detailRoutes.js +19 -0
  365. package/dist/router/detailRoutes.js.map +1 -0
  366. package/dist/router/index.d.ts +3 -0
  367. package/dist/router/index.js +58 -0
  368. package/dist/router/index.js.map +1 -0
  369. package/dist/router/namedPage.d.ts +13 -0
  370. package/dist/router/namedPage.js +12 -0
  371. package/dist/router/namedPage.js.map +1 -0
  372. package/dist/router/routes.d.ts +2 -0
  373. package/dist/router/routes.js +121 -0
  374. package/dist/router/routes.js.map +1 -0
  375. package/dist/router/viewRegistry.d.ts +18 -0
  376. package/dist/router/viewRegistry.js +26 -0
  377. package/dist/router/viewRegistry.js.map +1 -0
  378. package/dist/stores/app.d.ts +83 -0
  379. package/dist/stores/app.js +82 -0
  380. package/dist/stores/app.js.map +1 -0
  381. package/dist/stores/auth.d.ts +106 -0
  382. package/dist/stores/auth.js +59 -0
  383. package/dist/stores/auth.js.map +1 -0
  384. package/dist/stores/dict.d.ts +11 -0
  385. package/dist/stores/dict.js +36 -0
  386. package/dist/stores/dict.js.map +1 -0
  387. package/dist/stores/tabs.d.ts +53 -0
  388. package/dist/stores/tabs.js +88 -0
  389. package/dist/stores/tabs.js.map +1 -0
  390. package/dist/stores/user.d.ts +64 -0
  391. package/dist/stores/user.js +64 -0
  392. package/dist/stores/user.js.map +1 -0
  393. package/dist/style.css +1 -0
  394. package/dist/theme/accents.d.ts +2 -0
  395. package/dist/theme/accents.js +5 -0
  396. package/dist/theme/accents.js.map +1 -0
  397. package/dist/theme/mix.d.ts +26 -0
  398. package/dist/theme/mix.js +43 -0
  399. package/dist/theme/mix.js.map +1 -0
  400. package/dist/theme/naive-theme.d.ts +9 -0
  401. package/dist/theme/naive-theme.js +89 -0
  402. package/dist/theme/naive-theme.js.map +1 -0
  403. package/dist/types/api.d.ts +714 -0
  404. package/dist/types/api.js +15 -0
  405. package/dist/types/api.js.map +1 -0
  406. package/dist/types/menu.d.ts +67 -0
  407. package/dist/types/menu.js +26 -0
  408. package/dist/types/menu.js.map +1 -0
  409. package/dist/utils/chunkUpload.d.ts +6 -0
  410. package/dist/utils/chunkUpload.js +35 -0
  411. package/dist/utils/chunkUpload.js.map +1 -0
  412. package/dist/utils/download.d.ts +8 -0
  413. package/dist/utils/download.js +8 -0
  414. package/dist/utils/download.js.map +1 -0
  415. package/dist/utils/error.d.ts +14 -0
  416. package/dist/utils/error.js +50 -0
  417. package/dist/utils/error.js.map +1 -0
  418. package/dist/utils/format.d.ts +20 -0
  419. package/dist/utils/format.js +19 -0
  420. package/dist/utils/format.js.map +1 -0
  421. package/dist/utils/importDup.d.ts +17 -0
  422. package/dist/utils/importDup.js +18 -0
  423. package/dist/utils/importDup.js.map +1 -0
  424. package/dist/utils/oauthBrand.d.ts +100 -0
  425. package/dist/utils/oauthBrand.js +97 -0
  426. package/dist/utils/oauthBrand.js.map +1 -0
  427. package/dist/utils/tree.d.ts +33 -0
  428. package/dist/utils/tree.js +47 -0
  429. package/dist/utils/tree.js.map +1 -0
  430. package/dist/utils/ua.d.ts +7 -0
  431. package/dist/utils/ua.js +33 -0
  432. package/dist/utils/ua.js.map +1 -0
  433. package/dist/utils/url.d.ts +16 -0
  434. package/dist/utils/url.js +13 -0
  435. package/dist/utils/url.js.map +1 -0
  436. package/dist/views/dashboard/biz.vue.d.ts +3 -0
  437. package/dist/views/dashboard/biz.vue.js +8 -0
  438. package/dist/views/dashboard/biz.vue.js.map +1 -0
  439. package/dist/views/dashboard/biz2.vue.js +136 -0
  440. package/dist/views/dashboard/biz2.vue.js.map +1 -0
  441. package/dist/views/dashboard/workbench.vue.d.ts +3 -0
  442. package/dist/views/dashboard/workbench.vue.js +8 -0
  443. package/dist/views/dashboard/workbench.vue.js.map +1 -0
  444. package/dist/views/dashboard/workbench2.vue.js +195 -0
  445. package/dist/views/dashboard/workbench2.vue.js.map +1 -0
  446. package/dist/views/embed/iframe.vue.d.ts +3 -0
  447. package/dist/views/embed/iframe.vue.js +8 -0
  448. package/dist/views/embed/iframe.vue.js.map +1 -0
  449. package/dist/views/embed/iframe2.vue.js +21 -0
  450. package/dist/views/embed/iframe2.vue.js.map +1 -0
  451. package/dist/views/error/404.vue.d.ts +3 -0
  452. package/dist/views/error/404.vue.js +8 -0
  453. package/dist/views/error/404.vue.js.map +1 -0
  454. package/dist/views/error/4042.vue.js +31 -0
  455. package/dist/views/error/4042.vue.js.map +1 -0
  456. package/dist/views/error/BootError.vue.d.ts +3 -0
  457. package/dist/views/error/BootError.vue.js +8 -0
  458. package/dist/views/error/BootError.vue.js.map +1 -0
  459. package/dist/views/error/BootError2.vue.js +57 -0
  460. package/dist/views/error/BootError2.vue.js.map +1 -0
  461. package/dist/views/error/MissingRoute.vue.d.ts +3 -0
  462. package/dist/views/error/MissingRoute.vue.js +8 -0
  463. package/dist/views/error/MissingRoute.vue.js.map +1 -0
  464. package/dist/views/error/MissingRoute2.vue.js +23 -0
  465. package/dist/views/error/MissingRoute2.vue.js.map +1 -0
  466. package/dist/views/login/LoginForm.vue.d.ts +12 -0
  467. package/dist/views/login/LoginForm.vue.js +8 -0
  468. package/dist/views/login/LoginForm.vue.js.map +1 -0
  469. package/dist/views/login/LoginForm2.vue.js +642 -0
  470. package/dist/views/login/LoginForm2.vue.js.map +1 -0
  471. package/dist/views/login/index.vue.d.ts +3 -0
  472. package/dist/views/login/index.vue.js +8 -0
  473. package/dist/views/login/index.vue.js.map +1 -0
  474. package/dist/views/login/index2.vue.js +79 -0
  475. package/dist/views/login/index2.vue.js.map +1 -0
  476. package/dist/views/login/skins/AuroraGlass.vue.d.ts +3 -0
  477. package/dist/views/login/skins/AuroraGlass.vue.js +8 -0
  478. package/dist/views/login/skins/AuroraGlass.vue.js.map +1 -0
  479. package/dist/views/login/skins/AuroraGlass2.vue.js +80 -0
  480. package/dist/views/login/skins/AuroraGlass2.vue.js.map +1 -0
  481. package/dist/views/login/skins/SplitPanel.vue.d.ts +3 -0
  482. package/dist/views/login/skins/SplitPanel.vue.js +8 -0
  483. package/dist/views/login/skins/SplitPanel.vue.js.map +1 -0
  484. package/dist/views/login/skins/SplitPanel2.vue.js +85 -0
  485. package/dist/views/login/skins/SplitPanel2.vue.js.map +1 -0
  486. package/dist/views/login/skins/Spotlight.vue.d.ts +3 -0
  487. package/dist/views/login/skins/Spotlight.vue.js +8 -0
  488. package/dist/views/login/skins/Spotlight.vue.js.map +1 -0
  489. package/dist/views/login/skins/Spotlight2.vue.js +36 -0
  490. package/dist/views/login/skins/Spotlight2.vue.js.map +1 -0
  491. package/dist/views/login/skins.d.ts +8 -0
  492. package/dist/views/login/skins.js +13 -0
  493. package/dist/views/login/skins.js.map +1 -0
  494. package/dist/views/mfa/bindComplete.d.ts +7 -0
  495. package/dist/views/mfa/bindComplete.js +8 -0
  496. package/dist/views/mfa/bindComplete.js.map +1 -0
  497. package/dist/views/mfa/index.vue.d.ts +3 -0
  498. package/dist/views/mfa/index.vue.js +8 -0
  499. package/dist/views/mfa/index.vue.js.map +1 -0
  500. package/dist/views/mfa/index2.vue.js +425 -0
  501. package/dist/views/mfa/index2.vue.js.map +1 -0
  502. package/dist/views/module/index.vue.d.ts +3 -0
  503. package/dist/views/module/index.vue.js +8 -0
  504. package/dist/views/module/index.vue.js.map +1 -0
  505. package/dist/views/module/index2.vue.js +142 -0
  506. package/dist/views/module/index2.vue.js.map +1 -0
  507. package/dist/views/oauth/callback.vue.d.ts +3 -0
  508. package/dist/views/oauth/callback.vue.js +8 -0
  509. package/dist/views/oauth/callback.vue.js.map +1 -0
  510. package/dist/views/oauth/callback2.vue.js +86 -0
  511. package/dist/views/oauth/callback2.vue.js.map +1 -0
  512. package/dist/views/personal/bindings.vue.d.ts +3 -0
  513. package/dist/views/personal/bindings.vue.js +8 -0
  514. package/dist/views/personal/bindings.vue.js.map +1 -0
  515. package/dist/views/personal/bindings2.vue.js +220 -0
  516. package/dist/views/personal/bindings2.vue.js.map +1 -0
  517. package/dist/views/personal/notice.vue.d.ts +3 -0
  518. package/dist/views/personal/notice.vue.js +5 -0
  519. package/dist/views/personal/notice.vue.js.map +1 -0
  520. package/dist/views/personal/notice2.vue.js +163 -0
  521. package/dist/views/personal/notice2.vue.js.map +1 -0
  522. package/dist/views/personal/password.vue.d.ts +3 -0
  523. package/dist/views/personal/password.vue.js +5 -0
  524. package/dist/views/personal/password.vue.js.map +1 -0
  525. package/dist/views/personal/password2.vue.js +147 -0
  526. package/dist/views/personal/password2.vue.js.map +1 -0
  527. package/dist/views/personal/profile.vue.d.ts +3 -0
  528. package/dist/views/personal/profile.vue.js +8 -0
  529. package/dist/views/personal/profile.vue.js.map +1 -0
  530. package/dist/views/personal/profile2.vue.js +264 -0
  531. package/dist/views/personal/profile2.vue.js.map +1 -0
  532. package/dist/views/personal/security.vue.d.ts +3 -0
  533. package/dist/views/personal/security.vue.js +8 -0
  534. package/dist/views/personal/security.vue.js.map +1 -0
  535. package/dist/views/personal/security2.vue.js +82 -0
  536. package/dist/views/personal/security2.vue.js.map +1 -0
  537. package/dist/views/personal/sessions.vue.d.ts +3 -0
  538. package/dist/views/personal/sessions.vue.js +8 -0
  539. package/dist/views/personal/sessions.vue.js.map +1 -0
  540. package/dist/views/personal/sessions2.vue.js +101 -0
  541. package/dist/views/personal/sessions2.vue.js.map +1 -0
  542. package/dist/views/system/cache/index.vue.d.ts +3 -0
  543. package/dist/views/system/cache/index.vue.js +8 -0
  544. package/dist/views/system/cache/index.vue.js.map +1 -0
  545. package/dist/views/system/cache/index2.vue.js +113 -0
  546. package/dist/views/system/cache/index2.vue.js.map +1 -0
  547. package/dist/views/system/config/components/ConfigFormModal.vue.d.ts +16 -0
  548. package/dist/views/system/config/components/ConfigFormModal.vue.js +5 -0
  549. package/dist/views/system/config/components/ConfigFormModal.vue.js.map +1 -0
  550. package/dist/views/system/config/components/ConfigFormModal2.vue.js +177 -0
  551. package/dist/views/system/config/components/ConfigFormModal2.vue.js.map +1 -0
  552. package/dist/views/system/config/components/ExternalAuthConfig.vue.d.ts +3 -0
  553. package/dist/views/system/config/components/ExternalAuthConfig.vue.js +8 -0
  554. package/dist/views/system/config/components/ExternalAuthConfig.vue.js.map +1 -0
  555. package/dist/views/system/config/components/ExternalAuthConfig2.vue.js +218 -0
  556. package/dist/views/system/config/components/ExternalAuthConfig2.vue.js.map +1 -0
  557. package/dist/views/system/config/components/GroupExtraConfig.vue.d.ts +9 -0
  558. package/dist/views/system/config/components/GroupExtraConfig.vue.js +8 -0
  559. package/dist/views/system/config/components/GroupExtraConfig.vue.js.map +1 -0
  560. package/dist/views/system/config/components/GroupExtraConfig2.vue.js +108 -0
  561. package/dist/views/system/config/components/GroupExtraConfig2.vue.js.map +1 -0
  562. package/dist/views/system/config/components/HighSensConfig.vue.d.ts +3 -0
  563. package/dist/views/system/config/components/HighSensConfig.vue.js +5 -0
  564. package/dist/views/system/config/components/HighSensConfig.vue.js.map +1 -0
  565. package/dist/views/system/config/components/HighSensConfig2.vue.js +134 -0
  566. package/dist/views/system/config/components/HighSensConfig2.vue.js.map +1 -0
  567. package/dist/views/system/config/components/JobConfig.vue.d.ts +3 -0
  568. package/dist/views/system/config/components/JobConfig.vue.js +5 -0
  569. package/dist/views/system/config/components/JobConfig.vue.js.map +1 -0
  570. package/dist/views/system/config/components/JobConfig2.vue.js +116 -0
  571. package/dist/views/system/config/components/JobConfig2.vue.js.map +1 -0
  572. package/dist/views/system/config/components/OtherConfig.vue.d.ts +3 -0
  573. package/dist/views/system/config/components/OtherConfig.vue.js +5 -0
  574. package/dist/views/system/config/components/OtherConfig.vue.js.map +1 -0
  575. package/dist/views/system/config/components/OtherConfig2.vue.js +121 -0
  576. package/dist/views/system/config/components/OtherConfig2.vue.js.map +1 -0
  577. package/dist/views/system/config/components/SecurityConfig.vue.d.ts +3 -0
  578. package/dist/views/system/config/components/SecurityConfig.vue.js +8 -0
  579. package/dist/views/system/config/components/SecurityConfig.vue.js.map +1 -0
  580. package/dist/views/system/config/components/SecurityConfig2.vue.js +456 -0
  581. package/dist/views/system/config/components/SecurityConfig2.vue.js.map +1 -0
  582. package/dist/views/system/config/components/SysBaseConfig.vue.d.ts +3 -0
  583. package/dist/views/system/config/components/SysBaseConfig.vue.js +5 -0
  584. package/dist/views/system/config/components/SysBaseConfig.vue.js.map +1 -0
  585. package/dist/views/system/config/components/SysBaseConfig2.vue.js +107 -0
  586. package/dist/views/system/config/components/SysBaseConfig2.vue.js.map +1 -0
  587. package/dist/views/system/config/components/UploadConfig.vue.d.ts +3 -0
  588. package/dist/views/system/config/components/UploadConfig.vue.js +5 -0
  589. package/dist/views/system/config/components/UploadConfig.vue.js.map +1 -0
  590. package/dist/views/system/config/components/UploadConfig2.vue.js +135 -0
  591. package/dist/views/system/config/components/UploadConfig2.vue.js.map +1 -0
  592. package/dist/views/system/config/groups.d.ts +9 -0
  593. package/dist/views/system/config/groups.js +18 -0
  594. package/dist/views/system/config/groups.js.map +1 -0
  595. package/dist/views/system/config/index.vue.d.ts +3 -0
  596. package/dist/views/system/config/index.vue.js +5 -0
  597. package/dist/views/system/config/index.vue.js.map +1 -0
  598. package/dist/views/system/config/index2.vue.js +127 -0
  599. package/dist/views/system/config/index2.vue.js.map +1 -0
  600. package/dist/views/system/dict/index.vue.d.ts +3 -0
  601. package/dist/views/system/dict/index.vue.js +8 -0
  602. package/dist/views/system/dict/index.vue.js.map +1 -0
  603. package/dist/views/system/dict/index2.vue.js +560 -0
  604. package/dist/views/system/dict/index2.vue.js.map +1 -0
  605. package/dist/views/system/file/index.vue.d.ts +3 -0
  606. package/dist/views/system/file/index.vue.js +5 -0
  607. package/dist/views/system/file/index.vue.js.map +1 -0
  608. package/dist/views/system/file/index2.vue.js +186 -0
  609. package/dist/views/system/file/index2.vue.js.map +1 -0
  610. package/dist/views/system/job/index.vue.d.ts +3 -0
  611. package/dist/views/system/job/index.vue.js +8 -0
  612. package/dist/views/system/job/index.vue.js.map +1 -0
  613. package/dist/views/system/job/index2.vue.js +1167 -0
  614. package/dist/views/system/job/index2.vue.js.map +1 -0
  615. package/dist/views/system/job-log/index.vue.d.ts +3 -0
  616. package/dist/views/system/job-log/index.vue.js +8 -0
  617. package/dist/views/system/job-log/index.vue.js.map +1 -0
  618. package/dist/views/system/job-log/index2.vue.js +411 -0
  619. package/dist/views/system/job-log/index2.vue.js.map +1 -0
  620. package/dist/views/system/job-monitor/index.vue.d.ts +3 -0
  621. package/dist/views/system/job-monitor/index.vue.js +8 -0
  622. package/dist/views/system/job-monitor/index.vue.js.map +1 -0
  623. package/dist/views/system/job-monitor/index2.vue.js +253 -0
  624. package/dist/views/system/job-monitor/index2.vue.js.map +1 -0
  625. package/dist/views/system/log/exception/index.vue.d.ts +3 -0
  626. package/dist/views/system/log/exception/index.vue.js +8 -0
  627. package/dist/views/system/log/exception/index.vue.js.map +1 -0
  628. package/dist/views/system/log/exception/index2.vue.js +216 -0
  629. package/dist/views/system/log/exception/index2.vue.js.map +1 -0
  630. package/dist/views/system/log/login/index.vue.d.ts +3 -0
  631. package/dist/views/system/log/login/index.vue.js +5 -0
  632. package/dist/views/system/log/login/index.vue.js.map +1 -0
  633. package/dist/views/system/log/login/index2.vue.js +113 -0
  634. package/dist/views/system/log/login/index2.vue.js.map +1 -0
  635. package/dist/views/system/log/op/index.vue.d.ts +3 -0
  636. package/dist/views/system/log/op/index.vue.js +8 -0
  637. package/dist/views/system/log/op/index.vue.js.map +1 -0
  638. package/dist/views/system/log/op/index2.vue.js +332 -0
  639. package/dist/views/system/log/op/index2.vue.js.map +1 -0
  640. package/dist/views/system/menu/components/ButtonManager.vue.d.ts +21 -0
  641. package/dist/views/system/menu/components/ButtonManager.vue.js +8 -0
  642. package/dist/views/system/menu/components/ButtonManager.vue.js.map +1 -0
  643. package/dist/views/system/menu/components/ButtonManager2.vue.js +498 -0
  644. package/dist/views/system/menu/components/ButtonManager2.vue.js.map +1 -0
  645. package/dist/views/system/menu/components/MenuFormModal.vue.d.ts +22 -0
  646. package/dist/views/system/menu/components/MenuFormModal.vue.js +8 -0
  647. package/dist/views/system/menu/components/MenuFormModal.vue.js.map +1 -0
  648. package/dist/views/system/menu/components/MenuFormModal2.vue.js +259 -0
  649. package/dist/views/system/menu/components/MenuFormModal2.vue.js.map +1 -0
  650. package/dist/views/system/menu/index.vue.d.ts +3 -0
  651. package/dist/views/system/menu/index.vue.js +8 -0
  652. package/dist/views/system/menu/index.vue.js.map +1 -0
  653. package/dist/views/system/menu/index2.vue.js +391 -0
  654. package/dist/views/system/menu/index2.vue.js.map +1 -0
  655. package/dist/views/system/module/index.vue.d.ts +3 -0
  656. package/dist/views/system/module/index.vue.js +8 -0
  657. package/dist/views/system/module/index.vue.js.map +1 -0
  658. package/dist/views/system/module/index2.vue.js +344 -0
  659. package/dist/views/system/module/index2.vue.js.map +1 -0
  660. package/dist/views/system/monitor/index.vue.d.ts +3 -0
  661. package/dist/views/system/monitor/index.vue.js +8 -0
  662. package/dist/views/system/monitor/index.vue.js.map +1 -0
  663. package/dist/views/system/monitor/index2.vue.js +184 -0
  664. package/dist/views/system/monitor/index2.vue.js.map +1 -0
  665. package/dist/views/system/notice/index.vue.d.ts +3 -0
  666. package/dist/views/system/notice/index.vue.js +8 -0
  667. package/dist/views/system/notice/index.vue.js.map +1 -0
  668. package/dist/views/system/notice/index2.vue.js +401 -0
  669. package/dist/views/system/notice/index2.vue.js.map +1 -0
  670. package/dist/views/system/org/index.vue.d.ts +3 -0
  671. package/dist/views/system/org/index.vue.js +8 -0
  672. package/dist/views/system/org/index.vue.js.map +1 -0
  673. package/dist/views/system/org/index2.vue.js +397 -0
  674. package/dist/views/system/org/index2.vue.js.map +1 -0
  675. package/dist/views/system/position/index.vue.d.ts +3 -0
  676. package/dist/views/system/position/index.vue.js +5 -0
  677. package/dist/views/system/position/index.vue.js.map +1 -0
  678. package/dist/views/system/position/index2.vue.js +211 -0
  679. package/dist/views/system/position/index2.vue.js.map +1 -0
  680. package/dist/views/system/recycle/index.vue.d.ts +3 -0
  681. package/dist/views/system/recycle/index.vue.js +8 -0
  682. package/dist/views/system/recycle/index.vue.js.map +1 -0
  683. package/dist/views/system/recycle/index2.vue.js +121 -0
  684. package/dist/views/system/recycle/index2.vue.js.map +1 -0
  685. package/dist/views/system/role/components/GrantMenuTable.vue.d.ts +18 -0
  686. package/dist/views/system/role/components/GrantMenuTable.vue.js +8 -0
  687. package/dist/views/system/role/components/GrantMenuTable.vue.js.map +1 -0
  688. package/dist/views/system/role/components/GrantMenuTable2.vue.js +212 -0
  689. package/dist/views/system/role/components/GrantMenuTable2.vue.js.map +1 -0
  690. package/dist/views/system/role/components/grantMenuGroups.d.ts +31 -0
  691. package/dist/views/system/role/components/grantMenuGroups.js +76 -0
  692. package/dist/views/system/role/components/grantMenuGroups.js.map +1 -0
  693. package/dist/views/system/role/index.vue.d.ts +3 -0
  694. package/dist/views/system/role/index.vue.js +5 -0
  695. package/dist/views/system/role/index.vue.js.map +1 -0
  696. package/dist/views/system/role/index2.vue.js +476 -0
  697. package/dist/views/system/role/index2.vue.js.map +1 -0
  698. package/dist/views/system/session/index.vue.d.ts +3 -0
  699. package/dist/views/system/session/index.vue.js +5 -0
  700. package/dist/views/system/session/index.vue.js.map +1 -0
  701. package/dist/views/system/session/index2.vue.js +80 -0
  702. package/dist/views/system/session/index2.vue.js.map +1 -0
  703. package/dist/views/system/user/components/ResetPasswordModal.vue.d.ts +10 -0
  704. package/dist/views/system/user/components/ResetPasswordModal.vue.js +8 -0
  705. package/dist/views/system/user/components/ResetPasswordModal.vue.js.map +1 -0
  706. package/dist/views/system/user/components/ResetPasswordModal2.vue.js +111 -0
  707. package/dist/views/system/user/components/ResetPasswordModal2.vue.js.map +1 -0
  708. package/dist/views/system/user/components/UserFormModal.vue.d.ts +30 -0
  709. package/dist/views/system/user/components/UserFormModal.vue.js +8 -0
  710. package/dist/views/system/user/components/UserFormModal.vue.js.map +1 -0
  711. package/dist/views/system/user/components/UserFormModal2.vue.js +415 -0
  712. package/dist/views/system/user/components/UserFormModal2.vue.js.map +1 -0
  713. package/dist/views/system/user/index.vue.d.ts +3 -0
  714. package/dist/views/system/user/index.vue.js +8 -0
  715. package/dist/views/system/user/index.vue.js.map +1 -0
  716. package/dist/views/system/user/index2.vue.js +427 -0
  717. package/dist/views/system/user/index2.vue.js.map +1 -0
  718. package/package.json +99 -0
@@ -0,0 +1,352 @@
1
+ import { defineComponent as le, ref as D, computed as M, openBlock as n, createElementBlock as m, createElementVNode as k, createBlock as i, unref as e, withCtx as o, createVNode as t, createCommentVNode as b, toDisplayString as u, Fragment as U, renderList as F, createTextVNode as f, resolveDynamicComponent as ae, normalizeClass as re, h as ne } from "vue";
2
+ import { useRoute as se, useRouter as ie } from "vue-router";
3
+ import { useMessage as ue, NButton as p, NBreadcrumb as pe, NBreadcrumbItem as ce, NMenu as q, NTooltip as h, NDropdown as A, NAvatar as de } from "naive-ui";
4
+ import { Icon as c } from "@iconify/vue";
5
+ import { useI18n as me } from "vue-i18n";
6
+ import { useAppStore as fe } from "../stores/app.js";
7
+ import { useUserStore as he } from "../stores/user.js";
8
+ import { useAuthStore as ge } from "../stores/auth.js";
9
+ import { useLayoutMenu as ve } from "../composables/useLayoutMenu.js";
10
+ import { useMenuFlat as ye } from "../composables/useMenuFlat.js";
11
+ import { useSite as be } from "../composables/useSite.js";
12
+ import { useFullscreenToggle as ke } from "../composables/useFullscreenToggle.js";
13
+ import { useHeaderTools as we } from "../composables/useHeaderTools.js";
14
+ import { authApi as Ce } from "../api/index.js";
15
+ import { clearClientCache as _e } from "../composables/clearClientCache.js";
16
+ import { beginVoluntaryLogout as Se } from "../composables/useRealtime.js";
17
+ import { resetRouter as Ne } from "../router/index.js";
18
+ import { translateError as T } from "../utils/error.js";
19
+ import Be from "../components/SmartLogo.vue.js";
20
+ import Me from "../components/AppIcon.vue.js";
21
+ import Ue from "./SettingsDrawer.vue.js";
22
+ import qe from "../components/MenuSearch.vue.js";
23
+ import ze from "./NoticeBell.vue.js";
24
+ const Ie = { class: "bar" }, Le = { class: "left" }, Oe = {
25
+ key: 1,
26
+ class: "brand"
27
+ }, $e = { class: "brand-name mobile-hide" }, xe = {
28
+ key: 3,
29
+ class: "title"
30
+ }, De = {
31
+ key: 0,
32
+ class: "center"
33
+ }, Fe = { class: "right" }, Ae = { class: "uname mobile-hide" }, io = /* @__PURE__ */ le({
34
+ __name: "AppHeader",
35
+ props: {
36
+ showCollapse: { type: Boolean, default: !0 },
37
+ showBrand: { type: Boolean, default: !1 },
38
+ topMenu: { default: null }
39
+ },
40
+ setup(g) {
41
+ const d = fe(), { site: V } = be(), v = he(), z = ge(), I = se(), w = ie(), C = ue(), { t: s } = me(), {
42
+ isSupported: E,
43
+ isFullscreen: _,
44
+ toggle: R
45
+ } = ke(), { menuOptions: H, l1Options: K, l2Options: j, activeKey: L, selectedL1: G, onSelect: O, onSelectL1: J } = ve(), P = ye(), Q = we(), S = D(!1), N = D(!1), W = M(() => {
46
+ const r = I.meta.title;
47
+ return r ? r.includes(".") ? s(r) : r : "";
48
+ }), $ = M(() => {
49
+ var r;
50
+ return ((r = P.value.find((a) => a.path === I.path)) == null ? void 0 : r.breadcrumb) ?? [];
51
+ }), X = [
52
+ { label: "简体中文", key: "zh-CN" },
53
+ { label: "English", key: "en-US" }
54
+ ];
55
+ function Y(r) {
56
+ d.setLocale(r);
57
+ }
58
+ const B = (r, a) => () => ne(c, { icon: r, width: 16, style: a ? { color: a } : void 0 }), Z = M(() => [
59
+ { label: s("app.personalCenter"), key: "personal", icon: B("ph:user") },
60
+ { label: s("app.clearCache"), key: "clearCache", icon: B("ph:broom") },
61
+ { type: "divider", key: "d1" },
62
+ // 退出用危险色突出,避免与普通项同权。
63
+ {
64
+ label: s("app.logout"),
65
+ key: "logout",
66
+ icon: B("ph:sign-out", "var(--color-danger)"),
67
+ props: { style: "color: var(--color-danger)" }
68
+ }
69
+ ]);
70
+ async function ee(r) {
71
+ r === "personal" ? w.push("/personal/profile") : r === "clearCache" ? await oe() : r === "logout" && await te();
72
+ }
73
+ async function oe() {
74
+ try {
75
+ await _e(), C.success(s("app.cacheCleared"));
76
+ } catch (r) {
77
+ C.error(T(r));
78
+ }
79
+ }
80
+ async function te() {
81
+ await Se();
82
+ try {
83
+ await Ce.logout();
84
+ } catch (r) {
85
+ C.error(T(r));
86
+ }
87
+ Ne(), z.reset(), v.clear(), w.replace("/login");
88
+ }
89
+ return (r, a) => (n(), m("div", Ie, [
90
+ k("div", Le, [
91
+ g.showCollapse ? (n(), i(e(p), {
92
+ key: 0,
93
+ quaternary: "",
94
+ circle: "",
95
+ "aria-label": e(s)("app.collapse"),
96
+ onClick: a[0] || (a[0] = (l) => e(d).toggleCollapsed())
97
+ }, {
98
+ default: o(() => [
99
+ t(e(c), {
100
+ icon: e(d).collapsed ? "ph:list" : "ph:sidebar-simple",
101
+ width: 20
102
+ }, null, 8, ["icon"])
103
+ ]),
104
+ _: 1
105
+ }, 8, ["aria-label"])) : b("", !0),
106
+ g.showBrand ? (n(), m("div", Oe, [
107
+ t(Be, { size: 26 }),
108
+ k("span", $e, u(e(V).title), 1)
109
+ ])) : b("", !0),
110
+ e(d).showBreadcrumb && $.value.length ? (n(), i(e(pe), { key: 2 }, {
111
+ default: o(() => [
112
+ (n(!0), m(U, null, F($.value, (l, y) => (n(), i(e(ce), { key: y }, {
113
+ default: o(() => [
114
+ f(u(l), 1)
115
+ ]),
116
+ _: 2
117
+ }, 1024))), 128))
118
+ ]),
119
+ _: 1
120
+ })) : (n(), m("span", xe, u(W.value), 1))
121
+ ]),
122
+ g.topMenu ? (n(), m("div", De, [
123
+ g.topMenu === "full" ? (n(), i(e(q), {
124
+ key: 0,
125
+ mode: "horizontal",
126
+ responsive: "",
127
+ options: e(H),
128
+ value: e(L),
129
+ "onUpdate:value": e(O)
130
+ }, null, 8, ["options", "value", "onUpdate:value"])) : g.topMenu === "l1" ? (n(), i(e(q), {
131
+ key: 1,
132
+ mode: "horizontal",
133
+ responsive: "",
134
+ options: e(K),
135
+ value: e(G),
136
+ "onUpdate:value": e(J)
137
+ }, null, 8, ["options", "value", "onUpdate:value"])) : (n(), i(e(q), {
138
+ key: 2,
139
+ mode: "horizontal",
140
+ responsive: "",
141
+ options: e(j),
142
+ value: e(L),
143
+ "onUpdate:value": e(O)
144
+ }, null, 8, ["options", "value", "onUpdate:value"]))
145
+ ])) : b("", !0),
146
+ k("div", Fe, [
147
+ t(e(h), null, {
148
+ trigger: o(() => [
149
+ t(e(p), {
150
+ quaternary: "",
151
+ circle: "",
152
+ class: "mobile-hide",
153
+ onClick: a[1] || (a[1] = (l) => N.value = !0)
154
+ }, {
155
+ default: o(() => [
156
+ t(e(c), {
157
+ icon: "ph:magnifying-glass",
158
+ width: 18
159
+ })
160
+ ]),
161
+ _: 1
162
+ })
163
+ ]),
164
+ default: o(() => [
165
+ f(" " + u(e(s)("app.search")) + " (Ctrl+K) ", 1)
166
+ ]),
167
+ _: 1
168
+ }),
169
+ e(E) ? (n(), i(e(h), { key: 0 }, {
170
+ trigger: o(() => [
171
+ t(e(p), {
172
+ quaternary: "",
173
+ circle: "",
174
+ class: "mobile-hide",
175
+ "aria-label": e(_) ? e(s)("app.exitFullscreen") : e(s)("app.fullscreen"),
176
+ onClick: a[2] || (a[2] = (l) => e(R)())
177
+ }, {
178
+ default: o(() => [
179
+ t(e(c), {
180
+ icon: e(_) ? "ph:arrows-in" : "ph:arrows-out",
181
+ width: 18
182
+ }, null, 8, ["icon"])
183
+ ]),
184
+ _: 1
185
+ }, 8, ["aria-label"])
186
+ ]),
187
+ default: o(() => [
188
+ f(" " + u(e(_) ? e(s)("app.exitFullscreen") : e(s)("app.fullscreen")), 1)
189
+ ]),
190
+ _: 1
191
+ })) : b("", !0),
192
+ t(e(h), null, {
193
+ trigger: o(() => [
194
+ t(e(p), {
195
+ quaternary: "",
196
+ circle: "",
197
+ onClick: a[3] || (a[3] = (l) => e(d).toggleDark())
198
+ }, {
199
+ default: o(() => [
200
+ t(e(c), {
201
+ icon: e(d).isDark ? "ph:moon-stars" : "ph:sun",
202
+ width: 18
203
+ }, null, 8, ["icon"])
204
+ ]),
205
+ _: 1
206
+ })
207
+ ]),
208
+ default: o(() => [
209
+ f(" " + u(e(d).isDark ? e(s)("app.dark") : e(s)("app.light")), 1)
210
+ ]),
211
+ _: 1
212
+ }),
213
+ t(e(A), {
214
+ options: X,
215
+ onSelect: Y
216
+ }, {
217
+ default: o(() => [
218
+ t(e(p), {
219
+ quaternary: "",
220
+ circle: "",
221
+ class: "mobile-hide",
222
+ "aria-label": e(s)("app.language")
223
+ }, {
224
+ default: o(() => [
225
+ t(e(c), {
226
+ icon: "ph:translate",
227
+ width: 18
228
+ })
229
+ ]),
230
+ _: 1
231
+ }, 8, ["aria-label"])
232
+ ]),
233
+ _: 1
234
+ }),
235
+ t(e(h), null, {
236
+ trigger: o(() => [
237
+ t(e(p), {
238
+ quaternary: "",
239
+ circle: "",
240
+ class: "mobile-hide",
241
+ onClick: a[4] || (a[4] = (l) => S.value = !0)
242
+ }, {
243
+ default: o(() => [
244
+ t(e(c), {
245
+ icon: "ph:gear-six",
246
+ width: 18
247
+ })
248
+ ]),
249
+ _: 1
250
+ })
251
+ ]),
252
+ default: o(() => [
253
+ f(" " + u(e(s)("app.settings")), 1)
254
+ ]),
255
+ _: 1
256
+ }),
257
+ e(z).modules.length > 1 ? (n(), i(e(h), { key: 1 }, {
258
+ trigger: o(() => [
259
+ t(e(p), {
260
+ quaternary: "",
261
+ circle: "",
262
+ "aria-label": e(s)("app.switchModule"),
263
+ onClick: a[5] || (a[5] = (l) => e(w).push("/module"))
264
+ }, {
265
+ default: o(() => [
266
+ t(e(c), {
267
+ icon: "ph:squares-four",
268
+ width: 18
269
+ })
270
+ ]),
271
+ _: 1
272
+ }, 8, ["aria-label"])
273
+ ]),
274
+ default: o(() => [
275
+ f(" " + u(e(s)("app.switchModule")), 1)
276
+ ]),
277
+ _: 1
278
+ })) : b("", !0),
279
+ (n(!0), m(U, null, F(e(Q), (l) => (n(), m(U, {
280
+ key: l.key
281
+ }, [
282
+ l.component ? (n(), i(ae(l.component), { key: 0 })) : (n(), i(e(h), { key: 1 }, {
283
+ trigger: o(() => [
284
+ t(e(p), {
285
+ quaternary: "",
286
+ circle: "",
287
+ class: re({ "mobile-hide": !l.keepOnMobile }),
288
+ "aria-label": l.label,
289
+ onClick: (y) => l.onClick()
290
+ }, {
291
+ default: o(() => [
292
+ t(Me, {
293
+ icon: l.icon,
294
+ size: 18
295
+ }, null, 8, ["icon"])
296
+ ]),
297
+ _: 2
298
+ }, 1032, ["class", "aria-label", "onClick"])
299
+ ]),
300
+ default: o(() => [
301
+ f(" " + u(l.label), 1)
302
+ ]),
303
+ _: 2
304
+ }, 1024))
305
+ ], 64))), 128)),
306
+ t(ze),
307
+ t(e(A), {
308
+ options: Z.value,
309
+ onSelect: ee
310
+ }, {
311
+ default: o(() => [
312
+ t(e(p), {
313
+ quaternary: "",
314
+ "aria-label": e(s)("app.profile")
315
+ }, {
316
+ default: o(() => {
317
+ var l, y, x;
318
+ return [
319
+ (l = e(v).userInfo) != null && l.avatar ? (n(), i(e(de), {
320
+ key: 0,
321
+ round: "",
322
+ size: 22,
323
+ src: e(v).userInfo.avatar
324
+ }, null, 8, ["src"])) : (n(), i(e(c), {
325
+ key: 1,
326
+ icon: "ph:user-circle",
327
+ width: 20
328
+ })),
329
+ k("span", Ae, u(((y = e(v).userInfo) == null ? void 0 : y.name) ?? ((x = e(v).userInfo) == null ? void 0 : x.account) ?? ""), 1)
330
+ ];
331
+ }),
332
+ _: 1
333
+ }, 8, ["aria-label"])
334
+ ]),
335
+ _: 1
336
+ }, 8, ["options"])
337
+ ]),
338
+ t(Ue, {
339
+ show: S.value,
340
+ "onUpdate:show": a[6] || (a[6] = (l) => S.value = l)
341
+ }, null, 8, ["show"]),
342
+ t(qe, {
343
+ show: N.value,
344
+ "onUpdate:show": a[7] || (a[7] = (l) => N.value = l)
345
+ }, null, 8, ["show"])
346
+ ]));
347
+ }
348
+ });
349
+ export {
350
+ io as default
351
+ };
352
+ //# sourceMappingURL=AppHeader2.vue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AppHeader2.vue.js","sources":["../../src/layouts/AppHeader.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, h, ref } from 'vue'\nimport { useRoute, useRouter } from 'vue-router'\nimport {\n NAvatar,\n NButton,\n NDropdown,\n NTooltip,\n NMenu,\n NBreadcrumb,\n NBreadcrumbItem,\n useMessage,\n type DropdownOption,\n} from 'naive-ui'\nimport { Icon } from '@iconify/vue'\nimport { useI18n } from 'vue-i18n'\nimport { useAppStore, type Locale } from '#/stores/app'\nimport { useUserStore } from '#/stores/user'\nimport { useAuthStore } from '#/stores/auth'\nimport { useLayoutMenu } from '#/composables/useLayoutMenu'\nimport { useMenuFlat } from '#/composables/useMenuFlat'\nimport { useSite } from '#/composables/useSite'\nimport { useFullscreenToggle } from '#/composables/useFullscreenToggle'\nimport { useHeaderTools } from '#/composables/useHeaderTools'\nimport { authApi } from '#/api'\nimport { clearClientCache } from '#/composables/clearClientCache'\nimport { beginVoluntaryLogout } from '#/composables/useRealtime'\nimport { resetRouter } from '#/router'\nimport { translateError } from '#/utils/error'\nimport SmartLogo from '#/components/SmartLogo.vue'\nimport AppIcon from '#/components/AppIcon.vue'\nimport SettingsDrawer from './SettingsDrawer.vue'\nimport MenuSearch from '#/components/MenuSearch.vue'\nimport NoticeBell from './NoticeBell.vue'\n\nwithDefaults(\n defineProps<{\n showCollapse?: boolean\n showBrand?: boolean\n topMenu?: 'full' | 'l1' | 'l2' | null\n }>(),\n { showCollapse: true, showBrand: false, topMenu: null },\n)\n\nconst app = useAppStore()\nconst { site } = useSite()\nconst user = useUserStore()\nconst auth = useAuthStore()\nconst route = useRoute()\nconst router = useRouter()\nconst message = useMessage()\nconst { t } = useI18n()\n// 自研而非 VueUse useFullscreen:后者在 iPadOS 上只探标准 API,把明明能全屏的设备判成不支持。\n// isSupported=false(如 iPhone)时整个按钮不渲染,不留点了没反应的按钮。\nconst {\n isSupported: fullscreenSupported,\n isFullscreen,\n toggle: toggleFullscreen,\n} = useFullscreenToggle()\nconst { menuOptions, l1Options, l2Options, activeKey, selectedL1, onSelect, onSelectL1 } =\n useLayoutMenu()\nconst flat = useMenuFlat()\n// 扩展模块登记的顶栏入口(registerHeaderTool),渲染在内置铃铛左侧。\nconst headerTools = useHeaderTools()\n\nconst settingsOpen = ref(false)\nconst searchOpen = ref(false)\n\nconst title = computed(() => {\n const m = route.meta.title as string | undefined\n if (!m) return ''\n return m.includes('.') ? t(m) : m\n})\nconst crumbs = computed(() => flat.value.find(l => l.path === route.path)?.breadcrumb ?? [])\n\n// 语言名按各自书写系统展示,不随当前 locale 翻译。\nconst localeOptions: DropdownOption[] = [\n { label: '简体中文', key: 'zh-CN' },\n { label: 'English', key: 'en-US' },\n]\nfunction onLocale(key: string) {\n app.setLocale(key as Locale)\n}\n\n// 下拉图标(用户菜单:个人中心 / 清除缓存 / 退出)。\n// color 用于危险项(退出)整行红字+红图标。\nconst renderUserIcon = (name: string, color?: string) => () =>\n h(Icon, { icon: name, width: 16, style: color ? { color } : undefined })\n\n// 下拉:个人中心 / 清除缓存 / 退出;五块能力进 /personal 二级壳(见 PersonalLayout)。\nconst userOptions = computed<DropdownOption[]>(() => [\n { label: t('app.personalCenter'), key: 'personal', icon: renderUserIcon('ph:user') },\n { label: t('app.clearCache'), key: 'clearCache', icon: renderUserIcon('ph:broom') },\n { type: 'divider', key: 'd1' },\n // 退出用危险色突出,避免与普通项同权。\n {\n label: t('app.logout'),\n key: 'logout',\n icon: renderUserIcon('ph:sign-out', 'var(--color-danger)'),\n props: { style: 'color: var(--color-danger)' },\n },\n])\nasync function onUser(key: string) {\n if (key === 'personal') router.push('/personal/profile')\n else if (key === 'clearCache') await onClearCache()\n else if (key === 'logout') await logout()\n}\nasync function onClearCache() {\n try {\n await clearClientCache()\n message.success(t('app.cacheCleared'))\n } catch (e) {\n message.error(translateError(e))\n }\n}\nasync function logout() {\n // 先断实时并标记自愿退出:logout API 会 Revoke 会话并推 force-logout,避免误弹「您已被强制下线」。\n await beginVoluntaryLogout()\n try {\n await authApi.logout()\n } catch (e) {\n message.error(translateError(e)) // 尽力而为,不阻断登出\n }\n resetRouter()\n auth.reset() // 内部会 clearTabs()\n user.clear()\n router.replace('/login')\n}\n</script>\n\n<template>\n <div class=\"bar\">\n <div class=\"left\">\n <n-button\n v-if=\"showCollapse\"\n quaternary\n circle\n :aria-label=\"t('app.collapse')\"\n @click=\"app.toggleCollapsed()\"\n >\n <Icon :icon=\"app.collapsed ? 'ph:list' : 'ph:sidebar-simple'\" :width=\"20\" />\n </n-button>\n <div v-if=\"showBrand\" class=\"brand\">\n <SmartLogo :size=\"26\" />\n <span class=\"brand-name mobile-hide\">{{ site.title }}</span>\n </div>\n <n-breadcrumb v-if=\"app.showBreadcrumb && crumbs.length\">\n <n-breadcrumb-item v-for=\"(c, i) in crumbs\" :key=\"i\">{{ c }}</n-breadcrumb-item>\n </n-breadcrumb>\n <span v-else class=\"title\">{{ title }}</span>\n </div>\n\n <div v-if=\"topMenu\" class=\"center\">\n <n-menu\n v-if=\"topMenu === 'full'\"\n mode=\"horizontal\"\n responsive\n :options=\"menuOptions\"\n :value=\"activeKey\"\n @update:value=\"onSelect\"\n />\n <n-menu\n v-else-if=\"topMenu === 'l1'\"\n mode=\"horizontal\"\n responsive\n :options=\"l1Options\"\n :value=\"selectedL1\"\n @update:value=\"onSelectL1\"\n />\n <n-menu\n v-else\n mode=\"horizontal\"\n responsive\n :options=\"l2Options\"\n :value=\"activeKey\"\n @update:value=\"onSelect\"\n />\n </div>\n\n <!-- mobile-hide:窄屏(<768px)藏起来的次要项。顶栏总宽 > 屏宽时右端会被 layout 的 overflow:hidden 裁掉,\n 而全站唯一的登出入口就在最右边的用户下拉里 —— 手机上不能因为一排图标而退不出登录。\n 搜索有 Ctrl+K 兜底、全屏在手机上无意义、语言与设置属低频(设置抽屉本就是宽屏调布局用的)。 -->\n <div class=\"right\">\n <n-tooltip>\n <template #trigger>\n <n-button quaternary circle class=\"mobile-hide\" @click=\"searchOpen = true\">\n <Icon icon=\"ph:magnifying-glass\" :width=\"18\" />\n </n-button>\n </template>\n {{ t('app.search') }} (Ctrl+K)\n </n-tooltip>\n\n <n-tooltip v-if=\"fullscreenSupported\">\n <template #trigger>\n <n-button\n quaternary\n circle\n class=\"mobile-hide\"\n :aria-label=\"isFullscreen ? t('app.exitFullscreen') : t('app.fullscreen')\"\n @click=\"toggleFullscreen()\"\n >\n <Icon :icon=\"isFullscreen ? 'ph:arrows-in' : 'ph:arrows-out'\" :width=\"18\" />\n </n-button>\n </template>\n {{ isFullscreen ? t('app.exitFullscreen') : t('app.fullscreen') }}\n </n-tooltip>\n\n <n-tooltip>\n <template #trigger>\n <n-button quaternary circle @click=\"app.toggleDark()\">\n <Icon :icon=\"app.isDark ? 'ph:moon-stars' : 'ph:sun'\" :width=\"18\" />\n </n-button>\n </template>\n {{ app.isDark ? t('app.dark') : t('app.light') }}\n </n-tooltip>\n\n <n-dropdown :options=\"localeOptions\" @select=\"onLocale\">\n <n-button quaternary circle class=\"mobile-hide\" :aria-label=\"t('app.language')\">\n <Icon icon=\"ph:translate\" :width=\"18\" />\n </n-button>\n </n-dropdown>\n\n <n-tooltip>\n <template #trigger>\n <n-button quaternary circle class=\"mobile-hide\" @click=\"settingsOpen = true\">\n <Icon icon=\"ph:gear-six\" :width=\"18\" />\n </n-button>\n </template>\n {{ t('app.settings') }}\n </n-tooltip>\n\n <!-- 导航到应用选择页,而非下拉直切:应用一多下拉就难用,且\"设为默认\"只在选择页上。 -->\n <n-tooltip v-if=\"auth.modules.length > 1\">\n <template #trigger>\n <n-button\n quaternary\n circle\n :aria-label=\"t('app.switchModule')\"\n @click=\"router.push('/module')\"\n >\n <Icon icon=\"ph:squares-four\" :width=\"18\" />\n </n-button>\n </template>\n {{ t('app.switchModule') }}\n </n-tooltip>\n\n <!-- 扩展模块的入口:图标模式画成同款圆形按钮,组件模式整块交给它自己(自带角标/弹层时用) -->\n <template v-for=\"tool in headerTools\" :key=\"tool.key\">\n <component :is=\"tool.component\" v-if=\"tool.component\" />\n <n-tooltip v-else>\n <template #trigger>\n <n-button\n quaternary\n circle\n :class=\"{ 'mobile-hide': !tool.keepOnMobile }\"\n :aria-label=\"tool.label\"\n @click=\"tool.onClick()\"\n >\n <AppIcon :icon=\"tool.icon\" :size=\"18\" />\n </n-button>\n </template>\n {{ tool.label }}\n </n-tooltip>\n </template>\n\n <NoticeBell />\n\n <n-dropdown :options=\"userOptions\" @select=\"onUser\">\n <n-button quaternary :aria-label=\"t('app.profile')\">\n <!-- 有头像用头像(profile 页可传),没有回落原图标;头像来源见 stores/user.ts 的 avatar 注释 -->\n <n-avatar v-if=\"user.userInfo?.avatar\" round :size=\"22\" :src=\"user.userInfo.avatar\" />\n <Icon v-else icon=\"ph:user-circle\" :width=\"20\" />\n <span class=\"uname mobile-hide\">\n {{ user.userInfo?.name ?? user.userInfo?.account ?? '' }}\n </span>\n </n-button>\n </n-dropdown>\n </div>\n\n <SettingsDrawer v-model:show=\"settingsOpen\" />\n <MenuSearch v-model:show=\"searchOpen\" />\n </div>\n</template>\n\n<style scoped>\n.bar {\n height: 100%;\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 0 16px;\n}\n/* 可收缩(min-width:0 + overflow):右侧那组是刚需(含唯一的登出入口),要挤先挤左边的标题/面包屑。 */\n.left {\n display: flex;\n align-items: center;\n gap: 10px;\n min-width: 0;\n overflow: hidden;\n}\n.brand {\n display: flex;\n align-items: center;\n gap: 8px;\n color: var(--color-text-primary);\n font-weight: 600;\n flex-shrink: 0;\n}\n.brand-name {\n font-size: var(--font-size-md);\n}\n.title {\n font-size: var(--font-size-md);\n font-weight: 500;\n color: var(--color-text-primary);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.uname {\n margin-left: 6px;\n}\n.center {\n flex: 1;\n min-width: 0;\n overflow: hidden;\n}\n.right {\n display: flex;\n align-items: center;\n gap: 6px;\n margin-left: auto;\n flex-shrink: 0;\n}\n\n/* 窄屏(断点与 layouts/default.vue 的 breakpointsTailwind.smaller('md') 一致):\n 只留暗色/应用切换/铃铛/用户下拉,其余隐藏,保证最右的登出入口不被裁掉。 */\n@media (max-width: 767px) {\n .bar {\n gap: 8px;\n padding: 0 8px;\n }\n .mobile-hide {\n display: none;\n }\n}\n</style>\n"],"names":["app","useAppStore","site","useSite","user","useUserStore","auth","useAuthStore","route","useRoute","router","useRouter","message","useMessage","t","useI18n","fullscreenSupported","isFullscreen","toggleFullscreen","useFullscreenToggle","menuOptions","l1Options","l2Options","activeKey","selectedL1","onSelect","onSelectL1","useLayoutMenu","flat","useMenuFlat","headerTools","useHeaderTools","settingsOpen","ref","searchOpen","title","computed","m","crumbs","_a","l","localeOptions","onLocale","key","renderUserIcon","name","color","h","Icon","userOptions","onUser","onClearCache","logout","clearClientCache","e","translateError","beginVoluntaryLogout","authApi","resetRouter","_openBlock","_createElementBlock","_hoisted_1","_createElementVNode","_hoisted_2","__props","_createBlock","_unref","NButton","_cache","$event","_createVNode","_hoisted_3","SmartLogo","_hoisted_4","_toDisplayString","NBreadcrumb","_Fragment","_renderList","c","i","NBreadcrumbItem","_hoisted_5","_hoisted_6","NMenu","_hoisted_7","NTooltip","_createTextVNode","NDropdown","tool","_resolveDynamicComponent","_normalizeClass","AppIcon","NoticeBell","NAvatar","_hoisted_8","SettingsDrawer","MenuSearch"],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ declare const __VLS_export: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
2
+ declare const _default: typeof __VLS_export;
3
+ export default _default;
@@ -0,0 +1,8 @@
1
+ import o from "./LayoutModeCards2.vue.js";
2
+ /* empty css */
3
+ import t from "../_virtual/_plugin-vue_export-helper.js";
4
+ const d = /* @__PURE__ */ t(o, [["__scopeId", "data-v-66443dff"]]);
5
+ export {
6
+ d as default
7
+ };
8
+ //# sourceMappingURL=LayoutModeCards.vue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LayoutModeCards.vue.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -0,0 +1,67 @@
1
+ import { defineComponent as c, openBlock as l, createElementBlock as t, Fragment as r, renderList as v, unref as e, createElementVNode as a, normalizeClass as n, createStaticVNode as f, toDisplayString as y } from "vue";
2
+ import { useI18n as b } from "vue-i18n";
3
+ import { useAppStore as g, LAYOUT_MODES as k } from "../stores/app.js";
4
+ const m = { class: "grid" }, w = ["onClick"], C = ["aria-label", "aria-pressed"], z = /* @__PURE__ */ c({
5
+ __name: "LayoutModeCards",
6
+ setup(M) {
7
+ const o = g(), { t: u } = b();
8
+ function d(p) {
9
+ const s = p.split("-").map((i) => i[0].toUpperCase() + i.slice(1)).join("");
10
+ return u("settings.layout" + s);
11
+ }
12
+ return (p, s) => (l(), t("div", m, [
13
+ (l(!0), t(r, null, v(e(k), (i) => (l(), t("div", {
14
+ key: i,
15
+ class: "cell",
16
+ onClick: (L) => e(o).setLayoutMode(i)
17
+ }, [
18
+ a("button", {
19
+ type: "button",
20
+ class: n(["card", { on: e(o).layoutMode === i }]),
21
+ "aria-label": d(i),
22
+ "aria-pressed": e(o).layoutMode === i
23
+ }, [
24
+ a("span", {
25
+ class: n(["inner", i.includes("vertical") ? "row" : "col"])
26
+ }, [
27
+ i === "vertical" ? (l(), t(r, { key: 0 }, [
28
+ s[0] || (s[0] = a("i", { class: "sider strong" }, null, -1)),
29
+ s[1] || (s[1] = a("i", { class: "vwrap" }, [
30
+ a("i", { class: "header p200" }),
31
+ a("i", { class: "main p200" })
32
+ ], -1))
33
+ ], 64)) : i === "vertical-mix" ? (l(), t(r, { key: 1 }, [
34
+ s[2] || (s[2] = f('<i class="rail strong" data-v-66443dff></i><i class="subsider p300" data-v-66443dff></i><i class="vwrap" data-v-66443dff><i class="header p200" data-v-66443dff></i><i class="main p200" data-v-66443dff></i></i>', 3))
35
+ ], 64)) : i === "vertical-hybrid-header-first" ? (l(), t(r, { key: 2 }, [
36
+ s[3] || (s[3] = f('<i class="rail strong" data-v-66443dff></i><i class="subsider p300" data-v-66443dff></i><i class="vwrap" data-v-66443dff><i class="header strong" data-v-66443dff></i><i class="main p200" data-v-66443dff></i></i>', 3))
37
+ ], 64)) : i === "horizontal" ? (l(), t(r, { key: 3 }, [
38
+ s[4] || (s[4] = a("i", { class: "header full strong" }, null, -1)),
39
+ s[5] || (s[5] = a("i", { class: "hwrap" }, [
40
+ a("i", { class: "main p200" })
41
+ ], -1))
42
+ ], 64)) : i === "top-hybrid-sidebar-first" ? (l(), t(r, { key: 4 }, [
43
+ s[6] || (s[6] = a("i", { class: "header full p300" }, null, -1)),
44
+ s[7] || (s[7] = a("i", { class: "hwrap" }, [
45
+ a("i", { class: "sider strong" }),
46
+ a("i", { class: "main p200" })
47
+ ], -1))
48
+ ], 64)) : (l(), t(r, { key: 5 }, [
49
+ s[8] || (s[8] = a("i", { class: "header full strong" }, null, -1)),
50
+ s[9] || (s[9] = a("i", { class: "hwrap" }, [
51
+ a("i", { class: "sider p300" }),
52
+ a("i", { class: "main p200" })
53
+ ], -1))
54
+ ], 64))
55
+ ], 2)
56
+ ], 10, C),
57
+ a("p", {
58
+ class: n(["label", { on: e(o).layoutMode === i }])
59
+ }, y(d(i)), 3)
60
+ ], 8, w))), 128))
61
+ ]));
62
+ }
63
+ });
64
+ export {
65
+ z as default
66
+ };
67
+ //# sourceMappingURL=LayoutModeCards2.vue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LayoutModeCards2.vue.js","sources":["../../src/layouts/LayoutModeCards.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { useI18n } from 'vue-i18n'\nimport { useAppStore, LAYOUT_MODES, type LayoutMode } from '#/stores/app'\n\n// 布局模式彩色线框卡片(对齐 SoybeanAdmin theme-drawer/layout-mode.vue)。\n// 三档主色 strong(500)/p300/p200 由实时 --color-primary 派生;形状与 soybean 逐模式一致。\nconst app = useAppStore()\nconst { t } = useI18n()\n\nfunction label(m: LayoutMode) {\n const pascal = m\n .split('-')\n .map(w => w[0]!.toUpperCase() + w.slice(1))\n .join('')\n return t('settings.layout' + pascal)\n}\n</script>\n\n<template>\n <div class=\"grid\">\n <div v-for=\"m in LAYOUT_MODES\" :key=\"m\" class=\"cell\" @click=\"app.setLayoutMode(m)\">\n <button\n type=\"button\"\n class=\"card\"\n :class=\"{ on: app.layoutMode === m }\"\n :aria-label=\"label(m)\"\n :aria-pressed=\"app.layoutMode === m\"\n >\n <span class=\"inner\" :class=\"m.includes('vertical') ? 'row' : 'col'\">\n <!-- 左侧菜单:满高侧栏 + (头 / 内容) -->\n <template v-if=\"m === 'vertical'\">\n <i class=\"sider strong\" />\n <i class=\"vwrap\">\n <i class=\"header p200\" />\n <i class=\"main p200\" />\n </i>\n </template>\n <!-- 左侧混合:一级 rail + 二级列 + (头 / 内容) -->\n <template v-else-if=\"m === 'vertical-mix'\">\n <i class=\"rail strong\" />\n <i class=\"subsider p300\" />\n <i class=\"vwrap\">\n <i class=\"header p200\" />\n <i class=\"main p200\" />\n </i>\n </template>\n <!-- 左侧混合-顶部优先:一级上顶,rail(二级) + 三级列 + (强调头 / 内容) -->\n <template v-else-if=\"m === 'vertical-hybrid-header-first'\">\n <i class=\"rail strong\" />\n <i class=\"subsider p300\" />\n <i class=\"vwrap\">\n <i class=\"header strong\" />\n <i class=\"main p200\" />\n </i>\n </template>\n <!-- 顶部菜单:通栏头 + 内容 -->\n <template v-else-if=\"m === 'horizontal'\">\n <i class=\"header full strong\" />\n <i class=\"hwrap\"><i class=\"main p200\" /></i>\n </template>\n <!-- 顶部混合-侧边优先:头(二级)+ (强调 rail(一级) / 内容) -->\n <template v-else-if=\"m === 'top-hybrid-sidebar-first'\">\n <i class=\"header full p300\" />\n <i class=\"hwrap\">\n <i class=\"sider strong\" />\n <i class=\"main p200\" />\n </i>\n </template>\n <!-- 顶部混合-顶部优先:强调头(一级)+ (侧栏(二级) / 内容) -->\n <template v-else>\n <i class=\"header full strong\" />\n <i class=\"hwrap\">\n <i class=\"sider p300\" />\n <i class=\"main p200\" />\n </i>\n </template>\n </span>\n </button>\n <p class=\"label\" :class=\"{ on: app.layoutMode === m }\">{{ label(m) }}</p>\n </div>\n </div>\n</template>\n\n<style scoped>\n.grid {\n display: grid;\n grid-template-columns: repeat(2, 1fr);\n gap: 12px;\n /* animated tab 的 .n-tabs-pane-wrapper 是 overflow:hidden,会裁掉边列卡片的 2px 选中环;内缩 3px 让环留在裁剪框内 */\n padding-inline: 3px;\n}\n.cell {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 8px;\n cursor: pointer;\n}\n\n/* 卡片:soybean = shadow + ring-2(默认透明,hover/选中转主色) */\n.card {\n width: 100%;\n height: 62px;\n padding: 6px;\n border: none;\n border-radius: 4px;\n background: var(--color-bg-container);\n box-shadow:\n 0 1px 3px rgba(20, 27, 45, 0.1),\n 0 0 0 2px transparent;\n cursor: pointer;\n transition: box-shadow 0.15s ease;\n}\n.cell:hover .card {\n box-shadow:\n 0 1px 3px rgba(20, 27, 45, 0.1),\n 0 0 0 2px var(--color-primary);\n}\n.card.on {\n box-shadow:\n 0 1px 3px rgba(20, 27, 45, 0.1),\n 0 0 0 2px var(--color-primary);\n}\n\n/* 线框:三档主色派生跟随实时 --color-primary */\n.inner {\n --strong: var(--color-primary);\n --p300: color-mix(in srgb, var(--color-primary) 58%, var(--color-bg-container));\n --p200: color-mix(in srgb, var(--color-primary) 34%, var(--color-bg-container));\n display: flex;\n gap: 5px;\n width: 100%;\n height: 100%;\n}\n.inner.row {\n flex-direction: row;\n}\n.inner.col {\n flex-direction: column;\n}\n.inner i,\n.inner .vwrap,\n.inner .hwrap {\n border-radius: 3px;\n}\n.strong {\n background: var(--strong);\n}\n.p300 {\n background: var(--p300);\n}\n.p200 {\n background: var(--p200);\n}\n.sider {\n width: 18%;\n flex-shrink: 0;\n}\n.rail {\n width: 9%;\n flex-shrink: 0;\n}\n.subsider {\n width: 16%;\n flex-shrink: 0;\n}\n.header {\n flex-shrink: 0;\n height: 13px;\n}\n.header.full {\n width: 100%;\n}\n.main {\n flex: 1;\n}\n.vwrap {\n flex: 1;\n display: flex;\n flex-direction: column;\n gap: 5px;\n}\n.vwrap .header {\n width: 100%;\n}\n.hwrap {\n flex: 1;\n display: flex;\n flex-direction: row;\n gap: 5px;\n}\n\n.label {\n margin: 0;\n text-align: center;\n font-size: var(--font-size-xs);\n line-height: var(--line-height-xs);\n color: var(--color-text-secondary);\n}\n.label.on {\n color: var(--color-primary);\n font-weight: var(--font-weight-medium);\n}\n</style>\n"],"names":["app","useAppStore","t","useI18n","label","m","pascal","w","_openBlock","_createElementBlock","_hoisted_1","_Fragment","_renderList","_unref","LAYOUT_MODES","$event","_createElementVNode","_normalizeClass","_toDisplayString"],"mappings":";;;;;;AAMA,UAAMA,IAAMC,EAAA,GACN,EAAE,GAAAC,EAAA,IAAMC,EAAA;AAEd,aAASC,EAAMC,GAAe;AAC5B,YAAMC,IAASD,EACZ,MAAM,GAAG,EACT,IAAI,OAAKE,EAAE,CAAC,EAAG,YAAA,IAAgBA,EAAE,MAAM,CAAC,CAAC,EACzC,KAAK,EAAE;AACV,aAAOL,EAAE,oBAAoBI,CAAM;AAAA,IACrC;sBAIEE,EAAA,GAAAC,EA6DM,OA7DNC,GA6DM;AAAA,cA5DJD,EA2DME,GAAA,MAAAC,EA3DWC,EAAAC,CAAA,GAAY,CAAjBT,YAAZI,EA2DM,OAAA;AAAA,QA3D0B,KAAKJ;AAAA,QAAG,OAAM;AAAA,QAAQ,SAAK,CAAAU,MAAEF,EAAAb,CAAA,EAAI,cAAcK,CAAC;AAAA,MAAA;QAC9EW,EAwDS,UAAA;AAAA,UAvDP,MAAK;AAAA,UACL,UAAM,QAAM,EAAA,IACEH,KAAI,eAAeR,EAAA,CAAC,CAAA;AAAA,UACjC,cAAYD,EAAMC,CAAC;AAAA,UACnB,gBAAcQ,EAAAb,CAAA,EAAI,eAAeK;AAAA,QAAA;UAElCW,EAgDO,QAAA;AAAA,YAhDD,OAAKC,EAAA,CAAC,SAAgBZ,EAAE,SAAQ,UAAA,IAAA,QAAA,KAAA,CAAA;AAAA,UAAA;YAEpBA,MAAC,mBAAjBI,EAMWE,GAAA,EAAA,KAAA,KAAA;AAAA,8BALTK,EAA0B,KAAA,EAAvB,OAAM,eAAA,GAAc,MAAA,EAAA;AAAA,8BACvBA,EAGI,KAAA,EAHD,OAAM,WAAO;AAAA,gBACdA,EAAyB,KAAA,EAAtB,OAAM,eAAa;AAAA,gBACtBA,EAAuB,KAAA,EAApB,OAAM,aAAW;AAAA,cAAA;sBAIHX,MAAC,uBAAtBI,EAOWE,GAAA,EAAA,KAAA,KAAA;AAAA;sBAEUN,MAAC,uCAAtBI,EAOWE,GAAA,EAAA,KAAA,KAAA;AAAA;sBAEUN,MAAC,qBAAtBI,EAGWE,GAAA,EAAA,KAAA,KAAA;AAAA,8BAFTK,EAAgC,KAAA,EAA7B,OAAM,qBAAA,GAAoB,MAAA,EAAA;AAAA,8BAC7BA,EAA4C,KAAA,EAAzC,OAAM,WAAO;AAAA,gBAACA,EAAuB,KAAA,EAApB,OAAM,aAAW;AAAA,cAAA;sBAGlBX,MAAC,mCAAtBI,EAMWE,GAAA,EAAA,KAAA,KAAA;AAAA,8BALTK,EAA8B,KAAA,EAA3B,OAAM,mBAAA,GAAkB,MAAA,EAAA;AAAA,8BAC3BA,EAGI,KAAA,EAHD,OAAM,WAAO;AAAA,gBACdA,EAA0B,KAAA,EAAvB,OAAM,gBAAc;AAAA,gBACvBA,EAAuB,KAAA,EAApB,OAAM,aAAW;AAAA,cAAA;4BAIxBP,EAMWE,GAAA,EAAA,KAAA,KAAA;AAAA,8BALTK,EAAgC,KAAA,EAA7B,OAAM,qBAAA,GAAoB,MAAA,EAAA;AAAA,8BAC7BA,EAGI,KAAA,EAHD,OAAM,WAAO;AAAA,gBACdA,EAAwB,KAAA,EAArB,OAAM,cAAY;AAAA,gBACrBA,EAAuB,KAAA,EAApB,OAAM,aAAW;AAAA,cAAA;;;;QAK5BA,EAAyE,KAAA;AAAA,UAAtE,UAAM,SAAO,EAAA,IAAeH,KAAI,eAAeR,GAAC,CAAA;AAAA,QAAA,GAAOa,EAAAd,EAAMC,CAAC,CAAA,GAAA,CAAA;AAAA,MAAA;;;;"}
@@ -0,0 +1,3 @@
1
+ declare const __VLS_export: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
2
+ declare const _default: typeof __VLS_export;
3
+ export default _default;
@@ -0,0 +1,8 @@
1
+ import o from "./NoticeBell2.vue.js";
2
+ /* empty css */
3
+ import t from "../_virtual/_plugin-vue_export-helper.js";
4
+ const e = /* @__PURE__ */ t(o, [["__scopeId", "data-v-1ac49123"]]);
5
+ export {
6
+ e as default
7
+ };
8
+ //# sourceMappingURL=NoticeBell.vue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NoticeBell.vue.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}