Skip to content

Commit 04f6ba0

Browse files
committed
fix(type): fix paymentSheet result type
1 parent 6503468 commit 04f6ba0

File tree

5 files changed

+28
-12
lines changed

5 files changed

+28
-12
lines changed

README.md

+11-2
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ npx cap sync
4343
* [`addListener(PaymentSheetEventsEnum.Canceled, ...)`](#addlistenerpaymentsheeteventsenumcanceled-)
4444
* [`addListener(PaymentSheetEventsEnum.Failed, ...)`](#addlistenerpaymentsheeteventsenumfailed-)
4545
* [Interfaces](#interfaces)
46+
* [Type Aliases](#type-aliases)
4647
* [Enums](#enums)
4748

4849
</docgen-index>
@@ -79,10 +80,10 @@ createPaymentSheet(options: CreatePaymentSheetOption) => Promise<void>
7980
### presentPaymentSheet()
8081

8182
```typescript
82-
presentPaymentSheet() => Promise<{ paymentResult: PaymentSheetEventsEnum; }>
83+
presentPaymentSheet() => Promise<{ paymentResult: PaymentSheetResult; }>
8384
```
8485

85-
**Returns:** <code>Promise&lt;{ paymentResult: <a href="#paymentsheeteventsenum">PaymentSheetEventsEnum</a>; }&gt;</code>
86+
**Returns:** <code>Promise&lt;{ paymentResult: <a href="#paymentsheetresult">PaymentSheetResult</a>; }&gt;</code>
8687

8788
--------------------
8889

@@ -201,6 +202,14 @@ addListener(eventName: PaymentSheetEventsEnum.Failed, listenerFunc: () => void)
201202
| **`remove`** | <code>() =&gt; Promise&lt;void&gt;</code> |
202203

203204

205+
### Type Aliases
206+
207+
208+
#### PaymentSheetResult
209+
210+
<code><a href="#paymentsheeteventsenum">PaymentSheetEventsEnum.Completed</a> | <a href="#paymentsheeteventsenum">PaymentSheetEventsEnum.Completed</a> | <a href="#paymentsheeteventsenum">PaymentSheetEventsEnum.Failed</a></code>
211+
212+
204213
### Enums
205214

206215

demo/angular/src/app/tab1/tab1.page.ts

+11-6
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
import { Component } from '@angular/core';
2-
import { ViewWillEnter } from '@ionic/angular';
3-
import { Stripe } from '@capacitor-community/stripe';
4-
import { environment } from '../../environments/environment';
5-
import { HttpClient } from '@angular/common/http';
6-
import { first } from 'rxjs/operators';
1+
import {Component} from '@angular/core';
2+
import {ViewWillEnter} from '@ionic/angular';
3+
import {PaymentSheetEventsEnum, Stripe} from '@capacitor-community/stripe';
4+
import {environment} from '../../environments/environment';
5+
import {HttpClient} from '@angular/common/http';
6+
import {first} from 'rxjs/operators';
77

88
@Component({
99
selector: 'app-tab1',
@@ -22,6 +22,11 @@ export class Tab1Page implements ViewWillEnter {
2222
ephemeralKey: string;
2323
customer: string;
2424
}>(environment.api + 'payment-sheet', {}).pipe(first()).toPromise(Promise);
25+
26+
Stripe.addListener(PaymentSheetEventsEnum.Completed, () => {
27+
console.log('PaymentSheetEventsEnum.Completed');
28+
});
29+
2530
Stripe.createPaymentSheet({
2631
paymentIntentClientSecret: paymentIntent,
2732
customerEphemeralKeySecret: ephemeralKey,

src/paymentsheet/payment-sheet-definitions.interface.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,12 @@ import type { PluginListenerHandle } from '@capacitor/core';
22

33
import type { CreatePaymentSheetOption } from '../shared';
44

5-
import type { PaymentSheetEventsEnum } from './payment-sheet-events.enum';
5+
import type { PaymentSheetEventsEnum, PaymentSheetResult } from './payment-sheet-events.enum';
66

77
export interface PaymentSheetDefinitions {
88
createPaymentSheet(options: CreatePaymentSheetOption): Promise<void>;
99
presentPaymentSheet(): Promise<{
10-
paymentResult: PaymentSheetEventsEnum;
10+
paymentResult: PaymentSheetResult;
1111
}>;
1212

1313
addListener(

src/paymentsheet/payment-sheet-events.enum.ts

+2
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,5 @@ export enum PaymentSheetEventsEnum {
55
Canceled = "paymentSheetCanceled",
66
Failed = "paymentSheetFailed",
77
}
8+
9+
export type PaymentSheetResult = PaymentSheetEventsEnum.Completed | PaymentSheetEventsEnum.Completed | PaymentSheetEventsEnum.Failed;

src/web.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import type {
66
StripePlugin,
77
CreatePaymentSheetOption,
88
} from './definitions';
9-
import { PaymentSheetEventsEnum } from './definitions';
9+
import { PaymentSheetEventsEnum, PaymentSheetResult } from './definitions';
1010

1111
export class StripeWeb extends WebPlugin implements StripePlugin {
1212
private publishableKey: string | undefined;
@@ -44,7 +44,7 @@ export class StripeWeb extends WebPlugin implements StripePlugin {
4444
}
4545

4646
async presentPaymentSheet(): Promise<{
47-
paymentResult: PaymentSheetEventsEnum;
47+
paymentResult: PaymentSheetResult;
4848
}> {
4949
const paymentSheetDOM = document.createElement('stripe-checkout') as any;
5050
paymentSheetDOM.publishableKey = this.publishableKey;

0 commit comments

Comments
 (0)