create-young-proj 0.7.0 → 0.9.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (401) hide show
  1. package/LICENSE +0 -0
  2. package/README.md +0 -0
  3. package/dist/index.mjs +0 -0
  4. package/package.json +36 -28
  5. package/template-admin-server/.editorconfig +0 -0
  6. package/template-admin-server/.nvmrc +0 -0
  7. package/template-admin-server/.vscode/extensions.json +0 -0
  8. package/template-admin-server/.vscode/settings.json +0 -0
  9. package/template-admin-server/README.md +0 -0
  10. package/template-admin-server/_gitignore +0 -0
  11. package/template-admin-server/boot.mjs +0 -0
  12. package/template-admin-server/package.json +0 -0
  13. package/template-admin-server/rome.json +0 -0
  14. package/template-admin-server/src/config/config.default.ts +0 -0
  15. package/template-admin-server/src/configuration.ts +0 -0
  16. package/template-admin-server/src/controller/admin.controller.ts +0 -0
  17. package/template-admin-server/src/controller/api.controller.ts +0 -0
  18. package/template-admin-server/src/controller/base.controller.ts +0 -0
  19. package/template-admin-server/src/controller/dto/api.ts +0 -0
  20. package/template-admin-server/src/controller/dto/index.ts +0 -0
  21. package/template-admin-server/src/controller/dto/menu.ts +0 -0
  22. package/template-admin-server/src/controller/dto/role.ts +0 -0
  23. package/template-admin-server/src/controller/dto/user.ts +0 -0
  24. package/template-admin-server/src/controller/menu.controller.ts +0 -0
  25. package/template-admin-server/src/controller/role.controller.ts +0 -0
  26. package/template-admin-server/src/controller/user.controller.ts +0 -0
  27. package/template-admin-server/src/entities/Api.ts +0 -0
  28. package/template-admin-server/src/entities/BaseCreate.ts +0 -0
  29. package/template-admin-server/src/entities/Menu.ts +0 -0
  30. package/template-admin-server/src/entities/Role.ts +0 -0
  31. package/template-admin-server/src/entities/User.ts +0 -0
  32. package/template-admin-server/src/entities/index.ts +0 -0
  33. package/template-admin-server/src/filter/default.filter.ts +0 -0
  34. package/template-admin-server/src/filter/notfound.filter.ts +0 -0
  35. package/template-admin-server/src/middleware/helper.middleware.ts +0 -0
  36. package/template-admin-server/src/middleware/index.ts +0 -0
  37. package/template-admin-server/src/middleware/jwt.middleware.ts +0 -0
  38. package/template-admin-server/src/middleware/report.middleware.ts +0 -0
  39. package/template-admin-server/src/service/api.service.ts +0 -0
  40. package/template-admin-server/src/service/basic.ts +0 -0
  41. package/template-admin-server/src/service/index.ts +0 -0
  42. package/template-admin-server/src/service/menu.service.ts +0 -0
  43. package/template-admin-server/src/service/role.service.ts +0 -0
  44. package/template-admin-server/src/service/user.service.ts +0 -0
  45. package/template-admin-server/src/strategy/jwt.strategy.ts +0 -0
  46. package/template-admin-server/src/types/index.ts +0 -0
  47. package/template-admin-server/src/types/types.d.ts +0 -0
  48. package/template-admin-server/tsconfig.json +0 -0
  49. package/template-nuxt-admin/.eslintrc +14 -0
  50. package/template-nuxt-admin/.vscode/extensions.json +12 -0
  51. package/template-nuxt-admin/.vscode/settings.json +25 -0
  52. package/template-nuxt-admin/Dockerfile +0 -0
  53. package/template-nuxt-admin/README.md +29 -1
  54. package/template-nuxt-admin/_gitignore +23 -0
  55. package/template-nuxt-admin/_npmrc +2 -0
  56. package/template-nuxt-admin/app.vue +12 -12
  57. package/template-nuxt-admin/boot.mjs +0 -0
  58. package/template-nuxt-admin/components/ScreenFull.vue +5 -4
  59. package/template-nuxt-admin/components/TopSearch.vue +35 -31
  60. package/template-nuxt-admin/components/TopUser.vue +12 -9
  61. package/template-nuxt-admin/components/YoungChangePassword.vue +54 -44
  62. package/template-nuxt-admin/components/YoungCodeInput.vue +31 -25
  63. package/template-nuxt-admin/components/YoungLink.vue +3 -2
  64. package/template-nuxt-admin/components/YoungLoading.vue +1 -1
  65. package/template-nuxt-admin/components/layout/Footer.vue +1 -1
  66. package/template-nuxt-admin/components/layout/Logo.vue +7 -5
  67. package/template-nuxt-admin/components/layout/Main.vue +2 -17
  68. package/template-nuxt-admin/components/layout/NavBar.vue +12 -9
  69. package/template-nuxt-admin/components/layout/SideBar.vue +7 -6
  70. package/template-nuxt-admin/components/layout/SubMenu.vue +12 -13
  71. package/template-nuxt-admin/components/layout/TabsBar.vue +45 -43
  72. package/template-nuxt-admin/composables/api.ts +39 -37
  73. package/template-nuxt-admin/composables/apis/delete.ts +7 -7
  74. package/template-nuxt-admin/composables/apis/get.ts +13 -13
  75. package/template-nuxt-admin/composables/apis/index.ts +4 -4
  76. package/template-nuxt-admin/composables/apis/patch.ts +11 -11
  77. package/template-nuxt-admin/composables/apis/post.ts +17 -17
  78. package/template-nuxt-admin/composables/config.ts +1 -1
  79. package/template-nuxt-admin/composables/icon.ts +4 -4
  80. package/template-nuxt-admin/composables/nav.ts +19 -21
  81. package/template-nuxt-admin/composables/tags.ts +50 -50
  82. package/template-nuxt-admin/composables/user.ts +10 -11
  83. package/template-nuxt-admin/config/.devrc +0 -0
  84. package/template-nuxt-admin/config/.onlinerc +0 -0
  85. package/template-nuxt-admin/config/.testrc +0 -0
  86. package/template-nuxt-admin/env.d.ts +0 -0
  87. package/template-nuxt-admin/error.vue +37 -29
  88. package/template-nuxt-admin/layouts/blank.vue +0 -0
  89. package/template-nuxt-admin/layouts/default.vue +18 -17
  90. package/template-nuxt-admin/middleware/auth.global.ts +31 -20
  91. package/template-nuxt-admin/nuxt.config.ts +8 -7
  92. package/template-nuxt-admin/package.json +39 -19
  93. package/template-nuxt-admin/pages/home/[id].vue +6 -6
  94. package/template-nuxt-admin/pages/index.vue +4 -4
  95. package/template-nuxt-admin/pages/login.vue +74 -56
  96. package/template-nuxt-admin/pages/system/api.vue +77 -64
  97. package/template-nuxt-admin/pages/system/hooks/useRole.ts +127 -128
  98. package/template-nuxt-admin/pages/system/menuList.vue +171 -146
  99. package/template-nuxt-admin/pages/system/role.vue +66 -38
  100. package/template-nuxt-admin/pages/system/user.vue +85 -74
  101. package/template-nuxt-admin/plugins/directive.ts +9 -9
  102. package/template-nuxt-admin/public/default_avatar.svg +0 -0
  103. package/template-nuxt-admin/public/favicon.ico +0 -0
  104. package/template-nuxt-admin/public/image_placeholder.svg +0 -0
  105. package/template-nuxt-admin/public/tabbar_bg.png +0 -0
  106. package/template-nuxt-admin/server/api/[...all].ts +3 -3
  107. package/template-nuxt-admin/server/plugins/env.ts +19 -20
  108. package/template-nuxt-admin/server/routes/get/env.ts +3 -3
  109. package/template-nuxt-admin/server/tsconfig.json +0 -0
  110. package/template-nuxt-admin/server/utils/index.ts +15 -14
  111. package/template-nuxt-admin/styles/element.scss +0 -0
  112. package/template-nuxt-admin/styles/index.scss +0 -0
  113. package/template-nuxt-admin/styles/variable.scss +0 -0
  114. package/template-nuxt-admin/tsconfig.json +0 -0
  115. package/template-nuxt-admin/typings/global.d.ts +0 -0
  116. package/template-nuxt-admin/typings/system.d.ts +0 -0
  117. package/template-nuxt-admin/typings/user.d.ts +0 -0
  118. package/template-nuxt-admin/uno.config.ts +1 -1
  119. package/template-nuxt-admin/utils/tool.ts +65 -65
  120. package/template-nuxt-admin/yarn.lock +3321 -1535
  121. package/template-uni-app/.eslintignore +1 -0
  122. package/template-uni-app/.eslintrc +16 -0
  123. package/template-uni-app/.vscode/.server-controller-port.log +5 -0
  124. package/template-uni-app/.vscode/css.code-snippets +0 -0
  125. package/template-uni-app/.vscode/extensions.json +5 -2
  126. package/template-uni-app/.vscode/js.code-snippets +0 -0
  127. package/template-uni-app/.vscode/settings.json +24 -6
  128. package/template-uni-app/.vscode/vue-html.code-snippets +0 -0
  129. package/template-uni-app/README.md +20 -0
  130. package/template-uni-app/_env +1 -1
  131. package/template-uni-app/_env.development +2 -2
  132. package/template-uni-app/_env.production +0 -3
  133. package/template-uni-app/_env.test +0 -3
  134. package/template-uni-app/_gitignore +0 -0
  135. package/template-uni-app/_npmrc +0 -0
  136. package/template-uni-app/auto-imports.d.ts +3 -0
  137. package/template-uni-app/components.d.ts +0 -0
  138. package/template-uni-app/custom-plugins/index.ts +2 -2
  139. package/template-uni-app/custom-plugins/multiconf.ts +17 -19
  140. package/template-uni-app/custom-plugins/polyfill.ts +9 -9
  141. package/template-uni-app/dist/dev/mp-weixin/apis/index.js +44 -0
  142. package/template-uni-app/dist/dev/mp-weixin/apis/lib/index.js +90 -0
  143. package/template-uni-app/dist/dev/mp-weixin/apis/requests/get.js +10 -0
  144. package/template-uni-app/dist/dev/mp-weixin/apis/requests/index.js +1 -0
  145. package/template-uni-app/dist/dev/mp-weixin/apis/requests/post.js +15 -0
  146. package/template-uni-app/dist/dev/mp-weixin/app.js +93 -0
  147. package/template-uni-app/dist/dev/mp-weixin/app.json +51 -0
  148. package/template-uni-app/dist/dev/mp-weixin/app.wxss +2378 -0
  149. package/template-uni-app/dist/dev/mp-weixin/common/assets.js +13 -0
  150. package/template-uni-app/dist/dev/mp-weixin/common/vendor.js +10189 -0
  151. package/template-uni-app/dist/dev/mp-weixin/components/young-loading/young-loading.js +22 -0
  152. package/template-uni-app/dist/dev/mp-weixin/components/young-loading/young-loading.json +4 -0
  153. package/template-uni-app/dist/dev/mp-weixin/components/young-loading/young-loading.wxml +1 -0
  154. package/template-uni-app/dist/dev/mp-weixin/components/young-loading/young-loading.wxss +0 -0
  155. package/template-uni-app/dist/dev/mp-weixin/components/young-loading-mini/young-loading-mini.js +22 -0
  156. package/template-uni-app/dist/dev/mp-weixin/components/young-loading-mini/young-loading-mini.json +4 -0
  157. package/template-uni-app/dist/dev/mp-weixin/components/young-loading-mini/young-loading-mini.wxml +1 -0
  158. package/template-uni-app/dist/dev/mp-weixin/components/young-loading-mini/young-loading-mini.wxss +0 -0
  159. package/template-uni-app/dist/dev/mp-weixin/components/young-navbar/young-navbar.js +82 -0
  160. package/template-uni-app/dist/dev/mp-weixin/components/young-navbar/young-navbar.json +4 -0
  161. package/template-uni-app/dist/dev/mp-weixin/components/young-navbar/young-navbar.wxml +1 -0
  162. package/template-uni-app/dist/dev/mp-weixin/components/young-navbar/young-navbar.wxss +108 -0
  163. package/template-uni-app/dist/dev/mp-weixin/components/young-tabbar/young-tabbar.js +56 -0
  164. package/template-uni-app/dist/dev/mp-weixin/components/young-tabbar/young-tabbar.json +4 -0
  165. package/template-uni-app/dist/dev/mp-weixin/components/young-tabbar/young-tabbar.wxml +1 -0
  166. package/template-uni-app/dist/dev/mp-weixin/components/young-tabbar/young-tabbar.wxss +88 -0
  167. package/template-uni-app/dist/dev/mp-weixin/config/enum.js +21 -0
  168. package/template-uni-app/dist/dev/mp-weixin/config/index.js +1 -0
  169. package/template-uni-app/dist/dev/mp-weixin/config/map.js +1 -0
  170. package/template-uni-app/dist/dev/mp-weixin/layouts/default.js +30 -0
  171. package/template-uni-app/dist/dev/mp-weixin/layouts/default.json +6 -0
  172. package/template-uni-app/dist/dev/mp-weixin/layouts/default.wxml +1 -0
  173. package/template-uni-app/dist/dev/mp-weixin/layouts/default.wxss +0 -0
  174. package/template-uni-app/dist/dev/mp-weixin/layouts/tabbar.js +56 -0
  175. package/template-uni-app/dist/dev/mp-weixin/layouts/tabbar.json +9 -0
  176. package/template-uni-app/dist/dev/mp-weixin/layouts/tabbar.wxml +1 -0
  177. package/template-uni-app/dist/dev/mp-weixin/layouts/tabbar.wxss +0 -0
  178. package/template-uni-app/dist/dev/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-card/uni-card.js +98 -0
  179. package/template-uni-app/dist/dev/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-card/uni-card.json +4 -0
  180. package/template-uni-app/dist/dev/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-card/uni-card.wxml +1 -0
  181. package/template-uni-app/dist/dev/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-card/uni-card.wxss +125 -0
  182. package/template-uni-app/dist/dev/mp-weixin/pages/demo/index.js +38 -0
  183. package/template-uni-app/dist/dev/mp-weixin/pages/demo/index.json +5 -0
  184. package/template-uni-app/dist/dev/mp-weixin/pages/demo/index.wxml +1 -0
  185. package/template-uni-app/dist/dev/mp-weixin/pages/demo/index.wxss +0 -0
  186. package/template-uni-app/dist/dev/mp-weixin/pages/index.js +51 -0
  187. package/template-uni-app/dist/dev/mp-weixin/pages/index.json +5 -0
  188. package/template-uni-app/dist/dev/mp-weixin/pages/index.wxml +1 -0
  189. package/template-uni-app/dist/dev/mp-weixin/pages/index.wxss +0 -0
  190. package/template-uni-app/dist/dev/mp-weixin/pages/my.js +22 -0
  191. package/template-uni-app/dist/dev/mp-weixin/pages/my.json +3 -0
  192. package/template-uni-app/dist/dev/mp-weixin/pages/my.wxml +1 -0
  193. package/template-uni-app/dist/dev/mp-weixin/pages/my.wxss +0 -0
  194. package/template-uni-app/dist/dev/mp-weixin/project.config.json +56 -0
  195. package/template-uni-app/dist/dev/mp-weixin/static/back.png +0 -0
  196. package/template-uni-app/dist/dev/mp-weixin/static/h.png +0 -0
  197. package/template-uni-app/dist/dev/mp-weixin/static/home.png +0 -0
  198. package/template-uni-app/dist/dev/mp-weixin/static/home_active.png +0 -0
  199. package/template-uni-app/dist/dev/mp-weixin/static/more.png +0 -0
  200. package/template-uni-app/dist/dev/mp-weixin/static/my.png +0 -0
  201. package/template-uni-app/dist/dev/mp-weixin/static/my_active.png +0 -0
  202. package/template-uni-app/dist/dev/mp-weixin/static/network.png +0 -0
  203. package/template-uni-app/dist/dev/mp-weixin/store/index.js +8 -0
  204. package/template-uni-app/dist/dev/mp-weixin/store/local/index.js +11 -0
  205. package/template-uni-app/dist/dev/mp-weixin/store/system.js +14 -0
  206. package/template-uni-app/dist/dev/mp-weixin/utils/modal.js +82 -0
  207. package/template-uni-app/dist/dev/mp-weixin/utils/route.js +85 -0
  208. package/template-uni-app/dist/dev/mp-weixin/utils/system.js +27 -0
  209. package/template-uni-app/index.html +0 -0
  210. package/template-uni-app/manifest.config.ts +11 -11
  211. package/template-uni-app/package.json +24 -6
  212. package/template-uni-app/pages.config.ts +11 -11
  213. package/template-uni-app/pnpm-lock.yaml +2677 -500
  214. package/template-uni-app/src/App.vue +24 -26
  215. package/template-uni-app/src/apis/index.ts +25 -21
  216. package/template-uni-app/src/apis/lib/index.ts +77 -78
  217. package/template-uni-app/src/apis/requests/get.ts +38 -38
  218. package/template-uni-app/src/apis/requests/index.ts +2 -2
  219. package/template-uni-app/src/apis/requests/post.ts +8 -8
  220. package/template-uni-app/src/components/young-loading/young-loading.vue +17 -19
  221. package/template-uni-app/src/components/young-loading-mini/young-loading-mini.vue +14 -17
  222. package/template-uni-app/src/components/young-navbar/young-navbar.vue +43 -44
  223. package/template-uni-app/src/components/young-tabbar/young-tabbar.vue +39 -35
  224. package/template-uni-app/src/config/enum.ts +1 -1
  225. package/template-uni-app/src/config/index.ts +2 -2
  226. package/template-uni-app/src/config/map.ts +4 -4
  227. package/template-uni-app/src/env.d.ts +0 -0
  228. package/template-uni-app/src/layouts/default.vue +8 -10
  229. package/template-uni-app/src/layouts/tabbar.vue +25 -15
  230. package/template-uni-app/src/main.ts +7 -7
  231. package/template-uni-app/src/manifest.json +1 -1
  232. package/template-uni-app/src/pages/demo/index.vue +16 -10
  233. package/template-uni-app/src/pages/index.vue +46 -25
  234. package/template-uni-app/src/pages/my.vue +17 -8
  235. package/template-uni-app/src/pages.json +9 -3
  236. package/template-uni-app/src/static/back.png +0 -0
  237. package/template-uni-app/src/static/h.png +0 -0
  238. package/template-uni-app/src/static/home.png +0 -0
  239. package/template-uni-app/src/static/home_active.png +0 -0
  240. package/template-uni-app/src/static/more.png +0 -0
  241. package/template-uni-app/src/static/my.png +0 -0
  242. package/template-uni-app/src/static/my_active.png +0 -0
  243. package/template-uni-app/src/static/network.png +0 -0
  244. package/template-uni-app/src/store/index.ts +6 -6
  245. package/template-uni-app/src/store/local/index.ts +23 -21
  246. package/template-uni-app/src/store/system.ts +11 -10
  247. package/template-uni-app/src/typings/global.d.ts +7 -0
  248. package/template-uni-app/src/uni.scss +0 -0
  249. package/template-uni-app/src/utils/auth.ts +137 -58
  250. package/template-uni-app/src/utils/index.ts +5 -5
  251. package/template-uni-app/src/utils/map.ts +45 -45
  252. package/template-uni-app/src/utils/modal.ts +61 -39
  253. package/template-uni-app/src/utils/route.ts +40 -38
  254. package/template-uni-app/src/utils/system.ts +25 -24
  255. package/template-uni-app/tsconfig.json +11 -11
  256. package/template-uni-app/unocss.config.ts +4 -4
  257. package/template-uni-app/vite.config.ts +15 -15
  258. package/template-uni-app/volar.config.js +2 -2
  259. package/template-vue-admin/.vscode/extensions.json +0 -0
  260. package/template-vue-admin/.vscode/list-add.code-snippets +0 -0
  261. package/template-vue-admin/.vscode/list-export.code-snippets +0 -0
  262. package/template-vue-admin/.vscode/list.code-snippets +0 -0
  263. package/template-vue-admin/.vscode/settings.json +0 -0
  264. package/template-vue-admin/Dockerfile +0 -0
  265. package/template-vue-admin/README.md +0 -0
  266. package/template-vue-admin/_env +0 -0
  267. package/template-vue-admin/_gitignore +0 -0
  268. package/template-vue-admin/boot.mjs +0 -0
  269. package/template-vue-admin/build/custom-plugin.ts +0 -0
  270. package/template-vue-admin/build/index.ts +0 -0
  271. package/template-vue-admin/build/plugins.ts +0 -0
  272. package/template-vue-admin/config/.devrc +0 -0
  273. package/template-vue-admin/config/.onlinerc +0 -0
  274. package/template-vue-admin/config/.testrc +0 -0
  275. package/template-vue-admin/index.html +0 -0
  276. package/template-vue-admin/nitro.config.ts +0 -0
  277. package/template-vue-admin/package.json +0 -0
  278. package/template-vue-admin/plugins/init.ts +0 -0
  279. package/template-vue-admin/public/vite.svg +0 -0
  280. package/template-vue-admin/rome.json +0 -0
  281. package/template-vue-admin/routes/api/[...all].ts +0 -0
  282. package/template-vue-admin/routes/get/env.ts +0 -0
  283. package/template-vue-admin/src/App.vue +0 -0
  284. package/template-vue-admin/src/apis/delete.ts +0 -0
  285. package/template-vue-admin/src/apis/get.ts +0 -0
  286. package/template-vue-admin/src/apis/index.ts +0 -0
  287. package/template-vue-admin/src/apis/patch.ts +0 -0
  288. package/template-vue-admin/src/apis/post.ts +0 -0
  289. package/template-vue-admin/src/assets/img/login_background.jpg +0 -0
  290. package/template-vue-admin/src/auto-components.d.ts +0 -0
  291. package/template-vue-admin/src/auto-imports.d.ts +0 -0
  292. package/template-vue-admin/src/layouts/blank.vue +0 -0
  293. package/template-vue-admin/src/layouts/default/components/Link.vue +0 -0
  294. package/template-vue-admin/src/layouts/default/components/Logo.vue +0 -0
  295. package/template-vue-admin/src/layouts/default/components/Menu.vue +0 -0
  296. package/template-vue-admin/src/layouts/default/components/NavSearch.vue +0 -0
  297. package/template-vue-admin/src/layouts/default/components/ScrollPane.vue +0 -0
  298. package/template-vue-admin/src/layouts/default/components/TagsView.vue +0 -0
  299. package/template-vue-admin/src/layouts/default/components/TopMenu.vue +0 -0
  300. package/template-vue-admin/src/layouts/default/components/UserCenter.vue +0 -0
  301. package/template-vue-admin/src/layouts/default/index.vue +0 -0
  302. package/template-vue-admin/src/main.ts +0 -0
  303. package/template-vue-admin/src/modules/1-router.ts +0 -0
  304. package/template-vue-admin/src/modules/2-pinia.ts +0 -0
  305. package/template-vue-admin/src/modules/3-net.ts +0 -0
  306. package/template-vue-admin/src/modules/4-auth.ts +0 -0
  307. package/template-vue-admin/src/modules/5-checkupdate.ts +0 -0
  308. package/template-vue-admin/src/shims.d.ts +0 -0
  309. package/template-vue-admin/src/stores/index.ts +0 -0
  310. package/template-vue-admin/src/stores/local/index.ts +0 -0
  311. package/template-vue-admin/src/stores/session/index.ts +0 -0
  312. package/template-vue-admin/src/stores/tags.ts +0 -0
  313. package/template-vue-admin/src/typings/global.d.ts +0 -0
  314. package/template-vue-admin/src/typings/index.ts +0 -0
  315. package/template-vue-admin/src/typings/system.d.ts +0 -0
  316. package/template-vue-admin/src/views/403.vue +0 -0
  317. package/template-vue-admin/src/views/[...all_404].vue +0 -0
  318. package/template-vue-admin/src/views/base/login.vue +0 -0
  319. package/template-vue-admin/src/views/dashboard/[name].vue +0 -0
  320. package/template-vue-admin/src/views/index.vue +0 -0
  321. package/template-vue-admin/src/views/system/api.vue +0 -0
  322. package/template-vue-admin/src/views/system/hooks/useRole.ts +0 -0
  323. package/template-vue-admin/src/views/system/menuList.vue +3 -3
  324. package/template-vue-admin/src/views/system/role.vue +0 -0
  325. package/template-vue-admin/src/views/system/user.vue +0 -0
  326. package/template-vue-admin/src/vite-env.d.ts +0 -0
  327. package/template-vue-admin/tsconfig.json +0 -0
  328. package/template-vue-admin/tsconfig.node.json +0 -0
  329. package/template-vue-admin/unocss.config.ts +0 -0
  330. package/template-vue-admin/vite.config.ts +0 -0
  331. package/template-vue-mobile/.vscode/base.code-snippets +0 -0
  332. package/template-vue-mobile/.vscode/extensions.json +0 -0
  333. package/template-vue-mobile/.vscode/settings.json +0 -0
  334. package/template-vue-mobile/Dockerfile +0 -0
  335. package/template-vue-mobile/README.md +0 -0
  336. package/template-vue-mobile/_env +0 -0
  337. package/template-vue-mobile/_gitignore +0 -0
  338. package/template-vue-mobile/boot.mjs +0 -0
  339. package/template-vue-mobile/build/custom-plugin.ts +0 -0
  340. package/template-vue-mobile/build/index.ts +0 -0
  341. package/template-vue-mobile/build/plugins.ts +0 -0
  342. package/template-vue-mobile/config/.devrc +0 -0
  343. package/template-vue-mobile/config/.onlinerc +0 -0
  344. package/template-vue-mobile/config/.testrc +0 -0
  345. package/template-vue-mobile/index.html +0 -0
  346. package/template-vue-mobile/nitro.config.ts +0 -0
  347. package/template-vue-mobile/package.json +0 -0
  348. package/template-vue-mobile/plugins/env.ts +0 -0
  349. package/template-vue-mobile/public/vite.svg +0 -0
  350. package/template-vue-mobile/rome.json +0 -0
  351. package/template-vue-mobile/routes/[...all].ts +0 -0
  352. package/template-vue-mobile/routes/get/env.ts +0 -0
  353. package/template-vue-mobile/src/App.vue +0 -0
  354. package/template-vue-mobile/src/auto-components.d.ts +0 -0
  355. package/template-vue-mobile/src/auto-imports.d.ts +0 -0
  356. package/template-vue-mobile/src/components/Init.vue +0 -0
  357. package/template-vue-mobile/src/global.d.ts +0 -0
  358. package/template-vue-mobile/src/hooks/useVerifyCode.ts +0 -0
  359. package/template-vue-mobile/src/layouts/blank.vue +0 -0
  360. package/template-vue-mobile/src/layouts/default.vue +0 -0
  361. package/template-vue-mobile/src/layouts/sub.vue +0 -0
  362. package/template-vue-mobile/src/main.ts +0 -0
  363. package/template-vue-mobile/src/modules/1-router.ts +0 -0
  364. package/template-vue-mobile/src/modules/2-pinia.ts +0 -0
  365. package/template-vue-mobile/src/modules/3-net.ts +0 -0
  366. package/template-vue-mobile/src/modules/4-auth.ts +0 -0
  367. package/template-vue-mobile/src/views/[...all_404].vue +0 -0
  368. package/template-vue-mobile/src/views/base/login.vue +0 -0
  369. package/template-vue-mobile/src/views/base/resetPasswd.vue +0 -0
  370. package/template-vue-mobile/src/views/index.vue +0 -0
  371. package/template-vue-mobile/src/views/my.vue +0 -0
  372. package/template-vue-mobile/src/views/sub.vue +0 -0
  373. package/template-vue-mobile/src/vite-env.d.ts +0 -0
  374. package/template-vue-mobile/tsconfig.json +0 -0
  375. package/template-vue-mobile/tsconfig.node.json +0 -0
  376. package/template-vue-mobile/unocss.config.ts +0 -0
  377. package/template-vue-mobile/vite.config.ts +0 -0
  378. package/template-vue-mobile/yarn.lock +0 -0
  379. package/template-vue-thin/.vscode/extensions.json +0 -0
  380. package/template-vue-thin/.vscode/settings.json +0 -0
  381. package/template-vue-thin/README.md +0 -0
  382. package/template-vue-thin/_env +0 -0
  383. package/template-vue-thin/_gitignore +0 -0
  384. package/template-vue-thin/index.html +0 -0
  385. package/template-vue-thin/package.json +0 -0
  386. package/template-vue-thin/public/vite.svg +0 -0
  387. package/template-vue-thin/src/App.vue +0 -0
  388. package/template-vue-thin/src/layouts/blank.vue +0 -0
  389. package/template-vue-thin/src/layouts/default.vue +0 -0
  390. package/template-vue-thin/src/layouts/list.vue +0 -0
  391. package/template-vue-thin/src/main.ts +0 -0
  392. package/template-vue-thin/src/views/[...all_404].vue +0 -0
  393. package/template-vue-thin/src/views/index.vue +0 -0
  394. package/template-vue-thin/src/views/list.vue +0 -0
  395. package/template-vue-thin/src/vite-env.d.ts +0 -0
  396. package/template-vue-thin/tsconfig.json +0 -0
  397. package/template-vue-thin/tsconfig.node.json +0 -0
  398. package/template-vue-thin/unocss.config.ts +0 -0
  399. package/template-vue-thin/vite.config.ts +0 -0
  400. package/template-nuxt-admin/rome.json +0 -26
  401. package/template-uni-app/rome.json +0 -26
