@design.estate/dees-document 5.1.0 → 5.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist_bundle/bundle.js +439 -423
- package/dist_bundle/bundle.js.map +1 -1
- package/dist_bundle/bundle.js.third-party-notices.json +27 -1
- package/dist_bundle/bundle.js.third-party-notices.txt +58 -2
- package/dist_ts/00_commitinfo_data.js +1 -1
- package/dist_ts/classes.pdfservice.js +2 -1
- package/dist_ts_shared/accountingdoc.d.ts +10 -0
- package/dist_ts_shared/accountingdoc.js +20 -1
- package/dist_ts_shared/interfaces/document.d.ts +10 -0
- package/dist_ts_shared/paymentcode.d.ts +30 -3
- package/dist_ts_shared/paymentcode.js +33 -3
- package/dist_ts_shared/plugins.d.ts +2 -0
- package/dist_ts_shared/plugins.js +4 -1
- package/dist_ts_shared/translation.d.ts +4 -0
- package/dist_ts_shared/translation.js +10 -1
- package/dist_ts_web/00_commitinfo_data.js +1 -1
- package/dist_ts_web/elements/contentinvoice.d.ts +5 -1
- package/dist_ts_web/elements/contentinvoice.js +57 -28
- package/dist_ts_web/elements/paymentcode.d.ts +2 -0
- package/dist_ts_web/elements/paymentcode.js +14 -2
- package/package.json +4 -3
- package/readme.md +5 -2
- package/ts/00_commitinfo_data.ts +1 -1
- package/ts/classes.pdfservice.ts +1 -0
- package/ts_web/00_commitinfo_data.ts +1 -1
- package/ts_web/elements/contentinvoice.ts +61 -29
- package/ts_web/elements/paymentcode.ts +7 -0
|
@@ -118,6 +118,8 @@ const positionColumns = {
|
|
|
118
118
|
fixedWidth: 90,
|
|
119
119
|
flexibleMinWidth: 120,
|
|
120
120
|
};
|
|
121
|
+
/** The positions of a document without VAT (`withoutVat`): the same, without the VAT rate's 50 px. */
|
|
122
|
+
const positionColumnsWithoutVat = { ...positionColumns, fixedWidth: 40 };
|
|
121
123
|
/**
|
|
122
124
|
* A reminder's claims, and its charges and sums, which share the last column;
|
|
123
125
|
* the document label is flexible with at least 150 px (as the grid in the
|
|
@@ -328,6 +330,11 @@ let DeContentInvoice = (() => {
|
|
|
328
330
|
grid-template-columns: 40px minmax(120px, 1fr) var(--quantity-column-width, 50px) var(--unit-column-width, 50px) var(--unit-price-column-width, 100px) 50px var(--amount-column-width, 100px);
|
|
329
331
|
}
|
|
330
332
|
|
|
333
|
+
/* a document without VAT (\`withoutVat\`) has no VAT column */
|
|
334
|
+
.grid.withoutVat {
|
|
335
|
+
grid-template-columns: 40px minmax(120px, 1fr) var(--quantity-column-width, 50px) var(--unit-column-width, 50px) var(--unit-price-column-width, 100px) var(--amount-column-width, 100px);
|
|
336
|
+
}
|
|
337
|
+
|
|
331
338
|
.topLine {
|
|
332
339
|
margin-top: 5px;
|
|
333
340
|
background: #e7e7e7;
|
|
@@ -801,7 +808,11 @@ let DeContentInvoice = (() => {
|
|
|
801
808
|
/**
|
|
802
809
|
* The QR pay box. It is printed only when the payment has a valid EPC QR
|
|
803
810
|
* code: a euro amount to the sender's IBAN, which a document in another
|
|
804
|
-
* currency or without the sender's IBAN does not have.
|
|
811
|
+
* currency or without the sender's IBAN does not have. The code carries the
|
|
812
|
+
* reference the document states (`paymentOptions.paymentReference`): an ISO
|
|
813
|
+
* 11649 creditor reference in line 10, any other as free text, and where it
|
|
814
|
+
* states none, the letter's number (`epcRemittanceOf`). A stated reference
|
|
815
|
+
* is printed beside the code, so a payer who types the transfer quotes it.
|
|
805
816
|
*/
|
|
806
817
|
renderPaymentInfo(optionsArg) {
|
|
807
818
|
const bic = optionsArg.from.sepaConnection?.bic;
|
|
@@ -809,7 +820,7 @@ let DeContentInvoice = (() => {
|
|
|
809
820
|
const iban = optionsArg.from.sepaConnection?.iban;
|
|
810
821
|
const currency = optionsArg.currency;
|
|
811
822
|
const totalGross = optionsArg.amount;
|
|
812
|
-
const
|
|
823
|
+
const remittance = plugins.shared.epcRemittanceOf(optionsArg.statedReference, optionsArg.number);
|
|
813
824
|
if (typeof iban !== "string" ||
|
|
814
825
|
plugins.shared.buildEpcQrPayload({
|
|
815
826
|
bic,
|
|
@@ -817,7 +828,8 @@ let DeContentInvoice = (() => {
|
|
|
817
828
|
iban,
|
|
818
829
|
currency,
|
|
819
830
|
amount: totalGross,
|
|
820
|
-
remittanceInformation:
|
|
831
|
+
remittanceInformation: remittance.remittanceInformation,
|
|
832
|
+
...(remittance.creditorReference ? { creditorReference: remittance.creditorReference } : {}),
|
|
821
833
|
}) === null) {
|
|
822
834
|
return null;
|
|
823
835
|
}
|
|
@@ -826,6 +838,9 @@ let DeContentInvoice = (() => {
|
|
|
826
838
|
<div>
|
|
827
839
|
<div class="label">${this.translateKey("invoice@@payment.qr")}</div>
|
|
828
840
|
<span> ${this.translateKey("invoice@@payment.qr.description")} </span>
|
|
841
|
+
${remittance.printedReference
|
|
842
|
+
? html `<div>${this.translateKey("invoice@@payment.reference")}: ${remittance.printedReference}</div>`
|
|
843
|
+
: ""}
|
|
829
844
|
</div>
|
|
830
845
|
<dedocument-paymentcode
|
|
831
846
|
bic="${bic}"
|
|
@@ -833,7 +848,8 @@ let DeContentInvoice = (() => {
|
|
|
833
848
|
iban="${iban}"
|
|
834
849
|
currency="${currency}"
|
|
835
850
|
totalGross="${totalGross}"
|
|
836
|
-
reference="${
|
|
851
|
+
reference="${remittance.remittanceInformation}"
|
|
852
|
+
creditorReference="${remittance.creditorReference ?? ""}"
|
|
837
853
|
/>
|
|
838
854
|
</div>
|
|
839
855
|
</div>`;
|
|
@@ -927,7 +943,8 @@ let DeContentInvoice = (() => {
|
|
|
927
943
|
from: accountingDocArg.from,
|
|
928
944
|
currency: accountingDocArg.currency,
|
|
929
945
|
amount: summaryArg ? summaryArg.amountDue : this.getTotalGross(),
|
|
930
|
-
|
|
946
|
+
number: accountingDocArg.id,
|
|
947
|
+
statedReference: accountingDocArg.paymentOptions?.paymentReference,
|
|
931
948
|
})}
|
|
932
949
|
`;
|
|
933
950
|
}
|
|
@@ -1225,7 +1242,8 @@ let DeContentInvoice = (() => {
|
|
|
1225
1242
|
from: reminderArg.from,
|
|
1226
1243
|
currency: reminderArg.currency,
|
|
1227
1244
|
amount: totals.payable,
|
|
1228
|
-
|
|
1245
|
+
number: reminderArg.id,
|
|
1246
|
+
statedReference: reminderArg.paymentOptions?.paymentReference,
|
|
1229
1247
|
})}
|
|
1230
1248
|
`;
|
|
1231
1249
|
}
|
|
@@ -1257,6 +1275,11 @@ let DeContentInvoice = (() => {
|
|
|
1257
1275
|
return;
|
|
1258
1276
|
}
|
|
1259
1277
|
const accountingDoc = this.accountingDoc;
|
|
1278
|
+
// a document without VAT prints no VAT column, no VAT line and one total; one that states tax is refused
|
|
1279
|
+
if (accountingDoc) {
|
|
1280
|
+
plugins.shared.assertWithoutVatStatesNoTax(accountingDoc, this.documentSettings);
|
|
1281
|
+
}
|
|
1282
|
+
const withoutVat = this.documentSettings.withoutVat === true;
|
|
1260
1283
|
// throws when the advance payments do not add up to the paid amount
|
|
1261
1284
|
const paidAmountSummary = accountingDoc
|
|
1262
1285
|
? plugins.shared.getPaidAmountSummary(accountingDoc, this.getTotalGross())
|
|
@@ -1265,7 +1288,7 @@ let DeContentInvoice = (() => {
|
|
|
1265
1288
|
${this.renderCorrection()}
|
|
1266
1289
|
<div>${this.translateKey(this.docContent.introStatement)}</div>
|
|
1267
1290
|
${this.renderRelatedDocuments()}
|
|
1268
|
-
<div class="grid topLine dataHeader">
|
|
1291
|
+
<div class="grid topLine dataHeader ${withoutVat ? "withoutVat" : ""}">
|
|
1269
1292
|
<div class="lineItem rightAlign">
|
|
1270
1293
|
${this.translateKey("invoice@@item.position")}
|
|
1271
1294
|
</div>
|
|
@@ -1279,17 +1302,19 @@ let DeContentInvoice = (() => {
|
|
|
1279
1302
|
${this.translateKey("invoice@@unit.type")}
|
|
1280
1303
|
</div>
|
|
1281
1304
|
<div class="lineItem rightAlign unitPriceCell">
|
|
1282
|
-
${this.translateKey("invoice@@price.unit.net")}
|
|
1283
|
-
</div>
|
|
1284
|
-
<div class="lineItem rightAlign">
|
|
1285
|
-
${this.translateKey("invoice@@vat.short")}
|
|
1305
|
+
${this.translateKey(withoutVat ? "invoice@@price.unit.withoutVat" : "invoice@@price.unit.net")}
|
|
1286
1306
|
</div>
|
|
1307
|
+
${withoutVat
|
|
1308
|
+
? html ``
|
|
1309
|
+
: html `<div class="lineItem rightAlign">
|
|
1310
|
+
${this.translateKey("invoice@@vat.short")}
|
|
1311
|
+
</div>`}
|
|
1287
1312
|
<div class="lineItem rightAlign amountCell">
|
|
1288
|
-
${this.translateKey("invoice@@price.total.net")}
|
|
1313
|
+
${this.translateKey(withoutVat ? "invoice@@price.total.withoutVat" : "invoice@@price.total.net")}
|
|
1289
1314
|
</div>
|
|
1290
1315
|
</div>
|
|
1291
1316
|
${accountingDoc?.items?.map((invoiceItem, index) => html `
|
|
1292
|
-
<div class="grid needsDataHeader">
|
|
1317
|
+
<div class="grid needsDataHeader ${withoutVat ? "withoutVat" : ""}">
|
|
1293
1318
|
<div class="lineItem rightAlign">${index + 1}</div>
|
|
1294
1319
|
<div class="lineItem descriptionCell">${invoiceItem.name}</div>
|
|
1295
1320
|
<div class="lineItem rightAlign quantityCell">
|
|
@@ -1301,24 +1326,28 @@ let DeContentInvoice = (() => {
|
|
|
1301
1326
|
<div class="lineItem rightAlign unitPriceCell">
|
|
1302
1327
|
${this.formatPrice(invoiceItem.unitNetPrice)}
|
|
1303
1328
|
</div>
|
|
1304
|
-
|
|
1305
|
-
|
|
1306
|
-
|
|
1329
|
+
${withoutVat
|
|
1330
|
+
? html ``
|
|
1331
|
+
: html `<div class="lineItem rightAlign">
|
|
1332
|
+
${invoiceItem.vatPercentage}%
|
|
1333
|
+
</div>`}
|
|
1307
1334
|
<div class="lineItem rightAlign amountCell">
|
|
1308
1335
|
${this.formatPrice(invoiceItem.unitQuantity * invoiceItem.unitNetPrice)}
|
|
1309
1336
|
</div>
|
|
1310
1337
|
</div>
|
|
1311
1338
|
`)}
|
|
1312
1339
|
<div class="sums">
|
|
1313
|
-
|
|
1314
|
-
|
|
1315
|
-
|
|
1316
|
-
|
|
1317
|
-
|
|
1318
|
-
|
|
1319
|
-
|
|
1320
|
-
|
|
1321
|
-
|
|
1340
|
+
${withoutVat
|
|
1341
|
+
? html ``
|
|
1342
|
+
: html `<div class="sumline">
|
|
1343
|
+
<div class="label">
|
|
1344
|
+
${this.translateKey("invoice@@sum.total.net")}
|
|
1345
|
+
</div>
|
|
1346
|
+
<div class="value value--total rightAlign amountCell">
|
|
1347
|
+
${this.formatPrice(this.getTotalNet())}
|
|
1348
|
+
</div>
|
|
1349
|
+
</div>`}
|
|
1350
|
+
${(withoutVat ? [] : this.getVatGroups()).map((vatGroupArg) => {
|
|
1322
1351
|
let itemNumbers = vatGroupArg.items
|
|
1323
1352
|
.map((item) => (accountingDoc?.items.indexOf(item) ?? -1) + 1)
|
|
1324
1353
|
.join(", ");
|
|
@@ -1342,7 +1371,7 @@ let DeContentInvoice = (() => {
|
|
|
1342
1371
|
`;
|
|
1343
1372
|
})}
|
|
1344
1373
|
<div class="sumline">
|
|
1345
|
-
<div class="label">${this.translateKey("invoice@@totalGross")}</div>
|
|
1374
|
+
<div class="label">${this.translateKey(withoutVat ? "invoice@@totalWithoutVat" : "invoice@@totalGross")}</div>
|
|
1346
1375
|
<div class="value value--total rightAlign amountCell">
|
|
1347
1376
|
${this.formatPrice(this.getTotalGross())}
|
|
1348
1377
|
</div>
|
|
@@ -1366,7 +1395,7 @@ let DeContentInvoice = (() => {
|
|
|
1366
1395
|
? this.renderPaymentRequest(accountingDoc, paidAmountSummary)
|
|
1367
1396
|
: null}
|
|
1368
1397
|
`, contentNodes.currentContent);
|
|
1369
|
-
this.fitColumns(contentNodes.currentContent, ".grid.dataHeader", positionColumns);
|
|
1398
|
+
this.fitColumns(contentNodes.currentContent, ".grid.dataHeader", withoutVat ? positionColumnsWithoutVat : positionColumns);
|
|
1370
1399
|
}
|
|
1371
1400
|
/**
|
|
1372
1401
|
* Sizes the columns of a table to their widest cell. Every row is a grid of
|
|
@@ -1413,4 +1442,4 @@ let DeContentInvoice = (() => {
|
|
|
1413
1442
|
return DeContentInvoice = _classThis;
|
|
1414
1443
|
})();
|
|
1415
1444
|
export { DeContentInvoice };
|
|
1416
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudGludm9pY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90c193ZWIvZWxlbWVudHMvY29udGVudGludm9pY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUgsT0FBTyxFQUNMLFdBQVcsRUFDWCxRQUFRLEVBQ1IsSUFBSSxFQUNKLGFBQWEsRUFFYixHQUFHLEVBQ0gsTUFBTSxFQUNOLFFBQVEsR0FDVCxNQUFNLDZCQUE2QixDQUFDO0FBQ3JDLE9BQU8sS0FBSyxPQUFPLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQVFwRCw4RUFBOEU7QUFDOUUsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLGVBQXdCLEVBQVUsRUFBRTtJQUM3RCxRQUFRLENBQUMsZUFBZSxJQUFJLElBQUksQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUM7UUFDaEQsS0FBSyxJQUFJO1lBQ1AsT0FBTyxPQUFPLENBQUM7UUFDakIsS0FBSyxJQUFJO1lBQ1AsT0FBTyxPQUFPLENBQUM7UUFDakIsS0FBSyxJQUFJO1lBQ1AsT0FBTyxPQUFPLENBQUM7UUFDakIsS0FBSyxJQUFJO1lBQ1AsT0FBTyxPQUFPLENBQUM7UUFDakIsS0FBSyxJQUFJO1lBQ1AsT0FBTyxPQUFPLENBQUM7UUFDakIsS0FBSyxJQUFJO1lBQ1AsT0FBTyxPQUFPLENBQUM7UUFDakI7WUFDRSxPQUFPLE9BQU8sQ0FBQztJQUNuQixDQUFDO0FBQ0gsQ0FBQyxDQUFDO0FBWUYsTUFBTSxxQkFBcUIsR0FHdkI7SUFDRixPQUFPLEVBQUU7UUFDUCxjQUFjLEVBQUUseUJBQXlCO1FBQ3pDLGVBQWUsRUFBRSxJQUFJO1FBQ3JCLHNCQUFzQixFQUFFLEtBQUs7S0FDOUI7SUFDRCx3RUFBd0U7SUFDeEUsMkVBQTJFO0lBQzNFLHNEQUFzRDtJQUN0RCxt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
|
|
1445
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudGludm9pY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90c193ZWIvZWxlbWVudHMvY29udGVudGludm9pY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUgsT0FBTyxFQUNMLFdBQVcsRUFDWCxRQUFRLEVBQ1IsSUFBSSxFQUNKLGFBQWEsRUFFYixHQUFHLEVBQ0gsTUFBTSxFQUNOLFFBQVEsR0FDVCxNQUFNLDZCQUE2QixDQUFDO0FBQ3JDLE9BQU8sS0FBSyxPQUFPLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQVFwRCw4RUFBOEU7QUFDOUUsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLGVBQXdCLEVBQVUsRUFBRTtJQUM3RCxRQUFRLENBQUMsZUFBZSxJQUFJLElBQUksQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUM7UUFDaEQsS0FBSyxJQUFJO1lBQ1AsT0FBTyxPQUFPLENBQUM7UUFDakIsS0FBSyxJQUFJO1lBQ1AsT0FBTyxPQUFPLENBQUM7UUFDakIsS0FBSyxJQUFJO1lBQ1AsT0FBTyxPQUFPLENBQUM7UUFDakIsS0FBSyxJQUFJO1lBQ1AsT0FBTyxPQUFPLENBQUM7UUFDakIsS0FBSyxJQUFJO1lBQ1AsT0FBTyxPQUFPLENBQUM7UUFDakIsS0FBSyxJQUFJO1lBQ1AsT0FBTyxPQUFPLENBQUM7UUFDakI7WUFDRSxPQUFPLE9BQU8sQ0FBQztJQUNuQixDQUFDO0FBQ0gsQ0FBQyxDQUFDO0FBWUYsTUFBTSxxQkFBcUIsR0FHdkI7SUFDRixPQUFPLEVBQUU7UUFDUCxjQUFjLEVBQUUseUJBQXlCO1FBQ3pDLGVBQWUsRUFBRSxJQUFJO1FBQ3JCLHNCQUFzQixFQUFFLEtBQUs7S0FDOUI7SUFDRCx3RUFBd0U7SUFDeEUsMkVBQTJFO0lBQzNFLHNEQUFzRDtJQUN0RCxt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
|
|
@@ -13,6 +13,8 @@ export declare class DedocumentPaymentCode extends DeesElement {
|
|
|
13
13
|
accessor currency: string;
|
|
14
14
|
accessor totalGross: number;
|
|
15
15
|
accessor reference: string;
|
|
16
|
+
/** an ISO 11649 creditor reference for line 10; the reference (line 11) is empty beside it */
|
|
17
|
+
accessor creditorReference: string | undefined;
|
|
16
18
|
/** The EPC QR code content, or null when the payment has no valid code (see buildEpcQrPayload). */
|
|
17
19
|
private get payload();
|
|
18
20
|
private updateQRCode;
|
|
@@ -61,6 +61,9 @@ let DedocumentPaymentCode = (() => {
|
|
|
61
61
|
let _reference_decorators;
|
|
62
62
|
let _reference_initializers = [];
|
|
63
63
|
let _reference_extraInitializers = [];
|
|
64
|
+
let _creditorReference_decorators;
|
|
65
|
+
let _creditorReference_initializers = [];
|
|
66
|
+
let _creditorReference_extraInitializers = [];
|
|
64
67
|
var DedocumentPaymentCode = class extends _classSuper {
|
|
65
68
|
static { _classThis = this; }
|
|
66
69
|
static {
|
|
@@ -72,6 +75,7 @@ let DedocumentPaymentCode = (() => {
|
|
|
72
75
|
_currency_decorators = [property()];
|
|
73
76
|
_totalGross_decorators = [property({ type: Number })];
|
|
74
77
|
_reference_decorators = [property()];
|
|
78
|
+
_creditorReference_decorators = [property()];
|
|
75
79
|
__esDecorate(this, null, _canvasEl_decorators, { kind: "accessor", name: "canvasEl", static: false, private: false, access: { has: obj => "canvasEl" in obj, get: obj => obj.canvasEl, set: (obj, value) => { obj.canvasEl = value; } }, metadata: _metadata }, _canvasEl_initializers, _canvasEl_extraInitializers);
|
|
76
80
|
__esDecorate(this, null, _bic_decorators, { kind: "accessor", name: "bic", static: false, private: false, access: { has: obj => "bic" in obj, get: obj => obj.bic, set: (obj, value) => { obj.bic = value; } }, metadata: _metadata }, _bic_initializers, _bic_extraInitializers);
|
|
77
81
|
__esDecorate(this, null, _name_decorators, { kind: "accessor", name: "name", static: false, private: false, access: { has: obj => "name" in obj, get: obj => obj.name, set: (obj, value) => { obj.name = value; } }, metadata: _metadata }, _name_initializers, _name_extraInitializers);
|
|
@@ -79,6 +83,7 @@ let DedocumentPaymentCode = (() => {
|
|
|
79
83
|
__esDecorate(this, null, _currency_decorators, { kind: "accessor", name: "currency", static: false, private: false, access: { has: obj => "currency" in obj, get: obj => obj.currency, set: (obj, value) => { obj.currency = value; } }, metadata: _metadata }, _currency_initializers, _currency_extraInitializers);
|
|
80
84
|
__esDecorate(this, null, _totalGross_decorators, { kind: "accessor", name: "totalGross", static: false, private: false, access: { has: obj => "totalGross" in obj, get: obj => obj.totalGross, set: (obj, value) => { obj.totalGross = value; } }, metadata: _metadata }, _totalGross_initializers, _totalGross_extraInitializers);
|
|
81
85
|
__esDecorate(this, null, _reference_decorators, { kind: "accessor", name: "reference", static: false, private: false, access: { has: obj => "reference" in obj, get: obj => obj.reference, set: (obj, value) => { obj.reference = value; } }, metadata: _metadata }, _reference_initializers, _reference_extraInitializers);
|
|
86
|
+
__esDecorate(this, null, _creditorReference_decorators, { kind: "accessor", name: "creditorReference", static: false, private: false, access: { has: obj => "creditorReference" in obj, get: obj => obj.creditorReference, set: (obj, value) => { obj.creditorReference = value; } }, metadata: _metadata }, _creditorReference_initializers, _creditorReference_extraInitializers);
|
|
82
87
|
__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
|
|
83
88
|
DedocumentPaymentCode = _classThis = _classDescriptor.value;
|
|
84
89
|
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
@@ -118,6 +123,10 @@ let DedocumentPaymentCode = (() => {
|
|
|
118
123
|
#reference_accessor_storage = (__runInitializers(this, _totalGross_extraInitializers), __runInitializers(this, _reference_initializers, void 0));
|
|
119
124
|
get reference() { return this.#reference_accessor_storage; }
|
|
120
125
|
set reference(value) { this.#reference_accessor_storage = value; }
|
|
126
|
+
#creditorReference_accessor_storage = (__runInitializers(this, _reference_extraInitializers), __runInitializers(this, _creditorReference_initializers, void 0));
|
|
127
|
+
/** an ISO 11649 creditor reference for line 10; the reference (line 11) is empty beside it */
|
|
128
|
+
get creditorReference() { return this.#creditorReference_accessor_storage; }
|
|
129
|
+
set creditorReference(value) { this.#creditorReference_accessor_storage = value; }
|
|
121
130
|
/** The EPC QR code content, or null when the payment has no valid code (see buildEpcQrPayload). */
|
|
122
131
|
get payload() {
|
|
123
132
|
if (typeof this.name !== "string" ||
|
|
@@ -134,6 +143,9 @@ let DedocumentPaymentCode = (() => {
|
|
|
134
143
|
currency: this.currency,
|
|
135
144
|
amount: this.totalGross,
|
|
136
145
|
remittanceInformation: this.reference,
|
|
146
|
+
...(typeof this.creditorReference === "string" && this.creditorReference.length > 0
|
|
147
|
+
? { creditorReference: this.creditorReference }
|
|
148
|
+
: {}),
|
|
137
149
|
});
|
|
138
150
|
}
|
|
139
151
|
updateQRCode() {
|
|
@@ -154,7 +166,7 @@ let DedocumentPaymentCode = (() => {
|
|
|
154
166
|
}
|
|
155
167
|
constructor() {
|
|
156
168
|
super(...arguments);
|
|
157
|
-
__runInitializers(this,
|
|
169
|
+
__runInitializers(this, _creditorReference_extraInitializers);
|
|
158
170
|
}
|
|
159
171
|
static {
|
|
160
172
|
__runInitializers(_classThis, _classExtraInitializers);
|
|
@@ -163,4 +175,4 @@ let DedocumentPaymentCode = (() => {
|
|
|
163
175
|
return DedocumentPaymentCode = _classThis;
|
|
164
176
|
})();
|
|
165
177
|
export { DedocumentPaymentCode };
|
|
166
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
178
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5bWVudGNvZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90c193ZWIvZWxlbWVudHMvcGF5bWVudGNvZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLE9BQU8sRUFDTCxHQUFHLEVBQ0gsYUFBYSxFQUNiLFdBQVcsRUFDWCxJQUFJLEVBQ0osUUFBUSxFQUNSLEtBQUssR0FFTixNQUFNLDZCQUE2QixDQUFDO0FBQ3JDLE9BQU8sS0FBSyxPQUFPLE1BQU0sZUFBZSxDQUFDO0lBUzVCLHFCQUFxQjs0QkFEakMsYUFBYSxDQUFDLHdCQUF3QixDQUFDOzs7O3NCQUNHLFdBQVc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7cUNBQW5CLFNBQVEsV0FBVzs7OztvQ0FnQm5ELEtBQUssQ0FBQyxRQUFRLENBQUM7K0JBR2YsUUFBUSxFQUFFO2dDQUdWLFFBQVEsRUFBRTtnQ0FHVixRQUFRLEVBQUU7b0NBR1YsUUFBUSxFQUFFO3NDQUdWLFFBQVEsQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQztxQ0FHMUIsUUFBUSxFQUFFOzZDQUlWLFFBQVEsRUFBRTtZQXJCWCw2S0FBUyxRQUFRLDZCQUFSLFFBQVEsMkZBQXFCO1lBR3RDLDhKQUFTLEdBQUcsNkJBQUgsR0FBRyxpRkFBVTtZQUd0QixpS0FBUyxJQUFJLDZCQUFKLElBQUksbUZBQVU7WUFHdkIsaUtBQVMsSUFBSSw2QkFBSixJQUFJLG1GQUFVO1lBR3ZCLDZLQUFTLFFBQVEsNkJBQVIsUUFBUSwyRkFBVTtZQUczQixtTEFBUyxVQUFVLDZCQUFWLFVBQVUsK0ZBQVU7WUFHN0IsZ0xBQVMsU0FBUyw2QkFBVCxTQUFTLDZGQUFVO1lBSTVCLHdNQUFTLGlCQUFpQiw2QkFBakIsaUJBQWlCLDZHQUFxQjtZQXZDakQsNktBb0ZDOzs7O1FBbkZRLE1BQU0sQ0FBQyxNQUFNLEdBQUc7WUFDckIsR0FBRyxDQUFBOzs7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
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@design.estate/dees-document",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.3.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "A sophisticated framework for dynamically generating and rendering business documents like invoices with modern web technologies, featuring PDF creation, templating, and automation.",
|
|
6
6
|
"main": "dist_ts_web/index.js",
|
|
@@ -18,20 +18,21 @@
|
|
|
18
18
|
"@design.estate/dees-catalog": "^9.7.0 || ^10.0.0 || ^11.0.0 || ^12.0.0 || ^13.0.0 || ^14.0.0 || ^15.0.0 || ^16.0.0",
|
|
19
19
|
"@design.estate/dees-domtools": "^3.0.0",
|
|
20
20
|
"@design.estate/dees-element": "^3.2.0",
|
|
21
|
+
"@fin.cx/calculation": "^1.4.0",
|
|
21
22
|
"@push.rocks/smartfile": "^13.1.3",
|
|
22
23
|
"@push.rocks/smartfs": "^1.7.0",
|
|
23
24
|
"@push.rocks/smartjson": "^6.0.2",
|
|
24
25
|
"@push.rocks/smartpath": "^6.0.0",
|
|
25
26
|
"@push.rocks/smartpdf": "^6.0.1",
|
|
26
27
|
"@push.rocks/smarttime": "^4.2.3",
|
|
27
|
-
"@tsclass/tsclass": "^10.
|
|
28
|
+
"@tsclass/tsclass": "^10.2.0",
|
|
28
29
|
"@types/qrcode": "^1.5.6",
|
|
29
30
|
"qrcode": "^1.5.4"
|
|
30
31
|
},
|
|
31
32
|
"devDependencies": {
|
|
32
33
|
"@design.estate/dees-wcctools": "^3.9.4",
|
|
33
34
|
"@git.zone/tsbuild": "^5.0.0",
|
|
34
|
-
"@git.zone/tsbundle": "^3.0
|
|
35
|
+
"@git.zone/tsbundle": "^3.1.0",
|
|
35
36
|
"@git.zone/tsrun": "^3.0.2",
|
|
36
37
|
"@git.zone/tstest": "^6.3.2",
|
|
37
38
|
"@git.zone/tswatch": "^4.0.2",
|
package/readme.md
CHANGED
|
@@ -161,6 +161,9 @@ const documentSettings = {
|
|
|
161
161
|
// Display options
|
|
162
162
|
vatGroupPositions: true,
|
|
163
163
|
dateStyle: 'long', // 'short' | 'medium' | 'long' | 'full'
|
|
164
|
+
// no VAT column, no VAT line and no net sum, one total: a Kleinunternehmer's
|
|
165
|
+
// invoice (§ 34a UStDV); a document that states tax is refused
|
|
166
|
+
withoutVat: false,
|
|
164
167
|
|
|
165
168
|
// Theming
|
|
166
169
|
theme: {
|
|
@@ -403,7 +406,7 @@ A final invoice after advance invoices that stated tax has to list those payment
|
|
|
403
406
|
|
|
404
407
|
### QR pay box
|
|
405
408
|
|
|
406
|
-
A document that asks for payment prints a SEPA credit transfer QR code (EPC QR code, EPC069-12) for its gross total, or for its amount due when it states a paid amount, to the sender's IBAN, with the
|
|
409
|
+
A document that asks for payment prints a SEPA credit transfer QR code (EPC QR code, EPC069-12) for its gross total, or for its amount due when it states a paid amount, to the sender's IBAN. The code carries the reference the document states (`paymentOptions.paymentReference`, EN 16931 BT-83, from `@tsclass/tsclass` 10.2.0 on): an ISO 11649 creditor reference (`RF…`, valid by `@fin.cx/calculation`) in its own field, line 10, in its electronic form, with the free-text field empty; any other stated reference in the free-text field as stated; and where the document states none, the document number in the free-text field, as before. A stated reference is printed in the box as "Verwendungszweck" / "Payment reference", a creditor reference in groups of four (`RF18 5390 0754 7034`), so a payer who types the transfer quotes it; the number alone is not printed there, as before. The code carries euros only, so the box is omitted for another currency, for a total below 0.01 or above 999,999,999.99, and when the sender has no IBAN. Without a BIC the code uses version 002, which makes the BIC optional. Nothing follows the last filled line, and a line break inside the name or the remittance information becomes a space. The name is cut to the code's 70 characters and the remittance information to 140, at whole grapheme clusters. The code holds at most 331 bytes: text of multi-byte characters that would exceed them cuts the remittance information further; when no remittance information would be left, or the other lines alone exceed 331 bytes, no code is built and the box is omitted. `buildEpcQrPayload()` on `@design.estate/dees-document/shared` returns the code's content, or `null` when no valid code exists; it takes a `creditorReference`, which must be valid and never beside remittance information (EPC069-12 fills one of the two fields), or there is no valid code. `epcRemittanceOf(statedReference, number)` says which reference a document gives and what its box prints.
|
|
407
410
|
|
|
408
411
|
## Payment Reminders
|
|
409
412
|
|
|
@@ -415,7 +418,7 @@ A payment reminder (`finance.TPaymentReminder`, letter type `'payment-reminder'`
|
|
|
415
418
|
- **Charges**, when there are any: each with its `description` and amount and what it rests on. Default interest prints its computation as stated: principal, rate a year, base rate plus the surcharge points with the provision (§ 288 Abs. 1 or Abs. 2 BGB; on an obligation that arose from 1 January 2002 to 28 July 2014 the 8 points of § 288 Abs. 2 BGB a. F. with Art. 229 § 34 Satz 1 EGBGB; a continuing obligation that arose earlier comes under that version from 1 January 2003 (Art. 229 § 5 Satz 2 EGBGB), and its consideration rendered after 30 June 2016 under the current § 288 Abs. 2 BGB (Art. 229 § 34 Satz 2 EGBGB)), and the first and last day. The default lump sum prints § 288 Abs. 5 BGB. Every charge that accrues on a claim names it; interest and the lump sum always do. A cost with lump sums credited against it lists them (§ 288 Abs. 5 Satz 3 BGB); its amount is already the cost less them.
|
|
416
419
|
- **Sums**: the open claims, the charges, and the total payable, their sum, added in cents. There are no VAT rows: the charges are damages, not consideration for a supply.
|
|
417
420
|
- **Notes**, then the **payment deadline**, `dueInDays` after the reminder's date. A reminder needs no deadline of its own (§ 286 Abs. 1 Satz 1 BGB); one without `dueInDays` prints none, and its claims keep the due dates they stated.
|
|
418
|
-
- **QR pay box** for the total payable, with the reminder number as the remittance information, under the same conditions as on an invoice.
|
|
421
|
+
- **QR pay box** for the total payable, with the reference the reminder states (the invoice's creditor reference, say) or else the reminder number as the remittance information, under the same conditions as on an invoice.
|
|
419
422
|
|
|
420
423
|
```typescript
|
|
421
424
|
import { PdfService } from '@design.estate/dees-document';
|
package/ts/00_commitinfo_data.ts
CHANGED
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export const commitinfo = {
|
|
5
5
|
name: '@design.estate/dees-document',
|
|
6
|
-
version: '5.
|
|
6
|
+
version: '5.3.0',
|
|
7
7
|
description: 'A sophisticated framework for dynamically generating and rendering business documents like invoices with modern web technologies, featuring PDF creation, templating, and automation.'
|
|
8
8
|
}
|
package/ts/classes.pdfservice.ts
CHANGED
|
@@ -51,6 +51,7 @@ export class PdfService {
|
|
|
51
51
|
documentSettings: plugins.shared.interfaces.IDocumentSettings;
|
|
52
52
|
}): Promise<plugins.smartpdf.IPdf> {
|
|
53
53
|
plugins.shared.assertPaidAmountMatchesAdvancePayments(optionsArg.letterData);
|
|
54
|
+
plugins.shared.assertWithoutVatStatesNoTax(optionsArg.letterData, optionsArg.documentSettings);
|
|
54
55
|
const html = `
|
|
55
56
|
<script type="module">
|
|
56
57
|
${await helpers.getBundleAsString()}
|
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export const commitinfo = {
|
|
5
5
|
name: '@design.estate/dees-document',
|
|
6
|
-
version: '5.
|
|
6
|
+
version: '5.3.0',
|
|
7
7
|
description: 'A sophisticated framework for dynamically generating and rendering business documents like invoices with modern web technologies, featuring PDF creation, templating, and automation.'
|
|
8
8
|
}
|