@forklaunch/implementation-billing-base 0.3.3 → 0.3.4

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.
@@ -0,0 +1,627 @@
1
+ 'use strict';
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if ((from && typeof from === 'object') || typeof from === 'function') {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, {
15
+ get: () => from[key],
16
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
17
+ });
18
+ }
19
+ return to;
20
+ };
21
+ var __toCommonJS = (mod) =>
22
+ __copyProps(__defProp({}, '__esModule', { value: true }), mod);
23
+
24
+ // domain/schemas/index.ts
25
+ var schemas_exports = {};
26
+ __export(schemas_exports, {
27
+ BaseBillingPortalServiceSchemas: () => BaseBillingPortalServiceSchemas3,
28
+ BaseCheckoutSessionServiceSchemas: () => BaseCheckoutSessionServiceSchemas3,
29
+ BasePaymentLinkServiceSchemas: () => BasePaymentLinkServiceSchemas3,
30
+ BasePlanServiceSchemas: () => BasePlanServiceSchemas3,
31
+ BaseSubscriptionServiceSchemas: () => BaseSubscriptionServiceSchemas3
32
+ });
33
+ module.exports = __toCommonJS(schemas_exports);
34
+
35
+ // domain/schemas/billingPortal.schema.ts
36
+ var import_internal = require('@forklaunch/internal');
37
+
38
+ // domain/schemas/typebox/billingPortal.schema.ts
39
+ var import_typebox = require('@forklaunch/validator/typebox');
40
+ var CreateBillingPortalSchema = {
41
+ customerId: import_typebox.string,
42
+ expiresAt: import_typebox.date,
43
+ uri: (0, import_typebox.optional)(import_typebox.string),
44
+ providerFields: (0, import_typebox.optional)(import_typebox.unknown)
45
+ };
46
+ var UpdateBillingPortalSchema = ({ uuidId }) => ({
47
+ id: uuidId ? import_typebox.uuid : import_typebox.string,
48
+ uri: (0, import_typebox.optional)(import_typebox.string),
49
+ expiresAt: (0, import_typebox.optional)(import_typebox.date),
50
+ providerFields: (0, import_typebox.optional)(import_typebox.unknown)
51
+ });
52
+ var BillingPortalSchema = ({ uuidId }) => ({
53
+ id: uuidId ? import_typebox.uuid : import_typebox.string,
54
+ customerId: import_typebox.string,
55
+ uri: (0, import_typebox.optional)(import_typebox.string),
56
+ expiresAt: import_typebox.date,
57
+ providerFields: (0, import_typebox.optional)(import_typebox.unknown),
58
+ createdAt: (0, import_typebox.optional)(import_typebox.date),
59
+ updatedAt: (0, import_typebox.optional)(import_typebox.date)
60
+ });
61
+ var BaseBillingPortalServiceSchemas = (options) => ({
62
+ CreateBillingPortalSchema,
63
+ UpdateBillingPortalSchema: UpdateBillingPortalSchema(options),
64
+ BillingPortalSchema: BillingPortalSchema(options)
65
+ });
66
+
67
+ // domain/schemas/zod/billingPortal.schema.ts
68
+ var import_zod = require('@forklaunch/validator/zod');
69
+ var CreateBillingPortalSchema2 = {
70
+ customerId: import_zod.string,
71
+ expiresAt: import_zod.date,
72
+ uri: (0, import_zod.optional)(import_zod.string),
73
+ providerFields: (0, import_zod.optional)(import_zod.unknown)
74
+ };
75
+ var UpdateBillingPortalSchema2 = ({ uuidId }) => ({
76
+ id: uuidId ? import_zod.uuid : import_zod.string,
77
+ uri: (0, import_zod.optional)(import_zod.string),
78
+ expiresAt: (0, import_zod.optional)(import_zod.date),
79
+ providerFields: (0, import_zod.optional)(import_zod.unknown)
80
+ });
81
+ var BillingPortalSchema2 = ({ uuidId }) => ({
82
+ id: uuidId ? import_zod.uuid : import_zod.string,
83
+ customerId: import_zod.string,
84
+ uri: (0, import_zod.optional)(import_zod.string),
85
+ expiresAt: import_zod.date,
86
+ providerFields: (0, import_zod.optional)(import_zod.unknown),
87
+ createdAt: (0, import_zod.optional)(import_zod.date),
88
+ updatedAt: (0, import_zod.optional)(import_zod.date)
89
+ });
90
+ var BaseBillingPortalServiceSchemas2 = (options) => ({
91
+ CreateBillingPortalSchema: CreateBillingPortalSchema2,
92
+ UpdateBillingPortalSchema: UpdateBillingPortalSchema2(options),
93
+ BillingPortalSchema: BillingPortalSchema2(options)
94
+ });
95
+
96
+ // domain/schemas/billingPortal.schema.ts
97
+ var BaseBillingPortalServiceSchemas3 = (0,
98
+ import_internal.serviceSchemaResolver)(
99
+ BaseBillingPortalServiceSchemas,
100
+ BaseBillingPortalServiceSchemas2
101
+ );
102
+
103
+ // domain/schemas/checkoutSession.schema.ts
104
+ var import_internal2 = require('@forklaunch/internal');
105
+
106
+ // domain/schemas/typebox/checkoutSession.schema.ts
107
+ var import_typebox2 = require('@forklaunch/validator/typebox');
108
+ var CreateCheckoutSessionSchema = (
109
+ PaymentMethodEnum,
110
+ CurrencyEnum,
111
+ StatusEnum
112
+ ) => ({
113
+ customerId: import_typebox2.string,
114
+ paymentMethods: (0, import_typebox2.array)(
115
+ (0, import_typebox2.enum_)(PaymentMethodEnum)
116
+ ),
117
+ currency: (0, import_typebox2.enum_)(CurrencyEnum),
118
+ successRedirectUri: (0, import_typebox2.optional)(import_typebox2.string),
119
+ cancelRedirectUri: (0, import_typebox2.optional)(import_typebox2.string),
120
+ expiresAt: import_typebox2.date,
121
+ status: (0, import_typebox2.enum_)(StatusEnum),
122
+ providerFields: (0, import_typebox2.optional)(import_typebox2.unknown)
123
+ });
124
+ var UpdateCheckoutSessionSchema =
125
+ ({ uuidId }) =>
126
+ (PaymentMethodEnum, CurrencyEnum, StatusEnum) => ({
127
+ id: uuidId ? import_typebox2.uuid : import_typebox2.string,
128
+ customerId: (0, import_typebox2.optional)(import_typebox2.string),
129
+ paymentMethods: (0, import_typebox2.optional)(
130
+ (0, import_typebox2.array)((0, import_typebox2.enum_)(PaymentMethodEnum))
131
+ ),
132
+ currency: (0, import_typebox2.optional)(
133
+ (0, import_typebox2.enum_)(CurrencyEnum)
134
+ ),
135
+ successRedirectUri: (0, import_typebox2.optional)(import_typebox2.string),
136
+ cancelRedirectUri: (0, import_typebox2.optional)(import_typebox2.string),
137
+ expiresAt: (0, import_typebox2.optional)(import_typebox2.date),
138
+ status: (0, import_typebox2.optional)(
139
+ (0, import_typebox2.enum_)(StatusEnum)
140
+ ),
141
+ providerFields: (0, import_typebox2.optional)(import_typebox2.unknown)
142
+ });
143
+ var CheckoutSessionSchema =
144
+ ({ uuidId }) =>
145
+ (PaymentMethodEnum, CurrencyEnum, StatusEnum) => ({
146
+ id: uuidId ? import_typebox2.uuid : import_typebox2.string,
147
+ customerId: import_typebox2.string,
148
+ paymentMethods: (0, import_typebox2.array)(
149
+ (0, import_typebox2.enum_)(PaymentMethodEnum)
150
+ ),
151
+ currency: (0, import_typebox2.enum_)(CurrencyEnum),
152
+ successRedirectUri: (0, import_typebox2.optional)(import_typebox2.string),
153
+ cancelRedirectUri: (0, import_typebox2.optional)(import_typebox2.string),
154
+ expiresAt: import_typebox2.date,
155
+ status: (0, import_typebox2.enum_)(StatusEnum),
156
+ providerFields: (0, import_typebox2.optional)(import_typebox2.unknown),
157
+ createdAt: (0, import_typebox2.optional)(import_typebox2.date),
158
+ updatedAt: (0, import_typebox2.optional)(import_typebox2.date)
159
+ });
160
+ var BaseCheckoutSessionServiceSchemas = (options) => ({
161
+ CreateCheckoutSessionSchema,
162
+ UpdateCheckoutSessionSchema: UpdateCheckoutSessionSchema(options),
163
+ CheckoutSessionSchema: CheckoutSessionSchema(options)
164
+ });
165
+
166
+ // domain/schemas/zod/checkoutSession.schema.ts
167
+ var import_zod2 = require('@forklaunch/validator/zod');
168
+ var CreateCheckoutSessionSchema2 = (
169
+ PaymentMethodEnum,
170
+ CurrencyEnum,
171
+ StatusEnum
172
+ ) => ({
173
+ customerId: import_zod2.string,
174
+ paymentMethods: (0, import_zod2.array)(
175
+ (0, import_zod2.enum_)(PaymentMethodEnum)
176
+ ),
177
+ currency: (0, import_zod2.enum_)(CurrencyEnum),
178
+ successRedirectUri: (0, import_zod2.optional)(import_zod2.string),
179
+ cancelRedirectUri: (0, import_zod2.optional)(import_zod2.string),
180
+ expiresAt: import_zod2.date,
181
+ status: (0, import_zod2.enum_)(StatusEnum),
182
+ providerFields: (0, import_zod2.optional)(import_zod2.unknown)
183
+ });
184
+ var UpdateCheckoutSessionSchema2 =
185
+ ({ uuidId }) =>
186
+ (PaymentMethodEnum, CurrencyEnum, StatusEnum) => ({
187
+ id: uuidId ? import_zod2.uuid : import_zod2.string,
188
+ customerId: (0, import_zod2.optional)(import_zod2.string),
189
+ paymentMethods: (0, import_zod2.optional)(
190
+ (0, import_zod2.array)((0, import_zod2.enum_)(PaymentMethodEnum))
191
+ ),
192
+ currency: (0, import_zod2.optional)((0, import_zod2.enum_)(CurrencyEnum)),
193
+ successRedirectUri: (0, import_zod2.optional)(import_zod2.string),
194
+ cancelRedirectUri: (0, import_zod2.optional)(import_zod2.string),
195
+ expiresAt: (0, import_zod2.optional)(import_zod2.date),
196
+ status: (0, import_zod2.optional)((0, import_zod2.enum_)(StatusEnum)),
197
+ providerFields: (0, import_zod2.optional)(import_zod2.unknown)
198
+ });
199
+ var CheckoutSessionSchema2 =
200
+ ({ uuidId }) =>
201
+ (PaymentMethodEnum, CurrencyEnum, StatusEnum) => ({
202
+ id: uuidId ? import_zod2.uuid : import_zod2.string,
203
+ customerId: import_zod2.string,
204
+ paymentMethods: (0, import_zod2.array)(
205
+ (0, import_zod2.enum_)(PaymentMethodEnum)
206
+ ),
207
+ currency: (0, import_zod2.enum_)(CurrencyEnum),
208
+ successRedirectUri: (0, import_zod2.optional)(import_zod2.string),
209
+ cancelRedirectUri: (0, import_zod2.optional)(import_zod2.string),
210
+ expiresAt: import_zod2.date,
211
+ status: (0, import_zod2.enum_)(StatusEnum),
212
+ providerFields: (0, import_zod2.optional)(import_zod2.unknown),
213
+ createdAt: (0, import_zod2.optional)(import_zod2.date),
214
+ updatedAt: (0, import_zod2.optional)(import_zod2.date)
215
+ });
216
+ var BaseCheckoutSessionServiceSchemas2 = (options) => ({
217
+ CreateCheckoutSessionSchema: CreateCheckoutSessionSchema2,
218
+ UpdateCheckoutSessionSchema: UpdateCheckoutSessionSchema2(options),
219
+ CheckoutSessionSchema: CheckoutSessionSchema2(options)
220
+ });
221
+
222
+ // domain/schemas/checkoutSession.schema.ts
223
+ var BaseCheckoutSessionServiceSchemas3 = (0,
224
+ import_internal2.serviceSchemaResolver)(
225
+ BaseCheckoutSessionServiceSchemas,
226
+ BaseCheckoutSessionServiceSchemas2
227
+ );
228
+
229
+ // domain/schemas/paymentLink.schema.ts
230
+ var import_internal3 = require('@forklaunch/internal');
231
+
232
+ // domain/schemas/typebox/paymentLink.schema.ts
233
+ var import_typebox3 = require('@forklaunch/validator/typebox');
234
+ var CreatePaymentLinkSchema = (
235
+ PaymentMethodEnum,
236
+ CurrencyEnum,
237
+ StatusEnum
238
+ ) => ({
239
+ amount: import_typebox3.number,
240
+ paymentMethods: (0, import_typebox3.array)(
241
+ (0, import_typebox3.enum_)(PaymentMethodEnum)
242
+ ),
243
+ currency: (0, import_typebox3.enum_)(CurrencyEnum),
244
+ status: (0, import_typebox3.enum_)(StatusEnum),
245
+ providerFields: (0, import_typebox3.optional)(import_typebox3.unknown)
246
+ });
247
+ var UpdatePaymentLinkSchema =
248
+ ({ uuidId }) =>
249
+ (PaymentMethodEnum, CurrencyEnum, StatusEnum) => ({
250
+ id: uuidId ? import_typebox3.uuid : import_typebox3.string,
251
+ amount: (0, import_typebox3.optional)(import_typebox3.number),
252
+ paymentMethods: (0, import_typebox3.optional)(
253
+ (0, import_typebox3.array)((0, import_typebox3.enum_)(PaymentMethodEnum))
254
+ ),
255
+ currency: (0, import_typebox3.optional)(
256
+ (0, import_typebox3.enum_)(CurrencyEnum)
257
+ ),
258
+ status: (0, import_typebox3.optional)(
259
+ (0, import_typebox3.enum_)(StatusEnum)
260
+ ),
261
+ providerFields: (0, import_typebox3.optional)(import_typebox3.unknown)
262
+ });
263
+ var PaymentLinkSchema =
264
+ ({ uuidId }) =>
265
+ (PaymentMethodEnum, CurrencyEnum, StatusEnum) => ({
266
+ id: uuidId ? import_typebox3.uuid : import_typebox3.string,
267
+ amount: import_typebox3.number,
268
+ currency: (0, import_typebox3.enum_)(CurrencyEnum),
269
+ paymentMethods: (0, import_typebox3.array)(
270
+ (0, import_typebox3.enum_)(PaymentMethodEnum)
271
+ ),
272
+ status: (0, import_typebox3.enum_)(StatusEnum),
273
+ providerFields: (0, import_typebox3.optional)(import_typebox3.unknown),
274
+ createdAt: (0, import_typebox3.optional)(import_typebox3.date),
275
+ updatedAt: (0, import_typebox3.optional)(import_typebox3.date)
276
+ });
277
+ var BasePaymentLinkServiceSchemas = (options) => ({
278
+ CreatePaymentLinkSchema,
279
+ UpdatePaymentLinkSchema: UpdatePaymentLinkSchema(options),
280
+ PaymentLinkSchema: PaymentLinkSchema(options)
281
+ });
282
+
283
+ // domain/schemas/zod/paymentLink.schema.ts
284
+ var import_zod3 = require('@forklaunch/validator/zod');
285
+ var CreatePaymentLinkSchema2 = (
286
+ PaymentMethodEnum,
287
+ CurrencyEnum,
288
+ StatusEnum
289
+ ) => ({
290
+ amount: import_zod3.number,
291
+ paymentMethods: (0, import_zod3.array)(
292
+ (0, import_zod3.enum_)(PaymentMethodEnum)
293
+ ),
294
+ currency: (0, import_zod3.enum_)(CurrencyEnum),
295
+ status: (0, import_zod3.enum_)(StatusEnum),
296
+ providerFields: (0, import_zod3.optional)(import_zod3.unknown)
297
+ });
298
+ var UpdatePaymentLinkSchema2 =
299
+ ({ uuidId }) =>
300
+ (PaymentMethodEnum, CurrencyEnum, StatusEnum) => ({
301
+ id: uuidId ? import_zod3.uuid : import_zod3.string,
302
+ amount: (0, import_zod3.optional)(import_zod3.number),
303
+ paymentMethods: (0, import_zod3.optional)(
304
+ (0, import_zod3.array)((0, import_zod3.enum_)(PaymentMethodEnum))
305
+ ),
306
+ currency: (0, import_zod3.optional)((0, import_zod3.enum_)(CurrencyEnum)),
307
+ status: (0, import_zod3.optional)((0, import_zod3.enum_)(StatusEnum)),
308
+ providerFields: (0, import_zod3.optional)(import_zod3.unknown)
309
+ });
310
+ var PaymentLinkSchema2 =
311
+ ({ uuidId }) =>
312
+ (PaymentMethodEnum, CurrencyEnum, StatusEnum) => ({
313
+ id: uuidId ? import_zod3.uuid : import_zod3.string,
314
+ amount: import_zod3.number,
315
+ paymentMethods: (0, import_zod3.array)(
316
+ (0, import_zod3.enum_)(PaymentMethodEnum)
317
+ ),
318
+ currency: (0, import_zod3.enum_)(CurrencyEnum),
319
+ status: (0, import_zod3.enum_)(StatusEnum),
320
+ providerFields: (0, import_zod3.optional)(import_zod3.unknown),
321
+ createdAt: (0, import_zod3.optional)(import_zod3.date),
322
+ updatedAt: (0, import_zod3.optional)(import_zod3.date)
323
+ });
324
+ var BasePaymentLinkServiceSchemas2 = (options) => ({
325
+ CreatePaymentLinkSchema: CreatePaymentLinkSchema2,
326
+ UpdatePaymentLinkSchema: UpdatePaymentLinkSchema2(options),
327
+ PaymentLinkSchema: PaymentLinkSchema2(options)
328
+ });
329
+
330
+ // domain/schemas/paymentLink.schema.ts
331
+ var BasePaymentLinkServiceSchemas3 = (0,
332
+ import_internal3.serviceSchemaResolver)(
333
+ BasePaymentLinkServiceSchemas,
334
+ BasePaymentLinkServiceSchemas2
335
+ );
336
+
337
+ // domain/schemas/plan.schema.ts
338
+ var import_internal4 = require('@forklaunch/internal');
339
+
340
+ // domain/schemas/typebox/plan.schema.ts
341
+ var import_typebox4 = require('@forklaunch/validator/typebox');
342
+ var CreatePlanSchema = (
343
+ PlanCadenceEnum,
344
+ CurrencyEnum,
345
+ BillingProviderEnum
346
+ ) => ({
347
+ name: import_typebox4.string,
348
+ description: (0, import_typebox4.optional)(import_typebox4.string),
349
+ price: import_typebox4.number,
350
+ cadence: (0, import_typebox4.enum_)(PlanCadenceEnum),
351
+ currency: (0, import_typebox4.enum_)(CurrencyEnum),
352
+ features: (0, import_typebox4.optional)(
353
+ (0, import_typebox4.array)(import_typebox4.string)
354
+ ),
355
+ externalId: import_typebox4.string,
356
+ billingProvider: (0, import_typebox4.optional)(
357
+ (0, import_typebox4.enum_)(BillingProviderEnum)
358
+ ),
359
+ active: import_typebox4.boolean,
360
+ providerFields: (0, import_typebox4.optional)(import_typebox4.unknown)
361
+ });
362
+ var UpdatePlanSchema =
363
+ ({ uuidId }) =>
364
+ (PlanCadenceEnum, CurrencyEnum, BillingProviderEnum) => ({
365
+ id: uuidId ? import_typebox4.uuid : import_typebox4.string,
366
+ name: (0, import_typebox4.optional)(import_typebox4.string),
367
+ description: (0, import_typebox4.optional)(import_typebox4.string),
368
+ price: (0, import_typebox4.optional)(import_typebox4.number),
369
+ cadence: (0, import_typebox4.optional)(
370
+ (0, import_typebox4.enum_)(PlanCadenceEnum)
371
+ ),
372
+ currency: (0, import_typebox4.optional)(
373
+ (0, import_typebox4.enum_)(CurrencyEnum)
374
+ ),
375
+ features: (0, import_typebox4.optional)(
376
+ (0, import_typebox4.array)(import_typebox4.string)
377
+ ),
378
+ externalId: (0, import_typebox4.optional)(import_typebox4.string),
379
+ billingProvider: (0, import_typebox4.optional)(
380
+ (0, import_typebox4.enum_)(BillingProviderEnum)
381
+ ),
382
+ active: (0, import_typebox4.optional)(import_typebox4.boolean),
383
+ providerFields: (0, import_typebox4.optional)(import_typebox4.unknown)
384
+ });
385
+ var PlanSchema =
386
+ ({ uuidId }) =>
387
+ (PlanCadenceEnum, CurrencyEnum, BillingProviderEnum) => ({
388
+ id: uuidId ? import_typebox4.uuid : import_typebox4.string,
389
+ name: import_typebox4.string,
390
+ description: (0, import_typebox4.optional)(import_typebox4.string),
391
+ price: import_typebox4.number,
392
+ cadence: (0, import_typebox4.enum_)(PlanCadenceEnum),
393
+ currency: (0, import_typebox4.enum_)(CurrencyEnum),
394
+ features: (0, import_typebox4.optional)(
395
+ (0, import_typebox4.array)(import_typebox4.string)
396
+ ),
397
+ externalId: import_typebox4.string,
398
+ billingProvider: (0, import_typebox4.optional)(
399
+ (0, import_typebox4.enum_)(BillingProviderEnum)
400
+ ),
401
+ active: import_typebox4.boolean,
402
+ providerFields: (0, import_typebox4.optional)(import_typebox4.unknown),
403
+ createdAt: (0, import_typebox4.optional)(import_typebox4.date),
404
+ updatedAt: (0, import_typebox4.optional)(import_typebox4.date)
405
+ });
406
+ var BasePlanServiceSchemas = (options) => ({
407
+ CreatePlanSchema,
408
+ UpdatePlanSchema: UpdatePlanSchema(options),
409
+ PlanSchema: PlanSchema(options)
410
+ });
411
+
412
+ // domain/schemas/zod/plan.schema.ts
413
+ var import_zod4 = require('@forklaunch/validator/zod');
414
+ var CreatePlanSchema2 = (
415
+ PlanCadenceEnum,
416
+ CurrencyEnum,
417
+ BillingProviderEnum
418
+ ) => ({
419
+ name: import_zod4.string,
420
+ description: (0, import_zod4.optional)(import_zod4.string),
421
+ price: import_zod4.number,
422
+ cadence: (0, import_zod4.enum_)(PlanCadenceEnum),
423
+ currency: (0, import_zod4.enum_)(CurrencyEnum),
424
+ features: (0, import_zod4.optional)(
425
+ (0, import_zod4.array)(import_zod4.string)
426
+ ),
427
+ externalId: import_zod4.string,
428
+ billingProvider: (0, import_zod4.optional)(
429
+ (0, import_zod4.enum_)(BillingProviderEnum)
430
+ ),
431
+ active: import_zod4.boolean,
432
+ providerFields: (0, import_zod4.optional)(import_zod4.unknown)
433
+ });
434
+ var UpdatePlanSchema2 =
435
+ ({ uuidId }) =>
436
+ (PlanCadenceEnum, CurrencyEnum, BillingProviderEnum) => ({
437
+ id: uuidId ? import_zod4.uuid : import_zod4.string,
438
+ name: (0, import_zod4.optional)(import_zod4.string),
439
+ description: (0, import_zod4.optional)(import_zod4.string),
440
+ price: (0, import_zod4.optional)(import_zod4.number),
441
+ cadence: (0, import_zod4.optional)((0, import_zod4.enum_)(PlanCadenceEnum)),
442
+ currency: (0, import_zod4.optional)((0, import_zod4.enum_)(CurrencyEnum)),
443
+ features: (0, import_zod4.optional)(
444
+ (0, import_zod4.array)(import_zod4.string)
445
+ ),
446
+ externalId: (0, import_zod4.optional)(import_zod4.string),
447
+ billingProvider: (0, import_zod4.optional)(
448
+ (0, import_zod4.enum_)(BillingProviderEnum)
449
+ ),
450
+ active: (0, import_zod4.optional)(import_zod4.boolean),
451
+ providerFields: (0, import_zod4.optional)(import_zod4.unknown)
452
+ });
453
+ var PlanSchema2 =
454
+ ({ uuidId }) =>
455
+ (PlanCadenceEnum, CurrencyEnum, BillingProviderEnum) => ({
456
+ id: uuidId ? import_zod4.uuid : import_zod4.string,
457
+ name: import_zod4.string,
458
+ description: (0, import_zod4.optional)(import_zod4.string),
459
+ price: import_zod4.number,
460
+ cadence: (0, import_zod4.enum_)(PlanCadenceEnum),
461
+ currency: (0, import_zod4.enum_)(CurrencyEnum),
462
+ features: (0, import_zod4.optional)(
463
+ (0, import_zod4.array)(import_zod4.string)
464
+ ),
465
+ externalId: import_zod4.string,
466
+ billingProvider: (0, import_zod4.optional)(
467
+ (0, import_zod4.enum_)(BillingProviderEnum)
468
+ ),
469
+ active: import_zod4.boolean,
470
+ providerFields: (0, import_zod4.optional)(import_zod4.unknown),
471
+ createdAt: (0, import_zod4.optional)(import_zod4.date),
472
+ updatedAt: (0, import_zod4.optional)(import_zod4.date)
473
+ });
474
+ var BasePlanServiceSchemas2 = (options) => ({
475
+ CreatePlanSchema: CreatePlanSchema2,
476
+ UpdatePlanSchema: UpdatePlanSchema2(options),
477
+ PlanSchema: PlanSchema2(options)
478
+ });
479
+
480
+ // domain/schemas/plan.schema.ts
481
+ var BasePlanServiceSchemas3 = (0, import_internal4.serviceSchemaResolver)(
482
+ BasePlanServiceSchemas,
483
+ BasePlanServiceSchemas2
484
+ );
485
+
486
+ // domain/schemas/subscription.schema.ts
487
+ var import_internal5 = require('@forklaunch/internal');
488
+
489
+ // domain/schemas/typebox/subscription.schema.ts
490
+ var import_typebox5 = require('@forklaunch/validator/typebox');
491
+ var CreateSubscriptionSchema = (PartyEnum, BillingProviderEnum) => ({
492
+ partyId: import_typebox5.string,
493
+ partyType: (0, import_typebox5.enum_)(PartyEnum),
494
+ productId: import_typebox5.string,
495
+ description: (0, import_typebox5.optional)(import_typebox5.string),
496
+ active: import_typebox5.boolean,
497
+ externalId: import_typebox5.string,
498
+ startDate: import_typebox5.date,
499
+ endDate: (0, import_typebox5.optional)(import_typebox5.date),
500
+ status: import_typebox5.string,
501
+ billingProvider: (0, import_typebox5.optional)(
502
+ (0, import_typebox5.enum_)(BillingProviderEnum)
503
+ ),
504
+ providerFields: (0, import_typebox5.optional)(import_typebox5.unknown)
505
+ });
506
+ var UpdateSubscriptionSchema =
507
+ ({ uuidId }) =>
508
+ (PartyEnum, BillingProviderEnum) => ({
509
+ id: uuidId ? import_typebox5.uuid : import_typebox5.string,
510
+ partyId: (0, import_typebox5.optional)(import_typebox5.string),
511
+ partyType: (0, import_typebox5.optional)(
512
+ (0, import_typebox5.enum_)(PartyEnum)
513
+ ),
514
+ productId: (0, import_typebox5.optional)(import_typebox5.string),
515
+ description: (0, import_typebox5.optional)(import_typebox5.string),
516
+ active: (0, import_typebox5.optional)(import_typebox5.boolean),
517
+ externalId: (0, import_typebox5.optional)(import_typebox5.string),
518
+ startDate: (0, import_typebox5.optional)(import_typebox5.date),
519
+ endDate: (0, import_typebox5.optional)(import_typebox5.date),
520
+ status: (0, import_typebox5.optional)(import_typebox5.string),
521
+ billingProvider: (0, import_typebox5.optional)(
522
+ (0, import_typebox5.enum_)(BillingProviderEnum)
523
+ ),
524
+ providerFields: (0, import_typebox5.optional)(import_typebox5.unknown)
525
+ });
526
+ var SubscriptionSchema =
527
+ ({ uuidId }) =>
528
+ (PartyEnum, BillingProviderEnum) => ({
529
+ id: uuidId ? import_typebox5.uuid : import_typebox5.string,
530
+ partyId: import_typebox5.string,
531
+ partyType: (0, import_typebox5.enum_)(PartyEnum),
532
+ productId: import_typebox5.string,
533
+ description: (0, import_typebox5.optional)(import_typebox5.string),
534
+ active: import_typebox5.boolean,
535
+ externalId: import_typebox5.string,
536
+ startDate: import_typebox5.date,
537
+ endDate: (0, import_typebox5.optional)(import_typebox5.date),
538
+ status: import_typebox5.string,
539
+ billingProvider: (0, import_typebox5.optional)(
540
+ (0, import_typebox5.enum_)(BillingProviderEnum)
541
+ ),
542
+ providerFields: (0, import_typebox5.optional)(import_typebox5.unknown),
543
+ createdAt: (0, import_typebox5.optional)(import_typebox5.date),
544
+ updatedAt: (0, import_typebox5.optional)(import_typebox5.date)
545
+ });
546
+ var BaseSubscriptionServiceSchemas = (options) => ({
547
+ CreateSubscriptionSchema,
548
+ UpdateSubscriptionSchema: UpdateSubscriptionSchema(options),
549
+ SubscriptionSchema: SubscriptionSchema(options)
550
+ });
551
+
552
+ // domain/schemas/zod/subscription.schema.ts
553
+ var import_zod5 = require('@forklaunch/validator/zod');
554
+ var CreateSubscriptionSchema2 = (PartyEnum, BillingProviderEnum) => ({
555
+ partyId: import_zod5.string,
556
+ partyType: (0, import_zod5.enum_)(PartyEnum),
557
+ productId: import_zod5.string,
558
+ description: (0, import_zod5.optional)(import_zod5.string),
559
+ active: import_zod5.boolean,
560
+ externalId: import_zod5.string,
561
+ startDate: import_zod5.date,
562
+ endDate: (0, import_zod5.optional)(import_zod5.date),
563
+ status: import_zod5.string,
564
+ billingProvider: (0, import_zod5.optional)(
565
+ (0, import_zod5.enum_)(BillingProviderEnum)
566
+ ),
567
+ providerFields: (0, import_zod5.optional)(import_zod5.unknown)
568
+ });
569
+ var UpdateSubscriptionSchema2 =
570
+ ({ uuidId }) =>
571
+ (PartyEnum, BillingProviderEnum) => ({
572
+ id: uuidId ? import_zod5.uuid : import_zod5.string,
573
+ partyId: (0, import_zod5.optional)(import_zod5.string),
574
+ partyType: (0, import_zod5.optional)((0, import_zod5.enum_)(PartyEnum)),
575
+ productId: (0, import_zod5.optional)(import_zod5.string),
576
+ description: (0, import_zod5.optional)(import_zod5.string),
577
+ active: (0, import_zod5.optional)(import_zod5.boolean),
578
+ externalId: (0, import_zod5.optional)(import_zod5.string),
579
+ startDate: (0, import_zod5.optional)(import_zod5.date),
580
+ endDate: (0, import_zod5.optional)(import_zod5.date),
581
+ status: (0, import_zod5.optional)(import_zod5.string),
582
+ billingProvider: (0, import_zod5.optional)(
583
+ (0, import_zod5.enum_)(BillingProviderEnum)
584
+ ),
585
+ providerFields: (0, import_zod5.optional)(import_zod5.unknown)
586
+ });
587
+ var SubscriptionSchema2 =
588
+ ({ uuidId }) =>
589
+ (PartyEnum, BillingProviderEnum) => ({
590
+ id: uuidId ? import_zod5.uuid : import_zod5.string,
591
+ partyId: import_zod5.string,
592
+ partyType: (0, import_zod5.enum_)(PartyEnum),
593
+ productId: import_zod5.string,
594
+ description: (0, import_zod5.optional)(import_zod5.string),
595
+ active: import_zod5.boolean,
596
+ externalId: import_zod5.string,
597
+ startDate: import_zod5.date,
598
+ endDate: (0, import_zod5.optional)(import_zod5.date),
599
+ status: import_zod5.string,
600
+ billingProvider: (0, import_zod5.optional)(
601
+ (0, import_zod5.enum_)(BillingProviderEnum)
602
+ ),
603
+ providerFields: (0, import_zod5.optional)(import_zod5.unknown),
604
+ createdAt: (0, import_zod5.optional)(import_zod5.date),
605
+ updatedAt: (0, import_zod5.optional)(import_zod5.date)
606
+ });
607
+ var BaseSubscriptionServiceSchemas2 = (options) => ({
608
+ CreateSubscriptionSchema: CreateSubscriptionSchema2,
609
+ UpdateSubscriptionSchema: UpdateSubscriptionSchema2(options),
610
+ SubscriptionSchema: SubscriptionSchema2(options)
611
+ });
612
+
613
+ // domain/schemas/subscription.schema.ts
614
+ var BaseSubscriptionServiceSchemas3 = (0,
615
+ import_internal5.serviceSchemaResolver)(
616
+ BaseSubscriptionServiceSchemas,
617
+ BaseSubscriptionServiceSchemas2
618
+ );
619
+ // Annotate the CommonJS export names for ESM import in node:
620
+ 0 &&
621
+ (module.exports = {
622
+ BaseBillingPortalServiceSchemas,
623
+ BaseCheckoutSessionServiceSchemas,
624
+ BasePaymentLinkServiceSchemas,
625
+ BasePlanServiceSchemas,
626
+ BaseSubscriptionServiceSchemas
627
+ });