@design.estate/dees-document 1.6.9 → 2.0.3

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 (110) hide show
  1. package/dist_bundle/bundle.js +622 -605
  2. package/dist_bundle/bundle.js.map +4 -4
  3. package/dist_ts/00_commitinfo_data.js +1 -1
  4. package/dist_ts/classes.pdfservice.d.ts +3 -3
  5. package/dist_ts/classes.pdfservice.js +6 -3
  6. package/dist_ts/helpers.d.ts +1 -1
  7. package/dist_ts/helpers.js +2 -2
  8. package/dist_ts/paths.js +4 -2
  9. package/dist_ts/plugins.d.ts +2 -0
  10. package/dist_ts/plugins.js +3 -1
  11. package/dist_ts_shared/demoletter.d.ts +3 -3
  12. package/dist_ts_shared/demoletter.js +223 -192
  13. package/dist_ts_shared/index.d.ts +6 -7
  14. package/dist_ts_shared/index.js +10 -8
  15. package/dist_ts_shared/interfaces/document.d.ts +15 -2
  16. package/dist_ts_shared/interfaces/document.js +1 -1
  17. package/dist_ts_shared/translation.d.ts +79 -28
  18. package/dist_ts_shared/translation.js +121 -107
  19. package/dist_ts_web/ts_shared/translation.d.ts +82 -0
  20. package/dist_ts_web/ts_shared/translation.js +134 -0
  21. package/dist_ts_web/{00_commitinfo_data.js → ts_web/00_commitinfo_data.js} +2 -2
  22. package/dist_ts_web/{elements → ts_web/elements}/contentinvoice.d.ts +12 -6
  23. package/dist_ts_web/ts_web/elements/contentinvoice.js +466 -0
  24. package/dist_ts_web/{elements → ts_web/elements}/document.d.ts +10 -10
  25. package/dist_ts_web/ts_web/elements/document.demo.js +9 -0
  26. package/dist_ts_web/ts_web/elements/document.js +306 -0
  27. package/dist_ts_web/ts_web/elements/index.d.ts +10 -0
  28. package/dist_ts_web/ts_web/elements/index.js +11 -0
  29. package/dist_ts_web/ts_web/elements/letterheader.d.ts +18 -0
  30. package/dist_ts_web/ts_web/elements/letterheader.js +224 -0
  31. package/dist_ts_web/ts_web/elements/page.d.ts +25 -0
  32. package/dist_ts_web/ts_web/elements/page.js +335 -0
  33. package/dist_ts_web/{elements → ts_web/elements}/pagecontainer.d.ts +4 -4
  34. package/dist_ts_web/ts_web/elements/pagecontainer.js +114 -0
  35. package/dist_ts_web/{elements → ts_web/elements}/pagecontent.d.ts +7 -6
  36. package/dist_ts_web/ts_web/elements/pagecontent.js +177 -0
  37. package/dist_ts_web/ts_web/elements/pagefooter.d.ts +17 -0
  38. package/dist_ts_web/ts_web/elements/pagefooter.js +234 -0
  39. package/dist_ts_web/ts_web/elements/pageheader.d.ts +17 -0
  40. package/dist_ts_web/ts_web/elements/pageheader.js +165 -0
  41. package/dist_ts_web/ts_web/elements/paymentcode.d.ts +19 -0
  42. package/dist_ts_web/ts_web/elements/paymentcode.js +162 -0
  43. package/dist_ts_web/{elements → ts_web/elements}/viewer.d.ts +5 -5
  44. package/dist_ts_web/ts_web/elements/viewer.demo.js +9 -0
  45. package/dist_ts_web/ts_web/elements/viewer.js +150 -0
  46. package/dist_ts_web/{index.js → ts_web/index.js} +1 -1
  47. package/dist_ts_web/{pages → ts_web/pages}/index.js +1 -1
  48. package/dist_ts_web/ts_web/pages/page1.js +21 -0
  49. package/dist_ts_web/{pages → ts_web/pages}/page2.js +1 -1
  50. package/dist_ts_web/ts_web/plugins.js +14 -0
  51. package/dist_ts_web/ts_web/style.js +38 -0
  52. package/license +2 -2
  53. package/package.json +21 -19
  54. package/readme.hints.md +40 -1
  55. package/readme.md +202 -125
  56. package/ts/00_commitinfo_data.ts +1 -1
  57. package/ts/classes.pdfservice.ts +15 -7
  58. package/ts/helpers.ts +1 -1
  59. package/ts/paths.ts +3 -1
  60. package/ts/plugins.ts +3 -0
  61. package/ts_web/00_commitinfo_data.ts +1 -1
  62. package/ts_web/elements/contentinvoice.ts +272 -250
  63. package/ts_web/elements/document.demo.ts +7 -4
  64. package/ts_web/elements/document.ts +68 -82
  65. package/ts_web/elements/index.ts +10 -9
  66. package/ts_web/elements/letterheader.ts +106 -39
  67. package/ts_web/elements/page.ts +106 -48
  68. package/ts_web/elements/pagecontainer.ts +14 -13
  69. package/ts_web/elements/pagecontent.ts +34 -53
  70. package/ts_web/elements/pagefooter.ts +125 -45
  71. package/ts_web/elements/pageheader.ts +22 -16
  72. package/ts_web/elements/paymentcode.ts +95 -0
  73. package/ts_web/elements/viewer.demo.ts +7 -4
  74. package/ts_web/elements/viewer.ts +26 -12
  75. package/ts_web/pages/page1.ts +10 -6
  76. package/ts_web/style.ts +34 -3
  77. package/dist_ts_shared/interfaces/translation.d.ts +0 -19
  78. package/dist_ts_shared/interfaces/translation.js +0 -2
  79. package/dist_ts_web/elements/contentinvoice.js +0 -388
  80. package/dist_ts_web/elements/document.demo.js +0 -6
  81. package/dist_ts_web/elements/document.js +0 -272
  82. package/dist_ts_web/elements/index.d.ts +0 -9
  83. package/dist_ts_web/elements/index.js +0 -10
  84. package/dist_ts_web/elements/letterheader.d.ts +0 -16
  85. package/dist_ts_web/elements/letterheader.js +0 -124
  86. package/dist_ts_web/elements/page.d.ts +0 -25
  87. package/dist_ts_web/elements/page.js +0 -219
  88. package/dist_ts_web/elements/pagecontainer.js +0 -67
  89. package/dist_ts_web/elements/pagecontent.js +0 -143
  90. package/dist_ts_web/elements/pagefooter.d.ts +0 -17
  91. package/dist_ts_web/elements/pagefooter.js +0 -138
  92. package/dist_ts_web/elements/pageheader.d.ts +0 -17
  93. package/dist_ts_web/elements/pageheader.js +0 -109
  94. package/dist_ts_web/elements/viewer.demo.js +0 -6
  95. package/dist_ts_web/elements/viewer.js +0 -101
  96. package/dist_ts_web/pages/page1.js +0 -17
  97. package/dist_ts_web/plugins.js +0 -14
  98. package/dist_ts_web/style.js +0 -7
  99. package/dist_watch/bundle.js +0 -40318
  100. package/dist_watch/bundle.js.map +0 -7
  101. package/dist_watch/index.html +0 -25
  102. /package/dist_ts_web/{00_commitinfo_data.d.ts → ts_web/00_commitinfo_data.d.ts} +0 -0
  103. /package/dist_ts_web/{elements → ts_web/elements}/document.demo.d.ts +0 -0
  104. /package/dist_ts_web/{elements → ts_web/elements}/viewer.demo.d.ts +0 -0
  105. /package/dist_ts_web/{index.d.ts → ts_web/index.d.ts} +0 -0
  106. /package/dist_ts_web/{pages → ts_web/pages}/index.d.ts +0 -0
  107. /package/dist_ts_web/{pages → ts_web/pages}/page1.d.ts +0 -0
  108. /package/dist_ts_web/{pages → ts_web/pages}/page2.d.ts +0 -0
  109. /package/dist_ts_web/{plugins.d.ts → ts_web/plugins.d.ts} +0 -0
  110. /package/dist_ts_web/{style.d.ts → ts_web/style.d.ts} +0 -0
