@alipay/ams-checkout 0.0.1748327361-dev.0 → 0.0.1748918972-dev.1

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 (48) 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/component/popupWindow.style.d.ts +4 -1
  5. package/esm/component/popupWindow.style.js +33 -1
  6. package/esm/config/index.d.ts +8 -8
  7. package/esm/config/index.js +8 -8
  8. package/esm/constant/easysafepay.d.ts +16 -0
  9. package/esm/constant/easysafepay.js +19 -0
  10. package/esm/constant/index.d.ts +29 -2
  11. package/esm/constant/index.js +31 -5
  12. package/esm/core/component/ckp/index.d.ts +2 -0
  13. package/esm/core/component/ckp/index.js +39 -5
  14. package/esm/core/component/element/elementController/index.d.ts +1 -1
  15. package/esm/core/component/element/elementController/index.js +29 -20
  16. package/esm/core/component/element/index.d.ts +0 -1
  17. package/esm/core/component/element/index.js +3 -6
  18. package/esm/core/component/element/type.d.ts +32 -33
  19. package/esm/core/component/element/type.js +20 -12
  20. package/esm/core/component/element/util.d.ts +9 -6
  21. package/esm/core/component/element/util.js +29 -30
  22. package/esm/core/component/oldElement/type.d.ts +3 -0
  23. package/esm/core/instance/index.js +1 -1
  24. package/esm/foundation/core/index.d.ts +3 -0
  25. package/esm/foundation/core/index.js +103 -37
  26. package/esm/foundation/index.d.ts +6 -0
  27. package/esm/foundation/product-processor/easysafepay/deps.d.ts +1 -1
  28. package/esm/foundation/product-processor/easysafepay/index.d.ts +2 -0
  29. package/esm/foundation/product-processor/easysafepay/index.js +244 -121
  30. package/esm/foundation/service/container/index.d.ts +8 -0
  31. package/esm/foundation/service/container/index.js +140 -18
  32. package/esm/foundation/service/container/popup.d.ts +9 -6
  33. package/esm/foundation/service/container/popup.js +3 -1
  34. package/esm/foundation/utils/preload_helper.d.ts +2 -2
  35. package/esm/foundation/utils/preload_helper.js +8 -4
  36. package/esm/foundation/utils/redirect_utils.js +34 -18
  37. package/esm/foundation/utils/web_app_url_utils.d.ts +71 -1
  38. package/esm/foundation/utils/web_app_url_utils.js +215 -8
  39. package/esm/index.js +1 -1
  40. package/esm/plugin/component/cashierApp.js +4 -4
  41. package/esm/plugin/component/channel.d.ts +3 -1
  42. package/esm/plugin/component/channel.js +10 -12
  43. package/esm/plugin/component/index.js +46 -43
  44. package/esm/types/index.d.ts +28 -1
  45. package/esm/types/index.js +8 -1
  46. package/esm/util/redirect.d.ts +6 -0
  47. package/esm/util/redirect.js +54 -0
  48. package/package.json +27 -4
@@ -20,19 +20,19 @@ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key i
20
20
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
21
21
  function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
22
22
  import { cleanMockup, removeRetentionPopup } from "../../../../component/component.popup.style";
23
- import { EVENT } from "../../../../constant";
23
+ import { destroyModal } from "../../../../component/popupWindow.style";
24
+ import { ERRORMESSAGE, EVENT } from "../../../../constant";
24
25
  import AddressProcessor from "../../../../core/component/element/elementProcessor/addressProcessor";
25
26
  import AuthProcessor from "../../../../core/component/element/elementProcessor/authProcessor";
26
27
  import PaymentProcessor from "../../../../core/component/element/elementProcessor/paymentProcessor";
27
28
  import { IElementStatus } from "../../../../foundation";
28
29
  import { AntomSDKCore } from "../../../../foundation/core";
29
- import { destroyModal } from "../../../../component/popupWindow.style";
30
30
  import { ElementProcessor } from "../../../../foundation/product-processor/element";
31
31
  import { ProductSceneEnum } from "../../../../types";
32
32
  import { ElementContainerService } from "../elementContainerService"; // 引入 ElementContainerService
33
33
  import { IContainerStatus } from "../elementContainerService/containerService";
34
34
  import { oneAccountUpdate, sdkActionUpdate } from "../mock";
35
- import { ElementPaymentEvent, ElementPaymentMethod, ElementType, EventCallbackCode } from "../type";
35
+ import { ElementPaymentEvent, ElementPaymentMethod, ElementType, EventCallbackCode, MountElementType } from "../type";
36
36
  import { checkCanMount, checkCanUpdate, handleRedirect, showToast } from "../util";
37
37
  var TIMEOUT_DURATION = 10000;
