@bates-solutions/squareup 1.5.2 → 1.6.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.
package/README.md CHANGED
@@ -142,6 +142,22 @@ export async function POST(request: Request) {
142
142
  }
143
143
  ```
144
144
 
145
+ ### Typed Webhook Payloads
146
+
147
+ ```typescript
148
+ import type { PaymentWebhookEvent } from '@bates-solutions/squareup/server';
149
+ import { getOrderId, getCustomerId } from '@bates-solutions/squareup/server';
150
+
151
+ // Cast to typed event for full payload types — no `as any` needed
152
+ const event = webhookHandler.verifyAndParse(req) as PaymentWebhookEvent;
153
+ const payment = event.data.object.payment;
154
+ console.log(payment.status, payment.amount_money);
155
+
156
+ // Or use helpers to extract entity IDs from any event type
157
+ const orderId = getOrderId(event); // works on payment, order, and refund events
158
+ const customerId = getCustomerId(event); // works on payment and customer events
159
+ ```
160
+
145
161
  ## Available Services
146
162
 
147
163
  | Service | Description |
@@ -36,8 +36,8 @@
36
36
  * }));
37
37
  * ```
38
38
  */
39
- export type { WebhookEventType, PaymentEventType, RefundEventType, OrderEventType, CustomerEventType, SubscriptionEventType, InvoiceEventType, LoyaltyEventType, CatalogEventType, InventoryEventType, TeamEventType, LaborEventType, WebhookEvent, WebhookHandler, WebhookHandlers, WebhookConfig, WebhookVerificationResult, ParsedWebhookRequest, } from './types.js';
40
- export { SIGNATURE_HEADER, verifySignature, parseWebhookEvent, parseAndVerifyWebhook, processWebhookEvent, createWebhookProcessor, } from './webhook.js';
39
+ export type { WebhookEventType, PaymentEventType, RefundEventType, OrderEventType, CustomerEventType, SubscriptionEventType, InvoiceEventType, LoyaltyEventType, CatalogEventType, InventoryEventType, TeamEventType, LaborEventType, WebhookEvent, WebhookHandler, WebhookHandlers, WebhookConfig, WebhookVerificationResult, ParsedWebhookRequest, PaymentWebhookObject, OrderWebhookObject, RefundWebhookObject, CustomerWebhookObject, PaymentWebhookEvent, OrderWebhookEvent, RefundWebhookEvent, CustomerWebhookEvent, } from './types.js';
40
+ export { SIGNATURE_HEADER, verifySignature, parseWebhookEvent, parseAndVerifyWebhook, processWebhookEvent, createWebhookProcessor, getPaymentId, getOrderId, getCustomerId, } from './webhook.js';
41
41
  export { createExpressWebhookHandler, rawBodyMiddleware, type SquareWebhookRequest, type ExpressWebhookOptions, } from './middleware/express.js';
42
42
  export { createNextWebhookHandler, createNextPagesWebhookHandler, parseNextWebhook, type WebhookResponse, } from './middleware/nextjs.js';