@@ -1,18 +1,18 @@
1
1
  <!--
2
2
  * @Author: zhangyang
3
3
  * @Date: 2023-07-25 16:45:17
4
- * @LastEditTime: 2023-07-31 14:21:34
4
+ * @LastEditTime: 2023-08-25 16:55:00
5
5
  * @Description:
6
6
  -->
7
7
  <script lang="ts" setup>
8
- import { YoungTablePro, useFormMode, YoungDialog, YoungSelect } from '@bluesyoung/ui-vue3-element-plus';
9
- import type { TableHeadItem } from '@bluesyoung/ui-vue3-element-plus';
10
- import { deepClone, isArray } from '@bluesyoung/utils';
11
- import { ElButton } from 'element-plus';
8
+ import { YoungDialog, YoungSelect, YoungTablePro, useFormMode } from '@bluesyoung/ui-vue3-element-plus'
9
+ import type { TableHeadItem } from '@bluesyoung/ui-vue3-element-plus'
10
+ import { deepClone, isArray } from '@bluesyoung/utils'
11
+ import { ElButton } from 'element-plus'
12
12
 
13
13
  definePageMeta({
14
- title: '菜单管理'
15
- });
14
+ title: '菜单管理',
15
+ })
16
16
 
17
17
  const FORM_TEMP: NavArrItem = {
18
18
  breadcrumb: 0,
@@ -31,64 +31,63 @@ const FORM_TEMP: NavArrItem = {
31
31
  status: 1,
32
32
  title: '',
33
33
  updatedAt: '',
34
- visible: 1
35
- };
34
+ visible: 1,
35
+ }
36
36
  // key 的类型必须为 string 才会生效!!!
