Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Releases/1.3.1 #143

Merged
merged 58 commits into from
Apr 23, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
58 commits
Select commit Hold shift + click to select a range
54e3c34
MOB-88 : Scrolling Trades and then Tapping Orders Breaks Scroll (#81)
mike-dydx Feb 2, 2024
dfcca6c
update bitrise config (#82)
mike-dydx Feb 4, 2024
bb56913
MOB-181 : Tap Orderbook Price to Set Limit Price (#83)
mike-dydx Feb 5, 2024
3ec9a6a
MOB-95 : Improve draft hide/show animation (#84)
mike-dydx Feb 6, 2024
ba8147b
MOB-94 : match signed number formatting to web (#86)
mike-dydx Feb 14, 2024
9b9efd8
Add color preference settings (#85)
ruixhuang Feb 15, 2024
48f9a05
MOB-73 : Trading Rewards hook in real data pt 1 (non-chaos labs data)…
mike-dydx Feb 15, 2024
b39dba3
Add v4-web and template installation to bootstrap.sh (#88)
ruixhuang Feb 20, 2024
453ea12
bump abacus (#90)
mike-dydx Feb 20, 2024
2ab514d
bump abacus to 1.4.10 (#91)
mike-dydx Feb 20, 2024
1becae4
update abacus protocol implementation to fix compilation (#93)
mike-dydx Feb 21, 2024
19acea5
Update config.yml (#89)
mike-dydx Feb 21, 2024
53ef359
SDWebImageSVGKitPlugin -> SDWebImageSVGCoder (#95)
mike-dydx Feb 21, 2024
5f40563
MOB-250 : Add metric to track screenshot taken (#96)
mike-dydx Feb 22, 2024
024ec0a
MOB-240 : Trading Rewards hook in real data pt 2 (launch incentives) …
mike-dydx Feb 22, 2024
0393417
fix trading rewards background image (#97)
mike-dydx Feb 27, 2024
a7ae082
MOB-252 : Add link to share app on profile screen (#98)
mike-dydx Feb 27, 2024
f7d72b2
collect feedback from settings menu (#99)
mike-dydx Feb 28, 2024
a0ed62e
Update license (#100)
ruixhuang Feb 28, 2024
c115f88
MOB-299 : update `connectWallet` parameters to support memo field (#103)
mike-dydx Mar 5, 2024
57c975b
MOB-297: Fix total dydx amount not populated from Profile tab (#101)
ruixhuang Mar 5, 2024
9add02e
MOB-242 : implement logic to display pre-prompt and then ask for app …
mike-dydx Mar 5, 2024
6410ade
update app review pre-prompt to match design (#104)
mike-dydx Mar 6, 2024
04b2381
Update README.md (#105)
ruixhuang Mar 6, 2024
f054cc2
add `screen_view` event for better firebase analytics integration (#106)
mike-dydx Mar 6, 2024
f9e7810
MOB-309 : add additional logic to rate app flow where `requestReview`…
mike-dydx Mar 7, 2024
70ec871
MOB-295: Add iOS tooling scripts for UI testings (#56)
ruixhuang Mar 8, 2024
4defb8a
MOB-308: iOS: Handle deposit flow when user onboarded via Desktop Sca…
ruixhuang Mar 8, 2024
bc9bce5
update satoshi fonts to go from regular to medium (#109)
mike-dydx Mar 12, 2024
83fb052
MOB-326 : update resources to use satoshi-medium instead of satoshi-r…
mike-dydx Mar 12, 2024
703413e
MOB-328 Correlate x-request-id to correlate route requests from Squid…
ruixhuang Mar 13, 2024
6ff0ec4
MOB-316 : Display markets list when market title is tapped on trade p…
mike-dydx Mar 14, 2024
1cf8481
bump abacus (#113)
mike-dydx Mar 14, 2024
a41c334
MOB-346 : pre-select last selected market for trade input if no marke…
mike-dydx Mar 14, 2024
a905e1b
MOB-333 Withdrawal error message "insufficient balance" but it seems …
ruixhuang Mar 14, 2024
8dca944
update classname to fix routing (#116)
mike-dydx Mar 15, 2024
c47b0d9
abacus 1.6.5 -> 1.6.6 (#117)
mike-dydx Mar 15, 2024
ddb88e7
add privacy info file per apple (#118)
mike-dydx Mar 15, 2024
24fa6db
Bump Abacus and link to system status (#119)
ruixhuang Mar 19, 2024
d82ac66
MOB-386 Fix Subaccount transfer for France (#121)
ruixhuang Mar 21, 2024
9505e26
Feature/mob 353 abacus update (#120)
johnqh Mar 26, 2024
5622ae8
MOB-409 Onboarding and transfer analytics (#122)
ruixhuang Mar 28, 2024
9c2c657
MOB-417 : add settings control to turn in-app notifications on/off co…
mike-dydx Mar 29, 2024
3d4dd12
bump to 1.6.23 (#125)
mike-dydx Mar 29, 2024
0ff3418
add tp/sl button and screen stub (#126)
mike-dydx Apr 1, 2024
8dd656d
MOB-102 : iOS: Update Withdraw Dialog for withdrawal limits (#123)
mike-dydx Apr 1, 2024
7bdb81c
add entry price and oracle price receipt area (#127)
mike-dydx Apr 1, 2024
3aa9602
MOB-433 Remove FullStory (#128)
ruixhuang Apr 3, 2024
da28dc9
bump abacus to 1.6.28 (#130)
mike-dydx Apr 3, 2024
59e52e9
MOB-427 : add TL/SL inputs to price triggers panel screen (#129)
mike-dydx Apr 4, 2024
f9be690
MOB-437 : add TL/SL inputs to price triggers panel screen (multiple o…
mike-dydx Apr 4, 2024
872915f
Fix wrong localization key (#132)
ruixhuang Apr 8, 2024
99aff13
Update settings.json (#133)
mike-dydx Apr 8, 2024
d84688d
initialize settings dict with values (#135)
mike-dydx Apr 8, 2024
3db65fe
Update v4-native-client.js (#136)
ruixhuang Apr 8, 2024
ba63684
v1.3.0
mike-dydx Apr 8, 2024
9e641d2
Allow null ethereamAddress when starting up Abacus at launch. (#142)
ruixhuang Apr 12, 2024
c6d2c7d
v1.3.1
mike-dydx Apr 12, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ dydxV4/dydxV4/_Configurations/credentials.json
dydxV4/dydxV4/_Configurations/GoogleService-Info-Staging.plist
dydxV4/dydxV4/_Configurations/GoogleService-Info.plist
scripts/secrets
scripts/percy_test.sh

# fastlane specific
**/fastlane/report.xml
Expand All @@ -24,4 +25,4 @@ scripts/secrets
*.cer
*.mobileprovision
*.ipa
*.dSYM.*
*.dSYM.*
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ public class AppsFlyerTracking: TransformerTracker {
}
}

override open func view(_ path: String?, action: String?, data: [String: Any]?, from: String?, time: Date?, revenue: NSNumber?) {
override open func view(_ path: String?, action: String?, data: [String: Any]?, from: String?, time: Date?, revenue: NSNumber?, contextViewController: UIViewController?) {
// Only track the ones required by growth
}

Expand Down
703 changes: 0 additions & 703 deletions FullStoryInjections/FullStoryInjections.xcodeproj/project.pbxproj

This file was deleted.

This file was deleted.

18 changes: 0 additions & 18 deletions FullStoryInjections/FullStoryInjections/FullStoryInjections.h

This file was deleted.

This file was deleted.

This file was deleted.

5 changes: 3 additions & 2 deletions JedioKit/JedioKit/_Field/_Input/FieldInput.swift
Original file line number Diff line number Diff line change
Expand Up @@ -160,8 +160,9 @@ import Utilities
public func validate() -> Error? {
if field?.definition(for: "field") != nil {
let optional = input?.optional ?? false
let fieldName = field?.title?["text"] as? String ?? field?.subtext?["text"] as? String
return validator?.validate(field: fieldName, data: string, optional: optional)
let fieldName = field?.title?["text"] as? String ?? field?.subtext?["text"] as? String ?? ""
let fieldNameLocalized = DataLocalizer.shared?.localize(path: fieldName, params: nil) ?? fieldName
return validator?.validate(field: fieldNameLocalized, data: string, optional: optional)
}
return nil
}
Expand Down
4 changes: 2 additions & 2 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Copyright (C) 2024 dYdX Trading Inc.
Copyright (C) dYdX Trading Inc.

Subject to your compliance with applicable law and the v4 Terms of Use, available at dydx.exchange/legal, you are granted the right to use the Program or Licensed Work (defined below) under the terms of the GNU Affero General Public License as set forth below; provided, however, that if you violate any such applicable law in your use of the Program or Licensed Work, all of your rights and licenses to use (including any rights to reproduce, distribute, install or modify) the Program or Licensed Work will automatically and immediately terminate.

Expand Down Expand Up @@ -799,4 +799,4 @@ copy of the Program in return for a fee.


For more information about this software, see https://dydx.exchange.
Copyright (C) 2024 dYdX Trading Inc.
Copyright (C) dYdX Trading Inc.
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,6 @@ open class ParticlesAppDelegate: RoutingAppDelegate {

override public init() {
super.init()
injectAppInfo()
let injection = self.injection()
Injection.inject(injeciton: injection) {
ReachabilityMessage.shared.connectivityXib = "Connectivity"
Expand Down Expand Up @@ -102,9 +101,6 @@ open class ParticlesAppDelegate: RoutingAppDelegate {
}
}

open func injectAppInfo() {
}

open func inject(completion: @escaping () -> Void) {
injectFeatures { [weak self] in
Injection.shared?.injectParsers()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
import ParticlesKit
import PlatformRouting
import SDWebImage
import SDWebImageSVGKitPlugin
import SDWebImageSVGCoder
import Utilities
import UIToolkits

Expand All @@ -25,7 +25,7 @@ open class ParticlesPlatformInjection: ParticlesInjection {
Console.shared.log("injectUI")

HapticFeedback.shared = MotionHapticFeedback()
SDImageCodersManager.shared.addCoder(SDImageSVGKCoder.shared)
SDImageCodersManager.shared.addCoder(SDImageSVGCoder.shared)
RoutingTabBarController.parserOverwrite = Parser.featureFlagged
PrompterFactory.shared = UIKitPrompterFactory()
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ import ParticlesKit
import Utilities

open class TransformerTracker: NSObject & TrackingProtocol {

open var userInfo: [String: String?]?

public var excluded: Bool = false
Expand All @@ -25,7 +26,7 @@ open class TransformerTracker: NSObject & TrackingProtocol {
}
}

open func view(_ path: String?, action: String?, data: [String: Any]?, from: String?, time: Date?, revenue: NSNumber?) {
open func view(_ path: String?, action: String?, data: [String: Any]?, from: String?, time: Date?, revenue: NSNumber?, contextViewController: UIViewController?) {
if !excluded {
if let path = transform(path: path)?.trim() {
if let action = action {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ open class TrackingViewController: NavigableViewController, TrackingViewProtocol
open func logView(path: String?, data: [String: Any]?, from: String?, time: Date?) {
if let path = path, trackingData?.path != path {
trackingData = TrackingData(path: path, data: data)
Tracking.shared?.view(path, data: data, from: from, time: time)
Tracking.shared?.view(path, data: data, from: from, time: time, revenue: nil, contextViewController: self)
}
}
}
20 changes: 16 additions & 4 deletions PlatformRouting/PlatformRouting.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,10 @@
objects = {

/* Begin PBXBuildFile section */
278A4EDC2B92C62A003898EB /* FadeTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = 278A4EDB2B92C62A003898EB /* FadeTransition.swift */; };
278A4EDE2B92C639003898EB /* TransitionDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 278A4EDD2B92C639003898EB /* TransitionDelegate.swift */; };
310CDBAD21C6FA44009665CF /* UIToolkits.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 313EBC0D21BB7B7E00BEF926 /* UIToolkits.framework */; };
311BAFEB255083C1004331D8 /* Mail.xib in Resources */ = {isa = PBXBuildFile; fileRef = 311BAFDE255083C1004331D8 /* Mail.xib */; };
311BB0182550843C004331D8 /* ShareAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 311BB0172550843C004331D8 /* ShareAction.swift */; };
311BB01F2550845A004331D8 /* Share.xib in Resources */ = {isa = PBXBuildFile; fileRef = 311BB01E2550845A004331D8 /* Share.xib */; };
311D6FA92176F04900655040 /* Utilities.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 311D6F702176EF7B00655040 /* Utilities.framework */; };
311D6FAA2176F04900655040 /* RoutingKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 311D6F5E2176EF6E00655040 /* RoutingKit.framework */; };
Expand Down Expand Up @@ -316,9 +317,10 @@
/* Begin PBXFileReference section */
1A4A40F832E3D20D7A978DE2 /* Pods_iOS_PlatformRoutingTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_iOS_PlatformRoutingTests.framework; sourceTree = BUILT_PRODUCTS_DIR; };
21D0A34C88FFB5FB1165548D /* Pods_iOS_PlatformRouting.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_iOS_PlatformRouting.framework; sourceTree = BUILT_PRODUCTS_DIR; };
278A4EDB2B92C62A003898EB /* FadeTransition.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FadeTransition.swift; sourceTree = "<group>"; };
278A4EDD2B92C639003898EB /* TransitionDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TransitionDelegate.swift; sourceTree = "<group>"; };
306E17287D7FE48D8EEA3648 /* Pods-iOS-PlatformRouting.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-iOS-PlatformRouting.debug.xcconfig"; path = "Target Support Files/Pods-iOS-PlatformRouting/Pods-iOS-PlatformRouting.debug.xcconfig"; sourceTree = "<group>"; };
311BAFDE255083C1004331D8 /* Mail.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = Mail.xib; sourceTree = "<group>"; };
311BB0172550843C004331D8 /* ShareAction.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ShareAction.swift; sourceTree = "<group>"; };
311BB01E2550845A004331D8 /* Share.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = Share.xib; sourceTree = "<group>"; };
311D6F582176EF6E00655040 /* RoutingKit.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RoutingKit.xcodeproj; path = ../RoutingKit/RoutingKit.xcodeproj; sourceTree = "<group>"; };
311D6F612176EF7500655040 /* UIToolkits.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = UIToolkits.xcodeproj; path = ../UIToolkits/UIToolkits.xcodeproj; sourceTree = "<group>"; };
Expand Down Expand Up @@ -440,6 +442,15 @@
name = Dependencies;
sourceTree = "<group>";
};
278A4ECE2B92C4EA003898EB /* _Transitions */ = {
isa = PBXGroup;
children = (
278A4EDB2B92C62A003898EB /* FadeTransition.swift */,
278A4EDD2B92C639003898EB /* TransitionDelegate.swift */,
);
path = _Transitions;
sourceTree = "<group>";
};
311D6F592176EF6E00655040 /* Products */ = {
isa = PBXGroup;
children = (
Expand Down Expand Up @@ -593,6 +604,7 @@
314B625E23DCCE8900139EB3 /* _iOS */ = {
isa = PBXGroup;
children = (
278A4ECE2B92C4EA003898EB /* _Transitions */,
314B626123DCCE8900139EB3 /* _Action */,
314B626923DCCE8900139EB3 /* _App */,
314B626523DCCE8900139EB3 /* _Extensions */,
Expand Down Expand Up @@ -678,7 +690,6 @@
isa = PBXGroup;
children = (
314C35B524C7C29600695F7E /* DebugEnableAction.swift */,
311BB0172550843C004331D8 /* ShareAction.swift */,
);
path = _Actions;
sourceTree = "<group>";
Expand Down Expand Up @@ -1275,7 +1286,6 @@
buildActionMask = 2147483647;
files = (
314B627823DCCE8900139EB3 /* RoutingEmbeddingController.swift in Sources */,
311BB0182550843C004331D8 /* ShareAction.swift in Sources */,
314B627D23DCCE8900139EB3 /* TelAction.swift in Sources */,
314B628223DCCE8900139EB3 /* MappedUIKitAppRouter.swift in Sources */,
314B626D23DCCE8900139EB3 /* RoutingDrawerController.swift in Sources */,
Expand All @@ -1284,11 +1294,13 @@
314B627523DCCE8900139EB3 /* RoutingMap+iOS.swift in Sources */,
314B627723DCCE8900139EB3 /* EmbeddingFloatingManager.swift in Sources */,
314B627C23DCCE8900139EB3 /* RateAction.swift in Sources */,
278A4EDC2B92C62A003898EB /* FadeTransition.swift in Sources */,
31331DC6255345E40050D74C /* SimpleLocalNotification.swift in Sources */,
314B626E23DCCE8900139EB3 /* RoutingViewController.swift in Sources */,
314D9C172485AA2D00582A1A /* RoutingContainingController.swift in Sources */,
314B627623DCCE8900139EB3 /* EmbeddingProtocols.swift in Sources */,
314B627423DCCE8900139EB3 /* UISplitViewController+Routing.swift in Sources */,
278A4EDE2B92C639003898EB /* TransitionDelegate.swift in Sources */,
314B627223DCCE8900139EB3 /* UITabBarController+Routing.swift in Sources */,
314B626F23DCCE8900139EB3 /* RoutingSplitViewController.swift in Sources */,
314B627E23DCCE8900139EB3 /* MappedUIKitExtensionRouter.swift in Sources */,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@
"destination":"Refresh.xib"
},
"/action/share":{
"destination":"Share.xib"
"destination":"dydxPresenters.dydxShareActionBuilder"
},
"/action/wallet":{
"destination":"Wallet.xib"
Expand Down
31 changes: 31 additions & 0 deletions PlatformRouting/PlatformRouting/_iOS/_App/MappedUIKitRouter.swift
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@ import Utilities
public typealias BacktrackRoutingCompletionBlock = (UIViewController?) -> Void

open class MappedUIKitRouter: MappedRouter {
let fadeTransitioner = CustomTransition.fade.transitionDelegate

var actions: [NSObject & NavigableProtocol] = [NSObject & NavigableProtocol]()
override open func backtrack(request: RoutingRequest, animated: Bool, completion: RoutingCompletionBlock?) {
// backtrack(to: ViewControllerStack.shared?.topmost(), request: request, animated: animated, completion: completion)
Expand Down Expand Up @@ -250,6 +252,10 @@ open class MappedUIKitRouter: MappedRouter {

case .drawer:
drawer(viewController, animated: animated, completion: completion)

case .popup:
popup(viewController, animated: animated, completion: completion)

}
}

Expand Down Expand Up @@ -341,6 +347,31 @@ open class MappedUIKitRouter: MappedRouter {
completion?(nil, false)
}
}

private func popup(_ viewController: UIViewController, animated: Bool, completion: RoutingCompletionBlock?) {
if let root = UIViewController.root() {
// wrapper is necessary for custom transitions
let wrapperViewController = UIViewController()
wrapperViewController.modalPresentationStyle = .overFullScreen // or .custom for other presentation styles
wrapperViewController.transitioningDelegate = fadeTransitioner

// Add the UIHostingController to the wrapper UIViewController
wrapperViewController.addChild(viewController)
wrapperViewController.view.addSubview(viewController.view)
viewController.didMove(toParent: wrapperViewController)

// Ensure the hosting controller's view fills the wrapper view
viewController.view.translatesAutoresizingMaskIntoConstraints = false
viewController.view.snp.makeConstraints { $0.edges.equalTo(wrapperViewController.view) }

// Present the wrapper UIViewController
root.present(wrapperViewController, animated: true, completion: nil)

completion?(viewController, true)
} else {
completion?(nil, false)
}
}

private func float(_ viewController: UIViewController, animated: Bool, completion: RoutingCompletionBlock?) {
if let topmost = ViewControllerStack.shared?.topParent() {
Expand Down
Loading
Loading