38
38
  var ElementController = /*#__PURE__*/function () {
@@ -100,15 +100,19 @@ var ElementController = /*#__PURE__*/function () {
100
100
  value: function onEventCallback(_ref) {
101
101
  var _this$options, _this$options$onEvent;
102
102
  var code = _ref.code,
103
- message = _ref.message;
103
+ _ref$message = _ref.message,
104
+ message = _ref$message === void 0 ? '' : _ref$message,
105
+ _ref$result = _ref.result,
106
+ result = _ref$result === void 0 ? undefined : _ref$result;
104
107
  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, {
105
108
  code: code,
106
- message: message
109
+ message: message,
110
+ result: result
107
111
  });
108
112
  }
109
113
  }, {
110
114
  key: "mount",
111
- value: function mount(renderOptions, sdkSelector, cashier) {
115
+ value: function mount(renderOptions, sdkSelector) {
112
116
  var _this = this;
113
117
  return new Promise(function (resolve) {
114
118
  var _checkCanMount = checkCanMount({
@@ -135,6 +139,7 @@ var ElementController = /*#__PURE__*/function () {
135
139
  _this.initTimeout = null;
136
140
  _this.changeLoading(false);
137
141
  _this.setControllerStatusOrView(IElementStatus.READY);
142
+ _this.onEventCallback(ERRORMESSAGE.SDK_LAUNCH_PAYMENT_APP_ERROR.CALL_APP_URL_ERROR);
138
143
  _this.elementContainerService.getContainerServices().forEach(function (value) {
139
144
  value.getContainerElement().remove();
140
145
  });
@@ -147,15 +152,14 @@ var ElementController = /*#__PURE__*/function () {
147
152
  appendAliasContainerId: true
148
153
  })
149
154
  };
150
- if (cashier && renderOptions.sessionData) {
151
- startBizFlowData.paymentSession = renderOptions.sessionData;
152
- }
153
155
  _this.setControllerStatusOrView(IElementStatus.IN_BIZ_FLOW);
154
156
  _this.elementContainer.startBizFlow(startBizFlowData).catch(function (error) {
155
157
  _this.onEventCallback({
156
158
  code: EventCallbackCode.SDK_CREATEPAYMENT_PARAMETER_ERROR,
157
159
  message: (error === null || error === void 0 ? void 0 : error.message) || 'Initialization parameter exception.'
158
160
  });
161
+ clearTimeout(_this.initTimeout);
162
+ _this.initTimeout = null;
159
163
  _this.changeLoading(false);
160
164
  return;
161
165
  });
@@ -278,11 +282,9 @@ var ElementController = /*#__PURE__*/function () {
278
282
  key: "addEventListener",
279
283
  value: function addEventListener(renderCallback) {
280
284
  var _this4 = this;
281
- this.serviceMap.EventCenter.listen(ElementPaymentEvent.CALLBACK, function (data) {
282
- if (_this4.elementProcessors[data.source] && _this4.elementProcessors[data.source].eventListener[data.event]) {
283
- var _this4$elementProcess, _this4$elementProcess2;
284
- (_this4$elementProcess = (_this4$elementProcess2 = _this4.elementProcessors[data.source].eventListener)[data.event]) === null || _this4$elementProcess === void 0 || _this4$elementProcess.call(_this4$elementProcess2, data.data);
285
- }
285
+ this.serviceMap.EventCenter.listen(ElementPaymentEvent.ON_EVENT_CALLBACK, function (data) {
286
+ var _this4$onEventCallbac;
287
+ (_this4$onEventCallbac = _this4.onEventCallback) === null || _this4$onEventCallbac === void 0 || _this4$onEventCallbac.call(_this4, data);
286
288
  });
287
289
  this.serviceMap.EventCenter.listen(EVENT.sizeChanged.name, function (data) {
288
290
  clearTimeout(_this4.initTimeout);
@@ -303,7 +305,8 @@ var ElementController = /*#__PURE__*/function () {
303
305
  // }
304
306
  });
305
307
  this.serviceMap.EventCenter.listen(EVENT.redirect.name, function (data) {
306
- handleRedirect(data);
308
+ var onEventCallback = _this4.onEventCallback.bind(_this4);
309
+ handleRedirect(data, false, onEventCallback);
307
310
  });
308
311
  this.serviceMap.EventCenter.listen(EVENT.destroy.name, function () {
309
312
  _this4.setControllerStatusOrView(IElementStatus.READY);
@@ -322,9 +325,15 @@ var ElementController = /*#__PURE__*/function () {
322
325
  this.serviceMap.EventCenter.listen(EVENT.showToast.name, function (data) {
323
326
  showToast(data);
324
327
  });
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
+ this.serviceMap.EventCenter.listen(EVENT.messageForward.name, function (data) {
329
+ var source = MountElementType[data.source];
330
+ var target = MountElementType[data.target];
331
+ if (_this4.elementProcessors[source] && _this4.elementProcessors[target]) {
332
+ _this4.elementProcessors[target].eventCenter.dispatchToApp({
333
+ event: data.event,
334
+ data: data
335
+ });
336
+ }
328
337
  });
329
338
  }
330
339
  }, {
@@ -361,11 +370,11 @@ var ElementController = /*#__PURE__*/function () {
361
370
  var paymentSessionObj = paymentContext.paymentSessionObj;
362
371
  var isConnect = paymentSessionObj.connectFactor.enableConnect && ((_paymentSessionObj$pa = paymentSessionObj.paymentSessionConfig) === null || _paymentSessionObj$pa === void 0 ? void 0 : _paymentSessionObj$pa.productScene) === ProductSceneEnum.ELEMENT_PAYMENT;
363
372
  if (!(paymentResult !== null && paymentResult !== void 0 && (_paymentResult$origin = paymentResult.originActionQueryResult) !== null && _paymentResult$origin !== void 0 && _paymentResult$origin.success) && isConnect) {
364
- var _this$options$onEvent2, _this$options2;
373
+ var _this$onEventCallback;
365
374
  clearTimeout(this.initTimeout);
366
375
  this.changeLoading(false);
367
376
  this.initTimeout = null;
368
- (_this$options$onEvent2 = (_this$options2 = this.options).onEventCallback) === null || _this$options$onEvent2 === void 0 || _this$options$onEvent2.call(_this$options2, {
377
+ (_this$onEventCallback = this.onEventCallback) === null || _this$onEventCallback === void 0 || _this$onEventCallback.call(this, {
369
378
  code: EventCallbackCode.SDK_CREATE_COMPONENT_ERROR,
370
379
  message: 'Component initialization exception.'
371
380
  });
@@ -7,7 +7,6 @@ export declare class ElementComponent {
7
7
  mount(renderOptions: LinkAuthMountOptions, sdkSelector: string): LinkAuthMountResult;
8
8
  mount(renderOptions: AddressMountOptions, sdkSelector: string): AddressMountResult;
9
9
  mount(renderOptions: PaymentMountOptions, sdkSelector: string): PaymentMountResult;
10
- mountCashier(renderOptions: any, sdkSelector: any): any;
11
10
  submitPayment(): void;
12
11
  destroy(): void;
13
12
  }
@@ -11,12 +11,14 @@ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key i
11
11
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
12
12
  function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
13
13
  import ElementController from "./elementController";
14
- import { formatElementOption } from "./util";
14
+ import { formatElementOption, validateElementOption } from "./util";
15
15
  export var ElementComponent = /*#__PURE__*/function () {
16
16
  function ElementComponent(options) {
17
17
  _classCallCheck(this, ElementComponent);
18
18
  _defineProperty(this, "options", void 0);
19
19
  _defineProperty(this, "controller", void 0);
20
+ var validate = validateElementOption(options);
21
+ if (!validate) return;
20
22
  this.options = formatElementOption(options);
21
23
  this.controller = new ElementController(options);
22
24
  }
@@ -47,11 +49,6 @@ export var ElementComponent = /*#__PURE__*/function () {
47
49
  appearance: this === null || this === void 0 || (_this$options = this.options) === null || _this$options === void 0 ? void 0 : _this$options.appearance
48
50
  }, renderOptions), sdkSelector);
49
51
  }
50
- }, {
51
- key: "mountCashier",
52
- value: function mountCashier(renderOptions, sdkSelector) {
53
- return this.controller.mount(renderOptions, sdkSelector, true);
54
- }
55
52
  }, {
56
53
  key: "submitPayment",
57
54
  value: function submitPayment() {
@@ -2,6 +2,9 @@ import { ActionForm, ConnectErrorCode, IAmount, IAmountView, IMerchantAppointPar
2
2
  import AddressProcessor from './elementProcessor/addressProcessor';
3
3
  import AuthProcessor from './elementProcessor/authProcessor';
4
4
  import PaymentProcessor from './elementProcessor/paymentProcessor';
5
+ /**
6
+ * element 消息事件名
7
+ */
5
8
  export declare enum ElementPaymentEvent {
6
9
  RENDER_COMPONENT = "renderComponent",
7
10
  CAPTURE_ASSET = "onCaptureAsset",
@@ -13,9 +16,13 @@ export declare enum ElementPaymentEvent {
13
16
  SIZE_CHANGE = "onSizeChange",
14
17
  LAUNCH = "onLaunch",
15
18
  CALLBACK = "callback",
19
+ /**
20
+ * @deprecated 已废弃 请使用eventCallback
21
+ */
16
22
  SEND_MUITI_APP_EVENT_TO_SDK = "sendMuitiAppEventToSdk",
17
23
  LOG = "log",
18
- HANDLE_PAYMENT = "handlePayment"
24
+ HANDLE_PAYMENT = "handlePayment",
25
+ ON_EVENT_CALLBACK = "onEventCallback"
19
26
  }
20
27
  export declare enum ElementPaymentMethod {
21
28
  CONTAINER_ELEMENT = "CONTAINER_ELEMENT",
@@ -23,6 +30,19 @@ export declare enum ElementPaymentMethod {
23
30
  ADDRESS_ELEMENT = "ADDRESS_ELEMENT",
24
31
  PAYMENT_ELEMENT = "PAYMENT_ELEMENT"
25
32
  }
33
+ export declare enum ElementType {
34
+ auth = "auth",
35
+ address = "address",
36
+ payment = "payment"
37
+ }
38
+ export declare const MountElementType: {
39
+ auth: ElementPaymentMethod;
40
+ address: ElementPaymentMethod;
41
+ payment: ElementPaymentMethod;
42
+ AUTH_ELEMENT: ElementType;
43
+ ADDRESS_ELEMENT: ElementType;
44
+ PAYMENT_ELEMENT: ElementType;
45
+ };
26
46
  export declare enum ThemeType {
27
47
  NostalgicGray = "nostalgicGray",
28
48
  Default = "default",
@@ -31,27 +51,22 @@ export declare enum ThemeType {
31
51
  GamingPurple = "gamingPurple",
32
52
  AgateGreen = "agateGreen"
33
53
  }
34
- export declare enum ElementType {
35
- auth = "auth",
36
- address = "address",
37
- payment = "payment"
38
- }
39
54
  export declare enum PaymentElementLayout {
40
55
  Tabs = "tabs",
41
56
  Accordion = "Accordion"
42
57
  }
43
- export declare enum MountElementType {
44
- auth = "AUTH_ELEMENT",
45
- address = "ADDRESS_ELEMENT",
46
- payment = "PAYMENT_ELEMENT"
47
- }
48
58
  export declare const addressTheme: {
49
59
  default: string;
50
60
  night: string;
51
61
  };
52
62
  export declare enum EventCallbackCode {
53
63
  SDK_CREATE_COMPONENT_ERROR = "SDK_CREATE_COMPONENT_ERROR",
54
- SDK_CREATEPAYMENT_PARAMETER_ERROR = "SDK_CREATEPAYMENT_PARAMETER_ERROR"
64
+ SDK_CREATEPAYMENT_PARAMETER_ERROR = "SDK_CREATEPAYMENT_PARAMETER_ERROR",
65
+ SDK_PAYMENT_ERROR = "SDK_PAYMENT_ERROR",
66
+ SDK_PAYMENT_FAIL = "SDK_PAYMENT_FAIL",
67
+ SDK_PAYMENT_CANCEL = "SDK_PAYMENT_CANCEL",
68
+ SDK_PAYMENT_SUCCESSFUL = "SDK_PAYMENT_SUCCESSFUL",
69
+ SDK_PAYMENT_PROCESSING = "SDK_PAYMENT_PROCESSING"
55
70
  }
56
71
  export declare enum ELEMENT_ENVIRONMENT {
57
72
  DEV = "DEV",
@@ -62,23 +77,6 @@ export declare enum ELEMENT_ENVIRONMENT {
62
77
  SANDBOX = "SANDBOX"
63
78
  }
64
79
  export type ELEMENT_ENVIRONMENT_TYPE = keyof typeof ELEMENT_ENVIRONMENT | (typeof ELEMENT_ENVIRONMENT)[keyof typeof ELEMENT_ENVIRONMENT];
65
- export interface IElementOptions {
66
- environment?: ELEMENT_ENVIRONMENT_TYPE;
67
- locale?: string;
68
- version?: string;
69
- appearance?: {
70
- theme: ThemeType.Default | ThemeType.Night;
71
- };
72
- onEventCallback?: ({ code, message, result }: {
73
- code: EventCallbackCode;
74
- message: string;
75
- result?: any;
76
- }) => void;
77
- loading?: {
78
- onStartLoading: () => void;
79
- onEndLoading: () => void;
80
- };
81
- }
82
80
  export interface AddressMountComponentsParams {
83
81
  configParams?: AddressMountConfig;
84
82
  prefillValue: Array<AddressSubmitData>;
@@ -95,7 +93,6 @@ export interface AddressMountComponentsParams {
95
93
  }
96
94
  interface BaseMountOptions<T = void> {
97
95
  configParams?: T;
98
- sessionData: string;
99
96
  debugProps?: {
100
97
  localLink: string;
101
98
  };
@@ -178,12 +175,14 @@ export interface LinkAuthMountResult extends BaseMountResult {
178
175
  }
179
176
  export interface PaymentMountResult extends BaseMountResult {
180
177
  }
181
- export interface EventCallbackData<T = {}> {
178
+ /**
179
+ * connect element之间通信的类型格式
180
+ */
181
+ export interface ConnectElementMessageDataType<T = {}> {
182
182
  source?: ElementPaymentMethod;
183
183
  target?: ElementPaymentMethod;
184
- success?: boolean;
185
184
  data?: T;
186
- event?: AddressEventCallbackName;
185
+ event?: ElementPaymentEvent;
187
186
  }
188
187
  export interface ValidateResult<T = {}> {
189
188
  success: boolean;
@@ -2,6 +2,9 @@ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" ==
2
2
  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; }
3
3
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
4
4
  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); }
5
+ /**
6
+ * element 消息事件名
7
+ */
5
8
  export var ElementPaymentEvent = /*#__PURE__*/function (ElementPaymentEvent) {
6
9
  ElementPaymentEvent["RENDER_COMPONENT"] = "renderComponent";
7
10
  ElementPaymentEvent["CAPTURE_ASSET"] = "onCaptureAsset";
@@ -16,6 +19,7 @@ export var ElementPaymentEvent = /*#__PURE__*/function (ElementPaymentEvent) {
16
19
  ElementPaymentEvent["SEND_MUITI_APP_EVENT_TO_SDK"] = "sendMuitiAppEventToSdk";
17
20
  ElementPaymentEvent["LOG"] = "log";
18
21
  ElementPaymentEvent["HANDLE_PAYMENT"] = "handlePayment";
22
+ ElementPaymentEvent["ON_EVENT_CALLBACK"] = "onEventCallback";
19
23
  return ElementPaymentEvent;
20
24
  }({});
21
25
  export var ElementPaymentMethod = /*#__PURE__*/function (ElementPaymentMethod) {
@@ -25,6 +29,13 @@ export var ElementPaymentMethod = /*#__PURE__*/function (ElementPaymentMethod) {
25
29
  ElementPaymentMethod["PAYMENT_ELEMENT"] = "PAYMENT_ELEMENT";
26
30
  return ElementPaymentMethod;
27
31
  }({});
32
+ export var ElementType = /*#__PURE__*/function (ElementType) {
33
+ ElementType["auth"] = "auth";
34
+ ElementType["address"] = "address";
35
+ ElementType["payment"] = "payment";
36
+ return ElementType;
37
+ }({});
38
+ export var MountElementType = _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, ElementType.auth, ElementPaymentMethod.AUTH_ELEMENT), ElementType.address, ElementPaymentMethod.ADDRESS_ELEMENT), ElementType.payment, ElementPaymentMethod.PAYMENT_ELEMENT), ElementPaymentMethod.AUTH_ELEMENT, ElementType.auth), ElementPaymentMethod.ADDRESS_ELEMENT, ElementType.address), ElementPaymentMethod.PAYMENT_ELEMENT, ElementType.payment);
28
39
  export var ThemeType = /*#__PURE__*/function (ThemeType) {
29
40
  ThemeType["NostalgicGray"] = "nostalgicGray";
30
41
  ThemeType["Default"] = "default";
@@ -34,27 +45,20 @@ export var ThemeType = /*#__PURE__*/function (ThemeType) {
34
45
  ThemeType["AgateGreen"] = "agateGreen";
35
46
  return ThemeType;
36
47
  }({});
37
- export var ElementType = /*#__PURE__*/function (ElementType) {
38
- ElementType["auth"] = "auth";
39
- ElementType["address"] = "address";
40
- ElementType["payment"] = "payment";
41
- return ElementType;
42
- }({});
43
48
  export var PaymentElementLayout = /*#__PURE__*/function (PaymentElementLayout) {
44
49
  PaymentElementLayout["Tabs"] = "tabs";
45
50
  PaymentElementLayout["Accordion"] = "Accordion";
46
51
  return PaymentElementLayout;
47
52
  }({});
48
- export var MountElementType = /*#__PURE__*/function (MountElementType) {
49
- MountElementType["auth"] = "AUTH_ELEMENT";
50
- MountElementType["address"] = "ADDRESS_ELEMENT";
51
- MountElementType["payment"] = "PAYMENT_ELEMENT";
52
- return MountElementType;
53
- }({});
54
53
  export var addressTheme = _defineProperty(_defineProperty({}, ThemeType.Default, 'LIGHT'), ThemeType.Night, 'NIGHT');
55
54
  export var EventCallbackCode = /*#__PURE__*/function (EventCallbackCode) {
56
55
  EventCallbackCode["SDK_CREATE_COMPONENT_ERROR"] = "SDK_CREATE_COMPONENT_ERROR";
57
56
  EventCallbackCode["SDK_CREATEPAYMENT_PARAMETER_ERROR"] = "SDK_CREATEPAYMENT_PARAMETER_ERROR";
57
+ EventCallbackCode["SDK_PAYMENT_ERROR"] = "SDK_PAYMENT_ERROR";
58
+ EventCallbackCode["SDK_PAYMENT_FAIL"] = "SDK_PAYMENT_FAIL";
59
+ EventCallbackCode["SDK_PAYMENT_CANCEL"] = "SDK_PAYMENT_CANCEL";
60
+ EventCallbackCode["SDK_PAYMENT_SUCCESSFUL"] = "SDK_PAYMENT_SUCCESSFUL";
61
+ EventCallbackCode["SDK_PAYMENT_PROCESSING"] = "SDK_PAYMENT_PROCESSING";
58
62
  return EventCallbackCode;
59
63
  }({});
60
64
  export var ELEMENT_ENVIRONMENT = /*#__PURE__*/function (ELEMENT_ENVIRONMENT) {
@@ -73,6 +77,10 @@ export var AddressEventCallbackName = /*#__PURE__*/function (AddressEventCallbac
73
77
  return AddressEventCallbackName;
74
78
  }({});
75
79
 
80
+ /**
81
+ * connect element之间通信的类型格式
82
+ */
83
+
76
84
  // export type IMountResult = AddressMountResult | LinkAuthMountResult | PaymentMountResult;
77
85
  var AccountStatusEnum = /*#__PURE__*/function (AccountStatusEnum) {
78
86
  AccountStatusEnum["EFFECTIVE"] = "EFFECTIVE";
@@ -1,16 +1,17 @@
1
1
  import { IElementStatus } from '../../../foundation';
2
2
  import { Ianalytics, IPaymentSessionMetaData } from '../../../types';
3
3
  import { ContainerController } from './elementContainerService/containerService';
4
- import { ELEMENT_ENVIRONMENT_TYPE, IElementOptions, IToastOptions } from './type';
5
- declare const formatElementOption: (options: IElementOptions) => {
4
+ import { ELEMENT_ENVIRONMENT_TYPE, IElementOptions, IToastOptions, EventCallbackCode } from './type';
5
+ export declare const formatElementOption: (options: IElementOptions) => {
6
6
  environment: ELEMENT_ENVIRONMENT_TYPE;
7
+ sessionData: string;
7
8
  locale?: string;
8
9
  version?: string;
9
10
  appearance?: {
10
11
  theme: import("./type").ThemeType.Default | import("./type").ThemeType.Night;
11
12
  };
12
13
  onEventCallback?: ({ code, message, result }: {
13
- code: import("./type").EventCallbackCode;
14
+ code: EventCallbackCode;
14
15
  message: string;
15
16
  result?: any;
16
17
  }) => void;
@@ -18,8 +19,8 @@ declare const formatElementOption: (options: IElementOptions) => {
18
19
  onStartLoading: () => void;
19
20
  onEndLoading: () => void;
20
21
  };
21
- sessionData: string;
22
22
  };
23
+ export declare const validateElementOption: (options: IElementOptions) => boolean;
23
24
  /**
24
25
  * 校验渲染条件
25
26
  * 校验当前sdkSelector结点是否存在
@@ -49,7 +50,10 @@ export declare function generateIframeSrc({ paymentSessionObj, paymentSession, i
49
50
  appVersion: string;
50
51
  link?: string;
51
52
  }): string;
52
- export declare function handleRedirect(data: any, fromFastSdk?: boolean): void;
53
+ export declare function handleRedirect(data: any, fromFastSdk: boolean, eventCallback: ({ code, message }: {
54
+ code: any;
55
+ message: any;
56
+ }) => void): void;
53
57
  export declare function redirect(data: {
54
58
  normalUrl?: string;
55
59
  schemeUrl?: string;
@@ -63,4 +67,3 @@ export declare const isElementMobile: () => boolean;
63
67
  */
64
68
  export declare const isElementPad: () => boolean;
65
69
  export declare const isElementPC: () => boolean;
66
- export { formatElementOption };
@@ -13,17 +13,28 @@ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e
13
13
  import { ERRORMESSAGE } from "../../../constant";
14
14
  import { IElementStatus } from "../../../foundation";
15
15
  import { getIframeUrl } from "../../../plugin/component/cashierApp";
16
- import { DisplayTypeEnum, RedirectType, TargetEnum, terminalTypeEnum } from "../../../types";
16
+ import { DisplayTypeEnum, eventCodeEnum, RedirectType, TargetEnum, terminalTypeEnum } from "../../../types";
17
17
  import { device } from "../../../util/index";
18
18
  import CallApp from "../../../util/intl-callapp/es/main";
19
19
  import { getComponentSign, parseSessionData } from "../index";
20
- import { ELEMENT_ENVIRONMENT } from "./type";
21
- var formatElementOption = function formatElementOption(options) {
20
+ import { ELEMENT_ENVIRONMENT, EventCallbackCode } from "./type";
21
+ export var formatElementOption = function formatElementOption(options) {
22
22
  var environment = options.environment;
23
23
  return _objectSpread(_objectSpread({}, options), {}, {
24
24
  environment: (environment || ELEMENT_ENVIRONMENT.PROD).toLocaleLowerCase()
25
25
  });
26
26
  };
27
+ export var validateElementOption = function validateElementOption(options) {
28
+ if (!options.sessionData) {
29
+ var _options$onEventCallb;
30
+ options === null || options === void 0 || (_options$onEventCallb = options.onEventCallback) === null || _options$onEventCallb === void 0 || _options$onEventCallb.call(options, {
31
+ code: EventCallbackCode.SDK_CREATE_COMPONENT_ERROR,
32
+ message: 'sessionData is empty'
33
+ });
34
+ return false;
35
+ }
36
+ return true;
37
+ };
27
38
 
28
39
  /**
29
40
  * 校验渲染条件
@@ -110,7 +121,7 @@ export function generateIframeSrc(_ref3) {
110
121
  var extendInfo = (paymentSessionObj === null || paymentSessionObj === void 0 ? void 0 : paymentSessionObj.extendInfo) || '';
111
122
  var mid = paymentSessionObj === null || paymentSessionObj === void 0 ? void 0 : paymentSessionObj.clientId;
112
123
  var hostSign = (paymentSession || '').split('&&')[1] || '';
113
- var baseUrl = _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, ELEMENT_ENVIRONMENT.DEV, 'https://pre.ac.alipay.com/page/antom-web-checkout-v2'), ELEMENT_ENVIRONMENT.TEST, 'https://pre.ac.alipay.com/page/antom-web-checkout-v2'), ELEMENT_ENVIRONMENT.SIT, 'http://page.test.alipay.net/page/antom-web-checkout-v2'), ELEMENT_ENVIRONMENT.PRE, 'https://pre.ac.alipay.com/page/antom-web-checkout-v2'), ELEMENT_ENVIRONMENT.SANDBOX, 'https://checkout.antom.com'), ELEMENT_ENVIRONMENT.PROD, 'https://checkout.antom.com');
124
+ var baseUrl = _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, ELEMENT_ENVIRONMENT.DEV, 'http://page.alipay.net/page/antom-web-checkout-v2'), ELEMENT_ENVIRONMENT.TEST, 'http://page.test.alipay.net/page/antom-web-checkout-v2'), ELEMENT_ENVIRONMENT.SIT, 'http://page.test.alipay.net/page/antom-web-checkout-v2'), ELEMENT_ENVIRONMENT.PRE, 'https://pre.ac.alipay.com/page/antom-web-checkout-v2'), ELEMENT_ENVIRONMENT.SANDBOX, 'https://checkout.antom.com'), ELEMENT_ENVIRONMENT.PROD, 'https://checkout.antom.com');
114
125
  var _env = (environment === null || environment === void 0 ? void 0 : environment.toLocaleUpperCase()) || ELEMENT_ENVIRONMENT.DEV;
115
126
  if (!link) {
116
127
  link = "".concat(baseUrl[_env]).concat(pageUrl);
@@ -138,6 +149,7 @@ export function generateIframeSrc(_ref3) {
138
149
  export function handleRedirect(data) {
139
150
  var _data$isDestroy, _data$isCallApp, _data$callAppDetectSu;
140
151
  var fromFastSdk = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
152
+ var eventCallback = arguments.length > 2 ? arguments[2] : undefined;
141
153
  console.log('local payment sdk new element redirect arg ----', this);
142
154
  var _data = typeof data === 'string' ? {
143
155
  normalUrl: data
@@ -171,10 +183,10 @@ export function handleRedirect(data) {
171
183
  // .send();
172
184
  var successCallback = function successCallback(type, url, durationInSeconds) {
173
185
  // TODO
174
- // event.dispatchToSDK(EVENT.eventCallback.name, {
175
- // code: eventCodeEnum.SDK_CALL_URL_SUCCESS,
176
- // message: `Successfully opened the app,${type}: ${url}`,
177
- // });
186
+ eventCallback({
187
+ code: eventCodeEnum.SDK_CALL_URL_SUCCESS,
188
+ message: "Successfully opened the app,".concat(type, ": ").concat(url)
189
+ });
178
190
  var extra = {
179
191
  redirectInfo: JSON.stringify(_data),
180
192
  openType: type,
@@ -194,10 +206,10 @@ export function handleRedirect(data) {
194
206
  // .send();
195
207
  };
196
208
  var failCallback = function failCallback(type, url, durationInSeconds) {
197
- // event.dispatchToSDK(EVENT.eventCallback.name, {
198
- // code: eventCodeEnum.SDK_CALL_URL_ERROR,
199
- // message: `Failed to open app,applinkUrl: ${_data?.applinkUrl} schemeUrl: ${_data?.schemeUrl} normalUrl: ${_data?.normalUrl}`,
200
- // });
209
+ eventCallback({
210
+ code: eventCodeEnum.SDK_LAUNCH_PAYMENT_APP_ERROR,
211
+ message: "Failed to open app,applinkUrl: ".concat(_data === null || _data === void 0 ? void 0 : _data.applinkUrl, " schemeUrl: ").concat(_data === null || _data === void 0 ? void 0 : _data.schemeUrl, " normalUrl: ").concat(_data === null || _data === void 0 ? void 0 : _data.normalUrl)
212
+ });
201
213
  var extra = {
202
214
  redirectInfo: JSON.stringify(_data),
203
215
  openType: type,
@@ -253,21 +265,9 @@ export function handleRedirect(data) {
253
265
  return;
254
266
  }
255
267
  redirect({
256
- applinkUrl: _data === null || _data === void 0 ? void 0 : _data.applinkUrl
257
- }).then(function () {
258
- successCallback(RedirectType.ApplinkUrl, _data === null || _data === void 0 ? void 0 : _data.applinkUrl);
259
- }).catch(function () {
260
- if (_data !== null && _data !== void 0 && _data.applinkUrl) failCallback(RedirectType.ApplinkUrl, _data === null || _data === void 0 ? void 0 : _data.applinkUrl);
261
- return redirect({
262
- schemeUrl: _data === null || _data === void 0 ? void 0 : _data.schemeUrl
263
- });
264
- }).then(function () {
265
- successCallback(RedirectType.SchemeUrl, _data === null || _data === void 0 ? void 0 : _data.schemeUrl);
266
- }).catch(function () {
267
- if (_data !== null && _data !== void 0 && _data.schemeUrl) failCallback(RedirectType.SchemeUrl, _data === null || _data === void 0 ? void 0 : _data.schemeUrl);
268
- return redirect({
269
- normalUrl: _data === null || _data === void 0 ? void 0 : _data.normalUrl
270
- });
268
+ applinkUrl: _data === null || _data === void 0 ? void 0 : _data.applinkUrl,
269
+ schemeUrl: _data === null || _data === void 0 ? void 0 : _data.schemeUrl,
270
+ normalUrl: _data === null || _data === void 0 ? void 0 : _data.normalUrl
271
271
  }).then(function () {
272
272
  successCallback(RedirectType.NormalUrl, _data === null || _data === void 0 ? void 0 : _data.normalUrl);
273
273
  }).catch(function () {
@@ -288,7 +288,7 @@ export function redirect(data) {
288
288
  window.location.href = normalUrl;
289
289
  return;
290
290
  }
291
- reject(ERRORMESSAGE.SDK_CALL_URL_ERROR.REDIRECT_ERROR);
291
+ reject(ERRORMESSAGE.SDK_LAUNCH_PAYMENT_APP_ERROR.CALL_APP_URL_ERROR);
292
292
  };
293
293
  var callAppFunc = function callAppFunc() {
294
294
  if (!schemeUrl && !applinkUrl) {
@@ -474,5 +474,4 @@ export var isElementPad = function isElementPad() {
474
474
  };
475
475
  export var isElementPC = function isElementPC() {
476
476
  return !isElementMobile();
477
- };
478
- export { formatElementOption };
477
+ };
@@ -10,6 +10,9 @@ export declare enum ElementPaymentEvent {
10
10
  SIZE_CHANGE = "onSizeChange",
11
11
  LAUNCH = "onLaunch",
12
12
  CALLBACK = "callback",
13
+ /**
14
+ * @deprecated 已废弃 请使用eventCallback
15
+ */
13
16
  SEND_MUITI_APP_EVENT_TO_SDK = "sendMuitiAppEventToSdk",
14
17
  LOG = "log",
15
18
  HANDLE_PAYMENT = "handlePayment"
@@ -435,7 +435,7 @@ var AMSSDK = /*#__PURE__*/function () {
435
435
  window.location.href = normalUrl;
436
436
  return;
437
437
  }
438
- reject(ERRORMESSAGE.SDK_CALL_URL_ERROR.REDIRECT_ERROR);
438
+ reject(ERRORMESSAGE.SDK_LAUNCH_PAYMENT_APP_ERROR.CALL_APP_URL_ERROR);
439
439
  };
440
440
  var callAppFunc = function callAppFunc() {
441
441
  if (!schemeUrl && !applinkUrl) {
@@ -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;