37
- const expandKeys = ref<Set<string>>(new Set());
37
+ const expandKeys = ref<Set<string>>(new Set())
38
+
39
+ let tempArr: string[] = []
40
+ function getFatherAndSon(arr: NavArrItem[], num?: number): string[] {
41
+ if (num === 1)
42
+ tempArr = []
38
43
 
39
- let tempArr: string[] = [];
40
- const getFatherAndSon = (arr: NavArrItem[], num?: number): string[] => {
41
- if (num === 1) {
42
- tempArr = [];
43
- }
44
44
  for (const item of arr) {
45
- tempArr.push(item.id + '');
46
- if (item.children && isArray(item.children) && item.children.length > 0) {
47
- getFatherAndSon(deepClone(item.children));
48
- }
45
+ tempArr.push(`${item.id}`)
46
+ if (item.children && isArray(item.children) && item.children.length > 0)
47
+ getFatherAndSon(deepClone(item.children))
49
48
  }
50
- return tempArr;
51
- };
52
- const expandChange = (...args: any) => {
53
- const [row, isOpen] = args as [NavArrItem, boolean];
54
- const autoid = row.id;
49
+ return tempArr
50
+ }
51
+ function expandChange(...args: any) {
52
+ const [row, isOpen] = args as [NavArrItem, boolean]
53
+ const autoid = row.id
55
54
  if (isOpen) {
56
- expandKeys.value.add(autoid + '');
57
- } else {
58
- const allSub = getFatherAndSon([row], 1);
59
- allSub.forEach((v) => expandKeys.value.delete(v));
55
+ expandKeys.value.add(`${autoid}`)
56
+ }
57
+ else {
58
+ const allSub = getFatherAndSon([row], 1)
59
+ allSub.forEach(v => expandKeys.value.delete(v))
60
60
  }
61
- };
62
- const tableData = ref<NavArrItem[]>([]);
61
+ }
62
+ const tableData = ref<NavArrItem[]>([])
63
63
 
