From dc156c1b632f2fb43b04c1d67bcb0e2c7319624d Mon Sep 17 00:00:00 2001 From: Eric Bailey Date: Tue, 5 Aug 2025 13:45:19 -0500 Subject: [PATCH] Reorg --- .../PolicyUpdate202508/config.ts | 7 ++ .../index.tsx} | 12 ++-- .../dialogs/BlockingAnnouncements/config.ts | 8 ++- src/screens/Settings/AboutSettings.tsx | 64 +++++++++++-------- src/storage/schema.ts | 4 +- 5 files changed, 58 insertions(+), 37 deletions(-) create mode 100644 src/components/dialogs/BlockingAnnouncements/announcements/PolicyUpdate202508/config.ts rename src/components/dialogs/BlockingAnnouncements/announcements/{PolicyUpdate202508.tsx => PolicyUpdate202508/index.tsx} (96%) diff --git a/src/components/dialogs/BlockingAnnouncements/announcements/PolicyUpdate202508/config.ts b/src/components/dialogs/BlockingAnnouncements/announcements/PolicyUpdate202508/config.ts new file mode 100644 index 0000000000..1c230fd24d --- /dev/null +++ b/src/components/dialogs/BlockingAnnouncements/announcements/PolicyUpdate202508/config.ts @@ -0,0 +1,7 @@ +/* + * Keep this file separate to avoid import issues. + */ + +import {Nux} from '#/state/queries/nuxs' + +export const ID = Nux.BlockingAnnouncementPolicyUpdate202508 diff --git a/src/components/dialogs/BlockingAnnouncements/announcements/PolicyUpdate202508.tsx b/src/components/dialogs/BlockingAnnouncements/announcements/PolicyUpdate202508/index.tsx similarity index 96% rename from src/components/dialogs/BlockingAnnouncements/announcements/PolicyUpdate202508.tsx rename to src/components/dialogs/BlockingAnnouncements/announcements/PolicyUpdate202508/index.tsx index 27b1f57989..5a7ca13f62 100644 --- a/src/components/dialogs/BlockingAnnouncements/announcements/PolicyUpdate202508.tsx +++ b/src/components/dialogs/BlockingAnnouncements/announcements/PolicyUpdate202508/index.tsx @@ -25,33 +25,33 @@ export function Announcement({state}: {state: AnnouncementState}) { const linkStyle = [a.text_md] const links = { terms: { - overridePresentation: true, + overridePresentation: false, to: `https://bsky.social/about/support`, label: _(msg`Terms of Service`), }, privacy: { - overridePresentation: true, + overridePresentation: false, to: `https://bsky.social/about/support`, label: _(msg`Privacy Policy`), }, copyright: { - overridePresentation: true, + overridePresentation: false, to: `https://bsky.social/about/support`, label: _(msg`Copyright Policy`), }, guidelines: { - overridePresentation: true, + overridePresentation: false, to: `https://bsky.social/about/support`, label: _(msg`Community Guidelines`), }, blog: { - overridePresentation: true, + overridePresentation: false, to: `https://bsky.social/about/support`, label: _(msg`Our blog post`), }, } const linkButtonStyles = { - overridePresentation: true, + overridePresentation: false, color: 'secondary', size: 'small', } as const diff --git a/src/components/dialogs/BlockingAnnouncements/config.ts b/src/components/dialogs/BlockingAnnouncements/config.ts index 9d154c9e98..8f58b5c3a0 100644 --- a/src/components/dialogs/BlockingAnnouncements/config.ts +++ b/src/components/dialogs/BlockingAnnouncements/config.ts @@ -1,3 +1,7 @@ -import {Nux} from '#/state/queries/nuxs' +import {ID} from '#/components/dialogs/BlockingAnnouncements/announcements/PolicyUpdate202508/config' -export const ACTIVE_ANNOUNCEMENT = Nux.BlockingAnnouncementPolicyUpdate202508 +/** + * The singulary active announcement ID. This is configured here to ensure that + * the relationship is clear. + */ +export const ACTIVE_ANNOUNCEMENT = ID diff --git a/src/screens/Settings/AboutSettings.tsx b/src/screens/Settings/AboutSettings.tsx index 66506a579c..4bba812c0c 100644 --- a/src/screens/Settings/AboutSettings.tsx +++ b/src/screens/Settings/AboutSettings.tsx @@ -1,5 +1,5 @@ import {useMemo} from 'react' -import {Platform} from 'react-native' +import {Platform, View} from 'react-native' import {setStringAsync} from 'expo-clipboard' import * as FileSystem from 'expo-file-system' import {Image} from 'expo-image' @@ -12,10 +12,12 @@ import {Statsig} from 'statsig-react-native-expo' import {STATUS_PAGE_URL} from '#/lib/constants' import {type CommonNavigatorParams} from '#/lib/routes/types' import {isAndroid, isIOS, isNative} from '#/platform/detection' -import {Nux} from '#/state/queries/nuxs' import {useAgent} from '#/state/session' import * as Toast from '#/view/com/util/Toast' import * as SettingsList from '#/screens/Settings/components/SettingsList' +import {atoms as a} from '#/alf' +import {Button, ButtonText} from '#/components/Button' +import {ID as PolicyUpdate202508} from '#/components/dialogs/BlockingAnnouncements/announcements/PolicyUpdate202508/config' import {Atom_Stroke2_Corner0_Rounded as AtomIcon} from '#/components/icons/Atom' import {BroomSparkle_Stroke2_Corner2_Rounded as BroomSparkleIcon} from '#/components/icons/BroomSparkle' import {CodeLines_Stroke2_Corner2_Rounded as CodeLinesIcon} from '#/components/icons/CodeLines' @@ -24,6 +26,7 @@ import {Newspaper_Stroke2_Corner2_Rounded as NewspaperIcon} from '#/components/i import {Wrench_Stroke2_Corner2_Rounded as WrenchIcon} from '#/components/icons/Wrench' import * as Layout from '#/components/Layout' import {Loader} from '#/components/Loader' +import {Text} from '#/components/Typography' import * as env from '#/env' import {device, useStorage} from '#/storage' import {useDemoMode} from '#/storage/hooks/demo-mode' @@ -200,32 +203,39 @@ function PolicyUpdateDebug() { return ( <> - { - setOverride(!override) - }} - label="Toggle"> - - - Enable policy update override - - + + + PolicyUpdate202508 Debug - {override && ( - { - device.set([Nux.BlockingAnnouncementPolicyUpdate202508], false) - agent.bskyAppRemoveNuxs([ - Nux.BlockingAnnouncementPolicyUpdate202508, - ]) - }} - label="Reset policy update nux"> - - - Reset policy update state - - - )} + + + + + + + ) } diff --git a/src/storage/schema.ts b/src/storage/schema.ts index 1ee780c78c..196552a2a3 100644 --- a/src/storage/schema.ts +++ b/src/storage/schema.ts @@ -1,4 +1,4 @@ -import {type Nux} from '#/state/queries/nuxs' +import {type ID as PolicyUpdate202508} from '#/components/dialogs/BlockingAnnouncements/announcements/PolicyUpdate202508/config' /** * Device data that's specific to the device and does not vary based account @@ -20,7 +20,7 @@ export type Device = { * Blocking announcements. New IDs are required for each new announcement. */ blockingAnnouncementOverride?: boolean - [Nux.BlockingAnnouncementPolicyUpdate202508]?: boolean + [PolicyUpdate202508]?: boolean } export type Account = {