@alipay/ams-checkout 0.0.1720509876-dev.3 → 0.0.1720509876-dev.6

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/esm/index.js CHANGED
@@ -1,4 +1,7 @@
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; }
4
+ 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; }
2
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); } }
3
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; }
4
7
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
@@ -18,11 +21,13 @@ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.g
18
21
  * 1. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE; and
19
22
  * 2. If applicable, the use of the Software is also subject to the terms and conditions of any non-disclosure agreement signed by you and the relevant Ant Group entity.
20
23
  */
24
+ import { AMSAutoDebitAppVersion, AMSCashierPaymentAppVersion, AMSCheckoutAppVersion, AMSEasyPayAppVersion, AMSPaymentElementAppVersion, AMSVaultingAppVersion } from "./config/index";
21
25
  import { AMSComponent } from "./core/component/index";
22
26
  import { componentSignEnum } from "./types";
23
27
  import { productSceneEnum } from "./types/index";
24
- import { Logger, LogConfig } from "./util/logger";
28
+ import { LogConfig, Logger } from "./util/logger";
25
29
  var logger = new Logger(LogConfig, true);
30
+ export { AMSCheckoutPage } from "./core/component/ckp";
26
31
  export * from "./types";
27
32
  export var AMSCheckout = /*#__PURE__*/function (_AMSComponent) {
28
33
  _inherits(AMSCheckout, _AMSComponent);
@@ -31,7 +36,9 @@ export var AMSCheckout = /*#__PURE__*/function (_AMSComponent) {
31
36
  var _this;
32
37
  var productSceneVersion = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '1.0';
33
38
  _classCallCheck(this, AMSCheckout);
34
- _this = _super.call(this, _options);
39
+ _this = _super.call(this, _objectSpread({
40
+ appVersion: AMSCheckoutAppVersion
41
+ }, _options));
35
42
  _this.preloadComponent(channelType, productSceneVersion);
36
43
  return _this;
37
44
  }
@@ -43,19 +50,33 @@ export var AMSAutoDebit = /*#__PURE__*/function (_AMSCheckout) {
43
50
  function AMSAutoDebit(options) {
44
51
  _classCallCheck(this, AMSAutoDebit);
45
52
  var _options = Object.assign({}, options, {
46
- product: productSceneEnum.AUTO_DEBIT
53
+ product: productSceneEnum.AUTO_DEBIT,
54
+ appVersion: AMSAutoDebitAppVersion
47
55
  });
48
56
  return _super2.call(this, _options, [componentSignEnum.AUTO_DEBIT_WALLET]);
49
57
  }
50
58
  return _createClass(AMSAutoDebit);
51
59
  }(AMSCheckout);
52
- export var AMSEasyPay = /*#__PURE__*/function (_AMSCheckout2) {
53
- _inherits(AMSEasyPay, _AMSCheckout2);
54
- var _super3 = _createSuper(AMSEasyPay);
60
+ export var AMSAutoDebitPay = /*#__PURE__*/function (_AMSCheckout2) {
61
+ _inherits(AMSAutoDebitPay, _AMSCheckout2);
62
+ var _super3 = _createSuper(AMSAutoDebitPay);
63
+ function AMSAutoDebitPay(options) {
64
+ _classCallCheck(this, AMSAutoDebitPay);
65
+ var _options = Object.assign({}, options, {
66
+ product: productSceneEnum.AUTO_DEBIT_PAY
67
+ });
68
+ return _super3.call(this, _options, [componentSignEnum.AUTO_DEBIT_PAY_WALLET]);
69
+ }
70
+ return _createClass(AMSAutoDebitPay);
71
+ }(AMSCheckout);
72
+ export var AMSEasyPay = /*#__PURE__*/function (_AMSCheckout3) {
73
+ _inherits(AMSEasyPay, _AMSCheckout3);
74
+ var _super4 = _createSuper(AMSEasyPay);
55
75
  function AMSEasyPay(options) {
56
76
  _classCallCheck(this, AMSEasyPay);
57
77
  var _options = Object.assign({}, options, {
58
- product: productSceneEnum.EASY_PAY
78
+ product: productSceneEnum.EASY_PAY,
79
+ appVersion: AMSEasyPayAppVersion
59
80
  });
60
81
  var currentProductSceneVersion = '1.0';
61
82
  try {
@@ -76,17 +97,18 @@ export var AMSEasyPay = /*#__PURE__*/function (_AMSCheckout2) {
76
97
  error: error
77
98
  });
78
99
  }
79
- return _super3.call(this, _options, [componentSignEnum.EASY_PAY_WALLET], currentProductSceneVersion);
100
+ return _super4.call(this, _options, [componentSignEnum.EASY_PAY_WALLET], currentProductSceneVersion);
80
101
  }
81
102
  return _createClass(AMSEasyPay);
82
103
  }(AMSCheckout);
83
- export var AMSCashierPayment = /*#__PURE__*/function (_AMSCheckout3) {
84
- _inherits(AMSCashierPayment, _AMSCheckout3);
85
- var _super4 = _createSuper(AMSCashierPayment);
104
+ export var AMSCashierPayment = /*#__PURE__*/function (_AMSCheckout4) {
105
+ _inherits(AMSCashierPayment, _AMSCheckout4);
106
+ var _super5 = _createSuper(AMSCashierPayment);
86
107
  function AMSCashierPayment(options) {
87
108
  _classCallCheck(this, AMSCashierPayment);
88
109
  var _options = Object.assign({}, options, {
89
- product: productSceneEnum.CASHIER_PAYMENT
110
+ product: productSceneEnum.CASHIER_PAYMENT,
111
+ appVersion: AMSCashierPaymentAppVersion
90
112
  });
91
113
  var currentChannelType;
92
114
  try {
@@ -107,31 +129,33 @@ export var AMSCashierPayment = /*#__PURE__*/function (_AMSCheckout3) {
107
129
  error: error
108
130
  });
109
131
  }
110
- return _super4.call(this, _options, currentChannelType);
132
+ return _super5.call(this, _options, currentChannelType);
111
133
  }
112
134
  return _createClass(AMSCashierPayment);
113
135
  }(AMSCheckout);
114
- export var AMSVaulting = /*#__PURE__*/function (_AMSCheckout4) {
115
- _inherits(AMSVaulting, _AMSCheckout4);
116
- var _super5 = _createSuper(AMSVaulting);
136
+ export var AMSVaulting = /*#__PURE__*/function (_AMSCheckout5) {
137
+ _inherits(AMSVaulting, _AMSCheckout5);
138
+ var _super6 = _createSuper(AMSVaulting);
117
139
  function AMSVaulting(options) {
118
140
  _classCallCheck(this, AMSVaulting);
119
141
  var _options = Object.assign({}, options, {
120
- product: productSceneEnum.VAULTING
142
+ product: productSceneEnum.VAULTING,
143
+ appVersion: AMSVaultingAppVersion
121
144
  });
122
- return _super5.call(this, _options, [componentSignEnum.CASHIER_PAYMENT_CARD]);
145
+ return _super6.call(this, _options, [componentSignEnum.CASHIER_PAYMENT_CARD]);
123
146
  }
124
147
  return _createClass(AMSVaulting);
125
148
  }(AMSCheckout);
126
- export var AMSPaymentElement = /*#__PURE__*/function (_AMSCheckout5) {
127
- _inherits(AMSPaymentElement, _AMSCheckout5);
128
- var _super6 = _createSuper(AMSPaymentElement);
149
+ export var AMSPaymentElement = /*#__PURE__*/function (_AMSCheckout6) {
150
+ _inherits(AMSPaymentElement, _AMSCheckout6);
151
+ var _super7 = _createSuper(AMSPaymentElement);
129
152
  function AMSPaymentElement(options) {
130
153
  _classCallCheck(this, AMSPaymentElement);
131
154
  var _options = Object.assign({}, options, {
132
- product: productSceneEnum.ELEMENT_PAYMENT
155
+ product: productSceneEnum.ELEMENT_PAYMENT,
156
+ appVersion: AMSPaymentElementAppVersion
133
157
  });
134
- return _super6.call(this, _options, [componentSignEnum.ELEMENT_PAYMENT]);
158
+ return _super7.call(this, _options, [componentSignEnum.ELEMENT_PAYMENT]);
135
159
  }
136
160
  return _createClass(AMSPaymentElement);
137
161
  }(AMSCheckout);
@@ -45,12 +45,12 @@ var getAppVersion = function getAppVersion(_extendInfo, productScene, mid) {
45
45
 
46
46
  // 没有匹配到版本,查询上次的加载版本
47
47
  if (!appVersion) {
48
- appVersion = getLastAppVersion(productScene);
48
+ appVersion = getLastAppVersion(sdkVersion + productScene);
49
49
  return appVersion;
50
50
  }
51
51
  // 不为空时代表是有sessionData,因此要保存当前版本
52
52
  if (_extendInfo) {
53
- setLastAppVersion(productScene, appVersion);
53
+ setLastAppVersion(sdkVersion + productScene, appVersion);
54
54
  }
55
55
  return appVersion;
56
56
  } catch (error) {
@@ -58,7 +58,8 @@ var getAppVersion = function getAppVersion(_extendInfo, productScene, mid) {
58
58
  }
59
59
  };
60
60
  var getFinalProductSceneVersion = function getFinalProductSceneVersion(componentSign, productSceneVersion) {
61
- var signSupportMap = _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, componentSignEnum.NONE, ['']), componentSignEnum.AUTO_DEBIT_WALLET, ['1.0']), componentSignEnum.CASHIER_PAYMENT_BANK, ['1.0']), componentSignEnum.CASHIER_PAYMENT_CARD, ['1.0']), componentSignEnum.CASHIER_PAYMENT_APM, ['1.0']), componentSignEnum.EASY_PAY_WALLET, ['1.0', '2.0']), componentSignEnum.EASY_PAY_APM, ['2.0']), componentSignEnum.VAULTING_CARD, ['1.0']), componentSignEnum.ELEMENT_PAYMENT, ['1.0']);
61
+ var _signSupportMap;
62
+ var signSupportMap = (_signSupportMap = {}, _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_signSupportMap, componentSignEnum.NONE, ['']), componentSignEnum.AUTO_DEBIT_WALLET, ['1.0']), componentSignEnum.AUTO_DEBIT_PAY_WALLET, ['']), componentSignEnum.CASHIER_PAYMENT_BANK, ['1.0']), componentSignEnum.CASHIER_PAYMENT_CARD, ['1.0']), componentSignEnum.CASHIER_PAYMENT_APM, ['1.0']), componentSignEnum.EASY_PAY_WALLET, ['1.0', '2.0']), componentSignEnum.EASY_PAY_APM, ['2.0']), componentSignEnum.VAULTING_CARD, ['1.0']), componentSignEnum.ELEMENT_PAYMENT, ['1.0']), _defineProperty(_signSupportMap, componentSignEnum.CHECKOUT_PAYMENT, ['1.0.0']));
62
63
  var supportProductSceneVersion = signSupportMap[componentSign];
