@alipay/ams-checkout 0.0.1735810732-dev.1 → 0.0.1737621505-dev.2

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.
@@ -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,27 @@ 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
+ success: false,
602
+ errorCode: "LOGIN",
603
+ errorMessage: ""
604
+ }
605
+ });
606
+ }).catch(function (e) {
607
+ _this6.onAfterSubmitFunc(ElementPaymentMethod.PAYMENT_ELEMENT, {
608
+ submitPayData: {},
609
+ errorInfo: {
610
+ hasError: true,
611
+ errorCode: e === null || e === void 0 ? void 0 : e.errorCode
612
+ }
613
+ });
614
+ });
615
+ }
616
+ });
593
617
  }
594
618
 
595
619
  // launch消息处理
@@ -669,6 +693,7 @@ export var ElementComponent = /*#__PURE__*/function () {
669
693
  this.eventService.unlisten(ElementPaymentEvent.CAPTURE_ASSET);
670
694
  this.eventService.unlisten(ElementPaymentEvent.LAUNCH);
671
695
  this.eventService.unlisten(ElementPaymentEvent.SIZE_CHANGE);
696
+ this.eventService.unlisten(ElementPaymentEvent.HANDLE_PAYMENT);
672
697
  }
673
698
 
674
699
  // 注册组件事件监听
@@ -707,6 +732,51 @@ export var ElementComponent = /*#__PURE__*/function () {
707
732
  });
708
733
  return {};
709
734
  }
735
+ }, {
736
+ key: "initApplePaySdk",
737
+ value: function () {
738
+ var _initApplePaySdk = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
739
+ return _regeneratorRuntime().wrap(function _callee2$(_context2) {
740
+ while (1) switch (_context2.prev = _context2.next) {
741
+ case 0:
742
+ if (!isSkipRenderPaymentMethod(this.parseData)) {
743
+ _context2.next = 12;
744
+ break;
745
+ }
746
+ this.ApplePayService = new ApplePaySdk({
747
+ paymentSessionData: this.sessionData,
748
+ parseData: this.parseData,
749
+ logger: logger
750
+ });
751
+ _context2.prev = 2;
752
+ logger.logInfo({
753
+ title: 'a3753.b107385.c398110'
754
+ });
755
+ _context2.next = 6;
756
+ return this.ApplePayService.initApplePaySession();
757
+ case 6:
758
+ logger.logInfo({
759
+ title: 'a3753.b107385.c398112'
760
+ });
761
+ _context2.next = 12;
762
+ break;
763
+ case 9:
764
+ _context2.prev = 9;
765
+ _context2.t0 = _context2["catch"](2);
766
+ logger.logError({
767
+ title: 'a3753.b107385.c398111'
768
+ });
769
+ case 12:
770
+ case "end":
771
+ return _context2.stop();
772
+ }
773
+ }, _callee2, this, [[2, 9]]);
774
+ }));
775
+ function initApplePaySdk() {
776
+ return _initApplePaySdk.apply(this, arguments);
777
+ }
778
+ return initApplePaySdk;
779
+ }()
710
780
  }, {
711
781
  key: "mountErrorHandle",
712
782
  value: function mountErrorHandle() {
@@ -791,29 +861,29 @@ export var ElementComponent = /*#__PURE__*/function () {
791
861
  key: "submitPayment",
792
862
  value: // 暴露出去的submit方法
793
863
  function () {
794
- var _submitPayment = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
864
+ var _submitPayment = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
795
865
  var _this$_options$loadin7, _this$_options$loadin10;
796
866
  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) {
867
+ return _regeneratorRuntime().wrap(function _callee3$(_context3) {
868
+ while (1) switch (_context3.prev = _context3.next) {
799
869
  case 0:
800
870
  // this.onAfterSubmitFunc(ElementPaymentMethod.PAYMENT_ELEMENT, submitResult);
801
871
  // return
802
872
  if ((_this$_options$loadin7 = this._options.loading) !== null && _this$_options$loadin7 !== void 0 && _this$_options$loadin7.onStartLoading) {
803
873
  (_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
874
  }
805
- _context2.next = 3;
875
+ _context3.next = 3;
806
876
  return this.validatePromiseFuncs();
807
877
  case 3:
808
878
  if ((_this$_options$loadin10 = this._options.loading) !== null && _this$_options$loadin10 !== void 0 && _this$_options$loadin10.onEndLoading) {
809
879
  (_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
880
  }
811
- return _context2.abrupt("return");
881
+ return _context3.abrupt("return");
812
882
  case 5:
813
883
  case "end":
814
- return _context2.stop();
884
+ return _context3.stop();
815
885
  }
816
- }, _callee2, this);
886
+ }, _callee3, this);
817
887
  }));
818
888
  function submitPayment() {
819
889
  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 {};