@ledgerhq/live-common 33.3.0 → 33.4.0-next.0

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 (153) hide show
  1. package/lib/deposit/api.d.ts.map +1 -1
  2. package/lib/deposit/api.js.map +1 -1
  3. package/lib/deposit/deposit.integration.test.d.ts +2 -0
  4. package/lib/deposit/deposit.integration.test.d.ts.map +1 -0
  5. package/lib/deposit/deposit.integration.test.js +22 -0
  6. package/lib/deposit/deposit.integration.test.js.map +1 -0
  7. package/lib/deposit/deposit.test.js +2 -2
  8. package/lib/deposit/deposit.test.js.map +1 -1
  9. package/lib/deposit/helper.d.ts +5 -5
  10. package/lib/deposit/helper.d.ts.map +1 -1
  11. package/lib/deposit/helper.js +45 -13
  12. package/lib/deposit/helper.js.map +1 -1
  13. package/lib/deposit/type.d.ts +4 -0
  14. package/lib/deposit/type.d.ts.map +1 -1
  15. package/lib/deposit/useGroupedCurrenciesByProvider.hook.d.ts +2 -6
  16. package/lib/deposit/useGroupedCurrenciesByProvider.hook.d.ts.map +1 -1
  17. package/lib/deposit/useGroupedCurrenciesByProvider.hook.js +10 -31
  18. package/lib/deposit/useGroupedCurrenciesByProvider.hook.js.map +1 -1
  19. package/lib/deviceSDK/hooks/useBatteryStatuses.d.ts +2 -2
  20. package/lib/deviceSDK/hooks/useBatteryStatuses.d.ts.map +1 -1
  21. package/lib/deviceSDK/hooks/useBatteryStatuses.js +4 -1
  22. package/lib/deviceSDK/hooks/useBatteryStatuses.js.map +1 -1
  23. package/lib/deviceSDK/hooks/useBatteryStatuses.test.d.ts +2 -0
  24. package/lib/deviceSDK/hooks/useBatteryStatuses.test.d.ts.map +1 -0
  25. package/lib/deviceSDK/hooks/useBatteryStatuses.test.js +20 -0
  26. package/lib/deviceSDK/hooks/useBatteryStatuses.test.js.map +1 -0
  27. package/lib/exchange/swap/hooks/index.d.ts +1 -1
  28. package/lib/exchange/swap/hooks/index.d.ts.map +1 -1
  29. package/lib/exchange/swap/hooks/index.js +1 -1
  30. package/lib/exchange/swap/hooks/index.js.map +1 -1
  31. package/lib/exchange/swap/hooks/live-app-migration/useIsCurrencySupported.d.ts +12 -0
  32. package/lib/exchange/swap/hooks/live-app-migration/useIsCurrencySupported.d.ts.map +1 -0
  33. package/lib/exchange/swap/hooks/live-app-migration/useIsCurrencySupported.js +18 -0
  34. package/lib/exchange/swap/hooks/live-app-migration/useIsCurrencySupported.js.map +1 -0
  35. package/lib/exchange/swap/hooks/{useIsSwapLiveApp.d.ts → live-app-migration/useIsSwapLiveApp.d.ts} +4 -1
  36. package/lib/exchange/swap/hooks/live-app-migration/useIsSwapLiveApp.d.ts.map +1 -0
  37. package/lib/exchange/swap/hooks/live-app-migration/useIsSwapLiveApp.js +27 -0
  38. package/lib/exchange/swap/hooks/live-app-migration/useIsSwapLiveApp.js.map +1 -0
  39. package/lib/exchange/swap/hooks/live-app-migration/useIsSwapLiveApp.test.d.ts.map +1 -0
  40. package/lib/exchange/swap/hooks/{useIsSwapLiveApp.test.js → live-app-migration/useIsSwapLiveApp.test.js} +12 -12
  41. package/lib/exchange/swap/hooks/live-app-migration/useIsSwapLiveApp.test.js.map +1 -0
  42. package/lib/exchange/swap/index.js +1 -1
  43. package/lib/exchange/swap/index.js.map +1 -1
  44. package/lib/families/cardano/hw-getAddress.js +5 -5
  45. package/lib/families/cardano/hw-getAddress.js.map +1 -1
  46. package/lib/families/cardano/js-synchronisation.js +4 -4
  47. package/lib/families/cardano/js-synchronisation.js.map +1 -1
  48. package/lib/families/cardano/logic.js +4 -4
  49. package/lib/families/cardano/logic.js.map +1 -1
  50. package/lib/families/cardano/specs.d.ts.map +1 -1
  51. package/lib/families/cardano/specs.js +31 -34
  52. package/lib/families/cardano/specs.js.map +1 -1
  53. package/lib/families/cardano/speculos-deviceActions.d.ts.map +1 -1
  54. package/lib/families/cardano/speculos-deviceActions.js +17 -18
  55. package/lib/families/cardano/speculos-deviceActions.js.map +1 -1
  56. package/lib/families/cardano/tx-helpers.js +8 -8
  57. package/lib/families/cardano/tx-helpers.js.map +1 -1
  58. package/lib/postOnboarding/hooks/useStartPostOnboardingCallback.d.ts.map +1 -1
  59. package/lib/postOnboarding/hooks/useStartPostOnboardingCallback.js +1 -0
  60. package/lib/postOnboarding/hooks/useStartPostOnboardingCallback.js.map +1 -1
  61. package/lib-es/deposit/api.d.ts.map +1 -1
  62. package/lib-es/deposit/api.js.map +1 -1
  63. package/lib-es/deposit/deposit.integration.test.d.ts +2 -0
  64. package/lib-es/deposit/deposit.integration.test.d.ts.map +1 -0
  65. package/lib-es/deposit/deposit.integration.test.js +20 -0
  66. package/lib-es/deposit/deposit.integration.test.js.map +1 -0
  67. package/lib-es/deposit/deposit.test.js +2 -2
  68. package/lib-es/deposit/deposit.test.js.map +1 -1
  69. package/lib-es/deposit/helper.d.ts +5 -5
  70. package/lib-es/deposit/helper.d.ts.map +1 -1
  71. package/lib-es/deposit/helper.js +45 -15
  72. package/lib-es/deposit/helper.js.map +1 -1
  73. package/lib-es/deposit/type.d.ts +4 -0
  74. package/lib-es/deposit/type.d.ts.map +1 -1
  75. package/lib-es/deposit/useGroupedCurrenciesByProvider.hook.d.ts +2 -6
  76. package/lib-es/deposit/useGroupedCurrenciesByProvider.hook.d.ts.map +1 -1
  77. package/lib-es/deposit/useGroupedCurrenciesByProvider.hook.js +13 -34
  78. package/lib-es/deposit/useGroupedCurrenciesByProvider.hook.js.map +1 -1
  79. package/lib-es/deviceSDK/hooks/useBatteryStatuses.d.ts +2 -2
  80. package/lib-es/deviceSDK/hooks/useBatteryStatuses.d.ts.map +1 -1
  81. package/lib-es/deviceSDK/hooks/useBatteryStatuses.js +4 -1
  82. package/lib-es/deviceSDK/hooks/useBatteryStatuses.js.map +1 -1
  83. package/lib-es/deviceSDK/hooks/useBatteryStatuses.test.d.ts +2 -0
  84. package/lib-es/deviceSDK/hooks/useBatteryStatuses.test.d.ts.map +1 -0
  85. package/lib-es/deviceSDK/hooks/useBatteryStatuses.test.js +18 -0
  86. package/lib-es/deviceSDK/hooks/useBatteryStatuses.test.js.map +1 -0
  87. package/lib-es/exchange/swap/hooks/index.d.ts +1 -1
  88. package/lib-es/exchange/swap/hooks/index.d.ts.map +1 -1
  89. package/lib-es/exchange/swap/hooks/index.js +1 -1
  90. package/lib-es/exchange/swap/hooks/index.js.map +1 -1
  91. package/lib-es/exchange/swap/hooks/live-app-migration/useIsCurrencySupported.d.ts +12 -0
  92. package/lib-es/exchange/swap/hooks/live-app-migration/useIsCurrencySupported.d.ts.map +1 -0
  93. package/lib-es/exchange/swap/hooks/live-app-migration/useIsCurrencySupported.js +14 -0
  94. package/lib-es/exchange/swap/hooks/live-app-migration/useIsCurrencySupported.js.map +1 -0
  95. package/lib-es/exchange/swap/hooks/{useIsSwapLiveApp.d.ts → live-app-migration/useIsSwapLiveApp.d.ts} +4 -1
  96. package/lib-es/exchange/swap/hooks/live-app-migration/useIsSwapLiveApp.d.ts.map +1 -0
  97. package/lib-es/exchange/swap/hooks/live-app-migration/useIsSwapLiveApp.js +23 -0
  98. package/lib-es/exchange/swap/hooks/live-app-migration/useIsSwapLiveApp.js.map +1 -0
  99. package/lib-es/exchange/swap/hooks/live-app-migration/useIsSwapLiveApp.test.d.ts.map +1 -0
  100. package/lib-es/exchange/swap/hooks/{useIsSwapLiveApp.test.js → live-app-migration/useIsSwapLiveApp.test.js} +12 -12
  101. package/lib-es/exchange/swap/hooks/live-app-migration/useIsSwapLiveApp.test.js.map +1 -0
  102. package/lib-es/exchange/swap/index.js +1 -1
  103. package/lib-es/exchange/swap/index.js.map +1 -1
  104. package/lib-es/families/cardano/hw-getAddress.js +1 -1
  105. package/lib-es/families/cardano/hw-getAddress.js.map +1 -1
  106. package/lib-es/families/cardano/js-synchronisation.js +1 -1
  107. package/lib-es/families/cardano/js-synchronisation.js.map +1 -1
  108. package/lib-es/families/cardano/logic.js +1 -1
  109. package/lib-es/families/cardano/logic.js.map +1 -1
  110. package/lib-es/families/cardano/specs.d.ts.map +1 -1
  111. package/lib-es/families/cardano/specs.js +31 -34
  112. package/lib-es/families/cardano/specs.js.map +1 -1
  113. package/lib-es/families/cardano/speculos-deviceActions.d.ts.map +1 -1
  114. package/lib-es/families/cardano/speculos-deviceActions.js +17 -18
  115. package/lib-es/families/cardano/speculos-deviceActions.js.map +1 -1
  116. package/lib-es/families/cardano/tx-helpers.js +1 -1
  117. package/lib-es/families/cardano/tx-helpers.js.map +1 -1
  118. package/lib-es/postOnboarding/hooks/useStartPostOnboardingCallback.d.ts.map +1 -1
  119. package/lib-es/postOnboarding/hooks/useStartPostOnboardingCallback.js +2 -1
  120. package/lib-es/postOnboarding/hooks/useStartPostOnboardingCallback.js.map +1 -1
  121. package/package.json +5 -5
  122. package/src/deposit/api.ts +0 -1
  123. package/src/deposit/deposit.integration.test.ts +11 -0
  124. package/src/deposit/deposit.test.ts +2 -3
  125. package/src/deposit/helper.ts +41 -19
  126. package/src/deposit/type.ts +5 -0
  127. package/src/deposit/useGroupedCurrenciesByProvider.hook.ts +15 -34
  128. package/src/deviceSDK/hooks/useBatteryStatuses.test.ts +9 -0
  129. package/src/deviceSDK/hooks/useBatteryStatuses.ts +7 -3
  130. package/src/exchange/swap/hooks/index.ts +1 -1
  131. package/src/exchange/swap/hooks/live-app-migration/useIsCurrencySupported.ts +32 -0
  132. package/src/exchange/swap/hooks/{useIsSwapLiveApp.test.ts → live-app-migration/useIsSwapLiveApp.test.ts} +12 -12
  133. package/src/exchange/swap/hooks/{useIsSwapLiveApp.ts → live-app-migration/useIsSwapLiveApp.ts} +14 -11
  134. package/src/exchange/swap/index.ts +1 -1
  135. package/src/families/cardano/hw-getAddress.ts +1 -1
  136. package/src/families/cardano/js-synchronisation.ts +1 -1
  137. package/src/families/cardano/logic.ts +1 -1
  138. package/src/families/cardano/specs.ts +42 -45
  139. package/src/families/cardano/speculos-deviceActions.ts +17 -18
  140. package/src/families/cardano/tx-helpers.ts +1 -1
  141. package/src/postOnboarding/hooks/useStartPostOnboardingCallback.ts +2 -1
  142. package/lib/exchange/swap/hooks/useIsSwapLiveApp.d.ts.map +0 -1
  143. package/lib/exchange/swap/hooks/useIsSwapLiveApp.js +0 -24
  144. package/lib/exchange/swap/hooks/useIsSwapLiveApp.js.map +0 -1
  145. package/lib/exchange/swap/hooks/useIsSwapLiveApp.test.d.ts.map +0 -1
  146. package/lib/exchange/swap/hooks/useIsSwapLiveApp.test.js.map +0 -1
  147. package/lib-es/exchange/swap/hooks/useIsSwapLiveApp.d.ts.map +0 -1
  148. package/lib-es/exchange/swap/hooks/useIsSwapLiveApp.js +0 -20
  149. package/lib-es/exchange/swap/hooks/useIsSwapLiveApp.js.map +0 -1
  150. package/lib-es/exchange/swap/hooks/useIsSwapLiveApp.test.d.ts.map +0 -1
  151. package/lib-es/exchange/swap/hooks/useIsSwapLiveApp.test.js.map +0 -1
  152. /package/lib/exchange/swap/hooks/{useIsSwapLiveApp.test.d.ts → live-app-migration/useIsSwapLiveApp.test.d.ts} +0 -0
  153. /package/lib-es/exchange/swap/hooks/{useIsSwapLiveApp.test.d.ts → live-app-migration/useIsSwapLiveApp.test.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/deposit/api.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAIrC,wBAAsB,eAAe,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAK9D"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/deposit/api.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAIrC,wBAAsB,eAAe,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAI9D"}
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/deposit/api.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,iDAA4C;AAC5C,6EAAqD;AAGrD,MAAM,SAAS,GAAG,IAAA,iBAAM,EAAC,iBAAiB,CAAC,CAAC;AAE5C,SAAsB,eAAe;;QACnC,MAAM,GAAG,GAAG,GAAG,SAAS,6BAA6B,CAAC;QACtD,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAA,iBAAO,EAAC,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;QAEvD,OAAO,IAAI,CAAC;IACd,CAAC;CAAA;AALD,0CAKC"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/deposit/api.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,iDAA4C;AAC5C,6EAAqD;AAGrD,MAAM,SAAS,GAAG,IAAA,iBAAM,EAAC,iBAAiB,CAAC,CAAC;AAE5C,SAAsB,eAAe;;QACnC,MAAM,GAAG,GAAG,GAAG,SAAS,6BAA6B,CAAC;QACtD,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAA,iBAAO,EAAC,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;QACvD,OAAO,IAAI,CAAC;IACd,CAAC;CAAA;AAJD,0CAIC"}
@@ -0,0 +1,2 @@
1
+ import "../__tests__/test-helpers/setup";
2
+ //# sourceMappingURL=deposit.integration.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deposit.integration.test.d.ts","sourceRoot":"","sources":["../../src/deposit/deposit.integration.test.ts"],"names":[],"mappings":"AAAA,OAAO,iCAAiC,CAAC"}
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ require("../__tests__/test-helpers/setup");
13
+ const react_hooks_1 = require("@testing-library/react-hooks");
14
+ const _1 = require(".");
15
+ test("list is starting with Bitcoin", () => __awaiter(void 0, void 0, void 0, function* () {
16
+ const { waitForNextUpdate, result } = (0, react_hooks_1.renderHook)(() => (0, _1.useGroupedCurrenciesByProvider)());
17
+ yield waitForNextUpdate();
18
+ expect(result.current.sortedCryptoCurrencies.slice(0, 1).map(o => o.id)).toMatchObject([
19
+ "bitcoin",
20
+ ]);
21
+ }));
22
+ //# sourceMappingURL=deposit.integration.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deposit.integration.test.js","sourceRoot":"","sources":["../../src/deposit/deposit.integration.test.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,2CAAyC;AACzC,8DAA0D;AAC1D,wBAAmD;AAEnD,IAAI,CAAC,+BAA+B,EAAE,GAAS,EAAE;IAC/C,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,GAAG,IAAA,wBAAU,EAAC,GAAG,EAAE,CAAC,IAAA,iCAA8B,GAAE,CAAC,CAAC;IACzF,MAAM,iBAAiB,EAAE,CAAC;IAC1B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;QACrF,SAAS;KACV,CAAC,CAAC;AACL,CAAC,CAAA,CAAC,CAAC"}
@@ -15,8 +15,8 @@ describe("Deposit logic", () => {
15
15
  });
