Skip to content

Commit

Permalink
feat(suite-native): add evm L2s under feature flag
Browse files Browse the repository at this point in the history
  • Loading branch information
vytick committed Jan 8, 2025
1 parent 3891943 commit 0e139ae
Show file tree
Hide file tree
Showing 4 changed files with 16 additions and 2 deletions.
11 changes: 9 additions & 2 deletions suite-native/discovery/src/discoveryConfigSlice.ts
Original file line number Diff line number Diff line change
Expand Up @@ -123,8 +123,12 @@ const selectIsSolanaEnabled = createMemoizedSelector(
);

export const selectFeatureFlagEnabledNetworkSymbols = createMemoizedSelector(
[selectIsSolanaEnabled, selectAreTestnetsEnabled],
(isSolanaEnabled, areTestnetsEnabled) => {
[
selectIsSolanaEnabled,
selectAreTestnetsEnabled,
state => selectIsFeatureFlagEnabled(state, FeatureFlag.AreEthL2sEnabled),
],
(isSolanaEnabled, areTestnetsEnabled, areEthL2sEnabled) => {
const allowlist: NetworkSymbol[] = [];

if (isSolanaEnabled) {
Expand All @@ -133,6 +137,9 @@ export const selectFeatureFlagEnabledNetworkSymbols = createMemoizedSelector(
allowlist.push('dsol');
}
}
if (areEthL2sEnabled) {
allowlist.push('base', 'op', 'arb');
}

return returnStableArrayIfEmpty(allowlist);
},
Expand Down
3 changes: 3 additions & 0 deletions suite-native/feature-flags/src/featureFlagsSlice.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ export const FeatureFlag = {
IsSolanaEnabled: 'IsSolanaEnabled',
IsConnectPopupEnabled: 'IsConnectPopupEnabled',
IsFirmwareUpdateEnabled: 'IsFirmwareUpdateEnabled',
AreEthL2sEnabled: 'AreEthL2sEnabled',
} as const;
export type FeatureFlag = (typeof FeatureFlag)[keyof typeof FeatureFlag];

Expand All @@ -26,6 +27,7 @@ export const featureFlagsInitialState: FeatureFlagsState = {
[FeatureFlag.IsSolanaEnabled]: false,
[FeatureFlag.IsConnectPopupEnabled]: isDevelopOrDebugEnv(),
[FeatureFlag.IsFirmwareUpdateEnabled]: isDevelopOrDebugEnv(),
[FeatureFlag.AreEthL2sEnabled]: isDevelopOrDebugEnv(),
};

export const featureFlagsPersistedKeys: Array<keyof FeatureFlagsState> = [
Expand All @@ -35,6 +37,7 @@ export const featureFlagsPersistedKeys: Array<keyof FeatureFlagsState> = [
FeatureFlag.IsSolanaEnabled,
FeatureFlag.IsConnectPopupEnabled,
FeatureFlag.IsFirmwareUpdateEnabled,
FeatureFlag.AreEthL2sEnabled,
];

export const featureFlagsSlice = createSlice({
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ const featureFlagsTitleMap = {
[FeatureFlagEnum.IsSolanaEnabled]: 'Solana',
[FeatureFlagEnum.IsConnectPopupEnabled]: 'Connect Popup',
[FeatureFlagEnum.IsFirmwareUpdateEnabled]: 'Firmware update',
[FeatureFlagEnum.AreEthL2sEnabled]: 'Eth L2s',
} as const satisfies Record<FeatureFlagEnum, string>;

const FeatureFlag = ({ featureFlag }: { featureFlag: FeatureFlagEnum }) => {
Expand Down
3 changes: 3 additions & 0 deletions suite-native/tokens/src/utils.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,9 @@ export const NETWORK_SYMBOLS_WITH_TOKENS = [
'pol',
'bsc',
'sol',
'op',
'base',
'arb',
] satisfies Array<NetworkSymbol>;
export type NetworkSymbolWithTokens = (typeof NETWORK_SYMBOLS_WITH_TOKENS)[number];

Expand Down

0 comments on commit 0e139ae

Please sign in to comment.