react-native-unit-components 1.0.1 → 1.0.3

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 (218) hide show
  1. package/README.md +75 -6
  2. package/android/src/main/AndroidManifest.xml +12 -1
  3. package/android/src/main/java/com/unitreactnativecomponents/UnitReactNativeComponentsPackage.kt +2 -1
  4. package/android/src/main/java/com/unitreactnativecomponents/sharepdf/UNSharePDF.kt +75 -0
  5. package/android/src/main/res/layout/un_black_add_to_googlepay_button.xml +2 -2
  6. package/android/src/main/res/layout/un_view_google_push_provisioning.xml +1 -13
  7. package/android/src/main/res/layout/un_white_add_to_googlepay_button.xml +1 -1
  8. package/android/src/main/res/layout/un_white_add_to_googlepay_button_no_shadow.xml +1 -1
  9. package/android/src/main/res/xml/file_paths.xml +4 -0
  10. package/ios/UnitReactNativeComponentsViewManager.m +0 -1
  11. package/ios/UnitReactNativeComponentsViewManager.swift +6 -2
  12. package/lib/commonjs/components/UNAccountComponent/UNAccountComponent.js +103 -0
  13. package/lib/commonjs/components/UNAccountComponent/UNAccountComponent.js.map +1 -0
  14. package/lib/commonjs/components/UNAccountComponent/UNAccountComponent.utils.js +47 -0
  15. package/lib/commonjs/components/UNAccountComponent/UNAccountComponent.utils.js.map +1 -0
  16. package/lib/commonjs/components/UNActivityComponent/UNActivityComponent.js +63 -8
  17. package/lib/commonjs/components/UNActivityComponent/UNActivityComponent.js.map +1 -1
  18. package/lib/commonjs/components/UNActivityComponent/UNActivityComponent.utils.js +18 -3
  19. package/lib/commonjs/components/UNActivityComponent/UNActivityComponent.utils.js.map +1 -1
  20. package/lib/commonjs/components/UNBookPaymentComponent/UNBookPaymentComponent.js +56 -13
  21. package/lib/commonjs/components/UNBookPaymentComponent/UNBookPaymentComponent.js.map +1 -1
  22. package/lib/commonjs/components/UNBookPaymentComponent/UNBookPaymentComponent.utils.js +4 -3
  23. package/lib/commonjs/components/UNBookPaymentComponent/UNBookPaymentComponent.utils.js.map +1 -1
  24. package/lib/commonjs/components/UNBottomSheetComponent/UNBottomSheetComponent.constants.js +3 -3
  25. package/lib/commonjs/components/UNBottomSheetComponent/UNBottomSheetComponent.constants.js.map +1 -1
  26. package/lib/commonjs/components/UNBottomSheetComponent/UNBottomSheetComponent.js +114 -46
  27. package/lib/commonjs/components/UNBottomSheetComponent/UNBottomSheetComponent.js.map +1 -1
  28. package/lib/commonjs/components/UNBottomSheetComponent/UNBottomSheetComponent.utils.js +4 -8
  29. package/lib/commonjs/components/UNBottomSheetComponent/UNBottomSheetComponent.utils.js.map +1 -1
  30. package/lib/commonjs/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.js +95 -0
  31. package/lib/commonjs/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.js.map +1 -0
  32. package/lib/commonjs/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.styles.js +31 -0
  33. package/lib/commonjs/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.styles.js.map +1 -0
  34. package/lib/commonjs/components/UNCardComponent/UNCardComponent.js +65 -7
  35. package/lib/commonjs/components/UNCardComponent/UNCardComponent.js.map +1 -1
  36. package/lib/commonjs/components/UNCardComponent/UNCardComponent.utils.js +56 -10
  37. package/lib/commonjs/components/UNCardComponent/UNCardComponent.utils.js.map +1 -1
  38. package/lib/commonjs/components/UNCardComponent/networking/common/UNNetworkConstants.js +20 -0
  39. package/lib/commonjs/components/UNCardComponent/networking/common/UNNetworkConstants.js.map +1 -0
  40. package/lib/commonjs/components/UNCardComponent/networking/requests/UNWalletPayloadRequest.js +44 -0
  41. package/lib/commonjs/components/UNCardComponent/networking/requests/UNWalletPayloadRequest.js.map +1 -0
  42. package/lib/commonjs/components/index.js +13 -0
  43. package/lib/commonjs/components/index.js.map +1 -1
  44. package/lib/commonjs/helpers/BottomSheet/BottomSheet.js +32 -12
  45. package/lib/commonjs/helpers/BottomSheet/BottomSheet.js.map +1 -1
  46. package/lib/commonjs/helpers/BottomSheet/BottomSheet.styles.js +1 -1
  47. package/lib/commonjs/helpers/BottomSheet/BottomSheet.styles.js.map +1 -1
  48. package/lib/commonjs/helpers/EventBus.js.map +1 -1
  49. package/lib/commonjs/messages/nativeMessages/cardMessage.js +36 -0
  50. package/lib/commonjs/messages/nativeMessages/cardMessage.js.map +1 -0
  51. package/lib/commonjs/messages/nativeMessages/index.js +0 -7
  52. package/lib/commonjs/messages/nativeMessages/index.js.map +1 -1
  53. package/lib/commonjs/messages/nativeMessages/sdkMessage.js +14 -0
  54. package/lib/commonjs/messages/nativeMessages/sdkMessage.js.map +1 -0
  55. package/lib/commonjs/messages/webMessages/unitMessages.js +1 -0
  56. package/lib/commonjs/messages/webMessages/unitMessages.js.map +1 -1
  57. package/lib/commonjs/nativeComponent/{UNNativeAddToWalletButton.js → UnitAddToWalletButton.js} +1 -1
  58. package/lib/commonjs/nativeComponent/UnitAddToWalletButton.js.map +1 -0
  59. package/lib/commonjs/scripts/html/bodyHtml.js +1 -1
  60. package/lib/commonjs/scripts/html/bodyHtml.js.map +1 -1
  61. package/lib/commonjs/scripts/html/bodyScript.js +22 -5
  62. package/lib/commonjs/scripts/html/bodyScript.js.map +1 -1
  63. package/lib/commonjs/sharedTypes/bookPayment.types.js.map +1 -1
  64. package/lib/commonjs/sharedTypes/card.types.js.map +1 -1
  65. package/lib/commonjs/sharedTypes/index.js +13 -0
  66. package/lib/commonjs/sharedTypes/index.js.map +1 -1
  67. package/lib/commonjs/sharedTypes/onLoadResponse.types.js +6 -0
  68. package/lib/commonjs/sharedTypes/onLoadResponse.types.js.map +1 -0
  69. package/lib/commonjs/sharedTypes/wallet.types.js +22 -0
  70. package/lib/commonjs/sharedTypes/wallet.types.js.map +1 -0
  71. package/lib/commonjs/unitSdkManager/UnitSdk.api.js +5 -3
  72. package/lib/commonjs/unitSdkManager/UnitSdk.api.js.map +1 -1
  73. package/lib/commonjs/unitSdkManager/UnitSdkManager.js +18 -0
  74. package/lib/commonjs/unitSdkManager/UnitSdkManager.js.map +1 -1
  75. package/lib/commonjs/webComponent/WebComponent.js +35 -10
  76. package/lib/commonjs/webComponent/WebComponent.js.map +1 -1
  77. package/lib/commonjs/webComponent/WebComponent.utils.js +41 -0
  78. package/lib/commonjs/webComponent/WebComponent.utils.js.map +1 -0
  79. package/lib/commonjs/webComponent/html.js +9 -1
  80. package/lib/commonjs/webComponent/html.js.map +1 -1
  81. package/lib/module/components/UNAccountComponent/UNAccountComponent.js +74 -0
  82. package/lib/module/components/UNAccountComponent/UNAccountComponent.js.map +1 -0
  83. package/lib/module/components/UNAccountComponent/UNAccountComponent.utils.js +26 -0
  84. package/lib/module/components/UNAccountComponent/UNAccountComponent.utils.js.map +1 -0
  85. package/lib/module/components/UNActivityComponent/UNActivityComponent.js +56 -8
  86. package/lib/module/components/UNActivityComponent/UNActivityComponent.js.map +1 -1
  87. package/lib/module/components/UNActivityComponent/UNActivityComponent.utils.js +10 -2
  88. package/lib/module/components/UNActivityComponent/UNActivityComponent.utils.js.map +1 -1
  89. package/lib/module/components/UNBookPaymentComponent/UNBookPaymentComponent.js +50 -12
  90. package/lib/module/components/UNBookPaymentComponent/UNBookPaymentComponent.js.map +1 -1
  91. package/lib/module/components/UNBookPaymentComponent/UNBookPaymentComponent.utils.js +3 -2
  92. package/lib/module/components/UNBookPaymentComponent/UNBookPaymentComponent.utils.js.map +1 -1
  93. package/lib/module/components/UNBottomSheetComponent/UNBottomSheetComponent.constants.js +1 -1
  94. package/lib/module/components/UNBottomSheetComponent/UNBottomSheetComponent.constants.js.map +1 -1
  95. package/lib/module/components/UNBottomSheetComponent/UNBottomSheetComponent.js +111 -46
  96. package/lib/module/components/UNBottomSheetComponent/UNBottomSheetComponent.js.map +1 -1
  97. package/lib/module/components/UNBottomSheetComponent/UNBottomSheetComponent.utils.js +5 -9
  98. package/lib/module/components/UNBottomSheetComponent/UNBottomSheetComponent.utils.js.map +1 -1
  99. package/lib/module/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.js +68 -0
  100. package/lib/module/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.js.map +1 -0
  101. package/lib/module/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.styles.js +21 -0
  102. package/lib/module/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.styles.js.map +1 -0
  103. package/lib/module/components/UNCardComponent/UNCardComponent.js +65 -9
  104. package/lib/module/components/UNCardComponent/UNCardComponent.js.map +1 -1
  105. package/lib/module/components/UNCardComponent/UNCardComponent.utils.js +48 -9
  106. package/lib/module/components/UNCardComponent/UNCardComponent.utils.js.map +1 -1
  107. package/lib/module/components/UNCardComponent/networking/common/UNNetworkConstants.js +10 -0
  108. package/lib/module/components/UNCardComponent/networking/common/UNNetworkConstants.js.map +1 -0
  109. package/lib/module/components/UNCardComponent/networking/requests/UNWalletPayloadRequest.js +29 -0
  110. package/lib/module/components/UNCardComponent/networking/requests/UNWalletPayloadRequest.js.map +1 -0
  111. package/lib/module/components/index.js +1 -0
  112. package/lib/module/components/index.js.map +1 -1
  113. package/lib/module/helpers/BottomSheet/BottomSheet.js +30 -13
  114. package/lib/module/helpers/BottomSheet/BottomSheet.js.map +1 -1
  115. package/lib/module/helpers/BottomSheet/BottomSheet.styles.js +2 -2
  116. package/lib/module/helpers/BottomSheet/BottomSheet.styles.js.map +1 -1
  117. package/lib/module/helpers/EventBus.js.map +1 -1
  118. package/lib/module/messages/nativeMessages/cardMessage.js +27 -0
  119. package/lib/module/messages/nativeMessages/cardMessage.js.map +1 -0
  120. package/lib/module/messages/nativeMessages/index.js +1 -5
  121. package/lib/module/messages/nativeMessages/index.js.map +1 -1
  122. package/lib/module/messages/nativeMessages/sdkMessage.js +7 -0
  123. package/lib/module/messages/nativeMessages/sdkMessage.js.map +1 -0
  124. package/lib/module/messages/webMessages/unitMessages.js +1 -0
  125. package/lib/module/messages/webMessages/unitMessages.js.map +1 -1
  126. package/lib/module/nativeComponent/{UNNativeAddToWalletButton.js → UnitAddToWalletButton.js} +1 -1
  127. package/lib/module/nativeComponent/UnitAddToWalletButton.js.map +1 -0
  128. package/lib/module/scripts/html/bodyHtml.js +1 -1
  129. package/lib/module/scripts/html/bodyHtml.js.map +1 -1
  130. package/lib/module/scripts/html/bodyScript.js +19 -3
  131. package/lib/module/scripts/html/bodyScript.js.map +1 -1
  132. package/lib/module/sharedTypes/bookPayment.types.js.map +1 -1
  133. package/lib/module/sharedTypes/card.types.js.map +1 -1
  134. package/lib/module/sharedTypes/index.js +1 -0
  135. package/lib/module/sharedTypes/index.js.map +1 -1
  136. package/lib/module/sharedTypes/onLoadResponse.types.js +2 -0
  137. package/lib/module/sharedTypes/onLoadResponse.types.js.map +1 -0
  138. package/lib/module/sharedTypes/wallet.types.js +14 -0
  139. package/lib/module/sharedTypes/wallet.types.js.map +1 -0
  140. package/lib/module/unitSdkManager/UnitSdk.api.js +4 -3
  141. package/lib/module/unitSdkManager/UnitSdk.api.js.map +1 -1
  142. package/lib/module/unitSdkManager/UnitSdkManager.js +13 -0
  143. package/lib/module/unitSdkManager/UnitSdkManager.js.map +1 -1
  144. package/lib/module/webComponent/WebComponent.js +32 -10
  145. package/lib/module/webComponent/WebComponent.js.map +1 -1
  146. package/lib/module/webComponent/WebComponent.utils.js +27 -0
  147. package/lib/module/webComponent/WebComponent.utils.js.map +1 -0
  148. package/lib/module/webComponent/html.js +9 -2
  149. package/lib/module/webComponent/html.js.map +1 -1
  150. package/lib/typescript/components/UNAccountComponent/UNAccountComponent.d.ts +12 -0
  151. package/lib/typescript/components/UNAccountComponent/UNAccountComponent.utils.d.ts +7 -0
  152. package/lib/typescript/components/UNActivityComponent/UNActivityComponent.d.ts +2 -0
  153. package/lib/typescript/components/UNActivityComponent/UNActivityComponent.utils.d.ts +4 -0
  154. package/lib/typescript/components/UNBookPaymentComponent/UNBookPaymentComponent.d.ts +2 -1
  155. package/lib/typescript/components/UNBottomSheetComponent/UNBottomSheetComponent.constants.d.ts +1 -1
  156. package/lib/typescript/components/UNBottomSheetComponent/UNBottomSheetComponent.d.ts +9 -2
  157. package/lib/typescript/components/UNBottomSheetComponent/UNBottomSheetComponent.utils.d.ts +2 -1
  158. package/lib/typescript/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.d.ts +6 -0
  159. package/lib/typescript/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.styles.d.ts +17 -0
  160. package/lib/typescript/components/UNCardComponent/UNCardComponent.d.ts +4 -1
  161. package/lib/typescript/components/UNCardComponent/UNCardComponent.utils.d.ts +9 -1
  162. package/lib/typescript/components/UNCardComponent/networking/common/UNNetworkConstants.d.ts +8 -0
  163. package/lib/typescript/components/UNCardComponent/networking/requests/UNWalletPayloadRequest.d.ts +1 -0
  164. package/lib/typescript/components/index.d.ts +1 -0
  165. package/lib/typescript/helpers/EventBus.d.ts +3 -3
  166. package/lib/typescript/messages/nativeMessages/cardMessage.d.ts +28 -0
  167. package/lib/typescript/messages/nativeMessages/index.d.ts +7 -2
  168. package/lib/typescript/messages/nativeMessages/sdkMessage.d.ts +8 -0
  169. package/lib/typescript/messages/webMessages/unitMessages.d.ts +16 -6
  170. package/lib/typescript/scripts/html/bodyScript.d.ts +4 -1
  171. package/lib/typescript/sharedTypes/bookPayment.types.d.ts +3 -3
  172. package/lib/typescript/sharedTypes/card.types.d.ts +6 -6
  173. package/lib/typescript/sharedTypes/index.d.ts +1 -0
  174. package/lib/typescript/sharedTypes/onLoadResponse.types.d.ts +18 -0
  175. package/lib/typescript/sharedTypes/wallet.types.d.ts +14 -0
  176. package/lib/typescript/unitSdkManager/UnitSdkManager.d.ts +3 -0
  177. package/lib/typescript/webComponent/WebComponent.d.ts +4 -1
  178. package/lib/typescript/webComponent/WebComponent.utils.d.ts +2 -0
  179. package/package.json +2 -1
  180. package/src/components/UNAccountComponent/UNAccountComponent.tsx +82 -0
  181. package/src/components/UNAccountComponent/UNAccountComponent.utils.ts +30 -0
  182. package/src/components/UNActivityComponent/UNActivityComponent.tsx +57 -8
  183. package/src/components/UNActivityComponent/UNActivityComponent.utils.ts +14 -2
  184. package/src/components/UNBookPaymentComponent/UNBookPaymentComponent.tsx +47 -13
  185. package/src/components/UNBookPaymentComponent/UNBookPaymentComponent.utils.ts +3 -2
  186. package/src/components/UNBottomSheetComponent/UNBottomSheetComponent.constants.ts +1 -1
  187. package/src/components/UNBottomSheetComponent/UNBottomSheetComponent.tsx +120 -44
  188. package/src/components/UNBottomSheetComponent/UNBottomSheetComponent.utils.ts +7 -10
  189. package/src/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.styles.ts +21 -0
  190. package/src/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.tsx +74 -0
  191. package/src/components/UNCardComponent/UNCardComponent.tsx +68 -13
  192. package/src/components/UNCardComponent/UNCardComponent.utils.ts +47 -9
  193. package/src/components/UNCardComponent/networking/common/UNNetworkConstants.ts +11 -0
  194. package/src/components/UNCardComponent/networking/requests/UNWalletPayloadRequest.ts +34 -0
  195. package/src/components/index.ts +1 -0
  196. package/src/helpers/BottomSheet/BottomSheet.styles.ts +2 -2
  197. package/src/helpers/BottomSheet/BottomSheet.tsx +28 -12
  198. package/src/helpers/EventBus.ts +3 -3
  199. package/src/messages/nativeMessages/cardMessage.ts +37 -0
  200. package/src/messages/nativeMessages/index.ts +14 -2
  201. package/src/messages/nativeMessages/sdkMessage.ts +11 -0
  202. package/src/messages/webMessages/unitMessages.ts +20 -7
  203. package/src/scripts/html/bodyHtml.ts +1 -1
  204. package/src/scripts/html/bodyScript.ts +21 -4
  205. package/src/sharedTypes/bookPayment.types.ts +3 -3
  206. package/src/sharedTypes/card.types.ts +6 -6
  207. package/src/sharedTypes/index.ts +1 -0
  208. package/src/sharedTypes/onLoadResponse.types.ts +27 -0
  209. package/src/sharedTypes/wallet.types.ts +17 -0
  210. package/src/unitSdkManager/UnitSdk.api.ts +3 -2
  211. package/src/unitSdkManager/UnitSdkManager.ts +12 -0
  212. package/src/webComponent/WebComponent.tsx +35 -12
  213. package/src/webComponent/WebComponent.utils.ts +26 -0
  214. package/src/webComponent/html.ts +9 -2
  215. package/lib/commonjs/nativeComponent/UNNativeAddToWalletButton.js.map +0 -1
  216. package/lib/module/nativeComponent/UNNativeAddToWalletButton.js.map +0 -1
  217. /package/lib/typescript/nativeComponent/{UNNativeAddToWalletButton.d.ts → UnitAddToWalletButton.d.ts} +0 -0
  218. /package/src/nativeComponent/{UNNativeAddToWalletButton.tsx → UnitAddToWalletButton.tsx} +0 -0
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.UNAddToWalletBottomSheetItem = void 0;
7
+
8
+ var _react = _interopRequireWildcard(require("react"));
9
+
10
+ var _cardMessage = require("../../../messages/nativeMessages/cardMessage");
11
+
12
+ var _EventBus = _interopRequireDefault(require("../../../helpers/EventBus"));
13
+
14
+ var _bodyHtml = require("../../../scripts/html/bodyHtml");
15
+
16
+ var _WebComponent = require("../../../webComponent/WebComponent");
17
+
18
+ var _UNBottomSheetComponent = require("../UNBottomSheetComponent.utils");
19
+
20
+ var _UNAddToWalletBottomSheetItem = require("./UNAddToWalletBottomSheetItem.styles");
21
+
22
+ var _reactNative = require("react-native");
23
+
24
+ var _listenerToBus = require("../../../hooks/listenerToBus");
25
+
26
+ var _UnitAddToWalletButton = _interopRequireDefault(require("../../../nativeComponent/UnitAddToWalletButton"));
27
+
28
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
29
+
30
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
31
+
32
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
33
+
34
+ const UNAddToWalletBottomSheetItem = props => {
35
+ const styles = (0, _UNAddToWalletBottomSheetItem.getStylesObject)();
36
+ const webRef = (0, _react.useRef)(null);
37
+ const {
38
+ renderingRequest,
39
+ cardId
40
+ } = props;
41
+ const [addToWalletStatus, setAddToWalletStatus] = (0, _react.useState)(_cardMessage.CardAddToWalletStatus.pending);
42
+ (0, _react.useEffect)(() => {
43
+ if (!cardId) return;
44
+ const event = {
45
+ cardId
46
+ };
47
+
48
+ _EventBus.default.Instance.event(_cardMessage.CardNativeMessage.CARD_GET_ADD_TO_WALLET_STATUS, event);
49
+ }, [cardId]);
50
+ (0, _react.useEffect)(() => {
51
+ if (!webRef.current) return;
52
+ if (addToWalletStatus === _cardMessage.CardAddToWalletStatus.pending) return;
53
+ const isCardInWallet = addToWalletStatus === _cardMessage.CardAddToWalletStatus.addedToWallet;
54
+ webRef.current.injectJavaScript(`window.UnitMobileSDKConfig["isCardInWallet"] = ${isCardInWallet}`);
55
+
56
+ if (renderingRequest) {
57
+ (0, _UNBottomSheetComponent.renderingBottomSheetRequest)(webRef.current, renderingRequest);
58
+ }
59
+ }, [webRef.current, renderingRequest, addToWalletStatus]);
60
+
61
+ const gotCardWalletStatus = data => {
62
+ if (data != null) {
63
+ setAddToWalletStatus(data.status);
64
+ }
65
+ };
66
+
67
+ (0, _listenerToBus.useListenerToBus)([{
68
+ busEventKey: _cardMessage.CardNativeMessage.CARD_UPDATE_ADD_TO_WALLET_STATUS,
69
+ action: gotCardWalletStatus
70
+ }]);
71
+
72
+ const handleAddToWalletClicked = () => {
73
+ if (!cardId) return;
74
+ const startPushProvisioningEvent = {
75
+ cardId
76
+ };
77
+
78
+ _EventBus.default.Instance.event(_cardMessage.CardNativeMessage.CARD_START_PUSH_PROVISIONING, startPushProvisioningEvent);
79
+ };
80
+
81
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_WebComponent.WebComponent, {
82
+ ref: webRef,
83
+ type: _WebComponent.WebComponentType.slot,
84
+ presentationMode: _bodyHtml.PresentationMode.CoverInjectedHeight,
85
+ isScrollable: false
86
+ }), addToWalletStatus === _cardMessage.CardAddToWalletStatus.pending && /*#__PURE__*/_react.default.createElement(_reactNative.ActivityIndicator, {
87
+ style: styles.loader
88
+ }), addToWalletStatus === _cardMessage.CardAddToWalletStatus.readyToProvisioning && /*#__PURE__*/_react.default.createElement(_UnitAddToWalletButton.default, {
89
+ style: styles.addToWalletButton,
90
+ onAddToWalletClicked: handleAddToWalletClicked
91
+ }));
92
+ };
93
+
94
+ exports.UNAddToWalletBottomSheetItem = UNAddToWalletBottomSheetItem;
95
+ //# sourceMappingURL=UNAddToWalletBottomSheetItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["UNAddToWalletBottomSheetItem","props","styles","getStylesObject","webRef","useRef","renderingRequest","cardId","addToWalletStatus","setAddToWalletStatus","useState","CardAddToWalletStatus","pending","useEffect","event","EventBus","Instance","CardNativeMessage","CARD_GET_ADD_TO_WALLET_STATUS","current","isCardInWallet","addedToWallet","injectJavaScript","renderingBottomSheetRequest","gotCardWalletStatus","data","status","useListenerToBus","busEventKey","CARD_UPDATE_ADD_TO_WALLET_STATUS","action","handleAddToWalletClicked","startPushProvisioningEvent","CARD_START_PUSH_PROVISIONING","WebComponentType","slot","PresentationMode","CoverInjectedHeight","loader","readyToProvisioning","addToWalletButton"],"sources":["UNAddToWalletBottomSheetItem.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\nimport type WebView from 'react-native-webview';\nimport { CardAddToWalletStatus, CardAddToWalletStatusEvent, CardGetAddToWalletStatusEvent, CardNativeMessage, CardStartPushProvisioningEvent } from '../../../messages/nativeMessages/cardMessage';\nimport EventBus from '../../../helpers/EventBus';\nimport { PresentationMode } from '../../../scripts/html/bodyHtml';\nimport { WebComponent, WebComponentType } from '../../../webComponent/WebComponent';\nimport { renderingBottomSheetRequest } from '../UNBottomSheetComponent.utils';\nimport { getStylesObject } from './UNAddToWalletBottomSheetItem.styles';\nimport { ActivityIndicator } from 'react-native';\nimport { useListenerToBus } from '../../../hooks/listenerToBus';\nimport type { RequestRenderingEvent } from '../../../messages/webMessages/unitMessages';\nimport UnitAddToWalletButtonView from '../../../nativeComponent/UnitAddToWalletButton';\n\nexport interface UNAddToWalletBottomSheetItemProps {\n renderingRequest?: RequestRenderingEvent\n cardId?: string\n}\n\nexport const UNAddToWalletBottomSheetItem = (props: UNAddToWalletBottomSheetItemProps) => {\n const styles = getStylesObject();\n\n const webRef = useRef<WebView>(null);\n\n const { renderingRequest, cardId } = props;\n\n const [addToWalletStatus, setAddToWalletStatus] = useState<CardAddToWalletStatus>(CardAddToWalletStatus.pending);\n\n useEffect(() => {\n if (!cardId) return;\n const event: CardGetAddToWalletStatusEvent = { cardId };\n EventBus.Instance.event(CardNativeMessage.CARD_GET_ADD_TO_WALLET_STATUS, event);\n }, [cardId]);\n\n useEffect(() => {\n if (!webRef.current) return;\n if (addToWalletStatus === CardAddToWalletStatus.pending) return;\n\n const isCardInWallet = addToWalletStatus === CardAddToWalletStatus.addedToWallet;\n webRef.current.injectJavaScript(`window.UnitMobileSDKConfig[\"isCardInWallet\"] = ${isCardInWallet}`);\n\n if (renderingRequest) {\n renderingBottomSheetRequest(webRef.current, renderingRequest);\n }\n }, [webRef.current, renderingRequest, addToWalletStatus]);\n\n const gotCardWalletStatus = (data?: CardAddToWalletStatusEvent) => {\n if (data != null) {\n setAddToWalletStatus(data.status);\n }\n };\n\n useListenerToBus([\n { busEventKey: CardNativeMessage.CARD_UPDATE_ADD_TO_WALLET_STATUS, action: gotCardWalletStatus },\n ]);\n\n const handleAddToWalletClicked = () => {\n if (!cardId) return;\n const startPushProvisioningEvent: CardStartPushProvisioningEvent = { cardId };\n EventBus.Instance.event(CardNativeMessage.CARD_START_PUSH_PROVISIONING, startPushProvisioningEvent);\n };\n\n return (\n <>\n <WebComponent\n ref={webRef}\n type={WebComponentType.slot}\n presentationMode={PresentationMode.CoverInjectedHeight}\n isScrollable={false}\n />\n {addToWalletStatus === CardAddToWalletStatus.pending && <ActivityIndicator style={styles.loader} />}\n {addToWalletStatus === CardAddToWalletStatus.readyToProvisioning && <UnitAddToWalletButtonView style={styles.addToWalletButton} onAddToWalletClicked={handleAddToWalletClicked} />}\n </>\n );\n};\n"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA;;;;;;;;AAOO,MAAMA,4BAA4B,GAAIC,KAAD,IAA8C;EACxF,MAAMC,MAAM,GAAG,IAAAC,6CAAA,GAAf;EAEA,MAAMC,MAAM,GAAG,IAAAC,aAAA,EAAgB,IAAhB,CAAf;EAEA,MAAM;IAAEC,gBAAF;IAAoBC;EAApB,IAA+BN,KAArC;EAEA,MAAM,CAACO,iBAAD,EAAoBC,oBAApB,IAA4C,IAAAC,eAAA,EAAgCC,kCAAA,CAAsBC,OAAtD,CAAlD;EAEA,IAAAC,gBAAA,EAAU,MAAM;IACd,IAAI,CAACN,MAAL,EAAa;IACb,MAAMO,KAAoC,GAAG;MAAEP;IAAF,CAA7C;;IACAQ,iBAAA,CAASC,QAAT,CAAkBF,KAAlB,CAAwBG,8BAAA,CAAkBC,6BAA1C,EAAyEJ,KAAzE;EACD,CAJD,EAIG,CAACP,MAAD,CAJH;EAMA,IAAAM,gBAAA,EAAU,MAAM;IACd,IAAI,CAACT,MAAM,CAACe,OAAZ,EAAqB;IACrB,IAAIX,iBAAiB,KAAKG,kCAAA,CAAsBC,OAAhD,EAAyD;IAEzD,MAAMQ,cAAc,GAAGZ,iBAAiB,KAAKG,kCAAA,CAAsBU,aAAnE;IACAjB,MAAM,CAACe,OAAP,CAAeG,gBAAf,CAAiC,kDAAiDF,cAAe,EAAjG;;IAEA,IAAId,gBAAJ,EAAsB;MACpB,IAAAiB,mDAAA,EAA4BnB,MAAM,CAACe,OAAnC,EAA4Cb,gBAA5C;IACD;EACF,CAVD,EAUG,CAACF,MAAM,CAACe,OAAR,EAAiBb,gBAAjB,EAAmCE,iBAAnC,CAVH;;EAYA,MAAMgB,mBAAmB,GAAIC,IAAD,IAAuC;IACjE,IAAIA,IAAI,IAAI,IAAZ,EAAkB;MAChBhB,oBAAoB,CAACgB,IAAI,CAACC,MAAN,CAApB;IACD;EACF,CAJD;;EAMA,IAAAC,+BAAA,EAAiB,CACf;IAAEC,WAAW,EAAEX,8BAAA,CAAkBY,gCAAjC;IAAmEC,MAAM,EAAEN;EAA3E,CADe,CAAjB;;EAIA,MAAMO,wBAAwB,GAAG,MAAM;IACrC,IAAI,CAACxB,MAAL,EAAa;IACb,MAAMyB,0BAA0D,GAAG;MAAEzB;IAAF,CAAnE;;IACAQ,iBAAA,CAASC,QAAT,CAAkBF,KAAlB,CAAwBG,8BAAA,CAAkBgB,4BAA1C,EAAwED,0BAAxE;EACD,CAJD;;EAMA,oBACE,yEACE,6BAAC,0BAAD;IACE,GAAG,EAAE5B,MADP;IAEE,IAAI,EAAE8B,8BAAA,CAAiBC,IAFzB;IAGE,gBAAgB,EAAEC,0BAAA,CAAiBC,mBAHrC;IAIE,YAAY,EAAE;EAJhB,EADF,EAOG7B,iBAAiB,KAAKG,kCAAA,CAAsBC,OAA5C,iBAAuD,6BAAC,8BAAD;IAAmB,KAAK,EAAEV,MAAM,CAACoC;EAAjC,EAP1D,EAQG9B,iBAAiB,KAAKG,kCAAA,CAAsB4B,mBAA5C,iBAAmE,6BAAC,8BAAD;IAA2B,KAAK,EAAErC,MAAM,CAACsC,iBAAzC;IAA4D,oBAAoB,EAAET;EAAlF,EARtE,CADF;AAYD,CAvDM"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getStylesObject = void 0;
7
+
8
+ var _reactNative = require("react-native");
9
+
10
+ const getStylesObject = () => {
11
+ return _reactNative.StyleSheet.create({
12
+ addToWalletButton: {
13
+ position: 'absolute',
14
+ height: _reactNative.Platform.OS === 'ios' ? 48 : 55,
15
+ bottom: 32,
16
+ left: 0,
17
+ right: 0,
18
+ marginHorizontal: 24
19
+ },
20
+ loader: {
21
+ position: 'absolute',
22
+ top: 0,
23
+ bottom: 0,
24
+ left: 0,
25
+ right: 0
26
+ }
27
+ });
28
+ };
29
+
30
+ exports.getStylesObject = getStylesObject;
31
+ //# sourceMappingURL=UNAddToWalletBottomSheetItem.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getStylesObject","StyleSheet","create","addToWalletButton","position","height","Platform","OS","bottom","left","right","marginHorizontal","loader","top"],"sources":["UNAddToWalletBottomSheetItem.styles.ts"],"sourcesContent":["import { StyleSheet, Platform } from 'react-native';\n\nexport const getStylesObject = () => {\n return StyleSheet.create({\n addToWalletButton: {\n position: 'absolute',\n height: Platform.OS === 'ios' ? 48 : 55,\n bottom: 32,\n left: 0,\n right: 0,\n marginHorizontal: 24\n },\n loader: {\n position: 'absolute',\n top: 0,\n bottom: 0,\n left: 0,\n right: 0,\n }\n });\n};\n"],"mappings":";;;;;;;AAAA;;AAEO,MAAMA,eAAe,GAAG,MAAM;EACnC,OAAOC,uBAAA,CAAWC,MAAX,CAAkB;IACvBC,iBAAiB,EAAE;MACjBC,QAAQ,EAAE,UADO;MAEjBC,MAAM,EAAEC,qBAAA,CAASC,EAAT,KAAgB,KAAhB,GAAwB,EAAxB,GAA6B,EAFpB;MAGjBC,MAAM,EAAE,EAHS;MAIjBC,IAAI,EAAE,CAJW;MAKjBC,KAAK,EAAE,CALU;MAMjBC,gBAAgB,EAAE;IAND,CADI;IASvBC,MAAM,EAAE;MACNR,QAAQ,EAAE,UADJ;MAENS,GAAG,EAAE,CAFC;MAGNL,MAAM,EAAE,CAHF;MAINC,IAAI,EAAE,CAJA;MAKNC,KAAK,EAAE;IALD;EATe,CAAlB,CAAP;AAiBD,CAlBM"}
@@ -25,6 +25,8 @@ var _bodyHtml = require("../../scripts/html/bodyHtml");
25
25
 