64
- const topMenuOption = ref<Partial<NavArrItem>[]>([]);
64
+ const topMenuOption = ref<Partial<NavArrItem>[]>([])
65
65
 
66
66
  /**
67
67
  * 生成节点映射
68
68
  */
69
- const nodeMap = new Map<string | number, NavArrItem>();
70
- const generateNodeMap = (list: NavArrItem[]) => {
69
+ const nodeMap = new Map<string, NavArrItem>()
70
+ function generateNodeMap(list: NavArrItem[]) {
71
71
  for (const node of list) {
72
- nodeMap.set(node.id, node);
73
- if (node.children && node.children?.length > 0) {
74
- generateNodeMap(node.children);
75
- }
72
+ nodeMap.set(node.id.toString(), node)
73
+ if (node.children && node.children?.length > 0)
74
+ generateNodeMap(node.children)
76
75
  }
77
- };
76
+ }
78
77
 
79
78
  /**
80
79
  * 获取节点列表
81
80
  */
82
- const getList = async () => {
83
- const list = Object.values(await apis.get.getMenuList());
84
- generateNodeMap(list);
81
+ async function getList() {
82
+ const list = Object.values(await apis.get.getMenuList())
83
+ generateNodeMap(list)
85
84
 
86
- tableData.value = list;
85
+ tableData.value = list
87
86
 
88
87
  topMenuOption.value = [
89
- { title: '顶级目录', children: list, id: 0 }
90
- ];
91
- };
88
+ { title: '顶级目录', children: list, id: 0 },
89
+ ]
90
+ }
92
91
 
