diff --git a/web/components.d.ts b/web/components.d.ts index 0aa7ba65da..75639a4869 100644 --- a/web/components.d.ts +++ b/web/components.d.ts @@ -101,6 +101,8 @@ declare module '@vue/runtime-core' { Tab: typeof import('./src/components/layout/scaffold/Tab.vue')['default'] Tabs: typeof import('./src/components/layout/scaffold/Tabs.vue')['default'] TextField: typeof import('./src/components/form/TextField.vue')['default'] + UserAPITab: typeof import('./src/components/user/UserAPITab.vue')['default'] + UserGeneralTab: typeof import('./src/components/user/UserGeneralTab.vue')['default'] Warning: typeof import('./src/components/atomic/Warning.vue')['default'] } } diff --git a/web/src/assets/locales/en.json b/web/src/assets/locales/en.json index 2a8f61ff7a..3c0fda8a7c 100644 --- a/web/src/assets/locales/en.json +++ b/web/src/assets/locales/en.json @@ -425,16 +425,27 @@ } }, "user": { - "settings": "User Settings", + "settings": { + "settings": "User Settings", + "general": { + "general": "General", + "language": "Language" + }, + "api": { + "api": "API", + "desc": "Personal Access Token and API usage", + "token": "Personal Access Token", + "shell_setup": "Shell setup", + "api_usage": "Example API Usage", + "cli_usage": "Example CLI Usage", + "dl_cli": "Download CLI", + "shell_setup_before": "do shell setup steps before", + "reset_token": "Reset token", + "swagger_ui": "Swagger UI", + } + }, "oauth_error": "Error while authenticating against OAuth provider", "internal_error": "Some internal error occurred", "access_denied": "You are not allowed to login", - "token": "Personal Access Token", - "shell_setup": "Shell setup", - "api_usage": "Example API Usage", - "cli_usage": "Example CLI Usage", - "dl_cli": "Download CLI", - "shell_setup_before": "do shell setup steps before", - "reset_token": "Reset token" } } diff --git a/web/src/components/layout/header/Navbar.vue b/web/src/components/layout/header/Navbar.vue index acd1a42758..55f48f5b8c 100644 --- a/web/src/components/layout/header/Navbar.vue +++ b/web/src/components/layout/header/Navbar.vue @@ -44,7 +44,7 @@ - + diff --git a/web/src/components/user/UserAPITab.vue b/web/src/components/user/UserAPITab.vue new file mode 100644 index 0000000000..aa0909f919 --- /dev/null +++ b/web/src/components/user/UserAPITab.vue @@ -0,0 +1,95 @@ + + + diff --git a/web/src/components/user/UserGeneralTab.vue b/web/src/components/user/UserGeneralTab.vue new file mode 100644 index 0000000000..0ac44d949b --- /dev/null +++ b/web/src/components/user/UserGeneralTab.vue @@ -0,0 +1,48 @@ + + + diff --git a/web/src/router.ts b/web/src/router.ts index ea33cc561f..0abee7e0a0 100644 --- a/web/src/router.ts +++ b/web/src/router.ts @@ -131,22 +131,10 @@ const routes: RouteRecordRaw[] = [ }, { path: '/admin', - component: (): Component => import('~/views/RouterView.vue'), + name: 'admin-settings', + component: (): Component => import('~/views/admin/AdminSettings.vue'), + props: true, meta: { authentication: 'required' }, - children: [ - { - path: '', - name: 'admin', - component: (): Component => import('~/views/admin/Admin.vue'), - props: true, - }, - { - path: 'settings', - name: 'admin-settings', - component: (): Component => import('~/views/admin/AdminSettings.vue'), - props: true, - }, - ], }, { diff --git a/web/src/views/User.vue b/web/src/views/User.vue index 4f0d84b7cc..19f7f242da 100644 --- a/web/src/views/User.vue +++ b/web/src/views/User.vue @@ -1,114 +1,21 @@ diff --git a/web/src/views/admin/Admin.vue b/web/src/views/admin/Admin.vue deleted file mode 100644 index 26747d7616..0000000000 --- a/web/src/views/admin/Admin.vue +++ /dev/null @@ -1,24 +0,0 @@ - - - diff --git a/web/src/views/org/OrgRepos.vue b/web/src/views/org/OrgRepos.vue index 44509d3978..ca96403a87 100644 --- a/web/src/views/org/OrgRepos.vue +++ b/web/src/views/org/OrgRepos.vue @@ -6,7 +6,7 @@