react-native-candle 0.1.33 → 0.1.36

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.
Files changed (38) hide show
  1. package/ReactNativeCandle.podspec +1 -1
  2. package/ios/Sources/RNCandle.swift +131 -60
  3. package/lib/commonjs/index.js +28 -20
  4. package/lib/commonjs/index.js.map +1 -1
  5. package/lib/module/index.js +28 -20
  6. package/lib/module/index.js.map +1 -1
  7. package/lib/typescript/commonjs/src/index.d.ts +31 -28
  8. package/lib/typescript/commonjs/src/index.d.ts.map +1 -1
  9. package/lib/typescript/commonjs/src/specs/RNCandle.nitro.d.ts +20 -10
  10. package/lib/typescript/commonjs/src/specs/RNCandle.nitro.d.ts.map +1 -1
  11. package/lib/typescript/module/src/index.d.ts +31 -28
  12. package/lib/typescript/module/src/index.d.ts.map +1 -1
  13. package/lib/typescript/module/src/specs/RNCandle.nitro.d.ts +20 -10
  14. package/lib/typescript/module/src/specs/RNCandle.nitro.d.ts.map +1 -1
  15. package/nitrogen/generated/ios/ReactNativeCandle-Swift-Cxx-Bridge.hpp +34 -22
  16. package/nitrogen/generated/ios/ReactNativeCandle-Swift-Cxx-Umbrella.hpp +15 -12
  17. package/nitrogen/generated/ios/c++/HybridRNCandleSpecSwift.hpp +15 -12
  18. package/nitrogen/generated/ios/swift/AssetAccount.swift +70 -11
  19. package/nitrogen/generated/ios/swift/AssetAccountKind.swift +4 -0
  20. package/nitrogen/generated/ios/swift/{FiatAccountDetails.swift → FiatAccount.swift} +32 -8
  21. package/nitrogen/generated/ios/swift/{LegalAccountKind.swift → FiatMarketAccountKind.swift} +14 -10
  22. package/nitrogen/generated/ios/swift/{MarketAccountDetails.swift → MarketAccount.swift} +31 -7
  23. package/nitrogen/generated/ios/swift/TransportAccount.swift +93 -0
  24. package/nitrogen/generated/ios/swift/TransportAccountKind.swift +42 -0
  25. package/nitrogen/generated/ios/swift/TransportAsset.swift +18 -6
  26. package/nitrogen/generated/shared/c++/AssetAccount.hpp +23 -20
  27. package/nitrogen/generated/shared/c++/AssetAccountKind.hpp +4 -0
  28. package/nitrogen/generated/shared/c++/{FiatAccountDetails.hpp → FiatAccount.hpp} +21 -10
  29. package/nitrogen/generated/shared/c++/FiatMarketAccountKind.hpp +90 -0
  30. package/nitrogen/generated/shared/c++/{MarketAccountDetails.hpp → MarketAccount.hpp} +21 -10
  31. package/nitrogen/generated/shared/c++/TransportAccount.hpp +94 -0
  32. package/nitrogen/generated/shared/c++/{LegalAccountKind.hpp → TransportAccountKind.hpp} +17 -21
  33. package/nitrogen/generated/shared/c++/TransportAsset.hpp +5 -1
  34. package/package.json +4 -4
  35. package/src/index.ts +62 -46
  36. package/src/specs/RNCandle.nitro.ts +27 -15
  37. package/nitrogen/generated/ios/swift/AssetAccountDetails.swift +0 -83
  38. package/nitrogen/generated/shared/c++/AssetAccountDetails.hpp +0 -78
@@ -18,14 +18,17 @@
18
18
  #error NitroModules cannot be found! Are you sure you installed NitroModules properly?
19
19
  #endif
20
20
 
21
- // Forward declaration of `LegalAccountKind` to properly resolve imports.
22
- namespace margelo::nitro::rncandle { enum class LegalAccountKind; }
23
- // Forward declaration of `AssetAccountDetails` to properly resolve imports.
24
- namespace margelo::nitro::rncandle { struct AssetAccountDetails; }
21
+ // Forward declaration of `FiatAccount` to properly resolve imports.
22
+ namespace margelo::nitro::rncandle { struct FiatAccount; }
23
+ // Forward declaration of `MarketAccount` to properly resolve imports.
24
+ namespace margelo::nitro::rncandle { struct MarketAccount; }
25
+ // Forward declaration of `TransportAccount` to properly resolve imports.
26
+ namespace margelo::nitro::rncandle { struct TransportAccount; }
25
27
 
26
- #include "LegalAccountKind.hpp"
27
- #include <string>
28
- #include "AssetAccountDetails.hpp"
28
+ #include <optional>
29
+ #include "FiatAccount.hpp"
30
+ #include "MarketAccount.hpp"
31
+ #include "TransportAccount.hpp"
29
32
 