93
92
  const {
94
93
  isAdd,
@@ -99,155 +98,169 @@ const {
99
98
  sure,
100
99
  clear,
101
100
  formRef,
102
- validForm
101
+ validForm,
103
102
  } = useFormMode<NavArrItem>(FORM_TEMP, {
104
103
  addCbk: async () => {
105
- const res = await validForm() as boolean;
104
+ const res = await validForm() as boolean
106
105
  if (res) {
107
- const v = deepClone(form.value);
108
- await apis.post.addMenuItem(v);
109
- ElMessage.success('菜单添加成功!');
106
+ const v = deepClone(form.value)
107
+ await apis.post.addMenuItem(v)
108
+ ElMessage.success('菜单添加成功!')
110
109
  }
111
- return res;
110
+ return res
112
111
  },
113
112
  modCbk: async () => {
114
- const res = await validForm() as boolean;
113
+ const res = await validForm() as boolean
115
114
  if (res) {
116
- const v = deepClone(form.value);
117
- await apis.patch.changeMenuItem(v);
118
- ElMessage.success('菜单修改成功!');
115
+ const v = deepClone(form.value)
116
+ await apis.patch.changeMenuItem(v)
117
+ ElMessage.success('菜单修改成功!')
119
118
  }
120
- return res;
119
+ return res
121
120
  },
122
121
  delCbk: async (nav: NavArrItem) => {
123
- apis.delete.deleteMenu(nav.id.toString());
124
- expandKeys.value.delete(nav.id.toString());
125
- ElMessage.success('节点删除成功!');
122
+ apis.delete.deleteMenu(nav.id.toString())
123
+ expandKeys.value.delete(nav.id.toString())
124
+ ElMessage.success('节点删除成功!')
126
125
  // 框架有 bug,视图更新不及时
127
- location.reload();
126
+ location.reload()
128
127
  },
129
128
  cgEffect: async () => {
130
- await getList();
131
- }
132
- });
129
+ await getList()
130
+ },
131
+ })
133
132
 
