@alipay/ams-checkout 1.34.0 → 1.36.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.
Files changed (43) hide show
  1. package/dist/umd/ams-checkout.min.js +1 -1
  2. package/esm/component/channel.d.ts +3 -1
  3. package/esm/component/channel.js +26 -62
  4. package/esm/config/index.d.ts +8 -8
  5. package/esm/config/index.js +8 -8
  6. package/esm/constant/easysafepay.d.ts +16 -0
  7. package/esm/constant/easysafepay.js +19 -0
  8. package/esm/constant/index.d.ts +4 -0
  9. package/esm/constant/index.js +4 -0
  10. package/esm/core/component/ckp/index.d.ts +2 -0
  11. package/esm/core/component/ckp/index.js +39 -5
  12. package/esm/core/component/element/elementContainerService/containerService.js +2 -2
  13. package/esm/core/component/element/elementController/index.js +15 -9
  14. package/esm/core/component/element/elementProcessor/baseElementProcessor.d.ts +3 -0
  15. package/esm/core/component/element/elementProcessor/baseElementProcessor.js +11 -0
  16. package/esm/core/component/element/elementProcessor/paymentProcessor.js +15 -8
  17. package/esm/core/component/element/index.js +6 -1
  18. package/esm/core/component/element/util.d.ts +6 -0
  19. package/esm/core/component/element/util.js +27 -0
  20. package/esm/core/instance/index.d.ts +1 -1
  21. package/esm/foundation/core/index.d.ts +3 -0
  22. package/esm/foundation/core/index.js +103 -37
  23. package/esm/foundation/index.d.ts +6 -0
  24. package/esm/foundation/product-processor/easysafepay/deps.d.ts +1 -1
  25. package/esm/foundation/product-processor/easysafepay/index.d.ts +2 -0
  26. package/esm/foundation/product-processor/easysafepay/index.js +244 -121
  27. package/esm/foundation/service/container/index.d.ts +1 -0
  28. package/esm/foundation/service/container/index.js +20 -2
  29. package/esm/foundation/utils/preload_helper.d.ts +2 -2
  30. package/esm/foundation/utils/preload_helper.js +8 -4
  31. package/esm/foundation/utils/web_app_url_utils.d.ts +71 -1
  32. package/esm/foundation/utils/web_app_url_utils.js +215 -8
  33. package/esm/index.js +1 -1
  34. package/esm/plugin/component/cashierApp.js +4 -4
  35. package/esm/plugin/component/channel.d.ts +3 -1
  36. package/esm/plugin/component/channel.js +10 -12
  37. package/esm/plugin/component/index.js +45 -42
  38. package/esm/plugin/type.d.ts +1 -1
  39. package/esm/types/index.d.ts +17 -0
  40. package/esm/types/index.js +6 -0
  41. package/esm/util/redirect.d.ts +6 -0
  42. package/esm/util/redirect.js +54 -0
  43. 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 {};