30
33
  namespace margelo::nitro::rncandle {
31
34
 
@@ -34,13 +37,13 @@ namespace margelo::nitro::rncandle {
34
37
  */
35
38
  struct AssetAccount {
36
39
  public:
37
- LegalAccountKind legalAccountKind SWIFT_PRIVATE;
38
- std::string nickname SWIFT_PRIVATE;
39
- AssetAccountDetails details SWIFT_PRIVATE;
40
+ std::optional<FiatAccount> fiatAccount SWIFT_PRIVATE;
41
+ std::optional<MarketAccount> marketAccount SWIFT_PRIVATE;
42
+ std::optional<TransportAccount> transportAccount SWIFT_PRIVATE;
40
43
 
41
44
  public:
42
45
  AssetAccount() = default;
43
- explicit AssetAccount(LegalAccountKind legalAccountKind, std::string nickname, AssetAccountDetails details): legalAccountKind(legalAccountKind), nickname(nickname), details(details) {}
46
+ explicit AssetAccount(std::optional<FiatAccount> fiatAccount, std::optional<MarketAccount> marketAccount, std::optional<TransportAccount> transportAccount): fiatAccount(fiatAccount), marketAccount(marketAccount), transportAccount(transportAccount) {}
44
47
  };
45
48
 
46
49
  } // namespace margelo::nitro::rncandle
@@ -55,16 +58,16 @@ namespace margelo::nitro {
55
58
  static inline AssetAccount fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
56
59
  jsi::Object obj = arg.asObject(runtime);
57
60
  return AssetAccount(
58
- JSIConverter<LegalAccountKind>::fromJSI(runtime, obj.getProperty(runtime, "legalAccountKind")),
59
- JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "nickname")),
60
- JSIConverter<AssetAccountDetails>::fromJSI(runtime, obj.getProperty(runtime, "details"))
61
+ JSIConverter<std::optional<FiatAccount>>::fromJSI(runtime, obj.getProperty(runtime, "fiatAccount")),
62
+ JSIConverter<std::optional<MarketAccount>>::fromJSI(runtime, obj.getProperty(runtime, "marketAccount")),
63
+ JSIConverter<std::optional<TransportAccount>>::fromJSI(runtime, obj.getProperty(runtime, "transportAccount"))
61
64
  );
62
65
  }
63
66
  static inline jsi::Value toJSI(jsi::Runtime& runtime, const AssetAccount& arg) {
64
67
  jsi::Object obj(runtime);
65
- obj.setProperty(runtime, "legalAccountKind", JSIConverter<LegalAccountKind>::toJSI(runtime, arg.legalAccountKind));
66
- obj.setProperty(runtime, "nickname", JSIConverter<std::string>::toJSI(runtime, arg.nickname));
67
- obj.setProperty(runtime, "details", JSIConverter<AssetAccountDetails>::toJSI(runtime, arg.details));
68
+ obj.setProperty(runtime, "fiatAccount", JSIConverter<std::optional<FiatAccount>>::toJSI(runtime, arg.fiatAccount));
69
+ obj.setProperty(runtime, "marketAccount", JSIConverter<std::optional<MarketAccount>>::toJSI(runtime, arg.marketAccount));
70
+ obj.setProperty(runtime, "transportAccount", JSIConverter<std::optional<TransportAccount>>::toJSI(runtime, arg.transportAccount));
68
71
  return obj;
69
72
  }
70
73
  static inline bool canConvert(jsi::Runtime& runtime, const jsi::Value& value) {
@@ -72,9 +75,9 @@ namespace margelo::nitro {
72
75
  return false;
73
76
  }
74
77
  jsi::Object obj = value.getObject(runtime);
75
- if (!JSIConverter<LegalAccountKind>::canConvert(runtime, obj.getProperty(runtime, "legalAccountKind"))) return false;
76
- if (!JSIConverter<std::string>::canConvert(runtime, obj.getProperty(runtime, "nickname"))) return false;
77
- if (!JSIConverter<AssetAccountDetails>::canConvert(runtime, obj.getProperty(runtime, "details"))) return false;
78
+ if (!JSIConverter<std::optional<FiatAccount>>::canConvert(runtime, obj.getProperty(runtime, "fiatAccount"))) return false;
79
+ if (!JSIConverter<std::optional<MarketAccount>>::canConvert(runtime, obj.getProperty(runtime, "marketAccount"))) return false;
80
+ if (!JSIConverter<std::optional<TransportAccount>>::canConvert(runtime, obj.getProperty(runtime, "transportAccount"))) return false;
78
81
  return true;
79
82
  }
80
83
  };
@@ -32,6 +32,7 @@ namespace margelo::nitro::rncandle {
32
32
  FIAT SWIFT_NAME(fiat) = 0,
33
33
  STOCK SWIFT_NAME(stock) = 1,
34
34
  CRYPTO SWIFT_NAME(crypto) = 2,
35
+ TRANSPORT SWIFT_NAME(transport) = 3,
35
36
  } CLOSED_ENUM;
36
37
 
37
38
  } // namespace margelo::nitro::rncandle
@@ -49,6 +50,7 @@ namespace margelo::nitro {
49
50
  case hashString("fiat"): return AssetAccountKind::FIAT;
50
51
  case hashString("stock"): return AssetAccountKind::STOCK;
51
52
  case hashString("crypto"): return AssetAccountKind::CRYPTO;
53
+ case hashString("transport"): return AssetAccountKind::TRANSPORT;
52
54
  default: [[unlikely]]
53
55
  throw std::invalid_argument("Cannot convert \"" + unionValue + "\" to enum AssetAccountKind - invalid value!");
54
56
  }
