+10
src/ageAssurance/util.ts
+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
+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