diff --git a/packages/nc-gui/assets/nc-icons/arrow-up-right.svg b/packages/nc-gui/assets/nc-icons/arrow-up-right.svg new file mode 100644 index 0000000000..b0b9d3026b --- /dev/null +++ b/packages/nc-gui/assets/nc-icons/arrow-up-right.svg @@ -0,0 +1,4 @@ + + + + diff --git a/packages/nc-gui/assets/nc-icons/control-panel.svg b/packages/nc-gui/assets/nc-icons/control-panel.svg new file mode 100644 index 0000000000..c566e17b96 --- /dev/null +++ b/packages/nc-gui/assets/nc-icons/control-panel.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/packages/nc-gui/assets/nc-icons/home.svg b/packages/nc-gui/assets/nc-icons/home.svg new file mode 100644 index 0000000000..fe8bdeb742 --- /dev/null +++ b/packages/nc-gui/assets/nc-icons/home.svg @@ -0,0 +1,4 @@ + + + + diff --git a/packages/nc-gui/assets/nc-icons/office.svg b/packages/nc-gui/assets/nc-icons/office.svg new file mode 100644 index 0000000000..b2b313eaf4 --- /dev/null +++ b/packages/nc-gui/assets/nc-icons/office.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/packages/nc-gui/assets/nc-icons/slash.svg b/packages/nc-gui/assets/nc-icons/slash.svg new file mode 100644 index 0000000000..8e7e27899e --- /dev/null +++ b/packages/nc-gui/assets/nc-icons/slash.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/packages/nc-gui/assets/nc-icons/workspace.svg b/packages/nc-gui/assets/nc-icons/workspace.svg new file mode 100644 index 0000000000..52c0757116 --- /dev/null +++ b/packages/nc-gui/assets/nc-icons/workspace.svg @@ -0,0 +1,4 @@ + + + + diff --git a/packages/nc-gui/components.d.ts b/packages/nc-gui/components.d.ts index 0b40fd5fd3..9f38e62348 100644 --- a/packages/nc-gui/components.d.ts +++ b/packages/nc-gui/components.d.ts @@ -52,6 +52,7 @@ declare module 'vue' { ARadio: typeof import('ant-design-vue/es')['Radio'] ARadioGroup: typeof import('ant-design-vue/es')['RadioGroup'] ARate: typeof import('ant-design-vue/es')['Rate'] + AResult: typeof import('ant-design-vue/es')['Result'] ARow: typeof import('ant-design-vue/es')['Row'] ASelect: typeof import('ant-design-vue/es')['Select'] ASelectOption: typeof import('ant-design-vue/es')['SelectOption'] diff --git a/packages/nc-gui/components/dashboard/Sidebar/EEMenuOption.vue b/packages/nc-gui/components/dashboard/Sidebar/EEMenuOption.vue new file mode 100644 index 0000000000..b95f1483e9 --- /dev/null +++ b/packages/nc-gui/components/dashboard/Sidebar/EEMenuOption.vue @@ -0,0 +1,3 @@ + diff --git a/packages/nc-gui/components/dashboard/Sidebar/UserInfo.vue b/packages/nc-gui/components/dashboard/Sidebar/UserInfo.vue index c3efd5f604..f340b5bab6 100644 --- a/packages/nc-gui/components/dashboard/Sidebar/UserInfo.vue +++ b/packages/nc-gui/components/dashboard/Sidebar/UserInfo.vue @@ -20,12 +20,14 @@ const { isMobileMode } = useGlobal() const logout = async () => { isLoggingOut.value = true try { + const isSsoUser = !!(user?.value as any)?.sso_client_id + await signOut(false) // No need as all stores are cleared on signout // await clearWorkspaces() - await navigateTo('/signin') + await navigateTo(isSsoUser ? '/sso' : '/signin') } catch (e) { console.error(e) } finally { @@ -167,6 +169,8 @@ onMounted(() => { + + {{ $t('title.accountSettings') }} diff --git a/packages/nc-gui/components/dashboard/settings/DataSources.vue b/packages/nc-gui/components/dashboard/settings/DataSources.vue index 400d29a878..96ef06ed9a 100644 --- a/packages/nc-gui/components/dashboard/settings/DataSources.vue +++ b/packages/nc-gui/components/dashboard/settings/DataSources.vue @@ -290,11 +290,11 @@ const isEditBaseModalOpen = computed({