react-native-candle 0.1.43 → 0.1.44
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ReactNativeCandle.podspec +1 -1
- package/ios/Sources/CandleActionViewModel.swift +4 -7
- package/ios/Sources/CandleLinkSheetWrapperView.swift +40 -59
- package/ios/Sources/CandleLinkViewModel.swift +21 -31
- package/ios/Sources/CandleTradeExecutionSheetWrapper.swift +14 -23
- package/ios/Sources/HostingViewController.swift +26 -26
- package/ios/Sources/RNCandle.swift +159 -1307
- package/ios/Sources/Types.swift +847 -0
- package/ios/Sources/UIApplication++.swift +5 -9
- package/lib/commonjs/context.js +17 -0
- package/lib/commonjs/context.js.map +1 -0
- package/lib/commonjs/index.js +17 -407
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/package.json +1 -0
- package/lib/commonjs/provider.js +117 -0
- package/lib/commonjs/provider.js.map +1 -0
- package/lib/commonjs/types.js +271 -0
- package/lib/commonjs/types.js.map +1 -0
- package/lib/module/context.js +12 -0
- package/lib/module/context.js.map +1 -0
- package/lib/module/index.js +2 -408
- package/lib/module/index.js.map +1 -1
- package/lib/module/package.json +1 -0
- package/lib/module/provider.js +111 -0
- package/lib/module/provider.js.map +1 -0
- package/lib/module/types.js +256 -0
- package/lib/module/types.js.map +1 -0
- package/lib/typescript/commonjs/src/context.d.ts +47 -0
- package/lib/typescript/commonjs/src/context.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/index.d.ts +4 -166
- package/lib/typescript/commonjs/src/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/provider.d.ts +8 -0
- package/lib/typescript/commonjs/src/provider.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/specs/RNCandle.nitro.d.ts +22 -24
- package/lib/typescript/commonjs/src/specs/RNCandle.nitro.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/types.d.ts +125 -0
- package/lib/typescript/commonjs/src/types.d.ts.map +1 -0
- package/lib/typescript/module/src/context.d.ts +47 -0
- package/lib/typescript/module/src/context.d.ts.map +1 -0
- package/lib/typescript/module/src/index.d.ts +4 -166
- package/lib/typescript/module/src/index.d.ts.map +1 -1
- package/lib/typescript/module/src/provider.d.ts +8 -0
- package/lib/typescript/module/src/provider.d.ts.map +1 -0
- package/lib/typescript/module/src/specs/RNCandle.nitro.d.ts +22 -24
- package/lib/typescript/module/src/specs/RNCandle.nitro.d.ts.map +1 -1
- package/lib/typescript/module/src/types.d.ts +125 -0
- package/lib/typescript/module/src/types.d.ts.map +1 -0
- package/nitrogen/generated/.gitattributes +1 -1
- package/nitrogen/generated/ios/ReactNativeCandle-Swift-Cxx-Bridge.cpp +15 -31
- package/nitrogen/generated/ios/ReactNativeCandle-Swift-Cxx-Bridge.hpp +379 -242
- package/nitrogen/generated/ios/ReactNativeCandle-Swift-Cxx-Umbrella.hpp +23 -22
- package/nitrogen/generated/ios/ReactNativeCandleAutolinking.mm +1 -1
- package/nitrogen/generated/ios/ReactNativeCandleAutolinking.swift +2 -4
- package/nitrogen/generated/ios/c++/HybridRNCandleSpecSwift.hpp +36 -42
- package/nitrogen/generated/ios/swift/ActiveLinkedAccountDetails.swift +6 -3
- package/nitrogen/generated/ios/swift/AssetAccount.swift +6 -3
- package/nitrogen/generated/ios/swift/AssetAccountKind.swift +4 -4
- package/nitrogen/generated/ios/swift/AssetAccountRef.swift +5 -5
- package/nitrogen/generated/ios/swift/{AssetAccountQuery.swift → AssetAccountsQuery.swift} +7 -6
- package/nitrogen/generated/ios/swift/Counterparty.swift +8 -3
- package/nitrogen/generated/ios/swift/CounterpartyKind.swift +42 -0
- package/nitrogen/generated/ios/swift/FiatAccount.swift +4 -2
- package/nitrogen/generated/ios/swift/FiatAsset.swift +2 -1
- package/nitrogen/generated/ios/swift/FiatAssetQuoteRequest.swift +4 -2
- package/nitrogen/generated/ios/swift/FiatAssetRef.swift +2 -1
- package/nitrogen/generated/ios/swift/Func_void_LinkedAccount.swift +5 -5
- package/nitrogen/generated/ios/swift/HybridRNCandleSpec.swift +7 -7
- package/nitrogen/generated/ios/swift/HybridRNCandleSpec_cxx.swift +40 -65
- package/nitrogen/generated/ios/swift/LinkedAccountDetails.swift +15 -3
- package/nitrogen/generated/ios/swift/{StatePayload.swift → LinkedAccountState.swift} +6 -6
- package/nitrogen/generated/ios/swift/LinkedAccountStatusRef.swift +4 -3
- package/nitrogen/generated/ios/swift/MarketAccount.swift +5 -5
- package/nitrogen/generated/ios/swift/MarketAssetKind.swift +38 -0
- package/nitrogen/generated/ios/swift/MarketAssetQuoteRequest.swift +11 -8
- package/nitrogen/generated/ios/swift/MarketTradeAsset.swift +7 -7
- package/nitrogen/generated/ios/swift/MarketTradeAssetRef.swift +5 -5
- package/nitrogen/generated/ios/swift/MerchantCounterparty.swift +2 -1
- package/nitrogen/generated/ios/swift/TradeAsset.swift +10 -5
- package/nitrogen/generated/ios/swift/TradeAssetKind.swift +54 -0
- package/nitrogen/generated/ios/swift/TradeAssetQuoteRequest.swift +15 -4
- package/nitrogen/generated/ios/swift/TradeAssetRef.swift +11 -5
- package/nitrogen/generated/ios/swift/TradeExecutionResult.swift +4 -2
- package/nitrogen/generated/ios/swift/{TradeQuoteRequest.swift → TradeQuotesRequest.swift} +7 -6
- package/nitrogen/generated/ios/swift/{TradeQuery.swift → TradesQuery.swift} +29 -45
- package/nitrogen/generated/ios/swift/TransportAssetQuoteRequest.swift +12 -6
- package/nitrogen/generated/shared/c++/ACHAccountKind.hpp +7 -9
- package/nitrogen/generated/shared/c++/ACHDetails.hpp +7 -9
- package/nitrogen/generated/shared/c++/ActiveLinkedAccountDetails.hpp +4 -6
- package/nitrogen/generated/shared/c++/Address.hpp +4 -6
- package/nitrogen/generated/shared/c++/AssetAccount.hpp +14 -16
- package/nitrogen/generated/shared/c++/AssetAccountKind.hpp +15 -17
- package/nitrogen/generated/shared/c++/AssetAccountRef.hpp +12 -12
- package/nitrogen/generated/shared/c++/{AssetAccountQuery.hpp → AssetAccountsQuery.hpp} +14 -16
- package/nitrogen/generated/shared/c++/AssetAccountsResponse.hpp +11 -13
- package/nitrogen/generated/shared/c++/Coordinates.hpp +4 -6
- package/nitrogen/generated/shared/c++/Counterparty.hpp +14 -16
- package/nitrogen/generated/shared/c++/CounterpartyKind.hpp +80 -0
- package/nitrogen/generated/shared/c++/FiatAccount.hpp +16 -18
- package/nitrogen/generated/shared/c++/FiatAsset.hpp +7 -9
- package/nitrogen/generated/shared/c++/FiatAssetQuoteRequest.hpp +4 -6
- package/nitrogen/generated/shared/c++/FiatAssetRef.hpp +4 -6
- package/nitrogen/generated/shared/c++/FiatMarketAccountKind.hpp +13 -15
- package/nitrogen/generated/shared/c++/HybridRNCandleSpec.cpp +1 -2
- package/nitrogen/generated/shared/c++/HybridRNCandleSpec.hpp +17 -27
- package/nitrogen/generated/shared/c++/InactiveLinkedAccountDetails.hpp +4 -6
- package/nitrogen/generated/shared/c++/LinkedAccount.hpp +10 -12
- package/nitrogen/generated/shared/c++/LinkedAccountDetails.hpp +14 -16
- package/nitrogen/generated/shared/c++/LinkedAccountRef.hpp +4 -6
- package/nitrogen/generated/shared/c++/{StatePayload.hpp → LinkedAccountState.hpp} +15 -17
- package/nitrogen/generated/shared/c++/LinkedAccountStatusRef.hpp +15 -17
- package/nitrogen/generated/shared/c++/MarketAccount.hpp +18 -17
- package/nitrogen/generated/shared/c++/MarketAssetKind.hpp +76 -0
- package/nitrogen/generated/shared/c++/MarketAssetQuoteRequest.hpp +12 -12
- package/nitrogen/generated/shared/c++/MarketTradeAsset.hpp +15 -14
- package/nitrogen/generated/shared/c++/MarketTradeAssetRef.hpp +12 -12
- package/nitrogen/generated/shared/c++/MerchantCounterparty.hpp +8 -10
- package/nitrogen/generated/shared/c++/MerchantLocation.hpp +4 -6
- package/nitrogen/generated/shared/c++/NothingAsset.hpp +4 -6
- package/nitrogen/generated/shared/c++/NothingAssetQuoteRequest.hpp +4 -6
- package/nitrogen/generated/shared/c++/NothingAssetRef.hpp +4 -6
- package/nitrogen/generated/shared/c++/OtherAsset.hpp +4 -6
- package/nitrogen/generated/shared/c++/OtherAssetRef.hpp +4 -6
- package/nitrogen/generated/shared/c++/PresentationBackground.hpp +7 -9
- package/nitrogen/generated/shared/c++/PresentationStyle.hpp +7 -9
- package/nitrogen/generated/shared/c++/Service.hpp +163 -165
- package/nitrogen/generated/shared/c++/ServiceCounterparty.hpp +7 -9
- package/nitrogen/generated/shared/c++/Trade.hpp +16 -18
- package/nitrogen/generated/shared/c++/TradeAsset.hpp +20 -22
- package/nitrogen/generated/shared/c++/TradeAssetKind.hpp +92 -0
- package/nitrogen/generated/shared/c++/TradeAssetQuoteRequest.hpp +17 -19
- package/nitrogen/generated/shared/c++/TradeAssetRef.hpp +20 -22
- package/nitrogen/generated/shared/c++/TradeExecutionResult.hpp +8 -10
- package/nitrogen/generated/shared/c++/TradeQuote.hpp +10 -12
- package/nitrogen/generated/shared/c++/{TradeQuoteRequest.hpp → TradeQuotesRequest.hpp} +17 -19
- package/nitrogen/generated/shared/c++/TradeQuotesResponse.hpp +11 -13
- package/nitrogen/generated/shared/c++/TradeRef.hpp +10 -12
- package/nitrogen/generated/shared/c++/TradeState.hpp +9 -11
- package/nitrogen/generated/shared/c++/TradesQuery.hpp +89 -0
- package/nitrogen/generated/shared/c++/TradesResponse.hpp +11 -13
- package/nitrogen/generated/shared/c++/TransportAccount.hpp +10 -12
- package/nitrogen/generated/shared/c++/TransportAccountKind.hpp +9 -11
- package/nitrogen/generated/shared/c++/TransportAsset.hpp +19 -21
- package/nitrogen/generated/shared/c++/TransportAssetQuoteRequest.hpp +16 -18
- package/nitrogen/generated/shared/c++/TransportAssetRef.hpp +4 -6
- package/nitrogen/generated/shared/c++/UnavailableLinkedAccountDetails.hpp +4 -6
- package/nitrogen/generated/shared/c++/UserCounterparty.hpp +4 -6
- package/nitrogen/generated/shared/c++/WireDetails.hpp +4 -6
- package/package.json +9 -11
- package/src/context.ts +86 -0
- package/src/index.ts +4 -634
- package/src/provider.tsx +152 -0
- package/src/specs/RNCandle.nitro.ts +38 -29
- package/src/types.ts +462 -0
- package/nitrogen/generated/ios/swift/AppUser.swift +0 -75
- package/nitrogen/generated/ios/swift/Func_void_std__string.swift +0 -44
- package/nitrogen/generated/ios/swift/Func_void_std__vector_std__shared_ptr_AnyMap__.swift +0 -47
- package/nitrogen/generated/ios/swift/ToolCall.swift +0 -44
- package/nitrogen/generated/shared/c++/AppUser.hpp +0 -78
- package/nitrogen/generated/shared/c++/ToolCall.hpp +0 -73
- package/nitrogen/generated/shared/c++/TradeQuery.hpp +0 -86
|
@@ -30,7 +30,7 @@ Pod::Spec.new do |s|
|
|
|
30
30
|
load 'nitrogen/generated/ios/ReactNativeCandle+autolinking.rb'
|
|
31
31
|
add_nitrogen_files(s)
|
|
32
32
|
|
|
33
|
-
s.dependency 'Candle', '3.0.
|
|
33
|
+
s.dependency 'Candle', '3.0.395-beta'
|
|
34
34
|
s.dependency 'React-jsi'
|
|
35
35
|
s.dependency 'React-callinvoker'
|
|
36
36
|
install_modules_dependencies(s)
|
|
@@ -1,13 +1,10 @@
|
|
|
1
1
|
import Candle
|
|
2
2
|
import Combine
|
|
3
3
|
|
|
4
|
-
@available(iOS 17.0, *)
|
|
5
|
-
final class CandleActionViewModel: ObservableObject {
|
|
4
|
+
@available(iOS 17.0, *) final class CandleActionViewModel: ObservableObject {
|
|
6
5
|
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
@Published var tradeQuote: Models.TradeQuote?
|
|
7
|
+
@Published var tradeResult: Result<Candle.Models.Trade, Candle.Models.ExecuteTrade.Error>?
|
|
9
8
|
|
|
10
|
-
|
|
11
|
-
self.tradeQuote = tradeQuote
|
|
12
|
-
}
|
|
9
|
+
init(tradeQuote: Models.TradeQuote?) { self.tradeQuote = tradeQuote }
|
|
13
10
|
}
|
|
@@ -1,68 +1,49 @@
|
|
|
1
1
|
import Candle
|
|
2
2
|
import SwiftUI
|
|
3
3
|
|
|
4
|
-
@available(iOS 17.0, *)
|
|
5
|
-
struct CandleLinkSheetWrapper: View {
|
|
4
|
+
@available(iOS 17.0, *) struct CandleLinkSheetWrapper: View {
|
|
6
5
|
|
|
7
|
-
|
|
6
|
+
@ObservedObject var viewModel = CandleLinkViewModel()
|
|
8
7
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
8
|
+
var body: some View {
|
|
9
|
+
if let services = viewModel.services {
|
|
10
|
+
if let service = services.first, services.count == 1 {
|
|
11
|
+
Spacer()
|
|
12
|
+
.candleLinkSheet(
|
|
13
|
+
isPresented: $viewModel.showSheet,
|
|
14
|
+
service: .init(reactModel: service),
|
|
15
|
+
customerName: viewModel.customerName,
|
|
16
|
+
cornerRadius: viewModel.cornerRadius,
|
|
17
|
+
showDynamicLoading: viewModel.showDynamicLoading,
|
|
18
|
+
presentationStyle: viewModel.toCandlePresentationStyle,
|
|
19
|
+
presentationBackground: viewModel.toCandlePresentationBackground
|
|
20
|
+
) { newLinkedAccount in viewModel.linkedAccount = newLinkedAccount }
|
|
21
|
+
.onChange(of: viewModel.showSheet) { _, newValue in
|
|
22
|
+
Task { @MainActor in viewModel.isPresented = newValue }
|
|
23
|
+
}
|
|
24
|
+
} else {
|
|
25
|
+
Spacer()
|
|
26
|
+
.candleLinkSheet(
|
|
27
|
+
isPresented: $viewModel.showSheet,
|
|
28
|
+
customerName: viewModel.customerName,
|
|
29
|
+
cornerRadius: viewModel.cornerRadius,
|
|
30
|
+
services: services.map(Models.Service.init(reactModel:)),
|
|
31
|
+
showDynamicLoading: viewModel.showDynamicLoading,
|
|
32
|
+
presentationStyle: viewModel.toCandlePresentationStyle,
|
|
33
|
+
presentationBackground: viewModel.toCandlePresentationBackground
|
|
34
|
+
) { newLinkedAccount in viewModel.linkedAccount = newLinkedAccount }
|
|
34
35
|
}
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
presentationBackground: viewModel.toCandlePresentationBackground
|
|
47
|
-
) { newLinkedAccount in
|
|
48
|
-
viewModel.linkedAccount = newLinkedAccount
|
|
49
|
-
}
|
|
50
|
-
.environment(candleClient)
|
|
51
|
-
}
|
|
52
|
-
} else {
|
|
53
|
-
Spacer()
|
|
54
|
-
.candleLinkSheet(
|
|
55
|
-
isPresented: $viewModel.showSheet,
|
|
56
|
-
customerName: viewModel.customerName,
|
|
57
|
-
cornerRadius: viewModel.cornerRadius,
|
|
58
|
-
services: .supported,
|
|
59
|
-
showDynamicLoading: viewModel.showDynamicLoading,
|
|
60
|
-
presentationStyle: viewModel.toCandlePresentationStyle,
|
|
61
|
-
presentationBackground: viewModel.toCandlePresentationBackground
|
|
62
|
-
) { newLinkedAccount in
|
|
63
|
-
viewModel.linkedAccount = newLinkedAccount
|
|
36
|
+
} else {
|
|
37
|
+
Spacer()
|
|
38
|
+
.candleLinkSheet(
|
|
39
|
+
isPresented: $viewModel.showSheet,
|
|
40
|
+
customerName: viewModel.customerName,
|
|
41
|
+
cornerRadius: viewModel.cornerRadius,
|
|
42
|
+
services: .supported,
|
|
43
|
+
showDynamicLoading: viewModel.showDynamicLoading,
|
|
44
|
+
presentationStyle: viewModel.toCandlePresentationStyle,
|
|
45
|
+
presentationBackground: viewModel.toCandlePresentationBackground
|
|
46
|
+
) { newLinkedAccount in viewModel.linkedAccount = newLinkedAccount }
|
|
64
47
|
}
|
|
65
|
-
.environment(candleClient)
|
|
66
48
|
}
|
|
67
|
-
}
|
|
68
49
|
}
|
|
@@ -1,41 +1,31 @@
|
|
|
1
1
|
import Candle
|
|
2
2
|
import SwiftUI
|
|
3
3
|
|
|
4
|
-
@available(iOS 17.0, *)
|
|
5
|
-
final class CandleLinkViewModel: ObservableObject {
|
|
4
|
+
@available(iOS 17.0, *) final class CandleLinkViewModel: ObservableObject {
|
|
6
5
|
|
|
7
|
-
|
|
6
|
+
@Published var showSheet = false
|
|
7
|
+
@Published var linkedAccount: Models.LinkedAccount?
|
|
8
|
+
@Published var isPresented: Bool = false
|
|
9
|
+
@Published var services: [Service]?
|
|
10
|
+
@Published var cornerRadius: Double = 0
|
|
11
|
+
@Published var customerName: String?
|
|
12
|
+
@Published var showDynamicLoading: Bool = false
|
|
13
|
+
@Published var presentationBackground: PresentationBackground = .default
|
|
14
|
+
@Published var presentationStyle: PresentationStyle = .fullscreen
|
|
8
15
|
|
|
9
|
-
|
|
10
|
-
@Published var linkedAccount: Models.LinkedAccount?
|
|
11
|
-
@Published var isPresented: Bool = false
|
|
12
|
-
@Published var services: [Service]?
|
|
13
|
-
@Published var cornerRadius: Double = 0
|
|
14
|
-
@Published var customerName: String?
|
|
15
|
-
@Published var showDynamicLoading: Bool = false
|
|
16
|
-
@Published var presentationBackground: PresentationBackground = .default
|
|
17
|
-
@Published var presentationStyle: PresentationStyle = .fullscreen
|
|
16
|
+
init() {}
|
|
18
17
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
var toCandlePresentationStyle: Candle.PresentationStyle {
|
|
25
|
-
switch presentationStyle {
|
|
26
|
-
case .fullscreen:
|
|
27
|
-
return .fullScreen
|
|
28
|
-
case .sheet:
|
|
29
|
-
return .sheet
|
|
18
|
+
@available(iOS 17.0, *) var toCandlePresentationStyle: Candle.PresentationStyle {
|
|
19
|
+
switch presentationStyle {
|
|
20
|
+
case .fullscreen: return .fullScreen
|
|
21
|
+
case .sheet: return .sheet
|
|
22
|
+
}
|
|
30
23
|
}
|
|
31
|
-
}
|
|
32
24
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
return AnyShapeStyle(Material.regular)
|
|
25
|
+
var toCandlePresentationBackground: AnyShapeStyle? {
|
|
26
|
+
switch presentationBackground {
|
|
27
|
+
case .default: return nil
|
|
28
|
+
case .blur: return AnyShapeStyle(Material.regular)
|
|
29
|
+
}
|
|
39
30
|
}
|
|
40
|
-
}
|
|
41
31
|
}
|
|
@@ -1,31 +1,22 @@
|
|
|
1
1
|
import Candle
|
|
2
2
|
import SwiftUI
|
|
3
3
|
|
|
4
|
-
@available(iOS 17.0, *)
|
|
5
|
-
struct CandleTradeExecutionSheetWrapper: View {
|
|
4
|
+
@available(iOS 17.0, *) struct CandleTradeExecutionSheetWrapper: View {
|
|
6
5
|
|
|
7
|
-
|
|
6
|
+
@ObservedObject var viewModel: CandleActionViewModel
|
|
7
|
+
let presentationBackground: PresentationBackground
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
case .default:
|
|
15
|
-
return AnyShapeStyle(Material.regular)
|
|
16
|
-
case .blur:
|
|
17
|
-
return AnyShapeStyle(Material.ultraThick)
|
|
9
|
+
var toCandlePresentationBackground: AnyShapeStyle {
|
|
10
|
+
switch presentationBackground {
|
|
11
|
+
case .default: return AnyShapeStyle(Material.regular)
|
|
12
|
+
case .blur: return AnyShapeStyle(Material.ultraThick)
|
|
13
|
+
}
|
|
18
14
|
}
|
|
19
|
-
}
|
|
20
15
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
viewModel.tradeResult = result
|
|
28
|
-
}
|
|
29
|
-
.environment(candleClient)
|
|
30
|
-
}
|
|
16
|
+
var body: some View {
|
|
17
|
+
Color.clear.candleTradeExecutionSheet(
|
|
18
|
+
item: $viewModel.tradeQuote,
|
|
19
|
+
presentationBackground: toCandlePresentationBackground
|
|
20
|
+
) { result in viewModel.tradeResult = result }
|
|
21
|
+
}
|
|
31
22
|
}
|
|
@@ -2,35 +2,35 @@ import SwiftUI
|
|
|
2
2
|
import UIKit
|
|
3
3
|
|
|
4
4
|
extension UIViewController {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
5
|
+
func embed(_ child: UIViewController) {
|
|
6
|
+
addChild(child)
|
|
7
|
+
view.insertSubview(child.view, belowSubview: view.subviews.first ?? view)
|
|
8
|
+
child.view.pinEdges(to: view)
|
|
9
|
+
child.didMove(toParent: self)
|
|
10
|
+
}
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
12
|
+
func embedOnTop(_ child: UIViewController) {
|
|
13
|
+
addChild(child)
|
|
14
|
+
view.insertSubview(child.view, aboveSubview: view)
|
|
15
|
+
child.view.pinEdges(to: view)
|
|
16
|
+
child.didMove(toParent: self)
|
|
17
|
+
}
|
|
18
18
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
19
|
+
func removeEmbedded(_ child: UIViewController) {
|
|
20
|
+
child.willMove(toParent: nil)
|
|
21
|
+
child.view.removeFromSuperview()
|
|
22
|
+
child.removeFromParent()
|
|
23
|
+
}
|
|
24
24
|
}
|
|
25
25
|
|
|
26
26
|
extension UIView {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
27
|
+
func pinEdges(to superview: UIView) {
|
|
28
|
+
translatesAutoresizingMaskIntoConstraints = false
|
|
29
|
+
NSLayoutConstraint.activate([
|
|
30
|
+
leadingAnchor.constraint(equalTo: superview.leadingAnchor),
|
|
31
|
+
trailingAnchor.constraint(equalTo: superview.trailingAnchor),
|
|
32
|
+
topAnchor.constraint(equalTo: superview.topAnchor),
|
|
33
|
+
bottomAnchor.constraint(equalTo: superview.bottomAnchor),
|
|
34
|
+
])
|
|
35
|
+
}
|
|
36
36
|
}
|