react-native-unit-components 1.0.4 → 1.1.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 (249) hide show
  1. package/README.md +39 -8
  2. package/android/src/main/java/com/unitreactnativecomponents/UnitReactNativeComponentsPackage.kt +6 -1
  3. package/android/src/main/java/com/unitreactnativecomponents/getapplicationid/UNAppInfoModule.kt +35 -0
  4. package/lib/commonjs/assets/images/index.js +0 -2
  5. package/lib/commonjs/assets/images/index.js.map +1 -1
  6. package/lib/commonjs/components/UNACHCreditComponent/UNACHCreditComponent.js +64 -0
  7. package/lib/commonjs/components/UNACHCreditComponent/UNACHCreditComponent.js.map +1 -0
  8. package/lib/commonjs/components/UNACHCreditComponent/UNACHCreditComponent.utils.js +31 -0
  9. package/lib/commonjs/components/UNACHCreditComponent/UNACHCreditComponent.utils.js.map +1 -0
  10. package/lib/commonjs/components/UNACHDebitComponent/UNACHDebitComponent.js +108 -0
  11. package/lib/commonjs/components/UNACHDebitComponent/UNACHDebitComponent.js.map +1 -0
  12. package/lib/commonjs/components/UNACHDebitComponent/UNACHDebitComponent.utils.js +58 -0
  13. package/lib/commonjs/components/UNACHDebitComponent/UNACHDebitComponent.utils.js.map +1 -0
  14. package/lib/commonjs/components/UNAccountComponent/UNAccountComponent.js +3 -29
  15. package/lib/commonjs/components/UNAccountComponent/UNAccountComponent.js.map +1 -1
  16. package/lib/commonjs/components/UNAccountComponent/UNAccountComponent.utils.js +0 -11
  17. package/lib/commonjs/components/UNAccountComponent/UNAccountComponent.utils.js.map +1 -1
  18. package/lib/commonjs/components/UNActivityComponent/UNActivityComponent.js +2 -22
  19. package/lib/commonjs/components/UNActivityComponent/UNActivityComponent.js.map +1 -1
  20. package/lib/commonjs/components/UNActivityComponent/UNActivityComponent.utils.js +0 -8
  21. package/lib/commonjs/components/UNActivityComponent/UNActivityComponent.utils.js.map +1 -1
  22. package/lib/commonjs/components/UNBookPaymentComponent/UNBookPaymentComponent.js +2 -23
  23. package/lib/commonjs/components/UNBookPaymentComponent/UNBookPaymentComponent.js.map +1 -1
  24. package/lib/commonjs/components/UNBookPaymentComponent/UNBookPaymentComponent.utils.js +3 -9
  25. package/lib/commonjs/components/UNBookPaymentComponent/UNBookPaymentComponent.utils.js.map +1 -1
  26. package/lib/commonjs/components/UNBottomSheetComponent/UNBottomSheetComponent.constants.js.map +1 -1
  27. package/lib/commonjs/components/UNBottomSheetComponent/UNBottomSheetComponent.js +4 -59
  28. package/lib/commonjs/components/UNBottomSheetComponent/UNBottomSheetComponent.js.map +1 -1
  29. package/lib/commonjs/components/UNBottomSheetComponent/UNBottomSheetComponent.styles.js +0 -3
  30. package/lib/commonjs/components/UNBottomSheetComponent/UNBottomSheetComponent.styles.js.map +1 -1
  31. package/lib/commonjs/components/UNBottomSheetComponent/UNBottomSheetComponent.utils.js +0 -10
  32. package/lib/commonjs/components/UNBottomSheetComponent/UNBottomSheetComponent.utils.js.map +1 -1
  33. package/lib/commonjs/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.js +2 -24
  34. package/lib/commonjs/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.js.map +1 -1
  35. package/lib/commonjs/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.styles.js +0 -3
  36. package/lib/commonjs/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.styles.js.map +1 -1
  37. package/lib/commonjs/components/UNCardComponent/UNCardComponent.js +13 -41
  38. package/lib/commonjs/components/UNCardComponent/UNCardComponent.js.map +1 -1
  39. package/lib/commonjs/components/UNCardComponent/UNCardComponent.utils.js +3 -17
  40. package/lib/commonjs/components/UNCardComponent/UNCardComponent.utils.js.map +1 -1
  41. package/lib/commonjs/components/UNCardComponent/networking/common/UNNetworkConstants.js +0 -2
  42. package/lib/commonjs/components/UNCardComponent/networking/common/UNNetworkConstants.js.map +1 -1
  43. package/lib/commonjs/components/UNCardComponent/networking/requests/UNWalletPayloadRequest.js +2 -9
  44. package/lib/commonjs/components/UNCardComponent/networking/requests/UNWalletPayloadRequest.js.map +1 -1
  45. package/lib/commonjs/components/index.js +22 -10
  46. package/lib/commonjs/components/index.js.map +1 -1
  47. package/lib/commonjs/helpers/BottomSheet/BottomSheet.js +5 -47
  48. package/lib/commonjs/helpers/BottomSheet/BottomSheet.js.map +1 -1
  49. package/lib/commonjs/helpers/BottomSheet/BottomSheet.styles.js +0 -5
  50. package/lib/commonjs/helpers/BottomSheet/BottomSheet.styles.js.map +1 -1
  51. package/lib/commonjs/helpers/EventBus.js +4 -17
  52. package/lib/commonjs/helpers/EventBus.js.map +1 -1
  53. package/lib/commonjs/hooks/listenerToBus.js +14 -14
  54. package/lib/commonjs/hooks/listenerToBus.js.map +1 -1
  55. package/lib/commonjs/hooks/useAppStateListener.js +1 -6
  56. package/lib/commonjs/hooks/useAppStateListener.js.map +1 -1
  57. package/lib/commonjs/index.js +0 -5
  58. package/lib/commonjs/index.js.map +1 -1
  59. package/lib/commonjs/messages/nativeMessages/cardMessage.js +0 -5
  60. package/lib/commonjs/messages/nativeMessages/cardMessage.js.map +1 -1
  61. package/lib/commonjs/messages/nativeMessages/sdkMessage.js +0 -1
  62. package/lib/commonjs/messages/nativeMessages/sdkMessage.js.map +1 -1
  63. package/lib/commonjs/messages/webMessages/achCreditMessage.js +6 -0
  64. package/lib/commonjs/messages/webMessages/achCreditMessage.js.map +1 -0
  65. package/lib/commonjs/messages/webMessages/bookPaymentMessage.js +0 -7
  66. package/lib/commonjs/messages/webMessages/bookPaymentMessage.js.map +1 -1
  67. package/lib/commonjs/messages/webMessages/cardMessage.js +0 -1
  68. package/lib/commonjs/messages/webMessages/cardMessage.js.map +1 -1
  69. package/lib/commonjs/messages/webMessages/index.js.map +1 -1
  70. package/lib/commonjs/messages/webMessages/pageMessage.js +0 -1
  71. package/lib/commonjs/messages/webMessages/pageMessage.js.map +1 -1
  72. package/lib/commonjs/messages/webMessages/paymentsMessage.js +12 -0
  73. package/lib/commonjs/messages/webMessages/paymentsMessage.js.map +1 -0
  74. package/lib/commonjs/messages/webMessages/unitMessages.js +3 -1
  75. package/lib/commonjs/messages/webMessages/unitMessages.js.map +1 -1
  76. package/lib/commonjs/nativeComponent/UnitAddToWalletButton.js +0 -2
  77. package/lib/commonjs/nativeComponent/UnitAddToWalletButton.js.map +1 -1
  78. package/lib/commonjs/scripts/html/bodyHtml.js +0 -8
  79. package/lib/commonjs/scripts/html/bodyHtml.js.map +1 -1
  80. package/lib/commonjs/scripts/html/bodyScript.js +24 -6
  81. package/lib/commonjs/scripts/html/bodyScript.js.map +1 -1
  82. package/lib/commonjs/sharedTypes/achCredit.types.js +6 -0
  83. package/lib/commonjs/sharedTypes/achCredit.types.js.map +1 -0
  84. package/lib/commonjs/sharedTypes/bookPayment.types.js.map +1 -1
  85. package/lib/commonjs/sharedTypes/index.js +22 -6
  86. package/lib/commonjs/sharedTypes/index.js.map +1 -1
  87. package/lib/commonjs/sharedTypes/payments.types.js +12 -0
  88. package/lib/commonjs/sharedTypes/payments.types.js.map +1 -0
  89. package/lib/commonjs/sharedTypes/wallet.types.js +0 -3
  90. package/lib/commonjs/sharedTypes/wallet.types.js.map +1 -1
  91. package/lib/commonjs/styles/variables.js.map +1 -1
  92. package/lib/commonjs/unitSdkManager/UnitSdk.api.js +1 -15
  93. package/lib/commonjs/unitSdkManager/UnitSdk.api.js.map +1 -1
  94. package/lib/commonjs/unitSdkManager/UnitSdkManager.js +3 -20
  95. package/lib/commonjs/unitSdkManager/UnitSdkManager.js.map +1 -1
  96. package/lib/commonjs/webComponent/WebComponent.js +7 -36
  97. package/lib/commonjs/webComponent/WebComponent.js.map +1 -1
  98. package/lib/commonjs/webComponent/WebComponent.utils.js +0 -7
  99. package/lib/commonjs/webComponent/WebComponent.utils.js.map +1 -1
  100. package/lib/commonjs/webComponent/html.js +7 -8
  101. package/lib/commonjs/webComponent/html.js.map +1 -1
  102. package/lib/module/assets/images/index.js.map +1 -1
  103. package/lib/module/components/UNACHCreditComponent/UNACHCreditComponent.js +55 -0
  104. package/lib/module/components/UNACHCreditComponent/UNACHCreditComponent.js.map +1 -0
  105. package/lib/module/components/UNACHCreditComponent/UNACHCreditComponent.utils.js +23 -0
  106. package/lib/module/components/UNACHCreditComponent/UNACHCreditComponent.utils.js.map +1 -0
  107. package/lib/module/components/UNACHDebitComponent/UNACHDebitComponent.js +99 -0
  108. package/lib/module/components/UNACHDebitComponent/UNACHDebitComponent.js.map +1 -0
  109. package/lib/module/components/UNACHDebitComponent/UNACHDebitComponent.utils.js +48 -0
  110. package/lib/module/components/UNACHDebitComponent/UNACHDebitComponent.utils.js.map +1 -0
  111. package/lib/module/components/UNAccountComponent/UNAccountComponent.js +3 -11
  112. package/lib/module/components/UNAccountComponent/UNAccountComponent.js.map +1 -1
  113. package/lib/module/components/UNAccountComponent/UNAccountComponent.utils.js.map +1 -1
  114. package/lib/module/components/UNActivityComponent/UNActivityComponent.js +2 -9
  115. package/lib/module/components/UNActivityComponent/UNActivityComponent.js.map +1 -1
  116. package/lib/module/components/UNActivityComponent/UNActivityComponent.utils.js.map +1 -1
  117. package/lib/module/components/UNBookPaymentComponent/UNBookPaymentComponent.js +2 -11
  118. package/lib/module/components/UNBookPaymentComponent/UNBookPaymentComponent.js.map +1 -1
  119. package/lib/module/components/UNBookPaymentComponent/UNBookPaymentComponent.utils.js +3 -3
  120. package/lib/module/components/UNBookPaymentComponent/UNBookPaymentComponent.utils.js.map +1 -1
  121. package/lib/module/components/UNBottomSheetComponent/UNBottomSheetComponent.constants.js.map +1 -1
  122. package/lib/module/components/UNBottomSheetComponent/UNBottomSheetComponent.js +4 -35
  123. package/lib/module/components/UNBottomSheetComponent/UNBottomSheetComponent.js.map +1 -1
  124. package/lib/module/components/UNBottomSheetComponent/UNBottomSheetComponent.styles.js.map +1 -1
  125. package/lib/module/components/UNBottomSheetComponent/UNBottomSheetComponent.utils.js.map +1 -1
  126. package/lib/module/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.js +2 -7
  127. package/lib/module/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.js.map +1 -1
  128. package/lib/module/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.styles.js.map +1 -1
  129. package/lib/module/components/UNCardComponent/UNCardComponent.js +13 -20
  130. package/lib/module/components/UNCardComponent/UNCardComponent.js.map +1 -1
  131. package/lib/module/components/UNCardComponent/UNCardComponent.utils.js +3 -1
  132. package/lib/module/components/UNCardComponent/UNCardComponent.utils.js.map +1 -1
  133. package/lib/module/components/UNCardComponent/networking/common/UNNetworkConstants.js.map +1 -1
  134. package/lib/module/components/UNCardComponent/networking/requests/UNWalletPayloadRequest.js +1 -2
  135. package/lib/module/components/UNCardComponent/networking/requests/UNWalletPayloadRequest.js.map +1 -1
  136. package/lib/module/components/index.js +2 -0
  137. package/lib/module/components/index.js.map +1 -1
  138. package/lib/module/helpers/BottomSheet/BottomSheet.js +5 -31
  139. package/lib/module/helpers/BottomSheet/BottomSheet.js.map +1 -1
  140. package/lib/module/helpers/BottomSheet/BottomSheet.styles.js +2 -1
  141. package/lib/module/helpers/BottomSheet/BottomSheet.styles.js.map +1 -1
  142. package/lib/module/helpers/EventBus.js +4 -15
  143. package/lib/module/helpers/EventBus.js.map +1 -1
  144. package/lib/module/hooks/listenerToBus.js +14 -10
  145. package/lib/module/hooks/listenerToBus.js.map +1 -1
  146. package/lib/module/hooks/useAppStateListener.js +0 -2
  147. package/lib/module/hooks/useAppStateListener.js.map +1 -1
  148. package/lib/module/index.js.map +1 -1
  149. package/lib/module/messages/nativeMessages/cardMessage.js +0 -5
  150. package/lib/module/messages/nativeMessages/cardMessage.js.map +1 -1
  151. package/lib/module/messages/nativeMessages/sdkMessage.js +0 -1
  152. package/lib/module/messages/nativeMessages/sdkMessage.js.map +1 -1
  153. package/lib/module/messages/webMessages/achCreditMessage.js +2 -0
  154. package/lib/module/messages/webMessages/achCreditMessage.js.map +1 -0
  155. package/lib/module/messages/webMessages/bookPaymentMessage.js +1 -5
  156. package/lib/module/messages/webMessages/bookPaymentMessage.js.map +1 -1
  157. package/lib/module/messages/webMessages/cardMessage.js +0 -1
  158. package/lib/module/messages/webMessages/cardMessage.js.map +1 -1
  159. package/lib/module/messages/webMessages/index.js.map +1 -1
  160. package/lib/module/messages/webMessages/pageMessage.js +0 -1
  161. package/lib/module/messages/webMessages/pageMessage.js.map +1 -1
  162. package/lib/module/messages/webMessages/paymentsMessage.js +5 -0
  163. package/lib/module/messages/webMessages/paymentsMessage.js.map +1 -0
  164. package/lib/module/messages/webMessages/unitMessages.js +3 -1
  165. package/lib/module/messages/webMessages/unitMessages.js.map +1 -1
  166. package/lib/module/nativeComponent/UnitAddToWalletButton.js.map +1 -1
  167. package/lib/module/scripts/html/bodyHtml.js +0 -7
  168. package/lib/module/scripts/html/bodyHtml.js.map +1 -1
  169. package/lib/module/scripts/html/bodyScript.js +22 -1
  170. package/lib/module/scripts/html/bodyScript.js.map +1 -1
  171. package/lib/module/sharedTypes/achCredit.types.js +2 -0
  172. package/lib/module/sharedTypes/achCredit.types.js.map +1 -0
  173. package/lib/module/sharedTypes/bookPayment.types.js.map +1 -1
  174. package/lib/module/sharedTypes/index.js +2 -0
  175. package/lib/module/sharedTypes/index.js.map +1 -1
  176. package/lib/module/sharedTypes/payments.types.js +5 -0
  177. package/lib/module/sharedTypes/payments.types.js.map +1 -0
  178. package/lib/module/sharedTypes/wallet.types.js +0 -3
  179. package/lib/module/sharedTypes/wallet.types.js.map +1 -1
  180. package/lib/module/styles/variables.js.map +1 -1
  181. package/lib/module/unitSdkManager/UnitSdk.api.js +1 -6
  182. package/lib/module/unitSdkManager/UnitSdk.api.js.map +1 -1
  183. package/lib/module/unitSdkManager/UnitSdkManager.js +3 -12
  184. package/lib/module/unitSdkManager/UnitSdkManager.js.map +1 -1
  185. package/lib/module/webComponent/WebComponent.js +7 -18
  186. package/lib/module/webComponent/WebComponent.js.map +1 -1
  187. package/lib/module/webComponent/WebComponent.utils.js +0 -1
  188. package/lib/module/webComponent/WebComponent.utils.js.map +1 -1
  189. package/lib/module/webComponent/html.js +7 -5
  190. package/lib/module/webComponent/html.js.map +1 -1
  191. package/lib/typescript/components/UNACHCreditComponent/UNACHCreditComponent.d.ts +11 -0
  192. package/lib/typescript/components/UNACHCreditComponent/UNACHCreditComponent.utils.d.ts +3 -0
  193. package/lib/typescript/components/UNACHDebitComponent/UNACHDebitComponent.d.ts +11 -0
  194. package/lib/typescript/components/UNACHDebitComponent/UNACHDebitComponent.utils.d.ts +7 -0
  195. package/lib/typescript/components/UNBottomSheetComponent/UNBottomSheetComponent.d.ts +1 -1
  196. package/lib/typescript/components/UNCardComponent/UNCardComponent.d.ts +4 -1
  197. package/lib/typescript/components/UNCardComponent/networking/requests/UNWalletPayloadRequest.d.ts +1 -1
  198. package/lib/typescript/components/index.d.ts +2 -0
  199. package/lib/typescript/helpers/EventBus.d.ts +1 -1
  200. package/lib/typescript/hooks/listenerToBus.d.ts +2 -2
  201. package/lib/typescript/messages/nativeMessages/cardMessage.d.ts +1 -1
  202. package/lib/typescript/messages/nativeMessages/index.d.ts +2 -2
  203. package/lib/typescript/messages/nativeMessages/sdkMessage.d.ts +1 -1
  204. package/lib/typescript/messages/webMessages/achCreditMessage.d.ts +5 -0
  205. package/lib/typescript/messages/webMessages/bookPaymentMessage.d.ts +1 -4
  206. package/lib/typescript/messages/webMessages/cardMessage.d.ts +1 -1
  207. package/lib/typescript/messages/webMessages/index.d.ts +5 -3
  208. package/lib/typescript/messages/webMessages/pageMessage.d.ts +1 -1
  209. package/lib/typescript/messages/webMessages/paymentsMessage.d.ts +3 -0
  210. package/lib/typescript/messages/webMessages/unitMessages.d.ts +20 -2
  211. package/lib/typescript/nativeComponent/UnitAddToWalletButton.d.ts +1 -1
  212. package/lib/typescript/scripts/html/bodyScript.d.ts +3 -0
  213. package/lib/typescript/sharedTypes/achCredit.types.d.ts +31 -0
  214. package/lib/typescript/sharedTypes/bookPayment.types.d.ts +3 -4
  215. package/lib/typescript/sharedTypes/card.types.d.ts +4 -4
  216. package/lib/typescript/sharedTypes/index.d.ts +2 -0
  217. package/lib/typescript/sharedTypes/onLoadResponse.types.d.ts +3 -3
  218. package/lib/typescript/sharedTypes/payments.types.d.ts +12 -0
  219. package/lib/typescript/sharedTypes/types.d.ts +6 -6
  220. package/lib/typescript/webComponent/WebComponent.d.ts +3 -1
  221. package/package.json +4 -2
  222. package/src/components/UNACHCreditComponent/UNACHCreditComponent.tsx +73 -0
  223. package/src/components/UNACHCreditComponent/UNACHCreditComponent.utils.ts +26 -0
  224. package/src/components/UNACHDebitComponent/UNACHDebitComponent.tsx +117 -0
  225. package/src/components/UNACHDebitComponent/UNACHDebitComponent.utils.ts +48 -0
  226. package/src/components/UNAccountComponent/UNAccountComponent.tsx +2 -4
  227. package/src/components/UNActivityComponent/UNActivityComponent.tsx +1 -3
  228. package/src/components/UNBookPaymentComponent/UNBookPaymentComponent.tsx +3 -2
  229. package/src/components/UNBookPaymentComponent/UNBookPaymentComponent.utils.ts +3 -3
  230. package/src/components/UNBottomSheetComponent/UNBottomSheetComponent.tsx +2 -4
  231. package/src/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.tsx +1 -3
  232. package/src/components/UNCardComponent/UNCardComponent.tsx +14 -7
  233. package/src/components/UNCardComponent/UNCardComponent.utils.ts +3 -0
  234. package/src/components/UNCardComponent/networking/requests/UNWalletPayloadRequest.ts +1 -1
  235. package/src/components/index.ts +2 -0
  236. package/src/helpers/BottomSheet/BottomSheet.tsx +3 -7
  237. package/src/hooks/listenerToBus.ts +15 -10
  238. package/src/messages/webMessages/achCreditMessage.ts +8 -0
  239. package/src/messages/webMessages/bookPaymentMessage.ts +0 -4
  240. package/src/messages/webMessages/index.ts +7 -2
  241. package/src/messages/webMessages/paymentsMessage.ts +3 -0
  242. package/src/messages/webMessages/unitMessages.ts +25 -1
  243. package/src/scripts/html/bodyScript.ts +23 -1
  244. package/src/sharedTypes/achCredit.types.ts +32 -0
  245. package/src/sharedTypes/bookPayment.types.ts +2 -3
  246. package/src/sharedTypes/index.ts +2 -0
  247. package/src/sharedTypes/payments.types.ts +14 -0
  248. package/src/webComponent/WebComponent.tsx +5 -5
  249. package/src/webComponent/html.ts +7 -5
