diff --git a/dydx/dydx.xcworkspace/xcshareddata/swiftpm/Package.resolved b/dydx/dydx.xcworkspace/xcshareddata/swiftpm/Package.resolved index 44030d6e4..7d9595b53 100644 --- a/dydx/dydx.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/dydx/dydx.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -1,5 +1,5 @@ { - "originHash" : "1c0055be4aba3ed4d97a2f62f05486877839310f65e2cbdd18b067bef06a04a3", + "originHash" : "975d00e29efb8d2ca017c5e61df90418ac01f7d7143e85a3f9ddb4eb982154e4", "pins" : [ { "identity" : "bigint", @@ -46,6 +46,15 @@ "revision" : "48134b5460435cc9d048223ad7560ee2e40f3d4a" } }, + { + "identity" : "percy-xcui-swift", + "kind" : "remoteSourceControl", + "location" : "https://github.com/percy/percy-xcui-swift", + "state" : { + "revision" : "a2e9a86dfc3f5b69ef53cbda28a0ea71098c9f77", + "version" : "1.0.0" + } + }, { "identity" : "qrcode", "kind" : "remoteSourceControl", diff --git a/dydx/dydxAnalytics/dydxAnalytics.xcodeproj/project.pbxproj b/dydx/dydxAnalytics/dydxAnalytics.xcodeproj/project.pbxproj index 71cc14b3e..d4699d474 100644 --- a/dydx/dydxAnalytics/dydxAnalytics.xcodeproj/project.pbxproj +++ b/dydx/dydxAnalytics/dydxAnalytics.xcodeproj/project.pbxproj @@ -11,6 +11,12 @@ 2742BEB82BF6860100E13C09 /* dydxAnalytics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2742BEAD2BF6860100E13C09 /* dydxAnalytics.framework */; }; 2742BEBD2BF6860100E13C09 /* dydxAnalyticsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2742BEBC2BF6860100E13C09 /* dydxAnalyticsTests.swift */; }; 2742BEBE2BF6860100E13C09 /* dydxAnalytics.h in Headers */ = {isa = PBXBuildFile; fileRef = 2742BEB02BF6860100E13C09 /* dydxAnalytics.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 2742C0312BF6887100E13C09 /* Utilities.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2742C0302BF6887100E13C09 /* Utilities.framework */; platformFilter = ios; }; + 2742C0352BF6888500E13C09 /* PlatformParticles.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2742C0342BF6888500E13C09 /* PlatformParticles.framework */; }; + 2742C0382BF6888A00E13C09 /* dydxStateManager.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2742C0372BF6888A00E13C09 /* dydxStateManager.framework */; platformFilter = ios; }; + 2742C04A2BF688BD00E13C09 /* AnalyticsEvent.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2742C03C2BF688B400E13C09 /* AnalyticsEvent.swift */; }; + 2742C04B2BF688BD00E13C09 /* OnboardingAnalytics.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2742C03A2BF688B400E13C09 /* OnboardingAnalytics.swift */; }; + 2742C04C2BF688BD00E13C09 /* TransferAnalytics.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2742C03B2BF688B400E13C09 /* TransferAnalytics.swift */; }; B0A26DA7EA1E90F936ECE27B /* Pods_iOS_dydxAnalytics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2FCEC9737902553D7EB58EF0 /* Pods_iOS_dydxAnalytics.framework */; }; /* End PBXBuildFile section */ @@ -31,6 +37,12 @@ 2742BEB12BF6860100E13C09 /* dydxAnalytics.docc */ = {isa = PBXFileReference; lastKnownFileType = folder.documentationcatalog; path = dydxAnalytics.docc; sourceTree = ""; }; 2742BEB72BF6860100E13C09 /* dydxAnalyticsTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = dydxAnalyticsTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 2742BEBC2BF6860100E13C09 /* dydxAnalyticsTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = dydxAnalyticsTests.swift; sourceTree = ""; }; + 2742C0302BF6887100E13C09 /* Utilities.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = Utilities.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 2742C0342BF6888500E13C09 /* PlatformParticles.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = PlatformParticles.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 2742C0372BF6888A00E13C09 /* dydxStateManager.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = dydxStateManager.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 2742C03A2BF688B400E13C09 /* OnboardingAnalytics.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OnboardingAnalytics.swift; sourceTree = ""; }; + 2742C03B2BF688B400E13C09 /* TransferAnalytics.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TransferAnalytics.swift; sourceTree = ""; }; + 2742C03C2BF688B400E13C09 /* AnalyticsEvent.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnalyticsEvent.swift; sourceTree = ""; }; 2FCEC9737902553D7EB58EF0 /* Pods_iOS_dydxAnalytics.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_iOS_dydxAnalytics.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 7D0A5DAA1E87EA50A32BE597 /* Pods-iOS-dydxAnalytics.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-iOS-dydxAnalytics.debug.xcconfig"; path = "Target Support Files/Pods-iOS-dydxAnalytics/Pods-iOS-dydxAnalytics.debug.xcconfig"; sourceTree = ""; }; /* End PBXFileReference section */ @@ -41,6 +53,9 @@ buildActionMask = 2147483647; files = ( B0A26DA7EA1E90F936ECE27B /* Pods_iOS_dydxAnalytics.framework in Frameworks */, + 2742C0352BF6888500E13C09 /* PlatformParticles.framework in Frameworks */, + 2742C0312BF6887100E13C09 /* Utilities.framework in Frameworks */, + 2742C0382BF6888A00E13C09 /* dydxStateManager.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -58,6 +73,9 @@ 1D21DCC99EA6EE27EE38A5E2 /* Frameworks */ = { isa = PBXGroup; children = ( + 2742C0372BF6888A00E13C09 /* dydxStateManager.framework */, + 2742C0342BF6888500E13C09 /* PlatformParticles.framework */, + 2742C0302BF6887100E13C09 /* Utilities.framework */, 2FCEC9737902553D7EB58EF0 /* Pods_iOS_dydxAnalytics.framework */, ); name = Frameworks; @@ -96,6 +114,9 @@ 2742BEAF2BF6860100E13C09 /* dydxAnalytics */ = { isa = PBXGroup; children = ( + 2742C03A2BF688B400E13C09 /* OnboardingAnalytics.swift */, + 2742C03B2BF688B400E13C09 /* TransferAnalytics.swift */, + 2742C03C2BF688B400E13C09 /* AnalyticsEvent.swift */, 2742BEB02BF6860100E13C09 /* dydxAnalytics.h */, 2742BEB12BF6860100E13C09 /* dydxAnalytics.docc */, ); @@ -245,7 +266,10 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( + 2742C04B2BF688BD00E13C09 /* OnboardingAnalytics.swift in Sources */, 2742BEB22BF6860100E13C09 /* dydxAnalytics.docc in Sources */, + 2742C04A2BF688BD00E13C09 /* AnalyticsEvent.swift in Sources */, + 2742C04C2BF688BD00E13C09 /* TransferAnalytics.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -408,6 +432,7 @@ GENERATE_INFOPLIST_FILE = YES; INFOPLIST_KEY_NSHumanReadableCopyright = ""; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -441,6 +466,7 @@ GENERATE_INFOPLIST_FILE = YES; INFOPLIST_KEY_NSHumanReadableCopyright = ""; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -462,6 +488,7 @@ 2742BEC52BF6860100E13C09 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEVELOPMENT_TEAM = 75C6UARB5H; @@ -478,6 +505,7 @@ 2742BEC62BF6860100E13C09 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEVELOPMENT_TEAM = 75C6UARB5H; diff --git a/dydx/dydxPresenters/dydxPresenters/_v4/Analytics/AnalyticsEvent.swift b/dydx/dydxAnalytics/dydxAnalytics/AnalyticsEvent.swift similarity index 93% rename from dydx/dydxPresenters/dydxPresenters/_v4/Analytics/AnalyticsEvent.swift rename to dydx/dydxAnalytics/dydxAnalytics/AnalyticsEvent.swift index d82279734..9770fb78c 100644 --- a/dydx/dydxPresenters/dydxPresenters/_v4/Analytics/AnalyticsEvent.swift +++ b/dydx/dydxAnalytics/dydxAnalytics/AnalyticsEvent.swift @@ -11,7 +11,7 @@ import Utilities // // Events defined in the v4-web repo. Ideally, we should keep this in-sync with v4-web // -enum AnalyticsEvent: String { +public enum AnalyticsEvent: String { // App case appStart = "AppStart" case networkStatus = "NetworkStatus" @@ -48,7 +48,7 @@ enum AnalyticsEvent: String { case notificationAction = "NotificationAction" } -extension AnalyticsEventV2 { +public extension AnalyticsEventV2 { // probably move this to like a dydxRouter, next to where `routing_swift.json` currently lives enum Page { case markets @@ -85,7 +85,7 @@ extension AnalyticsEventV2 { } } -extension AnalyticsEventV2 { +public extension AnalyticsEventV2 { enum OnboardingStep: String { case chooseWallet = "ChooseWallet" case keyDerivation = "KeyDerivation" @@ -94,7 +94,7 @@ extension AnalyticsEventV2 { } } -extension AnalyticsEventV2 { +public extension AnalyticsEventV2 { enum OnboardingState: String { case disconnected = "Disconnected" case walletConnected = "WalletConnected" @@ -102,14 +102,14 @@ extension AnalyticsEventV2 { } } -enum AnalyticsEventV2: TrackableEvent { +public enum AnalyticsEventV2: TrackableEvent { case appStart case navigatePage(page: Page) case navigateDialog(page: Page) case navigateDialogClose(page: Page) case onboardingStepChanged(step: OnboardingStep, state: OnboardingState) - var name: String { + public var name: String { switch self { case .navigatePage: return "NavigatePage" @@ -124,7 +124,7 @@ enum AnalyticsEventV2: TrackableEvent { } } - var customParameters: [String: Any] { + public var customParameters: [String: Any] { switch self { case .appStart: return [:] @@ -142,7 +142,7 @@ enum AnalyticsEventV2: TrackableEvent { } } -extension TrackingProtocol { +public extension TrackingProtocol { /// convenience wrapper of log(trackableEvent:) func log(event: AnalyticsEventV2) { Tracking.shared?.log(trackableEvent: event) diff --git a/dydx/dydxPresenters/dydxPresenters/_v4/Analytics/OnboardingAnalytics.swift b/dydx/dydxAnalytics/dydxAnalytics/OnboardingAnalytics.swift similarity index 73% rename from dydx/dydxPresenters/dydxPresenters/_v4/Analytics/OnboardingAnalytics.swift rename to dydx/dydxAnalytics/dydxAnalytics/OnboardingAnalytics.swift index fbd3fc526..39997db3c 100644 --- a/dydx/dydxPresenters/dydxPresenters/_v4/Analytics/OnboardingAnalytics.swift +++ b/dydx/dydxAnalytics/dydxAnalytics/OnboardingAnalytics.swift @@ -5,16 +5,19 @@ // Created by Rui Huang on 26/03/2024. // - import Foundation - import Utilities - import dydxStateManager - import Combine +import Foundation +import Utilities +import dydxStateManager +import Combine + +public final class OnboardingAnalytics { + + public init() {} - final class OnboardingAnalytics { public var subscriptions = Set() - func log(step: AnalyticsEventV2.OnboardingStep) { - AbacusStateManager.shared.state.currentWallet + public func log(step: AnalyticsEventV2.OnboardingStep) { + AbacusStateManager.shared.state.currentWallet .prefix(1) .sink { wallet in let state: AnalyticsEventV2.OnboardingState @@ -29,4 +32,4 @@ } .store(in: &subscriptions) } - } +} diff --git a/dydx/dydxPresenters/dydxPresenters/_v4/Analytics/TransferAnalytics.swift b/dydx/dydxAnalytics/dydxAnalytics/TransferAnalytics.swift similarity index 90% rename from dydx/dydxPresenters/dydxPresenters/_v4/Analytics/TransferAnalytics.swift rename to dydx/dydxAnalytics/dydxAnalytics/TransferAnalytics.swift index f7251ca6f..711a92325 100644 --- a/dydx/dydxPresenters/dydxPresenters/_v4/Analytics/TransferAnalytics.swift +++ b/dydx/dydxAnalytics/dydxAnalytics/TransferAnalytics.swift @@ -9,12 +9,15 @@ import Foundation import Abacus import Utilities -final class TransferAnalytics { - func logDeposit(transferInput: TransferInput) { +public final class TransferAnalytics { + + public init() {} + + public func logDeposit(transferInput: TransferInput) { log(event: .transferDeposit, transferInput: transferInput) } - func logWithdrawal(transferInput: TransferInput) { + public func logWithdrawal(transferInput: TransferInput) { log(event: .transferWithdraw, transferInput: transferInput) } diff --git a/dydx/dydxPresenters/dydxPresenters.xcodeproj/project.pbxproj b/dydx/dydxPresenters/dydxPresenters.xcodeproj/project.pbxproj index f9082b646..43ee971d9 100644 --- a/dydx/dydxPresenters/dydxPresenters.xcodeproj/project.pbxproj +++ b/dydx/dydxPresenters/dydxPresenters.xcodeproj/project.pbxproj @@ -62,9 +62,6 @@ 025D22D628F65E1B00C4ADAE /* dydxMarketStatsViewPresenter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 025D22D528F65E1B00C4ADAE /* dydxMarketStatsViewPresenter.swift */; }; 0262EFA629D79EE4009889E2 /* Wallets2ViewBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0262EF9929D79EE4009889E2 /* Wallets2ViewBuilder.swift */; }; 0262F2D529DB4891009889E2 /* WalletAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0262F2D429DB4891009889E2 /* WalletAction.swift */; }; - 026388D82BB34B7A006DD6E8 /* OnboardingAnalytics.swift in Sources */ = {isa = PBXBuildFile; fileRef = 026388D72BB34B7A006DD6E8 /* OnboardingAnalytics.swift */; }; - 026388DA2BB34C17006DD6E8 /* AnalyticsEvent.swift in Sources */ = {isa = PBXBuildFile; fileRef = 026388D92BB34C17006DD6E8 /* AnalyticsEvent.swift */; }; - 026388DC2BB36142006DD6E8 /* TransferAnalytics.swift in Sources */ = {isa = PBXBuildFile; fileRef = 026388DB2BB36142006DD6E8 /* TransferAnalytics.swift */; }; 02669B7C2AD8661F00A756AA /* dydxCarteraConfigWorker.swift in Sources */ = {isa = PBXBuildFile; fileRef = 02669B7B2AD8661F00A756AA /* dydxCarteraConfigWorker.swift */; }; 02669B952AD87A9D00A756AA /* dydxGlobalWorkers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 02669B942AD87A9D00A756AA /* dydxGlobalWorkers.swift */; }; 0268BBFB2A8BE27800D0C59B /* dydxTransferOutViewPresenter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0268BBFA2A8BE27800D0C59B /* dydxTransferOutViewPresenter.swift */; }; @@ -137,6 +134,7 @@ 27351D452AC4A67900E4A563 /* dydxRestrictionsWorker.swift in Sources */ = {isa = PBXBuildFile; fileRef = 27351D442AC4A67900E4A563 /* dydxRestrictionsWorker.swift */; }; 2741E3702A68787A000FA190 /* settings_direction_color_preference.json in Resources */ = {isa = PBXBuildFile; fileRef = 2741E3632A68787A000FA190 /* settings_direction_color_preference.json */; }; 2741E3732A689740000FA190 /* dydxDirectionColorPreferenceViewBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2741E3722A689740000FA190 /* dydxDirectionColorPreferenceViewBuilder.swift */; }; + 2742C05E2BF6898500E13C09 /* dydxAnalytics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2742C05D2BF6898500E13C09 /* dydxAnalytics.framework */; }; 2749F8FF2B853B8700D6BA16 /* dydxRewardsLaunchIncentivesPresenter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2749F8FE2B853B8700D6BA16 /* dydxRewardsLaunchIncentivesPresenter.swift */; }; 276908FF2AAFB22F0075B2D6 /* dydxPortfolioTransfersViewPresenter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 276908FE2AAFB22F0075B2D6 /* dydxPortfolioTransfersViewPresenter.swift */; }; 277987512BA33F15006DC5CD /* dydxSelectedMarketStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 277987502BA33F15006DC5CD /* dydxSelectedMarketStore.swift */; }; @@ -422,9 +420,6 @@ 025D22D528F65E1B00C4ADAE /* dydxMarketStatsViewPresenter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = dydxMarketStatsViewPresenter.swift; sourceTree = ""; }; 0262EF9929D79EE4009889E2 /* Wallets2ViewBuilder.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Wallets2ViewBuilder.swift; sourceTree = ""; }; 0262F2D429DB4891009889E2 /* WalletAction.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WalletAction.swift; sourceTree = ""; }; - 026388D72BB34B7A006DD6E8 /* OnboardingAnalytics.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OnboardingAnalytics.swift; sourceTree = ""; }; - 026388D92BB34C17006DD6E8 /* AnalyticsEvent.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnalyticsEvent.swift; sourceTree = ""; }; - 026388DB2BB36142006DD6E8 /* TransferAnalytics.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TransferAnalytics.swift; sourceTree = ""; }; 02669B7B2AD8661F00A756AA /* dydxCarteraConfigWorker.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = dydxCarteraConfigWorker.swift; sourceTree = ""; }; 02669B942AD87A9D00A756AA /* dydxGlobalWorkers.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = dydxGlobalWorkers.swift; sourceTree = ""; }; 0268BBFA2A8BE27800D0C59B /* dydxTransferOutViewPresenter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = dydxTransferOutViewPresenter.swift; sourceTree = ""; }; @@ -497,6 +492,7 @@ 27351D442AC4A67900E4A563 /* dydxRestrictionsWorker.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = dydxRestrictionsWorker.swift; sourceTree = ""; }; 2741E3632A68787A000FA190 /* settings_direction_color_preference.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = settings_direction_color_preference.json; sourceTree = ""; }; 2741E3722A689740000FA190 /* dydxDirectionColorPreferenceViewBuilder.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = dydxDirectionColorPreferenceViewBuilder.swift; sourceTree = ""; }; + 2742C05D2BF6898500E13C09 /* dydxAnalytics.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = dydxAnalytics.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 2749F8FE2B853B8700D6BA16 /* dydxRewardsLaunchIncentivesPresenter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = dydxRewardsLaunchIncentivesPresenter.swift; sourceTree = ""; }; 276908FE2AAFB22F0075B2D6 /* dydxPortfolioTransfersViewPresenter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = dydxPortfolioTransfersViewPresenter.swift; sourceTree = ""; }; 277987502BA33F15006DC5CD /* dydxSelectedMarketStore.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = dydxSelectedMarketStore.swift; sourceTree = ""; }; @@ -546,6 +542,7 @@ 025315BA29BFF18700D6CC9B /* CameraParticles.framework in Frameworks */, 02439CCB29B03EEE00A083FE /* dydxCartera.framework in Frameworks */, 029E11A029ADB77E00FE271C /* dydxChart.framework in Frameworks */, + 2742C05E2BF6898500E13C09 /* dydxAnalytics.framework in Frameworks */, 029E0E8729AD9BA500FE271C /* PlatformParticles.framework in Frameworks */, 0284202F29AD727200C0E7CC /* dydxViews.framework in Frameworks */, 02A8980628E76175006F1658 /* dydxStateManager.framework in Frameworks */, @@ -624,7 +621,6 @@ 0230376A28C11B0300412B72 /* _v4 */ = { isa = PBXGroup; children = ( - 026388D62BB34B38006DD6E8 /* Analytics */, 278A4D912B8FA5C1003898EB /* Rating */, 021B68A32AD9B86600C5C3BF /* Auth */, 0243A75529BE568600A083FE /* Actions */, @@ -950,16 +946,6 @@ path = Wallet; sourceTree = ""; }; - 026388D62BB34B38006DD6E8 /* Analytics */ = { - isa = PBXGroup; - children = ( - 026388D72BB34B7A006DD6E8 /* OnboardingAnalytics.swift */, - 026388DB2BB36142006DD6E8 /* TransferAnalytics.swift */, - 026388D92BB34C17006DD6E8 /* AnalyticsEvent.swift */, - ); - path = Analytics; - sourceTree = ""; - }; 02669B962AD87AA200A756AA /* Workers */ = { isa = PBXGroup; children = ( @@ -1414,6 +1400,7 @@ 51E65BFD078A26FDF0980B06 /* Frameworks */ = { isa = PBXGroup; children = ( + 2742C05D2BF6898500E13C09 /* dydxAnalytics.framework */, F1551C00FFF41C29CFC5BD94 /* Pods_iOS_dydxPresenters.framework */, F6C6D464ED8DEF5D8CC88A87 /* Pods_iOS_dydxPresentersTests.framework */, ); @@ -1904,7 +1891,6 @@ 023848C22A9E637C00B1A673 /* SettingsLandingViewPresenter.swift in Sources */, 0258BA23299294BF0098E1BE /* dydxProfileViewBuilder.swift in Sources */, 0208631028F5186E00C9D3A0 /* OrderbookLineDataPoint.swift in Sources */, - 026388DA2BB34C17006DD6E8 /* AnalyticsEvent.swift in Sources */, 023AB3C82BEAD5F3005230B2 /* dydxTargetLeverageViewBuilder.swift in Sources */, 278A4D932B8FA5E8003898EB /* dydxRateAppViewBuilder.swift in Sources */, 0276FA992A0DB8FD000BDF0B /* Model+Ext.swift in Sources */, @@ -1918,7 +1904,6 @@ 0243A76129BE572C00A083FE /* dydxCancelOrderActionBuilder.swift in Sources */, 0279DE482BEBE76900F9ECF8 /* dydxTargetLeverageCtaButtonViewPresenter.swift in Sources */, 023AB3B22BEACE14005230B2 /* dydxTradeInputMarginViewPresenter.swift in Sources */, - 026388D82BB34B7A006DD6E8 /* OnboardingAnalytics.swift in Sources */, 64A4DB9929664818008D8E20 /* dydxTradeReceiptPresenter.swift in Sources */, 0236F0CB2968793A00EB995F /* dydxPortfolioFillsViewPresenter.swift in Sources */, 02A565AF2A5E310B0035469F /* dydxAlertsProvider.swift in Sources */, @@ -1951,7 +1936,6 @@ 64A4DB9B2966490C008D8E20 /* dydxTradeInputOrderTypePresenter.swift in Sources */, 0236F118296ABEF500EB995F /* dydxPortfolioPositionsViewPresenter.swift in Sources */, 02282E752AC8860300BC9F01 /* dydxOrderbookGroupViewPresenter.swift in Sources */, - 026388DC2BB36142006DD6E8 /* TransferAnalytics.swift in Sources */, 024F488729657FE600E40247 /* dydxUserFavoriteViewPresenter.swift in Sources */, 029CBE7428F6032C00259C1D /* HistoricalFundingDataPoint.swift in Sources */, 0274B34828F1140D005AF69E /* dydxMarketPriceCandlesViewPresenter.swift in Sources */, diff --git a/dydx/dydxPresenters/dydxPresenters/_v4/MarketInfo/dydxMarketInfoViewBuilder.swift b/dydx/dydxPresenters/dydxPresenters/_v4/MarketInfo/dydxMarketInfoViewBuilder.swift index 35c1c107c..5fe3366ce 100644 --- a/dydx/dydxPresenters/dydxPresenters/_v4/MarketInfo/dydxMarketInfoViewBuilder.swift +++ b/dydx/dydxPresenters/dydxPresenters/_v4/MarketInfo/dydxMarketInfoViewBuilder.swift @@ -14,6 +14,7 @@ import PlatformUI import Combine import dydxStateManager import Abacus +import dydxAnalytics public class dydxMarketInfoViewBuilder: NSObject, ObjectBuilderProtocol { public func build() -> T? { diff --git a/dydx/dydxPresenters/dydxPresenters/_v4/Markets/dydxMarketsViewBuilder.swift b/dydx/dydxPresenters/dydxPresenters/_v4/Markets/dydxMarketsViewBuilder.swift index 1e0b794b9..da085b4c1 100644 --- a/dydx/dydxPresenters/dydxPresenters/_v4/Markets/dydxMarketsViewBuilder.swift +++ b/dydx/dydxPresenters/dydxPresenters/_v4/Markets/dydxMarketsViewBuilder.swift @@ -16,6 +16,7 @@ import dydxStateManager import Combine import Charts import dydxFormatter +import dydxAnalytics public class dydxMarketsViewBuilder: NSObject, ObjectBuilderProtocol { public func build() -> T? { diff --git a/dydx/dydxPresenters/dydxPresenters/_v4/Onboarding/Connect/dydxOnboardConnectViewBuilder.swift b/dydx/dydxPresenters/dydxPresenters/_v4/Onboarding/Connect/dydxOnboardConnectViewBuilder.swift index 594b0f129..def24ca5d 100644 --- a/dydx/dydxPresenters/dydxPresenters/_v4/Onboarding/Connect/dydxOnboardConnectViewBuilder.swift +++ b/dydx/dydxPresenters/dydxPresenters/_v4/Onboarding/Connect/dydxOnboardConnectViewBuilder.swift @@ -13,6 +13,7 @@ import RoutingKit import ParticlesKit import PlatformUI import dydxCartera +import dydxAnalytics public class dydxOnboardConnectViewBuilder: NSObject, ObjectBuilderProtocol { public func build() -> T? { diff --git a/dydx/dydxPresenters/dydxPresenters/_v4/Onboarding/Tos/dydxTosViewBuilder.swift b/dydx/dydxPresenters/dydxPresenters/_v4/Onboarding/Tos/dydxTosViewBuilder.swift index 0d9cb630d..b10adc59a 100644 --- a/dydx/dydxPresenters/dydxPresenters/_v4/Onboarding/Tos/dydxTosViewBuilder.swift +++ b/dydx/dydxPresenters/dydxPresenters/_v4/Onboarding/Tos/dydxTosViewBuilder.swift @@ -13,6 +13,7 @@ import ParticlesKit import PlatformUI import Abacus import dydxStateManager +import dydxAnalytics public class dydxTosViewBuilder: NSObject, ObjectBuilderProtocol { public func build() -> T? { diff --git a/dydx/dydxPresenters/dydxPresenters/_v4/Onboarding/Welcome/dydxOnboardWelcomeViewBuilder.swift b/dydx/dydxPresenters/dydxPresenters/_v4/Onboarding/Welcome/dydxOnboardWelcomeViewBuilder.swift index 06a6fdd79..e353056e1 100644 --- a/dydx/dydxPresenters/dydxPresenters/_v4/Onboarding/Welcome/dydxOnboardWelcomeViewBuilder.swift +++ b/dydx/dydxPresenters/dydxPresenters/_v4/Onboarding/Welcome/dydxOnboardWelcomeViewBuilder.swift @@ -13,6 +13,7 @@ import ParticlesKit import PlatformUI import Abacus import dydxStateManager +import dydxAnalytics public class dydxOnboardWelcomeViewBuilder: NSObject, ObjectBuilderProtocol { public func build() -> T? { diff --git a/dydx/dydxPresenters/dydxPresenters/_v4/TakeProfitStopLoss/dydxTakeProfitStopLossViewPresenter.swift b/dydx/dydxPresenters/dydxPresenters/_v4/TakeProfitStopLoss/dydxTakeProfitStopLossViewPresenter.swift index 973809073..49f279181 100644 --- a/dydx/dydxPresenters/dydxPresenters/_v4/TakeProfitStopLoss/dydxTakeProfitStopLossViewPresenter.swift +++ b/dydx/dydxPresenters/dydxPresenters/_v4/TakeProfitStopLoss/dydxTakeProfitStopLossViewPresenter.swift @@ -17,6 +17,7 @@ import PanModal import Combine import Abacus import dydxFormatter +import dydxAnalytics public class dydxTakeProfitStopLossViewBuilder: NSObject, ObjectBuilderProtocol { public func build() -> T? { diff --git a/dydx/dydxPresenters/dydxPresenters/_v4/Transfer/Components/dydxTransferInputCtaButtonViewPresenter.swift b/dydx/dydxPresenters/dydxPresenters/_v4/Transfer/Components/dydxTransferInputCtaButtonViewPresenter.swift index 312fdeffb..c92e465f7 100644 --- a/dydx/dydxPresenters/dydxPresenters/_v4/Transfer/Components/dydxTransferInputCtaButtonViewPresenter.swift +++ b/dydx/dydxPresenters/dydxPresenters/_v4/Transfer/Components/dydxTransferInputCtaButtonViewPresenter.swift @@ -14,6 +14,7 @@ import PlatformParticles import PlatformUI import RoutingKit import Utilities +import dydxAnalytics protocol dydxTransferInputCtaButtonViewPresenterProtocol: HostedViewPresenterProtocol { var viewModel: dydxTradeInputCtaButtonViewModel? { get } diff --git a/dydx/dydxViews/dydxViews.xcodeproj/project.pbxproj b/dydx/dydxViews/dydxViews.xcodeproj/project.pbxproj index c94863791..caa14e227 100644 --- a/dydx/dydxViews/dydxViews.xcodeproj/project.pbxproj +++ b/dydx/dydxViews/dydxViews.xcodeproj/project.pbxproj @@ -171,6 +171,7 @@ 27289B172BC9AA44009D21AD /* KeyboardObserving in Frameworks */ = {isa = PBXBuildFile; productRef = 27289B162BC9AA44009D21AD /* KeyboardObserving */; }; 2728CE1B2BBCD2AB004C9323 /* dydxGainLossInputViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2728CE1A2BBCD2AB004C9323 /* dydxGainLossInputViewModel.swift */; }; 273F50162B7C3F120034792A /* SignedAmountView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 273F50152B7C3F120034792A /* SignedAmountView.swift */; }; + 2742C04E2BF6897A00E13C09 /* dydxAnalytics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2742C04D2BF6897A00E13C09 /* dydxAnalytics.framework */; }; 27685F4D2B9FCAE200F37DE2 /* Satoshi-Medium.otf in Resources */ = {isa = PBXBuildFile; fileRef = 27685F402B9FCAD300F37DE2 /* Satoshi-Medium.otf */; }; 2769090E2AAFD8030075B2D6 /* TransferInstanceViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2769090D2AAFD8030075B2D6 /* TransferInstanceViewModel.swift */; }; 276909102AAFD8BE0075B2D6 /* dydxPortfolioTransfersViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2769090F2AAFD8BE0075B2D6 /* dydxPortfolioTransfersViewModel.swift */; }; @@ -539,6 +540,7 @@ 272030172A7812B900D233B9 /* UINavigationController+SwipeBackNavigation.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "UINavigationController+SwipeBackNavigation.swift"; sourceTree = ""; }; 2728CE1A2BBCD2AB004C9323 /* dydxGainLossInputViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = dydxGainLossInputViewModel.swift; sourceTree = ""; }; 273F50152B7C3F120034792A /* SignedAmountView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SignedAmountView.swift; sourceTree = ""; }; + 2742C04D2BF6897A00E13C09 /* dydxAnalytics.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = dydxAnalytics.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 27685F402B9FCAD300F37DE2 /* Satoshi-Medium.otf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "Satoshi-Medium.otf"; sourceTree = ""; }; 2769090D2AAFD8030075B2D6 /* TransferInstanceViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TransferInstanceViewModel.swift; sourceTree = ""; }; 2769090F2AAFD8BE0075B2D6 /* dydxPortfolioTransfersViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = dydxPortfolioTransfersViewModel.swift; sourceTree = ""; }; @@ -606,6 +608,7 @@ 027C379F29AEC11000381B00 /* Introspect in Frameworks */, 024B7B4E28B7F82400F7C386 /* Utilities.framework in Frameworks */, 27289B172BC9AA44009D21AD /* KeyboardObserving in Frameworks */, + 2742C04E2BF6897A00E13C09 /* dydxAnalytics.framework in Frameworks */, 024B7B4C28B7F80F00F7C386 /* PlatformParticles.framework in Frameworks */, 024B7B4D28B7F80F00F7C386 /* PlatformUI.framework in Frameworks */, D389C2240B81C64330A95B2D /* Pods_iOS_dydxViews.framework in Frameworks */, @@ -1608,6 +1611,7 @@ ED13AE6112472E95629FA451 /* Frameworks */ = { isa = PBXGroup; children = ( + 2742C04D2BF6897A00E13C09 /* dydxAnalytics.framework */, 74994AC06F1817485230EDBE /* Pods_iOS_dydxViews.framework */, 59AC3A07F2D40D434FF03B00 /* Pods_iOS_dydxViewsTests.framework */, );