2024-10-21 09:23:20 +08:00
|
|
|
export enum SSOProtocol {
|
|
|
|
SAML = 'saml',
|
|
|
|
OIDC = 'oidc',
|
|
|
|
OAuth2 = 'oauth2',
|
|
|
|
}
|
|
|
|
|
2024-11-15 17:59:48 +08:00
|
|
|
export enum LicenseStatus {
|
|
|
|
NONE = 'none',
|
|
|
|
INACTIVE = 'inactive',
|
|
|
|
ACTIVE = 'active',
|
|
|
|
EXPIRING = 'expiring',
|
|
|
|
EXPIRED = 'expired',
|
|
|
|
LOST = 'lost',
|
|
|
|
}
|
|
|
|
|
2025-06-18 15:51:23 +08:00
|
|
|
export enum InstallationScope {
|
|
|
|
ALL = 'all',
|
|
|
|
NONE = 'none',
|
|
|
|
OFFICIAL_ONLY = 'official_only',
|
|
|
|
OFFICIAL_AND_PARTNER = 'official_and_specific_partners',
|
|
|
|
}
|
|
|
|
|
2024-11-15 17:59:48 +08:00
|
|
|
type License = {
|
|
|
|
status: LicenseStatus
|
|
|
|
expired_at: string | null
|
|
|
|
}
|
|
|
|
|
2024-05-15 16:14:49 +08:00
|
|
|
export type SystemFeatures = {
|
2025-06-18 15:51:23 +08:00
|
|
|
plugin_installation_permission: {
|
|
|
|
plugin_installation_scope: InstallationScope,
|
|
|
|
restrict_to_marketplace_only: boolean
|
|
|
|
},
|
2024-05-15 16:14:49 +08:00
|
|
|
sso_enforced_for_signin: boolean
|
2024-10-21 09:23:20 +08:00
|
|
|
sso_enforced_for_signin_protocol: SSOProtocol | ''
|
2024-05-15 16:14:49 +08:00
|
|
|
sso_enforced_for_web: boolean
|
2024-10-21 09:23:20 +08:00
|
|
|
sso_enforced_for_web_protocol: SSOProtocol | ''
|
2025-02-17 17:05:13 +08:00
|
|
|
enable_marketplace: boolean
|
2024-10-21 09:23:20 +08:00
|
|
|
enable_email_code_login: boolean
|
|
|
|
enable_email_password_login: boolean
|
|
|
|
enable_social_oauth_login: boolean
|
|
|
|
is_allow_create_workspace: boolean
|
|
|
|
is_allow_register: boolean
|
2024-12-18 16:20:41 +09:00
|
|
|
is_email_setup: boolean
|
2024-11-15 17:59:48 +08:00
|
|
|
license: License
|
2025-05-20 12:07:50 +08:00
|
|
|
branding: {
|
|
|
|
enabled: boolean
|
|
|
|
login_page_logo: string
|
|
|
|
workspace_logo: string
|
|
|
|
favicon: string
|
|
|
|
application_title: string
|
|
|
|
}
|
|
|
|
webapp_auth: {
|
|
|
|
enabled: boolean
|
|
|
|
allow_sso: boolean
|
|
|
|
sso_config: {
|
|
|
|
protocol: SSOProtocol | ''
|
|
|
|
}
|
|
|
|
allow_email_code_login: boolean
|
|
|
|
allow_email_password_login: boolean
|
|
|
|
}
|
2024-05-15 16:14:49 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
export const defaultSystemFeatures: SystemFeatures = {
|
2025-06-18 15:51:23 +08:00
|
|
|
plugin_installation_permission: {
|
|
|
|
plugin_installation_scope: InstallationScope.ALL,
|
|
|
|
restrict_to_marketplace_only: false,
|
|
|
|
},
|
2024-05-15 16:14:49 +08:00
|
|
|
sso_enforced_for_signin: false,
|
|
|
|
sso_enforced_for_signin_protocol: '',
|
|
|
|
sso_enforced_for_web: false,
|
|
|
|
sso_enforced_for_web_protocol: '',
|
2025-02-17 17:05:13 +08:00
|
|
|
enable_marketplace: false,
|
2024-10-21 09:23:20 +08:00
|
|
|
enable_email_code_login: false,
|
|
|
|
enable_email_password_login: false,
|
|
|
|
enable_social_oauth_login: false,
|
|
|
|
is_allow_create_workspace: false,
|
|
|
|
is_allow_register: false,
|
2024-12-18 16:20:41 +09:00
|
|
|
is_email_setup: false,
|
2024-11-15 17:59:48 +08:00
|
|
|
license: {
|
|
|
|
status: LicenseStatus.NONE,
|
|
|
|
expired_at: '',
|
|
|
|
},
|
2025-05-20 12:07:50 +08:00
|
|
|
branding: {
|
|
|
|
enabled: false,
|
|
|
|
login_page_logo: '',
|
|
|
|
workspace_logo: '',
|
|
|
|
favicon: '',
|
|
|
|
application_title: 'test title',
|
|
|
|
},
|
|
|
|
webapp_auth: {
|
|
|
|
enabled: false,
|
|
|
|
allow_sso: false,
|
|
|
|
sso_config: {
|
|
|
|
protocol: '',
|
|
|
|
},
|
|
|
|
allow_email_code_login: false,
|
|
|
|
allow_email_password_login: false,
|
|
|
|
},
|
2024-05-15 16:14:49 +08:00
|
|
|
}
|