@@ -58,6 +60,7 @@ namespace margelo::nitro {
58
60
  case AssetAccountKind::FIAT: return JSIConverter<std::string>::toJSI(runtime, "fiat");
59
61
  case AssetAccountKind::STOCK: return JSIConverter<std::string>::toJSI(runtime, "stock");
60
62
  case AssetAccountKind::CRYPTO: return JSIConverter<std::string>::toJSI(runtime, "crypto");
63
+ case AssetAccountKind::TRANSPORT: return JSIConverter<std::string>::toJSI(runtime, "transport");
61
64
  default: [[unlikely]]
62
65
  throw std::invalid_argument("Cannot convert AssetAccountKind to JS - invalid value: "
63
66
  + std::to_string(static_cast<int>(arg)) + "!");
@@ -72,6 +75,7 @@ namespace margelo::nitro {
72
75
  case hashString("fiat"):
73
76
  case hashString("stock"):
74
77
  case hashString("crypto"):
78
+ case hashString("transport"):
75
79
  return true;
76
80
  default:
77
81
  return false;
@@ -1,5 +1,5 @@
1
1
  ///
2
- /// FiatAccountDetails.hpp
2
+ /// FiatAccount.hpp
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
5
  /// Copyright © 2025 Marc Rousavy @ Margelo
@@ -18,6 +18,8 @@
18
18
  #error NitroModules cannot be found! Are you sure you installed NitroModules properly?
19
19
  #endif
20
20
 
21
+ // Forward declaration of `FiatMarketAccountKind` to properly resolve imports.
22
+ namespace margelo::nitro::rncandle { enum class FiatMarketAccountKind; }
21
23
  // Forward declaration of `ACHDetails` to properly resolve imports.
22
24
  namespace margelo::nitro::rncandle { struct ACHDetails; }
23
25
  // Forward declaration of `WireDetails` to properly resolve imports.
@@ -26,6 +28,7 @@ namespace margelo::nitro::rncandle { struct WireDetails; }
26
28
  namespace margelo::nitro::rncandle { enum class Service; }
27
29
 
28
30
  #include <string>
31
+ #include "FiatMarketAccountKind.hpp"
29
32
  #include <optional>
30
33
  #include "ACHDetails.hpp"
31
34
  #include "WireDetails.hpp"
@@ -34,12 +37,14 @@ namespace margelo::nitro::rncandle { enum class Service; }
34
37
  namespace margelo::nitro::rncandle {
35
38
 
36
39
  /**
37
- * A struct which can be represented as a JavaScript object (FiatAccountDetails).
40
+ * A struct which can be represented as a JavaScript object (FiatAccount).
38
41
  */
39
- struct FiatAccountDetails {
42
+ struct FiatAccount {
40
43
  public:
41
44
  std::string assetKind SWIFT_PRIVATE;
42
45
  std::string serviceAccountID SWIFT_PRIVATE;
46
+ FiatMarketAccountKind accountKind SWIFT_PRIVATE;
47
+ std::string nickname SWIFT_PRIVATE;
43
48
  std::string currencyCode SWIFT_PRIVATE;
44
49
  std::optional<double> balance SWIFT_PRIVATE;
45
50
  std::optional<ACHDetails> ach SWIFT_PRIVATE;
@@ -48,8 +53,8 @@ namespace margelo::nitro::rncandle {
48
53
  Service service SWIFT_PRIVATE;
49
54
 
50
55
  public:
51
- FiatAccountDetails() = default;
52
- explicit FiatAccountDetails(std::string assetKind, std::string serviceAccountID, std::string currencyCode, std::optional<double> balance, std::optional<ACHDetails> ach, std::optional<WireDetails> wire, std::string linkedAccountID, Service service): assetKind(assetKind), serviceAccountID(serviceAccountID), currencyCode(currencyCode), balance(balance), ach(ach), wire(wire), linkedAccountID(linkedAccountID), service(service) {}
56
+ FiatAccount() = default;
57
+ explicit FiatAccount(std::string assetKind, std::string serviceAccountID, FiatMarketAccountKind accountKind, std::string nickname, std::string currencyCode, std::optional<double> balance, std::optional<ACHDetails> ach, std::optional<WireDetails> wire, std::string linkedAccountID, Service service): assetKind(assetKind), serviceAccountID(serviceAccountID), accountKind(accountKind), nickname(nickname), currencyCode(currencyCode), balance(balance), ach(ach), wire(wire), linkedAccountID(linkedAccountID), service(service) {}
53
58
  };
54
59
 
55
60
  } // namespace margelo::nitro::rncandle
@@ -58,14 +63,16 @@ namespace margelo::nitro {
58
63
 
59
64
  using namespace margelo::nitro::rncandle;
60
65
 
61
- // C++ FiatAccountDetails <> JS FiatAccountDetails (object)
66
+ // C++ FiatAccount <> JS FiatAccount (object)
62
67
  template <>
63
- struct JSIConverter<FiatAccountDetails> final {
64
- static inline FiatAccountDetails fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
68
+ struct JSIConverter<FiatAccount> final {
69
+ static inline FiatAccount fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
65
70
  jsi::Object obj = arg.asObject(runtime);
66
- return FiatAccountDetails(
71
+ return FiatAccount(
67
72
  JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "assetKind")),
68
73
  JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "serviceAccountID")),
74
+ JSIConverter<FiatMarketAccountKind>::fromJSI(runtime, obj.getProperty(runtime, "accountKind")),
75
+ JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "nickname")),
69
76
  JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "currencyCode")),
70
77
  JSIConverter<std::optional<double>>::fromJSI(runtime, obj.getProperty(runtime, "balance")),
71
78
  JSIConverter<std::optional<ACHDetails>>::fromJSI(runtime, obj.getProperty(runtime, "ach")),
@@ -74,10 +81,12 @@ namespace margelo::nitro {
74
81
  JSIConverter<Service>::fromJSI(runtime, obj.getProperty(runtime, "service"))
75
82
  );
76
83
  }
