@paykka/card-checkout-ui 0.16.0 → 0.17.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/dist/card-checkout-ui.js +23 -23
- package/dist/card-checkout-ui.umd.cjs +23 -23
- package/dist/es/api/modules/get-browser-params.js +1 -1
- package/dist/es/components/DropIn/index.js +145 -1
- package/dist/es/components/GuideCard/index.js +19 -1
- package/dist/es/components/index.js +18 -0
- package/dist/es/components/internal/icons/IconBancomatPay.js +33 -0
- package/dist/es/components/internal/icons/IconBizum.js +33 -0
- package/dist/es/components/internal/icons/IconDragonPay.js +42 -0
- package/dist/es/components/internal/icons/IconEPS.js +44 -0
- package/dist/es/components/internal/icons/IconFpx.js +42 -0
- package/dist/es/components/internal/icons/IconMbWay.js +33 -0
- package/dist/es/components/internal/icons/IconMultibanco.js +34 -0
- package/dist/es/components/internal/icons/IconMyBank.js +38 -0
- package/dist/es/components/internal/icons/IconOnlineBankingEstonia.js +42 -0
- package/dist/es/components/internal/icons/IconOnlineBankingFinland.js +42 -0
- package/dist/es/components/internal/icons/IconOnlineBankingIndonesia.js +42 -0
- package/dist/es/components/internal/icons/IconOnlineBankingLatvia.js +42 -0
- package/dist/es/components/internal/icons/IconOnlineBankingLithuania.js +42 -0
- package/dist/es/components/internal/icons/IconOnlineBankingThailand.js +42 -0
- package/dist/es/components/internal/icons/IconPayByBank.js +42 -0
- package/dist/es/components/internal/icons/IconPayU.js +27 -0
- package/dist/es/components/internal/icons/IconSatispay.js +34 -0
- package/dist/es/components/internal/icons/IconUpi.js +42 -0
- package/dist/es/components/wallets/BancomatPay/BancomatPay.js +155 -0
- package/dist/es/components/wallets/BancomatPay/bancomat-pay.js +1 -0
- package/dist/es/components/wallets/BancomatPay/index.js +1 -0
- package/dist/es/components/wallets/BancomatPay/type.js +1 -0
- package/dist/es/components/wallets/Bizum/Bizum.js +155 -0
- package/dist/es/components/wallets/Bizum/bizum2.js +1 -0
- package/dist/es/components/wallets/Bizum/index.js +1 -0
- package/dist/es/components/wallets/Bizum/type.js +1 -0
- package/dist/es/components/wallets/DragonPay/DragonPay.js +180 -0
- package/dist/es/components/wallets/DragonPay/dragon-pay.js +1 -0
- package/dist/es/components/wallets/DragonPay/index.js +1 -0
- package/dist/es/components/wallets/DragonPay/type.js +1 -0
- package/dist/es/components/wallets/EPS/EPS.js +183 -0
- package/dist/es/components/wallets/EPS/eps2.js +1 -0
- package/dist/es/components/wallets/EPS/index.js +1 -0
- package/dist/es/components/wallets/EPS/type.js +1 -0
- package/dist/es/components/wallets/Fpx/Fpx.js +180 -0
- package/dist/es/components/wallets/Fpx/fpx2.js +1 -0
- package/dist/es/components/wallets/Fpx/index.js +1 -0
- package/dist/es/components/wallets/Fpx/type.js +1 -0
- package/dist/es/components/wallets/MbWay/MbWay.js +155 -0
- package/dist/es/components/wallets/MbWay/index.js +1 -0
- package/dist/es/components/wallets/MbWay/mb-way.js +1 -0
- package/dist/es/components/wallets/MbWay/type.js +1 -0
- package/dist/es/components/wallets/Multibanco/Multibanco.js +155 -0
- package/dist/es/components/wallets/Multibanco/index.js +1 -0
- package/dist/es/components/wallets/Multibanco/multibanco2.js +1 -0
- package/dist/es/components/wallets/Multibanco/type.js +1 -0
- package/dist/es/components/wallets/MyBank/MyBank.js +165 -0
- package/dist/es/components/wallets/MyBank/index.js +1 -0
- package/dist/es/components/wallets/MyBank/my-bank.js +1 -0
- package/dist/es/components/wallets/MyBank/type.js +1 -0
- package/dist/es/components/wallets/OnlineBankingEstonia/OnlineBankingEstonia.js +180 -0
- package/dist/es/components/wallets/OnlineBankingEstonia/index.js +1 -0
- package/dist/es/components/wallets/OnlineBankingEstonia/online-banking-estonia.js +1 -0
- package/dist/es/components/wallets/OnlineBankingEstonia/type.js +1 -0
- package/dist/es/components/wallets/OnlineBankingFinland/OnlineBankingFinland.js +180 -0
- package/dist/es/components/wallets/OnlineBankingFinland/index.js +1 -0
- package/dist/es/components/wallets/OnlineBankingFinland/online-banking-finland.js +1 -0
- package/dist/es/components/wallets/OnlineBankingFinland/type.js +1 -0
- package/dist/es/components/wallets/OnlineBankingIndonesia/OnlineBankingIndonesia.js +180 -0
- package/dist/es/components/wallets/OnlineBankingIndonesia/index.js +1 -0
- package/dist/es/components/wallets/OnlineBankingIndonesia/online-banking-indonesia.js +1 -0
- package/dist/es/components/wallets/OnlineBankingIndonesia/type.js +1 -0
- package/dist/es/components/wallets/OnlineBankingLatvia/OnlineBankingLatvia.js +180 -0
- package/dist/es/components/wallets/OnlineBankingLatvia/index.js +1 -0
- package/dist/es/components/wallets/OnlineBankingLatvia/online-banking-latvia.js +1 -0
- package/dist/es/components/wallets/OnlineBankingLatvia/type.js +1 -0
- package/dist/es/components/wallets/OnlineBankingLithuania/OnlineBankingLithuania.js +180 -0
- package/dist/es/components/wallets/OnlineBankingLithuania/index.js +1 -0
- package/dist/es/components/wallets/OnlineBankingLithuania/online-banking-lithuania.js +1 -0
- package/dist/es/components/wallets/OnlineBankingLithuania/type.js +1 -0
- package/dist/es/components/wallets/OnlineBankingThailand/OnlineBankingThailand.js +180 -0
- package/dist/es/components/wallets/OnlineBankingThailand/index.js +1 -0
- package/dist/es/components/wallets/OnlineBankingThailand/online-banking-thailand.js +1 -0
- package/dist/es/components/wallets/OnlineBankingThailand/type.js +1 -0
- package/dist/es/components/wallets/PayByBank/PayByBank.js +212 -0
- package/dist/es/components/wallets/PayByBank/index.js +1 -0
- package/dist/es/components/wallets/PayByBank/pay-by-bank.js +1 -0
- package/dist/es/components/wallets/PayByBank/type.js +1 -0
- package/dist/es/components/wallets/PayU/PayU.js +186 -0
- package/dist/es/components/wallets/PayU/index.js +1 -0
- package/dist/es/components/wallets/PayU/payu2.js +1 -0
- package/dist/es/components/wallets/PayU/type.js +1 -0
- package/dist/es/components/wallets/Satispay/Satispay.js +198 -0
- package/dist/es/components/wallets/Satispay/index.js +1 -0
- package/dist/es/components/wallets/Satispay/satispay2.js +1 -0
- package/dist/es/components/wallets/Satispay/type.js +1 -0
- package/dist/es/components/wallets/Upi/Upi.js +180 -0
- package/dist/es/components/wallets/Upi/index.js +1 -0
- package/dist/es/components/wallets/Upi/type.js +1 -0
- package/dist/es/components/wallets/Upi/upi2.js +1 -0
- package/dist/es/components/wallets/index.js +18 -0
- package/dist/es/constant.js +110 -2
- package/dist/es/core/logger.js +1 -1
- package/dist/es/core.js +480 -480
- package/dist/es/i18n/locales/de-DE.js +19 -1
- package/dist/es/i18n/locales/en-GB.js +19 -1
- package/dist/es/i18n/locales/es-ES.js +19 -1
- package/dist/es/i18n/locales/fr-FR.js +19 -1
- package/dist/es/i18n/locales/ja-JP.js +19 -1
- package/dist/es/i18n/locales/ko-KR.js +19 -1
- package/dist/es/i18n/locales/nl-NL.js +19 -1
- package/dist/es/i18n/locales/pt-PT.js +19 -1
- package/dist/es/i18n/locales/ru-RU.js +19 -1
- package/dist/es/i18n/locales/zh-CN.js +19 -1
- package/dist/es/i18n/locales/zh-HK.js +19 -1
- package/dist/es/i18n/locales/zh-TW.js +19 -1
- package/dist/es/index.js +36 -0
- package/dist/es/style.css +1 -1
- package/dist/style.css +1 -1
- package/dist/types/components/DropIn/type.d.ts +1 -1
- package/dist/types/components/internal/icons/IconBancomatPay.d.ts +2 -0
- package/dist/types/components/internal/icons/IconBizum.d.ts +2 -0
- package/dist/types/components/internal/icons/IconDragonPay.d.ts +2 -0
- package/dist/types/components/internal/icons/IconEPS.d.ts +2 -0
- package/dist/types/components/internal/icons/IconFpx.d.ts +2 -0
- package/dist/types/components/internal/icons/IconMbWay.d.ts +2 -0
- package/dist/types/components/internal/icons/IconMultibanco.d.ts +2 -0
- package/dist/types/components/internal/icons/IconMyBank.d.ts +2 -0
- package/dist/types/components/internal/icons/IconOnlineBankingEstonia.d.ts +2 -0
- package/dist/types/components/internal/icons/IconOnlineBankingFinland.d.ts +2 -0
- package/dist/types/components/internal/icons/IconOnlineBankingIndonesia.d.ts +2 -0
- package/dist/types/components/internal/icons/IconOnlineBankingLatvia.d.ts +2 -0
- package/dist/types/components/internal/icons/IconOnlineBankingLithuania.d.ts +2 -0
- package/dist/types/components/internal/icons/IconOnlineBankingThailand.d.ts +2 -0
- package/dist/types/components/internal/icons/IconPayByBank.d.ts +2 -0
- package/dist/types/components/internal/icons/IconPayU.d.ts +2 -0
- package/dist/types/components/internal/icons/IconSatispay.d.ts +2 -0
- package/dist/types/components/internal/icons/IconUpi.d.ts +2 -0
- package/dist/types/components/internal/icons/index.d.ts +18 -0
- package/dist/types/components/wallets/BancomatPay/BancomatPay.d.ts +15 -0
- package/dist/types/components/wallets/BancomatPay/index.d.ts +2 -0
- package/dist/types/components/wallets/BancomatPay/type.d.ts +7 -0
- package/dist/types/components/wallets/Bizum/Bizum.d.ts +15 -0
- package/dist/types/components/wallets/Bizum/index.d.ts +2 -0
- package/dist/types/components/wallets/Bizum/type.d.ts +7 -0
- package/dist/types/components/wallets/DragonPay/DragonPay.d.ts +16 -0
- package/dist/types/components/wallets/DragonPay/index.d.ts +2 -0
- package/dist/types/components/wallets/DragonPay/type.d.ts +6 -0
- package/dist/types/components/wallets/EPS/EPS.d.ts +15 -0
- package/dist/types/components/wallets/EPS/index.d.ts +2 -0
- package/dist/types/components/wallets/EPS/type.d.ts +7 -0
- package/dist/types/components/wallets/Fpx/Fpx.d.ts +16 -0
- package/dist/types/components/wallets/Fpx/index.d.ts +2 -0
- package/dist/types/components/wallets/Fpx/type.d.ts +6 -0
- package/dist/types/components/wallets/MbWay/MbWay.d.ts +15 -0
- package/dist/types/components/wallets/MbWay/index.d.ts +2 -0
- package/dist/types/components/wallets/MbWay/type.d.ts +7 -0
- package/dist/types/components/wallets/Multibanco/Multibanco.d.ts +15 -0
- package/dist/types/components/wallets/Multibanco/index.d.ts +2 -0
- package/dist/types/components/wallets/Multibanco/type.d.ts +7 -0
- package/dist/types/components/wallets/MyBank/MyBank.d.ts +15 -0
- package/dist/types/components/wallets/MyBank/index.d.ts +2 -0
- package/dist/types/components/wallets/MyBank/type.d.ts +7 -0
- package/dist/types/components/wallets/OnlineBankingEstonia/OnlineBankingEstonia.d.ts +16 -0
- package/dist/types/components/wallets/OnlineBankingEstonia/index.d.ts +2 -0
- package/dist/types/components/wallets/OnlineBankingEstonia/type.d.ts +6 -0
- package/dist/types/components/wallets/OnlineBankingFinland/OnlineBankingFinland.d.ts +16 -0
- package/dist/types/components/wallets/OnlineBankingFinland/index.d.ts +2 -0
- package/dist/types/components/wallets/OnlineBankingFinland/type.d.ts +6 -0
- package/dist/types/components/wallets/OnlineBankingIndonesia/OnlineBankingIndonesia.d.ts +16 -0
- package/dist/types/components/wallets/OnlineBankingIndonesia/index.d.ts +2 -0
- package/dist/types/components/wallets/OnlineBankingIndonesia/type.d.ts +6 -0
- package/dist/types/components/wallets/OnlineBankingLatvia/OnlineBankingLatvia.d.ts +16 -0
- package/dist/types/components/wallets/OnlineBankingLatvia/index.d.ts +2 -0
- package/dist/types/components/wallets/OnlineBankingLatvia/type.d.ts +6 -0
- package/dist/types/components/wallets/OnlineBankingLithuania/OnlineBankingLithuania.d.ts +16 -0
- package/dist/types/components/wallets/OnlineBankingLithuania/index.d.ts +2 -0
- package/dist/types/components/wallets/OnlineBankingLithuania/type.d.ts +6 -0
- package/dist/types/components/wallets/OnlineBankingThailand/OnlineBankingThailand.d.ts +16 -0
- package/dist/types/components/wallets/OnlineBankingThailand/index.d.ts +2 -0
- package/dist/types/components/wallets/OnlineBankingThailand/type.d.ts +6 -0
- package/dist/types/components/wallets/PayByBank/PayByBank.d.ts +16 -0
- package/dist/types/components/wallets/PayByBank/index.d.ts +2 -0
- package/dist/types/components/wallets/PayByBank/type.d.ts +6 -0
- package/dist/types/components/wallets/PayU/PayU.d.ts +15 -0
- package/dist/types/components/wallets/PayU/index.d.ts +2 -0
- package/dist/types/components/wallets/PayU/type.d.ts +7 -0
- package/dist/types/components/wallets/Satispay/Satispay.d.ts +15 -0
- package/dist/types/components/wallets/Satispay/index.d.ts +2 -0
- package/dist/types/components/wallets/Satispay/type.d.ts +7 -0
- package/dist/types/components/wallets/Upi/Upi.d.ts +16 -0
- package/dist/types/components/wallets/Upi/index.d.ts +2 -0
- package/dist/types/components/wallets/Upi/type.d.ts +6 -0
- package/dist/types/components/wallets/index.d.ts +18 -0
- package/dist/types/constant.d.ts +37 -1
- package/dist/types/i18n/locales/de-DE.d.ts +18 -0
- package/dist/types/i18n/locales/en-GB.d.ts +18 -0
- package/dist/types/i18n/locales/es-ES.d.ts +18 -0
- package/dist/types/i18n/locales/fr-FR.d.ts +18 -0
- package/dist/types/i18n/locales/ja-JP.d.ts +18 -0
- package/dist/types/i18n/locales/ko-KR.d.ts +18 -0
- package/dist/types/i18n/locales/nl-NL.d.ts +18 -0
- package/dist/types/i18n/locales/pt-PT.d.ts +18 -0
- package/dist/types/i18n/locales/ru-RU.d.ts +18 -0
- package/dist/types/i18n/locales/zh-CN.d.ts +18 -0
- package/dist/types/i18n/locales/zh-HK.d.ts +18 -0
- package/dist/types/i18n/locales/zh-TW.d.ts +18 -0
- package/package.json +1 -1
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
import { w, F, y, A, h, u, b } from "../../../core.js";
|
|
2
|
+
import { useBEM } from "../../../hooks/useBEM.js";
|
|
3
|
+
import { CoreContext } from "../../../core/context.js";
|
|
4
|
+
import "../../../utils/card-brand/brands.js";
|
|
5
|
+
import "../../../utils/system-info/get-browser-info.js";
|
|
6
|
+
import { normalizedClass } from "../../../utils/format.js";
|
|
7
|
+
import { PaymentMethod, PaymentCategory, COMMON_CLASS_NAME } from "../../../constant.js";
|
|
8
|
+
import "../../../out/fraud-detection.js";
|
|
9
|
+
import { usePayState } from "../../../hooks/usePayState.js";
|
|
10
|
+
import { useBaseWallet } from "../../../hooks/useBaseWallet.js";
|
|
11
|
+
import { createEmailCore, EmailField } from "../../EmailField/EmailField.js";
|
|
12
|
+
import "../../internal/Form/type.js";
|
|
13
|
+
import "../../internal/Form/context.js";
|
|
14
|
+
import "../../internal/Form/FormItem.js";
|
|
15
|
+
import { Form } from "../../internal/Form/Form.js";
|
|
16
|
+
import { DEFAULT_ADDRESS, AddressField } from "../../AddressField/index.js";
|
|
17
|
+
import { Info } from "../../internal/Info/Info.js";
|
|
18
|
+
import "./pay-by-bank.js";
|
|
19
|
+
import { GuideCard } from "../../GuideCard/index.js";
|
|
20
|
+
import { PaymentButton } from "../../PaymentButton/index.js";
|
|
21
|
+
import "../../internal/Modal/Modal.js";
|
|
22
|
+
import "../../business/QRCodeModal/qr-code-modal.js";
|
|
23
|
+
import { NameField } from "../../business/NameField/NameField.js";
|
|
24
|
+
import "../../internal/Select/Select.js";
|
|
25
|
+
import "../../internal/Input/Input.js";
|
|
26
|
+
import "../../internal/Input/type.js";
|
|
27
|
+
import "../../business/PhoneField/config.js";
|
|
28
|
+
import "../../business/PhoneField/phone-field.js";
|
|
29
|
+
import "../../business/Tooltip/tooltip2.js";
|
|
30
|
+
import "../../business/BlikCodeField/blik-code-field.js";
|
|
31
|
+
import "../../internal/Button/button.js";
|
|
32
|
+
import "../../business/BlikConfirmModal/blik-confirm-modal.js";
|
|
33
|
+
import "../../internal/LoadingCheck/loading-check.js";
|
|
34
|
+
const { bem } = useBEM("pay-by-bank");
|
|
35
|
+
const fieldClassNames = bem("field");
|
|
36
|
+
const CURR_PAYMENT_METHOD = PaymentMethod.PAY_BY_BANK;
|
|
37
|
+
const ALLOWED_COUNTRIES = ["AT", "BE", "DE", "FI", "FR", "IE", "IT", "LT", "NL", "PT"];
|
|
38
|
+
const PayByBank = w((props, ref) => {
|
|
39
|
+
const {
|
|
40
|
+
session,
|
|
41
|
+
core,
|
|
42
|
+
showGuideCard = true,
|
|
43
|
+
hidePaymentButton = false
|
|
44
|
+
} = props;
|
|
45
|
+
F(ref, () => ({
|
|
46
|
+
stopRetry: () => stopRetry(),
|
|
47
|
+
startRetry: (timeout) => startRetry(timeout),
|
|
48
|
+
updateAddress: () => {
|
|
49
|
+
var _a;
|
|
50
|
+
const country = addressCore.getAddressState().country ?? "";
|
|
51
|
+
if (!ALLOWED_COUNTRIES.includes(country))
|
|
52
|
+
return;
|
|
53
|
+
const address = addressCore.getAddressState();
|
|
54
|
+
form.address = address;
|
|
55
|
+
setForm(form);
|
|
56
|
+
(_a = addressFieldRef.current) == null ? void 0 : _a.update(address);
|
|
57
|
+
validateFormSilently();
|
|
58
|
+
},
|
|
59
|
+
updateEmail: () => {
|
|
60
|
+
var _a;
|
|
61
|
+
if (!(fieldStatus == null ? void 0 : fieldStatus.email.show))
|
|
62
|
+
return;
|
|
63
|
+
form.email = emailState.email;
|
|
64
|
+
setForm(form);
|
|
65
|
+
(_a = emailFieldRef.current) == null ? void 0 : _a.update(emailState.email);
|
|
66
|
+
validateFormSilently();
|
|
67
|
+
},
|
|
68
|
+
payment: () => {
|
|
69
|
+
hidePaymentButton && onSubmit();
|
|
70
|
+
}
|
|
71
|
+
}));
|
|
72
|
+
const { i18n, sessionReady, disabled } = usePayState(session, props.core);
|
|
73
|
+
y(() => {
|
|
74
|
+
if (!sessionReady)
|
|
75
|
+
return;
|
|
76
|
+
const { country, bill = {} } = (session == null ? void 0 : session.checkout) || {};
|
|
77
|
+
country && addressCore.setCountry(country);
|
|
78
|
+
form.email = bill.email ?? "";
|
|
79
|
+
if (!ALLOWED_COUNTRIES.includes(country ?? ""))
|
|
80
|
+
return;
|
|
81
|
+
form.address.country = country;
|
|
82
|
+
}, [sessionReady]);
|
|
83
|
+
const {
|
|
84
|
+
isEnabled,
|
|
85
|
+
fieldStatus,
|
|
86
|
+
paymentButtonStatus,
|
|
87
|
+
setPaymentButtonStatus,
|
|
88
|
+
errorMessage,
|
|
89
|
+
setErrorMessage,
|
|
90
|
+
payment,
|
|
91
|
+
startRetry,
|
|
92
|
+
stopRetry,
|
|
93
|
+
getPaymentMethodContext
|
|
94
|
+
} = useBaseWallet(CURR_PAYMENT_METHOD, props, {
|
|
95
|
+
getFormData: () => {
|
|
96
|
+
return {
|
|
97
|
+
...form
|
|
98
|
+
};
|
|
99
|
+
},
|
|
100
|
+
getExtraPaymentParams: () => ({
|
|
101
|
+
// 姓名走 payment.holderName,不映射 bill.firstName
|
|
102
|
+
payment: {
|
|
103
|
+
holderName: form.name
|
|
104
|
+
}
|
|
105
|
+
})
|
|
106
|
+
});
|
|
107
|
+
const addressCore = core.getAddressCore();
|
|
108
|
+
const emailState = createEmailCore();
|
|
109
|
+
const addressFieldRef = A(null);
|
|
110
|
+
const emailFieldRef = A(null);
|
|
111
|
+
const formRef = A(null);
|
|
112
|
+
const [form, setForm] = h({
|
|
113
|
+
email: "",
|
|
114
|
+
name: "",
|
|
115
|
+
address: { ...DEFAULT_ADDRESS }
|
|
116
|
+
});
|
|
117
|
+
const [validated, setValidated] = h(false);
|
|
118
|
+
const validateFormSilently = () => {
|
|
119
|
+
var _a;
|
|
120
|
+
(_a = formRef.current) == null ? void 0 : _a.validate(void 0, false).then(() => setValidated(true)).catch(() => setValidated(false));
|
|
121
|
+
};
|
|
122
|
+
const setFormRef = (dom) => {
|
|
123
|
+
formRef.current = dom;
|
|
124
|
+
dom && validateFormSilently();
|
|
125
|
+
};
|
|
126
|
+
y(() => validateFormSilently(), [form]);
|
|
127
|
+
const onSubmit = () => {
|
|
128
|
+
var _a;
|
|
129
|
+
setErrorMessage("");
|
|
130
|
+
(_a = formRef.current) == null ? void 0 : _a.validate(async (errors) => {
|
|
131
|
+
var _a2;
|
|
132
|
+
addressCore.setValidateAllFields(true);
|
|
133
|
+
const submitResult = await ((_a2 = props.onSubmit) == null ? void 0 : _a2.call(props, errors, getPaymentMethodContext()));
|
|
134
|
+
if (submitResult === false)
|
|
135
|
+
return;
|
|
136
|
+
if (errors) {
|
|
137
|
+
setPaymentButtonStatus("unSubmit");
|
|
138
|
+
return;
|
|
139
|
+
}
|
|
140
|
+
setPaymentButtonStatus("loading");
|
|
141
|
+
await payment();
|
|
142
|
+
});
|
|
143
|
+
};
|
|
144
|
+
const Email = () => {
|
|
145
|
+
return /* @__PURE__ */ u(b, { children: (fieldStatus == null ? void 0 : fieldStatus.email.show) && /* @__PURE__ */ u("div", { className: fieldClassNames, children: /* @__PURE__ */ u(
|
|
146
|
+
EmailField,
|
|
147
|
+
{
|
|
148
|
+
ref: emailFieldRef,
|
|
149
|
+
value: form.email,
|
|
150
|
+
disabled: (fieldStatus == null ? void 0 : fieldStatus.email.disabled) || disabled
|
|
151
|
+
}
|
|
152
|
+
) }) });
|
|
153
|
+
};
|
|
154
|
+
const Address = () => {
|
|
155
|
+
var _a;
|
|
156
|
+
const mode = (fieldStatus == null ? void 0 : fieldStatus.address.show) ? (_a = core.config._checkoutConfig) == null ? void 0 : _a.addressMode : "country";
|
|
157
|
+
return /* @__PURE__ */ u(b, {
|
|
158
|
+
// 这里没有判断 fieldStatus?.address.show,因为 Pay by Bank 对国家有要求,直接用账单地址可能会失败
|
|
159
|
+
children: /* @__PURE__ */ u("div", { className: bem("address"), children: /* @__PURE__ */ u(
|
|
160
|
+
AddressField,
|
|
161
|
+
{
|
|
162
|
+
ref: addressFieldRef,
|
|
163
|
+
mode,
|
|
164
|
+
value: form.address,
|
|
165
|
+
allowedCountries: ALLOWED_COUNTRIES,
|
|
166
|
+
disabled,
|
|
167
|
+
onChange: (value) => setForm(Object.assign(form, { address: value }))
|
|
168
|
+
}
|
|
169
|
+
) })
|
|
170
|
+
});
|
|
171
|
+
};
|
|
172
|
+
const Button = () => {
|
|
173
|
+
return /* @__PURE__ */ u(
|
|
174
|
+
PaymentButton,
|
|
175
|
+
{
|
|
176
|
+
className: bem("button"),
|
|
177
|
+
status: paymentButtonStatus,
|
|
178
|
+
disabled,
|
|
179
|
+
verified: validated,
|
|
180
|
+
onClick: onSubmit
|
|
181
|
+
}
|
|
182
|
+
);
|
|
183
|
+
};
|
|
184
|
+
const ErrorMessage = () => {
|
|
185
|
+
return /* @__PURE__ */ u(b, { children: !!errorMessage && /* @__PURE__ */ u(Info, { content: errorMessage }) });
|
|
186
|
+
};
|
|
187
|
+
return /* @__PURE__ */ u(
|
|
188
|
+
CoreContext.Provider,
|
|
189
|
+
{
|
|
190
|
+
value: {
|
|
191
|
+
i18n,
|
|
192
|
+
session,
|
|
193
|
+
core
|
|
194
|
+
},
|
|
195
|
+
children: isEnabled && i18n.ready.value && /* @__PURE__ */ u("div", { className: core.theme.className, children: [
|
|
196
|
+
showGuideCard && /* @__PURE__ */ u(GuideCard, { type: PaymentCategory.PAY_BY_BANK }),
|
|
197
|
+
/* @__PURE__ */ u(Form, { form, ref: setFormRef, onFormChange: (form2) => setForm(form2), children: /* @__PURE__ */ u("div", { className: normalizedClass(COMMON_CLASS_NAME, bem()), children: [
|
|
198
|
+
Email(),
|
|
199
|
+
/* @__PURE__ */ u("div", { className: fieldClassNames, children: /* @__PURE__ */ u(NameField, { disabled }) }),
|
|
200
|
+
Address(),
|
|
201
|
+
/* @__PURE__ */ u("div", { className: bem("footer-wrapper"), children: [
|
|
202
|
+
ErrorMessage(),
|
|
203
|
+
!hidePaymentButton && Button()
|
|
204
|
+
] })
|
|
205
|
+
] }) })
|
|
206
|
+
] })
|
|
207
|
+
}
|
|
208
|
+
);
|
|
209
|
+
});
|
|
210
|
+
export {
|
|
211
|
+
PayByBank
|
|
212
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import "./PayByBank.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
import { w, F, y, A, h, u, b } from "../../../core.js";
|
|
2
|
+
import { useBEM } from "../../../hooks/useBEM.js";
|
|
3
|
+
import { CoreContext } from "../../../core/context.js";
|
|
4
|
+
import "../../../utils/card-brand/brands.js";
|
|
5
|
+
import "../../../utils/system-info/get-browser-info.js";
|
|
6
|
+
import { normalizedClass } from "../../../utils/format.js";
|
|
7
|
+
import { PaymentMethod, PaymentCategory, COMMON_CLASS_NAME } from "../../../constant.js";
|
|
8
|
+
import "../../../out/fraud-detection.js";
|
|
9
|
+
import { usePayState } from "../../../hooks/usePayState.js";
|
|
10
|
+
import { useBaseWallet } from "../../../hooks/useBaseWallet.js";
|
|
11
|
+
import "./payu2.js";
|
|
12
|
+
import { GuideCard } from "../../GuideCard/index.js";
|
|
13
|
+
import "../../internal/Form/type.js";
|
|
14
|
+
import "../../internal/Form/context.js";
|
|
15
|
+
import "../../internal/Form/FormItem.js";
|
|
16
|
+
import { Form } from "../../internal/Form/Form.js";
|
|
17
|
+
import { createEmailCore, EmailField } from "../../EmailField/EmailField.js";
|
|
18
|
+
import { PaymentButton } from "../../PaymentButton/index.js";
|
|
19
|
+
import { Info } from "../../internal/Info/Info.js";
|
|
20
|
+
import { DEFAULT_ADDRESS, AddressField } from "../../AddressField/index.js";
|
|
21
|
+
import "../../internal/Modal/Modal.js";
|
|
22
|
+
import "../../business/QRCodeModal/qr-code-modal.js";
|
|
23
|
+
import { NameField } from "../../business/NameField/NameField.js";
|
|
24
|
+
import "../../internal/Select/Select.js";
|
|
25
|
+
import "../../internal/Input/Input.js";
|
|
26
|
+
import "../../internal/Input/type.js";
|
|
27
|
+
import "../../business/PhoneField/config.js";
|
|
28
|
+
import "../../business/PhoneField/phone-field.js";
|
|
29
|
+
import "../../business/Tooltip/tooltip2.js";
|
|
30
|
+
import "../../business/BlikCodeField/blik-code-field.js";
|
|
31
|
+
import "../../internal/Button/button.js";
|
|
32
|
+
import "../../business/BlikConfirmModal/blik-confirm-modal.js";
|
|
33
|
+
import "../../internal/LoadingCheck/loading-check.js";
|
|
34
|
+
const { bem } = useBEM("payu");
|
|
35
|
+
const fieldClassNames = bem("field");
|
|
36
|
+
const CURR_PAYMENT_METHOD = PaymentMethod.PAY_U;
|
|
37
|
+
const ALLOWED_COUNTRIES = ["PL", "CZ"];
|
|
38
|
+
const PayU = w((props, ref) => {
|
|
39
|
+
const { session, core, showGuideCard = true, hidePaymentButton = false } = props;
|
|
40
|
+
F(ref, () => ({
|
|
41
|
+
stopRetry: () => stopRetry(),
|
|
42
|
+
startRetry: (timeout) => startRetry(timeout),
|
|
43
|
+
updateAddress: () => {
|
|
44
|
+
var _a;
|
|
45
|
+
const country = addressCore.getAddressState().country ?? "";
|
|
46
|
+
if (!ALLOWED_COUNTRIES.includes(country))
|
|
47
|
+
return;
|
|
48
|
+
const address = addressCore.getAddressState();
|
|
49
|
+
form.address = address;
|
|
50
|
+
setForm(form);
|
|
51
|
+
(_a = addressFieldRef.current) == null ? void 0 : _a.update(address);
|
|
52
|
+
validateFormSilently();
|
|
53
|
+
},
|
|
54
|
+
updateEmail: () => {
|
|
55
|
+
var _a;
|
|
56
|
+
if (!(fieldStatus == null ? void 0 : fieldStatus.email.show))
|
|
57
|
+
return;
|
|
58
|
+
form.email = emailState.email;
|
|
59
|
+
setForm(form);
|
|
60
|
+
(_a = emailFieldRef.current) == null ? void 0 : _a.update(emailState.email);
|
|
61
|
+
validateFormSilently();
|
|
62
|
+
},
|
|
63
|
+
payment: () => {
|
|
64
|
+
hidePaymentButton && onSubmit();
|
|
65
|
+
}
|
|
66
|
+
}));
|
|
67
|
+
const { i18n, sessionReady, disabled } = usePayState(session, props.core);
|
|
68
|
+
y(() => {
|
|
69
|
+
if (!sessionReady)
|
|
70
|
+
return;
|
|
71
|
+
const { country, bill = {} } = (session == null ? void 0 : session.checkout) || {};
|
|
72
|
+
country && addressCore.setCountry(country);
|
|
73
|
+
form.email = bill.email ?? "";
|
|
74
|
+
if (!ALLOWED_COUNTRIES.includes(country ?? ""))
|
|
75
|
+
return;
|
|
76
|
+
form.address.country = country;
|
|
77
|
+
}, [sessionReady]);
|
|
78
|
+
const {
|
|
79
|
+
isEnabled,
|
|
80
|
+
fieldStatus,
|
|
81
|
+
paymentButtonStatus,
|
|
82
|
+
setPaymentButtonStatus,
|
|
83
|
+
errorMessage,
|
|
84
|
+
setErrorMessage,
|
|
85
|
+
payment,
|
|
86
|
+
startRetry,
|
|
87
|
+
stopRetry,
|
|
88
|
+
getPaymentMethodContext
|
|
89
|
+
} = useBaseWallet(CURR_PAYMENT_METHOD, props, {
|
|
90
|
+
getFormData: () => ({ ...form }),
|
|
91
|
+
getExtraPaymentParams: () => ({
|
|
92
|
+
// 姓名走 payment.holderName,不映射 bill.firstName
|
|
93
|
+
payment: {
|
|
94
|
+
holderName: form.name
|
|
95
|
+
}
|
|
96
|
+
})
|
|
97
|
+
});
|
|
98
|
+
const emailState = createEmailCore();
|
|
99
|
+
const emailFieldRef = A(null);
|
|
100
|
+
const addressCore = core.getAddressCore();
|
|
101
|
+
const addressFieldRef = A(null);
|
|
102
|
+
const formRef = A(null);
|
|
103
|
+
const [form, setForm] = h({
|
|
104
|
+
email: "",
|
|
105
|
+
name: "",
|
|
106
|
+
address: { ...DEFAULT_ADDRESS }
|
|
107
|
+
});
|
|
108
|
+
const [validated, setValidated] = h(false);
|
|
109
|
+
const validateFormSilently = () => {
|
|
110
|
+
var _a;
|
|
111
|
+
(_a = formRef.current) == null ? void 0 : _a.validate(void 0, false).then(() => setValidated(true)).catch(() => setValidated(false));
|
|
112
|
+
};
|
|
113
|
+
const setFormRef = (dom) => {
|
|
114
|
+
formRef.current = dom;
|
|
115
|
+
dom && validateFormSilently();
|
|
116
|
+
};
|
|
117
|
+
y(() => validateFormSilently(), [form]);
|
|
118
|
+
const onSubmit = () => {
|
|
119
|
+
var _a;
|
|
120
|
+
setErrorMessage("");
|
|
121
|
+
(_a = formRef.current) == null ? void 0 : _a.validate(async (errors) => {
|
|
122
|
+
var _a2;
|
|
123
|
+
const submitResult = await ((_a2 = props.onSubmit) == null ? void 0 : _a2.call(props, errors, getPaymentMethodContext()));
|
|
124
|
+
if (submitResult === false)
|
|
125
|
+
return;
|
|
126
|
+
if (errors) {
|
|
127
|
+
setPaymentButtonStatus("unSubmit");
|
|
128
|
+
return;
|
|
129
|
+
}
|
|
130
|
+
setPaymentButtonStatus("loading");
|
|
131
|
+
await payment();
|
|
132
|
+
});
|
|
133
|
+
};
|
|
134
|
+
const Email = () => /* @__PURE__ */ u(b, { children: (fieldStatus == null ? void 0 : fieldStatus.email.show) && /* @__PURE__ */ u("div", { className: fieldClassNames, children: /* @__PURE__ */ u(
|
|
135
|
+
EmailField,
|
|
136
|
+
{
|
|
137
|
+
ref: emailFieldRef,
|
|
138
|
+
value: form.email,
|
|
139
|
+
disabled: (fieldStatus == null ? void 0 : fieldStatus.email.disabled) || disabled
|
|
140
|
+
}
|
|
141
|
+
) }) });
|
|
142
|
+
const Address = () => {
|
|
143
|
+
var _a;
|
|
144
|
+
const mode = (fieldStatus == null ? void 0 : fieldStatus.address.show) ? (_a = core.config._checkoutConfig) == null ? void 0 : _a.addressMode : "country";
|
|
145
|
+
return (
|
|
146
|
+
// 这里没有判断 fieldStatus?.address.show,因为 PayU 对国家有要求,直接用账单地址可能会失败
|
|
147
|
+
/* @__PURE__ */ u("div", { className: bem("address"), children: /* @__PURE__ */ u(
|
|
148
|
+
AddressField,
|
|
149
|
+
{
|
|
150
|
+
ref: addressFieldRef,
|
|
151
|
+
mode,
|
|
152
|
+
value: form.address,
|
|
153
|
+
allowedCountries: ALLOWED_COUNTRIES,
|
|
154
|
+
disabled,
|
|
155
|
+
onChange: (value) => setForm(Object.assign(form, { address: value }))
|
|
156
|
+
}
|
|
157
|
+
) })
|
|
158
|
+
);
|
|
159
|
+
};
|
|
160
|
+
const Button = () => /* @__PURE__ */ u(
|
|
161
|
+
PaymentButton,
|
|
162
|
+
{
|
|
163
|
+
className: bem("button"),
|
|
164
|
+
status: paymentButtonStatus,
|
|
165
|
+
disabled,
|
|
166
|
+
verified: validated,
|
|
167
|
+
onClick: onSubmit
|
|
168
|
+
}
|
|
169
|
+
);
|
|
170
|
+
const ErrorMessage = () => /* @__PURE__ */ u(b, { children: !!errorMessage && /* @__PURE__ */ u(Info, { content: errorMessage }) });
|
|
171
|
+
return /* @__PURE__ */ u(CoreContext.Provider, { value: { i18n, session, core }, children: isEnabled && i18n.ready.value && /* @__PURE__ */ u("div", { className: core.theme.className, children: [
|
|
172
|
+
showGuideCard && /* @__PURE__ */ u(GuideCard, { type: PaymentCategory.PAY_U }),
|
|
173
|
+
/* @__PURE__ */ u(Form, { form, ref: setFormRef, onFormChange: (form2) => setForm(form2), children: /* @__PURE__ */ u("div", { className: normalizedClass(COMMON_CLASS_NAME, bem()), children: [
|
|
174
|
+
Email(),
|
|
175
|
+
/* @__PURE__ */ u("div", { className: fieldClassNames, children: /* @__PURE__ */ u(NameField, { disabled }) }),
|
|
176
|
+
Address(),
|
|
177
|
+
/* @__PURE__ */ u("div", { className: bem("footer-wrapper"), children: [
|
|
178
|
+
ErrorMessage(),
|
|
179
|
+
!hidePaymentButton && Button()
|
|
180
|
+
] })
|
|
181
|
+
] }) })
|
|
182
|
+
] }) });
|
|
183
|
+
});
|
|
184
|
+
export {
|
|
185
|
+
PayU
|
|
186
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import "./PayU.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
import { w, F, y, A, h, u, b } from "../../../core.js";
|
|
2
|
+
import { useBEM } from "../../../hooks/useBEM.js";
|
|
3
|
+
import { CoreContext } from "../../../core/context.js";
|
|
4
|
+
import "../../../utils/card-brand/brands.js";
|
|
5
|
+
import "../../../utils/system-info/get-browser-info.js";
|
|
6
|
+
import { normalizedClass } from "../../../utils/format.js";
|
|
7
|
+
import { PaymentMethod, PaymentCategory, COMMON_CLASS_NAME } from "../../../constant.js";
|
|
8
|
+
import "../../../out/fraud-detection.js";
|
|
9
|
+
import { usePayState } from "../../../hooks/usePayState.js";
|
|
10
|
+
import { useBaseWallet } from "../../../hooks/useBaseWallet.js";
|
|
11
|
+
import "./satispay2.js";
|
|
12
|
+
import { GuideCard } from "../../GuideCard/index.js";
|
|
13
|
+
import "../../internal/Form/type.js";
|
|
14
|
+
import "../../internal/Form/context.js";
|
|
15
|
+
import "../../internal/Form/FormItem.js";
|
|
16
|
+
import { Form } from "../../internal/Form/Form.js";
|
|
17
|
+
import { createEmailCore, EmailField } from "../../EmailField/EmailField.js";
|
|
18
|
+
import { PaymentButton } from "../../PaymentButton/index.js";
|
|
19
|
+
import { Info } from "../../internal/Info/Info.js";
|
|
20
|
+
import { DEFAULT_ADDRESS, AddressField } from "../../AddressField/index.js";
|
|
21
|
+
const { bem } = useBEM("satispay");
|
|
22
|
+
const fieldClassNames = bem("field");
|
|
23
|
+
const CURR_PAYMENT_METHOD = PaymentMethod.SATISPAY;
|
|
24
|
+
const ALLOWED_COUNTRIES = [
|
|
25
|
+
"AT",
|
|
26
|
+
"BE",
|
|
27
|
+
"BG",
|
|
28
|
+
"HR",
|
|
29
|
+
"CY",
|
|
30
|
+
"CZ",
|
|
31
|
+
"DK",
|
|
32
|
+
"EE",
|
|
33
|
+
"FI",
|
|
34
|
+
"FR",
|
|
35
|
+
"DE",
|
|
36
|
+
"GR",
|
|
37
|
+
"HU",
|
|
38
|
+
"IS",
|
|
39
|
+
"IE",
|
|
40
|
+
"IT",
|
|
41
|
+
"LV",
|
|
42
|
+
"LI",
|
|
43
|
+
"LT",
|
|
44
|
+
"LU",
|
|
45
|
+
"MT",
|
|
46
|
+
"NL",
|
|
47
|
+
"NO",
|
|
48
|
+
"PL",
|
|
49
|
+
"PT",
|
|
50
|
+
"RO",
|
|
51
|
+
"SK",
|
|
52
|
+
"SI",
|
|
53
|
+
"ES",
|
|
54
|
+
"SE",
|
|
55
|
+
"GB",
|
|
56
|
+
"CH"
|
|
57
|
+
];
|
|
58
|
+
const Satispay = w((props, ref) => {
|
|
59
|
+
const { session, core, showGuideCard = true, hidePaymentButton = false } = props;
|
|
60
|
+
F(ref, () => ({
|
|
61
|
+
stopRetry: () => stopRetry(),
|
|
62
|
+
startRetry: (timeout) => startRetry(timeout),
|
|
63
|
+
updateAddress: () => {
|
|
64
|
+
var _a;
|
|
65
|
+
const country = addressCore.getAddressState().country ?? "";
|
|
66
|
+
if (!ALLOWED_COUNTRIES.includes(country))
|
|
67
|
+
return;
|
|
68
|
+
const address = addressCore.getAddressState();
|
|
69
|
+
form.address = address;
|
|
70
|
+
setForm(form);
|
|
71
|
+
(_a = addressFieldRef.current) == null ? void 0 : _a.update(address);
|
|
72
|
+
validateFormSilently();
|
|
73
|
+
},
|
|
74
|
+
updateEmail: () => {
|
|
75
|
+
var _a;
|
|
76
|
+
if (!(fieldStatus == null ? void 0 : fieldStatus.email.show))
|
|
77
|
+
return;
|
|
78
|
+
form.email = emailState.email;
|
|
79
|
+
setForm(form);
|
|
80
|
+
(_a = emailFieldRef.current) == null ? void 0 : _a.update(emailState.email);
|
|
81
|
+
validateFormSilently();
|
|
82
|
+
},
|
|
83
|
+
payment: () => {
|
|
84
|
+
hidePaymentButton && onSubmit();
|
|
85
|
+
}
|
|
86
|
+
}));
|
|
87
|
+
const { i18n, sessionReady, disabled } = usePayState(session, props.core);
|
|
88
|
+
y(() => {
|
|
89
|
+
if (!sessionReady)
|
|
90
|
+
return;
|
|
91
|
+
const { country, bill = {} } = (session == null ? void 0 : session.checkout) || {};
|
|
92
|
+
country && addressCore.setCountry(country);
|
|
93
|
+
form.email = bill.email ?? "";
|
|
94
|
+
if (!ALLOWED_COUNTRIES.includes(country ?? ""))
|
|
95
|
+
return;
|
|
96
|
+
form.address.country = country;
|
|
97
|
+
}, [sessionReady]);
|
|
98
|
+
const {
|
|
99
|
+
isEnabled,
|
|
100
|
+
fieldStatus,
|
|
101
|
+
paymentButtonStatus,
|
|
102
|
+
setPaymentButtonStatus,
|
|
103
|
+
errorMessage,
|
|
104
|
+
setErrorMessage,
|
|
105
|
+
payment,
|
|
106
|
+
startRetry,
|
|
107
|
+
stopRetry,
|
|
108
|
+
getPaymentMethodContext
|
|
109
|
+
} = useBaseWallet(CURR_PAYMENT_METHOD, props, {
|
|
110
|
+
getFormData: () => ({ ...form })
|
|
111
|
+
});
|
|
112
|
+
const emailState = createEmailCore();
|
|
113
|
+
const emailFieldRef = A(null);
|
|
114
|
+
const addressCore = core.getAddressCore();
|
|
115
|
+
const addressFieldRef = A(null);
|
|
116
|
+
const formRef = A(null);
|
|
117
|
+
const [form, setForm] = h({
|
|
118
|
+
email: "",
|
|
119
|
+
address: { ...DEFAULT_ADDRESS }
|
|
120
|
+
});
|
|
121
|
+
const [validated, setValidated] = h(false);
|
|
122
|
+
const validateFormSilently = () => {
|
|
123
|
+
var _a;
|
|
124
|
+
(_a = formRef.current) == null ? void 0 : _a.validate(void 0, false).then(() => setValidated(true)).catch(() => setValidated(false));
|
|
125
|
+
};
|
|
126
|
+
const setFormRef = (dom) => {
|
|
127
|
+
formRef.current = dom;
|
|
128
|
+
dom && validateFormSilently();
|
|
129
|
+
};
|
|
130
|
+
y(() => validateFormSilently(), [form]);
|
|
131
|
+
const onSubmit = () => {
|
|
132
|
+
var _a;
|
|
133
|
+
setErrorMessage("");
|
|
134
|
+
(_a = formRef.current) == null ? void 0 : _a.validate(async (errors) => {
|
|
135
|
+
var _a2;
|
|
136
|
+
const submitResult = await ((_a2 = props.onSubmit) == null ? void 0 : _a2.call(props, errors, getPaymentMethodContext()));
|
|
137
|
+
if (submitResult === false)
|
|
138
|
+
return;
|
|
139
|
+
if (errors) {
|
|
140
|
+
setPaymentButtonStatus("unSubmit");
|
|
141
|
+
return;
|
|
142
|
+
}
|
|
143
|
+
setPaymentButtonStatus("loading");
|
|
144
|
+
await payment();
|
|
145
|
+
});
|
|
146
|
+
};
|
|
147
|
+
const Email = () => /* @__PURE__ */ u(b, { children: (fieldStatus == null ? void 0 : fieldStatus.email.show) && /* @__PURE__ */ u("div", { className: fieldClassNames, children: /* @__PURE__ */ u(
|
|
148
|
+
EmailField,
|
|
149
|
+
{
|
|
150
|
+
ref: emailFieldRef,
|
|
151
|
+
value: form.email,
|
|
152
|
+
disabled: (fieldStatus == null ? void 0 : fieldStatus.email.disabled) || disabled
|
|
153
|
+
}
|
|
154
|
+
) }) });
|
|
155
|
+
const Address = () => {
|
|
156
|
+
var _a;
|
|
157
|
+
const mode = (fieldStatus == null ? void 0 : fieldStatus.address.show) ? (_a = core.config._checkoutConfig) == null ? void 0 : _a.addressMode : "country";
|
|
158
|
+
return (
|
|
159
|
+
// 这里没有判断 fieldStatus?.address.show,因为 Satispay 对国家有要求,直接用账单地址可能会失败
|
|
160
|
+
/* @__PURE__ */ u("div", { className: bem("address"), children: /* @__PURE__ */ u(
|
|
161
|
+
AddressField,
|
|
162
|
+
{
|
|
163
|
+
ref: addressFieldRef,
|
|
164
|
+
mode,
|
|
165
|
+
value: form.address,
|
|
166
|
+
allowedCountries: ALLOWED_COUNTRIES,
|
|
167
|
+
disabled,
|
|
168
|
+
onChange: (value) => setForm(Object.assign(form, { address: value }))
|
|
169
|
+
}
|
|
170
|
+
) })
|
|
171
|
+
);
|
|
172
|
+
};
|
|
173
|
+
const Button = () => /* @__PURE__ */ u(
|
|
174
|
+
PaymentButton,
|
|
175
|
+
{
|
|
176
|
+
className: bem("button"),
|
|
177
|
+
status: paymentButtonStatus,
|
|
178
|
+
disabled,
|
|
179
|
+
verified: validated,
|
|
180
|
+
onClick: onSubmit
|
|
181
|
+
}
|
|
182
|
+
);
|
|
183
|
+
const ErrorMessage = () => /* @__PURE__ */ u(b, { children: !!errorMessage && /* @__PURE__ */ u(Info, { content: errorMessage }) });
|
|
184
|
+
return /* @__PURE__ */ u(CoreContext.Provider, { value: { i18n, session, core }, children: isEnabled && i18n.ready.value && /* @__PURE__ */ u("div", { className: core.theme.className, children: [
|
|
185
|
+
showGuideCard && /* @__PURE__ */ u(GuideCard, { type: PaymentCategory.SATISPAY }),
|
|
186
|
+
/* @__PURE__ */ u(Form, { form, ref: setFormRef, onFormChange: (form2) => setForm(form2), children: /* @__PURE__ */ u("div", { className: normalizedClass(COMMON_CLASS_NAME, bem()), children: [
|
|
187
|
+
Email(),
|
|
188
|
+
Address(),
|
|
189
|
+
/* @__PURE__ */ u("div", { className: bem("footer-wrapper"), children: [
|
|
190
|
+
ErrorMessage(),
|
|
191
|
+
!hidePaymentButton && Button()
|
|
192
|
+
] })
|
|
193
|
+
] }) })
|
|
194
|
+
] }) });
|
|
195
|
+
});
|
|
196
|
+
export {
|
|
197
|
+
Satispay
|
|
198
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import "./Satispay.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|