43
43
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAGH,YAAY,EACV,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,aAAa,EACb,cAAc,EACd,YAAY,EACZ,cAAc,EACd,eAAe,EACf,aAAa,EACb,yBAAyB,EACzB,oBAAoB,GACrB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,cAAc,CAAC;AAGtB,OAAO,EACL,2BAA2B,EAC3B,iBAAiB,EACjB,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,GAC3B,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EACL,wBAAwB,EACxB,6BAA6B,EAC7B,gBAAgB,EAChB,KAAK,eAAe,GACrB,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAGH,YAAY,EACV,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,aAAa,EACb,cAAc,EACd,YAAY,EACZ,cAAc,EACd,eAAe,EACf,aAAa,EACb,yBAAyB,EACzB,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,EACtB,YAAY,EACZ,UAAU,EACV,aAAa,GACd,MAAM,cAAc,CAAC;AAGtB,OAAO,EACL,2BAA2B,EAC3B,iBAAiB,EACjB,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,GAC3B,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EACL,wBAAwB,EACxB,6BAA6B,EAC7B,gBAAgB,EAChB,KAAK,eAAe,GACrB,MAAM,wBAAwB,CAAC"}
@@ -37,7 +37,7 @@
37
37
  * ```
38
38
  */
39
39
  // Core webhook utilities
40
- export { SIGNATURE_HEADER, verifySignature, parseWebhookEvent, parseAndVerifyWebhook, processWebhookEvent, createWebhookProcessor, } from './webhook.js';
40
+ export { SIGNATURE_HEADER, verifySignature, parseWebhookEvent, parseAndVerifyWebhook, processWebhookEvent, createWebhookProcessor, getPaymentId, getOrderId, getCustomerId, } from './webhook.js';
41
41
  // Express middleware
42
42
  export { createExpressWebhookHandler, rawBodyMiddleware, } from './middleware/express.js';
43
43
  // Next.js handlers
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAwBH,yBAAyB;AACzB,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,cAAc,CAAC;AAEtB,qBAAqB;AACrB,OAAO,EACL,2BAA2B,EAC3B,iBAAiB,GAGlB,MAAM,yBAAyB,CAAC;AAEjC,mBAAmB;AACnB,OAAO,EACL,wBAAwB,EACxB,6BAA6B,EAC7B,gBAAgB,GAEjB,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAgCH,yBAAyB;AACzB,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,EACtB,YAAY,EACZ,UAAU,EACV,aAAa,GACd,MAAM,cAAc,CAAC;AAEtB,qBAAqB;AACrB,OAAO,EACL,2BAA2B,EAC3B,iBAAiB,GAGlB,MAAM,yBAAyB,CAAC;AAEjC,mBAAmB;AACnB,OAAO,EACL,wBAAwB,EACxB,6BAA6B,EAC7B,gBAAgB,GAEjB,MAAM,wBAAwB,CAAC"}
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * @see https://developer.squareup.com/reference/square/webhooks
5
5
  */
6
- export type PaymentEventType = 'payment.created' | 'payment.updated';
6
+ export type PaymentEventType = 'payment.created' | 'payment.updated' | 'payment.completed';
7
7
  export type RefundEventType = 'refund.created' | 'refund.updated';
8
8
  export type OrderEventType = 'order.created' | 'order.updated' | 'order.fulfillment.updated';
9
9
  export type CustomerEventType = 'customer.created' | 'customer.updated' | 'customer.deleted';
@@ -86,4 +86,75 @@ export interface ParsedWebhookRequest {
86
86
  /** Parsed event data */
87
87
  event: WebhookEvent;
88
88
  }
89
+ /**
90
+ * Payment object in a webhook event payload
91
+ */
92
+ export interface PaymentWebhookObject {
93
+ payment: {
94
+ id: string;
95
+ order_id?: string;
96
+ customer_id?: string;
97
+ amount_money?: {
98
+ amount: number;
99
+ currency: string;
100
+ };
101
+ status: string;
102
+ source_type?: string;
103
+ location_id?: string;
104
+ created_at?: string;
105
+ updated_at?: string;
106
+ };
107
+ }
108
+ /**
109
+ * Order update object in a webhook event payload
110
+ */
111
+ export interface OrderWebhookObject {
112
+ order_update?: {
113
+ order_id: string;
114
+ state: string;
115
+ version: number;
116
+ };
117
+ }
118
+ /**
119
+ * Refund object in a webhook event payload
120
+ */
121
+ export interface RefundWebhookObject {
122
+ refund: {
123
+ id: string;
124
+ payment_id: string;
125
+ order_id?: string;
126
+ amount_money?: {
127
+ amount: number;
128
+ currency: string;
129
+ };
130
+ status: string;
131
+ };
132
+ }
133
+ /**
134
+ * Customer object in a webhook event payload
135
+ */
136
+ export interface CustomerWebhookObject {
137
+ customer?: {
138
+ id: string;
139
+ given_name?: string;
140
+ family_name?: string;
141
+ email_address?: string;
142
+ phone_number?: string;
143
+ };
144
+ }
145
+ /**
146
+ * Typed webhook events for common event types
147
+ */
148
+ export type PaymentWebhookEvent = WebhookEvent<PaymentWebhookObject> & {
149
+ type: PaymentEventType;
150
+ };
151
+ export type OrderWebhookEvent = WebhookEvent<OrderWebhookObject> & {
152
+ type: OrderEventType;
153
+ };
154
+ export type RefundWebhookEvent = WebhookEvent<RefundWebhookObject> & {
155
+ type: RefundEventType;
156
+ };
157
+ export type CustomerWebhookEvent = WebhookEvent<CustomerWebhookObject> & {
158
+ type: CustomerEventType;
159
+ };
89
160
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/server/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,MAAM,MAAM,gBAAgB,GAAG,iBAAiB,GAAG,iBAAiB,CAAC;AAGrE,MAAM,MAAM,eAAe,GAAG,gBAAgB,GAAG,gBAAgB,CAAC;AAGlE,MAAM,MAAM,cAAc,GACtB,eAAe,GACf,eAAe,GACf,2BAA2B,CAAC;AAGhC,MAAM,MAAM,iBAAiB,GACzB,kBAAkB,GAClB,kBAAkB,GAClB,kBAAkB,CAAC;AAGvB,MAAM,MAAM,qBAAqB,GAAG,sBAAsB,GAAG,sBAAsB,CAAC;AAGpF,MAAM,MAAM,gBAAgB,GACxB,iBAAiB,GACjB,iBAAiB,GACjB,mBAAmB,GACnB,sBAAsB,GACtB,kBAAkB,CAAC;AAGvB,MAAM,MAAM,gBAAgB,GACxB,yBAAyB,GACzB,yBAAyB,GACzB,yBAAyB,GACzB,2BAA2B,CAAC;AAGhC,MAAM,MAAM,gBAAgB,GAAG,yBAAyB,CAAC;AAGzD,MAAM,MAAM,kBAAkB,GAAG,yBAAyB,CAAC;AAG3D,MAAM,MAAM,aAAa,GAAG,qBAAqB,GAAG,qBAAqB,CAAC;AAG1E,MAAM,MAAM,cAAc,GAAG,wBAAwB,GAAG,wBAAwB,CAAC;AAEjF;;GAEG;AACH,MAAM,MAAM,gBAAgB,GACxB,gBAAgB,GAChB,eAAe,GACf,cAAc,GACd,iBAAiB,GACjB,qBAAqB,GACrB,gBAAgB,GAChB,gBAAgB,GAChB,gBAAgB,GAChB,kBAAkB,GAClB,aAAa,GACb,cAAc,CAAC;AAEnB;;GAEG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC,GAAG,OAAO;IACvC,+BAA+B;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,2CAA2C;IAC3C,WAAW,EAAE,MAAM,CAAC;IACpB,oBAAoB;IACpB,IAAI,EAAE,gBAAgB,CAAC;IACvB,iCAAiC;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,yBAAyB;IACzB,IAAI,EAAE;QACJ,kCAAkC;QAClC,IAAI,EAAE,MAAM,CAAC;QACb,8BAA8B;QAC9B,EAAE,EAAE,MAAM,CAAC;QACX,6BAA6B;QAC7B,MAAM,EAAE,CAAC,CAAC;KACX,CAAC;CACH;AAED;;GAEG;AACH,MAAM,MAAM,cAAc,CAAC,CAAC,GAAG,OAAO,IAAI,CACxC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,KACnB,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE1B;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;KAC3B,CAAC,IAAI,gBAAgB,CAAC,CAAC,EAAE,cAAc;CACzC,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,mCAAmC;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,6BAA6B;IAC7B,QAAQ,EAAE,eAAe,CAAC;IAC1B,mEAAmE;IACnE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,qCAAqC;IACrC,KAAK,EAAE,OAAO,CAAC;IACf,+BAA+B;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,2BAA2B;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,iCAAiC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,wBAAwB;IACxB,KAAK,EAAE,YAAY,CAAC;CACrB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/server/types.ts"],"names":[],"mappings":"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"}
@@ -111,4 +111,16 @@ export declare function createWebhookProcessor(config: WebhookConfig): (rawBody:
111
111
  event?: WebhookEvent;
112
112
  error?: string;
113
113
  }>;
114
+ /**
115
+ * Extract the payment ID from a webhook event
116
+ */
117
+ export declare function getPaymentId(event: WebhookEvent): string | undefined;
118
+ /**
119
+ * Extract the order ID from a webhook event
120
+ */
121
+ export declare function getOrderId(event: WebhookEvent): string | undefined;
122
+ /**
123
+ * Extract the customer ID from a webhook event
124
+ */
125
+ export declare function getCustomerId(event: WebhookEvent): string | undefined;
114
126
  //# sourceMappingURL=webhook.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"webhook.d.ts","sourceRoot":"","sources":["../../src/server/webhook.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EACb,YAAY,EACZ,yBAAyB,EACzB,oBAAoB,EACrB,MAAM,YAAY,CAAC;AAEpB;;GAEG;AACH,eAAO,MAAM,gBAAgB,kCAAkC,CAAC;AAEhE;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,eAAe,CAAC,EAAE,MAAM,GACvB,yBAAyB,CA6C3B;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,CAM/D;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,eAAe,CAAC,EAAE,MAAM,GACvB,oBAAoB,CActB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,IAAI,CAAC,CAMf;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,aAAa,IAExD,SAAS,MAAM,EACf,WAAW,MAAM,KAChB,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,YAAY,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CA0BvE"}
1
+ {"version":3,"file":"webhook.d.ts","sourceRoot":"","sources":["../../src/server/webhook.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EACb,YAAY,EACZ,yBAAyB,EACzB,oBAAoB,EAGrB,MAAM,YAAY,CAAC;AAEpB;;GAEG;AACH,eAAO,MAAM,gBAAgB,kCAAkC,CAAC;AAEhE;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,eAAe,CAAC,EAAE,MAAM,GACvB,yBAAyB,CA6C3B;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,CAM/D;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,eAAe,CAAC,EAAE,MAAM,GACvB,oBAAoB,CActB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,IAAI,CAAC,CAMf;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,aAAa,IAExD,SAAS,MAAM,EACf,WAAW,MAAM,KAChB,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,YAAY,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CA0BvE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,GAAG,SAAS,CASpE;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,GAAG,SAAS,CAalE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,GAAG,SAAS,CASrE"}
@@ -187,4 +187,47 @@ export function createWebhookProcessor(config) {
187
187
  }
188
188
  };
189
189
  }
190
+ /**
191
+ * Extract the payment ID from a webhook event
192
+ */
193
+ export function getPaymentId(event) {
194
+ if (event.type.startsWith('payment.')) {
195
+ return event.data.id;
196
+ }
197
+ if (event.type.startsWith('refund.')) {
198
+ const obj = event.data.object;
199
+ return obj.refund?.payment_id;
200
+ }
201
+ return undefined;
202
+ }
203
+ /**
204
+ * Extract the order ID from a webhook event
205
+ */
206
+ export function getOrderId(event) {
207
+ if (event.type.startsWith('payment.')) {
208
+ const obj = event.data.object;
209
+ return obj.payment?.order_id;
210
+ }
211
+ if (event.type.startsWith('order.')) {
212
+ return event.data.id;
213
+ }
214
+ if (event.type.startsWith('refund.')) {
215
+ const obj = event.data.object;
216
+ return obj.refund?.order_id;
217
+ }
218
+ return undefined;
219
+ }
220
+ /**
221
+ * Extract the customer ID from a webhook event
222
+ */
223
+ export function getCustomerId(event) {
224
+ if (event.type.startsWith('payment.')) {
225
+ const obj = event.data.object;
226
+ return obj.payment?.customer_id;
227
+ }
228
+ if (event.type.startsWith('customer.')) {
229
+ return event.data.id;
230
+ }
231
+ return undefined;
232
+ }
190
233
  //# sourceMappingURL=webhook.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"webhook.js","sourceRoot":"","sources":["../../src/server/webhook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAQrD;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,+BAA+B,CAAC;AAEhE;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,eAAe,CAC7B,OAAe,EACf,SAAiB,EACjB,YAAoB,EACpB,eAAwB;IAExB,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,sBAAsB,EAAE,CAAC;IACzD,CAAC;IAED,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,0BAA0B,EAAE,CAAC;IAC7D,CAAC;IAED,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,uBAAuB,EAAE,CAAC;IAC1D,CAAC;IAED,IAAI,CAAC;QACH,2BAA2B;QAC3B,2EAA2E;QAC3E,MAAM,YAAY,GAAG,eAAe,CAAC,CAAC,CAAC,eAAe,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;QAE3E,iCAAiC;QACjC,MAAM,iBAAiB,GAAG,UAAU,CAAC,QAAQ,EAAE,YAAY,CAAC;aACzD,MAAM,CAAC,YAAY,CAAC;aACpB,MAAM,CAAC,QAAQ,CAAC,CAAC;QAEpB,uDAAuD;QACvD,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QACzD,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;QAEhE,kDAAkD;QAClD,IAAI,eAAe,CAAC,MAAM,KAAK,cAAc,CAAC,MAAM,EAAE,CAAC;YACrD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC;QACtD,CAAC;QAED,MAAM,OAAO,GAAG,eAAe,CAAC,eAAe,EAAE,cAAc,CAAC,CAAC;QAEjE,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC;QACtD,CAAC;QAED,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IACzB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,+BAA+B;SAChF,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe;IAC/C,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAiB,CAAC;IAC7C,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IACnE,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,qBAAqB,CACnC,OAAe,EACf,SAAiB,EACjB,YAAoB,EACpB,eAAwB;IAExB,MAAM,YAAY,GAAG,eAAe,CAAC,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,eAAe,CAAC,CAAC;IAExF,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,IAAI,+BAA+B,CAAC,CAAC;IACzE,CAAC;IAED,MAAM,KAAK,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAEzC,OAAO;QACL,OAAO;QACP,SAAS;QACT,KAAK;KACN,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,KAAmB,EACnB,MAAqB;IAErB,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAE5C,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,OAAO,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,sBAAsB,CAAC,MAAqB;IAC1D,OAAO,KAAK,EACV,OAAe,EACf,SAAiB,EACoD,EAAE;QACvE,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,eAAe,CAClC,OAAO,EACP,SAAS,EACT,MAAM,CAAC,YAAY,EACnB,MAAM,CAAC,eAAe,CACvB,CAAC;YAEF,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;gBACxB,IAAI,MAAM,CAAC,uBAAuB,KAAK,KAAK,EAAE,CAAC;oBAC7C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,EAAE,CAAC;gBACvD,CAAC;YACH,CAAC;YAED,MAAM,KAAK,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;YACzC,MAAM,mBAAmB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YAEzC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;QAClC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;aAChE,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"webhook.js","sourceRoot":"","sources":["../../src/server/webhook.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bates-solutions/squareup",
3
- "version": "1.5.2",
3
+ "version": "1.6.0",
4
4
  "description": "TypeScript wrapper for Square API with webhook support for Node.js backends",
5
5
  "type": "module",
6
6
  "main": "./dist/core/index.js",