@@ -5,12 +5,12 @@ import { HeightEvent, PageMessage } from '../..//messages/webMessages/pageMessag
5
5
  import { RequestRefreshEvent, RequestRenderingEvent, UnitMessage } from '../../messages/webMessages/unitMessages';
6
6
  import EventBus from '../../helpers/EventBus';
7
7
  import { WebComponent, WebComponentType } from '../../webComponent/WebComponent';
8
- import { useListenerToBus } from '../../hooks/listenerToBus';
9
8
  import type { WebViewMessage } from '../../messages/webMessages';
10
9
  import { getAccountParams, getAccountScript, injectRefreshEventIfNeeded } from './UNAccountComponent.utils';
11
10
  import { PresentationMode } from '../../scripts/html/bodyHtml';
12
11
  import type { BottomSheetSlotData } from '../UNBottomSheetComponent/UNBottomSheetComponent';
13
12
  import type { ResponseUnitOnLoadEvent } from '../../sharedTypes';
13
+ import { useListenerToBus } from '../../hooks/listenerToBus';
14
14
 
15
15
  export interface UNAccountComponentProps {
16
16
  accountId?: string;
@@ -36,9 +36,7 @@ export const UNAccountComponent = (props: UNAccountComponentProps) => {
36
36
  setRequestRefreshEvent(data);
37
37
  };
38
38
 
39
- useListenerToBus([
40
- { busEventKey: UnitMessage.UNIT_REQUEST_REFRESH, action: requestRefresh },
41
- ]);
39
+ useListenerToBus({ busEventKey: UnitMessage.UNIT_REQUEST_REFRESH, action: requestRefresh });
42
40
 
43
41
  useEffect(() => {
44
42
  injectRefreshEventIfNeeded(webRef.current, requestRefreshEvent);
@@ -26,9 +26,7 @@ export const UNActivityComponent = (props: UNActivityComponentProps) => {
26
26
  injectRefreshEventIfNeeded(webRef.current, data);
27
27
  };
28
28
 
29
- useListenerToBus([
30
- { busEventKey: UnitMessage.UNIT_REQUEST_REFRESH, action: requestRefresh },
31
- ]);
29
+ useListenerToBus({ busEventKey: UnitMessage.UNIT_REQUEST_REFRESH, action: requestRefresh });
32
30
 
33
31
  const handleWebViewMessage = (message: WebViewMessage) => {
34
32
  switch (message.type) {
@@ -3,11 +3,12 @@ import { WebComponent, WebComponentType } from '../../webComponent/WebComponent'
3
3
  import { PresentationMode } from '../../scripts/html/bodyHtml';
4
4
  import { getBookPaymentParams, getBookPaymentScript } from './UNBookPaymentComponent.utils';
5
5
  import type { WebViewMessage } from '../../messages/webMessages';
6
- import { BookPaymentEvent, BookPaymentMessage } from '../../messages/webMessages/bookPaymentMessage';
7
6
  import type { ResponseUnitOnLoadEvent, UNBookPaymentData } from '../../sharedTypes';
8
7
  import { HeightEvent, PageMessage } from '../../messages/webMessages/pageMessage';
9
8
  import { View } from 'react-native';
10
9
  import { UnitMessage } from '../../messages/webMessages/unitMessages';
10
+ import { PaymentMessage } from '../../messages/webMessages/paymentsMessage';
11
+ import type { BookPaymentEvent } from '../../messages/webMessages/bookPaymentMessage';
11
12
 
12
13
  export interface UNBookPaymentComponentProps {
13
14
  accountId: string;
@@ -28,7 +29,7 @@ export const UNBookPaymentComponent = (props: UNBookPaymentComponentProps) => {
28
29
  if (!message || !message.details) return;
29
30
 
30
31
  switch (message.type) {
31
- case BookPaymentMessage.PAYMENT_CREATED:
32
+ case PaymentMessage.PAYMENT_CREATED:
32
33
  props.onPaymentCreated && props.onPaymentCreated((message.details as BookPaymentEvent).data);
33
34
  break;
34
35
  case UnitMessage.UNIT_ON_LOAD:
@@ -1,7 +1,7 @@
1
1
  import { LISTENERS } from './../../scripts/html/bodyScript';
2
2
  import type { UNBookPaymentComponentProps } from './UNBookPaymentComponent';
3
3
 
4
- import { BookPaymentMessage } from '../../messages/webMessages/bookPaymentMessage';
4
+ import { PaymentMessage } from '../../messages/webMessages/paymentsMessage';
5
5
 
6
6
  export const getBookPaymentParams = (props: UNBookPaymentComponentProps) => {
7
7
  return `
@@ -16,10 +16,10 @@ export const getBookPaymentParams = (props: UNBookPaymentComponentProps) => {
16
16
 
17
17
  export const getBookPaymentScript = () => {
18
18
  return `
19
- window.addEventListener("${BookPaymentMessage.PAYMENT_CREATED}", (e) => {
19
+ window.addEventListener("${PaymentMessage.PAYMENT_CREATED}", (e) => {
20
20
  const response = e.detail
21
21
  response.then((data) => {
22
- postMessageToSDK({ type: "${BookPaymentMessage.PAYMENT_CREATED}", details: { data: JSON.stringify(data.data) }})
22
+ postMessageToSDK({ type: "${PaymentMessage.PAYMENT_CREATED}", details: { data: JSON.stringify(data.data) }})
23
23
  }).catch((e) => {
24
24
  console.log(e)
25
25
  })
@@ -109,10 +109,8 @@ export const UNBottomSheetComponent = () => {
109
109
  }
110
110
  }, [waitForLoadingNewComponent, newHeightMessage]);
111
111
 
112
- useListenerToBus([
113
- { busEventKey: UnitMessage.UNIT_REQUEST_RENDERING, action: handleRequestRendering },
114
- { busEventKey: UnitMessage.UNIT_REQUEST_CLOSE_FLOW, action: handleCloseFlow }
115
- ]);
112
+ useListenerToBus({ busEventKey: UnitMessage.UNIT_REQUEST_RENDERING, action: handleRequestRendering });
113
+ useListenerToBus({ busEventKey: UnitMessage.UNIT_REQUEST_CLOSE_FLOW, action: handleCloseFlow });
116
114
 
117
115
  const setNewHeight = (message: WebViewMessage) => {
118
116
  if (!requestRenderingEvent) return;
@@ -49,9 +49,7 @@ export const UNAddToWalletBottomSheetItem = (props: UNAddToWalletBottomSheetItem
49
49
  }
50
50
  };
51
51
 
52
- useListenerToBus([
53
- { busEventKey: CardNativeMessage.CARD_UPDATE_ADD_TO_WALLET_STATUS, action: gotCardWalletStatus },
54
- ]);
52
+ useListenerToBus({ busEventKey: CardNativeMessage.CARD_UPDATE_ADD_TO_WALLET_STATUS, action: gotCardWalletStatus });
55
53
 
56
54
  const handleAddToWalletClicked = () => {
57
55
  if (!cardId) return;
@@ -17,18 +17,27 @@ import type { UNWallet } from 'src/sharedTypes/wallet.types';
17
17
  import { CardAddToWalletErrors, CardAddToWalletStatusEvent, CardGetAddToWalletStatusEvent, CardNativeMessage, CardStartPushProvisioningEvent } from '../../messages/nativeMessages/cardMessage';
18
18
  import type { BottomSheetSlotData } from '../UNBottomSheetComponent/UNBottomSheetComponent';
19
19
  export interface UNCardComponentProps {
20
+ // inputs
20
21
  cardId: string;
21
22
  customerToken: string;
22
23
  theme?: string;
24
+ hideActionsMenuButton?: boolean;
25
+ hideCardTitle?: boolean;
26
+ hideSensitiveDataButton?: boolean;
27
+
28
+ // events
29
+ onLoad?: (response: ResponseUnitOnLoadEvent) => void
23
30
  onStatusChanged?: (card: UNCardData) => void;
24
31
  pushProvisioningModule?: typeof NativeModules;
25
- onLoad?: (response: ResponseUnitOnLoadEvent) => void
26
32
  }
27
33
 
28
34
  export const UNCardComponent = (props: UNCardComponentProps) => {
29
35
  const [height, setHeight] = useState(0);
30
36
  const windowWidth = Dimensions.get('window').width;
37
+
31
38
  const walletRef = useRef<UNWallet | null>(null);
39
+ // walletRef can be changed to a state. (After the change of the listener hook)
40
+ // TODO: walletState and checks it works. =)
32
41
 
33
42
  const webRef = useRef<WebView>(null);
34
43
 
@@ -52,12 +61,10 @@ export const UNCardComponent = (props: UNCardComponentProps) => {
52
61
  getWallets();
53
62
  };
54
63
 
55
- useListenerToBus([
56
- { busEventKey: CardMessage.CARD_STATUS_CHANGED, action: cardStatusChanged },
57
- { busEventKey: UnitMessage.UNIT_REQUEST_REFRESH, action: requestRefresh },
58
- { busEventKey: CardNativeMessage.CARD_START_PUSH_PROVISIONING, action: startPushProvisioning },
59
- { busEventKey: CardNativeMessage.CARD_GET_ADD_TO_WALLET_STATUS, action: getAddToWalletStatus }
60
- ]);
64
+ useListenerToBus({ busEventKey: UnitMessage.UNIT_REQUEST_REFRESH, action: requestRefresh });
65
+ useListenerToBus({ busEventKey: CardMessage.CARD_STATUS_CHANGED, action: cardStatusChanged });
66
+ useListenerToBus({ busEventKey: CardNativeMessage.CARD_START_PUSH_PROVISIONING, action: startPushProvisioning });
67
+ useListenerToBus({ busEventKey: CardNativeMessage.CARD_GET_ADD_TO_WALLET_STATUS, action: getAddToWalletStatus });
61
68
 
62
69
  const handleMessage = (message: WebViewMessage) => {
63
70
  if (!message || !message.details) return;
@@ -13,6 +13,9 @@ export const getCardParams = (props: UNCardComponentProps) => {
13
13
  card-id="${props.cardId}"
14
14
  customer-token="${props.customerToken}"
15
15
  enable-mobile-wallet="${!!props.pushProvisioningModule}"
16
+ hide-actions-menu-button="${props.hideActionsMenuButton || false}"
17
+ hide-card-title="${props.hideCardTitle || false}"
18
+ hide-sensitive-data-button="${props.hideSensitiveDataButton || false}"
16
19
  `;
17
20
  };
18
21
 
@@ -1,6 +1,6 @@
1
1
  import axios from 'axios';
2
2
  import { APIHeaders, UNIT_SECURE_URL } from '../common/UNNetworkConstants';
3
- import { UNEnvironment, UnitSDK } from 'react-native-unit-components';
3
+ import { UnitSDK, UNEnvironment } from '../../../../unitSdkManager/UnitSdkManager';
4
4
 
5
5
  export const getMobileWalletPayload = async (customerToken: string, cardId: string, env: UNEnvironment) => {
6
6
  const headers = {
@@ -3,3 +3,5 @@ export * from './UNBottomSheetComponent/UNBottomSheetComponent';
3
3
  export * from './UNBookPaymentComponent/UNBookPaymentComponent';
4
4
  export * from './UNActivityComponent/UNActivityComponent';
5
5
  export * from './UNAccountComponent/UNAccountComponent';
6
+ export * from './UNACHDebitComponent/UNACHDebitComponent';
7
+ export * from './UNACHCreditComponent/UNACHCreditComponent';
@@ -61,8 +61,6 @@ const BottomSheet = (props: BottomSheetProps) => {
61
61
  collapse();
62
62
  } else if (!props.expandToMaxHeightEnabled) {
63
63
  contentHeight && setToContentHeight(contentHeight);
64
- } else if (dy < 0) {
65
- expand();
66
64
  } else {
67
65
  expand();
68
66
  }
@@ -70,10 +68,9 @@ const BottomSheet = (props: BottomSheetProps) => {
70
68
  });
71
69
 
72
70
  useEffect(() => {
73
- if (!isAppActive && isPanelOpened) {
74
- setContentHeight(0);
75
- _dismiss(false);
76
- }
71
+ // on App Active State change reset the bottom-sheet
72
+ setContentHeight(0);
73
+ _dismiss(false);
77
74
  }, [isAppActive]);
78
75
 
79
76
  useEffect(() => {
@@ -150,7 +147,6 @@ const BottomSheet = (props: BottomSheetProps) => {
150
147
  _dismiss();
151
148
  return;
152
149
  }
153
-
154
150
  contentHeight && setToContentHeight(contentHeight);
155
151
  };
156
152
 
@@ -1,5 +1,5 @@
1
1
  /* eslint-disable @typescript-eslint/no-explicit-any */
2
- import { useEffect } from 'react';
2
+ import { useEffect, useState } from 'react';
3
3
  import EventBus, { BusEventKey } from '../helpers/EventBus';
4
4
 
5
5
  type Listener = {
@@ -7,17 +7,22 @@ type Listener = {
7
7
  action: (data: any) => void
8
8
  }
9
9
 
10
- export const useListenerToBus = (listeners: Listener[]) => {
10
+ export const useListenerToBus = (listener: Listener) => {
11
+ const [eventData, setEventData] = useState<any>();
12
+ const callback = (eventData: any) => setEventData(eventData);
13
+
11
14
  useEffect(() => {
12
- {
13
- listeners.map((listener: {busEventKey: BusEventKey, action: (data: any) => void}) => {
14
- EventBus.Instance.addListener(listener.busEventKey, listener.action);
15
- });
16
- }
15
+ // listen to callback
16
+ EventBus.Instance.addListener(listener.busEventKey, callback);
17
+
18
+ // Remove listener on UnMount.
17
19
  return (() => {
18
- listeners.map((listener: {busEventKey: BusEventKey, action: (data: any) => void}) => {
19
- EventBus.Instance.removeListener(listener.action);
20
- });
20
+ EventBus.Instance.removeListener(callback);
21
21
  });
22
22
  }, []);
23
+
24
+ // Call to action when event is changed. (To be updated with the current props).
25
+ useEffect(() => {
26
+ eventData && listener.action(eventData);
27
+ }, [eventData]);
23
28
  };
@@ -0,0 +1,8 @@
1
+ import type { UNACHData } from '../../sharedTypes';
2
+
3
+ export interface PaymentCreatedEvent {
4
+ data: UNACHData
5
+ }
6
+
7
+ export type ACHEvent =
8
+ | PaymentCreatedEvent
@@ -1,9 +1,5 @@
1
1
  import type { UNBookPaymentData } from '../../sharedTypes';
2
2
 
3
- export enum BookPaymentMessage {
4
- PAYMENT_CREATED = 'unitPaymentCreated'
5
- }
6
-
7
3
  export interface PaymentCreatedEvent {
8
4
  data: UNBookPaymentData
9
5
  }
@@ -1,19 +1,24 @@
1
- import type { BookPaymentEvent, BookPaymentMessage } from './bookPaymentMessage';
1
+ import type { ACHEvent } from './achCreditMessage';
2
+ import type { BookPaymentEvent } from './bookPaymentMessage';
3
+
2
4
  import type { CardEvent, CardMessage } from './cardMessage';
3
5
  import type { PageEvent, PageMessage } from './pageMessage';
6
+ import type { PaymentMessage } from './paymentsMessage';
4
7
  import type { UnitEvent, UnitMessage } from './unitMessages';
5
8
 
6
9
  export type WebViewMessageType =
7
10
  | PageMessage
8
11
  | CardMessage
9
12
  | UnitMessage
10
- | BookPaymentMessage
13
+ | PaymentMessage
11
14
 
12
15
  type WebViewEvent =
13
16
  | PageEvent
14
17
  | UnitEvent
15
18
  | CardEvent
16
19
  | BookPaymentEvent
20
+ | PaymentMessage
21
+ | ACHEvent
17
22
 
18
23
  export interface WebViewMessage {
19
24
  type: WebViewMessageType,
@@ -0,0 +1,3 @@
1
+ export enum PaymentMessage {
2
+ PAYMENT_CREATED = 'unitPaymentCreated'
3
+ }
@@ -6,7 +6,11 @@ export enum UnitMessage {
6
6
  UNIT_REQUEST_CLOSE_FLOW = 'unitRequestCloseFlow',
7
7
  UNIT_REQUEST_OPEN_LINK = 'unitRequestOpenLink',
8
8
  UNIT_ON_LOAD = 'unitOnLoad',
9
- UNIT_REQUEST_DOWNLOAD = 'unitRequestDownload'
9
+ UNIT_REQUEST_DOWNLOAD = 'unitRequestDownload',
10
+ UNIT_PLAID_TOKEN_CREATED = 'unitPlaidLinkTokenCreated',
11
+ UNIT_REQUEST_EXTERNAL_SDK = 'unitRequestExternalSdk',
12
+ UNIT_PLAID_RESPONSE = 'unitPlaidResponse'
13
+
10
14
  }
11
15
  export interface RequestRenderingEvent {
12
16
  data: RequestRenderingEventData
@@ -37,9 +41,29 @@ export interface RequestDownloadEvent {
37
41
  fileName: string
38
42
  }
39
43
 
44
+ export interface PlaidTokenCreatedEvent {
45
+ linkToken: PlaidLinkTokenData
46
+ }
47
+
48
+ export interface PlaidLinkTokenData {
49
+ type: string,
50
+ attributes: PlaidLinkTokenAttributes
51
+ }
52
+
53
+ interface PlaidLinkTokenAttributes {
54
+ linkToken: string,
55
+ expiration: string
56
+ }
57
+
58
+ export interface RequestExternalSdkEvent {
59
+ type: string
60
+ }
61
+
40
62
  export type UnitEvent =
41
63
  | RequestRenderingEvent
42
64
  | RequestRefreshEvent
43
65
  | RequestOpenLinkEvent
44
66
  | ResponseUnitOnLoadEvent
45
67
  | RequestDownloadEvent
68
+ | PlaidTokenCreatedEvent
69
+ | RequestExternalSdkEvent
@@ -1,3 +1,4 @@
1
+ import { PaymentMessage } from '../../messages/webMessages/paymentsMessage';
1
2
  import { CardMessage } from '../../messages/webMessages/cardMessage';
2
3
  import { PageMessage } from '../../messages/webMessages/pageMessage';
3
4
  import { UnitMessage } from '../../messages/webMessages/unitMessages';
@@ -66,7 +67,21 @@ export const LISTENERS = {
66
67
  console.log(e)
67
68
  })
68
69
  });
69
- `
70
+ `,
71
+ unitRequestExternalSdk: `
72
+ window.addEventListener("${UnitMessage.UNIT_REQUEST_EXTERNAL_SDK}", (e) => {
73
+ postMessageToSDK({ type: "${UnitMessage.UNIT_REQUEST_EXTERNAL_SDK}", details: e.detail })
74
+ });
75
+ `,
76
+ unitPaymentCreated:`
77
+ window.addEventListener("${PaymentMessage.PAYMENT_CREATED}", (e) => {
78
+ const response = e.detail
79
+ response.then((data) => {
80
+ postMessageToSDK({ type: "${PaymentMessage.PAYMENT_CREATED}", details: { data: JSON.stringify(data.data) }})
81
+ }).catch((e) => {
82
+ console.log(e)
83
+ })
84
+ });`
70
85
  };
71
86
 
72
87
  export const DISPATCH_RENDERING_EVENT = `
@@ -82,3 +97,10 @@ export const DISPATCH_REQUEST_REFRESH = `
82
97
  window.dispatchEvent(event)
83
98
  }
84
99
  `;
100
+
101
+ export const DISPATCH_PLAID_RESPONSE = `
102
+ const dispatchPlaidEvent = (details) => {
103
+ const event = new CustomEvent("${UnitMessage.UNIT_PLAID_RESPONSE}",{ detail: details })
104
+ window.dispatchEvent(event)
105
+ }
106
+ `;
@@ -0,0 +1,32 @@
1
+ import type { AchCounterparty, CounterpartyVerificationMethod, PaymentStatus } from './payments.types';
2
+ import type { Tags, Relationship } from './types';
3
+
4
+ export type UNACHData = {
5
+ type: 'achPayment',
6
+ id: string,
7
+ attributes: {
8
+ createdAt: string | Date,
9
+ status: PaymentStatus,
10
+ settlementDate?: Date,
11
+ reason: string,
12
+ direction: 'Debit' | 'Credit',
13
+ description: string,
14
+ transactionSummaryOverride?: string,
15
+ amount: string,
16
+ tags: Tags,
17
+ addenda?: string
18
+ counterparty: AchCounterparty
19
+ expectedCompletionDate?: Date
20
+ counterpartyVerificationMethod?:keyof typeof CounterpartyVerificationMethod
21
+ sameDay?: boolean
22
+ },
23
+ relationships: {
24
+ account: Relationship,
25
+ customer?: Relationship,
26
+ customers?: Relationship,
27
+ counterpartyAccount: Relationship,
28
+ counterpartyCustomer: Relationship,
29
+ transaction: Relationship,
30
+ recurringPayment: Relationship
31
+ }
32
+ }
@@ -1,13 +1,12 @@
1
+ import type { PaymentStatus } from './payments.types';
1
2
  import type { Tags, Relationship } from './types';
2
3
 
3
- type BookPaymentStatus = 'Sent' | 'Rejected'
4
-
5
4
  export type UNBookPaymentData = {
6
5
  type: 'bookPayment',
7
6
  id: string,
8
7
  attributes: {
9
8
  createdAt: string | Date,
10
- status: BookPaymentStatus,
9
+ status: PaymentStatus,
11
10
  reason: string,
12
11
  direction: 'Debit' | 'Credit',
13
12
  description: string,
@@ -1,3 +1,5 @@
1
1
  export * from './bookPayment.types';
2
2
  export * from './card.types';
3
3
  export * from './onLoadResponse.types';
4
+ export * from './achCredit.types';
5
+ export * from './payments.types';
@@ -0,0 +1,14 @@
1
+ export type PaymentStatus = 'Sent' | 'Rejected'
2
+
3
+ export type AchCounterparty = {
4
+ name: string
5
+ accountNumber: string
6
+ routingNumber: string
7
+ accountType: AccountType
8
+ }
9
+
10
+ type AccountType = 'Savings' | 'Checking'
11
+
12
+ export enum CounterpartyVerificationMethod {
13
+ Plaid = 'Plaid',
14
+ }
@@ -31,6 +31,8 @@ export enum WebComponentType {
31
31
  activity = 'unit-elements-activity',
32
32
  slot = 'unit-elements-sdk-slot',
33
33
  account = 'unit-elements-account',
34
+ achDebitPayment = 'unit-elements-ach-debit-payment',
35
+ achCreditPayment = 'unit-elements-ach-credit-payment'
34
36
  }
35
37
 
36
38
  export const WebComponent = React.forwardRef<WebView, WebComponentProps>(function WebComponent(props, webRef) {
@@ -47,10 +49,8 @@ export const WebComponent = React.forwardRef<WebView, WebComponentProps>(functio
47
49
  setComponentCurrentTheme(props.theme ?? UnitSDK.getTheme());
48
50
  };
49
51
 
50
- useListenerToBus([
51
- { busEventKey: SDKMessage.IS_SCRIPT_FETCHED, action: updateUnitScript },
52
- { busEventKey: SDKMessage.IS_SDK_INITIALIZED, action: updateInitializedParams },
53
- ]);
52
+ useListenerToBus({ busEventKey: SDKMessage.IS_SCRIPT_FETCHED, action: updateUnitScript });
53
+ useListenerToBus({ busEventKey: SDKMessage.IS_SDK_INITIALIZED, action: updateInitializedParams });
54
54
 
55
55
  useEffect(() => {
56
56
  if (!unitScript) {
@@ -62,7 +62,7 @@ export const WebComponent = React.forwardRef<WebView, WebComponentProps>(functio
62
62
  let newHtml = html.replace(HTML_PLACEHOLDER.BODY, getHtmlBody(props.type.valueOf(), componentParams, props.presentationMode));
63
63
  newHtml = newHtml.replace(HTML_PLACEHOLDER.SCRIPT_FROM_NATIVE, props.script || '');
64
64
  setSourceHtml(newHtml);
65
- }, [props.params, unitScript, props.presentationMode, componentCurrentTheme]);
65
+ }, [props.params, unitScript, props.presentationMode, componentCurrentTheme, props.script]);
66
66
 
67
67
  const onMessage = (e: WebViewMessageEvent) => {
68
68
  const message = JSON.parse(e.nativeEvent.data) as WebViewMessage;
@@ -14,11 +14,11 @@ const htmlText = `
14
14
  <head lang="en">
15
15
  <title>Unit Web SDK Demo</title>
16
16
  <script>
17
- window.UnitMobileSDK = true
18
- window.UnitMobileSDKConfig = {
19
- os: "${Platform.OS}",
20
- walletName: "${Platform.OS === 'ios' ? 'Apple' : 'Google'}"
21
- }
17
+ window.UnitMobileSDK = true
18
+ window.UnitMobileSDKConfig = {
19
+ os: "${Platform.OS}",
20
+ walletName: "${Platform.OS === 'ios' ? 'Apple' : 'Google'}",
21
+ }
22
22
  </script>
23
23
  <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=0">
24
24
  </html>
@@ -45,6 +45,8 @@ const htmlText = `
45
45
 
46
46
  ${LISTENERS.cardStatusChange}
47
47
 
48
+ ${LISTENERS.unitRequestExternalSdk}
49
+
48
50
  ${DISPATCH_RENDERING_EVENT}
49
51
 
50
52
  ${HTML_PLACEHOLDER.SCRIPT_FROM_NATIVE}