@endora-commerce/mod-invoices 0.105.0 → 0.107.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.
Files changed (144) hide show
  1. package/README.md +7 -8
  2. package/dist/admin/components/InvoiceSectionTabs.d.ts +8 -0
  3. package/dist/admin/components/InvoiceSectionTabs.d.ts.map +1 -1
  4. package/dist/admin/components/InvoiceSectionTabs.js +13 -2
  5. package/dist/admin/components/InvoiceSectionTabs.js.map +1 -1
  6. package/dist/admin/document-blocks/InvoiceDivider.d.ts +5 -0
  7. package/dist/admin/document-blocks/InvoiceDivider.d.ts.map +1 -0
  8. package/dist/admin/document-blocks/InvoiceDivider.js +5 -0
  9. package/dist/admin/document-blocks/InvoiceDivider.js.map +1 -0
  10. package/dist/admin/document-blocks/InvoiceFooter.d.ts +5 -0
  11. package/dist/admin/document-blocks/InvoiceFooter.d.ts.map +1 -0
  12. package/dist/admin/document-blocks/InvoiceFooter.js +5 -0
  13. package/dist/admin/document-blocks/InvoiceFooter.js.map +1 -0
  14. package/dist/admin/document-blocks/InvoiceHeader.d.ts +5 -0
  15. package/dist/admin/document-blocks/InvoiceHeader.d.ts.map +1 -0
  16. package/dist/admin/document-blocks/InvoiceHeader.js +5 -0
  17. package/dist/admin/document-blocks/InvoiceHeader.js.map +1 -0
  18. package/dist/admin/document-blocks/InvoiceLineItems.d.ts +5 -0
  19. package/dist/admin/document-blocks/InvoiceLineItems.d.ts.map +1 -0
  20. package/dist/admin/document-blocks/InvoiceLineItems.js +5 -0
  21. package/dist/admin/document-blocks/InvoiceLineItems.js.map +1 -0
  22. package/dist/admin/document-blocks/InvoiceLogo.d.ts +5 -0
  23. package/dist/admin/document-blocks/InvoiceLogo.d.ts.map +1 -0
  24. package/dist/admin/document-blocks/InvoiceLogo.js +5 -0
  25. package/dist/admin/document-blocks/InvoiceLogo.js.map +1 -0
  26. package/dist/admin/document-blocks/InvoiceNotes.d.ts +5 -0
  27. package/dist/admin/document-blocks/InvoiceNotes.d.ts.map +1 -0
  28. package/dist/admin/document-blocks/InvoiceNotes.js +5 -0
  29. package/dist/admin/document-blocks/InvoiceNotes.js.map +1 -0
  30. package/dist/admin/document-blocks/InvoiceParties.d.ts +5 -0
  31. package/dist/admin/document-blocks/InvoiceParties.d.ts.map +1 -0
  32. package/dist/admin/document-blocks/InvoiceParties.js +5 -0
  33. package/dist/admin/document-blocks/InvoiceParties.js.map +1 -0
  34. package/dist/admin/document-blocks/InvoiceSpacer.d.ts +5 -0
  35. package/dist/admin/document-blocks/InvoiceSpacer.d.ts.map +1 -0
  36. package/dist/admin/document-blocks/InvoiceSpacer.js +5 -0
  37. package/dist/admin/document-blocks/InvoiceSpacer.js.map +1 -0
  38. package/dist/admin/document-blocks/InvoiceTotals.d.ts +5 -0
  39. package/dist/admin/document-blocks/InvoiceTotals.d.ts.map +1 -0
  40. package/dist/admin/document-blocks/InvoiceTotals.js +5 -0
  41. package/dist/admin/document-blocks/InvoiceTotals.js.map +1 -0
  42. package/dist/admin/document-blocks/InvoiceVatSummary.d.ts +5 -0
  43. package/dist/admin/document-blocks/InvoiceVatSummary.d.ts.map +1 -0
  44. package/dist/admin/document-blocks/InvoiceVatSummary.js +5 -0
  45. package/dist/admin/document-blocks/InvoiceVatSummary.js.map +1 -0
  46. package/dist/admin/index.d.ts +3 -1
  47. package/dist/admin/index.d.ts.map +1 -1
  48. package/dist/admin/index.js +62 -2
  49. package/dist/admin/index.js.map +1 -1
  50. package/dist/admin/pages/InvoiceTemplatesRedirect.d.ts +10 -0
  51. package/dist/admin/pages/InvoiceTemplatesRedirect.d.ts.map +1 -0
  52. package/dist/admin/pages/InvoiceTemplatesRedirect.js +14 -0
  53. package/dist/admin/pages/InvoiceTemplatesRedirect.js.map +1 -0
  54. package/dist/admin/templates/invoice-puck-config.d.ts +7 -21
  55. package/dist/admin/templates/invoice-puck-config.d.ts.map +1 -1
  56. package/dist/admin/templates/invoice-puck-config.js +7 -26
  57. package/dist/admin/templates/invoice-puck-config.js.map +1 -1
  58. package/dist/backend/document/block-descriptions.d.ts +22 -0
  59. package/dist/backend/document/block-descriptions.d.ts.map +1 -0
  60. package/dist/backend/{pdf-components/descriptor.js → document/block-descriptions.js} +8 -24
  61. package/dist/backend/document/block-descriptions.js.map +1 -0
  62. package/dist/backend/document/document-templates-grant.d.ts +29 -0
  63. package/dist/backend/document/document-templates-grant.d.ts.map +1 -0
  64. package/dist/backend/document/document-templates-grant.js +45 -0
  65. package/dist/backend/document/document-templates-grant.js.map +1 -0
  66. package/dist/backend/document/invoice-document-type.d.ts +38 -0
  67. package/dist/backend/document/invoice-document-type.d.ts.map +1 -0
  68. package/dist/backend/document/invoice-document-type.js +108 -0
  69. package/dist/backend/document/invoice-document-type.js.map +1 -0
  70. package/dist/backend/document/render-invoice.d.ts +14 -0
  71. package/dist/backend/document/render-invoice.d.ts.map +1 -0
  72. package/dist/backend/document/render-invoice.js +24 -0
  73. package/dist/backend/document/render-invoice.js.map +1 -0
  74. package/dist/backend/index.d.ts +1 -3
  75. package/dist/backend/index.d.ts.map +1 -1
  76. package/dist/backend/index.js +48 -6
  77. package/dist/backend/index.js.map +1 -1
  78. package/dist/backend/pdf-components/tree-mapper.d.ts +5 -21
  79. package/dist/backend/pdf-components/tree-mapper.d.ts.map +1 -1
  80. package/dist/backend/pdf-components/tree-mapper.js +8 -44
  81. package/dist/backend/pdf-components/tree-mapper.js.map +1 -1
  82. package/dist/backend/plugin.d.ts +9 -12
  83. package/dist/backend/plugin.d.ts.map +1 -1
  84. package/dist/backend/plugin.js +3 -16
  85. package/dist/backend/plugin.js.map +1 -1
  86. package/dist/backend/routes.admin.d.ts +3 -5
  87. package/dist/backend/routes.admin.d.ts.map +1 -1
  88. package/dist/backend/routes.admin.js +8 -53
  89. package/dist/backend/routes.admin.js.map +1 -1
  90. package/dist/backend/routes.customer.d.ts +3 -5
  91. package/dist/backend/routes.customer.d.ts.map +1 -1
  92. package/dist/backend/routes.customer.js +3 -3
  93. package/dist/backend/routes.customer.js.map +1 -1
  94. package/dist/backend/services/invoice-email-dispatch.d.ts +7 -3
  95. package/dist/backend/services/invoice-email-dispatch.d.ts.map +1 -1
  96. package/dist/backend/services/invoice-email-dispatch.js +2 -1
  97. package/dist/backend/services/invoice-email-dispatch.js.map +1 -1
  98. package/dist/manifest.d.ts +9 -3
  99. package/dist/manifest.d.ts.map +1 -1
  100. package/dist/manifest.js +25 -14
  101. package/dist/manifest.js.map +1 -1
  102. package/dist/migrations/20261017T075839_invoices_drop_invoice_templates.d.ts +20 -0
  103. package/dist/migrations/20261017T075839_invoices_drop_invoice_templates.d.ts.map +1 -0
  104. package/dist/migrations/20261017T075839_invoices_drop_invoice_templates.js +43 -0
  105. package/dist/migrations/20261017T075839_invoices_drop_invoice_templates.js.map +1 -0
  106. package/dist/migrations/index.d.ts +2 -1
  107. package/dist/migrations/index.d.ts.map +1 -1
  108. package/dist/migrations/index.js +3 -1
  109. package/dist/migrations/index.js.map +1 -1
  110. package/docs/invoices.md +21 -14
  111. package/i18n/en.json +3 -3
  112. package/i18n/pl.json +3 -3
  113. package/package.json +13 -13
  114. package/dist/admin/pages/InvoiceTemplateEditor.d.ts +0 -11
  115. package/dist/admin/pages/InvoiceTemplateEditor.d.ts.map +0 -1
  116. package/dist/admin/pages/InvoiceTemplateEditor.js +0 -189
  117. package/dist/admin/pages/InvoiceTemplateEditor.js.map +0 -1
  118. package/dist/admin/pages/InvoiceTemplatesPage.d.ts +0 -10
  119. package/dist/admin/pages/InvoiceTemplatesPage.d.ts.map +0 -1
  120. package/dist/admin/pages/InvoiceTemplatesPage.js +0 -60
  121. package/dist/admin/pages/InvoiceTemplatesPage.js.map +0 -1
  122. package/dist/admin/templates/described-blocks.d.ts +0 -67
  123. package/dist/admin/templates/described-blocks.d.ts.map +0 -1
  124. package/dist/admin/templates/described-blocks.js +0 -83
  125. package/dist/admin/templates/described-blocks.js.map +0 -1
  126. package/dist/admin/templates/invoice-builder-plugin.d.ts +0 -4
  127. package/dist/admin/templates/invoice-builder-plugin.d.ts.map +0 -1
  128. package/dist/admin/templates/invoice-builder-plugin.js +0 -12
  129. package/dist/admin/templates/invoice-builder-plugin.js.map +0 -1
  130. package/dist/backend/entities/invoice-template.entity.d.ts +0 -22
  131. package/dist/backend/entities/invoice-template.entity.d.ts.map +0 -1
  132. package/dist/backend/entities/invoice-template.entity.js +0 -84
  133. package/dist/backend/entities/invoice-template.entity.js.map +0 -1
  134. package/dist/backend/pdf-components/descriptor.d.ts +0 -29
  135. package/dist/backend/pdf-components/descriptor.d.ts.map +0 -1
  136. package/dist/backend/pdf-components/descriptor.js.map +0 -1
  137. package/dist/backend/services/invoice-pdf-renderer.d.ts +0 -57
  138. package/dist/backend/services/invoice-pdf-renderer.d.ts.map +0 -1
  139. package/dist/backend/services/invoice-pdf-renderer.js +0 -158
  140. package/dist/backend/services/invoice-pdf-renderer.js.map +0 -1
  141. package/dist/backend/services/invoice-template-service.d.ts +0 -43
  142. package/dist/backend/services/invoice-template-service.d.ts.map +0 -1
  143. package/dist/backend/services/invoice-template-service.js +0 -147
  144. package/dist/backend/services/invoice-template-service.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"routes.customer.d.ts","sourceRoot":"","sources":["../../src/backend/routes.customer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAC/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE3D,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,0BAA0B,EAC/B,KAAK,aAAa,EAEnB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAErF,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,aAAa,CAAC;IAC/B,mFAAmF;IACnF,aAAa,EAAE,aAAa,CAAC;IAC7B,4EAA4E;IAC5E,aAAa,EAAE,iBAAiB,CAAC;IACjC;;;OAGG;IACH,uBAAuB,EAAE,0BAA0B,CAAC;IACpD,eAAe,EAAE,CAAC,GAAG,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACxE,sBAAsB,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK;QAAE,iBAAiB,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,CAAC;IACvG,cAAc,EAAE,cAAc,CAAC;IAC/B,WAAW,EAAE,kBAAkB,CAAC;IAChC,eAAe,EAAE,sBAAsB,CAAC;CACzC;AAED;;;;GAIG;AACH,wBAAsB,8BAA8B,CAClD,GAAG,EAAE,eAAe,EACpB,IAAI,EAAE,oBAAoB,GACzB,OAAO,CAAC,IAAI,CAAC,CAyJf"}