16
16
  test("groupCurrenciesByProvider", () => {
17
17
  const currencies = MAPPED_ASSETS.map(asset => (0, index_1.getTokenById)(asset.ledgerId));
18
- const result = (0, helper_1.groupCurrenciesByProvider)(MAPPED_ASSETS, currencies);
19
- expect(result).toEqual([
18
+ const { currenciesByProvider } = (0, helper_1.groupCurrenciesByProvider)(MAPPED_ASSETS, currencies);
19
+ expect(currenciesByProvider).toEqual([
20
20
  {
21
21
  providerId: "tether",
22
22
  currenciesByNetwork: currencies,
@@ -1 +1 @@
1
- {"version":3,"file":"deposit.test.js","sourceRoot":"","sources":["../../src/deposit/deposit.test.ts"],"names":[],"mappings":";;AAAA,qCAA+F;AAC/F,iCAA8B;AAE9B,+CAAmD;AAEnD,MAAM,aAAa,GAAG,WAAqB,CAAC;AAE5C,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,IAAI,CAAC,oBAAoB,EAAE,GAAG,EAAE;QAC9B,MAAM,MAAM,GAAG,IAAA,2BAAkB,EAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;QAE3D,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,sBAAsB,EAAE,GAAG,EAAE;QAChC,MAAM,MAAM,GAAG,IAAA,6BAAoB,EAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QAC3D,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACrC,MAAM,UAAU,GAAG,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,IAAA,oBAAY,EAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC5E,MAAM,MAAM,GAAG,IAAA,kCAAyB,EAAC,aAAa,EAAE,UAAU,CAAC,CAAC;QACpE,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACrB;gBACE,UAAU,EAAE,QAAQ;gBACpB,mBAAmB,EAAE,UAAU;aAChC;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"deposit.test.js","sourceRoot":"","sources":["../../src/deposit/deposit.test.ts"],"names":[],"mappings":";;AAAA,qCAA+F;AAC/F,iCAA8B;AAE9B,+CAAmD;AAEnD,MAAM,aAAa,GAAG,WAAqB,CAAC;AAE5C,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,IAAI,CAAC,oBAAoB,EAAE,GAAG,EAAE;QAC9B,MAAM,MAAM,GAAG,IAAA,2BAAkB,EAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;QAC3D,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,sBAAsB,EAAE,GAAG,EAAE;QAChC,MAAM,MAAM,GAAG,IAAA,6BAAoB,EAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QAC3D,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACrC,MAAM,UAAU,GAAG,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,IAAA,oBAAY,EAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC5E,MAAM,EAAE,oBAAoB,EAAE,GAAG,IAAA,kCAAyB,EAAC,aAAa,EAAE,UAAU,CAAC,CAAC;QACtF,MAAM,CAAC,oBAAoB,CAAC,CAAC,OAAO,CAAC;YACnC;gBACE,UAAU,EAAE,QAAQ;gBACpB,mBAAmB,EAAE,UAAU;aAChC;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { CryptoOrTokenCurrency } from "@ledgerhq/types-cryptoassets";
2
- import { MappedAsset, CurrenciesByProviderId } from "./type";
3
- declare const groupCurrenciesByProvider: (assets: MappedAsset[], currenciesSupported: CryptoOrTokenCurrency[]) => CurrenciesByProviderId[];
4
- declare const searchByProviderId: (list: MappedAsset[], providerId: string) => MappedAsset[];
5
- declare const searchByNameOrTicker: (list: MappedAsset[], nameOrTicker: string) => MappedAsset[];
6
- export { searchByProviderId, searchByNameOrTicker, groupCurrenciesByProvider };
2
+ import { MappedAsset, GroupedCurrencies } from "./type";
3
+ export declare const loadCurrenciesByProvider: (coinsAndTokensSupported: CryptoOrTokenCurrency[]) => Promise<GroupedCurrencies>;
4
+ export declare const groupCurrenciesByProvider: (assets: MappedAsset[], sortedCurrencies: CryptoOrTokenCurrency[]) => GroupedCurrencies;
5
+ export declare const searchByProviderId: (list: MappedAsset[], providerId: string) => MappedAsset[];
6
+ export declare const searchByNameOrTicker: (list: MappedAsset[], nameOrTicker: string) => MappedAsset[];
7
7
  //# sourceMappingURL=helper.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../../src/deposit/helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,sBAAsB,EAAE,MAAM,QAAQ,CAAC;AAE7D,QAAA,MAAM,yBAAyB,WACrB,WAAW,EAAE,uBACA,qBAAqB,EAAE,6BAoB7C,CAAC;AAEF,QAAA,MAAM,kBAAkB,SAAU,WAAW,EAAE,cAAc,MAAM,kBACc,CAAC;AAElF,QAAA,MAAM,oBAAoB,SAAU,WAAW,EAAE,gBAAgB,MAAM,kBAKpE,CAAC;AAEJ,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,CAAC"}
1
+ {"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../../src/deposit/helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,WAAW,EAA0B,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAIhF,eAAO,MAAM,wBAAwB,4BACV,qBAAqB,EAAE,KAC/C,QAAQ,iBAAiB,CAM3B,CAAC;AAEF,eAAO,MAAM,yBAAyB,WAC5B,WAAW,EAAE,oBACH,qBAAqB,EAAE,KACxC,iBA+BF,CAAC;AAEF,eAAO,MAAM,kBAAkB,SAAU,WAAW,EAAE,cAAc,MAAM,kBACO,CAAC;AAElF,eAAO,MAAM,oBAAoB,SAAU,WAAW,EAAE,gBAAgB,MAAM,kBAK3E,CAAC"}
@@ -1,25 +1,57 @@
1
1
  "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
2
11
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.groupCurrenciesByProvider = exports.searchByNameOrTicker = exports.searchByProviderId = void 0;
4
- const groupCurrenciesByProvider = (assets, currenciesSupported) => {
5
- const assetsByLedgerId = {};
12
+ exports.searchByNameOrTicker = exports.searchByProviderId = exports.groupCurrenciesByProvider = exports.loadCurrenciesByProvider = void 0;
13
+ const currencies_1 = require("../currencies");
14
+ const api_1 = require("./api");
15
+ const loadCurrenciesByProvider = (coinsAndTokensSupported) => __awaiter(void 0, void 0, void 0, function* () {
16
+ const [sortedCurrenciesSupported, assets] = yield Promise.all([
17
+ (0, currencies_1.currenciesByMarketcap)(coinsAndTokensSupported),
18
+ (0, api_1.getMappedAssets)(),
19
+ ]);
20
+ return (0, exports.groupCurrenciesByProvider)(assets, sortedCurrenciesSupported);
21
+ });
22
+ exports.loadCurrenciesByProvider = loadCurrenciesByProvider;
23
+ const groupCurrenciesByProvider = (assets, sortedCurrencies) => {
24
+ const assetsByLedgerId = new Map();
6
25
  for (const asset of assets) {
7
- assetsByLedgerId[asset.ledgerId.toLowerCase()] = asset;
26
+ /// FIXME(LIVE-10508) drop usage of toLowerCase
27
+ assetsByLedgerId.set(asset.ledgerId.toLowerCase(), asset);
8
28
  }
9
- const assetsByProviderId = {};
10
- for (const ledgerCurrency of currenciesSupported) {
11
- const asset = assetsByLedgerId[ledgerCurrency.id.toLowerCase()];
29
+ const assetsByProviderId = new Map();
30
+ const sortedCryptoCurrencies = [];
31
+ // iterate over currencies by preserving their order
32
+ for (const ledgerCurrency of sortedCurrencies) {
33
+ /// FIXME(LIVE-10508) drop usage of toLowerCase
34
+ const asset = assetsByLedgerId.get(ledgerCurrency.id.toLowerCase());
12
35
  if (asset) {
13
- if (!assetsByProviderId[asset.providerId]) {
14
- assetsByProviderId[asset.providerId] = {
36
+ // we only yield the intersection of currencies and mapped assets
37
+ const existingEntry = assetsByProviderId.get(asset.providerId);
38
+ if (!existingEntry) {
39
+ assetsByProviderId.set(asset.providerId, {
15
40
  providerId: asset.providerId,
16
- currenciesByNetwork: [],
17
- };
41
+ currenciesByNetwork: [ledgerCurrency],
42
+ });
43
+ // in this case, the first currency of the provider is the one we want to display
44
+ sortedCryptoCurrencies.push(ledgerCurrency);
45
+ }
46
+ else {
47
+ existingEntry.currenciesByNetwork.push(ledgerCurrency);
18
48
  }
19
- assetsByProviderId[asset.providerId].currenciesByNetwork.push(ledgerCurrency);
20
49
  }
21
50
  }
22
- return Object.values(assetsByProviderId);
51
+ return {
52
+ currenciesByProvider: Array.from(assetsByProviderId.values()),
53
+ sortedCryptoCurrencies,
54
+ };
23
55
  };
24
56
  exports.groupCurrenciesByProvider = groupCurrenciesByProvider;
25
57
  const searchByProviderId = (list, providerId) => list.filter(elem => elem.providerId.toLowerCase() === providerId.toLowerCase());
@@ -1 +1 @@
1
- {"version":3,"file":"helper.js","sourceRoot":"","sources":["../../src/deposit/helper.ts"],"names":[],"mappings":";;;AAGA,MAAM,yBAAyB,GAAG,CAChC,MAAqB,EACrB,mBAA4C,EAC5C,EAAE;IACF,MAAM,gBAAgB,GAAgC,EAAE,CAAC;IACzD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC1B,gBAAgB,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,GAAG,KAAK,CAAC;KACxD;IACD,MAAM,kBAAkB,GAA2C,EAAE,CAAC;IACtE,KAAK,MAAM,cAAc,IAAI,mBAAmB,EAAE;QAChD,MAAM,KAAK,GAAG,gBAAgB,CAAC,cAAc,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;QAChE,IAAI,KAAK,EAAE;YACT,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE;gBACzC,kBAAkB,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG;oBACrC,UAAU,EAAE,KAAK,CAAC,UAAU;oBAC5B,mBAAmB,EAAE,EAAE;iBACxB,CAAC;aACH;YACD,kBAAkB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;SAC/E;KACF;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;AAC3C,CAAC,CAAC;AAYiD,8DAAyB;AAV5E,MAAM,kBAAkB,GAAG,CAAC,IAAmB,EAAE,UAAkB,EAAE,EAAE,CACrE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;AASzE,gDAAkB;AAP3B,MAAM,oBAAoB,GAAG,CAAC,IAAmB,EAAE,YAAoB,EAAE,EAAE,CACzE,IAAI,CAAC,MAAM,CACT,IAAI,CAAC,EAAE,CACL,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;IAC5D,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC,CACjE,CAAC;AAEyB,oDAAoB"}
1
+ {"version":3,"file":"helper.js","sourceRoot":"","sources":["../../src/deposit/helper.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,8CAAsD;AACtD,+BAAwC;AAEjC,MAAM,wBAAwB,GAAG,CACtC,uBAAgD,EACpB,EAAE;IAC9B,MAAM,CAAC,yBAAyB,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC5D,IAAA,kCAAqB,EAAC,uBAAuB,CAAC;QAC9C,IAAA,qBAAe,GAAE;KAClB,CAAC,CAAC;IACH,OAAO,IAAA,iCAAyB,EAAC,MAAM,EAAE,yBAAyB,CAAC,CAAC;AACtE,CAAC,CAAA,CAAC;AARW,QAAA,wBAAwB,4BAQnC;AAEK,MAAM,yBAAyB,GAAG,CACvC,MAAqB,EACrB,gBAAyC,EACtB,EAAE;IACrB,MAAM,gBAAgB,GAA6B,IAAI,GAAG,EAAE,CAAC;IAC7D,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC1B,+CAA+C;QAC/C,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,KAAK,CAAC,CAAC;KAC3D;IACD,MAAM,kBAAkB,GAAwC,IAAI,GAAG,EAAE,CAAC;IAC1E,MAAM,sBAAsB,GAA4B,EAAE,CAAC;IAC3D,oDAAoD;IACpD,KAAK,MAAM,cAAc,IAAI,gBAAgB,EAAE;QAC7C,+CAA+C;QAC/C,MAAM,KAAK,GAAG,gBAAgB,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;QACpE,IAAI,KAAK,EAAE;YACT,iEAAiE;YACjE,MAAM,aAAa,GAAG,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAC/D,IAAI,CAAC,aAAa,EAAE;gBAClB,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,EAAE;oBACvC,UAAU,EAAE,KAAK,CAAC,UAAU;oBAC5B,mBAAmB,EAAE,CAAC,cAAc,CAAC;iBACtC,CAAC,CAAC;gBACH,iFAAiF;gBACjF,sBAAsB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;aAC7C;iBAAM;gBACL,aAAa,CAAC,mBAAmB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;aACxD;SACF;KACF;IACD,OAAO;QACL,oBAAoB,EAAE,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,CAAC;QAC7D,sBAAsB;KACvB,CAAC;AACJ,CAAC,CAAC;AAlCW,QAAA,yBAAyB,6BAkCpC;AAEK,MAAM,kBAAkB,GAAG,CAAC,IAAmB,EAAE,UAAkB,EAAE,EAAE,CAC5E,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;AADrE,QAAA,kBAAkB,sBACmD;AAE3E,MAAM,oBAAoB,GAAG,CAAC,IAAmB,EAAE,YAAoB,EAAE,EAAE,CAChF,IAAI,CAAC,MAAM,CACT,IAAI,CAAC,EAAE,CACL,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;IAC5D,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC,CACjE,CAAC;AALS,QAAA,oBAAoB,wBAK7B"}
@@ -23,4 +23,8 @@ export type CurrenciesByProviderId = {
23
23
  currenciesByNetwork: CryptoOrTokenCurrency[];
24
24
  providerId: string;
25
25
  };
26
+ export type GroupedCurrencies = {
27
+ currenciesByProvider: CurrenciesByProviderId[];
28
+ sortedCryptoCurrencies: CryptoOrTokenCurrency[];
29
+ };
26
30
  //# sourceMappingURL=type.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../src/deposit/type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAErE,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,IAAI,CAAC;IACb,IAAI,EAAE;QACJ,GAAG,EAAE,MAAM,CAAC;QACZ,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;KAC9B,CAAC;IACF,cAAc,CAAC,EAAE,qBAAqB,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,WAAW,EAAE,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,mBAAmB,EAAE,qBAAqB,EAAE,CAAC;IAC7C,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC"}
1
+ {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../src/deposit/type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAErE,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,IAAI,CAAC;IACb,IAAI,EAAE;QACJ,GAAG,EAAE,MAAM,CAAC;QACZ,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;KAC9B,CAAC;IACF,cAAc,CAAC,EAAE,qBAAqB,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,WAAW,EAAE,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,mBAAmB,EAAE,qBAAqB,EAAE,CAAC;IAC7C,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,oBAAoB,EAAE,sBAAsB,EAAE,CAAC;IAC/C,sBAAsB,EAAE,qBAAqB,EAAE,CAAC;CACjD,CAAC"}
@@ -1,7 +1,3 @@
1
- import { CurrenciesByProviderId } from "./type";
2
- import { CryptoOrTokenCurrency } from "@ledgerhq/types-cryptoassets";
3
- export declare const useGroupedCurrenciesByProvider: () => {
4
- currenciesByProvider: CurrenciesByProviderId[];
5
- sortedCryptoCurrencies: CryptoOrTokenCurrency[];
6
- };
1
+ import { GroupedCurrencies } from "./type";
2
+ export declare const useGroupedCurrenciesByProvider: () => GroupedCurrencies;
7
3
  //# sourceMappingURL=useGroupedCurrenciesByProvider.hook.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useGroupedCurrenciesByProvider.hook.d.ts","sourceRoot":"","sources":["../../src/deposit/useGroupedCurrenciesByProvider.hook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,QAAQ,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAarE,eAAO,MAAM,8BAA8B;;;CAiC1C,CAAC"}
1
+ {"version":3,"file":"useGroupedCurrenciesByProvider.hook.d.ts","sourceRoot":"","sources":["../../src/deposit/useGroupedCurrenciesByProvider.hook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAc3C,eAAO,MAAM,8BAA8B,yBAc1C,CAAC"}
@@ -1,44 +1,23 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.useGroupedCurrenciesByProvider = void 0;
13
4
  const react_1 = require("react");
14
5
  const currencies_1 = require("../currencies");
15
- const api_1 = require("./api");
16
6
  const helper_1 = require("./helper");
7
+ // FIXME(LIVE-10505): bad performane & shared utility to move to coin-framework
17
8
  const listSupportedTokens = () => (0, currencies_1.listTokens)().filter(t => (0, currencies_1.isCurrencySupported)(t.parentCurrency));
9
+ const initialResult = {
10
+ sortedCryptoCurrencies: [],
11
+ currenciesByProvider: [],
12
+ };
18
13
  const useGroupedCurrenciesByProvider = () => {
19
- const [currencies, setCurrencies] = (0, react_1.useState)([]);
20
- const [currenciesByProvider, setCurrenciesByProvider] = (0, react_1.useState)([]);
21
- // Get Supported Currencies and sort them by marketcap
14
+ const [result, setResult] = (0, react_1.useState)(initialResult);
22
15
  const coinsAndTokensSupported = (0, react_1.useMemo)(() => (0, currencies_1.listSupportedCurrencies)().concat(listSupportedTokens()), []);
23
- // Get mapped assets filtered by supported currencies and grouped by provider id
24
- const getCurrenciesAndGroupThemByProvider = (0, react_1.useCallback)(() => __awaiter(void 0, void 0, void 0, function* () {
25
- const [sortedCurrenciesSupported, assets] = yield Promise.all([
26
- (0, currencies_1.currenciesByMarketcap)(coinsAndTokensSupported),
27
- (0, api_1.getMappedAssets)(),
28
- ]);
29
- const currenciesByProvider = (0, helper_1.groupCurrenciesByProvider)(assets, sortedCurrenciesSupported);
30
- setCurrenciesByProvider(currenciesByProvider);
31
- setCurrencies(currenciesByProvider
32
- .filter(value => value.currenciesByNetwork && value.currenciesByNetwork.length > 0)
33
- .map(value => value.currenciesByNetwork[0]));
34
- }), [coinsAndTokensSupported]);
16
+ // Get mapped assets filtered by supported & sorted currencies, grouped by provider id
35
17
  (0, react_1.useEffect)(() => {
36
- getCurrenciesAndGroupThemByProvider();
37
- }, [getCurrenciesAndGroupThemByProvider]);
38
- return {
39
- currenciesByProvider,
40
- sortedCryptoCurrencies: currencies,
41
- };
18
+ (0, helper_1.loadCurrenciesByProvider)(coinsAndTokensSupported).then(setResult);
19
+ }, [coinsAndTokensSupported]);
20
+ return result;
42
21
  };
43
22
  exports.useGroupedCurrenciesByProvider = useGroupedCurrenciesByProvider;
44
23
  //# sourceMappingURL=useGroupedCurrenciesByProvider.hook.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useGroupedCurrenciesByProvider.hook.js","sourceRoot":"","sources":["../../src/deposit/useGroupedCurrenciesByProvider.hook.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,iCAAkE;AAClE,8CAKuB;AACvB,+BAAwC;AACxC,qCAAqD;AAErD,MAAM,mBAAmB,GAAG,GAAG,EAAE,CAAC,IAAA,uBAAU,GAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,IAAA,gCAAmB,EAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;AAE3F,MAAM,8BAA8B,GAAG,GAAG,EAAE;IACjD,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,IAAA,gBAAQ,EAA0B,EAAE,CAAC,CAAC;IAC1E,MAAM,CAAC,oBAAoB,EAAE,uBAAuB,CAAC,GAAG,IAAA,gBAAQ,EAA2B,EAAE,CAAC,CAAC;IAE/F,sDAAsD;IACtD,MAAM,uBAAuB,GAAG,IAAA,eAAO,EACrC,GAAG,EAAE,CAAE,IAAA,oCAAuB,GAA8B,CAAC,MAAM,CAAC,mBAAmB,EAAE,CAAC,EAC1F,EAAE,CACH,CAAC;IAEF,gFAAgF;IAChF,MAAM,mCAAmC,GAAG,IAAA,mBAAW,EAAC,GAAS,EAAE;QACjE,MAAM,CAAC,yBAAyB,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC5D,IAAA,kCAAqB,EAAC,uBAAuB,CAAC;YAC9C,IAAA,qBAAe,GAAE;SAClB,CAAC,CAAC;QACH,MAAM,oBAAoB,GAAG,IAAA,kCAAyB,EAAC,MAAM,EAAE,yBAAyB,CAAC,CAAC;QAC1F,uBAAuB,CAAC,oBAAoB,CAAC,CAAC;QAC9C,aAAa,CACX,oBAAoB;aACjB,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,mBAAmB,IAAI,KAAK,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,CAAC;aAClF,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAC9C,CAAC;IACJ,CAAC,CAAA,EAAE,CAAC,uBAAuB,CAAC,CAAC,CAAC;IAE9B,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,mCAAmC,EAAE,CAAC;IACxC,CAAC,EAAE,CAAC,mCAAmC,CAAC,CAAC,CAAC;IAE1C,OAAO;QACL,oBAAoB;QACpB,sBAAsB,EAAE,UAAU;KACnC,CAAC;AACJ,CAAC,CAAC;AAjCW,QAAA,8BAA8B,kCAiCzC"}
1
+ {"version":3,"file":"useGroupedCurrenciesByProvider.hook.js","sourceRoot":"","sources":["../../src/deposit/useGroupedCurrenciesByProvider.hook.ts"],"names":[],"mappings":";;;AAEA,iCAAqD;AACrD,8CAAyF;AACzF,qCAAoD;AAEpD,+EAA+E;AAC/E,MAAM,mBAAmB,GAAG,GAAG,EAAE,CAAC,IAAA,uBAAU,GAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,IAAA,gCAAmB,EAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;AAElG,MAAM,aAAa,GAAsB;IACvC,sBAAsB,EAAE,EAAE;IAC1B,oBAAoB,EAAE,EAAE;CACzB,CAAC;AAEK,MAAM,8BAA8B,GAAG,GAAG,EAAE;IACjD,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAA,gBAAQ,EAAC,aAAa,CAAC,CAAC;IAEpD,MAAM,uBAAuB,GAAG,IAAA,eAAO,EACrC,GAAG,EAAE,CAAE,IAAA,oCAAuB,GAA8B,CAAC,MAAM,CAAC,mBAAmB,EAAE,CAAC,EAC1F,EAAE,CACH,CAAC;IAEF,sFAAsF;IACtF,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAA,iCAAwB,EAAC,uBAAuB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACpE,CAAC,EAAE,CAAC,uBAAuB,CAAC,CAAC,CAAC;IAE9B,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAdW,QAAA,8BAA8B,kCAczC"}
@@ -1,6 +1,6 @@
1
1
  import { GetBatteryStatusesActionState } from "../actions/getBatteryStatuses";
2
2
  import { BatteryStatusTypes } from "../../hw/getBatteryStatus";
3
- export type UseBateryStatusesArgs = {
3
+ export type UseBatteryStatusesArgs = {
4
4
  deviceId?: string;
5
5
  statuses: BatteryStatusTypes[];
6
6
  };
@@ -16,7 +16,7 @@ export type UseBateryStatusesArgs = {
16
16
  * - a boolean that informs if the request is complete
17
17
  * - a function to trigger an retrigger the device action
18
18
  */
19
- export declare const useBatteryStatuses: ({ deviceId, statuses, }: UseBateryStatusesArgs) => {
19
+ export declare const useBatteryStatuses: ({ deviceId, statuses, }: UseBatteryStatusesArgs) => {
20
20
  batteryStatusesState: GetBatteryStatusesActionState;
21
21
  requestCompleted: boolean;
22
22
  triggerRequest: () => void;
@@ -1 +1 @@
1
- {"version":3,"file":"useBatteryStatuses.d.ts","sourceRoot":"","sources":["../../../src/deviceSDK/hooks/useBatteryStatuses.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,6BAA6B,EAE9B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAG/D,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,kBAAkB,EAAE,CAAC;CAChC,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,kBAAkB,4BAG5B,qBAAqB;0BACA,6BAA6B;sBACjC,OAAO;oBACT,MAAM,IAAI;mBACX,MAAM,IAAI;kBACX,OAAO;0BACC,MAAM;CAiE7B,CAAC"}
1
+ {"version":3,"file":"useBatteryStatuses.d.ts","sourceRoot":"","sources":["../../../src/deviceSDK/hooks/useBatteryStatuses.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,6BAA6B,EAE9B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAG/D,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,kBAAkB,EAAE,CAAC;CAChC,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,kBAAkB,4BAG5B,sBAAsB;0BACD,6BAA6B;sBACjC,OAAO;oBACT,MAAM,IAAI;mBACX,MAAM,IAAI;kBACX,OAAO;0BACC,MAAM;CAqE7B,CAAC"}
@@ -21,7 +21,10 @@ const useBatteryStatuses = ({ deviceId, statuses, }) => {
21
21
  const [batteryStatusesState, setBatteryStatusesState] = (0, react_1.useState)(getBatteryStatuses_1.initialState);
22
22
  const [requestCompleted, setRequestCompleted] = (0, react_1.useState)(false);
23
23
  const [nonce, setNonce] = (0, react_1.useState)(0);
24
- const [cancelRequest, setCancelRequest] = (0, react_1.useState)(() => { });
24
+ // when passing a function to useState, the function is used as an initializer,
25
+ // i.e its return value will be the initial state value,
26
+ // cf. https://react.dev/reference/react/useState#parameters
27
+ const [cancelRequest, setCancelRequest] = (0, react_1.useState)(() => () => { });
25
28
  const [isBatteryLow, setIsBatteryLow] = (0, react_1.useState)(false);
26
29
  const lowBatteryPercentage = (0, env_react_1.useEnv)("LOW_BATTERY_PERCENTAGE");
27
30
  (0, react_1.useEffect)(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"useBatteryStatuses.js","sourceRoot":"","sources":["../../../src/deviceSDK/hooks/useBatteryStatuses.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useBatteryStatuses.js","sourceRoot":"","sources":["../../../src/deviceSDK/hooks/useBatteryStatuses.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=useBatteryStatuses.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useBatteryStatuses.test.d.ts","sourceRoot":"","sources":["../../../src/deviceSDK/hooks/useBatteryStatuses.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ const react_hooks_1 = require("@testing-library/react-hooks");
13
+ const useBatteryStatuses_1 = require("./useBatteryStatuses");
14
+ describe("useBatteryStatuses", () => {
15
+ it("should return an initial cancelRequest method that is callable", () => __awaiter(void 0, void 0, void 0, function* () {
16
+ const { result } = (0, react_hooks_1.renderHook)(() => (0, useBatteryStatuses_1.useBatteryStatuses)({ statuses: [] }));
17
+ expect(() => result.current.cancelRequest()).not.toThrow();
18
+ }));
19
+ });
20
+ //# sourceMappingURL=useBatteryStatuses.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useBatteryStatuses.test.js","sourceRoot":"","sources":["../../../src/deviceSDK/hooks/useBatteryStatuses.test.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,8DAA0D;AAC1D,6DAA0D;AAE1D,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAClC,EAAE,CAAC,gEAAgE,EAAE,GAAS,EAAE;QAC9E,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,wBAAU,EAAC,GAAG,EAAE,CAAC,IAAA,uCAAkB,EAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QAC1E,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;IAC7D,CAAC,CAAA,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -8,5 +8,5 @@ export * from "./useToState";
8
8
  export * from "./usePageState";
9
9
  export * from "./v5";
10
10
  export * from "./useSwapableAccounts";
11
- export * from "./useIsSwapLiveApp";
11
+ export * from "./live-app-migration/useIsSwapLiveApp";
12
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/exchange/swap/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,MAAM,CAAC;AACrB,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/exchange/swap/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,MAAM,CAAC;AACrB,cAAc,uBAAuB,CAAC;AACtC,cAAc,uCAAuC,CAAC"}
@@ -24,5 +24,5 @@ __exportStar(require("./useToState"), exports);
24
24
  __exportStar(require("./usePageState"), exports);
25
25
  __exportStar(require("./v5"), exports);
26
26
  __exportStar(require("./useSwapableAccounts"), exports);
27
- __exportStar(require("./useIsSwapLiveApp"), exports);
27
+ __exportStar(require("./live-app-migration/useIsSwapLiveApp"), exports);
28
28
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/exchange/swap/hooks/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAwC;AACxC,2DAAyC;AACzC,4DAA0C;AAC1C,uDAAqC;AACrC,uDAAqC;AACrC,iDAA+B;AAC/B,+CAA6B;AAC7B,iDAA+B;AAC/B,uCAAqB;AACrB,wDAAsC;AACtC,qDAAmC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/exchange/swap/hooks/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAwC;AACxC,2DAAyC;AACzC,4DAA0C;AAC1C,uDAAqC;AACrC,uDAAqC;AACrC,iDAA+B;AAC/B,+CAA6B;AAC7B,iDAA+B;AAC/B,uCAAqB;AACrB,wDAAsC;AACtC,wEAAsD"}
@@ -0,0 +1,12 @@
1
+ import { CryptoOrTokenCurrency } from "@ledgerhq/types-cryptoassets";
2
+ type UseIsCurrencySupportedProps = {
3
+ currencyFrom?: CryptoOrTokenCurrency;
4
+ params: {
5
+ families: string;
6
+ currencies: Array<unknown>;
7
+ };
8
+ defaultValue: boolean;
9
+ };
10
+ export declare function useIsCurrencySupported({ currencyFrom, params, defaultValue, }: UseIsCurrencySupportedProps): boolean;
11
+ export {};
12
+ //# sourceMappingURL=useIsCurrencySupported.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useIsCurrencySupported.d.ts","sourceRoot":"","sources":["../../../../../src/exchange/swap/hooks/live-app-migration/useIsCurrencySupported.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAGrE,KAAK,2BAA2B,GAAG;IACjC,YAAY,CAAC,EAAE,qBAAqB,CAAC;IACrC,MAAM,EAAE;QACN,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;KAC5B,CAAC;IACF,YAAY,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,wBAAgB,sBAAsB,CAAC,EACrC,YAAY,EACZ,MAAM,EACN,YAAY,GACb,EAAE,2BAA2B,WAe7B"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useIsCurrencySupported = void 0;
4
+ const currencies_1 = require("../../../../currencies");
5
+ function useIsCurrencySupported({ currencyFrom, params, defaultValue, }) {
6
+ const { families, currencies } = params || {};
7
+ if (!currencyFrom || (!families && !currencies)) {
8
+ return defaultValue;
9
+ }
10
+ const familyOfCurrencyFrom = (0, currencies_1.isCryptoCurrency)(currencyFrom)
11
+ ? currencyFrom.family
12
+ : currencyFrom.parentCurrency.family;
13
+ const familyIsEnabled = (families === null || families === void 0 ? void 0 : families.length) ? families.includes(familyOfCurrencyFrom) : true;
14
+ const currencyIsEnabled = (currencies === null || currencies === void 0 ? void 0 : currencies.length) ? currencies.includes(currencyFrom.id) : true;
15
+ return familyIsEnabled || currencyIsEnabled;
16
+ }
17
+ exports.useIsCurrencySupported = useIsCurrencySupported;
18
+ //# sourceMappingURL=useIsCurrencySupported.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useIsCurrencySupported.js","sourceRoot":"","sources":["../../../../../src/exchange/swap/hooks/live-app-migration/useIsCurrencySupported.ts"],"names":[],"mappings":";;;AACA,uDAA0D;AAW1D,SAAgB,sBAAsB,CAAC,EACrC,YAAY,EACZ,MAAM,EACN,YAAY,GACgB;IAC5B,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,EAAE,CAAC;IAE9C,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,UAAU,CAAC,EAAE;QAC/C,OAAO,YAAY,CAAC;KACrB;IAED,MAAM,oBAAoB,GAAG,IAAA,6BAAgB,EAAC,YAAY,CAAC;QACzD,CAAC,CAAC,YAAY,CAAC,MAAM;QACrB,CAAC,CAAC,YAAY,CAAC,cAAc,CAAC,MAAM,CAAC;IAEvC,MAAM,eAAe,GAAG,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,MAAM,EAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC1F,MAAM,iBAAiB,GAAG,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,MAAM,EAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAE3F,OAAO,eAAe,IAAI,iBAAiB,CAAC;AAC9C,CAAC;AAnBD,wDAmBC"}
@@ -3,6 +3,9 @@ type Props = {
3
3
  currencyFrom?: CryptoOrTokenCurrency;
4
4
  swapWebManifestId: string;
5
5
  };
6
- export declare function useIsSwapLiveApp({ currencyFrom, swapWebManifestId }: Props): any;
6
+ export declare function useIsSwapLiveApp({ currencyFrom, swapWebManifestId }: Props): {
7
+ enabled: boolean;
8
+ onLiveAppCrashed: () => void;
9
+ };
7
10
  export {};
8
11
  //# sourceMappingURL=useIsSwapLiveApp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useIsSwapLiveApp.d.ts","sourceRoot":"","sources":["../../../../../src/exchange/swap/hooks/live-app-migration/useIsSwapLiveApp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAKrE,KAAK,KAAK,GAAG;IACX,YAAY,CAAC,EAAE,qBAAqB,CAAC;IACrC,iBAAiB,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,EAAE,YAAY,EAAE,iBAAiB,EAAE,EAAE,KAAK;;;EAyB1E"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useIsSwapLiveApp = void 0;
4
+ const index_1 = require("@ledgerhq/live-config/featureFlags/index");
5
+ const useIsCurrencySupported_1 = require("./useIsCurrencySupported");
6
+ const react_1 = require("react");
7
+ function useIsSwapLiveApp({ currencyFrom, swapWebManifestId }) {
8
+ const ptxSwapLiveApp = (0, index_1.useFeature)("ptxSwapLiveApp");
9
+ const flagConfig = ptxSwapLiveApp && ptxSwapLiveApp[swapWebManifestId]
10
+ ? ptxSwapLiveApp[swapWebManifestId]
11
+ : ptxSwapLiveApp;
12
+ const { enabled, params } = flagConfig || {};
13
+ const isCurrencySupported = (0, useIsCurrencySupported_1.useIsCurrencySupported)({
14
+ params,
15
+ currencyFrom,
16
+ defaultValue: enabled,
17
+ });
18
+ const [crashed, setHasCrashed] = (0, react_1.useState)(false);
19
+ const onLiveAppCrashed = (0, react_1.useCallback)(() => setHasCrashed(true), []);
20
+ const liveAppAvailable = Boolean(enabled && isCurrencySupported && !crashed);
21
+ return {
22
+ enabled: liveAppAvailable,
23
+ onLiveAppCrashed,
24
+ };
25
+ }
26
+ exports.useIsSwapLiveApp = useIsSwapLiveApp;
27
+ //# sourceMappingURL=useIsSwapLiveApp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useIsSwapLiveApp.js","sourceRoot":"","sources":["../../../../../src/exchange/swap/hooks/live-app-migration/useIsSwapLiveApp.ts"],"names":[],"mappings":";;;AACA,oEAAsE;AACtE,qEAAkE;AAClE,iCAA8C;AAO9C,SAAgB,gBAAgB,CAAC,EAAE,YAAY,EAAE,iBAAiB,EAAS;IACzE,MAAM,cAAc,GAAG,IAAA,kBAAU,EAAC,gBAAgB,CAAC,CAAC;IAEpD,MAAM,UAAU,GACd,cAAc,IAAI,cAAc,CAAC,iBAAiB,CAAC;QACjD,CAAC,CAAC,cAAc,CAAC,iBAAiB,CAAC;QACnC,CAAC,CAAC,cAAc,CAAC;IAErB,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,UAAU,IAAI,EAAE,CAAC;IAE7C,MAAM,mBAAmB,GAAG,IAAA,+CAAsB,EAAC;QACjD,MAAM;QACN,YAAY;QACZ,YAAY,EAAE,OAAO;KACtB,CAAC,CAAC;IAEH,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC;IACjD,MAAM,gBAAgB,GAAG,IAAA,mBAAW,EAAC,GAAG,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAEpE,MAAM,gBAAgB,GAAG,OAAO,CAAC,OAAO,IAAI,mBAAmB,IAAI,CAAC,OAAO,CAAC,CAAC;IAE7E,OAAO;QACL,OAAO,EAAE,gBAAgB;QACzB,gBAAgB;KACjB,CAAC;AACJ,CAAC;AAzBD,4CAyBC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useIsSwapLiveApp.test.d.ts","sourceRoot":"","sources":["../../../../../src/exchange/swap/hooks/live-app-migration/useIsSwapLiveApp.test.ts"],"names":[],"mappings":""}
@@ -16,7 +16,7 @@ describe("useIsSwapLiveApp hook", () => {
16
16
  it("returns the enabled flag when currencyFrom is not defined", () => {
17
17
  useMockFeature.mockReturnValue({ enabled: true });
18
18
  const { result } = (0, react_hooks_1.renderHook)(() => (0, useIsSwapLiveApp_1.useIsSwapLiveApp)({ currencyFrom: undefined, swapWebManifestId: "swap-live-app-demo-0" }));
19
- expect(result.current).toBe(true);
19
+ expect(result.current.enabled).toBe(true);
20
20
  });
21
21
  it("returns the enabled flag when families and currencies are not defined", () => {
22
22
  useMockFeature.mockReturnValue({
@@ -24,7 +24,7 @@ describe("useIsSwapLiveApp hook", () => {
24
24
  params: { families: undefined, currencies: undefined },
25
25
  });
26
26
  const { result } = (0, react_hooks_1.renderHook)(() => (0, useIsSwapLiveApp_1.useIsSwapLiveApp)({ currencyFrom: bitcoin, swapWebManifestId: "swap-live-app-demo-0" }));
27
- expect(result.current).toBe(true);
27
+ expect(result.current.enabled).toBe(true);
28
28
  });
29
29
  it("returns true when currencyFrom family is in families array and feature is enabled", () => {
30
30
  useMockFeature.mockReturnValue({
@@ -32,7 +32,7 @@ describe("useIsSwapLiveApp hook", () => {
32
32
  params: { families: ["bitcoin"], currencies: [] },
33
33
  });
34
34
  const { result } = (0, react_hooks_1.renderHook)(() => (0, useIsSwapLiveApp_1.useIsSwapLiveApp)({ currencyFrom: bitcoin, swapWebManifestId: "swap-live-app-demo-0" }));
35
- expect(result.current).toBe(true);
35
+ expect(result.current.enabled).toBe(true);
36
36
  });
37
37
  it("returns true when currencyFrom is in currencies array and feature is enabled", () => {
38
38
  useMockFeature.mockReturnValue({
@@ -40,7 +40,7 @@ describe("useIsSwapLiveApp hook", () => {
40
40
  params: { families: [], currencies: ["bitcoin"] },
41
41
  });
42
42
  const { result } = (0, react_hooks_1.renderHook)(() => (0, useIsSwapLiveApp_1.useIsSwapLiveApp)({ currencyFrom: bitcoin, swapWebManifestId: "swap-live-app-demo-0" }));
43
- expect(result.current).toBe(true);
43
+ expect(result.current.enabled).toBe(true);
44
44
  });
45
45
  it("returns false when currencyFrom family is not in families, currencyFrom is not in currencies, and feature is disabled", () => {
46
46
  useMockFeature.mockReturnValue({
@@ -48,7 +48,7 @@ describe("useIsSwapLiveApp hook", () => {
48
48
  params: { families: ["ethereum"], currencies: ["ethereum"] },
49
49
  });
50
50
  const { result } = (0, react_hooks_1.renderHook)(() => (0, useIsSwapLiveApp_1.useIsSwapLiveApp)({ currencyFrom: bitcoin, swapWebManifestId: "swap-live-app-demo-0" }));
51
- expect(result.current).toBe(false);
51
+ expect(result.current.enabled).toBe(false);
52
52
  });
53
53
  it("returns enabled flag if both families and currencies are empty arrays", () => {
54
54
  useMockFeature.mockReturnValue({
@@ -56,14 +56,14 @@ describe("useIsSwapLiveApp hook", () => {
56
56
  params: { families: [], currencies: [] },
57
57
  });
58
58
  const { result } = (0, react_hooks_1.renderHook)(() => (0, useIsSwapLiveApp_1.useIsSwapLiveApp)({ currencyFrom: bitcoin, swapWebManifestId: "swap-live-app-demo-0" }));
59
- expect(result.current).toBe(true);
59
+ expect(result.current.enabled).toBe(true);
60
60
  });
61
61
  });
62
62
  describe("flag with nested manifest properties", () => {
63
63
  it("returns the enabled flag when currencyFrom is not defined", () => {
64
64
  useMockFeature.mockReturnValue({ enabled: true, "swap-live-app-demo-0": { enabled: true } });
65
65
  const { result } = (0, react_hooks_1.renderHook)(() => (0, useIsSwapLiveApp_1.useIsSwapLiveApp)({ currencyFrom: undefined, swapWebManifestId: "swap-live-app-demo-0" }));
66
- expect(result.current).toBe(true);
66
+ expect(result.current.enabled).toBe(true);
67
67
  });
68
68
  it("returns the enabled flag when families and currencies are not defined", () => {
69
69
  useMockFeature.mockReturnValue({
@@ -72,7 +72,7 @@ describe("useIsSwapLiveApp hook", () => {
72
72
  "swap-live-app-demo-0": { enabled: true },
73
73
  });
74
74
  const { result } = (0, react_hooks_1.renderHook)(() => (0, useIsSwapLiveApp_1.useIsSwapLiveApp)({ currencyFrom: bitcoin, swapWebManifestId: "swap-live-app-demo-0" }));
75
- expect(result.current).toBe(true);
75
+ expect(result.current.enabled).toBe(true);
76
76
  });
77
77
  it("returns true when currencyFrom family is in families array and feature is enabled", () => {
78
78
  useMockFeature.mockReturnValue({
@@ -83,7 +83,7 @@ describe("useIsSwapLiveApp hook", () => {
83
83
  },
84
84
  });
85
85
  const { result } = (0, react_hooks_1.renderHook)(() => (0, useIsSwapLiveApp_1.useIsSwapLiveApp)({ currencyFrom: bitcoin, swapWebManifestId: "swap-live-app-demo-0" }));
86
- expect(result.current).toBe(true);
86
+ expect(result.current.enabled).toBe(true);
87
87
  });
88
88
  it("returns true when currencyFrom is in currencies array and feature is enabled", () => {
89
89
  useMockFeature.mockReturnValue({
@@ -94,7 +94,7 @@ describe("useIsSwapLiveApp hook", () => {
94
94
  },
95
95
  });
96
96
  const { result } = (0, react_hooks_1.renderHook)(() => (0, useIsSwapLiveApp_1.useIsSwapLiveApp)({ currencyFrom: bitcoin, swapWebManifestId: "swap-live-app-demo-0" }));
97
- expect(result.current).toBe(true);
97
+ expect(result.current.enabled).toBe(true);
98
98
  });
99
99
  it("returns false when currencyFrom family is not in families, currencyFrom is not in currencies, and feature is disabled", () => {
100
100
  useMockFeature.mockReturnValue({
@@ -105,7 +105,7 @@ describe("useIsSwapLiveApp hook", () => {
105
105
  },
106
106
  });
107
107
  const { result } = (0, react_hooks_1.renderHook)(() => (0, useIsSwapLiveApp_1.useIsSwapLiveApp)({ currencyFrom: bitcoin, swapWebManifestId: "swap-live-app-demo-0" }));
108
- expect(result.current).toBe(false);
108
+ expect(result.current.enabled).toBe(false);
109
109
  });
110
110
  it("returns enabled flag if both families and currencies are empty arrays", () => {
111
111
  useMockFeature.mockReturnValue({
@@ -116,7 +116,7 @@ describe("useIsSwapLiveApp hook", () => {
116
116
  },
117
117
  });
118
118
  const { result } = (0, react_hooks_1.renderHook)(() => (0, useIsSwapLiveApp_1.useIsSwapLiveApp)({ currencyFrom: bitcoin, swapWebManifestId: "swap-live-app-demo-0" }));
119
- expect(result.current).toBe(true);
119
+ expect(result.current.enabled).toBe(true);
120
120
  });
121
121
  });
122
122
  });