134
133
  /**
135
134
  * 添加节点
136
135
  */
137
- const add = () => {
138
- form.value.parentId = 0;
139
- isAdd.value = true;
140
- };
136
+ function add() {
137
+ form.value.parentId = 0
138
+ isAdd.value = true
139
+ }
141
140
 
142
141
  const tableHead: TableHeadItem<NavArrItem>[] = [
143
142
  {
144
- prop: 'title', label: '标题', render: (row) => h('div', { class: 'inline-flex items-center justify-center' }, [
143
+ prop: 'title',
144
+ label: '标题',
145
+ render: row => h('div', { class: 'inline-flex items-center justify-center' }, [
145
146
  h('div', { class: row.icon }),
146
- h('div', row.title)
147
- ])
147
+ h('div', row.title),
148
+ ]),
148
149
  },
149
150
  {
150
- prop: 'sort', label: '同级排序', aligin: 'center', render: (row, i) => h('div', {
151
- class: 'flex text-2xl justify-center'
151
+ prop: 'sort',
152
+ label: '同级排序',
153
+ aligin: 'center',
154
+ render: (row, i) => h('div', {
155
+ class: 'flex text-2xl justify-center',
152
156
  }, [
153
157
  h('div', {
154
158
  class: 'i-ic-round-keyboard-arrow-up cursor-pointer',
155
159
  title: '向上',
156
160
  onClick: async () => {
157
- const arr = nodeMap.get(row.parentId.toString())?.children || [];
158
- const index = arr.findIndex((m) => m.id === row.id);
161
+ const arr = nodeMap.get(row.parentId.toString())?.children || []
162
+ const index = arr.findIndex(m => m.id === row.id)
159
163
  if (index <= 0) {
160
- return ElMessage.warning('已经到最前面啦!');
161
- } else {
162
- const pre = arr[index - 1];
164
+ return ElMessage.warning('已经到最前面啦!')
165
+ }
166
+ else {
167
+ const pre = arr[index - 1]
163
168
 
164
- const num = row.sort;
165
- const preNum = pre.sort;
169
+ const num = row.sort
170
+ const preNum = pre.sort
166
171
 
167
172
  if (num !== preNum) {
168
- row.sort = preNum;
169
- pre.sort = num;
170
- } else {
171
- row.sort = num - 1;
173
+ row.sort = preNum
174
+ pre.sort = num
175
+ }
176
+ else {
177
+ row.sort = num - 1
172
178
  }
173
179
  await Promise.all([
174
180
  apis.patch.changeMenuItem(row),
175
181
  apis.patch.changeMenuItem(pre),
176
- ]);
177
- ElMessage.success('顺序修改成功!');
178
- getList();
182
+ ])
183
+ ElMessage.success('顺序修改成功!')
184
+ getList()
179
185
  }
180
- }
186
+ },
181
187
  }),
182
188
  h('div', {
183
189
  class: 'i-ic-round-keyboard-arrow-down cursor-pointer',
184
190
  title: '向下',
185
191
  onClick: async () => {
186
- const arr = nodeMap.get(row.parentId.toString())?.children || [];
187
- const index = arr.findIndex((m) => m.id === row.id);
192
+ const arr = nodeMap.get(row.parentId.toString())?.children || []
193
+ const index = arr.findIndex(m => m.id === row.id)
188
194
  if (index === arr.length - 1) {
189
- return ElMessage.warning('已经到最后面啦!');
190
- } else {
191
- const next = arr[index + 1];
195
+ return ElMessage.warning('已经到最后面啦!')
196
+ }
197
+ else {
198
+ const next = arr[index + 1]
192
199
 
193
- const num = row.sort;
194
- const nextNum = next.sort;
200
+ const num = row.sort
201
+ const nextNum = next.sort
195
202
 
196
203
  if (num !== nextNum) {
197
- row.sort = nextNum;
198
- next.sort = num;
199
- } else {
200
- row.sort = num + 1;
204
+ row.sort = nextNum
205
+ next.sort = num
206
+ }
207
+ else {
208
+ row.sort = num + 1
201
209
  }
202
210
  await Promise.all([
203
211
  apis.patch.changeMenuItem(row),
204
212
  apis.patch.changeMenuItem(next),
205
- ]);
206
- ElMessage.success('顺序修改成功!');
207
- getList();
213
+ ])
214
+ ElMessage.success('顺序修改成功!')
215
+ getList()
208
216
  }
209
- }
217
+ },
210
218
  }),
211
- ])
219
+ ]),
212
220
  },
213
221
  { prop: 'component', label: '页面路径' },
214
222
  {
215
- prop: 'visible', label: '隐藏/显示', render: (row) => h(YoungSelect, {
216
- modelValue: row.visible,
217
- options: [{ label: '显示', value: 1 }, { label: '隐藏', value: 0 }],
223
+ prop: 'visible',
224
+ label: '隐藏/显示',
225
+ render: row => h(YoungSelect, {
226
+ 'modelValue': row.visible,
227
+ 'options': [{ label: '显示', value: 1 }, { label: '隐藏', value: 0 }],
218
228
  'onUpdate:modelValue': async (e: number) => {
219
229
  // 状态未修改
220
- if (e === row.visible) {
221
- return;
222
- }
230
+ if (e === row.visible)
231
+ return
223
232
 
224
- row.visible = e;
225
- await apis.patch.changeMenuItem({ ...row, visible: e });
226
- ElMessage.success('菜单修改成功!');
227
- }
228
- })
233
+ row.visible = e
234
+ await apis.patch.changeMenuItem({ ...row, visible: e })
235
+ ElMessage.success('菜单修改成功!')
236
+ },
237
+ }),
229
238
  },
230
239
  { prop: 'creator', label: '创建时间' },
231
240
  {
232
- prop: 'id', label: '操作', fixed: 'right', width: '180', render: (row) => h('div', [
241
+ prop: 'id',
242
+ label: '操作',
243
+ fixed: 'right',
244
+ width: '180',
245
+ render: row => h('div', [
233
246
  h(ElButton, {
234
247
  text: true,
235
248
  class: '!p-0',
236
249
  type: 'primary',
237
250
  onClick: () => edit(row),
238
251
  }, {
239
- default: () => h('div', '编辑')
252
+ default: () => h('div', '编辑'),
240
253
  }),
241
254
  h(ElButton, {
242
255
  type: 'primary',
243
256
  class: '!p-0',
244
257
  text: true,
245
258
  onClick: () => {
246
- form.value.parentId = row.id;
247
- isAdd.value = true;
259
+ form.value.parentId = row.id
260
+ isAdd.value = true
248
261
  },
249
262
  }, {
250
- default: () => h('div', '添加子节点')
263
+ default: () => h('div', '添加子节点'),
251
264
  }),
252
265
  h(ElButton, {
253
266
  text: true,
@@ -255,66 +268,78 @@ const tableHead: TableHeadItem<NavArrItem>[] = [
255
268
  type: 'danger',
256
269
  onClick: () => del(row),
257
270
  }, {
258
- default: () => h('div', '删除')
259
- })
260
- ])
261
- }
262
- ];
271
+ default: () => h('div', '删除'),
272
+ }),
273
+ ]),
274
+ },
275
+ ]
263
276
 
