@spaceinvoices/react-ui 0.4.5 → 0.4.7

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 (138) hide show
  1. package/cli/dist/index.js +1 -1
  2. package/package.json +1 -1
  3. package/src/components/advance-invoices/advance-invoices.hooks.ts +2 -2
  4. package/src/components/advance-invoices/create/create-advance-invoice-form.tsx +146 -74
  5. package/src/components/advance-invoices/create/locales/de.ts +5 -0
  6. package/src/components/advance-invoices/create/locales/es.ts +5 -0
  7. package/src/components/advance-invoices/create/locales/fr.ts +5 -0
  8. package/src/components/advance-invoices/create/locales/hr.ts +5 -0
  9. package/src/components/advance-invoices/create/locales/it.ts +5 -0
  10. package/src/components/advance-invoices/create/locales/nl.ts +5 -0
  11. package/src/components/advance-invoices/create/locales/pl.ts +5 -0
  12. package/src/components/advance-invoices/create/locales/pt.ts +5 -0
  13. package/src/components/advance-invoices/create/locales/sl.ts +5 -0
  14. package/src/components/advance-invoices/create/prepare-advance-invoice-submission.ts +5 -5
  15. package/src/components/credit-notes/create/create-credit-note-form.tsx +138 -72
  16. package/src/components/credit-notes/create/locales/de.ts +5 -0
  17. package/src/components/credit-notes/create/locales/es.ts +5 -0
  18. package/src/components/credit-notes/create/locales/fr.ts +5 -0
  19. package/src/components/credit-notes/create/locales/hr.ts +5 -0
  20. package/src/components/credit-notes/create/locales/it.ts +5 -0
  21. package/src/components/credit-notes/create/locales/nl.ts +5 -0
  22. package/src/components/credit-notes/create/locales/pl.ts +5 -0
  23. package/src/components/credit-notes/create/locales/pt.ts +5 -0
  24. package/src/components/credit-notes/create/locales/sl.ts +5 -0
  25. package/src/components/credit-notes/credit-notes.hooks.ts +2 -2
  26. package/src/components/dashboard/collection-rate-card/use-collection-rate.ts +48 -92
  27. package/src/components/dashboard/invoice-status-chart/use-invoice-status.ts +48 -82
  28. package/src/components/dashboard/payment-methods-chart/use-payment-methods.ts +22 -31
  29. package/src/components/dashboard/payment-trend-chart/use-payment-trend.ts +33 -48
  30. package/src/components/dashboard/revenue-trend-chart/use-revenue-trend.ts +56 -76
  31. package/src/components/dashboard/shared/index.ts +1 -1
  32. package/src/components/dashboard/shared/use-revenue-data.ts +106 -182
  33. package/src/components/dashboard/shared/use-stats-counts.ts +18 -68
  34. package/src/components/dashboard/shared/use-stats-query.ts +35 -5
  35. package/src/components/dashboard/tax-collected-card/use-tax-collected.ts +57 -75
  36. package/src/components/dashboard/top-customers-chart/use-top-customers.ts +38 -49
  37. package/src/components/delivery-notes/create/create-delivery-note-form.tsx +50 -2
  38. package/src/components/delivery-notes/create/locales/de.ts +5 -0
  39. package/src/components/delivery-notes/create/locales/es.ts +5 -0
  40. package/src/components/delivery-notes/create/locales/fr.ts +5 -0
  41. package/src/components/delivery-notes/create/locales/hr.ts +5 -0
  42. package/src/components/delivery-notes/create/locales/it.ts +5 -0
  43. package/src/components/delivery-notes/create/locales/nl.ts +5 -0
  44. package/src/components/delivery-notes/create/locales/pl.ts +5 -0
  45. package/src/components/delivery-notes/create/locales/pt.ts +5 -0
  46. package/src/components/delivery-notes/create/locales/sl.ts +5 -0
  47. package/src/components/documents/create/document-details-section.tsx +478 -350
  48. package/src/components/documents/create/document-recipient-section.tsx +30 -1
  49. package/src/components/documents/create/live-preview.tsx +15 -28
  50. package/src/components/documents/create/prepare-document-submission.ts +4 -1
  51. package/src/components/documents/create/smart-code-insert-button.tsx +6 -0
  52. package/src/components/documents/create/use-document-customer-form.ts +4 -0
  53. package/src/components/documents/shared/document-preview-skeleton.tsx +63 -0
  54. package/src/components/documents/shared/index.ts +1 -0
  55. package/src/components/documents/view/document-actions-bar.tsx +29 -7
  56. package/src/components/documents/view/document-details-card.tsx +6 -0
  57. package/src/components/documents/view/locales/de.ts +1 -0
  58. package/src/components/documents/view/locales/es.ts +1 -0
  59. package/src/components/documents/view/locales/fr.ts +1 -0
  60. package/src/components/documents/view/locales/hr.ts +1 -0
  61. package/src/components/documents/view/locales/it.ts +1 -0
  62. package/src/components/documents/view/locales/nl.ts +1 -0
  63. package/src/components/documents/view/locales/pl.ts +1 -0
  64. package/src/components/documents/view/locales/pt.ts +1 -0
  65. package/src/components/documents/view/locales/sl.ts +1 -0
  66. package/src/components/entities/entity-settings-form/email-template-variables-info.tsx +6 -0
  67. package/src/components/entities/entity-settings-form/input-with-preview.tsx +2 -145
  68. package/src/components/entities/entity-settings-form/locales/de.ts +4 -0
  69. package/src/components/entities/entity-settings-form/locales/es.ts +4 -0
  70. package/src/components/entities/entity-settings-form/locales/fr.ts +4 -0
  71. package/src/components/entities/entity-settings-form/locales/hr.ts +4 -0
  72. package/src/components/entities/entity-settings-form/locales/it.ts +4 -0
  73. package/src/components/entities/entity-settings-form/locales/nl.ts +4 -0
  74. package/src/components/entities/entity-settings-form/locales/pl.ts +4 -0
  75. package/src/components/entities/entity-settings-form/locales/pt.ts +4 -0
  76. package/src/components/entities/entity-settings-form/locales/sl.ts +4 -0
  77. package/src/components/entities/fina-settings-form/fina-settings-form.tsx +15 -0
  78. package/src/components/entities/fina-settings-form/fina-settings.hooks.ts +5 -1
  79. package/src/components/entities/fina-settings-form/locales/de.ts +3 -0
  80. package/src/components/entities/fina-settings-form/locales/en.ts +3 -0
  81. package/src/components/entities/fina-settings-form/locales/es.ts +3 -0
  82. package/src/components/entities/fina-settings-form/locales/fr.ts +3 -0
  83. package/src/components/entities/fina-settings-form/locales/hr.ts +3 -0
  84. package/src/components/entities/fina-settings-form/locales/it.ts +3 -0
  85. package/src/components/entities/fina-settings-form/locales/nl.ts +3 -0
  86. package/src/components/entities/fina-settings-form/locales/pl.ts +3 -0
  87. package/src/components/entities/fina-settings-form/locales/pt.ts +3 -0
  88. package/src/components/entities/fina-settings-form/locales/sl.ts +3 -0
  89. package/src/components/entities/fina-settings-form/sections/premises-management-section.tsx +4 -4
  90. package/src/components/entities/fina-settings-form/sections/register-premise-dialog.tsx +3 -3
  91. package/src/components/entities/settings/defaults-settings-form.tsx +38 -1
  92. package/src/components/entities/settings/tax-rules-settings-form.tsx +32 -15
  93. package/src/components/estimates/create/create-estimate-form.tsx +46 -4
  94. package/src/components/estimates/create/locales/de.ts +5 -0
  95. package/src/components/estimates/create/locales/es.ts +5 -0
  96. package/src/components/estimates/create/locales/fr.ts +5 -0
  97. package/src/components/estimates/create/locales/hr.ts +5 -0
  98. package/src/components/estimates/create/locales/it.ts +5 -0
  99. package/src/components/estimates/create/locales/nl.ts +5 -0
  100. package/src/components/estimates/create/locales/pl.ts +5 -0
  101. package/src/components/estimates/create/locales/pt.ts +5 -0
  102. package/src/components/estimates/create/locales/sl.ts +5 -0
  103. package/src/components/invoices/create/create-invoice-form.tsx +258 -96
  104. package/src/components/invoices/create/locales/de.ts +19 -0
  105. package/src/components/invoices/create/locales/es.ts +19 -0
  106. package/src/components/invoices/create/locales/fr.ts +19 -0
  107. package/src/components/invoices/create/locales/hr.ts +19 -0
  108. package/src/components/invoices/create/locales/it.ts +19 -0
  109. package/src/components/invoices/create/locales/nl.ts +19 -0
  110. package/src/components/invoices/create/locales/pl.ts +19 -0
  111. package/src/components/invoices/create/locales/pt.ts +19 -0
  112. package/src/components/invoices/create/locales/sl.ts +19 -0
  113. package/src/components/invoices/create/prepare-invoice-submission.ts +5 -5
  114. package/src/components/invoices/invoices.hooks.ts +3 -3
  115. package/src/components/table/table-pagination.tsx +1 -1
  116. package/src/components/ui/progress.tsx +27 -0
  117. package/src/generate-schemas.ts +15 -2
  118. package/src/generated/schemas/advanceinvoice.ts +4 -0
  119. package/src/generated/schemas/creditnote.ts +3 -0
  120. package/src/generated/schemas/customer.ts +2 -0
  121. package/src/generated/schemas/deliverynote.ts +3 -0
  122. package/src/generated/schemas/entity.ts +14 -4
  123. package/src/generated/schemas/entityapikey.ts +19 -0
  124. package/src/generated/schemas/estimate.ts +4 -0
  125. package/src/generated/schemas/finasettings.ts +4 -3
  126. package/src/generated/schemas/index.ts +1 -0
  127. package/src/generated/schemas/invoice.ts +4 -0
  128. package/src/generated/schemas/renderadvanceinvoicepreview_body.ts +17 -11
  129. package/src/generated/schemas/rendercreditnotepreview_body.ts +17 -11
  130. package/src/generated/schemas/renderdeliverynotepreview_body.ts +15 -8
  131. package/src/generated/schemas/renderestimatepreview_body.ts +15 -8
  132. package/src/generated/schemas/renderinvoicepreview_body.ts +17 -11
  133. package/src/generated/schemas/startpdfexport_body.ts +12 -5
  134. package/src/generated/schemas/webhook.ts +4 -0
  135. package/src/hooks/use-transaction-type-check.ts +152 -0
  136. package/src/hooks/use-vies-check.ts +7 -131
  137. package/src/lib/template-variables.tsx +167 -0
  138. package/src/providers/entities-context.tsx +2 -2
