@shophost/rest-api 2.0.59 → 2.0.61

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shophost/rest-api",
3
- "version": "2.0.59",
3
+ "version": "2.0.61",
4
4
  "type": "module",
5
5
  "bin": {
6
6
  "shophost-rest-api": "./scripts/shophost-rest-api.mjs"
@@ -16,7 +16,7 @@ declare class EmailService {
16
16
  /**
17
17
  * Sends an email
18
18
  */
19
- sendEmail(payload: CreateEmailOptions, options?: CreateEmailRequestOptions): Promise<void>;
19
+ sendEmail(payload: CreateEmailOptions, options?: CreateEmailRequestOptions): Promise<import("resend").CreateEmailResponseSuccess | null | undefined>;
20
20
  /**
21
21
  * Sends an order confirmation email
22
22
  */
@@ -1 +1 @@
1
- import{__awaiter as n}from"tslib";import{Resend as r}from"resend";import{OrderConfirmationEmail as a}from"../../features/order/emails/order-confirmation.email";import s from"../../features/order/emails/order-notification.email";import{ReservationCancellationEmail as m}from"../../features/reservation/emails/reservation-cancellation.email";import{ReservationConfirmationEmail as d}from"../../features/reservation/emails/reservation-confirmation.email";import l from"../../features/reservation/emails/reservation-notification.email";import{ReservationUpdatedEmail as c}from"../../features/reservation/emails/reservation-updated.email";class f{constructor(e={}){e.apiKey&&(this.resend=new r(e.apiKey)),this.fromEmail=e.fromEmail}getFromAddress(e){var i,o;const t=(o=(i=this.fromEmail)!==null&&i!==void 0?i:e.email)!==null&&o!==void 0?o:"info@shophost.io";return`${e.name} <${t}>`}sendEmail(e,i){return n(this,void 0,void 0,function*(){this.resend&&(yield this.resend.emails.send(e))})}sendOrderConfirmationEmail(e,i,o){return n(this,void 0,void 0,function*(){console.log(`Sending order confirmation email to ${e.email}`),yield this.sendEmail({from:this.getFromAddress(i),to:[e.email],subject:`Order Confirmation - Order #${o.referenceId} | ${i.name}`,react:a({user:e,organization:i,order:o})})})}sendOrderNotificationEmail(e,i,o,t){return n(this,void 0,void 0,function*(){console.log(`Sending order notification email to ${i.email}`),yield this.sendEmail({from:this.getFromAddress(o),to:[i.email],subject:`You have received a new order | ${o.name}`,react:s({user:e,organization:o,order:t})})})}sendReservationConfirmationEmail(e){return n(this,void 0,void 0,function*(){const i=e.user,o=e.organization;i?.email&&(console.log(`Sending reservation confirmation email to ${i.email}`),yield this.sendEmail({from:this.getFromAddress(o),to:[i.email],subject:`Reservation Confirmation - ${o.name}`,react:d({user:i,organization:o,reservation:e})}))})}sendReservationCancellationEmail(e){return n(this,void 0,void 0,function*(){const i=e.user,o=e.organization;i?.email&&(console.log(`Sending reservation cancellation email to ${i.email}`),yield this.sendEmail({from:this.getFromAddress(o),to:[i.email],subject:`Reservation Cancelled - ${o.name}`,react:m({user:i,organization:o,reservation:e})}))})}sendReservationNotificationEmail(e,i){return n(this,void 0,void 0,function*(){const o=i.user,t=i.organization;o&&(console.log(`Sending reservation notification email to ${e.email}`),yield this.sendEmail({from:this.getFromAddress(t),to:[e.email],subject:`New Reservation Request | ${t.name}`,react:l({user:o,member:e,organization:t,reservation:i})}))})}sendReservationUpdatedEmail(e){return n(this,void 0,void 0,function*(){const i=e.user,o=e.organization;i?.email&&(console.log(`Sending reservation updated email to ${i.email}`),yield this.sendEmail({from:this.getFromAddress(o),to:[i.email],subject:`Reservation Updated - ${o.name}`,react:c({user:i,organization:o,reservation:e})}))})}}export{f as EmailService};
1
+ import{__awaiter as n}from"tslib";import{Resend as s}from"resend";import{OrderConfirmationEmail as a}from"../../features/order/emails/order-confirmation.email";import m from"../../features/order/emails/order-notification.email";import{ReservationCancellationEmail as d}from"../../features/reservation/emails/reservation-cancellation.email";import{ReservationConfirmationEmail as l}from"../../features/reservation/emails/reservation-confirmation.email";import c from"../../features/reservation/emails/reservation-notification.email";import{ReservationUpdatedEmail as f}from"../../features/reservation/emails/reservation-updated.email";import{logger as r}from"../logging/pino";class u{constructor(e={}){e.apiKey&&(this.resend=new s(e.apiKey)),this.fromEmail=e.fromEmail}getFromAddress(e){var i,o;const t=(o=(i=this.fromEmail)!==null&&i!==void 0?i:e.email)!==null&&o!==void 0?o:"info@shophost.io";return`${e.name} <${t}>`}sendEmail(e,i){return n(this,void 0,void 0,function*(){if(!this.resend)return;const{data:o,error:t}=yield this.resend.emails.send(e,i);if(t)throw r.error({resendError:t,from:e.from,subject:e.subject,to:e.to},"Failed to send email with Resend"),new Error(`Resend send failed: ${t.name}: ${t.message}`);return r.info({emailId:o?.id,subject:e.subject,to:e.to},"Email sent with Resend"),o})}sendOrderConfirmationEmail(e,i,o){return n(this,void 0,void 0,function*(){console.log(`Sending order confirmation email to ${e.email}`),yield this.sendEmail({from:this.getFromAddress(i),to:[e.email],subject:`Order Confirmation - Order #${o.referenceId} | ${i.name}`,react:a({user:e,organization:i,order:o})})})}sendOrderNotificationEmail(e,i,o,t){return n(this,void 0,void 0,function*(){console.log(`Sending order notification email to ${i.email}`),yield this.sendEmail({from:this.getFromAddress(o),to:[i.email],subject:`You have received a new order | ${o.name}`,react:m({user:e,organization:o,order:t})})})}sendReservationConfirmationEmail(e){return n(this,void 0,void 0,function*(){const i=e.user,o=e.organization;i?.email&&(console.log(`Sending reservation confirmation email to ${i.email}`),yield this.sendEmail({from:this.getFromAddress(o),to:[i.email],subject:`Reservation Confirmation - ${o.name}`,react:l({user:i,organization:o,reservation:e})}))})}sendReservationCancellationEmail(e){return n(this,void 0,void 0,function*(){const i=e.user,o=e.organization;i?.email&&(console.log(`Sending reservation cancellation email to ${i.email}`),yield this.sendEmail({from:this.getFromAddress(o),to:[i.email],subject:`Reservation Cancelled - ${o.name}`,react:d({user:i,organization:o,reservation:e})}))})}sendReservationNotificationEmail(e,i){return n(this,void 0,void 0,function*(){const o=i.user,t=i.organization;o&&(console.log(`Sending reservation notification email to ${e.email}`),yield this.sendEmail({from:this.getFromAddress(t),to:[e.email],subject:`New Reservation Request | ${t.name}`,react:c({user:o,member:e,organization:t,reservation:i})}))})}sendReservationUpdatedEmail(e){return n(this,void 0,void 0,function*(){const i=e.user,o=e.organization;i?.email&&(console.log(`Sending reservation updated email to ${i.email}`),yield this.sendEmail({from:this.getFromAddress(o),to:[i.email],subject:`Reservation Updated - ${o.name}`,react:f({user:i,organization:o,reservation:e})}))})}}export{u as EmailService};
@@ -1 +1 @@
1
- {"version":3,"file":"email.service.js","sourceRoot":"","sources":["../../../../../../packages/rest-api/src/core/notifications/email.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"email.service.js","sourceRoot":"","sources":["../../../../../../packages/rest-api/src/core/notifications/email.service.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- import{__awaiter as r}from"tslib";import{createApiRouter as u}from"../../core/hono/hono";import{integrationRoutes as d}from"./integration.route";export const registerIntegrationHandlers=a=>{const e=u();return e.openapi(d.getIntegrations,t=>r(void 0,void 0,void 0,function*(){const o=t.get("auth"),n=t.req.valid("param");yield o.isGranted("read");const i=yield a.getIntegrations(n.organizationId);return t.json(i,200)})),e.openapi(d.upsertIntegration,t=>r(void 0,void 0,void 0,function*(){const o=t.get("auth"),n=t.req.valid("param"),i=t.req.valid("json"),s=yield o.isGranted("update"),p=yield a.upsertIntegration(n.organizationId,n.type,s.id,i);return t.json(p,200)})),e.openapi(d.deleteIntegration,t=>r(void 0,void 0,void 0,function*(){const o=t.get("auth"),n=t.req.valid("param");return yield o.isGranted("update"),yield a.deleteIntegration(n.organizationId,n.type),t.body(null,204)})),e};
1
+ import{__awaiter as d}from"tslib";import{createApiRouter as u}from"../../core/hono/hono";import{integrationRoutes as s}from"./integration.route";export const registerIntegrationHandlers=i=>{const a=u();return a.openapi(s.getIntegrations,t=>d(void 0,void 0,void 0,function*(){const o=t.get("auth"),n=t.req.valid("param");yield o.isGranted("read");const e=yield i.getIntegrations(n.organizationId);return t.json(e,200)})),a.openapi(s.upsertIntegration,t=>d(void 0,void 0,void 0,function*(){const o=t.get("auth"),n=t.req.valid("param"),e=t.req.valid("json"),r=yield o.isGranted("update"),p=yield i.upsertIntegration(n.organizationId,n.type,r.id,e);return t.json(p,200)})),a.openapi(s.deleteIntegration,t=>d(void 0,void 0,void 0,function*(){const o=t.get("auth"),n=t.req.valid("param");return yield o.isGranted("update"),yield i.deleteIntegration(n.organizationId,n.type),t.body(null,204)})),a.openapi(s.sendTestEmail,t=>d(void 0,void 0,void 0,function*(){const o=t.get("auth"),n=t.req.valid("param"),e=t.req.valid("json");yield o.isGranted("update");const r=yield i.sendTestEmail(n.organizationId,e.to);return t.json(r,200)})),a.openapi(s.createStripeTestCheckout,t=>d(void 0,void 0,void 0,function*(){const o=t.get("auth"),n=t.req.valid("param"),e=t.req.valid("json"),r=yield o.isGranted("update"),p=yield i.createStripeTestCheckout(n.organizationId,r.email,e.returnUrl);return t.json(p,200)})),a};
@@ -1 +1 @@
1
- {"version":3,"file":"integration.handler.js","sourceRoot":"","sources":["../../../../../../packages/rest-api/src/features/integration/integration.handler.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,OAA2B,EAAE,EAAE;IACzE,MAAM,GAAG,GAAG,eAAe,EAAE,CAAC;IAE9B,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,eAAe,EAAE,CAAO,CAAC,EAAE,EAAE;QACzD,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC3B,MAAM,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAEpC,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAE7B,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QAE1E,OAAO,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;IACnC,CAAC,CAAA,CAAC,CAAC;IAEH,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,iBAAiB,EAAE,CAAO,CAAC,EAAE,EAAE;QAC3D,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC3B,MAAM,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACpC,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAE5C,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,iBAAiB,CACjD,MAAM,CAAC,cAAc,EACrB,MAAM,CAAC,IAAI,EACX,IAAI,CAAC,EAAE,EACP,IAAI,CACL,CAAC;QAEF,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;IAClC,CAAC,CAAA,CAAC,CAAC;IAEH,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,iBAAiB,EAAE,CAAO,CAAC,EAAE,EAAE;QAC3D,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC3B,MAAM,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAEpC,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAE/B,MAAM,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QAEpE,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC3B,CAAC,CAAA,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC,CAAC"}
1
+ {"version":3,"file":"integration.handler.js","sourceRoot":"","sources":["../../../../../../packages/rest-api/src/features/integration/integration.handler.ts"],"names":[],"mappings":"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"}
@@ -209,4 +209,179 @@ export declare const integrationRoutes: {
209
209
  } & {
210
210
  getRoutingPath(): string;
211
211
  };
212
+ sendTestEmail: {
213
+ description: string | undefined;
214
+ method: import("@hono/zod-openapi").RouteConfig["method"];
215
+ operationId: string;
216
+ path: string;
217
+ request: {
218
+ body: {
219
+ content: {
220
+ "application/json": {
221
+ schema: z.ZodObject<{
222
+ to: z.ZodString;
223
+ }, z.core.$strict>;
224
+ };
225
+ };
226
+ required: boolean;
227
+ };
228
+ } & {
229
+ headers: z.ZodObject<{
230
+ "accept-language": z.ZodOptional<z.ZodString>;
231
+ cookie: z.ZodOptional<z.ZodString>;
232
+ }, z.core.$strip>;
233
+ } & {
234
+ params: z.ZodObject<{
235
+ organizationId: z.ZodString;
236
+ }, z.core.$strip>;
237
+ } & Record<never, never>;
238
+ responses: {
239
+ 200: {
240
+ content: {
241
+ "application/json": {
242
+ schema: z.ZodObject<{
243
+ success: z.ZodBoolean;
244
+ message: z.ZodString;
245
+ }, z.core.$strip>;
246
+ };
247
+ };
248
+ description: string;
249
+ };
250
+ 400: {
251
+ content: {
252
+ "application/json": {
253
+ schema: z.ZodObject<{
254
+ status: z.ZodNumber;
255
+ message: z.ZodString;
256
+ }, z.core.$strip>;
257
+ };
258
+ };
259
+ description: string;
260
+ };
261
+ 401: {
262
+ content: {
263
+ "application/json": {
264
+ schema: z.ZodObject<{
265
+ status: z.ZodNumber;
266
+ message: z.ZodString;
267
+ }, z.core.$strip>;
268
+ };
269
+ };
270
+ description: string;
271
+ };
272
+ 404: {
273
+ content: {
274
+ "application/json": {
275
+ schema: z.ZodObject<{
276
+ status: z.ZodNumber;
277
+ message: z.ZodString;
278
+ }, z.core.$strip>;
279
+ };
280
+ };
281
+ description: string;
282
+ };
283
+ 500: {
284
+ content: {
285
+ "application/json": {
286
+ schema: z.ZodObject<{
287
+ status: z.ZodNumber;
288
+ message: z.ZodString;
289
+ }, z.core.$strip>;
290
+ };
291
+ };
292
+ description: string;
293
+ };
294
+ };
295
+ summary: string;
296
+ tags: string[];
297
+ } & {
298
+ getRoutingPath(): string;
299
+ };
300
+ createStripeTestCheckout: {
301
+ description: string | undefined;
302
+ method: import("@hono/zod-openapi").RouteConfig["method"];
303
+ operationId: string;
304
+ path: string;
305
+ request: {
306
+ body: {
307
+ content: {
308
+ "application/json": {
309
+ schema: z.ZodObject<{
310
+ returnUrl: z.ZodString;
311
+ }, z.core.$strict>;
312
+ };
313
+ };
314
+ required: boolean;
315
+ };
316
+ } & {
317
+ headers: z.ZodObject<{
318
+ "accept-language": z.ZodOptional<z.ZodString>;
319
+ cookie: z.ZodOptional<z.ZodString>;
320
+ }, z.core.$strip>;
321
+ } & {
322
+ params: z.ZodObject<{
323
+ organizationId: z.ZodString;
324
+ }, z.core.$strip>;
325
+ } & Record<never, never>;
326
+ responses: {
327
+ 200: {
328
+ content: {
329
+ "application/json": {
330
+ schema: z.ZodObject<{
331
+ redirectUrl: z.ZodString;
332
+ }, z.core.$strip>;
333
+ };
334
+ };
335
+ description: string;
336
+ };
337
+ 400: {
338
+ content: {
339
+ "application/json": {
340
+ schema: z.ZodObject<{
341
+ status: z.ZodNumber;
342
+ message: z.ZodString;
343
+ }, z.core.$strip>;
344
+ };
345
+ };
346
+ description: string;
347
+ };
348
+ 401: {
349
+ content: {
350
+ "application/json": {
351
+ schema: z.ZodObject<{
352
+ status: z.ZodNumber;
353
+ message: z.ZodString;
354
+ }, z.core.$strip>;
355
+ };
356
+ };
357
+ description: string;
358
+ };
359
+ 404: {
360
+ content: {
361
+ "application/json": {
362
+ schema: z.ZodObject<{
363
+ status: z.ZodNumber;
364
+ message: z.ZodString;
365
+ }, z.core.$strip>;
366
+ };
367
+ };
368
+ description: string;
369
+ };
370
+ 500: {
371
+ content: {
372
+ "application/json": {
373
+ schema: z.ZodObject<{
374
+ status: z.ZodNumber;
375
+ message: z.ZodString;
376
+ }, z.core.$strip>;
377
+ };
378
+ };
379
+ description: string;
380
+ };
381
+ };
382
+ summary: string;
383
+ tags: string[];
384
+ } & {
385
+ getRoutingPath(): string;
386
+ };
212
387
  };
@@ -1 +1 @@
1
- import{z as i}from"@hono/zod-openapi";import{createApiRoute as e}from"../../core/hono/hono";import{ErrorSchema as t,HeaderSchema as n,OrganizationParams as a}from"../../schemas";import{IntegrationSchema as o,IntegrationTypeSchema as s,UpsertIntegrationSchema as g}from"./integration.schema";const r=a.extend({type:s.openapi({param:{in:"path",name:"type"}})}),p=e({description:"Fetches integrations configured for an organization",headers:n,method:"GET",operationId:"getIntegrations",path:"/:organizationId/integrations",pathParams:a,responses:{200:i.array(o),400:t,401:t,404:t},summary:"Get Integrations",tags:["Integration"]}),m=e({body:g,description:"Creates or updates an integration configuration",headers:n,method:"PUT",operationId:"upsertIntegration",path:"/:organizationId/integrations/:type",pathParams:r,responses:{200:o,400:t,401:t,404:t},summary:"Upsert Integration",tags:["Integration"]}),I=e({description:"Deletes an integration configuration",headers:n,method:"DELETE",operationId:"deleteIntegration",path:"/:organizationId/integrations/:type",pathParams:r,responses:{204:null,400:t,401:t,404:t},summary:"Delete Integration",tags:["Integration"]});export const integrationRoutes={getIntegrations:p,upsertIntegration:m,deleteIntegration:I};
1
+ import{z as i}from"@hono/zod-openapi";import{createApiRoute as t}from"../../core/hono/hono";import{ErrorSchema as e,HeaderSchema as a,OrganizationParams as n}from"../../schemas";import{CreateStripeTestCheckoutResponseSchema as s,CreateStripeTestCheckoutSchema as p,IntegrationSchema as o,IntegrationTypeSchema as g,SendTestEmailResponseSchema as m,SendTestEmailSchema as d,UpsertIntegrationSchema as h}from"./integration.schema";const r=n.extend({type:g.openapi({param:{in:"path",name:"type"}})}),c=t({description:"Fetches integrations configured for an organization",headers:a,method:"GET",operationId:"getIntegrations",path:"/:organizationId/integrations",pathParams:n,responses:{200:i.array(o),400:e,401:e,404:e},summary:"Get Integrations",tags:["Integration"]}),u=t({body:h,description:"Creates or updates an integration configuration",headers:a,method:"PUT",operationId:"upsertIntegration",path:"/:organizationId/integrations/:type",pathParams:r,responses:{200:o,400:e,401:e,404:e},summary:"Upsert Integration",tags:["Integration"]}),I=t({description:"Deletes an integration configuration",headers:a,method:"DELETE",operationId:"deleteIntegration",path:"/:organizationId/integrations/:type",pathParams:r,responses:{204:null,400:e,401:e,404:e},summary:"Delete Integration",tags:["Integration"]}),S=t({body:d,description:"Sends a test email using the configured Resend integration",headers:a,method:"POST",operationId:"sendTestEmail",path:"/:organizationId/integrations/resend/test",pathParams:n,responses:{200:m,400:e,401:e,404:e,500:e},summary:"Send Test Email",tags:["Integration"]}),T=t({body:p,description:"Creates a Stripe Checkout session with mock products to test the configured Stripe integration",headers:a,method:"POST",operationId:"createStripeTestCheckout",path:"/:organizationId/integrations/stripe/test",pathParams:n,responses:{200:s,400:e,401:e,404:e,500:e},summary:"Create Stripe Test Checkout",tags:["Integration"]});export const integrationRoutes={getIntegrations:c,upsertIntegration:u,deleteIntegration:I,sendTestEmail:S,createStripeTestCheckout:T};
@@ -1 +1 @@
1
- {"version":3,"file":"integration.route.js","sourceRoot":"","sources":["../../../../../../packages/rest-api/src/features/integration/integration.route.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,mBAAmB,CAAC;AAEtC,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAC9E,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AAE9B,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,MAAM,CAAC;IAClD,IAAI,EAAE,qBAAqB,CAAC,OAAO,CAAC;QAClC,KAAK,EAAE;YACL,EAAE,EAAE,MAAM;YACV,IAAI,EAAE,MAAM;SACb;KACF,CAAC;CACH,CAAC,CAAC;AAEH,MAAM,oBAAoB,GAAG,cAAc,CAAC;IAC1C,WAAW,EAAE,qDAAqD;IAClE,OAAO,EAAE,YAAY;IACrB,MAAM,EAAE,KAAK;IACb,WAAW,EAAE,iBAAiB;IAC9B,IAAI,EAAE,+BAA+B;IACrC,UAAU,EAAE,kBAAkB;IAC9B,SAAS,EAAE;QACT,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC;QAC/B,GAAG,EAAE,WAAW;QAChB,GAAG,EAAE,WAAW;QAChB,GAAG,EAAE,WAAW;KACjB;IACD,OAAO,EAAE,kBAAkB;IAC3B,IAAI,EAAE,CAAC,aAAa,CAAC;CACtB,CAAC,CAAC;AAEH,MAAM,sBAAsB,GAAG,cAAc,CAAC;IAC5C,IAAI,EAAE,uBAAuB;IAC7B,WAAW,EAAE,iDAAiD;IAC9D,OAAO,EAAE,YAAY;IACrB,MAAM,EAAE,KAAK;IACb,WAAW,EAAE,mBAAmB;IAChC,IAAI,EAAE,qCAAqC;IAC3C,UAAU,EAAE,iBAAiB;IAC7B,SAAS,EAAE;QACT,GAAG,EAAE,iBAAiB;QACtB,GAAG,EAAE,WAAW;QAChB,GAAG,EAAE,WAAW;QAChB,GAAG,EAAE,WAAW;KACjB;IACD,OAAO,EAAE,oBAAoB;IAC7B,IAAI,EAAE,CAAC,aAAa,CAAC;CACtB,CAAC,CAAC;AAEH,MAAM,sBAAsB,GAAG,cAAc,CAAC;IAC5C,WAAW,EAAE,sCAAsC;IACnD,OAAO,EAAE,YAAY;IACrB,MAAM,EAAE,QAAQ;IAChB,WAAW,EAAE,mBAAmB;IAChC,IAAI,EAAE,qCAAqC;IAC3C,UAAU,EAAE,iBAAiB;IAC7B,SAAS,EAAE;QACT,GAAG,EAAE,IAAI;QACT,GAAG,EAAE,WAAW;QAChB,GAAG,EAAE,WAAW;QAChB,GAAG,EAAE,WAAW;KACjB;IACD,OAAO,EAAE,oBAAoB;IAC7B,IAAI,EAAE,CAAC,aAAa,CAAC;CACtB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,eAAe,EAAE,oBAAoB;IACrC,iBAAiB,EAAE,sBAAsB;IACzC,iBAAiB,EAAE,sBAAsB;CAC1C,CAAC"}
1
+ {"version":3,"file":"integration.route.js","sourceRoot":"","sources":["../../../../../../packages/rest-api/src/features/integration/integration.route.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,mBAAmB,CAAC;AAEtC,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAC9E,OAAO,EACL,sCAAsC,EACtC,8BAA8B,EAC9B,iBAAiB,EACjB,qBAAqB,EACrB,2BAA2B,EAC3B,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AAE9B,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,MAAM,CAAC;IAClD,IAAI,EAAE,qBAAqB,CAAC,OAAO,CAAC;QAClC,KAAK,EAAE;YACL,EAAE,EAAE,MAAM;YACV,IAAI,EAAE,MAAM;SACb;KACF,CAAC;CACH,CAAC,CAAC;AAEH,MAAM,oBAAoB,GAAG,cAAc,CAAC;IAC1C,WAAW,EAAE,qDAAqD;IAClE,OAAO,EAAE,YAAY;IACrB,MAAM,EAAE,KAAK;IACb,WAAW,EAAE,iBAAiB;IAC9B,IAAI,EAAE,+BAA+B;IACrC,UAAU,EAAE,kBAAkB;IAC9B,SAAS,EAAE;QACT,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC;QAC/B,GAAG,EAAE,WAAW;QAChB,GAAG,EAAE,WAAW;QAChB,GAAG,EAAE,WAAW;KACjB;IACD,OAAO,EAAE,kBAAkB;IAC3B,IAAI,EAAE,CAAC,aAAa,CAAC;CACtB,CAAC,CAAC;AAEH,MAAM,sBAAsB,GAAG,cAAc,CAAC;IAC5C,IAAI,EAAE,uBAAuB;IAC7B,WAAW,EAAE,iDAAiD;IAC9D,OAAO,EAAE,YAAY;IACrB,MAAM,EAAE,KAAK;IACb,WAAW,EAAE,mBAAmB;IAChC,IAAI,EAAE,qCAAqC;IAC3C,UAAU,EAAE,iBAAiB;IAC7B,SAAS,EAAE;QACT,GAAG,EAAE,iBAAiB;QACtB,GAAG,EAAE,WAAW;QAChB,GAAG,EAAE,WAAW;QAChB,GAAG,EAAE,WAAW;KACjB;IACD,OAAO,EAAE,oBAAoB;IAC7B,IAAI,EAAE,CAAC,aAAa,CAAC;CACtB,CAAC,CAAC;AAEH,MAAM,sBAAsB,GAAG,cAAc,CAAC;IAC5C,WAAW,EAAE,sCAAsC;IACnD,OAAO,EAAE,YAAY;IACrB,MAAM,EAAE,QAAQ;IAChB,WAAW,EAAE,mBAAmB;IAChC,IAAI,EAAE,qCAAqC;IAC3C,UAAU,EAAE,iBAAiB;IAC7B,SAAS,EAAE;QACT,GAAG,EAAE,IAAI;QACT,GAAG,EAAE,WAAW;QAChB,GAAG,EAAE,WAAW;QAChB,GAAG,EAAE,WAAW;KACjB;IACD,OAAO,EAAE,oBAAoB;IAC7B,IAAI,EAAE,CAAC,aAAa,CAAC;CACtB,CAAC,CAAC;AAEH,MAAM,kBAAkB,GAAG,cAAc,CAAC;IACxC,IAAI,EAAE,mBAAmB;IACzB,WAAW,EAAE,4DAA4D;IACzE,OAAO,EAAE,YAAY;IACrB,MAAM,EAAE,MAAM;IACd,WAAW,EAAE,eAAe;IAC5B,IAAI,EAAE,2CAA2C;IACjD,UAAU,EAAE,kBAAkB;IAC9B,SAAS,EAAE;QACT,GAAG,EAAE,2BAA2B;QAChC,GAAG,EAAE,WAAW;QAChB,GAAG,EAAE,WAAW;QAChB,GAAG,EAAE,WAAW;QAChB,GAAG,EAAE,WAAW;KACjB;IACD,OAAO,EAAE,iBAAiB;IAC1B,IAAI,EAAE,CAAC,aAAa,CAAC;CACtB,CAAC,CAAC;AAEH,MAAM,6BAA6B,GAAG,cAAc,CAAC;IACnD,IAAI,EAAE,8BAA8B;IACpC,WAAW,EACT,gGAAgG;IAClG,OAAO,EAAE,YAAY;IACrB,MAAM,EAAE,MAAM;IACd,WAAW,EAAE,0BAA0B;IACvC,IAAI,EAAE,2CAA2C;IACjD,UAAU,EAAE,kBAAkB;IAC9B,SAAS,EAAE;QACT,GAAG,EAAE,sCAAsC;QAC3C,GAAG,EAAE,WAAW;QAChB,GAAG,EAAE,WAAW;QAChB,GAAG,EAAE,WAAW;QAChB,GAAG,EAAE,WAAW;KACjB;IACD,OAAO,EAAE,6BAA6B;IACtC,IAAI,EAAE,CAAC,aAAa,CAAC;CACtB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,eAAe,EAAE,oBAAoB;IACrC,iBAAiB,EAAE,sBAAsB;IACzC,iBAAiB,EAAE,sBAAsB;IACzC,aAAa,EAAE,kBAAkB;IACjC,wBAAwB,EAAE,6BAA6B;CACxD,CAAC"}
@@ -57,3 +57,16 @@ export type UpsertStripeIntegrationConfig = z.infer<typeof UpsertStripeIntegrati
57
57
  export type ResendIntegrationConfig = z.infer<typeof ResendIntegrationConfigSchema>;
58
58
  export type ResendIntegrationStoredConfig = z.infer<typeof ResendIntegrationStoredConfigSchema>;
59
59
  export type UpsertResendIntegrationConfig = z.infer<typeof UpsertResendIntegrationConfigSchema>;
60
+ export declare const SendTestEmailSchema: z.ZodObject<{
61
+ to: z.ZodString;
62
+ }, z.core.$strict>;
63
+ export declare const SendTestEmailResponseSchema: z.ZodObject<{
64
+ success: z.ZodBoolean;
65
+ message: z.ZodString;
66
+ }, z.core.$strip>;
67
+ export declare const CreateStripeTestCheckoutSchema: z.ZodObject<{
68
+ returnUrl: z.ZodString;
69
+ }, z.core.$strict>;
70
+ export declare const CreateStripeTestCheckoutResponseSchema: z.ZodObject<{
71
+ redirectUrl: z.ZodString;
72
+ }, z.core.$strip>;
@@ -1 +1 @@
1
- import{z as e}from"@hono/zod-openapi";export const IntegrationTypeSchema=e.string().min(1).openapi({example:"stripe",description:"Integration type key"}),StripePaymentMethodSchema=e.enum(["card","blik"]).openapi({example:"card",description:"Stripe payment method"}),StripeIntegrationStoredConfigSchema=e.object({paymentMethods:e.array(StripePaymentMethodSchema).max(2).optional(),secretKey:e.string().trim().min(1).optional(),webhookSecret:e.string().trim().min(1).optional()}).strict(),ResendIntegrationStoredConfigSchema=e.object({apiKey:e.string().trim().min(1).optional(),fromEmail:e.string().trim().email().optional()}).strict(),StripeIntegrationConfigSchema=e.object({paymentMethods:e.array(StripePaymentMethodSchema).max(2).openapi({example:["card","blik"],description:"Enabled Stripe payment methods for the organization"}),hasSecretKey:e.boolean().openapi({example:!0,description:"Whether the Stripe API key has been configured"}),hasWebhookSecret:e.boolean().openapi({example:!0,description:"Whether the Stripe webhook signing secret has been configured"})}).strict().openapi("StripeIntegrationConfig"),UpsertStripeIntegrationConfigSchema=e.object({paymentMethods:e.array(StripePaymentMethodSchema).max(2).openapi({example:["card","blik"],description:"Enabled Stripe payment methods for the organization"}),secretKey:e.string().trim().min(1).optional().openapi({example:"sk_live_123456789",description:"Stripe secret API key for the organization"}),webhookSecret:e.string().trim().min(1).optional().openapi({example:"whsec_123456789",description:"Stripe webhook signing secret for the organization"})}).strict().openapi("UpsertStripeIntegrationConfig"),ResendIntegrationConfigSchema=e.object({hasApiKey:e.boolean().openapi({example:!0,description:"Whether the Resend API key has been configured"}),fromEmail:e.string().trim().email().optional().openapi({example:"orders@example.com",description:"Verified sender email used for transactional messages"})}).strict().openapi("ResendIntegrationConfig"),UpsertResendIntegrationConfigSchema=e.object({apiKey:e.string().trim().min(1).optional().openapi({example:"re_123456789",description:"Resend API key for the organization"}),fromEmail:e.string().trim().email().optional().openapi({example:"orders@example.com",description:"Verified sender email used for transactional messages"})}).strict().openapi("UpsertResendIntegrationConfig"),IntegrationConfigSchema=e.record(e.string(),e.unknown()).openapi("IntegrationConfig"),IntegrationSchema=e.object({organizationId:e.string().openapi({example:"clm1234567890abcdef",description:"Organization ID"}),type:IntegrationTypeSchema,config:IntegrationConfigSchema.openapi({description:"Stored integration configuration JSON"}),createdAt:e.date().openapi({description:"Timestamp when the integration was created"}),updatedAt:e.date().openapi({description:"Timestamp when the integration was last updated"})}).openapi("Integration"),UpsertIntegrationSchema=e.object({config:e.unknown().openapi({example:{paymentMethods:["card","blik"],secretKey:"sk_live_123456789",webhookSecret:"whsec_123456789"},description:"Integration configuration payload. Validation depends on the integration type."})}).openapi("UpsertIntegration");
1
+ import{z as e}from"@hono/zod-openapi";export const IntegrationTypeSchema=e.string().min(1).openapi({example:"stripe",description:"Integration type key"}),StripePaymentMethodSchema=e.enum(["card","blik"]).openapi({example:"card",description:"Stripe payment method"}),StripeIntegrationStoredConfigSchema=e.object({paymentMethods:e.array(StripePaymentMethodSchema).max(2).optional(),secretKey:e.string().trim().min(1).optional(),webhookSecret:e.string().trim().min(1).optional()}).strict(),ResendIntegrationStoredConfigSchema=e.object({apiKey:e.string().trim().min(1).optional(),fromEmail:e.string().trim().email().optional()}).strict(),StripeIntegrationConfigSchema=e.object({paymentMethods:e.array(StripePaymentMethodSchema).max(2).openapi({example:["card","blik"],description:"Enabled Stripe payment methods for the organization"}),hasSecretKey:e.boolean().openapi({example:!0,description:"Whether the Stripe API key has been configured"}),hasWebhookSecret:e.boolean().openapi({example:!0,description:"Whether the Stripe webhook signing secret has been configured"})}).strict().openapi("StripeIntegrationConfig"),UpsertStripeIntegrationConfigSchema=e.object({paymentMethods:e.array(StripePaymentMethodSchema).max(2).openapi({example:["card","blik"],description:"Enabled Stripe payment methods for the organization"}),secretKey:e.string().trim().min(1).optional().openapi({example:"sk_live_123456789",description:"Stripe secret API key for the organization"}),webhookSecret:e.string().trim().min(1).optional().openapi({example:"whsec_123456789",description:"Stripe webhook signing secret for the organization"})}).strict().openapi("UpsertStripeIntegrationConfig"),ResendIntegrationConfigSchema=e.object({hasApiKey:e.boolean().openapi({example:!0,description:"Whether the Resend API key has been configured"}),fromEmail:e.string().trim().email().optional().openapi({example:"orders@example.com",description:"Verified sender email used for transactional messages"})}).strict().openapi("ResendIntegrationConfig"),UpsertResendIntegrationConfigSchema=e.object({apiKey:e.string().trim().min(1).optional().openapi({example:"re_123456789",description:"Resend API key for the organization"}),fromEmail:e.string().trim().email().optional().openapi({example:"orders@example.com",description:"Verified sender email used for transactional messages"})}).strict().openapi("UpsertResendIntegrationConfig"),IntegrationConfigSchema=e.record(e.string(),e.unknown()).openapi("IntegrationConfig"),IntegrationSchema=e.object({organizationId:e.string().openapi({example:"clm1234567890abcdef",description:"Organization ID"}),type:IntegrationTypeSchema,config:IntegrationConfigSchema.openapi({description:"Stored integration configuration JSON"}),createdAt:e.date().openapi({description:"Timestamp when the integration was created"}),updatedAt:e.date().openapi({description:"Timestamp when the integration was last updated"})}).openapi("Integration"),UpsertIntegrationSchema=e.object({config:e.unknown().openapi({example:{paymentMethods:["card","blik"],secretKey:"sk_live_123456789",webhookSecret:"whsec_123456789"},description:"Integration configuration payload. Validation depends on the integration type."})}).openapi("UpsertIntegration"),SendTestEmailSchema=e.object({to:e.string().trim().email("Enter a valid recipient email.").openapi({example:"test@example.com",description:"Recipient email for the test message"})}).strict().openapi("SendTestEmail"),SendTestEmailResponseSchema=e.object({success:e.boolean().openapi({example:!0,description:"Whether the test email was sent successfully"}),message:e.string().openapi({example:"Test email sent to test@example.com",description:"Result message"})}).openapi("SendTestEmailResponse"),CreateStripeTestCheckoutSchema=e.object({returnUrl:e.string().url().openapi({example:"https://app.shophost.test/admin/settings/integrations/stripe",description:"URL to return to after the Stripe test checkout is completed or cancelled"})}).strict().openapi("CreateStripeTestCheckout"),CreateStripeTestCheckoutResponseSchema=e.object({redirectUrl:e.string().url().openapi({example:"https://checkout.stripe.com/c/pay/cs_test_123",description:"Stripe Checkout URL for the mock test session"})}).openapi("CreateStripeTestCheckoutResponse");
@@ -1 +1 @@
1
- {"version":3,"file":"integration.schema.js","sourceRoot":"","sources":["../../../../../../packages/rest-api/src/features/integration/integration.schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"integration.schema.js","sourceRoot":"","sources":["../../../../../../packages/rest-api/src/features/integration/integration.schema.ts"],"names":[],"mappings":"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"}
@@ -25,5 +25,12 @@ declare class IntegrationService {
25
25
  updatedAt: Date;
26
26
  }>;
27
27
  deleteIntegration(organizationId: string, type: string): Promise<void>;
28
+ sendTestEmail(organizationId: string, to: string): Promise<{
29
+ success: boolean;
30
+ message: string;
31
+ }>;
32
+ createStripeTestCheckout(organizationId: string, customerEmail: string, returnUrl: string): Promise<{
33
+ redirectUrl: string;
34
+ }>;
28
35
  }
29
36
  export { IntegrationService };
@@ -1 +1 @@
1
- import{__awaiter as h}from"tslib";import{HttpException as s}from"../../core/exceptions/http-exception";import{IntegrationSchema as S,ResendIntegrationConfigSchema as z,StripeIntegrationConfigSchema as _,UpsertResendIntegrationConfigSchema as E,UpsertStripeIntegrationConfigSchema as R}from"./integration.schema";import{normalizeEmail as b,normalizeSecret as m,normalizeStripePaymentMethods as I,parseResendStoredConfig as y,parseStripeStoredConfig as w}from"./integration-config";class K{constructor(e,t){this.prisma=e,this.integrationRegistry=t}sanitizeConfig(e,t){var n;switch(e){case"stripe":{const i=w(t);return _.parse({paymentMethods:(n=i?.paymentMethods)!==null&&n!==void 0?n:[],hasSecretKey:!!i?.secretKey,hasWebhookSecret:!!i?.webhookSecret})}case"resend":{const i=y(t);return z.parse({hasApiKey:!!i?.apiKey,fromEmail:i?.fromEmail})}default:return t&&typeof t=="object"&&!Array.isArray(t)?t:{}}}sanitizeIntegration(e){return S.parse(Object.assign(Object.assign({},e),{config:this.sanitizeConfig(e.type,e.config)}))}ensureOrganizationExists(e){return h(this,void 0,void 0,function*(){if(!(yield this.prisma.organization.findUnique({where:{id:e,deletedAt:null},select:{id:!0}})))throw new s(404,"Organization not found")})}validateConfig(e,t,n){var i,a,d,l,g,v,p,f;switch(e){case"stripe":{const o=R.safeParse(t);if(!o.success)throw new s(400,(a=(i=o.error.issues[0])===null||i===void 0?void 0:i.message)!==null&&a!==void 0?a:"Invalid Stripe configuration");const r=w(n),u=(d=m(o.data.secretKey))!==null&&d!==void 0?d:r?.secretKey,c=(l=m(o.data.webhookSecret))!==null&&l!==void 0?l:r?.webhookSecret;if(!u)throw new s(400,"Stripe API key is required");if(!c)throw new s(400,"Stripe webhook secret is required");return{paymentMethods:I(o.data.paymentMethods),secretKey:u,webhookSecret:c}}case"resend":{const o=E.safeParse(t);if(!o.success)throw new s(400,(v=(g=o.error.issues[0])===null||g===void 0?void 0:g.message)!==null&&v!==void 0?v:"Invalid Resend configuration");const r=y(n),u=(p=m(o.data.apiKey))!==null&&p!==void 0?p:r?.apiKey,c=(f=b(o.data.fromEmail))!==null&&f!==void 0?f:r?.fromEmail;if(!u)throw new s(400,"Resend API key is required");if(!c)throw new s(400,"Resend sender email is required");return{apiKey:u,fromEmail:c}}default:throw new s(400,`Unsupported integration type: ${e}`)}}getIntegrations(e){return h(this,void 0,void 0,function*(){return yield this.ensureOrganizationExists(e),(yield this.integrationRegistry.list(e)).map(n=>this.sanitizeIntegration(n))})}upsertIntegration(e,t,n,i){return h(this,void 0,void 0,function*(){yield this.ensureOrganizationExists(e);const a=yield this.integrationRegistry.get(e,t),d=this.validateConfig(t,i.config,a?.config),l=yield this.prisma.integration.upsert({where:{organizationId_type:{organizationId:e,type:t}},update:{config:d,updatedBy:n},create:{organization:{connect:{id:e}},type:t,config:d,createdBy:n,updatedBy:n}});return yield this.integrationRegistry.upsert(l),this.sanitizeIntegration(l)})}deleteIntegration(e,t){return h(this,void 0,void 0,function*(){if(yield this.ensureOrganizationExists(e),(yield this.prisma.integration.deleteMany({where:{organizationId:e,type:t}})).count===0)throw new s(404,"Integration not found");yield this.integrationRegistry.delete(e,t)})}}export{K as IntegrationService};
1
+ import{__awaiter as g}from"tslib";import{HttpException as o}from"../../core/exceptions/http-exception";import{EmailService as S}from"../../core/notifications/email.service";import{IntegrationSchema as b,ResendIntegrationConfigSchema as E,StripeIntegrationConfigSchema as k,UpsertResendIntegrationConfigSchema as z,UpsertStripeIntegrationConfigSchema as x}from"./integration.schema";import{getStoredStripeConfig as C,getStoredResendConfig as R,normalizeEmail as K,normalizeSecret as y,normalizeStripePaymentMethods as _,parseResendStoredConfig as v,parseStripeStoredConfig as w}from"./integration-config";import{StripeService as M}from"../payment/stripe.service";class U{constructor(e,i){this.prisma=e,this.integrationRegistry=i}sanitizeConfig(e,i){var n;switch(e){case"stripe":{const t=w(i);return k.parse({paymentMethods:(n=t?.paymentMethods)!==null&&n!==void 0?n:[],hasSecretKey:!!t?.secretKey,hasWebhookSecret:!!t?.webhookSecret})}case"resend":{const t=v(i);return E.parse({hasApiKey:!!t?.apiKey,fromEmail:t?.fromEmail})}default:return i&&typeof i=="object"&&!Array.isArray(i)?i:{}}}sanitizeIntegration(e){return b.parse(Object.assign(Object.assign({},e),{config:this.sanitizeConfig(e.type,e.config)}))}ensureOrganizationExists(e){return g(this,void 0,void 0,function*(){if(!(yield this.prisma.organization.findUnique({where:{id:e,deletedAt:null},select:{id:!0}})))throw new o(404,"Organization not found")})}validateConfig(e,i,n){var t,r,c,d,u,l,h,m;switch(e){case"stripe":{const s=x.safeParse(i);if(!s.success)throw new o(400,(r=(t=s.error.issues[0])===null||t===void 0?void 0:t.message)!==null&&r!==void 0?r:"Invalid Stripe configuration");const a=w(n),f=(c=y(s.data.secretKey))!==null&&c!==void 0?c:a?.secretKey,p=(d=y(s.data.webhookSecret))!==null&&d!==void 0?d:a?.webhookSecret;if(!f)throw new o(400,"Stripe API key is required");if(!p)throw new o(400,"Stripe webhook secret is required");return{paymentMethods:_(s.data.paymentMethods),secretKey:f,webhookSecret:p}}case"resend":{const s=z.safeParse(i);if(!s.success)throw new o(400,(l=(u=s.error.issues[0])===null||u===void 0?void 0:u.message)!==null&&l!==void 0?l:"Invalid Resend configuration");const a=v(n),f=(h=y(s.data.apiKey))!==null&&h!==void 0?h:a?.apiKey,p=(m=K(s.data.fromEmail))!==null&&m!==void 0?m:a?.fromEmail;if(!f)throw new o(400,"Resend API key is required");if(!p)throw new o(400,"Resend sender email is required");return{apiKey:f,fromEmail:p}}default:throw new o(400,`Unsupported integration type: ${e}`)}}getIntegrations(e){return g(this,void 0,void 0,function*(){return yield this.ensureOrganizationExists(e),(yield this.integrationRegistry.list(e)).map(n=>this.sanitizeIntegration(n))})}upsertIntegration(e,i,n,t){return g(this,void 0,void 0,function*(){yield this.ensureOrganizationExists(e);const r=yield this.integrationRegistry.get(e,i),c=this.validateConfig(i,t.config,r?.config),d=yield this.prisma.integration.upsert({where:{organizationId_type:{organizationId:e,type:i}},update:{config:c,updatedBy:n},create:{organization:{connect:{id:e}},type:i,config:c,createdBy:n,updatedBy:n}});return yield this.integrationRegistry.upsert(d),this.sanitizeIntegration(d)})}deleteIntegration(e,i){return g(this,void 0,void 0,function*(){if(yield this.ensureOrganizationExists(e),(yield this.prisma.integration.deleteMany({where:{organizationId:e,type:i}})).count===0)throw new o(404,"Integration not found");yield this.integrationRegistry.delete(e,i)})}sendTestEmail(e,i){return g(this,void 0,void 0,function*(){const n=yield this.prisma.organization.findUnique({where:{id:e,deletedAt:null},select:{id:!0,name:!0,email:!0}});if(!n)throw new o(404,"Organization not found");const t=yield this.integrationRegistry.get(e,"resend"),r=R(t);if(!r?.apiKey)throw new o(400,"Resend API key is not configured. Save the integration first.");if(!r.fromEmail)throw new o(400,"Sender email is not configured. Save the integration first.");const c=new S({apiKey:r.apiKey,fromEmail:r.fromEmail});try{return yield c.sendEmail({from:`${n.name} <${r.fromEmail}>`,to:[i],subject:`Test Email from ${n.name}`,html:[`<div style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; max-width: 560px; margin: 0 auto; padding: 40px 20px;">`,'<h1 style="font-size: 20px; font-weight: 600; color: #111827; margin: 0 0 16px;">Email integration is working</h1>','<p style="font-size: 14px; line-height: 1.6; color: #6b7280; margin: 0 0 24px;">',`This is a test email sent from <strong style="color: #111827;">${n.name}</strong> to verify that your Resend integration is configured correctly.`,"</p>",'<hr style="border: none; border-top: 1px solid #e5e7eb; margin: 24px 0;" />','<p style="font-size: 12px; color: #9ca3af; margin: 0;">',`Sent via Shophost &middot; Sender: ${r.fromEmail}`,"</p>","</div>"].join("")}),{success:!0,message:`Test email sent to ${i}`}}catch(d){const u=d instanceof Error?d.message:"Unknown error";throw new o(500,`Failed to send test email: ${u}`)}})}createStripeTestCheckout(e,i,n){return g(this,void 0,void 0,function*(){var t,r,c;const d=yield this.prisma.organization.findUnique({where:{id:e,deletedAt:null},select:{id:!0,name:!0,configuration:{select:{defaultCurrency:!0}}}});if(!d)throw new o(404,"Organization not found");const u=yield this.integrationRegistry.get(e,"stripe"),l=C(u);if(!l?.secretKey)throw new o(400,"Stripe API key is not configured. Save the integration first.");if(!l.webhookSecret)throw new o(400,"Stripe webhook secret is not configured. Save the integration first.");const h=!((t=l.paymentMethods)===null||t===void 0)&&t.includes("card")?"card":(r=l.paymentMethods)===null||r===void 0?void 0:r[0];if(!h)throw new o(400,"Enable at least one Stripe payment method before testing.");const m=new M(this.prisma,{secretKey:l.secretKey,webhookSecret:l.webhookSecret,paymentMethods:(c=l.paymentMethods)!==null&&c!==void 0?c:[]});try{const s=yield m.createTestCheckoutSession({cancelUrl:n,currency:h==="blik"?"pln":d.configuration.defaultCurrency.toLowerCase(),customerEmail:i,organizationName:d.name,paymentMethod:h,successUrl:n});if(!s.url)throw new o(500,"Stripe did not return a checkout URL for the test session.");return{redirectUrl:s.url}}catch(s){if(s instanceof o)throw s;const a=s instanceof Error?s.message:"Unknown error";throw new o(500,`Failed to create Stripe test checkout: ${a}`)}})}}export{U as IntegrationService};
@@ -1 +1 @@
1
- {"version":3,"file":"integration.service.js","sourceRoot":"","sources":["../../../../../../packages/rest-api/src/features/integration/integration.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"integration.service.js","sourceRoot":"","sources":["../../../../../../packages/rest-api/src/features/integration/integration.service.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,7 @@ declare class PaymentService {
24
24
  private getStripeNotConfiguredMessage;
25
25
  private resolveStripeRuntime;
26
26
  private requireStripeRuntime;
27
+ private getOrderEmailService;
27
28
  getPaymentMethods(organizationId?: string): Promise<{
28
29
  id: string;
29
30
  provider: "stripe" | "revolut" | "payu" | "not_applicable";
@@ -1 +1 @@
1
- import{__awaiter as u}from"tslib";import{HttpException as p}from"../../core/exceptions/http-exception";import{getStoredResendConfig as a,getStoredStripeConfig as l}from"../integration/integration-config";import{StripeService as v}from"./stripe.service";class h{constructor(t,r,e,i){this.prisma=t,this.options=r,this.integrationRegistry=e,this.inventoryService=i,this.stripeRuntimes=new Map}getStripeNotConfiguredMessage(t){return t?"Stripe integration is not configured for this organization":"Stripe integration is not configured"}resolveStripeRuntime(t){return u(this,void 0,void 0,function*(){var r;if(!t)return;const e=l(yield this.integrationRegistry.get(t,"stripe")),i=e?.secretKey;if(!i){this.stripeRuntimes.delete(t);return}const n=a(yield this.integrationRegistry.get(t,"resend")),s={secretKey:i,paymentMethods:(r=e?.paymentMethods)!==null&&r!==void 0?r:[],resendApiKey:n?.apiKey,resendFromEmail:n?.fromEmail,webhookSecret:e?.webhookSecret},c=JSON.stringify({resend:n??null,stripe:e??null}),o=this.stripeRuntimes.get(t);if(o?.signature===c)return o;const d={options:s,service:new v(this.prisma,s),signature:c};return this.stripeRuntimes.set(t,d),d})}requireStripeRuntime(t){return u(this,void 0,void 0,function*(){const r=yield this.resolveStripeRuntime(t);if(!r)throw new p(400,this.getStripeNotConfiguredMessage(t));return r})}getPaymentMethods(t){return u(this,void 0,void 0,function*(){var r;const e=[],i=(r=yield this.resolveStripeRuntime(t))===null||r===void 0?void 0:r.options;return i?.paymentMethods.includes("card")&&e.push({id:"stripe:card",provider:"stripe",description:"Visa, Mastercard, American Express etc..",method:"card"}),i?.paymentMethods.includes("blik")&&e.push({id:"stripe:blik",provider:"stripe",description:"Popular payment method in Poland",method:"blik"}),this.options.revolut&&this.options.revolut.paymentMethods.includes("card")&&e.push({id:"revolut:card",provider:"revolut",description:"Visa, Mastercard, American Express etc..",method:"card"}),this.options.revolut&&this.options.revolut.paymentMethods.includes("blik")&&e.push({id:"revolut:blik",provider:"revolut",description:"Popular payment method in Poland",method:"blik"}),e})}handleCheckoutSessionByProvider(t,r,e,i){return u(this,void 0,void 0,function*(){if(e.payment.provider==="stripe")return(yield this.requireStripeRuntime(t)).service.createCheckoutSession(r,e,i);throw new p(400,"Payment provider not supported")})}createCheckoutSession(t,r,e,i){return u(this,void 0,void 0,function*(){const n=yield this.handleCheckoutSessionByProvider(t,r,e,i);return yield this.prisma.paymentSession.create({data:{payment:{connect:{id:e.payment.id}},referenceId:n.id,amount:e.payment.total,currency:e.payment.currency,rawData:JSON.stringify(n)}}),{sessionId:n.id,redirectUrl:n.url}})}processWebhookEvent(t,r,e,i){return u(this,void 0,void 0,function*(){if(!r)throw new p(401,"Signature is required");if(t==="stripe"){const n=yield this.requireStripeRuntime(i),s=n.service.constructWebhookEvent(r,e);return s.type==="checkout.session.completed"?this.handleStripeCheckoutCompleted(s.data.object,n.service,i):void 0}else throw new p(400,"Payment provider not supported")})}handleStripeCheckoutCompleted(t,r,e){return u(this,void 0,void 0,function*(){var i,n,s,c;const o=yield this.prisma.paymentSession.findFirst({where:Object.assign({referenceId:t.id},e?{payment:{order:{organizationId:e}}}:{}),include:{payment:{include:{order:!0}}}});if(!o)throw new p(404,"Payment session not found");const d=(i=o.payment)===null||i===void 0?void 0:i.order;if(!d)throw new p(404,"Order not found");o.capturedAt&&(d.inventoryDeductedAt||d.inventoryConflictAt)||((!o.capturedAt||o.payment.status!=="succeeded")&&(yield this.prisma.paymentSession.update({where:{id:o.id},data:{capturedAt:(n=o.capturedAt)!==null&&n!==void 0?n:new Date,payment:{update:{status:"succeeded"}}}})),(yield this.inventoryService.processPaidOrderInventory(d.id)).status!=="deducted")||(yield r.sendOrderNotifications(d.id,(c=(s=t.metadata)===null||s===void 0?void 0:s.userId)!==null&&c!==void 0?c:d.userId))})}}export{h as PaymentService};
1
+ import{__awaiter as u}from"tslib";import{HttpException as p}from"../../core/exceptions/http-exception";import{EmailService as v}from"../../core/notifications/email.service";import{getStoredResendConfig as l,getStoredStripeConfig as h}from"../integration/integration-config";import{StripeService as m}from"./stripe.service";class y{constructor(t,i,e,r){this.prisma=t,this.options=i,this.integrationRegistry=e,this.inventoryService=r,this.stripeRuntimes=new Map}getStripeNotConfiguredMessage(t){return t?"Stripe integration is not configured for this organization":"Stripe integration is not configured"}resolveStripeRuntime(t){return u(this,void 0,void 0,function*(){var i;if(!t)return;const e=h(yield this.integrationRegistry.get(t,"stripe")),r=e?.secretKey;if(!r){this.stripeRuntimes.delete(t);return}const n=l(yield this.integrationRegistry.get(t,"resend")),s={secretKey:r,paymentMethods:(i=e?.paymentMethods)!==null&&i!==void 0?i:[],resendApiKey:n?.apiKey,resendFromEmail:n?.fromEmail,webhookSecret:e?.webhookSecret},a=JSON.stringify({resend:n??null,stripe:e??null}),d=this.stripeRuntimes.get(t);if(d?.signature===a)return d;const o={options:s,service:new m(this.prisma,s),signature:a};return this.stripeRuntimes.set(t,o),o})}requireStripeRuntime(t){return u(this,void 0,void 0,function*(){const i=yield this.resolveStripeRuntime(t);if(!i)throw new p(400,this.getStripeNotConfiguredMessage(t));return i})}getOrderEmailService(t){return u(this,void 0,void 0,function*(){const i=yield this.prisma.integration.findUnique({where:{organizationId_type:{organizationId:t,type:"resend"}},select:{config:!0}}),e=l(i);if(e?.apiKey)return new v({apiKey:e.apiKey,fromEmail:e.fromEmail})})}getPaymentMethods(t){return u(this,void 0,void 0,function*(){var i;const e=[],r=(i=yield this.resolveStripeRuntime(t))===null||i===void 0?void 0:i.options;return r?.paymentMethods.includes("card")&&e.push({id:"stripe:card",provider:"stripe",description:"Visa, Mastercard, American Express etc..",method:"card"}),r?.paymentMethods.includes("blik")&&e.push({id:"stripe:blik",provider:"stripe",description:"Popular payment method in Poland",method:"blik"}),this.options.revolut&&this.options.revolut.paymentMethods.includes("card")&&e.push({id:"revolut:card",provider:"revolut",description:"Visa, Mastercard, American Express etc..",method:"card"}),this.options.revolut&&this.options.revolut.paymentMethods.includes("blik")&&e.push({id:"revolut:blik",provider:"revolut",description:"Popular payment method in Poland",method:"blik"}),e})}handleCheckoutSessionByProvider(t,i,e,r){return u(this,void 0,void 0,function*(){if(e.payment.provider==="stripe")return(yield this.requireStripeRuntime(t)).service.createCheckoutSession(i,e,r);throw new p(400,"Payment provider not supported")})}createCheckoutSession(t,i,e,r){return u(this,void 0,void 0,function*(){const n=yield this.handleCheckoutSessionByProvider(t,i,e,r);return yield this.prisma.paymentSession.create({data:{payment:{connect:{id:e.payment.id}},referenceId:n.id,amount:e.payment.total,currency:e.payment.currency,rawData:JSON.stringify(n)}}),{sessionId:n.id,redirectUrl:n.url}})}processWebhookEvent(t,i,e,r){return u(this,void 0,void 0,function*(){if(!i)throw new p(401,"Signature is required");if(t==="stripe"){const n=yield this.requireStripeRuntime(r),s=n.service.constructWebhookEvent(i,e);return s.type==="checkout.session.completed"?this.handleStripeCheckoutCompleted(s.data.object,n.service,r):void 0}else throw new p(400,"Payment provider not supported")})}handleStripeCheckoutCompleted(t,i,e){return u(this,void 0,void 0,function*(){var r,n,s,a,d;if(((r=t.metadata)===null||r===void 0?void 0:r.testIntegration)==="true")return;const o=yield this.prisma.paymentSession.findFirst({where:Object.assign({referenceId:t.id},e?{payment:{order:{organizationId:e}}}:{}),include:{payment:{include:{order:!0}}}});if(!o)throw new p(404,"Payment session not found");const c=(n=o.payment)===null||n===void 0?void 0:n.order;if(!c)throw new p(404,"Order not found");o.capturedAt&&(c.inventoryDeductedAt||c.inventoryConflictAt)||((!o.capturedAt||o.payment.status!=="succeeded")&&(yield this.prisma.paymentSession.update({where:{id:o.id},data:{capturedAt:(s=o.capturedAt)!==null&&s!==void 0?s:new Date,payment:{update:{status:"succeeded"}}}})),(yield this.inventoryService.processPaidOrderInventory(c.id)).status!=="deducted")||(yield i.sendOrderNotifications(c.id,(d=(a=t.metadata)===null||a===void 0?void 0:a.userId)!==null&&d!==void 0?d:c.userId,yield this.getOrderEmailService(c.organizationId)))})}}export{y as PaymentService};
@@ -1 +1 @@
1
- {"version":3,"file":"payment.service.js","sourceRoot":"","sources":["../../../../../../packages/rest-api/src/features/payment/payment.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"payment.service.js","sourceRoot":"","sources":["../../../../../../packages/rest-api/src/features/payment/payment.service.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import Stripe from "stripe";
2
2
  import { PrismaClientType } from "../../core/lib/prisma";
3
+ import { EmailService } from "../../core/notifications/email.service";
3
4
  import { Locale, User } from "../../schemas";
4
5
  import { Order } from "../order/order.schema";
5
6
  export interface StripeServiceOptions {
@@ -14,14 +15,24 @@ interface CreateCheckoutSessionOptions {
14
15
  cancelUrl: string;
15
16
  locale: Locale;
16
17
  }
18
+ interface CreateTestCheckoutSessionOptions {
19
+ cancelUrl: string;
20
+ currency: string;
21
+ customerEmail: string;
22
+ organizationName: string;
23
+ paymentMethod: "card" | "blik";
24
+ successUrl: string;
25
+ }
17
26
  declare class StripeService {
18
27
  private readonly prisma;
19
28
  readonly options?: StripeServiceOptions | undefined;
20
29
  private readonly stripe?;
21
30
  private emailService?;
22
31
  constructor(prisma: PrismaClientType, options?: StripeServiceOptions | undefined);
23
- sendOrderNotifications(orderId: string, userId?: string | null): Promise<void>;
32
+ private safelySendEmail;
33
+ sendOrderNotifications(orderId: string, userId?: string | null, emailServiceOverride?: EmailService): Promise<void>;
24
34
  constructWebhookEvent(signature: string, body: string): Stripe.Event;
25
35
  createCheckoutSession(user: User, order: Order, { locale, successUrl, cancelUrl }: CreateCheckoutSessionOptions): Promise<Stripe.Response<Stripe.Checkout.Session>>;
36
+ createTestCheckoutSession({ cancelUrl, currency, customerEmail, organizationName, paymentMethod, successUrl, }: CreateTestCheckoutSessionOptions): Promise<Stripe.Response<Stripe.Checkout.Session>>;
26
37
  }
27
38
  export { StripeService };
@@ -1 +1 @@
1
- import{__awaiter as c}from"tslib";import k from"stripe";import{HttpException as a}from"../../core/exceptions/http-exception";import{EmailService as E}from"../../core/notifications/email.service";import{OrderSchema as h,OrganizationSchema as v,UserSchema as p}from"../../schemas";class z{constructor(r,e){this.prisma=r,this.options=e,e?.secretKey&&(this.stripe=new k(e.secretKey)),e?.resendApiKey&&(this.emailService=new E({apiKey:e.resendApiKey,fromEmail:e.resendFromEmail}))}sendOrderNotifications(r,e){return c(this,void 0,void 0,function*(){if(!this.emailService)return;const i=yield this.prisma.order.findFirst({where:{id:r},include:{items:{include:{translations:!0,image:!0}},payment:!0,organization:{include:{address:!0,configuration:!0,logoFile:!0,members:{include:{user:!0}}}},shippingAddress:!0,shippingMethod:{include:{shippingZones:!0}}}}),s=e??i?.userId,t=s?yield this.prisma.user.findFirst({where:{id:s}}):null;if(!(!i||!t)){yield this.emailService.sendOrderConfirmationEmail(p.parse(t),v.parse(i.organization),h.parse(i));for(const d of i.organization.members)yield this.emailService.sendOrderNotificationEmail(p.parse(t),p.parse(d.user),v.parse(i.organization),h.parse(i))}})}constructWebhookEvent(r,e){var i;if(!this.stripe)throw new a(400,"Stripe is not configured");if(!(!((i=this.options)===null||i===void 0)&&i.webhookSecret))throw new a(400,"Stripe webhook secret is not configured");return this.stripe.webhooks.constructEvent(e,r,this.options.webhookSecret)}createCheckoutSession(r,e,i){return c(this,arguments,void 0,function*(s,t,{locale:d,successUrl:f,cancelUrl:y}){var u,l;if(!this.stripe)throw new a(400,"Stripe is not configured");if(t.payment.method!=="card"&&t.payment.method!=="blik")throw new a(400,"Payment method not supported");if(!(!((u=this.options)===null||u===void 0)&&u.paymentMethods.includes(t.payment.method)))throw new a(400,`Stripe payment method ${t.payment.method} is not enabled`);const _={payment_method_types:[t.payment.method],customer_email:s.email,line_items:t.items.map(({translations:w,unitPrice:S,quantity:g,image:n})=>{var m;const o=w.find(b=>b.locale===d);return{quantity:g,price_data:{currency:"pln",product_data:{name:(m=o?.title)!==null&&m!==void 0?m:"N/A",description:o?.subtitle||void 0,images:n?.url?[n?.url]:void 0},unit_amount:S*100}}}),shipping_options:!((l=t.shippingMethod)===null||l===void 0)&&l.shippingZones[0].price?[{shipping_rate_data:{type:"fixed_amount",fixed_amount:{amount:t.payment.shipping*100,currency:t.currency.toLowerCase()},display_name:"Delivery fee"}}]:void 0,mode:"payment",success_url:f,cancel_url:y,metadata:{userId:s.id,orderId:t.id}};return this.stripe.checkout.sessions.create(_)})}}export{z as StripeService};
1
+ import{__awaiter as c}from"tslib";import k from"stripe";import{HttpException as d}from"../../core/exceptions/http-exception";import{logger as E}from"../../core/logging/pino";import{EmailService as I}from"../../core/notifications/email.service";import{OrderSchema as v,OrganizationSchema as y,UserSchema as f}from"../../schemas";class z{constructor(r,i){this.prisma=r,this.options=i,i?.secretKey&&(this.stripe=new k(i.secretKey)),i?.resendApiKey&&(this.emailService=new I({apiKey:i.resendApiKey,fromEmail:i.resendFromEmail}))}safelySendEmail(r,i){return c(this,void 0,void 0,function*(){try{yield i()}catch(t){E.error(Object.assign({err:t},r),"Email delivery failed")}})}sendOrderNotifications(r,i,t){return c(this,void 0,void 0,function*(){const o=t??this.emailService;if(!o)return;const e=yield this.prisma.order.findFirst({where:{id:r},include:{items:{include:{translations:!0,image:!0}},payment:!0,organization:{include:{address:!0,configuration:!0,logoFile:!0,members:{include:{user:!0}}}},shippingAddress:!0,shippingMethod:{include:{shippingZones:!0}}}}),s=i??e?.userId,n=s?yield this.prisma.user.findFirst({where:{id:s}}):null;if(!(!e||!n)){yield this.safelySendEmail({emailType:"order-confirmation",orderId:e.id,organizationId:e.organizationId,userId:n.id},()=>o.sendOrderConfirmationEmail(f.parse(n),y.parse(e.organization),v.parse(e)));for(const a of e.organization.members)yield this.safelySendEmail({emailType:"order-notification",memberId:a.user.id,orderId:e.id,organizationId:e.organizationId,userId:n.id},()=>o.sendOrderNotificationEmail(f.parse(n),f.parse(a.user),y.parse(e.organization),v.parse(e)))}})}constructWebhookEvent(r,i){var t;if(!this.stripe)throw new d(400,"Stripe is not configured");if(!(!((t=this.options)===null||t===void 0)&&t.webhookSecret))throw new d(400,"Stripe webhook secret is not configured");return this.stripe.webhooks.constructEvent(i,r,this.options.webhookSecret)}createCheckoutSession(r,i,t){return c(this,arguments,void 0,function*(o,e,{locale:s,successUrl:n,cancelUrl:a}){var l,p;if(!this.stripe)throw new d(400,"Stripe is not configured");if(e.payment.method!=="card"&&e.payment.method!=="blik")throw new d(400,"Payment method not supported");if(!(!((l=this.options)===null||l===void 0)&&l.paymentMethods.includes(e.payment.method)))throw new d(400,`Stripe payment method ${e.payment.method} is not enabled`);const _={payment_method_types:[e.payment.method],customer_email:o.email,line_items:e.items.map(({translations:g,unitPrice:w,quantity:S,image:u})=>{var h;const m=g.find(b=>b.locale===s);return{quantity:S,price_data:{currency:"pln",product_data:{name:(h=m?.title)!==null&&h!==void 0?h:"N/A",description:m?.subtitle||void 0,images:u?.url?[u?.url]:void 0},unit_amount:w*100}}}),shipping_options:!((p=e.shippingMethod)===null||p===void 0)&&p.shippingZones[0].price?[{shipping_rate_data:{type:"fixed_amount",fixed_amount:{amount:e.payment.shipping*100,currency:e.currency.toLowerCase()},display_name:"Delivery fee"}}]:void 0,mode:"payment",success_url:n,cancel_url:a,metadata:{userId:o.id,orderId:e.id}};return this.stripe.checkout.sessions.create(_)})}createTestCheckoutSession(r){return c(this,arguments,void 0,function*({cancelUrl:i,currency:t,customerEmail:o,organizationName:e,paymentMethod:s,successUrl:n}){var a;if(!this.stripe)throw new d(400,"Stripe is not configured");if(!(!((a=this.options)===null||a===void 0)&&a.paymentMethods.includes(s)))throw new d(400,`Stripe payment method ${s} is not enabled`);return this.stripe.checkout.sessions.create({payment_method_types:[s],customer_email:o,line_items:[{quantity:1,price_data:{currency:t,product_data:{name:`${e} Test Product`,description:"Mock item created by Shophost to verify the Stripe checkout flow."},unit_amount:1999}},{quantity:1,price_data:{currency:t,product_data:{name:"Shophost Test Add-on",description:"Additional mock line item used for Stripe integration testing."},unit_amount:499}}],mode:"payment",success_url:n,cancel_url:i,metadata:{testIntegration:"true"}})})}}export{z as StripeService};
@@ -1 +1 @@
1
- {"version":3,"file":"stripe.service.js","sourceRoot":"","sources":["../../../../../../packages/rest-api/src/features/payment/stripe.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stripe.service.js","sourceRoot":"","sources":["../../../../../../packages/rest-api/src/features/payment/stripe.service.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@ declare class ReservationService {
7
7
  private readonly integrationRegistry;
8
8
  private readonly emailServices;
9
9
  constructor(prisma: PrismaClientType, integrationRegistry: IntegrationRegistry);
10
+ private safelySendEmail;
10
11
  private getEmailService;
11
12
  /**
12
13
  * Create a new reservation
@@ -1 +1 @@
1
- import{__awaiter as o}from"tslib";import{z as l}from"@hono/zod-openapi";import{customAlphabet as f}from"nanoid";import{HttpException as d}from"../../core/exceptions/http-exception";import{EmailService as h}from"../../core/notifications/email.service";import{PaginationMetaSchema as v,ReservationSchema as c}from"../../schemas";import{getStoredResendConfig as g}from"../integration/integration-config";const p=f("1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ",6);class w{constructor(i,t){this.prisma=i,this.integrationRegistry=t,this.emailServices=new Map}getEmailService(i){return o(this,void 0,void 0,function*(){var t;const e=g(yield this.integrationRegistry.get(i,"resend")),s=JSON.stringify(e??null),r=this.emailServices.get(i);if(r?.signature===s)return(t=r.service)!==null&&t!==void 0?t:void 0;const n=e?.apiKey?new h({apiKey:e.apiKey,fromEmail:e.fromEmail}):null;return this.emailServices.set(i,{service:n,signature:s}),n??void 0})}createReservation(i,t,e){return o(this,void 0,void 0,function*(){var s;const r=yield this.prisma.organization.findFirst({where:{id:i},include:{configuration:!0}});if(!r)throw new d(404,"Organization not found");if(!(!((s=r.configuration)===null||s===void 0)&&s.isAcceptingReservations))throw new d(400,"This organization is not accepting reservations at the moment");const n=yield this.prisma.reservation.create({data:Object.assign({referenceId:p(),firstname:e.firstname,lastname:e.lastname,guests:e.guests,phone:e.phone,date:e.date,organization:{connect:{id:i}}},t?{user:{connect:{id:t.id}}}:{}),include:{organization:{include:{address:!0,configuration:!0,logoFile:!0,members:{include:{user:!0}}}},user:!0}}),a=yield this.getEmailService(i);for(const u of n.organization.members)yield a?.sendReservationNotificationEmail(u.user,n);return c.parse(n)})}getReservation(i,t,e){return o(this,void 0,void 0,function*(){const s=yield this.prisma.reservation.findUnique({where:{id:e,organizationId:t,user:{id:i.id}}});if(!s)throw new d(404,"Reservation not found");return c.parse(s)})}getReservations(i,t){return o(this,void 0,void 0,function*(){const{page:e=1,limit:s=10,search:r,from:n,to:a}=t,[u,m]=yield this.prisma.reservation.paginate({orderBy:{createdAt:"desc"},where:Object.assign(Object.assign({organizationId:i},n||a?{date:Object.assign(Object.assign({},n?{gte:n}:{}),a?{lte:a}:{})}:{}),r&&{OR:[{firstname:{contains:r,mode:"insensitive"}},{lastname:{contains:r,mode:"insensitive"}},{referenceId:{contains:r,mode:"insensitive"}}]}),include:{user:!0}}).withPages({page:e,limit:s});return l.object({meta:v,list:l.array(c)}).parse({meta:m,list:u})})}getMyReservations(i,t,e){return o(this,void 0,void 0,function*(){const{page:s=1,limit:r=10,search:n}=e,[a,u]=yield this.prisma.reservation.paginate({orderBy:{createdAt:"desc"},where:Object.assign({organizationId:t,userId:i},n&&{referenceId:{contains:n,mode:"insensitive"}})}).withPages({page:s,limit:r});return l.object({meta:v,list:l.array(c)}).parse({meta:u,list:a})})}getUserReservations(i,t){return o(this,void 0,void 0,function*(){const e=yield this.prisma.reservation.findMany({where:{organizationId:t,userId:i}});return l.array(c).parse(e)})}updateReservation(i,t,e){return o(this,void 0,void 0,function*(){const s=yield this.prisma.reservation.findUnique({where:{id:t,organizationId:i}});if(!s)throw new d(404,"Reservation not found");if(s.cancelledAt)throw new d(400,"Cancelled reservations cannot be edited");const r=yield this.prisma.reservation.update({where:{id:t},data:{firstname:e.firstname,lastname:e.lastname,guests:e.guests,date:e.date},include:{organization:{include:{address:!0,configuration:!0,logoFile:!0,members:{include:{user:!0}}}},user:!0}}),n=yield this.getEmailService(i);return yield n?.sendReservationUpdatedEmail(r),c.parse(r)})}updateStatus(i,t,e){return o(this,void 0,void 0,function*(){if(!(yield this.prisma.reservation.findUnique({where:{id:t,organizationId:i}})))throw new d(404,"Reservation not found");let r={};switch(e){case"accept":r={acceptedAt:new Date};break;case"cancel":r={cancelledAt:new Date};break}const n=yield this.prisma.reservation.update({where:{id:t},data:r,include:{organization:{include:{address:!0,configuration:!0,logoFile:!0,members:{include:{user:!0}}}},user:!0}}),a=yield this.getEmailService(i);return e==="cancel"&&(yield a?.sendReservationCancellationEmail(n)),e==="accept"&&(yield a?.sendReservationConfirmationEmail(n)),c.parse(n)})}deleteReservation(i,t){return o(this,void 0,void 0,function*(){if(!(yield this.prisma.reservation.findUnique({where:{id:t,organizationId:i}})))throw new d(404,"Reservation not found");yield this.prisma.reservation.delete({where:{id:t}})})}}export{w as ReservationService};
1
+ import{__awaiter as d}from"tslib";import{z as v}from"@hono/zod-openapi";import{customAlphabet as f}from"nanoid";import{HttpException as l}from"../../core/exceptions/http-exception";import{logger as h}from"../../core/logging/pino";import{EmailService as p}from"../../core/notifications/email.service";import{PaginationMetaSchema as m,ReservationSchema as c}from"../../schemas";import{getStoredResendConfig as g}from"../integration/integration-config";const y=f("1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ",6);class w{constructor(i,t){this.prisma=i,this.integrationRegistry=t,this.emailServices=new Map}safelySendEmail(i,t){return d(this,void 0,void 0,function*(){try{yield t()}catch(e){h.error(Object.assign({err:e},i),"Email delivery failed")}})}getEmailService(i){return d(this,void 0,void 0,function*(){var t;const e=g(yield this.integrationRegistry.get(i,"resend")),a=JSON.stringify(e??null),n=this.emailServices.get(i);if(n?.signature===a)return(t=n.service)!==null&&t!==void 0?t:void 0;const r=e?.apiKey?new p({apiKey:e.apiKey,fromEmail:e.fromEmail}):null;return this.emailServices.set(i,{service:r,signature:a}),r??void 0})}createReservation(i,t,e){return d(this,void 0,void 0,function*(){var a;const n=yield this.prisma.organization.findFirst({where:{id:i},include:{configuration:!0}});if(!n)throw new l(404,"Organization not found");if(!(!((a=n.configuration)===null||a===void 0)&&a.isAcceptingReservations))throw new l(400,"This organization is not accepting reservations at the moment");const r=yield this.prisma.reservation.create({data:Object.assign({referenceId:y(),firstname:e.firstname,lastname:e.lastname,guests:e.guests,phone:e.phone,date:e.date,organization:{connect:{id:i}}},t?{user:{connect:{id:t.id}}}:{}),include:{organization:{include:{address:!0,configuration:!0,logoFile:!0,members:{include:{user:!0}}}},user:!0}}),s=yield this.getEmailService(i);for(const o of r.organization.members)yield this.safelySendEmail({emailType:"reservation-notification",memberId:o.user.id,organizationId:i,reservationId:r.id},()=>{var u;return(u=s?.sendReservationNotificationEmail(o.user,r))!==null&&u!==void 0?u:Promise.resolve()});return c.parse(r)})}getReservation(i,t,e){return d(this,void 0,void 0,function*(){const a=yield this.prisma.reservation.findUnique({where:{id:e,organizationId:t,user:{id:i.id}}});if(!a)throw new l(404,"Reservation not found");return c.parse(a)})}getReservations(i,t){return d(this,void 0,void 0,function*(){const{page:e=1,limit:a=10,search:n,from:r,to:s}=t,[o,u]=yield this.prisma.reservation.paginate({orderBy:{createdAt:"desc"},where:Object.assign(Object.assign({organizationId:i},r||s?{date:Object.assign(Object.assign({},r?{gte:r}:{}),s?{lte:s}:{})}:{}),n&&{OR:[{firstname:{contains:n,mode:"insensitive"}},{lastname:{contains:n,mode:"insensitive"}},{referenceId:{contains:n,mode:"insensitive"}}]}),include:{user:!0}}).withPages({page:e,limit:a});return v.object({meta:m,list:v.array(c)}).parse({meta:u,list:o})})}getMyReservations(i,t,e){return d(this,void 0,void 0,function*(){const{page:a=1,limit:n=10,search:r}=e,[s,o]=yield this.prisma.reservation.paginate({orderBy:{createdAt:"desc"},where:Object.assign({organizationId:t,userId:i},r&&{referenceId:{contains:r,mode:"insensitive"}})}).withPages({page:a,limit:n});return v.object({meta:m,list:v.array(c)}).parse({meta:o,list:s})})}getUserReservations(i,t){return d(this,void 0,void 0,function*(){const e=yield this.prisma.reservation.findMany({where:{organizationId:t,userId:i}});return v.array(c).parse(e)})}updateReservation(i,t,e){return d(this,void 0,void 0,function*(){const a=yield this.prisma.reservation.findUnique({where:{id:t,organizationId:i}});if(!a)throw new l(404,"Reservation not found");if(a.cancelledAt)throw new l(400,"Cancelled reservations cannot be edited");const n=yield this.prisma.reservation.update({where:{id:t},data:{firstname:e.firstname,lastname:e.lastname,guests:e.guests,date:e.date},include:{organization:{include:{address:!0,configuration:!0,logoFile:!0,members:{include:{user:!0}}}},user:!0}}),r=yield this.getEmailService(i);return yield this.safelySendEmail({emailType:"reservation-updated",organizationId:i,reservationId:n.id},()=>{var s;return(s=r?.sendReservationUpdatedEmail(n))!==null&&s!==void 0?s:Promise.resolve()}),c.parse(n)})}updateStatus(i,t,e){return d(this,void 0,void 0,function*(){if(!(yield this.prisma.reservation.findUnique({where:{id:t,organizationId:i}})))throw new l(404,"Reservation not found");let n={};switch(e){case"accept":n={acceptedAt:new Date};break;case"cancel":n={cancelledAt:new Date};break}const r=yield this.prisma.reservation.update({where:{id:t},data:n,include:{organization:{include:{address:!0,configuration:!0,logoFile:!0,members:{include:{user:!0}}}},user:!0}}),s=yield this.getEmailService(i);return e==="cancel"&&(yield this.safelySendEmail({emailType:"reservation-cancelled",organizationId:i,reservationId:r.id},()=>{var o;return(o=s?.sendReservationCancellationEmail(r))!==null&&o!==void 0?o:Promise.resolve()})),e==="accept"&&(yield this.safelySendEmail({emailType:"reservation-confirmed",organizationId:i,reservationId:r.id},()=>{var o;return(o=s?.sendReservationConfirmationEmail(r))!==null&&o!==void 0?o:Promise.resolve()})),c.parse(r)})}deleteReservation(i,t){return d(this,void 0,void 0,function*(){if(!(yield this.prisma.reservation.findUnique({where:{id:t,organizationId:i}})))throw new l(404,"Reservation not found");yield this.prisma.reservation.delete({where:{id:t}})})}}export{w as ReservationService};
@@ -1 +1 @@
1
- {"version":3,"file":"reservation.service.js","sourceRoot":"","sources":["../../../../../../packages/rest-api/src/features/reservation/reservation.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reservation.service.js","sourceRoot":"","sources":["../../../../../../packages/rest-api/src/features/reservation/reservation.service.ts"],"names":[],"mappings":"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"}