@alipay/ams-checkout 0.0.1735810732-dev.1 → 0.0.1737621505-dev.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/dist/umd/ams-checkout.min.js +1 -1
- package/esm/core/component/element/index.d.ts +2 -0
- package/esm/core/component/element/index.js +80 -10
- package/esm/plugin/component/channel.d.ts +20 -26
- package/esm/plugin/component/channel.js +390 -427
- package/esm/plugin/component/index.js +31 -13
- package/esm/types/index.d.ts +5 -1
- package/esm/types/index.js +2 -0
- package/esm/util/index.d.ts +2 -1
- package/esm/util/index.js +16 -1
- package/esm/util/versionCompare.d.ts +1 -1
- package/package.json +1 -1
@@ -20,6 +20,7 @@ export declare class ElementComponent {
|
|
20
20
|
private iframes;
|
21
21
|
private componentsCount;
|
22
22
|
private eventCallback;
|
23
|
+
private ApplePayService;
|
23
24
|
constructor(options: IElementOptions);
|
24
25
|
private createElement;
|
25
26
|
private createIframeSrc;
|
@@ -33,6 +34,7 @@ export declare class ElementComponent {
|
|
33
34
|
private mountAuth;
|
34
35
|
private mountAddress;
|
35
36
|
private mountPayment;
|
37
|
+
private initApplePaySdk;
|
36
38
|
mountErrorHandle(): void;
|
37
39
|
mount(renderOptions: AddressMountOptions, sdkSelector: string): AddressMountResult;
|
38
40
|
mount(renderOptions: PaymentMountOptions, sdkSelector: string): PaymentMountResult;
|
@@ -25,9 +25,10 @@ import { ElementAddressComponent } from "./components/address";
|
|
25
25
|
import { ElementAuthComponent } from "./components/auth";
|
26
26
|
import { ElementPaymentComponent } from "./components/payment";
|
27
27
|
// import { oneAccount, sdkAction, submitResult } from './mock';
|
28
|
+
import { ApplePaySdk, isSkipRenderPaymentMethod } from "../../../plugin/component/channel";
|
28
29
|
import { v4 as uuid } from 'uuid';
|
29
|
-
import { addressTheme, ELEMENT_ENVIRONMENT, ThemeType } from "./type";
|
30
30
|
import { LogConfig, Logger } from "../../../util/logger";
|
31
|
+
import { addressTheme, ELEMENT_ENVIRONMENT, ThemeType } from "./type";
|
31
32
|
var logger = new Logger(LogConfig, true);
|
32
33
|
var ElementProcessor = /*#__PURE__*/function () {
|
33
34
|
function ElementProcessor(options) {
|
@@ -149,8 +150,6 @@ var ElementProcessor = /*#__PURE__*/function () {
|
|
149
150
|
return ElementProcessor;
|
150
151
|
}();
|
151
152
|
export var ElementComponent = /*#__PURE__*/function () {
|
152
|
-
// address事件回调
|
153
|
-
|
154
153
|
function ElementComponent(options) {
|
155
154
|
var _this4 = this;
|
156
155
|
_classCallCheck(this, ElementComponent);
|
@@ -191,6 +190,9 @@ export var ElementComponent = /*#__PURE__*/function () {
|
|
191
190
|
_defineProperty(this, "componentsCount", void 0);
|
192
191
|
// mount 渲染了多少个element
|
193
192
|
_defineProperty(this, "eventCallback", void 0);
|
193
|
+
// address事件回调
|
194
|
+
// apple pay
|
195
|
+
_defineProperty(this, "ApplePayService", void 0);
|
194
196
|
// 渲染地址组件
|
195
197
|
_defineProperty(this, "mountAddress", function (renderOptions, sdkSelector) {
|
196
198
|
var _renderOptions$appear, _this4$_options;
|
@@ -232,6 +234,7 @@ export var ElementComponent = /*#__PURE__*/function () {
|
|
232
234
|
}
|
233
235
|
};
|
234
236
|
_this4.mountOptions[ElementPaymentMethod.PAYMENT_ELEMENT] = _mountParams;
|
237
|
+
_this4.initApplePaySdk();
|
235
238
|
_this4.paymentBase.mount(_this4._options.sessionData, _objectSpread({
|
236
239
|
selector: sdkSelector,
|
237
240
|
elementProps: renderOptions.elementProps
|
@@ -590,6 +593,27 @@ export var ElementComponent = /*#__PURE__*/function () {
|
|
590
593
|
this.eventService.listen(ElementPaymentEvent.LOG, function (result) {
|
591
594
|
console.log('antom sdk 组件日志回调');
|
592
595
|
});
|
596
|
+
this.eventService.listen(ElementPaymentEvent.HANDLE_PAYMENT, function (result) {
|
597
|
+
if ((result === null || result === void 0 ? void 0 : result.paymentMethodType) === 'APPLEPAY') {
|
598
|
+
_this6.ApplePayService.begin().then(function (res) {
|
599
|
+
_this6.onAfterSubmitFunc(ElementPaymentMethod.PAYMENT_ELEMENT, {
|
600
|
+
submitPayData: res || {
|
601
|
+
success: false,
|
602
|
+
errorCode: "LOGIN",
|
603
|
+
errorMessage: ""
|
604
|
+
}
|
605
|
+
});
|
606
|
+
}).catch(function (e) {
|
607
|
+
_this6.onAfterSubmitFunc(ElementPaymentMethod.PAYMENT_ELEMENT, {
|
608
|
+
submitPayData: {},
|
609
|
+
errorInfo: {
|
610
|
+
hasError: true,
|
611
|
+
errorCode: e === null || e === void 0 ? void 0 : e.errorCode
|
612
|
+
}
|
613
|
+
});
|
614
|
+
});
|
615
|
+
}
|
616
|
+
});
|
593
617
|
}
|
594
618
|
|
595
619
|
// launch消息处理
|
@@ -669,6 +693,7 @@ export var ElementComponent = /*#__PURE__*/function () {
|
|
669
693
|
this.eventService.unlisten(ElementPaymentEvent.CAPTURE_ASSET);
|
670
694
|
this.eventService.unlisten(ElementPaymentEvent.LAUNCH);
|
671
695
|
this.eventService.unlisten(ElementPaymentEvent.SIZE_CHANGE);
|
696
|
+
this.eventService.unlisten(ElementPaymentEvent.HANDLE_PAYMENT);
|
672
697
|
}
|
673
698
|
|
674
699
|
// 注册组件事件监听
|
@@ -707,6 +732,51 @@ export var ElementComponent = /*#__PURE__*/function () {
|
|
707
732
|
});
|
708
733
|
return {};
|
709
734
|
}
|
735
|
+
}, {
|
736
|
+
key: "initApplePaySdk",
|
737
|
+
value: function () {
|
738
|
+
var _initApplePaySdk = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
|
739
|
+
return _regeneratorRuntime().wrap(function _callee2$(_context2) {
|
740
|
+
while (1) switch (_context2.prev = _context2.next) {
|
741
|
+
case 0:
|
742
|
+
if (!isSkipRenderPaymentMethod(this.parseData)) {
|
743
|
+
_context2.next = 12;
|
744
|
+
break;
|
745
|
+
}
|
746
|
+
this.ApplePayService = new ApplePaySdk({
|
747
|
+
paymentSessionData: this.sessionData,
|
748
|
+
parseData: this.parseData,
|
749
|
+
logger: logger
|
750
|
+
});
|
751
|
+
_context2.prev = 2;
|
752
|
+
logger.logInfo({
|
753
|
+
title: 'a3753.b107385.c398110'
|
754
|
+
});
|
755
|
+
_context2.next = 6;
|
756
|
+
return this.ApplePayService.initApplePaySession();
|
757
|
+
case 6:
|
758
|
+
logger.logInfo({
|
759
|
+
title: 'a3753.b107385.c398112'
|
760
|
+
});
|
761
|
+
_context2.next = 12;
|
762
|
+
break;
|
763
|
+
case 9:
|
764
|
+
_context2.prev = 9;
|
765
|
+
_context2.t0 = _context2["catch"](2);
|
766
|
+
logger.logError({
|
767
|
+
title: 'a3753.b107385.c398111'
|
768
|
+
});
|
769
|
+
case 12:
|
770
|
+
case "end":
|
771
|
+
return _context2.stop();
|
772
|
+
}
|
773
|
+
}, _callee2, this, [[2, 9]]);
|
774
|
+
}));
|
775
|
+
function initApplePaySdk() {
|
776
|
+
return _initApplePaySdk.apply(this, arguments);
|
777
|
+
}
|
778
|
+
return initApplePaySdk;
|
779
|
+
}()
|
710
780
|
}, {
|
711
781
|
key: "mountErrorHandle",
|
712
782
|
value: function mountErrorHandle() {
|
@@ -791,29 +861,29 @@ export var ElementComponent = /*#__PURE__*/function () {
|
|
791
861
|
key: "submitPayment",
|
792
862
|
value: // 暴露出去的submit方法
|
793
863
|
function () {
|
794
|
-
var _submitPayment = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function
|
864
|
+
var _submitPayment = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
|
795
865
|
var _this$_options$loadin7, _this$_options$loadin10;
|
796
866
|
var _this$_options$loadin8, _this$_options$loadin9, _this$_options$loadin11, _this$_options$loadin12;
|
797
|
-
return _regeneratorRuntime().wrap(function
|
798
|
-
while (1) switch (
|
867
|
+
return _regeneratorRuntime().wrap(function _callee3$(_context3) {
|
868
|
+
while (1) switch (_context3.prev = _context3.next) {
|
799
869
|
case 0:
|
800
870
|
// this.onAfterSubmitFunc(ElementPaymentMethod.PAYMENT_ELEMENT, submitResult);
|
801
871
|
// return
|
802
872
|
if ((_this$_options$loadin7 = this._options.loading) !== null && _this$_options$loadin7 !== void 0 && _this$_options$loadin7.onStartLoading) {
|
803
873
|
(_this$_options$loadin8 = this._options.loading) === null || _this$_options$loadin8 === void 0 || (_this$_options$loadin9 = _this$_options$loadin8.onStartLoading) === null || _this$_options$loadin9 === void 0 || _this$_options$loadin9.call(_this$_options$loadin8);
|
804
874
|
}
|
805
|
-
|
875
|
+
_context3.next = 3;
|
806
876
|
return this.validatePromiseFuncs();
|
807
877
|
case 3:
|
808
878
|
if ((_this$_options$loadin10 = this._options.loading) !== null && _this$_options$loadin10 !== void 0 && _this$_options$loadin10.onEndLoading) {
|
809
879
|
(_this$_options$loadin11 = this._options.loading) === null || _this$_options$loadin11 === void 0 || (_this$_options$loadin12 = _this$_options$loadin11.onEndLoading) === null || _this$_options$loadin12 === void 0 || _this$_options$loadin12.call(_this$_options$loadin11);
|
810
880
|
}
|
811
|
-
return
|
881
|
+
return _context3.abrupt("return");
|
812
882
|
case 5:
|
813
883
|
case "end":
|
814
|
-
return
|
884
|
+
return _context3.stop();
|
815
885
|
}
|
816
|
-
},
|
886
|
+
}, _callee3, this);
|
817
887
|
}));
|
818
888
|
function submitPayment() {
|
819
889
|
return _submitPayment.apply(this, arguments);
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import {
|
1
|
+
import { type EventPayload, type IPaymentSessionMetaData } from '../../types';
|
2
2
|
import { Logger } from '../../util/logger';
|
3
3
|
export type IChannelBehavior = {
|
4
4
|
usePaymentSessionAsQueryResult: boolean;
|
@@ -19,43 +19,37 @@ type GetDoubleFaParams = {
|
|
19
19
|
export declare function getChannelBehavior(paymentSessionMetaData?: IPaymentSessionMetaData): IChannelBehavior | undefined;
|
20
20
|
export declare function getDoubleFaUrl(params: GetDoubleFaParams): string;
|
21
21
|
export declare const handleGooglePay: (data: EventPayload) => Promise<unknown>;
|
22
|
-
export declare class
|
22
|
+
export declare class ApplePaySdk {
|
23
23
|
private APPLESDKURL;
|
24
|
-
private
|
24
|
+
private session;
|
25
25
|
private paymentSessionData;
|
26
|
-
private
|
26
|
+
private parseData;
|
27
27
|
/**
|
28
28
|
* @description 支付状态,pending:支付中,normal:正常
|
29
29
|
*/
|
30
30
|
private paymentStatus;
|
31
|
-
/**
|
32
|
-
* @description paymentRequest
|
33
|
-
*/
|
34
|
-
private paymentRequest;
|
35
31
|
private logger;
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
sessionData: string;
|
40
|
-
paymentSessionMetaData: IPaymentSessionMetaData;
|
41
|
-
paymentMethod: IPaymentMethod;
|
32
|
+
constructor({ paymentSessionData, parseData, logger, }: {
|
33
|
+
paymentSessionData: string;
|
34
|
+
parseData: IPaymentSessionMetaData;
|
42
35
|
logger: Logger;
|
43
|
-
dispatchToApp: (payload: {
|
44
|
-
context: EventPayloadContext;
|
45
|
-
}) => void;
|
46
36
|
});
|
47
|
-
|
48
|
-
|
37
|
+
startPay(): Promise<unknown>;
|
38
|
+
begin(): Promise<unknown>;
|
49
39
|
private submitPay;
|
50
|
-
|
51
|
-
|
52
|
-
private
|
53
|
-
private isCanMakePayments;
|
54
|
-
private loadApplePaySdk;
|
55
|
-
private abortPaySession;
|
56
|
-
private addEventListener;
|
40
|
+
private setPayStatus;
|
41
|
+
initApplePaySession(): Promise<never>;
|
42
|
+
private abortSession;
|
57
43
|
private get initSessionParams();
|
58
44
|
private get isRequiredParameters();
|
45
|
+
private isCanMakePayments;
|
46
|
+
private loadApplePaySdk;
|
59
47
|
private get checkScriptIsLoaded();
|
48
|
+
/**
|
49
|
+
* @description 非标方案,sdk目前无法直接监听国内不支持弹窗的关闭操作
|
50
|
+
*/
|
51
|
+
private addEventListener;
|
52
|
+
private getDeviceId;
|
60
53
|
}
|
54
|
+
export declare const isSkipRenderPaymentMethod: (parseData: IPaymentSessionMetaData) => boolean;
|
61
55
|
export {};
|