@voyantjs/plugin-smartbill 0.80.17 → 0.81.1

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/client.d.ts CHANGED
@@ -29,6 +29,8 @@ export interface SmartbillClientApi {
29
29
  createInvoice(body: SmartbillInvoiceBody): Promise<SmartbillInvoiceResponse>;
30
30
  /** Create a proforma invoice. */
31
31
  createProforma(body: SmartbillInvoiceBody): Promise<SmartbillInvoiceResponse>;
32
+ /** Create an invoice from an existing proforma estimate. */
33
+ convertEstimateToInvoice(companyVatCode: string, estimateSeriesName: string, estimateNumber: string, body: SmartbillInvoiceBody): Promise<SmartbillInvoiceResponse>;
32
34
  /** Cancel an invoice by series + number. Returns the live envelope. */
33
35
  cancelInvoice(companyVatCode: string, seriesName: string, number: string): Promise<SmartbillEnvelope>;
34
36
  /** Restore a previously cancelled invoice. */
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/client.js CHANGED
@@ -197,6 +197,18 @@ export function createSmartbillClient(options) {
197
197
  async function createProforma(body) {
198
198
  return request("createProforma", "POST", "/estimate", body);
199
199
  }
200
+ async function convertEstimateToInvoice(companyVatCode, estimateSeriesName, estimateNumber, body) {
201
+ return request("convertEstimateToInvoice", "POST", "/invoice", {
202
+ ...body,
203
+ companyVatCode,
204
+ useEstimateDetails: true,
205
+ estimate: {
206
+ seriesName: estimateSeriesName,
207
+ number: estimateNumber,
208
+ },
209
+ useStock: body.useStock ?? false,
210
+ });
211
+ }
200
212
  async function cancelInvoice(companyVatCode, seriesName, number) {
201
213
  return request("cancelInvoice", "PUT", "/invoice/cancel", {
202
214
  companyVatCode,
@@ -242,6 +254,7 @@ export function createSmartbillClient(options) {
242
254
  return {
243
255
  createInvoice,
244
256
  createProforma,
257
+ convertEstimateToInvoice,
245
258
  cancelInvoice,
246
259
  restoreInvoice,
247
260
  deleteInvoice,
@@ -1 +1 @@
1
- {"version":3,"file":"mock.d.ts","sourceRoot":"","sources":["../src/mock.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mock.d.ts","sourceRoot":"","sources":["../src/mock.ts"],"names":[],"mappings":"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"}
package/dist/mock.js CHANGED
@@ -50,7 +50,16 @@ export function createSmartbillMockServer(options = {}) {
50
50
  if (method === "GET" && path === "/series")
51
51
  return json(200, seriesEnvelope(listSeries()));
52
52
  if (method === "POST" && path === "/invoice") {
53
- return json(200, toCreateResponse(createDocument("invoice", parseBody(request.body))));
53
+ const body = parseBody(request.body);
54
+ if (body.useEstimateDetails === true && body.estimate) {
55
+ return json(200, convertEstimateToInvoice({
56
+ companyVatCode: body.companyVatCode,
57
+ seriesName: body.estimate.seriesName,
58
+ number: body.estimate.number,
59
+ invoiceSeriesName: body.seriesName,
60
+ }));
61
+ }
62
+ return json(200, toCreateResponse(createDocument("invoice", body)));
54
63
  }
55
64
  if (method === "POST" && path === "/estimate") {
56
65
  return json(200, toCreateResponse(createDocument("estimate", parseBody(request.body))));
package/dist/plugin.d.ts CHANGED
@@ -6,6 +6,7 @@ import type { SmartbillInvoiceBody, SmartbillInvoiceResponse, VoyantInvoiceEvent
6
6
  export interface SmartbillSyncEventNames {
7
7
  issued?: string;
8
8
  proformaIssued?: string;
9
+ proformaConverted?: string;
9
10
  voided?: string;
10
11
  syncRequested?: string;
11
12
  }
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAc,MAAM,gBAAgB,CAAA;AAIxD,OAAO,KAAK,EAAE,mCAAmC,EAAE,MAAM,gBAAgB,CAAA;AACzE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AACzD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAA;AAG3D,OAAO,KAAK,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAGpG,MAAM,WAAW,uBAAuB;IACtC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,KAAK,IAAI,CAAA;IAChD,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,KAAK,IAAI,CAAA;CACjD;AAED,MAAM,MAAM,cAAc,GAAG,CAC3B,KAAK,EAAE,kBAAkB,KACtB,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAA;AAEzD,MAAM,WAAW,2BAA2B;IAC1C;;;;OAIG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAA;CAClC;AAED,MAAM,MAAM,qBAAqB,GAAG,CAClC,KAAK,EAAE,kBAAkB,EACzB,KAAK,EAAE,OAAO,KACX,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;AAEzB,MAAM,MAAM,wCAAwC,GAAG,CACrD,KAAK,EAAE,kBAAkB,EACzB,MAAM,EAAE,wBAAwB,KAC7B,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;AAE7B,MAAM,WAAW,sBAAuB,SAAQ,sBAAsB,EAAE,uBAAuB;IAC7F,MAAM,CAAC,EAAE,uBAAuB,CAAA;IAChC,QAAQ,CAAC,EAAE,cAAc,CAAA;IACzB,MAAM,CAAC,EAAE,eAAe,CAAA;IACxB,WAAW,CAAC,EAAE,2BAA2B,CAAA;IACzC,OAAO,CAAC,EAAE,qBAAqB,CAAA;IAC/B;;;;OAIG;IACH,sBAAsB,CAAC,EAAE,OAAO,GAAG,wCAAwC,CAAA;IAC3E;;;;;OAKG;IACH,SAAS,CAAC,EAAE,mCAAmC,CAAA;IAC/C,sCAAsC;IACtC,EAAE,CAAC,EAAE,mCAAmC,CAAC,IAAI,CAAC,CAAA;IAC9C,mDAAmD;IACnD,eAAe,CAAC,EAAE,mCAAmC,CAAC,iBAAiB,CAAC,CAAA;IACxE,4DAA4D;IAC5D,wBAAwB,CAAC,EAAE,mCAAmC,CAAC,0BAA0B,CAAC,CAAA;CAC3F;AAmBD,wBAAgB,eAAe,CAAC,OAAO,EAAE,sBAAsB,GAAG,MAAM,CA0JvE"}
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAc,MAAM,gBAAgB,CAAA;AAIxD,OAAO,KAAK,EAAE,mCAAmC,EAAE,MAAM,gBAAgB,CAAA;AACzE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AACzD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAA;AAG3D,OAAO,KAAK,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAGpG,MAAM,WAAW,uBAAuB;IACtC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,KAAK,IAAI,CAAA;IAChD,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,KAAK,IAAI,CAAA;CACjD;AAED,MAAM,MAAM,cAAc,GAAG,CAC3B,KAAK,EAAE,kBAAkB,KACtB,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAA;AAEzD,MAAM,WAAW,2BAA2B;IAC1C;;;;OAIG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAA;CAClC;AAED,MAAM,MAAM,qBAAqB,GAAG,CAClC,KAAK,EAAE,kBAAkB,EACzB,KAAK,EAAE,OAAO,KACX,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;AAEzB,MAAM,MAAM,wCAAwC,GAAG,CACrD,KAAK,EAAE,kBAAkB,EACzB,MAAM,EAAE,wBAAwB,KAC7B,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;AAE7B,MAAM,WAAW,sBAAuB,SAAQ,sBAAsB,EAAE,uBAAuB;IAC7F,MAAM,CAAC,EAAE,uBAAuB,CAAA;IAChC,QAAQ,CAAC,EAAE,cAAc,CAAA;IACzB,MAAM,CAAC,EAAE,eAAe,CAAA;IACxB,WAAW,CAAC,EAAE,2BAA2B,CAAA;IACzC,OAAO,CAAC,EAAE,qBAAqB,CAAA;IAC/B;;;;OAIG;IACH,sBAAsB,CAAC,EAAE,OAAO,GAAG,wCAAwC,CAAA;IAC3E;;;;;OAKG;IACH,SAAS,CAAC,EAAE,mCAAmC,CAAA;IAC/C,sCAAsC;IACtC,EAAE,CAAC,EAAE,mCAAmC,CAAC,IAAI,CAAC,CAAA;IAC9C,mDAAmD;IACnD,eAAe,CAAC,EAAE,mCAAmC,CAAC,iBAAiB,CAAC,CAAA;IACxE,4DAA4D;IAC5D,wBAAwB,CAAC,EAAE,mCAAmC,CAAC,0BAA0B,CAAC,CAAA;CAC3F;AAmBD,wBAAgB,eAAe,CAAC,OAAO,EAAE,sBAAsB,GAAG,MAAM,CAgLvE"}
package/dist/plugin.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { financeService } from "@voyantjs/finance";
2
2
  import { createSmartbillSyncRuntime } from "./runtime.js";
3
- import { syncSmartbillInvoiceEvent } from "./sync.js";
3
+ import { syncSmartbillInvoiceEvent, syncSmartbillProformaConversion } from "./sync.js";
4
4
  import { parseSmartbillPluginOptions } from "./validation.js";
5
5
  function resolveStaticArtifactDb(db) {
6
6
  if (!db || typeof db === "function")
@@ -66,6 +66,10 @@ export function smartbillPlugin(options) {
66
66
  const event = coerceEvent(envelope.data);
67
67
  if (!event)
68
68
  return;
69
+ if (typeof event.convertedFromInvoiceId === "string" && event.convertedFromInvoiceId) {
70
+ logger.info?.(`[smartbill] skipping invoice create for converted proforma ${event.id}; waiting for "${eventNames.proformaConverted}"`);
71
+ return;
72
+ }
69
73
  try {
70
74
  await syncSmartbillInvoiceEvent({
71
75
  event,
@@ -100,6 +104,24 @@ export function smartbillPlugin(options) {
100
104
  }
101
105
  },
102
106
  },
107
+ {
108
+ event: eventNames.proformaConverted,
109
+ handler: async (envelope) => {
110
+ const event = coerceEvent(envelope.data);
111
+ if (!event)
112
+ return;
113
+ try {
114
+ await syncSmartbillProformaConversion({
115
+ event,
116
+ runtime,
117
+ pluginOptions: validatedOptions,
118
+ });
119
+ }
120
+ catch {
121
+ // `syncSmartbillProformaConversion` logs and records retryable state.
122
+ }
123
+ },
124
+ },
103
125
  {
104
126
  event: eventNames.voided,
105
127
  handler: async (envelope) => {
package/dist/runtime.d.ts CHANGED
@@ -4,6 +4,7 @@ import type { SmartbillLogger, SmartbillMapFn, SmartbillPluginOptions } from "./
4
4
  export interface ResolvedSmartbillSyncEventNames {
5
5
  issued: string;
6
6
  proformaIssued: string;
7
+ proformaConverted: string;
7
8
  voided: string;
8
9
  syncRequested: string;
9
10
  }
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mCAAmC,EAAE,MAAM,gBAAgB,CAAA;AACzE,OAAO,EAAE,qBAAqB,EAAE,KAAK,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAE5E,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AAG1F,MAAM,WAAW,+BAA+B;IAC9C,MAAM,EAAE,MAAM,CAAA;IACd,cAAc,EAAE,MAAM,CAAA;IACtB,MAAM,EAAE,MAAM,CAAA;IACd,aAAa,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAA;IAChD,MAAM,EAAE,eAAe,CAAA;IACvB,QAAQ,EAAE,cAAc,CAAA;IACxB,UAAU,EAAE,+BAA+B,CAAA;IAC3C,SAAS,EAAE,mCAAmC,CAAA;IAC9C,WAAW,EAAE,WAAW,CAAC,sBAAsB,CAAC,aAAa,CAAC,CAAC,CAAA;IAC/D,OAAO,EAAE,sBAAsB,CAAC,SAAS,CAAC,CAAA;IAC1C,sBAAsB,EAAE,sBAAsB,CAAC,wBAAwB,CAAC,CAAA;CACzE;AAED,MAAM,WAAW,6BAA6B;IAC5C,MAAM,CAAC,EAAE,kBAAkB,CAAA;CAC5B;AAED,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,sBAAsB,EAC/B,SAAS,GAAE,6BAAkC,GAC5C,oBAAoB,CAyCtB"}
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mCAAmC,EAAE,MAAM,gBAAgB,CAAA;AACzE,OAAO,EAAE,qBAAqB,EAAE,KAAK,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAE5E,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AAG1F,MAAM,WAAW,+BAA+B;IAC9C,MAAM,EAAE,MAAM,CAAA;IACd,cAAc,EAAE,MAAM,CAAA;IACtB,iBAAiB,EAAE,MAAM,CAAA;IACzB,MAAM,EAAE,MAAM,CAAA;IACd,aAAa,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAA;IAChD,MAAM,EAAE,eAAe,CAAA;IACvB,QAAQ,EAAE,cAAc,CAAA;IACxB,UAAU,EAAE,+BAA+B,CAAA;IAC3C,SAAS,EAAE,mCAAmC,CAAA;IAC9C,WAAW,EAAE,WAAW,CAAC,sBAAsB,CAAC,aAAa,CAAC,CAAC,CAAA;IAC/D,OAAO,EAAE,sBAAsB,CAAC,SAAS,CAAC,CAAA;IAC1C,sBAAsB,EAAE,sBAAsB,CAAC,wBAAwB,CAAC,CAAA;CACzE;AAED,MAAM,WAAW,6BAA6B;IAC5C,MAAM,CAAC,EAAE,kBAAkB,CAAA;CAC5B;AAED,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,sBAAsB,EAC/B,SAAS,GAAE,6BAAkC,GAC5C,oBAAoB,CA0CtB"}
package/dist/runtime.js CHANGED
@@ -19,6 +19,7 @@ export function createSmartbillSyncRuntime(options, overrides = {}) {
19
19
  const eventNames = {
20
20
  issued: options.events?.issued ?? "invoice.issued",
21
21
  proformaIssued: options.events?.proformaIssued ?? "invoice.proforma.issued",
22
+ proformaConverted: options.events?.proformaConverted ?? "invoice.proforma.converted",
22
23
  voided: options.events?.voided ?? "invoice.voided",
23
24
  syncRequested: options.events?.syncRequested ?? "invoice.external.sync.requested",
24
25
  };
package/dist/sync.d.ts CHANGED
@@ -19,6 +19,14 @@ export interface SyncSmartbillInvoiceEventInput {
19
19
  pluginOptions: Pick<SmartbillPluginOptions, "companyVatCode" | "seriesName">;
20
20
  operationLabel?: string;
21
21
  }
22
+ export interface SyncSmartbillProformaConversionInput {
23
+ event: VoyantInvoiceEvent & {
24
+ proformaId?: unknown;
25
+ proformaInvoiceNumber?: unknown;
26
+ };
27
+ runtime: SmartbillSyncRuntime;
28
+ pluginOptions: Pick<SmartbillPluginOptions, "companyVatCode" | "seriesName">;
29
+ }
22
30
  export type SyncSmartbillInvoiceResult = {
23
31
  status: "not_found";
24
32
  invoiceId: string;
@@ -40,6 +48,8 @@ export type SyncSmartbillInvoiceEventResult = {
40
48
  result: SmartbillInvoiceResponse;
41
49
  artifact: Awaited<ReturnType<typeof persistSmartbillInvoiceArtifact>> | null;
42
50
  };
51
+ export type SyncSmartbillProformaConversionResult = SyncSmartbillInvoiceEventResult;
43
52
  export declare function syncSmartbillInvoice({ db, invoiceId, pluginOptions, client, issueRuntime, }: SyncSmartbillInvoiceInput): Promise<SyncSmartbillInvoiceResult>;
44
53
  export declare function syncSmartbillInvoiceEvent({ event, documentType, runtime, pluginOptions, operationLabel, }: SyncSmartbillInvoiceEventInput): Promise<SyncSmartbillInvoiceEventResult>;
54
+ export declare function syncSmartbillProformaConversion({ event, runtime, pluginOptions, }: SyncSmartbillProformaConversionInput): Promise<SyncSmartbillProformaConversionResult>;
45
55
  //# sourceMappingURL=sync.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../src/sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,mBAAmB,EACzB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAEjE,OAAO,EAEL,+BAA+B,EAE/B,6BAA6B,EAE7B,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,EAC1B,MAAM,gBAAgB,CAAA;AACvB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AACrD,OAAO,KAAK,EAGV,sBAAsB,EACvB,MAAM,aAAa,CAAA;AACpB,OAAO,EAA8B,KAAK,oBAAoB,EAAE,MAAM,cAAc,CAAA;AACpF,OAAO,KAAK,EAAwB,wBAAwB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAGpG,MAAM,WAAW,yBAAyB;IACxC,EAAE,EAAE,kBAAkB,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,sBAAsB,CAAA;IACrC,MAAM,CAAC,EAAE,kBAAkB,CAAA;IAC3B,YAAY,CAAC,EAAE,IAAI,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAA;CACrD;AAED,MAAM,WAAW,8BAA8B;IAC7C,KAAK,EAAE,kBAAkB,CAAA;IACzB,YAAY,EAAE,qBAAqB,CAAA;IACnC,OAAO,EAAE,oBAAoB,CAAA;IAC7B,aAAa,EAAE,IAAI,CAAC,sBAAsB,EAAE,gBAAgB,GAAG,YAAY,CAAC,CAAA;IAC5E,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAED,MAAM,MAAM,0BAA0B,GAClC;IACE,MAAM,EAAE,WAAW,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;CAClB,GACD;IACE,MAAM,EAAE,2BAA2B,CAAA;IACnC,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;CACpB,GACD,+BAA+B,CAAA;AAEnC,MAAM,MAAM,+BAA+B,GACvC;IACE,MAAM,EAAE,cAAc,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,YAAY,EAAE,qBAAqB,CAAA;IACnC,WAAW,EAAE,oBAAoB,CAAA;IACjC,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,6BAA6B,CAAC,CAAC,GAAG,IAAI,CAAA;CAC3E,GACD;IACE,MAAM,EAAE,SAAS,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,YAAY,EAAE,qBAAqB,CAAA;IACnC,MAAM,EAAE,wBAAwB,CAAA;IAChC,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,+BAA+B,CAAC,CAAC,GAAG,IAAI,CAAA;CAC7E,CAAA;AAEL,wBAAsB,oBAAoB,CAAC,EACzC,EAAE,EACF,SAAS,EACT,aAAa,EACb,MAAM,EACN,YAAY,GACb,EAAE,yBAAyB,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAqBjE;AAED,wBAAsB,yBAAyB,CAAC,EAC9C,KAAK,EACL,YAAY,EACZ,OAAO,EACP,aAAa,EACb,cAAiF,GAClF,EAAE,8BAA8B,GAAG,OAAO,CAAC,+BAA+B,CAAC,CAyB3E"}
1
+ {"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../src/sync.ts"],"names":[],"mappings":"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"}
package/dist/sync.js CHANGED
@@ -44,6 +44,60 @@ export async function syncSmartbillInvoiceEvent({ event, documentType, runtime,
44
44
  throw err;
45
45
  }
46
46
  }
47
+ export async function syncSmartbillProformaConversion({ event, runtime, pluginOptions, }) {
48
+ const proformaId = typeof event.proformaId === "string" ? event.proformaId : null;
49
+ const body = await runtime.mapEvent(event);
50
+ const existingRef = await findExistingSmartbillRef(event, "invoice", body, runtime);
51
+ if (existingRef) {
52
+ return handleExistingSmartbillRef(event, "invoice", body, existingRef, runtime);
53
+ }
54
+ if (!proformaId) {
55
+ return fallbackToSmartbillInvoiceCreate(event, runtime, pluginOptions, "missing proforma id");
56
+ }
57
+ const db = await resolveArtifactDb(event, "invoice", body, undefined, runtime, pluginOptions);
58
+ if (!db) {
59
+ return fallbackToSmartbillInvoiceCreate(event, runtime, pluginOptions, "missing artifact database");
60
+ }
61
+ const proformaRef = await findProformaSmartbillRef(db, proformaId);
62
+ if (!proformaRef) {
63
+ return fallbackToSmartbillInvoiceCreate(event, runtime, pluginOptions, `missing SmartBill proforma reference for ${proformaId}`);
64
+ }
65
+ try {
66
+ const result = await runtime.client.convertEstimateToInvoice(body.companyVatCode, proformaRef.seriesName, proformaRef.number, body);
67
+ runtime.logger.info?.(`[smartbill] proforma converted: ${proformaRef.seriesName}-${proformaRef.number} -> ${result.series}-${result.number} for ${event.id}`, result);
68
+ const artifact = await persistArtifact(event, "invoice", body, result, runtime);
69
+ await writeBackInvoiceNumberIfRequired(event, "invoice", body, result, runtime);
70
+ await applyExternalAllocationIfRequired(event, "invoice", body, result, runtime);
71
+ return { status: "created", invoiceId: event.id, documentType: "invoice", result, artifact };
72
+ }
73
+ catch (err) {
74
+ runtime.logger.error(`[smartbill] convertEstimateToInvoice failed for ${event.id}`, err);
75
+ await recordSyncError(event, "invoice", err, runtime, pluginOptions);
76
+ throw err;
77
+ }
78
+ }
79
+ function fallbackToSmartbillInvoiceCreate(event, runtime, pluginOptions, reason) {
80
+ runtime.logger.info?.(`[smartbill] cannot convert proforma for ${event.id}: ${reason}; falling back to createInvoice`);
81
+ return syncSmartbillInvoiceEvent({
82
+ event,
83
+ documentType: "invoice",
84
+ runtime,
85
+ pluginOptions,
86
+ operationLabel: `createInvoice fallback after proforma conversion (${reason})`,
87
+ });
88
+ }
89
+ async function findProformaSmartbillRef(db, proformaId) {
90
+ const refs = await financeService.listInvoiceExternalRefs(db, proformaId);
91
+ const ref = refs.find((candidate) => isMatchingSmartbillRef(candidate, "proforma"));
92
+ if (!ref)
93
+ return null;
94
+ const metadata = coerceMetadata(ref.metadata);
95
+ const seriesName = metadataString(metadata, "series") ??
96
+ metadataString(metadata, "seriesName") ??
97
+ metadataString(metadata, "estimateSeriesName");
98
+ const number = metadataString(metadata, "number") ?? ref.externalNumber ?? ref.externalId ?? null;
99
+ return seriesName && number ? { ref, seriesName, number } : null;
100
+ }
47
101
  async function findExistingSmartbillRef(event, documentType, body, runtime) {
48
102
  if (runtime.idempotency.skipExistingExternalRef === false)
49
103
  return null;
package/dist/types.d.ts CHANGED
@@ -66,6 +66,11 @@ export interface SmartbillInvoiceBody {
66
66
  exchangeRate?: number;
67
67
  mentions?: string;
68
68
  observations?: string;
69
+ estimate?: {
70
+ seriesName: string;
71
+ number: string;
72
+ };
73
+ useStock?: boolean;
69
74
  products: SmartbillProduct[];
70
75
  usePaymentTax?: boolean;
71
76
  payment?: {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../src/validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,CAAC,EAAE,MAAM,KAAK,CAAA;AACjC,OAAO,KAAK,EACV,mCAAmC,EACnC,mBAAmB,EACnB,gCAAgC,EAChC,iCAAiC,EAClC,MAAM,gBAAgB,CAAA;AAGvB,OAAO,KAAK,EACV,qBAAqB,EACrB,2BAA2B,EAC3B,wCAAwC,EACxC,eAAe,EACf,cAAc,EACd,sBAAsB,EACtB,uBAAuB,EACxB,MAAM,aAAa,CAAA;AACpB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AA0HhD,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAyBK,CAAA;AAE9C,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,sBAAsB,GAC9B,sBAAsB,CAexB"}
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../src/validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,CAAC,EAAE,MAAM,KAAK,CAAA;AACjC,OAAO,KAAK,EACV,mCAAmC,EACnC,mBAAmB,EACnB,gCAAgC,EAChC,iCAAiC,EAClC,MAAM,gBAAgB,CAAA;AAGvB,OAAO,KAAK,EACV,qBAAqB,EACrB,2BAA2B,EAC3B,wCAAwC,EACxC,eAAe,EACf,cAAc,EACd,sBAAsB,EACtB,uBAAuB,EACxB,MAAM,aAAa,CAAA;AACpB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AA8HhD,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAyBK,CAAA;AAE9C,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,sBAAsB,GAC9B,sBAAsB,CAexB"}
@@ -56,7 +56,13 @@ const optionalEvents = z.custom((value) => {
56
56
  if (typeof value !== "object" || value === null)
57
57
  return false;
58
58
  const events = value;
59
- return [events.issued, events.proformaIssued, events.voided, events.syncRequested].every((entry) => entry === undefined || (typeof entry === "string" && entry.trim().length > 0));
59
+ return [
60
+ events.issued,
61
+ events.proformaIssued,
62
+ events.proformaConverted,
63
+ events.voided,
64
+ events.syncRequested,
65
+ ].every((entry) => entry === undefined || (typeof entry === "string" && entry.trim().length > 0));
60
66
  }, "Expected event names to be non-empty strings");
61
67
  const optionalIdempotency = z.custom((value) => {
62
68
  if (value === undefined)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@voyantjs/plugin-smartbill",
3
- "version": "0.80.17",
3
+ "version": "0.81.1",
4
4
  "license": "Apache-2.0",
5
5
  "type": "module",
6
6
  "exports": {
@@ -59,18 +59,18 @@
59
59
  "drizzle-orm": "^0.45.2",
60
60
  "hono": "^4.12.10",
61
61
  "zod": "^4.3.6",
62
- "@voyantjs/core": "0.80.17",
63
- "@voyantjs/finance": "0.80.17",
64
- "@voyantjs/hono": "0.80.17",
65
- "@voyantjs/storage": "0.80.17"
62
+ "@voyantjs/core": "0.81.1",
63
+ "@voyantjs/finance": "0.81.1",
64
+ "@voyantjs/hono": "0.81.1",
65
+ "@voyantjs/storage": "0.81.1"
66
66
  },
67
67
  "peerDependencies": {
68
68
  "@tanstack/react-query": "^5.0.0",
69
69
  "lucide-react": "^0.475.0",
70
70
  "react": "^19.0.0",
71
71
  "react-dom": "^19.0.0",
72
- "@voyantjs/finance-react": "0.80.17",
73
- "@voyantjs/ui": "0.80.17"
72
+ "@voyantjs/finance-react": "0.81.1",
73
+ "@voyantjs/ui": "0.81.1"
74
74
  },
75
75
  "peerDependenciesMeta": {
76
76
  "@tanstack/react-query": {
@@ -101,8 +101,8 @@
101
101
  "react-dom": "^19.2.4",
102
102
  "typescript": "^6.0.2",
103
103
  "vitest": "^4.1.2",
104
- "@voyantjs/finance-react": "0.80.17",
105
- "@voyantjs/ui": "0.80.17",
104
+ "@voyantjs/finance-react": "0.81.1",
105
+ "@voyantjs/ui": "0.81.1",
106
106
  "@voyantjs/voyant-typescript-config": "0.1.0"
107
107
  },
108
108
  "files": [