diff --git a/native/navigation/route-names.js b/native/navigation/route-names.js
--- a/native/navigation/route-names.js
+++ b/native/navigation/route-names.js
@@ -148,6 +148,7 @@
export const KeyserverSelectionBottomSheetRouteName =
'KeyserverSelectionBottomSheet';
export const AccountDoesNotExistRouteName = 'AccountDoesNotExist';
+export const FarcasterAccountSettingsRouteName = 'FarcasterAccountSettings';
export type RootParamList = {
+LoggedOutModal: void,
@@ -246,6 +247,7 @@
+TunnelbrokerMenu: void,
+KeyserverSelectionList: void,
+AddKeyserver: void,
+ +FarcasterAccountSettings: void,
};
export type CommunityDrawerParamList = { +TabNavigator: void };
diff --git a/native/profile/farcaster-account-settings.react.js b/native/profile/farcaster-account-settings.react.js
new file mode 100644
--- /dev/null
+++ b/native/profile/farcaster-account-settings.react.js
@@ -0,0 +1,18 @@
+// @flow
+
+import * as React from 'react';
+
+import type { ProfileNavigationProp } from './profile.react.js';
+import type { NavigationRoute } from '../navigation/route-names.js';
+
+type Props = {
+ +navigation: ProfileNavigationProp<'FarcasterAccountSettings'>,
+ +route: NavigationRoute<'FarcasterAccountSettings'>,
+};
+
+// eslint-disable-next-line no-unused-vars
+function FarcasterAccountSettings(props: Props): React.Node {
+ return null;
+}
+
+export default FarcasterAccountSettings;
diff --git a/native/profile/profile-screen.react.js b/native/profile/profile-screen.react.js
--- a/native/profile/profile-screen.react.js
+++ b/native/profile/profile-screen.react.js
@@ -13,6 +13,7 @@
useDispatchActionPromise,
type DispatchActionPromise,
} from 'lib/utils/redux-promise-utils.js';
+import { usingCommServicesAccessToken } from 'lib/utils/services-utils.js';
import type { ProfileNavigationProp } from './profile.react.js';
import { deleteNativeCredentialsFor } from '../account/native-credentials.js';
@@ -36,6 +37,7 @@
BackupMenuRouteName,
KeyserverSelectionListRouteName,
TunnelbrokerMenuRouteName,
+ FarcasterAccountSettingsRouteName,
} from '../navigation/route-names.js';
import { useSelector } from '../redux/redux-utils.js';
import { type Colors, useColors, useStyles } from '../themes/colors.js';
@@ -234,6 +236,16 @@
);
}
+ let farcasterAccountSettings;
+ if (usingCommServicesAccessToken || __DEV__) {
+ farcasterAccountSettings = (
+
+ );
+ }
+
return (
+ {farcasterAccountSettings}
{linkedDevices}
{keyserverSelection}
@@ -375,6 +388,10 @@
this.props.navigation.navigate({ name: DeleteAccountRouteName });
};
+ onPressFaracsterAccount = () => {
+ this.props.navigation.navigate({ name: FarcasterAccountSettingsRouteName });
+ };
+
onPressDevices = () => {
this.props.navigation.navigate({ name: LinkedDevicesRouteName });
};
diff --git a/native/profile/profile.react.js b/native/profile/profile.react.js
--- a/native/profile/profile.react.js
+++ b/native/profile/profile.react.js
@@ -19,6 +19,7 @@
import DevTools from './dev-tools.react.js';
import EditPassword from './edit-password.react.js';
import EmojiUserAvatarCreation from './emoji-user-avatar-creation.react.js';
+import FarcasterAccountSettings from './farcaster-account-settings.react.js';
import KeyserverSelectionListHeaderRightButton from './keyserver-selection-list-header-right-button.react.js';
import KeyserverSelectionList from './keyserver-selection-list.react.js';
import LinkedDevicesHeaderRightButton from './linked-devices-header-right-button.react.js';
@@ -49,6 +50,7 @@
BackupMenuRouteName,
KeyserverSelectionListRouteName,
AddKeyserverRouteName,
+ FarcasterAccountSettingsRouteName,
type ScreenParamList,
type ProfileParamList,
TunnelbrokerMenuRouteName,
@@ -86,6 +88,7 @@
const friendListOptions = { headerTitle: 'Friend list' };
const blockListOptions = { headerTitle: 'Block list' };
const defaultNotificationsOptions = { headerTitle: 'Default Notifications' };
+const farcasterSettingsOptions = { headerTitle: 'Farcaster account' };
export type ProfileNavigationProp<
RouteName: $Keys = $Keys,
@@ -225,6 +228,11 @@
component={RelationshipList}
options={blockListOptions}
/>
+