@alipay/ams-checkout 0.0.1747907034-dev.1 → 0.0.1747907034-dev.3
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/component/channel.d.ts +3 -1
- package/esm/component/channel.js +26 -62
- package/esm/config/index.d.ts +1 -1
- package/esm/config/index.js +1 -1
- package/esm/constant/easysafepay.d.ts +16 -0
- package/esm/constant/easysafepay.js +19 -0
- package/esm/constant/index.d.ts +4 -0
- package/esm/constant/index.js +4 -0
- package/esm/foundation/core/index.d.ts +3 -0
- package/esm/foundation/core/index.js +81 -29
- package/esm/foundation/index.d.ts +6 -0
- package/esm/foundation/product-processor/easysafepay/deps.d.ts +1 -1
- package/esm/foundation/product-processor/easysafepay/index.d.ts +2 -0
- package/esm/foundation/product-processor/easysafepay/index.js +238 -121
- package/esm/foundation/service/container/index.d.ts +1 -0
- package/esm/foundation/service/container/index.js +20 -2
- package/esm/foundation/utils/preload_helper.d.ts +2 -2
- package/esm/foundation/utils/preload_helper.js +8 -4
- package/esm/foundation/utils/web_app_url_utils.d.ts +71 -1
- package/esm/foundation/utils/web_app_url_utils.js +215 -8
- package/esm/index.js +1 -1
- package/esm/plugin/component/cashierApp.js +4 -4
- package/esm/plugin/component/channel.d.ts +3 -1
- package/esm/plugin/component/channel.js +10 -12
- package/esm/plugin/component/index.js +45 -42
- package/esm/types/index.d.ts +17 -0
- package/esm/types/index.js +6 -0
- package/package.json +3 -2
@@ -9,11 +9,13 @@ export type IChannelBehavior = {
|
|
9
9
|
type GetDoubleFaParams = {
|
10
10
|
instanceId: string;
|
11
11
|
paymentSessionData: string;
|
12
|
+
paymentSessionObj: IPaymentSessionMetaData;
|
12
13
|
locale: string;
|
13
14
|
paymentMethodType: string;
|
14
15
|
env: string;
|
15
16
|
sdkVersion: string;
|
17
|
+
notRedirectAfterComplete: boolean;
|
16
18
|
};
|
17
|
-
export declare function getChannelBehavior(paymentSessionMetaData?: IPaymentSessionMetaData): IChannelBehavior | undefined;
|
19
|
+
export declare function getChannelBehavior(notRedirectAfterComplete: boolean, paymentSessionMetaData?: IPaymentSessionMetaData): IChannelBehavior | undefined;
|
18
20
|
export declare function getDoubleFaUrl(params: GetDoubleFaParams): string;
|
19
21
|
export {};
|
package/esm/component/channel.js
CHANGED
@@ -1,62 +1,31 @@
|
|
1
|
-
|
1
|
+
import { getDoubleFaUrlFromSession } from "../foundation/utils/web_app_url_utils";
|
2
|
+
import { MODE } from "../constant/easysafepay";
|
3
|
+
export function getChannelBehavior(notRedirectAfterComplete, paymentSessionMetaData) {
|
2
4
|
var _paymentSessionMetaDa;
|
3
5
|
var allowSubmitPayCallAhead = false;
|
4
6
|
var allowClickOutsideClose = false;
|
5
7
|
var buildSubmitPayExtParams = undefined;
|
6
|
-
|
7
8
|
// EASYPAY
|
8
9
|
if ((paymentSessionMetaData === null || paymentSessionMetaData === void 0 || (_paymentSessionMetaDa = paymentSessionMetaData.paymentSessionConfig) === null || _paymentSessionMetaDa === void 0 ? void 0 : _paymentSessionMetaDa.productScene) === 'EASY_PAY') {
|
9
|
-
var _paymentSessionMetaDa2, _paymentSessionMetaDa3, _paymentSessionMetaDa4,
|
10
|
-
var
|
11
|
-
var
|
12
|
-
|
13
|
-
if (
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
var _paymentSessionMetaDa9;
|
27
|
-
if (isFirstTimeToPay) {
|
28
|
-
var _paymentSessionMetaDa7;
|
29
|
-
if (
|
30
|
-
// AlipayCN、TOSS
|
31
|
-
['ALIPAY_CN', 'BANKTRANSFER_QUICKPAY'].includes(paymentSessionMetaData === null || paymentSessionMetaData === void 0 || (_paymentSessionMetaDa7 = paymentSessionMetaData.paymentMethodInfoView) === null || _paymentSessionMetaDa7 === void 0 ? void 0 : _paymentSessionMetaDa7.paymentMethodType)) {
|
32
|
-
allowSubmitPayCallAhead = true;
|
33
|
-
} else {
|
34
|
-
allowSubmitPayCallAhead = false;
|
35
|
-
}
|
36
|
-
} else {
|
37
|
-
if (amountConfirmRequired) {
|
38
|
-
var _paymentSessionMetaDa8;
|
39
|
-
// TOSS
|
40
|
-
if (['BANKTRANSFER_QUICKPAY'].includes(paymentSessionMetaData === null || paymentSessionMetaData === void 0 || (_paymentSessionMetaDa8 = paymentSessionMetaData.paymentMethodInfoView) === null || _paymentSessionMetaDa8 === void 0 ? void 0 : _paymentSessionMetaDa8.paymentMethodType)) {
|
41
|
-
allowSubmitPayCallAhead = true;
|
42
|
-
} else {
|
43
|
-
allowSubmitPayCallAhead = false;
|
44
|
-
}
|
45
|
-
} else {
|
46
|
-
allowSubmitPayCallAhead = true;
|
47
|
-
}
|
48
|
-
}
|
49
|
-
|
50
|
-
// TOSS
|
51
|
-
if (['BANKTRANSFER_QUICKPAY'].includes(paymentSessionMetaData === null || paymentSessionMetaData === void 0 || (_paymentSessionMetaDa9 = paymentSessionMetaData.paymentMethodInfoView) === null || _paymentSessionMetaDa9 === void 0 ? void 0 : _paymentSessionMetaDa9.paymentMethodType)) {
|
52
|
-
allowClickOutsideClose = false;
|
53
|
-
buildSubmitPayExtParams = function buildSubmitPayExtParams(params) {
|
54
|
-
var callBackUrl = getDoubleFaUrl(params);
|
55
|
-
return {
|
56
|
-
callBackUrl: callBackUrl
|
57
|
-
};
|
10
|
+
var _paymentSessionMetaDa2, _paymentSessionMetaDa3, _paymentSessionMetaDa4, _paymentSessionMetaDa5;
|
11
|
+
var isFirstTimeToPay = !((_paymentSessionMetaDa2 = paymentSessionMetaData.action) !== null && _paymentSessionMetaDa2 !== void 0 && _paymentSessionMetaDa2.autoDebitWithToken);
|
12
|
+
var needAccountConfirmPage = (_paymentSessionMetaDa3 = paymentSessionMetaData.needAccountConfirmPage) !== null && _paymentSessionMetaDa3 !== void 0 ? _paymentSessionMetaDa3 : true;
|
13
|
+
var isTossPayment = (paymentSessionMetaData === null || paymentSessionMetaData === void 0 || (_paymentSessionMetaDa4 = paymentSessionMetaData.paymentSessionConfig) === null || _paymentSessionMetaDa4 === void 0 ? void 0 : _paymentSessionMetaDa4.productSceneVersion) === '2.0' && ['BANKTRANSFER_QUICKPAY'].includes(paymentSessionMetaData === null || paymentSessionMetaData === void 0 || (_paymentSessionMetaDa5 = paymentSessionMetaData.paymentMethodInfoView) === null || _paymentSessionMetaDa5 === void 0 ? void 0 : _paymentSessionMetaDa5.paymentMethodType);
|
14
|
+
if (isFirstTimeToPay) {
|
15
|
+
allowSubmitPayCallAhead = !needAccountConfirmPage;
|
16
|
+
} else {
|
17
|
+
// 如果是二次一定调用submitPay接口
|
18
|
+
allowSubmitPayCallAhead = true;
|
19
|
+
}
|
20
|
+
if (isTossPayment) {
|
21
|
+
allowClickOutsideClose = false;
|
22
|
+
buildSubmitPayExtParams = function buildSubmitPayExtParams(params) {
|
23
|
+
var callBackUrl = getDoubleFaUrl(params);
|
24
|
+
return {
|
25
|
+
callBackUrl: callBackUrl,
|
26
|
+
notRedirectAfterComplete: notRedirectAfterComplete
|
58
27
|
};
|
59
|
-
}
|
28
|
+
};
|
60
29
|
}
|
61
30
|
}
|
62
31
|
return {
|
@@ -70,18 +39,13 @@ export function getDoubleFaUrl(params) {
|
|
70
39
|
var instanceId = params.instanceId,
|
71
40
|
paymentMethodType = params.paymentMethodType,
|
72
41
|
paymentSessionData = params.paymentSessionData,
|
42
|
+
paymentSessionObj = params.paymentSessionObj,
|
73
43
|
locale = params.locale,
|
74
44
|
env = params.env,
|
75
|
-
sdkVersion = params.sdkVersion
|
45
|
+
sdkVersion = params.sdkVersion,
|
46
|
+
notRedirectAfterComplete = params.notRedirectAfterComplete;
|
76
47
|
var isLandscapeOrientation = false; // Web 不含横屏
|
77
48
|
|
78
|
-
var
|
79
|
-
|
80
|
-
dev: "http://page.alipay.net/page/antom-web-checkout/src/component-app/doubleFA/index.".concat(sdkVersion, ".html"),
|
81
|
-
sit: "http://page.test.alipay.net/page/antom-web-checkout/src/component-app/doubleFA/index.".concat(sdkVersion, ".html"),
|
82
|
-
pre: "https://pre.ac.alipay.com/page/antom-web-checkout/src/component-app/doubleFA/index.".concat(sdkVersion, ".html"),
|
83
|
-
prod: "https://ac.alipay.com/page/antom-web-checkout/src/component-app/doubleFA/index.".concat(sdkVersion, ".html")
|
84
|
-
};
|
85
|
-
var doubleFaBaseUrl = DOUBLE_FA_URL_MAPPING[env] || DOUBLE_FA_URL_MAPPING.prod;
|
86
|
-
return "".concat(doubleFaBaseUrl, "?scene=cashierResultPage&instanceId=").concat(instanceId, "&paymentSessionData=").concat(encodeURIComponent(paymentSessionData), "&isLandscape=").concat(isLandscapeOrientation ? 'true' : '', "&pmt=").concat(paymentMethodType, "&locale=").concat(locale, "&sdkVersion=").concat(sdkVersion);
|
49
|
+
var baseDoubleFaUrl = getDoubleFaUrlFromSession(paymentSessionObj, env);
|
50
|
+
return "".concat(baseDoubleFaUrl) + '?' + "scene=cashierResultPage" + '&' + "instanceId=".concat(instanceId) + '&' + "paymentSessionData=".concat(encodeURIComponent(paymentSessionData)) + '&' + "isLandscape=".concat(isLandscapeOrientation ? 'true' : '') + '&' + "pmt=".concat(paymentMethodType) + '&' + "locale=".concat(locale) + '&' + "sdkVersion=".concat(sdkVersion) + '&' + "mode=".concat(MODE.SDK) + '&' + "¬RedirectAfterComplete=".concat(notRedirectAfterComplete);
|
87
51
|
}
|
package/esm/config/index.d.ts
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
export declare const marmotMap: Record<string, string>;
|
2
2
|
export declare const marmotConfigMap: Record<string, string>;
|
3
|
-
export declare const
|
3
|
+
export declare const v2AppMarmotMap: Record<string, string>;
|
4
4
|
export declare const sdkVersion: string;
|
5
5
|
/**
|
6
6
|
* @description: 目前应用层分为v1和v2,会存在两个应用版本号不是同步发布的情况。所以需要把默认的应用版本号配置抽离出来。
|
package/esm/config/index.js
CHANGED
@@ -22,7 +22,7 @@ export var marmotConfigMap = {
|
|
22
22
|
light_sandbox: 'https://config.marmot-cloud.com/config/data/antom-sdk-config/en_US.json',
|
23
23
|
prod: 'https://config.marmot-cloud.com/config/data/antom-sdk-config/en_US.json'
|
24
24
|
};
|
25
|
-
export var
|
25
|
+
export var v2AppMarmotMap = {
|
26
26
|
dev: 'http://page.alipay.net/page/antom-web-checkout-v2',
|
27
27
|
sit: 'http://page.test.alipay.net/page/antom-web-checkout-v2',
|
28
28
|
pre: 'https://pre.ac.alipay.com/page/antom-web-checkout-v2',
|
@@ -0,0 +1,16 @@
|
|
1
|
+
/**
|
2
|
+
* ESP 构建产物page名称
|
3
|
+
*/
|
4
|
+
export declare enum ESP_PAGE_NAME {
|
5
|
+
API_PORTAL = "api-portal",
|
6
|
+
SDK_PORTAL = "sdk-portal",
|
7
|
+
DOUBLE_FA = "double-fa",
|
8
|
+
PRELOAD = "preload"
|
9
|
+
}
|
10
|
+
/**
|
11
|
+
* ESP集成模式
|
12
|
+
*/
|
13
|
+
export declare enum MODE {
|
14
|
+
SDK = "SDK",
|
15
|
+
API = "API"
|
16
|
+
}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
/**
|
2
|
+
* ESP 构建产物page名称
|
3
|
+
*/
|
4
|
+
export var ESP_PAGE_NAME = /*#__PURE__*/function (ESP_PAGE_NAME) {
|
5
|
+
ESP_PAGE_NAME["API_PORTAL"] = "api-portal";
|
6
|
+
ESP_PAGE_NAME["SDK_PORTAL"] = "sdk-portal";
|
7
|
+
ESP_PAGE_NAME["DOUBLE_FA"] = "double-fa";
|
8
|
+
ESP_PAGE_NAME["PRELOAD"] = "preload";
|
9
|
+
return ESP_PAGE_NAME;
|
10
|
+
}({});
|
11
|
+
|
12
|
+
/**
|
13
|
+
* ESP集成模式
|
14
|
+
*/
|
15
|
+
export var MODE = /*#__PURE__*/function (MODE) {
|
16
|
+
MODE["SDK"] = "SDK";
|
17
|
+
MODE["API"] = "API";
|
18
|
+
return MODE;
|
19
|
+
}({});
|
package/esm/constant/index.d.ts
CHANGED
@@ -219,6 +219,9 @@ export declare const EVENT: {
|
|
219
219
|
showToast: {
|
220
220
|
name: string;
|
221
221
|
};
|
222
|
+
getSdkVersion: {
|
223
|
+
name: string;
|
224
|
+
};
|
222
225
|
};
|
223
226
|
export declare const COMPONENT_CONTAINER_ID = "ams-component-container";
|
224
227
|
export declare const COMPONENT_SECTION_ID = "ams-component-section";
|
@@ -239,4 +242,5 @@ export declare const ANIMATION_TIME = 300;
|
|
239
242
|
export declare const TIMEOUT_WEB_APP_HEART_BEAT = 6000;
|
240
243
|
export declare const TIME_DELAY_SEND_HEART_BEAT = 1000;
|
241
244
|
export declare const closeImg = "https://cdn.marmot-cloud.com/storage/2023/5/18/1692a487-99b5-4314-9d6f-e9814bc1ca41.svg";
|
245
|
+
export declare const closeImgLight = "https://cdn.marmot-cloud.com/storage/2025/05/24/50891cd3-7a4a-47c0-b550-2e2ce6187c31.svg";
|
242
246
|
export declare const LOADINGIMG = "data:image/png;base64,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";
|
package/esm/constant/index.js
CHANGED
@@ -221,6 +221,9 @@ export var EVENT = {
|
|
221
221
|
},
|
222
222
|
showToast: {
|
223
223
|
name: 'showToast'
|
224
|
+
},
|
225
|
+
getSdkVersion: {
|
226
|
+
name: 'getSdkVersion'
|
224
227
|
}
|
225
228
|
};
|
226
229
|
export var COMPONENT_CONTAINER_ID = 'ams-component-container';
|
@@ -242,4 +245,5 @@ export var ANIMATION_TIME = 300;
|
|
242
245
|
export var TIMEOUT_WEB_APP_HEART_BEAT = 6000;
|
243
246
|
export var TIME_DELAY_SEND_HEART_BEAT = 1000;
|
244
247
|
export var closeImg = 'https://cdn.marmot-cloud.com/storage/2023/5/18/1692a487-99b5-4314-9d6f-e9814bc1ca41.svg';
|
248
|
+
export var closeImgLight = 'https://cdn.marmot-cloud.com/storage/2025/05/24/50891cd3-7a4a-47c0-b550-2e2ce6187c31.svg';
|
245
249
|
export var LOADINGIMG = 'data:image/png;base64,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';
|
@@ -13,7 +13,9 @@ export declare class AntomSDKCore {
|
|
13
13
|
private sdkMetaData;
|
14
14
|
private productProcessors;
|
15
15
|
private enablePopWindowEventCallback;
|
16
|
+
private eventLogging;
|
16
17
|
private status;
|
18
|
+
private logger;
|
17
19
|
constructor();
|
18
20
|
getStatus(): IElementStatus;
|
19
21
|
setStatus(status: any): void;
|
@@ -27,6 +29,7 @@ export declare class AntomSDKCore {
|
|
27
29
|
getPaymentContext(): PaymentContext;
|
28
30
|
destroy(): void;
|
29
31
|
private handleBehaviorRender;
|
32
|
+
private handleRemain;
|
30
33
|
private handleClose;
|
31
34
|
private cleanRender;
|
32
35
|
getInstanceId(): string;
|
@@ -15,14 +15,13 @@ import { cleanMockup, createMockup, createRetentionPopup, handleDeclareInfo, hid
|
|
15
15
|
import { insertStyleSheet } from "../../component/popupWindow.style";
|
16
16
|
import { sdkVersion } from "../../config";
|
17
17
|
import { COMPONENT_CLOSE_MASK_BLOCK_ID, EVENT, LOADING_ID } from "../../constant";
|
18
|
-
import { DisplayTypeEnum, eventCodeEnum } from "../../types";
|
18
|
+
import { DisplayTypeEnum, eventCodeEnum, EventLoggingEventId } from "../../types";
|
19
19
|
import { DisplayInfo, IElementStatus } from "../index";
|
20
20
|
import { ServiceProvider } from "../service";
|
21
21
|
import { getGrayscaleId } from "../utils/gray_scale_utils";
|
22
22
|
import { convertPaymentSession, getWebAppVersion, saveWebAppVersion } from "../utils/payment_context_utils";
|
23
23
|
import { redirect } from "../utils/redirect_utils";
|
24
24
|
import { parseWebAppMatchConfig } from "../utils/web_app_url_utils";
|
25
|
-
|
26
25
|
/**
|
27
26
|
* @author 谦彧 <zhangmian.zm@alipay.com>
|
28
27
|
* @date 2024/9/17
|
@@ -37,8 +36,11 @@ export var AntomSDKCore = /*#__PURE__*/function () {
|
|
37
36
|
_defineProperty(this, "sdkMetaData", void 0);
|
38
37
|
_defineProperty(this, "productProcessors", {});
|
39
38
|
_defineProperty(this, "enablePopWindowEventCallback", false);
|
39
|
+
_defineProperty(this, "eventLogging", void 0);
|
40
40
|
_defineProperty(this, "status", IElementStatus.UNINIT);
|
41
|
+
_defineProperty(this, "logger", void 0);
|
41
42
|
this.status = IElementStatus.INITING;
|
43
|
+
this.logger = ServiceProvider.getInstance(this.instanceId).getService('Log');
|
42
44
|
}
|
43
45
|
_createClass(AntomSDKCore, [{
|
44
46
|
key: "getStatus",
|
@@ -178,6 +180,29 @@ export var AntomSDKCore = /*#__PURE__*/function () {
|
|
178
180
|
return _ref2.apply(this, arguments);
|
179
181
|
};
|
180
182
|
}());
|
183
|
+
eventCenter.listen(EVENT.getSdkVersion.name, /*#__PURE__*/function () {
|
184
|
+
var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3(data, payload) {
|
185
|
+
var _payload$context3;
|
186
|
+
return _regeneratorRuntime().wrap(function _callee3$(_context3) {
|
187
|
+
while (1) switch (_context3.prev = _context3.next) {
|
188
|
+
case 0:
|
189
|
+
eventCenter.dispatchToApp({
|
190
|
+
event: 'appEventCallback',
|
191
|
+
eventCallbackId: (_payload$context3 = payload.context) === null || _payload$context3 === void 0 ? void 0 : _payload$context3.eventCallbackId,
|
192
|
+
data: {
|
193
|
+
version: sdkMetaData === null || sdkMetaData === void 0 ? void 0 : sdkMetaData.sdkVersion
|
194
|
+
}
|
195
|
+
});
|
196
|
+
case 1:
|
197
|
+
case "end":
|
198
|
+
return _context3.stop();
|
199
|
+
}
|
200
|
+
}, _callee3);
|
201
|
+
}));
|
202
|
+
return function (_x5, _x6) {
|
203
|
+
return _ref3.apply(this, arguments);
|
204
|
+
};
|
205
|
+
}());
|
181
206
|
eventCenter.listen(EVENT.destroy.name, function (data) {
|
182
207
|
_this.setStatus(IElementStatus.READY);
|
183
208
|
_this.destroy();
|
@@ -197,6 +222,7 @@ export var AntomSDKCore = /*#__PURE__*/function () {
|
|
197
222
|
eventCenter.listen(EVENT.declareEventCallbackInfo.name, function (data) {
|
198
223
|
if (data !== null && data !== void 0 && data.popWindowEventInfo) {
|
199
224
|
_this.enablePopWindowEventCallback = data.popWindowEventInfo.enableCallback;
|
225
|
+
_this.eventLogging = data.eventLogging;
|
200
226
|
}
|
201
227
|
});
|
202
228
|
|
@@ -208,14 +234,14 @@ export var AntomSDKCore = /*#__PURE__*/function () {
|
|
208
234
|
}, {
|
209
235
|
key: "startBizFlow",
|
210
236
|
value: function () {
|
211
|
-
var _startBizFlow = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function
|
237
|
+
var _startBizFlow = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4(options) {
|
212
238
|
var _this$paymentContext$, _this$paymentContext$2, _this$paymentContext$3;
|
213
239
|
var paymentSession, displayInfo, _convertPaymentSessio2, paymentSessionId, paymentSessionMetaData, mid, webAppMatchConfig, webAppVersion, productScene, paymentMethod, _this$bizFlowStartBeh, payload;
|
214
|
-
return _regeneratorRuntime().wrap(function
|
215
|
-
while (1) switch (
|
240
|
+
return _regeneratorRuntime().wrap(function _callee4$(_context4) {
|
241
|
+
while (1) switch (_context4.prev = _context4.next) {
|
216
242
|
case 0:
|
217
243
|
if (!(!options || !options.paymentSession)) {
|
218
|
-
|
244
|
+
_context4.next = 2;
|
219
245
|
break;
|
220
246
|
}
|
221
247
|
throw new Error('paymentSession is empty');
|
@@ -245,61 +271,61 @@ export var AntomSDKCore = /*#__PURE__*/function () {
|
|
245
271
|
// Invoke processor
|
246
272
|
productScene = (_this$paymentContext$2 = this.paymentContext.paymentSessionObj) === null || _this$paymentContext$2 === void 0 || (_this$paymentContext$2 = _this$paymentContext$2.paymentSessionConfig) === null || _this$paymentContext$2 === void 0 ? void 0 : _this$paymentContext$2.productScene;
|
247
273
|
paymentMethod = (_this$paymentContext$3 = this.paymentContext.paymentSessionObj) === null || _this$paymentContext$3 === void 0 || (_this$paymentContext$3 = _this$paymentContext$3.paymentMethodInfoView) === null || _this$paymentContext$3 === void 0 ? void 0 : _this$paymentContext$3.paymentMethodType;
|
248
|
-
|
274
|
+
_context4.prev = 14;
|
249
275
|
if (!this.productProcessors["".concat(productScene, "|").concat(paymentMethod)]) {
|
250
|
-
|
276
|
+
_context4.next = 21;
|
251
277
|
break;
|
252
278
|
}
|
253
|
-
|
279
|
+
_context4.next = 18;
|
254
280
|
return this.productProcessors["".concat(productScene, "|").concat(paymentMethod)].startBizFlow(this.paymentContext);
|
255
281
|
case 18:
|
256
|
-
this.bizFlowStartBehavior =
|
257
|
-
|
282
|
+
this.bizFlowStartBehavior = _context4.sent;
|
283
|
+
_context4.next = 25;
|
258
284
|
break;
|
259
285
|
case 21:
|
260
286
|
if (!this.productProcessors["".concat(productScene)]) {
|
261
|
-
|
287
|
+
_context4.next = 25;
|
262
288
|
break;
|
263
289
|
}
|
264
|
-
|
290
|
+
_context4.next = 24;
|
265
291
|
return this.productProcessors["".concat(productScene)].startBizFlow(this.paymentContext);
|
266
292
|
case 24:
|
267
|
-
this.bizFlowStartBehavior =
|
293
|
+
this.bizFlowStartBehavior = _context4.sent;
|
268
294
|
case 25:
|
269
|
-
|
295
|
+
_context4.next = 30;
|
270
296
|
break;
|
271
297
|
case 27:
|
272
|
-
|
273
|
-
|
274
|
-
console.error('Invoke processor failed',
|
298
|
+
_context4.prev = 27;
|
299
|
+
_context4.t0 = _context4["catch"](14);
|
300
|
+
console.error('Invoke processor failed', _context4.t0);
|
275
301
|
case 30:
|
276
302
|
if (!(!this.bizFlowStartBehavior || this.bizFlowStartBehavior.behaviorType === 'NONE' || !this.bizFlowStartBehavior.payload)) {
|
277
|
-
|
303
|
+
_context4.next = 32;
|
278
304
|
break;
|
279
305
|
}
|
280
|
-
return
|
306
|
+
return _context4.abrupt("return");
|
281
307
|
case 32:
|
282
308
|
if (!(this.bizFlowStartBehavior.behaviorType === 'RENDER')) {
|
283
|
-
|
309
|
+
_context4.next = 35;
|
284
310
|
break;
|
285
311
|
}
|
286
312
|
this.handleBehaviorRender();
|
287
|
-
return
|
313
|
+
return _context4.abrupt("return");
|
288
314
|
case 35:
|
289
315
|
if (!(this.bizFlowStartBehavior.behaviorType === 'REDIRECT')) {
|
290
|
-
|
316
|
+
_context4.next = 39;
|
291
317
|
break;
|
292
318
|
}
|
293
319
|
payload = (_this$bizFlowStartBeh = this.bizFlowStartBehavior) === null || _this$bizFlowStartBeh === void 0 ? void 0 : _this$bizFlowStartBeh.payload;
|
294
320
|
redirect(payload, this.instanceId);
|
295
|
-
return
|
321
|
+
return _context4.abrupt("return");
|
296
322
|
case 39:
|
297
323
|
case "end":
|
298
|
-
return
|
324
|
+
return _context4.stop();
|
299
325
|
}
|
300
|
-
},
|
326
|
+
}, _callee4, this, [[14, 27]]);
|
301
327
|
}));
|
302
|
-
function startBizFlow(
|
328
|
+
function startBizFlow(_x7) {
|
303
329
|
return _startBizFlow.apply(this, arguments);
|
304
330
|
}
|
305
331
|
return startBizFlow;
|
@@ -342,7 +368,7 @@ export var AntomSDKCore = /*#__PURE__*/function () {
|
|
342
368
|
showRetentionPopup();
|
343
369
|
return;
|
344
370
|
} else {
|
345
|
-
_this2.handleClose(isOnCloseEvent);
|
371
|
+
_this2.handleClose(isOnCloseEvent, 'behavior');
|
346
372
|
}
|
347
373
|
};
|
348
374
|
|
@@ -368,9 +394,10 @@ export var AntomSDKCore = /*#__PURE__*/function () {
|
|
368
394
|
if (displayType == DisplayTypeEnum.popup) {
|
369
395
|
createRetentionPopup(platform, function () {
|
370
396
|
hideRetentionPopup();
|
397
|
+
_this2.handleRemain();
|
371
398
|
}, function () {
|
372
399
|
hideRetentionPopup();
|
373
|
-
_this2.handleClose();
|
400
|
+
_this2.handleClose(false, 'retention');
|
374
401
|
});
|
375
402
|
createMockup({
|
376
403
|
platform: platform,
|
@@ -381,13 +408,38 @@ export var AntomSDKCore = /*#__PURE__*/function () {
|
|
381
408
|
return;
|
382
409
|
}
|
383
410
|
}
|
411
|
+
}, {
|
412
|
+
key: "handleRemain",
|
413
|
+
value: function handleRemain() {
|
414
|
+
if (this.eventLogging && this.eventLogging.enableLogging) {
|
415
|
+
this.logger.logInfo({
|
416
|
+
code: this.eventLogging.eventName
|
417
|
+
}, {
|
418
|
+
eventId: EventLoggingEventId.ContinuePaying,
|
419
|
+
eventName: this.eventLogging.eventName,
|
420
|
+
eventAlias: this.eventLogging.eventAlias,
|
421
|
+
userPath: this.eventLogging.userPath
|
422
|
+
});
|
423
|
+
}
|
424
|
+
}
|
384
425
|
}, {
|
385
426
|
key: "handleClose",
|
386
427
|
value: function handleClose() {
|
387
428
|
var isOnCloseEvent = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
429
|
+
var source = arguments.length > 1 ? arguments[1] : undefined;
|
388
430
|
var eventCenter = ServiceProvider.getInstance(this.instanceId).getService('EventCenter');
|
389
431
|
eventCenter.emit(EVENT.closeCallback.name, {});
|
390
432
|
if (this.enablePopWindowEventCallback && !isOnCloseEvent) {
|
433
|
+
if (this.eventLogging && this.eventLogging.enableLogging) {
|
434
|
+
this.logger.logInfo({
|
435
|
+
code: this.eventLogging.eventName
|
436
|
+
}, {
|
437
|
+
eventId: source === 'behavior' ? EventLoggingEventId.OnlyClose : EventLoggingEventId.LeaveAnyWay,
|
438
|
+
eventName: this.eventLogging.eventName,
|
439
|
+
eventAlias: this.eventLogging.eventAlias,
|
440
|
+
userPath: this.eventLogging.userPath
|
441
|
+
});
|
442
|
+
}
|
391
443
|
eventCenter.emit(EVENT.eventCallback.name, {
|
392
444
|
code: eventCodeEnum.SDK_PAYMENT_CANCEL,
|
393
445
|
result: {
|
@@ -76,6 +76,12 @@ export interface SDKMetaData {
|
|
76
76
|
webAppVersion: string;
|
77
77
|
greyscaleId?: number;
|
78
78
|
}
|
79
|
+
export interface EventLogging {
|
80
|
+
enableLogging: boolean;
|
81
|
+
eventName: string;
|
82
|
+
eventAlias: any;
|
83
|
+
userPath: string;
|
84
|
+
}
|
79
85
|
export interface InitContext {
|
80
86
|
initOptions: IoptionsParams;
|
81
87
|
sdkMetaData: SDKMetaData;
|
@@ -4,7 +4,7 @@ export type { BizFlowStartBehavior, PaymentContext, ProductProcessor, RedirectBe
|
|
4
4
|
export * as ChannelCustomize from '../../../component/channel';
|
5
5
|
export type { IChannelBehavior } from '../../../component/channel';
|
6
6
|
export { DisplayTypeEnum, PaymentMethodCategoryTypeEnum, ProductSceneEnum, RiskSdkInfoEnum } from '../../../types';
|
7
|
-
export type { CashierSdkActionQueryRequest, CashierSdkActionQueryResult, CashierSubmitPayRequest, CashierSubmitPayResult, IoptionsParams, } from '../../../types';
|
7
|
+
export type { CashierSdkActionQueryRequest, CashierSdkActionQueryResult, CashierSdkActionQuerySessionResult, CashierSubmitPayRequest, CashierSubmitPayResult, IoptionsParams, } from '../../../types';
|
8
8
|
export { isPC } from '../../../util';
|
9
9
|
export { getBackScheme } from '../../utils/redirect_utils';
|
10
10
|
export { isLocalMock } from '../../../util/mock';
|
@@ -7,6 +7,7 @@ export declare class EasySafePayProcessor implements ProductProcessor {
|
|
7
7
|
private eventCenter;
|
8
8
|
private instanceId;
|
9
9
|
private hostSign;
|
10
|
+
private allowQueryCall;
|
10
11
|
private allowSubmitPayCallAhead;
|
11
12
|
private channelBehavior?;
|
12
13
|
private SECURITY_SDK_INIT_TIMEOUT;
|
@@ -21,6 +22,7 @@ export declare class EasySafePayProcessor implements ProductProcessor {
|
|
21
22
|
* start waiting web launch, then send renderComponent event
|
22
23
|
* */
|
23
24
|
private sendRequestAndWaitWebLaunch;
|
25
|
+
private processQuery;
|
24
26
|
private processSubmitPay;
|
25
27
|
private acquireApdidToken;
|
26
28
|
private initSecuritySDK;
|