77
- static inline jsi::Value toJSI(jsi::Runtime& runtime, const FiatAccountDetails& arg) {
84
+ static inline jsi::Value toJSI(jsi::Runtime& runtime, const FiatAccount& arg) {
78
85
  jsi::Object obj(runtime);
79
86
  obj.setProperty(runtime, "assetKind", JSIConverter<std::string>::toJSI(runtime, arg.assetKind));
80
87
  obj.setProperty(runtime, "serviceAccountID", JSIConverter<std::string>::toJSI(runtime, arg.serviceAccountID));
88
+ obj.setProperty(runtime, "accountKind", JSIConverter<FiatMarketAccountKind>::toJSI(runtime, arg.accountKind));
89
+ obj.setProperty(runtime, "nickname", JSIConverter<std::string>::toJSI(runtime, arg.nickname));
81
90
  obj.setProperty(runtime, "currencyCode", JSIConverter<std::string>::toJSI(runtime, arg.currencyCode));
82
91
  obj.setProperty(runtime, "balance", JSIConverter<std::optional<double>>::toJSI(runtime, arg.balance));
83
92
  obj.setProperty(runtime, "ach", JSIConverter<std::optional<ACHDetails>>::toJSI(runtime, arg.ach));
@@ -93,6 +102,8 @@ namespace margelo::nitro {
93
102
  jsi::Object obj = value.getObject(runtime);
94
103
  if (!JSIConverter<std::string>::canConvert(runtime, obj.getProperty(runtime, "assetKind"))) return false;
95
104
  if (!JSIConverter<std::string>::canConvert(runtime, obj.getProperty(runtime, "serviceAccountID"))) return false;
105
+ if (!JSIConverter<FiatMarketAccountKind>::canConvert(runtime, obj.getProperty(runtime, "accountKind"))) return false;
106
+ if (!JSIConverter<std::string>::canConvert(runtime, obj.getProperty(runtime, "nickname"))) return false;
96
107
  if (!JSIConverter<std::string>::canConvert(runtime, obj.getProperty(runtime, "currencyCode"))) return false;
97
108
  if (!JSIConverter<std::optional<double>>::canConvert(runtime, obj.getProperty(runtime, "balance"))) return false;
98
109
  if (!JSIConverter<std::optional<ACHDetails>>::canConvert(runtime, obj.getProperty(runtime, "ach"))) return false;
@@ -0,0 +1,90 @@
1
+ ///
2
+ /// FiatMarketAccountKind.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2025 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #if __has_include(<NitroModules/NitroHash.hpp>)
11
+ #include <NitroModules/NitroHash.hpp>
12
+ #else
13
+ #error NitroModules cannot be found! Are you sure you installed NitroModules properly?
14
+ #endif
15
+ #if __has_include(<NitroModules/JSIConverter.hpp>)
16
+ #include <NitroModules/JSIConverter.hpp>
17
+ #else
18
+ #error NitroModules cannot be found! Are you sure you installed NitroModules properly?
19
+ #endif
20
+ #if __has_include(<NitroModules/NitroDefines.hpp>)
21
+ #include <NitroModules/NitroDefines.hpp>
22
+ #else
23
+ #error NitroModules cannot be found! Are you sure you installed NitroModules properly?
24
+ #endif
25
+
26
+ namespace margelo::nitro::rncandle {
27
+
28
+ /**
29
+ * An enum which can be represented as a JavaScript union (FiatMarketAccountKind).
30
+ */
31
+ enum class FiatMarketAccountKind {
32
+ INDIVIDUAL SWIFT_NAME(individual) = 0,
33
+ JOINT SWIFT_NAME(joint) = 1,
34
+ TRADITIONALIRA SWIFT_NAME(traditionalira) = 2,
35
+ ROTHIRA SWIFT_NAME(rothira) = 3,
36
+ BUSINESS SWIFT_NAME(business) = 4,
37
+ } CLOSED_ENUM;
38
+
39
+ } // namespace margelo::nitro::rncandle
40
+
41
+ namespace margelo::nitro {
42
+
43
+ using namespace margelo::nitro::rncandle;
44
+
45
+ // C++ FiatMarketAccountKind <> JS FiatMarketAccountKind (union)
46
+ template <>
47
+ struct JSIConverter<FiatMarketAccountKind> final {
48
+ static inline FiatMarketAccountKind fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
49
+ std::string unionValue = JSIConverter<std::string>::fromJSI(runtime, arg);
50
+ switch (hashString(unionValue.c_str(), unionValue.size())) {
51
+ case hashString("individual"): return FiatMarketAccountKind::INDIVIDUAL;
52
+ case hashString("joint"): return FiatMarketAccountKind::JOINT;
53
+ case hashString("traditionalIRA"): return FiatMarketAccountKind::TRADITIONALIRA;
54
+ case hashString("rothIRA"): return FiatMarketAccountKind::ROTHIRA;
55
+ case hashString("business"): return FiatMarketAccountKind::BUSINESS;
56
+ default: [[unlikely]]
57
+ throw std::invalid_argument("Cannot convert \"" + unionValue + "\" to enum FiatMarketAccountKind - invalid value!");
58
+ }
59
+ }
60
+ static inline jsi::Value toJSI(jsi::Runtime& runtime, FiatMarketAccountKind arg) {
61
+ switch (arg) {
62
+ case FiatMarketAccountKind::INDIVIDUAL: return JSIConverter<std::string>::toJSI(runtime, "individual");
63
+ case FiatMarketAccountKind::JOINT: return JSIConverter<std::string>::toJSI(runtime, "joint");
64
+ case FiatMarketAccountKind::TRADITIONALIRA: return JSIConverter<std::string>::toJSI(runtime, "traditionalIRA");
65
+ case FiatMarketAccountKind::ROTHIRA: return JSIConverter<std::string>::toJSI(runtime, "rothIRA");
66
+ case FiatMarketAccountKind::BUSINESS: return JSIConverter<std::string>::toJSI(runtime, "business");
67
+ default: [[unlikely]]
68
+ throw std::invalid_argument("Cannot convert FiatMarketAccountKind to JS - invalid value: "
69
+ + std::to_string(static_cast<int>(arg)) + "!");
70
+ }
71
+ }
72
+ static inline bool canConvert(jsi::Runtime& runtime, const jsi::Value& value) {
73
+ if (!value.isString()) {
74
+ return false;
75
+ }
76
+ std::string unionValue = JSIConverter<std::string>::fromJSI(runtime, value);
77
+ switch (hashString(unionValue.c_str(), unionValue.size())) {
78
+ case hashString("individual"):
79
+ case hashString("joint"):
80
+ case hashString("traditionalIRA"):
81
+ case hashString("rothIRA"):
82
+ case hashString("business"):
83
+ return true;
84
+ default:
85
+ return false;
86
+ }
87
+ }
88
+ };
89
+
90
+ } // namespace margelo::nitro
@@ -1,5 +1,5 @@
1
1
  ///
2
- /// MarketAccountDetails.hpp
2
+ /// MarketAccount.hpp
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
5
  /// Copyright © 2025 Marc Rousavy @ Margelo
@@ -18,27 +18,32 @@
18
18
  #error NitroModules cannot be found! Are you sure you installed NitroModules properly?
19
19
  #endif
20
20
 
21
+ // Forward declaration of `FiatMarketAccountKind` to properly resolve imports.
22
+ namespace margelo::nitro::rncandle { enum class FiatMarketAccountKind; }
21
23
  // Forward declaration of `Service` to properly resolve imports.
22
24
  namespace margelo::nitro::rncandle { enum class Service; }
23
25
 
24
26
  #include <string>
27
+ #include "FiatMarketAccountKind.hpp"
25
28
  #include "Service.hpp"
26
29
 
27
30
  namespace margelo::nitro::rncandle {
28
31
 
29
32
  /**
30
- * A struct which can be represented as a JavaScript object (MarketAccountDetails).
33
+ * A struct which can be represented as a JavaScript object (MarketAccount).
31
34
  */
32
- struct MarketAccountDetails {
35
+ struct MarketAccount {
33
36
  public:
34
37
  std::string assetKind SWIFT_PRIVATE;
35
38
  std::string serviceAccountID SWIFT_PRIVATE;
39
+ FiatMarketAccountKind accountKind SWIFT_PRIVATE;
40
+ std::string nickname SWIFT_PRIVATE;
36
41
  std::string linkedAccountID SWIFT_PRIVATE;
37
42
  Service service SWIFT_PRIVATE;
38
43
 
39
44
  public:
40
- MarketAccountDetails() = default;
41
- explicit MarketAccountDetails(std::string assetKind, std::string serviceAccountID, std::string linkedAccountID, Service service): assetKind(assetKind), serviceAccountID(serviceAccountID), linkedAccountID(linkedAccountID), service(service) {}
45
+ MarketAccount() = default;
46
+ explicit MarketAccount(std::string assetKind, std::string serviceAccountID, FiatMarketAccountKind accountKind, std::string nickname, std::string linkedAccountID, Service service): assetKind(assetKind), serviceAccountID(serviceAccountID), accountKind(accountKind), nickname(nickname), linkedAccountID(linkedAccountID), service(service) {}
42
47
  };
43
48
 
44
49
  } // namespace margelo::nitro::rncandle
@@ -47,22 +52,26 @@ namespace margelo::nitro {
47
52
 
48
53
  using namespace margelo::nitro::rncandle;
49
54
 
50
- // C++ MarketAccountDetails <> JS MarketAccountDetails (object)
55
+ // C++ MarketAccount <> JS MarketAccount (object)
51
56
  template <>
52
- struct JSIConverter<MarketAccountDetails> final {
53
- static inline MarketAccountDetails fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
57
+ struct JSIConverter<MarketAccount> final {
58
+ static inline MarketAccount fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
54
59
  jsi::Object obj = arg.asObject(runtime);
55
- return MarketAccountDetails(
60
+ return MarketAccount(
56
61
  JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "assetKind")),
57
62
  JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "serviceAccountID")),
63
+ JSIConverter<FiatMarketAccountKind>::fromJSI(runtime, obj.getProperty(runtime, "accountKind")),
64
+ JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "nickname")),
58
65
  JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "linkedAccountID")),
