@paykka/card-checkout-ui 0.14.0 → 0.15.1
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 +1 -1
- package/dist/card-checkout-ui.js +20 -20
- package/dist/card-checkout-ui.umd.cjs +20 -20
- package/dist/es/api/http.js +1 -1
- package/dist/es/api/index.js +1 -1
- package/dist/es/api/modules/checkout/index.js +1 -3
- package/dist/es/api/modules/checkout/map.js +12 -4
- package/dist/es/api/modules/encrypted-card/index.js +3 -2
- package/dist/es/api/modules/get-browser-params.js +4 -5
- package/dist/es/api/modules/index.js +1 -1
- package/dist/es/api/modules/map.js +4 -1
- package/dist/es/components/AccordionItem/AccordionItem.js +1 -1
- package/dist/es/components/AccountNameField/index.js +1 -1
- package/dist/es/components/AddressField/index.js +1 -1
- package/dist/es/components/ApplePay/index.js +34 -21
- package/dist/es/components/CPFField/index.js +1 -1
- package/dist/es/components/Card/index.js +38 -30
- package/dist/es/components/CardBrands/index.js +1 -1
- package/dist/es/components/CardExpireDateField/index.js +1 -1
- package/dist/es/components/CardHolderNameField/index.js +1 -1
- package/dist/es/components/CardIBANField/index.js +1 -1
- package/dist/es/components/CardNo/index.js +1 -1
- package/dist/es/components/CardNumberField/index.js +1 -1
- package/dist/es/components/CardSecurityCodeField/index.js +1 -1
- package/dist/es/components/CardSelector/index.js +2 -2
- package/dist/es/components/CombinedCardInfo/index.js +1 -1
- package/dist/es/components/DropIn/index.js +117 -123
- package/dist/es/components/EmailField/EmailField.js +1 -1
- package/dist/es/components/EncryptedCard/index.js +5 -5
- package/dist/es/components/GooglePay/index.js +32 -29
- package/dist/es/components/GuideCard/index.js +2 -2
- package/dist/es/components/PaymentButton/index.js +22 -7
- package/dist/es/components/RecurringTip/index.js +1 -1
- package/dist/es/components/SecuredIframe/index.js +3 -4
- package/dist/es/components/Sepa/index.js +15 -7
- package/dist/es/components/SubmitButton/index.js +2 -2
- package/dist/es/components/ThreeDS/index.js +32 -20
- package/dist/es/components/Tip/index.js +1 -1
- package/dist/es/components/business/BlikCodeField/BlikCodeField.js +1 -1
- package/dist/es/components/business/BlikCodeField/index.js +1 -1
- package/dist/es/components/business/BlikConfirmModal/BlikConfirmModal.js +3 -3
- package/dist/es/components/business/BlikConfirmModal/index.js +2 -2
- package/dist/es/components/business/NameField/NameField.js +1 -1
- package/dist/es/components/business/NameField/index.js +1 -1
- package/dist/es/components/business/PhoneField/PhoneField.js +1 -1
- package/dist/es/components/business/PhoneField/index.js +1 -1
- package/dist/es/components/business/QRCodeModal/QRCodeModal.js +2 -2
- package/dist/es/components/business/QRCodeModal/index.js +1 -1
- package/dist/es/components/business/Tooltip/Tooltip.js +1 -1
- package/dist/es/components/business/Tooltip/index.js +1 -1
- package/dist/es/components/business/index.js +2 -2
- package/dist/es/components/index.js +4 -4
- package/dist/es/components/internal/Accordion/index.js +1 -1
- package/dist/es/components/internal/Button/{Button.js → Button2.js} +2 -2
- package/dist/es/components/internal/Button/index.js +2 -2
- package/dist/es/components/internal/CheckBox/CheckBox.js +1 -1
- package/dist/es/components/internal/CheckBox/index.js +1 -1
- package/dist/es/components/internal/Form/type.js +1 -1
- package/dist/es/components/internal/Info/Info.js +1 -1
- package/dist/es/components/internal/Info/index.js +1 -1
- package/dist/es/components/internal/Input/type.js +1 -1
- package/dist/es/components/internal/Loading/Loading2.js +20 -0
- package/dist/es/{api/modules/line-pay → components/internal/Loading}/index.js +3 -2
- package/dist/es/components/internal/Loading/loading.js +1 -0
- package/dist/es/components/internal/LoadingCheck/LoadingCheck.js +1 -1
- package/dist/es/components/internal/LoadingCheck/index.js +1 -1
- package/dist/es/components/internal/Modal/Modal.js +1 -1
- package/dist/es/components/internal/QRCode/QRCode.js +1 -1
- package/dist/es/components/internal/QRCode/index.js +1 -1
- package/dist/es/components/internal/Select/Select.js +1 -1
- package/dist/es/components/internal/Select/SelectMenu.js +1 -1
- package/dist/es/components/internal/Select/SelectMenuItem.js +1 -1
- package/dist/es/components/internal/icons/IconAlipayPlus.js +116 -0
- package/dist/es/components/internal/icons/IconError.js +2 -2
- package/dist/es/components/internal/icons/IconSuccess.js +2 -2
- package/dist/es/components/internal/icons/IconWechatPayGlobal.js +45 -0
- package/dist/es/components/internal/icons/IconWechatPayGlobalComplete.js +107 -0
- package/dist/es/components/wallets/AliPay/AliPay.js +186 -0
- package/dist/es/components/wallets/AliPay/ali-pay.js +1 -0
- package/dist/es/components/wallets/AliPay/index.js +1 -0
- package/dist/es/components/wallets/AliPay/type.js +1 -0
- package/dist/es/components/wallets/Bancontact/Bancontact.js +7 -10
- package/dist/es/components/wallets/Blik/Blik.js +14 -11
- package/dist/es/components/wallets/Boost/Boost.js +6 -9
- package/dist/es/components/wallets/GCash/GCash.js +7 -10
- package/dist/es/components/wallets/GrabPay/GrabPay.js +7 -14
- package/dist/es/components/wallets/IDeal/IDeal.js +7 -10
- package/dist/es/components/wallets/LinePay/LinePay.js +6 -9
- package/dist/es/components/wallets/MayBankQRPay/MayBankQRPay.js +6 -9
- package/dist/es/components/wallets/NinePay/NinePay.js +6 -9
- package/dist/es/components/wallets/OVO/OVO.js +7 -10
- package/dist/es/components/wallets/OpayWallet/OpayWallet.js +6 -9
- package/dist/es/components/wallets/P24/P24.js +7 -10
- package/dist/es/components/wallets/PagaWallet/PagaWallet.js +6 -9
- package/dist/es/components/wallets/Paymaya/Paymaya.js +6 -9
- package/dist/es/components/wallets/PicPay/PicPay.js +54 -217
- package/dist/es/components/wallets/Pix/Pix.js +54 -217
- package/dist/es/components/wallets/ShopeePay/ShopeePay.js +6 -9
- package/dist/es/components/wallets/Skrill/Skrill.js +7 -10
- package/dist/es/components/wallets/TNGWallet/TNGWallet.js +6 -9
- package/dist/es/components/wallets/Trustly/Trustly.js +7 -10
- package/dist/es/components/wallets/Vietqr/Vietqr.js +14 -15
- package/dist/es/components/wallets/WechatPay/WechatPay.js +250 -0
- package/dist/es/components/wallets/WechatPay/index.js +1 -0
- package/dist/es/components/wallets/WechatPay/type.js +1 -0
- package/dist/es/components/wallets/WechatPay/util.js +47 -0
- package/dist/es/components/wallets/WechatPay/wechat-pay.js +1 -0
- package/dist/es/components/wallets/Zalopay/Zalopay.js +10 -13
- package/dist/es/components/wallets/index.js +2 -0
- package/dist/es/constant.js +7 -0
- package/dist/es/core/checkout.js +36 -9
- package/dist/es/core/create-child.js +5 -4
- package/dist/es/core/index.js +1 -1
- package/dist/es/core/logger.js +1 -1
- package/dist/es/core/payment.js +13 -0
- package/dist/es/core/preview.js +29 -0
- package/dist/es/core/query.js +12 -3
- package/dist/es/core/session.js +36 -6
- package/dist/es/core/theme.js +1 -1
- package/dist/es/hooks/index.js +1 -1
- package/dist/es/hooks/useBaseWallet.js +121 -52
- package/dist/es/hooks/useI18n.js +3 -3
- package/dist/es/i18n/locales/de-DE.js +7 -0
- package/dist/es/i18n/locales/en-GB.js +7 -0
- package/dist/es/i18n/locales/es-ES.js +7 -0
- package/dist/es/i18n/locales/fr-FR.js +7 -0
- package/dist/es/i18n/locales/ja-JP.js +7 -0
- package/dist/es/i18n/locales/ko-KR.js +7 -0
- package/dist/es/i18n/locales/nl-NL.js +7 -0
- package/dist/es/i18n/locales/pt-PT.js +7 -0
- package/dist/es/i18n/locales/ru-RU.js +7 -0
- package/dist/es/i18n/locales/zh-CN.js +7 -0
- package/dist/es/i18n/locales/zh-HK.js +7 -0
- package/dist/es/i18n/locales/zh-TW.js +7 -0
- package/dist/es/i18n/util.js +10 -10
- package/dist/es/index.js +7 -5
- package/dist/es/out/base-fraud-detection.js +1 -1
- package/dist/es/out/fraud-detection.js +59 -44
- package/dist/es/out/paykka-detection.js +5 -7
- package/dist/es/out/stripe-radar.js +1 -1
- package/dist/es/out/worldpay-ddc-manager.js +3 -0
- package/dist/es/out/worldpay-ddc.js +1 -1
- package/dist/es/style.css +1 -1
- package/dist/es/types/event.js +10 -1
- package/dist/es/types/index.js +7 -0
- package/dist/es/utils/array.js +19 -5
- package/dist/es/utils/business/amount.js +15 -0
- package/dist/es/utils/business/index.js +1 -0
- package/dist/es/utils/detect.js +8 -0
- package/dist/es/utils/index.js +7 -9
- package/dist/es/utils/location.js +8 -0
- package/dist/es/utils/number.js +19 -0
- package/dist/es/utils/redirect.js +2 -0
- package/dist/style.css +1 -1
- package/dist/types/api/modules/checkout/type.d.ts +1 -1
- package/dist/types/api/modules/index.d.ts +0 -17
- package/dist/types/api/modules/threeDS/index.d.ts +13 -5
- package/dist/types/components/ApplePay/type.d.ts +6 -2
- package/dist/types/components/Card/type.d.ts +2 -18
- package/dist/types/components/DropIn/layout.d.ts +33 -0
- package/dist/types/components/DropIn/type.d.ts +6 -6
- package/dist/types/components/GooglePay/createGooglePay.d.ts +1 -1
- package/dist/types/components/GooglePay/type.d.ts +6 -2
- package/dist/types/components/PaymentButton/type.d.ts +2 -0
- package/dist/types/components/Sepa/type.d.ts +3 -4
- package/dist/types/components/business/QRCodeModal/type.d.ts +12 -3
- package/dist/types/components/index.d.ts +0 -2
- package/dist/types/components/internal/Loading/Loading.d.ts +2 -1
- package/dist/types/components/internal/Loading/type.d.ts +8 -0
- package/dist/types/components/internal/ResultMessage/ResultMessage.d.ts +3 -0
- package/dist/types/components/internal/ResultMessage/index.d.ts +2 -0
- package/dist/types/components/internal/ResultMessage/type.d.ts +13 -0
- package/dist/types/components/internal/icons/IconAlipayPlus.d.ts +2 -0
- package/dist/types/components/internal/icons/IconError.d.ts +1 -1
- package/dist/types/components/internal/icons/IconSuccess.d.ts +1 -1
- package/dist/types/components/internal/icons/IconWechatPayGlobal.d.ts +2 -0
- package/dist/types/components/internal/icons/IconWechatPayGlobalComplete.d.ts +2 -0
- package/dist/types/components/internal/icons/index.d.ts +3 -0
- package/dist/types/components/{AliPay → wallets/AliPay}/AliPay.d.ts +9 -4
- package/dist/types/components/wallets/AliPay/type.d.ts +7 -0
- package/dist/types/components/wallets/Bancontact/type.d.ts +2 -24
- package/dist/types/components/wallets/Blik/type.d.ts +2 -24
- package/dist/types/components/wallets/Boost/type.d.ts +2 -24
- package/dist/types/components/wallets/GCash/type.d.ts +2 -24
- package/dist/types/components/wallets/GrabPay/type.d.ts +2 -12
- package/dist/types/components/wallets/IDeal/type.d.ts +2 -24
- package/dist/types/components/wallets/LinePay/type.d.ts +2 -24
- package/dist/types/components/wallets/MayBankQRPay/type.d.ts +2 -24
- package/dist/types/components/wallets/NinePay/type.d.ts +2 -24
- package/dist/types/components/wallets/OVO/type.d.ts +2 -24
- package/dist/types/components/wallets/OpayWallet/type.d.ts +2 -24
- package/dist/types/components/wallets/P24/type.d.ts +2 -24
- package/dist/types/components/wallets/PagaWallet/type.d.ts +2 -24
- package/dist/types/components/wallets/Paymaya/type.d.ts +2 -24
- package/dist/types/components/wallets/PicPay/type.d.ts +2 -24
- package/dist/types/components/wallets/Pix/type.d.ts +2 -24
- package/dist/types/components/wallets/ShopeePay/type.d.ts +2 -24
- package/dist/types/components/wallets/Skrill/type.d.ts +2 -12
- package/dist/types/components/wallets/TNGWallet/type.d.ts +2 -24
- package/dist/types/components/wallets/Trustly/type.d.ts +2 -16
- package/dist/types/components/wallets/Vietqr/type.d.ts +2 -24
- package/dist/types/components/wallets/WechatPay/WechatPay.d.ts +16 -0
- package/dist/types/components/wallets/WechatPay/type.d.ts +12 -0
- package/dist/types/components/wallets/WechatPay/util.d.ts +13 -0
- package/dist/types/components/wallets/Zalopay/type.d.ts +2 -24
- package/dist/types/components/wallets/index.d.ts +2 -0
- package/dist/types/components/wallets/type.d.ts +0 -14
- package/dist/types/constant.d.ts +8 -0
- package/dist/types/core/index.d.ts +1 -0
- package/dist/types/core/preview.d.ts +1 -0
- package/dist/types/core/session.d.ts +2 -2
- package/dist/types/hooks/index.d.ts +0 -1
- package/dist/types/hooks/useBaseWallet.d.ts +27 -5
- package/dist/types/hooks/useI18n.d.ts +1 -1
- package/dist/types/hooks/usePayState.d.ts +1 -4
- package/dist/types/i18n/I18n.d.ts +1 -0
- package/dist/types/i18n/locales/de-DE.d.ts +7 -0
- package/dist/types/i18n/locales/en-GB.d.ts +7 -0
- package/dist/types/i18n/locales/es-ES.d.ts +7 -0
- package/dist/types/i18n/locales/fr-FR.d.ts +7 -0
- package/dist/types/i18n/locales/ja-JP.d.ts +7 -0
- package/dist/types/i18n/locales/ko-KR.d.ts +7 -0
- package/dist/types/i18n/locales/nl-NL.d.ts +7 -0
- package/dist/types/i18n/locales/pt-PT.d.ts +7 -0
- package/dist/types/i18n/locales/ru-RU.d.ts +7 -0
- package/dist/types/i18n/locales/zh-CN.d.ts +7 -0
- package/dist/types/i18n/locales/zh-HK.d.ts +7 -0
- package/dist/types/i18n/locales/zh-TW.d.ts +7 -0
- package/dist/types/i18n/util.d.ts +8 -1
- package/dist/types/index.d.ts +2 -1
- package/dist/types/out/fraud-detection.d.ts +2 -5
- package/dist/types/out/types.d.ts +5 -6
- package/dist/types/out/worldpay-ddc-manager.d.ts +1 -0
- package/dist/types/types/event.d.ts +24 -2
- package/dist/types/types/index.d.ts +14 -0
- package/dist/types/types/message.d.ts +3 -1
- package/dist/types/types/payment.d.ts +26 -3
- package/dist/types/utils/app-payment.d.ts +1 -0
- package/dist/types/utils/array.d.ts +17 -0
- package/dist/types/utils/business/amount.d.ts +7 -0
- package/dist/types/utils/business/index.d.ts +1 -0
- package/dist/types/utils/detect.d.ts +3 -0
- package/dist/types/utils/index.d.ts +1 -6
- package/dist/types/utils/number.d.ts +4 -0
- package/dist/types/utils/redirect.d.ts +10 -0
- package/dist/types/utils/system-info/get-browser-info.d.ts +4 -0
- package/package.json +4 -2
- package/dist/es/api/modules/ali-pay/index.js +0 -16
- package/dist/es/api/modules/boost/index.js +0 -5
- package/dist/es/api/modules/gcash/index.js +0 -5
- package/dist/es/api/modules/grab-pay/index.js +0 -5
- package/dist/es/api/modules/may-bank-qr-pay/index.js +0 -5
- package/dist/es/api/modules/nine-pay/index.js +0 -5
- package/dist/es/api/modules/opay-wallet/index.js +0 -5
- package/dist/es/api/modules/paga-wallet/index.js +0 -5
- package/dist/es/api/modules/paymaya/index.js +0 -5
- package/dist/es/api/modules/pic-pay/index.js +0 -16
- package/dist/es/api/modules/pix/index.js +0 -16
- package/dist/es/api/modules/shopee-pay/index.js +0 -5
- package/dist/es/api/modules/tng-wallet/index.js +0 -5
- package/dist/es/api/modules/vietqr/index.js +0 -5
- package/dist/es/api/modules/wechat-pay/index.js +0 -16
- package/dist/es/api/modules/zalopay/index.js +0 -5
- package/dist/es/components/AliPay/index.js +0 -332
- package/dist/es/components/WechatPay/index.js +0 -340
- package/dist/es/hooks/usePayment.js +0 -1
- package/dist/types/api/modules/ali-pay/index.d.ts +0 -4
- package/dist/types/api/modules/boost/index.d.ts +0 -4
- package/dist/types/api/modules/gcash/index.d.ts +0 -4
- package/dist/types/api/modules/grab-pay/index.d.ts +0 -4
- package/dist/types/api/modules/line-pay/index.d.ts +0 -4
- package/dist/types/api/modules/may-bank-qr-pay/index.d.ts +0 -4
- package/dist/types/api/modules/nine-pay/index.d.ts +0 -4
- package/dist/types/api/modules/opay-wallet/index.d.ts +0 -4
- package/dist/types/api/modules/paga-wallet/index.d.ts +0 -4
- package/dist/types/api/modules/paymaya/index.d.ts +0 -4
- package/dist/types/api/modules/pic-pay/index.d.ts +0 -4
- package/dist/types/api/modules/pix/index.d.ts +0 -4
- package/dist/types/api/modules/shopee-pay/index.d.ts +0 -4
- package/dist/types/api/modules/tng-wallet/index.d.ts +0 -4
- package/dist/types/api/modules/vietqr/index.d.ts +0 -4
- package/dist/types/api/modules/wechat-pay/index.d.ts +0 -4
- package/dist/types/api/modules/zalopay/index.d.ts +0 -4
- package/dist/types/components/AliPay/type.d.ts +0 -26
- package/dist/types/components/WechatPay/WechatPay.d.ts +0 -10
- package/dist/types/components/WechatPay/type.d.ts +0 -28
- package/dist/types/hooks/usePayment.d.ts +0 -8
- package/dist/types/hooks/useRetry.console-tests.d.ts +0 -41
- package/dist/types/utils/behavior-tracker.d.ts +0 -36
- /package/dist/es/components/internal/Button/{button2.js → button.js} +0 -0
- /package/dist/types/components/{AliPay → wallets/AliPay}/index.d.ts +0 -0
- /package/dist/types/components/{WechatPay → wallets/WechatPay}/index.d.ts +0 -0
package/dist/es/core/session.js
CHANGED
|
@@ -28,9 +28,9 @@ import "../utils/card-brand/brands.js";
|
|
|
28
28
|
import "../utils/system-info/get-browser-info.js";
|
|
29
29
|
import { createPromise } from "../utils/create-promise.js";
|
|
30
30
|
import { PayKKaError } from "./error.js";
|
|
31
|
-
import { querySession } from "./query.js";
|
|
31
|
+
import { querySession, createSessionId } from "./query.js";
|
|
32
32
|
class Session {
|
|
33
|
-
constructor(
|
|
33
|
+
constructor(options, extraParams = {}) {
|
|
34
34
|
__privateAdd(this, _init);
|
|
35
35
|
__privateAdd(this, _initCheckout);
|
|
36
36
|
__publicField(this, "sessionId");
|
|
@@ -40,21 +40,51 @@ class Session {
|
|
|
40
40
|
__publicField(this, "theme", d({}));
|
|
41
41
|
__publicField(this, "extraParams", {});
|
|
42
42
|
__privateAdd(this, _readyPromise, createPromise());
|
|
43
|
-
const { sessionId, clientKey } =
|
|
43
|
+
const { sessionId, clientKey } = options;
|
|
44
44
|
this.sessionId = sessionId;
|
|
45
45
|
this.clientKey = clientKey;
|
|
46
46
|
this.extraParams = extraParams;
|
|
47
|
-
__privateMethod(this, _init, init_fn).call(this);
|
|
47
|
+
__privateMethod(this, _init, init_fn).call(this, options);
|
|
48
48
|
}
|
|
49
49
|
ready() {
|
|
50
50
|
return __privateGet(this, _readyPromise);
|
|
51
51
|
}
|
|
52
|
+
/**
|
|
53
|
+
* 直接设置 sessionId,不发起请求
|
|
54
|
+
* @internal
|
|
55
|
+
*/
|
|
56
|
+
setSessionId(sessionId) {
|
|
57
|
+
this.sessionId = sessionId;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* 更新 sessionId
|
|
61
|
+
* @internal
|
|
62
|
+
*/
|
|
63
|
+
async updateSessionId(params) {
|
|
64
|
+
try {
|
|
65
|
+
const newSessionId = await createSessionId(params);
|
|
66
|
+
if (newSessionId) {
|
|
67
|
+
this.sessionId = newSessionId;
|
|
68
|
+
}
|
|
69
|
+
return newSessionId;
|
|
70
|
+
} catch (err) {
|
|
71
|
+
if (isTimeoutError(err))
|
|
72
|
+
throw err;
|
|
73
|
+
if (err == null ? void 0 : err.i18nKey)
|
|
74
|
+
throw err;
|
|
75
|
+
throw new PayKKaError("API_ERROR", err.message, { code: err.code });
|
|
76
|
+
}
|
|
77
|
+
}
|
|
52
78
|
}
|
|
53
79
|
_readyPromise = new WeakMap();
|
|
54
80
|
_init = new WeakSet();
|
|
55
|
-
init_fn = async function() {
|
|
81
|
+
init_fn = async function(options) {
|
|
56
82
|
try {
|
|
57
|
-
|
|
83
|
+
if (options.initialCheckout) {
|
|
84
|
+
this.checkout = options.initialCheckout;
|
|
85
|
+
} else {
|
|
86
|
+
await __privateMethod(this, _initCheckout, initCheckout_fn).call(this);
|
|
87
|
+
}
|
|
58
88
|
__privateGet(this, _readyPromise).resolve(true);
|
|
59
89
|
} catch (err) {
|
|
60
90
|
const error = isTimeoutError(err) ? err : new PayKKaError("API_ERROR", err.message, { code: err.code });
|
package/dist/es/core/theme.js
CHANGED
|
@@ -25,7 +25,7 @@ import "../utils/system-info/get-browser-info.js";
|
|
|
25
25
|
import { generateColors } from "../utils/colors.js";
|
|
26
26
|
import { loadStyle } from "../utils/style.js";
|
|
27
27
|
import { getThemeText } from "../utils/theme.js";
|
|
28
|
-
import "../out/
|
|
28
|
+
import "../out/fraud-detection.js";
|
|
29
29
|
class PayKKaTheme {
|
|
30
30
|
constructor(checkoutId) {
|
|
31
31
|
/** 主题类名 */
|
package/dist/es/hooks/index.js
CHANGED
|
@@ -1,18 +1,22 @@
|
|
|
1
1
|
import { SessionMode } from "../constant.js";
|
|
2
|
+
import { PaymentAction } from "../types/index.js";
|
|
2
3
|
import { isTimeoutError } from "../api/http.js";
|
|
3
|
-
import "../utils/
|
|
4
|
-
import "../utils/system-info/get-browser-info.js";
|
|
5
|
-
import { isMobile } from "../utils/system-info/get-system-info.js";
|
|
6
|
-
import { redirectToPayment } from "../utils/redirect.js";
|
|
7
|
-
import { processPaymentStatus, formatPaymentResult } from "../utils/payment.js";
|
|
4
|
+
import { safeParse, safeStringify } from "../utils/index.js";
|
|
8
5
|
import { h, y } from "../core.js";
|
|
9
|
-
import {
|
|
6
|
+
import { buildPaymentParams } from "../api/utils/index.js";
|
|
10
7
|
import { getWalletPayInfo, walletPay } from "../api/modules/wallet/index.js";
|
|
8
|
+
import { getBrowserParams } from "../api/modules/get-browser-params.js";
|
|
11
9
|
import { usePayState } from "./usePayState.js";
|
|
12
10
|
import { useRetry, DEFAULT_RETRY_POLL_TIERS } from "./useRetry.js";
|
|
13
11
|
import "../core/context.js";
|
|
14
12
|
import { PayKKaError } from "../core/error.js";
|
|
15
|
-
import "../out/
|
|
13
|
+
import "../out/fraud-detection.js";
|
|
14
|
+
import { isMobile } from "../utils/system-info/get-system-info.js";
|
|
15
|
+
import "../utils/system-info/get-browser-info.js";
|
|
16
|
+
import { processPaymentStatus, formatPaymentResult } from "../utils/payment.js";
|
|
17
|
+
import { redirectToPayment, redirectByGet, redirectByPost } from "../utils/redirect.js";
|
|
18
|
+
import { ECollMode } from "../types/fraud-detection.js";
|
|
19
|
+
import { deepMerge } from "../utils/object.js";
|
|
16
20
|
const RETRY_TIMEOUT = 20 * 1e3;
|
|
17
21
|
const SESSION_MODE_ERROR_MESSAGE = "Please send the correct session when creating the checkout";
|
|
18
22
|
const useBaseWallet = (paymentMethod, baseProps, options) => {
|
|
@@ -26,7 +30,7 @@ const useBaseWallet = (paymentMethod, baseProps, options) => {
|
|
|
26
30
|
showEmail = false,
|
|
27
31
|
showAddress = false
|
|
28
32
|
} = baseProps;
|
|
29
|
-
const { supportQRCodeModal = false, onProcessing, getFormData, retryTimeout } = options;
|
|
33
|
+
const { supportQRCodeModal = false, onProcessing, getFormData, retryTimeout, getExtraPaymentParams, executePayment } = options;
|
|
30
34
|
const { fraudDetection, i18n, sessionReady } = usePayState(session, core);
|
|
31
35
|
const [isEnabled, setIsEnabled] = h(false);
|
|
32
36
|
const [fieldStatus, setFieldStatus] = h();
|
|
@@ -65,8 +69,13 @@ const useBaseWallet = (paymentMethod, baseProps, options) => {
|
|
|
65
69
|
}, [sessionReady]);
|
|
66
70
|
const initFieldStatus = () => {
|
|
67
71
|
const { field, sessionMode } = session.checkout;
|
|
68
|
-
const
|
|
69
|
-
|
|
72
|
+
const cpyField = safeParse(safeStringify(field));
|
|
73
|
+
const { email, address } = cpyField;
|
|
74
|
+
const { forceCustomFields = false } = core.config._checkoutConfig || {};
|
|
75
|
+
if (forceCustomFields) {
|
|
76
|
+
email.show = showEmail;
|
|
77
|
+
address.show = showAddress;
|
|
78
|
+
} else if (sessionMode === SessionMode.COMPONENT) {
|
|
70
79
|
if (email.disabled) {
|
|
71
80
|
email.show = showEmail;
|
|
72
81
|
}
|
|
@@ -74,37 +83,46 @@ const useBaseWallet = (paymentMethod, baseProps, options) => {
|
|
|
74
83
|
address.show = true;
|
|
75
84
|
}
|
|
76
85
|
}
|
|
77
|
-
setFieldStatus({ ...
|
|
86
|
+
setFieldStatus({ ...cpyField });
|
|
78
87
|
};
|
|
79
88
|
const payment = async (timeout) => processPayment(false, timeout);
|
|
80
89
|
const search = async (timeout) => processPayment(true, timeout);
|
|
81
|
-
const
|
|
82
|
-
|
|
83
|
-
const browser = await getBrowserParams({ fraudDetectionId });
|
|
90
|
+
const addressCore = core.getAddressCore();
|
|
91
|
+
const buildBill = () => {
|
|
84
92
|
const form = getFormData();
|
|
85
93
|
const { address = {} } = form;
|
|
94
|
+
const state = address.province ? addressCore.getLabel(address.province, addressCore.getProvinceOption()) ?? address.province : void 0;
|
|
95
|
+
const city = address.city ? addressCore.getLabel(address.city, addressCore.getCityOptions()) ?? address.city : void 0;
|
|
86
96
|
return {
|
|
97
|
+
firstName: form.firstName,
|
|
98
|
+
email: form.email,
|
|
99
|
+
addressLine1: address.address1,
|
|
100
|
+
addressLine2: address.address2,
|
|
101
|
+
postalCode: address.postCode,
|
|
102
|
+
country: address.country,
|
|
103
|
+
district: address.area,
|
|
104
|
+
areaCode: form.areaCode,
|
|
105
|
+
phoneNumber: form.phoneNumber,
|
|
106
|
+
state,
|
|
107
|
+
city
|
|
108
|
+
};
|
|
109
|
+
};
|
|
110
|
+
const getPaymentParams = async () => {
|
|
111
|
+
const fraudDetectionId = await (fraudDetection == null ? void 0 : fraudDetection.getFraudDetectionId({
|
|
112
|
+
// 钱包目前都不需要采集 Worldpay DDC 渠道
|
|
113
|
+
excludeModes: [ECollMode.WP]
|
|
114
|
+
}));
|
|
115
|
+
const browser = await getBrowserParams({ fraudDetectionId });
|
|
116
|
+
const extraParams = await (getExtraPaymentParams == null ? void 0 : getExtraPaymentParams()) || {};
|
|
117
|
+
return deepMerge(extraParams, {
|
|
87
118
|
sessionId: session.sessionId,
|
|
88
119
|
clientKey: session.clientKey,
|
|
89
120
|
payment: {
|
|
90
|
-
paymentMethod
|
|
91
|
-
checkCode: form.checkCode
|
|
92
|
-
},
|
|
93
|
-
bill: {
|
|
94
|
-
firstName: form.firstName,
|
|
95
|
-
email: form.email,
|
|
96
|
-
addressLine1: address.address1,
|
|
97
|
-
addressLine2: address.address2,
|
|
98
|
-
postalCode: address.postCode,
|
|
99
|
-
country: address.country,
|
|
100
|
-
district: address.area,
|
|
101
|
-
state: address.province,
|
|
102
|
-
city: address.city,
|
|
103
|
-
areaCode: form.areaCode,
|
|
104
|
-
phoneNumber: form.phoneNumber
|
|
121
|
+
paymentMethod
|
|
105
122
|
},
|
|
123
|
+
bill: buildBill(),
|
|
106
124
|
browser
|
|
107
|
-
};
|
|
125
|
+
});
|
|
108
126
|
};
|
|
109
127
|
const getSearchParams = () => {
|
|
110
128
|
return {
|
|
@@ -130,15 +148,23 @@ const useBaseWallet = (paymentMethod, baseProps, options) => {
|
|
|
130
148
|
stopSearch();
|
|
131
149
|
};
|
|
132
150
|
const getPaymentInfo = async (search2 = false, timeout) => {
|
|
133
|
-
var _a, _b, _c, _d;
|
|
151
|
+
var _a, _b, _c, _d, _e;
|
|
134
152
|
const requestOptions = { locale: i18n.locale, timeout };
|
|
135
153
|
if (search2) {
|
|
136
154
|
const extraParams = (_b = (_a = core.config)._getExtraParams) == null ? void 0 : _b.call(_a, "query", paymentMethod);
|
|
137
155
|
const params = getSearchParams();
|
|
138
156
|
return await getWalletPayInfo(params, extraParams, requestOptions);
|
|
139
157
|
} else {
|
|
140
|
-
const extraParams = (_d = (_c = core.config)._getExtraParams) == null ? void 0 : _d.call(_c, "payment", paymentMethod);
|
|
141
158
|
const params = await getPaymentParams();
|
|
159
|
+
const extraParams = (_d = (_c = core.config)._getExtraParams) == null ? void 0 : _d.call(_c, "payment", paymentMethod);
|
|
160
|
+
if ((_e = core.config._checkoutConfig) == null ? void 0 : _e.dynamicSessionId) {
|
|
161
|
+
await core.updateSessionId(buildPaymentParams(params, extraParams));
|
|
162
|
+
session.sessionId && (params.sessionId = session.sessionId);
|
|
163
|
+
}
|
|
164
|
+
if (executePayment) {
|
|
165
|
+
executePayment(params, extraParams);
|
|
166
|
+
return;
|
|
167
|
+
}
|
|
142
168
|
return await walletPay(params, extraParams, requestOptions);
|
|
143
169
|
}
|
|
144
170
|
};
|
|
@@ -146,6 +172,9 @@ const useBaseWallet = (paymentMethod, baseProps, options) => {
|
|
|
146
172
|
try {
|
|
147
173
|
core.payment.currPaymentMethod.value = paymentMethod;
|
|
148
174
|
const paymentInfo = await getPaymentInfo(search2, timeout);
|
|
175
|
+
if (!paymentInfo) {
|
|
176
|
+
return { end: true };
|
|
177
|
+
}
|
|
149
178
|
return processAfterPayment(paymentInfo, search2);
|
|
150
179
|
} catch (error) {
|
|
151
180
|
if (isTimeoutError(error)) {
|
|
@@ -162,33 +191,70 @@ const useBaseWallet = (paymentMethod, baseProps, options) => {
|
|
|
162
191
|
}
|
|
163
192
|
};
|
|
164
193
|
const processAfterPayment = async (paymentInfo, search2 = false) => {
|
|
194
|
+
var _a;
|
|
165
195
|
const { errorMessage: errorMessage2, errorCode, payInfo, sessionId } = paymentInfo;
|
|
166
196
|
sessionId && (session.sessionId = sessionId);
|
|
197
|
+
!search2 && ((_a = baseProps.onSubmitResponse) == null ? void 0 : _a.call(baseProps, paymentInfo, getPaymentMethodContext()));
|
|
167
198
|
let end = true;
|
|
168
199
|
await processPaymentStatus(paymentInfo, {
|
|
169
200
|
onProcessing: async () => {
|
|
170
|
-
|
|
171
|
-
|
|
201
|
+
var _a2;
|
|
202
|
+
const { action } = payInfo || {};
|
|
203
|
+
const processScanCode = () => {
|
|
204
|
+
const qrCodeUrl = (payInfo == null ? void 0 : payInfo.qr_code) || (payInfo == null ? void 0 : payInfo.targetUrl);
|
|
205
|
+
if (qrCodeUrl) {
|
|
206
|
+
setQrCodeInfo({
|
|
207
|
+
qrCode: qrCodeUrl,
|
|
208
|
+
expiredTime: payInfo.paymentExpiredAt
|
|
209
|
+
});
|
|
210
|
+
setShowQRCodeModal(true);
|
|
211
|
+
}
|
|
212
|
+
};
|
|
213
|
+
let continueSearch = true;
|
|
214
|
+
if (!search2 && onProcessing) {
|
|
215
|
+
const res = await onProcessing(paymentInfo);
|
|
216
|
+
continueSearch = res !== false;
|
|
172
217
|
} else {
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
218
|
+
switch (action) {
|
|
219
|
+
case PaymentAction.SCAN_CODE: {
|
|
220
|
+
if (supportQRCodeModal && enableQRCodeModal) {
|
|
221
|
+
processScanCode();
|
|
222
|
+
}
|
|
223
|
+
break;
|
|
224
|
+
}
|
|
225
|
+
case PaymentAction.REDIRECT:
|
|
226
|
+
case PaymentAction.REDIRECT_POST: {
|
|
227
|
+
if (redirectMode === "auto" && (payInfo == null ? void 0 : payInfo.targetUrl)) {
|
|
228
|
+
if (action === PaymentAction.REDIRECT) {
|
|
229
|
+
redirectByGet(payInfo.targetUrl);
|
|
230
|
+
} else {
|
|
231
|
+
redirectByPost(payInfo.targetUrl, payInfo.requestData || {});
|
|
232
|
+
}
|
|
233
|
+
end = false;
|
|
234
|
+
return;
|
|
235
|
+
}
|
|
236
|
+
break;
|
|
181
237
|
}
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
238
|
+
default: {
|
|
239
|
+
if (supportQRCodeModal && enableQRCodeModal && !mobile) {
|
|
240
|
+
processScanCode();
|
|
241
|
+
} else {
|
|
242
|
+
if (redirectMode === "auto" && (payInfo == null ? void 0 : payInfo.targetUrl)) {
|
|
243
|
+
redirectToPayment(payInfo);
|
|
244
|
+
end = false;
|
|
245
|
+
return;
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
break;
|
|
187
249
|
}
|
|
188
250
|
}
|
|
189
251
|
}
|
|
190
|
-
!search2 && startSearch();
|
|
191
|
-
end =
|
|
252
|
+
!search2 && continueSearch && startSearch();
|
|
253
|
+
end = !continueSearch;
|
|
254
|
+
if (end) {
|
|
255
|
+
(_a2 = core.payment) == null ? void 0 : _a2.resetCurrPaymentMethod();
|
|
256
|
+
setPaymentButtonStatus("unSubmit");
|
|
257
|
+
}
|
|
192
258
|
},
|
|
193
259
|
onSuccess: () => {
|
|
194
260
|
processOnSuccess(paymentInfo);
|
|
@@ -203,8 +269,8 @@ const useBaseWallet = (paymentMethod, baseProps, options) => {
|
|
|
203
269
|
processOnExpired();
|
|
204
270
|
},
|
|
205
271
|
onDefault: () => {
|
|
206
|
-
var
|
|
207
|
-
(
|
|
272
|
+
var _a2;
|
|
273
|
+
(_a2 = core.payment) == null ? void 0 : _a2.resetCurrPaymentMethod();
|
|
208
274
|
setPaymentButtonStatus("unSubmit");
|
|
209
275
|
}
|
|
210
276
|
});
|
|
@@ -272,7 +338,10 @@ const useBaseWallet = (paymentMethod, baseProps, options) => {
|
|
|
272
338
|
processCloseQRCodeModal,
|
|
273
339
|
isEnabled,
|
|
274
340
|
fieldStatus,
|
|
275
|
-
getPaymentMethodContext
|
|
341
|
+
getPaymentMethodContext,
|
|
342
|
+
processAfterPayment,
|
|
343
|
+
processOnError,
|
|
344
|
+
processOnTimeout
|
|
276
345
|
};
|
|
277
346
|
};
|
|
278
347
|
export {
|
package/dist/es/hooks/useI18n.js
CHANGED
|
@@ -3,13 +3,13 @@ import { CoreContext } from "../core/context.js";
|
|
|
3
3
|
import "../utils/card-brand/brands.js";
|
|
4
4
|
import "../utils/system-info/get-browser-info.js";
|
|
5
5
|
import { I18n } from "../i18n/I18n.js";
|
|
6
|
-
import "../out/
|
|
7
|
-
|
|
6
|
+
import "../out/fraud-detection.js";
|
|
7
|
+
const useI18n = (locale) => {
|
|
8
8
|
const coreContext = x(CoreContext);
|
|
9
9
|
const [_i18n] = h((coreContext == null ? void 0 : coreContext.i18n) ?? new I18n());
|
|
10
10
|
locale && _i18n.load(locale);
|
|
11
11
|
return { i18n: _i18n };
|
|
12
|
-
}
|
|
12
|
+
};
|
|
13
13
|
export {
|
|
14
14
|
useI18n
|
|
15
15
|
};
|
|
@@ -2,6 +2,7 @@ const deDE = {
|
|
|
2
2
|
// guide card
|
|
3
3
|
"guideCard.redirectDescription": "Nach der Übermittlung werden Sie zur Seite des Zahlungsanbieters weitergeleitet, um die folgenden Schritte sicher abzuschließen.",
|
|
4
4
|
"guideCard.scanQRCode": "Nach der Übermittlung des Auftrags verwenden Sie {method} zum Scannen des QR-Codes.",
|
|
5
|
+
"guideCard.redirectWechatPay": "Nach der Übermittlung des Auftrags verwenden Sie WeChat Pay",
|
|
5
6
|
// Drop In
|
|
6
7
|
"dropIn.card.label": "Bankkarte",
|
|
7
8
|
"dropIn.otherPaymentMethod": "Andere Zahlungsmethode",
|
|
@@ -27,6 +28,8 @@ const deDE = {
|
|
|
27
28
|
"dropIn.skrill.label": "Skrill",
|
|
28
29
|
"dropIn.trustly.label": "Trustly",
|
|
29
30
|
"dropIn.p24.label": "Przelewy24",
|
|
31
|
+
"dropIn.aliPay.label": "Alipay+",
|
|
32
|
+
"dropIn.wechatPay.label": "WeChat Pay",
|
|
30
33
|
// card number
|
|
31
34
|
"card.cardNumber.label": "Kartennummer",
|
|
32
35
|
"card.cardNumber.incomplete": "Ihre Kartennummer ist unvollständig",
|
|
@@ -66,6 +69,7 @@ const deDE = {
|
|
|
66
69
|
"common.unknownError": "Unbekannter Fehler",
|
|
67
70
|
"common.cancel": "Abbrechen",
|
|
68
71
|
"common.confirm": "Bestätigen",
|
|
72
|
+
"common.wechatPayGlobal": "WeChat Pay",
|
|
69
73
|
// common email
|
|
70
74
|
"common.email.label": "E-Mail",
|
|
71
75
|
"common.email.incomplete": "Bitte geben Sie Ihre E-Mail-Adresse ein",
|
|
@@ -109,11 +113,14 @@ const deDE = {
|
|
|
109
113
|
"threeDS.authenticationSuccessful": "Authentifizierung erfolgreich,",
|
|
110
114
|
"threeDS.authenticationFailed": "Authentifizierung fehlgeschlagen,",
|
|
111
115
|
"threeDS.returnToCheckout": "Rückkehr erfolgt in Kürze.",
|
|
116
|
+
"threeDS.linkExpired": "Der 3DS-Link ist abgelaufen.",
|
|
117
|
+
"threeDS.linkAlreadyUsed": "Dieser Link wurde bereits verwendet.",
|
|
112
118
|
// qrCode
|
|
113
119
|
"qrCode.expired": "Der QR-Code ist abgelaufen.",
|
|
114
120
|
"qrCode.scanByGcash": "QR-Code mit GCash scannen",
|
|
115
121
|
"qrCode.scanByZalopay": "QR-Code mit Zalopay scannen",
|
|
116
122
|
"qrCode.scanByVietqr": "QR-Code mit VietQR scannen",
|
|
123
|
+
"qrCode.scanWechatPayGlobal": "QR-Code mit WeChat Pay scannen",
|
|
117
124
|
// cpf
|
|
118
125
|
"cpf.label": "CPF/CNPJ",
|
|
119
126
|
"cpf.incomplete": "Ihr CPF/CNPJ ist unvollständig",
|
|
@@ -2,6 +2,7 @@ const enGB = {
|
|
|
2
2
|
// guide card
|
|
3
3
|
"guideCard.redirectDescription": "After submission, you will be redirected to the payment method provider's page to safely complete the subsequent steps.",
|
|
4
4
|
"guideCard.scanQRCode": "After submitting the order, use {method} to scan the QR code.",
|
|
5
|
+
"guideCard.redirectWechatPay": "After submitting the order, use WeChat Pay",
|
|
5
6
|
// Drop In
|
|
6
7
|
"dropIn.card.label": "Bank card",
|
|
7
8
|
"dropIn.otherPaymentMethod": "Other payment method",
|
|
@@ -27,6 +28,8 @@ const enGB = {
|
|
|
27
28
|
"dropIn.skrill.label": "Skrill",
|
|
28
29
|
"dropIn.trustly.label": "Trustly",
|
|
29
30
|
"dropIn.p24.label": "Przelewy24",
|
|
31
|
+
"dropIn.aliPay.label": "Alipay+",
|
|
32
|
+
"dropIn.wechatPay.label": "WeChat Pay",
|
|
30
33
|
// card number
|
|
31
34
|
"card.cardNumber.label": "Card number",
|
|
32
35
|
"card.cardNumber.incomplete": "Your card number is incomplete",
|
|
@@ -66,6 +69,7 @@ const enGB = {
|
|
|
66
69
|
"common.unknownError": "Unknown Error",
|
|
67
70
|
"common.cancel": "Cancel",
|
|
68
71
|
"common.confirm": "Confirm",
|
|
72
|
+
"common.wechatPayGlobal": "WeChat Pay",
|
|
69
73
|
// form fields
|
|
70
74
|
"form.name.label": "Name",
|
|
71
75
|
"form.name.placeholder": "Enter your name",
|
|
@@ -109,11 +113,14 @@ const enGB = {
|
|
|
109
113
|
"threeDS.authenticationSuccessful": "Authentication successful,",
|
|
110
114
|
"threeDS.authenticationFailed": "Authentication failed,",
|
|
111
115
|
"threeDS.returnToCheckout": "returning shortly.",
|
|
116
|
+
"threeDS.linkExpired": "The 3DS link has expired.",
|
|
117
|
+
"threeDS.linkAlreadyUsed": "This link has already been used.",
|
|
112
118
|
// qrCode
|
|
113
119
|
"qrCode.expired": "The QR code has expired.",
|
|
114
120
|
"qrCode.scanByGcash": "Scan QR code with GCash",
|
|
115
121
|
"qrCode.scanByZalopay": "Scan QR code with Zalopay",
|
|
116
122
|
"qrCode.scanByVietqr": "Scan QR code with VietQR",
|
|
123
|
+
"qrCode.scanWechatPayGlobal": "Scan QR code with WeChat Pay",
|
|
117
124
|
// cpf
|
|
118
125
|
"cpf.label": "CPF/CNPJ",
|
|
119
126
|
"cpf.incomplete": "Your CPF/CNPJ is incomplete",
|
|
@@ -2,6 +2,7 @@ const esES = {
|
|
|
2
2
|
// guide card
|
|
3
3
|
"guideCard.redirectDescription": "Después de la presentación, serás redirigido a la página del proveedor del método de pago para completar de manera segura los pasos posteriores.",
|
|
4
4
|
"guideCard.scanQRCode": "Después de la presentación del pedido, usa {method} para escanear el código QR.",
|
|
5
|
+
"guideCard.redirectWechatPay": "Después de la presentación del pedido, usa WeChat Pay",
|
|
5
6
|
// Drop In
|
|
6
7
|
"dropIn.card.label": "Tarjeta bancaria",
|
|
7
8
|
"dropIn.otherPaymentMethod": "Otro método de pago",
|
|
@@ -27,6 +28,8 @@ const esES = {
|
|
|
27
28
|
"dropIn.skrill.label": "Skrill",
|
|
28
29
|
"dropIn.trustly.label": "Trustly",
|
|
29
30
|
"dropIn.p24.label": "Przelewy24",
|
|
31
|
+
"dropIn.aliPay.label": "Alipay+",
|
|
32
|
+
"dropIn.wechatPay.label": "WeChat Pay",
|
|
30
33
|
// card number
|
|
31
34
|
"card.cardNumber.label": "Número de tarjeta",
|
|
32
35
|
"card.cardNumber.incomplete": "Tu número de tarjeta está incompleto",
|
|
@@ -66,6 +69,7 @@ const esES = {
|
|
|
66
69
|
"common.unknownError": "Error Desconocido",
|
|
67
70
|
"common.cancel": "Cancelar",
|
|
68
71
|
"common.confirm": "Confirmar",
|
|
72
|
+
"common.wechatPayGlobal": "WeChat Pay",
|
|
69
73
|
// common email
|
|
70
74
|
"common.email.label": "Correo electrónico",
|
|
71
75
|
"common.email.incomplete": "Por favor ingresa tu correo electrónico",
|
|
@@ -109,11 +113,14 @@ const esES = {
|
|
|
109
113
|
"threeDS.authenticationSuccessful": "Autenticación exitosa,",
|
|
110
114
|
"threeDS.authenticationFailed": "Autenticación fallida,",
|
|
111
115
|
"threeDS.returnToCheckout": "volviendo en breve.",
|
|
116
|
+
"threeDS.linkExpired": "El enlace 3DS ha expirado.",
|
|
117
|
+
"threeDS.linkAlreadyUsed": "Este enlace ya ha sido utilizado.",
|
|
112
118
|
// qrCode
|
|
113
119
|
"qrCode.expired": "El código QR ha expirado.",
|
|
114
120
|
"qrCode.scanByGcash": "Escanear el código QR con GCash",
|
|
115
121
|
"qrCode.scanByZalopay": "Escanear el código QR con Zalopay",
|
|
116
122
|
"qrCode.scanByVietqr": "Escanear el código QR con VietQR",
|
|
123
|
+
"qrCode.scanWechatPayGlobal": "Escanear el código QR con WeChat Pay",
|
|
117
124
|
// cpf
|
|
118
125
|
"cpf.label": "CPF/CNPJ",
|
|
119
126
|
"cpf.incomplete": "Su CPF/CNPJ está incompleto",
|
|
@@ -2,6 +2,7 @@ const frFR = {
|
|
|
2
2
|
// guide card
|
|
3
3
|
"guideCard.redirectDescription": "Après la soumission, vous serez redirigé vers la page du fournisseur de méthode de paiement pour compléter les étapes suivantes en toute sécurité.",
|
|
4
4
|
"guideCard.scanQRCode": "Après la soumission du commande, utilisez {method} pour scanner le code QR.",
|
|
5
|
+
"guideCard.redirectWechatPay": "Après la soumission de la commande, utilisez WeChat Pay",
|
|
5
6
|
// Drop In
|
|
6
7
|
"dropIn.card.label": "Carte bancaire",
|
|
7
8
|
"dropIn.otherPaymentMethod": "Autre méthode de paiement",
|
|
@@ -27,6 +28,8 @@ const frFR = {
|
|
|
27
28
|
"dropIn.skrill.label": "Skrill",
|
|
28
29
|
"dropIn.trustly.label": "Trustly",
|
|
29
30
|
"dropIn.p24.label": "Przelewy24",
|
|
31
|
+
"dropIn.aliPay.label": "Alipay+",
|
|
32
|
+
"dropIn.wechatPay.label": "WeChat Pay",
|
|
30
33
|
// card number
|
|
31
34
|
"card.cardNumber.label": "Numéro de carte",
|
|
32
35
|
"card.cardNumber.incomplete": "Votre numéro de carte est incomplet",
|
|
@@ -66,6 +69,7 @@ const frFR = {
|
|
|
66
69
|
"common.unknownError": "Erreur Inconnue",
|
|
67
70
|
"common.cancel": "Annuler",
|
|
68
71
|
"common.confirm": "Confirmer",
|
|
72
|
+
"common.wechatPayGlobal": "WeChat Pay",
|
|
69
73
|
// common email
|
|
70
74
|
"common.email.label": "E-mail",
|
|
71
75
|
"common.email.incomplete": "Veuillez entrer votre e-mail",
|
|
@@ -109,11 +113,14 @@ const frFR = {
|
|
|
109
113
|
"threeDS.authenticationSuccessful": "Authentification réussie,",
|
|
110
114
|
"threeDS.authenticationFailed": "Authentification échouée,",
|
|
111
115
|
"threeDS.returnToCheckout": "retour imminent.",
|
|
116
|
+
"threeDS.linkExpired": "Le lien 3DS a expiré.",
|
|
117
|
+
"threeDS.linkAlreadyUsed": "Ce lien a déjà été utilisé.",
|
|
112
118
|
// qrCode
|
|
113
119
|
"qrCode.expired": "Le code QR a expiré.",
|
|
114
120
|
"qrCode.scanByGcash": "Scanner le code QR avec GCash",
|
|
115
121
|
"qrCode.scanByZalopay": "Scanner le code QR avec Zalopay",
|
|
116
122
|
"qrCode.scanByVietqr": "Scanner le code QR avec VietQR",
|
|
123
|
+
"qrCode.scanWechatPayGlobal": "Scanner le code QR avec WeChat Pay",
|
|
117
124
|
// cpf
|
|
118
125
|
"cpf.label": "CPF/CNPJ",
|
|
119
126
|
"cpf.incomplete": "Votre CPF/CNPJ est incomplet",
|
|
@@ -2,6 +2,7 @@ const jaJP = {
|
|
|
2
2
|
// guide card
|
|
3
3
|
"guideCard.redirectDescription": "送信後、安全に次の手順を完了するために、支払い方法提供者のページにリダイレクトされます。",
|
|
4
4
|
"guideCard.scanQRCode": "注文を送信した後、{method}を使用してQRコードをスキャンしてください。",
|
|
5
|
+
"guideCard.redirectWechatPay": "注文送信後、WeChat Payをご利用ください",
|
|
5
6
|
// Drop In
|
|
6
7
|
"dropIn.card.label": "銀行カード",
|
|
7
8
|
"dropIn.otherPaymentMethod": "他の支払い方法",
|
|
@@ -27,6 +28,8 @@ const jaJP = {
|
|
|
27
28
|
"dropIn.skrill.label": "Skrill",
|
|
28
29
|
"dropIn.trustly.label": "Trustly",
|
|
29
30
|
"dropIn.p24.label": "Przelewy24",
|
|
31
|
+
"dropIn.aliPay.label": "Alipay+",
|
|
32
|
+
"dropIn.wechatPay.label": "WeChat Pay",
|
|
30
33
|
// card number
|
|
31
34
|
"card.cardNumber.label": "カード番号",
|
|
32
35
|
"card.cardNumber.incomplete": "カード番号が不完全です",
|
|
@@ -66,6 +69,7 @@ const jaJP = {
|
|
|
66
69
|
"common.unknownError": "不明なエラー",
|
|
67
70
|
"common.cancel": "キャンセル",
|
|
68
71
|
"common.confirm": "確認",
|
|
72
|
+
"common.wechatPayGlobal": "WeChat Pay",
|
|
69
73
|
// common email
|
|
70
74
|
"common.email.label": "メール",
|
|
71
75
|
"common.email.incomplete": "メールアドレスを入力してください",
|
|
@@ -109,11 +113,14 @@ const jaJP = {
|
|
|
109
113
|
"threeDS.authenticationSuccessful": "認証に成功しました。",
|
|
110
114
|
"threeDS.authenticationFailed": "認証に失敗しました。",
|
|
111
115
|
"threeDS.returnToCheckout": "まもなく戻ります。",
|
|
116
|
+
"threeDS.linkExpired": "3DSリンクの有効期限が切れています。",
|
|
117
|
+
"threeDS.linkAlreadyUsed": "このリンクは既に使用されています。",
|
|
112
118
|
// qrCode
|
|
113
119
|
"qrCode.expired": "QRコードが期限切れです。",
|
|
114
120
|
"qrCode.scanByGcash": "Gcashでスキャン",
|
|
115
121
|
"qrCode.scanByZalopay": "Zalopayでスキャン",
|
|
116
122
|
"qrCode.scanByVietqr": "VietQRでスキャン",
|
|
123
|
+
"qrCode.scanWechatPayGlobal": "WeChat Payでスキャン",
|
|
117
124
|
// cpf
|
|
118
125
|
"cpf.label": "CPF/CNPJ",
|
|
119
126
|
"cpf.incomplete": "CPF/CNPJが不完全です",
|
|
@@ -2,6 +2,7 @@ const koKR = {
|
|
|
2
2
|
// guide card
|
|
3
3
|
"guideCard.redirectDescription": "제출 후, 결제 방법 제공자의 페이지로 리디렉션되어 이후 단계를 안전하게 완료할 수 있습니다.",
|
|
4
4
|
"guideCard.scanQRCode": "주문 제출 후, {method}를 사용하여 QR 코드를 스캔하세요.",
|
|
5
|
+
"guideCard.redirectWechatPay": "주문 제출 후 WeChat Pay를 사용하세요",
|
|
5
6
|
// Drop In
|
|
6
7
|
"dropIn.card.label": "은행 카드",
|
|
7
8
|
"dropIn.otherPaymentMethod": "기타 결제 방법",
|
|
@@ -27,6 +28,8 @@ const koKR = {
|
|
|
27
28
|
"dropIn.skrill.label": "Skrill",
|
|
28
29
|
"dropIn.trustly.label": "Trustly",
|
|
29
30
|
"dropIn.p24.label": "Przelewy24",
|
|
31
|
+
"dropIn.aliPay.label": "Alipay+",
|
|
32
|
+
"dropIn.wechatPay.label": "WeChat Pay",
|
|
30
33
|
// card number
|
|
31
34
|
"card.cardNumber.label": "카드 번호",
|
|
32
35
|
"card.cardNumber.incomplete": "카드 번호가 불완전합니다",
|
|
@@ -66,6 +69,7 @@ const koKR = {
|
|
|
66
69
|
"common.unknownError": "알 수 없는 오류",
|
|
67
70
|
"common.cancel": "취소",
|
|
68
71
|
"common.confirm": "확인",
|
|
72
|
+
"common.wechatPayGlobal": "WeChat Pay",
|
|
69
73
|
// common email
|
|
70
74
|
"common.email.label": "이메일",
|
|
71
75
|
"common.email.incomplete": "이메일을 입력해 주세요",
|
|
@@ -109,11 +113,14 @@ const koKR = {
|
|
|
109
113
|
"threeDS.authenticationSuccessful": "인증이 성공했습니다,",
|
|
110
114
|
"threeDS.authenticationFailed": "인증이 실패했습니다,",
|
|
111
115
|
"threeDS.returnToCheckout": "곧 돌아갑니다.",
|
|
116
|
+
"threeDS.linkExpired": "3DS 링크가 만료되었습니다.",
|
|
117
|
+
"threeDS.linkAlreadyUsed": "이 링크는 이미 사용되었습니다.",
|
|
112
118
|
// qrCode
|
|
113
119
|
"qrCode.expired": "QR 코드가 만료되었습니다.",
|
|
114
120
|
"qrCode.scanByGcash": "GCash 스캔",
|
|
115
121
|
"qrCode.scanByZalopay": "Zalopay 스캔",
|
|
116
122
|
"qrCode.scanByVietqr": "VietQR 스캔",
|
|
123
|
+
"qrCode.scanWechatPayGlobal": "WeChat Pay 스캔",
|
|
117
124
|
// cpf
|
|
118
125
|
"cpf.label": "CPF/CNPJ",
|
|
119
126
|
"cpf.incomplete": "CPF/CNPJ가 불완전합니다",
|
|
@@ -2,6 +2,7 @@ const nlNL = {
|
|
|
2
2
|
// guide card
|
|
3
3
|
"guideCard.redirectDescription": "Na het indienen wordt u doorgestuurd naar de pagina van de betalingsmethode provider om de volgende stappen veilig te voltooien.",
|
|
4
4
|
"guideCard.scanQRCode": "Na het indienen van de bestelling, gebruik {method} om de QR-code te scannen.",
|
|
5
|
+
"guideCard.redirectWechatPay": "Na het indienen van de bestelling, gebruik WeChat Pay",
|
|
5
6
|
// Drop In
|
|
6
7
|
"dropIn.card.label": "Bankkaart",
|
|
7
8
|
"dropIn.otherPaymentMethod": "Andere betaalmethode",
|
|
@@ -27,6 +28,8 @@ const nlNL = {
|
|
|
27
28
|
"dropIn.skrill.label": "Skrill",
|
|
28
29
|
"dropIn.trustly.label": "Trustly",
|
|
29
30
|
"dropIn.p24.label": "Przelewy24",
|
|
31
|
+
"dropIn.aliPay.label": "Alipay+",
|
|
32
|
+
"dropIn.wechatPay.label": "WeChat Pay",
|
|
30
33
|
// card number
|
|
31
34
|
"card.cardNumber.label": "Kaartnummer",
|
|
32
35
|
"card.cardNumber.incomplete": "Uw kaartnummer is onvolledig",
|
|
@@ -66,6 +69,7 @@ const nlNL = {
|
|
|
66
69
|
"common.unknownError": "Onbekende fout",
|
|
67
70
|
"common.cancel": "Annuleren",
|
|
68
71
|
"common.confirm": "Bevestigen",
|
|
72
|
+
"common.wechatPayGlobal": "WeChat Pay",
|
|
69
73
|
// common email
|
|
70
74
|
"common.email.label": "E-mail",
|
|
71
75
|
"common.email.incomplete": "Voer uw e-mailadres in",
|
|
@@ -109,11 +113,14 @@ const nlNL = {
|
|
|
109
113
|
"threeDS.authenticationSuccessful": "Authenticatie succesvol,",
|
|
110
114
|
"threeDS.authenticationFailed": "Authenticatie mislukt,",
|
|
111
115
|
"threeDS.returnToCheckout": "binnenkort terugkeren.",
|
|
116
|
+
"threeDS.linkExpired": "De 3DS-link is verlopen.",
|
|
117
|
+
"threeDS.linkAlreadyUsed": "Deze link is al gebruikt.",
|
|
112
118
|
// qrCode
|
|
113
119
|
"qrCode.expired": "De QR-code is verlopen.",
|
|
114
120
|
"qrCode.scanByGcash": "Scan QR-code met GCash",
|
|
115
121
|
"qrCode.scanByZalopay": "Scan QR-code met Zalopay",
|
|
116
122
|
"qrCode.scanByVietqr": "Scan QR-code met VietQR",
|
|
123
|
+
"qrCode.scanWechatPayGlobal": "Scan QR-code met WeChat Pay",
|
|
117
124
|
// cpf
|
|
118
125
|
"cpf.label": "CPF/CNPJ",
|
|
119
126
|
"cpf.incomplete": "Uw CPF/CNPJ is onvolledig",
|