@amos.com/react-amos-js 0.10.1 → 0.10.2
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 +15 -4
- package/dist/index.d.ts +13 -1
- package/dist/index.js +1 -1
- package/dist/index.mjs +13 -7
- package/package.json +4 -4
- package/src/index.tsx +16 -1
package/README.md
CHANGED
|
@@ -64,7 +64,7 @@ Setup intents are used to save payment methods for future use (e.g. recurring pa
|
|
|
64
64
|
- On the client, call `confirmSetupIntent({ iframeRef, token })` instead of `confirmPaymentIntent({ iframeRef, token })`.
|
|
65
65
|
- The same `onResult` callback is used; succeeded setup intents arrive as `{ status: "succeeded", intent: "setup", setupIntent }`.
|
|
66
66
|
|
|
67
|
-
The same `AmosCreditCardPaymentMethodForm` / `AmosBankAccountPaymentMethodForm` components support both payment intents and setup intents — they are differentiated by which confirmation function you call.
|
|
67
|
+
The same `AmosCreditCardPaymentMethodForm` / `AmosBankAccountPaymentMethodForm` components support both payment intents and setup intents — they are differentiated by which confirmation function you call. For bank setup, pass `intent="setup"` so Connect / Plaid is always shown (no merchant ACH threshold lookup).
|
|
68
68
|
|
|
69
69
|
## Understanding PCI DSS compliance requirements
|
|
70
70
|
|
|
@@ -497,11 +497,12 @@ When the charge meets the merchant’s ACH verification threshold, the SDK hides
|
|
|
497
497
|
|
|
498
498
|
**Required props:** same as `AmosCreditCardPaymentMethodForm` — `renderToken`, `onResult` — plus:
|
|
499
499
|
|
|
500
|
-
- `amount` (`string`, major-currency decimal, e.g. `"50.00"`, defaults to `"0"`) — same format as Google Pay / Apple Pay. Compared to the threshold the iframe fetches (cents). Pass `"0"` (the default) on open-amount forms until the customer enters a charge — 0 is typically under the threshold, so Connect stays hidden. Pass a new `amount` when the customer changes the charge.
|
|
500
|
+
- `amount` (`string`, major-currency decimal, e.g. `"50.00"`, defaults to `"0"`) — same format as Google Pay / Apple Pay. Compared to the threshold the iframe fetches (cents). Pass `"0"` (the default) on open-amount forms until the customer enters a charge — 0 is typically under the threshold, so Connect stays hidden. Pass a new `amount` when the customer changes the charge.
|
|
501
|
+
- `intent` (`"payment" | "setup"`, defaults to `"payment"`) — `"setup"` always shows Connect / Plaid (no merchant ACH threshold lookup), unless the render token disables verification. Use this when saving a bank account for later charges.
|
|
501
502
|
|
|
502
503
|
**Optional props:** same as `AmosCreditCardPaymentMethodForm` — `appearance`, `billingAddressRequirement`, `onValidityChange` (`isValid` is also true after Plaid Link returns credentials).
|
|
503
504
|
|
|
504
|
-
Compare locally once the iframe posts `ACH_THRESHOLD`: Plaid when the amount (converted to cents, default `0`) is `>= achThreshold`. No threshold (or `null`) keeps the manual bank form. If `amount` later drops under the threshold, Plaid credentials are dropped and the iframe form is shown again.
|
|
505
|
+
Compare locally once the iframe posts `ACH_THRESHOLD`: Plaid when `requireVerification` is true (setup intents), or when the amount (converted to cents, default `0`) is `>= achThreshold`. No threshold (or `null`) keeps the manual bank form. Render tokens with Plaid verification disabled never require Connect. If `amount` later drops under the threshold, Plaid credentials are dropped and the iframe form is shown again.
|
|
505
506
|
|
|
506
507
|
```tsx
|
|
507
508
|
<AmosBankAccountPaymentMethodForm
|
|
@@ -511,6 +512,16 @@ Compare locally once the iframe posts `ACH_THRESHOLD`: Plaid when the amount (co
|
|
|
511
512
|
/>
|
|
512
513
|
```
|
|
513
514
|
|
|
515
|
+
Setup (always Connect, no merchant lookup):
|
|
516
|
+
|
|
517
|
+
```tsx
|
|
518
|
+
<AmosBankAccountPaymentMethodForm
|
|
519
|
+
renderToken={renderToken}
|
|
520
|
+
intent="setup"
|
|
521
|
+
onResult={onResult}
|
|
522
|
+
/>
|
|
523
|
+
```
|
|
524
|
+
|
|
514
525
|
`validateForm` / `confirmPaymentIntent` / `confirmSetupIntent` stay iframe-based. When Plaid succeeded, confirm sends `payment_method.plaid` (`public_token`, `account_id`) and does not require typed account numbers.
|
|
515
526
|
|
|
516
527
|
**CSP:** the parent page must allow Plaid’s script and frames, for example `script-src https://cdn.plaid.com` and `frame-src https://cdn.plaid.com https://*.plaid.com`. Amos never loads `PLAID_SECRET` / `PLAID_CLIENT_ID` in the SDK or embed iframe.
|
|
@@ -592,7 +603,7 @@ Re-exports of the same advanced helpers exposed by `@amos.com/amos-js`. Most int
|
|
|
592
603
|
- **`onResult` is not settlement proof**: `onResult` tells you when to stop waiting (e.g. dismiss a spinner). Verify payment or setup success on your backend via webhooks. On `status: "incomplete"`, unlock your UI — the customer can fix fields in the iframe and retry. Use `result.reason` (`"field_errors"` or `"validation_failed"`) to distinguish recoverable states.
|
|
593
604
|
- **Same components for payment vs setup intents**: `AmosCreditCardPaymentMethodForm` and `AmosBankAccountPaymentMethodForm` support both payment intents and setup intents. The flow differs only by which server call you make and which confirmation function you use (`confirmPaymentIntent` vs `confirmSetupIntent`). Handle both payment and setup outcomes via `onResult`.
|
|
594
605
|
- **Amount format**: for `AmosGooglePayButton`, `AmosApplePayButton`, and `AmosBankAccountPaymentMethodForm`, `amount` is a major-currency decimal string (e.g. `"50.00"` for $50.00). For `components["schemas"]["CreatePaymentIntentInput"]` on the server (card/bank create, and the object the wallet iframe sends to `onInitiatePaymentIntentRequest`), `amount` is a number in cents (e.g. `5000`).
|
|
595
|
-
- **Plaid Link (ACH verification)**: load `cdn.plaid.com` from the **parent** document (see CSP on `AmosBankAccountPaymentMethodForm`). Merchants do not proxy Pay API; the bank iframe fetches the ACH threshold and mints link tokens. Confirm still goes through the bank iframe so Amos can attach `plaid` to the payment method.
|
|
606
|
+
- **Plaid Link (ACH verification)**: load `cdn.plaid.com` from the **parent** document (see CSP on `AmosBankAccountPaymentMethodForm`). Merchants do not proxy Pay API; the bank iframe fetches the ACH threshold for payment intents and mints link tokens. Setup intents skip the merchant lookup and always require Plaid unless the render token disables verification. Confirm still goes through the bank iframe so Amos can attach `plaid` to the payment method.
|
|
596
607
|
- **Apple Pay waiting overlay**: on browsers where Apple's QR handoff opens in a popup (non-Safari), `AmosApplePayButton` shows a fixed full-viewport overlay on the host page until payment completes, the popup closes, or the user clicks **Cancel payment**. Avoid stacking other fixed UI above it.
|
|
597
608
|
- **Going framework-free**: if you need to use Amos outside of React (vanilla JS, another framework, etc.), use [`@amos.com/amos-js`](../amos-js) directly.
|
|
598
609
|
|
package/dist/index.d.ts
CHANGED
|
@@ -85,11 +85,23 @@ type AmosBankAccountPaymentMethodFormProps = IframePassthroughProps & {
|
|
|
85
85
|
* `"0"`, which is typically under the threshold so Connect / Plaid
|
|
86
86
|
* stays hidden until the host passes a real charge.
|
|
87
87
|
*
|
|
88
|
+
* Ignored when {@link AmosBankAccountPaymentMethodFormProps.intent} is
|
|
89
|
+
* `"setup"`.
|
|
90
|
+
*
|
|
88
91
|
* @default "0"
|
|
89
92
|
*/
|
|
90
93
|
amount?: string;
|
|
94
|
+
/**
|
|
95
|
+
* `"setup"` saves a bank account for later charges and always shows
|
|
96
|
+
* Connect / Plaid (no merchant threshold lookup). `"payment"`
|
|
97
|
+
* compares {@link AmosBankAccountPaymentMethodFormProps.amount} to the
|
|
98
|
+
* merchant ACH threshold.
|
|
99
|
+
*
|
|
100
|
+
* @default "payment"
|
|
101
|
+
*/
|
|
102
|
+
intent?: "payment" | "setup";
|
|
91
103
|
};
|
|
92
|
-
export declare function AmosBankAccountPaymentMethodForm({ ref, renderToken, appearance, onResult, onValidityChange, billingAddressRequirement, amount, style, ...rest }: AmosBankAccountPaymentMethodFormProps): import("react").JSX.Element;
|
|
104
|
+
export declare function AmosBankAccountPaymentMethodForm({ ref, renderToken, appearance, onResult, onValidityChange, billingAddressRequirement, amount, intent, style, ...rest }: AmosBankAccountPaymentMethodFormProps): import("react").JSX.Element;
|
|
93
105
|
type AmosGooglePayButtonProps = {
|
|
94
106
|
ref?: ForwardedIframeRef;
|
|
95
107
|
renderToken: string;
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});let e=require("@amos.com/amos-js"),t=require("react"),n=require("react/jsx-runtime");function r(e){return e?e.current??null:null}function i({iframeRef:t}){return(0,e.validateForm)({iframe:r(t)})}function a({iframeRef:t,token:n}){(0,e.confirmPaymentIntent)({iframe:r(t),token:n})}function o({iframeRef:t,token:n}){(0,e.confirmSetupIntent)({iframe:r(t),token:n})}function s({iframeRef:t}){(0,e.resetForm)({iframe:r(t)})}function c(e,t){typeof e==`function`?e(t):e&&(e.current=t)}function l(e,{style:t,className:n,id:r,...i}){n!=null&&(e.className=n),r!=null&&(e.id=r),Object.assign(e.style,t);for(let[t,n]of Object.entries(i))n!=null&&(t in e?Reflect.set(e,t,n):e.setAttribute(t,String(n)))}function u({containerRef:e,iframeRef:n,mount:r,options:i,remountDeps:a,iframePassthrough:o,updateDeps:s}){let u=(0,t.useRef)(null);(0,t.useLayoutEffect)(()=>{let t=e.current;if(!t)return;let a=r(t,i);return u.current=a,c(n,a.iframe),l(a.iframe,o),()=>{a.destroy(),u.current=null,c(n,null)}},[...a]),(0,t.useEffect)(()=>{u.current?.update(i)},[...s]),(0,t.useEffect)(()=>{let e=u.current?.iframe;e&&l(e,o)})}var d=`oklch(0.97 0 0)`;function f({height:r,borderRadius:i,containerRef:a}){return(0,t.useLayoutEffect)(()=>{(0,e.ensureSkeletonStyles)()},[]),(0,n.jsxs)(`div`,{style:{boxSizing:`border-box`,position:`relative`,width:`100%`,height:r,minHeight:r,overflow:`hidden`},children:[(0,n.jsx)(`div`,{className:`amos-js-form-skeleton-input amos-js-wallet-skeleton`,style:{position:`absolute`,inset:0,height:r,borderRadius:i,background:d,pointerEvents:`none`,zIndex:0},"aria-hidden":!0}),(0,n.jsx)(`div`,{ref:a,style:{position:`absolute`,inset:0,zIndex:1,width:`100%`,height:`100%`}})]})}function p({ref:r,renderToken:i,appearance:a,onResult:o,onValidityChange:s,onCardBrandChanged:c,additionalFields:l={cardholderName:!1},billingAddressRequirement:d=`country`,style:f,...p}){let m=(0,t.useRef)(null);return u({containerRef:m,iframeRef:r,mount:e.mountAmosCreditCardPaymentMethodForm,options:{renderToken:i,appearance:a,additionalFields:l,billingAddressRequirement:d,onResult:o,onValidityChange:s,onCardBrandChanged:c},remountDeps:[i,l.cardholderName,d],iframePassthrough:{style:f,...p},updateDeps:[a,l,d,o,s,c]}),(0,n.jsx)(`div`,{ref:m})}function m({ref:r,renderToken:i,appearance:a,onResult:o,onValidityChange:s,billingAddressRequirement:c=`country`,amount:l=`0`,style:
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});let e=require("@amos.com/amos-js"),t=require("react"),n=require("react/jsx-runtime");function r(e){return e?e.current??null:null}function i({iframeRef:t}){return(0,e.validateForm)({iframe:r(t)})}function a({iframeRef:t,token:n}){(0,e.confirmPaymentIntent)({iframe:r(t),token:n})}function o({iframeRef:t,token:n}){(0,e.confirmSetupIntent)({iframe:r(t),token:n})}function s({iframeRef:t}){(0,e.resetForm)({iframe:r(t)})}function c(e,t){typeof e==`function`?e(t):e&&(e.current=t)}function l(e,{style:t,className:n,id:r,...i}){n!=null&&(e.className=n),r!=null&&(e.id=r),Object.assign(e.style,t);for(let[t,n]of Object.entries(i))n!=null&&(t in e?Reflect.set(e,t,n):e.setAttribute(t,String(n)))}function u({containerRef:e,iframeRef:n,mount:r,options:i,remountDeps:a,iframePassthrough:o,updateDeps:s}){let u=(0,t.useRef)(null);(0,t.useLayoutEffect)(()=>{let t=e.current;if(!t)return;let a=r(t,i);return u.current=a,c(n,a.iframe),l(a.iframe,o),()=>{a.destroy(),u.current=null,c(n,null)}},[...a]),(0,t.useEffect)(()=>{u.current?.update(i)},[...s]),(0,t.useEffect)(()=>{let e=u.current?.iframe;e&&l(e,o)})}var d=`oklch(0.97 0 0)`;function f({height:r,borderRadius:i,containerRef:a}){return(0,t.useLayoutEffect)(()=>{(0,e.ensureSkeletonStyles)()},[]),(0,n.jsxs)(`div`,{style:{boxSizing:`border-box`,position:`relative`,width:`100%`,height:r,minHeight:r,overflow:`hidden`},children:[(0,n.jsx)(`div`,{className:`amos-js-form-skeleton-input amos-js-wallet-skeleton`,style:{position:`absolute`,inset:0,height:r,borderRadius:i,background:d,pointerEvents:`none`,zIndex:0},"aria-hidden":!0}),(0,n.jsx)(`div`,{ref:a,style:{position:`absolute`,inset:0,zIndex:1,width:`100%`,height:`100%`}})]})}function p({ref:r,renderToken:i,appearance:a,onResult:o,onValidityChange:s,onCardBrandChanged:c,additionalFields:l={cardholderName:!1},billingAddressRequirement:d=`country`,style:f,...p}){let m=(0,t.useRef)(null);return u({containerRef:m,iframeRef:r,mount:e.mountAmosCreditCardPaymentMethodForm,options:{renderToken:i,appearance:a,additionalFields:l,billingAddressRequirement:d,onResult:o,onValidityChange:s,onCardBrandChanged:c},remountDeps:[i,l.cardholderName,d],iframePassthrough:{style:f,...p},updateDeps:[a,l,d,o,s,c]}),(0,n.jsx)(`div`,{ref:m})}function m({ref:r,renderToken:i,appearance:a,onResult:o,onValidityChange:s,billingAddressRequirement:c=`country`,amount:l=`0`,intent:d=`payment`,style:f,...p}){let m=(0,t.useRef)(null);return u({containerRef:m,iframeRef:r,mount:e.mountAmosBankAccountPaymentMethodForm,options:{renderToken:i,appearance:a,billingAddressRequirement:c,amount:l,intent:d,onResult:o,onValidityChange:s},remountDeps:[i,c,d],iframePassthrough:{style:f,...p},updateDeps:[a,c,l,d,o,s]}),(0,n.jsx)(`div`,{ref:m})}function h({ref:r,renderToken:i,amount:a,merchantName:o,height:s=`48px`,buttonProps:c,iframeProps:l,onInitiatePaymentIntentRequest:d,onResult:p}){let m=(0,t.useRef)(null),h=(0,e.resolveWalletButtonSkeletonBorderRadius)({iframeStyle:l?.style,buttonProps:c});return u({containerRef:m,iframeRef:r,mount:e.mountAmosGooglePayButton,options:{renderToken:i,amount:a,merchantName:o,height:s,buttonProps:c,onInitiatePaymentIntentRequest:d,onResult:p},remountDeps:[i],iframePassthrough:l??{},updateDeps:[a,o,s,c,d,p]}),(0,n.jsx)(f,{height:s,borderRadius:h,containerRef:m})}function g({ref:r,renderToken:i,amount:a,merchantName:o,height:s=`48px`,buttonProps:c,iframeProps:l,onInitiatePaymentIntentRequest:d,onResult:p}){let m=(0,t.useRef)(null),h=(0,e.resolveWalletButtonSkeletonBorderRadius)({iframeStyle:l?.style,buttonProps:c});return u({containerRef:m,iframeRef:r,mount:e.mountAmosApplePayButton,options:{renderToken:i,amount:a,merchantName:o,height:s,buttonProps:c,onInitiatePaymentIntentRequest:d,onResult:p},remountDeps:[i],iframePassthrough:l??{},updateDeps:[a,o,s,c,d,p]}),(0,n.jsx)(f,{height:s,borderRadius:h,containerRef:m})}exports.AmosApplePayButton=g,exports.AmosBankAccountPaymentMethodForm=m,exports.AmosCreditCardPaymentMethodForm=p,exports.AmosGooglePayButton=h,exports.confirmPaymentIntent=a,exports.confirmSetupIntent=o,exports.resetForm=s,exports.validateForm=i,Object.keys(e).forEach(function(t){t!=="default"&&!Object.prototype.hasOwnProperty.call(exports,t)&&Object.defineProperty(exports,t,{enumerable:!0,get:function(){return e[t]}})});
|
package/dist/index.mjs
CHANGED
|
@@ -118,10 +118,10 @@ function T({ ref: e, renderToken: t, appearance: n, onResult: r, onValidityChang
|
|
|
118
118
|
]
|
|
119
119
|
}), /* @__PURE__ */ p("div", { ref: d });
|
|
120
120
|
}
|
|
121
|
-
function E({ ref: e, renderToken: t, appearance: n, onResult: r, onValidityChange: a, billingAddressRequirement: o = "country", amount: s = "0",
|
|
122
|
-
let
|
|
121
|
+
function E({ ref: e, renderToken: t, appearance: n, onResult: r, onValidityChange: a, billingAddressRequirement: o = "country", amount: s = "0", intent: c = "payment", style: l, ...u }) {
|
|
122
|
+
let d = f(null);
|
|
123
123
|
return S({
|
|
124
|
-
containerRef:
|
|
124
|
+
containerRef: d,
|
|
125
125
|
iframeRef: e,
|
|
126
126
|
mount: i,
|
|
127
127
|
options: {
|
|
@@ -129,22 +129,28 @@ function E({ ref: e, renderToken: t, appearance: n, onResult: r, onValidityChang
|
|
|
129
129
|
appearance: n,
|
|
130
130
|
billingAddressRequirement: o,
|
|
131
131
|
amount: s,
|
|
132
|
+
intent: c,
|
|
132
133
|
onResult: r,
|
|
133
134
|
onValidityChange: a
|
|
134
135
|
},
|
|
135
|
-
remountDeps: [
|
|
136
|
+
remountDeps: [
|
|
137
|
+
t,
|
|
138
|
+
o,
|
|
139
|
+
c
|
|
140
|
+
],
|
|
136
141
|
iframePassthrough: {
|
|
137
|
-
style:
|
|
138
|
-
...
|
|
142
|
+
style: l,
|
|
143
|
+
...u
|
|
139
144
|
},
|
|
140
145
|
updateDeps: [
|
|
141
146
|
n,
|
|
142
147
|
o,
|
|
143
148
|
s,
|
|
149
|
+
c,
|
|
144
150
|
r,
|
|
145
151
|
a
|
|
146
152
|
]
|
|
147
|
-
}), /* @__PURE__ */ p("div", { ref:
|
|
153
|
+
}), /* @__PURE__ */ p("div", { ref: d });
|
|
148
154
|
}
|
|
149
155
|
function D({ ref: e, renderToken: t, amount: n, merchantName: r, height: i = "48px", buttonProps: a, iframeProps: s, onInitiatePaymentIntentRequest: l, onResult: u }) {
|
|
150
156
|
let d = f(null), m = c({
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@amos.com/react-amos-js",
|
|
3
|
-
"version": "0.10.
|
|
3
|
+
"version": "0.10.2",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
"license": "MIT",
|
|
38
38
|
"description": "React SDK for embedding Amos payment methods via iframes. Wraps @amos.com/amos-js.",
|
|
39
39
|
"devDependencies": {
|
|
40
|
-
"@amos.com/node": "0.1.
|
|
40
|
+
"@amos.com/node": "0.1.50",
|
|
41
41
|
"@biomejs/biome": "2.5.7",
|
|
42
42
|
"@changesets/cli": "2.31.1",
|
|
43
43
|
"@types/node": "26.1.2",
|
|
@@ -48,11 +48,11 @@
|
|
|
48
48
|
"vite-plugin-dts": "5.0.3"
|
|
49
49
|
},
|
|
50
50
|
"dependencies": {
|
|
51
|
-
"@amos.com/amos-js": "0.10.
|
|
51
|
+
"@amos.com/amos-js": "0.10.2",
|
|
52
52
|
"@types/googlepay": "0.7.11"
|
|
53
53
|
},
|
|
54
54
|
"peerDependencies": {
|
|
55
55
|
"react": "^17 || ^18 || ^19",
|
|
56
|
-
"@amos.com/node": ">=0.1.
|
|
56
|
+
"@amos.com/node": ">=0.1.50"
|
|
57
57
|
}
|
|
58
58
|
}
|
package/src/index.tsx
CHANGED
|
@@ -336,9 +336,21 @@ type AmosBankAccountPaymentMethodFormProps = IframePassthroughProps & {
|
|
|
336
336
|
* `"0"`, which is typically under the threshold so Connect / Plaid
|
|
337
337
|
* stays hidden until the host passes a real charge.
|
|
338
338
|
*
|
|
339
|
+
* Ignored when {@link AmosBankAccountPaymentMethodFormProps.intent} is
|
|
340
|
+
* `"setup"`.
|
|
341
|
+
*
|
|
339
342
|
* @default "0"
|
|
340
343
|
*/
|
|
341
344
|
amount?: string;
|
|
345
|
+
/**
|
|
346
|
+
* `"setup"` saves a bank account for later charges and always shows
|
|
347
|
+
* Connect / Plaid (no merchant threshold lookup). `"payment"`
|
|
348
|
+
* compares {@link AmosBankAccountPaymentMethodFormProps.amount} to the
|
|
349
|
+
* merchant ACH threshold.
|
|
350
|
+
*
|
|
351
|
+
* @default "payment"
|
|
352
|
+
*/
|
|
353
|
+
intent?: "payment" | "setup";
|
|
342
354
|
};
|
|
343
355
|
|
|
344
356
|
export function AmosBankAccountPaymentMethodForm({
|
|
@@ -349,6 +361,7 @@ export function AmosBankAccountPaymentMethodForm({
|
|
|
349
361
|
onValidityChange,
|
|
350
362
|
billingAddressRequirement = "country",
|
|
351
363
|
amount = "0",
|
|
364
|
+
intent = "payment",
|
|
352
365
|
style,
|
|
353
366
|
...rest
|
|
354
367
|
}: AmosBankAccountPaymentMethodFormProps) {
|
|
@@ -363,15 +376,17 @@ export function AmosBankAccountPaymentMethodForm({
|
|
|
363
376
|
appearance,
|
|
364
377
|
billingAddressRequirement,
|
|
365
378
|
amount,
|
|
379
|
+
intent,
|
|
366
380
|
onResult,
|
|
367
381
|
onValidityChange,
|
|
368
382
|
},
|
|
369
|
-
remountDeps: [renderToken, billingAddressRequirement],
|
|
383
|
+
remountDeps: [renderToken, billingAddressRequirement, intent],
|
|
370
384
|
iframePassthrough: { style, ...rest },
|
|
371
385
|
updateDeps: [
|
|
372
386
|
appearance,
|
|
373
387
|
billingAddressRequirement,
|
|
374
388
|
amount,
|
|
389
|
+
intent,
|
|
375
390
|
onResult,
|
|
376
391
|
onValidityChange,
|
|
377
392
|
],
|