Skip to content

Commit dc5e5f3

Browse files
committed
feat: LOGIN_PASSWORD_ONLY env variable for self hosting without mail server
Signed-off-by: Antonio Cheong <[email protected]>
1 parent 8bd4590 commit dc5e5f3

File tree

5 files changed

+13
-2
lines changed

5 files changed

+13
-2
lines changed

dev/prod/src/platform.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -294,6 +294,7 @@ export async function configurePlatform() {
294294

295295
setMetadata(login.metadata.AccountsUrl, config.ACCOUNTS_URL)
296296
setMetadata(login.metadata.DisableSignUp, config.DISABLE_SIGNUP === 'true')
297+
setMetadata(login.metadata.LoginPasswordOnly, config.LOGIN_PASSWORD_ONLY === 'true')
297298
setMetadata(presentation.metadata.FilesURL, config.FILES_URL)
298299
setMetadata(presentation.metadata.UploadURL, config.UPLOAD_URL)
299300
setMetadata(presentation.metadata.CollaboratorUrl, config.COLLABORATOR_URL)

plugins/login-resources/src/components/LoginApp.svelte

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@
5555
export let page: Pages = 'signup'
5656
5757
const signUpDisabled = getMetadata(login.metadata.DisableSignUp) ?? false
58+
const loginPasswordOnly = getMetadata(login.metadata.LoginPasswordOnly) ?? false
5859
let navigateUrl: string | undefined
5960
6061
onDestroy(location.subscribe(updatePageLoc))
@@ -135,7 +136,7 @@
135136
<Scroller padding={'1rem 0'}>
136137
<div class="form-content">
137138
{#if page === 'login'}
138-
<LoginForm {navigateUrl} {signUpDisabled} />
139+
<LoginForm {navigateUrl} {signUpDisabled} {loginPasswordOnly} />
139140
{:else if page === 'signup'}
140141
<SignupForm {signUpDisabled} />
141142
{:else if page === 'createWorkspace'}

plugins/login-resources/src/components/LoginForm.svelte

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,14 @@
2222
2323
export let navigateUrl: string | undefined = undefined
2424
export let signUpDisabled = false
25+
export let loginPasswordOnly = false
2526
2627
let method: LoginMethods = LoginMethods.Otp
2728
29+
if (loginPasswordOnly === true) {
30+
method = LoginMethods.Password
31+
}
32+
2833
function changeMethod (event: CustomEvent<LoginMethods>): void {
2934
method = event.detail
3035
}

plugins/login/src/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,7 @@ export default plugin(loginId, {
7373
LastToken: '' as Metadata<string>,
7474
LoginEndpoint: '' as Metadata<string>,
7575
LoginEmail: '' as Metadata<string>,
76+
LoginPasswordOnly: '' as Metadata<boolean>,
7677
DisableSignUp: '' as Metadata<boolean>
7778
},
7879
component: {

server/front/src/starter.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,8 @@ export function startFront (ctx: MeasureContext, extraConfig?: Record<string, st
119119

120120
const disableSignUp = process.env.DISABLE_SIGNUP
121121

122+
const loginPasswordOnly = process.env.LOGIN_PASSWORD_ONLY
123+
122124
const config = {
123125
elasticUrl,
124126
storageAdapter,
@@ -137,7 +139,8 @@ export function startFront (ctx: MeasureContext, extraConfig?: Record<string, st
137139
previewConfig,
138140
uploadConfig,
139141
pushPublicKey,
140-
disableSignUp
142+
disableSignUp,
143+
loginPasswordOnly
141144
}
142145
console.log('Starting Front service with', config)
143146
const shutdown = start(ctx, config, SERVER_PORT, extraConfig)

0 commit comments

Comments
 (0)