@paykit-sdk/paypal 1.0.6 → 1.0.7
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/README.md +31 -8
- package/dist/controllers/subscription.d.mts +1 -1
- package/dist/controllers/subscription.d.ts +1 -1
- package/dist/controllers/subscription.js +50 -13
- package/dist/controllers/subscription.mjs +50 -13
- package/dist/controllers/webhook.js +11 -3
- package/dist/controllers/webhook.mjs +11 -3
- package/dist/index.d.mts +2 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +397 -4321
- package/dist/index.mjs +398 -4322
- package/dist/paypal-provider.d.mts +9 -14
- package/dist/paypal-provider.d.ts +9 -14
- package/dist/paypal-provider.js +394 -4319
- package/dist/paypal-provider.mjs +395 -4320
- package/dist/schema.js +7 -2
- package/dist/schema.mjs +7 -2
- package/dist/types.d.mts +77 -1
- package/dist/types.d.ts +77 -1
- package/dist/utils/mapper.d.mts +33 -15
- package/dist/utils/mapper.d.ts +33 -15
- package/dist/utils/mapper.js +63 -46
- package/dist/utils/mapper.mjs +54 -37
- package/package.json +8 -9
package/dist/schema.js
CHANGED
|
@@ -28,7 +28,9 @@ var createSubscriptionApticSchema = schema.object({
|
|
|
28
28
|
],
|
|
29
29
|
phone: [
|
|
30
30
|
"phone",
|
|
31
|
-
schema.lazy(
|
|
31
|
+
schema.lazy(
|
|
32
|
+
() => schema.object({ phone_number: ["phone_number", schema.string()] })
|
|
33
|
+
)
|
|
32
34
|
]
|
|
33
35
|
})
|
|
34
36
|
)
|
|
@@ -81,7 +83,10 @@ var VerifyWebhookStatus = /* @__PURE__ */ ((VerifyWebhookStatus2) => {
|
|
|
81
83
|
return VerifyWebhookStatus2;
|
|
82
84
|
})(VerifyWebhookStatus || {});
|
|
83
85
|
var verifyWebhookSchema = schema.object({
|
|
84
|
-
verification_status: [
|
|
86
|
+
verification_status: [
|
|
87
|
+
"verification_status",
|
|
88
|
+
schema.stringEnum(VerifyWebhookStatus)
|
|
89
|
+
]
|
|
85
90
|
});
|
|
86
91
|
|
|
87
92
|
exports.VerifyWebhookStatus = VerifyWebhookStatus;
|
package/dist/schema.mjs
CHANGED
|
@@ -26,7 +26,9 @@ var createSubscriptionApticSchema = object({
|
|
|
26
26
|
],
|
|
27
27
|
phone: [
|
|
28
28
|
"phone",
|
|
29
|
-
lazy(
|
|
29
|
+
lazy(
|
|
30
|
+
() => object({ phone_number: ["phone_number", string()] })
|
|
31
|
+
)
|
|
30
32
|
]
|
|
31
33
|
})
|
|
32
34
|
)
|
|
@@ -79,7 +81,10 @@ var VerifyWebhookStatus = /* @__PURE__ */ ((VerifyWebhookStatus2) => {
|
|
|
79
81
|
return VerifyWebhookStatus2;
|
|
80
82
|
})(VerifyWebhookStatus || {});
|
|
81
83
|
var verifyWebhookSchema = object({
|
|
82
|
-
verification_status: [
|
|
84
|
+
verification_status: [
|
|
85
|
+
"verification_status",
|
|
86
|
+
stringEnum(VerifyWebhookStatus)
|
|
87
|
+
]
|
|
83
88
|
});
|
|
84
89
|
|
|
85
90
|
export { VerifyWebhookStatus, createSubscriptionApticSchema, resumeSubscriptionApticSchemaRequest, shippingAmountSchema, subscriptionApticSchema, verifyWebhookSchema };
|
package/dist/types.d.mts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { Order } from '@paypal/paypal-server-sdk';
|
|
2
|
+
|
|
1
3
|
type SubscriptionStatus = 'APPROVAL_PENDING' | 'APPROVED' | 'ACTIVE' | 'SUSPENDED' | 'CANCELLED' | 'EXPIRED';
|
|
2
4
|
interface PayPalSubscription {
|
|
3
5
|
/**
|
|
@@ -104,5 +106,79 @@ interface PayPalSubscription {
|
|
|
104
106
|
*/
|
|
105
107
|
customId?: string;
|
|
106
108
|
}
|
|
109
|
+
type PayPalRawEvents = {
|
|
110
|
+
[K in keyof PayPalRawEventsSource as `paypal.${K}`]: PayPalRawEventsSource[K];
|
|
111
|
+
};
|
|
112
|
+
interface PayPalWebhookBase {
|
|
113
|
+
id: string;
|
|
114
|
+
event_version: string;
|
|
115
|
+
create_time: string;
|
|
116
|
+
resource_type: string;
|
|
117
|
+
event_type: string;
|
|
118
|
+
summary: string;
|
|
119
|
+
resource_version?: string;
|
|
120
|
+
resource: Record<string, unknown>;
|
|
121
|
+
links: Array<{
|
|
122
|
+
href: string;
|
|
123
|
+
rel: string;
|
|
124
|
+
method: string;
|
|
125
|
+
}>;
|
|
126
|
+
}
|
|
127
|
+
type PayPalOrder = Order;
|
|
128
|
+
type PayPalCapture = Record<string, unknown>;
|
|
129
|
+
type PayPalRefund = Record<string, unknown>;
|
|
130
|
+
type PayPalDispute = Record<string, unknown>;
|
|
131
|
+
type PayPalWebhookEvent<T extends string, R = Record<string, unknown>> = PayPalWebhookBase & {
|
|
132
|
+
event_type: T;
|
|
133
|
+
resource: R;
|
|
134
|
+
};
|
|
135
|
+
type PayPalRawEventsSource = {
|
|
136
|
+
'PAYMENT.AUTHORIZATION.CREATED': PayPalWebhookEvent<'PAYMENT.AUTHORIZATION.CREATED'>;
|
|
137
|
+
'PAYMENT.AUTHORIZATION.VOIDED': PayPalWebhookEvent<'PAYMENT.AUTHORIZATION.VOIDED'>;
|
|
138
|
+
'PAYMENT.CAPTURE.COMPLETED': PayPalWebhookEvent<'PAYMENT.CAPTURE.COMPLETED', PayPalCapture>;
|
|
139
|
+
'PAYMENT.CAPTURE.DECLINED': PayPalWebhookEvent<'PAYMENT.CAPTURE.DECLINED', PayPalCapture>;
|
|
140
|
+
'PAYMENT.CAPTURE.PENDING': PayPalWebhookEvent<'PAYMENT.CAPTURE.PENDING', PayPalCapture>;
|
|
141
|
+
'PAYMENT.CAPTURE.REFUNDED': PayPalWebhookEvent<'PAYMENT.CAPTURE.REFUNDED', PayPalCapture>;
|
|
142
|
+
'PAYMENT.CAPTURE.REVERSED': PayPalWebhookEvent<'PAYMENT.CAPTURE.REVERSED', PayPalCapture>;
|
|
143
|
+
'PAYMENT.REFUND.PENDING': PayPalWebhookEvent<'PAYMENT.REFUND.PENDING', PayPalRefund>;
|
|
144
|
+
'PAYMENT.REFUND.FAILED': PayPalWebhookEvent<'PAYMENT.REFUND.FAILED', PayPalRefund>;
|
|
145
|
+
'CHECKOUT.ORDER.APPROVED': PayPalWebhookEvent<'CHECKOUT.ORDER.APPROVED', PayPalOrder>;
|
|
146
|
+
'CHECKOUT.ORDER.COMPLETED': PayPalWebhookEvent<'CHECKOUT.ORDER.COMPLETED', PayPalOrder>;
|
|
147
|
+
'CHECKOUT.PAYMENT-APPROVAL.REVERSED': PayPalWebhookEvent<'CHECKOUT.PAYMENT-APPROVAL.REVERSED', PayPalOrder>;
|
|
148
|
+
'BILLING.SUBSCRIPTION.CREATED': PayPalWebhookEvent<'BILLING.SUBSCRIPTION.CREATED', PayPalSubscription>;
|
|
149
|
+
'BILLING.SUBSCRIPTION.ACTIVATED': PayPalWebhookEvent<'BILLING.SUBSCRIPTION.ACTIVATED', PayPalSubscription>;
|
|
150
|
+
'BILLING.SUBSCRIPTION.UPDATED': PayPalWebhookEvent<'BILLING.SUBSCRIPTION.UPDATED', PayPalSubscription>;
|
|
151
|
+
'BILLING.SUBSCRIPTION.EXPIRED': PayPalWebhookEvent<'BILLING.SUBSCRIPTION.EXPIRED', PayPalSubscription>;
|
|
152
|
+
'BILLING.SUBSCRIPTION.CANCELLED': PayPalWebhookEvent<'BILLING.SUBSCRIPTION.CANCELLED', PayPalSubscription>;
|
|
153
|
+
'BILLING.SUBSCRIPTION.SUSPENDED': PayPalWebhookEvent<'BILLING.SUBSCRIPTION.SUSPENDED', PayPalSubscription>;
|
|
154
|
+
'BILLING.SUBSCRIPTION.PAYMENT.FAILED': PayPalWebhookEvent<'BILLING.SUBSCRIPTION.PAYMENT.FAILED', PayPalSubscription>;
|
|
155
|
+
'BILLING.PLAN.CREATED': PayPalWebhookEvent<'BILLING.PLAN.CREATED'>;
|
|
156
|
+
'BILLING.PLAN.UPDATED': PayPalWebhookEvent<'BILLING.PLAN.UPDATED'>;
|
|
157
|
+
'BILLING.PLAN.ACTIVATED': PayPalWebhookEvent<'BILLING.PLAN.ACTIVATED'>;
|
|
158
|
+
'BILLING.PLAN.DEACTIVATED': PayPalWebhookEvent<'BILLING.PLAN.DEACTIVATED'>;
|
|
159
|
+
'BILLING.PLAN.PRICING-CHANGE.ACTIVATED': PayPalWebhookEvent<'BILLING.PLAN.PRICING-CHANGE.ACTIVATED'>;
|
|
160
|
+
'CUSTOMER.DISPUTE.CREATED': PayPalWebhookEvent<'CUSTOMER.DISPUTE.CREATED', PayPalDispute>;
|
|
161
|
+
'CUSTOMER.DISPUTE.RESOLVED': PayPalWebhookEvent<'CUSTOMER.DISPUTE.RESOLVED', PayPalDispute>;
|
|
162
|
+
'CUSTOMER.DISPUTE.UPDATED': PayPalWebhookEvent<'CUSTOMER.DISPUTE.UPDATED', PayPalDispute>;
|
|
163
|
+
'INVOICING.INVOICE.CREATED': PayPalWebhookEvent<'INVOICING.INVOICE.CREATED'>;
|
|
164
|
+
'INVOICING.INVOICE.PAID': PayPalWebhookEvent<'INVOICING.INVOICE.PAID'>;
|
|
165
|
+
'INVOICING.INVOICE.CANCELLED': PayPalWebhookEvent<'INVOICING.INVOICE.CANCELLED'>;
|
|
166
|
+
'INVOICING.INVOICE.REFUNDED': PayPalWebhookEvent<'INVOICING.INVOICE.REFUNDED'>;
|
|
167
|
+
'INVOICING.INVOICE.UPDATED': PayPalWebhookEvent<'INVOICING.INVOICE.UPDATED'>;
|
|
168
|
+
'INVOICING.INVOICE.SCHEDULED': PayPalWebhookEvent<'INVOICING.INVOICE.SCHEDULED'>;
|
|
169
|
+
'VAULT.PAYMENT-TOKEN.CREATED': PayPalWebhookEvent<'VAULT.PAYMENT-TOKEN.CREATED'>;
|
|
170
|
+
'VAULT.PAYMENT-TOKEN.DELETED': PayPalWebhookEvent<'VAULT.PAYMENT-TOKEN.DELETED'>;
|
|
171
|
+
'VAULT.PAYMENT-TOKEN.DELETION-INITIATED': PayPalWebhookEvent<'VAULT.PAYMENT-TOKEN.DELETION-INITIATED'>;
|
|
172
|
+
'MERCHANT.ONBOARDING.COMPLETED': PayPalWebhookEvent<'MERCHANT.ONBOARDING.COMPLETED'>;
|
|
173
|
+
'MERCHANT.PARTNER-CONSENT.REVOKED': PayPalWebhookEvent<'MERCHANT.PARTNER-CONSENT.REVOKED'>;
|
|
174
|
+
'CATALOG.PRODUCT.CREATED': PayPalWebhookEvent<'CATALOG.PRODUCT.CREATED'>;
|
|
175
|
+
'CATALOG.PRODUCT.UPDATED': PayPalWebhookEvent<'CATALOG.PRODUCT.UPDATED'>;
|
|
176
|
+
'PAYMENT.SALE.COMPLETED': PayPalWebhookEvent<'PAYMENT.SALE.COMPLETED'>;
|
|
177
|
+
'PAYMENT.SALE.DENIED': PayPalWebhookEvent<'PAYMENT.SALE.DENIED'>;
|
|
178
|
+
'PAYMENT.SALE.PENDING': PayPalWebhookEvent<'PAYMENT.SALE.PENDING'>;
|
|
179
|
+
'PAYMENT.SALE.REFUNDED': PayPalWebhookEvent<'PAYMENT.SALE.REFUNDED'>;
|
|
180
|
+
'PAYMENT.SALE.REVERSED': PayPalWebhookEvent<'PAYMENT.SALE.REVERSED'>;
|
|
181
|
+
};
|
|
182
|
+
type PayPalWebhookPayload = PayPalRawEvents[keyof PayPalRawEvents];
|
|
107
183
|
|
|
108
|
-
export type { PayPalSubscription, SubscriptionStatus };
|
|
184
|
+
export type { PayPalRawEvents, PayPalSubscription, PayPalWebhookBase, PayPalWebhookPayload, SubscriptionStatus };
|
package/dist/types.d.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { Order } from '@paypal/paypal-server-sdk';
|
|
2
|
+
|
|
1
3
|
type SubscriptionStatus = 'APPROVAL_PENDING' | 'APPROVED' | 'ACTIVE' | 'SUSPENDED' | 'CANCELLED' | 'EXPIRED';
|
|
2
4
|
interface PayPalSubscription {
|
|
3
5
|
/**
|
|
@@ -104,5 +106,79 @@ interface PayPalSubscription {
|
|
|
104
106
|
*/
|
|
105
107
|
customId?: string;
|
|
106
108
|
}
|
|
109
|
+
type PayPalRawEvents = {
|
|
110
|
+
[K in keyof PayPalRawEventsSource as `paypal.${K}`]: PayPalRawEventsSource[K];
|
|
111
|
+
};
|
|
112
|
+
interface PayPalWebhookBase {
|
|
113
|
+
id: string;
|
|
114
|
+
event_version: string;
|
|
115
|
+
create_time: string;
|
|
116
|
+
resource_type: string;
|
|
117
|
+
event_type: string;
|
|
118
|
+
summary: string;
|
|
119
|
+
resource_version?: string;
|
|
120
|
+
resource: Record<string, unknown>;
|
|
121
|
+
links: Array<{
|
|
122
|
+
href: string;
|
|
123
|
+
rel: string;
|
|
124
|
+
method: string;
|
|
125
|
+
}>;
|
|
126
|
+
}
|
|
127
|
+
type PayPalOrder = Order;
|
|
128
|
+
type PayPalCapture = Record<string, unknown>;
|
|
129
|
+
type PayPalRefund = Record<string, unknown>;
|
|
130
|
+
type PayPalDispute = Record<string, unknown>;
|
|
131
|
+
type PayPalWebhookEvent<T extends string, R = Record<string, unknown>> = PayPalWebhookBase & {
|
|
132
|
+
event_type: T;
|
|
133
|
+
resource: R;
|
|
134
|
+
};
|
|
135
|
+
type PayPalRawEventsSource = {
|
|
136
|
+
'PAYMENT.AUTHORIZATION.CREATED': PayPalWebhookEvent<'PAYMENT.AUTHORIZATION.CREATED'>;
|
|
137
|
+
'PAYMENT.AUTHORIZATION.VOIDED': PayPalWebhookEvent<'PAYMENT.AUTHORIZATION.VOIDED'>;
|
|
138
|
+
'PAYMENT.CAPTURE.COMPLETED': PayPalWebhookEvent<'PAYMENT.CAPTURE.COMPLETED', PayPalCapture>;
|
|
139
|
+
'PAYMENT.CAPTURE.DECLINED': PayPalWebhookEvent<'PAYMENT.CAPTURE.DECLINED', PayPalCapture>;
|
|
140
|
+
'PAYMENT.CAPTURE.PENDING': PayPalWebhookEvent<'PAYMENT.CAPTURE.PENDING', PayPalCapture>;
|
|
141
|
+
'PAYMENT.CAPTURE.REFUNDED': PayPalWebhookEvent<'PAYMENT.CAPTURE.REFUNDED', PayPalCapture>;
|
|
142
|
+
'PAYMENT.CAPTURE.REVERSED': PayPalWebhookEvent<'PAYMENT.CAPTURE.REVERSED', PayPalCapture>;
|
|
143
|
+
'PAYMENT.REFUND.PENDING': PayPalWebhookEvent<'PAYMENT.REFUND.PENDING', PayPalRefund>;
|
|
144
|
+
'PAYMENT.REFUND.FAILED': PayPalWebhookEvent<'PAYMENT.REFUND.FAILED', PayPalRefund>;
|
|
145
|
+
'CHECKOUT.ORDER.APPROVED': PayPalWebhookEvent<'CHECKOUT.ORDER.APPROVED', PayPalOrder>;
|
|
146
|
+
'CHECKOUT.ORDER.COMPLETED': PayPalWebhookEvent<'CHECKOUT.ORDER.COMPLETED', PayPalOrder>;
|
|
147
|
+
'CHECKOUT.PAYMENT-APPROVAL.REVERSED': PayPalWebhookEvent<'CHECKOUT.PAYMENT-APPROVAL.REVERSED', PayPalOrder>;
|
|
148
|
+
'BILLING.SUBSCRIPTION.CREATED': PayPalWebhookEvent<'BILLING.SUBSCRIPTION.CREATED', PayPalSubscription>;
|
|
149
|
+
'BILLING.SUBSCRIPTION.ACTIVATED': PayPalWebhookEvent<'BILLING.SUBSCRIPTION.ACTIVATED', PayPalSubscription>;
|
|
150
|
+
'BILLING.SUBSCRIPTION.UPDATED': PayPalWebhookEvent<'BILLING.SUBSCRIPTION.UPDATED', PayPalSubscription>;
|
|
151
|
+
'BILLING.SUBSCRIPTION.EXPIRED': PayPalWebhookEvent<'BILLING.SUBSCRIPTION.EXPIRED', PayPalSubscription>;
|
|
152
|
+
'BILLING.SUBSCRIPTION.CANCELLED': PayPalWebhookEvent<'BILLING.SUBSCRIPTION.CANCELLED', PayPalSubscription>;
|
|
153
|
+
'BILLING.SUBSCRIPTION.SUSPENDED': PayPalWebhookEvent<'BILLING.SUBSCRIPTION.SUSPENDED', PayPalSubscription>;
|
|
154
|
+
'BILLING.SUBSCRIPTION.PAYMENT.FAILED': PayPalWebhookEvent<'BILLING.SUBSCRIPTION.PAYMENT.FAILED', PayPalSubscription>;
|
|
155
|
+
'BILLING.PLAN.CREATED': PayPalWebhookEvent<'BILLING.PLAN.CREATED'>;
|
|
156
|
+
'BILLING.PLAN.UPDATED': PayPalWebhookEvent<'BILLING.PLAN.UPDATED'>;
|
|
157
|
+
'BILLING.PLAN.ACTIVATED': PayPalWebhookEvent<'BILLING.PLAN.ACTIVATED'>;
|
|
158
|
+
'BILLING.PLAN.DEACTIVATED': PayPalWebhookEvent<'BILLING.PLAN.DEACTIVATED'>;
|
|
159
|
+
'BILLING.PLAN.PRICING-CHANGE.ACTIVATED': PayPalWebhookEvent<'BILLING.PLAN.PRICING-CHANGE.ACTIVATED'>;
|
|
160
|
+
'CUSTOMER.DISPUTE.CREATED': PayPalWebhookEvent<'CUSTOMER.DISPUTE.CREATED', PayPalDispute>;
|
|
161
|
+
'CUSTOMER.DISPUTE.RESOLVED': PayPalWebhookEvent<'CUSTOMER.DISPUTE.RESOLVED', PayPalDispute>;
|
|
162
|
+
'CUSTOMER.DISPUTE.UPDATED': PayPalWebhookEvent<'CUSTOMER.DISPUTE.UPDATED', PayPalDispute>;
|
|
163
|
+
'INVOICING.INVOICE.CREATED': PayPalWebhookEvent<'INVOICING.INVOICE.CREATED'>;
|
|
164
|
+
'INVOICING.INVOICE.PAID': PayPalWebhookEvent<'INVOICING.INVOICE.PAID'>;
|
|
165
|
+
'INVOICING.INVOICE.CANCELLED': PayPalWebhookEvent<'INVOICING.INVOICE.CANCELLED'>;
|
|
166
|
+
'INVOICING.INVOICE.REFUNDED': PayPalWebhookEvent<'INVOICING.INVOICE.REFUNDED'>;
|
|
167
|
+
'INVOICING.INVOICE.UPDATED': PayPalWebhookEvent<'INVOICING.INVOICE.UPDATED'>;
|
|
168
|
+
'INVOICING.INVOICE.SCHEDULED': PayPalWebhookEvent<'INVOICING.INVOICE.SCHEDULED'>;
|
|
169
|
+
'VAULT.PAYMENT-TOKEN.CREATED': PayPalWebhookEvent<'VAULT.PAYMENT-TOKEN.CREATED'>;
|
|
170
|
+
'VAULT.PAYMENT-TOKEN.DELETED': PayPalWebhookEvent<'VAULT.PAYMENT-TOKEN.DELETED'>;
|
|
171
|
+
'VAULT.PAYMENT-TOKEN.DELETION-INITIATED': PayPalWebhookEvent<'VAULT.PAYMENT-TOKEN.DELETION-INITIATED'>;
|
|
172
|
+
'MERCHANT.ONBOARDING.COMPLETED': PayPalWebhookEvent<'MERCHANT.ONBOARDING.COMPLETED'>;
|
|
173
|
+
'MERCHANT.PARTNER-CONSENT.REVOKED': PayPalWebhookEvent<'MERCHANT.PARTNER-CONSENT.REVOKED'>;
|
|
174
|
+
'CATALOG.PRODUCT.CREATED': PayPalWebhookEvent<'CATALOG.PRODUCT.CREATED'>;
|
|
175
|
+
'CATALOG.PRODUCT.UPDATED': PayPalWebhookEvent<'CATALOG.PRODUCT.UPDATED'>;
|
|
176
|
+
'PAYMENT.SALE.COMPLETED': PayPalWebhookEvent<'PAYMENT.SALE.COMPLETED'>;
|
|
177
|
+
'PAYMENT.SALE.DENIED': PayPalWebhookEvent<'PAYMENT.SALE.DENIED'>;
|
|
178
|
+
'PAYMENT.SALE.PENDING': PayPalWebhookEvent<'PAYMENT.SALE.PENDING'>;
|
|
179
|
+
'PAYMENT.SALE.REFUNDED': PayPalWebhookEvent<'PAYMENT.SALE.REFUNDED'>;
|
|
180
|
+
'PAYMENT.SALE.REVERSED': PayPalWebhookEvent<'PAYMENT.SALE.REVERSED'>;
|
|
181
|
+
};
|
|
182
|
+
type PayPalWebhookPayload = PayPalRawEvents[keyof PayPalRawEvents];
|
|
107
183
|
|
|
108
|
-
export type { PayPalSubscription, SubscriptionStatus };
|
|
184
|
+
export type { PayPalRawEvents, PayPalSubscription, PayPalWebhookBase, PayPalWebhookPayload, SubscriptionStatus };
|
package/dist/utils/mapper.d.mts
CHANGED
|
@@ -2,27 +2,45 @@ import { Payee, Refund as Refund$1, Checkout, Payment, Subscription, Invoice } f
|
|
|
2
2
|
import { Payer, Refund, Order } from '@paypal/paypal-server-sdk';
|
|
3
3
|
import { PayPalSubscription } from '../types.mjs';
|
|
4
4
|
|
|
5
|
-
declare const paykitPayee$InboundSchema: (payee: Payer | string) => Payee;
|
|
6
5
|
/**
|
|
7
|
-
*
|
|
6
|
+
* @internal
|
|
8
7
|
*/
|
|
9
|
-
declare const
|
|
8
|
+
declare const Payee$inboundSchema: (payee: Payer | string) => Payee | null;
|
|
10
9
|
/**
|
|
11
|
-
*
|
|
10
|
+
* @internal
|
|
12
11
|
*/
|
|
13
|
-
declare const
|
|
12
|
+
declare const Refund$inboundSchema: (refund: Refund) => Refund$1;
|
|
14
13
|
/**
|
|
15
|
-
*
|
|
14
|
+
* @internal
|
|
16
15
|
*/
|
|
17
|
-
declare const
|
|
16
|
+
declare const Checkout$inboundSchema: (order: Order) => Checkout;
|
|
18
17
|
/**
|
|
19
|
-
*
|
|
18
|
+
* @internal
|
|
20
19
|
*/
|
|
21
|
-
declare const
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
declare const
|
|
26
|
-
|
|
20
|
+
declare const Payment$inboundSchema: (order: Order) => Payment;
|
|
21
|
+
/**
|
|
22
|
+
* @internal
|
|
23
|
+
*/
|
|
24
|
+
declare const Subscription$inboundSchema: (subscription: PayPalSubscription) => Subscription;
|
|
25
|
+
/**
|
|
26
|
+
* @internal
|
|
27
|
+
*/
|
|
28
|
+
declare const Invoice$inboundSchema: (order: Order) => Invoice;
|
|
29
|
+
/**
|
|
30
|
+
* @internal
|
|
31
|
+
*/
|
|
32
|
+
declare const PaymentWebhook$inboundSchema: (resource: Record<string, unknown>) => Payment;
|
|
33
|
+
/**
|
|
34
|
+
* @internal
|
|
35
|
+
*/
|
|
36
|
+
declare const PaymentCaptureWebhook$inboundSchema: (capture: Record<string, unknown>) => Payment;
|
|
37
|
+
/**
|
|
38
|
+
* @internal
|
|
39
|
+
*/
|
|
40
|
+
declare const RefundWebhook$inboundSchema: (refund: Record<string, unknown>) => Refund$1;
|
|
41
|
+
/**
|
|
42
|
+
* @internal
|
|
43
|
+
*/
|
|
44
|
+
declare const SubscriptionWebhook$inboundSchema: (agreement: Record<string, unknown>) => Subscription;
|
|
27
45
|
|
|
28
|
-
export {
|
|
46
|
+
export { Checkout$inboundSchema, Invoice$inboundSchema, Payee$inboundSchema, Payment$inboundSchema, PaymentCaptureWebhook$inboundSchema, PaymentWebhook$inboundSchema, Refund$inboundSchema, RefundWebhook$inboundSchema, Subscription$inboundSchema, SubscriptionWebhook$inboundSchema };
|
package/dist/utils/mapper.d.ts
CHANGED
|
@@ -2,27 +2,45 @@ import { Payee, Refund as Refund$1, Checkout, Payment, Subscription, Invoice } f
|
|
|
2
2
|
import { Payer, Refund, Order } from '@paypal/paypal-server-sdk';
|
|
3
3
|
import { PayPalSubscription } from '../types.js';
|
|
4
4
|
|
|
5
|
-
declare const paykitPayee$InboundSchema: (payee: Payer | string) => Payee;
|
|
6
5
|
/**
|
|
7
|
-
*
|
|
6
|
+
* @internal
|
|
8
7
|
*/
|
|
9
|
-
declare const
|
|
8
|
+
declare const Payee$inboundSchema: (payee: Payer | string) => Payee | null;
|
|
10
9
|
/**
|
|
11
|
-
*
|
|
10
|
+
* @internal
|
|
12
11
|
*/
|
|
13
|
-
declare const
|
|
12
|
+
declare const Refund$inboundSchema: (refund: Refund) => Refund$1;
|
|
14
13
|
/**
|
|
15
|
-
*
|
|
14
|
+
* @internal
|
|
16
15
|
*/
|
|
17
|
-
declare const
|
|
16
|
+
declare const Checkout$inboundSchema: (order: Order) => Checkout;
|
|
18
17
|
/**
|
|
19
|
-
*
|
|
18
|
+
* @internal
|
|
20
19
|
*/
|
|
21
|
-
declare const
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
declare const
|
|
26
|
-
|
|
20
|
+
declare const Payment$inboundSchema: (order: Order) => Payment;
|
|
21
|
+
/**
|
|
22
|
+
* @internal
|
|
23
|
+
*/
|
|
24
|
+
declare const Subscription$inboundSchema: (subscription: PayPalSubscription) => Subscription;
|
|
25
|
+
/**
|
|
26
|
+
* @internal
|
|
27
|
+
*/
|
|
28
|
+
declare const Invoice$inboundSchema: (order: Order) => Invoice;
|
|
29
|
+
/**
|
|
30
|
+
* @internal
|
|
31
|
+
*/
|
|
32
|
+
declare const PaymentWebhook$inboundSchema: (resource: Record<string, unknown>) => Payment;
|
|
33
|
+
/**
|
|
34
|
+
* @internal
|
|
35
|
+
*/
|
|
36
|
+
declare const PaymentCaptureWebhook$inboundSchema: (capture: Record<string, unknown>) => Payment;
|
|
37
|
+
/**
|
|
38
|
+
* @internal
|
|
39
|
+
*/
|
|
40
|
+
declare const RefundWebhook$inboundSchema: (refund: Record<string, unknown>) => Refund$1;
|
|
41
|
+
/**
|
|
42
|
+
* @internal
|
|
43
|
+
*/
|
|
44
|
+
declare const SubscriptionWebhook$inboundSchema: (agreement: Record<string, unknown>) => Subscription;
|
|
27
45
|
|
|
28
|
-
export {
|
|
46
|
+
export { Checkout$inboundSchema, Invoice$inboundSchema, Payee$inboundSchema, Payment$inboundSchema, PaymentCaptureWebhook$inboundSchema, PaymentWebhook$inboundSchema, Refund$inboundSchema, RefundWebhook$inboundSchema, Subscription$inboundSchema, SubscriptionWebhook$inboundSchema };
|
package/dist/utils/mapper.js
CHANGED
|
@@ -4,37 +4,45 @@ var core = require('@paykit-sdk/core');
|
|
|
4
4
|
var paypalServerSdk = require('@paypal/paypal-server-sdk');
|
|
5
5
|
|
|
6
6
|
// src/utils/mapper.ts
|
|
7
|
-
var
|
|
8
|
-
|
|
9
|
-
if (
|
|
10
|
-
|
|
11
|
-
return customer;
|
|
7
|
+
var Payee$inboundSchema = (payee) => {
|
|
8
|
+
if (typeof payee === "string") return { id: payee };
|
|
9
|
+
if (payee?.emailAddress) return { email: payee.emailAddress };
|
|
10
|
+
return null;
|
|
12
11
|
};
|
|
13
|
-
var
|
|
12
|
+
var Refund$inboundSchema = (refund) => {
|
|
14
13
|
return {
|
|
15
14
|
id: refund.id,
|
|
16
15
|
amount: refund.amount?.value ? parseFloat(refund.amount.value) : 0,
|
|
17
16
|
currency: refund.amount?.currencyCode || "USD",
|
|
18
|
-
metadata: core.omitInternalMetadata(
|
|
17
|
+
metadata: core.omitInternalMetadata(
|
|
18
|
+
JSON.parse(refund.customId ?? "{}")
|
|
19
|
+
),
|
|
19
20
|
reason: refund.noteToPayer ?? null
|
|
20
21
|
};
|
|
21
22
|
};
|
|
22
|
-
var
|
|
23
|
+
var Checkout$inboundSchema = (order) => {
|
|
23
24
|
return {
|
|
24
25
|
id: order.id,
|
|
25
26
|
payment_url: order.links?.find((l) => l.rel === "approve")?.href || "",
|
|
26
|
-
amount: parseFloat(
|
|
27
|
+
amount: parseFloat(
|
|
28
|
+
order.purchaseUnits?.[0]?.amount?.value || "0"
|
|
29
|
+
),
|
|
27
30
|
currency: order.purchaseUnits?.[0]?.amount?.currencyCode || "USD",
|
|
28
|
-
customer:
|
|
31
|
+
customer: Payee$inboundSchema(order.payer ?? {}),
|
|
29
32
|
session_type: "one_time",
|
|
30
|
-
products: [
|
|
33
|
+
products: [
|
|
34
|
+
{
|
|
35
|
+
id: order.purchaseUnits?.[0]?.items?.[0]?.sku || "",
|
|
36
|
+
quantity: 1
|
|
37
|
+
}
|
|
38
|
+
],
|
|
31
39
|
metadata: core.omitInternalMetadata(
|
|
32
40
|
JSON.parse(order.purchaseUnits?.[0]?.customId ?? "{}")
|
|
33
41
|
),
|
|
34
42
|
subscription: null
|
|
35
43
|
};
|
|
36
44
|
};
|
|
37
|
-
var
|
|
45
|
+
var Payment$inboundSchema = (order) => {
|
|
38
46
|
const statusMap = {
|
|
39
47
|
CREATED: "pending",
|
|
40
48
|
SAVED: "pending",
|
|
@@ -53,8 +61,10 @@ var paykitPayment$InboundSchema = (order) => {
|
|
|
53
61
|
return {
|
|
54
62
|
id: order.id,
|
|
55
63
|
status,
|
|
56
|
-
customer:
|
|
57
|
-
amount: parseFloat(
|
|
64
|
+
customer: Payee$inboundSchema(order.payer ?? {}),
|
|
65
|
+
amount: parseFloat(
|
|
66
|
+
order.purchaseUnits?.[0]?.amount?.value || "0"
|
|
67
|
+
),
|
|
58
68
|
currency: order.purchaseUnits?.[0]?.amount?.currencyCode || "USD",
|
|
59
69
|
metadata: core.omitInternalMetadata(
|
|
60
70
|
JSON.parse(order.purchaseUnits?.[0]?.customId ?? "{}")
|
|
@@ -64,7 +74,7 @@ var paykitPayment$InboundSchema = (order) => {
|
|
|
64
74
|
payment_url: approveLink
|
|
65
75
|
};
|
|
66
76
|
};
|
|
67
|
-
var
|
|
77
|
+
var Subscription$inboundSchema = (subscription) => {
|
|
68
78
|
const statusMap = {
|
|
69
79
|
APPROVAL_PENDING: "pending",
|
|
70
80
|
APPROVED: "active",
|
|
@@ -107,14 +117,17 @@ var paykitSubscription$InboundSchema = (subscription) => {
|
|
|
107
117
|
}
|
|
108
118
|
return end;
|
|
109
119
|
})();
|
|
120
|
+
const email = subscription.subscriber?.email_address;
|
|
110
121
|
return {
|
|
111
122
|
id: subscription.id,
|
|
112
|
-
customer: { email
|
|
123
|
+
customer: email ? { email } : null,
|
|
113
124
|
status,
|
|
114
125
|
item_id: subscription.plan_id,
|
|
115
126
|
current_period_start: periodStart,
|
|
116
127
|
current_period_end: periodEnd,
|
|
117
|
-
metadata: core.omitInternalMetadata(
|
|
128
|
+
metadata: core.omitInternalMetadata(
|
|
129
|
+
JSON.parse(subscription?.customId ?? "{}")
|
|
130
|
+
),
|
|
118
131
|
billing_interval: billingInterval,
|
|
119
132
|
amount: 0,
|
|
120
133
|
currency: "USD",
|
|
@@ -123,12 +136,14 @@ var paykitSubscription$InboundSchema = (subscription) => {
|
|
|
123
136
|
payment_url: null
|
|
124
137
|
};
|
|
125
138
|
};
|
|
126
|
-
var
|
|
139
|
+
var Invoice$inboundSchema = (order) => {
|
|
127
140
|
return {
|
|
128
141
|
id: order.id,
|
|
129
|
-
amount_paid: parseFloat(
|
|
142
|
+
amount_paid: parseFloat(
|
|
143
|
+
order.purchaseUnits?.[0]?.amount?.value || "0"
|
|
144
|
+
),
|
|
130
145
|
currency: order.purchaseUnits?.[0]?.amount?.currencyCode || "USD",
|
|
131
|
-
customer:
|
|
146
|
+
customer: Payee$inboundSchema(order.payer ?? {}),
|
|
132
147
|
status: "paid",
|
|
133
148
|
paid_at: (/* @__PURE__ */ new Date()).toISOString(),
|
|
134
149
|
metadata: core.omitInternalMetadata(
|
|
@@ -137,10 +152,15 @@ var paykitInvoice$InboundSchema = (order) => {
|
|
|
137
152
|
custom_fields: null,
|
|
138
153
|
subscription_id: null,
|
|
139
154
|
billing_mode: "one_time",
|
|
140
|
-
line_items: [
|
|
155
|
+
line_items: [
|
|
156
|
+
{
|
|
157
|
+
id: order.purchaseUnits?.[0]?.items?.[0]?.sku || "",
|
|
158
|
+
quantity: 1
|
|
159
|
+
}
|
|
160
|
+
]
|
|
141
161
|
};
|
|
142
162
|
};
|
|
143
|
-
var
|
|
163
|
+
var PaymentWebhook$inboundSchema = (resource) => {
|
|
144
164
|
const statusMap = {
|
|
145
165
|
CREATED: "pending",
|
|
146
166
|
SAVED: "pending",
|
|
@@ -151,9 +171,9 @@ var paykitPaymentWebhook$InboundSchema = (resource) => {
|
|
|
151
171
|
};
|
|
152
172
|
const status = statusMap[resource.status ?? "CREATED"] ?? "pending";
|
|
153
173
|
const payer = resource.payer;
|
|
154
|
-
let customer =
|
|
174
|
+
let customer = null;
|
|
155
175
|
if (payer?.payer_id) {
|
|
156
|
-
customer = payer.payer_id;
|
|
176
|
+
customer = { id: payer.payer_id };
|
|
157
177
|
} else if (payer?.email_address) {
|
|
158
178
|
customer = { email: payer.email_address };
|
|
159
179
|
}
|
|
@@ -182,12 +202,11 @@ var paykitPaymentWebhook$InboundSchema = (resource) => {
|
|
|
182
202
|
payment_url: null
|
|
183
203
|
};
|
|
184
204
|
};
|
|
185
|
-
var
|
|
205
|
+
var PaymentCaptureWebhook$inboundSchema = (capture) => {
|
|
186
206
|
const statusMap = {
|
|
187
207
|
COMPLETED: "succeeded",
|
|
188
208
|
PENDING: "pending",
|
|
189
209
|
REFUNDED: "succeeded",
|
|
190
|
-
// Refunded but was successful
|
|
191
210
|
PARTIALLY_REFUNDED: "succeeded"
|
|
192
211
|
};
|
|
193
212
|
const status = statusMap[capture.status ?? "PENDING"] ?? "pending";
|
|
@@ -206,18 +225,16 @@ var paykitPaymentCaptureWebhook$InboundSchema = (capture) => {
|
|
|
206
225
|
return {
|
|
207
226
|
id: orderId,
|
|
208
227
|
status,
|
|
209
|
-
customer:
|
|
210
|
-
// Not available in capture event
|
|
228
|
+
customer: null,
|
|
211
229
|
amount: parseFloat(amount?.value ?? "0"),
|
|
212
230
|
currency: amount?.currency_code ?? "USD",
|
|
213
231
|
metadata: core.omitInternalMetadata(metadata),
|
|
214
232
|
item_id: "",
|
|
215
|
-
// Not available in capture event
|
|
216
233
|
requires_action: false,
|
|
217
234
|
payment_url: null
|
|
218
235
|
};
|
|
219
236
|
};
|
|
220
|
-
var
|
|
237
|
+
var RefundWebhook$inboundSchema = (refund) => {
|
|
221
238
|
const amount = refund.amount;
|
|
222
239
|
const refundAmount = amount?.total ? Math.abs(parseFloat(amount.total)) : 0;
|
|
223
240
|
return {
|
|
@@ -225,12 +242,10 @@ var paykitRefundWebhook$InboundSchema = (refund) => {
|
|
|
225
242
|
amount: refundAmount,
|
|
226
243
|
currency: amount?.currency ?? "USD",
|
|
227
244
|
metadata: core.omitInternalMetadata({}),
|
|
228
|
-
// No metadata in webhook refund
|
|
229
245
|
reason: null
|
|
230
|
-
// No reason in webhook refund
|
|
231
246
|
};
|
|
232
247
|
};
|
|
233
|
-
var
|
|
248
|
+
var SubscriptionWebhook$inboundSchema = (agreement) => {
|
|
234
249
|
const state = agreement.state ?? "Pending";
|
|
235
250
|
const statusMap = {
|
|
236
251
|
Pending: "pending",
|
|
@@ -243,7 +258,9 @@ var paykitSubscriptionWebhook$InboundSchema = (agreement) => {
|
|
|
243
258
|
const status = statusMap[state] ?? "pending";
|
|
244
259
|
const plan = agreement.plan;
|
|
245
260
|
const paymentDefinitions = plan?.payment_definitions ?? [];
|
|
246
|
-
const regularDefinition = paymentDefinitions.find(
|
|
261
|
+
const regularDefinition = paymentDefinitions.find(
|
|
262
|
+
(def) => def.type === "REGULAR"
|
|
263
|
+
) ?? paymentDefinitions[0];
|
|
247
264
|
const frequency = regularDefinition?.frequency ?? "Month";
|
|
248
265
|
const billingIntervalMap = {
|
|
249
266
|
Day: "day",
|
|
@@ -280,7 +297,7 @@ var paykitSubscriptionWebhook$InboundSchema = (agreement) => {
|
|
|
280
297
|
})();
|
|
281
298
|
const payer = agreement.payer;
|
|
282
299
|
const payerInfo = payer?.payer_info;
|
|
283
|
-
const email = payerInfo?.email
|
|
300
|
+
const email = payerInfo?.email;
|
|
284
301
|
const planId = plan?.id ?? agreement.id;
|
|
285
302
|
const amount = regularDefinition?.amount;
|
|
286
303
|
const subscriptionAmount = amount?.value ? parseFloat(amount.value) : 0;
|
|
@@ -295,7 +312,7 @@ var paykitSubscriptionWebhook$InboundSchema = (agreement) => {
|
|
|
295
312
|
})();
|
|
296
313
|
return {
|
|
297
314
|
id: agreement.id,
|
|
298
|
-
customer: { email },
|
|
315
|
+
customer: email ? { email } : null,
|
|
299
316
|
status,
|
|
300
317
|
item_id: planId,
|
|
301
318
|
current_period_start: periodStart,
|
|
@@ -310,13 +327,13 @@ var paykitSubscriptionWebhook$InboundSchema = (agreement) => {
|
|
|
310
327
|
};
|
|
311
328
|
};
|
|
312
329
|
|
|
313
|
-
exports.
|
|
314
|
-
exports.
|
|
315
|
-
exports.
|
|
316
|
-
exports.
|
|
317
|
-
exports.
|
|
318
|
-
exports.
|
|
319
|
-
exports.
|
|
320
|
-
exports.
|
|
321
|
-
exports.
|
|
322
|
-
exports.
|
|
330
|
+
exports.Checkout$inboundSchema = Checkout$inboundSchema;
|
|
331
|
+
exports.Invoice$inboundSchema = Invoice$inboundSchema;
|
|
332
|
+
exports.Payee$inboundSchema = Payee$inboundSchema;
|
|
333
|
+
exports.Payment$inboundSchema = Payment$inboundSchema;
|
|
334
|
+
exports.PaymentCaptureWebhook$inboundSchema = PaymentCaptureWebhook$inboundSchema;
|
|
335
|
+
exports.PaymentWebhook$inboundSchema = PaymentWebhook$inboundSchema;
|
|
336
|
+
exports.Refund$inboundSchema = Refund$inboundSchema;
|
|
337
|
+
exports.RefundWebhook$inboundSchema = RefundWebhook$inboundSchema;
|
|
338
|
+
exports.Subscription$inboundSchema = Subscription$inboundSchema;
|
|
339
|
+
exports.SubscriptionWebhook$inboundSchema = SubscriptionWebhook$inboundSchema;
|