From 1bd7832f9d590bf09631b36a0a31d91c163c72d2 Mon Sep 17 00:00:00 2001 From: Eric Bailey Date: Mon, 8 Jun 2026 20:16:08 -0500 Subject: [PATCH] Move DEFAULT_LOGGED_OUT_LABEL_PREFERENCES to const file --- src/ageAssurance/util.ts | 2 +- src/state/preferences/moderation-opts.tsx | 2 +- src/state/queries/preferences/const.ts | 15 ++++++++++++++- src/state/queries/preferences/moderation.ts | 14 +------------- 4 files changed, 17 insertions(+), 16 deletions(-) diff --git a/src/ageAssurance/util.ts b/src/ageAssurance/util.ts index 72754967fb..0d493f1130 100644 --- a/src/ageAssurance/util.ts +++ b/src/ageAssurance/util.ts @@ -6,7 +6,7 @@ import { } from '@atproto/api' import {getAge} from '#/lib/strings/time' -import {DEFAULT_LOGGED_OUT_LABEL_PREFERENCES} from '#/state/queries/preferences/moderation' +import {DEFAULT_LOGGED_OUT_LABEL_PREFERENCES} from '#/state/queries/preferences/const' import {FALLBACK_REGION_CONFIG, MIN_ACCESS_AGE} from '#/ageAssurance/const' import {useAgeAssuranceServerDataContext} from '#/ageAssurance/data' import { diff --git a/src/state/preferences/moderation-opts.tsx b/src/state/preferences/moderation-opts.tsx index b8592d77e0..119c9008db 100644 --- a/src/state/preferences/moderation-opts.tsx +++ b/src/state/preferences/moderation-opts.tsx @@ -2,7 +2,7 @@ import {createContext, useContext, useMemo} from 'react' import {AtpAgent, type ModerationOpts} from '@atproto/api' import {useHiddenPosts, useLabelDefinitions} from '#/state/preferences' -import {DEFAULT_LOGGED_OUT_LABEL_PREFERENCES} from '#/state/queries/preferences/moderation' +import {DEFAULT_LOGGED_OUT_LABEL_PREFERENCES} from '#/state/queries/preferences/const' import {useSession} from '#/state/session' import {usePreferencesQuery} from '../queries/preferences' diff --git a/src/state/queries/preferences/const.ts b/src/state/queries/preferences/const.ts index 7508fa4f6d..02f7d62a87 100644 --- a/src/state/queries/preferences/const.ts +++ b/src/state/queries/preferences/const.ts @@ -1,9 +1,22 @@ -import {DEFAULT_LOGGED_OUT_LABEL_PREFERENCES} from '#/state/queries/preferences/moderation' +import {DEFAULT_LABEL_SETTINGS} from '@atproto/api' + import { type ThreadViewPreferences, type UsePreferencesQueryResponse, } from '#/state/queries/preferences/types' +/** + * More strict than our default settings for logged in users. + * + * Defined here rather than in `./moderation` to avoid a module-init cycle: + * `moderation` imports `./index`, which re-exports this file, so reading the + * value from `moderation` at init time lands in its temporal dead zone. + */ +export const DEFAULT_LOGGED_OUT_LABEL_PREFERENCES: typeof DEFAULT_LABEL_SETTINGS = + Object.fromEntries( + Object.entries(DEFAULT_LABEL_SETTINGS).map(([key, _pref]) => [key, 'hide']), + ) + export const DEFAULT_HOME_FEED_PREFS: UsePreferencesQueryResponse['feedViewPrefs'] = { hideReplies: false, diff --git a/src/state/queries/preferences/moderation.ts b/src/state/queries/preferences/moderation.ts index 1c0f5a3fe5..c23e995e41 100644 --- a/src/state/queries/preferences/moderation.ts +++ b/src/state/queries/preferences/moderation.ts @@ -1,22 +1,10 @@ import {useMemo} from 'react' -import { - BskyAgent, - DEFAULT_LABEL_SETTINGS, - interpretLabelValueDefinitions, -} from '@atproto/api' +import {BskyAgent, interpretLabelValueDefinitions} from '@atproto/api' import {isNonConfigurableModerationAuthority} from '#/state/session/additional-moderation-authorities' import {useLabelersDetailedInfoQuery} from '../labeler' import {usePreferencesQuery} from './index' -/** - * More strict than our default settings for logged in users. - */ -export const DEFAULT_LOGGED_OUT_LABEL_PREFERENCES: typeof DEFAULT_LABEL_SETTINGS = - Object.fromEntries( - Object.entries(DEFAULT_LABEL_SETTINGS).map(([key, _pref]) => [key, 'hide']), - ) - export function useMyLabelersQuery({ excludeNonConfigurableLabelers = false, }: {