59
66
  JSIConverter<Service>::fromJSI(runtime, obj.getProperty(runtime, "service"))
60
67
  );
61
68
  }
62
- static inline jsi::Value toJSI(jsi::Runtime& runtime, const MarketAccountDetails& arg) {
69
+ static inline jsi::Value toJSI(jsi::Runtime& runtime, const MarketAccount& arg) {
63
70
  jsi::Object obj(runtime);
64
71
  obj.setProperty(runtime, "assetKind", JSIConverter<std::string>::toJSI(runtime, arg.assetKind));
65
72
  obj.setProperty(runtime, "serviceAccountID", JSIConverter<std::string>::toJSI(runtime, arg.serviceAccountID));
73
+ obj.setProperty(runtime, "accountKind", JSIConverter<FiatMarketAccountKind>::toJSI(runtime, arg.accountKind));
74
+ obj.setProperty(runtime, "nickname", JSIConverter<std::string>::toJSI(runtime, arg.nickname));
66
75
  obj.setProperty(runtime, "linkedAccountID", JSIConverter<std::string>::toJSI(runtime, arg.linkedAccountID));
67
76
  obj.setProperty(runtime, "service", JSIConverter<Service>::toJSI(runtime, arg.service));
68
77
  return obj;
@@ -74,6 +83,8 @@ namespace margelo::nitro {
74
83
  jsi::Object obj = value.getObject(runtime);
75
84
  if (!JSIConverter<std::string>::canConvert(runtime, obj.getProperty(runtime, "assetKind"))) return false;
76
85
  if (!JSIConverter<std::string>::canConvert(runtime, obj.getProperty(runtime, "serviceAccountID"))) return false;
86
+ if (!JSIConverter<FiatMarketAccountKind>::canConvert(runtime, obj.getProperty(runtime, "accountKind"))) return false;
87
+ if (!JSIConverter<std::string>::canConvert(runtime, obj.getProperty(runtime, "nickname"))) return false;
77
88
  if (!JSIConverter<std::string>::canConvert(runtime, obj.getProperty(runtime, "linkedAccountID"))) return false;
78
89
  if (!JSIConverter<Service>::canConvert(runtime, obj.getProperty(runtime, "service"))) return false;
79
90
  return true;
@@ -0,0 +1,94 @@
1
+ ///
2
+ /// TransportAccount.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2025 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #if __has_include(<NitroModules/JSIConverter.hpp>)
11
+ #include <NitroModules/JSIConverter.hpp>
12
+ #else
13
+ #error NitroModules cannot be found! Are you sure you installed NitroModules properly?
14
+ #endif
15
+ #if __has_include(<NitroModules/NitroDefines.hpp>)
16
+ #include <NitroModules/NitroDefines.hpp>
17
+ #else
18
+ #error NitroModules cannot be found! Are you sure you installed NitroModules properly?
19
+ #endif
20
+
21
+ // Forward declaration of `TransportAccountKind` to properly resolve imports.
22
+ namespace margelo::nitro::rncandle { enum class TransportAccountKind; }
23
+ // Forward declaration of `Service` to properly resolve imports.
24
+ namespace margelo::nitro::rncandle { enum class Service; }
25
+
26
+ #include <string>
27
+ #include "TransportAccountKind.hpp"
28
+ #include "Service.hpp"
29
+
30
+ namespace margelo::nitro::rncandle {
31
+
32
+ /**
33
+ * A struct which can be represented as a JavaScript object (TransportAccount).
34
+ */
35
+ struct TransportAccount {
36
+ public:
37
+ std::string assetKind SWIFT_PRIVATE;
38
+ std::string serviceAccountID SWIFT_PRIVATE;
39
+ TransportAccountKind accountKind SWIFT_PRIVATE;
40
+ std::string nickname SWIFT_PRIVATE;
41
+ std::string linkedAccountID SWIFT_PRIVATE;
42
+ Service service SWIFT_PRIVATE;
43
+
44
+ public:
45
+ TransportAccount() = default;
46
+ explicit TransportAccount(std::string assetKind, std::string serviceAccountID, TransportAccountKind accountKind, std::string nickname, std::string linkedAccountID, Service service): assetKind(assetKind), serviceAccountID(serviceAccountID), accountKind(accountKind), nickname(nickname), linkedAccountID(linkedAccountID), service(service) {}
47
+ };
48
+
49
+ } // namespace margelo::nitro::rncandle
50
+
51
+ namespace margelo::nitro {
52
+
53
+ using namespace margelo::nitro::rncandle;
54
+
55
+ // C++ TransportAccount <> JS TransportAccount (object)
56
+ template <>
57
+ struct JSIConverter<TransportAccount> final {
58
+ static inline TransportAccount fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
59
+ jsi::Object obj = arg.asObject(runtime);
60
+ return TransportAccount(
61
+ JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "assetKind")),
62
+ JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "serviceAccountID")),
63
+ JSIConverter<TransportAccountKind>::fromJSI(runtime, obj.getProperty(runtime, "accountKind")),
64
+ JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "nickname")),
65
+ JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "linkedAccountID")),
66
+ JSIConverter<Service>::fromJSI(runtime, obj.getProperty(runtime, "service"))
67
+ );
68
+ }
69
+ static inline jsi::Value toJSI(jsi::Runtime& runtime, const TransportAccount& arg) {
70
+ jsi::Object obj(runtime);
71
+ obj.setProperty(runtime, "assetKind", JSIConverter<std::string>::toJSI(runtime, arg.assetKind));
72
+ obj.setProperty(runtime, "serviceAccountID", JSIConverter<std::string>::toJSI(runtime, arg.serviceAccountID));
73
+ obj.setProperty(runtime, "accountKind", JSIConverter<TransportAccountKind>::toJSI(runtime, arg.accountKind));
74
+ obj.setProperty(runtime, "nickname", JSIConverter<std::string>::toJSI(runtime, arg.nickname));
75
+ obj.setProperty(runtime, "linkedAccountID", JSIConverter<std::string>::toJSI(runtime, arg.linkedAccountID));
76
+ obj.setProperty(runtime, "service", JSIConverter<Service>::toJSI(runtime, arg.service));
77
+ return obj;
78
+ }
79
+ static inline bool canConvert(jsi::Runtime& runtime, const jsi::Value& value) {
80
+ if (!value.isObject()) {
81
+ return false;
82
+ }
83
+ jsi::Object obj = value.getObject(runtime);
84
+ if (!JSIConverter<std::string>::canConvert(runtime, obj.getProperty(runtime, "assetKind"))) return false;
85
+ if (!JSIConverter<std::string>::canConvert(runtime, obj.getProperty(runtime, "serviceAccountID"))) return false;
86
+ if (!JSIConverter<TransportAccountKind>::canConvert(runtime, obj.getProperty(runtime, "accountKind"))) return false;
87
+ if (!JSIConverter<std::string>::canConvert(runtime, obj.getProperty(runtime, "nickname"))) return false;
88
+ if (!JSIConverter<std::string>::canConvert(runtime, obj.getProperty(runtime, "linkedAccountID"))) return false;
89
+ if (!JSIConverter<Service>::canConvert(runtime, obj.getProperty(runtime, "service"))) return false;
90
+ return true;
91
+ }
92
+ };
93
+
94
+ } // namespace margelo::nitro
@@ -1,5 +1,5 @@
1
1
  ///