63
64
  // 从左到右,从旧到新
64
65
  var isSupport = supportProductSceneVersion.find(function (it) {
@@ -101,7 +102,8 @@ export var getAppPath = function getAppPath() {
101
102
  // element又分为express_checkout模式和普通模式, express_checkout 模式在扩展参数是返回expressCheckout=true
102
103
  var isExpressCheckout = false;
103
104
  try {
104
- isExpressCheckout = JSON.parse(extendInfo).expressCheckout;
105
+ // expressCheckout可能出现string(false) JSON.parse再转一次
106
+ isExpressCheckout = JSON.parse(JSON.parse(extendInfo).expressCheckout);
105
107
  } catch (error) {
106
108
  // 遇到JSON解析错误,默认false
107
109
  }
@@ -24,6 +24,7 @@ export function getChannelBehavior(paymentSessionMetaData) {
24
24
  createIframeNode: true,
25
25
  loadApp: true,
26
26
  allowClickOutsideClose: false,
27
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
27
28
  buildSubmitPayExtParams: function buildSubmitPayExtParams(params) {
28
29
  return {};
29
30
  }
@@ -2,6 +2,7 @@ import { componentSignEnum, platformEnum } from '../../types';
2
2
  interface Options {
3
3
  componentSign?: componentSignEnum;
4
4
  type: 'tabs' | 'Accordion';
5
+ isExpressCheckout?: boolean;
5
6
  }
6
7
  export declare const inlineComponentAddCss: () => void;
7
8
  export declare const addInlineLoading: (_selector: HTMLDivElement, platform: platformEnum, options: Options) => void;
@@ -8,7 +8,8 @@
8
8
  import { COMPONENT_CONTAINER_ID, COMPONENT_IFRAME_TAG_ID, INLINE_BASE_STYLE_ID, INLINE_IMG_CLASSNAME, LOADING_ID } from "../../constant";
9
9
  import { componentSignEnum, platformEnum } from "../../types";
10
10
  import { amsSetSize } from "../../util";
11
- var inlineComponentCss = "#".concat(COMPONENT_IFRAME_TAG_ID, "-desktop{\n border-radius: 8px;\n position: absolute;\n top: 0;\n left: 0;\n}\n#").concat(COMPONENT_IFRAME_TAG_ID, "-mobile{\n position: absolute;\n top: 0;\n left: 0;\n}\n.").concat(COMPONENT_CONTAINER_ID, "-inline{\n width: 100%;\n height: auto;\n position: relative;\n line-height: 0;\n display: flex;\n}\n#").concat(LOADING_ID, "{\n width: 100%;\n flex: 1;\n}\n.").concat(INLINE_IMG_CLASSNAME, "{\n width: 100%;\n height: auto;\n object-fit: contain;\n box-sizing: border-box;\n}\n.").concat(INLINE_IMG_CLASSNAME, "-mobile{\n padding: 0 0.16em;\n}\n.").concat(INLINE_IMG_CLASSNAME, "-desktop{}\n");
11
+ // border-radius: 8px;
12
+ var inlineComponentCss = "#".concat(COMPONENT_IFRAME_TAG_ID, "-desktop{\n position: absolute;\n top: 0;\n left: 0;\n}\n#").concat(COMPONENT_IFRAME_TAG_ID, "-mobile{\n position: absolute;\n top: 0;\n left: 0;\n}\n.").concat(COMPONENT_CONTAINER_ID, "-inline{\n width: 100%;\n height: auto;\n position: relative;\n line-height: 0;\n display: flex;\n}\n#").concat(LOADING_ID, "{\n width: 100%;\n flex: 1;\n}\n.").concat(INLINE_IMG_CLASSNAME, "{\n width: 100%;\n height: auto;\n object-fit: contain;\n box-sizing: border-box;\n}\n.").concat(INLINE_IMG_CLASSNAME, "-mobile{\n padding: 0 0.16em;\n}\n.").concat(INLINE_IMG_CLASSNAME, "-desktop{}\n");
12
13
  export var inlineComponentAddCss = function inlineComponentAddCss() {
13
14
  var style = document.createElement('style');
14
15
  style.id = 'ams-inline-component-style';
@@ -95,7 +96,11 @@ export var addInlineLoading = function addInlineLoading(_selector, platform, opt
95
96
  var loading = document.createElement('div');
96
97
  loading.id = LOADING_ID;
97
98
  if (options.componentSign === componentSignEnum.ELEMENT_PAYMENT) {
98
- loading.innerHTML = renderElementPayment(options === null || options === void 0 ? void 0 : options.type);
99
+ if (options.isExpressCheckout) {
100
+ loading.innerHTML = '';
101
+ } else {
102
+ loading.innerHTML = renderElementPayment(options === null || options === void 0 ? void 0 : options.type);
103
+ }
99
104
  } else if (platform === platformEnum.desktop) loading.innerHTML = "<svg class=\"".concat(INLINE_IMG_CLASSNAME, " ").concat(INLINE_IMG_CLASSNAME, "-").concat(platform, "\" width=\"740\" height=\"360\" viewBox=\"0 0 740 360\" fill=\"none\" xmlns=\"\">\n <rect width=\"740\" height=\"360\" rx=\"12\" fill=\"#F6F6F6\"/>\n <rect opacity=\"0.7\" x=\"44\" y=\"44\" width=\"32\" height=\"32\" rx=\"4\" fill=\"#E1E6ED\"/>\n <rect opacity=\"0.7\" x=\"94\" y=\"44\" width=\"32\" height=\"32\" rx=\"4\" fill=\"#E1E6ED\"/>\n <rect opacity=\"0.7\" x=\"144\" y=\"44\" width=\"32\" height=\"32\" rx=\"4\" fill=\"#E1E6ED\"/>\n <g style=\"mix-blend-mode:multiply\" opacity=\"0.336007\">\n <path d=\"M136 100H48C43.5817 100 40 103.582 40 108C40 112.418 43.5817 116 48 116H136C140.418 116 144 112.418 144 108C144 103.582 140.418 100 136 100Z\" fill=\"#E1E6ED\"/>\n </g>\n <g style=\"mix-blend-mode:multiply\" opacity=\"0.336007\">\n <path d=\"M682 126H58C48.0589 126 40 134.059 40 144C40 153.941 48.0589 162 58 162H682C691.941 162 700 153.941 700 144C700 134.059 691.941 126 682 126Z\" fill=\"#E1E6ED\"/>\n </g>\n <g style=\"mix-blend-mode:multiply\" opacity=\"0.336007\">\n <path d=\"M682 182H58C48.0589 182 40 190.059 40 200C40 209.941 48.0589 218 58 218H682C691.941 218 700 209.941 700 200C700 190.059 691.941 182 682 182Z\" fill=\"#E1E6ED\"/>\n </g>\n <g style=\"mix-blend-mode:multiply\" opacity=\"0.336007\">\n <path d=\"M504 274H64C52.9543 274 44 282.954 44 294C44 305.046 52.9543 314 64 314H504C515.046 314 524 305.046 524 294C524 282.954 515.046 274 504 274Z\" fill=\"#E1E6ED\"/>\n </g>\n </svg>");else if (platform === platformEnum.mobile) loading.innerHTML = "<svg class=\"".concat(INLINE_IMG_CLASSNAME, " ").concat(INLINE_IMG_CLASSNAME, "-").concat(platform, "\" width=\"358\" height=\"186\" viewBox=\"0 0 358 186\" fill=\"none\" xmlns=\"\">\n <g clip-path=\"url(#clip0_2543_91192)\">\n <rect width=\"358\" height=\"186\" fill=\"white\"/>\n <g clip-path=\"url(#clip1_2543_91192)\">\n <rect width=\"358\" height=\"186\" fill=\"white\"/>\n <rect width=\"358\" height=\"40\" fill=\"white\"/>\n <rect opacity=\"0.7\" x=\"4\" y=\"4\" width=\"32\" height=\"32\" rx=\"4\" fill=\"#E1E6ED\"/>\n <rect opacity=\"0.7\" x=\"54\" y=\"4\" width=\"32\" height=\"32\" rx=\"4\" fill=\"#E1E6ED\"/>\n <rect opacity=\"0.7\" x=\"104\" y=\"4\" width=\"32\" height=\"32\" rx=\"4\" fill=\"#E1E6ED\"/>\n <g clip-path=\"url(#clip2_2543_91192)\">\n <rect width=\"358\" height=\"120\" transform=\"translate(0 66)\" fill=\"white\"/>\n <g style=\"mix-blend-mode:multiply\" opacity=\"0.336007\">\n <path d=\"M95 66H9C4.02944 66 0 70.0294 0 75C0 79.9706 4.02943 84 9 84H95C99.9706 84 104 79.9706 104 75C104 70.0294 99.9706 66 95 66Z\" fill=\"#E1E6ED\"/>\n </g>\n <g clip-path=\"url(#clip3_2543_91192)\">\n <g style=\"mix-blend-mode:multiply\" opacity=\"0.336007\">\n <path d=\"M340 94H18C8.05888 94 0 102.059 0 112C0 121.941 8.05887 130 18 130H340C349.941 130 358 121.941 358 112C358 102.059 349.941 94 340 94Z\" fill=\"#E1E6ED\"/>\n </g>\n <g style=\"mix-blend-mode:multiply\" opacity=\"0.336007\">\n <path d=\"M340 150H18C8.05888 150 0 158.059 0 168C0 177.941 8.05887 186 18 186H340C349.941 186 358 177.941 358 168C358 158.059 349.941 150 340 150Z\" fill=\"#E1E6ED\"/>\n </g>\n </g>\n </g>\n </g>\n </g>\n <defs>\n <clipPath id=\"clip0_2543_91192\">\n <rect width=\"358\" height=\"186\" fill=\"white\"/>\n </clipPath>\n <clipPath id=\"clip1_2543_91192\">\n <rect width=\"358\" height=\"186\" fill=\"white\"/>\n </clipPath>\n <clipPath id=\"clip2_2543_91192\">\n <rect width=\"358\" height=\"120\" fill=\"white\" transform=\"translate(0 66)\"/>\n </clipPath>\n <clipPath id=\"clip3_2543_91192\">\n <rect width=\"358\" height=\"92\" fill=\"white\" transform=\"translate(0 94)\"/>\n </clipPath>\n </defs>\n </svg>\n ");
100
105
  if (_selector) _selector.appendChild(loading);
101
106
  var loadingDom = document.getElementById(LOADING_ID);
@@ -27,7 +27,9 @@ export default class ComponentApp {
27
27
  private _multipleCallbackEvents;
28
28
  _merchantAppointParam: IMerchantAppointParam;
29
29
  private _webAppHeartBeatTimeoutFn;
30
- constructor();
30
+ constructor(componentOption?: {
31
+ appVersion?: string;
32
+ });
31
33
  /**
32
34
  * @description Cancel listening and destroy the dom
33
35
  */
@@ -24,15 +24,15 @@ import { componentSignEnum, eventCodeEnum, messageName, platformEnum, productSce
24
24
  import { getType, isJsonString, isPC } from "../../util";
25
25
  import { isLocalMock } from "../../util/mock";
26
26
  import { matchVersion } from "../../util/versionCompare";
27
+ import { handlePaymentSessionConfig } from "../payment-element/utils";
27
28
  import { createIframe, createPreloadIframe, getAppDomain, getIframeUrl } from "./cashierApp";
28
29
  import { getChannelBehavior } from "./channel";
29
30
  import { addInlineLoading, createInlineBaseElement } from "./component.inline.style";
30
31
  import { addPopupLoading, createBaseElement, createMockup, createRetentionPopup, handleDeclareInfo as _handleDeclareInfo, hideRetentionPopup, removeRetentionPopup as _removeRetentionPopup, slideInAndOutKeyframes } from "./component.popup.style";
31
- import { handlePaymentSessionConfig } from "../payment-element/utils";
32
- import { createModal, destroyModal, insertStyleSheet } from "./popupWindow.style";
32
+ import { createModal, destroyModal, insertStyleSheet, removePopupLoading } from "./popupWindow.style";
33
33
  window.changingPageHeight = window.innerHeight;
34
34
  var ComponentApp = /*#__PURE__*/function () {
35
- function ComponentApp() {
35
+ function ComponentApp(componentOption) {
36
36
  _classCallCheck(this, ComponentApp);
37
37
  _defineProperty(this, "app", void 0);
38
38
  _defineProperty(this, "AMSSDK", void 0);
@@ -58,7 +58,7 @@ var ComponentApp = /*#__PURE__*/function () {
58
58
  _defineProperty(this, "_multipleCallbackEvents", void 0);
59
59
  _defineProperty(this, "_merchantAppointParam", void 0);
60
60
  _defineProperty(this, "_webAppHeartBeatTimeoutFn", void 0);
61
- this._appVersion = '1.20.0';
61
+ this._appVersion = componentOption.appVersion;
62
62
  this._isInitComponent = false;
63
63
  this._selector = "#".concat(COMPONENT_SECTION_ID);
64
64
  this.createIframeNode = function () {
@@ -315,6 +315,18 @@ var ComponentApp = /*#__PURE__*/function () {
315
315
  return;
316
316
  }
317
317
  }
318
+ if (componentSignEnum.AUTO_DEBIT_PAY_WALLET === this._componentSign) {
319
+ if (requireFastSdk === true && productSceneVersion === '1.0') {
320
+ // REDIRECT,requireFastSdk为true,不需要接口请求
321
+ this.handleAuthUrlInfo(authUrlInfo);
322
+ return;
323
+ } else {
324
+ return Promise.reject({
325
+ code: ERRORMESSAGE.CREATEPAYMENT_PARAMETER_ERROR.code,
326
+ message: "Abnormal response data, interface failure, or unsupported payment method."
327
+ });
328
+ }
329
+ }
318
330
  this.dispatchToSDK(EVENT.eventCallback.name, {
319
331
  code: eventCodeEnum.SDK_START_OF_LOADING
320
332
  });
@@ -378,9 +390,18 @@ var ComponentApp = /*#__PURE__*/function () {
378
390
  var _renderParams$appeara, _this$_renderParams11;
379
391
  var showLoading = renderParams === null || renderParams === void 0 || (_renderParams$appeara = renderParams.appearance) === null || _renderParams$appeara === void 0 ? void 0 : _renderParams$appeara.showLoading;
380
392
  showLoading = typeof showLoading === 'boolean' ? showLoading : true;
393
+ var extendInfo = renderParams.paymentSessionMetaData.extendInfo;
394
+ var isExpressCheckout = false;
395
+ try {
396
+ // expressCheckout可能出现string(false) JSON.parse再转一次
397
+ isExpressCheckout = JSON.parse(JSON.parse(extendInfo).expressCheckout);
398
+ } catch (error) {
399
+ // 遇到JSON解析错误,默认false
400
+ }
381
401
  if (showLoading) addInlineLoading(selector, this.platform, {
382
402
  componentSign: this._componentSign,
383
- type: (_this$_renderParams11 = this._renderParams) === null || _this$_renderParams11 === void 0 || (_this$_renderParams11 = _this$_renderParams11.appearance) === null || _this$_renderParams11 === void 0 || (_this$_renderParams11 = _this$_renderParams11.layout) === null || _this$_renderParams11 === void 0 ? void 0 : _this$_renderParams11.type
403
+ type: (_this$_renderParams11 = this._renderParams) === null || _this$_renderParams11 === void 0 || (_this$_renderParams11 = _this$_renderParams11.appearance) === null || _this$_renderParams11 === void 0 || (_this$_renderParams11 = _this$_renderParams11.layout) === null || _this$_renderParams11 === void 0 ? void 0 : _this$_renderParams11.type,
404
+ isExpressCheckout: isExpressCheckout
384
405
  });
385
406
  }
386
407
  }, {
@@ -423,7 +444,6 @@ var ComponentApp = /*#__PURE__*/function () {
423
444
  key: 'sdk_action_query_start',
424
445
  value: Date.now()
425
446
  });
426
-
427
447
  // eslint-disable-next-line no-async-promise-executor
428
448
  this._actionQueryPromise = new Promise( /*#__PURE__*/function () {
429
449
  var _ref5 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(resolve, reject) {
@@ -793,13 +813,14 @@ var ComponentApp = /*#__PURE__*/function () {
793
813
  value: function createPreloadApp(componentSign) {
794
814
  var productSceneVersion = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '1.0';
795
815
  var preloadIframe = createPreloadIframe(componentSign, productSceneVersion);
816
+ var productScene = componentSign.split(/_(?=[^_]*$)/)[0];
796
817
  var _getIframeUrl = getIframeUrl({
797
818
  renderDisplayType: renderDisplayTypeEnum.popup,
798
819
  componentSign: componentSign,
799
820
  analytics: {
800
821
  enabled: false
801
822
  },
802
- productScene: componentSign,
823
+ productScene: productScene,
803
824
  productSceneVersion: productSceneVersion,
804
825
  environment: this.AMSSDK.options.env.environment,
805
826
  appVersion: this._appVersion,
@@ -935,8 +956,8 @@ var ComponentApp = /*#__PURE__*/function () {
935
956
  _context4.next = 5;
936
957
  return createModal({
937
958
  widthPadding: data === null || data === void 0 ? void 0 : data.widthPadding,
938
- heightPadding: data === null || data === void 0 ? void 0 : data.heightPadding,
939
959
  device: (_data$device = data === null || data === void 0 ? void 0 : data.device) !== null && _data$device !== void 0 ? _data$device : this.platform,
960
+ loadingConfig: data === null || data === void 0 ? void 0 : data.loadingConfig,
940
961
  url: pageUrl
941
962
  });
942
963
  case 5:
@@ -955,6 +976,7 @@ var ComponentApp = /*#__PURE__*/function () {
955
976
  }, POPUP_LOADTIME_LOG_LIMIT);
956
977
  this.popupApp.onload = function () {
957
978
  isLoad = true;
979
+ removePopupLoading();
958
980
  clearTimeout(timeout);
959
981
  clearTimeout(logTimeout);
960
982
  };
@@ -1,8 +1,11 @@
1
+ export declare const createCustomSheet: (curTheme?: 'dark' | 'light') => void;
2
+ export declare const renderPopupLoading: (container: HTMLDivElement, curTheme: 'dark' | 'light') => void;
3
+ export declare const removePopupLoading: (isShowMockup?: boolean) => void;
1
4
  export declare const insertStyleSheet: () => void;
2
- export declare const createModal: ({ device, url, widthPadding, heightPadding }: {
5
+ export declare const createModal: ({ device, url, widthPadding, loadingConfig }: {
3
6
  device: any;
4
7
  url: any;
5
8
  widthPadding: any;
6
- heightPadding: any;
9
+ loadingConfig: any;
7
10
  }) => Promise<HTMLIFrameElement>;
8
11
  export declare const destroyModal: () => void;
@@ -1,41 +1,92 @@
1
- import { AMSPOPUP_PREFIX, ANIMATION_TIME } from "../../constant";
1
+ import { AMSPOPUP_PREFIX, ANIMATION_TIME, MOCKUP_ID, POPUPLOADING_ID } from "../../constant";
2
+ import { getDesignFontSize } from "../../util";
2
3
 
3
4
  // CSS样式字符串
4
- var modalStyles = "\n .".concat(AMSPOPUP_PREFIX, "modal {\n /* \u6DFB\u52A0\u5F39\u7A97\u6837\u5F0F */\n background-color: #fff;\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);\n position: fixed;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n z-index: 9999; /* \u8BBE\u7F6E\u5F39\u7A97\u7684\u5C42\u7EA7\u4E3A 9999 */\n overflow: hidden;\n }\n\n .").concat(AMSPOPUP_PREFIX, "overlay {\n /* \u6DFB\u52A0\u8499\u5C42\u6837\u5F0F */\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background-color: rgba(0, 0, 0, 0.4);\n z-index: 999;\n }\n\n .").concat(AMSPOPUP_PREFIX, "fadeIn {\n /* \u6DFB\u52A0\u6DE1\u5165\u52A8\u753B */\n animation: fadeIn ").concat(ANIMATION_TIME, "ms;\n animation-fill-mode: forwards;\n }\n\n .").concat(AMSPOPUP_PREFIX, "fadeOut {\n /* \u6DFB\u52A0\u6DE1\u51FA\u52A8\u753B */\n animation: fadeOut ").concat(ANIMATION_TIME, "ms;\n animation-fill-mode: forwards;\n }\n\n /* \u5B9A\u4E49\u6DE1\u5165\u52A8\u753B */\n @keyframes fadeIn {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n\n @-webkit-keyframes fadeIn {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n\n @-moz-keyframes fadeIn {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n\n /* \u5B9A\u4E49\u6DE1\u51FA\u52A8\u753B */\n @keyframes fadeOut {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n }\n }\n\n @-webkit-keyframes fadeOut {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n }\n }\n\n @-moz-keyframes fadeOut {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n }\n }\n");
5
-
5
+ var modalStyles = "\n .".concat(AMSPOPUP_PREFIX, "modal {\n /* \u6DFB\u52A0\u5F39\u7A97\u6837\u5F0F */\n background-color: #fff;\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);\n position: fixed;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n z-index: 9999; /* \u8BBE\u7F6E\u5F39\u7A97\u7684\u5C42\u7EA7\u4E3A 9999 */\n overflow: hidden;\n }\n .").concat(AMSPOPUP_PREFIX, "modal-mobile{\n background-color: #fff;\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);\n position: fixed;\n bottom: 0;\n left: 0%;\n z-index: 9999; /* \u8BBE\u7F6E\u5F39\u7A97\u7684\u5C42\u7EA7\u4E3A 9999 */\n overflow: hidden;\n }\n\n .").concat(AMSPOPUP_PREFIX, "overlay {\n /* \u6DFB\u52A0\u8499\u5C42\u6837\u5F0F */\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background-color: rgba(0, 0, 0, 0.4);\n z-index: 999;\n }\n\n .").concat(AMSPOPUP_PREFIX, "fadeIn {\n /* \u6DFB\u52A0\u6DE1\u5165\u52A8\u753B */\n animation: fadeIn ").concat(ANIMATION_TIME, "ms;\n animation-fill-mode: forwards;\n }\n\n .").concat(AMSPOPUP_PREFIX, "fadeOut {\n /* \u6DFB\u52A0\u6DE1\u51FA\u52A8\u753B */\n animation: fadeOut ").concat(ANIMATION_TIME, "ms;\n animation-fill-mode: forwards;\n }\n\n .").concat(AMSPOPUP_PREFIX, "-drawer-enter {\n animation: slideIn ").concat(ANIMATION_TIME, "ms forwards;\n }\n \n @keyframes slideIn {\n from {\n transform: translateY(100%); /* \u6ED1\u5165\u65F6\u5728\u89C6\u53E3\u5E95\u90E8\u5916 */\n opacity: 0; /* \u521D\u59CB\u900F\u660E\u5EA6\u4E3A 0 */\n }\n to {\n transform: translateY(0); /* \u6ED1\u5165\u7ED3\u675F\u65F6\u5728\u539F\u4F4D\u7F6E */\n opacity: 1; /* \u7ED3\u675F\u65F6\u900F\u660E\u5EA6\u4E3A 1 */\n }\n }\n\n /* \u62BD\u5C49\u4ECE\u5E95\u90E8\u6ED1\u51FA */\n .").concat(AMSPOPUP_PREFIX, "-drawer-exit {\n animation: slideOut ").concat(ANIMATION_TIME, "ms forwards;\n }\n\n @keyframes slideOut {\n from {\n transform: translateY(0); /* \u6ED1\u51FA\u65F6\u4ECE\u5F53\u524D\u4F4D\u7F6E\u5F00\u59CB */\n opacity: 1; /* \u521D\u59CB\u900F\u660E\u5EA6\u4E3A 1 */\n }\n to {\n transform: translateY(100%); /* \u6ED1\u51FA\u7ED3\u675F\u65F6\u5728\u89C6\u53E3\u5E95\u90E8\u5916 */\n opacity: 0; /* \u7ED3\u675F\u65F6\u900F\u660E\u5EA6\u4E3A 0 */\n }\n }\n\n /* \u5B9A\u4E49\u6DE1\u5165\u52A8\u753B */\n @keyframes fadeIn {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n\n @-webkit-keyframes fadeIn {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n\n @-moz-keyframes fadeIn {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n\n /* \u5B9A\u4E49\u6DE1\u51FA\u52A8\u753B */\n @keyframes fadeOut {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n }\n }\n\n @-webkit-keyframes fadeOut {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n }\n }\n\n @-moz-keyframes fadeOut {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n }\n }\n\n\n.ams-component-popup-loading {\n width: 0.8em;\n height:0.8em;\n border-radius: 8px;\n position: fixed;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n z-index: 1001;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n}\n\n.ams-component-popup-loading .line {\n width: 40px;\n height: 40px;\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n}\n.ams-component-popup-loading .line div {\n position: absolute;\n left: 17.67px;\n top: 0;\n width: 5.33px;\n height: 40px;\n}\n\n.ams-component-popup-loading .line div:before,\n.ams-component-popup-loading .line div:after {\n content: '';\n display: block;\n height: 13.33px;\n background: black;\n border-radius: 5.3px;\n}\n.ams-component-popup-loading .line div:after {\n margin-top: 13.33px;\n}\n\n.ams-component-popup-loading .line div:nth-child(2) {\n -webkit-transform: rotate(45deg);\n}\n\n.ams-component-popup-loading .line div:nth-child(3) {\n -webkit-transform: rotate(90deg);\n}\n\n.ams-component-popup-loading .line div:nth-child(4) {\n -webkit-transform: rotate(135deg);\n}\n\n/** \u52A0\u8F7D\u52A8\u753B **/\n@-webkit-keyframes load {\n 0% {\n opacity: 0;\n }\n\n 100% {\n opacity: 1;\n }\n}\n\n.ams-component-popup-loading .line div:nth-child(1):before {\n -webkit-animation: load 1s linear 0s infinite;\n}\n\n.ams-component-popup-loading .line div:nth-child(2):before {\n -webkit-animation: load 1s linear 0.125s infinite;\n}\n\n.ams-component-popup-loading .line div:nth-child(3):before {\n -webkit-animation: load 1s linear 0.25s infinite;\n}\n\n.ams-component-popup-loading .line div:nth-child(4):before {\n -webkit-animation: load 1s linear 0.375s infinite;\n}\n\n.ams-component-popup-loading .line div:nth-child(1):after {\n -webkit-animation: load 1s linear 0.5s infinite;\n}\n\n.ams-component-popup-loading .line div:nth-child(2):after {\n -webkit-animation: load 1s linear 0.675s infinite;\n}\n\n.ams-component-popup-loading .line div:nth-child(3):after {\n -webkit-animation: load 1s linear 0.75s infinite;\n}\n\n.ams-component-popup-loading .line div:nth-child(4):after {\n -webkit-animation: load 1s linear 0.875s infinite;\n}\n\n.ams-component-popup-loading-logo {\n width: 0.44em;\n height: 0.44em;\n -webkit-transform:rotate(360deg);\n transform:rotate(360deg);\n -webkit-transition:-webkit-transform 1s linear;\n transition:transform 1s linear;\n animation: ams-component-loading-logo 1s linear infinite;\n}\n");
6
+ var getCurrentTheme = function getCurrentTheme() {
7
+ var curTheme = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'default';
8
+ var theme = {
9
+ night: 'dark',
10
+ gamingPurple: 'dark',
11
+ agateGreen: 'dark',
12
+ default: 'light',
13
+ nostalgicGray: 'light',
14
+ cherryBlossomPink: 'light'
15
+ };
16
+ return theme[curTheme];
17
+ };
18
+ export var createCustomSheet = function createCustomSheet() {
19
+ var curTheme = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'light';
20
+ var sheet = "\n .ams-component-popup-loading .line div:before,\n .ams-component-popup-loading .line div:after {\n background: ".concat(curTheme === 'light' ? '#000000' : '#ffffff', " !important;\n }");
21
+ var style = document.createElement('style');
22
+ style.innerHTML = sheet;
23
+ document.head.appendChild(style);
24
+ };
25
+ export var renderPopupLoading = function renderPopupLoading(container, curTheme) {
26
+ createCustomSheet(curTheme);
27
+ var loading = document.createElement('div');
28
+ loading === null || loading === void 0 || loading.classList.add(POPUPLOADING_ID);
29
+ loading.id = POPUPLOADING_ID;
30
+ loading.innerHTML = '<div class="line"><div></div><div></div><div></div><div></div></div>';
31
+ loading.style.fontSize = "".concat(getDesignFontSize(), "px");
32
+ container.appendChild(loading);
33
+ };
34
+ export var removePopupLoading = function removePopupLoading() {
35
+ var _document$getElementB;
36
+ var isShowMockup = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
37
+ var mockup = document.getElementById(MOCKUP_ID);
38
+ if (mockup) {
39
+ mockup.style.background = 'rgb(0, 0, 0, 0.6)';
40
+ mockup.style.display = isShowMockup ? 'block' : 'none';
41
+ }
42
+ (_document$getElementB = document.getElementById(POPUPLOADING_ID)) === null || _document$getElementB === void 0 || _document$getElementB.remove();
43
+ };
6
44
  // 创建和插入样式表
7
45
  export var insertStyleSheet = function insertStyleSheet() {
8
46
  var style = document.createElement('style');
9
47
  style.innerHTML = modalStyles;
10
48
  document.head.appendChild(style);
11
49
  };
12
-
50
+ var modalDevice = 'desktop';
13
51
  // 插入弹窗
52
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
14
53
  export var createModal = function createModal(_ref) {
15
54
  var device = _ref.device,
16
55
  url = _ref.url,
17
56
  widthPadding = _ref.widthPadding,
18
- heightPadding = _ref.heightPadding;
57
+ loadingConfig = _ref.loadingConfig;
19
58
  return new Promise(function (resolve, reject) {
20
59
  try {
60
+ modalDevice = device;
21
61
  var overlay = document.createElement('div');
22
62
  overlay.classList.add("".concat(AMSPOPUP_PREFIX, "overlay"), "".concat(AMSPOPUP_PREFIX, "fadeIn"));
23
63
  var modal = document.createElement('div');
24
- modal.classList.add("".concat(AMSPOPUP_PREFIX, "modal"), "".concat(AMSPOPUP_PREFIX, "fadeIn"));
25
64
  if (device === 'desktop') {
65
+ modal.classList.add("".concat(AMSPOPUP_PREFIX, "modal"), "".concat(AMSPOPUP_PREFIX, "fadeIn"));
26
66
  modal.style.width = '656px';
27
67
  modal.style.height = '620px';
28
68
  modal.style.borderRadius = '12px';
29
69
  } else {
30
- modal.style.width = "calc(100% - ".concat(2 * widthPadding, "px)");
31
- modal.style.height = "calc(100% - ".concat(2 * heightPadding, "px)");
32
- modal.style.borderRadius = '8px';
70
+ modal.classList.add("".concat(AMSPOPUP_PREFIX, "modal-mobile"), "".concat(AMSPOPUP_PREFIX, "-drawer-enter"));
71
+ modal.style.width = '100%';
72
+ modal.style.height = '80vh';
73
+ modal.style.borderRadius = '12px 12px 0 0';
33
74
  }
34
75
  var iframe = document.createElement('iframe');
35
76
  iframe.src = url; // 替换为实际的 URL 地址
36
77
  iframe.style.border = 'none';
37
78
  iframe.style.width = '100%';
38
79
  iframe.style.height = '100%';
80
+ if (loadingConfig && Object.keys(loadingConfig).length) {
81
+ var _loadingConfig$theme = loadingConfig.theme,
82
+ theme = _loadingConfig$theme === void 0 ? 'default' : _loadingConfig$theme,
83
+ _loadingConfig$backgr = loadingConfig.backgroundPrimary,
84
+ backgroundPrimary = _loadingConfig$backgr === void 0 ? '#ffffff' : _loadingConfig$backgr;
85
+ var mode = getCurrentTheme(theme);
86
+ renderPopupLoading(modal, mode);
87
+ modal.style.backgroundColor = backgroundPrimary;
88
+ iframe.style.backgroundColor = backgroundPrimary;
89
+ }
39
90
  modal.appendChild(iframe);
40
91
  var body = document.getElementsByTagName('body')[0];
41
92
  body.appendChild(overlay);
@@ -53,11 +104,16 @@ export var createModal = function createModal(_ref) {
53
104
  // 销毁弹窗
54
105
  export var destroyModal = function destroyModal() {
55
106
  var overlay = document.querySelector(".".concat(AMSPOPUP_PREFIX, "overlay"));
56
- var modal = document.querySelector(".".concat(AMSPOPUP_PREFIX, "modal"));
107
+ var modal = modalDevice === 'desktop' ? document.querySelector(".".concat(AMSPOPUP_PREFIX, "modal")) : document.querySelector(".".concat(AMSPOPUP_PREFIX, "modal-mobile"));
57
108
  overlay.classList.remove("".concat(AMSPOPUP_PREFIX, "fadeIn"));
58
109
  overlay.classList.add("".concat(AMSPOPUP_PREFIX, "fadeOut"));
59
- modal.classList.remove("".concat(AMSPOPUP_PREFIX, "fadeIn"));
60
- modal.classList.add("".concat(AMSPOPUP_PREFIX, "fadeOut"));
110
+ if (modalDevice === 'desktop') {
111
+ modal.classList.remove("".concat(AMSPOPUP_PREFIX, "fadeIn"));
112
+ modal.classList.add("".concat(AMSPOPUP_PREFIX, "fadeOut"));
113
+ } else {
114
+ modal.classList.remove("".concat(AMSPOPUP_PREFIX, "-drawer-enter"));
115
+ modal.classList.add("".concat(AMSPOPUP_PREFIX, "-drawer-exit"));
116
+ }
61
117
  setTimeout(function () {
62
118
  overlay.parentNode.removeChild(overlay);
63
119
  modal.parentNode.removeChild(modal);
@@ -50,18 +50,22 @@ export declare enum componentSignEnum {
50
50
  'CASHIER_PAYMENT_BANK' = "CASHIER_PAYMENT_BANK",
51
51
  'CASHIER_PAYMENT_APM' = "CASHIER_PAYMENT_APM",
52
52
  'AUTO_DEBIT_WALLET' = "AUTO_DEBIT_WALLET",
53
+ 'AUTO_DEBIT_PAY_WALLET' = "AUTO_DEBIT_PAY_WALLET",
53
54
  'NONE' = "NONE",
54
55
  'VAULTING_CARD' = "VAULTING_CARD",
55
- 'ELEMENT_PAYMENT' = "ELEMENT_PAYMENT_ALL"
56
+ 'ELEMENT_PAYMENT' = "ELEMENT_PAYMENT_ALL",
57
+ 'CHECKOUT_PAYMENT' = "CHECKOUT_PAYMENT"
56
58
  }
57
59
  export declare enum productSceneEnum {
58
60
  'EASY_PAY' = "EASY_PAY",
59
61
  'CASHIER_PAYMENT' = "CASHIER_PAYMENT",
60
62
  'AUTO_DEBIT' = "AUTO_DEBIT",
63
+ 'AUTO_DEBIT_PAY' = "AUTO_DEBIT_PAY",
61
64
  'VAULTING' = "VAULTING",
62
65
  'FLASH_BUY' = "FLASH_BUY",
63
66
  'CARD_APPLE_PAY' = "CARD_APPLE_PAY",
64
- 'ELEMENT_PAYMENT' = "ELEMENT_PAYMENT"
67
+ 'ELEMENT_PAYMENT' = "ELEMENT_PAYMENT",
68
+ 'CHECKOUT_PAYMENT' = "CHECKOUT_PAYMENT"
65
69
  }
66
70
  export declare enum paymentMethodCategoryTypeEnum {
67
71
  'CARD' = "CARD",
@@ -142,6 +146,10 @@ export interface InitSecurityConfig {
142
146
  product: productSceneEnum;
143
147
  region?: string;
144
148
  }
149
+ export interface frontModulesToBeLoadedInterface {
150
+ acquirerName: string;
151
+ scriptUrl: string;
152
+ }
145
153
  export interface IpaymentSessionMetaData {
146
154
  clientId?: string;
147
155
  renderDisplayType?: string;
@@ -229,6 +237,7 @@ export interface IpaymentSessionMetaData {
229
237
  */
230
238
  agreementDescription?: string;
231
239
  };
240
+ frontModulesToBeLoaded?: frontModulesToBeLoadedInterface[];
232
241
  };
233
242
  }
234
243
  export interface IPaymentSessionFactor {
@@ -26,19 +26,23 @@ export var componentSignEnum = /*#__PURE__*/function (componentSignEnum) {
26
26
  componentSignEnum["CASHIER_PAYMENT_BANK"] = "CASHIER_PAYMENT_BANK";
27
27
  componentSignEnum["CASHIER_PAYMENT_APM"] = "CASHIER_PAYMENT_APM";
28
28
  componentSignEnum["AUTO_DEBIT_WALLET"] = "AUTO_DEBIT_WALLET";
29
+ componentSignEnum["AUTO_DEBIT_PAY_WALLET"] = "AUTO_DEBIT_PAY_WALLET";
29
30
  componentSignEnum["NONE"] = "NONE";
30
31
  componentSignEnum["VAULTING_CARD"] = "VAULTING_CARD";
31
32
  componentSignEnum["ELEMENT_PAYMENT"] = "ELEMENT_PAYMENT_ALL";
33
+ componentSignEnum["CHECKOUT_PAYMENT"] = "CHECKOUT_PAYMENT";
32
34
  return componentSignEnum;
33
35
  }({});
34
36
  export var productSceneEnum = /*#__PURE__*/function (productSceneEnum) {
35
37
  productSceneEnum["EASY_PAY"] = "EASY_PAY";
36
38
  productSceneEnum["CASHIER_PAYMENT"] = "CASHIER_PAYMENT";
37
39
  productSceneEnum["AUTO_DEBIT"] = "AUTO_DEBIT";
40
+ productSceneEnum["AUTO_DEBIT_PAY"] = "AUTO_DEBIT_PAY";
38
41
  productSceneEnum["VAULTING"] = "VAULTING";
39
42
  productSceneEnum["FLASH_BUY"] = "FLASH_BUY";
40
43
  productSceneEnum["CARD_APPLE_PAY"] = "CARD_APPLE_PAY";
41
44
  productSceneEnum["ELEMENT_PAYMENT"] = "ELEMENT_PAYMENT";
45
+ productSceneEnum["CHECKOUT_PAYMENT"] = "CHECKOUT_PAYMENT";
42
46
  return productSceneEnum;
43
47
  }({});
44
48
  export var paymentMethodCategoryTypeEnum = /*#__PURE__*/function (paymentMethodCategoryTypeEnum) {
@@ -39,4 +39,10 @@ declare const getOrSetStorageId: (key: string, value?: string) => string;
39
39
  declare const checkTimeElapsed: () => boolean;
40
40
  declare const isFunction: (func: any) => boolean;
41
41
  declare function parseBase64ToString(base64: string): string;
42
- export { getType, EventCenter, getViewPort, getOrigin, serialize, isJsonString, isDom, isFunction, device, safeJson, isPC, queryParse, getDesignFontSize, amsSetSize, addSetFontSizeEvent, getOrSetStorageId, checkTimeElapsed, parseBase64ToString, };
42
+ declare function loadSDKScript({ src, attrOptions, timeOut, loadCallback }: {
43
+ src: any;
44
+ attrOptions?: {};
45
+ timeOut?: number;
46
+ loadCallback?: any;
47
+ }, logger: any): Promise<unknown>;
48
+ export { getType, EventCenter, getViewPort, getOrigin, serialize, isJsonString, isDom, isFunction, device, safeJson, isPC, queryParse, getDesignFontSize, amsSetSize, addSetFontSizeEvent, getOrSetStorageId, checkTimeElapsed, parseBase64ToString, loadSDKScript };