Bluesky app fork with some witchin' additions 💫

Don't overwrite more mod prefs than necessary (#9536)

authored by Eric Bailey and committed by GitHub 37a73b17 a3fc0821

Changed files
+14 -1
src
ageAssurance
state
queries
preferences
+10
src/ageAssurance/util.ts
··· 3 3 ageAssuranceRuleIDs as ids, 4 4 type AppBskyAgeassuranceDefs, 5 5 getAgeAssuranceRegionConfig, 6 + type ModerationPrefs, 6 7 } from '@atproto/api' 7 8 8 9 import {getAge} from '#/lib/strings/time' 10 + import {DEFAULT_LOGGED_OUT_LABEL_PREFERENCES} from '#/state/queries/preferences/moderation' 9 11 import {useAgeAssuranceDataContext} from '#/ageAssurance/data' 10 12 import {AgeAssuranceAccess} from '#/ageAssurance/types' 11 13 import {type Geolocation, useGeolocation} from '#/geolocation' ··· 95 97 today.getDate() - 1, // set to day before to ensure age is reached 96 98 ).toISOString() 97 99 } 100 + 101 + export const makeAgeRestrictedModerationPrefs = ( 102 + prefs: ModerationPrefs, 103 + ): ModerationPrefs => ({ 104 + ...prefs, 105 + adultContentEnabled: false, 106 + labels: DEFAULT_LOGGED_OUT_LABEL_PREFERENCES, 107 + })
+4 -1
src/state/queries/preferences/index.ts
··· 23 23 import {useAgent} from '#/state/session' 24 24 import {saveLabelers} from '#/state/session/agent-config' 25 25 import {useAgeAssurance} from '#/ageAssurance' 26 + import {makeAgeRestrictedModerationPrefs} from '#/ageAssurance/util' 26 27 27 28 export * from '#/state/queries/preferences/const' 28 29 export * from '#/state/queries/preferences/moderation' ··· 81 82 if (aa.state.access !== aa.Access.Full) { 82 83 data = { 83 84 ...data, 84 - moderationPrefs: DEFAULT_LOGGED_OUT_PREFERENCES.moderationPrefs, 85 + moderationPrefs: makeAgeRestrictedModerationPrefs( 86 + data.moderationPrefs, 87 + ), 85 88 } 86 89 } 87 90 return data