From 23e43b53eab88852632f8a07007e01752a482e85 Mon Sep 17 00:00:00 2001 From: Rui Date: Fri, 30 Aug 2024 09:02:52 +0800 Subject: [PATCH] Add FF --- .../_Utils/dydxFeatureFlag.swift | 3 +++ .../dydxPresenters/_Features/features.json | 20 +++++++++++++++++++ .../dydxStateManager/AbacusStateManager.swift | 1 + 3 files changed, 24 insertions(+) diff --git a/dydx/dydxFormatter/dydxFormatter/_Utils/dydxFeatureFlag.swift b/dydx/dydxFormatter/dydxFormatter/_Utils/dydxFeatureFlag.swift index 477f048d..eca826f1 100644 --- a/dydx/dydxFormatter/dydxFormatter/_Utils/dydxFeatureFlag.swift +++ b/dydx/dydxFormatter/dydxFormatter/_Utils/dydxFeatureFlag.swift @@ -15,6 +15,7 @@ public enum dydxBoolFeatureFlag: String, CaseIterable { case shouldUseSkip = "ff_skip_migration" case isVaultEnabled = "ff_vault_enabled" case showPredictionMarketsUI = "ff_show_prediction_markets_ui" + case abacus_static_typing var defaultValue: Bool { switch self { @@ -28,6 +29,8 @@ public enum dydxBoolFeatureFlag: String, CaseIterable { return false case .showPredictionMarketsUI: return false + case .abacus_static_typing: + return false } } diff --git a/dydx/dydxPresenters/dydxPresenters/_Features/features.json b/dydx/dydxPresenters/dydxPresenters/_Features/features.json index 98aa53f3..3271351e 100644 --- a/dydx/dydxPresenters/dydxPresenters/_Features/features.json +++ b/dydx/dydxPresenters/dydxPresenters/_Features/features.json @@ -92,6 +92,26 @@ } ] } + }, + { + "title":{ + "text":"Abacus Static Typing" + }, + "field":{ + "field":"abacus_static_typing", + "optional":true, + "type" : "bool", + "options" : [ + { + "text": "yes", + "value" : 1 + }, + { + "text": "no", + "value" : 0 + } + ] + } } ] } diff --git a/dydx/dydxStateManager/dydxStateManager/AbacusStateManager.swift b/dydx/dydxStateManager/dydxStateManager/AbacusStateManager.swift index 70d630ce..3bbb1d47 100644 --- a/dydx/dydxStateManager/dydxStateManager/AbacusStateManager.swift +++ b/dydx/dydxStateManager/dydxStateManager/AbacusStateManager.swift @@ -163,6 +163,7 @@ public final class AbacusStateManager: NSObject { appConfigs.onboardingConfigs.squidVersion = OnboardingConfigs.SquidVersion.v2 appConfigs.onboardingConfigs.alchemyApiKey = CredientialConfig.shared.credential(for: "alchemyApiKey") StatsigConfig.shared.useSkip = dydxBoolFeatureFlag.shouldUseSkip.isEnabled + appConfigs.staticTyping = dydxBoolFeatureFlag.abacus_static_typing.isEnabled return AsyncAbacusStateManagerV2( deploymentUri: deploymentUri,