Skip to content

Commit

Permalink
remove viewmodel caching
Browse files Browse the repository at this point in the history
  • Loading branch information
mike-dydx committed Jul 1, 2024
1 parent 5eae6ee commit 9abdb78
Show file tree
Hide file tree
Showing 3 changed files with 24 additions and 29 deletions.
6 changes: 5 additions & 1 deletion docs/pull_request_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,11 @@ _Provide a clear and concise description of the fix(es) or change(s) you made. I

| Before | After |
|--------|-------|
| <img src=""> | <img src=""> |
| <img src=""> | <img src="" width=60%> |
| <img src=""> | <img src="" width=60%> |
| <img src=""> | <img src="" width=60%> |
| <img src=""> | <img src="" width=60%> |
| <img src=""> | <img src="" width=60%> |
| <video src=""> | <video src=""> |


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,9 +21,6 @@ protocol dydxPortfolioPositionsViewPresenterProtocol: HostedViewPresenterProtoco
}

class dydxPortfolioPositionsViewPresenter: HostedViewPresenter<dydxPortfolioPositionsViewModel>, dydxPortfolioPositionsViewPresenterProtocol {
private var positionsCache = [String: dydxPortfolioPositionItemViewModel]()
private var pendingPositionsCache = [String: dydxPortfolioPendingPositionsItemViewModel]()

init(viewModel: dydxPortfolioPositionsViewModel?) {
super.init()

Expand Down Expand Up @@ -57,25 +54,19 @@ class dydxPortfolioPositionsViewPresenter: HostedViewPresenter<dydxPortfolioPosi

private func updatePositions(positions: [SubaccountPosition], marketMap: [String: PerpetualMarket], assetMap: [String: Asset]) {
let items: [dydxPortfolioPositionItemViewModel] = positions.compactMap { position -> dydxPortfolioPositionItemViewModel? in
let item = Self.createPositionViewModelItem(position: position,
Self.createPositionViewModelItem(position: position,
marketMap: marketMap,
assetMap: assetMap,
positionsCache: positionsCache)
positionsCache[position.assetId] = item
return item
assetMap: assetMap)
}

self.viewModel?.positionItems = items
}

private func updatePendingPositions(pendingPositions: [SubaccountPendingPosition], marketMap: [String: PerpetualMarket], assetMap: [String: Asset]) {
let items: [dydxPortfolioPendingPositionsItemViewModel] = pendingPositions.compactMap { pendingPosition -> dydxPortfolioPendingPositionsItemViewModel? in
let item = Self.createPendingPositionsViewModelItem(pendingPosition: pendingPosition,
Self.createPendingPositionsViewModelItem(pendingPosition: pendingPosition,
marketMap: marketMap,
assetMap: assetMap,
pendingPositionsCache: pendingPositionsCache)
pendingPositionsCache[pendingPosition.assetId] = item
return item
assetMap: assetMap)
}

self.viewModel?.pendingPositionItems = items
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,21 +50,21 @@ public class dydxPortfolioPositionItemViewModel: PlatformViewModel {
self.handler = Handler(onTapAction: onTapAction, onMarginEditAction: onMarginEditAction)
}

public var size: String?
public var token: TokenTextViewModel?
public var sideText = SideTextViewModel()
public var leverage: String?
public var leverageIcon: LeverageRiskModel?
public var indexPrice: String?
public var entryPrice: String?
public var unrealizedPnl: SignedAmountViewModel?
public var unrealizedPnlPercent: String = ""
public var marginValue: String = "--"
public var marginMode: String = "--"
public var isMarginAdjustable: Bool = false
public var logoUrl: URL?
public var gradientType: GradientType
public var handler: Handler?
@Published public var size: String?
@Published public var token: TokenTextViewModel?
@Published public var sideText = SideTextViewModel()
@Published public var leverage: String?
@Published public var leverageIcon: LeverageRiskModel?
@Published public var indexPrice: String?
@Published public var entryPrice: String?
@Published public var unrealizedPnl: SignedAmountViewModel?
@Published public var unrealizedPnlPercent: String = ""
@Published public var marginValue: String = "--"
@Published public var marginMode: String = "--"
@Published public var isMarginAdjustable: Bool = false
@Published public var logoUrl: URL?
@Published public var gradientType: GradientType
@Published public var handler: Handler?

public static var previewValue: dydxPortfolioPositionItemViewModel {
let item = dydxPortfolioPositionItemViewModel(
Expand Down

0 comments on commit 9abdb78

Please sign in to comment.