pay-sdk-react
Version:
A cross-platform payment SDK for React, supporting Alipay, WeChat Pay, PayPal, Stripe, Payssion, and Airwallex, compatible with H5, PC, and App environments.
57 lines • 2 kB
JavaScript
import _extends from "@babel/runtime-corejs3/helpers/esm/extends";
import React, { memo } from 'react';
import { PaymentMethod } from '../shared';
import { PaypalButton } from '../Paypal';
import Stripe from '../Stripe';
import Airwallex from '../Airwallex';
import { PayssionButton } from '../Payssion';
import { MWechatButton } from '../MWeChat';
import Alipay from '../Alipay';
import Wechat from '../Wechat';
import MAlipay from '../MAlipay';
var PayButton = /*#__PURE__*/React.forwardRef(function (props, ref) {
if (props.payMethod === PaymentMethod.PaypalH5 || props.payMethod === PaymentMethod.PaypalPc) {
return /*#__PURE__*/React.createElement(PaypalButton, _extends({
ref: ref
}, props));
}
if (props.payMethod === PaymentMethod.StripeH5 || props.payMethod === PaymentMethod.StripePc) {
return /*#__PURE__*/React.createElement(Stripe.Button, _extends({
ref: ref
}, props));
}
if (props.payMethod === PaymentMethod.Airwallex) {
return /*#__PURE__*/React.createElement(Airwallex.Button, _extends({
ref: ref
}, props));
}
if (props.payMethod === PaymentMethod.Payssion) {
return /*#__PURE__*/React.createElement(PayssionButton, _extends({
ref: ref
}, props));
}
if (props.payMethod === PaymentMethod.WechatH5) {
return /*#__PURE__*/React.createElement(MWechatButton, _extends({
ref: ref
}, props));
}
if (props.payMethod === PaymentMethod.AlipayH5) {
return /*#__PURE__*/React.createElement(MAlipay.Button, _extends({
ref: ref
}, props));
}
if (props.payMethod === PaymentMethod.AlipayPc) {
return /*#__PURE__*/React.createElement(Alipay.Button, _extends({
ref: ref
}, props));
}
if (props.payMethod === PaymentMethod.WechatPc) {
return /*#__PURE__*/React.createElement(Wechat.Button, _extends({
ref: ref
}, props));
}
return null;
});
PayButton.displayName = 'PayButton';
export * from './interface';
export default /*#__PURE__*/memo(PayButton);