1
+ {"version":3,"file":"routes.customer.d.ts","sourceRoot":"","sources":["../../src/backend/routes.customer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAC/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE3D,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,0BAA0B,EAC/B,KAAK,aAAa,EAEnB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAGpE,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,aAAa,CAAC;IAC/B,mFAAmF;IACnF,aAAa,EAAE,aAAa,CAAC;IAC7B,4EAA4E;IAC5E,aAAa,EAAE,iBAAiB,CAAC;IACjC;;;OAGG;IACH,uBAAuB,EAAE,0BAA0B,CAAC;IACpD,eAAe,EAAE,CAAC,GAAG,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACxE,sBAAsB,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK;QAAE,iBAAiB,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,CAAC;IACvG,cAAc,EAAE,cAAc,CAAC;IAC/B,6EAA6E;IAC7E,SAAS,EAAE,IAAI,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;CAC/C;AAED;;;;GAIG;AACH,wBAAsB,8BAA8B,CAClD,GAAG,EAAE,eAAe,EACpB,IAAI,EAAE,oBAAoB,GACzB,OAAO,CAAC,IAAI,CAAC,CAuJf"}
@@ -2,13 +2,14 @@ import { HttpError } from '@endora-commerce/platform/http';
2
2
  import { ERROR_CODES, } from '@endora-commerce/contracts';
3
3
  import { InvoiceExternalAttachment } from './entities/invoice-external-attachment.entity.js';
4
4
  import { Invoice } from './entities/invoice.entity.js';
5
+ import { renderInvoicePdf } from './document/render-invoice.js';
5
6
  /**
6
7
  * Storefront customer invoice routes (feature 047, US4). A customer lists and
7
8
  * downloads invoices for an order they (or their organization) own. Only
8
9
  * `ready` invoices are exposed.
9
10
  */
10
11
  export async function registerInvoicesCustomerRoutes(app, deps) {
11
- const { emFactory, orderReadPort, assetsLibrary, saleDocumentAttachments, requireCustomer, resolveCustomerContext, invoiceService, pdfRenderer, templateService, } = deps;
12
+ const { emFactory, orderReadPort, assetsLibrary, saleDocumentAttachments, requireCustomer, resolveCustomerContext, invoiceService, documents, } = deps;
12
13
  async function ownedOrderOr404(req, orderId) {
13
14
  const ctx = resolveCustomerContext(req);
14
15
  const order = await orderReadPort.findById(orderId);
@@ -46,8 +47,7 @@ export async function registerInvoicesCustomerRoutes(app, deps) {
46
47
  if (!inv)
47
48
  throw new HttpError(404, ERROR_CODES.NOT_FOUND, 'Invoice not found.');
48
49
  const detail = await invoiceService.buildDetail(inv.id);
49
- const tree = await templateService.resolveTree(detail.salesChannelId, 'pl-PL');
50
- const pdf = await pdfRenderer.render(detail, 'pl', tree);
50
+ const pdf = await renderInvoicePdf(documents, detail);
51
51
  reply
52
52
  .header('content-type', 'application/pdf')
53
53
  .header('content-disposition', `attachment; filename="invoice-${detail.number.replace(/\W+/g, '_')}.pdf"`);
@@ -1 +1 @@
1
- {"version":3,"file":"routes.customer.js","sourceRoot":"","sources":["../../src/backend/routes.customer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"routes.customer.js","sourceRoot":"","sources":["../../src/backend/routes.customer.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,5 @@
1
- import type { InvoiceEmailNotSentReason, OrderReadPort, OrderRecord, TransactionalEmailSender } from '@endora-commerce/contracts';
1
+ import type { DocumentRenderPort, InvoiceEmailNotSentReason, OrderReadPort, OrderRecord, TransactionalEmailSender } from '@endora-commerce/contracts';
2
2
  import type { InvoiceService } from './invoice-service.js';
3
- import type { InvoicePdfRenderer } from './invoice-pdf-renderer.js';
4
3
  import type { SettingsReader } from './seller-settings.js';
5
4
  /**
6
5
  * Why the invoice e-mail did — or did not — go out (issue #103).
@@ -36,7 +35,12 @@ export interface InvoiceEmailDispatchDeps {
36
35
  */
37
36
  orderReadPort: OrderReadPort;
38
37
  invoiceService: InvoiceService;
39
- pdfRenderer: InvoicePdfRenderer;
38
+ /**
39
+ * `document_templates`' render port (`specs/152-compare-pdf-template/`). The
40
+ * attachment is rendered with the download's input, so it follows the
41
+ * template the download follows (owner answer N1, FR-093).
42
+ */
43
+ documents: Pick<DocumentRenderPort, 'render'>;
40
44
  settingsService: SettingsReader;
41
45
  getSender: () => TransactionalEmailSender | undefined;
42
46
  resolveRecipientEmail: (order: OrderRecord) => Promise<string | null>;
@@ -1 +1 @@
1
- {"version":3,"file":"invoice-email-dispatch.d.ts","sourceRoot":"","sources":["../../../src/backend/services/invoice-email-dispatch.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,yBAAyB,EACzB,aAAa,EACb,WAAW,EACX,wBAAwB,EACzB,MAAM,4BAA4B,CAAC;AAMpC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAG3D;;;;;;;;;;;;GAYG;AACH,YAAY,EAAE,yBAAyB,EAAE,CAAC;AAE1C,MAAM,MAAM,0BAA0B,GAClC;IAAE,IAAI,EAAE,IAAI,CAAA;CAAE,GACd;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,yBAAyB,CAAA;CAAE,CAAC;AAEvD;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;AAE1F,MAAM,WAAW,wBAAwB;IACvC;;;;;OAKG;IACH,aAAa,EAAE,aAAa,CAAC;IAC7B,cAAc,EAAE,cAAc,CAAC;IAC/B,WAAW,EAAE,kBAAkB,CAAC;IAChC,eAAe,EAAE,cAAc,CAAC;IAChC,SAAS,EAAE,MAAM,wBAAwB,GAAG,SAAS,CAAC;IACtD,qBAAqB,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACtE,eAAe,EAAE,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACpE,GAAG,CAAC,EAAE,eAAe,CAAC;CACvB;AAED;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,sBAAsB;IAGrB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAFjC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAkB;gBAET,IAAI,EAAE,wBAAwB;IAIrD,QAAQ,CACZ,SAAS,EAAE,MAAM,EACjB,IAAI,GAAE;QAAE,IAAI,CAAC,EAAE,YAAY,GAAG,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAO,GAC9D,OAAO,CAAC,0BAA0B,CAAC;IAoEtC,OAAO,CAAC,OAAO;IAaf;;;;;;OAMG;YACW,WAAW;YAeX,WAAW;YASX,cAAc;IAS5B;;;;;OAKG;IACG,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;CAQrE"}
1
+ {"version":3,"file":"invoice-email-dispatch.d.ts","sourceRoot":"","sources":["../../../src/backend/services/invoice-email-dispatch.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,kBAAkB,EAClB,yBAAyB,EACzB,aAAa,EACb,WAAW,EACX,wBAAwB,EACzB,MAAM,4BAA4B,CAAC;AAMpC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAG3D;;;;;;;;;;;;GAYG;AACH,YAAY,EAAE,yBAAyB,EAAE,CAAC;AAE1C,MAAM,MAAM,0BAA0B,GAClC;IAAE,IAAI,EAAE,IAAI,CAAA;CAAE,GACd;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,yBAAyB,CAAA;CAAE,CAAC;AAEvD;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;AAE1F,MAAM,WAAW,wBAAwB;IACvC;;;;;OAKG;IACH,aAAa,EAAE,aAAa,CAAC;IAC7B,cAAc,EAAE,cAAc,CAAC;IAC/B;;;;OAIG;IACH,SAAS,EAAE,IAAI,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;IAC9C,eAAe,EAAE,cAAc,CAAC;IAChC,SAAS,EAAE,MAAM,wBAAwB,GAAG,SAAS,CAAC;IACtD,qBAAqB,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACtE,eAAe,EAAE,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACpE,GAAG,CAAC,EAAE,eAAe,CAAC;CACvB;AAED;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,sBAAsB;IAGrB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAFjC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAkB;gBAET,IAAI,EAAE,wBAAwB;IAIrD,QAAQ,CACZ,SAAS,EAAE,MAAM,EACjB,IAAI,GAAE;QAAE,IAAI,CAAC,EAAE,YAAY,GAAG,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAO,GAC9D,OAAO,CAAC,0BAA0B,CAAC;IAoEtC,OAAO,CAAC,OAAO;IAaf;;;;;;OAMG;YACW,WAAW;YAeX,WAAW;YASX,cAAc;IAS5B;;;;;OAKG;IACG,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;CAQrE"}
@@ -1,6 +1,7 @@
1
1
  import { z } from 'zod';
2
2
  import { rethrowIfModuleDisabled } from '@endora-commerce/platform/kernel';
3
3
  import { SettingNotRegistered, SettingOutOfScopeForChannel, } from '@endora-commerce/platform/kernel';
4
+ import { renderInvoicePdf } from '../document/render-invoice.js';
4
5
  import { INVOICES_SETTING_CODES } from '../../manifest.js';
5
6
  /**
6
7
  * Dispatches the `invoice_issued` transactional email (feature 047, US5).
@@ -59,7 +60,7 @@ export class InvoiceEmailDispatcher {
59
60
  ? [
60
61
  {
61
62
  filename: `invoice-${detail.number.replace(/\W+/g, '_')}.pdf`,
62
- content: await this.deps.pdfRenderer.render(detail),
63
+ content: await renderInvoicePdf(this.deps.documents, detail),
63
64
  contentType: 'application/pdf',
64
65
  },
65
66
  ]
@@ -1 +1 @@
1
- {"version":3,"file":"invoice-email-dispatch.js","sourceRoot":"","sources":["../../../src/backend/services/invoice-email-dispatch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"invoice-email-dispatch.js","sourceRoot":"","sources":["../../../src/backend/services/invoice-email-dispatch.ts"],"names":[],"mappings":"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"}
@@ -38,6 +38,7 @@ export declare const invoicesSettingsManifest: {
38
38
  enumOptions?: string[] | undefined;
39
39
  configurationType?: string | undefined;
40
40
  hidden?: boolean | undefined;
41
+ multiline?: boolean | undefined;
41
42
  }[];
42
43
  };
43
44
  export declare const manifest: {
@@ -85,6 +86,7 @@ export declare const manifest: {
85
86
  enumOptions?: string[] | undefined;
86
87
  configurationType?: string | undefined;
87
88
  hidden?: boolean | undefined;
89
+ multiline?: boolean | undefined;
88
90
  }[];
89
91
  } | undefined;
90
92
  i18n?: {
@@ -142,9 +144,9 @@ export declare const manifest: {
142
144
  name: string;
143
145
  labelKey: string;
144
146
  category: string;
145
- contexts: ("invoice" | "cms" | "email" | "newsletter")[];
147
+ contexts: ("invoice" | "cms" | "email" | "newsletter" | "document")[];
146
148
  fields: Record<string, {
147
- type: "number" | "object" | "array" | "text" | "textarea" | "select" | "radio" | "external" | "uuid" | "richtext";
149
+ type: "number" | "object" | "array" | "uuid" | "text" | "textarea" | "select" | "radio" | "external" | "richtext";
148
150
  label?: string | undefined;
149
151
  required?: boolean | undefined;
150
152
  options?: {
@@ -158,11 +160,15 @@ export declare const manifest: {
158
160
  responsiveFields?: string[] | undefined;
159
161
  previewIcon?: string | undefined;
160
162
  weight?: number | undefined;
163
+ translatable?: {
164
+ path: string;
165
+ format?: "plain" | "tiptap" | "html" | undefined;
166
+ }[] | undefined;
161
167
  }[] | undefined;
162
168
  blockCategories?: {
163
169
  key: string;
164
170
  titleKey: string;
165
- contexts: ("invoice" | "cms" | "email" | "newsletter")[];
171
+ contexts: ("invoice" | "cms" | "email" | "newsletter" | "document")[];
166
172
  weight?: number | undefined;
167
173
  visible?: boolean | undefined;
168
174
  }[] | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;CAUzB,CAAC;AAEX,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;CAgHnC,CAAC;AAEH,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwQnB,CAAC"}
1
+ {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;CAUzB,CAAC;AAEX,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;CA8HnC,CAAC;AAEH,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsQnB,CAAC"}
package/dist/manifest.js CHANGED
@@ -121,12 +121,25 @@ export const invoicesSettingsManifest = defineModuleSettingsManifest({
121
121
  valueType: 'string',
122
122
  defaultValue: '',
123
123
  },
124
+ {
125
+ // `specs/152-compare-pdf-template/` (owner answers N3, P2) — whether the
126
+ // one-time grant of the document-template permissions to the roles that
127
+ // hold the invoice permissions has run. Written once, by the module's own
128
+ // boot hook; hidden because it is bookkeeping, not a control.
129
+ code: 'invoices.document_templates_grant_done',
130
+ name: 'Document template access granted',
131
+ description: 'Set by the platform once roles allowed to view or edit invoices have also been given the document template permissions, after invoice templates moved to Document templates. Not meant to be changed.',
132
+ groupCode: 'invoices',
133
+ valueType: 'boolean',
134
+ defaultValue: false,
135
+ hidden: true,
136
+ },
124
137
  ],
125
138
  });
126
139
  export const manifest = defineModuleManifest({
127
140
  id: 'invoices',
128
141
  name: 'Invoices',
129
- description: 'Invoice generation, numbering, PDF templates, corrections, and email delivery.',
142
+ description: 'Invoice generation, numbering, corrections, and email delivery; invoice PDF layouts are designed in Document templates.',
130
143
  version: '2.0.0',
131
144
  // `auth` owns the `requireAdmin` port and the customer guard this module
132
145
  // resolves; feature 072 made both container resolutions.
@@ -144,10 +157,20 @@ export const manifest = defineModuleManifest({
144
157
  // owner for a `refuses-without` sentence to describe. That is the same answer
145
158
  // `mfa` and `product_feeds` came to and a different one from `returns`, and
146
159
  // the difference is the owners', not the consumer's.
160
+ //
161
+ // `document_templates` and `admin_roles` joined in
162
+ // `specs/152-compare-pdf-template/`. Every invoice PDF is produced by the
163
+ // document-template facility, and an invoice that cannot be printed is not
164
+ // a degrade worth offering, so the edge binds: the lifecycle refuses to
165
+ // switch document templates off while invoicing is on (owner answer N2).
166
+ // `admin_roles` is where the one-time grant of the document-template
167
+ // permissions writes (N3); it is non-deactivatable.
147
168
  dependencies: [
169
+ 'admin_roles',
148
170
  'assets_library',
149
171
  'auth',
150
172
  'customer_accounts',
173
+ 'document_templates',
151
174
  'orders',
152
175
  'organizations',
153
176
  'settings',
@@ -182,7 +205,7 @@ export const manifest = defineModuleManifest({
182
205
  ],
183
206
  permissions: [
184
207
  { code: 'invoices:read', label: 'View invoices and download invoice PDFs' },
185
- { code: 'invoices:write', label: 'Issue/correct invoices, edit templates, and configure invoicing' },
208
+ { code: 'invoices:write', label: 'Issue/correct invoices and configure invoicing' },
186
209
  ],
187
210
  /**
188
211
  * The three error codes this module owns — feature 090 Phase 3
@@ -262,18 +285,6 @@ export const manifest = defineModuleManifest({
262
285
  keywords: ['invoices', 'faktury', 'vat', 'billing'],
263
286
  weight: 240,
264
287
  },
265
- {
266
- id: 'invoice-templates',
267
- labelKey: 'actions.invoiceTemplates.label',
268
- descriptionKey: 'actions.invoiceTemplates.description',
269
- icon: 'Layers',
270
- targetRoute: '/invoices/templates',
271
- // `invoices:read` — `GET /api/v1/admin/invoice-templates` is read-gated,
272
- // and the row is a destination rather than an operation (issue #232).
273
- requiredPermission: 'invoices:read',
274
- keywords: ['invoice template', 'szablon faktury', 'pdf'],
275
- weight: 245,
276
- },
277
288
  ],
278
289
  activation: { settingCode: 'invoices.enabled', default: true },
279
290
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,4BAA4B,EAAE,MAAM,4BAA4B,CAAC;AAEhG;;;;;;;;GAQG;AAEH,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,aAAa,EAAE,wBAAwB;IACvC,mBAAmB,EAAE,8BAA8B;IACnD,yBAAyB,EAAE,oCAAoC;IAC/D,mBAAmB,EAAE,8BAA8B;IACnD,mBAAmB,EAAE,8BAA8B;IACnD,yBAAyB,EAAE,oCAAoC;IAC/D,0BAA0B,EAAE,qCAAqC;IACjE,4BAA4B,EAAE,uCAAuC;IACrE,mBAAmB,EAAE,8BAA8B;CAC3C,CAAC;AAEX,MAAM,CAAC,MAAM,wBAAwB,GAAG,4BAA4B,CAAC;IACnE,UAAU,EAAE,UAAU;IACtB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;IAChD,QAAQ,EAAE;QACR;YACE,kEAAkE;YAClE,IAAI,EAAE,kBAAkB;YACxB,IAAI,EAAE,kBAAkB;YACxB,WAAW,EACT,0RAA0R;YAC5R,SAAS,EAAE,UAAU;YACrB,SAAS,EAAE,SAAS;YACpB,YAAY,EAAE,IAAI;SACnB;QACD;YACE,IAAI,EAAE,sBAAsB,CAAC,aAAa;YAC1C,IAAI,EAAE,kBAAkB;YACxB,WAAW,EACT,qHAAqH;YACvH,SAAS,EAAE,UAAU;YACrB,SAAS,EAAE,QAAQ;YACnB,YAAY,EAAE,EAAE;SACjB;QACD;YACE,IAAI,EAAE,sBAAsB,CAAC,mBAAmB;YAChD,IAAI,EAAE,qBAAqB;YAC3B,WAAW,EACT,gLAAgL;YAClL,SAAS,EAAE,UAAU;YACrB,SAAS,EAAE,MAAM;YACjB,YAAY,EAAE,EAAE;SACjB;QACD;YACE,IAAI,EAAE,sBAAsB,CAAC,yBAAyB;YACtD,IAAI,EAAE,4BAA4B;YAClC,WAAW,EACT,qHAAqH;YACvH,SAAS,EAAE,UAAU;YACrB,SAAS,EAAE,QAAQ;YACnB,YAAY,EAAE,EAAE;SACjB;QACD;YACE,IAAI,EAAE,sBAAsB,CAAC,mBAAmB;YAChD,IAAI,EAAE,wBAAwB;YAC9B,WAAW,EAAE,iFAAiF;YAC9F,SAAS,EAAE,UAAU;YACrB,SAAS,EAAE,SAAS;YACpB,YAAY,EAAE,KAAK;SACpB;QACD;YACE,IAAI,EAAE,sBAAsB,CAAC,mBAAmB;YAChD,IAAI,EAAE,6BAA6B;YACnC,WAAW,EACT,iHAAiH;YACnH,SAAS,EAAE,UAAU;YACrB,SAAS,EAAE,QAAQ;YACnB,YAAY,EAAE,YAAY;YAC1B,WAAW,EAAE,CAAC,YAAY,EAAE,MAAM,CAAC;SACpC;QACD,wEAAwE;QACxE,EAAE;QACF,yEAAyE;QACzE,wEAAwE;QACxE,kEAAkE;QAClE,2EAA2E;QAC3E,0EAA0E;QAC1E,wBAAwB;QACxB,EAAE;QACF,4EAA4E;QAC5E,4EAA4E;QAC5E,uEAAuE;QACvE,2DAA2D;QAC3D;YACE,IAAI,EAAE,sBAAsB,CAAC,yBAAyB;YACtD,IAAI,EAAE,2BAA2B;YACjC,WAAW,EACT,sSAAsS;YACxS,SAAS,EAAE,UAAU;YACrB,SAAS,EAAE,QAAQ;YACnB,YAAY,EAAE,2BAA2B;YACzC,qBAAqB,EAAE,CAAC,iBAAiB,CAAC;SAC3C;QACD;YACE,IAAI,EAAE,sBAAsB,CAAC,0BAA0B;YACvD,IAAI,EAAE,4BAA4B;YAClC,WAAW,EACT,mSAAmS;YACrS,SAAS,EAAE,UAAU;YACrB,SAAS,EAAE,QAAQ;YACnB,YAAY,EAAE,4BAA4B;YAC1C,qBAAqB,EAAE,CAAC,kBAAkB,CAAC;SAC5C;QACD;YACE,IAAI,EAAE,sBAAsB,CAAC,4BAA4B;YACzD,IAAI,EAAE,8BAA8B;YACpC,WAAW,EACT,6SAA6S;YAC/S,SAAS,EAAE,UAAU;YACrB,SAAS,EAAE,QAAQ;YACnB,YAAY,EAAE,4BAA4B;YAC1C,qBAAqB,EAAE,CAAC,kBAAkB,CAAC;SAC5C;QACD;YACE,IAAI,EAAE,sBAAsB,CAAC,mBAAmB;YAChD,IAAI,EAAE,+CAA+C;YACrD,WAAW,EACT,8IAA8I;YAChJ,SAAS,EAAE,UAAU;YACrB,SAAS,EAAE,QAAQ;YACnB,YAAY,EAAE,EAAE;SACjB;KACF;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,QAAQ,GAAG,oBAAoB,CAAC;IAC3C,EAAE,EAAE,UAAU;IACd,IAAI,EAAE,UAAU;IAChB,WAAW,EAAE,gFAAgF;IAC7F,OAAO,EAAE,OAAO;IAChB,yEAAyE;IACzE,yDAAyD;IACzD,4EAA4E;IAC5E,4EAA4E;IAC5E,sEAAsE;IACtE,EAAE;IACF,qDAAqD;IACrD,6EAA6E;IAC7E,4EAA4E;IAC5E,0EAA0E;IAC1E,0EAA0E;IAC1E,yEAAyE;IACzE,0EAA0E;IAC1E,8EAA8E;IAC9E,4EAA4E;IAC5E,qDAAqD;IACrD,YAAY,EAAE;QACZ,gBAAgB;QAChB,MAAM;QACN,mBAAmB;QACnB,QAAQ;QACR,eAAe;QACf,UAAU;QACV,sBAAsB;KACvB;IACD,sBAAsB,EAAE;QACtB;YACE,QAAQ,EAAE,gBAAgB;YAC1B,IAAI,EAAE,0BAA0B;YAChC,IAAI,EAAE,kBAAkB;YACxB,UAAU,EAAE,mEAAmE;YAC/E,MAAM,EACJ,oGAAoG;SACvG;KACF;IACD,QAAQ,EAAE,wBAAwB;IAClC,IAAI,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE;IAC5B,IAAI,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE;IACrB,yEAAyE;IACzE,mBAAmB,EAAE;QACnB;YACE,IAAI,EAAE,gBAAgB;YACtB,IAAI,EAAE,gBAAgB;YACtB,KAAK,EAAE,UAAU;YACjB,SAAS,EAAE;gBACT,EAAE,GAAG,EAAE,gBAAgB,EAAE,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE;gBAC7E,EAAE,GAAG,EAAE,eAAe,EAAE,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,UAAU,EAAE;gBACzE,EAAE,GAAG,EAAE,kBAAkB,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,KAAK,EAAE;gBAClE,EAAE,GAAG,EAAE,kBAAkB,EAAE,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE;gBAC3E,EAAE,GAAG,EAAE,qBAAqB,EAAE,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,mCAAmC,EAAE;aACzG;SACF;KACF;IACD,WAAW,EAAE;QACX,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,yCAAyC,EAAE;QAC3E,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,iEAAiE,EAAE;KACrG;IACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA0DG;IACH,UAAU,EAAE;QACV,EAAE,IAAI,EAAE,mBAAmB,EAAE;QAC7B,EAAE,IAAI,EAAE,+BAA+B,EAAE,MAAM,EAAE,CAAC,cAAc,EAAE,eAAe,CAAC,EAAE;QACpF;YACE,IAAI,EAAE,iCAAiC;YACvC,MAAM,EAAE,CAAC,mBAAmB,EAAE,eAAe,CAAC;SAC/C;KACF;IACD,OAAO,EAAE;QACP;YACE,EAAE,EAAE,eAAe;YACnB,QAAQ,EAAE,4BAA4B;YACtC,cAAc,EAAE,kCAAkC;YAClD,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,WAAW;YACxB,kBAAkB,EAAE,eAAe;YACnC,QAAQ,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,CAAC;YACnD,MAAM,EAAE,GAAG;SACZ;QACD;YACE,EAAE,EAAE,mBAAmB;YACvB,QAAQ,EAAE,gCAAgC;YAC1C,cAAc,EAAE,sCAAsC;YACtD,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,qBAAqB;YAClC,yEAAyE;YACzE,sEAAsE;YACtE,kBAAkB,EAAE,eAAe;YACnC,QAAQ,EAAE,CAAC,kBAAkB,EAAE,iBAAiB,EAAE,KAAK,CAAC;YACxD,MAAM,EAAE,GAAG;SACZ;KACF;IACD,UAAU,EAAE,EAAE,WAAW,EAAE,kBAAkB,EAAE,OAAO,EAAE,IAAI,EAAE;IAC9D;;;;;;;;;;;;;;OAcG;IACH,MAAM,EAAE;QACN;YACE,IAAI,EAAE,wBAAwB;YAC9B,QAAQ,EAAE,4BAA4B;YACtC,cAAc,EAAE,kCAAkC;YAClD,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE,CAAC,SAAS,CAAC;YACrB,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,EAAE;SACX;QACD;YACE,IAAI,EAAE,yBAAyB;YAC/B,QAAQ,EAAE,6BAA6B;YACvC,cAAc,EAAE,mCAAmC;YACnD,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE,CAAC,SAAS,CAAC;YACrB,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,EAAE;SACX;QACD;YACE,IAAI,EAAE,2BAA2B;YACjC,QAAQ,EAAE,+BAA+B;YACzC,cAAc,EAAE,qCAAqC;YACrD,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE,CAAC,SAAS,CAAC;YACrB,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,EAAE;SACX;QACD;YACE,IAAI,EAAE,4BAA4B;YAClC,QAAQ,EAAE,gCAAgC;YAC1C,cAAc,EAAE,sCAAsC;YACtD,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE,CAAC,SAAS,CAAC;YACrB,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,EAAE;SACX;QACD;YACE,IAAI,EAAE,wBAAwB;YAC9B,QAAQ,EAAE,4BAA4B;YACtC,cAAc,EAAE,kCAAkC;YAClD,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE,CAAC,SAAS,CAAC;YACrB,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,EAAE;SACX;QACD;YACE,IAAI,EAAE,uBAAuB;YAC7B,QAAQ,EAAE,2BAA2B;YACrC,cAAc,EAAE,iCAAiC;YACjD,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE,CAAC,SAAS,CAAC;YACrB,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,EAAE;SACX;QACD;YACE,IAAI,EAAE,wBAAwB;YAC9B,QAAQ,EAAE,4BAA4B;YACtC,cAAc,EAAE,kCAAkC;YAClD,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE,CAAC,SAAS,CAAC;YACrB,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,EAAE;SACX;QACD;YACE,IAAI,EAAE,yBAAyB;YAC/B,QAAQ,EAAE,6BAA6B;YACvC,cAAc,EAAE,mCAAmC;YACnD,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE,CAAC,SAAS,CAAC;YACrB,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,EAAE;SACX;QACD;YACE,IAAI,EAAE,sBAAsB;YAC5B,QAAQ,EAAE,0BAA0B;YACpC,cAAc,EAAE,gCAAgC;YAChD,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE,CAAC,SAAS,CAAC;YACrB,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,GAAG;SACZ;QACD;YACE,IAAI,EAAE,wBAAwB;YAC9B,QAAQ,EAAE,4BAA4B;YACtC,cAAc,EAAE,kCAAkC;YAClD,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE,CAAC,SAAS,CAAC;YACrB,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,GAAG;SACZ;KACF;IACD,eAAe,EAAE;QACf,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,EAAE,yBAAyB,EAAE,QAAQ,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;KAC3F;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import { Migration } from '@mikro-orm/migrations';
2
+ /**
3
+ * Drops `invoice_templates` (`specs/152-compare-pdf-template/`, owner answer P2).
4
+ *
5
+ * Invoice PDF layouts moved onto the `document_templates` facility: the
6
+ * invoice document type's built-in layout replaced the seeded "generic"
7
+ * template, and an operator designs further invoice templates in *Document
8
+ * templates*. Nobody had custom invoice templates, so nothing is carried over —
9
+ * the owner ruled the import out — and the table, which only this module ever
10
+ * wrote, goes with its entity, service and routes.
11
+ *
12
+ * `down` recreates the empty table with the shape the module's first migration
13
+ * gave it (the generic row the old code seeded at boot is not restored: that
14
+ * code is gone).
15
+ */
16
+ export declare class Migration20261017T075839InvoicesDropInvoiceTemplates extends Migration {
17
+ up(): Promise<void>;
18
+ down(): Promise<void>;
19
+ }
20
+ //# sourceMappingURL=20261017T075839_invoices_drop_invoice_templates.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"20261017T075839_invoices_drop_invoice_templates.d.ts","sourceRoot":"","sources":["../../src/migrations/20261017T075839_invoices_drop_invoice_templates.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAElD;;;;;;;;;;;;;GAaG;AACH,qBAAa,oDAAqD,SAAQ,SAAS;IAClE,EAAE,IAAI,OAAO,CAAC,IAAI,CAAC;IAInB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CA0BrC"}
@@ -0,0 +1,43 @@
1
+ import { Migration } from '@mikro-orm/migrations';
2
+ /**
3
+ * Drops `invoice_templates` (`specs/152-compare-pdf-template/`, owner answer P2).
4
+ *
5
+ * Invoice PDF layouts moved onto the `document_templates` facility: the
6
+ * invoice document type's built-in layout replaced the seeded "generic"
7
+ * template, and an operator designs further invoice templates in *Document
8
+ * templates*. Nobody had custom invoice templates, so nothing is carried over —
9
+ * the owner ruled the import out — and the table, which only this module ever
10
+ * wrote, goes with its entity, service and routes.
11
+ *
12
+ * `down` recreates the empty table with the shape the module's first migration
13
+ * gave it (the generic row the old code seeded at boot is not restored: that
14
+ * code is gone).
15
+ */
16
+ export class Migration20261017T075839InvoicesDropInvoiceTemplates extends Migration {
17
+ async up() {
18
+ this.addSql(`drop table if exists "invoice_templates";`);
19
+ }
20
+ async down() {
21
+ this.addSql(`
22
+ create table if not exists "invoice_templates" (
23
+ "id" uuid not null,
24
+ "code" varchar(180) not null,
25
+ "name" varchar(200) not null,
26
+ "sales_channel_id" uuid null,
27
+ "content" jsonb not null,
28
+ "languages" jsonb not null,
29
+ "active" boolean not null default true,
30
+ "is_system" boolean not null default false,
31
+ "version" int not null default 1,
32
+ "created_at" timestamptz not null,
33
+ "updated_at" timestamptz not null,
34
+ constraint "invoice_templates_pkey" primary key ("id")
35
+ );
36
+ `);
37
+ this.addSql(`create index if not exists "invoice_templates_code_idx" on "invoice_templates" ("code");`);
38
+ this.addSql(`create index if not exists "invoice_templates_sales_channel_idx" on "invoice_templates" ("sales_channel_id");`);
39
+ this.addSql(`create unique index if not exists "invoice_templates_active_scope_uq" on "invoice_templates" ` +
40
+ `(coalesce("sales_channel_id", '00000000-0000-0000-0000-000000000000')) where "active";`);
41
+ }
42
+ }
43
+ //# sourceMappingURL=20261017T075839_invoices_drop_invoice_templates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"20261017T075839_invoices_drop_invoice_templates.js","sourceRoot":"","sources":["../../src/migrations/20261017T075839_invoices_drop_invoice_templates.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAElD;;;;;;;;;;;;;GAaG;AACH,MAAM,OAAO,oDAAqD,SAAQ,SAAS;IACxE,KAAK,CAAC,EAAE;QACf,IAAI,CAAC,MAAM,CAAC,2CAA2C,CAAC,CAAC;IAC3D,CAAC;IAEQ,KAAK,CAAC,IAAI;QACjB,IAAI,CAAC,MAAM,CAAC;;;;;;;;;;;;;;;KAeX,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,CAAC,0FAA0F,CAAC,CAAC;QACxG,IAAI,CAAC,MAAM,CACT,+GAA+G,CAChH,CAAC;QACF,IAAI,CAAC,MAAM,CACT,+FAA+F;YAC7F,wFAAwF,CAC3F,CAAC;IACJ,CAAC;CACF"}
@@ -27,6 +27,7 @@ import { Migration20260817T201110InvoicesCorrectionIdempotencyKey } from './2026
27
27
  import { Migration20260903T101756InvoicesNamespaceBlockNames } from './20260903T101756_invoices_namespace_block_names.js';
28
28
  import { Migration20260914T133603InvoicesErpImportedSaleDocuments } from './20260914T133603_invoices_erp_imported_sale_documents.js';
29
29
  import { Migration20260926T230239InvoicesImportIdentity } from './20260926T230239_invoices_import_identity.js';
30
+ import { Migration20261017T075839InvoicesDropInvoiceTemplates } from './20261017T075839_invoices_drop_invoice_templates.js';
30
31
  export declare const migrations: (typeof Migration20260629T125121InvoicesModule)[];
31
- export { Migration20260629T125121InvoicesModule, Migration20260801T111000InvoicesGenericTemplateReseed, Migration20260817T201110InvoicesCorrectionIdempotencyKey, Migration20260903T101756InvoicesNamespaceBlockNames, Migration20260914T133603InvoicesErpImportedSaleDocuments, Migration20260926T230239InvoicesImportIdentity, };
32
+ export { Migration20260629T125121InvoicesModule, Migration20260801T111000InvoicesGenericTemplateReseed, Migration20260817T201110InvoicesCorrectionIdempotencyKey, Migration20260903T101756InvoicesNamespaceBlockNames, Migration20260914T133603InvoicesErpImportedSaleDocuments, Migration20260926T230239InvoicesImportIdentity, Migration20261017T075839InvoicesDropInvoiceTemplates, };
32
33
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/migrations/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,sCAAsC,EAAE,MAAM,sCAAsC,CAAC;AAC9F,OAAO,EAAE,qDAAqD,EAAE,MAAM,uDAAuD,CAAC;AAC9H,OAAO,EAAE,wDAAwD,EAAE,MAAM,0DAA0D,CAAC;AACpI,OAAO,EAAE,mDAAmD,EAAE,MAAM,qDAAqD,CAAC;AAC1H,OAAO,EAAE,wDAAwD,EAAE,MAAM,2DAA2D,CAAC;AACrI,OAAO,EAAE,8CAA8C,EAAE,MAAM,+CAA+C,CAAC;AAE/G,eAAO,MAAM,UAAU,mDAOtB,CAAC;AAEF,OAAO,EACL,sCAAsC,EACtC,qDAAqD,EACrD,wDAAwD,EACxD,mDAAmD,EACnD,wDAAwD,EACxD,8CAA8C,GAC/C,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/migrations/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,sCAAsC,EAAE,MAAM,sCAAsC,CAAC;AAC9F,OAAO,EAAE,qDAAqD,EAAE,MAAM,uDAAuD,CAAC;AAC9H,OAAO,EAAE,wDAAwD,EAAE,MAAM,0DAA0D,CAAC;AACpI,OAAO,EAAE,mDAAmD,EAAE,MAAM,qDAAqD,CAAC;AAC1H,OAAO,EAAE,wDAAwD,EAAE,MAAM,2DAA2D,CAAC;AACrI,OAAO,EAAE,8CAA8C,EAAE,MAAM,+CAA+C,CAAC;AAC/G,OAAO,EAAE,oDAAoD,EAAE,MAAM,sDAAsD,CAAC;AAE5H,eAAO,MAAM,UAAU,mDAQtB,CAAC;AAEF,OAAO,EACL,sCAAsC,EACtC,qDAAqD,EACrD,wDAAwD,EACxD,mDAAmD,EACnD,wDAAwD,EACxD,8CAA8C,EAC9C,oDAAoD,GACrD,CAAC"}
@@ -27,6 +27,7 @@ import { Migration20260817T201110InvoicesCorrectionIdempotencyKey } from './2026
27
27
  import { Migration20260903T101756InvoicesNamespaceBlockNames } from './20260903T101756_invoices_namespace_block_names.js';
28
28
  import { Migration20260914T133603InvoicesErpImportedSaleDocuments } from './20260914T133603_invoices_erp_imported_sale_documents.js';
29
29
  import { Migration20260926T230239InvoicesImportIdentity } from './20260926T230239_invoices_import_identity.js';
30
+ import { Migration20261017T075839InvoicesDropInvoiceTemplates } from './20261017T075839_invoices_drop_invoice_templates.js';
30
31
  export const migrations = [
31
32
  Migration20260629T125121InvoicesModule,
32
33
  Migration20260801T111000InvoicesGenericTemplateReseed,
@@ -34,6 +35,7 @@ export const migrations = [
34
35
  Migration20260903T101756InvoicesNamespaceBlockNames,
35
36
  Migration20260914T133603InvoicesErpImportedSaleDocuments,
36
37
  Migration20260926T230239InvoicesImportIdentity,
38
+ Migration20261017T075839InvoicesDropInvoiceTemplates,
37
39
  ];
38
- export { Migration20260629T125121InvoicesModule, Migration20260801T111000InvoicesGenericTemplateReseed, Migration20260817T201110InvoicesCorrectionIdempotencyKey, Migration20260903T101756InvoicesNamespaceBlockNames, Migration20260914T133603InvoicesErpImportedSaleDocuments, Migration20260926T230239InvoicesImportIdentity, };
40
+ export { Migration20260629T125121InvoicesModule, Migration20260801T111000InvoicesGenericTemplateReseed, Migration20260817T201110InvoicesCorrectionIdempotencyKey, Migration20260903T101756InvoicesNamespaceBlockNames, Migration20260914T133603InvoicesErpImportedSaleDocuments, Migration20260926T230239InvoicesImportIdentity, Migration20261017T075839InvoicesDropInvoiceTemplates, };
39
41
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/migrations/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,sCAAsC,EAAE,MAAM,sCAAsC,CAAC;AAC9F,OAAO,EAAE,qDAAqD,EAAE,MAAM,uDAAuD,CAAC;AAC9H,OAAO,EAAE,wDAAwD,EAAE,MAAM,0DAA0D,CAAC;AACpI,OAAO,EAAE,mDAAmD,EAAE,MAAM,qDAAqD,CAAC;AAC1H,OAAO,EAAE,wDAAwD,EAAE,MAAM,2DAA2D,CAAC;AACrI,OAAO,EAAE,8CAA8C,EAAE,MAAM,+CAA+C,CAAC;AAE/G,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,sCAAsC;IACtC,qDAAqD;IACrD,wDAAwD;IACxD,mDAAmD;IACnD,wDAAwD;IACxD,8CAA8C;CAC/C,CAAC;AAEF,OAAO,EACL,sCAAsC,EACtC,qDAAqD,EACrD,wDAAwD,EACxD,mDAAmD,EACnD,wDAAwD,EACxD,8CAA8C,GAC/C,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/migrations/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,sCAAsC,EAAE,MAAM,sCAAsC,CAAC;AAC9F,OAAO,EAAE,qDAAqD,EAAE,MAAM,uDAAuD,CAAC;AAC9H,OAAO,EAAE,wDAAwD,EAAE,MAAM,0DAA0D,CAAC;AACpI,OAAO,EAAE,mDAAmD,EAAE,MAAM,qDAAqD,CAAC;AAC1H,OAAO,EAAE,wDAAwD,EAAE,MAAM,2DAA2D,CAAC;AACrI,OAAO,EAAE,8CAA8C,EAAE,MAAM,+CAA+C,CAAC;AAC/G,OAAO,EAAE,oDAAoD,EAAE,MAAM,sDAAsD,CAAC;AAE5H,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,sCAAsC;IACtC,qDAAqD;IACrD,wDAAwD;IACxD,mDAAmD;IACnD,wDAAwD;IACxD,8CAA8C;IAC9C,oDAAoD;CACrD,CAAC;AAEF,OAAO,EACL,sCAAsC,EACtC,qDAAqD,EACrD,wDAAwD,EACxD,mDAAmD,EACnD,wDAAwD,EACxD,8CAA8C,EAC9C,oDAAoD,GACrD,CAAC"}
package/docs/invoices.md CHANGED
@@ -97,17 +97,24 @@ misconfiguration must not become a storefront outage.
97
97
  - **e-invoicing** — for KSeF / Peppol / similar, plug a sender adapter
98
98
  that consumes `invoice.issued.v1` events.
99
99
 
100
- ## PDF templates (page builder)
101
-
102
- Admin route `/invoices/templates` edits a Puck tree of invoice sections
103
- (`InvoiceHeader`, `InvoiceParties`, line/VAT tables, totals, notes, KSeF,
104
- plus layout blocks: spacer, divider, logo, footer). Section props
105
- personalize typography, column visibility, and labels; missing props keep
106
- the historical default layout.
107
-
108
- - `GET /api/v1/admin/invoice-templates/:id/preview` — PDF of the **saved**
109
- template content for that id (sample invoice fixture).
110
- - `POST /api/v1/admin/invoice-templates/:id/preview` — same, with a draft
111
- `{ data }` body so authors can preview unsaved canvas state.
112
- - Runtime issue path still uses `resolveTree(salesChannelId)` (active
113
- channel/global template).
100
+ ## PDF templates
101
+
102
+ Invoice PDF layouts are designed in **Document templates → Invoice** (the
103
+ **Templates** tab of **Invoices** opens it; the former `/invoices/templates`
104
+ addresses redirect there). The invoice blocks — header, parties, line items,
105
+ VAT summary, totals, notes, spacer, divider, logo, footer — plus blocks other
106
+ installed modules contribute to invoices (a KSeF section) are the invoice
107
+ template's palette. Every invoice PDF — the administrator and customer
108
+ downloads, the regenerate, and the PDF attached to the invoice e-mail — is
109
+ produced from the default invoice template of the invoice's sales channel,
110
+ else the default for all channels, else the built-in invoice layout. Invoice
111
+ PDFs are printed in Polish.
112
+
113
+ The KSeF number is printed exactly once: by a placed block that prints it, or
114
+ otherwise by the header.
115
+
116
+ The former invoice-template administration API (`/api/v1/admin/invoice-templates*`)
117
+ is withdrawn; invoice templates are managed through
118
+ `/api/v1/admin/document-templates`. Invoicing cannot be switched on without
119
+ Document templates, and Document templates cannot be switched off while
120
+ invoicing is on.
package/i18n/en.json CHANGED
@@ -10,8 +10,6 @@
10
10
  "settings.storefrontBaseUrl.label": "Storefront base URL (invoice email links)",
11
11
  "actions.openInvoices.label": "Open invoices",
12
12
  "actions.openInvoices.description": "View and manage issued invoices and corrections",
13
- "actions.invoiceTemplates.label": "Invoice templates",
14
- "actions.invoiceTemplates.description": "Customize the invoice PDF layout (WYSIWYG)",
15
13
  "list.title": "Invoices",
16
14
  "errors.INVOICE_NOT_READY": "The invoice for this order is not ready yet. It becomes available once it has been issued.",
17
15
  "errors.INVOICE_NUMBER_PATTERN_COLLIDES": "This numbering pattern can produce the same document number as another sales channel. Invoice numbers must be unique across the whole platform.",
@@ -41,5 +39,7 @@
41
39
  "blocks.invoiceLogo.description": "The seller logo.",
42
40
  "blocks.invoiceFooter.label": "Footer / legal",
43
41
  "blocks.invoiceFooter.description": "The legal footer printed at the bottom of the invoice.",
44
- "blocks.category.invoice": "Invoice sections"
42
+ "blocks.category.invoice": "Invoice sections",
43
+ "documentTypes.invoice.label": "Invoice",
44
+ "documentTypes.invoice.description": "The invoice PDF: downloaded by administrators and customers, and attached to the invoice e-mail."
45
45
  }
package/i18n/pl.json CHANGED
@@ -10,8 +10,6 @@
10
10
  "settings.storefrontBaseUrl.label": "Bazowy URL Storefront (linki w mailach z fakturą)",
11
11
  "actions.openInvoices.label": "Otwórz faktury",
12
12
  "actions.openInvoices.description": "Przeglądaj i zarządzaj wystawionymi fakturami i korektami",
13
- "actions.invoiceTemplates.label": "Szablony faktur",
14
- "actions.invoiceTemplates.description": "Dostosuj wygląd PDF faktury (WYSIWYG)",
15
13
  "list.title": "Faktury",
16
14
  "errors.INVOICE_NOT_READY": "Faktura do tego zamówienia nie jest jeszcze gotowa. Będzie dostępna po jej wystawieniu.",
17
15
  "errors.INVOICE_NUMBER_PATTERN_COLLIDES": "Ten wzorzec numeracji może wygenerować taki sam numer dokumentu jak inny kanał sprzedaży. Numery faktur muszą być unikalne w całej platformie.",
@@ -41,5 +39,7 @@
41
39
  "blocks.invoiceLogo.description": "Logo sprzedawcy.",
42
40
  "blocks.invoiceFooter.label": "Stopka / informacje prawne",
43
41
  "blocks.invoiceFooter.description": "Stopka prawna drukowana na dole faktury.",
44
- "blocks.category.invoice": "Sekcje faktury"
42
+ "blocks.category.invoice": "Sekcje faktury",
43
+ "documentTypes.invoice.label": "Faktura",
44
+ "documentTypes.invoice.description": "PDF faktury: pobierany przez administratorów i klientów oraz dołączany do e-maila z fakturą."
45
45
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@endora-commerce/mod-invoices",
3
- "version": "0.105.0",
3
+ "version": "0.107.0",
4
4
  "type": "module",
5
5
  "sideEffects": false,
6
6
  "description": "Invoice generation, numbering, PDF templates, corrections, and email delivery.",
@@ -62,12 +62,12 @@
62
62
  "react": "^19",
63
63
  "react-router-dom": "^7",
64
64
  "zod": "^4",
65
- "@endora-commerce/admin-kit": "0.105.0",
66
- "@endora-commerce/contracts": "0.105.0",
67
- "@endora-commerce/email-components": "0.105.0",
68
- "@endora-commerce/page-builder-admin": "0.105.0",
69
- "@endora-commerce/page-builder-core": "0.105.0",
70
- "@endora-commerce/platform": "0.105.0"
65
+ "@endora-commerce/admin-kit": "0.107.0",
66
+ "@endora-commerce/contracts": "0.107.0",
67
+ "@endora-commerce/email-components": "0.107.0",
68
+ "@endora-commerce/page-builder-admin": "0.107.0",
69
+ "@endora-commerce/page-builder-core": "0.107.0",
70
+ "@endora-commerce/platform": "0.107.0"
71
71
  },
72
72
  "peerDependenciesMeta": {
73
73
  "@endora-commerce/admin-kit": {
@@ -106,12 +106,12 @@
106
106
  "typescript": "^5.9.3",
107
107
  "vitest": "^4.1.11",
108
108
  "zod": "^4.2.0",
109
- "@endora-commerce/admin-kit": "0.105.0",
110
- "@endora-commerce/contracts": "0.105.0",
111
- "@endora-commerce/page-builder-admin": "0.105.0",
112
- "@endora-commerce/email-components": "0.105.0",
113
- "@endora-commerce/page-builder-core": "0.105.0",
114
- "@endora-commerce/platform": "0.105.0"
109
+ "@endora-commerce/admin-kit": "0.107.0",
110
+ "@endora-commerce/contracts": "0.107.0",
111
+ "@endora-commerce/email-components": "0.107.0",
112
+ "@endora-commerce/page-builder-admin": "0.107.0",
113
+ "@endora-commerce/page-builder-core": "0.107.0",
114
+ "@endora-commerce/platform": "0.107.0"
115
115
  },
116
116
  "scripts": {
117
117
  "build": "tsc -p tsconfig.build.json && tsc -p tsconfig.ui.json",
@@ -1,11 +0,0 @@
1
- import { type ReactNode } from 'react';
2
- import '@puckeditor/core/puck.css';
3
- /** Admin editor for an invoice PDF template (feature 047, US6). */
4
- export declare function InvoiceTemplateEditor(): ReactNode;
5
- /**
6
- * The registry loads a route component through a dynamic-import factory and
7
- * reads its default export (feature 091, FR-013). The named export stays: it is
8
- * the spelling this module's own code and its tests use.
9
- */
10
- export default InvoiceTemplateEditor;
11
- //# sourceMappingURL=InvoiceTemplateEditor.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"InvoiceTemplateEditor.d.ts","sourceRoot":"","sources":["../../../src/admin/pages/InvoiceTemplateEditor.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA6C,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAGlF,OAAO,2BAA2B,CAAC;AAmEnC,mEAAmE;AACnE,wBAAgB,qBAAqB,IAAI,SAAS,CA8OjD;AAED;;;;GAIG;AACH,eAAe,qBAAqB,CAAC"}