diff --git a/src/core/icons.ts b/src/core/icons.ts index fc321d2d..14c75b55 100644 --- a/src/core/icons.ts +++ b/src/core/icons.ts @@ -77,6 +77,8 @@ import IconUpload from "~icons/ri/upload-cloud-2-line"; import IconShieldUser from "~icons/ri/shield-user-line"; // @ts-ignore import IconGitBranch from "~icons/ri/git-branch-line"; +// @ts-ignore +import IconStopCircle from "~icons/ri/stop-circle-line"; export { IconDashboard, @@ -118,4 +120,5 @@ export { IconUpload, IconShieldUser, IconGitBranch, + IconStopCircle, }; diff --git a/src/layouts/UserProfileLayout.vue b/src/layouts/UserProfileLayout.vue index 3e40484c..8d9e3e77 100644 --- a/src/layouts/UserProfileLayout.vue +++ b/src/layouts/UserProfileLayout.vue @@ -13,6 +13,11 @@ const tabs = [ label: "详情", routeName: "UserDetail", }, + { + id: "tokens", + label: "个人令牌", + routeName: "PersonalAccessTokens", + }, { id: "profile-modification", label: "资料修改", diff --git a/src/router/routes.config.ts b/src/router/routes.config.ts index 08cc92b9..b7409d7f 100644 --- a/src/router/routes.config.ts +++ b/src/router/routes.config.ts @@ -28,6 +28,7 @@ import RoleDetail from "../views/system/roles/RoleDetail.vue"; import UserDetail from "../views/system/users/UserDetail.vue"; import ProfileModification from "../views/system/users/ProfileModification.vue"; import PasswordChange from "../views/system/users/PasswordChange.vue"; +import PersonalAccessTokens from "../views/system/users/PersonalAccessTokens.vue"; import GeneralSettings from "../views/system/settings/GeneralSettings.vue"; import NotificationSettings from "../views/system/settings/NotificationSettings.vue"; @@ -199,6 +200,11 @@ export const routes: Array = [ name: "PasswordChange", component: PasswordChange, }, + { + path: "tokens", + name: "PersonalAccessTokens", + component: PersonalAccessTokens, + }, ], }, { diff --git a/src/views/system/roles/RoleDetail.vue b/src/views/system/roles/RoleDetail.vue index 180acc5b..018f93ac 100644 --- a/src/views/system/roles/RoleDetail.vue +++ b/src/views/system/roles/RoleDetail.vue @@ -73,6 +73,14 @@ const handleRouteToUser = (username: string) => { {{ role.name }} +
+
别名
+
+ {{ role.slug }} +
+
@@ -154,6 +162,191 @@ const handleRouteToUser = (username: string) => {
+ +
+
+
+
+
+ Posts Management +
+
+
    +
  • +
    + +
    + + Posts Management + + + 依赖于 Posts View + +
    +
    +
  • +
  • +
    + +
    + + Posts View + +
    +
    +
  • +
+
+
+
+
+ Categories Management +
+
+
    +
  • +
    + +
    + + Categories Management + + + 依赖于 Categories View + +
    +
    +
  • +
  • +
    + +
    + + Categories View + +
    +
    +
  • +
+
+
+
+
Tags Management
+
+
    +
  • +
    + +
    + + Tags Management + + + 依赖于 Tags View + +
    +
    +
  • +
  • +
    + +
    + + Tags View + +
    +
    +
  • +
+
+
+ +
+
+ Plugins Management +
+
+
    +
  • +
    + +
    + + Plugins Management + + + 依赖于 Plugins View + +
    +
    +
  • +
  • +
    + +
    + + Plugins View + +
    +
    +
  • +
+
+
+
+
+ 保存 +
+
+
diff --git a/src/views/system/roles/RoleList.vue b/src/views/system/roles/RoleList.vue index 65a11e0a..8bca4e89 100644 --- a/src/views/system/roles/RoleList.vue +++ b/src/views/system/roles/RoleList.vue @@ -4,6 +4,7 @@ import { VButton } from "@/components/base/button"; import { VCard } from "@/components/base/card"; import { VInput } from "@/components/base/input"; import { VTag } from "@/components/base/tag"; +import { VModal } from "@/components/base/modal"; import { VSpace } from "@/components/base/space"; import { IconAddCircle, @@ -13,6 +14,9 @@ import { } from "@/core/icons"; import { roles } from "./roles-mock"; import { useRouter } from "vue-router"; +import { ref } from "vue"; + +const createVisible = ref(false); const router = useRouter(); @@ -21,12 +25,14 @@ const handleRouteToDetail = (id: number) => { };