2
- /// LegalAccountKind.hpp
2
+ /// TransportAccountKind.hpp
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
5
  /// Copyright © 2025 Marc Rousavy @ Margelo
@@ -26,13 +26,12 @@
26
26
  namespace margelo::nitro::rncandle {
27
27
 
28
28
  /**
29
- * An enum which can be represented as a JavaScript union (LegalAccountKind).
29
+ * An enum which can be represented as a JavaScript union (TransportAccountKind).
30
30
  */
31
- enum class LegalAccountKind {
31
+ enum class TransportAccountKind {
32
32
  INDIVIDUAL SWIFT_NAME(individual) = 0,
33
33
  JOINT SWIFT_NAME(joint) = 1,
34
- TRADITIONALIRA SWIFT_NAME(traditionalira) = 2,
35
- ROTHIRA SWIFT_NAME(rothira) = 3,
34
+ BUSINESS SWIFT_NAME(business) = 2,
36
35
  } CLOSED_ENUM;
37
36
 
38
37
  } // namespace margelo::nitro::rncandle
@@ -41,28 +40,26 @@ namespace margelo::nitro {
41
40
 
42
41
  using namespace margelo::nitro::rncandle;
43
42
 
44
- // C++ LegalAccountKind <> JS LegalAccountKind (union)
43
+ // C++ TransportAccountKind <> JS TransportAccountKind (union)
45
44
  template <>
46
- struct JSIConverter<LegalAccountKind> final {
47
- static inline LegalAccountKind fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
45
+ struct JSIConverter<TransportAccountKind> final {
46
+ static inline TransportAccountKind fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
48
47
  std::string unionValue = JSIConverter<std::string>::fromJSI(runtime, arg);
49
48
  switch (hashString(unionValue.c_str(), unionValue.size())) {
50
- case hashString("individual"): return LegalAccountKind::INDIVIDUAL;
51
- case hashString("joint"): return LegalAccountKind::JOINT;
52
- case hashString("traditionalIra"): return LegalAccountKind::TRADITIONALIRA;
53
- case hashString("rothIra"): return LegalAccountKind::ROTHIRA;
49
+ case hashString("individual"): return TransportAccountKind::INDIVIDUAL;
50
+ case hashString("joint"): return TransportAccountKind::JOINT;
51
+ case hashString("business"): return TransportAccountKind::BUSINESS;
54
52
  default: [[unlikely]]
55
- throw std::invalid_argument("Cannot convert \"" + unionValue + "\" to enum LegalAccountKind - invalid value!");
53
+ throw std::invalid_argument("Cannot convert \"" + unionValue + "\" to enum TransportAccountKind - invalid value!");
56
54
  }
57
55
  }
58
- static inline jsi::Value toJSI(jsi::Runtime& runtime, LegalAccountKind arg) {
56
+ static inline jsi::Value toJSI(jsi::Runtime& runtime, TransportAccountKind arg) {
59
57
  switch (arg) {
60
- case LegalAccountKind::INDIVIDUAL: return JSIConverter<std::string>::toJSI(runtime, "individual");
61
- case LegalAccountKind::JOINT: return JSIConverter<std::string>::toJSI(runtime, "joint");
62
- case LegalAccountKind::TRADITIONALIRA: return JSIConverter<std::string>::toJSI(runtime, "traditionalIra");
63
- case LegalAccountKind::ROTHIRA: return JSIConverter<std::string>::toJSI(runtime, "rothIra");
58
+ case TransportAccountKind::INDIVIDUAL: return JSIConverter<std::string>::toJSI(runtime, "individual");
59
+ case TransportAccountKind::JOINT: return JSIConverter<std::string>::toJSI(runtime, "joint");
60
+ case TransportAccountKind::BUSINESS: return JSIConverter<std::string>::toJSI(runtime, "business");
64
61
  default: [[unlikely]]
65
- throw std::invalid_argument("Cannot convert LegalAccountKind to JS - invalid value: "
62
+ throw std::invalid_argument("Cannot convert TransportAccountKind to JS - invalid value: "
66
63
  + std::to_string(static_cast<int>(arg)) + "!");
67
64
  }
68
65
  }
@@ -74,8 +71,7 @@ namespace margelo::nitro {
74
71
  switch (hashString(unionValue.c_str(), unionValue.size())) {
75
72
  case hashString("individual"):
76
73
  case hashString("joint"):
77
- case hashString("traditionalIra"):
78
- case hashString("rothIra"):
74
+ case hashString("business"):
79
75
  return true;
80
76
  default:
81
77
  return false;
@@ -40,6 +40,7 @@ namespace margelo::nitro::rncandle {
40
40
  std::string assetKind SWIFT_PRIVATE;
41
41
  std::string serviceTradeID SWIFT_PRIVATE;
42
42
  std::string serviceAssetID SWIFT_PRIVATE;
43
+ std::string serviceAccountID SWIFT_PRIVATE;
43
44
  std::string name SWIFT_PRIVATE;
44
45
  std::string description SWIFT_PRIVATE;
45
46
  std::string imageURL SWIFT_PRIVATE;
@@ -55,7 +56,7 @@ namespace margelo::nitro::rncandle {
55
56
 
56
57
  public:
57
58
  TransportAsset() = default;
58
- explicit TransportAsset(std::string assetKind, std::string serviceTradeID, std::string serviceAssetID, std::string name, std::string description, std::string imageURL, Coordinates originCoordinates, Address originAddress, Coordinates destinationCoordinates, Address destinationAddress, double seats, std::string departureDateTime, std::string arrivalDateTime, std::string linkedAccountID, Service service): assetKind(assetKind), serviceTradeID(serviceTradeID), serviceAssetID(serviceAssetID), name(name), description(description), imageURL(imageURL), originCoordinates(originCoordinates), originAddress(originAddress), destinationCoordinates(destinationCoordinates), destinationAddress(destinationAddress), seats(seats), departureDateTime(departureDateTime), arrivalDateTime(arrivalDateTime), linkedAccountID(linkedAccountID), service(service) {}
59
+ explicit TransportAsset(std::string assetKind, std::string serviceTradeID, std::string serviceAssetID, std::string serviceAccountID, std::string name, std::string description, std::string imageURL, Coordinates originCoordinates, Address originAddress, Coordinates destinationCoordinates, Address destinationAddress, double seats, std::string departureDateTime, std::string arrivalDateTime, std::string linkedAccountID, Service service): assetKind(assetKind), serviceTradeID(serviceTradeID), serviceAssetID(serviceAssetID), serviceAccountID(serviceAccountID), name(name), description(description), imageURL(imageURL), originCoordinates(originCoordinates), originAddress(originAddress), destinationCoordinates(destinationCoordinates), destinationAddress(destinationAddress), seats(seats), departureDateTime(departureDateTime), arrivalDateTime(arrivalDateTime), linkedAccountID(linkedAccountID), service(service) {}
59
60
  };
60
61
 
61
62
  } // namespace margelo::nitro::rncandle
@@ -73,6 +74,7 @@ namespace margelo::nitro {
73
74
  JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "assetKind")),
74
75
  JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "serviceTradeID")),
75
76
  JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "serviceAssetID")),
77
+ JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "serviceAccountID")),
76
78
  JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "name")),