@@ -1,62 +1,31 @@
1
- export function getChannelBehavior(paymentSessionMetaData) {
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, _paymentSessionMetaDa6;
10
- var amountConfirmRequired = (_paymentSessionMetaDa2 = paymentSessionMetaData.action) === null || _paymentSessionMetaDa2 === void 0 ? void 0 : _paymentSessionMetaDa2.amountConfirmRequired;
11
- var isFirstTimeToPay = !((_paymentSessionMetaDa3 = paymentSessionMetaData.action) !== null && _paymentSessionMetaDa3 !== void 0 && _paymentSessionMetaDa3.autoDebitWithToken);
12
- // EASYPAY 1.0
13
- if ((paymentSessionMetaData === null || paymentSessionMetaData === void 0 || (_paymentSessionMetaDa4 = paymentSessionMetaData.paymentSessionConfig) === null || _paymentSessionMetaDa4 === void 0 ? void 0 : _paymentSessionMetaDa4.productSceneVersion) === '1.0') {
14
- var _paymentSessionMetaDa5;
15
- if (!isFirstTimeToPay && amountConfirmRequired) {
16
- allowSubmitPayCallAhead = false;
17
- } else {
18
- allowSubmitPayCallAhead = true;
19
- }
20
- if (
21
- // AlipayCN、TOSS
22
- ['ALIPAY_CN', 'BANKTRANSFER_QUICKPAY'].includes(paymentSessionMetaData === null || paymentSessionMetaData === void 0 || (_paymentSessionMetaDa5 = paymentSessionMetaData.paymentMethodInfoView) === null || _paymentSessionMetaDa5 === void 0 ? void 0 : _paymentSessionMetaDa5.paymentMethodType)) {
23
- allowSubmitPayCallAhead = true;
24
- }
25
- } else if ((paymentSessionMetaData === null || paymentSessionMetaData === void 0 || (_paymentSessionMetaDa6 = paymentSessionMetaData.paymentSessionConfig) === null || _paymentSessionMetaDa6 === void 0 ? void 0 : _paymentSessionMetaDa6.productSceneVersion) === '2.0') {
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 DOUBLE_FA_URL_MAPPING = {
79
- local: "http://page.alipay.net/page/antom-web-checkout/src/component-app/doubleFA/index.".concat(sdkVersion, ".html"),
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) + '&' + "&notRedirectAfterComplete=".concat(notRedirectAfterComplete);
87
51
  }
@@ -1,14 +1,14 @@
1
1
  export declare const marmotMap: Record<string, string>;
2
2
  export declare const marmotConfigMap: Record<string, string>;
3
- export declare const elementAppMarmotMap: Record<string, string>;
3
+ export declare const v2AppMarmotMap: Record<string, string>;
4
4
  export declare const sdkVersion: string;
5
5
  /**
6
6
  * @description: 目前应用层分为v1和v2,会存在两个应用版本号不是同步发布的情况。所以需要把默认的应用版本号配置抽离出来。
7
7
  */
8
- export declare const AMSCheckoutAppVersion = "1.34.0";
9
- export declare const AMSAutoDebitAppVersion = "1.34.0";
10
- export declare const AMSEasyPayAppVersion = "1.34.0";
11
- export declare const AMSCashierPaymentAppVersion = "1.34.0";
12
- export declare const AMSVaultingAppVersion = "1.34.0";
13
- export declare const AMSPaymentElementAppVersion = "1.34.0";
14
- export declare const ADDRESSElementAppVersion = "1.34.0";
8
+ export declare const AMSCheckoutAppVersion = "1.36.0";
9
+ export declare const AMSAutoDebitAppVersion = "1.36.0";
10
+ export declare const AMSEasyPayAppVersion = "1.36.0";
11
+ export declare const AMSCashierPaymentAppVersion = "1.36.0";
12
+ export declare const AMSVaultingAppVersion = "1.36.0";
13
+ export declare const AMSPaymentElementAppVersion = "1.36.0";
14
+ export declare const ADDRESSElementAppVersion = "1.36.0";
@@ -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 elementAppMarmotMap = {
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',
@@ -35,10 +35,10 @@ export var sdkVersion = json.version;
35
35
  /**
36
36
  * @description: 目前应用层分为v1和v2,会存在两个应用版本号不是同步发布的情况。所以需要把默认的应用版本号配置抽离出来。
37
37
  */
38
- export var AMSCheckoutAppVersion = '1.34.0'; // 兜底版本号
39
- export var AMSAutoDebitAppVersion = '1.34.0'; // 代扣
40
- export var AMSEasyPayAppVersion = '1.34.0'; // easypay
41
- export var AMSCashierPaymentAppVersion = '1.34.0'; // 收银台(卡、apm)
42
- export var AMSVaultingAppVersion = '1.34.0'; // 绑卡
43
- export var AMSPaymentElementAppVersion = '1.34.0'; // payment element
44
- export var ADDRESSElementAppVersion = '1.34.0'; // address element
38
+ export var AMSCheckoutAppVersion = '1.36.0'; // 兜底版本号
39
+ export var AMSAutoDebitAppVersion = '1.36.0'; // 代扣
40
+ export var AMSEasyPayAppVersion = '1.36.0'; // easypay
41
+ export var AMSCashierPaymentAppVersion = '1.36.0'; // 收银台(卡、apm)
42
+ export var AMSVaultingAppVersion = '1.36.0'; // 绑卡
43
+ export var AMSPaymentElementAppVersion = '1.36.0'; // payment element
44
+ export var ADDRESSElementAppVersion = '1.36.0'; // address element
@@ -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
+ }({});
@@ -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,iVBORw0KGgoAAAANSUhEUgAAAIQAAACEBAMAAACjap6UAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAJcEhZcwAAITgAACE4AUWWMWAAAAAqUExURUdwTKe3zKGxyK27z7K/05ytxLbD1bvH2Jaowb/K28DL3JCjvYueucDL2xLcxpgAAAAOdFJOUwCKoHRft0w5zCgY4fYKKSYvdQAABvtJREFUaN6lmt+LG1UUx6fddbcZHOgkpWutBTPbVBEfNp1xS6uF2oQURUGnBBbqw7YdsooV2ipZ06c+uBBZCistDRMUqgV1gnnwJ4HMg2jBh+Qh1bW1A/lfPOfcO9lkNz/m3j3dh2XT+eznfM+dmTvTKsroUovpeGotbyetlXuKTH17vFxeKq9R5fOJG8KAR6+Uy2vlJag8ALDmxSDa2TLWEhos5UPKnEA7sy8yALNYyod1/mpUwiYpQB9MYy1sJZWybwgRgLGGDLRAhg1ftn0qIqHBkijzefBO7HwKRN6cTJguNxoho38gjGHb7y5PTHJpvdyLgsaap3UBSdjISKWMCZlqzzTBosGj4CMJC+LEmh8/20+b62jRM+EGjIAQsLDnxhH+IQduUS7P50p1RQk85zgRwCIPhJTx9pjz6gIev84k1o59tfVJ7HIKw0iRRio5upX3GaGBjPMbg5/FjnOAYRvGC6MIU83mOkGAcHLnx7cxC8O2ETNqsofhcIgT2xja7WOmYRsp4+hwwt9NKErz1xG/ZJYRsE4PXRIX0GAdwxi5AGfjNrYCiGRnyMf/kgRgGmNm9ihl8DoyVAKOxzxfGrdy7vOZGPM7NfaiBDI+G38KXDK4yMKOj16lNiDKCVc3Nc47OTpkTRCjeWTi9SRMY3voHzZZ/TL5inKJAPHtS1TlhMZyhIszk4hvm+t/HPF5lEvjNyRhxAd7PuwziY0oCJV3cqz/hzPNph9ZQlG+hi6SRjze/wu/9/3oEnywycEVerhFFr9FvVldT5LFgb4Lvw8EEFmIipihiSSNLet9PjKaP0a/656Nx0FD37+1uFvNVstv3oqOeGgksZeDvXTWW8BoNgXu/VocS++trj1tHzppPRDZgVzHOON6uJh/gDag3hFBTCWpwrE+1/aB4AttyTRsIxnnYag+9uH/LLYZu5hM6nFdZ2HMYBdt/5YY4iEMBDxYGPvaGGd7WQwxCwpJna+MK+DQ9hui20pQgK9n6fuX29jJA1HENYxCpyuo2m7Bn/ZNUcQeGAnPcxpGCoxlUcSMToXbpqfaUH5beKOuoURcP4Nrkxr5SXyff5EscH2+hRbtv8QRXxBijgYilSbkSQhc4j5ZPC+O4HnCHooI7aviCJUhOjBTrJbMc1M41b2E+EMG8TohlvEkg/pTBnGNEAvK07IzhZsaIfYrXxLidxnEQ11P6OkjyhVC3JRBTOlpsDikvCa7LNjCSCfm4NqLtV8GMQsAPX1QeY8QZ2QQMR07sTjiqhQiARLpA/wU2ZBBqBiFbnKE1JsBDS0SCYWdZR0pBMWZ5gip1xNKGiuxK4RODGU3ZSagdocgC1NRMEmpNBWNLHQ4utORIygqKCS4hSRDJYKpaFCKJocAQjptYRCdrhwiZoJDelHROh30kDrZgZBIAAIY3a4UYgYApnlIUbpaFzAyiGkTLU5CI8CQs5iCRkzzFDTSBYaUxX2QMBMLChCgpBAfo4QJ18wOMWQQlwkBO6yuNIII5sYuECpD3OOIoCOzLKgUhghk8pwmwiKe9d16HRhSM4XC90ZavYsQ2YGcDi3qdYlrVjhTRQu6AVRH/FTPWGymkGe9XpdAQJoZQNBxQYAQ4U5uZzLgsagwi1oQ1ITzzJAFexes1RBSE+wkZlkQRYZtTDS0qIsiNqELgPBdBRxfr9UEw7idNSEMi//igDHEVoVFFovhKQfHQwltU2aylgUTCV84ajViCHVyxwSGZfWe6ALGEOkjQwSrs4UQ7WSTEU5sXX8YQkDjE7DIZDJ921UCeNGXRgwBINK312SdeJEDvWNlrWwme6L/SgqAarVWjaihZYEAUfS/4dVIwouqsZkFBjQysGcOPA/DiKahZqky5wZ/ShIRNUACB5IdfFOtQRSIiKIRy/La9ncDzLPqetUI4+B9vLG9P48sXG/iEp1lgGx2xzMMt3DdSQN1eBvndsbMCJ47oZW7WSdHiCGvXTBMtHDHtvI4yy1yQ4IHDbfquuMZMcfJMYmPhn3sIQE13JGTVaEJsHCGS6CGy6o0ykN1CrkcWjjDJVDDIwm34g69McUKSIDjnSHj4PNiEpWKWyoNWelewXEoCuhj5EPpEzeEVFa3L3X1bgHaKOQcjOOD0YFXqYtSCRkDEPW7ApbjMJExZ5LasyCIW8M9mBZ4FQLkHB7G2MfzJ3Q8eKyGtVIsFlcKvBwayfh/ldW8Ck4Va7USEorFAkEoi1zu3KQrEu+Ca6wwi54GpFmYeC6ruLRAgffCLVgv2EchwkuGgGVZWe15bElAL5FeUwSUBR1f5AQUESCQR2mVh1FkjfAkohJgLj1GEVtZIRFACP0fCm/AgmdREnzYqIRhFHkvq+J77MBFQpEPpCQOYPcntwIWeK6Mu0P9D9pzJq4u5hj+AAAAAElFTkSuQmCC";
@@ -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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';
@@ -7,6 +7,7 @@ export declare const getCKPPageAddress: (env: IoptionsParams['environment'] | LO
7
7
  export declare class AMSCheckoutPage {
8
8
  logger: Logger;
9
9
  private _instanceId;
10
+ private iframe;
10
11
  private originOptions;
11
12
  private readonly APP_IFRAME_ID;
12
13
  private eventListener?;
@@ -15,6 +16,7 @@ export declare class AMSCheckoutPage {
15
16
  private eventListenerWrapper;
16
17
  private addListener;
17
18
  private removeListener;
19
+ private dispatchToApp;
18
20
  /**
19
21
  * 挂载组件
20
22
  */
@@ -1,12 +1,15 @@
1
1
  function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
2
4
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
3
5
  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
4
6
  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
5
7
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
8
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
7
9
  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); }
10
+ import { redirect } from "../../../util/redirect";
8
11
  import { v4 as uuid } from 'uuid';
9
- import { EnvironmentEnum } from "../../../types";
12
+ import { EnvironmentEnum, MessageName } from "../../../types";
10
13
  import { queryParse } from "../../../util";
11
14
  import { LogConfig, Logger } from "../../../util/logger";
12
15
  var CKP_PAYMENT_PAGE_HOST = {
@@ -43,6 +46,7 @@ export var AMSCheckoutPage = /*#__PURE__*/function () {
43
46
  _classCallCheck(this, AMSCheckoutPage);
44
47
  _defineProperty(this, "logger", void 0);
45
48
  _defineProperty(this, "_instanceId", void 0);
49
+ _defineProperty(this, "iframe", void 0);
46
50
  _defineProperty(this, "originOptions", void 0);
47
51
  _defineProperty(this, "APP_IFRAME_ID", 'antom-checkout-page-sub-page-iframe');
48
52
  _defineProperty(this, "eventListener", void 0);
@@ -68,10 +72,16 @@ export var AMSCheckoutPage = /*#__PURE__*/function () {
68
72
  return url;
69
73
  });
70
74
  _defineProperty(this, "eventListenerWrapper", function (event) {
71
- var _ref = JSON.parse(event.data) || {},
72
- code = _ref.code,
73
- message = _ref.message,
74
- result = _ref.result;
75
+ var dataObj = JSON.parse(event.data) || {};
76
+ var code = dataObj.code,
77
+ message = dataObj.message,
78
+ result = dataObj.result;
79
+ var _ref = (dataObj === null || dataObj === void 0 ? void 0 : dataObj.context) || {
80
+ event: '',
81
+ data: {}
82
+ },
83
+ eventCode = _ref.event,
84
+ data = _ref.data;
75
85
  if (code && code.startsWith('SDK_PAYMENT')) {
76
86
  var _this$eventListener;
77
87
  console.log('[antom-web-sdk] <antom-checkout-page> eventListenerWrapper', event, message, result);
@@ -81,6 +91,20 @@ export var AMSCheckoutPage = /*#__PURE__*/function () {
81
91
  result: result
82
92
  });
83
93
  }
94
+ if (eventCode && eventCode !== null && eventCode !== void 0 && eventCode.startsWith('onRedirect')) {
95
+ var _this$eventListener2;
96
+ (_this$eventListener2 = _this.eventListener) === null || _this$eventListener2 === void 0 || _this$eventListener2.call(_this, {
97
+ code: code,
98
+ message: message,
99
+ result: result
100
+ });
101
+ redirect(data).then(function () {
102
+ var content = _objectSpread(_objectSpread({}, dataObj === null || dataObj === void 0 ? void 0 : dataObj.context), {}, {
103
+ event: 'appEventCallback'
104
+ });
105
+ _this.dispatchToApp(content);
106
+ });
107
+ }
84
108
  });
85
109
  _defineProperty(this, "addListener", function () {
86
110
  window.addEventListener('message', _this.eventListenerWrapper);
@@ -88,8 +112,17 @@ export var AMSCheckoutPage = /*#__PURE__*/function () {
88
112
  _defineProperty(this, "removeListener", function () {
89
113
  window.removeEventListener('message', _this.eventListenerWrapper);
90
114
  });
115
+ _defineProperty(this, "dispatchToApp", function (payloadContext) {
116
+ var _this$iframe;
117
+ var data = {
118
+ name: MessageName.SDK_TO_APP,
119
+ context: payloadContext
120
+ };
121
+ (_this$iframe = _this.iframe) === null || _this$iframe === void 0 || (_this$iframe = _this$iframe.contentWindow) === null || _this$iframe === void 0 || _this$iframe.postMessage(JSON.stringify(data), '*');
122
+ });
91
123
  options.environment = options.environment || EnvironmentEnum.prod;
92
124
  this._instanceId = uuid();
125
+ this.iframe = null;
93
126
  this.originOptions = options;
94
127
  this.eventListener = options.onEventCallback;
95
128
  this.logger = new Logger(LogConfig, ![EnvironmentEnum.prod, EnvironmentEnum.sandbox].includes(options === null || options === void 0 ? void 0 : options.environment));
@@ -142,6 +175,7 @@ export var AMSCheckoutPage = /*#__PURE__*/function () {
142
175
  if (wrapper) {
143
176
  wrapper.innerHTML = '';
144
177
  wrapper.appendChild(iframe);
178
+ this.iframe = iframe;
145
179
  } else {
146
180
  this.logger.logError({
147
181
  title: 'event_important_error',
@@ -7,7 +7,7 @@ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol"
7
7
  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); }
8
8
  import { EVENT } from "../../../../constant";
9
9
  import { ServiceProvider } from "./../../../../foundation/service";
10
- import { device } from "../../../../util";
10
+ import { isElementPC, isElementPad } from "../util";
11
11
  import { DisplayTypeEnum, PlatformEnum, ProductSceneEnum } from "./../../../../types";
12
12
  export var IContainerStatus = /*#__PURE__*/function (IContainerStatus) {
13
13
  IContainerStatus["UNINIT"] = "UNINIT";
@@ -43,7 +43,7 @@ export var ContainerController = /*#__PURE__*/function () {
43
43
  });
44
44
  this.containerElement = this.containerService.load({
45
45
  type: DisplayTypeEnum.inline,
46
- platform: device.isMobile ? PlatformEnum.mobile : PlatformEnum.desktop,
46
+ platform: isElementPad() ? PlatformEnum.desktop : isElementPC() ? PlatformEnum.desktop : PlatformEnum.mobile,
47
47
  isRetention: false,
48
48
  selector: selector,
49
49
  appendAliasContainerId: true,
@@ -19,14 +19,15 @@ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _d
19
19
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
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
+ import { cleanMockup, removeRetentionPopup } from "../../../../component/component.popup.style";
22
23
  import { EVENT } from "../../../../constant";
23
24
  import AddressProcessor from "../../../../core/component/element/elementProcessor/addressProcessor";
24
25
  import AuthProcessor from "../../../../core/component/element/elementProcessor/authProcessor";
25
26
  import PaymentProcessor from "../../../../core/component/element/elementProcessor/paymentProcessor";
26
27
  import { IElementStatus } from "../../../../foundation";
27
28
  import { AntomSDKCore } from "../../../../foundation/core";
29
+ import { destroyModal } from "../../../../component/popupWindow.style";
28
30
  import { ElementProcessor } from "../../../../foundation/product-processor/element";
29
- import { cleanMockup, removeRetentionPopup } from "../../../../component/component.popup.style";
30
31
  import { ProductSceneEnum } from "../../../../types";
31
32
  import { ElementContainerService } from "../elementContainerService"; // 引入 ElementContainerService
32
33
  import { IContainerStatus } from "../elementContainerService/containerService";
@@ -97,9 +98,10 @@ var ElementController = /*#__PURE__*/function () {
97
98
  }, {
98
99
  key: "onEventCallback",
99
100
  value: function onEventCallback(_ref) {
101
+ var _this$options, _this$options$onEvent;
100
102
  var code = _ref.code,
101
103
  message = _ref.message;
102
- this.options.onEventCallback({
104
+ this === null || this === void 0 || (_this$options = this.options) === null || _this$options === void 0 || (_this$options$onEvent = _this$options.onEventCallback) === null || _this$options$onEvent === void 0 || _this$options$onEvent.call(_this$options, {
103
105
  code: code,
104
106
  message: message
105
107
  });
@@ -320,6 +322,10 @@ var ElementController = /*#__PURE__*/function () {
320
322
  this.serviceMap.EventCenter.listen(EVENT.showToast.name, function (data) {
321
323
  showToast(data);
322
324
  });
325
+ this.serviceMap.EventCenter.listen(ElementPaymentEvent.SEND_MUITI_APP_EVENT_TO_SDK, function (result) {
326
+ var _this4$options$onEven, _this4$options;
327
+ (_this4$options$onEven = (_this4$options = _this4.options).onEventCallback) === null || _this4$options$onEven === void 0 || _this4$options$onEven.call(_this4$options, result.data);
328
+ });
323
329
  }
324
330
  }, {
325
331
  key: "sendRequestAndWaitWebLaunch",
@@ -355,11 +361,11 @@ var ElementController = /*#__PURE__*/function () {
355
361
  var paymentSessionObj = paymentContext.paymentSessionObj;
356
362
  var isConnect = paymentSessionObj.connectFactor.enableConnect && ((_paymentSessionObj$pa = paymentSessionObj.paymentSessionConfig) === null || _paymentSessionObj$pa === void 0 ? void 0 : _paymentSessionObj$pa.productScene) === ProductSceneEnum.ELEMENT_PAYMENT;
357
363
  if (!(paymentResult !== null && paymentResult !== void 0 && (_paymentResult$origin = paymentResult.originActionQueryResult) !== null && _paymentResult$origin !== void 0 && _paymentResult$origin.success) && isConnect) {
358
- var _this$options$onEvent, _this$options;
364
+ var _this$options$onEvent2, _this$options2;
359
365
  clearTimeout(this.initTimeout);
360
366
  this.changeLoading(false);
361
367
  this.initTimeout = null;
362
- (_this$options$onEvent = (_this$options = this.options).onEventCallback) === null || _this$options$onEvent === void 0 || _this$options$onEvent.call(_this$options, {
368
+ (_this$options$onEvent2 = (_this$options2 = this.options).onEventCallback) === null || _this$options$onEvent2 === void 0 || _this$options$onEvent2.call(_this$options2, {
363
369
  code: EventCallbackCode.SDK_CREATE_COMPONENT_ERROR,
364
370
  message: 'Component initialization exception.'
365
371
  });
@@ -448,14 +454,14 @@ var ElementController = /*#__PURE__*/function () {
448
454
  }, {
449
455
  key: "destroyHandle",
450
456
  value: function destroyHandle() {
451
- var _this7 = this;
452
457
  this.elementContainer.destroy();
453
458
  cleanMockup();
454
459
  removeRetentionPopup();
455
- setTimeout(function () {
456
- _this7.serviceMap.EventCenter.cleanIFrames();
457
- _this7.elementContainerService.destroy();
458
- }, 0);
460
+ try {
461
+ destroyModal();
462
+ } catch (error) {}
463
+ this.serviceMap.EventCenter.cleanIFrames();
464
+ this.elementContainerService.destroy();
459
465
  }
460
466
  }, {
461
467
  key: "destroy",
@@ -14,6 +14,7 @@ declare abstract class BaseElementProcessor {
14
14
  instanceId: string;
15
15
  options: ElementProcessorOptions;
16
16
  obtainDataRes: any;
17
+ elementUrl: string;
17
18
  eventCenter: EventCenter;
18
19
  eventListener: {};
19
20
  abstract beforeMount(): void;
@@ -33,6 +34,8 @@ declare abstract class BaseElementProcessor {
33
34
  registerElementContainer(elementContainer: AntomSDKCore): void;
34
35
  registerEventCenter(eventCenter: EventCenter): void;
35
36
  registerEventListener(event: any, callback: any): void;
37
+ setElementUrl(url: any): void;
38
+ getElementUrl(): string;
36
39
  getObtainDataRes(): any;
37
40
  }
38
41
  export default BaseElementProcessor;
@@ -15,6 +15,7 @@ var BaseElementProcessor = /*#__PURE__*/function () {
15
15
  _defineProperty(this, "instanceId", void 0);
16
16
  _defineProperty(this, "options", void 0);
17
17
  _defineProperty(this, "obtainDataRes", void 0);
18
+ _defineProperty(this, "elementUrl", void 0);
18
19
  _defineProperty(this, "eventCenter", void 0);
19
20
  _defineProperty(this, "eventListener", {});
20
21
  this._setOptions(options);
@@ -74,6 +75,16 @@ var BaseElementProcessor = /*#__PURE__*/function () {
74
75
  value: function registerEventListener(event, callback) {
75
76
  this.eventCenter[event] = callback;
76
77
  }
78
+ }, {
79
+ key: "setElementUrl",
80
+ value: function setElementUrl(url) {
81
+ this.elementUrl = url;
82
+ }
83
+ }, {
84
+ key: "getElementUrl",
85
+ value: function getElementUrl() {
86
+ return this.elementUrl;
87
+ }
77
88
  }, {
78
89
  key: "getObtainDataRes",
79
90
  value: function getObtainDataRes() {
@@ -28,9 +28,10 @@ import { EVENT } from "../../../../constant";
28
28
  import { ServiceProvider } from "../../../../foundation/service";
29
29
  import { ApplePaySdk, handleGooglePay, isSkipRenderPaymentMethod } from "../../../../plugin/component/channel";
30
30
  import { LogConfig, Logger } from "../../../../util/logger";
31
+ import { queryParse } from "../../../../util";
31
32
  import { parseSessionData } from "../../index";
32
33
  import { oneAccount, sdkAction } from "../mock";
33
- import { generateIframeSrc as _generateIframeSrc } from "../util";
34
+ import { generateIframeSrc as _generateIframeSrc, isElementPC, isElementPad } from "../util";
34
35
  import BaseElementProcessor from "./baseElementProcessor";
35
36
  var logger = new Logger(LogConfig, true);
36
37
  var PaymentProcessor = /*#__PURE__*/function (_BaseElementProcessor) {
@@ -222,7 +223,7 @@ var PaymentProcessor = /*#__PURE__*/function (_BaseElementProcessor) {
222
223
  pageUrl = "/elements/".concat(version, "/pages/express_checkout/index.html");
223
224
  }
224
225
  } catch (error) {}
225
- return _generateIframeSrc({
226
+ var url = _generateIframeSrc({
226
227
  paymentSession: paymentSession,
227
228
  paymentSessionObj: paymentSessionObj,
228
229
  environment: environment,
@@ -233,13 +234,15 @@ var PaymentProcessor = /*#__PURE__*/function (_BaseElementProcessor) {
233
234
  pageUrl: pageUrl,
234
235
  instanceId: instanceId
235
236
  });
237
+ this.setElementUrl(url);
238
+ return url;
236
239
  }
237
240
  }, {
238
241
  key: "obtainData",
239
242
  value: function () {
240
243
  var _obtainData = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
241
244
  var _paymentSessionObj$co;
242
- var requestService, _this$elementContaine8, paymentSession, paymentSessionObj, displayInfo, merchantAppointParam, _this$options2, environment, locale, _ref4, paymentSessionConfig, hostSign, isConnect, LOCAL_MOCK, generateActionQueryPromise, generateOneAccountQueryPromise, _yield$Promise$all, _yield$Promise$all2, originActionQueryResult, originOneAccountQueryResult;
245
+ var requestService, _this$elementContaine8, paymentSession, paymentSessionObj, displayInfo, merchantAppointParam, _this$options2, environment, locale, _ref4, paymentSessionConfig, hostSign, isConnect, LOCAL_MOCK, _queryParse, appType, terminalType, generateActionQueryPromise, generateOneAccountQueryPromise, _yield$Promise$all, _yield$Promise$all2, originActionQueryResult, originOneAccountQueryResult;
243
246
  return _regeneratorRuntime().wrap(function _callee2$(_context2) {
244
247
  while (1) switch (_context2.prev = _context2.next) {
245
248
  case 0:
@@ -251,6 +254,8 @@ var PaymentProcessor = /*#__PURE__*/function (_BaseElementProcessor) {
251
254
  hostSign = paymentSession.split('&&')[1] || '';
252
255
  isConnect = paymentSessionObj === null || paymentSessionObj === void 0 || (_paymentSessionObj$co = paymentSessionObj.connectFactor) === null || _paymentSessionObj$co === void 0 ? void 0 : _paymentSessionObj$co.enableConnect;
253
256
  LOCAL_MOCK = window.location.href.indexOf('LOCAL_MOCK=1') !== -1;
257
+ _queryParse = queryParse(this.getElementUrl()), appType = _queryParse.appType;
258
+ terminalType = isElementPad() ? 'WEB' : appType ? 'APP' : isElementPC() ? 'WEB' : 'WAP';
254
259
  generateActionQueryPromise = function generateActionQueryPromise() {
255
260
  return new Promise(function (resolve, reject) {
256
261
  var _displayInfo$merchant;
@@ -273,7 +278,8 @@ var PaymentProcessor = /*#__PURE__*/function (_BaseElementProcessor) {
273
278
  requestService.request(sdkRequestData, {
274
279
  env: environment,
275
280
  envInfo: {
276
- locale: locale
281
+ locale: locale,
282
+ terminalType: terminalType
277
283
  },
278
284
  hostSign: hostSign,
279
285
  timeout: 300000,
@@ -303,7 +309,8 @@ var PaymentProcessor = /*#__PURE__*/function (_BaseElementProcessor) {
303
309
  }, {
304
310
  env: environment,
305
311
  envInfo: {
306
- locale: locale
312
+ locale: locale,
313
+ terminalType: terminalType
307
314
  },
308
315
  timeout: 300000,
309
316
  // TODO dev环境接口超时
@@ -315,9 +322,9 @@ var PaymentProcessor = /*#__PURE__*/function (_BaseElementProcessor) {
315
322
  });
316
323
  });
317
324
  };
318
- _context2.next = 12;
325
+ _context2.next = 14;
319
326
  return Promise.all(isConnect ? [generateActionQueryPromise(), generateOneAccountQueryPromise()] : [generateActionQueryPromise()]);
320
- case 12:
327
+ case 14:
321
328
  _yield$Promise$all = _context2.sent;
322
329
  _yield$Promise$all2 = _slicedToArray(_yield$Promise$all, 2);
323
330
  originActionQueryResult = _yield$Promise$all2[0];
@@ -330,7 +337,7 @@ var PaymentProcessor = /*#__PURE__*/function (_BaseElementProcessor) {
330
337
  originActionQueryResult: originActionQueryResult,
331
338
  originOneAccountQueryResult: originOneAccountQueryResult
332
339
  });
333
- case 18:
340
+ case 20:
334
341
  case "end":
335
342
  return _context2.stop();
336
343
  }