@@ -1,68 +1,57 @@
1
1
  /**
2
2
  * Top customers hook using the entity stats API.
3
3
  * Server-side aggregation by customer for accurate rankings.
4
+ * Sends 1 query in a batch request.
4
5
  */
5
6
  import type { StatsQueryDataItem } from "@spaceinvoices/js-sdk";
6
- import { useQuery } from "@tanstack/react-query";
7
- import { useSDK } from "@/ui/providers/sdk-provider";
8
- import { STATS_QUERY_CACHE_KEY } from "../shared/use-stats-query";
7
+ import { useStatsQuery } from "../shared/use-stats-query";
9
8
 
10
9
  export const TOP_CUSTOMERS_CACHE_KEY = "dashboard-top-customers";
11
10
 
12
11
  export type TopCustomersData = { name: string; revenue: number }[];
13
12
 
14
13
  export function useTopCustomersData(entityId: string | undefined, limit = 5) {
15
- const { sdk } = useSDK();
16
-
17
- const query = useQuery({
18
- queryKey: [STATS_QUERY_CACHE_KEY, entityId, "top-customers", limit],
19
- queryFn: async () => {
20
- if (!entityId || !sdk) throw new Error("Missing entity or SDK");
21
- return sdk.entityStats.queryEntityStats(
22
- {
23
- metrics: [
24
- { type: "sum", field: "total_with_tax_converted", alias: "revenue" },
25
- { type: "count", alias: "invoice_count" },
26
- ],
27
- table: "invoices",
28
- filters: { is_draft: false, voided_at: null },
29
- group_by: ["customer_name", "quote_currency"], // Include currency for display
30
- order_by: [{ field: "revenue", direction: "desc" }],
31
- limit: limit * 2, // Get more results to aggregate across currencies
32
- },
33
- { entity_id: entityId },
34
- );
14
+ const query = useStatsQuery(
15
+ entityId,
16
+ {
17
+ metrics: [
18
+ { type: "sum", field: "total_with_tax_converted", alias: "revenue" },
19
+ { type: "count", alias: "invoice_count" },
20
+ ],
21
+ table: "invoices",
22
+ filters: { is_draft: false, voided_at: null },
23
+ group_by: ["customer_name", "quote_currency"],
24
+ order_by: [{ field: "revenue", direction: "desc" }],
25
+ limit: limit * 2,
35
26
  },
36
- enabled: !!entityId && !!sdk,
37
- staleTime: 120_000,
38
- select: (response) => {
39
- const data = response.data || [];
40
-
41
- // Aggregate by customer name (in case of multiple quote_currency rows)
42
- const customerMap: Record<string, number> = {};
43
- let currency = "EUR";
44
-
45
- for (const row of data as StatsQueryDataItem[]) {
46
- const name = String(row.customer_name || "Unknown");
47
- customerMap[name] = (customerMap[name] || 0) + (Number(row.revenue) || 0);
48
- // Get currency from first row with data
49
- if (row.quote_currency && currency === "EUR") {
50
- currency = String(row.quote_currency);
27
+ {
28
+ select: (response) => {
29
+ const data = response.data || [];
30
+
31
+ // Aggregate by customer name (in case of multiple quote_currency rows)
32
+ const customerMap: Record<string, number> = {};
33
+ let currency = "EUR";
34
+
35
+ for (const row of data as StatsQueryDataItem[]) {
36
+ const name = String(row.customer_name || "Unknown");
37
+ customerMap[name] = (customerMap[name] || 0) + (Number(row.revenue) || 0);
38
+ if (row.quote_currency && currency === "EUR") {
39
+ currency = String(row.quote_currency);
40
+ }
51
41
  }
52
- }
53
42
 
54
- // Convert to array, sort by revenue, and take top 'limit'
55
- const customers = Object.entries(customerMap)
56
- .map(([name, revenue]) => ({ name, revenue }))
57
- .sort((a, b) => b.revenue - a.revenue)
58
- .slice(0, limit);
43
+ const customers = Object.entries(customerMap)
44
+ .map(([name, revenue]) => ({ name, revenue }))
45
+ .sort((a, b) => b.revenue - a.revenue)
46
+ .slice(0, limit);
59
47
 
60
- return {
61
- data: customers,
62
- currency, // Currency from document data
63
- };
48
+ return {
49
+ data: customers,
50
+ currency,
51
+ };
52
+ },
64
53
  },
65
- });
54
+ );
66
55
 
67
56
  return {
68
57
  data: query.data?.data || [],
@@ -10,7 +10,7 @@ import { Form } from "@/ui/components/ui/form";
10
10
  import { Label } from "@/ui/components/ui/label";
11
11
  import { createDeliveryNoteSchema } from "@/ui/generated/schemas";
12
12
  import { useNextDocumentNumber } from "@/ui/hooks/use-next-document-number";
13
- import { useViesCheck } from "@/ui/hooks/use-vies-check";
13
+ import { useTransactionTypeCheck } from "@/ui/hooks/use-transaction-type-check";
14
14
  import type { ComponentTranslationProps } from "@/ui/lib/translation";
15
15
  import { createTranslation } from "@/ui/lib/translation";
16
16
  import { useEntities } from "@/ui/providers/entities-context";
@@ -18,7 +18,9 @@ import { useFormFooterRegistration } from "@/ui/providers/form-footer-context";
18
18
  import { CUSTOMERS_CACHE_KEY } from "../../customers/customers.hooks";
19
19
  import {
20
20
  DocumentDetailsSection,
21
+ DocumentFooterField,
21
22
  DocumentNoteField,
23
+ DocumentSignatureField,
22
24
  DocumentTaxClauseField,
23
25
  } from "../../documents/create/document-details-section";
24
26
  import { DocumentItemsSection, type PriceModesMap } from "../../documents/create/document-items-section";
@@ -95,6 +97,7 @@ export default function CreateDeliveryNoteForm({
95
97
 
96
98
  // Hide prices state (delivery note specific)
97
99
  const defaultHidePrices = (activeEntity?.settings as any)?.delivery_note_hide_prices ?? false;
100
+ const defaultFooter = (activeEntity?.settings as any)?.document_footer || "";
98
101
  const [hidePrices, setHidePrices] = useState<boolean>((initialValues as any)?.hide_prices ?? defaultHidePrices);
99
102
 
100
103
  // Fetch next delivery note number
@@ -134,8 +137,10 @@ export default function CreateDeliveryNoteForm({
134
137
  },
135
138
  ],
136
139
  currency_code: initialValues?.currency_code || activeEntity?.currency_code || "EUR",
140
+ reference: (initialValues as any)?.reference ?? "",
137
141
  note: initialValues?.note ?? "",
138
142
  tax_clause: (initialValues as any)?.tax_clause ?? "",
143
+ footer: (initialValues as any)?.footer ?? defaultFooter,
139
144
  },
140
145
  });
141
146
 
@@ -159,6 +164,14 @@ export default function CreateDeliveryNoteForm({
159
164
  }
160
165
  }, [nextNumberData?.number, form]);
161
166
 
167
+ // Set default footer from entity settings when entity data is available
168
+ useEffect(() => {
169
+ const entityDefaultFooter = (activeEntity?.settings as any)?.document_footer;
170
+ if (entityDefaultFooter && !form.getValues("footer")) {
171
+ form.setValue("footer", entityDefaultFooter);
172
+ }
173
+ }, [activeEntity, form]);
174
+
162
175
  // Auto-add tax field for tax subject entities
163
176
  useEffect(() => {
164
177
  if (activeEntity?.is_tax_subject) {
@@ -169,6 +182,14 @@ export default function CreateDeliveryNoteForm({
169
182
  }
170
183
  }, [activeEntity?.is_tax_subject, form]);
171
184
 
185
+ // Set default signature from entity settings
186
+ useEffect(() => {
187
+ const entityDefaultSignature = (activeEntity?.settings as any)?.default_document_signature;
188
+ if (entityDefaultSignature && !form.getValues("signature")) {
189
+ form.setValue("signature", entityDefaultSignature);
190
+ }
191
+ }, [activeEntity, form]);
192
+
172
193
  const formValues = useWatch({
173
194
  control: form.control,
174
195
  });
@@ -181,12 +202,13 @@ export default function CreateDeliveryNoteForm({
181
202
  transactionType,
182
203
  isFetching: isViesFetching,
183
204
  warning: viesWarning,
184
- } = useViesCheck({
205
+ } = useTransactionTypeCheck({
185
206
  issuerCountryCode: activeEntity?.country_code,
186
207
  isTaxSubject: activeEntity?.is_tax_subject ?? true,
187
208
  customerCountry: formValues.customer?.country,
188
209
  customerCountryCode: formValues.customer?.country_code,
189
210
  customerTaxNumber: formValues.customer?.tax_number,
211
+ customerIsEndConsumer: (formValues.customer as any)?.is_end_consumer,
190
212
  enabled: !!activeEntity,
191
213
  });
192
214
 
@@ -302,7 +324,9 @@ export default function CreateDeliveryNoteForm({
302
324
  customer: formValues.customer,
303
325
  items: transformedItems,
304
326
  currency_code: formValues.currency_code,
327
+ reference: formValues.reference,
305
328
  note: formValues.note,
329
+ signature: formValues.signature,
306
330
  hide_prices: hidePrices,
307
331
  };
308
332
  callback(payload);
@@ -386,6 +410,30 @@ export default function CreateDeliveryNoteForm({
386
410
  transactionType={transactionType}
387
411
  isTransactionTypeFetching={isViesFetching}
388
412
  />
413
+
414
+ <DocumentSignatureField
415
+ control={form.control}
416
+ t={t}
417
+ entity={activeEntity}
418
+ document={{
419
+ number: formValues.number,
420
+ date: formValues.date,
421
+ currency_code: formValues.currency_code,
422
+ customer: formValues.customer as any,
423
+ }}
424
+ />
425
+
426
+ <DocumentFooterField
427
+ control={form.control}
428
+ t={t}
429
+ entity={activeEntity}
430
+ document={{
431
+ number: formValues.number,
432
+ date: formValues.date,
433
+ currency_code: formValues.currency_code,
434
+ customer: formValues.customer as any,
435
+ }}
436
+ />
389
437
  </form>
390
438
  </Form>
391
439
  );
@@ -27,6 +27,9 @@ export default {
27
27
  "Insert variable": "Variable einfügen",
28
28
  "Add payment instructions, terms, or other notes...":
29
29
  "Zahlungsanweisungen, Bedingungen oder andere Notizen hinzufügen...",
30
+ // Signature field
31
+ Signature: "Unterschrift",
32
+ "Add signature text...": "Unterschriftstext hinzufügen...",
30
33
  Quantity: "Menge",
31
34
  Price: "Preis",
32
35
  Unit: "Einheit",
@@ -62,5 +65,7 @@ export default {
62
65
  "Diese Rechnung wird nicht fiskalisiert (nicht-inländische Transaktion)",
63
66
  "Tax Clause": "Steuerklausel",
64
67
  "Add tax clause...": "Steuerklausel hinzufügen...",
68
+ Footer: "Fußzeile",
69
+ "Add document footer...": "Dokumentfußzeile hinzufügen...",
65
70
  "Reverse charge - tax exempt EU B2B sale": "Umkehrung der Steuerschuldnerschaft - steuerbefreiter EU B2B Verkauf",
66
71
  } as const;
@@ -26,6 +26,9 @@ export default {
26
26
  Note: "Nota",
27
27
  "Insert variable": "Insertar variable",
28
28
  "Add payment instructions, terms, or other notes...": "Añada instrucciones de pago, condiciones u otras notas...",
29
+ // Signature field
30
+ Signature: "Firma",
31
+ "Add signature text...": "Añadir texto de firma...",
29
32
  Quantity: "Cantidad",
30
33
  Price: "Precio",
31
34
  Unit: "Unidad",
@@ -61,5 +64,7 @@ export default {
61
64
  "Esta factura no será fiscalizada (transacción no nacional)",
62
65
  "Tax Clause": "Cláusula fiscal",
63
66
  "Add tax clause...": "Agregar cláusula fiscal...",
67
+ Footer: "Pie de página",
68
+ "Add document footer...": "Añadir pie de página del documento...",
64
69
  "Reverse charge - tax exempt EU B2B sale": "Inversión del sujeto pasivo - venta EU B2B exenta de impuestos",
65
70
  } as const;
@@ -27,6 +27,9 @@ export default {
27
27
  "Insert variable": "Insérer une variable",
28
28
  "Add payment instructions, terms, or other notes...":
29
29
  "Ajoutez des instructions de paiement, des conditions ou d'autres notes...",
30
+ // Signature field
31
+ Signature: "Signature",
32
+ "Add signature text...": "Ajouter un texte de signature...",
30
33
  Quantity: "Quantité",
31
34
  Price: "Prix",
32
35
  Unit: "Unité",
@@ -62,5 +65,7 @@ export default {
62
65
  "Cette facture ne sera pas fiscalisée (transaction non nationale)",
63
66
  "Tax Clause": "Clause fiscale",
64
67
  "Add tax clause...": "Ajouter une clause fiscale...",
68
+ Footer: "Pied de page",
69
+ "Add document footer...": "Ajouter un pied de page...",
65
70
  "Reverse charge - tax exempt EU B2B sale": "Autoliquidation - vente B2B UE exonérée de taxe",
66
71
  } as const;
@@ -26,6 +26,9 @@ export default {
26
26
  Note: "Napomena",
27
27
  "Insert variable": "Umetni varijablu",
28
28
  "Add payment instructions, terms, or other notes...": "Dodajte upute za plaćanje, uvjete ili druge napomene...",
29
+ // Signature field
30
+ Signature: "Potpis",
31
+ "Add signature text...": "Dodaj tekst potpisa...",
29
32
  Quantity: "Količina",
30
33
  Price: "Cijena",
31
34
  Unit: "Jedinica",
@@ -61,5 +64,7 @@ export default {
61
64
  "Ovaj račun neće biti fiskaliziran (nedomaća transakcija)",
62
65
  "Tax Clause": "Porezna klauzula",
63
66
  "Add tax clause...": "Dodajte poreznu klauzulu...",
67
+ Footer: "Podnožje",
68
+ "Add document footer...": "Dodajte podnožje dokumenta...",
64
69
  "Reverse charge - tax exempt EU B2B sale": "Prijenos porezne obveze - porezno oslobođena EU B2B prodaja",
65
70
  } as const;
@@ -26,6 +26,9 @@ export default {
26
26
  Note: "Nota",
27
27
  "Insert variable": "Inserisci variabile",
28
28
  "Add payment instructions, terms, or other notes...": "Aggiungi istruzioni di pagamento, condizioni o altre note...",
29
+ // Signature field
30
+ Signature: "Firma",
31
+ "Add signature text...": "Aggiungi testo della firma...",
29
32
  Quantity: "Quantità",
30
33
  Price: "Prezzo",
31
34
  Unit: "Unità",
@@ -61,5 +64,7 @@ export default {
61
64
  "Questa fattura non sarà fiscalizzata (transazione non nazionale)",
62
65
  "Tax Clause": "Clausola fiscale",
63
66
  "Add tax clause...": "Aggiungi clausola fiscale...",
67
+ Footer: "Piè di pagina",
68
+ "Add document footer...": "Aggiungi piè di pagina del documento...",
64
69
  "Reverse charge - tax exempt EU B2B sale": "Inversione contabile - vendita B2B UE esente da imposta",
65
70
  } as const;
@@ -27,6 +27,9 @@ export default {
27
27
  "Insert variable": "Variabele invoegen",
28
28
  "Add payment instructions, terms, or other notes...":
29
29
  "Voeg betalingsinstructies, voorwaarden of andere notities toe...",
30
+ // Signature field
31
+ Signature: "Handtekening",
32
+ "Add signature text...": "Handtekeningtekst toevoegen...",
30
33
  Quantity: "Aantal",
31
34
  Price: "Prijs",
32
35
  Unit: "Eenheid",
@@ -62,5 +65,7 @@ export default {
62
65
  "Deze factuur wordt niet gefiscaliseerd (niet-binnenlandse transactie)",
63
66
  "Tax Clause": "Belastingclausule",
64
67
  "Add tax clause...": "Belastingclausule toevoegen...",
68
+ Footer: "Voettekst",
69
+ "Add document footer...": "Documentvoettekst toevoegen...",
65
70
  "Reverse charge - tax exempt EU B2B sale": "Verlegging - belastingvrijgestelde EU B2B verkoop",
66
71
  } as const;
@@ -26,6 +26,9 @@ export default {
26
26
  Note: "Uwaga",
27
27
  "Insert variable": "Wstaw zmienną",
28
28
  "Add payment instructions, terms, or other notes...": "Dodaj instrukcje płatności, warunki lub inne uwagi...",
29
+ // Signature field
30
+ Signature: "Podpis",
31
+ "Add signature text...": "Dodaj tekst podpisu...",
29
32
  Quantity: "Ilość",
30
33
  Price: "Cena",
31
34
  Unit: "Jednostka",
@@ -61,5 +64,7 @@ export default {
61
64
  "Ta faktura nie będzie fiskalizowana (transakcja niekrajowa)",
62
65
  "Tax Clause": "Klauzula podatkowa",
63
66
  "Add tax clause...": "Dodaj klauzulę podatkową...",
67
+ Footer: "Stopka",
68
+ "Add document footer...": "Dodaj stopkę dokumentu...",
64
69
  "Reverse charge - tax exempt EU B2B sale": "Odwrotne obciążenie - zwolniona z podatku sprzedaż EU B2B",
65
70
  } as const;
@@ -27,6 +27,9 @@ export default {
27
27
  "Insert variable": "Inserir variável",
28
28
  "Add payment instructions, terms, or other notes...":
29
29
  "Adicione instruções de pagamento, condições ou outras notas...",
30
+ // Signature field
31
+ Signature: "Assinatura",
32
+ "Add signature text...": "Adicionar texto de assinatura...",
30
33
  Quantity: "Quantidade",
31
34
  Price: "Preço",
32
35
  Unit: "Unidade",
@@ -62,5 +65,7 @@ export default {
62
65
  "Esta fatura não será fiscalizada (transação não nacional)",
63
66
  "Tax Clause": "Cláusula fiscal",
64
67
  "Add tax clause...": "Adicionar cláusula fiscal...",
68
+ Footer: "Rodapé",
69
+ "Add document footer...": "Adicionar rodapé do documento...",
65
70
  "Reverse charge - tax exempt EU B2B sale": "Autoliquidação - venda B2B UE isenta de imposto",
66
71
  } as const;
@@ -26,6 +26,9 @@ export default {
26
26
  Note: "Opomba",
27
27
  "Insert variable": "Vstavi spremenljivko",
28
28
  "Add payment instructions, terms, or other notes...": "Dodajte navodila za plačilo, pogoje ali druge opombe...",
29
+ // Signature field
30
+ Signature: "Podpis",
31
+ "Add signature text...": "Dodaj besedilo podpisa...",
29
32
  Quantity: "Količina",
30
33
  Price: "Cena",
31
34
  Unit: "Enota",
@@ -61,5 +64,7 @@ export default {
61
64
  "Ta račun ne bo fiskaliziran (nedomača transakcija)",
62
65
  "Tax Clause": "Davčna klavzula",
63
66
  "Add tax clause...": "Dodajte davčno klavzulo...",
67
+ Footer: "Noga dokumenta",
68
+ "Add document footer...": "Dodajte nogo dokumenta...",
64
69
  "Reverse charge - tax exempt EU B2B sale": "Obrnjena davčna obveznost - davka oproščena EU B2B prodaja",
65
70
  } as const;