@design.estate/dees-document 1.1.0 → 1.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist_bundle/bundle.js +148 -144
- package/dist_bundle/bundle.js.map +4 -4
- package/dist_ts/00_commitinfo_data.js +3 -3
- package/dist_ts/interfaces/document.d.ts +2 -0
- package/dist_ts/interfaces/document.js +2 -2
- package/dist_ts/interfaces/translation.d.ts +17 -2
- package/dist_ts/shared/demoletter.d.ts +4 -0
- package/dist_ts/shared/demoletter.js +214 -0
- package/{dist_ts_web/elements → dist_ts}/shared/index.d.ts +2 -0
- package/dist_ts/shared/index.js +8 -0
- package/dist_ts/shared/translation.d.ts +15 -0
- package/dist_ts/shared/translation.js +73 -0
- package/dist_ts_web/ts/interfaces/document.d.ts +7 -0
- package/dist_ts_web/ts/interfaces/document.js +2 -0
- package/dist_ts_web/ts/interfaces/index.d.ts +2 -0
- package/dist_ts_web/ts/interfaces/index.js +3 -0
- package/dist_ts_web/ts/interfaces/translation.d.ts +19 -0
- package/dist_ts_web/ts/interfaces/translation.js +2 -0
- package/dist_ts_web/ts/shared/demoletter.d.ts +4 -0
- package/dist_ts_web/ts/shared/demoletter.js +214 -0
- package/dist_ts_web/ts/shared/index.d.ts +7 -0
- package/dist_ts_web/ts/shared/index.js +8 -0
- package/dist_ts_web/ts/shared/translation.d.ts +15 -0
- package/dist_ts_web/ts/shared/translation.js +73 -0
- package/dist_ts_web/{00_commitinfo_data.d.ts → ts_web/00_commitinfo_data.d.ts} +1 -1
- package/dist_ts_web/ts_web/00_commitinfo_data.js +9 -0
- package/dist_ts_web/{elements → ts_web/elements}/contentinvoice.d.ts +3 -1
- package/dist_ts_web/{elements → ts_web/elements}/contentinvoice.js +21 -14
- package/dist_ts_web/{elements → ts_web/elements}/document.d.ts +5 -2
- package/dist_ts_web/ts_web/elements/document.demo.js +6 -0
- package/dist_ts_web/ts_web/elements/document.js +226 -0
- package/dist_ts_web/{elements → ts_web/elements}/index.d.ts +1 -1
- package/dist_ts_web/{elements → ts_web/elements}/index.js +2 -2
- package/dist_ts_web/{elements → ts_web/elements}/letterheader.js +2 -2
- package/dist_ts_web/{elements → ts_web/elements}/page.d.ts +2 -0
- package/dist_ts_web/ts_web/elements/page.js +221 -0
- package/dist_ts_web/{elements → ts_web/elements}/pagecontainer.js +2 -2
- package/dist_ts_web/{elements → ts_web/elements}/pagecontent.js +2 -2
- package/dist_ts_web/{elements → ts_web/elements}/pagefooter.d.ts +2 -0
- package/dist_ts_web/{elements → ts_web/elements}/pagefooter.js +15 -8
- package/dist_ts_web/{elements → ts_web/elements}/pageheader.d.ts +2 -0
- package/dist_ts_web/{elements → ts_web/elements}/pageheader.js +20 -7
- package/dist_ts_web/{elements → ts_web/elements}/viewer.d.ts +2 -0
- package/dist_ts_web/ts_web/elements/viewer.demo.js +6 -0
- package/dist_ts_web/{elements → ts_web/elements}/viewer.js +3 -2
- package/dist_ts_web/{index.js → ts_web/index.js} +1 -1
- package/dist_ts_web/{pages → ts_web/pages}/index.js +1 -1
- package/dist_ts_web/ts_web/pages/page1.js +18 -0
- package/dist_ts_web/{pages → ts_web/pages}/page2.js +1 -1
- package/dist_ts_web/ts_web/plugins.js +11 -0
- package/npmextra.json +13 -12
- package/package.json +16 -14
- package/readme.md +129 -121
- package/ts/00_commitinfo_data.ts +2 -2
- package/ts/interfaces/document.ts +3 -0
- package/ts/interfaces/translation.ts +17 -2
- package/{ts_web/elements → ts}/shared/demoletter.ts +10 -1
- package/{ts_web/elements → ts}/shared/index.ts +1 -1
- package/ts/shared/translation.ts +82 -0
- package/ts_web/00_commitinfo_data.ts +2 -2
- package/ts_web/elements/contentinvoice.ts +15 -9
- package/ts_web/elements/document.demo.ts +1 -1
- package/ts_web/elements/document.ts +3 -1
- package/ts_web/elements/index.ts +1 -1
- package/ts_web/elements/letterheader.ts +1 -1
- package/ts_web/elements/page.ts +6 -2
- package/ts_web/elements/pagecontainer.ts +1 -1
- package/ts_web/elements/pagecontent.ts +1 -1
- package/ts_web/elements/pagefooter.ts +14 -6
- package/ts_web/elements/pageheader.ts +10 -2
- package/ts_web/elements/viewer.demo.ts +2 -2
- package/ts_web/elements/viewer.ts +4 -1
- package/ts_web/pages/page1.ts +1 -1
- package/dist_ts_web/00_commitinfo_data.js +0 -9
- package/dist_ts_web/elements/document.demo.js +0 -6
- package/dist_ts_web/elements/document.js +0 -193
- package/dist_ts_web/elements/page.js +0 -195
- package/dist_ts_web/elements/shared/demoletter.d.ts +0 -2
- package/dist_ts_web/elements/shared/demoletter.js +0 -117
- package/dist_ts_web/elements/shared/index.js +0 -6
- package/dist_ts_web/elements/viewer.demo.js +0 -6
- package/dist_ts_web/pages/page1.js +0 -18
- package/dist_ts_web/plugins.js +0 -11
- package/dist_watch/bundle.js +0 -40041
- package/dist_watch/bundle.js.map +0 -7
- package/dist_watch/index.html +0 -28
- package/ts_web/elements/shared/translation.ts +0 -31
- /package/dist_ts_web/{elements → ts_web/elements}/document.demo.d.ts +0 -0
- /package/dist_ts_web/{elements → ts_web/elements}/letterheader.d.ts +0 -0
- /package/dist_ts_web/{elements → ts_web/elements}/pagecontainer.d.ts +0 -0
- /package/dist_ts_web/{elements → ts_web/elements}/pagecontent.d.ts +0 -0
- /package/dist_ts_web/{elements → ts_web/elements}/viewer.demo.d.ts +0 -0
- /package/dist_ts_web/{index.d.ts → ts_web/index.d.ts} +0 -0
- /package/dist_ts_web/{pages → ts_web/pages}/index.d.ts +0 -0
- /package/dist_ts_web/{pages → ts_web/pages}/page1.d.ts +0 -0
- /package/dist_ts_web/{pages → ts_web/pages}/page2.d.ts +0 -0
- /package/dist_ts_web/{plugins.d.ts → ts_web/plugins.d.ts} +0 -0
package/ts_web/elements/page.ts
CHANGED
|
@@ -15,7 +15,7 @@ import * as interfaces from '../../ts/interfaces/index.js';
|
|
|
15
15
|
|
|
16
16
|
import { defaultDocumentSettings } from './document.js';
|
|
17
17
|
|
|
18
|
-
import * as shared from '
|
|
18
|
+
import * as shared from '../../ts/shared/index.js';
|
|
19
19
|
|
|
20
20
|
declare global {
|
|
21
21
|
interface HTMLElementTagNameMap {
|
|
@@ -127,6 +127,7 @@ export class DePage extends DeesElement {
|
|
|
127
127
|
? html`
|
|
128
128
|
<dedocument-pageheader
|
|
129
129
|
.letterData=${this.letterData}
|
|
130
|
+
.documentSettings=${this.documentSettings}
|
|
130
131
|
.pageNumber="${this.pageNumber}"
|
|
131
132
|
.pageTotalNumber="${this.pageTotalNumber}"
|
|
132
133
|
></dedocument-pageheader>
|
|
@@ -137,20 +138,23 @@ export class DePage extends DeesElement {
|
|
|
137
138
|
<dedocument-letterheader
|
|
138
139
|
.pageNumber="${this.pageNumber}"
|
|
139
140
|
.letterData=${this.letterData}
|
|
141
|
+
.documentSettings=${this.documentSettings}
|
|
140
142
|
.pageTotalNumber="${this.pageTotalNumber}"
|
|
141
143
|
></dedocument-letterheader>
|
|
142
144
|
`
|
|
143
145
|
: html``}
|
|
144
146
|
<dedocument-pagecontent
|
|
147
|
+
.letterData=${this.letterData}
|
|
148
|
+
.documentSettings=${this.documentSettings}
|
|
145
149
|
.pageNumber="${this.pageNumber}"
|
|
146
150
|
.pageTotalNumber="${this.pageTotalNumber}"
|
|
147
|
-
.letterData=${this.letterData}
|
|
148
151
|
><slot></slot
|
|
149
152
|
></dedocument-pagecontent>
|
|
150
153
|
${this.documentSettings.enableDefaultFooter
|
|
151
154
|
? html`
|
|
152
155
|
<dedocument-pagefooter
|
|
153
156
|
.letterData=${this.letterData}
|
|
157
|
+
.documentSettings=${this.documentSettings}
|
|
154
158
|
.pageNumber="${this.pageNumber}"
|
|
155
159
|
.pageTotalNumber="${this.pageTotalNumber}"
|
|
156
160
|
></dedocument-pagefooter>
|
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
} from '@design.estate/dees-element';
|
|
11
11
|
import * as domtools from '@design.estate/dees-domtools';
|
|
12
12
|
|
|
13
|
-
import * as shared from '
|
|
13
|
+
import * as shared from '../../ts/shared/index.js';
|
|
14
14
|
|
|
15
15
|
declare global {
|
|
16
16
|
interface HTMLElementTagNameMap {
|
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
} from '@design.estate/dees-element';
|
|
11
11
|
import * as domtools from '@design.estate/dees-domtools';
|
|
12
12
|
|
|
13
|
-
import * as shared from '
|
|
13
|
+
import * as shared from '../../ts/shared/index.js';
|
|
14
14
|
import * as tsclass from '@tsclass/tsclass';
|
|
15
15
|
|
|
16
16
|
declare global {
|
|
@@ -7,10 +7,12 @@ import {
|
|
|
7
7
|
css,
|
|
8
8
|
cssManager,
|
|
9
9
|
unsafeCSS,
|
|
10
|
+
domtools,
|
|
10
11
|
} from '@design.estate/dees-element';
|
|
11
|
-
import * as domtools from '@design.estate/dees-domtools';
|
|
12
12
|
|
|
13
|
-
import * as
|
|
13
|
+
import * as interfaces from '../../ts/interfaces/index.js';
|
|
14
|
+
|
|
15
|
+
import * as shared from '../../ts/shared/index.js';
|
|
14
16
|
import * as tsclass from '@tsclass/tsclass';
|
|
15
17
|
|
|
16
18
|
declare global {
|
|
@@ -30,6 +32,12 @@ export class DePageFooter extends DeesElement {
|
|
|
30
32
|
})
|
|
31
33
|
letterData: tsclass.business.ILetter;
|
|
32
34
|
|
|
35
|
+
@property({
|
|
36
|
+
type: Object,
|
|
37
|
+
reflect: true,
|
|
38
|
+
})
|
|
39
|
+
documentSettings: interfaces.IDocumentSettings;
|
|
40
|
+
|
|
33
41
|
@property({
|
|
34
42
|
type: Number
|
|
35
43
|
})
|
|
@@ -96,26 +104,26 @@ export class DePageFooter extends DeesElement {
|
|
|
96
104
|
return html`
|
|
97
105
|
<div class="bottomstripe">
|
|
98
106
|
<div>
|
|
99
|
-
<strong
|
|
107
|
+
<strong>${shared.translation.translate(this.documentSettings.languageCode, 'address', 'Address')}:</strong><br />
|
|
100
108
|
${this.letterData.from.name}<br />
|
|
101
109
|
${this.letterData.from.address.streetName} ${this.letterData.from.address.houseNumber}<br />
|
|
102
110
|
${this.letterData.from.address.postalCode} ${this.letterData.from.address.city}<br />
|
|
103
111
|
${this.letterData.from.address.country}
|
|
104
112
|
</div>
|
|
105
113
|
<div>
|
|
106
|
-
<strong
|
|
114
|
+
<strong>${shared.translation.translate(this.documentSettings.languageCode, 'registrationInfo', 'Registration Info')}:</strong><br />
|
|
107
115
|
Amtsgericht Bremen<br />
|
|
108
116
|
<i>reg-#:</i> HRB 35230 HB<br />
|
|
109
117
|
<i>vat-id:</i> ${this.letterData.from.vatId}
|
|
110
118
|
</div>
|
|
111
119
|
<div>
|
|
112
|
-
<strong
|
|
120
|
+
<strong>${shared.translation.translate(this.documentSettings.languageCode, 'contactInfo', 'Contact Info')}:</strong><br />
|
|
113
121
|
<i>email:</i> ${this.letterData.from.email}<br />
|
|
114
122
|
<i>phone:</i> ${this.letterData.from.phone}<br />
|
|
115
123
|
<i>fax:</i> ${this.letterData.from.fax}
|
|
116
124
|
</div>
|
|
117
125
|
<div>
|
|
118
|
-
<strong
|
|
126
|
+
<strong>${shared.translation.translate(this.documentSettings.languageCode, 'bankConnection', 'Bank Connection')}:</strong><br />
|
|
119
127
|
<i>beneficiary:</i> ${this.letterData?.from?.name}<br />
|
|
120
128
|
<i>institution:</i> ${this.letterData?.from?.sepaConnection?.institution}<br />
|
|
121
129
|
<i>iban:</i> ${this.letterData?.from?.sepaConnection?.iban}<br />
|
|
@@ -7,10 +7,12 @@ import {
|
|
|
7
7
|
css,
|
|
8
8
|
cssManager,
|
|
9
9
|
unsafeCSS,
|
|
10
|
+
domtools
|
|
10
11
|
} from '@design.estate/dees-element';
|
|
11
|
-
import * as domtools from '@design.estate/dees-domtools';
|
|
12
12
|
|
|
13
|
-
import * as
|
|
13
|
+
import * as interfaces from '../../ts/interfaces/index.js';
|
|
14
|
+
|
|
15
|
+
import * as shared from '../../ts/shared/index.js';
|
|
14
16
|
import * as tsclass from '@tsclass/tsclass';
|
|
15
17
|
|
|
16
18
|
declare global {
|
|
@@ -30,6 +32,12 @@ export class DePageHeader extends DeesElement {
|
|
|
30
32
|
})
|
|
31
33
|
public letterData: tsclass.business.ILetter = null;
|
|
32
34
|
|
|
35
|
+
@property({
|
|
36
|
+
type: Object,
|
|
37
|
+
reflect: true,
|
|
38
|
+
})
|
|
39
|
+
documentSettings: interfaces.IDocumentSettings;
|
|
40
|
+
|
|
33
41
|
@property({
|
|
34
42
|
type: Number,
|
|
35
43
|
})
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { html } from '@design.estate/dees-element';
|
|
2
|
-
import * as shared from '
|
|
2
|
+
import * as shared from '../../ts/shared/index.js';
|
|
3
3
|
|
|
4
4
|
export const demoFunc = () => html`
|
|
5
|
-
<dedocument-viewer .letterData=${shared.demoLetter}></dedocument-viewer>
|
|
5
|
+
<dedocument-viewer .letterData=${shared.demoLetter} .documentSettings=${shared.demoDocumentSettings}></dedocument-viewer>
|
|
6
6
|
`;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as plugins from '../plugins.js';
|
|
2
|
+
import * as interfaces from '../../ts/interfaces/index.js';
|
|
2
3
|
|
|
3
4
|
import { DeesElement, css, cssManager, customElement, html } from '@design.estate/dees-element';
|
|
4
5
|
import { demoFunc } from './viewer.demo.js';
|
|
@@ -17,6 +18,8 @@ export class DeDocumentViewer extends DeesElement {
|
|
|
17
18
|
// INSTANCE
|
|
18
19
|
public letterData: plugins.tsclass.business.ILetter = null;
|
|
19
20
|
|
|
21
|
+
public documentSettings: interfaces.IDocumentSettings;
|
|
22
|
+
|
|
20
23
|
public static styles = [
|
|
21
24
|
cssManager.defaultStyles,
|
|
22
25
|
css`
|
|
@@ -67,7 +70,7 @@ export class DeDocumentViewer extends DeesElement {
|
|
|
67
70
|
<div class="maincontainer">
|
|
68
71
|
<div class="viewport">
|
|
69
72
|
${this.letterData
|
|
70
|
-
? html` <dedocument-dedocument .letterData=${this.letterData}></dedocument-dedocument> `
|
|
73
|
+
? html` <dedocument-dedocument .letterData=${this.letterData} .documentSettings=${this.documentSettings}></dedocument-dedocument> `
|
|
71
74
|
: html``}
|
|
72
75
|
</div>
|
|
73
76
|
<div class="controls"></div>
|
package/ts_web/pages/page1.ts
CHANGED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* autocreated commitinfo by @pushrocks/commitinfo
|
|
3
|
-
*/
|
|
4
|
-
export const commitinfo = {
|
|
5
|
-
name: '@design.estate/dees-document',
|
|
6
|
-
version: '1.0.99',
|
|
7
|
-
description: 'a catalog for creating documents like invoices'
|
|
8
|
-
};
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMDBfY29tbWl0aW5mb19kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHNfd2ViLzAwX2NvbW1pdGluZm9fZGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRztJQUN4QixJQUFJLEVBQUUsOEJBQThCO0lBQ3BDLE9BQU8sRUFBRSxRQUFRO0lBQ2pCLFdBQVcsRUFBRSxnREFBZ0Q7Q0FDOUQsQ0FBQSJ9
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import * as shared from './shared/index.js';
|
|
2
|
-
import { html } from '@design.estate/dees-element';
|
|
3
|
-
export const demoFunc = () => html `
|
|
4
|
-
<dedocument-dedocument .format="${'a4'}" .letterData=${shared.demoLetter}></dedocument-dedocument>
|
|
5
|
-
`;
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQuZGVtby5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3RzX3dlYi9lbGVtZW50cy9kb2N1bWVudC5kZW1vLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxNQUFNLE1BQU0sbUJBQW1CLENBQUM7QUFDNUMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRW5ELE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUE7a0NBQ0EsSUFBSSxpQkFBaUIsTUFBTSxDQUFDLFVBQVU7Q0FDdkUsQ0FBQyJ9
|
|
@@ -1,193 +0,0 @@
|
|
|
1
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
-
};
|
|
7
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
-
};
|
|
10
|
-
import { DeesElement, property, html, customElement, css, state, cssManager, unsafeCSS, domtools, } from '@design.estate/dees-element';
|
|
11
|
-
import * as plugins from '../plugins.js';
|
|
12
|
-
import { DePage } from './page.js';
|
|
13
|
-
import { DeContentInvoice } from './contentinvoice.js';
|
|
14
|
-
import * as shared from './shared/index.js';
|
|
15
|
-
import { demoFunc } from './document.demo.js';
|
|
16
|
-
let DeDocument = class DeDocument extends DeesElement {
|
|
17
|
-
static { this.demo = demoFunc; }
|
|
18
|
-
constructor() {
|
|
19
|
-
super();
|
|
20
|
-
this.format = 'a4';
|
|
21
|
-
this.viewWidth = null;
|
|
22
|
-
this.viewHeight = null;
|
|
23
|
-
this.printMode = false;
|
|
24
|
-
domtools.DomTools.setupDomTools();
|
|
25
|
-
}
|
|
26
|
-
static { this.styles = [
|
|
27
|
-
domtools.elementBasic.staticStyles,
|
|
28
|
-
css `
|
|
29
|
-
:host {
|
|
30
|
-
display: block;
|
|
31
|
-
color: #333;
|
|
32
|
-
padding: 0px;
|
|
33
|
-
position: relative;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
.betweenPagesSpacer {
|
|
37
|
-
height: 16px;
|
|
38
|
-
}
|
|
39
|
-
`,
|
|
40
|
-
]; }
|
|
41
|
-
render() {
|
|
42
|
-
return html `
|
|
43
|
-
<div class="documentContainer"></div>
|
|
44
|
-
`;
|
|
45
|
-
}
|
|
46
|
-
async firstUpdated(_changedProperties) {
|
|
47
|
-
const resizeObserver = new ResizeObserver((entries) => {
|
|
48
|
-
for (const entry of entries) {
|
|
49
|
-
const width = entry.contentRect.width;
|
|
50
|
-
const height = entry.contentRect.height;
|
|
51
|
-
// Handle the new dimensions here
|
|
52
|
-
this.adjustDePageScaling();
|
|
53
|
-
}
|
|
54
|
-
});
|
|
55
|
-
resizeObserver.observe(this);
|
|
56
|
-
this.registerGarbageFunction(() => {
|
|
57
|
-
resizeObserver.disconnect();
|
|
58
|
-
});
|
|
59
|
-
if (this.letterDataUrl) {
|
|
60
|
-
const response = await fetch(this.letterDataUrl);
|
|
61
|
-
this.letterData = await response.json();
|
|
62
|
-
}
|
|
63
|
-
this.renderDocument();
|
|
64
|
-
}
|
|
65
|
-
async renderDocument() {
|
|
66
|
-
const domtools = await this.domtoolsPromise;
|
|
67
|
-
const documentContainer = this.shadowRoot.querySelector('.documentContainer');
|
|
68
|
-
let pages = [];
|
|
69
|
-
let pageCounter = 0;
|
|
70
|
-
let complete = false;
|
|
71
|
-
const content = document.createElement('dedocument-contentinvoice');
|
|
72
|
-
content.letterData = this.letterData;
|
|
73
|
-
document.body.appendChild(content);
|
|
74
|
-
await domtools.convenience.smartdelay.delayFor(0);
|
|
75
|
-
let overallContentOffset = 0;
|
|
76
|
-
let currentContentOffset;
|
|
77
|
-
let trimmed;
|
|
78
|
-
while (!complete) {
|
|
79
|
-
pageCounter++;
|
|
80
|
-
const currentContent = content.cloneNode(true);
|
|
81
|
-
const newPage = new DePage();
|
|
82
|
-
newPage.printMode = this.printMode;
|
|
83
|
-
newPage.letterData = this.letterData;
|
|
84
|
-
pages.push(newPage);
|
|
85
|
-
newPage.pageNumber = pageCounter;
|
|
86
|
-
newPage.append(currentContent);
|
|
87
|
-
newPage.pageTotalNumber = pageCounter;
|
|
88
|
-
documentContainer.append(newPage);
|
|
89
|
-
// betweenPagesSpacer
|
|
90
|
-
if (!this.printMode) {
|
|
91
|
-
const betweenPagesSpacerDiv = document.createElement('div');
|
|
92
|
-
betweenPagesSpacerDiv.classList.add('betweenPagesSpacer');
|
|
93
|
-
documentContainer.append(betweenPagesSpacerDiv);
|
|
94
|
-
}
|
|
95
|
-
await currentContent.elementDomReady;
|
|
96
|
-
await currentContent.trimStartToOffset(overallContentOffset);
|
|
97
|
-
let newPageOverflows = await newPage.checkOverflow();
|
|
98
|
-
trimmed = 0;
|
|
99
|
-
while (newPageOverflows) {
|
|
100
|
-
await currentContent.trimEndByOne();
|
|
101
|
-
trimmed++;
|
|
102
|
-
newPageOverflows = await newPage.checkOverflow();
|
|
103
|
-
}
|
|
104
|
-
currentContentOffset = await currentContent.getContentLength();
|
|
105
|
-
overallContentOffset = overallContentOffset + currentContentOffset;
|
|
106
|
-
if (trimmed === 0) {
|
|
107
|
-
complete = true;
|
|
108
|
-
}
|
|
109
|
-
// complete = true;
|
|
110
|
-
console.log(currentContentOffset);
|
|
111
|
-
}
|
|
112
|
-
document.body.removeChild(content);
|
|
113
|
-
for (const page of pages) {
|
|
114
|
-
page.pageTotalNumber = pageCounter;
|
|
115
|
-
}
|
|
116
|
-
this.adjustDePageScaling();
|
|
117
|
-
}
|
|
118
|
-
updated(changedProperties) {
|
|
119
|
-
super.updated(changedProperties);
|
|
120
|
-
if (changedProperties.has('viewHeight') || changedProperties.has('viewWidth')) {
|
|
121
|
-
this.adjustDePageScaling();
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
adjustDePageScaling() {
|
|
125
|
-
if (this.printMode) {
|
|
126
|
-
return;
|
|
127
|
-
}
|
|
128
|
-
this.viewWidth = this.clientWidth;
|
|
129
|
-
// Find all DePage instances within this DeDocument
|
|
130
|
-
const pages = this.shadowRoot.querySelectorAll('dedocument-page');
|
|
131
|
-
// Update each DePage instance's viewHeight and viewWidth
|
|
132
|
-
pages.forEach((page) => {
|
|
133
|
-
if (this.viewHeight) {
|
|
134
|
-
page.viewHeight = this.viewHeight;
|
|
135
|
-
}
|
|
136
|
-
if (this.viewWidth) {
|
|
137
|
-
page.viewWidth = this.viewWidth;
|
|
138
|
-
console.log('setting viewWidth: ', this.viewWidth);
|
|
139
|
-
}
|
|
140
|
-
});
|
|
141
|
-
}
|
|
142
|
-
};
|
|
143
|
-
__decorate([
|
|
144
|
-
property({
|
|
145
|
-
type: String,
|
|
146
|
-
}),
|
|
147
|
-
__metadata("design:type", String)
|
|
148
|
-
], DeDocument.prototype, "format", void 0);
|
|
149
|
-
__decorate([
|
|
150
|
-
property({
|
|
151
|
-
type: Number,
|
|
152
|
-
}),
|
|
153
|
-
__metadata("design:type", Number)
|
|
154
|
-
], DeDocument.prototype, "viewWidth", void 0);
|
|
155
|
-
__decorate([
|
|
156
|
-
property({
|
|
157
|
-
type: Number,
|
|
158
|
-
}),
|
|
159
|
-
__metadata("design:type", Number)
|
|
160
|
-
], DeDocument.prototype, "viewHeight", void 0);
|
|
161
|
-
__decorate([
|
|
162
|
-
property({
|
|
163
|
-
type: Boolean,
|
|
164
|
-
}),
|
|
165
|
-
__metadata("design:type", Object)
|
|
166
|
-
], DeDocument.prototype, "printMode", void 0);
|
|
167
|
-
__decorate([
|
|
168
|
-
property({
|
|
169
|
-
type: Object,
|
|
170
|
-
reflect: true,
|
|
171
|
-
converter: (valueArg) => {
|
|
172
|
-
if (typeof valueArg === 'string') {
|
|
173
|
-
return plugins.smartjson.parseBase64(valueArg);
|
|
174
|
-
}
|
|
175
|
-
else {
|
|
176
|
-
return valueArg;
|
|
177
|
-
}
|
|
178
|
-
},
|
|
179
|
-
}),
|
|
180
|
-
__metadata("design:type", Object)
|
|
181
|
-
], DeDocument.prototype, "letterData", void 0);
|
|
182
|
-
__decorate([
|
|
183
|
-
property({
|
|
184
|
-
type: String,
|
|
185
|
-
}),
|
|
186
|
-
__metadata("design:type", String)
|
|
187
|
-
], DeDocument.prototype, "letterDataUrl", void 0);
|
|
188
|
-
DeDocument = __decorate([
|
|
189
|
-
customElement('dedocument-dedocument'),
|
|
190
|
-
__metadata("design:paramtypes", [])
|
|
191
|
-
], DeDocument);
|
|
192
|
-
export { DeDocument };
|
|
193
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90c193ZWIvZWxlbWVudHMvZG9jdW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUNMLFdBQVcsRUFDWCxRQUFRLEVBQ1IsSUFBSSxFQUNKLGFBQWEsRUFFYixHQUFHLEVBQ0gsS0FBSyxFQUNMLFVBQVUsRUFDVixTQUFTLEVBQ1QsUUFBUSxHQUNULE1BQU0sNkJBQTZCLENBQUM7QUFFckMsT0FBTyxLQUFLLE9BQU8sTUFBTSxlQUFlLENBQUM7QUFHekMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNuQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV2RCxPQUFPLEtBQUssTUFBTSxNQUFNLG1CQUFtQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQVN2QyxJQUFNLFVBQVUsR0FBaEIsTUFBTSxVQUFXLFNBQVEsV0FBVzthQUMzQixTQUFJLEdBQUcsUUFBUSxBQUFYLENBQVk7SUF5QzlCO1FBQ0UsS0FBSyxFQUFFLENBQUM7UUFyQ0gsV0FBTSxHQUFTLElBQUksQ0FBQztRQUtwQixjQUFTLEdBQVcsSUFBSSxDQUFDO1FBS3pCLGVBQVUsR0FBVyxJQUFJLENBQUM7UUFLakMsY0FBUyxHQUFHLEtBQUssQ0FBQztRQXVCaEIsUUFBUSxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUNwQyxDQUFDO2FBRWEsV0FBTSxHQUFHO1FBQ3JCLFFBQVEsQ0FBQyxZQUFZLENBQUMsWUFBWTtRQUNsQyxHQUFHLENBQUE7Ozs7Ozs7Ozs7O0tBV0Y7S0FDRixBQWRtQixDQWNsQjtJQUVLLE1BQU07UUFDWCxPQUFPLElBQUksQ0FBQTs7S0FFVixDQUFDO0lBQ0osQ0FBQztJQUVNLEtBQUssQ0FBQyxZQUFZLENBQUMsa0JBQTBEO1FBQ2xGLE1BQU0s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
|
|
@@ -1,195 +0,0 @@
|
|
|
1
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
-
};
|
|
7
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
-
};
|
|
10
|
-
import * as tsclass from '@tsclass/tsclass';
|
|
11
|
-
import { DeesElement, property, html, customElement, css, cssManager, unsafeCSS, } from '@design.estate/dees-element';
|
|
12
|
-
import * as domtools from '@design.estate/dees-domtools';
|
|
13
|
-
import * as shared from './shared/index.js';
|
|
14
|
-
let DePage = class DePage extends DeesElement {
|
|
15
|
-
static { this.demo = () => html ` <dedocument-page .format="${'a4'}"></dedocument-page> `; }
|
|
16
|
-
constructor() {
|
|
17
|
-
super();
|
|
18
|
-
this.viewWidth = null;
|
|
19
|
-
this.viewHeight = null;
|
|
20
|
-
this.format = 'a4';
|
|
21
|
-
this.pageNumber = 1;
|
|
22
|
-
this.pageTotalNumber = 1;
|
|
23
|
-
this.letterData = null;
|
|
24
|
-
this.printMode = false;
|
|
25
|
-
domtools.DomTools.setupDomTools();
|
|
26
|
-
}
|
|
27
|
-
static { this.styles = [
|
|
28
|
-
domtools.elementBasic.staticStyles,
|
|
29
|
-
css `
|
|
30
|
-
:host {
|
|
31
|
-
display: block;
|
|
32
|
-
max-height: ${shared.a4Height}px;
|
|
33
|
-
max-width: ${shared.a4Width}px;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
#scaleWrapper {
|
|
37
|
-
transform-origin: top left;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
.versionOverlay {
|
|
41
|
-
pointer-events: none;
|
|
42
|
-
position: absolute;
|
|
43
|
-
top: 0px;
|
|
44
|
-
left: 0px;
|
|
45
|
-
right: 0px;
|
|
46
|
-
bottom: 0px;
|
|
47
|
-
font-family: monospace;
|
|
48
|
-
font-size: 16px;
|
|
49
|
-
|
|
50
|
-
z-index: 1000;
|
|
51
|
-
display: flex;
|
|
52
|
-
justify-content: center;
|
|
53
|
-
align-items: center;
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
.topInfo {
|
|
57
|
-
position: absolute;
|
|
58
|
-
top: 60px;
|
|
59
|
-
left: 40px;
|
|
60
|
-
color: red;
|
|
61
|
-
transform: rotate(-5deg);
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
.bigDraftText {
|
|
65
|
-
transform: rotate(-45deg);
|
|
66
|
-
font-size: 200px;
|
|
67
|
-
opacity: 0.05;
|
|
68
|
-
}
|
|
69
|
-
`,
|
|
70
|
-
]; }
|
|
71
|
-
render() {
|
|
72
|
-
return html `
|
|
73
|
-
<div id="scaleWrapper">
|
|
74
|
-
<dedocument-pagecontainer .printMode=${this.printMode}>
|
|
75
|
-
${this.letterData
|
|
76
|
-
? html `
|
|
77
|
-
<dedocument-pageheader
|
|
78
|
-
.letterData=${this.letterData}
|
|
79
|
-
.pageNumber="${this.pageNumber}"
|
|
80
|
-
.pageTotalNumber="${this.pageTotalNumber}"
|
|
81
|
-
></dedocument-pageheader>
|
|
82
|
-
${this.pageNumber === 1
|
|
83
|
-
? html `
|
|
84
|
-
<dedocument-letterheader
|
|
85
|
-
.pageNumber="${this.pageNumber}"
|
|
86
|
-
.letterData=${this.letterData}
|
|
87
|
-
.pageTotalNumber="${this.pageTotalNumber}"
|
|
88
|
-
></dedocument-letterheader>
|
|
89
|
-
`
|
|
90
|
-
: html ``}
|
|
91
|
-
<dedocument-pagecontent
|
|
92
|
-
.pageNumber="${this.pageNumber}"
|
|
93
|
-
.pageTotalNumber="${this.pageTotalNumber}"
|
|
94
|
-
.letterData=${this.letterData}
|
|
95
|
-
><slot></slot
|
|
96
|
-
></dedocument-pagecontent>
|
|
97
|
-
<dedocument-pagefooter
|
|
98
|
-
.letterData=${this.letterData}
|
|
99
|
-
.pageNumber="${this.pageNumber}"
|
|
100
|
-
.pageTotalNumber="${this.pageTotalNumber}"
|
|
101
|
-
></dedocument-pagefooter>
|
|
102
|
-
<div class="versionOverlay">
|
|
103
|
-
${this.letterData.versionInfo.type === 'draft'
|
|
104
|
-
? html `
|
|
105
|
-
<div class="topInfo">
|
|
106
|
-
Please note: THIS IS A DRAFT ONLY. NO RIGHTS CAN BE DERIVED FROM THIS.<br />
|
|
107
|
-
-> Revision/Document version: ${this.letterData.versionInfo.version}
|
|
108
|
-
</div>
|
|
109
|
-
<div class="bigDraftText">DRAFT</div>
|
|
110
|
-
`
|
|
111
|
-
: html ``}
|
|
112
|
-
</div>
|
|
113
|
-
`
|
|
114
|
-
: html `
|
|
115
|
-
<slot></slot>
|
|
116
|
-
`}
|
|
117
|
-
</dedocument-pagecontainer>
|
|
118
|
-
</div>
|
|
119
|
-
`;
|
|
120
|
-
}
|
|
121
|
-
async checkOverflow() {
|
|
122
|
-
await this.elementDomReady;
|
|
123
|
-
const pageContent = this.shadowRoot.querySelector('dedocument-pagecontent');
|
|
124
|
-
return pageContent.checkOverflow();
|
|
125
|
-
}
|
|
126
|
-
updated(changedProperties) {
|
|
127
|
-
super.updated(changedProperties);
|
|
128
|
-
if (changedProperties.has('viewHeight') || changedProperties.has('viewWidth')) {
|
|
129
|
-
this.adjustScaling();
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
adjustScaling() {
|
|
133
|
-
console.log('page scale adjustment triggered.');
|
|
134
|
-
const scaleWrapper = this.shadowRoot.querySelector('#scaleWrapper');
|
|
135
|
-
if (!scaleWrapper)
|
|
136
|
-
return;
|
|
137
|
-
let scale = 1;
|
|
138
|
-
if (this.viewHeight) {
|
|
139
|
-
scale = this.viewHeight / shared.a4Height;
|
|
140
|
-
}
|
|
141
|
-
else if (this.viewWidth) {
|
|
142
|
-
scale = this.viewWidth / shared.a4Width;
|
|
143
|
-
}
|
|
144
|
-
console.log(`new scale is ${scale}`);
|
|
145
|
-
scaleWrapper.style.transform = `scale(${scale})`;
|
|
146
|
-
// Adjust the outer dimensions so they match the scaled content
|
|
147
|
-
// this.style.width = `${shared.a4Width * scale}px`;
|
|
148
|
-
this.style.height = `${shared.a4Height * scale}px`;
|
|
149
|
-
}
|
|
150
|
-
};
|
|
151
|
-
__decorate([
|
|
152
|
-
property(),
|
|
153
|
-
__metadata("design:type", Number)
|
|
154
|
-
], DePage.prototype, "viewWidth", void 0);
|
|
155
|
-
__decorate([
|
|
156
|
-
property(),
|
|
157
|
-
__metadata("design:type", Number)
|
|
158
|
-
], DePage.prototype, "viewHeight", void 0);
|
|
159
|
-
__decorate([
|
|
160
|
-
property({
|
|
161
|
-
type: String,
|
|
162
|
-
}),
|
|
163
|
-
__metadata("design:type", String)
|
|
164
|
-
], DePage.prototype, "format", void 0);
|
|
165
|
-
__decorate([
|
|
166
|
-
property({
|
|
167
|
-
type: Number,
|
|
168
|
-
}),
|
|
169
|
-
__metadata("design:type", Number)
|
|
170
|
-
], DePage.prototype, "pageNumber", void 0);
|
|
171
|
-
__decorate([
|
|
172
|
-
property({
|
|
173
|
-
type: Number,
|
|
174
|
-
}),
|
|
175
|
-
__metadata("design:type", Number)
|
|
176
|
-
], DePage.prototype, "pageTotalNumber", void 0);
|
|
177
|
-
__decorate([
|
|
178
|
-
property({
|
|
179
|
-
type: Object,
|
|
180
|
-
}),
|
|
181
|
-
__metadata("design:type", Object)
|
|
182
|
-
], DePage.prototype, "letterData", void 0);
|
|
183
|
-
__decorate([
|
|
184
|
-
property({
|
|
185
|
-
type: Boolean,
|
|
186
|
-
reflect: true,
|
|
187
|
-
}),
|
|
188
|
-
__metadata("design:type", Object)
|
|
189
|
-
], DePage.prototype, "printMode", void 0);
|
|
190
|
-
DePage = __decorate([
|
|
191
|
-
customElement('dedocument-page'),
|
|
192
|
-
__metadata("design:paramtypes", [])
|
|
193
|
-
], DePage);
|
|
194
|
-
export { DePage };
|
|
195
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3RzX3dlYi9lbGVtZW50cy9wYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLE9BQU8sS0FBSyxPQUFPLE1BQU0sa0JBQWtCLENBQUM7QUFDNUMsT0FBTyxFQUNMLFdBQVcsRUFDWCxRQUFRLEVBQ1IsSUFBSSxFQUNKLGFBQWEsRUFFYixHQUFHLEVBQ0gsVUFBVSxFQUNWLFNBQVMsR0FDVixNQUFNLDZCQUE2QixDQUFDO0FBQ3JDLE9BQU8sS0FBSyxRQUFRLE1BQU0sOEJBQThCLENBQUM7QUFFekQsT0FBTyxLQUFLLE1BQU0sTUFBTSxtQkFBbUIsQ0FBQztBQVNyQyxJQUFNLE1BQU0sR0FBWixNQUFNLE1BQU8sU0FBUSxXQUFXO2FBQ3ZCLFNBQUksR0FBRyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUEsOEJBQThCLElBQUksdUJBQXVCLEFBQXRFLENBQXVFO0lBa0N6RjtRQUNFLEtBQUssRUFBRSxDQUFDO1FBaENWLGNBQVMsR0FBVyxJQUFJLENBQUM7UUFHekIsZUFBVSxHQUFXLElBQUksQ0FBQztRQUtuQixXQUFNLEdBQVMsSUFBSSxDQUFDO1FBS3BCLGVBQVUsR0FBVyxDQUFDLENBQUM7UUFLdkIsb0JBQWUsR0FBVyxDQUFDLENBQUM7UUFLNUIsZUFBVSxHQUE2QixJQUFJLENBQUM7UUFNbkQsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUloQixRQUFRLENBQUMsUUFBUSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3BDLENBQUM7YUFFYSxXQUFNLEdBQUc7UUFDckIsUUFBUSxDQUFDLFlBQVksQ0FBQyxZQUFZO1FBQ2xDLEdBQUcsQ0FBQTs7O3NCQUdlLE1BQU0sQ0FBQyxRQUFRO3FCQUNoQixNQUFNLENBQUMsT0FBTzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tBb0M5QjtLQUNGLEFBM0NtQixDQTJDbEI7SUFFSyxNQUFNO1FBQ1gsT0FBTyxJQUFJLENBQUE7OytDQUVnQyxJQUFJLENBQUMsU0FBUztZQUNqRCxJQUFJLENBQUMsVUFBVTtZQUNmLENBQUMsQ0FBQyxJQUFJLENBQUE7O2dDQUVjLElBQUksQ0FBQyxVQUFVO2lDQUNkLElBQUksQ0FBQyxVQUFVO3NDQUNWLElBQUksQ0FBQyxlQUFlOztrQkFFeEMsSUFBSSxDQUFDLFVBQVUsS0FBSyxDQUFDO2dCQUNyQixDQUFDLENBQUMsSUFBSSxDQUFBOzt1Q0FFZSxJQUFJLENBQUMsVUFBVTtzQ0FDaEIsSUFBSSxDQUFDLFVBQVU7NENBQ1QsSUFBSSxDQUFDLGVBQWU7O3FCQUUzQztnQkFDSCxDQUFDLENBQUMsSUFBSSxDQUFBLEVBQUU7O2lDQUVPLElBQUksQ0FBQyxVQUFVO3NDQUNWLElBQUksQ0FBQyxlQUFlO2dDQUMxQixJQUFJLENBQUMsVUFBVTs7OztnQ0FJZixJQUFJLENBQUMsVUFBVTtpQ0FDZCxJQUFJLENBQUMsVUFBVTtzQ0FDVixJQUFJLENBQUMsZUFBZTs7O29CQUd0QyxJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEtBQUssT0FBTztnQkFDNUMsQ0FBQyxDQUFDLElBQUksQ0FBQTs7OzBEQUdnQyxJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxPQUFPOzs7dUJBR3RFO2dCQUNILENBQUMsQ0FBQyxJQUFJLENBQUEsRUFBRTs7ZUFFYjtZQUNILENBQUMsQ0FBQyxJQUFJLENBQUE7O2FBRUw7OztLQUdSLENBQUM7SUFDSixDQUFDO0lBRU0sS0FBSyxDQUFDLGFBQWE7UUFDeEIsTUFBTSxJQUFJLENBQUMsZUFBZSxDQUFDO1FBQzNCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLHdCQUF3QixDQUFDLENBQUM7UUFDNUUsT0FBTyxXQUFXLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVELE9BQU8sQ0FBQyxpQkFBeUQ7UUFDL0QsS0FBSyxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ2pDLElBQUksaUJBQWlCLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxJQUFJLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO1lBQzlFLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUN2QixDQUFDO0lBQ0gsQ0FBQztJQUVPLGFBQWE7UUFDbkIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDO1FBQ2hELE1BQU0sWUFBWSxHQUFtQixJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUVwRixJQUFJLENBQUMsWUFBWTtZQUFFLE9BQU87UUFFMUIsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ2QsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDcEIsS0FBSyxHQUFHLElBQUksQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQztRQUM1QyxDQUFDO2FBQU0sSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDMUIsS0FBSyxHQUFHLElBQUksQ0FBQyxTQUFTLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQztRQUMxQyxDQUFDO1FBQ0QsT0FBTyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUNyQyxZQUFZLENBQUMsS0FBSyxDQUFDLFNBQVMsR0FBRyxTQUFTLEtBQUssR0FBRyxDQUFDO1FBRWpELCtEQUErRDtRQUUvRCxvREFBb0Q7UUFDcEQsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsUUFBUSxHQUFHLEtBQUssSUFBSSxDQUFDO0lBQ3JELENBQUM7O0FBcEtEO0lBREMsUUFBUSxFQUFFOzt5Q0FDYztBQUd6QjtJQURDLFFBQVEsRUFBRTs7MENBQ2U7QUFLbkI7SUFITixRQUFRLENBQUM7UUFDUixJQUFJLEVBQUUsTUFBTTtLQUNiLENBQUM7O3NDQUN5QjtBQUtwQjtJQUhOLFFBQVEsQ0FBQztRQUNSLElBQUksRUFBRSxNQUFNO0tBQ2IsQ0FBQzs7MENBQzRCO0FBS3ZCO0lBSE4sUUFBUSxDQUFDO1FBQ1IsSUFBSSxFQUFFLE1BQU07S0FDYixDQUFDOzsrQ0FDaUM7QUFLNUI7SUFITixRQUFRLENBQUM7UUFDUixJQUFJLEVBQUUsTUFBTTtLQUNiLENBQUM7OzBDQUNpRDtBQU1uRDtJQUpDLFFBQVEsQ0FBQztRQUNSLElBQUksRUFBRSxPQUFPO1FBQ2IsT0FBTyxFQUFFLElBQUk7S0FDZCxDQUFDOzt5Q0FDZ0I7QUFqQ1AsTUFBTTtJQURsQixhQUFhLENBQUMsaUJBQWlCLENBQUM7O0dBQ3BCLE1BQU0sQ0F5S2xCIn0=
|