feat(web): make google cast opt in (#18514)

* add setting switch

this isnt bound to anything yet

* make google casting opt-in

* doc updates

* lint docs

* remove unneeded translation items

* update mobile openai defs

* fix failing test

we need to mock user prefs since CastButton uses it
This commit is contained in:
Brandon Wees 2025-05-28 15:57:36 -05:00 committed by GitHub
parent b054e9dc2c
commit 78224961d1
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
19 changed files with 383 additions and 3 deletions

View file

@ -85,6 +85,11 @@ class PurchaseUpdate {
hideBuyButtonUntil?: string;
}
class CastUpdate {
@ValidateBoolean({ optional: true })
gCastEnabled?: boolean;
}
export class UserPreferencesUpdateDto {
@Optional()
@ValidateNested()
@ -135,6 +140,11 @@ export class UserPreferencesUpdateDto {
@ValidateNested()
@Type(() => PurchaseUpdate)
purchase?: PurchaseUpdate;
@Optional()
@ValidateNested()
@Type(() => CastUpdate)
cast?: CastUpdate;
}
class RatingsResponse {
@ -183,6 +193,10 @@ class PurchaseResponse {
hideBuyButtonUntil!: string;
}
class CastResponse {
gCastEnabled: boolean = false;
}
export class UserPreferencesResponseDto implements UserPreferences {
folders!: FoldersResponse;
memories!: MemoriesResponse;
@ -193,6 +207,7 @@ export class UserPreferencesResponseDto implements UserPreferences {
emailNotifications!: EmailNotificationsResponse;
download!: DownloadResponse;
purchase!: PurchaseResponse;
cast!: CastResponse;
}
export const mapPreferences = (preferences: UserPreferences): UserPreferencesResponseDto => {