@voyantjs/finance 0.75.6 → 0.76.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/document-download.d.ts +22 -0
- package/dist/document-download.d.ts.map +1 -0
- package/dist/document-download.js +48 -0
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/routes-documents.d.ts +0 -4
- package/dist/routes-documents.d.ts.map +1 -1
- package/dist/routes-documents.js +25 -27
- package/dist/routes-public.d.ts +6 -6
- package/dist/routes-settlement.d.ts +1 -1
- package/dist/routes.d.ts +212 -9
- package/dist/routes.d.ts.map +1 -1
- package/dist/routes.js +92 -50
- package/dist/schema.d.ts +54 -3
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.js +9 -0
- package/dist/service-issue.d.ts +7 -2
- package/dist/service-issue.d.ts.map +1 -1
- package/dist/service-issue.js +19 -3
- package/dist/service-rendition-wait.d.ts +38 -0
- package/dist/service-rendition-wait.d.ts.map +1 -0
- package/dist/service-rendition-wait.js +67 -0
- package/dist/service.d.ts +129 -7
- package/dist/service.d.ts.map +1 -1
- package/dist/service.js +167 -28
- package/dist/validation-billing.d.ts +38 -1
- package/dist/validation-billing.d.ts.map +1 -1
- package/dist/validation-billing.js +21 -1
- package/dist/validation-public.d.ts +3 -0
- package/dist/validation-public.d.ts.map +1 -1
- package/dist/validation-public.js +9 -1
- package/dist/validation-shared.d.ts +3 -1
- package/dist/validation-shared.d.ts.map +1 -1
- package/dist/validation-shared.js +1 -0
- package/package.json +9 -9
package/dist/service.js
CHANGED
|
@@ -17,6 +17,18 @@ export class PaymentValidationError extends Error {
|
|
|
17
17
|
this.details = details;
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
|
+
export class InvoiceNumberAllocationError extends Error {
|
|
21
|
+
code;
|
|
22
|
+
scope;
|
|
23
|
+
seriesId;
|
|
24
|
+
constructor(code, details) {
|
|
25
|
+
super(code);
|
|
26
|
+
this.name = "InvoiceNumberAllocationError";
|
|
27
|
+
this.code = code;
|
|
28
|
+
this.scope = details.scope;
|
|
29
|
+
this.seriesId = details.seriesId;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
20
32
|
function bookingItemToInvoiceLine(item, taxes, sortOrder) {
|
|
21
33
|
const quantity = Math.max(item.quantity, 1);
|
|
22
34
|
const totalCents = item.totalSellAmountCents ?? (item.unitSellAmountCents ?? 0) * Math.max(item.quantity, 1);
|
|
@@ -105,6 +117,72 @@ function formatNumber(prefix, separator, padLength, sequence) {
|
|
|
105
117
|
const padded = String(sequence).padStart(padLength, "0");
|
|
106
118
|
return `${prefix}${separator}${padded}`;
|
|
107
119
|
}
|
|
120
|
+
function invoiceScopeForType(invoiceType) {
|
|
121
|
+
return invoiceType === "proforma" ? "proforma" : "invoice";
|
|
122
|
+
}
|
|
123
|
+
function pendingExternalInvoiceNumber(scope) {
|
|
124
|
+
const uuid = globalThis.crypto?.randomUUID?.().replace(/-/g, "") ?? randomId();
|
|
125
|
+
return `PENDING-${scope.toUpperCase()}-${uuid.slice(0, 32)}`;
|
|
126
|
+
}
|
|
127
|
+
function randomId() {
|
|
128
|
+
return `${Date.now().toString(36)}${Math.random().toString(36).slice(2)}`.padEnd(32, "0");
|
|
129
|
+
}
|
|
130
|
+
async function resolveInvoiceNumberForBooking(db, data) {
|
|
131
|
+
const scope = invoiceScopeForType(data.invoiceType);
|
|
132
|
+
if (data.invoiceNumber) {
|
|
133
|
+
return {
|
|
134
|
+
invoiceNumber: data.invoiceNumber,
|
|
135
|
+
seriesId: data.seriesId ?? null,
|
|
136
|
+
sequence: null,
|
|
137
|
+
status: "draft",
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
const series = data.seriesId
|
|
141
|
+
? await financeService.getInvoiceNumberSeriesById(db, data.seriesId)
|
|
142
|
+
: await financeService.resolveDefaultInvoiceNumberSeries(db, scope);
|
|
143
|
+
if (!series) {
|
|
144
|
+
throw new InvoiceNumberAllocationError(data.seriesId ? "invoice_number_series_not_found" : "no_active_series_for_scope", { scope, seriesId: data.seriesId });
|
|
145
|
+
}
|
|
146
|
+
if (!series.active) {
|
|
147
|
+
throw new InvoiceNumberAllocationError("invoice_number_series_inactive", {
|
|
148
|
+
scope,
|
|
149
|
+
seriesId: series.id,
|
|
150
|
+
});
|
|
151
|
+
}
|
|
152
|
+
if (series.scope !== scope) {
|
|
153
|
+
throw new InvoiceNumberAllocationError("invoice_number_series_scope_mismatch", {
|
|
154
|
+
scope,
|
|
155
|
+
seriesId: series.id,
|
|
156
|
+
});
|
|
157
|
+
}
|
|
158
|
+
if (series.externalProvider) {
|
|
159
|
+
return {
|
|
160
|
+
invoiceNumber: pendingExternalInvoiceNumber(scope),
|
|
161
|
+
seriesId: series.id,
|
|
162
|
+
sequence: null,
|
|
163
|
+
status: "pending_external_allocation",
|
|
164
|
+
};
|
|
165
|
+
}
|
|
166
|
+
const allocated = await financeService.allocateInvoiceNumber(db, series.id);
|
|
167
|
+
if (allocated.status === "not_found") {
|
|
168
|
+
throw new InvoiceNumberAllocationError("invoice_number_series_not_found", {
|
|
169
|
+
scope,
|
|
170
|
+
seriesId: series.id,
|
|
171
|
+
});
|
|
172
|
+
}
|
|
173
|
+
if (allocated.status === "inactive") {
|
|
174
|
+
throw new InvoiceNumberAllocationError("invoice_number_series_inactive", {
|
|
175
|
+
scope,
|
|
176
|
+
seriesId: series.id,
|
|
177
|
+
});
|
|
178
|
+
}
|
|
179
|
+
return {
|
|
180
|
+
invoiceNumber: allocated.formattedNumber,
|
|
181
|
+
seriesId: allocated.seriesId,
|
|
182
|
+
sequence: allocated.sequence,
|
|
183
|
+
status: "draft",
|
|
184
|
+
};
|
|
185
|
+
}
|
|
108
186
|
export function renderInvoiceBody(body, bodyFormat, variables) {
|
|
109
187
|
return renderStructuredTemplate(body, bodyFormat, variables);
|
|
110
188
|
}
|
|
@@ -1846,6 +1924,7 @@ export const financeService = {
|
|
|
1846
1924
|
},
|
|
1847
1925
|
async createInvoiceFromBooking(db, data, bookingData) {
|
|
1848
1926
|
const { booking, items } = bookingData;
|
|
1927
|
+
const numberAssignment = await resolveInvoiceNumberForBooking(db, data);
|
|
1849
1928
|
const itemIds = items.map((item) => item.id);
|
|
1850
1929
|
const taxes = itemIds.length === 0
|
|
1851
1930
|
? []
|
|
@@ -1907,12 +1986,14 @@ export const financeService = {
|
|
|
1907
1986
|
const [invoice] = await tx
|
|
1908
1987
|
.insert(invoices)
|
|
1909
1988
|
.values({
|
|
1910
|
-
invoiceNumber:
|
|
1989
|
+
invoiceNumber: numberAssignment.invoiceNumber,
|
|
1911
1990
|
invoiceType: data.invoiceType,
|
|
1991
|
+
seriesId: numberAssignment.seriesId,
|
|
1992
|
+
sequence: numberAssignment.sequence,
|
|
1912
1993
|
bookingId: booking.id,
|
|
1913
1994
|
personId: booking.personId,
|
|
1914
1995
|
organizationId: booking.organizationId,
|
|
1915
|
-
status:
|
|
1996
|
+
status: numberAssignment.status,
|
|
1916
1997
|
currency: booking.sellCurrency,
|
|
1917
1998
|
baseCurrency: booking.baseCurrency,
|
|
1918
1999
|
fxRateSetId: booking.fxRateSetId,
|
|
@@ -2534,36 +2615,76 @@ export const financeService = {
|
|
|
2534
2615
|
.limit(1);
|
|
2535
2616
|
return row ?? null;
|
|
2536
2617
|
},
|
|
2537
|
-
async
|
|
2618
|
+
async resolveDefaultInvoiceNumberSeries(db, scope) {
|
|
2538
2619
|
const [row] = await db
|
|
2539
|
-
.
|
|
2540
|
-
.
|
|
2541
|
-
|
|
2542
|
-
|
|
2543
|
-
|
|
2544
|
-
separator: data.separator,
|
|
2545
|
-
padLength: data.padLength,
|
|
2546
|
-
currentSequence: data.currentSequence,
|
|
2547
|
-
resetStrategy: data.resetStrategy,
|
|
2548
|
-
resetAt: toTimestamp(data.resetAt),
|
|
2549
|
-
scope: data.scope,
|
|
2550
|
-
active: data.active,
|
|
2551
|
-
})
|
|
2552
|
-
.returning();
|
|
2620
|
+
.select()
|
|
2621
|
+
.from(invoiceNumberSeries)
|
|
2622
|
+
.where(and(eq(invoiceNumberSeries.scope, scope), eq(invoiceNumberSeries.active, true)))
|
|
2623
|
+
.orderBy(desc(invoiceNumberSeries.isDefault), desc(invoiceNumberSeries.updatedAt), desc(invoiceNumberSeries.createdAt))
|
|
2624
|
+
.limit(1);
|
|
2553
2625
|
return row ?? null;
|
|
2554
2626
|
},
|
|
2627
|
+
async createInvoiceNumberSeries(db, data) {
|
|
2628
|
+
return db.transaction(async (tx) => {
|
|
2629
|
+
const isDefault = data.active === false ? false : data.isDefault;
|
|
2630
|
+
if (isDefault) {
|
|
2631
|
+
await tx
|
|
2632
|
+
.update(invoiceNumberSeries)
|
|
2633
|
+
.set({ isDefault: false, updatedAt: new Date() })
|
|
2634
|
+
.where(eq(invoiceNumberSeries.scope, data.scope));
|
|
2635
|
+
}
|
|
2636
|
+
const [row] = await tx
|
|
2637
|
+
.insert(invoiceNumberSeries)
|
|
2638
|
+
.values({
|
|
2639
|
+
code: data.code,
|
|
2640
|
+
name: data.name,
|
|
2641
|
+
prefix: data.prefix,
|
|
2642
|
+
separator: data.separator,
|
|
2643
|
+
padLength: data.padLength,
|
|
2644
|
+
currentSequence: data.currentSequence,
|
|
2645
|
+
resetStrategy: data.resetStrategy,
|
|
2646
|
+
resetAt: toTimestamp(data.resetAt),
|
|
2647
|
+
scope: data.scope,
|
|
2648
|
+
isDefault,
|
|
2649
|
+
externalProvider: data.externalProvider ?? null,
|
|
2650
|
+
externalConfigKey: data.externalConfigKey ?? null,
|
|
2651
|
+
active: data.active,
|
|
2652
|
+
})
|
|
2653
|
+
.returning();
|
|
2654
|
+
return row ?? null;
|
|
2655
|
+
});
|
|
2656
|
+
},
|
|
2555
2657
|
async updateInvoiceNumberSeries(db, id, data) {
|
|
2556
|
-
|
|
2557
|
-
|
|
2558
|
-
|
|
2559
|
-
|
|
2560
|
-
|
|
2561
|
-
|
|
2562
|
-
|
|
2563
|
-
|
|
2564
|
-
|
|
2565
|
-
.
|
|
2566
|
-
|
|
2658
|
+
return db.transaction(async (tx) => {
|
|
2659
|
+
const [existing] = await tx
|
|
2660
|
+
.select()
|
|
2661
|
+
.from(invoiceNumberSeries)
|
|
2662
|
+
.where(eq(invoiceNumberSeries.id, id))
|
|
2663
|
+
.limit(1);
|
|
2664
|
+
if (!existing)
|
|
2665
|
+
return null;
|
|
2666
|
+
const { resetAt, ...rest } = data;
|
|
2667
|
+
const nextScope = rest.scope ?? existing.scope;
|
|
2668
|
+
const nextActive = rest.active ?? existing.active;
|
|
2669
|
+
const nextIsDefault = nextActive === false ? false : (rest.isDefault ?? existing.isDefault);
|
|
2670
|
+
if (nextIsDefault) {
|
|
2671
|
+
await tx
|
|
2672
|
+
.update(invoiceNumberSeries)
|
|
2673
|
+
.set({ isDefault: false, updatedAt: new Date() })
|
|
2674
|
+
.where(and(eq(invoiceNumberSeries.scope, nextScope), ne(invoiceNumberSeries.id, id)));
|
|
2675
|
+
}
|
|
2676
|
+
const [row] = await tx
|
|
2677
|
+
.update(invoiceNumberSeries)
|
|
2678
|
+
.set({
|
|
2679
|
+
...rest,
|
|
2680
|
+
isDefault: nextIsDefault,
|
|
2681
|
+
...(resetAt !== undefined ? { resetAt: toTimestamp(resetAt) } : {}),
|
|
2682
|
+
updatedAt: new Date(),
|
|
2683
|
+
})
|
|
2684
|
+
.where(eq(invoiceNumberSeries.id, id))
|
|
2685
|
+
.returning();
|
|
2686
|
+
return row ?? null;
|
|
2687
|
+
});
|
|
2567
2688
|
},
|
|
2568
2689
|
async deleteInvoiceNumberSeries(db, id) {
|
|
2569
2690
|
const [row] = await db
|
|
@@ -2608,6 +2729,24 @@ export const financeService = {
|
|
|
2608
2729
|
};
|
|
2609
2730
|
});
|
|
2610
2731
|
},
|
|
2732
|
+
async applyExternalInvoiceAllocation(db, invoiceId, data) {
|
|
2733
|
+
const [existing] = await db.select().from(invoices).where(eq(invoices.id, invoiceId)).limit(1);
|
|
2734
|
+
if (!existing)
|
|
2735
|
+
return { status: "not_found" };
|
|
2736
|
+
if (existing.status !== "pending_external_allocation") {
|
|
2737
|
+
return { status: "not_pending_external_allocation", invoice: existing };
|
|
2738
|
+
}
|
|
2739
|
+
const [invoice] = await db
|
|
2740
|
+
.update(invoices)
|
|
2741
|
+
.set({
|
|
2742
|
+
invoiceNumber: data.invoiceNumber,
|
|
2743
|
+
status: data.status ?? "sent",
|
|
2744
|
+
updatedAt: new Date(),
|
|
2745
|
+
})
|
|
2746
|
+
.where(eq(invoices.id, invoiceId))
|
|
2747
|
+
.returning();
|
|
2748
|
+
return invoice ? { status: "applied", invoice } : { status: "not_found" };
|
|
2749
|
+
},
|
|
2611
2750
|
// ============================================================================
|
|
2612
2751
|
// Invoice templates
|
|
2613
2752
|
// ============================================================================
|
|
@@ -100,6 +100,7 @@ export declare const insertInvoiceSchema: z.ZodObject<{
|
|
|
100
100
|
organizationId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
101
101
|
status: z.ZodDefault<z.ZodEnum<{
|
|
102
102
|
draft: "draft";
|
|
103
|
+
pending_external_allocation: "pending_external_allocation";
|
|
103
104
|
sent: "sent";
|
|
104
105
|
partially_paid: "partially_paid";
|
|
105
106
|
paid: "paid";
|
|
@@ -132,6 +133,7 @@ export declare const updateInvoiceSchema: z.ZodObject<{
|
|
|
132
133
|
organizationId: z.ZodOptional<z.ZodNullable<z.ZodOptional<z.ZodString>>>;
|
|
133
134
|
status: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
|
|
134
135
|
draft: "draft";
|
|
136
|
+
pending_external_allocation: "pending_external_allocation";
|
|
135
137
|
sent: "sent";
|
|
136
138
|
partially_paid: "partially_paid";
|
|
137
139
|
paid: "paid";
|
|
@@ -174,6 +176,7 @@ export declare const invoiceListSortDirSchema: z.ZodEnum<{
|
|
|
174
176
|
export declare const invoiceListQuerySchema: z.ZodObject<{
|
|
175
177
|
status: z.ZodOptional<z.ZodEnum<{
|
|
176
178
|
draft: "draft";
|
|
179
|
+
pending_external_allocation: "pending_external_allocation";
|
|
177
180
|
sent: "sent";
|
|
178
181
|
partially_paid: "partially_paid";
|
|
179
182
|
paid: "paid";
|
|
@@ -206,7 +209,8 @@ export declare const invoiceListQuerySchema: z.ZodObject<{
|
|
|
206
209
|
}, z.core.$strip>;
|
|
207
210
|
export declare const invoiceFromBookingSchema: z.ZodObject<{
|
|
208
211
|
bookingId: z.ZodString;
|
|
209
|
-
invoiceNumber: z.ZodString
|
|
212
|
+
invoiceNumber: z.ZodOptional<z.ZodString>;
|
|
213
|
+
seriesId: z.ZodOptional<z.ZodString>;
|
|
210
214
|
issueDate: z.ZodString;
|
|
211
215
|
dueDate: z.ZodString;
|
|
212
216
|
notes: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
@@ -214,6 +218,12 @@ export declare const invoiceFromBookingSchema: z.ZodObject<{
|
|
|
214
218
|
invoice: "invoice";
|
|
215
219
|
proforma: "proforma";
|
|
216
220
|
}>>;
|
|
221
|
+
wait: z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodEnum<{
|
|
222
|
+
none: "none";
|
|
223
|
+
pdf: "pdf";
|
|
224
|
+
any: "any";
|
|
225
|
+
}>>>;
|
|
226
|
+
waitTimeoutMs: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
|
|
217
227
|
}, z.core.$strip>;
|
|
218
228
|
export declare const insertInvoiceLineItemSchema: z.ZodObject<{
|
|
219
229
|
bookingItemId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
@@ -309,6 +319,9 @@ export declare const insertInvoiceNumberSeriesSchema: z.ZodObject<{
|
|
|
309
319
|
proforma: "proforma";
|
|
310
320
|
credit_note: "credit_note";
|
|
311
321
|
}>>;
|
|
322
|
+
isDefault: z.ZodDefault<z.ZodBoolean>;
|
|
323
|
+
externalProvider: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
324
|
+
externalConfigKey: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
312
325
|
active: z.ZodDefault<z.ZodBoolean>;
|
|
313
326
|
}, z.core.$strip>;
|
|
314
327
|
export declare const updateInvoiceNumberSeriesSchema: z.ZodObject<{
|
|
@@ -329,6 +342,9 @@ export declare const updateInvoiceNumberSeriesSchema: z.ZodObject<{
|
|
|
329
342
|
proforma: "proforma";
|
|
330
343
|
credit_note: "credit_note";
|
|
331
344
|
}>>>;
|
|
345
|
+
isDefault: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
346
|
+
externalProvider: z.ZodOptional<z.ZodNullable<z.ZodOptional<z.ZodString>>>;
|
|
347
|
+
externalConfigKey: z.ZodOptional<z.ZodNullable<z.ZodOptional<z.ZodString>>>;
|
|
332
348
|
active: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
333
349
|
}, z.core.$strip>;
|
|
334
350
|
export declare const invoiceNumberSeriesListQuerySchema: z.ZodObject<{
|
|
@@ -662,6 +678,7 @@ export declare const polledInvoiceSettlementResultSchema: z.ZodObject<{
|
|
|
662
678
|
invoiceId: z.ZodString;
|
|
663
679
|
invoiceStatus: z.ZodEnum<{
|
|
664
680
|
draft: "draft";
|
|
681
|
+
pending_external_allocation: "pending_external_allocation";
|
|
665
682
|
sent: "sent";
|
|
666
683
|
partially_paid: "partially_paid";
|
|
667
684
|
paid: "paid";
|
|
@@ -695,6 +712,12 @@ export declare const renderInvoiceInputSchema: z.ZodObject<{
|
|
|
695
712
|
xml: "xml";
|
|
696
713
|
}>>;
|
|
697
714
|
language: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
715
|
+
wait: z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodEnum<{
|
|
716
|
+
none: "none";
|
|
717
|
+
pdf: "pdf";
|
|
718
|
+
any: "any";
|
|
719
|
+
}>>>;
|
|
720
|
+
waitTimeoutMs: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
|
|
698
721
|
}, z.core.$strip>;
|
|
699
722
|
export declare const generateInvoiceDocumentInputSchema: z.ZodObject<{
|
|
700
723
|
templateId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
@@ -705,8 +728,22 @@ export declare const generateInvoiceDocumentInputSchema: z.ZodObject<{
|
|
|
705
728
|
xml: "xml";
|
|
706
729
|
}>>;
|
|
707
730
|
language: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
731
|
+
wait: z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodEnum<{
|
|
732
|
+
none: "none";
|
|
733
|
+
pdf: "pdf";
|
|
734
|
+
any: "any";
|
|
735
|
+
}>>>;
|
|
736
|
+
waitTimeoutMs: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
|
|
708
737
|
replaceExisting: z.ZodDefault<z.ZodBoolean>;
|
|
709
738
|
}, z.core.$strip>;
|
|
739
|
+
export declare const invoiceDocumentWaitQuerySchema: z.ZodObject<{
|
|
740
|
+
wait: z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodEnum<{
|
|
741
|
+
none: "none";
|
|
742
|
+
pdf: "pdf";
|
|
743
|
+
any: "any";
|
|
744
|
+
}>>>;
|
|
745
|
+
waitTimeoutMs: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
|
|
746
|
+
}, z.core.$strip>;
|
|
710
747
|
export declare const generatedInvoiceDocumentResultSchema: z.ZodObject<{
|
|
711
748
|
invoiceId: z.ZodString;
|
|
712
749
|
renderedBodyFormat: z.ZodEnum<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation-billing.d.ts","sourceRoot":"","sources":["../src/validation-billing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AA0BvB,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;iBAA+B,CAAA;AAC1E,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;iBAAyC,CAAA;AAepF,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAkC,CAAA;AAChF,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAA4C,CAAA;AA4B1F,eAAO,MAAM,mBAAmB
|
|
1
|
+
{"version":3,"file":"validation-billing.d.ts","sourceRoot":"","sources":["../src/validation-billing.ts"],"names":[],"mappings":"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"}
|
|
@@ -80,9 +80,21 @@ export const invoiceListQuerySchema = z.object({
|
|
|
80
80
|
limit: z.coerce.number().int().min(1).max(100).default(50),
|
|
81
81
|
offset: z.coerce.number().int().min(0).default(0),
|
|
82
82
|
});
|
|
83
|
+
const invoiceDocumentWaitModeSchema = z.preprocess((value) => {
|
|
84
|
+
if (value === true || value === "true")
|
|
85
|
+
return "pdf";
|
|
86
|
+
if (value === false || value === "false")
|
|
87
|
+
return "none";
|
|
88
|
+
return value;
|
|
89
|
+
}, z.enum(["none", "pdf", "any"]));
|
|
90
|
+
const invoiceDocumentWaitFieldsSchema = z.object({
|
|
91
|
+
wait: invoiceDocumentWaitModeSchema.optional(),
|
|
92
|
+
waitTimeoutMs: z.coerce.number().int().min(0).max(60_000).optional(),
|
|
93
|
+
});
|
|
83
94
|
export const invoiceFromBookingSchema = z.object({
|
|
84
95
|
bookingId: z.string().min(1),
|
|
85
|
-
invoiceNumber: z.string().min(1).max(50),
|
|
96
|
+
invoiceNumber: z.string().min(1).max(50).optional(),
|
|
97
|
+
seriesId: z.string().min(1).optional(),
|
|
86
98
|
issueDate: z.string().min(1),
|
|
87
99
|
dueDate: z.string().min(1),
|
|
88
100
|
notes: z.string().optional().nullable(),
|
|
@@ -92,6 +104,8 @@ export const invoiceFromBookingSchema = z.object({
|
|
|
92
104
|
* payment lands and a real invoice replaces it.
|
|
93
105
|
*/
|
|
94
106
|
invoiceType: z.enum(["invoice", "proforma"]).default("invoice"),
|
|
107
|
+
wait: invoiceDocumentWaitModeSchema.optional(),
|
|
108
|
+
waitTimeoutMs: z.coerce.number().int().min(0).max(60_000).optional(),
|
|
95
109
|
});
|
|
96
110
|
const lineItemCoreSchema = z.object({
|
|
97
111
|
bookingItemId: z.string().optional().nullable(),
|
|
@@ -147,6 +161,9 @@ const invoiceNumberSeriesCoreSchema = z.object({
|
|
|
147
161
|
resetStrategy: invoiceNumberResetStrategySchema.default("never"),
|
|
148
162
|
resetAt: z.string().optional().nullable(),
|
|
149
163
|
scope: invoiceNumberSeriesScopeSchema.default("invoice"),
|
|
164
|
+
isDefault: z.boolean().default(false),
|
|
165
|
+
externalProvider: z.string().min(1).max(100).optional().nullable(),
|
|
166
|
+
externalConfigKey: z.string().min(1).max(100).optional().nullable(),
|
|
150
167
|
active: z.boolean().default(true),
|
|
151
168
|
});
|
|
152
169
|
export const insertInvoiceNumberSeriesSchema = invoiceNumberSeriesCoreSchema;
|
|
@@ -333,10 +350,13 @@ export const renderInvoiceInputSchema = z.object({
|
|
|
333
350
|
templateId: z.string().optional().nullable(),
|
|
334
351
|
format: invoiceRenditionFormatSchema.default("pdf"),
|
|
335
352
|
language: z.string().optional().nullable(),
|
|
353
|
+
wait: invoiceDocumentWaitModeSchema.optional(),
|
|
354
|
+
waitTimeoutMs: z.coerce.number().int().min(0).max(60_000).optional(),
|
|
336
355
|
});
|
|
337
356
|
export const generateInvoiceDocumentInputSchema = renderInvoiceInputSchema.extend({
|
|
338
357
|
replaceExisting: z.boolean().default(true),
|
|
339
358
|
});
|
|
359
|
+
export const invoiceDocumentWaitQuerySchema = invoiceDocumentWaitFieldsSchema;
|
|
340
360
|
export const generatedInvoiceDocumentResultSchema = z.object({
|
|
341
361
|
invoiceId: z.string(),
|
|
342
362
|
renderedBodyFormat: invoiceTemplateBodyFormatSchema,
|
|
@@ -269,6 +269,7 @@ export declare const publicFinanceBookingDocumentSchema: z.ZodObject<{
|
|
|
269
269
|
}>;
|
|
270
270
|
invoiceStatus: z.ZodEnum<{
|
|
271
271
|
draft: "draft";
|
|
272
|
+
pending_external_allocation: "pending_external_allocation";
|
|
272
273
|
sent: "sent";
|
|
273
274
|
partially_paid: "partially_paid";
|
|
274
275
|
paid: "paid";
|
|
@@ -313,6 +314,7 @@ export declare const publicBookingFinanceDocumentsSchema: z.ZodObject<{
|
|
|
313
314
|
}>;
|
|
314
315
|
invoiceStatus: z.ZodEnum<{
|
|
315
316
|
draft: "draft";
|
|
317
|
+
pending_external_allocation: "pending_external_allocation";
|
|
316
318
|
sent: "sent";
|
|
317
319
|
partially_paid: "partially_paid";
|
|
318
320
|
paid: "paid";
|
|
@@ -356,6 +358,7 @@ export declare const publicFinanceDocumentLookupSchema: z.ZodObject<{
|
|
|
356
358
|
}>;
|
|
357
359
|
invoiceStatus: z.ZodEnum<{
|
|
358
360
|
draft: "draft";
|
|
361
|
+
pending_external_allocation: "pending_external_allocation";
|
|
359
362
|
sent: "sent";
|
|
360
363
|
partially_paid: "partially_paid";
|
|
361
364
|
paid: "paid";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation-public.d.ts","sourceRoot":"","sources":["../src/validation-public.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAYvB,eAAO,MAAM,8BAA8B;;;;EAAiD,CAAA;AAC5F,eAAO,MAAM,uCAAuC;;;;;;EAMlD,CAAA;AACF,eAAO,MAAM,iCAAiC;;;;;EAAyC,CAAA;AAEvF,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;iBAM1C,CAAA;AAEF,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAkB1C,CAAA;AAEF,eAAO,MAAM,2BAA2B;;;;;;iBAMtC,CAAA;AAEF,eAAO,MAAM,sCAAsC;;iBAEjD,CAAA;AAEF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;iBAWrC,CAAA;AAEF,eAAO,MAAM,kCAAkC;;;;;;;;;;;;;;;;;;;;;iBAQ7C,CAAA;AAEF,eAAO,MAAM,4BAA4B;;;;;;;;;;;iBAWvC,CAAA;AAEF,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAW5C,CAAA;AAEF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAiCrC,CAAA;AAEF,eAAO,MAAM,kCAAkC
|
|
1
|
+
{"version":3,"file":"validation-public.d.ts","sourceRoot":"","sources":["../src/validation-public.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAYvB,eAAO,MAAM,8BAA8B;;;;EAAiD,CAAA;AAC5F,eAAO,MAAM,uCAAuC;;;;;;EAMlD,CAAA;AACF,eAAO,MAAM,iCAAiC;;;;;EAAyC,CAAA;AAEvF,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;iBAM1C,CAAA;AAEF,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAkB1C,CAAA;AAEF,eAAO,MAAM,2BAA2B;;;;;;iBAMtC,CAAA;AAEF,eAAO,MAAM,sCAAsC;;iBAEjD,CAAA;AAEF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;iBAWrC,CAAA;AAEF,eAAO,MAAM,kCAAkC;;;;;;;;;;;;;;;;;;;;;iBAQ7C,CAAA;AAEF,eAAO,MAAM,4BAA4B;;;;;;;;;;;iBAWvC,CAAA;AAEF,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAW5C,CAAA;AAEF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAiCrC,CAAA;AAEF,eAAO,MAAM,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA2B7C,CAAA;AAEF,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAG9C,CAAA;AAEF,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAE5C,CAAA;AAEF,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAY5C,CAAA;AAEF,eAAO,MAAM,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAG7C,CAAA;AAEF,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;iBA4BxC,CAAA;AAEF,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAA;AACvF,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAA;AAC3F,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAA;AAC7E,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kCAAkC,CAAC,CAAA;AAC7F,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mCAAmC,CAAC,CAAA;AAC/F,MAAM,MAAM,gCAAgC,GAAG,CAAC,CAAC,KAAK,CACpD,OAAO,sCAAsC,CAC9C,CAAA;AACD,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAA;AAC3F,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAA;AAC3F,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kCAAkC,CAAC,CAAA;AAC7F,MAAM,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAA;AAC5F,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAA;AACpF,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAA"}
|
|
@@ -128,7 +128,15 @@ export const publicFinanceBookingDocumentSchema = z.object({
|
|
|
128
128
|
invoiceId: z.string(),
|
|
129
129
|
invoiceNumber: z.string(),
|
|
130
130
|
invoiceType: publicFinanceInvoiceTypeSchema,
|
|
131
|
-
invoiceStatus: z.enum([
|
|
131
|
+
invoiceStatus: z.enum([
|
|
132
|
+
"draft",
|
|
133
|
+
"pending_external_allocation",
|
|
134
|
+
"sent",
|
|
135
|
+
"partially_paid",
|
|
136
|
+
"paid",
|
|
137
|
+
"overdue",
|
|
138
|
+
"void",
|
|
139
|
+
]),
|
|
132
140
|
currency: z.string(),
|
|
133
141
|
totalCents: z.number().int(),
|
|
134
142
|
paidCents: z.number().int(),
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export declare const invoiceStatusSchema: z.ZodEnum<{
|
|
3
3
|
draft: "draft";
|
|
4
|
+
pending_external_allocation: "pending_external_allocation";
|
|
4
5
|
sent: "sent";
|
|
5
6
|
partially_paid: "partially_paid";
|
|
6
7
|
paid: "paid";
|
|
@@ -187,12 +188,13 @@ export declare const financeAggregatesQuerySchema: z.ZodObject<{
|
|
|
187
188
|
}>>>>>;
|
|
188
189
|
status: z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodOptional<z.ZodPipe<z.ZodArray<z.ZodUnion<readonly [z.ZodEnum<{
|
|
189
190
|
draft: "draft";
|
|
191
|
+
pending_external_allocation: "pending_external_allocation";
|
|
190
192
|
sent: "sent";
|
|
191
193
|
partially_paid: "partially_paid";
|
|
192
194
|
paid: "paid";
|
|
193
195
|
overdue: "overdue";
|
|
194
196
|
void: "void";
|
|
195
|
-
}>, z.ZodLiteral<"issued">]>>, z.ZodTransform<("draft" | "sent" | "partially_paid" | "paid" | "overdue" | "void")[], ("draft" | "sent" | "partially_paid" | "paid" | "overdue" | "void" | "issued")[]>>>>>;
|
|
197
|
+
}>, z.ZodLiteral<"issued">]>>, z.ZodTransform<("draft" | "pending_external_allocation" | "sent" | "partially_paid" | "paid" | "overdue" | "void")[], ("draft" | "pending_external_allocation" | "sent" | "partially_paid" | "paid" | "overdue" | "void" | "issued")[]>>>>>;
|
|
196
198
|
outstandingTopLimit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
|
|
197
199
|
}, z.core.$strip>;
|
|
198
200
|
//# sourceMappingURL=validation-shared.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation-shared.d.ts","sourceRoot":"","sources":["../src/validation-shared.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,eAAO,MAAM,mBAAmB
|
|
1
|
+
{"version":3,"file":"validation-shared.d.ts","sourceRoot":"","sources":["../src/validation-shared.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,eAAO,MAAM,mBAAmB;;;;;;;;EAQ9B,CAAA;AACF,eAAO,MAAM,mBAAmB;;;;;;;;;;EAU9B,CAAA;AACF,eAAO,MAAM,mBAAmB;;;;;EAAyD,CAAA;AACzF,eAAO,MAAM,0BAA0B;;;;;;;;;EASrC,CAAA;AACF,eAAO,MAAM,8BAA8B;;;;;;;;EAQzC,CAAA;AACF,eAAO,MAAM,2BAA2B;;;;;;;;;EAStC,CAAA;AACF,eAAO,MAAM,gCAAgC;;;;;;;EAO3C,CAAA;AACF,eAAO,MAAM,6BAA6B;;;;;;EAMxC,CAAA;AACF,eAAO,MAAM,gCAAgC;;;;;;;;EAQ3C,CAAA;AACF,eAAO,MAAM,0BAA0B;;;;;;EAMrC,CAAA;AACF,eAAO,MAAM,iBAAiB;;;EAAkC,CAAA;AAChE,eAAO,MAAM,sBAAsB;;;;EAAyC,CAAA;AAC5E,eAAO,MAAM,yBAAyB;;;;;;EAMpC,CAAA;AACF,eAAO,MAAM,2BAA2B;;;;;;;EAOtC,CAAA;AACF,eAAO,MAAM,mBAAmB;;;;;;;;;EAS9B,CAAA;AACF,eAAO,MAAM,qBAAqB;;;;;;;EAOhC,CAAA;AACF,eAAO,MAAM,cAAc;;;;EAA+C,CAAA;AAC1E,eAAO,MAAM,6BAA6B;;;;;;;;EAQxC,CAAA;AACF,eAAO,MAAM,qBAAqB;;;;;EAAmD,CAAA;AACrF,eAAO,MAAM,sBAAsB;;;;;;EAA4D,CAAA;AAE/F,eAAO,MAAM,gBAAgB;;;iBAG3B,CAAA;AAEF,eAAO,MAAM,mBAAmB;;;;;EAAoD,CAAA;AACpF,eAAO,MAAM,uBAAuB;;;;;;EAMlC,CAAA;AAEF,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;iBAwDvC,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@voyantjs/finance",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.76.0",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
@@ -59,14 +59,14 @@
|
|
|
59
59
|
"drizzle-orm": "^0.45.2",
|
|
60
60
|
"hono": "^4.12.10",
|
|
61
61
|
"zod": "^4.3.6",
|
|
62
|
-
"@voyantjs/action-ledger": "0.
|
|
63
|
-
"@voyantjs/bookings": "0.
|
|
64
|
-
"@voyantjs/core": "0.
|
|
65
|
-
"@voyantjs/db": "0.
|
|
66
|
-
"@voyantjs/hono": "0.
|
|
67
|
-
"@voyantjs/products": "0.
|
|
68
|
-
"@voyantjs/utils": "0.
|
|
69
|
-
"@voyantjs/storage": "0.
|
|
62
|
+
"@voyantjs/action-ledger": "0.76.0",
|
|
63
|
+
"@voyantjs/bookings": "0.76.0",
|
|
64
|
+
"@voyantjs/core": "0.76.0",
|
|
65
|
+
"@voyantjs/db": "0.76.0",
|
|
66
|
+
"@voyantjs/hono": "0.76.0",
|
|
67
|
+
"@voyantjs/products": "0.76.0",
|
|
68
|
+
"@voyantjs/utils": "0.76.0",
|
|
69
|
+
"@voyantjs/storage": "0.76.0"
|
|
70
70
|
},
|
|
71
71
|
"devDependencies": {
|
|
72
72
|
"typescript": "^6.0.2",
|