@alipay/ams-checkout 1.29.0 → 1.30.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.
@@ -5,10 +5,10 @@ export declare const sdkVersion: string;
5
5
  /**
6
6
  * @description: 目前应用层分为v1和v2,会存在两个应用版本号不是同步发布的情况。所以需要把默认的应用版本号配置抽离出来。
7
7
  */
8
- export declare const AMSCheckoutAppVersion = "1.29.0";
9
- export declare const AMSAutoDebitAppVersion = "1.29.0";
10
- export declare const AMSEasyPayAppVersion = "1.29.0";
11
- export declare const AMSCashierPaymentAppVersion = "1.29.0";
12
- export declare const AMSVaultingAppVersion = "1.29.0";
13
- export declare const AMSPaymentElementAppVersion = "1.29.0";
14
- export declare const ADDRESSElementAppVersion = "1.29.0";
8
+ export declare const AMSCheckoutAppVersion = "1.30.0";
9
+ export declare const AMSAutoDebitAppVersion = "1.30.0";
10
+ export declare const AMSEasyPayAppVersion = "1.30.0";
11
+ export declare const AMSCashierPaymentAppVersion = "1.30.0";
12
+ export declare const AMSVaultingAppVersion = "1.30.0";
13
+ export declare const AMSPaymentElementAppVersion = "1.30.0";
14
+ export declare const ADDRESSElementAppVersion = "1.30.0";
@@ -35,10 +35,10 @@ export var sdkVersion = json.version;
35
35
  /**
36
36
  * @description: 目前应用层分为v1和v2,会存在两个应用版本号不是同步发布的情况。所以需要把默认的应用版本号配置抽离出来。
37
37
  */
