@design.estate/dees-document 1.0.94 → 1.0.96

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.
@@ -3,7 +3,7 @@
3
3
  */
4
4
  export const commitinfo = {
5
5
  name: '@design.estate/dees-document',
6
- version: '1.0.93',
6
+ version: '1.0.95',
7
7
  description: 'a catalog for creating documents like invoices'
8
8
  };
9
9
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMDBfY29tbWl0aW5mb19kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvMDBfY29tbWl0aW5mb19kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHO0lBQ3hCLElBQUksRUFBRSw4QkFBOEI7SUFDcEMsT0FBTyxFQUFFLFFBQVE7SUFDakIsV0FBVyxFQUFFLGdEQUFnRDtDQUM5RCxDQUFBIn0=
@@ -3,7 +3,7 @@
3
3
  */
4
4
  export const commitinfo = {
5
5
  name: '@design.estate/dees-document',
6
- version: '1.0.93',
6
+ version: '1.0.95',
7
7
  description: 'a catalog for creating documents like invoices'
8
8
  };
9
9
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMDBfY29tbWl0aW5mb19kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHNfd2ViLzAwX2NvbW1pdGluZm9fZGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRztJQUN4QixJQUFJLEVBQUUsOEJBQThCO0lBQ3BDLE9BQU8sRUFBRSxRQUFRO0lBQ2pCLFdBQVcsRUFBRSxnREFBZ0Q7Q0FDOUQsQ0FBQSJ9
@@ -9,6 +9,7 @@ export declare class DeDocument extends DeesElement {
9
9
  static demo: () => TemplateResult<1>;
10
10
  format: 'a4';
11
11
  viewWidth: number;
12
+ viewHeight: number;
12
13
  printMode: boolean;
13
14
  letterData: plugins.tsclass.business.ILetter;
14
15
  letterDataUrl: string;
@@ -17,4 +18,6 @@ export declare class DeDocument extends DeesElement {
17
18
  render(): TemplateResult;
18
19
  firstUpdated(_changedProperties: Map<string | number | symbol, unknown>): Promise<void>;
19
20
  renderDocument(): Promise<void>;
21
+ updated(changedProperties: Map<string | number | symbol, unknown>): void;
22
+ private adjustDePageScaling;
20
23
  }
@@ -0,0 +1 @@
1
+ export declare const demoFunc: () => import("@design.estate/dees-element").TemplateResult<1>;
@@ -0,0 +1,6 @@
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
@@ -12,14 +12,14 @@ import * as plugins from '../plugins.js';
12
12
  import { DePage } from './page.js';
13
13
  import { DeContentInvoice } from './contentinvoice.js';
14
14
  import * as shared from './shared/index.js';
15
+ import { demoFunc } from './document.demo.js';
15
16
  export let DeDocument = class DeDocument extends DeesElement {
16
- static { this.demo = () => html `
17
- <dedocument-dedocument .format="${'a4'}" .letterData=${shared.demoLetter}></dedocument-dedocument>
18
- `; }
17
+ static { this.demo = demoFunc; }
19
18
  constructor() {
20
19
  super();
21
20
  this.format = 'a4';
22
- this.viewWidth = shared.a4Width;
21
+ this.viewWidth = null;
22
+ this.viewHeight = null;
23
23
  this.printMode = false;
24
24
  domtools.DomTools.setupDomTools();
25
25
  }
@@ -34,24 +34,28 @@ export let DeDocument = class DeDocument extends DeesElement {
34
34
  }
35
35
 
36
36
  .betweenPagesSpacer {
37
- height: 20px;
37
+ height: 16px;
38
38
  }
39
39
  `,
40
40
  ]; }
41
41
  render() {
42
42
  return html `
43
- <style>
44
- :host {
45
- transform-origin: top left;
46
- transform: ${this.viewWidth
47
- ? unsafeCSS(`scale(${this.viewWidth / shared.a4Width}, ${this.viewWidth / shared.a4Width})`)
48
- : unsafeCSS('')};
49
- }
50
- </style>
51
- <div class="scaleport"></div>
43
+ <div class="documentContainer"></div>
52
44
  `;
53
45
  }
54
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
+ });
55
59
  if (this.letterDataUrl) {
56
60
  const response = await fetch(this.letterDataUrl);
57
61
  this.letterData = await response.json();
@@ -60,7 +64,7 @@ export let DeDocument = class DeDocument extends DeesElement {
60
64
  }
61
65
  async renderDocument() {
62
66
  const domtools = await this.domtoolsPromise;
63
- const scaleport = this.shadowRoot.querySelector('.scaleport');
67
+ const documentContainer = this.shadowRoot.querySelector('.documentContainer');
64
68
  let pages = [];
65
69
  let pageCounter = 0;
66
70
  let complete = false;
@@ -81,12 +85,12 @@ export let DeDocument = class DeDocument extends DeesElement {
81
85
  newPage.pageNumber = pageCounter;
82
86
  newPage.append(currentContent);
83
87
  newPage.pageTotalNumber = pageCounter;
84
- scaleport.append(newPage);
88
+ documentContainer.append(newPage);
85
89
  // betweenPagesSpacer
86
90
  if (!this.printMode) {
87
91
  const betweenPagesSpacerDiv = document.createElement('div');
88
92
  betweenPagesSpacerDiv.classList.add('betweenPagesSpacer');
89
- scaleport.append(betweenPagesSpacerDiv);
93
+ documentContainer.append(betweenPagesSpacerDiv);
90
94
  }
91
95
  await currentContent.elementDomReady;
92
96
  await currentContent.trimStartToOffset(overallContentOffset);
@@ -109,6 +113,31 @@ export let DeDocument = class DeDocument extends DeesElement {
109
113
  for (const page of pages) {
110
114
  page.pageTotalNumber = pageCounter;
111
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
+ });
112
141
  }
113
142
  };
114
143
  __decorate([
@@ -123,6 +152,12 @@ __decorate([
123
152
  }),
124
153
  __metadata("design:type", Number)
125
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);
126
161
  __decorate([
127
162
  property({
128
163
  type: Boolean,
@@ -154,4 +189,4 @@ DeDocument = __decorate([
154
189
  customElement('dedocument-dedocument'),
155
190
  __metadata("design:paramtypes", [])
156
191
  ], DeDocument);
157
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90c193ZWIvZWxlbWVudHMvZG9jdW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUNMLFdBQVcsRUFDWCxRQUFRLEVBQ1IsSUFBSSxFQUNKLGFBQWEsRUFFYixHQUFHLEVBQ0gsS0FBSyxFQUNMLFVBQVUsRUFDVixTQUFTLEVBQ1QsUUFBUSxHQUNULE1BQU0sNkJBQTZCLENBQUM7QUFFckMsT0FBTyxLQUFLLE9BQU8sTUFBTSxlQUFlLENBQUM7QUFHekMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNuQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV2RCxPQUFPLEtBQUssTUFBTSxNQUFNLG1CQUFtQixDQUFDO0FBU3JDLFdBQU0sVUFBVSxHQUFoQixNQUFNLFVBQVcsU0FBUSxXQUFXO2FBQzNCLFNBQUksR0FBRyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUE7c0NBQ0ssSUFBSSxpQkFBaUIsTUFBTSxDQUFDLFVBQVU7R0FDekUsQUFGaUIsQ0FFaEI7SUFvQ0Y7UUFDRSxLQUFLLEVBQUUsQ0FBQztRQWhDSCxXQUFNLEdBQVMsSUFBSSxDQUFDO1FBS3BCLGNBQVMsR0FBVyxNQUFNLENBQUMsT0FBTyxDQUFDO1FBSzFDLGNBQVMsR0FBRyxLQUFLLENBQUM7UUF1QmhCLFFBQVEsQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDcEMsQ0FBQzthQUVhLFdBQU0sR0FBRztRQUNyQixRQUFRLENBQUMsWUFBWSxDQUFDLFlBQVk7UUFDbEMsR0FBRyxDQUFBOzs7Ozs7Ozs7OztLQVdGO0tBQ0YsQUFkbUIsQ0FjbEI7SUFFSyxNQUFNO1FBQ1gsT0FBTyxJQUFJLENBQUE7Ozs7dUJBSVEsSUFBSSxDQUFDLFNBQVM7WUFDekIsQ0FBQyxDQUFDLFNBQVMsQ0FDUCxTQUFTLElBQUksQ0FB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
192
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90c193ZWIvZWxlbWVudHMvZG9jdW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUNMLFdBQVcsRUFDWCxRQUFRLEVBQ1IsSUFBSSxFQUNKLGFBQWEsRUFFYixHQUFHLEVBQ0gsS0FBSyxFQUNMLFVBQVUsRUFDVixTQUFTLEVBQ1QsUUFBUSxHQUNULE1BQU0sNkJBQTZCLENBQUM7QUFFckMsT0FBTyxLQUFLLE9BQU8sTUFBTSxlQUFlLENBQUM7QUFHekMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNuQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV2RCxPQUFPLEtBQUssTUFBTSxNQUFNLG1CQUFtQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQVN2QyxXQUFNLFVBQVUsR0FBaEIsTUFBTSxVQUFXLFNBQVEsV0FBVzthQUMzQixTQUFJLEdBQUcsUUFBUSxBQUFYLENBQVk7SUF5QzlCO1FBQ0UsS0FBSyxFQUFFLENBQUM7UUFyQ0gsV0FBTSxHQUFTLElBQUksQ0FBQztRQUtwQixjQUFTLEdBQVcsSUFBSSxDQUFDO1FBS3pCLGVBQVUsR0FBVyxJQUFJLENBQUM7UUFLakMsY0FBUyxHQUFHLEtBQUssQ0FBQztRQXVCaEIsUUFBUSxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUNwQyxDQUFDO2FBRWEsV0FBTSxHQUFHO1FBQ3JCLFFBQVEsQ0FBQyxZQUFZLENBQUMsWUFBWTtRQUNsQyxHQUFHLENBQUE7Ozs7Ozs7Ozs7O0tBV0Y7S0FDRixBQWRtQixDQWNsQjtJQUVLLE1BQU07UUFDWCxPQUFPLElBQUksQ0FBQTs7S0FFVixDQUFDO0lBQ0osQ0FBQztJQUVNLEtBQUssQ0FBQyxZQUFZLENBQUMsa0JBQTBEO1FBQ2xGLE1BQU0sY0FBYyxHQUFHLElBQUksY0FBYyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDcEQsS0FBSyxNQUFNLEtBQUssSUFBSSxPQUFPLEVBQUU7Z0JBQzNCLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDO2dCQUN0QyxNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQztnQkFDeEMsaUNBQWlDO2dCQUNqQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQzthQUM1QjtRQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0gsY0FBYyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM3QixJQUFJLENBQUMsdUJBQXVCLENBQUMsR0FBRyxFQUFFO1lBQ2hDLGNBQWMsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUM5QixDQUFDLENBQUMsQ0FBQTtRQUVGLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN0QixNQUFNLFFBQVEsR0FBRyxNQUFNLEtBQUssQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDakQsSUFBSSxDQUFDLFVBQVUsR0FBRyxNQUFNLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUN6QztRQUNELElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRU0sS0FBSyxDQUFDLGNBQWM7UUFDekIsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFJLENBQUMsZUFBZSxDQUFDO1FBQzVDLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUM5RSxJQUFJLEtBQUssR0FBYSxFQUFFLENBQUM7UUFDekIsSUFBSSxXQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ3BCLElBQUksUUFBUSxHQUFHLEtBQUssQ0FBQztRQUNyQixNQUFNLE9BQU8sR0FBcUIsUUFBUSxDQUFDLGFBQWEsQ0FDdEQsMkJBQTJCLENBQ1IsQ0FBQztRQUN0QixPQUFPLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUM7UUFDckMsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDbkMsTUFBTSxRQUFRLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbEQsSUFBSSxvQkFBb0IsR0FBVyxDQUFDLENBQUM7UUFDckMsSUFBSSxvQkFBNEIsQ0FBQztRQUNqQyxJQUFJLE9BQWUsQ0FBQztRQUNwQixPQUFPLENBQUMsUUFBUSxFQUFFO1lBQ2hCLFdBQVcsRUFBRSxDQUFDO1lBQ2QsTUFBTSxjQUFjLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQXFCLENBQUM7WUFDbkUsTUFBTSxPQUFPLEdBQUcsSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUM3QixPQUFPLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7WUFDbkMsT0FBTyxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDO1lBQ3JDLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDcEIsT0FBTyxDQUFDLFVBQVUsR0FBRyxXQUFXLENBQUM7WUFDakMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUMvQixPQUFPLENBQUMsZUFBZSxHQUFHLFdBQVcsQ0FBQztZQUN0QyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDbEMscUJBQXFCO1lBQ3JCLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFO2dCQUNuQixNQUFNLHFCQUFxQixHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQzVELHFCQUFxQixDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsb0JBQW9CLENBQUMsQ0FBQztnQkFDMUQsaUJBQWlCLENBQUMsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7YUFDakQ7WUFDRCxNQUFNLGNBQWMsQ0FBQyxlQUFlLENBQUM7WUFDckMsTUFBTSxjQUFjLENBQUMsaUJBQWlCLENBQUMsb0JBQW9CLENBQUMsQ0FBQztZQUM3RCxJQUFJLGdCQUFnQixHQUFHLE1BQU0sT0FBTyxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ3JELE9BQU8sR0FBRyxDQUFDLENBQUM7WUFDWixPQUFPLGdCQUFnQixFQUFFO2dCQUN2QixNQUFNLGNBQWMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztnQkFDcEMsT0FBTyxFQUFFLENBQUM7Z0JBQ1YsZ0JBQWdCLEdBQUcsTUFBTSxPQUFPLENBQUMsYUFBYSxFQUFFLENBQUM7YUFDbEQ7WUFDRCxvQkFBb0IsR0FBRyxNQUFNLGNBQWMsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQy9ELG9CQUFvQixHQUFHLG9CQUFvQixHQUFHLG9CQUFvQixDQUFDO1lBQ25FLElBQUksT0FBTyxLQUFLLENBQUMsRUFBRTtnQkFDakIsUUFBUSxHQUFHLElBQUksQ0FBQzthQUNqQjtZQUNELG1CQUFtQjtZQUNuQixPQUFPLENBQUMsR0FBRyxDQUFDLG9CQUFvQixDQUFDLENBQUM7U0FDbkM7UUFDRCxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVuQyxLQUFLLE1BQU0sSUFBSSxJQUFJLEtBQUssRUFBRTtZQUN4QixJQUFJLENBQUMsZUFBZSxHQUFHLFdBQVcsQ0FBQztTQUNwQztRQUNELElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRCxPQUFPLENBQUMsaUJBQXlEO1FBQy9ELEtBQUssQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUVqQyxJQUFJLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsSUFBSSxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLEVBQUU7WUFDN0UsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7U0FDNUI7SUFDSCxDQUFDO0lBRU8sbUJBQW1CO1FBQ3pCLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNsQixPQUFPO1NBQ1I7UUFDRCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7UUFDbEMsbURBQW1EO1FBQ25ELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUVsRSx5REFBeUQ7UUFDekQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQVksRUFBRSxFQUFFO1lBQzdCLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtnQkFDbkIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDO2FBQ25DO1lBQ0QsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO2dCQUNsQixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7Z0JBQ2hDLE9BQU8sQ0FBQyxHQUFHLENBQUMscUJBQXFCLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2FBQ3BEO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOztBQXZLTTtJQUhOLFFBQVEsQ0FBQztRQUNSLElBQUksRUFBRSxNQUFNO0tBQ2IsQ0FBQzs7MENBQ3lCO0FBS3BCO0lBSE4sUUFBUSxDQUFDO1FBQ1IsSUFBSSxFQUFFLE1BQU07S0FDYixDQUFDOzs2Q0FDOEI7QUFLekI7SUFITixRQUFRLENBQUM7UUFDUixJQUFJLEVBQUUsTUFBTTtLQUNiLENBQUM7OzhDQUMrQjtBQUtqQztJQUhDLFFBQVEsQ0FBQztRQUNSLElBQUksRUFBRSxPQUFPO0tBQ2QsQ0FBQzs7NkNBQ2dCO0FBY1g7SUFaTixRQUFRLENBQUM7UUFDUixJQUFJLEVBQUUsTUFBTTtRQUNaLE9BQU8sRUFBRSxJQUFJO1FBQ2IsU0FBUyxFQUFFLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDdEIsSUFBSSxPQUFPLFFBQVEsS0FBSyxRQUFRLEVBQUU7Z0JBQ2hDLE9BQU8sT0FBTyxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUE7YUFDL0M7aUJBQU07Z0JBQ0wsT0FBTyxRQUFRLENBQUM7YUFDakI7UUFDSCxDQUFDO0tBRUYsQ0FBQzs7OENBQ2tEO0FBSzdDO0lBSE4sUUFBUSxDQUFDO1FBQ1IsSUFBSSxFQUFFLE1BQU07S0FDYixDQUFDOztpREFDMkI7QUF4Q2xCLFVBQVU7SUFEdEIsYUFBYSxDQUFDLHVCQUF1QixDQUFDOztHQUMxQixVQUFVLENBOEt0QiJ9
@@ -6,4 +6,5 @@ export * from './pagecontainer.js';
6
6
  export * from './pagecontent.js';
7
7
  export * from './pagefooter.js';
8
8
  export * from './pageheader.js';
9
+ export * from './viewer.js';
9
10
  export * from './shared/index.js';
@@ -6,5 +6,6 @@ export * from './pagecontainer.js';
6
6
  export * from './pagecontent.js';
7
7
  export * from './pagefooter.js';
8
8
  export * from './pageheader.js';
9
+ export * from './viewer.js';
9
10
  export * from './shared/index.js';
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90c193ZWIvZWxlbWVudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsaUJBQWlCLENBQUM7QUFFaEMsY0FBYyxtQkFBbUIsQ0FBQyJ9
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90c193ZWIvZWxlbWVudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyxhQUFhLENBQUM7QUFFNUIsY0FBYyxtQkFBbUIsQ0FBQyJ9
@@ -7,6 +7,8 @@ declare global {
7
7
  }
8
8
  export declare class DePage extends DeesElement {
9
9
  static demo: () => TemplateResult<1>;
10
+ viewWidth: number;
11
+ viewHeight: number;
10
12
  format: 'a4';
11
13
  pageNumber: number;
12
14
  pageTotalNumber: number;
@@ -16,4 +18,6 @@ export declare class DePage extends DeesElement {
16
18
  static styles: import("@design.estate/dees-element").CSSResult[];
17
19
  render(): TemplateResult;
18
20
  checkOverflow(): Promise<boolean>;
21
+ updated(changedProperties: Map<string | number | symbol, unknown>): void;
22
+ private adjustScaling;
19
23
  }
@@ -15,6 +15,8 @@ export let DePage = class DePage extends DeesElement {
15
15
  static { this.demo = () => html ` <dedocument-page .format="${'a4'}"></dedocument-page> `; }
16
16
  constructor() {
17
17
  super();
18
+ this.viewWidth = null;
19
+ this.viewHeight = null;
18
20
  this.format = 'a4';
19
21
  this.pageNumber = 1;
20
22
  this.pageTotalNumber = 1;
@@ -26,7 +28,15 @@ export let DePage = class DePage extends DeesElement {
26
28
  domtools.elementBasic.staticStyles,
27
29
  css `
28
30
  :host {
31
+ display: block;
32
+ max-height: ${shared.a4Height}px;
33
+ max-width: ${shared.a4Width}px;
29
34
  }
35
+
36
+ #scaleWrapper {
37
+ transform-origin: top left;
38
+ }
39
+
30
40
  .versionOverlay {
31
41
  pointer-events: none;
32
42
  position: absolute;
@@ -60,44 +70,46 @@ export let DePage = class DePage extends DeesElement {
60
70
  ]; }
61
71
  render() {
62
72
  return html `
63
- <dedocument-pagecontainer .printMode=${this.printMode}>
64
- <dedocument-pageheader
65
- .letterData=${this.letterData}
66
- .pageNumber="${this.pageNumber}"
67
- .pageTotalNumber="${this.pageTotalNumber}"
68
- ></dedocument-pageheader>
69
- ${this.pageNumber === 1
73
+ <div id="scaleWrapper">
74
+ <dedocument-pagecontainer .printMode=${this.printMode}>
75
+ <dedocument-pageheader
76
+ .letterData=${this.letterData}
77
+ .pageNumber="${this.pageNumber}"
78
+ .pageTotalNumber="${this.pageTotalNumber}"
79
+ ></dedocument-pageheader>
80
+ ${this.pageNumber === 1
70
81
  ? html `
71
- <dedocument-letterheader
72
- .pageNumber="${this.pageNumber}"
73
- .letterData=${this.letterData}
74
- .pageTotalNumber="${this.pageTotalNumber}"
75
- ></dedocument-letterheader>
76
- `
82
+ <dedocument-letterheader
83
+ .pageNumber="${this.pageNumber}"
84
+ .letterData=${this.letterData}
85
+ .pageTotalNumber="${this.pageTotalNumber}"
86
+ ></dedocument-letterheader>
87
+ `
77
88
  : html ``}
78
- <dedocument-pagecontent
79
- .pageNumber="${this.pageNumber}"
80
- .pageTotalNumber="${this.pageTotalNumber}"
81
- .letterData=${this.letterData}
82
- ><slot></slot
83
- ></dedocument-pagecontent>
84
- <dedocument-pagefooter
85
- .letterData=${this.letterData}
86
- .pageNumber="${this.pageNumber}"
87
- .pageTotalNumber="${this.pageTotalNumber}"
88
- ></dedocument-pagefooter>
89
- <div class="versionOverlay">
90
- ${this.letterData.versionInfo.type === 'draft'
89
+ <dedocument-pagecontent
90
+ .pageNumber="${this.pageNumber}"
91
+ .pageTotalNumber="${this.pageTotalNumber}"
92
+ .letterData=${this.letterData}
93
+ ><slot></slot
94
+ ></dedocument-pagecontent>
95
+ <dedocument-pagefooter
96
+ .letterData=${this.letterData}
97
+ .pageNumber="${this.pageNumber}"
98
+ .pageTotalNumber="${this.pageTotalNumber}"
99
+ ></dedocument-pagefooter>
100
+ <div class="versionOverlay">
101
+ ${this.letterData.versionInfo.type === 'draft'
91
102
  ? html `
92
- <div class="topInfo">
93
- Please note: THIS IS A DRAFT ONLY. NO RIGHTS CAN BE DERIVED FROM THIS.<br>
94
- -> Revision/Document version: ${this.letterData.versionInfo.version}
95
- </div>
96
- <div class="bigDraftText">DRAFT</div>
97
- `
103
+ <div class="topInfo">
104
+ Please note: THIS IS A DRAFT ONLY. NO RIGHTS CAN BE DERIVED FROM THIS.<br />
105
+ -> Revision/Document version: ${this.letterData.versionInfo.version}
106
+ </div>
107
+ <div class="bigDraftText">DRAFT</div>
108
+ `
98
109
  : html ``}
99
- </div>
100
- </dedocument-pagecontainer>
110
+ </div>
111
+ </dedocument-pagecontainer>
112
+ </div>
101
113
  `;
102
114
  }
103
115
  async checkOverflow() {
@@ -105,7 +117,39 @@ export let DePage = class DePage extends DeesElement {
105
117
  const pageContent = this.shadowRoot.querySelector('dedocument-pagecontent');
106
118
  return pageContent.checkOverflow();
107
119
  }
120
+ updated(changedProperties) {
121
+ super.updated(changedProperties);
122
+ if (changedProperties.has("viewHeight") || changedProperties.has("viewWidth")) {
123
+ this.adjustScaling();
124
+ }
125
+ }
126
+ adjustScaling() {
127
+ console.log('page scale adjustment triggered.');
128
+ const scaleWrapper = this.shadowRoot.querySelector("#scaleWrapper");
129
+ if (!scaleWrapper)
130
+ return;
131
+ let scale = 1;
132
+ if (this.viewHeight) {
133
+ scale = this.viewHeight / shared.a4Height;
134
+ }
135
+ else if (this.viewWidth) {
136
+ scale = this.viewWidth / shared.a4Width;
137
+ }
138
+ console.log(`new scale is ${scale}`);
139
+ scaleWrapper.style.transform = `scale(${scale})`;
140
+ // Adjust the outer dimensions so they match the scaled content
141
+ // this.style.width = `${shared.a4Width * scale}px`;
142
+ this.style.height = `${shared.a4Height * scale}px`;
143
+ }
108
144
  };
145
+ __decorate([
146
+ property(),
147
+ __metadata("design:type", Number)
148
+ ], DePage.prototype, "viewWidth", void 0);
149
+ __decorate([
150
+ property(),
151
+ __metadata("design:type", Number)
152
+ ], DePage.prototype, "viewHeight", void 0);
109
153
  __decorate([
110
154
  property({
111
155
  type: String,
@@ -141,4 +185,4 @@ DePage = __decorate([
141
185
  customElement('dedocument-page'),
142
186
  __metadata("design:paramtypes", [])
143
187
  ], DePage);
144
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3RzX3dlYi9lbGVtZW50cy9wYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLE9BQU8sS0FBSyxPQUFPLE1BQU0sa0JBQWtCLENBQUM7QUFDNUMsT0FBTyxFQUNMLFdBQVcsRUFDWCxRQUFRLEVBQ1IsSUFBSSxFQUNKLGFBQWEsRUFFYixHQUFHLEVBQ0gsVUFBVSxFQUNWLFNBQVMsR0FDVixNQUFNLDZCQUE2QixDQUFDO0FBQ3JDLE9BQU8sS0FBSyxRQUFRLE1BQU0sOEJBQThCLENBQUM7QUFFekQsT0FBTyxLQUFLLE1BQU0sTUFBTSxtQkFBbUIsQ0FBQztBQVNyQyxXQUFNLE1BQU0sR0FBWixNQUFNLE1BQU8sU0FBUSxXQUFXO2FBQ3ZCLFNBQUksR0FBRyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUEsOEJBQThCLElBQUksdUJBQXVCLEFBQXRFLENBQXVFO0lBNEJ6RjtRQUNFLEtBQUssRUFBRSxDQUFDO1FBeEJILFdBQU0sR0FBUyxJQUFJLENBQUM7UUFLcEIsZUFBVSxHQUFXLENBQUMsQ0FBQztRQUt2QixvQkFBZSxHQUFXLENBQUMsQ0FBQztRQUs1QixlQUFVLEdBQTZCLE1BQU0sQ0FBQyxVQUFVLENBQUM7UUFNaEUsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUloQixRQUFRLENBQUMsUUFBUSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3BDLENBQUM7YUFFYSxXQUFNLEdBQUc7UUFDckIsUUFBUSxDQUFDLFlBQVksQ0FBQyxZQUFZO1FBQ2xDLEdBQUcsQ0FBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S0FnQ0Y7S0FDRixBQW5DbUIsQ0FtQ2xCO0lBRUssTUFBTTtRQUNYLE9BQU8sSUFBSSxDQUFBOzZDQUM4QixJQUFJLENBQUMsU0FBUzs7d0JBRW5DLElBQUksQ0FBQyxVQUFVO3lCQUNkLElBQUksQ0FBQyxVQUFVOzhCQUNWLElBQUksQ0FBQyxlQUFlOztVQUV4QyxJQUFJLENBQUMsVUFBVSxLQUFLLENBQUM7WUFDckIsQ0FBQyxDQUFDLElBQUksQ0FBQTs7K0JBRWUsSUFBSSxDQUFDLFVBQVU7OEJBQ2hCLElBQUksQ0FBQyxVQUFVO29DQUNULElBQUksQ0FBQyxlQUFlOzthQUUzQztZQUNILENBQUMsQ0FBQyxJQUFJLENBQUEsRUFBRTs7eUJBRU8sSUFBSSxDQUFDLFVBQVU7OEJBQ1YsSUFBSSxDQUFDLGVBQWU7d0JBQzFCLElBQUksQ0FBQyxVQUFVOzs7O3dCQUlmLElBQUksQ0FBQyxVQUFVO3lCQUNkLElBQUksQ0FBQyxVQUFVOzhCQUNWLElBQUksQ0FBQyxlQUFlOzs7WUFHdEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsSUFBSSxLQUFLLE9BQU87WUFDNUMsQ0FBQyxDQUFDLElBQUksQ0FBQTs7O2tEQUdnQyxJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxPQUFPOzs7ZUFHdEU7WUFDSCxDQUFDLENBQUMsSUFBSSxDQUFBLEVBQUU7OztLQUdmLENBQUM7SUFDSixDQUFDO0lBRU0sS0FBSyxDQUFDLGFBQWE7UUFDeEIsTUFBTSxJQUFJLENBQUMsZUFBZSxDQUFDO1FBQzNCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLHdCQUF3QixDQUFDLENBQUM7UUFDNUUsT0FBTyxXQUFXLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDckMsQ0FBQzs7QUFoSE07SUFITixRQUFRLENBQUM7UUFDUixJQUFJLEVBQUUsTUFBTTtLQUNiLENBQUM7O3NDQUN5QjtBQUtwQjtJQUhOLFFBQVEsQ0FBQztRQUNSLElBQUksRUFBRSxNQUFNO0tBQ2IsQ0FBQzs7MENBQzRCO0FBS3ZCO0lBSE4sUUFBUSxDQUFDO1FBQ1IsSUFBSSxFQUFFLE1BQU07S0FDYixDQUFDOzsrQ0FDaUM7QUFLNUI7SUFITixRQUFRLENBQUM7UUFDUixJQUFJLEVBQUUsTUFBTTtLQUNiLENBQUM7OzBDQUM4RDtBQU1oRTtJQUpDLFFBQVEsQ0FBQztRQUNSLElBQUksRUFBRSxPQUFPO1FBQ2IsT0FBTyxFQUFFLElBQUk7S0FDZCxDQUFDOzt5Q0FDZ0I7QUEzQlAsTUFBTTtJQURsQixhQUFhLENBQUMsaUJBQWlCLENBQUM7O0dBQ3BCLE1BQU0sQ0F1SGxCIn0=
188
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3RzX3dlYi9lbGVtZW50cy9wYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLE9BQU8sS0FBSyxPQUFPLE1BQU0sa0JBQWtCLENBQUM7QUFDNUMsT0FBTyxFQUNMLFdBQVcsRUFDWCxRQUFRLEVBQ1IsSUFBSSxFQUNKLGFBQWEsRUFFYixHQUFHLEVBQ0gsVUFBVSxFQUNWLFNBQVMsR0FDVixNQUFNLDZCQUE2QixDQUFDO0FBQ3JDLE9BQU8sS0FBSyxRQUFRLE1BQU0sOEJBQThCLENBQUM7QUFFekQsT0FBTyxLQUFLLE1BQU0sTUFBTSxtQkFBbUIsQ0FBQztBQVNyQyxXQUFNLE1BQU0sR0FBWixNQUFNLE1BQU8sU0FBUSxXQUFXO2FBQ3ZCLFNBQUksR0FBRyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUEsOEJBQThCLElBQUksdUJBQXVCLEFBQXRFLENBQXVFO0lBa0N6RjtRQUNFLEtBQUssRUFBRSxDQUFDO1FBaENWLGNBQVMsR0FBVyxJQUFJLENBQUM7UUFHekIsZUFBVSxHQUFXLElBQUksQ0FBQztRQUtuQixXQUFNLEdBQVMsSUFBSSxDQUFDO1FBS3BCLGVBQVUsR0FBVyxDQUFDLENBQUM7UUFLdkIsb0JBQWUsR0FBVyxDQUFDLENBQUM7UUFLNUIsZUFBVSxHQUE2QixNQUFNLENBQUMsVUFBVSxDQUFDO1FBTWhFLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFJaEIsUUFBUSxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUNwQyxDQUFDO2FBRWEsV0FBTSxHQUFHO1FBQ3JCLFFBQVEsQ0FBQyxZQUFZLENBQUMsWUFBWTtRQUNsQyxHQUFHLENBQUE7OztzQkFHZSxNQUFNLENBQUMsUUFBUTtxQkFDaEIsTUFBTSxDQUFDLE9BQU87Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLQW9DOUI7S0FDRixBQTNDbUIsQ0EyQ2xCO0lBRUssTUFBTTtRQUNYLE9BQU8sSUFBSSxDQUFBOzsrQ0FFZ0MsSUFBSSxDQUFDLFNBQVM7OzBCQUVuQyxJQUFJLENBQUMsVUFBVTsyQkFDZCxJQUFJLENBQUMsVUFBVTtnQ0FDVixJQUFJLENBQUMsZUFBZTs7WUFFeEMsSUFBSSxDQUFDLFVBQVUsS0FBSyxDQUFDO1lBQ3JCLENBQUMsQ0FBQyxJQUFJLENBQUE7O2lDQUVlLElBQUksQ0FBQyxVQUFVO2dDQUNoQixJQUFJLENBQUMsVUFBVTtzQ0FDVCxJQUFJLENBQUMsZUFBZTs7ZUFFM0M7WUFDSCxDQUFDLENBQUMsSUFBSSxDQUFBLEVBQUU7OzJCQUVPLElBQUksQ0FBQyxVQUFVO2dDQUNWLElBQUksQ0FBQyxlQUFlOzBCQUMxQixJQUFJLENBQUMsVUFBVTs7OzswQkFJZixJQUFJLENBQUMsVUFBVTsyQkFDZCxJQUFJLENBQUMsVUFBVTtnQ0FDVixJQUFJLENBQUMsZUFBZTs7O2NBR3RDLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLElBQUksS0FBSyxPQUFPO1lBQzVDLENBQUMsQ0FBQyxJQUFJLENBQUE7OztvREFHZ0MsSUFBSSxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsT0FBTzs7O2lCQUd0RTtZQUNILENBQUMsQ0FBQyxJQUFJLENBQUEsRUFBRTs7OztLQUlqQixDQUFDO0lBQ0osQ0FBQztJQUVNLEtBQUssQ0FBQyxhQUFhO1FBQ3hCLE1BQU0sSUFBSSxDQUFDLGVBQWUsQ0FBQztRQUMzQixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1FBQzVFLE9BQU8sV0FBVyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3JDLENBQUM7SUFFRCxPQUFPLENBQUMsaUJBQXlEO1FBQy9ELEtBQUssQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNqQyxJQUFJLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsSUFBSSxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLEVBQUU7WUFDN0UsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1NBQ3RCO0lBQ0gsQ0FBQztJQUVPLGFBQWE7UUFDbkIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFBO1FBQy9DLE1BQU0sWUFBWSxHQUFtQixJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUVwRixJQUFJLENBQUMsWUFBWTtZQUFFLE9BQU87UUFFMUIsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ2QsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ25CLEtBQUssR0FBRyxJQUFJLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUM7U0FDM0M7YUFBTSxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDekIsS0FBSyxHQUFHLElBQUksQ0FBQyxTQUFTLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQztTQUN6QztRQUNELE9BQU8sQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDckMsWUFBWSxDQUFDLEtBQUssQ0FBQyxTQUFTLEdBQUcsU0FBUyxLQUFLLEdBQUcsQ0FBQztRQUVqRCwrREFBK0Q7UUFFL0Qsb0RBQW9EO1FBQ3BELElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLFFBQVEsR0FBRyxLQUFLLElBQUksQ0FBQztJQUNyRCxDQUFDOztBQTlKRDtJQURDLFFBQVEsRUFBRTs7eUNBQ2M7QUFHekI7SUFEQyxRQUFRLEVBQUU7OzBDQUNlO0FBS25CO0lBSE4sUUFBUSxDQUFDO1FBQ1IsSUFBSSxFQUFFLE1BQU07S0FDYixDQUFDOztzQ0FDeUI7QUFLcEI7SUFITixRQUFRLENBQUM7UUFDUixJQUFJLEVBQUUsTUFBTTtLQUNiLENBQUM7OzBDQUM0QjtBQUt2QjtJQUhOLFFBQVEsQ0FBQztRQUNSLElBQUksRUFBRSxNQUFNO0tBQ2IsQ0FBQzs7K0NBQ2lDO0FBSzVCO0lBSE4sUUFBUSxDQUFDO1FBQ1IsSUFBSSxFQUFFLE1BQU07S0FDYixDQUFDOzswQ0FDOEQ7QUFNaEU7SUFKQyxRQUFRLENBQUM7UUFDUixJQUFJLEVBQUUsT0FBTztRQUNiLE9BQU8sRUFBRSxJQUFJO0tBQ2QsQ0FBQzs7eUNBQ2dCO0FBakNQLE1BQU07SUFEbEIsYUFBYSxDQUFDLGlCQUFpQixDQUFDOztHQUNwQixNQUFNLENBbUtsQiJ9
@@ -0,0 +1,14 @@
1
+ import * as plugins from '../plugins.js';
2
+ import { DeesElement } from '@design.estate/dees-element';
3
+ declare global {
4
+ interface HTMLElementTagNameMap {
5
+ 'dedocument-viewer': DeDocumentViewer;
6
+ }
7
+ }
8
+ export declare class DeDocumentViewer extends DeesElement {
9
+ static demo: () => import("@design.estate/dees-element").TemplateResult<1>;
10
+ letterData: plugins.tsclass.business.ILetter;
11
+ static styles: import("@design.estate/dees-element").CSSResult[];
12
+ render: () => import("@design.estate/dees-element").TemplateResult<1>;
13
+ updated: (changedProperties: Map<string | number | symbol, unknown>) => void;
14
+ }
@@ -0,0 +1 @@
1
+ export declare const demoFunc: () => import("@design.estate/dees-element").TemplateResult<1>;
@@ -0,0 +1,6 @@
1
+ import { html } from '@design.estate/dees-element';
2
+ import * as shared from './shared/index.js';
3
+ export const demoFunc = () => html `
4
+ <dedocument-viewer .letterData=${shared.demoLetter}></dedocument-viewer>
5
+ `;
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld2VyLmRlbW8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90c193ZWIvZWxlbWVudHMvdmlld2VyLmRlbW8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ25ELE9BQU8sS0FBSyxNQUFNLE1BQU0sbUJBQW1CLENBQUM7QUFFNUMsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQTttQ0FDQyxNQUFNLENBQUMsVUFBVTtDQUNuRCxDQUFDIn0=
@@ -0,0 +1,83 @@
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
+ import * as plugins from '../plugins.js';
8
+ import { DeesElement, css, cssManager, customElement, html } from '@design.estate/dees-element';
9
+ import { demoFunc } from './viewer.demo.js';
10
+ export let DeDocumentViewer = class DeDocumentViewer extends DeesElement {
11
+ constructor() {
12
+ super(...arguments);
13
+ // INSTANCE
14
+ this.letterData = null;
15
+ this.render = () => {
16
+ return html `
17
+ <div class="maincontainer">
18
+ <div class="viewport">
19
+ ${this.letterData
20
+ ? html ` <dedocument-dedocument .letterData=${this.letterData}></dedocument-dedocument> `
21
+ : html ``}
22
+ </div>
23
+ <div class="controls"></div>
24
+ </div>
25
+ `;
26
+ };
27
+ this.updated = (changedProperties) => {
28
+ super.updated(changedProperties);
29
+ if (changedProperties.has('letterData')) {
30
+ }
31
+ };
32
+ }
33
+ // DEMO
34
+ static { this.demo = demoFunc; }
35
+ static { this.styles = [
36
+ cssManager.defaultStyles,
37
+ css `
38
+ .maincontainer {
39
+ position: relative;
40
+ height: 100%;
41
+ width: 100%;
42
+ background: ${cssManager.bdTheme('#eeeeeb', '#111')};
43
+ }
44
+ .controls {
45
+ top: 0px;
46
+ right: 0px;
47
+ left: 0px;
48
+ position: absolute;
49
+ height: 32px;
50
+ width: 100%;
51
+ background: ${cssManager.bdTheme('#eeeeeb', '#111111ee')};
52
+ box-shadow: 0px 2px 8px 0px #000000;
53
+ }
54
+ .controlsShadow {
55
+ position: absolute;
56
+ top: 32px;
57
+ right: 0px;
58
+ left: 0px;
59
+ height: 16px;
60
+ width: 100%;
61
+ position: absolute;
62
+ background: linear-gradient(to bottom, #111111cc 0%, #11111100 100%);
63
+ }
64
+
65
+ .viewport {
66
+ position: absolute;
67
+ padding: 16px;
68
+ padding-top: 48px;
69
+ padding-bottom: 0px;
70
+ top: 0px;
71
+ left: 0px;
72
+ right: 0px;
73
+ bottom: 0px;
74
+ overflow-y: scroll;
75
+ overscroll-behavior: contain;
76
+ }
77
+ `,
78
+ ]; }
79
+ };
80
+ DeDocumentViewer = __decorate([
81
+ customElement('dedocument-viewer')
82
+ ], DeDocumentViewer);
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdHNfd2ViL2VsZW1lbnRzL3ZpZXdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxPQUFPLEtBQUssT0FBTyxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLEdBQUcsRUFBRSxVQUFVLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2hHLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQVNyQyxXQUFNLGdCQUFnQixHQUF0QixNQUFNLGdCQUFpQixTQUFRLFdBQVc7SUFBMUM7O1FBSUwsV0FBVztRQUNKLGVBQVUsR0FBcUMsSUFBSSxDQUFDO1FBK0NwRCxXQUFNLEdBQUcsR0FBRyxFQUFFO1lBQ25CLE9BQU8sSUFBSSxDQUFBOzs7WUFHSCxJQUFJLENBQUMsVUFBVTtnQkFDZixDQUFDLENBQUMsSUFBSSxDQUFBLHVDQUF1QyxJQUFJLENBQUMsVUFBVSw0QkFBNEI7Z0JBQ3hGLENBQUMsQ0FBQyxJQUFJLENBQUEsRUFBRTs7OztLQUlmLENBQUM7UUFDSixDQUFDLENBQUM7UUFFSyxZQUFPLEdBQUcsQ0FBQyxpQkFBeUQsRUFBRSxFQUFFO1lBQzdFLEtBQUssQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQztZQUNqQyxJQUFJLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsRUFBRTthQUN4QztRQUNILENBQUMsQ0FBQztJQUNKLENBQUM7SUFyRUMsT0FBTzthQUNPLFNBQUksR0FBRyxRQUFRLEFBQVgsQ0FBWTthQUtoQixXQUFNLEdBQUc7UUFDckIsVUFBVSxDQUFDLGFBQWE7UUFDeEIsR0FBRyxDQUFBOzs7OztzQkFLZSxVQUFVLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUM7Ozs7Ozs7OztzQkFTckMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsV0FBVyxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLQTBCM0Q7S0FDRixBQTNDbUIsQ0EyQ2xCOztBQWxEUyxnQkFBZ0I7SUFENUIsYUFBYSxDQUFDLG1CQUFtQixDQUFDO0dBQ3RCLGdCQUFnQixDQXNFNUIifQ==
@@ -4,7 +4,7 @@ import * as plugins from '../plugins.js';
4
4
  export const page1 = () => html `
5
5
  <style>
6
6
  dedocument-dedocument {
7
- margin: 40px;
7
+ margin: 16px;
8
8
  }
9
9
  </style>
10
10
  <dedocument-dedocument .printMode=${false} letterData=${plugins.smartjson.stringifyBase64({