[#3364] added mailcow OAuth2 provider

Co-authored-by: thisni1s <nils@jn2p.de>
This commit is contained in:
Gani Georgiev
2023-10-14 14:46:01 +03:00
parent 69983bff5e
commit 01e33c07fe
45 changed files with 3332 additions and 3219 deletions

View File

@@ -1,11 +1,10 @@
import SelfHostedOptions from "@/components/settings/providers/SelfHostedOptions.svelte";
import MicrosoftOptions from "@/components/settings/providers/MicrosoftOptions.svelte";
import OIDCOptions from "@/components/settings/providers/OIDCOptions.svelte";
import AppleOptions from "@/components/settings/providers/AppleOptions.svelte";
// Object list with all supported OAuth2 providers in the format:
// ```
// [ { key, title, logo, optionsComponent? }, ... ]
// [ { key, title, logo, optionsComponent?, optionComponentProps? }, ... ]
// ```
//
// The logo images must be placed inside the /public/images/oauth2 directory.
@@ -13,6 +12,7 @@ import AppleOptions from "@/components/settings/providers/AppleOptions.svel
// If `optionsComponent` is provided it will receive 2 parameters:
// - `key` - the provider settings key (eg. "gitlabAuth")
// - `config` - the provider settings config that is currently being updated
// - any other prop from optionComponentProps
export default [
{
key: "appleAuth",
@@ -56,6 +56,7 @@ export default [
title: "GitLab",
logo: "gitlab.svg",
optionsComponent: SelfHostedOptions,
optionsComponentProps: { title: "Self-hosted endpoints (optional)" },
},
{
key: "giteeAuth",
@@ -67,6 +68,7 @@ export default [
title: "Gitea",
logo: "gitea.svg",
optionsComponent: SelfHostedOptions,
optionsComponentProps: { title: "Self-hosted endpoints (optional)" },
},
{
key: "discordAuth",
@@ -113,22 +115,32 @@ export default [
title: "LiveChat",
logo: "livechat.svg",
},
{
key: "mailcowAuth",
title: "mailcow",
logo: "mailcow.svg",
optionsComponent: SelfHostedOptions,
optionsComponentProps: { required: true },
},
{
key: "oidcAuth",
title: "OpenID Connect",
logo: "oidc.svg",
optionsComponent: OIDCOptions,
optionsComponent: SelfHostedOptions,
optionsComponentProps: { required: true },
},
{
key: "oidc2Auth",
title: "(2) OpenID Connect",
logo: "oidc.svg",
optionsComponent: OIDCOptions,
optionsComponent: SelfHostedOptions,
optionsComponentProps: { required: true },
},
{
key: "oidc3Auth",
title: "(3) OpenID Connect",
logo: "oidc.svg",
optionsComponent: OIDCOptions,
optionsComponent: SelfHostedOptions,
optionsComponentProps: { required: true },
},
];