38
- export var AMSCheckoutAppVersion = '1.29.0'; // 兜底版本号
39
- export var AMSAutoDebitAppVersion = '1.29.0'; // 代扣
40
- export var AMSEasyPayAppVersion = '1.29.0'; // easypay
41
- export var AMSCashierPaymentAppVersion = '1.29.0'; // 收银台(卡、apm)
42
- export var AMSVaultingAppVersion = '1.29.0'; // 绑卡
43
- export var AMSPaymentElementAppVersion = '1.29.0'; // payment element
44
- export var ADDRESSElementAppVersion = '1.29.0'; // address element
38
+ export var AMSCheckoutAppVersion = '1.30.0'; // 兜底版本号
39
+ export var AMSAutoDebitAppVersion = '1.30.0'; // 代扣
40
+ export var AMSEasyPayAppVersion = '1.30.0'; // easypay
41
+ export var AMSCashierPaymentAppVersion = '1.30.0'; // 收银台(卡、apm)
42
+ export var AMSVaultingAppVersion = '1.30.0'; // 绑卡
43
+ export var AMSPaymentElementAppVersion = '1.30.0'; // payment element
44
+ export var ADDRESSElementAppVersion = '1.30.0'; // address element
@@ -20,6 +20,7 @@ export declare class ElementComponent {
20
20
  private iframes;
21
21
  private componentsCount;
22
22
  private eventCallback;
23
+ private ApplePayService;
23
24
  constructor(options: IElementOptions);
24
25
  private createElement;
25
26
  private createIframeSrc;
@@ -33,6 +34,7 @@ export declare class ElementComponent {
33
34
  private mountAuth;
34
35
  private mountAddress;
35
36
  private mountPayment;
37
+ private initApplePaySdk;
36
38
  mountErrorHandle(): void;
37
39
  mount(renderOptions: AddressMountOptions, sdkSelector: string): AddressMountResult;
38
40
  mount(renderOptions: PaymentMountOptions, sdkSelector: string): PaymentMountResult;
@@ -25,9 +25,10 @@ import { ElementAddressComponent } from "./components/address";
25
25
  import { ElementAuthComponent } from "./components/auth";
26
26
  import { ElementPaymentComponent } from "./components/payment";
27
27
  // import { oneAccount, sdkAction, submitResult } from './mock';
28
+ import { ApplePaySdk, isSkipRenderPaymentMethod } from "../../../plugin/component/channel";
28
29
  import { v4 as uuid } from 'uuid';
29
- import { addressTheme, ELEMENT_ENVIRONMENT, ThemeType } from "./type";
30
30
  import { LogConfig, Logger } from "../../../util/logger";
31
+ import { addressTheme, ELEMENT_ENVIRONMENT, ThemeType } from "./type";
31
32
  var logger = new Logger(LogConfig, true);
32
33
  var ElementProcessor = /*#__PURE__*/function () {
33
34
  function ElementProcessor(options) {
@@ -149,8 +150,6 @@ var ElementProcessor = /*#__PURE__*/function () {
149
150
  return ElementProcessor;
150
151
  }();
151
152
  export var ElementComponent = /*#__PURE__*/function () {
152
- // address事件回调
153
-
154
153
  function ElementComponent(options) {
155
154
  var _this4 = this;
156
155
  _classCallCheck(this, ElementComponent);
@@ -191,6 +190,9 @@ export var ElementComponent = /*#__PURE__*/function () {
191
190
  _defineProperty(this, "componentsCount", void 0);
192
191
  // mount 渲染了多少个element
193
192
  _defineProperty(this, "eventCallback", void 0);
193
+ // address事件回调
194
+ // apple pay
195
+ _defineProperty(this, "ApplePayService", void 0);
194
196
  // 渲染地址组件
195
197
  _defineProperty(this, "mountAddress", function (renderOptions, sdkSelector) {
196
198
  var _renderOptions$appear, _this4$_options;
@@ -232,6 +234,7 @@ export var ElementComponent = /*#__PURE__*/function () {
232
234
  }
233
235
  };
234
236
  _this4.mountOptions[ElementPaymentMethod.PAYMENT_ELEMENT] = _mountParams;
237
+ _this4.initApplePaySdk();
235
238
  _this4.paymentBase.mount(_this4._options.sessionData, _objectSpread({
236
239
  selector: sdkSelector,
237
240
  elementProps: renderOptions.elementProps
@@ -590,6 +593,23 @@ export var ElementComponent = /*#__PURE__*/function () {
590
593
  this.eventService.listen(ElementPaymentEvent.LOG, function (result) {
591
594
  console.log('antom sdk 组件日志回调');
592
595
  });
596
+ this.eventService.listen(ElementPaymentEvent.HANDLE_PAYMENT, function (result) {
597
+ if ((result === null || result === void 0 ? void 0 : result.paymentMethodType) === 'APPLEPAY') {
598
+ _this6.ApplePayService.begin().then(function (res) {
599
+ _this6.onAfterSubmitFunc(ElementPaymentMethod.PAYMENT_ELEMENT, {
600
+ submitPayData: res
601
+ });
602
+ }).catch(function (e) {
603
+ _this6.onAfterSubmitFunc(ElementPaymentMethod.PAYMENT_ELEMENT, {
604
+ submitPayData: {},
605
+ errorInfo: {
606
+ hasError: true,
607
+ errorCode: e === null || e === void 0 ? void 0 : e.errorCode
608
+ }
609
+ });
610
+ });
611
+ }
612
+ });
593
613
  }
594
614
 
595
615
  // launch消息处理
@@ -669,6 +689,7 @@ export var ElementComponent = /*#__PURE__*/function () {
669
689
  this.eventService.unlisten(ElementPaymentEvent.CAPTURE_ASSET);
670
690
  this.eventService.unlisten(ElementPaymentEvent.LAUNCH);
671
691
  this.eventService.unlisten(ElementPaymentEvent.SIZE_CHANGE);
692
+ this.eventService.unlisten(ElementPaymentEvent.HANDLE_PAYMENT);
672
693
  }
673
694
 
674
695
  // 注册组件事件监听
@@ -707,6 +728,51 @@ export var ElementComponent = /*#__PURE__*/function () {
707
728
  });
708
729
  return {};
709
730
  }
731
+ }, {
732
+ key: "initApplePaySdk",
733
+ value: function () {
734
+ var _initApplePaySdk = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
735
+ return _regeneratorRuntime().wrap(function _callee2$(_context2) {
736
+ while (1) switch (_context2.prev = _context2.next) {
737
+ case 0:
738
+ if (!isSkipRenderPaymentMethod(this.parseData)) {
739
+ _context2.next = 12;
740
+ break;
741
+ }
742
+ this.ApplePayService = new ApplePaySdk({
743
+ paymentSessionData: this.sessionData,
744
+ parseData: this.parseData,
745
+ logger: logger
746
+ });
747
+ _context2.prev = 2;
748
+ logger.logInfo({
749
+ title: 'a3753.b107385.c398110'
750
+ });
751
+ _context2.next = 6;
752
+ return this.ApplePayService.initApplePaySession();
753
+ case 6:
754
+ logger.logInfo({
755
+ title: 'a3753.b107385.c398112'
756
+ });
757
+ _context2.next = 12;
758
+ break;
759
+ case 9:
760
+ _context2.prev = 9;
761
+ _context2.t0 = _context2["catch"](2);
762
+ logger.logError({
763
+ title: 'a3753.b107385.c398111'
764
+ });
765
+ case 12:
766
+ case "end":
767
+ return _context2.stop();
768
+ }
769
+ }, _callee2, this, [[2, 9]]);
770
+ }));
771
+ function initApplePaySdk() {
772
+ return _initApplePaySdk.apply(this, arguments);
773
+ }
774
+ return initApplePaySdk;
775
+ }()
710
776
  }, {
711
777
  key: "mountErrorHandle",
712
778
  value: function mountErrorHandle() {
@@ -791,29 +857,29 @@ export var ElementComponent = /*#__PURE__*/function () {
791
857
  key: "submitPayment",
792
858
  value: // 暴露出去的submit方法
793
859
  function () {
794
- var _submitPayment = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
860
+ var _submitPayment = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
795
861
  var _this$_options$loadin7, _this$_options$loadin10;
796
862
  var _this$_options$loadin8, _this$_options$loadin9, _this$_options$loadin11, _this$_options$loadin12;
797
- return _regeneratorRuntime().wrap(function _callee2$(_context2) {
798
- while (1) switch (_context2.prev = _context2.next) {
863
+ return _regeneratorRuntime().wrap(function _callee3$(_context3) {
864
+ while (1) switch (_context3.prev = _context3.next) {
799
865
  case 0:
800
866
  // this.onAfterSubmitFunc(ElementPaymentMethod.PAYMENT_ELEMENT, submitResult);
801
867
  // return
802
868
  if ((_this$_options$loadin7 = this._options.loading) !== null && _this$_options$loadin7 !== void 0 && _this$_options$loadin7.onStartLoading) {
803
869
  (_this$_options$loadin8 = this._options.loading) === null || _this$_options$loadin8 === void 0 || (_this$_options$loadin9 = _this$_options$loadin8.onStartLoading) === null || _this$_options$loadin9 === void 0 || _this$_options$loadin9.call(_this$_options$loadin8);
804
870
  }
805
- _context2.next = 3;
871
+ _context3.next = 3;
806
872
  return this.validatePromiseFuncs();
807
873
  case 3:
808
874
  if ((_this$_options$loadin10 = this._options.loading) !== null && _this$_options$loadin10 !== void 0 && _this$_options$loadin10.onEndLoading) {
809
875
  (_this$_options$loadin11 = this._options.loading) === null || _this$_options$loadin11 === void 0 || (_this$_options$loadin12 = _this$_options$loadin11.onEndLoading) === null || _this$_options$loadin12 === void 0 || _this$_options$loadin12.call(_this$_options$loadin11);
810
876
  }
811
- return _context2.abrupt("return");
877
+ return _context3.abrupt("return");
812
878
  case 5:
813
879
  case "end":
814
- return _context2.stop();
880
+ return _context3.stop();
815
881
  }
816
- }, _callee2, this);
882
+ }, _callee3, this);
817
883
  }));
818
884
  function submitPayment() {
819
885
  return _submitPayment.apply(this, arguments);
@@ -1,4 +1,4 @@
1
- import { EventPayloadContext, type EventPayload, type IPaymentMethod, type IPaymentSessionMetaData } from '../../types';
1
+ import { type EventPayload, type IPaymentSessionMetaData } from '../../types';
2
2
  import { Logger } from '../../util/logger';
3
3
  export type IChannelBehavior = {
4
4
  usePaymentSessionAsQueryResult: boolean;
@@ -19,43 +19,37 @@ type GetDoubleFaParams = {
19
19
  export declare function getChannelBehavior(paymentSessionMetaData?: IPaymentSessionMetaData): IChannelBehavior | undefined;
20
20
  export declare function getDoubleFaUrl(params: GetDoubleFaParams): string;
21
21
  export declare const handleGooglePay: (data: EventPayload) => Promise<unknown>;
22
- export declare class ApplePayService {
22
+ export declare class ApplePaySdk {
23
23
  private APPLESDKURL;
24
- private applePaySession;
24
+ private session;
25
25
  private paymentSessionData;
26
- private sessionResult;
26
+ private parseData;
27
27
  /**
28
28
  * @description 支付状态,pending:支付中,normal:正常
29
29
  */
30
30
  private paymentStatus;
31
- /**
32
- * @description paymentRequest
33
- */
34
- private paymentRequest;
35
31
  private logger;
36
- private dispatchToApp;
37
- private paymentMethod;
38
- constructor({ sessionData, paymentSessionMetaData, paymentMethod, logger, dispatchToApp, }: {
39
- sessionData: string;
40
- paymentSessionMetaData: IPaymentSessionMetaData;
41
- paymentMethod: IPaymentMethod;
32
+ constructor({ paymentSessionData, parseData, logger, }: {
33
+ paymentSessionData: string;
34
+ parseData: IPaymentSessionMetaData;
42
35
  logger: Logger;
43
- dispatchToApp: (payload: {
44
- context: EventPayloadContext;
45
- }) => void;
46
36
  });
47
- private startPay;
48
- private setApplePayStatus;
37
+ startPay(): Promise<unknown>;
38
+ begin(): Promise<unknown>;
49
39
  private submitPay;
50
- submit(): Promise<void>;
51
- private getDeviceId;
52
- private initApplePaySession;
53
- private isCanMakePayments;
54
- private loadApplePaySdk;
55
- private abortPaySession;
56
- private addEventListener;
40
+ private setPayStatus;
41
+ initApplePaySession(): Promise<never>;
42
+ private abortSession;
57
43
  private get initSessionParams();
58
44
  private get isRequiredParameters();
45
+ private isCanMakePayments;
46
+ private loadApplePaySdk;
59
47
  private get checkScriptIsLoaded();
48
+ /**
49
+ * @description 非标方案,sdk目前无法直接监听国内不支持弹窗的关闭操作
50
+ */
51
+ private addEventListener;
52
+ private getDeviceId;
60
53
  }
54
+ export declare const isSkipRenderPaymentMethod: (parseData: IPaymentSessionMetaData) => boolean;
61
55
  export {};