@alipay/ams-checkout 1.37.0 → 1.38.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/umd/ams-checkout.min.js +1 -1
- package/esm/config/index.d.ts +7 -7
- package/esm/config/index.js +7 -7
- package/esm/constant/index.d.ts +15 -2
- package/esm/constant/index.js +17 -5
- package/esm/core/component/element/elementController/index.d.ts +1 -1
- package/esm/core/component/element/elementController/index.js +7 -6
- package/esm/core/component/element/index.d.ts +0 -1
- package/esm/core/component/element/index.js +3 -6
- package/esm/core/component/element/type.d.ts +3 -18
- package/esm/core/component/element/util.d.ts +9 -6
- package/esm/core/component/element/util.js +28 -29
- package/esm/core/component/oldElement/type.d.ts +3 -0
- package/esm/core/instance/index.js +1 -1
- package/esm/foundation/service/container/index.js +4 -4
- package/esm/foundation/utils/redirect_utils.js +34 -18
- package/esm/plugin/component/index.js +1 -1
- package/esm/types/index.d.ts +11 -1
- package/esm/types/index.js +2 -1
- package/esm/util/redirect.js +1 -1
- package/package.json +25 -3
package/esm/config/index.d.ts
CHANGED
@@ -5,10 +5,10 @@ export declare const sdkVersion: string;
|
|
5
5
|
/**
|
6
6
|
* @description: 目前应用层分为v1和v2,会存在两个应用版本号不是同步发布的情况。所以需要把默认的应用版本号配置抽离出来。
|
7
7
|
*/
|
8
|
-
export declare const AMSCheckoutAppVersion = "1.
|
9
|
-
export declare const AMSAutoDebitAppVersion = "1.
|
10
|
-
export declare const AMSEasyPayAppVersion = "1.
|
11
|
-
export declare const AMSCashierPaymentAppVersion = "1.
|
12
|
-
export declare const AMSVaultingAppVersion = "1.
|
13
|
-
export declare const AMSPaymentElementAppVersion = "1.
|
14
|
-
export declare const ADDRESSElementAppVersion = "1.
|
8
|
+
export declare const AMSCheckoutAppVersion = "1.38.0";
|
9
|
+
export declare const AMSAutoDebitAppVersion = "1.38.0";
|
10
|
+
export declare const AMSEasyPayAppVersion = "1.38.0";
|
11
|
+
export declare const AMSCashierPaymentAppVersion = "1.38.0";
|
12
|
+
export declare const AMSVaultingAppVersion = "1.38.0";
|
13
|
+
export declare const AMSPaymentElementAppVersion = "1.38.0";
|
14
|
+
export declare const ADDRESSElementAppVersion = "1.38.0";
|
package/esm/config/index.js
CHANGED
@@ -35,10 +35,10 @@ export var sdkVersion = json.version;
|
|
35
35
|
/**
|
36
36
|
* @description: 目前应用层分为v1和v2,会存在两个应用版本号不是同步发布的情况。所以需要把默认的应用版本号配置抽离出来。
|
37
37
|
*/
|
38
|
-
export var AMSCheckoutAppVersion = '1.
|
39
|
-
export var AMSAutoDebitAppVersion = '1.
|
40
|
-
export var AMSEasyPayAppVersion = '1.
|
41
|
-
export var AMSCashierPaymentAppVersion = '1.
|
42
|
-
export var AMSVaultingAppVersion = '1.
|
43
|
-
export var AMSPaymentElementAppVersion = '1.
|
44
|
-
export var ADDRESSElementAppVersion = '1.
|
38
|
+
export var AMSCheckoutAppVersion = '1.38.0'; // 兜底版本号
|
39
|
+
export var AMSAutoDebitAppVersion = '1.38.0'; // 代扣
|
40
|
+
export var AMSEasyPayAppVersion = '1.38.0'; // easypay
|
41
|
+
export var AMSCashierPaymentAppVersion = '1.38.0'; // 收银台(卡、apm)
|
42
|
+
export var AMSVaultingAppVersion = '1.38.0'; // 绑卡
|
43
|
+
export var AMSPaymentElementAppVersion = '1.38.0'; // payment element
|
44
|
+
export var ADDRESSElementAppVersion = '1.38.0'; // address element
|
package/esm/constant/index.d.ts
CHANGED
@@ -67,9 +67,9 @@ export declare const ERRORMESSAGE: {
|
|
67
67
|
message: string;
|
68
68
|
};
|
69
69
|
};
|
70
|
-
|
70
|
+
SDK_LAUNCH_PAYMENT_APP_ERROR: {
|
71
71
|
code: eventCodeEnum;
|
72
|
-
|
72
|
+
CALL_APP_URL_ERROR: {
|
73
73
|
code: eventCodeEnum;
|
74
74
|
message: string;
|
75
75
|
};
|
@@ -78,6 +78,16 @@ export declare const ERRORMESSAGE: {
|
|
78
78
|
code: eventCodeEnum;
|
79
79
|
message: string;
|
80
80
|
};
|
81
|
+
/**
|
82
|
+
@deprecated 已废弃 请使用SDK_LAUNCH_PAYMENT_APP_ERROR
|
83
|
+
*/
|
84
|
+
SDK_CALL_URL_ERROR: {
|
85
|
+
code: eventCodeEnum;
|
86
|
+
REDIRECT_ERROR: {
|
87
|
+
code: eventCodeEnum;
|
88
|
+
message: string;
|
89
|
+
};
|
90
|
+
};
|
81
91
|
};
|
82
92
|
export declare const BASEPLUGINID = "CHECKOUT";
|
83
93
|
export declare const COMPONENTPLUGINID = "COMPONENT";
|
@@ -165,6 +175,9 @@ export declare const EVENT: {
|
|
165
175
|
getGlobalData: {
|
166
176
|
name: string;
|
167
177
|
};
|
178
|
+
/**
|
179
|
+
* @deprecated 已废弃 请使用eventCallback
|
180
|
+
*/
|
168
181
|
sendMuitiAppEventToSdk: {
|
169
182
|
name: string;
|
170
183
|
};
|
package/esm/constant/index.js
CHANGED
@@ -67,16 +67,26 @@ export var ERRORMESSAGE = {
|
|
67
67
|
message: 'Load resource timeout'
|
68
68
|
}
|
69
69
|
},
|
70
|
+
SDK_LAUNCH_PAYMENT_APP_ERROR: {
|
71
|
+
code: eventCodeEnum.SDK_LAUNCH_PAYMENT_APP_ERROR,
|
72
|
+
CALL_APP_URL_ERROR: {
|
73
|
+
code: eventCodeEnum.SDK_LAUNCH_PAYMENT_APP_ERROR,
|
74
|
+
message: 'Failed to launch app'
|
75
|
+
}
|
76
|
+
},
|
77
|
+
SDK_SUBMIT_ERROR: {
|
78
|
+
code: eventCodeEnum.SDK_LAUNCH_PAYMENT_APP_ERROR,
|
79
|
+
message: 'Component not created or current browser compatibility issue, not supported'
|
80
|
+
},
|
81
|
+
/**
|
82
|
+
@deprecated 已废弃 请使用SDK_LAUNCH_PAYMENT_APP_ERROR
|
83
|
+
*/
|
70
84
|
SDK_CALL_URL_ERROR: {
|
71
85
|
code: eventCodeEnum.SDK_CALL_URL_ERROR,
|
72
86
|
REDIRECT_ERROR: {
|
73
87
|
code: eventCodeEnum.SDK_CALL_URL_ERROR,
|
74
88
|
message: 'Redirect data exception'
|
75
89
|
}
|
76
|
-
},
|
77
|
-
SDK_SUBMIT_ERROR: {
|
78
|
-
code: eventCodeEnum.SDK_CALL_URL_ERROR,
|
79
|
-
message: 'Component not created or current browser compatibility issue, not supported'
|
80
90
|
}
|
81
91
|
};
|
82
92
|
export var BASEPLUGINID = 'CHECKOUT';
|
@@ -166,7 +176,9 @@ export var EVENT = {
|
|
166
176
|
getGlobalData: {
|
167
177
|
name: 'getGlobalData'
|
168
178
|
},
|
169
|
-
|
179
|
+
/**
|
180
|
+
* @deprecated 已废弃 请使用eventCallback
|
181
|
+
*/
|
170
182
|
sendMuitiAppEventToSdk: {
|
171
183
|
name: 'sendMuitiAppEventToSdk'
|
172
184
|
},
|
@@ -12,7 +12,7 @@ declare class ElementController {
|
|
12
12
|
private initService;
|
13
13
|
private initElementProcessors;
|
14
14
|
private onEventCallback;
|
15
|
-
mount(renderOptions: LinkAuthMountOptions | AddressMountOptions | PaymentMountOptions, sdkSelector: string
|
15
|
+
mount(renderOptions: LinkAuthMountOptions | AddressMountOptions | PaymentMountOptions, sdkSelector: string): any;
|
16
16
|
private onValidateFunc;
|
17
17
|
submitPayment(): void;
|
18
18
|
private changeLoading;
|
@@ -20,7 +20,7 @@ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key i
|
|
20
20
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
21
21
|
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
22
22
|
import { cleanMockup, removeRetentionPopup } from "../../../../component/component.popup.style";
|
23
|
-
import { EVENT } from "../../../../constant";
|
23
|
+
import { ERRORMESSAGE, EVENT } from "../../../../constant";
|
24
24
|
import AddressProcessor from "../../../../core/component/element/elementProcessor/addressProcessor";
|
25
25
|
import AuthProcessor from "../../../../core/component/element/elementProcessor/authProcessor";
|
26
26
|
import PaymentProcessor from "../../../../core/component/element/elementProcessor/paymentProcessor";
|
@@ -108,7 +108,7 @@ var ElementController = /*#__PURE__*/function () {
|
|
108
108
|
}
|
109
109
|
}, {
|
110
110
|
key: "mount",
|
111
|
-
value: function mount(renderOptions, sdkSelector
|
111
|
+
value: function mount(renderOptions, sdkSelector) {
|
112
112
|
var _this = this;
|
113
113
|
return new Promise(function (resolve) {
|
114
114
|
var _checkCanMount = checkCanMount({
|
@@ -135,6 +135,7 @@ var ElementController = /*#__PURE__*/function () {
|
|
135
135
|
_this.initTimeout = null;
|
136
136
|
_this.changeLoading(false);
|
137
137
|
_this.setControllerStatusOrView(IElementStatus.READY);
|
138
|
+
_this.onEventCallback(ERRORMESSAGE.SDK_LAUNCH_PAYMENT_APP_ERROR.CALL_APP_URL_ERROR);
|
138
139
|
_this.elementContainerService.getContainerServices().forEach(function (value) {
|
139
140
|
value.getContainerElement().remove();
|
140
141
|
});
|
@@ -147,15 +148,14 @@ var ElementController = /*#__PURE__*/function () {
|
|
147
148
|
appendAliasContainerId: true
|
148
149
|
})
|
149
150
|
};
|
150
|
-
if (cashier && renderOptions.sessionData) {
|
151
|
-
startBizFlowData.paymentSession = renderOptions.sessionData;
|
152
|
-
}
|
153
151
|
_this.setControllerStatusOrView(IElementStatus.IN_BIZ_FLOW);
|
154
152
|
_this.elementContainer.startBizFlow(startBizFlowData).catch(function (error) {
|
155
153
|
_this.onEventCallback({
|
156
154
|
code: EventCallbackCode.SDK_CREATEPAYMENT_PARAMETER_ERROR,
|
157
155
|
message: (error === null || error === void 0 ? void 0 : error.message) || 'Initialization parameter exception.'
|
158
156
|
});
|
157
|
+
clearTimeout(_this.initTimeout);
|
158
|
+
_this.initTimeout = null;
|
159
159
|
_this.changeLoading(false);
|
160
160
|
return;
|
161
161
|
});
|
@@ -303,7 +303,8 @@ var ElementController = /*#__PURE__*/function () {
|
|
303
303
|
// }
|
304
304
|
});
|
305
305
|
this.serviceMap.EventCenter.listen(EVENT.redirect.name, function (data) {
|
306
|
-
|
306
|
+
var onEventCallback = _this4.onEventCallback.bind(_this4);
|
307
|
+
handleRedirect(data, false, onEventCallback);
|
307
308
|
});
|
308
309
|
this.serviceMap.EventCenter.listen(EVENT.destroy.name, function () {
|
309
310
|
_this4.setControllerStatusOrView(IElementStatus.READY);
|
@@ -7,7 +7,6 @@ export declare class ElementComponent {
|
|
7
7
|
mount(renderOptions: LinkAuthMountOptions, sdkSelector: string): LinkAuthMountResult;
|
8
8
|
mount(renderOptions: AddressMountOptions, sdkSelector: string): AddressMountResult;
|
9
9
|
mount(renderOptions: PaymentMountOptions, sdkSelector: string): PaymentMountResult;
|
10
|
-
mountCashier(renderOptions: any, sdkSelector: any): any;
|
11
10
|
submitPayment(): void;
|
12
11
|
destroy(): void;
|
13
12
|
}
|
@@ -11,12 +11,14 @@ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key i
|
|
11
11
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
12
12
|
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
13
13
|
import ElementController from "./elementController";
|
14
|
-
import { formatElementOption } from "./util";
|
14
|
+
import { formatElementOption, validateElementOption } from "./util";
|
15
15
|
export var ElementComponent = /*#__PURE__*/function () {
|
16
16
|
function ElementComponent(options) {
|
17
17
|
_classCallCheck(this, ElementComponent);
|
18
18
|
_defineProperty(this, "options", void 0);
|
19
19
|
_defineProperty(this, "controller", void 0);
|
20
|
+
var validate = validateElementOption(options);
|
21
|
+
if (!validate) return;
|
20
22
|
this.options = formatElementOption(options);
|
21
23
|
this.controller = new ElementController(options);
|
22
24
|
}
|
@@ -47,11 +49,6 @@ export var ElementComponent = /*#__PURE__*/function () {
|
|
47
49
|
appearance: this === null || this === void 0 || (_this$options = this.options) === null || _this$options === void 0 ? void 0 : _this$options.appearance
|
48
50
|
}, renderOptions), sdkSelector);
|
49
51
|
}
|
50
|
-
}, {
|
51
|
-
key: "mountCashier",
|
52
|
-
value: function mountCashier(renderOptions, sdkSelector) {
|
53
|
-
return this.controller.mount(renderOptions, sdkSelector, true);
|
54
|
-
}
|
55
52
|
}, {
|
56
53
|
key: "submitPayment",
|
57
54
|
value: function submitPayment() {
|
@@ -13,6 +13,9 @@ export declare enum ElementPaymentEvent {
|
|
13
13
|
SIZE_CHANGE = "onSizeChange",
|
14
14
|
LAUNCH = "onLaunch",
|
15
15
|
CALLBACK = "callback",
|
16
|
+
/**
|
17
|
+
* @deprecated 已废弃 请使用eventCallback
|
18
|
+
*/
|
16
19
|
SEND_MUITI_APP_EVENT_TO_SDK = "sendMuitiAppEventToSdk",
|
17
20
|
LOG = "log",
|
18
21
|
HANDLE_PAYMENT = "handlePayment"
|
@@ -62,23 +65,6 @@ export declare enum ELEMENT_ENVIRONMENT {
|
|
62
65
|
SANDBOX = "SANDBOX"
|
63
66
|
}
|
64
67
|
export type ELEMENT_ENVIRONMENT_TYPE = keyof typeof ELEMENT_ENVIRONMENT | (typeof ELEMENT_ENVIRONMENT)[keyof typeof ELEMENT_ENVIRONMENT];
|
65
|
-
export interface IElementOptions {
|
66
|
-
environment?: ELEMENT_ENVIRONMENT_TYPE;
|
67
|
-
locale?: string;
|
68
|
-
version?: string;
|
69
|
-
appearance?: {
|
70
|
-
theme: ThemeType.Default | ThemeType.Night;
|
71
|
-
};
|
72
|
-
onEventCallback?: ({ code, message, result }: {
|
73
|
-
code: EventCallbackCode;
|
74
|
-
message: string;
|
75
|
-
result?: any;
|
76
|
-
}) => void;
|
77
|
-
loading?: {
|
78
|
-
onStartLoading: () => void;
|
79
|
-
onEndLoading: () => void;
|
80
|
-
};
|
81
|
-
}
|
82
68
|
export interface AddressMountComponentsParams {
|
83
69
|
configParams?: AddressMountConfig;
|
84
70
|
prefillValue: Array<AddressSubmitData>;
|
@@ -95,7 +81,6 @@ export interface AddressMountComponentsParams {
|
|
95
81
|
}
|
96
82
|
interface BaseMountOptions<T = void> {
|
97
83
|
configParams?: T;
|
98
|
-
sessionData: string;
|
99
84
|
debugProps?: {
|
100
85
|
localLink: string;
|
101
86
|
};
|
@@ -1,16 +1,17 @@
|
|
1
1
|
import { IElementStatus } from '../../../foundation';
|
2
2
|
import { Ianalytics, IPaymentSessionMetaData } from '../../../types';
|
3
3
|
import { ContainerController } from './elementContainerService/containerService';
|
4
|
-
import { ELEMENT_ENVIRONMENT_TYPE, IElementOptions, IToastOptions } from './type';
|
5
|
-
declare const formatElementOption: (options: IElementOptions) => {
|
4
|
+
import { ELEMENT_ENVIRONMENT_TYPE, IElementOptions, IToastOptions, EventCallbackCode } from './type';
|
5
|
+
export declare const formatElementOption: (options: IElementOptions) => {
|
6
6
|
environment: ELEMENT_ENVIRONMENT_TYPE;
|
7
|
+
sessionData: string;
|
7
8
|
locale?: string;
|
8
9
|
version?: string;
|
9
10
|
appearance?: {
|
10
11
|
theme: import("./type").ThemeType.Default | import("./type").ThemeType.Night;
|
11
12
|
};
|
12
13
|
onEventCallback?: ({ code, message, result }: {
|
13
|
-
code:
|
14
|
+
code: EventCallbackCode;
|
14
15
|
message: string;
|
15
16
|
result?: any;
|
16
17
|
}) => void;
|
@@ -18,8 +19,8 @@ declare const formatElementOption: (options: IElementOptions) => {
|
|
18
19
|
onStartLoading: () => void;
|
19
20
|
onEndLoading: () => void;
|
20
21
|
};
|
21
|
-
sessionData: string;
|
22
22
|
};
|
23
|
+
export declare const validateElementOption: (options: IElementOptions) => boolean;
|
23
24
|
/**
|
24
25
|
* 校验渲染条件
|
25
26
|
* 校验当前sdkSelector结点是否存在
|
@@ -49,7 +50,10 @@ export declare function generateIframeSrc({ paymentSessionObj, paymentSession, i
|
|
49
50
|
appVersion: string;
|
50
51
|
link?: string;
|
51
52
|
}): string;
|
52
|
-
export declare function handleRedirect(data: any, fromFastSdk
|
53
|
+
export declare function handleRedirect(data: any, fromFastSdk: boolean, eventCallback: ({ code, message }: {
|
54
|
+
code: any;
|
55
|
+
message: any;
|
56
|
+
}) => void): void;
|
53
57
|
export declare function redirect(data: {
|
54
58
|
normalUrl?: string;
|
55
59
|
schemeUrl?: string;
|
@@ -63,4 +67,3 @@ export declare const isElementMobile: () => boolean;
|
|
63
67
|
*/
|
64
68
|
export declare const isElementPad: () => boolean;
|
65
69
|
export declare const isElementPC: () => boolean;
|
66
|
-
export { formatElementOption };
|
@@ -13,17 +13,28 @@ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e
|
|
13
13
|
import { ERRORMESSAGE } from "../../../constant";
|
14
14
|
import { IElementStatus } from "../../../foundation";
|
15
15
|
import { getIframeUrl } from "../../../plugin/component/cashierApp";
|
16
|
-
import { DisplayTypeEnum, RedirectType, TargetEnum, terminalTypeEnum } from "../../../types";
|
16
|
+
import { DisplayTypeEnum, eventCodeEnum, RedirectType, TargetEnum, terminalTypeEnum } from "../../../types";
|
17
17
|
import { device } from "../../../util/index";
|
18
18
|
import CallApp from "../../../util/intl-callapp/es/main";
|
19
19
|
import { getComponentSign, parseSessionData } from "../index";
|
20
|
-
import { ELEMENT_ENVIRONMENT } from "./type";
|
21
|
-
var formatElementOption = function formatElementOption(options) {
|
20
|
+
import { ELEMENT_ENVIRONMENT, EventCallbackCode } from "./type";
|
21
|
+
export var formatElementOption = function formatElementOption(options) {
|
22
22
|
var environment = options.environment;
|
23
23
|
return _objectSpread(_objectSpread({}, options), {}, {
|
24
24
|
environment: (environment || ELEMENT_ENVIRONMENT.PROD).toLocaleLowerCase()
|
25
25
|
});
|
26
26
|
};
|
27
|
+
export var validateElementOption = function validateElementOption(options) {
|
28
|
+
if (!options.sessionData) {
|
29
|
+
var _options$onEventCallb;
|
30
|
+
options === null || options === void 0 || (_options$onEventCallb = options.onEventCallback) === null || _options$onEventCallb === void 0 || _options$onEventCallb.call(options, {
|
31
|
+
code: EventCallbackCode.SDK_CREATE_COMPONENT_ERROR,
|
32
|
+
message: 'sessionData is empty'
|
33
|
+
});
|
34
|
+
return false;
|
35
|
+
}
|
36
|
+
return true;
|
37
|
+
};
|
27
38
|
|
28
39
|
/**
|
29
40
|
* 校验渲染条件
|
@@ -138,6 +149,7 @@ export function generateIframeSrc(_ref3) {
|
|
138
149
|
export function handleRedirect(data) {
|
139
150
|
var _data$isDestroy, _data$isCallApp, _data$callAppDetectSu;
|
140
151
|
var fromFastSdk = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
152
|
+
var eventCallback = arguments.length > 2 ? arguments[2] : undefined;
|
141
153
|
console.log('local payment sdk new element redirect arg ----', this);
|
142
154
|
var _data = typeof data === 'string' ? {
|
143
155
|
normalUrl: data
|
@@ -171,10 +183,10 @@ export function handleRedirect(data) {
|
|
171
183
|
// .send();
|
172
184
|
var successCallback = function successCallback(type, url, durationInSeconds) {
|
173
185
|
// TODO
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
186
|
+
eventCallback({
|
187
|
+
code: eventCodeEnum.SDK_CALL_URL_SUCCESS,
|
188
|
+
message: "Successfully opened the app,".concat(type, ": ").concat(url)
|
189
|
+
});
|
178
190
|
var extra = {
|
179
191
|
redirectInfo: JSON.stringify(_data),
|
180
192
|
openType: type,
|
@@ -194,10 +206,10 @@ export function handleRedirect(data) {
|
|
194
206
|
// .send();
|
195
207
|
};
|
196
208
|
var failCallback = function failCallback(type, url, durationInSeconds) {
|
197
|
-
|
198
|
-
|
199
|
-
|
200
|
-
|
209
|
+
eventCallback({
|
210
|
+
code: eventCodeEnum.SDK_LAUNCH_PAYMENT_APP_ERROR,
|
211
|
+
message: "Failed to open app,applinkUrl: ".concat(_data === null || _data === void 0 ? void 0 : _data.applinkUrl, " schemeUrl: ").concat(_data === null || _data === void 0 ? void 0 : _data.schemeUrl, " normalUrl: ").concat(_data === null || _data === void 0 ? void 0 : _data.normalUrl)
|
212
|
+
});
|
201
213
|
var extra = {
|
202
214
|
redirectInfo: JSON.stringify(_data),
|
203
215
|
openType: type,
|
@@ -253,21 +265,9 @@ export function handleRedirect(data) {
|
|
253
265
|
return;
|
254
266
|
}
|
255
267
|
redirect({
|
256
|
-
applinkUrl: _data === null || _data === void 0 ? void 0 : _data.applinkUrl
|
257
|
-
|
258
|
-
|
259
|
-
}).catch(function () {
|
260
|
-
if (_data !== null && _data !== void 0 && _data.applinkUrl) failCallback(RedirectType.ApplinkUrl, _data === null || _data === void 0 ? void 0 : _data.applinkUrl);
|
261
|
-
return redirect({
|
262
|
-
schemeUrl: _data === null || _data === void 0 ? void 0 : _data.schemeUrl
|
263
|
-
});
|
264
|
-
}).then(function () {
|
265
|
-
successCallback(RedirectType.SchemeUrl, _data === null || _data === void 0 ? void 0 : _data.schemeUrl);
|
266
|
-
}).catch(function () {
|
267
|
-
if (_data !== null && _data !== void 0 && _data.schemeUrl) failCallback(RedirectType.SchemeUrl, _data === null || _data === void 0 ? void 0 : _data.schemeUrl);
|
268
|
-
return redirect({
|
269
|
-
normalUrl: _data === null || _data === void 0 ? void 0 : _data.normalUrl
|
270
|
-
});
|
268
|
+
applinkUrl: _data === null || _data === void 0 ? void 0 : _data.applinkUrl,
|
269
|
+
schemeUrl: _data === null || _data === void 0 ? void 0 : _data.schemeUrl,
|
270
|
+
normalUrl: _data === null || _data === void 0 ? void 0 : _data.normalUrl
|
271
271
|
}).then(function () {
|
272
272
|
successCallback(RedirectType.NormalUrl, _data === null || _data === void 0 ? void 0 : _data.normalUrl);
|
273
273
|
}).catch(function () {
|
@@ -288,7 +288,7 @@ export function redirect(data) {
|
|
288
288
|
window.location.href = normalUrl;
|
289
289
|
return;
|
290
290
|
}
|
291
|
-
reject(ERRORMESSAGE.
|
291
|
+
reject(ERRORMESSAGE.SDK_LAUNCH_PAYMENT_APP_ERROR.CALL_APP_URL_ERROR);
|
292
292
|
};
|
293
293
|
var callAppFunc = function callAppFunc() {
|
294
294
|
if (!schemeUrl && !applinkUrl) {
|
@@ -474,5 +474,4 @@ export var isElementPad = function isElementPad() {
|
|
474
474
|
};
|
475
475
|
export var isElementPC = function isElementPC() {
|
476
476
|
return !isElementMobile();
|
477
|
-
};
|
478
|
-
export { formatElementOption };
|
477
|
+
};
|
@@ -10,6 +10,9 @@ export declare enum ElementPaymentEvent {
|
|
10
10
|
SIZE_CHANGE = "onSizeChange",
|
11
11
|
LAUNCH = "onLaunch",
|
12
12
|
CALLBACK = "callback",
|
13
|
+
/**
|
14
|
+
* @deprecated 已废弃 请使用eventCallback
|
15
|
+
*/
|
13
16
|
SEND_MUITI_APP_EVENT_TO_SDK = "sendMuitiAppEventToSdk",
|
14
17
|
LOG = "log",
|
15
18
|
HANDLE_PAYMENT = "handlePayment"
|
@@ -435,7 +435,7 @@ var AMSSDK = /*#__PURE__*/function () {
|
|
435
435
|
window.location.href = normalUrl;
|
436
436
|
return;
|
437
437
|
}
|
438
|
-
reject(ERRORMESSAGE.
|
438
|
+
reject(ERRORMESSAGE.SDK_LAUNCH_PAYMENT_APP_ERROR.CALL_APP_URL_ERROR);
|
439
439
|
};
|
440
440
|
var callAppFunc = function callAppFunc() {
|
441
441
|
if (!schemeUrl && !applinkUrl) {
|
@@ -216,7 +216,7 @@ export var ContainerService = /*#__PURE__*/function () {
|
|
216
216
|
_this.handleSizeChanged(_objectSpread({}, data));
|
217
217
|
});
|
218
218
|
this.eventCenter.listen(EVENT.showCloseButton.name, function (data) {
|
219
|
-
_this.handleCloseButtonTheme(data.
|
219
|
+
_this.handleCloseButtonTheme(data.style);
|
220
220
|
_this.changeCloseBtnVisibility(true);
|
221
221
|
});
|
222
222
|
this.eventCenter.listen(EVENT.hideCloseButton.name, function () {
|
@@ -407,12 +407,12 @@ export var ContainerService = /*#__PURE__*/function () {
|
|
407
407
|
}
|
408
408
|
}, {
|
409
409
|
key: "handleCloseButtonTheme",
|
410
|
-
value: function handleCloseButtonTheme(
|
411
|
-
if (!
|
410
|
+
value: function handleCloseButtonTheme(style) {
|
411
|
+
if (!style) return;
|
412
412
|
var closeBlock = document.getElementById(COMPONENT_CLOSE_BLOCK_ID);
|
413
413
|
var closeButtonImg = closeBlock === null || closeBlock === void 0 ? void 0 : closeBlock.querySelector('img');
|
414
414
|
var maskCloseBlock = document.getElementById(COMPONENT_CLOSE_MASK_BLOCK_ID);
|
415
|
-
if (
|
415
|
+
if (style === 'light') {
|
416
416
|
closeButtonImg === null || closeButtonImg === void 0 || closeButtonImg.setAttribute('src', closeImgLight);
|
417
417
|
closeBlock === null || closeBlock === void 0 || closeBlock.classList.add("".concat(COMPONENT_CLOSE_BLOCK_ID, "-light"));
|
418
418
|
maskCloseBlock === null || maskCloseBlock === void 0 || maskCloseBlock.classList.add("".concat(COMPONENT_CLOSE_MASK_BLOCK_ID, "-light"));
|
@@ -69,26 +69,42 @@ export var redirect = function redirect(payload, instanceId) {
|
|
69
69
|
successCallback(payload, type, evokeAppBy.url, serviceProvider);
|
70
70
|
}
|
71
71
|
});
|
72
|
+
var callApplinkUrl = function callApplinkUrl() {
|
73
|
+
try {
|
74
|
+
callAppLib.open({
|
75
|
+
link: payload.applinkUrl,
|
76
|
+
fallback: function fallback() {
|
77
|
+
failCallback(payload, RedirectType.ApplinkUrl, payload.applinkUrl, serviceProvider);
|
78
|
+
// Applink evoke failed, try to use scheme url
|
79
|
+
callSchemeUrl();
|
80
|
+
}
|
81
|
+
});
|
82
|
+
} catch (error) {
|
83
|
+
failCallback(payload, RedirectType.ApplinkUrl, payload.applinkUrl, serviceProvider);
|
84
|
+
// Applink evoke failed, try to use scheme url
|
85
|
+
callSchemeUrl();
|
86
|
+
}
|
87
|
+
};
|
72
88
|
var callSchemeUrl = function callSchemeUrl() {
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
89
|
+
try {
|
90
|
+
callAppLib.open({
|
91
|
+
scheme: payload.schemeUrl,
|
92
|
+
fallback: function fallback() {
|
93
|
+
failCallback(payload, RedirectType.SchemeUrl, payload.schemeUrl, serviceProvider);
|
94
|
+
if (!payload.url) return failCallback(payload, RedirectType.NormalUrl, '', serviceProvider);
|
95
|
+
successCallback(payload, RedirectType.NormalUrl, payload.url, serviceProvider);
|
96
|
+
window.location.href = payload.url;
|
97
|
+
}
|
98
|
+
});
|
99
|
+
} catch (error) {
|
100
|
+
failCallback(payload, RedirectType.SchemeUrl, payload.schemeUrl, serviceProvider);
|
101
|
+
if (!payload.url) return failCallback(payload, RedirectType.NormalUrl, '', serviceProvider);
|
102
|
+
successCallback(payload, RedirectType.NormalUrl, payload.url, serviceProvider);
|
103
|
+
window.location.href = payload.url;
|
104
|
+
}
|
82
105
|
};
|
83
106
|
if (payload.applinkUrl) {
|
84
|
-
|
85
|
-
link: payload.applinkUrl,
|
86
|
-
fallback: function fallback() {
|
87
|
-
failCallback(payload, RedirectType.ApplinkUrl, payload.applinkUrl, serviceProvider);
|
88
|
-
// Applink evoke failed, try to use scheme url
|
89
|
-
callSchemeUrl();
|
90
|
-
}
|
91
|
-
});
|
107
|
+
callApplinkUrl();
|
92
108
|
} else if (payload.schemeUrl) {
|
93
109
|
callSchemeUrl();
|
94
110
|
}
|
@@ -116,7 +132,7 @@ var successCallback = function successCallback(payload, type, url, serviceProvid
|
|
116
132
|
};
|
117
133
|
var failCallback = function failCallback(payload, type, url, serviceProvider) {
|
118
134
|
serviceProvider.getService('EventCenter').emit(EVENT.eventCallback.name, {
|
119
|
-
code: eventCodeEnum.
|
135
|
+
code: eventCodeEnum.SDK_LAUNCH_PAYMENT_APP_ERROR,
|
120
136
|
message: "Failed to open app,applinkUrl: ".concat(payload === null || payload === void 0 ? void 0 : payload.applinkUrl, " schemeUrl: ").concat(payload === null || payload === void 0 ? void 0 : payload.schemeUrl, " normalUrl: ").concat(payload === null || payload === void 0 ? void 0 : payload.url)
|
121
137
|
});
|
122
138
|
serviceProvider.getService('Log').logInfo({
|
@@ -1573,7 +1573,7 @@ var ComponentApp = /*#__PURE__*/function () {
|
|
1573
1573
|
};
|
1574
1574
|
var failCallback = function failCallback(type, url, durationInSeconds) {
|
1575
1575
|
_this8.dispatchToSDK(EVENT.eventCallback.name, {
|
1576
|
-
code: eventCodeEnum.
|
1576
|
+
code: eventCodeEnum.SDK_LAUNCH_PAYMENT_APP_ERROR,
|
1577
1577
|
message: "Failed to open app,applinkUrl: ".concat(_data === null || _data === void 0 ? void 0 : _data.applinkUrl, " schemeUrl: ").concat(_data === null || _data === void 0 ? void 0 : _data.schemeUrl, " normalUrl: ").concat(_data === null || _data === void 0 ? void 0 : _data.normalUrl)
|
1578
1578
|
});
|
1579
1579
|
var extra = {
|
package/esm/types/index.d.ts
CHANGED
@@ -641,8 +641,18 @@ export declare enum eventCodeEnum {
|
|
641
641
|
SDK_CREATEPAYMENT_PARAMETER_ERROR = "SDK_CREATEPAYMENT_PARAMETER_ERROR",
|
642
642
|
SDK_INIT_PARAMETER_ERROR = "SDK_INIT_PARAMETER_ERROR",
|
643
643
|
SDK_CREATECOMPONENT_ERROR = "SDK_CREATECOMPONENT_ERROR",
|
644
|
-
|
644
|
+
/**
|
645
|
+
* 拉取WEB应用&收银台失败
|
646
|
+
*/
|
647
|
+
SDK_LAUNCH_PAYMENT_APP_ERROR = "SDK_LAUNCH_PAYMENT_APP_ERROR",
|
648
|
+
/**
|
649
|
+
* 拉取WEB应用&收银台成功
|
650
|
+
*/
|
645
651
|
SDK_CALL_URL_SUCCESS = "SDK_CALL_URL_SUCCESS",
|
652
|
+
/**
|
653
|
+
@deprecated 已废弃 请使用SDK_LAUNCH_PAYMENT_APP_ERROR
|
654
|
+
*/
|
655
|
+
SDK_CALL_URL_ERROR = "SDK_CALL_URL_ERROR",
|
646
656
|
SDK_PAYMENT_SUCCESSFUL = "SDK_PAYMENT_SUCCESSFUL",
|
647
657
|
SDK_PAYMENT_FAIL = "SDK_PAYMENT_FAIL",
|
648
658
|
SDK_PAYMENT_ERROR = "SDK_PAYMENT_ERROR",
|
package/esm/types/index.js
CHANGED
@@ -182,8 +182,9 @@ export var eventCodeEnum = /*#__PURE__*/function (eventCodeEnum) {
|
|
182
182
|
eventCodeEnum["SDK_CREATEPAYMENT_PARAMETER_ERROR"] = "SDK_CREATEPAYMENT_PARAMETER_ERROR";
|
183
183
|
eventCodeEnum["SDK_INIT_PARAMETER_ERROR"] = "SDK_INIT_PARAMETER_ERROR";
|
184
184
|
eventCodeEnum["SDK_CREATECOMPONENT_ERROR"] = "SDK_CREATECOMPONENT_ERROR";
|
185
|
-
eventCodeEnum["
|
185
|
+
eventCodeEnum["SDK_LAUNCH_PAYMENT_APP_ERROR"] = "SDK_LAUNCH_PAYMENT_APP_ERROR";
|
186
186
|
eventCodeEnum["SDK_CALL_URL_SUCCESS"] = "SDK_CALL_URL_SUCCESS";
|
187
|
+
eventCodeEnum["SDK_CALL_URL_ERROR"] = "SDK_CALL_URL_ERROR";
|
187
188
|
eventCodeEnum["SDK_PAYMENT_SUCCESSFUL"] = "SDK_PAYMENT_SUCCESSFUL";
|
188
189
|
eventCodeEnum["SDK_PAYMENT_FAIL"] = "SDK_PAYMENT_FAIL";
|
189
190
|
eventCodeEnum["SDK_PAYMENT_ERROR"] = "SDK_PAYMENT_ERROR";
|
package/esm/util/redirect.js
CHANGED
@@ -16,7 +16,7 @@ export function redirect(data) {
|
|
16
16
|
window.location.href = normalUrl;
|
17
17
|
return;
|
18
18
|
}
|
19
|
-
reject(ERRORMESSAGE.
|
19
|
+
reject(ERRORMESSAGE.SDK_LAUNCH_PAYMENT_APP_ERROR.CALL_APP_URL_ERROR);
|
20
20
|
};
|
21
21
|
var callAppFunc = function callAppFunc() {
|
22
22
|
if (!schemeUrl && !applinkUrl) {
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@alipay/ams-checkout",
|
3
|
-
"version": "1.
|
3
|
+
"version": "1.38.0",
|
4
4
|
"description": "",
|
5
5
|
"author": "",
|
6
6
|
"main": "esm/index.js",
|
@@ -16,14 +16,32 @@
|
|
16
16
|
"scripts": {
|
17
17
|
"build": "father build",
|
18
18
|
"build:w": "father dev",
|
19
|
-
"dev": "father dev",
|
20
19
|
"ci": "npm run lint",
|
21
20
|
"cov": "jest --coverage",
|
21
|
+
"dev": "father dev",
|
22
22
|
"format": "prettier --write --no-error-on-unmatched-pattern \"**/*.{js,jsx,ts,tsx,md,json,css,less}\"",
|
23
23
|
"lint": "eslint ./src",
|
24
24
|
"test": "jest --silent",
|
25
25
|
"tsc": "tsc --noEmit"
|
26
26
|
},
|
27
|
+
"commitlint": {
|
28
|
+
"extends": [
|
29
|
+
"@commitlint/config-conventional"
|
30
|
+
]
|
31
|
+
},
|
32
|
+
"lint-staged": {
|
33
|
+
"*.{js,jsx}": [
|
34
|
+
"eslint --fix",
|
35
|
+
"prettier --write"
|
36
|
+
],
|
37
|
+
"*.{ts,tsx}": [
|
38
|
+
"eslint --fix",
|
39
|
+
"prettier --parser=typescript --write"
|
40
|
+
],
|
41
|
+
"*.{md,json}": [
|
42
|
+
"prettier --write"
|
43
|
+
]
|
44
|
+
},
|
27
45
|
"dependencies": {
|
28
46
|
"axios": "^1.3.4",
|
29
47
|
"uuid": "^9.0.0"
|
@@ -31,6 +49,8 @@
|
|
31
49
|
"devDependencies": {
|
32
50
|
"@babel/core": "^7.20.7",
|
33
51
|
"@babel/preset-env": "^7.20.2",
|
52
|
+
"@commitlint/cli": "^17.3.0",
|
53
|
+
"@commitlint/config-conventional": "^17.3.0",
|
34
54
|
"@testing-library/jest-dom": "^5.1.1",
|
35
55
|
"@testing-library/react": "^9.5.0",
|
36
56
|
"@types/jest": "^29.2.4",
|
@@ -52,7 +72,9 @@
|
|
52
72
|
"ts-node": "^10.9.1",
|
53
73
|
"typescript": "^4.9.5"
|
54
74
|
},
|
55
|
-
"engines": {
|
75
|
+
"engines": {
|
76
|
+
"install-node": "18"
|
77
|
+
},
|
56
78
|
"publishConfig": {
|
57
79
|
"access": "public"
|
58
80
|
}
|