react-native-unit-components 1.2.1 → 1.3.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.
- package/README.md +133 -13
- package/lib/commonjs/components/UNACHCreditComponent/UNACHCreditComponent.js +24 -1
- package/lib/commonjs/components/UNACHCreditComponent/UNACHCreditComponent.js.map +1 -1
- package/lib/commonjs/components/UNACHDebitComponent/UNACHDebitComponent.js +24 -1
- package/lib/commonjs/components/UNACHDebitComponent/UNACHDebitComponent.js.map +1 -1
- package/lib/commonjs/components/UNAccountComponent/UNAccountComponent.js +25 -3
- package/lib/commonjs/components/UNAccountComponent/UNAccountComponent.js.map +1 -1
- package/lib/commonjs/components/UNAccountComponent/UNAccountComponent.utils.js +5 -1
- package/lib/commonjs/components/UNAccountComponent/UNAccountComponent.utils.js.map +1 -1
- package/lib/commonjs/components/UNActivityComponent/UNActivityComponent.js +24 -1
- package/lib/commonjs/components/UNActivityComponent/UNActivityComponent.js.map +1 -1
- package/lib/commonjs/components/UNActivityComponent/UNActivityComponent.utils.js +2 -0
- package/lib/commonjs/components/UNActivityComponent/UNActivityComponent.utils.js.map +1 -1
- package/lib/commonjs/components/UNBookPaymentComponent/UNBookPaymentComponent.js +18 -1
- package/lib/commonjs/components/UNBookPaymentComponent/UNBookPaymentComponent.js.map +1 -1
- package/lib/commonjs/components/UNBottomSheetComponent/UNBottomSheetComponent.js +3 -0
- package/lib/commonjs/components/UNBottomSheetComponent/UNBottomSheetComponent.js.map +1 -1
- package/lib/commonjs/components/UNCardComponent/UNCardComponent.js +37 -3
- package/lib/commonjs/components/UNCardComponent/UNCardComponent.js.map +1 -1
- package/lib/commonjs/components/UNCardComponent/UNCardComponent.utils.js +9 -1
- package/lib/commonjs/components/UNCardComponent/UNCardComponent.utils.js.map +1 -1
- package/lib/commonjs/messages/webMessages/cardMessage.js +1 -0
- package/lib/commonjs/messages/webMessages/cardMessage.js.map +1 -1
- package/lib/commonjs/messages/webMessages/onLoadMessage.js +17 -0
- package/lib/commonjs/messages/webMessages/onLoadMessage.js.map +1 -0
- package/lib/commonjs/messages/webMessages/unitMessages.js.map +1 -1
- package/lib/commonjs/scripts/html/bodyScript.js +23 -1
- package/lib/commonjs/scripts/html/bodyScript.js.map +1 -1
- package/lib/commonjs/sharedTypes/account.types.js.map +1 -1
- package/lib/commonjs/sharedTypes/achCredit.types.js.map +1 -1
- package/lib/commonjs/sharedTypes/activity.types.js +6 -0
- package/lib/commonjs/sharedTypes/activity.types.js.map +1 -0
- package/lib/commonjs/sharedTypes/authorization.types.js +2 -0
- package/lib/commonjs/sharedTypes/authorization.types.js.map +1 -0
- package/lib/commonjs/sharedTypes/card.types.js +15 -0
- package/lib/commonjs/sharedTypes/card.types.js.map +1 -1
- package/lib/commonjs/sharedTypes/index.js.map +1 -1
- package/lib/commonjs/sharedTypes/onLoadResponse.types.js +0 -4
- package/lib/commonjs/sharedTypes/onLoadResponse.types.js.map +1 -1
- package/lib/commonjs/sharedTypes/transactions.types.js +52 -0
- package/lib/commonjs/sharedTypes/transactions.types.js.map +1 -0
- package/lib/commonjs/webComponent/WebComponent.js +2 -1
- package/lib/commonjs/webComponent/WebComponent.js.map +1 -1
- package/lib/commonjs/webComponent/html.js +6 -0
- package/lib/commonjs/webComponent/html.js.map +1 -1
- package/lib/module/components/UNACHCreditComponent/UNACHCreditComponent.js +24 -1
- package/lib/module/components/UNACHCreditComponent/UNACHCreditComponent.js.map +1 -1
- package/lib/module/components/UNACHDebitComponent/UNACHDebitComponent.js +24 -1
- package/lib/module/components/UNACHDebitComponent/UNACHDebitComponent.js.map +1 -1
- package/lib/module/components/UNAccountComponent/UNAccountComponent.js +27 -5
- package/lib/module/components/UNAccountComponent/UNAccountComponent.js.map +1 -1
- package/lib/module/components/UNAccountComponent/UNAccountComponent.utils.js +3 -0
- package/lib/module/components/UNAccountComponent/UNAccountComponent.utils.js.map +1 -1
- package/lib/module/components/UNActivityComponent/UNActivityComponent.js +24 -1
- package/lib/module/components/UNActivityComponent/UNActivityComponent.js.map +1 -1
- package/lib/module/components/UNActivityComponent/UNActivityComponent.utils.js +2 -0
- package/lib/module/components/UNActivityComponent/UNActivityComponent.utils.js.map +1 -1
- package/lib/module/components/UNBookPaymentComponent/UNBookPaymentComponent.js +18 -1
- package/lib/module/components/UNBookPaymentComponent/UNBookPaymentComponent.js.map +1 -1
- package/lib/module/components/UNBottomSheetComponent/UNBottomSheetComponent.js +3 -0
- package/lib/module/components/UNBottomSheetComponent/UNBottomSheetComponent.js.map +1 -1
- package/lib/module/components/UNCardComponent/UNCardComponent.js +39 -5
- package/lib/module/components/UNCardComponent/UNCardComponent.js.map +1 -1
- package/lib/module/components/UNCardComponent/UNCardComponent.utils.js +6 -0
- package/lib/module/components/UNCardComponent/UNCardComponent.utils.js.map +1 -1
- package/lib/module/messages/webMessages/cardMessage.js +1 -0
- package/lib/module/messages/webMessages/cardMessage.js.map +1 -1
- package/lib/module/messages/webMessages/onLoadMessage.js +10 -0
- package/lib/module/messages/webMessages/onLoadMessage.js.map +1 -0
- package/lib/module/messages/webMessages/unitMessages.js.map +1 -1
- package/lib/module/scripts/html/bodyScript.js +20 -0
- package/lib/module/scripts/html/bodyScript.js.map +1 -1
- package/lib/module/sharedTypes/account.types.js.map +1 -1
- package/lib/module/sharedTypes/achCredit.types.js.map +1 -1
- package/lib/module/sharedTypes/activity.types.js +2 -0
- package/lib/module/sharedTypes/activity.types.js.map +1 -0
- package/lib/module/sharedTypes/authorization.types.js +2 -0
- package/lib/module/sharedTypes/authorization.types.js.map +1 -0
- package/lib/module/sharedTypes/card.types.js +13 -1
- package/lib/module/sharedTypes/card.types.js.map +1 -1
- package/lib/module/sharedTypes/index.js +1 -1
- package/lib/module/sharedTypes/index.js.map +1 -1
- package/lib/module/sharedTypes/onLoadResponse.types.js +1 -1
- package/lib/module/sharedTypes/onLoadResponse.types.js.map +1 -1
- package/lib/module/sharedTypes/transactions.types.js +44 -0
- package/lib/module/sharedTypes/transactions.types.js.map +1 -0
- package/lib/module/webComponent/WebComponent.js +2 -1
- package/lib/module/webComponent/WebComponent.js.map +1 -1
- package/lib/module/webComponent/html.js +7 -1
- package/lib/module/webComponent/html.js.map +1 -1
- package/lib/typescript/components/UNACHCreditComponent/UNACHCreditComponent.d.ts +2 -2
- package/lib/typescript/components/UNACHDebitComponent/UNACHDebitComponent.d.ts +2 -2
- package/lib/typescript/components/UNAccountComponent/UNAccountComponent.d.ts +7 -3
- package/lib/typescript/components/UNAccountComponent/UNAccountComponent.utils.d.ts +1 -0
- package/lib/typescript/components/UNActivityComponent/UNActivityComponent.d.ts +4 -2
- package/lib/typescript/components/UNBookPaymentComponent/UNBookPaymentComponent.d.ts +2 -2
- package/lib/typescript/components/UNCardComponent/UNCardComponent.d.ts +9 -3
- package/lib/typescript/components/UNCardComponent/UNCardComponent.utils.d.ts +3 -0
- package/lib/typescript/messages/webMessages/cardMessage.d.ts +5 -1
- package/lib/typescript/messages/webMessages/onLoadMessage.d.ts +30 -0
- package/lib/typescript/messages/webMessages/unitMessages.d.ts +2 -2
- package/lib/typescript/scripts/html/bodyScript.d.ts +3 -0
- package/lib/typescript/sharedTypes/account.types.d.ts +13 -4
- package/lib/typescript/sharedTypes/achCredit.types.d.ts +6 -0
- package/lib/typescript/sharedTypes/activity.types.d.ts +7 -0
- package/lib/typescript/sharedTypes/authorization.types.d.ts +20 -0
- package/lib/typescript/sharedTypes/card.types.d.ts +12 -0
- package/lib/typescript/sharedTypes/index.d.ts +1 -1
- package/lib/typescript/sharedTypes/onLoadResponse.types.d.ts +12 -16
- package/lib/typescript/sharedTypes/transactions.types.d.ts +80 -0
- package/package.json +1 -1
- package/src/components/UNACHCreditComponent/UNACHCreditComponent.tsx +30 -3
- package/src/components/UNACHDebitComponent/UNACHDebitComponent.tsx +30 -3
- package/src/components/UNAccountComponent/UNAccountComponent.tsx +40 -9
- package/src/components/UNAccountComponent/UNAccountComponent.utils.ts +4 -0
- package/src/components/UNActivityComponent/UNActivityComponent.tsx +32 -3
- package/src/components/UNActivityComponent/UNActivityComponent.utils.ts +2 -0
- package/src/components/UNBookPaymentComponent/UNBookPaymentComponent.tsx +23 -3
- package/src/components/UNBottomSheetComponent/UNBottomSheetComponent.tsx +4 -1
- package/src/components/UNCardComponent/UNCardComponent.tsx +49 -7
- package/src/components/UNCardComponent/UNCardComponent.utils.ts +9 -0
- package/src/messages/webMessages/cardMessage.ts +6 -0
- package/src/messages/webMessages/onLoadMessage.ts +45 -0
- package/src/messages/webMessages/unitMessages.ts +2 -2
- package/src/scripts/html/bodyScript.ts +22 -0
- package/src/sharedTypes/account.types.ts +25 -17
- package/src/sharedTypes/achCredit.types.ts +7 -0
- package/src/sharedTypes/activity.types.ts +8 -0
- package/src/sharedTypes/authorization.types.ts +22 -0
- package/src/sharedTypes/card.types.ts +13 -0
- package/src/sharedTypes/index.ts +1 -1
- package/src/sharedTypes/onLoadResponse.types.ts +15 -23
- package/src/sharedTypes/transactions.types.ts +84 -0
- package/src/webComponent/WebComponent.tsx +3 -1
- package/src/webComponent/html.ts +7 -1
- package/android/src/main/res/values/themes.xml +0 -16
- package/android/src/main/res/values-night/themes.xml +0 -16
package/README.md
CHANGED
|
@@ -79,12 +79,14 @@ export default function YourRootComponent() {
|
|
|
79
79
|
| ---------------------- | ---------------------------- | --------- | -------------------------------------------------------- |
|
|
80
80
|
| customerToken | string | YES | A Unit Customer token. |
|
|
81
81
|
| cardId | string | YES | Unit card id. |
|
|
82
|
-
| theme | string |
|
|
83
|
-
| hide-actions-menu-button | boolean |
|
|
84
|
-
| hide-card-title | boolean |
|
|
85
|
-
| hide-sensitive-data-button | boolean |
|
|
86
|
-
| onStatusChanged
|
|
87
|
-
|
|
|
82
|
+
| theme | string | NO | A URL that specifies the UI configuration. |
|
|
83
|
+
| hide-actions-menu-button | boolean | NO | Hide menu button in case value is true |
|
|
84
|
+
| hide-card-title | boolean | NO | Hide card title in case value is true |
|
|
85
|
+
| hide-sensitive-data-button | boolean | NO | Hide sensitive data button in case value is true |
|
|
86
|
+
| onStatusChanged | (card: UNCardData) => void | NO | Callback for card status changes. |
|
|
87
|
+
| onCardActivated | (card: UNCardData) => void | No | Callback for card activated |
|
|
88
|
+
| pushProvisioningModule | typeof NativeModules | NO | A Native Module that implements Visa's push provisioning |
|
|
89
|
+
| onLoad | (response: UNOnLoadResponse<UNCardData>) => void | No | Callback for a loaded component |
|
|
88
90
|
|
|
89
91
|
##### Example:
|
|
90
92
|
```js
|
|
@@ -99,12 +101,55 @@ export default function YourComponent() {
|
|
|
99
101
|
cardId={'632197'}
|
|
100
102
|
customerToken={''}
|
|
101
103
|
onStatusChanged={(card: UNCardData) => { console.log(card) }}
|
|
104
|
+
onCardActivated={(card: UNCardData) => { console.log(card) }}
|
|
102
105
|
pushProvisioningModule={PushProvisioningModule}
|
|
106
|
+
onLoad={(response: UNOnLoadResponse<UNCardData>) => { console.log(response) }}
|
|
103
107
|
/>
|
|
104
108
|
);
|
|
105
109
|
}
|
|
106
110
|
```
|
|
107
111
|
|
|
112
|
+
##### Incoming Events:
|
|
113
|
+
- In some cases, the default menu button won't fit into the design of an application.
|
|
114
|
+
By using the `openActionsMenu()` method, it's possible to open the card actions bottom sheet from a custom button.
|
|
115
|
+
|
|
116
|
+
Important Note: one can use the `openActionsMenu()` only after UNCardComponent is loaded. (can be verified by onLoad callback)
|
|
117
|
+
|
|
118
|
+
- It's also possible to create your own menu and call card actions from it.
|
|
119
|
+
Use `openAction(action: UNCardMenuAction)` method and send inside an action you want to perform.
|
|
120
|
+
Use API Docs in order to understand which actions could be applied for any particular card statuses.
|
|
121
|
+
|
|
122
|
+
#### Example:
|
|
123
|
+
```js
|
|
124
|
+
import { UNCardComponent, CardRef, UNCardMenuAction } from 'react-native-unit-components';
|
|
125
|
+
|
|
126
|
+
...
|
|
127
|
+
|
|
128
|
+
const cardRef = useRef<CardRef>(null);
|
|
129
|
+
|
|
130
|
+
...
|
|
131
|
+
|
|
132
|
+
const openActionsMenu = () => {
|
|
133
|
+
cardRef.current?.openActionsMenu();
|
|
134
|
+
};
|
|
135
|
+
|
|
136
|
+
const openAction = (action: UNCardMenuAction) => {
|
|
137
|
+
cardRef.current?.openAction(action);
|
|
138
|
+
};
|
|
139
|
+
|
|
140
|
+
|
|
141
|
+
...
|
|
142
|
+
|
|
143
|
+
<UNCardComponent
|
|
144
|
+
ref={cardRef}
|
|
145
|
+
cardId={"4242"}
|
|
146
|
+
customerToken={''}
|
|
147
|
+
/>
|
|
148
|
+
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
|
|
152
|
+
|
|
108
153
|
##### Add card to wallet capability - Optional
|
|
109
154
|
|
|
110
155
|
[Complete the add to wallet guide for React Native](https://guides.unit.co/add-to-mobile-wallet#react-native), skipping the [last module access from javascript](https://guides.unit.co/add-to-mobile-wallet#module-access-from-javascript-1), to use this capability.
|
|
@@ -154,8 +199,9 @@ export default function YourRootComponent() {
|
|
|
154
199
|
| counterPartyAccountId | string | YES | Unit account id. The account which will receive money. |
|
|
155
200
|
| counterPartyName | string | YES | Name of the counterparty. This is the name that will be displayed in the Book Payment UI during the transfer.|
|
|
156
201
|
| isSameCustomer | boolean | NO | Stating whether both accounts belong to the same customer. Allows fetching additional information about the counterparty account. Default "false" |
|
|
157
|
-
| theme | string |
|
|
202
|
+
| theme | string | NO | A URL that specifies the UI configuration. |
|
|
158
203
|
| onPaymentCreated | (bookPayment: UNBookPaymentData) => void | NO | Callback for the created bookPayment. |
|
|
204
|
+
| onLoad | (response: UNOnLoadResponse<UNAccountData>) => void | NO | Callback for a loaded component
|
|
159
205
|
|
|
160
206
|
|
|
161
207
|
|
|
@@ -173,6 +219,7 @@ export default function YourComponent() {
|
|
|
173
219
|
counterPartyName={'Peter Parker"'}
|
|
174
220
|
isSameCustomer={true}
|
|
175
221
|
onPaymentCreated={(bookPayment: UNBookPaymentData) => { console.log(bookPayment) }}
|
|
222
|
+
onLoad={(response: UNOnLoadResponse<UNBookPaymentData>) => { console.log(response) }}
|
|
176
223
|
/>
|
|
177
224
|
);
|
|
178
225
|
}
|
|
@@ -184,8 +231,8 @@ export default function YourComponent() {
|
|
|
184
231
|
| Name | Type | Required | Description |
|
|
185
232
|
| --------------------- | -------------------------------------- | --------- | ---------------------------------------------- |
|
|
186
233
|
| customerToken | string | YES | A Unit Customer token. |
|
|
187
|
-
| accountId | string |
|
|
188
|
-
| theme | string |
|
|
234
|
+
| accountId | string | NO | Unit account id. The account for which the activity will be shown. If not specified: the activity of the customer (all accounts) will be shown |
|
|
235
|
+
| theme | string | NO | A URL that specifies the UI configuration. |
|
|
189
236
|
|
|
190
237
|
|
|
191
238
|
##### Example:
|
|
@@ -209,8 +256,10 @@ export default function YourComponent() {
|
|
|
209
256
|
| Name | Type | Required | Description |
|
|
210
257
|
| --------------------- | -------------------------------------- | --------- | ---------------------------------------------- |
|
|
211
258
|
| customerToken | string | YES | A Unit Customer token. |
|
|
212
|
-
| accountId | string |
|
|
213
|
-
| theme | string |
|
|
259
|
+
| accountId | string | NO | Unit account id. The account to show, when not provided, one of the customer's accounts will be shown. |
|
|
260
|
+
| theme | string | NO | A URL that specifies the UI configuration. |
|
|
261
|
+
| onAccountChanged | (account: UNAccountData) => Void | NO | Callback for account changes. |
|
|
262
|
+
| onLoad | (response: UNOnLoadResponse<[UNAccountData]>) => void | NO | Callback for a loaded component |
|
|
214
263
|
|
|
215
264
|
|
|
216
265
|
##### Example:
|
|
@@ -223,6 +272,8 @@ export default function YourComponent() {
|
|
|
223
272
|
<UNAccountComponent
|
|
224
273
|
customerToken={''}
|
|
225
274
|
accountId={'1105561'}
|
|
275
|
+
onAccountChanged={(account: UNAccountData) => console.log('Account changed', account)}/>
|
|
276
|
+
onLoad={(response: UNOnLoadResponse<UNAccountData>) => { console.log(response) }}
|
|
226
277
|
/>
|
|
227
278
|
);
|
|
228
279
|
}
|
|
@@ -238,18 +289,22 @@ export default function YourComponent() {
|
|
|
238
289
|
| theme | string | No | A URL that specifies the UI configuration. |
|
|
239
290
|
| fee | number | NO | Bill your counterparty for his activity. |
|
|
240
291
|
| is-auto-focus | boolean | NO | Auto-focus the 'add new recipient' button once the component is mounted. Default "false" |
|
|
292
|
+
| onPaymentCreated | (data: UNACHData) => Void | NO | Callback for ACH payment created |
|
|
293
|
+
| onLoad | (response: UNOnLoadResponse<UNACHOnLoadData>) => void | NO | Callback for a loaded component |
|
|
294
|
+
|
|
241
295
|
|
|
242
296
|
|
|
243
297
|
##### Example:
|
|
244
298
|
```js
|
|
245
299
|
import React from 'react';
|
|
246
|
-
import { UNACHCreditComponent, UNACHData } from 'react-native-unit-components';
|
|
300
|
+
import { UNACHCreditComponent, UNACHData, UNACHOnLoadData } from 'react-native-unit-components';
|
|
247
301
|
export default function YourComponent() {
|
|
248
302
|
return (
|
|
249
303
|
<UNACHCreditComponent
|
|
250
304
|
customerToken={''}
|
|
251
305
|
accountId={'1105561'}
|
|
252
306
|
onPaymentCreated={(payment: UNACHData) => { console.log(payment) }}
|
|
307
|
+
onLoad={(response: UNOnLoadResponse<UNACHOnLoadData>) => { console.log(response) }}
|
|
253
308
|
/>
|
|
254
309
|
);
|
|
255
310
|
}
|
|
@@ -308,19 +363,84 @@ Register your app id with Plaid:
|
|
|
308
363
|
| theme | string | No | A URL that specifies the UI configuration. |
|
|
309
364
|
| fee | number | NO | Bill your counterparty for his activity. |
|
|
310
365
|
| is-auto-focus | boolean | NO | Auto-focus the 'add new recipient' button once the component is mounted. Default "false" |
|
|
366
|
+
| onPaymentCreated | (data: UNACHData) => Void | NO | Callback for ACH payment created |
|
|
367
|
+
| onLoad | (response: UNOnLoadResponse<UNACHOnLoadData>) | NO | Callback for a loaded component |
|
|
311
368
|
|
|
312
369
|
|
|
313
370
|
##### Example:
|
|
314
371
|
```js
|
|
315
372
|
import React from 'react';
|
|
316
|
-
import { UNACHDebitComponent, UNACHData } from 'react-native-unit-components';
|
|
373
|
+
import { UNACHDebitComponent, UNACHData, UNACHOnLoadData } from 'react-native-unit-components';
|
|
317
374
|
export default function YourComponent() {
|
|
318
375
|
return (
|
|
319
376
|
<UNACHDebitComponent
|
|
320
377
|
customerToken={''}
|
|
321
378
|
accountId={'1105561'}
|
|
322
379
|
onPaymentCreated={(payment: UNACHData) => { console.log(payment) }}
|
|
380
|
+
onLoad={(response: UNOnLoadResponse<UNACHOnLoadData>) => { console.log(response) }}
|
|
323
381
|
/>
|
|
324
382
|
);
|
|
325
383
|
}
|
|
326
384
|
```
|
|
385
|
+
|
|
386
|
+
|
|
387
|
+
#### Error Handling
|
|
388
|
+
|
|
389
|
+
By using unitOnLoad callback you can get a Swift.Result about the requested component.
|
|
390
|
+
OnError - you will get an enum UNError that consist of several cases.
|
|
391
|
+
|
|
392
|
+
#### UNError:
|
|
393
|
+
|
|
394
|
+
fields | Description |
|
|
395
|
+
| --------------------- | --------------------------- | ------------------------------------------------------------ |
|
|
396
|
+
errors: UNErrorData[] | Report UNError on errors that happen in loading time |
|
|
397
|
+
|
|
398
|
+
|
|
399
|
+
#### UNErrorData:
|
|
400
|
+
| Name | Type | Description |
|
|
401
|
+
| --------------------- | -------------------------------------------| --------------------------------------------------------------------------- |
|
|
402
|
+
| status | String | A Unit-specific code, uniquely identifying the error type |
|
|
403
|
+
| title | String? | The title of the error type |
|
|
404
|
+
| detail | String? | Additional information about the error. |
|
|
405
|
+
| details | String? | Additional information about the error. |
|
|
406
|
+
| meta | { supportId: String }? | meta.supportId unique error identifier to be used for further investigation |
|
|
407
|
+
|
|
408
|
+
Note: An "error object" MUST contain a title and the HTTP status code members.
|
|
409
|
+
|
|
410
|
+
#### Example:
|
|
411
|
+
```ts
|
|
412
|
+
import { UNCardComponent, UNCardData, UNOnLoadResponse } from 'react-native-unit-components';
|
|
413
|
+
|
|
414
|
+
....
|
|
415
|
+
|
|
416
|
+
const handleCardOnLoad = (response: UNOnLoadResponse<UNCardData>) => {
|
|
417
|
+
if ('errors' in response) {
|
|
418
|
+
console.error('ERROR unitOnLoad: ', response.errors);
|
|
419
|
+
return;
|
|
420
|
+
}
|
|
421
|
+
|
|
422
|
+
if ('data' in response) {
|
|
423
|
+
const cardData: UNCardData = response.data;
|
|
424
|
+
console.log('Success, data:', cardData)
|
|
425
|
+
return;
|
|
426
|
+
}
|
|
427
|
+
|
|
428
|
+
return;
|
|
429
|
+
}
|
|
430
|
+
|
|
431
|
+
|
|
432
|
+
....
|
|
433
|
+
|
|
434
|
+
return (
|
|
435
|
+
...
|
|
436
|
+
|
|
437
|
+
<UNCardComponent
|
|
438
|
+
cardId={'632197'}
|
|
439
|
+
customerToken={''}
|
|
440
|
+
onLoad={handleCardOnLoad}
|
|
441
|
+
/>
|
|
442
|
+
|
|
443
|
+
...
|
|
444
|
+
)
|
|
445
|
+
```
|
|
446
|
+
|
|
@@ -12,11 +12,34 @@ var _reactNative = require("react-native");
|
|
|
12
12
|
var _unitMessages = require("../../messages/webMessages/unitMessages");
|
|
13
13
|
var _UNACHCreditComponent = require("./UNACHCreditComponent.utils");
|
|
14
14
|
var _paymentsMessage = require("../../messages/webMessages/paymentsMessage");
|
|
15
|
+
var _onLoadMessage = require("../../messages/webMessages/onLoadMessage");
|
|
15
16
|
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); }
|
|
16
17
|
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; }
|
|
17
18
|
const UNACHCreditComponent = props => {
|
|
18
19
|
const [height, setHeight] = (0, _react.useState)(0);
|
|
19
20
|
const [presentationMode, setPresentationMode] = (0, _react.useState)(_bodyHtml.PresentationMode.Inherit);
|
|
21
|
+
const handleUnitOnLoad = response => {
|
|
22
|
+
if (!props.onLoad) {
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
if (_onLoadMessage.RESPONSE_KEYS.errors in response) {
|
|
26
|
+
props.onLoad(response);
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
if (_onLoadMessage.RESPONSE_KEYS.account in response && _onLoadMessage.RESPONSE_KEYS.counterpartyAccount in response) {
|
|
30
|
+
// ACHOnLoadResponse;
|
|
31
|
+
const achOnload = {
|
|
32
|
+
data: {
|
|
33
|
+
[_onLoadMessage.RESPONSE_KEYS.account]: response[_onLoadMessage.RESPONSE_KEYS.account].data,
|
|
34
|
+
[_onLoadMessage.RESPONSE_KEYS.counterpartyAccount]: response[_onLoadMessage.RESPONSE_KEYS.counterpartyAccount].data
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
props.onLoad(achOnload);
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
console.error('On Load Error: unexpected response type');
|
|
41
|
+
return;
|
|
42
|
+
};
|
|
20
43
|
const handleWebViewMessage = message => {
|
|
21
44
|
if (!message || !message.details) return;
|
|
22
45
|
switch (message.type) {
|
|
@@ -27,7 +50,7 @@ const UNACHCreditComponent = props => {
|
|
|
27
50
|
break;
|
|
28
51
|
}
|
|
29
52
|
case _unitMessages.UnitMessage.UNIT_ON_LOAD:
|
|
30
|
-
|
|
53
|
+
handleUnitOnLoad(message.details);
|
|
31
54
|
break;
|
|
32
55
|
case _pageMessage.PageMessage.PAGE_HEIGHT:
|
|
33
56
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_WebComponent","_bodyHtml","_pageMessage","_reactNative","_unitMessages","_UNACHCreditComponent","_paymentsMessage","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","UNACHCreditComponent","props","height","setHeight","useState","presentationMode","setPresentationMode","PresentationMode","Inherit","handleWebViewMessage","message","details","type","PaymentMessage","PAYMENT_CREATED","achCreditEvent","onPaymentCreated","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_WebComponent","_bodyHtml","_pageMessage","_reactNative","_unitMessages","_UNACHCreditComponent","_paymentsMessage","_onLoadMessage","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","UNACHCreditComponent","props","height","setHeight","useState","presentationMode","setPresentationMode","PresentationMode","Inherit","handleUnitOnLoad","response","onLoad","RESPONSE_KEYS","errors","account","counterpartyAccount","achOnload","data","console","error","handleWebViewMessage","message","details","type","PaymentMessage","PAYMENT_CREATED","achCreditEvent","onPaymentCreated","UnitMessage","UNIT_ON_LOAD","PageMessage","PAGE_HEIGHT","currentHeight","Default","renderACHCreditWebView","createElement","WebComponent","WebComponentType","achCreditPayment","params","getACHCreditParams","script","getACHCreditScript","onMessage","isScrollable","theme","View","style","exports"],"sources":["UNACHCreditComponent.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { WebComponent, WebComponentType } from '../../webComponent/WebComponent';\nimport { PresentationMode } from '../../scripts/html/bodyHtml';\nimport type { WebViewMessage } from '../../messages/webMessages';\nimport type { UNOnLoadResponse, UNACHData, UNACHOnLoadData, UNError, UNOnLoadResponseData } from '../../sharedTypes';\nimport { HeightEvent, PageMessage } from '../../messages/webMessages/pageMessage';\nimport { View } from 'react-native';\nimport { UnitMessage } from '../../messages/webMessages/unitMessages';\nimport { getACHCreditParams, getACHCreditScript } from './UNACHCreditComponent.utils';\nimport { PaymentMessage } from '../../messages/webMessages/paymentsMessage';\nimport type { ACHEvent } from '../../messages/webMessages/achCreditMessage';\nimport { RESPONSE_KEYS, UnitOnLoadResponseEvent } from '../../messages/webMessages/onLoadMessage';\n\nexport interface UNACHCreditComponentProps {\n accountId: string;\n customerToken: string;\n theme?: string;\n isAutoFocus?: boolean;\n fee?: number;\n onPaymentCreated?: (data: UNACHData) => void;\n onLoad?: (response: UNOnLoadResponse<UNACHOnLoadData>) => void;\n}\n\nexport const UNACHCreditComponent = (props: UNACHCreditComponentProps) => {\n const [height, setHeight] = useState<number>(0);\n const [presentationMode, setPresentationMode] = useState<PresentationMode>(PresentationMode.Inherit);\n\n const handleUnitOnLoad = (response: UnitOnLoadResponseEvent) => {\n if (!props.onLoad) {\n return;\n }\n\n if (RESPONSE_KEYS.errors in response) {\n props.onLoad(response as UNError);\n return;\n }\n\n if (RESPONSE_KEYS.account in response && RESPONSE_KEYS.counterpartyAccount in response) {\n // ACHOnLoadResponse;\n const achOnload: UNOnLoadResponseData<UNACHOnLoadData> = {\n data: {\n [RESPONSE_KEYS.account]: response[RESPONSE_KEYS.account].data,\n [RESPONSE_KEYS.counterpartyAccount]: response[RESPONSE_KEYS.counterpartyAccount].data,\n }\n };\n props.onLoad(achOnload);\n return;\n }\n\n console.error('On Load Error: unexpected response type');\n return;\n };\n\n const handleWebViewMessage = (message: WebViewMessage) => {\n if (!message || !message.details) return;\n\n switch (message.type) {\n case PaymentMessage.PAYMENT_CREATED: {\n const achCreditEvent = message.details as ACHEvent;\n props.onPaymentCreated && props.onPaymentCreated(achCreditEvent.data as UNACHData);\n break;\n }\n case UnitMessage.UNIT_ON_LOAD:\n handleUnitOnLoad(message.details as UnitOnLoadResponseEvent);\n break;\n case PageMessage.PAGE_HEIGHT: {\n const currentHeight = (message.details as HeightEvent).height;\n setHeight(currentHeight);\n if (presentationMode === PresentationMode.Inherit && currentHeight === 0) {\n setPresentationMode(PresentationMode.Default);\n }\n break;\n }\n }\n };\n\n const renderACHCreditWebView = () => {\n return (\n <WebComponent\n type={WebComponentType.achCreditPayment}\n presentationMode={presentationMode}\n params={getACHCreditParams(props)}\n script={getACHCreditScript()}\n onMessage={(message: WebViewMessage) => handleWebViewMessage(message)}\n isScrollable={false}\n theme={props.theme}\n />\n );\n };\n\n if (presentationMode === PresentationMode.Inherit) {\n return renderACHCreditWebView();\n }\n\n return (\n <View style={{ height: height }}>\n {renderACHCreditWebView()}\n </View>\n );\n};\n"],"mappings":"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"}
|
|
@@ -13,6 +13,7 @@ var _unitMessages = require("../../messages/webMessages/unitMessages");
|
|
|
13
13
|
var _UNACHDebitComponent = require("./UNACHDebitComponent.utils");
|
|
14
14
|
var _reactNativePlaidLinkSdk = require("react-native-plaid-link-sdk");
|
|
15
15
|
var _paymentsMessage = require("../../messages/webMessages/paymentsMessage");
|
|
16
|
+
var _onLoadMessage = require("../../messages/webMessages/onLoadMessage");
|
|
16
17
|
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); }
|
|
17
18
|
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; }
|
|
18
19
|
const UNACHDebitComponent = props => {
|
|
@@ -33,6 +34,28 @@ const UNACHDebitComponent = props => {
|
|
|
33
34
|
const dispatchUnitPlaidResponse = success => {
|
|
34
35
|
(0, _UNACHDebitComponent.injectUnitPlaidResponse)(webRef.current, success);
|
|
35
36
|
};
|
|
37
|
+
const handleUnitOnLoad = response => {
|
|
38
|
+
if (!props.onLoad) {
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
if (_onLoadMessage.RESPONSE_KEYS.errors in response) {
|
|
42
|
+
props.onLoad(response);
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
if (_onLoadMessage.RESPONSE_KEYS.account in response && _onLoadMessage.RESPONSE_KEYS.counterpartyAccount in response) {
|
|
46
|
+
// ACHOnLoadResponse;
|
|
47
|
+
const achOnload = {
|
|
48
|
+
data: {
|
|
49
|
+
[_onLoadMessage.RESPONSE_KEYS.account]: response[_onLoadMessage.RESPONSE_KEYS.account].data,
|
|
50
|
+
[_onLoadMessage.RESPONSE_KEYS.counterpartyAccount]: response[_onLoadMessage.RESPONSE_KEYS.counterpartyAccount].data
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
props.onLoad(achOnload);
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
console.error('On Load Error: unexpected response type');
|
|
57
|
+
return;
|
|
58
|
+
};
|
|
36
59
|
const handleWebViewMessage = message => {
|
|
37
60
|
if (!message || !message.details) return;
|
|
38
61
|
switch (message.type) {
|
|
@@ -43,7 +66,7 @@ const UNACHDebitComponent = props => {
|
|
|
43
66
|
break;
|
|
44
67
|
}
|
|
45
68
|
case _unitMessages.UnitMessage.UNIT_ON_LOAD:
|
|
46
|
-
|
|
69
|
+
handleUnitOnLoad(message.details);
|
|
47
70
|
break;
|
|
48
71
|
case _pageMessage.PageMessage.PAGE_HEIGHT:
|
|
49
72
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_WebComponent","_bodyHtml","_pageMessage","_reactNative","_unitMessages","_UNACHDebitComponent","_reactNativePlaidLinkSdk","_paymentsMessage","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","UNACHDebitComponent","props","height","setHeight","useState","appPackageName","setAppPackageName","linkToken","setLinkToken","webRef","useRef","presentationMode","setPresentationMode","PresentationMode","Inherit","useEffect","setPackageNameForAndroid","Platform","OS","packageName","getAndroidPackageName","dispatchUnitPlaidResponse","success","injectUnitPlaidResponse","current","handleWebViewMessage","message","details","type","PaymentMessage","PAYMENT_CREATED","achDebitEvent","onPaymentCreated","data","UnitMessage","UNIT_ON_LOAD","onLoad","PageMessage","PAGE_HEIGHT","currentHeight","Default","UNIT_PLAID_TOKEN_CREATED","linkTokenEvent","linkTokenData","attributes","UNIT_REQUEST_EXTERNAL_SDK","externalSdkType","openLink","tokenConfig","noLoadingState","token","onSuccess","onExit","exit","console","log","catch","e","error","renderACHDebitWebView","createElement","WebComponent","ref","WebComponentType","achDebitPayment","params","getACHDebitParams","script","getACHDebitScript","onMessage","isScrollable","theme","View","style","exports"],"sources":["UNACHDebitComponent.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\nimport { WebComponent, WebComponentType } from '../../webComponent/WebComponent';\nimport { PresentationMode } from '../../scripts/html/bodyHtml';\nimport type { WebViewMessage } from '../../messages/webMessages';\nimport type { UNResponseUnitOnLoadEvent, UNACHData } from '../../sharedTypes';\nimport { HeightEvent, PageMessage } from '../../messages/webMessages/pageMessage';\nimport { Platform, View } from 'react-native';\nimport { PlaidLinkTokenData, PlaidTokenCreatedEvent, RequestExternalSdkEvent, UnitMessage } from '../../messages/webMessages/unitMessages';\nimport { getACHDebitParams, getACHDebitScript, getAndroidPackageName, injectUnitPlaidResponse } from './UNACHDebitComponent.utils';\n\nimport { LinkSuccess, openLink } from 'react-native-plaid-link-sdk';\nimport type WebView from 'react-native-webview';\n\nimport { PaymentMessage } from '../../messages/webMessages/paymentsMessage';\nimport type { ACHEvent } from '../../messages/webMessages/achCreditMessage';\n\nexport interface UNACHDebitComponentProps {\n accountId: string;\n customerToken: string;\n theme?: string;\n isAutoFocus?: boolean;\n fee?: number;\n onPaymentCreated?: (data: UNACHData) => void;\n onLoad?: (response: UNResponseUnitOnLoadEvent) => void;\n}\n\nexport const UNACHDebitComponent = (props: UNACHDebitComponentProps) => {\n const [height, setHeight] = useState<number>(0);\n const [appPackageName, setAppPackageName] = useState<string>('');\n const [linkToken, setLinkToken] = useState<string>('');\n const webRef = useRef<WebView>(null);\n const [presentationMode, setPresentationMode] = useState<PresentationMode>(PresentationMode.Inherit);\n\n useEffect(() => {\n const setPackageNameForAndroid = async () => {\n if (Platform.OS === 'android') {\n const packageName = await getAndroidPackageName();\n setAppPackageName(packageName);\n }\n };\n setPackageNameForAndroid();\n }, []);\n\n const dispatchUnitPlaidResponse = (success: LinkSuccess) => {\n injectUnitPlaidResponse(webRef.current, success);\n };\n\n const handleWebViewMessage = (message: WebViewMessage) => {\n if (!message || !message.details) return;\n\n switch (message.type) {\n case PaymentMessage.PAYMENT_CREATED: {\n const achDebitEvent = message.details as ACHEvent;\n props.onPaymentCreated && props.onPaymentCreated(achDebitEvent.data as UNACHData);\n break;\n }\n case UnitMessage.UNIT_ON_LOAD:\n props.onLoad && props.onLoad(message.details as UNResponseUnitOnLoadEvent);\n break;\n case PageMessage.PAGE_HEIGHT: {\n const currentHeight = (message.details as HeightEvent).height;\n setHeight(currentHeight);\n if (presentationMode === PresentationMode.Inherit && currentHeight === 0) {\n setPresentationMode(PresentationMode.Default);\n }\n break;\n }\n case UnitMessage.UNIT_PLAID_TOKEN_CREATED: {\n const linkTokenEvent = message.details as PlaidTokenCreatedEvent;\n const linkTokenData = linkTokenEvent.linkToken as PlaidLinkTokenData;\n setLinkToken(linkTokenData.attributes.linkToken);\n break;\n }\n\n case UnitMessage.UNIT_REQUEST_EXTERNAL_SDK: {\n const externalSdkType = (message.details as RequestExternalSdkEvent).type;\n if (externalSdkType !== 'plaid') return;\n linkToken && openLink({\n tokenConfig: { noLoadingState: false, token: linkToken},\n onSuccess: (success) => {\n dispatchUnitPlaidResponse(success);\n },\n onExit: exit => { console.log(exit); }\n }).catch(e => {\n console.error(e);\n });\n break;\n }\n }\n };\n\n const renderACHDebitWebView = () => {\n return (\n <WebComponent\n ref={webRef}\n type={WebComponentType.achDebitPayment}\n presentationMode={presentationMode}\n params={getACHDebitParams(props)}\n script={getACHDebitScript(appPackageName)}\n onMessage={(message: WebViewMessage) => handleWebViewMessage(message)}\n isScrollable={false}\n theme={props.theme}\n />\n );\n };\n\n if (presentationMode === PresentationMode.Inherit) {\n return renderACHDebitWebView();\n }\n\n return (\n <View style={{ height: height }}>\n {renderACHDebitWebView()}\n </View>\n\n );\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_WebComponent","_bodyHtml","_pageMessage","_reactNative","_unitMessages","_UNACHDebitComponent","_reactNativePlaidLinkSdk","_paymentsMessage","_onLoadMessage","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","UNACHDebitComponent","props","height","setHeight","useState","appPackageName","setAppPackageName","linkToken","setLinkToken","webRef","useRef","presentationMode","setPresentationMode","PresentationMode","Inherit","useEffect","setPackageNameForAndroid","Platform","OS","packageName","getAndroidPackageName","dispatchUnitPlaidResponse","success","injectUnitPlaidResponse","current","handleUnitOnLoad","response","onLoad","RESPONSE_KEYS","errors","account","counterpartyAccount","achOnload","data","console","error","handleWebViewMessage","message","details","type","PaymentMessage","PAYMENT_CREATED","achDebitEvent","onPaymentCreated","UnitMessage","UNIT_ON_LOAD","PageMessage","PAGE_HEIGHT","currentHeight","Default","UNIT_PLAID_TOKEN_CREATED","linkTokenEvent","linkTokenData","attributes","UNIT_REQUEST_EXTERNAL_SDK","externalSdkType","openLink","tokenConfig","noLoadingState","token","onSuccess","onExit","exit","log","catch","e","renderACHDebitWebView","createElement","WebComponent","ref","WebComponentType","achDebitPayment","params","getACHDebitParams","script","getACHDebitScript","onMessage","isScrollable","theme","View","style","exports"],"sources":["UNACHDebitComponent.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\nimport { WebComponent, WebComponentType } from '../../webComponent/WebComponent';\nimport { PresentationMode } from '../../scripts/html/bodyHtml';\nimport type { WebViewMessage } from '../../messages/webMessages';\nimport type { UNOnLoadResponse, UNACHData, UNError, UNOnLoadResponseData, UNACHOnLoadData } from '../../sharedTypes';\nimport { HeightEvent, PageMessage } from '../../messages/webMessages/pageMessage';\nimport { Platform, View } from 'react-native';\nimport { PlaidLinkTokenData, PlaidTokenCreatedEvent, RequestExternalSdkEvent, UnitMessage } from '../../messages/webMessages/unitMessages';\nimport { getACHDebitParams, getACHDebitScript, getAndroidPackageName, injectUnitPlaidResponse } from './UNACHDebitComponent.utils';\n\nimport { LinkSuccess, openLink } from 'react-native-plaid-link-sdk';\nimport type WebView from 'react-native-webview';\n\nimport { PaymentMessage } from '../../messages/webMessages/paymentsMessage';\nimport type { ACHEvent } from '../../messages/webMessages/achCreditMessage';\nimport { RESPONSE_KEYS, UnitOnLoadResponseEvent } from '../../messages/webMessages/onLoadMessage';\n\nexport interface UNACHDebitComponentProps {\n accountId: string;\n customerToken: string;\n theme?: string;\n isAutoFocus?: boolean;\n fee?: number;\n onPaymentCreated?: (data: UNACHData) => void;\n onLoad?: (response: UNOnLoadResponse<UNACHOnLoadData>) => void;\n}\n\nexport const UNACHDebitComponent = (props: UNACHDebitComponentProps) => {\n const [height, setHeight] = useState<number>(0);\n const [appPackageName, setAppPackageName] = useState<string>('');\n const [linkToken, setLinkToken] = useState<string>('');\n const webRef = useRef<WebView>(null);\n const [presentationMode, setPresentationMode] = useState<PresentationMode>(PresentationMode.Inherit);\n\n useEffect(() => {\n const setPackageNameForAndroid = async () => {\n if (Platform.OS === 'android') {\n const packageName = await getAndroidPackageName();\n setAppPackageName(packageName);\n }\n };\n setPackageNameForAndroid();\n }, []);\n\n const dispatchUnitPlaidResponse = (success: LinkSuccess) => {\n injectUnitPlaidResponse(webRef.current, success);\n };\n\n const handleUnitOnLoad = (response: UnitOnLoadResponseEvent) => {\n if (!props.onLoad) {\n return;\n }\n\n if (RESPONSE_KEYS.errors in response) {\n props.onLoad(response as UNError);\n return;\n }\n\n if (RESPONSE_KEYS.account in response && RESPONSE_KEYS.counterpartyAccount in response) {\n // ACHOnLoadResponse;\n const achOnload: UNOnLoadResponseData<UNACHOnLoadData> = {\n data: {\n [RESPONSE_KEYS.account]: response[RESPONSE_KEYS.account].data,\n [RESPONSE_KEYS.counterpartyAccount]: response[RESPONSE_KEYS.counterpartyAccount].data,\n }\n };\n props.onLoad(achOnload);\n return;\n }\n\n console.error('On Load Error: unexpected response type');\n return;\n };\n\n const handleWebViewMessage = (message: WebViewMessage) => {\n if (!message || !message.details) return;\n\n switch (message.type) {\n case PaymentMessage.PAYMENT_CREATED: {\n const achDebitEvent = message.details as ACHEvent;\n props.onPaymentCreated && props.onPaymentCreated(achDebitEvent.data as UNACHData);\n break;\n }\n case UnitMessage.UNIT_ON_LOAD:\n handleUnitOnLoad(message.details as UnitOnLoadResponseEvent);\n break;\n case PageMessage.PAGE_HEIGHT: {\n const currentHeight = (message.details as HeightEvent).height;\n setHeight(currentHeight);\n if (presentationMode === PresentationMode.Inherit && currentHeight === 0) {\n setPresentationMode(PresentationMode.Default);\n }\n break;\n }\n case UnitMessage.UNIT_PLAID_TOKEN_CREATED: {\n const linkTokenEvent = message.details as PlaidTokenCreatedEvent;\n const linkTokenData = linkTokenEvent.linkToken as PlaidLinkTokenData;\n setLinkToken(linkTokenData.attributes.linkToken);\n break;\n }\n\n case UnitMessage.UNIT_REQUEST_EXTERNAL_SDK: {\n const externalSdkType = (message.details as RequestExternalSdkEvent).type;\n if (externalSdkType !== 'plaid') return;\n linkToken && openLink({\n tokenConfig: { noLoadingState: false, token: linkToken},\n onSuccess: (success) => {\n dispatchUnitPlaidResponse(success);\n },\n onExit: exit => { console.log(exit); }\n }).catch(e => {\n console.error(e);\n });\n break;\n }\n }\n };\n\n const renderACHDebitWebView = () => {\n return (\n <WebComponent\n ref={webRef}\n type={WebComponentType.achDebitPayment}\n presentationMode={presentationMode}\n params={getACHDebitParams(props)}\n script={getACHDebitScript(appPackageName)}\n onMessage={(message: WebViewMessage) => handleWebViewMessage(message)}\n isScrollable={false}\n theme={props.theme}\n />\n );\n };\n\n if (presentationMode === PresentationMode.Inherit) {\n return renderACHDebitWebView();\n }\n\n return (\n <View style={{ height: height }}>\n {renderACHDebitWebView()}\n </View>\n\n );\n};\n"],"mappings":"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"}
|
|
@@ -14,6 +14,7 @@ var _UNAccountComponent = require("./UNAccountComponent.utils");
|
|
|
14
14
|
var _bodyHtml = require("../../scripts/html/bodyHtml");
|
|
15
15
|
var _listenerToBus = require("../../hooks/listenerToBus");
|
|
16
16
|
var _accountMessage = require("../../messages/webMessages/accountMessage");
|
|
17
|
+
var _onLoadMessage = require("../../messages/webMessages/onLoadMessage");
|
|
17
18
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
18
19
|
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); }
|
|
19
20
|
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; }
|
|
@@ -23,7 +24,7 @@ exports.AccountAction = AccountAction;
|
|
|
23
24
|
AccountAction["List"] = "account-list";
|
|
24
25
|
AccountAction["Menu"] = "account-menu";
|
|
25
26
|
})(AccountAction || (exports.AccountAction = AccountAction = {}));
|
|
26
|
-
const UNAccountComponent = props
|
|
27
|
+
const UNAccountComponent = /*#__PURE__*/_react.default.forwardRef(function UNAccountComponent(props, accountRef) {
|
|
27
28
|
const [height, setHeight] = (0, _react.useState)(0);
|
|
28
29
|
const windowWidth = _reactNative.Dimensions.get('window').width;
|
|
29
30
|
const [requestRefreshEvent, setRequestRefreshEvent] = (0, _react.useState)(null);
|
|
@@ -34,6 +35,22 @@ const UNAccountComponent = props => {
|
|
|
34
35
|
const requestRefresh = data => {
|
|
35
36
|
setRequestRefreshEvent(data);
|
|
36
37
|
};
|
|
38
|
+
const handleUnitOnLoad = response => {
|
|
39
|
+
if (!props.onLoad) {
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
if (_onLoadMessage.RESPONSE_KEYS.errors in response) {
|
|
43
|
+
props.onLoad(response);
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
if (_onLoadMessage.RESPONSE_KEYS.account in response) {
|
|
47
|
+
// AccountsOnLoadResponse;
|
|
48
|
+
props.onLoad(response[_onLoadMessage.RESPONSE_KEYS.account]);
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
console.error('On Load Error: unexpected response type.');
|
|
52
|
+
return;
|
|
53
|
+
};
|
|
37
54
|
(0, _listenerToBus.useListenerToBus)({
|
|
38
55
|
busEventKey: _unitMessages.UnitMessage.UNIT_REQUEST_REFRESH,
|
|
39
56
|
action: requestRefresh
|
|
@@ -45,10 +62,15 @@ const UNAccountComponent = props => {
|
|
|
45
62
|
(0, _react.useEffect)(() => {
|
|
46
63
|
(0, _UNAccountComponent.injectRefreshEventIfNeeded)(webRef.current, requestRefreshEvent);
|
|
47
64
|
}, [requestRefreshEvent]);
|
|
65
|
+
(0, _react.useImperativeHandle)(accountRef, () => ({
|
|
66
|
+
openActionsMenu() {
|
|
67
|
+
(0, _UNAccountComponent.injectOpenActionsMenuScript)(webRef.current);
|
|
68
|
+
}
|
|
69
|
+
}));
|
|
48
70
|
const handleMessage = message => {
|
|
49
71
|
switch (message.type) {
|
|
50
72
|
case _unitMessages.UnitMessage.UNIT_ON_LOAD:
|
|
51
|
-
|
|
73
|
+
handleUnitOnLoad(message.details);
|
|
52
74
|
break;
|
|
53
75
|
case _unitMessages.UnitMessage.UNIT_REQUEST_RENDERING:
|
|
54
76
|
{
|
|
@@ -80,6 +102,6 @@ const UNAccountComponent = props => {
|
|
|
80
102
|
width: windowWidth,
|
|
81
103
|
isScrollable: false
|
|
82
104
|
}));
|
|
83
|
-
};
|
|
105
|
+
});
|
|
84
106
|
exports.UNAccountComponent = UNAccountComponent;
|
|
85
107
|
//# sourceMappingURL=UNAccountComponent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_pageMessage","_unitMessages","_EventBus","_interopRequireDefault","_WebComponent","_UNAccountComponent","_bodyHtml","_listenerToBus","_accountMessage","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","AccountAction","exports","UNAccountComponent","props","height","setHeight","useState","windowWidth","Dimensions","width","requestRefreshEvent","setRequestRefreshEvent","webRef","useRef","handleAccountChanged","account","onAccountChanged","requestRefresh","data","useListenerToBus","busEventKey","UnitMessage","UNIT_REQUEST_REFRESH","action","AccountMessage","UNIT_ACCOUNT_CHANGED","useEffect","injectRefreshEventIfNeeded","current","handleMessage","message","type","UNIT_ON_LOAD","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_pageMessage","_unitMessages","_EventBus","_interopRequireDefault","_WebComponent","_UNAccountComponent","_bodyHtml","_listenerToBus","_accountMessage","_onLoadMessage","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","AccountAction","exports","UNAccountComponent","React","forwardRef","props","accountRef","height","setHeight","useState","windowWidth","Dimensions","width","requestRefreshEvent","setRequestRefreshEvent","webRef","useRef","handleAccountChanged","account","onAccountChanged","requestRefresh","data","handleUnitOnLoad","response","onLoad","RESPONSE_KEYS","errors","console","error","useListenerToBus","busEventKey","UnitMessage","UNIT_REQUEST_REFRESH","action","AccountMessage","UNIT_ACCOUNT_CHANGED","useEffect","injectRefreshEventIfNeeded","current","useImperativeHandle","openActionsMenu","injectOpenActionsMenuScript","handleMessage","message","type","UNIT_ON_LOAD","details","UNIT_REQUEST_RENDERING","event","componentName","WebComponentType","componentResourceId","accountId","requestRenderingEvent","EventBus","Instance","PageMessage","PAGE_HEIGHT","createElement","View","style","WebComponent","ref","presentationMode","PresentationMode","Default","params","getAccountParams","script","getAccountScript","theme","onMessage","isScrollable"],"sources":["UNAccountComponent.tsx"],"sourcesContent":["import React, { useEffect, useImperativeHandle, 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 type { WebViewMessage } from '../../messages/webMessages';\nimport { getAccountParams, getAccountScript, injectOpenActionsMenuScript, injectRefreshEventIfNeeded } from './UNAccountComponent.utils';\nimport { PresentationMode } from '../../scripts/html/bodyHtml';\nimport type { BottomSheetSlotData } from '../UNBottomSheetComponent/UNBottomSheetComponent';\nimport type { UNError, UNOnLoadResponse, UNOnLoadResponseData } from '../../sharedTypes';\nimport { useListenerToBus } from '../../hooks/listenerToBus';\nimport type { UNAccountData } from '../../sharedTypes/account.types';\nimport { AccountMessage } from '../../messages/webMessages/accountMessage';\nimport { RESPONSE_KEYS, UnitOnLoadResponseEvent } from '../../messages/webMessages/onLoadMessage';\n\nexport interface UNAccountComponentProps {\n accountId?: string;\n customerToken: string;\n theme?: string;\n onLoad?: (response: UNOnLoadResponse<[UNAccountData]>) => void;\n onAccountChanged?: (account: UNAccountData) => void;\n}\n\nexport interface UNAccountRef {\n openActionsMenu: () => void;\n}\n\nexport enum AccountAction {\n List = 'account-list',\n Menu = 'account-menu'\n}\n\nexport const UNAccountComponent = React.forwardRef<UNAccountRef, UNAccountComponentProps>(function UNAccountComponent(props, accountRef) {\n const [height, setHeight] = useState(0);\n const windowWidth = Dimensions.get('window').width;\n\n const [requestRefreshEvent, setRequestRefreshEvent] = useState<RequestRefreshEvent | null>(null);\n\n const webRef = useRef<WebView>(null);\n\n const handleAccountChanged = (account: UNAccountData) => {\n props.onAccountChanged && props.onAccountChanged(account);\n };\n\n const requestRefresh = (data: RequestRefreshEvent) => {\n setRequestRefreshEvent(data);\n };\n\n const handleUnitOnLoad = (response: UnitOnLoadResponseEvent) => {\n if (!props.onLoad) {\n return;\n }\n\n if (RESPONSE_KEYS.errors in response) {\n props.onLoad(response as UNError);\n return;\n }\n\n if (RESPONSE_KEYS.account in response) {\n // AccountsOnLoadResponse;\n props.onLoad(response[RESPONSE_KEYS.account] as UNOnLoadResponseData<[UNAccountData]>);\n return;\n }\n\n console.error('On Load Error: unexpected response type.');\n return;\n };\n\n useListenerToBus({ busEventKey: UnitMessage.UNIT_REQUEST_REFRESH, action: requestRefresh });\n useListenerToBus({ busEventKey: AccountMessage.UNIT_ACCOUNT_CHANGED, action: handleAccountChanged });\n\n useEffect(() => {\n injectRefreshEventIfNeeded(webRef.current, requestRefreshEvent);\n }, [requestRefreshEvent]);\n\n useImperativeHandle(accountRef, () => ({\n openActionsMenu() {\n injectOpenActionsMenuScript(webRef.current);\n }\n }));\n\n const handleMessage = (message: WebViewMessage) => {\n switch (message.type) {\n case UnitMessage.UNIT_ON_LOAD:\n handleUnitOnLoad(message.details as UnitOnLoadResponseEvent);\n break;\n case UnitMessage.UNIT_REQUEST_RENDERING: {\n const event: BottomSheetSlotData = {\n componentName: WebComponentType.account,\n componentResourceId: props.accountId,\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 }\n };\n\n return (\n <View style={{ height }}>\n <WebComponent\n ref={webRef}\n type={WebComponentType.account}\n presentationMode={PresentationMode.Default}\n params={getAccountParams(props)}\n script={getAccountScript()}\n theme={props.theme}\n onMessage={message => handleMessage(message)}\n width={windowWidth}\n isScrollable={false}\n />\n </View>\n );\n});\n"],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.injectRefreshEventIfNeeded = exports.getAccountScript = exports.getAccountParams = exports.getAccountActionType = void 0;
|
|
6
|
+
exports.injectRefreshEventIfNeeded = exports.injectOpenActionsMenuScript = exports.getAccountScript = exports.getAccountParams = exports.getAccountActionType = void 0;
|
|
7
7
|
var _UNAccountComponent = require("./UNAccountComponent");
|
|
8
8
|
var _unitMessages = require("../../messages/webMessages/unitMessages");
|
|
9
9
|
var _WebComponent = require("../../webComponent/WebComponent");
|
|
@@ -23,6 +23,10 @@ const getAccountScript = () => {
|
|
|
23
23
|
`;
|
|
24
24
|
};
|
|
25
25
|
exports.getAccountScript = getAccountScript;
|
|
26
|
+
const injectOpenActionsMenuScript = currentWeb => {
|
|
27
|
+
currentWeb === null || currentWeb === void 0 ? void 0 : currentWeb.injectJavaScript(`dispatchOpenActionsMenu('${_WebComponent.WebComponentType.account}')`);
|
|
28
|
+
};
|
|
29
|
+
exports.injectOpenActionsMenuScript = injectOpenActionsMenuScript;
|
|
26
30
|
const injectRefreshEventIfNeeded = (currentWeb, requestRefreshEvent) => {
|
|
27
31
|
if (requestRefreshEvent && requestRefreshEvent.dependencies.includes(_WebComponent.WebComponentType.account.valueOf())) {
|
|
28
32
|
currentWeb === null || currentWeb === void 0 ? void 0 : currentWeb.injectJavaScript(`dispatchRefreshEvent('${JSON.stringify(requestRefreshEvent)}')`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_UNAccountComponent","require","_unitMessages","_WebComponent","getAccountParams","props","accountId","customerToken","exports","getAccountScript","UnitMessage","UNIT_REQUEST_REFRESH","
|
|
1
|
+
{"version":3,"names":["_UNAccountComponent","require","_unitMessages","_WebComponent","getAccountParams","props","accountId","customerToken","exports","getAccountScript","UnitMessage","UNIT_REQUEST_REFRESH","injectOpenActionsMenuScript","currentWeb","injectJavaScript","WebComponentType","account","injectRefreshEventIfNeeded","requestRefreshEvent","dependencies","includes","valueOf","JSON","stringify","getAccountActionType","requestRendering","data","nativeComponent","AccountAction","List","Menu"],"sources":["UNAccountComponent.utils.ts"],"sourcesContent":["import { AccountAction, UNAccountComponentProps } from './UNAccountComponent';\nimport { RequestRefreshEvent, RequestRenderingEvent, UnitMessage } from '../../messages/webMessages/unitMessages';\nimport type WebView from 'react-native-webview';\nimport { WebComponentType } from '../../webComponent/WebComponent';\n\nexport const getAccountParams = (props: UNAccountComponentProps) => {\n return `\n account-id=\"${props.accountId}\"\n customer-token=\"${props.customerToken}\"\n `;\n};\n\nexport const getAccountScript = () => {\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 injectOpenActionsMenuScript = (currentWeb: WebView | null) => {\n currentWeb?.injectJavaScript(`dispatchOpenActionsMenu('${WebComponentType.account}')`);\n};\n\nexport const injectRefreshEventIfNeeded = (currentWeb: WebView | null, requestRefreshEvent: RequestRefreshEvent | null) => {\n if (requestRefreshEvent && requestRefreshEvent.dependencies.includes(WebComponentType.account.valueOf())) {\n currentWeb?.injectJavaScript(`dispatchRefreshEvent('${JSON.stringify(requestRefreshEvent)}')`);\n }\n};\n\nexport const getAccountActionType = (requestRendering: RequestRenderingEvent) => {\n return requestRendering.data.nativeComponent.includes(AccountAction.List) ? AccountAction.List : AccountAction.Menu;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,mBAAA,GAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;AAEA,IAAAE,aAAA,GAAAF,OAAA;AAEO,MAAMG,gBAAgB,GAAIC,KAA8B,IAAK;EAClE,OAAQ;AACV,kBAAkBA,KAAK,CAACC,SAAU;AAClC,sBAAsBD,KAAK,CAACE,aAAc;AAC1C,GAAG;AACH,CAAC;AAACC,OAAA,CAAAJ,gBAAA,GAAAA,gBAAA;AAEK,MAAMK,gBAAgB,GAAGA,CAAA,KAAM;EACpC,OAAQ;AACV;AACA,qCAAqCC,yBAAW,CAACC,oBAAqB;AACtE;AACA;AACA,GAAG;AACH,CAAC;AAACH,OAAA,CAAAC,gBAAA,GAAAA,gBAAA;AAEK,MAAMG,2BAA2B,GAAIC,UAA0B,IAAK;EACzEA,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEC,gBAAgB,CAAE,4BAA2BC,8BAAgB,CAACC,OAAQ,IAAG,CAAC;AACxF,CAAC;AAACR,OAAA,CAAAI,2BAAA,GAAAA,2BAAA;AAEK,MAAMK,0BAA0B,GAAGA,CAACJ,UAA0B,EAAEK,mBAA+C,KAAK;EACzH,IAAIA,mBAAmB,IAAIA,mBAAmB,CAACC,YAAY,CAACC,QAAQ,CAACL,8BAAgB,CAACC,OAAO,CAACK,OAAO,EAAE,CAAC,EAAE;IACxGR,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEC,gBAAgB,CAAE,yBAAwBQ,IAAI,CAACC,SAAS,CAACL,mBAAmB,CAAE,IAAG,CAAC;EAChG;AACF,CAAC;AAACV,OAAA,CAAAS,0BAAA,GAAAA,0BAAA;AAEK,MAAMO,oBAAoB,GAAIC,gBAAuC,IAAK;EAC/E,OAAOA,gBAAgB,CAACC,IAAI,CAACC,eAAe,CAACP,QAAQ,CAACQ,iCAAa,CAACC,IAAI,CAAC,GAAGD,iCAAa,CAACC,IAAI,GAAGD,iCAAa,CAACE,IAAI;AACrH,CAAC;AAACtB,OAAA,CAAAgB,oBAAA,GAAAA,oBAAA"}
|