diff --git a/desktop/src/ui/platform.ts b/desktop/src/ui/platform.ts index cf307c2060..125b027cf0 100644 --- a/desktop/src/ui/platform.ts +++ b/desktop/src/ui/platform.ts @@ -253,6 +253,7 @@ export async function configurePlatform (): Promise { setMetadata(login.metadata.AccountsUrl, config.ACCOUNTS_URL) setMetadata(login.metadata.DisableSignUp, config.DISABLE_SIGNUP === 'true') + setMetadata(login.metadata.HideLocalLogin, config.HIDE_LOCAL_LOGIN === 'true') setMetadata(presentation.metadata.UploadURL, config.UPLOAD_URL) setMetadata(presentation.metadata.FilesURL, config.FILES_URL) setMetadata(presentation.metadata.CollaboratorUrl, config.COLLABORATOR_URL) diff --git a/desktop/src/ui/types.ts b/desktop/src/ui/types.ts index 04ca2bf2ae..80427a60fe 100644 --- a/desktop/src/ui/types.ts +++ b/desktop/src/ui/types.ts @@ -15,6 +15,7 @@ export interface Config { DESKTOP_UPDATES_CHANNEL?: string DESKTOP_UPDATES_URL?: string DISABLE_SIGNUP?: string + HIDE_LOCAL_LOGIN?: string FILES_URL: string FRONT_URL: string GITHUB_APP: string diff --git a/dev/prod/src/platform.ts b/dev/prod/src/platform.ts index 945bfba6cf..109f00382d 100644 --- a/dev/prod/src/platform.ts +++ b/dev/prod/src/platform.ts @@ -177,6 +177,7 @@ export interface Config { TELEGRAM_BOT_URL?: string AI_URL?: string DISABLE_SIGNUP?: string + HIDE_LOCAL_LOGIN?: string LINK_PREVIEW_URL?: string PASSWORD_STRICTNESS?: 'very_strict' | 'strict' | 'normal' | 'none' // Could be defined for dev environment @@ -427,6 +428,7 @@ export async function configurePlatform() { setMetadata(login.metadata.AccountsUrl, config.ACCOUNTS_URL) setMetadata(login.metadata.DisableSignUp, config.DISABLE_SIGNUP === 'true') + setMetadata(login.metadata.HideLocalLogin, config.HIDE_LOCAL_LOGIN === 'true') setMetadata(login.metadata.PasswordValidations, PASSWORD_REQUIREMENTS[config.PASSWORD_STRICTNESS ?? 'none']) diff --git a/plugins/login-resources/src/components/LoginApp.svelte b/plugins/login-resources/src/components/LoginApp.svelte index dcf4473ff9..4616a5561b 100644 --- a/plugins/login-resources/src/components/LoginApp.svelte +++ b/plugins/login-resources/src/components/LoginApp.svelte @@ -36,6 +36,7 @@ import Join from './Join.svelte' import AutoJoin from './AutoJoin.svelte' import LoginForm from './LoginForm.svelte' + import ProvidersOnlyForm from './ProvidersOnlyForm.svelte' import PasswordRequest from './PasswordRequest.svelte' import PasswordRestore from './PasswordRestore.svelte' import SelectWorkspace from './SelectWorkspace.svelte' @@ -55,6 +56,8 @@ export let page: Pages = 'signup' const signUpDisabled = getMetadata(login.metadata.DisableSignUp) ?? false + const localLoginHidden = getMetadata(login.metadata.HideLocalLogin) ?? false + console.log('Ratte: ', localLoginHidden) const useOTP = getMetadata(presentation.metadata.MailUrl) != null && getMetadata(presentation.metadata.MailUrl) !== '' let navigateUrl: string | undefined @@ -150,9 +153,13 @@
{#if page === 'login'} - + {#if localLoginHidden} + + {:else} + + {/if} {:else if page === 'signup'} - + {:else if page === 'createWorkspace'} {:else if page === 'password'} diff --git a/plugins/login-resources/src/components/ProvidersOnlyForm.svelte b/plugins/login-resources/src/components/ProvidersOnlyForm.svelte new file mode 100644 index 0000000000..266dec0abd --- /dev/null +++ b/plugins/login-resources/src/components/ProvidersOnlyForm.svelte @@ -0,0 +1,28 @@ + + + +
720 ? '42rem' : '0'} +> + + +
diff --git a/plugins/login-resources/src/components/SignupForm.svelte b/plugins/login-resources/src/components/SignupForm.svelte index 38e20f081e..8056064990 100644 --- a/plugins/login-resources/src/components/SignupForm.svelte +++ b/plugins/login-resources/src/components/SignupForm.svelte @@ -27,6 +27,7 @@ import OtpForm from './OtpForm.svelte' export let signUpDisabled = false + export let localLoginHidden = false export let navigateUrl: string | undefined = undefined export let useOTP = true // False only for dev/tests @@ -65,7 +66,7 @@ let step = OtpLoginSteps.Email let otpRetryOn = 0 - if (signUpDisabled) { + if (signUpDisabled || localLoginHidden) { goTo('login') } diff --git a/plugins/login/src/index.ts b/plugins/login/src/index.ts index 95e79cd836..965926c210 100644 --- a/plugins/login/src/index.ts +++ b/plugins/login/src/index.ts @@ -50,6 +50,7 @@ export default plugin(loginId, { LoginEndpoint: '' as Metadata, LoginAccount: '' as Metadata, DisableSignUp: '' as Metadata, + HideLocalLogin: '' as Metadata, TransactorOverride: '' as Metadata, PasswordValidations: '' as Metadata<{ MinLength: number diff --git a/server/front/src/index.ts b/server/front/src/index.ts index 90bcea90a3..31e46a6ea3 100644 --- a/server/front/src/index.ts +++ b/server/front/src/index.ts @@ -273,6 +273,7 @@ export function start ( linkPreviewUrl?: string pushPublicKey?: string disableSignUp?: string + hideLocalLogin?: string streamUrl?: string mailUrl?: string }, @@ -348,6 +349,7 @@ export function start ( UPLOAD_CONFIG: config.uploadConfig, PUSH_PUBLIC_KEY: config.pushPublicKey, DISABLE_SIGNUP: config.disableSignUp, + HIDE_LOCAL_LOGIN: config.hideLocalLogin, MAIL_URL: config.mailUrl, ...(extraConfig ?? {}) } diff --git a/server/front/src/starter.ts b/server/front/src/starter.ts index ad9eca8927..1b34b43d0c 100644 --- a/server/front/src/starter.ts +++ b/server/front/src/starter.ts @@ -119,6 +119,8 @@ export function startFront (ctx: MeasureContext, extraConfig?: Record