From 281984b89a6aaa492f91cd3ef028beac6eaa7087 Mon Sep 17 00:00:00 2001 From: Lee Yi Jie Joel Date: Wed, 9 Mar 2022 09:31:01 +0800 Subject: [PATCH 01/12] Add initial config for Workos --- studio/pages/project/[ref]/auth/settings.tsx | 35 ++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/studio/pages/project/[ref]/auth/settings.tsx b/studio/pages/project/[ref]/auth/settings.tsx index 9d6bfc1712c..faf80f6d2f3 100644 --- a/studio/pages/project/[ref]/auth/settings.tsx +++ b/studio/pages/project/[ref]/auth/settings.tsx @@ -435,6 +435,9 @@ const Settings = () => { 'EXTERNAL_SPOTIFY_ENABLED', 'EXTERNAL_SPOTIFY_CLIENT_ID', 'EXTERNAL_SPOTIFY_SECRET', + 'EXTERNAL_WORKOS_ENABLED', + 'EXTERNAL_WORKOS_CLIENT_ID', + 'EXTERNAL_WORKOS_SECRET', ])} model={{ EXTERNAL_APPLE_ENABLED: model.EXTERNAL_APPLE_ENABLED, @@ -479,6 +482,9 @@ const Settings = () => { EXTERNAL_SPOTIFY_ENABLED: model.EXTERNAL_SPOTIFY_ENABLED, EXTERNAL_SPOTIFY_CLIENT_ID: model.EXTERNAL_SPOTIFY_CLIENT_ID || undefined, EXTERNAL_SPOTIFY_SECRET: model.EXTERNAL_SPOTIFY_SECRET || undefined, + EXTERNAL_WORKOS_ENABLED: model.EXTERNAL_WORKOS_ENABLED, + EXTERNAL_WORKOS_CLIENT_ID: model.EXTERNAL_WORKOS_CLIENT_ID || undefined, + EXTERNAL_WORKOS_SECRET: model.EXTERNAL_WORKOS_SECRET || undefined, }} onChangeModel={(model) => setExternalProvidersModel(model)} onReset={() => onFormReset()} @@ -889,6 +895,35 @@ const Settings = () => { /> )} + + + Create new credentials + + ) + } + /> + {externalProvidersModel.EXTERNAL_WORKOS_ENABLED && ( + <> + + + + )} From b30b41a1425a7219f0263d4333ab20f009cc45a1 Mon Sep 17 00:00:00 2001 From: Lee Yi Jie Joel Date: Wed, 9 Mar 2022 14:17:59 +0800 Subject: [PATCH 02/12] Update WorkOS details --- studio/pages/project/[ref]/auth/settings.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/studio/pages/project/[ref]/auth/settings.tsx b/studio/pages/project/[ref]/auth/settings.tsx index faf80f6d2f3..057e9fe6506 100644 --- a/studio/pages/project/[ref]/auth/settings.tsx +++ b/studio/pages/project/[ref]/auth/settings.tsx @@ -897,12 +897,12 @@ const Settings = () => { )} Create new credentials From 3398029c2131faea0754faee16cca59d6d98c8fc Mon Sep 17 00:00:00 2001 From: Lee Yi Jie Joel Date: Thu, 10 Mar 2022 22:06:51 +0100 Subject: [PATCH 03/12] Update auth_gotrue_config.json --- .../stores/jsonSchema/auth_gotrue_config.json | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/studio/stores/jsonSchema/auth_gotrue_config.json b/studio/stores/jsonSchema/auth_gotrue_config.json index 16d7e633ca1..de5e1265676 100644 --- a/studio/stores/jsonSchema/auth_gotrue_config.json +++ b/studio/stores/jsonSchema/auth_gotrue_config.json @@ -22,6 +22,8 @@ "EXTERNAL_TWITTER_ENABLED", "EXTERNAL_SLACK_ENABLED", "EXTERNAL_SPOTIFY_ENABLED", + "EXTERNAL_WORKOS_ENABLED", + "EXTERNAL_KEYCLOAK_ENABLED", "SMS_AUTOCONFIRM", "SMS_MAX_FREQUENCY", "SMS_OTP_EXP", @@ -258,6 +260,30 @@ "title": "Spotify secret", "type": "string" }, + "EXTERNAL_WORKOS_ENABLED": { + "title": "WorkOS enabled", + "type": "boolean" + }, + "EXTERNAL_WORKOS_CLIENT_ID": { + "title": "WorkOS client ID", + "type": "string" + }, + "EXTERNAL_WORKOS_SECRET": { + "title": "WorkOS secret", + "type": "string" + }, + "EXTERNAL_KEYCLOAK_ENABLED": { + "title": "Keycloak enabled", + "type": "boolean" + }, + "EXTERNAL_KEYCLOAK_CLIENT_ID": { + "title": "Keycloak client ID", + "type": "string" + }, + "EXTERNAL_KEYCLOAK_SECRET": { + "title": "Keycloak secret", + "type": "string" + }, "SMTP_ADMIN_EMAIL": { "title": "SMTP Admin Email", "type": "string" From 8308f8f1279659a98206b2d9820c203a6ec41512 Mon Sep 17 00:00:00 2001 From: Lee Yi Jie Joel Date: Thu, 10 Mar 2022 22:09:22 +0100 Subject: [PATCH 04/12] Update config.ts --- studio/pages/api/auth/[ref]/config.ts | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/studio/pages/api/auth/[ref]/config.ts b/studio/pages/api/auth/[ref]/config.ts index 119163c3ef4..74687b7c2b7 100644 --- a/studio/pages/api/auth/[ref]/config.ts +++ b/studio/pages/api/auth/[ref]/config.ts @@ -78,6 +78,12 @@ const handleGetAll = async (req: NextApiRequest, res: NextApiResponse) => { EXTERNAL_DISCORD_ENABLED: false, EXTERNAL_DISCORD_CLIENT_ID: null, EXTERNAL_DISCORD_SECRET: null, + EXTERNAL_WORKOS_ENABLED: false, + EXTERNAL_WORKOS_CLIENT_ID: null, + EXTERNAL_WORKOS_SECRET: null, + EXTERNAL_KEYCLOAK_ENABLED: false, + EXTERNAL_KEYCLOAK_CLIENT_ID: null, + EXTERNAL_KEYCLOAK_SECRET: null, MAILER_SUBJECTS_INVITE: 'You have been invited', MAILER_SUBJECTS_CONFIRMATION: 'Confirm Your Signup', MAILER_SUBJECTS_RECOVERY: 'Reset Your Password', From 3ac98f744be5f0db1e31fa56662b51eec90d776f Mon Sep 17 00:00:00 2001 From: Lee Yi Jie Joel Date: Thu, 10 Mar 2022 22:32:12 +0100 Subject: [PATCH 05/12] Add keycloak to settings.tsx --- studio/pages/project/[ref]/auth/settings.tsx | 35 ++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/studio/pages/project/[ref]/auth/settings.tsx b/studio/pages/project/[ref]/auth/settings.tsx index 057e9fe6506..729ed4a6abc 100644 --- a/studio/pages/project/[ref]/auth/settings.tsx +++ b/studio/pages/project/[ref]/auth/settings.tsx @@ -438,6 +438,9 @@ const Settings = () => { 'EXTERNAL_WORKOS_ENABLED', 'EXTERNAL_WORKOS_CLIENT_ID', 'EXTERNAL_WORKOS_SECRET', + 'EXTERNAL_KEYCLOAK_ENABLED', + 'EXTERNAL_KEYCLOAK_CLIENT_ID', + 'EXTERNAL_KEYCLOAK_SECRET', ])} model={{ EXTERNAL_APPLE_ENABLED: model.EXTERNAL_APPLE_ENABLED, @@ -485,6 +488,9 @@ const Settings = () => { EXTERNAL_WORKOS_ENABLED: model.EXTERNAL_WORKOS_ENABLED, EXTERNAL_WORKOS_CLIENT_ID: model.EXTERNAL_WORKOS_CLIENT_ID || undefined, EXTERNAL_WORKOS_SECRET: model.EXTERNAL_WORKOS_SECRET || undefined, + EXTERNAL_KEYCLOAK_ENABLED: model.EXTERNAL_KEYCLOAK_ENABLED, + EXTERNAL_KEYCLOAK_CLIENT_ID: model.EXTERNAL_KEYCLOAK_CLIENT_ID || undefined, + EXTERNAL_KEYCLOAK_SECRET: model.EXTERNAL_KEYCLOAK_SECRET || undefined, }} onChangeModel={(model) => setExternalProvidersModel(model)} onReset={() => onFormReset()} @@ -924,6 +930,35 @@ const Settings = () => { /> )} + + + Create new credentials + + ) + } + /> + {externalProvidersModel.EXTERNAL_KEYCLOAK_ENABLED && ( + <> + + + + )} From 91e328f96ee25563102bc9d82b3c8179f1115d30 Mon Sep 17 00:00:00 2001 From: Lee Yi Jie Joel Date: Mon, 21 Mar 2022 11:29:29 +0100 Subject: [PATCH 06/12] Update settings.tsx --- studio/pages/project/[ref]/auth/settings.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/studio/pages/project/[ref]/auth/settings.tsx b/studio/pages/project/[ref]/auth/settings.tsx index 8c849d2322b..6f7cf2118a7 100644 --- a/studio/pages/project/[ref]/auth/settings.tsx +++ b/studio/pages/project/[ref]/auth/settings.tsx @@ -982,7 +982,7 @@ const Settings = () => { externalProvidersModel.EXTERNAL_ZOOM_ENABLED && ( Create new credentials From 3cdc8efb156dda8de85ca16c695f2a0ea183d699 Mon Sep 17 00:00:00 2001 From: Lee Yi Jie Joel Date: Tue, 22 Mar 2022 13:31:40 +0100 Subject: [PATCH 07/12] Update config.ts --- studio/pages/api/auth/[ref]/config.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/studio/pages/api/auth/[ref]/config.ts b/studio/pages/api/auth/[ref]/config.ts index 8554b1c8153..8349964b647 100644 --- a/studio/pages/api/auth/[ref]/config.ts +++ b/studio/pages/api/auth/[ref]/config.ts @@ -96,9 +96,11 @@ const handleGetAll = async (req: NextApiRequest, res: NextApiResponse) => { EXTERNAL_WORKOS_ENABLED: false, EXTERNAL_WORKOS_CLIENT_ID: null, EXTERNAL_WORKOS_SECRET: null, + EXTERNAL_WORKOS_URL: null, EXTERNAL_ZOOM_ENABLED: false, EXTERNAL_ZOOM_CLIENT_ID: null, EXTERNAL_ZOOM_SECRET: null, + EXTERNAL_ZOOM_URL: null, MAILER_SUBJECTS_INVITE: 'You have been invited', MAILER_SUBJECTS_CONFIRMATION: 'Confirm Your Signup', From 3aaa891dc45ba59a8a2826e58b32e76af4a6dd1f Mon Sep 17 00:00:00 2001 From: Lee Yi Jie Joel Date: Tue, 22 Mar 2022 13:32:12 +0100 Subject: [PATCH 08/12] Update config.ts --- studio/pages/api/auth/[ref]/config.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/studio/pages/api/auth/[ref]/config.ts b/studio/pages/api/auth/[ref]/config.ts index 8349964b647..db58c42a707 100644 --- a/studio/pages/api/auth/[ref]/config.ts +++ b/studio/pages/api/auth/[ref]/config.ts @@ -75,6 +75,7 @@ const handleGetAll = async (req: NextApiRequest, res: NextApiResponse) => { EXTERNAL_KEYCLOAK_ENABLED: false, EXTERNAL_KEYCLOAK_CLIENT_ID: null, EXTERNAL_KEYCLOAK_SECRET: null, + EXTERNAL_KEYCLOAK_URL: null, EXTERNAL_LINKEDIN_ENABLED: false, EXTERNAL_LINKEDIN_CLIENT_ID: null, EXTERNAL_LINKEDIN_SECRET: null, @@ -99,8 +100,7 @@ const handleGetAll = async (req: NextApiRequest, res: NextApiResponse) => { EXTERNAL_WORKOS_URL: null, EXTERNAL_ZOOM_ENABLED: false, EXTERNAL_ZOOM_CLIENT_ID: null, - EXTERNAL_ZOOM_SECRET: null, - EXTERNAL_ZOOM_URL: null, + EXTERNAL_ZOOM_SECRET: null MAILER_SUBJECTS_INVITE: 'You have been invited', MAILER_SUBJECTS_CONFIRMATION: 'Confirm Your Signup', From e1fe9f0037b9b606824b6fb6c2eefe4a77a7dcff Mon Sep 17 00:00:00 2001 From: Lee Yi Jie Joel Date: Tue, 22 Mar 2022 13:35:40 +0100 Subject: [PATCH 09/12] Update settings.tsx --- studio/pages/project/[ref]/auth/settings.tsx | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/studio/pages/project/[ref]/auth/settings.tsx b/studio/pages/project/[ref]/auth/settings.tsx index 6f7cf2118a7..132f635c890 100644 --- a/studio/pages/project/[ref]/auth/settings.tsx +++ b/studio/pages/project/[ref]/auth/settings.tsx @@ -424,6 +424,7 @@ const Settings = () => { 'EXTERNAL_KEYCLOAK_ENABLED', 'EXTERNAL_KEYCLOAK_CLIENT_ID', 'EXTERNAL_KEYCLOAK_SECRET', + 'EXTERNAL_KEYCLOAK_URL', 'EXTERNAL_LINKEDIN_ENABLED', 'EXTERNAL_LINKEDIN_CLIENT_ID', 'EXTERNAL_LINKEDIN_SECRET', @@ -445,6 +446,7 @@ const Settings = () => { 'EXTERNAL_WORKOS_ENABLED', 'EXTERNAL_WORKOS_CLIENT_ID', 'EXTERNAL_WORKOS_SECRET', + 'EXTERNAL_WORKOS_URL', 'EXTERNAL_ZOOM_ENABLED', 'EXTERNAL_ZOOM_CLIENT_ID', 'EXTERNAL_ZOOM_SECRET', @@ -478,6 +480,7 @@ const Settings = () => { EXTERNAL_KEYCLOAK_ENABLED: model.EXTERNAL_KEYCLOAK_ENABLED, EXTERNAL_KEYCLOAK_CLIENT_ID: model.EXTERNAL_KEYCLOAK_CLIENT_ID || undefined, EXTERNAL_KEYCLOAK_SECRET: model.EXTERNAL_KEYCLOAK_SECRET || undefined, + EXTERNAL_KEYCLOAK_URL: model.EXTERNAL_KEYCLOAK_URL || undefined, EXTERNAL_LINKEDIN_ENABLED: model.EXTERNAL_LINKEDIN_ENABLED, EXTERNAL_LINKEDIN_CLIENT_ID: model.EXTERNAL_LINKEDIN_CLIENT_ID || undefined, EXTERNAL_LINKEDIN_SECRET: model.EXTERNAL_LINKEDIN_SECRET || undefined, @@ -499,6 +502,7 @@ const Settings = () => { EXTERNAL_WORKOS_ENABLED: model.EXTERNAL_WORKOS_ENABLED, EXTERNAL_WORKOS_CLIENT_ID: model.EXTERNAL_WORKOS_CLIENT_ID || undefined, EXTERNAL_WORKOS_SECRET: model.EXTERNAL_WORKOS_SECRET || undefined, + EXTERNAL_WORKOS_URL: model.EXTERNAL_WORKOS_URL || undefined, EXTERNAL_ZOOM_ENABLED: model.EXTERNAL_ZOOM_ENABLED, EXTERNAL_ZOOM_CLIENT_ID: model.EXTERNAL_ZOOM_CLIENT_ID || undefined, EXTERNAL_ZOOM_SECRET: model.EXTERNAL_ZOOM_SECRET || undefined, @@ -770,6 +774,11 @@ const Settings = () => { showInlineError errorMessage="Please enter the secret." /> + )} @@ -973,6 +982,11 @@ const Settings = () => { showInlineError errorMessage="Please enter the secret." /> + )} From 5f7f91d0d7474c70e4565262c348d2abd14401a8 Mon Sep 17 00:00:00 2001 From: Lee Yi Jie Joel Date: Tue, 22 Mar 2022 13:37:44 +0100 Subject: [PATCH 10/12] Update auth_gotrue_config.json --- studio/stores/jsonSchema/auth_gotrue_config.json | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/studio/stores/jsonSchema/auth_gotrue_config.json b/studio/stores/jsonSchema/auth_gotrue_config.json index 0fb2102f528..d244d25a64b 100644 --- a/studio/stores/jsonSchema/auth_gotrue_config.json +++ b/studio/stores/jsonSchema/auth_gotrue_config.json @@ -205,6 +205,10 @@ "title": "Keycloak secret", "type": "string" }, + "EXTERNAL_KEYCLOAK_URL": { + "title": "Keycloak URL", + "type": "string" + }, "EXTERNAL_LINKEDIN_ENABLED": { "title": "Linkedin enabled", "type": "boolean" @@ -289,6 +293,10 @@ "title": "WorkOS secret", "type": "string" }, + "EXTERNAL_WORKOS_URL": { + "title": "WorkOS URL", + "type": "string" + }, "EXTERNAL_ZOOM_ENABLED": { "title": "Zoom enabled", "type": "boolean" From 27edd562809b09a6616412073d8540eb4dd31319 Mon Sep 17 00:00:00 2001 From: Lee Yi Jie Joel Date: Tue, 22 Mar 2022 13:38:16 +0100 Subject: [PATCH 11/12] Update config.ts --- studio/pages/api/auth/[ref]/config.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/studio/pages/api/auth/[ref]/config.ts b/studio/pages/api/auth/[ref]/config.ts index db58c42a707..bea278795ab 100644 --- a/studio/pages/api/auth/[ref]/config.ts +++ b/studio/pages/api/auth/[ref]/config.ts @@ -100,7 +100,7 @@ const handleGetAll = async (req: NextApiRequest, res: NextApiResponse) => { EXTERNAL_WORKOS_URL: null, EXTERNAL_ZOOM_ENABLED: false, EXTERNAL_ZOOM_CLIENT_ID: null, - EXTERNAL_ZOOM_SECRET: null + EXTERNAL_ZOOM_SECRET: null, MAILER_SUBJECTS_INVITE: 'You have been invited', MAILER_SUBJECTS_CONFIRMATION: 'Confirm Your Signup', From 20288950a7c34f516cd0c5881ff174093f0d106a Mon Sep 17 00:00:00 2001 From: Lee Yi Jie Joel Date: Tue, 22 Mar 2022 13:41:48 +0100 Subject: [PATCH 12/12] Update settings.tsx --- studio/pages/project/[ref]/auth/settings.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/studio/pages/project/[ref]/auth/settings.tsx b/studio/pages/project/[ref]/auth/settings.tsx index 132f635c890..90a74ea2d9d 100644 --- a/studio/pages/project/[ref]/auth/settings.tsx +++ b/studio/pages/project/[ref]/auth/settings.tsx @@ -985,7 +985,7 @@ const Settings = () => { )}