77
79
  JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "description")),
78
80
  JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "imageURL")),
@@ -92,6 +94,7 @@ namespace margelo::nitro {
92
94
  obj.setProperty(runtime, "assetKind", JSIConverter<std::string>::toJSI(runtime, arg.assetKind));
93
95
  obj.setProperty(runtime, "serviceTradeID", JSIConverter<std::string>::toJSI(runtime, arg.serviceTradeID));
94
96
  obj.setProperty(runtime, "serviceAssetID", JSIConverter<std::string>::toJSI(runtime, arg.serviceAssetID));
97
+ obj.setProperty(runtime, "serviceAccountID", JSIConverter<std::string>::toJSI(runtime, arg.serviceAccountID));
95
98
  obj.setProperty(runtime, "name", JSIConverter<std::string>::toJSI(runtime, arg.name));
96
99
  obj.setProperty(runtime, "description", JSIConverter<std::string>::toJSI(runtime, arg.description));
97
100
  obj.setProperty(runtime, "imageURL", JSIConverter<std::string>::toJSI(runtime, arg.imageURL));
@@ -114,6 +117,7 @@ namespace margelo::nitro {
114
117
  if (!JSIConverter<std::string>::canConvert(runtime, obj.getProperty(runtime, "assetKind"))) return false;
115
118
  if (!JSIConverter<std::string>::canConvert(runtime, obj.getProperty(runtime, "serviceTradeID"))) return false;
116
119
  if (!JSIConverter<std::string>::canConvert(runtime, obj.getProperty(runtime, "serviceAssetID"))) return false;
120
+ if (!JSIConverter<std::string>::canConvert(runtime, obj.getProperty(runtime, "serviceAccountID"))) return false;
117
121
  if (!JSIConverter<std::string>::canConvert(runtime, obj.getProperty(runtime, "name"))) return false;
118
122
  if (!JSIConverter<std::string>::canConvert(runtime, obj.getProperty(runtime, "description"))) return false;
119
123
  if (!JSIConverter<std::string>::canConvert(runtime, obj.getProperty(runtime, "imageURL"))) return false;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-candle",
3
- "version": "0.1.33",
3
+ "version": "0.1.36",
4
4
  "description": "Candle SDK for React Native",
5
5
  "main": "./lib/commonjs/index.js",
6
6
  "module": "./lib/module/index.js",
@@ -58,9 +58,9 @@
58
58
  "nitro-codegen": "^0.25.2",
59
59
  "react-native-nitro-modules": "^0.25.2",
60
60
  "react-native-builder-bob": "^0.35.2",
61
- "release-it": "^18.1.2",
62
- "@release-it/bumper": "^7.0.1",
63
- "@release-it/conventional-changelog": "^10.0.0"
61
+ "release-it": "^19.0.4",
62
+ "@release-it/bumper": "^7.0.5",
63
+ "@release-it/conventional-changelog": "^10.0.1"
64
64
  },
65
65
  "peerDependencies": {
66
66
  "react": "*",