26
26
  var _cardMessage = require("../../messages/webMessages/cardMessage");
27
27
 
28
+ var _cardMessage2 = require("../../messages/nativeMessages/cardMessage");
29
+
28
30
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
29
31
 
30
32
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
@@ -33,10 +35,10 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
33
35
 
34
36
  const UNCardComponent = props => {
35
37
  const [height, setHeight] = (0, _react.useState)(0);
36
- const [requestRefreshEvent, setRequestRefreshEvent] = (0, _react.useState)(null);
37
38
 
38
39
  const windowWidth = _reactNative.Dimensions.get('window').width;
39
40
 
41
+ const walletRef = (0, _react.useRef)(null);
40
42
  const webRef = (0, _react.useRef)(null);
41
43
 
42
44
  const cardStatusChanged = card => {
@@ -46,7 +48,17 @@ const UNCardComponent = props => {
46
48
  };
47
49
 
48
50
  const requestRefresh = data => {
49
- setRequestRefreshEvent(data);
51
+ (0, _UNCardComponent.injectRefreshEventIfNeeded)(webRef.current, data, props.cardId);
52
+ };
53
+
54
+ const startPushProvisioning = async data => {
55
+ if (data.cardId !== props.cardId) return;
56
+ onAddToWalletClicked();
57
+ };
58
+
59
+ const getAddToWalletStatus = data => {
60
+ if (data.cardId !== props.cardId) return;
61
+ getWallets();
50
62
  };
51
63
 
52
64
  (0, _listenerToBus.useListenerToBus)([{
@@ -55,21 +67,66 @@ const UNCardComponent = props => {
55
67
  }, {
56
68
  busEventKey: _unitMessages.UnitMessage.UNIT_REQUEST_REFRESH,
57
69
  action: requestRefresh
70
+ }, {
71
+ busEventKey: _cardMessage2.CardNativeMessage.CARD_START_PUSH_PROVISIONING,
72
+ action: startPushProvisioning
73
+ }, {
74
+ busEventKey: _cardMessage2.CardNativeMessage.CARD_GET_ADD_TO_WALLET_STATUS,
75
+ action: getAddToWalletStatus
58
76
  }]);
59
- (0, _react.useEffect)(() => {
60
- (0, _UNCardComponent.injectRefreshEventIfNeeded)(webRef.current, requestRefreshEvent, props.cardId);
61
- }, [requestRefreshEvent]);
62
77
 
63
78
  const handleMessage = message => {
79
+ if (!message || !message.details) return;
80
+
64
81
  switch (message.type) {
65
82
  case _unitMessages.UnitMessage.UNIT_REQUEST_RENDERING:
66
- _EventBus.default.Instance.event(_unitMessages.UnitMessage.UNIT_REQUEST_RENDERING, message.details.data);
83
+ {
84
+ const event = {
85
+ componentName: _WebComponent.WebComponentType.card,
86
+ componentResourceId: props.cardId,
87
+ requestRenderingEvent: message.details
88
+ };
67
89
 
68
- break;
90
+ _EventBus.default.Instance.event(_unitMessages.UnitMessage.UNIT_REQUEST_RENDERING, event);
91
+
92
+ break;
93
+ }
69
94
 
70
95
  case _pageMessage.PageMessage.PAGE_HEIGHT:
71
96
  setHeight(message.details.height);
72
97
  break;
98
+
99
+ case _unitMessages.UnitMessage.UNIT_ON_LOAD:
100
+ props.onLoad && props.onLoad(message.details);
101
+ break;
102
+ }
103
+ };
104
+
105
+ const getWallets = async () => {
106
+ try {
107
+ const walletResponse = await (0, _UNCardComponent.launchGetWallets)(props.customerToken, props.cardId, props.pushProvisioningModule);
108
+ if (!walletResponse) return;
109
+ walletRef.current = walletResponse;
110
+ const walletStatus = {
111
+ status: walletResponse.status
112
+ };
113
+
114
+ _EventBus.default.Instance.event(_cardMessage2.CardNativeMessage.CARD_UPDATE_ADD_TO_WALLET_STATUS, walletStatus);
115
+ } catch (error) {
116
+ console.error(error);
117
+ }
118
+ };
119
+
120
+ const onAddToWalletClicked = async () => {
121
+ try {
122
+ await (0, _UNCardComponent.launchStartCardProvisioning)(props.pushProvisioningModule, walletRef.current);
123
+ } catch (error) {
124
+ if (error instanceof Error) {
125
+ const parsedError = JSON.parse(error.message);
126
+ if (parsedError.code === _cardMessage2.CardAddToWalletErrors.closedNativeWalletScreen) return;
127
+ }
128
+
129
+ console.log(error);
73
130
  }
74
131
  };
75
132
 
@@ -82,6 +139,7 @@ const UNCardComponent = props => {
82
139
  type: _WebComponent.WebComponentType.card,
83
140
  presentationMode: _bodyHtml.PresentationMode.Default,
84
141
  params: (0, _UNCardComponent.getCardParams)(props),
142
+ theme: props.theme,
85
143
  script: (0, _UNCardComponent.getCardScript)(),
86
144
  onMessage: message => handleMessage(message),
87
145
  width: windowWidth,
@@ -1 +1 @@
1
- {"version":3,"names":["UNCardComponent","props","height","setHeight","useState","requestRefreshEvent","setRequestRefreshEvent","windowWidth","Dimensions","get","width","webRef","useRef","cardStatusChanged","card","onStatusChanged","requestRefresh","data","useListenerToBus","busEventKey","CardMessage","CARD_STATUS_CHANGED","action","UnitMessage","UNIT_REQUEST_REFRESH","useEffect","injectRefreshEventIfNeeded","current","cardId","handleMessage","message","type","UNIT_REQUEST_RENDERING","EventBus","Instance","event","details","PageMessage","PAGE_HEIGHT","WebComponentType","PresentationMode","Default","getCardParams","getCardScript"],"sources":["UNCardComponent.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\nimport { Dimensions, View } from 'react-native';\nimport type WebView from 'react-native-webview';\nimport { HeightEvent, PageMessage } from '../../messages/webMessages/pageMessage';\nimport { RequestRefreshEvent, RequestRenderingEvent, UnitMessage } from '../../messages/webMessages/unitMessages';\nimport EventBus from '../../helpers/EventBus';\nimport { WebComponent, WebComponentType } from '../../webComponent/WebComponent';\nimport { useListenerToBus } from '../../hooks/listenerToBus';\nimport type { WebViewMessage } from '../../messages/webMessages';\nimport { getCardParams, getCardScript, injectRefreshEventIfNeeded } from './UNCardComponent.utils';\nimport { PresentationMode } from '../../scripts/html/bodyHtml';\nimport type { UNCardData } from '../../sharedTypes';\nimport { CardMessage } from '../../messages/webMessages/cardMessage';\n\nexport interface UNCardComponentProps {\n cardId: string;\n customerToken: string;\n theme?: string;\n onStatusChanged?: (card: UNCardData) => void;\n}\n\nexport const UNCardComponent = (props: UNCardComponentProps) => {\n const [height, setHeight] = useState(0);\n const [requestRefreshEvent, setRequestRefreshEvent] = useState<RequestRefreshEvent | null>(null);\n const windowWidth = Dimensions.get('window').width;\n\n const webRef = useRef<WebView>(null);\n\n const cardStatusChanged = (card: UNCardData) => {\n if (props.onStatusChanged) {\n props.onStatusChanged(card);\n }\n };\n\n const requestRefresh = (data: RequestRefreshEvent) => {\n setRequestRefreshEvent(data);\n };\n\n useListenerToBus([\n { busEventKey: CardMessage.CARD_STATUS_CHANGED, action: cardStatusChanged },\n { busEventKey: UnitMessage.UNIT_REQUEST_REFRESH, action: requestRefresh },\n ]);\n\n useEffect(() => {\n injectRefreshEventIfNeeded(webRef.current, requestRefreshEvent, props.cardId);\n }, [requestRefreshEvent]);\n\n const handleMessage = (message: WebViewMessage) => {\n switch (message.type) {\n case UnitMessage.UNIT_REQUEST_RENDERING:\n EventBus.Instance.event(UnitMessage.UNIT_REQUEST_RENDERING, (message.details as RequestRenderingEvent).data);\n break;\n case PageMessage.PAGE_HEIGHT:\n setHeight((message.details as HeightEvent).height);\n break;\n }\n };\n\n return (\n <View style={{ height }}>\n <WebComponent\n ref={webRef}\n type={WebComponentType.card}\n presentationMode={PresentationMode.Default}\n params={getCardParams(props)}\n script={getCardScript()}\n onMessage={message => handleMessage(message)}\n width={windowWidth}\n isScrollable={false}\n />\n </View>\n );\n};\n"],"mappings":";;;;;;;AAAA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AAEA;;;;;;;;AASO,MAAMA,eAAe,GAAIC,KAAD,IAAiC;EAC9D,MAAM,CAACC,MAAD,EAASC,SAAT,IAAsB,IAAAC,eAAA,EAAS,CAAT,CAA5B;EACA,MAAM,CAACC,mBAAD,EAAsBC,sBAAtB,IAAgD,IAAAF,eAAA,EAAqC,IAArC,CAAtD;;EACA,MAAMG,WAAW,GAAGC,uBAAA,CAAWC,GAAX,CAAe,QAAf,EAAyBC,KAA7C;;EAEA,MAAMC,MAAM,GAAG,IAAAC,aAAA,EAAgB,IAAhB,CAAf;;EAEA,MAAMC,iBAAiB,GAAIC,IAAD,IAAsB;IAC9C,IAAIb,KAAK,CAACc,eAAV,EAA2B;MACzBd,KAAK,CAACc,eAAN,CAAsBD,IAAtB;IACD;EACF,CAJD;;EAMA,MAAME,cAAc,GAAIC,IAAD,IAA+B;IACpDX,sBAAsB,CAACW,IAAD,CAAtB;EACD,CAFD;;EAIA,IAAAC,+BAAA,EAAiB,CACf;IAAEC,WAAW,EAAEC,wBAAA,CAAYC,mBAA3B;IAAgDC,MAAM,EAAET;EAAxD,CADe,EAEf;IAAEM,WAAW,EAAEI,yBAAA,CAAYC,oBAA3B;IAAiDF,MAAM,EAAEN;EAAzD,CAFe,CAAjB;EAKA,IAAAS,gBAAA,EAAU,MAAM;IACd,IAAAC,2CAAA,EAA2Bf,MAAM,CAACgB,OAAlC,EAA2CtB,mBAA3C,EAAgEJ,KAAK,CAAC2B,MAAtE;EACD,CAFD,EAEG,CAACvB,mBAAD,CAFH;;EAIA,MAAMwB,aAAa,GAAIC,OAAD,IAA6B;IACjD,QAAQA,OAAO,CAACC,IAAhB;MACE,KAAKR,yBAAA,CAAYS,sBAAjB;QACEC,iBAAA,CAASC,QAAT,CAAkBC,KAAlB,CAAwBZ,yBAAA,CAAYS,sBAApC,EAA6DF,OAAO,CAACM,OAAT,CAA2CnB,IAAvG;;QACA;;MACF,KAAKoB,wBAAA,CAAYC,WAAjB;QACEnC,SAAS,CAAE2B,OAAO,CAACM,OAAT,CAAiClC,MAAlC,CAAT;QACA;IANJ;EAQD,CATD;;EAWA,oBACE,6BAAC,iBAAD;IAAM,KAAK,EAAE;MAAEA;IAAF;EAAb,gBACE,6BAAC,0BAAD;IACE,GAAG,EAAES,MADP;IAEE,IAAI,EAAE4B,8BAAA,CAAiBzB,IAFzB;IAGE,gBAAgB,EAAE0B,0BAAA,CAAiBC,OAHrC;IAIE,MAAM,EAAE,IAAAC,8BAAA,EAAczC,KAAd,CAJV;IAKE,MAAM,EAAE,IAAA0C,8BAAA,GALV;IAME,SAAS,EAAEb,OAAO,IAAID,aAAa,CAACC,OAAD,CANrC;IAOE,KAAK,EAAEvB,WAPT;IAQE,YAAY,EAAE;EARhB,EADF,CADF;AAcD,CAnDM"}
1
+ {"version":3,"names":["UNCardComponent","props","height","setHeight","useState","windowWidth","Dimensions","get","width","walletRef","useRef","webRef","cardStatusChanged","card","onStatusChanged","requestRefresh","data","injectRefreshEventIfNeeded","current","cardId","startPushProvisioning","onAddToWalletClicked","getAddToWalletStatus","getWallets","useListenerToBus","busEventKey","CardMessage","CARD_STATUS_CHANGED","action","UnitMessage","UNIT_REQUEST_REFRESH","CardNativeMessage","CARD_START_PUSH_PROVISIONING","CARD_GET_ADD_TO_WALLET_STATUS","handleMessage","message","details","type","UNIT_REQUEST_RENDERING","event","componentName","WebComponentType","componentResourceId","requestRenderingEvent","EventBus","Instance","PageMessage","PAGE_HEIGHT","UNIT_ON_LOAD","onLoad","walletResponse","launchGetWallets","customerToken","pushProvisioningModule","walletStatus","status","CARD_UPDATE_ADD_TO_WALLET_STATUS","error","console","launchStartCardProvisioning","Error","parsedError","JSON","parse","code","CardAddToWalletErrors","closedNativeWalletScreen","log","PresentationMode","Default","getCardParams","theme","getCardScript"],"sources":["UNCardComponent.tsx"],"sourcesContent":["import React, { useRef, useState } from 'react';\nimport { Dimensions, NativeModule, View } from 'react-native';\nimport type WebView from 'react-native-webview';\nimport { HeightEvent, PageMessage } from '../../messages/webMessages/pageMessage';\nimport { RequestRefreshEvent, RequestRenderingEvent, UnitMessage } from '../../messages/webMessages/unitMessages';\nimport EventBus from '../../helpers/EventBus';\nimport { WebComponent, WebComponentType } from '../../webComponent/WebComponent';\nimport { useListenerToBus } from '../../hooks/listenerToBus';\nimport type { WebViewMessage } from '../../messages/webMessages';\nimport { getCardParams, getCardScript, injectRefreshEventIfNeeded, launchStartCardProvisioning } from './UNCardComponent.utils';\nimport { PresentationMode } from '../../scripts/html/bodyHtml';\nimport type { ResponseUnitOnLoadEvent, UNCardData } from '../../sharedTypes';\nimport { CardMessage } from '../../messages/webMessages/cardMessage';\nimport { launchGetWallets } from './UNCardComponent.utils';\nimport type { NativeModules } from 'react-native';\nimport type { UNWallet } from 'src/sharedTypes/wallet.types';\nimport { CardAddToWalletErrors, CardAddToWalletStatusEvent, CardGetAddToWalletStatusEvent, CardNativeMessage, CardStartPushProvisioningEvent } from '../../messages/nativeMessages/cardMessage';\nimport type { BottomSheetSlotData } from '../UNBottomSheetComponent/UNBottomSheetComponent';\nexport interface UNCardComponentProps {\n cardId: string;\n customerToken: string;\n theme?: string;\n onStatusChanged?: (card: UNCardData) => void;\n pushProvisioningModule?: typeof NativeModules;\n onLoad?: (response: ResponseUnitOnLoadEvent) => void\n}\n\nexport const UNCardComponent = (props: UNCardComponentProps) => {\n const [height, setHeight] = useState(0);\n const windowWidth = Dimensions.get('window').width;\n const walletRef = useRef<UNWallet | null>(null);\n\n const webRef = useRef<WebView>(null);\n\n const cardStatusChanged = (card: UNCardData) => {\n if (props.onStatusChanged) {\n props.onStatusChanged(card);\n }\n };\n\n const requestRefresh = (data: RequestRefreshEvent) => {\n injectRefreshEventIfNeeded(webRef.current, data, props.cardId);\n };\n\n const startPushProvisioning = async (data: CardStartPushProvisioningEvent) => {\n if (data.cardId !== props.cardId) return;\n onAddToWalletClicked();\n };\n\n const getAddToWalletStatus = (data: CardGetAddToWalletStatusEvent) => {\n if (data.cardId !== props.cardId) return;\n getWallets();\n };\n\n useListenerToBus([\n { busEventKey: CardMessage.CARD_STATUS_CHANGED, action: cardStatusChanged },\n { busEventKey: UnitMessage.UNIT_REQUEST_REFRESH, action: requestRefresh },\n { busEventKey: CardNativeMessage.CARD_START_PUSH_PROVISIONING, action: startPushProvisioning },\n { busEventKey: CardNativeMessage.CARD_GET_ADD_TO_WALLET_STATUS, action: getAddToWalletStatus }\n ]);\n\n const handleMessage = (message: WebViewMessage) => {\n if (!message || !message.details) return;\n\n switch (message.type) {\n case UnitMessage.UNIT_REQUEST_RENDERING: {\n const event: BottomSheetSlotData = {\n componentName: WebComponentType.card,\n componentResourceId: props.cardId,\n requestRenderingEvent: message.details as RequestRenderingEvent\n };\n EventBus.Instance.event(UnitMessage.UNIT_REQUEST_RENDERING, event);\n break;\n }\n case PageMessage.PAGE_HEIGHT:\n setHeight((message.details as HeightEvent).height);\n break;\n case UnitMessage.UNIT_ON_LOAD:\n props.onLoad && props.onLoad(message.details as ResponseUnitOnLoadEvent);\n break;\n }\n };\n\n const getWallets = async () => {\n\n try {\n\n const walletResponse = await launchGetWallets(props.customerToken, props.cardId, props.pushProvisioningModule as NativeModule);\n\n if (!walletResponse) return;\n\n walletRef.current = walletResponse;\n\n const walletStatus: CardAddToWalletStatusEvent = { status: walletResponse.status };\n EventBus.Instance.event(CardNativeMessage.CARD_UPDATE_ADD_TO_WALLET_STATUS, walletStatus);\n } catch (error) {\n console.error(error);\n }\n };\n\n const onAddToWalletClicked = async () => {\n try {\n await launchStartCardProvisioning(props.pushProvisioningModule as NativeModule, walletRef.current);\n } catch (error) {\n if (error instanceof Error) {\n const parsedError = JSON.parse(error.message);\n if (parsedError.code === CardAddToWalletErrors.closedNativeWalletScreen) return;\n }\n console.log(error);\n }\n };\n\n return (\n <View style={{ height }}>\n <WebComponent\n ref={webRef}\n type={WebComponentType.card}\n presentationMode={PresentationMode.Default}\n params={getCardParams(props)}\n theme={props.theme}\n script={getCardScript()}\n onMessage={message => handleMessage(message)}\n width={windowWidth}\n isScrollable={false}\n />\n </View>\n );\n};\n"],"mappings":"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"}
@@ -3,31 +3,28 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.injectRefreshEventIfNeeded = exports.getCardScript = exports.getCardParams = void 0;
6
+ exports.launchStartCardProvisioning = exports.launchGetWallets = exports.injectRefreshEventIfNeeded = exports.getCardScript = exports.getCardParams = void 0;
7
+
8
+ var _bodyScript = require("./../../scripts/html/bodyScript");
7
9
 
8
10
  var _WebComponent = require("../../webComponent/WebComponent");
9
11
 
10
- var _unitMessages = require("../../messages/webMessages/unitMessages");
12
+ var _UNWalletPayloadRequest = require("./networking/requests/UNWalletPayloadRequest");
11
13
 
12
- var _UnitSdkManager = require("../../unitSdkManager/UnitSdkManager");
14
+ var _wallet = require("../../../src/sharedTypes/wallet.types");
13
15
 
14
16
  const getCardParams = props => {
15
17
  return `
16
18
  card-id="${props.cardId}"
17
19
  customer-token="${props.customerToken}"
18
- theme="${props.theme ?? _UnitSdkManager.UnitSDK.getTheme()}"
20
+ enable-mobile-wallet="${!!props.pushProvisioningModule}"
19
21
  `;
20
22
  };
21
23
 
22
24
  exports.getCardParams = getCardParams;
23
25
 
24
26
  const getCardScript = () => {
25
- return `
26
- const dispatchRefreshEvent = (details) => {
27
- const event = new CustomEvent("${_unitMessages.UnitMessage.UNIT_REQUEST_REFRESH}",{ detail: JSON.parse(details) })
28
- window.dispatchEvent(event)
29
- }
30
- `;
27
+ return _bodyScript.DISPATCH_REQUEST_REFRESH;
31
28
  };
32
29
 
33
30
  exports.getCardScript = getCardScript;
@@ -39,4 +36,53 @@ const injectRefreshEventIfNeeded = (currentWeb, requestRefreshEvent, cardId) =>
39
36
  };
40
37
 
41
38
  exports.injectRefreshEventIfNeeded = injectRefreshEventIfNeeded;
39
+
40
+ const launchGetWallets = async (customerToken, cardId, pushProvisioningModule) => {
41
+ try {
42
+ const encryptedPayload = await (0, _UNWalletPayloadRequest.getMobileWalletPayload)(customerToken, cardId);
43
+ if (!encryptedPayload) return null;
44
+ const walletsResponse = await pushProvisioningModule.launchGetWallets(JSON.stringify({
45
+ encPayload: encryptedPayload
46
+ }));
47
+ const parsedWalletsResponse = JSON.parse(walletsResponse);
48
+ const wallets = parsedWalletsResponse.wallets;
49
+ if (!wallets) return null;
50
+
51
+ if (wallets[0].code === _wallet.UNWalletCode.Apple) {
52
+ return {
53
+ name: _wallet.UNWalletName.Apple,
54
+ code: _wallet.UNWalletCode.Apple,
55
+ status: wallets[0].status
56
+ };
57
+ } else {
58
+ const googleWallet = wallets.filter(wallet => {
59
+ return wallet.name === _wallet.UNWalletName.Google;
60
+ });
61
+ if (!googleWallet) return;
62
+ return {
63
+ name: _wallet.UNWalletName.Google,
64
+ code: _wallet.UNWalletCode.Google,
65
+ status: googleWallet[0].status
66
+ };
67
+ }
68
+ } catch (error) {
69
+ return Promise.reject(error);
70
+ }
71
+ };
72
+
73
+ exports.launchGetWallets = launchGetWallets;
74
+
75
+ const launchStartCardProvisioning = async (pushProvisioningModule, wallet) => {
76
+ try {
77
+ const response = await pushProvisioningModule.launchStartCardProvisioning(JSON.stringify({
78
+ walletCode: wallet === null || wallet === void 0 ? void 0 : wallet.code,
79
+ walletName: wallet === null || wallet === void 0 ? void 0 : wallet.name
80
+ }));
81
+ return response;
82
+ } catch (error) {
83
+ return Promise.reject(error);
84
+ }
85
+ };
86
+
87
+ exports.launchStartCardProvisioning = launchStartCardProvisioning;
42
88
  //# sourceMappingURL=UNCardComponent.utils.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["getCardParams","props","cardId","customerToken","theme","UnitSDK","getTheme","getCardScript","UnitMessage","UNIT_REQUEST_REFRESH","injectRefreshEventIfNeeded","currentWeb","requestRefreshEvent","dependencies","includes","WebComponentType","card","valueOf","resourceId","injectJavaScript","JSON","stringify"],"sources":["UNCardComponent.utils.ts"],"sourcesContent":["import type WebView from 'react-native-webview';\nimport type { UNCardComponentProps } from './UNCardComponent';\nimport { WebComponentType } from '../../webComponent/WebComponent';\nimport { RequestRefreshEvent, UnitMessage } from '../../messages/webMessages/unitMessages';\nimport { UnitSDK } from '../../unitSdkManager/UnitSdkManager';\n\nexport const getCardParams = (props: UNCardComponentProps) => {\n return `\n card-id=\"${props.cardId}\"\n customer-token=\"${props.customerToken}\"\n theme=\"${props.theme ?? UnitSDK.getTheme()}\"\n `;\n};\n\nexport const getCardScript = () => {\n return `\n const dispatchRefreshEvent = (details) => {\n const event = new CustomEvent(\"${UnitMessage.UNIT_REQUEST_REFRESH}\",{ detail: JSON.parse(details) })\n window.dispatchEvent(event)\n }\n `;\n};\n\nexport const injectRefreshEventIfNeeded = (currentWeb: WebView | null, requestRefreshEvent: RequestRefreshEvent | null, cardId: string) => {\n if (requestRefreshEvent && requestRefreshEvent.dependencies.includes(WebComponentType.card.valueOf()) && requestRefreshEvent.resourceId == cardId) {\n currentWeb?.injectJavaScript(`dispatchRefreshEvent('${JSON.stringify(requestRefreshEvent)}')`);\n }\n};\n"],"mappings":";;;;;;;AAEA;;AACA;;AACA;;AAEO,MAAMA,aAAa,GAAIC,KAAD,IAAiC;EAC5D,OAAQ;AACV,eAAeA,KAAK,CAACC,MAAO;AAC5B,sBAAsBD,KAAK,CAACE,aAAc;AAC1C,aAAaF,KAAK,CAACG,KAAN,IAAeC,uBAAA,CAAQC,QAAR,EAAmB;AAC/C,GAJE;AAKD,CANM;;;;AAQA,MAAMC,aAAa,GAAG,MAAM;EACjC,OAAQ;AACV;AACA,qCAAqCC,yBAAA,CAAYC,oBAAqB;AACtE;AACA;AACA,GALE;AAMD,CAPM;;;;AASA,MAAMC,0BAA0B,GAAG,CAACC,UAAD,EAA6BC,mBAA7B,EAA8EV,MAA9E,KAAiG;EACzI,IAAIU,mBAAmB,IAAIA,mBAAmB,CAACC,YAApB,CAAiCC,QAAjC,CAA0CC,8BAAA,CAAiBC,IAAjB,CAAsBC,OAAtB,EAA1C,CAAvB,IAAqGL,mBAAmB,CAACM,UAApB,IAAkChB,MAA3I,EAAmJ;IACjJS,UAAU,SAAV,IAAAA,UAAU,WAAV,YAAAA,UAAU,CAAEQ,gBAAZ,CAA8B,yBAAwBC,IAAI,CAACC,SAAL,CAAeT,mBAAf,CAAoC,IAA1F;EACD;AACF,CAJM"}
1
+ {"version":3,"names":["getCardParams","props","cardId","customerToken","pushProvisioningModule","getCardScript","DISPATCH_REQUEST_REFRESH","injectRefreshEventIfNeeded","currentWeb","requestRefreshEvent","dependencies","includes","WebComponentType","card","valueOf","resourceId","injectJavaScript","JSON","stringify","launchGetWallets","encryptedPayload","getMobileWalletPayload","walletsResponse","encPayload","parsedWalletsResponse","parse","wallets","code","UNWalletCode","Apple","name","UNWalletName","status","googleWallet","filter","wallet","Google","error","Promise","reject","launchStartCardProvisioning","response","walletCode","walletName"],"sources":["UNCardComponent.utils.ts"],"sourcesContent":["import { DISPATCH_REQUEST_REFRESH } from './../../scripts/html/bodyScript';\nimport type WebView from 'react-native-webview';\nimport type { UNCardComponentProps } from './UNCardComponent';\nimport { WebComponentType } from '../../webComponent/WebComponent';\nimport type { NativeModules } from 'react-native';\nimport { getMobileWalletPayload } from './networking/requests/UNWalletPayloadRequest';\nimport { UNWallet, UNWalletCode, UNWalletName } from '../../../src/sharedTypes/wallet.types';\nimport type { RequestRefreshEvent } from '../../messages/webMessages/unitMessages';\n\nexport const getCardParams = (props: UNCardComponentProps) => {\n return `\n card-id=\"${props.cardId}\"\n customer-token=\"${props.customerToken}\"\n enable-mobile-wallet=\"${!!props.pushProvisioningModule}\"\n `;\n};\n\nexport const getCardScript = () => {\n return DISPATCH_REQUEST_REFRESH;\n};\n\nexport const injectRefreshEventIfNeeded = (currentWeb: WebView | null, requestRefreshEvent: RequestRefreshEvent | null, cardId: string) => {\n if (requestRefreshEvent && requestRefreshEvent.dependencies.includes(WebComponentType.card.valueOf()) && requestRefreshEvent.resourceId == cardId) {\n currentWeb?.injectJavaScript(`dispatchRefreshEvent('${JSON.stringify(requestRefreshEvent)}')`);\n }\n};\n\nexport const launchGetWallets = async (customerToken: string, cardId: string, pushProvisioningModule: typeof NativeModules) => {\n try {\n const encryptedPayload = await getMobileWalletPayload(customerToken, cardId);\n if (!encryptedPayload) return null;\n\n const walletsResponse = await pushProvisioningModule.launchGetWallets(JSON.stringify({ encPayload: encryptedPayload }));\n const parsedWalletsResponse = JSON.parse(walletsResponse);\n const wallets = parsedWalletsResponse.wallets;\n\n if (!wallets) return null;\n if (wallets[0].code === UNWalletCode.Apple) {\n return ({ name: UNWalletName.Apple, code: UNWalletCode.Apple, status: wallets[0].status });\n } else {\n const googleWallet = wallets.filter((wallet: { name: UNWalletName }) => {\n return wallet.name === UNWalletName.Google;\n });\n if (!googleWallet) return;\n return ({ name: UNWalletName.Google, code: UNWalletCode.Google, status: googleWallet[0].status });\n }\n } catch (error) {\n return Promise.reject(error);\n }\n\n};\n\nexport const launchStartCardProvisioning = async (pushProvisioningModule: typeof NativeModules, wallet: UNWallet | null) => {\n try {\n const response = await pushProvisioningModule.launchStartCardProvisioning(\n JSON.stringify({\n walletCode: wallet?.code,\n walletName: wallet?.name\n }));\n return response;\n }\n\n catch (error) {\n return Promise.reject(error);\n }\n};\n"],"mappings":";;;;;;;AAAA;;AAGA;;AAEA;;AACA;;AAGO,MAAMA,aAAa,GAAIC,KAAD,IAAiC;EAC5D,OAAQ;AACV,eAAeA,KAAK,CAACC,MAAO;AAC5B,sBAAsBD,KAAK,CAACE,aAAc;AAC1C,4BAA4B,CAAC,CAACF,KAAK,CAACG,sBAAuB;AAC3D,GAJE;AAKD,CANM;;;;AAQA,MAAMC,aAAa,GAAG,MAAM;EACjC,OAAOC,oCAAP;AACD,CAFM;;;;AAIA,MAAMC,0BAA0B,GAAG,CAACC,UAAD,EAA6BC,mBAA7B,EAA8EP,MAA9E,KAAiG;EACzI,IAAIO,mBAAmB,IAAIA,mBAAmB,CAACC,YAApB,CAAiCC,QAAjC,CAA0CC,8BAAA,CAAiBC,IAAjB,CAAsBC,OAAtB,EAA1C,CAAvB,IAAqGL,mBAAmB,CAACM,UAApB,IAAkCb,MAA3I,EAAmJ;IACjJM,UAAU,SAAV,IAAAA,UAAU,WAAV,YAAAA,UAAU,CAAEQ,gBAAZ,CAA8B,yBAAwBC,IAAI,CAACC,SAAL,CAAeT,mBAAf,CAAoC,IAA1F;EACD;AACF,CAJM;;;;AAMA,MAAMU,gBAAgB,GAAG,OAAOhB,aAAP,EAA8BD,MAA9B,EAA8CE,sBAA9C,KAA+F;EAC7H,IAAI;IACF,MAAMgB,gBAAgB,GAAG,MAAM,IAAAC,8CAAA,EAAuBlB,aAAvB,EAAsCD,MAAtC,CAA/B;IACA,IAAI,CAACkB,gBAAL,EAAuB,OAAO,IAAP;IAEvB,MAAME,eAAe,GAAG,MAAMlB,sBAAsB,CAACe,gBAAvB,CAAwCF,IAAI,CAACC,SAAL,CAAe;MAAEK,UAAU,EAAEH;IAAd,CAAf,CAAxC,CAA9B;IACA,MAAMI,qBAAqB,GAAGP,IAAI,CAACQ,KAAL,CAAWH,eAAX,CAA9B;IACA,MAAMI,OAAO,GAAGF,qBAAqB,CAACE,OAAtC;IAEA,IAAI,CAACA,OAAL,EAAc,OAAO,IAAP;;IACd,IAAIA,OAAO,CAAC,CAAD,CAAP,CAAWC,IAAX,KAAoBC,oBAAA,CAAaC,KAArC,EAA4C;MAC1C,OAAQ;QAAEC,IAAI,EAAEC,oBAAA,CAAaF,KAArB;QAA4BF,IAAI,EAAEC,oBAAA,CAAaC,KAA/C;QAAsDG,MAAM,EAAEN,OAAO,CAAC,CAAD,CAAP,CAAWM;MAAzE,CAAR;IACD,CAFD,MAEO;MACL,MAAMC,YAAY,GAAGP,OAAO,CAACQ,MAAR,CAAgBC,MAAD,IAAoC;QACtE,OAAOA,MAAM,CAACL,IAAP,KAAgBC,oBAAA,CAAaK,MAApC;MACD,CAFoB,CAArB;MAGA,IAAI,CAACH,YAAL,EAAmB;MACnB,OAAQ;QAAEH,IAAI,EAAEC,oBAAA,CAAaK,MAArB;QAA6BT,IAAI,EAAEC,oBAAA,CAAaQ,MAAhD;QAAwDJ,MAAM,EAAEC,YAAY,CAAC,CAAD,CAAZ,CAAgBD;MAAhF,CAAR;IACD;EACF,CAlBD,CAkBE,OAAOK,KAAP,EAAc;IACd,OAAOC,OAAO,CAACC,MAAR,CAAeF,KAAf,CAAP;EACD;AAEF,CAvBM;;;;AAyBA,MAAMG,2BAA2B,GAAG,OAAOpC,sBAAP,EAAqD+B,MAArD,KAAiF;EAC1H,IAAI;IACF,MAAMM,QAAQ,GAAG,MAAMrC,sBAAsB,CAACoC,2BAAvB,CACrBvB,IAAI,CAACC,SAAL,CAAe;MACbwB,UAAU,EAAEP,MAAF,aAAEA,MAAF,uBAAEA,MAAM,CAAER,IADP;MAEbgB,UAAU,EAAER,MAAF,aAAEA,MAAF,uBAAEA,MAAM,CAAEL;IAFP,CAAf,CADqB,CAAvB;IAKA,OAAOW,QAAP;EACD,CAPD,CASA,OAAOJ,KAAP,EAAc;IACZ,OAAOC,OAAO,CAACC,MAAR,CAAeF,KAAf,CAAP;EACD;AACF,CAbM"}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.UNIT_SECURE_URL = exports.APIHeaders = void 0;
7
+
8
+ var _UnitSdkManager = require("../../../../unitSdkManager/UnitSdkManager");
9
+
10
+ const APIHeaders = {
11
+ AUTHORIZATION: 'Authorization',
12
+ CONTENT_TYPE: 'application/vnd.api+json'
13
+ };
14
+ exports.APIHeaders = APIHeaders;
15
+ const UNIT_SECURE_URL = {
16
+ [_UnitSdkManager.UNEnvironment.sandbox]: 'https://secure.api.s.unit.sh',
17
+ [_UnitSdkManager.UNEnvironment.production]: 'https://secure.api.unit.co'
18
+ };
19
+ exports.UNIT_SECURE_URL = UNIT_SECURE_URL;
20
+ //# sourceMappingURL=UNNetworkConstants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["APIHeaders","AUTHORIZATION","CONTENT_TYPE","UNIT_SECURE_URL","UNEnvironment","sandbox","production"],"sources":["UNNetworkConstants.ts"],"sourcesContent":["import { UNEnvironment } from '../../../../unitSdkManager/UnitSdkManager';\n\nexport const APIHeaders = {\n AUTHORIZATION: 'Authorization',\n CONTENT_TYPE: 'application/vnd.api+json',\n};\n\nexport const UNIT_SECURE_URL = {\n [UNEnvironment.sandbox]: 'https://secure.api.s.unit.sh',\n [UNEnvironment.production]: 'https://secure.api.unit.co'\n};\n"],"mappings":";;;;;;;AAAA;;AAEO,MAAMA,UAAU,GAAG;EACxBC,aAAa,EAAE,eADS;EAExBC,YAAY,EAAE;AAFU,CAAnB;;AAKA,MAAMC,eAAe,GAAG;EAC7B,CAACC,6BAAA,CAAcC,OAAf,GAAyB,8BADI;EAE7B,CAACD,6BAAA,CAAcE,UAAf,GAA4B;AAFC,CAAxB"}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getMobileWalletPayload = void 0;
7
+
8
+ var _axios = _interopRequireDefault(require("axios"));
9
+
10
+ var _UNNetworkConstants = require("../common/UNNetworkConstants");
11
+
12
+ var _reactNativeUnitComponents = require("react-native-unit-components");
13
+
14
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
+
16
+ const env = _reactNativeUnitComponents.UnitSDK.getEnv();
17
+
18
+ const getMobileWalletPayload = async (customerToken, cardId) => {
19
+ const headers = {
20
+ 'Content-Type': _UNNetworkConstants.APIHeaders.CONTENT_TYPE,
21
+ 'Authorization': `Bearer ${customerToken}`
22
+ };
23
+ const data = {
24
+ data: {
25
+ attributes: {
26
+ signedNonce: _reactNativeUnitComponents.UnitSDK.getSignedNonce()
27
+ }
28
+ }
29
+ };
30
+ const baseURL = `${_UNNetworkConstants.UNIT_SECURE_URL[env]}/cards/${cardId}/mobile-wallet-payload`;
31
+
32
+ try {
33
+ const response = await _axios.default.post(baseURL, data, {
34
+ headers: headers
35
+ });
36
+ const encryptedPayload = response.data.data.attributes.payload;
37
+ return encryptedPayload;
38
+ } catch (error) {
39
+ return Promise.reject(error);
40
+ }
41
+ };
42
+
43
+ exports.getMobileWalletPayload = getMobileWalletPayload;
44
+ //# sourceMappingURL=UNWalletPayloadRequest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["env","UnitSDK","getEnv","getMobileWalletPayload","customerToken","cardId","headers","APIHeaders","CONTENT_TYPE","data","attributes","signedNonce","getSignedNonce","baseURL","UNIT_SECURE_URL","response","axios","post","encryptedPayload","payload","error","Promise","reject"],"sources":["UNWalletPayloadRequest.ts"],"sourcesContent":["import axios from 'axios';\nimport { APIHeaders, UNIT_SECURE_URL } from '../common/UNNetworkConstants';\nimport { UNEnvironment, UnitSDK } from 'react-native-unit-components';\n\nconst env = UnitSDK.getEnv();\n\nexport const getMobileWalletPayload = async (customerToken: string, cardId: string) => {\n const headers = {\n 'Content-Type': APIHeaders.CONTENT_TYPE,\n 'Authorization': `Bearer ${customerToken}`,\n };\n\n const data = {\n data: {\n attributes: {\n signedNonce: UnitSDK.getSignedNonce(),\n },\n },\n };\n\n const baseURL = `${UNIT_SECURE_URL[env as keyof typeof UNEnvironment]}/cards/${cardId}/mobile-wallet-payload`;\n try {\n const response = await axios.post(\n baseURL,\n data,\n {\n headers: headers,\n });\n const encryptedPayload = response.data.data.attributes.payload;\n return encryptedPayload;\n } catch (error) {\n return Promise.reject(error);\n }\n};\n"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;;;AAEA,MAAMA,GAAG,GAAGC,kCAAA,CAAQC,MAAR,EAAZ;;AAEO,MAAMC,sBAAsB,GAAG,OAAOC,aAAP,EAA8BC,MAA9B,KAAiD;EACrF,MAAMC,OAAO,GAAG;IACd,gBAAgBC,8BAAA,CAAWC,YADb;IAEd,iBAAkB,UAASJ,aAAc;EAF3B,CAAhB;EAKA,MAAMK,IAAI,GAAG;IACXA,IAAI,EAAE;MACJC,UAAU,EAAE;QACVC,WAAW,EAAEV,kCAAA,CAAQW,cAAR;MADH;IADR;EADK,CAAb;EAQA,MAAMC,OAAO,GAAI,GAAEC,mCAAA,CAAgBd,GAAhB,CAAmD,UAASK,MAAO,wBAAtF;;EACA,IAAI;IACF,MAAMU,QAAQ,GAAG,MAAMC,cAAA,CAAMC,IAAN,CACrBJ,OADqB,EAErBJ,IAFqB,EAGrB;MACEH,OAAO,EAAEA;IADX,CAHqB,CAAvB;IAMA,MAAMY,gBAAgB,GAAGH,QAAQ,CAACN,IAAT,CAAcA,IAAd,CAAmBC,UAAnB,CAA8BS,OAAvD;IACA,OAAOD,gBAAP;EACD,CATD,CASE,OAAOE,KAAP,EAAc;IACd,OAAOC,OAAO,CAACC,MAAR,CAAeF,KAAf,CAAP;EACD;AACF,CA3BM"}
@@ -55,4 +55,17 @@ Object.keys(_UNActivityComponent).forEach(function (key) {
55
55
  }
56
56
  });
57
57
  });
58
+
59
+ var _UNAccountComponent = require("./UNAccountComponent/UNAccountComponent");
60
+
61
+ Object.keys(_UNAccountComponent).forEach(function (key) {
62
+ if (key === "default" || key === "__esModule") return;
63
+ if (key in exports && exports[key] === _UNAccountComponent[key]) return;
64
+ Object.defineProperty(exports, key, {
65
+ enumerable: true,
66
+ get: function () {
67
+ return _UNAccountComponent[key];
68
+ }
69
+ });
70
+ });
58
71
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from './UNCardComponent/UNCardComponent';\nexport * from './UNBottomSheetComponent/UNBottomSheetComponent';\nexport * from './UNBookPaymentComponent/UNBookPaymentComponent';\nexport * from './UNActivityComponent/UNActivityComponent';\n"],"mappings":";;;;;;AAAA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}
1
+ {"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from './UNCardComponent/UNCardComponent';\nexport * from './UNBottomSheetComponent/UNBottomSheetComponent';\nexport * from './UNBookPaymentComponent/UNBookPaymentComponent';\nexport * from './UNActivityComponent/UNActivityComponent';\nexport * from './UNAccountComponent/UNAccountComponent';\n"],"mappings":";;;;;;AAAA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}