@@ -0,0 +1,466 @@
1
+ /**
2
+ * content for invoices
3
+ */
4
+ var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
5
+ function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
6
+ var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
7
+ var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
8
+ var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
9
+ var _, done = false;
10
+ for (var i = decorators.length - 1; i >= 0; i--) {
11
+ var context = {};
12
+ for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
13
+ for (var p in contextIn.access) context.access[p] = contextIn.access[p];
14
+ context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
15
+ var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
16
+ if (kind === "accessor") {
17
+ if (result === void 0) continue;
18
+ if (result === null || typeof result !== "object") throw new TypeError("Object expected");
19
+ if (_ = accept(result.get)) descriptor.get = _;
20
+ if (_ = accept(result.set)) descriptor.set = _;
21
+ if (_ = accept(result.init)) initializers.unshift(_);
22
+ }
23
+ else if (_ = accept(result)) {
24
+ if (kind === "field") initializers.unshift(_);
25
+ else descriptor[key] = _;
26
+ }
27
+ }
28
+ if (target) Object.defineProperty(target, contextIn.name, descriptor);
29
+ done = true;
30
+ };
31
+ var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
32
+ var useValue = arguments.length > 2;
33
+ for (var i = 0; i < initializers.length; i++) {
34
+ value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
35
+ }
36
+ return useValue ? value : void 0;
37
+ };
38
+ import { DeesElement, property, html, customElement, css, render, domtools, } from "@design.estate/dees-element";
39
+ import * as plugins from "../plugins.js";
40
+ import { dedocumentSharedStyle } from "../style.js";
41
+ let DeContentInvoice = (() => {
42
+ let _classDecorators = [customElement("dedocument-contentinvoice")];
43
+ let _classDescriptor;
44
+ let _classExtraInitializers = [];
45
+ let _classThis;
46
+ let _classSuper = DeesElement;
47
+ let _letterData_decorators;
48
+ let _letterData_initializers = [];
49
+ let _letterData_extraInitializers = [];
50
+ let _documentSettings_decorators;
51
+ let _documentSettings_initializers = [];
52
+ let _documentSettings_extraInitializers = [];
53
+ var DeContentInvoice = class extends _classSuper {
54
+ static { _classThis = this; }
55
+ static {
56
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
57
+ _letterData_decorators = [property({
58
+ type: Object,
59
+ reflect: true,
60
+ })];
61
+ _documentSettings_decorators = [property({
62
+ type: Object,
63
+ reflect: true,
64
+ })];
65
+ __esDecorate(this, null, _letterData_decorators, { kind: "accessor", name: "letterData", static: false, private: false, access: { has: obj => "letterData" in obj, get: obj => obj.letterData, set: (obj, value) => { obj.letterData = value; } }, metadata: _metadata }, _letterData_initializers, _letterData_extraInitializers);
66
+ __esDecorate(this, null, _documentSettings_decorators, { kind: "accessor", name: "documentSettings", static: false, private: false, access: { has: obj => "documentSettings" in obj, get: obj => obj.documentSettings, set: (obj, value) => { obj.documentSettings = value; } }, metadata: _metadata }, _documentSettings_initializers, _documentSettings_extraInitializers);
67
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
68
+ DeContentInvoice = _classThis = _classDescriptor.value;
69
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
70
+ }
71
+ static demo = () => html `
72
+ <style>
73
+ .demoContainer {
74
+ background: white;
75
+ padding: 50px;
76
+ }
77
+ </style>
78
+ <div class="demoContainer">
79
+ <dedocument-contentinvoice></dedocument-contentinvoice>
80
+ </div>
81
+ `;
82
+ #letterData_accessor_storage = __runInitializers(this, _letterData_initializers, void 0);
83
+ get letterData() { return this.#letterData_accessor_storage; }
84
+ set letterData(value) { this.#letterData_accessor_storage = value; }
85
+ #documentSettings_accessor_storage = (__runInitializers(this, _letterData_extraInitializers), __runInitializers(this, _documentSettings_initializers, void 0));
86
+ get documentSettings() { return this.#documentSettings_accessor_storage; }
87
+ set documentSettings(value) { this.#documentSettings_accessor_storage = value; }
88
+ constructor() {
89
+ super();
90
+ domtools.DomTools.setupDomTools();
91
+ }
92
+ static styles = [
93
+ domtools.elementBasic.staticStyles,
94
+ dedocumentSharedStyle,
95
+ css `
96
+ .trimmedContent {
97
+ display: none;
98
+ }
99
+
100
+ .grid {
101
+ display: grid;
102
+ grid-template-columns: 40px auto 50px 50px 100px 50px 100px;
103
+ }
104
+
105
+ .topLine {
106
+ margin-top: 5px;
107
+ background: #e7e7e7;
108
+ font-weight: bold;
109
+ }
110
+
111
+ .lineItem {
112
+ font-size: 12px;
113
+ padding: 5px;
114
+ border-right: 1px dashed #ccc;
115
+ white-space: nowrap;
116
+ }
117
+
118
+ .lineItem:last-child {
119
+ border-right: none;
120
+ }
121
+
122
+ .value.rightAlign,
123
+ .lineItem.rightAlign {
124
+ text-align: right;
125
+ }
126
+
127
+ .invoiceLine {
128
+ background: #ffffff00;
129
+ border-bottom: 1px dotted #ccc;
130
+ }
131
+
132
+ .invoiceLine.highlighted {
133
+ transition: background 0.2s;
134
+ background: #ffc18f;
135
+ border: 1px solid #ff9d4d;
136
+ box-sizing: content-box;
137
+ }
138
+
139
+ .sums {
140
+ margin-top: 5px;
141
+ font-size: 12px;
142
+ padding-left: 50%;
143
+ }
144
+
145
+ .sums .sumline {
146
+ margin-top: 3px;
147
+ display: grid;
148
+ grid-template-columns: auto 100px;
149
+ }
150
+
151
+ .sums .sumline .label {
152
+ padding: 2px 5px;
153
+ border-right: 1px solid #ccc;
154
+ text-align: right;
155
+ font-weight: bold;
156
+ }
157
+
158
+ .sums .sumline .value {
159
+ padding: 2px 5px;
160
+ }
161
+
162
+ .sums .sumline .value--total {
163
+ font-weight: bold;
164
+ }
165
+
166
+ .divider {
167
+ margin-top: 8px;
168
+ border-top: 1px dotted #ccc;
169
+ }
170
+
171
+ .taxNote {
172
+ font-size: 12px;
173
+ padding: 4px;
174
+ background: #eeeeeb;
175
+ text-align: center;
176
+ }
177
+
178
+ .infoBox {
179
+ margin-top: 22px;
180
+ line-height: 1.4em;
181
+ }
182
+
183
+ .infoBox .label {
184
+ padding-bottom: 2px;
185
+ font-weight: bold;
186
+ }
187
+ `,
188
+ ];
189
+ render() {
190
+ return html `
191
+ <div class="trimmedContent"></div>
192
+ <div class="repeatedContent"></div>
193
+ <div class="currentContent"></div>
194
+ `;
195
+ }
196
+ formatPrice(value, currency = "EUR", lang = "de-DE") {
197
+ return new Intl.NumberFormat(lang, {
198
+ style: "currency",
199
+ currency,
200
+ }).format(value);
201
+ }
202
+ getTotalNet = (__runInitializers(this, _documentSettings_extraInitializers), () => {
203
+ let totalNet = 0;
204
+ if (!this.letterData) {
205
+ return totalNet;
206
+ }
207
+ for (const item of this.letterData.items) {
208
+ totalNet += item.unitNetPrice * item.unitQuantity;
209
+ }
210
+ return totalNet;
211
+ });
212
+ getTotalGross = () => {
213
+ let totalVat = 0;
214
+ if (!this.letterData) {
215
+ return totalVat;
216
+ }
217
+ for (const taxgroup of this.getVatGroups()) {
218
+ totalVat += taxgroup.vatAmountSum;
219
+ }
220
+ return this.getTotalNet() + totalVat;
221
+ };
222
+ getVatGroups = () => {
223
+ const vatGroups = [];
224
+ if (!this.letterData) {
225
+ return vatGroups;
226
+ }
227
+ const taxAmounts = [];
228
+ for (const item of this.letterData.items) {
229
+ taxAmounts.includes(item.vatPercentage)
230
+ ? null
231
+ : taxAmounts.push(item.vatPercentage);
232
+ }
233
+ for (const taxAmount of taxAmounts) {
234
+ const matchingItems = this.letterData.items.filter((itemArg) => itemArg.vatPercentage === taxAmount);
235
+ let sum = 0;
236
+ for (const matchingItem of matchingItems) {
237
+ sum +=
238
+ matchingItem.unitNetPrice *
239
+ matchingItem.unitQuantity *
240
+ (taxAmount / 100);
241
+ }
242
+ vatGroups.push({
243
+ items: matchingItems,
244
+ vatPercentage: taxAmount,
245
+ vatAmountSum: Math.round(sum * 100) / 100,
246
+ });
247
+ }
248
+ return vatGroups.sort((a, b) => b.vatPercentage - a.vatPercentage);
249
+ };
250
+ async getContentNodes() {
251
+ await this.elementDomReady;
252
+ return {
253
+ currentContent: this.shadowRoot.querySelector(".currentContent"),
254
+ trimmedContent: this.shadowRoot.querySelector(".trimmedContent"),
255
+ repeatedContent: this.shadowRoot.querySelector(".repeatedContent"),
256
+ };
257
+ }
258
+ async getContentLength() {
259
+ await this.elementDomReady;
260
+ return (await this.getContentNodes()).currentContent.children.length;
261
+ }
262
+ async trimEndByOne() {
263
+ await this.elementDomReady;
264
+ this.shadowRoot
265
+ .querySelector(".trimmedContent")
266
+ .append((await this.getContentNodes()).currentContent.children.item((await this.getContentNodes()).currentContent.children.length - 1));
267
+ }
268
+ async trimStartToOffset(contentOffsetArg) {
269
+ await this.elementDomReady;
270
+ const beginningLength = (await this.getContentNodes()).currentContent
271
+ .children.length;
272
+ while ((await this.getContentNodes()).currentContent.children.length !==
273
+ beginningLength - contentOffsetArg) {
274
+ (await this.getContentNodes()).trimmedContent.append((await this.getContentNodes()).currentContent.children.item(0));
275
+ }
276
+ if ((await this.getContentNodes()).currentContent.children
277
+ .item(0)
278
+ .classList.contains("needsDataHeader")) {
279
+ const trimmedContent = (await this.getContentNodes()).trimmedContent;
280
+ let startPoint = trimmedContent.children.length;
281
+ while (startPoint > 0) {
282
+ const element = trimmedContent.children.item(startPoint - 1);
283
+ if (element.classList.contains("dataHeader")) {
284
+ (await this.getContentNodes()).repeatedContent.append(element);
285
+ break;
286
+ }
287
+ startPoint--;
288
+ }
289
+ }
290
+ }
291
+ translateKey(key) {
292
+ return plugins.shared.translation.translate(this.documentSettings.languageCode, key);
293
+ }
294
+ async firstUpdated(_changedProperties) {
295
+ super.firstUpdated(_changedProperties);
296
+ this.attachInvoiceDom();
297
+ }
298
+ renderPaymentTerms() {
299
+ return html `<div class="infoBox">
300
+ <div>
301
+ <div>
302
+ <div class="label">
303
+ ${this.translateKey("invoice@@payment.terms")}
304
+ </div>
305
+ <span>
306
+ ${this.translateKey("invoice@@payment.terms.direct")}
307
+ ${new Intl.DateTimeFormat(this.documentSettings.languageCode, {
308
+ dateStyle: this.documentSettings.dateStyle,
309
+ }).format(new Date(this.letterData.date).setDate(new Date(this.letterData.date).getDate() +
310
+ this.letterData?.dueInDays))}
311
+ </span>
312
+ </div>
313
+ </div>
314
+ </div>`;
315
+ }
316
+ renderPaymentInfo() {
317
+ const bic = this.letterData?.from.sepaConnection.bic;
318
+ const name = this.letterData?.from.name;
319
+ const iban = this.letterData?.from.sepaConnection.iban;
320
+ const currency = this.letterData?.currency;
321
+ const totalGross = this.getTotalGross();
322
+ const reference = this.letterData?.id;
323
+ return html `<div class="infoBox">
324
+ <div>
325
+ <div>
326
+ <div class="label">${this.translateKey("invoice@@payment.qr")}</div>
327
+ <span> ${this.translateKey("invoice@@payment.qr.description")} </span>
328
+ </div>
329
+ <dedocument-paymentcode
330
+ bic="${bic}"
331
+ name="${name}"
332
+ iban="${iban}"
333
+ currency="${currency}"
334
+ totalGross="${totalGross}"
335
+ reference="${reference}"
336
+ />
337
+ </div>
338
+ </div>`;
339
+ }
340
+ renderReferencedContract() {
341
+ return null;
342
+ // return this.documentSettings.enableInvoiceContractRefSection &&
343
+ // this.invoiceData?.content?.contractData?.contractDate
344
+ // ? html`
345
+ // <div class="infoBox">
346
+ // <div class="label">
347
+ // ${this.translateKey("invoice@@referencedContract")}
348
+ // </div>
349
+ // ${this.translateKey("invoice@@referencedContract.text")}
350
+ // ${new Intl.DateTimeFormat(this.documentSettings.languageCode, {
351
+ // dateStyle: this.documentSettings.dateStyle,
352
+ // }).format(
353
+ // new Date(this.invoiceData?.content.contractData.contractDate)
354
+ // )}.
355
+ // </div>
356
+ // `
357
+ // : null;
358
+ }
359
+ async attachInvoiceDom() {
360
+ const contentNodes = await this.getContentNodes();
361
+ render(html `
362
+ <div>${this.translateKey("invoice@@introStatement")}</div>
363
+ <div class="grid topLine dataHeader">
364
+ <div class="lineItem rightAlign">
365
+ ${this.translateKey("invoice@@item.position")}
366
+ </div>
367
+ <div class="lineItem">
368
+ ${this.translateKey("invoice@@description")}
369
+ </div>
370
+ <div class="lineItem rightAlign">
371
+ ${this.translateKey("invoice@@quantity")}
372
+ </div>
373
+ <div class="lineItem">${this.translateKey("invoice@@unit.type")}</div>
374
+ <div class="lineItem rightAlign">
375
+ ${this.translateKey("invoice@@price.unit.net")}
376
+ </div>
377
+ <div class="lineItem rightAlign">
378
+ ${this.translateKey("invoice@@vat.short")}
379
+ </div>
380
+ <div class="lineItem rightAlign">
381
+ ${this.translateKey("invoice@@price.total.net")}
382
+ </div>
383
+ </div>
384
+ ${this.letterData?.items?.map((invoiceItem, index) => html `
385
+ <div class="grid needsDataHeader">
386
+ <div class="lineItem rightAlign">${index + 1}</div>
387
+ <div class="lineItem">${invoiceItem.name}</div>
388
+ <div class="lineItem rightAlign">${invoiceItem.unitQuantity}</div>
389
+ <div class="lineItem">${invoiceItem.unitType}</div>
390
+ <div class="lineItem rightAlign">
391
+ ${this.formatPrice(invoiceItem.unitNetPrice)}
392
+ </div>
393
+ <div class="lineItem rightAlign">
394
+ ${invoiceItem.vatPercentage}%
395
+ </div>
396
+ <div class="lineItem rightAlign">
397
+ ${this.formatPrice(invoiceItem.unitQuantity * invoiceItem.unitNetPrice)}
398
+ </div>
399
+ </div>
400
+ `)}
401
+ <div class="sums">
402
+ <div class="sumline">
403
+ <div class="label">
404
+ ${this.translateKey("invoice@@sum.total.net")}
405
+ </div>
406
+ <div class="value value--total rightAlign">
407
+ ${this.formatPrice(this.getTotalNet())}
408
+ </div>
409
+ </div>
410
+ ${this.getVatGroups().map((vatGroupArg) => {
411
+ let itemNumbers = vatGroupArg.items
412
+ .map((item) => this.letterData.items.indexOf(item) + 1)
413
+ .join(", ");
414
+ return html `
415
+ <div class="sumline">
416
+ <div class="label">
417
+ ${this.translateKey("vat.short")}
418
+ ${vatGroupArg.vatPercentage}%
419
+ ${this.documentSettings.vatGroupPositions
420
+ ? html `
421
+ <br /><span style="font-weight: normal"
422
+ >(${this.translateKey("invoice@@vat.position")}:
423
+ ${itemNumbers})</span
424
+ >
425
+ `
426
+ : html ``}
427
+ </div>
428
+ <div class="value rightAlign">
429
+ ${this.formatPrice(vatGroupArg.vatAmountSum)}
430
+ </div>
431
+ </div>
432
+ `;
433
+ })}
434
+ <div class="sumline">
435
+ <div class="label">${this.translateKey("invoice@@totalGross")}</div>
436
+ <div class="value value--total rightAlign">
437
+ ${this.formatPrice(this.getTotalGross())}
438
+ </div>
439
+ </div>
440
+ </div>
441
+ <div class="divider"></div>
442
+
443
+ ${this.letterData?.reverseCharge
444
+ ? html `<div class="taxNote">
445
+ ${this.translateKey("invoice@@vat.reverseCharge.note")}
446
+ </div>`
447
+ : ``}
448
+
449
+ <!-- REFERENCED CONTRACT -->
450
+ ${this.renderReferencedContract()}
451
+
452
+ <!-- PAYMENT TERMS -->
453
+ ${this.renderPaymentTerms()}
454
+
455
+ <!-- PAYMENT INFO -->
456
+ ${this.renderPaymentInfo()}
457
+ `, contentNodes.currentContent);
458
+ }
459
+ static {
460
+ __runInitializers(_classThis, _classExtraInitializers);
461
+ }
462
+ };
463
+ return DeContentInvoice = _classThis;
464
+ })();
465
+ export { DeContentInvoice };
466
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudGludm9pY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi90c193ZWIvZWxlbWVudHMvY29udGVudGludm9pY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUgsT0FBTyxFQUNMLFdBQVcsRUFDWCxRQUFRLEVBQ1IsSUFBSSxFQUNKLGFBQWEsRUFFYixHQUFHLEVBQ0gsTUFBTSxFQUNOLFFBQVEsR0FDVCxNQUFNLDZCQUE2QixDQUFDO0FBQ3JDLE9BQU8sS0FBSyxPQUFPLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGFBQWEsQ0FBQztJQVV2QyxnQkFBZ0I7NEJBRDVCLGFBQWEsQ0FBQywyQkFBMkIsQ0FBQzs7OztzQkFDTCxXQUFXOzs7Ozs7O2dDQUFuQixTQUFRLFdBQVc7Ozs7c0NBYTlDLFFBQVEsQ0FBQztvQkFDUixJQUFJLEVBQUUsTUFBTTtvQkFDWixPQUFPLEVBQUUsSUFBSTtpQkFDZCxDQUFDOzRDQUdELFFBQVEsQ0FBQztvQkFDUixJQUFJLEVBQUUsTUFBTTtvQkFDWixPQUFPLEVBQUUsSUFBSTtpQkFDZCxDQUFDO1lBTEYsbUxBQVMsVUFBVSw2QkFBVixVQUFVLCtGQUFtQztZQU10RCxxTUFBUyxnQkFBZ0IsNkJBQWhCLGdCQUFnQiwyR0FBOEM7WUF2QnpFLDZLQThjQzs7OztRQTdjUSxNQUFNLENBQUMsSUFBSSxHQUFHLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQTs7Ozs7Ozs7OztHQVU5QixDQUFDO1FBTUYseUZBQXNEO1FBQXRELElBQVMsVUFBVSxnREFBbUM7UUFBdEQsSUFBUyxVQUFVLHNEQUFtQztRQU10RCwrSkFBdUU7UUFBdkUsSUFBUyxnQkFBZ0Isc0RBQThDO1FBQXZFLElBQVMsZ0JBQWdCLDREQUE4QztRQUV2RTtZQUNFLEtBQUssRUFBRSxDQUFDO1lBQ1IsUUFB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
@@ -1,25 +1,25 @@
1
- import { DeesElement, type TemplateResult } from '@design.estate/dees-element';
2
- import * as plugins from '../plugins.js';
1
+ import { DeesElement, type TemplateResult } from "@design.estate/dees-element";
2
+ import * as plugins from "../plugins.js";
3
3
  export declare const defaultDocumentSettings: plugins.shared.interfaces.IDocumentSettings;
4
4
  declare global {
5
5
  interface HTMLElementTagNameMap {
6
- 'dedocument-dedocument': DeDocument;
6
+ "dedocument-dedocument": DeDocument;
7
7
  }
8
8
  }
9
9
  export declare class DeDocument extends DeesElement {
10
10
  static demo: () => TemplateResult<1>;
11
- format: 'a4';
12
- viewWidth: number;
13
- viewHeight: number;
14
- printMode: boolean;
15
- letterData: plugins.tsclass.business.ILetter;
16
- documentSettings: plugins.shared.interfaces.IDocumentSettings;
11
+ accessor format: "a4";
12
+ accessor viewWidth: number;
13
+ accessor viewHeight: number;
14
+ accessor printMode: boolean;
15
+ accessor letterData: plugins.tsclass.business.TLetter;
16
+ accessor documentSettings: plugins.shared.interfaces.IDocumentSettings;
17
17
  constructor();
18
18
  static styles: import("@design.estate/dees-element").CSSResult[];
19
19
  render(): TemplateResult;
20
20
  firstUpdated(_changedProperties: Map<string | number | symbol, unknown>): Promise<void>;
21
21
  latestDocumentSettings: plugins.shared.interfaces.IDocumentSettings;
22
- latestRenderedLetterData: plugins.tsclass.business.ILetter;
22
+ latestRenderedLetterData: plugins.tsclass.business.TLetter;
23
23
  cleanupStore: any[];
24
24
  renderDocument(): Promise<void>;
25
25
  updated(changedProperties: Map<string | number | symbol, unknown>): Promise<void>;
@@ -0,0 +1,9 @@
1
+ import * as plugins from "../plugins.js";
2
+ import { html } from "@design.estate/dees-element";
3
+ export const demoFunc = () => html `
4
+ <dedocument-dedocument
5
+ .format="${"a4"}"
6
+ .letterData=${plugins.shared.demoLetter}
7
+ ></dedocument-dedocument>
8
+ `;
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQuZGVtby5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3RzX3dlYi9lbGVtZW50cy9kb2N1bWVudC5kZW1vLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxPQUFPLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUVuRCxNQUFNLENBQUMsTUFBTSxRQUFRLEdBQUcsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFBOztlQUVuQixJQUFJO2tCQUNELE9BQU8sQ0FBQyxNQUFNLENBQUMsVUFBVTs7Q0FFMUMsQ0FBQyJ9