Skip to content

Commit 03c00a7

Browse files
authored
fix: ZodError when presence optOut field missing from saved preferences (EPICSHOP-HY) (#658)
Co-authored-by: sentry[bot] <39604003+sentry[bot]@users.noreply.github.com>
1 parent 2068428 commit 03c00a7

1 file changed

Lines changed: 9 additions & 5 deletions

File tree

packages/workshop-utils/src/db.server.ts

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ const OfflineVideoPreferencesSchema = z
7676

7777
const PresencePreferencesSchema = z
7878
.object({
79-
optOut: z.boolean(),
79+
optOut: z.boolean().default(false),
8080
})
8181
.optional()
8282
.default(defaultPresencePreferences)
@@ -412,10 +412,14 @@ export async function setPreferences(
412412
...data?.preferences?.offlineVideo,
413413
...preferences?.offlineVideo,
414414
},
415-
presence: {
416-
...data?.preferences?.presence,
417-
...preferences?.presence,
418-
},
415+
...(data?.preferences?.presence || preferences?.presence
416+
? {
417+
presence: {
418+
...data?.preferences?.presence,
419+
...preferences?.presence,
420+
},
421+
}
422+
: {}),
419423
exerciseWarning: {
420424
...data?.preferences?.exerciseWarning,
421425
...preferences?.exerciseWarning,

0 commit comments

Comments
 (0)