diff --git a/open-api/immich-openapi-specs.json b/open-api/immich-openapi-specs.json index 70820886a..0ffa714fb 100644 --- a/open-api/immich-openapi-specs.json +++ b/open-api/immich-openapi-specs.json @@ -33974,6 +33974,11 @@ }, "UserConfigOAuthDto": { "properties": { + "accountManagementUrl": { + "default": "", + "description": "Account management URL", + "type": "string" + }, "autoLaunch": { "description": "Auto launch", "type": "boolean" diff --git a/packages/sdk/src/fetch-client.ts b/packages/sdk/src/fetch-client.ts index e52f746c0..f9cb6930c 100644 --- a/packages/sdk/src/fetch-client.ts +++ b/packages/sdk/src/fetch-client.ts @@ -1616,6 +1616,8 @@ export type UserConfigNotificationsDto = { smtp: UserConfigSmtpDto; }; export type UserConfigOAuthDto = { + /** Account management URL */ + accountManagementUrl?: string; /** Auto launch */ autoLaunch: boolean; /** Button text */ diff --git a/server/src/dtos/config.dto.ts b/server/src/dtos/config.dto.ts index c123358f4..63620b7d0 100644 --- a/server/src/dtos/config.dto.ts +++ b/server/src/dtos/config.dto.ts @@ -303,7 +303,8 @@ const AdminConfigSchemaWithVisibility = z accountManagementUrl: emptyOrUrl('Account management URL must be an empty string or a valid URL') .describe('Account management URL') .optional() - .default(''), + .default('') + .meta({ visibility: User }), scope: z.string().describe('Scope'), prompt: z.string().describe('OAuth prompt parameter (e.g. select_account, login, consent)'), endSessionEndpoint: emptyOrUrl('endSessionEndpoint must be an empty string or a valid URL').describe( diff --git a/web/src/routes/(user)/user-settings/OAuthSettings.svelte b/web/src/routes/(user)/user-settings/OAuthSettings.svelte index d3b12693c..deb5bbd7c 100644 --- a/web/src/routes/(user)/user-settings/OAuthSettings.svelte +++ b/web/src/routes/(user)/user-settings/OAuthSettings.svelte @@ -9,15 +9,9 @@ import { fade } from 'svelte/transition'; import { createPreloadedQuery } from '$lib/queries/client'; import { getUserConfigQuery } from '$lib/queries/config-user.query'; - import { getServerConfigQuery } from '$lib/queries/server.query'; - const queries = { - config: createPreloadedQuery(getUserConfigQuery), - serverConfig: createPreloadedQuery(getServerConfigQuery), - }; - - const config = $derived(queries.config.data); - const serverConfig = $derived(queries.serverConfig.data); + const query = createPreloadedQuery(getUserConfigQuery); + const config = $derived(query.data); let loading = $state(true); @@ -58,8 +52,8 @@ {:else if config.oauth.enabled} {#if authManager.user.oauthId} - {#if serverConfig.oauthAccountManagementUrl} - {/if}