264
- getList();
277
+ useTabReOpen(getList)
265
278
  </script>
266
279
 
267
280
  <template>
268
281
  <ElCard>
269
282
  <div>
270
- <ElButton type="primary" plain @click="add">新建菜单</ElButton>
283
+ <ElButton type="primary" plain @click="add">
284
+ 新建菜单
285
+ </ElButton>
271
286
  </div>
272
- <br />
287
+ <br>
273
288
  <!-- 节点列表 -->
274
- <YoungTablePro :table-data="tableData" :table-head="tableHead" :tree-props="{ children: 'children' }" row-key="id"
275
- :expand-row-keys="[...expandKeys]" @expand-change="expandChange" />
289
+ <YoungTablePro
290
+ :table-data="tableData" :table-head="tableHead" :tree-props="{ children: 'children' }" row-key="id"
291
+ :expand-row-keys="[...expandKeys]" @expand-change="expandChange"
292
+ />
276
293
  <!-- 添加 / 编辑 -->
277
294
  <YoungDialog width="370px" :is-add="isAdd" :diff-form="form" :is-edit="isEdit" @sure="sure" @clear="clear">
278
295
  <template #body>
279
296
  <ElForm ref="formRef" :model="form" label-width="80px" :label-position="WindowSize['lt-lg'] ? 'top' : 'left'">
280
297
  <ElFormItem label="上级目录">
281
- <ElCascader :model-value="form.parentId" :props="{
282
- label: 'title',
283
- value: 'id',
284
- checkStrictly: true,
285
- multiple: false
286
- }" :options="topMenuOption" :show-all-levels="false"
287
- @update:model-value="(e: any) => form.parentId = e[e.length - 1]" />
298
+ <ElCascader
299
+ :model-value="form.parentId" :props="{
300
+ label: 'title',
301
+ value: 'id',
302
+ checkStrictly: true,
303
+ multiple: false,
304
+ }" :options="topMenuOption" :show-all-levels="false"
305
+ @update:model-value="(e: any) => form.parentId = e[e.length - 1]"
306
+ />
288
307
  </ElFormItem>
289
308
  <ElFormItem label="英文名称" prop="name" :rules="{ required: true, message: '请输入英文名', trigger: 'blur' }">
290
- <ElInput v-model="form.name" placeholder="请输入英文名" />
309
+ <ElInput v-model.trim="form.name" placeholder="请输入英文名" />
291
310
  </ElFormItem>
292
311
  <ElFormItem label="标题" prop="title" :rules="{ required: true, message: '请输入页面标题', trigger: 'blur' }">
293
- <ElInput v-model="form.title" placeholder="请输入页面标题" />
312
+ <ElInput v-model.trim="form.title" placeholder="请输入页面标题" />
294
313
  </ElFormItem>
295
314
  <ElFormItem label="图标">
296
315
  <ElSelect v-model="form.icon" class="select_icon" placeholder="请选择图标">
297
316
  <template #prefix>
298
317
  <div :class="form.icon" />
299
318
  </template>
300
- <ElOption v-for="(item, index) in MenuIconList" :key="index + 'sfjhaeoir'" :value="item.label">
319
+ <ElOption v-for="(item, index) in MenuIconList" :key="`${index}sfjhaeoir`" :value="item.label">
301
320
  <div :class="item.label" />
302
321
  </ElOption>
303
322
  </ElSelect>
304
323
  </ElFormItem>
305
324
  <ElFormItem label="排序">
306
- <ElInput v-model.number="form.sort" />
325
+ <ElInputNumber v-model.number="form.sort" />
307
326
  </ElFormItem>
308
327
  <ElFormItem label="是否显示">
309
328
  <ElRadioGroup v-model="form.visible">
310
- <ElRadio :label="1">显示</ElRadio>
311
- <ElRadio :label="0">隐藏</ElRadio>
329
+ <ElRadio :label="1">
330
+ 显示
331
+ </ElRadio>
332
+ <ElRadio :label="0">
333
+ 隐藏
334
+ </ElRadio>
312
335
  </ElRadioGroup>
313
336
  </ElFormItem>
314
- <ElFormItem label="路径" prop="component" :rules="form.parentId === 0 ? {} :
315
- { message: '请输入合法的路径, eg: /path/page', trigger: 'blur', validator: (_: any, v: string) => v.trim() === '' || /\/(.*)\/(.*)/.test(v) }
316
- ">
317
- <ElInput v-model="form.component" />
337
+ <ElFormItem
338
+ label="路径" prop="component" :rules="form.parentId === 0 ? {}
339
+ : { message: '请输入合法的路径, eg: /path/page', trigger: 'blur', validator: (_: any, v: string) => v.trim() === '' || /\/(.*)\/(.*)/.test(v) }
340
+ "
341
+ >
342
+ <ElInput v-model.trim="form.component" />
318
343
  </ElFormItem>
319
344
  </ElForm>
320
345
  </template>
@@ -1,16 +1,16 @@
1
1
  <!--
2
2
  * @Author: zhangyang
3
3
  * @Date: 2023-07-25 16:45:39
4
- * @LastEditTime: 2023-07-31 11:05:49
4
+ * @LastEditTime: 2023-08-25 16:55:10
5
5
  * @Description:
6
6
  -->
7
7
  <script lang="ts" setup>
8
- import { YoungTablePro, YoungDialog, YoungPagination, YoungSearchForm } from '@bluesyoung/ui-vue3-element-plus';
9
- import { useRoleApi, useRoleBase, useRoleMenu } from './hooks/useRole';
8
+ import { YoungDialog, YoungPagination, YoungSearchForm, YoungTablePro } from '@bluesyoung/ui-vue3-element-plus'
9
+ import { useRoleApi, useRoleBase, useRoleMenu } from './hooks/useRole'
10
10
 
11
11
  definePageMeta({
12
- title: '角色管理'
13
- });
12
+ title: '角色管理',
13
+ })
14
14
 
15
15
  const {
16
16
  query,
@@ -20,97 +20,125 @@ const {
20
20
  tableHead,
21
21
  tableData,
22
22
  baseFormRef,
23
- base
24
- } = useRoleBase();
23
+ base,
24
+ } = useRoleBase()
25
25
 
26
- const { showPriority, menu } = useRoleMenu();
26
+ const { showPriority, menu } = useRoleMenu()
27
27
 
28
- const { showApi, api } = useRoleApi();
28
+ const { showApi, api } = useRoleApi()
29
29
 
30
- getList();
30
+ useTabReOpen(getList)
31
31
  </script>
32
32
 
33
33
  <template>
34
34
  <ElCard>
35
35
  <YoungSearchForm v-model="query" :search-scheme="queryScheme" :on-search="getList" :on-reset="reset">
36
36
  <template #btns>
37
- <ElButton type="success" @click="base.isAdd = true">添加角色</ElButton>
37
+ <ElButton type="success" @click="base.isAdd = true">
38
+ 添加角色
39
+ </ElButton>
38
40
  </template>
39
41
  </YoungSearchForm>
40
42
  </ElCard>
41
43
 
