@alipay/ams-checkout 0.0.1784542444-dev.2 → 0.0.1784542444-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/ams-checkout.js +3 -3
- package/dist/ams-checkout.min.js +1 -1
- package/dist/ams-checkout.min.js.map +1 -1
- package/esm/config/index.js +1 -1
- package/esm/core/component/element/modernElementController/index.js +43 -11
- package/esm/modern/tools.js +1 -1
- package/esm/util/logger.js +1 -1
- package/package.json +1 -1
package/esm/config/index.js
CHANGED
|
@@ -30,7 +30,7 @@ export var v2AppMarmotMap = {
|
|
|
30
30
|
light_sandbox: 'https://checkout.antom.com',
|
|
31
31
|
prod: 'https://checkout.antom.com'
|
|
32
32
|
};
|
|
33
|
-
export var sdkVersion = "0.0.1784542444-dev.
|
|
33
|
+
export var sdkVersion = "0.0.1784542444-dev.3";
|
|
34
34
|
|
|
35
35
|
/**
|
|
36
36
|
* @description: 目前应用层分为v1和v2,会存在两个应用版本号不是同步发布的情况。所以需要把默认的应用版本号配置抽离出来。
|
|
@@ -33,6 +33,7 @@ import { openModal, sdkQuery, getLocaleFromRenderData, getDevReqConfig, getMetaD
|
|
|
33
33
|
import { device } from "../../../../util";
|
|
34
34
|
import { EventCallbackCode } from "../type";
|
|
35
35
|
import { adaptSubmitResult, adaptAppearance } from "./adapter";
|
|
36
|
+
import { safeParse } from "../util";
|
|
36
37
|
import { v4 as uuid } from 'uuid';
|
|
37
38
|
|
|
38
39
|
// ============================================================
|
|
@@ -43,18 +44,45 @@ import { v4 as uuid } from 'uuid';
|
|
|
43
44
|
// ============================================================
|
|
44
45
|
|
|
45
46
|
var TRACK_CODE_PREFIX = '7982';
|
|
47
|
+
|
|
48
|
+
// 缓存解析出的 merchantId,供埋点 helper 在任意阶段统一带上
|
|
49
|
+
var _merchantId = '';
|
|
46
50
|
var track = function track(phase, msg) {
|
|
47
51
|
var extra = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
48
52
|
try {
|
|
49
53
|
var code = "".concat(TRACK_CODE_PREFIX).concat(phase === 'error' ? '' : phase);
|
|
54
|
+
// LogItem 类型未暴露 merchant_id 字段,但运行时 tracker 会透传,
|
|
55
|
+
// 故用断言保留该字段名供下游埋点消费
|
|
50
56
|
sdkTracker.log(_objectSpread({
|
|
51
57
|
code: code,
|
|
52
|
-
msg: msg
|
|
58
|
+
msg: msg,
|
|
59
|
+
merchant_id: _merchantId
|
|
53
60
|
}, extra));
|
|
54
61
|
} catch (_unused) {
|
|
55
62
|
/* 埋点失败绝不影响主流程 */
|
|
56
63
|
}
|
|
57
64
|
};
|
|
65
|
+
|
|
66
|
+
/**
|
|
67
|
+
* 优先取 sessionData 解析出的 clientId;
|
|
68
|
+
* 缺失时从容错角度回落到 extendInfo 中的 merchantId(URL 编码需解码)。
|
|
69
|
+
* 全程容错:任一步骤缺失/解析失败都返回空串,绝不抛异常。
|
|
70
|
+
*/
|
|
71
|
+
var resolveMerchantId = function resolveMerchantId(parseData) {
|
|
72
|
+
if (parseData !== null && parseData !== void 0 && parseData.clientId) {
|
|
73
|
+
return parseData.clientId;
|
|
74
|
+
}
|
|
75
|
+
try {
|
|
76
|
+
var info = safeParse(parseData === null || parseData === void 0 ? void 0 : parseData.extendInfo, {});
|
|
77
|
+
var merchantId = info === null || info === void 0 ? void 0 : info.merchantId;
|
|
78
|
+
if (!merchantId || typeof merchantId !== 'string') {
|
|
79
|
+
return '';
|
|
80
|
+
}
|
|
81
|
+
return decodeURIComponent(merchantId);
|
|
82
|
+
} catch (_unused2) {
|
|
83
|
+
return '';
|
|
84
|
+
}
|
|
85
|
+
};
|
|
58
86
|
var trackMount = function trackMount(msg) {
|
|
59
87
|
var extra = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
60
88
|
return track('mount', msg, extra);
|
|
@@ -269,7 +297,7 @@ export var ModernElementController = /*#__PURE__*/function () {
|
|
|
269
297
|
if (iframeOrigin && iframeOrigin !== 'null') {
|
|
270
298
|
this.bridge.setOrigin(iframeOrigin);
|
|
271
299
|
}
|
|
272
|
-
} catch (
|
|
300
|
+
} catch (_unused3) {
|
|
273
301
|
// URL 解析失败时保持默认 origin
|
|
274
302
|
}
|
|
275
303
|
} else {
|
|
@@ -395,13 +423,17 @@ export var ModernElementController = /*#__PURE__*/function () {
|
|
|
395
423
|
this.notRedirectAfterComplete = renderOptions.notRedirectAfterComplete || false;
|
|
396
424
|
sessionData = this.options.sessionData; // checkSessionData 失败会 throw AntomSDKError(SESSION_DATA_INVALID),
|
|
397
425
|
// 冒泡到 mount 的 catch 由 mount_error 统一上报,此处无需额外处理
|
|
398
|
-
parseData = checkSessionData(sessionData, 'ELEMENT_PAYMENT'); //
|
|
426
|
+
parseData = checkSessionData(sessionData, 'ELEMENT_PAYMENT'); // 解析 merchantId(优先 clientId,缺失时容错回落到 extendInfo.merchantId),
|
|
427
|
+
// 缓存到模块级变量,使后续所有 trackXxx 埋点统一带上
|
|
428
|
+
_merchantId = resolveMerchantId(parseData);
|
|
429
|
+
|
|
430
|
+
// 初始化 request 全局配置,使 sdkQuery 能正确发起请求
|
|
399
431
|
// tracker: sdkTracker —— 接入 HTTP 层自动埋点(B 套),上报每个请求的成败/RTT/错误码
|
|
400
432
|
// 与 antom.ts 入口对齐;不传则 sdkQuery/submitPay/inquiry 等网络细节不可观测
|
|
401
433
|
request.setGlobalOptions({
|
|
402
434
|
hostSign: parseHostSign(sessionData),
|
|
403
435
|
env: this.options.environment,
|
|
404
|
-
sdkVersion: "0.0.1784542444-dev.
|
|
436
|
+
sdkVersion: "0.0.1784542444-dev.3" || '',
|
|
405
437
|
tracker: sdkTracker
|
|
406
438
|
});
|
|
407
439
|
isConnect = !!(parseData !== null && parseData !== void 0 && (_parseData$connectFac = parseData.connectFactor) !== null && _parseData$connectFac !== void 0 && _parseData$connectFac.enableConnect);
|
|
@@ -441,9 +473,9 @@ export var ModernElementController = /*#__PURE__*/function () {
|
|
|
441
473
|
});
|
|
442
474
|
});
|
|
443
475
|
queryPromise = Promise.all(promises);
|
|
444
|
-
_context2.next =
|
|
476
|
+
_context2.next = 17;
|
|
445
477
|
return Promise.race([queryPromise, destroyPromise]).finally(cancelDestroyCallback);
|
|
446
|
-
case
|
|
478
|
+
case 17:
|
|
447
479
|
_yield$Promise$race$f = _context2.sent;
|
|
448
480
|
_yield$Promise$race$f2 = _slicedToArray(_yield$Promise$race$f, 2);
|
|
449
481
|
sdkQueryResult = _yield$Promise$race$f2[0];
|
|
@@ -489,7 +521,7 @@ export var ModernElementController = /*#__PURE__*/function () {
|
|
|
489
521
|
paymentMethodCategoryType: paymentSessionConfig === null || paymentSessionConfig === void 0 ? void 0 : paymentSessionConfig.paymentMethodCategoryType,
|
|
490
522
|
productSceneVersion: paymentSessionConfig === null || paymentSessionConfig === void 0 ? void 0 : paymentSessionConfig.productSceneVersion,
|
|
491
523
|
trackId: parseTrackerId(sessionData),
|
|
492
|
-
merchantId:
|
|
524
|
+
merchantId: _merchantId,
|
|
493
525
|
paymentMethodType: parseData === null || parseData === void 0 || (_parseData$paymentMet = parseData.paymentMethodInfoView) === null || _parseData$paymentMet === void 0 ? void 0 : _parseData$paymentMet.paymentMethodType
|
|
494
526
|
},
|
|
495
527
|
// 原老字段
|
|
@@ -497,7 +529,7 @@ export var ModernElementController = /*#__PURE__*/function () {
|
|
|
497
529
|
// 新sdk字段
|
|
498
530
|
locale: locale,
|
|
499
531
|
// 新sdk字段
|
|
500
|
-
sdkVersion: "0.0.1784542444-dev.
|
|
532
|
+
sdkVersion: "0.0.1784542444-dev.3" || '',
|
|
501
533
|
// 新sdk字段
|
|
502
534
|
merchantId: (sdkQueryResult === null || sdkQueryResult === void 0 || (_sdkQueryResult$data = sdkQueryResult.data) === null || _sdkQueryResult$data === void 0 ? void 0 : _sdkQueryResult$data.merchantId) || '',
|
|
503
535
|
// 新sdk字段
|
|
@@ -507,7 +539,7 @@ export var ModernElementController = /*#__PURE__*/function () {
|
|
|
507
539
|
env: this.options.environment === 'sandbox' ? 'sandbox' : 'prod'
|
|
508
540
|
}, getDevReqConfig())
|
|
509
541
|
});
|
|
510
|
-
case
|
|
542
|
+
case 27:
|
|
511
543
|
case "end":
|
|
512
544
|
return _context2.stop();
|
|
513
545
|
}
|
|
@@ -1436,7 +1468,7 @@ export var ModernElementController = /*#__PURE__*/function () {
|
|
|
1436
1468
|
cleanups.forEach(function (fn) {
|
|
1437
1469
|
try {
|
|
1438
1470
|
fn();
|
|
1439
|
-
} catch (
|
|
1471
|
+
} catch (_unused5) {
|
|
1440
1472
|
/* ignore cleanup error */
|
|
1441
1473
|
}
|
|
1442
1474
|
});
|
|
@@ -1714,7 +1746,7 @@ export var ModernElementController = /*#__PURE__*/function () {
|
|
|
1714
1746
|
if (iframeOrigin && iframeOrigin !== 'null') {
|
|
1715
1747
|
modalBridge.setOrigin(iframeOrigin);
|
|
1716
1748
|
}
|
|
1717
|
-
} catch (
|
|
1749
|
+
} catch (_unused6) {
|
|
1718
1750
|
// URL 解析失败时保持默认 origin
|
|
1719
1751
|
}
|
|
1720
1752
|
// 如果 payload 有 appearance,通过 TRANSFER_MODAL_APPEARANCE 消息发送给 modal
|