42
- <br />
44
+ <br>
43
45
 
44
46
  <ElCard>
45
47
  <YoungTablePro :table-data="tableData" :table-head="tableHead">
46
48
  <template #operate>
47
49
  <ElTableColumn label="操作" width="300px" fixed="right">
48
50
  <template #default="scope">
49
- <ElButton type="primary" link @click="base.edit(scope.row)">信息编辑</ElButton>
50
- <ElButton type="primary" link @click="menu.edit(scope.row)">菜单编辑</ElButton>
51
- <ElButton type="primary" link @click="api.edit(scope.row)">接口编辑</ElButton>
52
- <ElButton type="danger" link @click="base.del(scope.row)">删除</ElButton>
51
+ <ElButton type="primary" link @click="base.edit(scope.row)">
52
+ 信息编辑
53
+ </ElButton>
54
+ <ElButton type="primary" link @click="menu.edit(scope.row)">
55
+ 菜单编辑
56
+ </ElButton>
57
+ <ElButton type="primary" link @click="api.edit(scope.row)">
58
+ 接口编辑
59
+ </ElButton>
60
+ <ElButton type="danger" link @click="base.del(scope.row)">
61
+ 删除
62
+ </ElButton>
53
63
  </template>
54
64
  </ElTableColumn>
55
65
  </template>
56
66
  </YoungTablePro>
57
- <YoungPagination v-model:page="query.pageNum" v-model:limit="query.pageSize" :total="query.total"
58
- @page-change="getList" />
67
+ <YoungPagination
68
+ v-model:page="query.pageNum" v-model:limit="query.pageSize" :total="query.total"
69
+ @page-change="getList"
70
+ />
59
71
  </ElCard>
60
72
  <!-- 基础信息编辑 -->
61
- <YoungDialog :is-add="base.isAdd" :diff-form="base.form" :is-edit="base.isEdit" width="520px" @sure="base.sure"
62
- @clear="base.clear">
73
+ <YoungDialog
74
+ :is-add="base.isAdd" :diff-form="base.form" :is-edit="base.isEdit" width="520px" @sure="base.sure"
75
+ @clear="base.clear"
76
+ >
63
77
  <template #body>
64
- <ElForm ref="baseFormRef" :model="base.form" label-width="120px"
65
- :label-position="WindowSize['lt-lg'] ? 'top' : 'left'">
78
+ <ElForm
79
+ ref="baseFormRef" :model="base.form" label-width="120px"
80
+ :label-position="WindowSize['lt-lg'] ? 'top' : 'left'"
81
+ >
66
82
  <ElFormItem label="角色名称(中文)" prop="name" :rules="[{ required: true, message: '请填写角色名称', trigger: 'blur' }]">
67
- <ElInput v-model="base.form.name" class="!w-300px" />
83
+ <ElInput v-model.trim="base.form.name" class="!w-300px" />
68
84
  </ElFormItem>
69
85
  <ElFormItem label="关键字(英文)" prop="keyword" :rules="[{ required: true, message: '请填写关键字', trigger: 'blur' }]">
70
- <ElInput v-model="base.form.keyword" class="!w-300px" />
86
+ <ElInput v-model.trim="base.form.keyword" class="!w-300px" />
71
87
  </ElFormItem>
72
88
  <ElFormItem label="角色描述">
73
- <ElInput v-model="base.form.desc" class="!w-300px" />
89
+ <ElInput v-model.trim="base.form.desc" class="!w-300px" />
74
90
  </ElFormItem>
75
91
  </ElForm>
76
92
  </template>
77
93
  </YoungDialog>
78
94
  <!-- 菜单编辑 -->
79
- <YoungDialog real-title="菜单编辑" :diff-form="menu.checkMap" :is-edit="showPriority" top="5vh" width="1200px"
80
- @sure="menu.sure" @clear="menu.clear">
95
+ <YoungDialog
96
+ real-title="菜单编辑" :diff-form="menu.checkMap" :is-edit="showPriority" top="5vh" width="1200px"
97
+ @sure="menu.sure" @clear="menu.clear"
98
+ >
81
99
  <template #body>
82
100
  <ElTable :data="menu.tableData" row-key="id" :default-expand-all="false" class="max-h-600px !overflow-y-auto">
83
101
  <ElTableColumn prop="name" label="节点名称" width="320px">
84
102
  <template #default="scope">
85
- <ElCheckbox v-model="menu.checkMap[scope.row.id]" @change="menu.selectChange(scope.row)">{{
86
- scope.row.title
87
- }}</ElCheckbox>
103
+ <ElCheckbox v-model="menu.checkMap[scope.row.id]" @change="menu.selectChange(scope.row)">
104
+ {{
105
+ scope.row.title
106
+ }}
107
+ </ElCheckbox>
88
108
  </template>
89
109
  </ElTableColumn>
90
- <ElTableColumn v-for="(item, index) in menu.tableHead" v-bind="item" :key="index + 'fsdjhfaer'" />
110
+ <ElTableColumn v-for="(item, index) in menu.tableHead" v-bind="item" :key="`${index}fsdjhfaer`" />
91
111
  <ElTableColumn prop="name" label="隐藏/显示">
92
112
  <template #default="scope">
93
- <ElSwitch v-model="scope.row.visible" :active-value="1" :inactive-value="0" active-color="#409EFF"
94
- inactive-color="#909399" disabled />
113
+ <ElSwitch
114
+ v-model="scope.row.visible" :active-value="1" :inactive-value="0" active-color="#409EFF"
115
+ inactive-color="#909399" disabled
116
+ />
95
117
  </template>
96
118
  </ElTableColumn>
97
119
  </ElTable>
98
120
  </template>
99
121
  </YoungDialog>
100
122
  <!-- 接口编辑 -->
101
- <YoungDialog real-title="接口编辑" :diff-form="api.checkMap" :is-edit="showApi" top="5vh" width="1200px" @sure="api.sure"
102
- @clear="api.clear">
123
+ <YoungDialog
124
+ real-title="接口编辑" :diff-form="api.checkMap" :is-edit="showApi" top="5vh" width="1200px" @sure="api.sure"
125
+ @clear="api.clear"
126
+ >
103
127
  <template #body>
104
128
  <ElTable :data="api.tableData" row-key="id" :default-expand-all="false" class="max-h-600px !overflow-y-auto">
105
129
  <ElTableColumn prop="name" width="100px">
106
130
  <template #header>
107
- <ElCheckbox v-model="api.isAll" @change="api.changeAll">全选</ElCheckbox>
131
+ <ElCheckbox v-model="api.isAll" @change="api.changeAll">
132
+ 全选
133
+ </ElCheckbox>
108
134
  </template>
109
135
  <template #default="scope">
110
- <ElCheckbox v-model="api.checkMap[scope.row.id]">{{ scope.row.title }}</ElCheckbox>
136
+ <ElCheckbox v-model="api.checkMap[scope.row.id]">
137
+ {{ scope.row.title }}
138
+ </ElCheckbox>
111
139
  </template>
112
140
  </ElTableColumn>
113
- <ElTableColumn v-for="(item, index) in api.tableHead" v-bind="item" :key="index + 'fsdjhfaer'" />
141
+ <ElTableColumn v-for="(item, index) in api.tableHead" v-bind="item" :key="`${index}fsdjhfaer`" />
114
142
  </ElTable>
115
143
  </template>
116
144
  </YoungDialog>