overview-components 1.1.108 → 1.1.110
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/components/components-settings/attachments-tab-settings.d.ts +5 -0
- package/dist/components/components-settings/attachments-tab-settings.d.ts.map +1 -1
- package/dist/components/components-settings/attachments-tab-settings.js +78 -3
- package/dist/components/components-settings/attachments-tab-settings.js.map +1 -1
- package/dist/components/lit-attachments-tab.d.ts +10 -0
- package/dist/components/lit-attachments-tab.d.ts.map +1 -1
- package/dist/components/lit-attachments-tab.js +230 -11
- package/dist/components/lit-attachments-tab.js.map +1 -1
- package/dist/components/lit-chart.d.ts.map +1 -1
- package/dist/components/lit-chart.js +4 -0
- package/dist/components/lit-chart.js.map +1 -1
- package/dist/schemas/lit-attachments-tab-document.schema.d.ts +13 -0
- package/dist/schemas/lit-attachments-tab-document.schema.d.ts.map +1 -1
- package/dist/schemas/lit-attachments-tab-document.schema.js +16 -3
- package/dist/schemas/lit-attachments-tab-document.schema.js.map +1 -1
- package/dist/schemas/lit-attachments-tab-settings-value.schema.d.ts +12 -0
- package/dist/schemas/lit-attachments-tab-settings-value.schema.d.ts.map +1 -1
- package/dist/schemas/lit-attachments-tab-settings-value.schema.js +12 -0
- package/dist/schemas/lit-attachments-tab-settings-value.schema.js.map +1 -1
- package/dist/schemas/lit-attachments-tab.schema.d.ts +29 -0
- package/dist/schemas/lit-attachments-tab.schema.d.ts.map +1 -1
- package/dist/schemas/lit-attachments-tab.schema.js +16 -0
- package/dist/schemas/lit-attachments-tab.schema.js.map +1 -1
- package/dist/shared/lit-document-thumbnail.d.ts +38 -0
- package/dist/shared/lit-document-thumbnail.d.ts.map +1 -0
- package/dist/shared/lit-document-thumbnail.js +349 -0
- package/dist/shared/lit-document-thumbnail.js.map +1 -0
- package/dist/shared/lit-menu-item.js +1 -1
- package/dist/shared/lit-select.d.ts +4 -2
- package/dist/shared/lit-select.d.ts.map +1 -1
- package/dist/shared/lit-select.js +22 -15
- package/dist/shared/lit-select.js.map +1 -1
- package/dist/utils/file-type-utils.d.ts +14 -0
- package/dist/utils/file-type-utils.d.ts.map +1 -0
- package/dist/utils/file-type-utils.js +55 -0
- package/dist/utils/file-type-utils.js.map +1 -0
- package/dist/utils/pdf-thumbnail-generator.d.ts +34 -0
- package/dist/utils/pdf-thumbnail-generator.d.ts.map +1 -0
- package/dist/utils/pdf-thumbnail-generator.js +90 -0
- package/dist/utils/pdf-thumbnail-generator.js.map +1 -0
- package/package.json +1 -1
|
@@ -9,12 +9,17 @@ import '../../shared/lit-modal-header.js';
|
|
|
9
9
|
import '../../shared/lit-modal-footer.js';
|
|
10
10
|
import '../../shared/lit-modal-body.js';
|
|
11
11
|
import '../../shared/lit-label.js';
|
|
12
|
+
import '../../shared/lit-toggle.js';
|
|
12
13
|
export declare class AttachmentsTabSettings extends LitElement {
|
|
13
14
|
onClose: (() => void) | undefined;
|
|
14
15
|
onSettingsChangedModal?: Function;
|
|
15
16
|
columnDefaultSize?: number;
|
|
16
17
|
type?: 'compact' | 'select';
|
|
17
18
|
scale?: number;
|
|
19
|
+
enableThumbnails?: boolean;
|
|
20
|
+
thumbnailSize?: number;
|
|
21
|
+
enableAdditionalInformation?: boolean;
|
|
22
|
+
enableThumbnailDetail?: boolean;
|
|
18
23
|
private isOpenModal;
|
|
19
24
|
private localSettingsValue?;
|
|
20
25
|
private originalValues;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"attachments-tab-settings.d.ts","sourceRoot":"","sources":["../../../src/components/components-settings/attachments-tab-settings.ts"],"names":[],"mappings":"AACA,OAAO,EAAa,UAAU,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAK5D,OAAO,oDAAoD,CAAC;AAC5D,OAAO,4BAA4B,CAAC;AACpC,OAAO,kCAAkC,CAAC;AAC1C,OAAO,gCAAgC,CAAC;AACxC,OAAO,2BAA2B,CAAC;AACnC,OAAO,iCAAiC,CAAC;AACzC,OAAO,kCAAkC,CAAC;AAC1C,OAAO,kCAAkC,CAAC;AAC1C,OAAO,gCAAgC,CAAC;AACxC,OAAO,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"attachments-tab-settings.d.ts","sourceRoot":"","sources":["../../../src/components/components-settings/attachments-tab-settings.ts"],"names":[],"mappings":"AACA,OAAO,EAAa,UAAU,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAK5D,OAAO,oDAAoD,CAAC;AAC5D,OAAO,4BAA4B,CAAC;AACpC,OAAO,kCAAkC,CAAC;AAC1C,OAAO,gCAAgC,CAAC;AACxC,OAAO,2BAA2B,CAAC;AACnC,OAAO,iCAAiC,CAAC;AACzC,OAAO,kCAAkC,CAAC;AAC1C,OAAO,kCAAkC,CAAC;AAC1C,OAAO,gCAAgC,CAAC;AACxC,OAAO,2BAA2B,CAAC;AACnC,OAAO,4BAA4B,CAAC;AAKpC,qBAAa,sBAAuB,SAAQ,UAAU;IACpB,OAAO,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;IAClC,sBAAsB,CAAC,EAAE,QAAQ,CAEvD;IAEoB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,IAAI,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAa;IACxC,KAAK,CAAC,EAAE,MAAM,CAAK;IAClB,gBAAgB,CAAC,EAAE,OAAO,CAAQ;IACnC,aAAa,CAAC,EAAE,MAAM,CAAM;IAC3B,2BAA2B,CAAC,EAAE,OAAO,CAAQ;IAC7C,qBAAqB,CAAC,EAAE,OAAO,CAAQ;IAE3D,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,kBAAkB,CAAC,CAA8B;IAEzD,OAAO,CAAC,cAAc,CAOxB;IAEE,OAAO,CAAC,aAAa,CAOvB;IAEP,iBAAiB;IAMjB,oBAAoB;IAKpB,cAAc,CAAC,CAAC,EAAE,aAAa,GAAG,IAAI;IAQtC,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC;IAW3C,OAAO,CAAC,gBAAgB;IAgBxB,OAAO,CAAC,kBAAkB;IAS1B,OAAO,CAAC,mBAAmB;IAO3B,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,cAAc;IAUtB,MAAM,CAAC,MAAM,4BAAW;IAExB,MAAM,IAAI,cAAc;CA6J3B;AAKD,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,qBAAqB;QAC3B,0BAA0B,EAAE,sBAAsB,CAAC;KACtD;CACJ"}
|
|
@@ -18,12 +18,17 @@ import '../../shared/lit-modal-header.js';
|
|
|
18
18
|
import '../../shared/lit-modal-footer.js';
|
|
19
19
|
import '../../shared/lit-modal-body.js';
|
|
20
20
|
import '../../shared/lit-label.js';
|
|
21
|
+
import '../../shared/lit-toggle.js';
|
|
21
22
|
export class AttachmentsTabSettings extends LitElement {
|
|
22
23
|
constructor() {
|
|
23
24
|
super(...arguments);
|
|
24
25
|
this.onSettingsChangedModal = (settingsValue) => { };
|
|
25
26
|
this.type = 'compact';
|
|
26
27
|
this.scale = 1;
|
|
28
|
+
this.enableThumbnails = true;
|
|
29
|
+
this.thumbnailSize = 40;
|
|
30
|
+
this.enableAdditionalInformation = true;
|
|
31
|
+
this.enableThumbnailDetail = true;
|
|
27
32
|
this.isOpenModal = false;
|
|
28
33
|
this.originalValues = {};
|
|
29
34
|
this.currentValues = {};
|
|
@@ -47,7 +52,7 @@ export class AttachmentsTabSettings extends LitElement {
|
|
|
47
52
|
updated(changedProperties) {
|
|
48
53
|
super.updated(changedProperties);
|
|
49
54
|
// If any of the properties changed, reinitialize values
|
|
50
|
-
const settingsProperties = ['type', 'scale'];
|
|
55
|
+
const settingsProperties = ['type', 'scale', 'enableThumbnails', 'thumbnailSize', 'enableAdditionalInformation', 'enableThumbnailDetail'];
|
|
51
56
|
if (settingsProperties.some((prop) => changedProperties.has(prop))) {
|
|
52
57
|
this.initializeValues();
|
|
53
58
|
}
|
|
@@ -57,6 +62,10 @@ export class AttachmentsTabSettings extends LitElement {
|
|
|
57
62
|
this.originalValues = {
|
|
58
63
|
scale: this.scale || 1,
|
|
59
64
|
type: this.type || 'compact',
|
|
65
|
+
enableThumbnails: this.enableThumbnails ?? true,
|
|
66
|
+
thumbnailSize: this.thumbnailSize || 40,
|
|
67
|
+
enableAdditionalInformation: this.enableAdditionalInformation ?? true,
|
|
68
|
+
enableThumbnailDetail: this.enableThumbnailDetail ?? true,
|
|
60
69
|
};
|
|
61
70
|
// Initialize current values with original values
|
|
62
71
|
this.currentValues = { ...this.originalValues };
|
|
@@ -128,7 +137,7 @@ export class AttachmentsTabSettings extends LitElement {
|
|
|
128
137
|
</div>
|
|
129
138
|
<div style="display: flex;flex-direction: column; gap: 0.5rem">
|
|
130
139
|
<div
|
|
131
|
-
style="display: flex; flex-direction: column;justify-content: center;
|
|
140
|
+
style="display: flex; flex-direction: column;justify-content: center;"
|
|
132
141
|
>
|
|
133
142
|
<lit-text-field
|
|
134
143
|
.label="${'scale'}"
|
|
@@ -142,7 +151,7 @@ export class AttachmentsTabSettings extends LitElement {
|
|
|
142
151
|
></lit-text-field>
|
|
143
152
|
</div>
|
|
144
153
|
<div
|
|
145
|
-
style="display: flex; flex-direction: column;justify-content: center;
|
|
154
|
+
style="display: flex; flex-direction: column;justify-content: center;"
|
|
146
155
|
>
|
|
147
156
|
<lit-select-field
|
|
148
157
|
.label="${'type'}"
|
|
@@ -158,6 +167,60 @@ export class AttachmentsTabSettings extends LitElement {
|
|
|
158
167
|
}}"
|
|
159
168
|
></lit-select-field>
|
|
160
169
|
</div>
|
|
170
|
+
<div
|
|
171
|
+
style="display: flex; flex-direction: column;justify-content: center;"
|
|
172
|
+
>
|
|
173
|
+
<lit-toggle
|
|
174
|
+
.label="${'enableThumbnails'}"
|
|
175
|
+
.tooltip="${'Enable or disable thumbnail previews for documents in the list.'}"
|
|
176
|
+
.checked=${this.currentValues.enableThumbnails ?? true}
|
|
177
|
+
@change="${(e) => {
|
|
178
|
+
this.updateCurrentValue('enableThumbnails', e.detail);
|
|
179
|
+
}}"
|
|
180
|
+
></lit-toggle>
|
|
181
|
+
</div>
|
|
182
|
+
${this.currentValues.enableThumbnails
|
|
183
|
+
? html `
|
|
184
|
+
<div
|
|
185
|
+
style="display: flex; flex-direction: column;justify-content: center;"
|
|
186
|
+
>
|
|
187
|
+
<lit-text-field
|
|
188
|
+
.label="${'thumbnailSize'}"
|
|
189
|
+
.tooltip="${'Size of the thumbnail preview in pixels (default: 40).'}"
|
|
190
|
+
type="number"
|
|
191
|
+
.value="${this.currentValues.thumbnailSize}"
|
|
192
|
+
@onBlur=${(e) => {
|
|
193
|
+
const value = parseFloat(e.detail);
|
|
194
|
+
this.updateCurrentValue('thumbnailSize', isNaN(value) ? undefined : value);
|
|
195
|
+
}}
|
|
196
|
+
></lit-text-field>
|
|
197
|
+
</div>
|
|
198
|
+
`
|
|
199
|
+
: null}
|
|
200
|
+
<div
|
|
201
|
+
style="display: flex; flex-direction: column;justify-content: center;"
|
|
202
|
+
>
|
|
203
|
+
<lit-toggle
|
|
204
|
+
.label="${'enableAdditionalInformation'}"
|
|
205
|
+
.tooltip="${'Enable or disable display of dateOfUpload and userName for documents in the list.'}"
|
|
206
|
+
.checked=${this.currentValues.enableAdditionalInformation ?? true}
|
|
207
|
+
@change="${(e) => {
|
|
208
|
+
this.updateCurrentValue('enableAdditionalInformation', e.detail);
|
|
209
|
+
}}"
|
|
210
|
+
></lit-toggle>
|
|
211
|
+
</div>
|
|
212
|
+
<div
|
|
213
|
+
style="display: flex; flex-direction: column;justify-content: center;"
|
|
214
|
+
>
|
|
215
|
+
<lit-toggle
|
|
216
|
+
.label="${'enableThumbnailDetail'}"
|
|
217
|
+
.tooltip="${'Enable or disable detailed thumbnail hover preview.'}"
|
|
218
|
+
.checked=${this.currentValues.enableThumbnailDetail ?? true}
|
|
219
|
+
@change="${(e) => {
|
|
220
|
+
this.updateCurrentValue('enableThumbnailDetail', e.detail);
|
|
221
|
+
}}"
|
|
222
|
+
></lit-toggle>
|
|
223
|
+
</div>
|
|
161
224
|
</div>
|
|
162
225
|
</lit-modal-body>
|
|
163
226
|
<lit-modal-footer
|
|
@@ -201,6 +264,18 @@ __decorate([
|
|
|
201
264
|
__decorate([
|
|
202
265
|
property({ type: Number })
|
|
203
266
|
], AttachmentsTabSettings.prototype, "scale", void 0);
|
|
267
|
+
__decorate([
|
|
268
|
+
property({ type: Boolean })
|
|
269
|
+
], AttachmentsTabSettings.prototype, "enableThumbnails", void 0);
|
|
270
|
+
__decorate([
|
|
271
|
+
property({ type: Number })
|
|
272
|
+
], AttachmentsTabSettings.prototype, "thumbnailSize", void 0);
|
|
273
|
+
__decorate([
|
|
274
|
+
property({ type: Boolean })
|
|
275
|
+
], AttachmentsTabSettings.prototype, "enableAdditionalInformation", void 0);
|
|
276
|
+
__decorate([
|
|
277
|
+
property({ type: Boolean })
|
|
278
|
+
], AttachmentsTabSettings.prototype, "enableThumbnailDetail", void 0);
|
|
204
279
|
__decorate([
|
|
205
280
|
state()
|
|
206
281
|
], AttachmentsTabSettings.prototype, "isOpenModal", void 0);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"attachments-tab-settings.js","sourceRoot":"","sources":["../../../src/components/components-settings/attachments-tab-settings.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAkB,MAAM,KAAK,CAAC;AAC5D,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AAGpC,YAAY;AACZ,OAAO,oDAAoD,CAAC;AAC5D,OAAO,4BAA4B,CAAC;AACpC,OAAO,kCAAkC,CAAC;AAC1C,OAAO,gCAAgC,CAAC;AACxC,OAAO,2BAA2B,CAAC;AACnC,OAAO,iCAAiC,CAAC;AACzC,OAAO,kCAAkC,CAAC;AAC1C,OAAO,kCAAkC,CAAC;AAC1C,OAAO,gCAAgC,CAAC;AACxC,OAAO,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"attachments-tab-settings.js","sourceRoot":"","sources":["../../../src/components/components-settings/attachments-tab-settings.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@ import '../shared/lit-icon.js';
|
|
|
6
6
|
import '../shared/lit-icon-button.js';
|
|
7
7
|
import '../shared/lit-select.js';
|
|
8
8
|
import '../shared/lit-overflow-tooltip.js';
|
|
9
|
+
import '../shared/lit-document-thumbnail.js';
|
|
9
10
|
import '../assets/illustration/no-preview.js';
|
|
10
11
|
import '../assets/illustration/not-found.js';
|
|
11
12
|
import '../shared/lit-loading-bar.js';
|
|
@@ -23,6 +24,10 @@ export declare class LitAttachmentsTab extends LitElement {
|
|
|
23
24
|
onClick?: (documentId: string) => Promise<any>;
|
|
24
25
|
isDocumentLoading: boolean;
|
|
25
26
|
enableSettings?: boolean;
|
|
27
|
+
enableThumbnails?: boolean;
|
|
28
|
+
thumbnailSize?: number;
|
|
29
|
+
enableAdditionalInformation?: boolean;
|
|
30
|
+
enableThumbnailDetail?: boolean;
|
|
26
31
|
onSettingsChanged: (value?: AttachmentsTabSettingsValue) => void;
|
|
27
32
|
private selectedDocument?;
|
|
28
33
|
private selectedId;
|
|
@@ -33,6 +38,8 @@ export declare class LitAttachmentsTab extends LitElement {
|
|
|
33
38
|
private documentData;
|
|
34
39
|
private isOpenModal;
|
|
35
40
|
private localScale?;
|
|
41
|
+
private pdfThumbnailGenerator;
|
|
42
|
+
private generatedThumbnails;
|
|
36
43
|
private canvas;
|
|
37
44
|
private ctx;
|
|
38
45
|
private outerContainer;
|
|
@@ -59,6 +66,9 @@ export declare class LitAttachmentsTab extends LitElement {
|
|
|
59
66
|
private handleMouseUp;
|
|
60
67
|
private toggleModal;
|
|
61
68
|
private onSettingsChangedCallback;
|
|
69
|
+
private generatePdfThumbnails;
|
|
70
|
+
private generateSinglePdfThumbnail;
|
|
71
|
+
private getThumbnailUrl;
|
|
62
72
|
static styles: import("lit").CSSResult[];
|
|
63
73
|
render(): TemplateResult | null;
|
|
64
74
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lit-attachments-tab.d.ts","sourceRoot":"","sources":["../../src/components/lit-attachments-tab.ts"],"names":[],"mappings":"AACA,OAAO,EAAa,UAAU,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAM5E,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,OAAO,EACH,+BAA+B,EAC/B,oCAAoC,EACpC,uBAAuB,EAC1B,MAAM,qBAAqB,CAAC;AAE7B,OAAO,gBAAgB,CAAC;AACxB,OAAO,uBAAuB,CAAC;AAC/B,OAAO,8BAA8B,CAAC;AACtC,OAAO,yBAAyB,CAAC;AACjC,OAAO,mCAAmC,CAAC;AAC3C,OAAO,sCAAsC,CAAC;AAC9C,OAAO,qCAAqC,CAAC;AAC7C,OAAO,8BAA8B,CAAC;AACtC,OAAO,kCAAkC,CAAC;AAC1C,OAAO,mDAAmD,CAAC;
|
|
1
|
+
{"version":3,"file":"lit-attachments-tab.d.ts","sourceRoot":"","sources":["../../src/components/lit-attachments-tab.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,11 +16,14 @@ import '../shared/lit-icon.js';
|
|
|
16
16
|
import '../shared/lit-icon-button.js';
|
|
17
17
|
import '../shared/lit-select.js';
|
|
18
18
|
import '../shared/lit-overflow-tooltip.js';
|
|
19
|
+
import '../shared/lit-document-thumbnail.js';
|
|
19
20
|
import '../assets/illustration/no-preview.js';
|
|
20
21
|
import '../assets/illustration/not-found.js';
|
|
21
22
|
import '../shared/lit-loading-bar.js';
|
|
22
23
|
import '../components/lit-section-tab.js';
|
|
23
24
|
import './components-settings/attachments-tab-settings.js';
|
|
25
|
+
// utils
|
|
26
|
+
import { PdfThumbnailGenerator } from '../utils/pdf-thumbnail-generator.js';
|
|
24
27
|
// pdf.js
|
|
25
28
|
import * as pdfjsLib from 'pdfjs-dist';
|
|
26
29
|
// Set worker source for PDF.js 3.x - compatible with webpack bundlers
|
|
@@ -34,6 +37,10 @@ export class LitAttachmentsTab extends LitElement {
|
|
|
34
37
|
this.scale = 1;
|
|
35
38
|
this.isDocumentLoading = false;
|
|
36
39
|
this.enableSettings = false;
|
|
40
|
+
this.enableThumbnails = true;
|
|
41
|
+
this.thumbnailSize = 40;
|
|
42
|
+
this.enableAdditionalInformation = true;
|
|
43
|
+
this.enableThumbnailDetail = true;
|
|
37
44
|
this.onSettingsChanged = () => { };
|
|
38
45
|
this.selectedId = '';
|
|
39
46
|
this.pageNumber = 1;
|
|
@@ -42,6 +49,8 @@ export class LitAttachmentsTab extends LitElement {
|
|
|
42
49
|
this.preview = true;
|
|
43
50
|
this.documentData = null;
|
|
44
51
|
this.isOpenModal = false;
|
|
52
|
+
this.pdfThumbnailGenerator = new PdfThumbnailGenerator();
|
|
53
|
+
this.generatedThumbnails = new Map();
|
|
45
54
|
this.canvas = null;
|
|
46
55
|
this.ctx = null;
|
|
47
56
|
this.outerContainer = null;
|
|
@@ -66,10 +75,12 @@ export class LitAttachmentsTab extends LitElement {
|
|
|
66
75
|
this.documentData.cancel();
|
|
67
76
|
this.documentData = null;
|
|
68
77
|
}
|
|
78
|
+
this.pdfThumbnailGenerator.clearCache();
|
|
69
79
|
}
|
|
70
80
|
connectedCallback() {
|
|
71
81
|
super.connectedCallback();
|
|
72
82
|
this.localScale = this.scale;
|
|
83
|
+
this.pdfThumbnailGenerator = new PdfThumbnailGenerator();
|
|
73
84
|
}
|
|
74
85
|
async firstUpdated() {
|
|
75
86
|
this.canvas = this.shadowRoot?.querySelector('canvas') ?? null;
|
|
@@ -92,6 +103,7 @@ export class LitAttachmentsTab extends LitElement {
|
|
|
92
103
|
this.documentData.cancel();
|
|
93
104
|
this.documentData = null;
|
|
94
105
|
}
|
|
106
|
+
this.generatedThumbnails.clear();
|
|
95
107
|
}
|
|
96
108
|
else if (!this.hideTabWhen) {
|
|
97
109
|
// Force reset and reload when documents change
|
|
@@ -103,6 +115,10 @@ export class LitAttachmentsTab extends LitElement {
|
|
|
103
115
|
}
|
|
104
116
|
this.selectedId = newSelectedId;
|
|
105
117
|
this.handleDocumentClick(this.selectedId);
|
|
118
|
+
// Generate PDF thumbnails if enabled
|
|
119
|
+
if (this.enableThumbnails) {
|
|
120
|
+
this.generatePdfThumbnails();
|
|
121
|
+
}
|
|
106
122
|
}
|
|
107
123
|
}
|
|
108
124
|
if (_changedProperties.has('selectedId')) {
|
|
@@ -328,7 +344,28 @@ export class LitAttachmentsTab extends LitElement {
|
|
|
328
344
|
if (value?.type !== undefined) {
|
|
329
345
|
this.type = value.type;
|
|
330
346
|
}
|
|
347
|
+
if (value?.enableThumbnails !== undefined) {
|
|
348
|
+
this.enableThumbnails = value.enableThumbnails;
|
|
349
|
+
}
|
|
350
|
+
if (value?.thumbnailSize !== undefined) {
|
|
351
|
+
this.thumbnailSize = value.thumbnailSize;
|
|
352
|
+
}
|
|
353
|
+
if (value?.enableAdditionalInformation !== undefined) {
|
|
354
|
+
this.enableAdditionalInformation = value.enableAdditionalInformation;
|
|
355
|
+
}
|
|
356
|
+
if (value?.enableThumbnailDetail !== undefined) {
|
|
357
|
+
this.enableThumbnailDetail = value.enableThumbnailDetail;
|
|
358
|
+
}
|
|
359
|
+
// Force re-render after property changes
|
|
360
|
+
this.requestUpdate();
|
|
331
361
|
await this.renderPage();
|
|
362
|
+
// Regenerate thumbnails if thumbnail settings changed
|
|
363
|
+
if (value?.enableThumbnails || value?.thumbnailSize !== undefined) {
|
|
364
|
+
if (this.enableThumbnails) {
|
|
365
|
+
this.generatedThumbnails.clear();
|
|
366
|
+
await this.generatePdfThumbnails();
|
|
367
|
+
}
|
|
368
|
+
}
|
|
332
369
|
this.dispatchEvent(new CustomEvent('onSettingsChanged', {
|
|
333
370
|
bubbles: true,
|
|
334
371
|
composed: true,
|
|
@@ -336,6 +373,48 @@ export class LitAttachmentsTab extends LitElement {
|
|
|
336
373
|
}));
|
|
337
374
|
this.onSettingsChanged?.(value);
|
|
338
375
|
}
|
|
376
|
+
async generatePdfThumbnails() {
|
|
377
|
+
if (!this.documents || !this.enableThumbnails)
|
|
378
|
+
return;
|
|
379
|
+
for (const doc of this.documents) {
|
|
380
|
+
// Only generate for PDFs that don't have a thumbnail
|
|
381
|
+
if (doc.file_type === 'application/pdf' &&
|
|
382
|
+
!doc.thumbnail &&
|
|
383
|
+
!this.generatedThumbnails.has(doc.id)) {
|
|
384
|
+
this.generateSinglePdfThumbnail(doc);
|
|
385
|
+
}
|
|
386
|
+
}
|
|
387
|
+
}
|
|
388
|
+
async generateSinglePdfThumbnail(doc) {
|
|
389
|
+
try {
|
|
390
|
+
let data;
|
|
391
|
+
if (this.onClick) {
|
|
392
|
+
const result = await this.onClick(doc.id);
|
|
393
|
+
data = result.data || result;
|
|
394
|
+
}
|
|
395
|
+
else if (doc.dmsf_src) {
|
|
396
|
+
data = await fetch(doc.dmsf_src).then((r) => r.arrayBuffer());
|
|
397
|
+
}
|
|
398
|
+
else {
|
|
399
|
+
return;
|
|
400
|
+
}
|
|
401
|
+
const thumbnailUrl = await this.pdfThumbnailGenerator.generatePdfThumbnail(doc.id, data, { width: this.thumbnailSize || 40, height: this.thumbnailSize || 40 });
|
|
402
|
+
this.generatedThumbnails.set(doc.id, thumbnailUrl);
|
|
403
|
+
this.requestUpdate();
|
|
404
|
+
}
|
|
405
|
+
catch (error) {
|
|
406
|
+
console.error(`Error generating PDF thumbnail for ${doc.id}:`, error);
|
|
407
|
+
// Will fall back to icon in the thumbnail component
|
|
408
|
+
}
|
|
409
|
+
}
|
|
410
|
+
getThumbnailUrl(doc) {
|
|
411
|
+
// For PDFs, check generated thumbnails first, then doc.thumbnail
|
|
412
|
+
if (doc.file_type === 'application/pdf') {
|
|
413
|
+
return this.generatedThumbnails.get(doc.id) || doc.thumbnail;
|
|
414
|
+
}
|
|
415
|
+
// For other files, use provided thumbnail
|
|
416
|
+
return doc.thumbnail;
|
|
417
|
+
}
|
|
339
418
|
render() {
|
|
340
419
|
if (this.hideTabWhen)
|
|
341
420
|
return null;
|
|
@@ -351,18 +430,51 @@ export class LitAttachmentsTab extends LitElement {
|
|
|
351
430
|
@click=${() => doc.id && this.handleDocumentClick(doc.id)}
|
|
352
431
|
>
|
|
353
432
|
<div class="document-item" id="${doc.id}">
|
|
354
|
-
|
|
355
|
-
|
|
433
|
+
${this.enableThumbnails
|
|
434
|
+
? html `
|
|
435
|
+
<lit-document-thumbnail
|
|
436
|
+
.thumbnail="${this.getThumbnailUrl(doc)}"
|
|
437
|
+
.fileType="${doc.file_type}"
|
|
438
|
+
.size="${this.thumbnailSize}"
|
|
439
|
+
.enableThumbnailDetail="${this.enableThumbnailDetail}"
|
|
440
|
+
></lit-document-thumbnail>
|
|
441
|
+
`
|
|
442
|
+
: null}
|
|
443
|
+
<div class="document-item-content">
|
|
444
|
+
<div class="document-name">
|
|
445
|
+
<span class="document-name-text">
|
|
446
|
+
<lit-overflow-tooltip
|
|
447
|
+
label="${doc.name ||
|
|
356
448
|
`${msg('Dokument')} ${index + 1}`}"
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
449
|
+
>
|
|
450
|
+
${doc.name ||
|
|
451
|
+
`${msg('Dokument')} ${index + 1}`}
|
|
452
|
+
</lit-overflow-tooltip>
|
|
453
|
+
</span>
|
|
454
|
+
${doc.meta && doc.meta.length > 0
|
|
361
455
|
? doc.meta.map((metaItem) => html `<lit-badge
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
456
|
+
content="neutral"
|
|
457
|
+
.text=${metaItem}
|
|
458
|
+
></lit-badge>`)
|
|
459
|
+
: null}
|
|
460
|
+
</div>
|
|
461
|
+
${this.enableAdditionalInformation &&
|
|
462
|
+
(doc.dateOfUpload || doc.userName)
|
|
463
|
+
? html `
|
|
464
|
+
<div class="document-info">
|
|
465
|
+
${doc.dateOfUpload
|
|
466
|
+
? html `${doc.dateOfUpload}`
|
|
467
|
+
: null}
|
|
468
|
+
${doc.dateOfUpload && doc.userName
|
|
469
|
+
? html ` `
|
|
470
|
+
: null}
|
|
471
|
+
${doc.userName
|
|
472
|
+
? html `${doc.userName}`
|
|
473
|
+
: null}
|
|
474
|
+
</div>
|
|
475
|
+
`
|
|
365
476
|
: null}
|
|
477
|
+
</div>
|
|
366
478
|
</div>
|
|
367
479
|
|
|
368
480
|
${this.selectedId == doc.id
|
|
@@ -387,7 +499,61 @@ export class LitAttachmentsTab extends LitElement {
|
|
|
387
499
|
value: doc.id,
|
|
388
500
|
label: doc.name,
|
|
389
501
|
meta: doc.meta,
|
|
502
|
+
fileType: doc.file_type,
|
|
503
|
+
thumbnail: this.getThumbnailUrl(doc),
|
|
504
|
+
dateOfUpload: doc.dateOfUpload,
|
|
505
|
+
userName: doc.userName,
|
|
390
506
|
}))}"
|
|
507
|
+
.renderOption="${(option, _isActive, _isSelected) => html `
|
|
508
|
+
<span
|
|
509
|
+
style="display: flex; align-items: center; gap: 0.5rem; width: 100%;"
|
|
510
|
+
>
|
|
511
|
+
${this.enableThumbnails
|
|
512
|
+
? html `
|
|
513
|
+
<lit-document-thumbnail
|
|
514
|
+
.thumbnail="${option.thumbnail}"
|
|
515
|
+
.fileType="${option.fileType}"
|
|
516
|
+
.size="${this.thumbnailSize || 40}"
|
|
517
|
+
.enableHoverPreview="${true}"
|
|
518
|
+
.enableThumbnailDetail="${this.enableThumbnailDetail}"
|
|
519
|
+
></lit-document-thumbnail>
|
|
520
|
+
`
|
|
521
|
+
: null}
|
|
522
|
+
<span
|
|
523
|
+
style="flex: 1; overflow: hidden; display: flex; flex-direction: column; gap: 0.125rem; min-width: 0;"
|
|
524
|
+
>
|
|
525
|
+
<span
|
|
526
|
+
style="display: flex; align-items: center; gap: 0.5rem; overflow: hidden;"
|
|
527
|
+
>
|
|
528
|
+
<span
|
|
529
|
+
style="overflow: hidden; text-overflow: ellipsis; white-space: nowrap;"
|
|
530
|
+
>
|
|
531
|
+
${option.label}
|
|
532
|
+
</span>
|
|
533
|
+
${option.meta?.map((metaItem) => html `
|
|
534
|
+
<lit-badge
|
|
535
|
+
content="neutral"
|
|
536
|
+
.text=${metaItem}
|
|
537
|
+
></lit-badge>
|
|
538
|
+
`) ?? ''}
|
|
539
|
+
</span>
|
|
540
|
+
${this.enableAdditionalInformation &&
|
|
541
|
+
(option.dateOfUpload || option.userName)
|
|
542
|
+
? html `
|
|
543
|
+
<span
|
|
544
|
+
style="font-size: 0.6875rem; font-weight: 400; color: var(--text-secondary, #6b7280); overflow: hidden; white-space: nowrap; text-overflow: ellipsis;"
|
|
545
|
+
>
|
|
546
|
+
${option.dateOfUpload || ''}
|
|
547
|
+
${option.dateOfUpload && option.userName
|
|
548
|
+
? ' '
|
|
549
|
+
: ''}
|
|
550
|
+
${option.userName || ''}
|
|
551
|
+
</span>
|
|
552
|
+
`
|
|
553
|
+
: null}
|
|
554
|
+
</span>
|
|
555
|
+
</span>
|
|
556
|
+
`}"
|
|
391
557
|
.onChange="${(selectedValue) => {
|
|
392
558
|
this.handleDocumentClick(selectedValue);
|
|
393
559
|
}}"
|
|
@@ -513,6 +679,10 @@ export class LitAttachmentsTab extends LitElement {
|
|
|
513
679
|
.onSettingsChangedModal="${this.onSettingsChangedCallback.bind(this)}"
|
|
514
680
|
.type="${this.type}"
|
|
515
681
|
.scale="${this.scale}"
|
|
682
|
+
.enableThumbnails="${this.enableThumbnails}"
|
|
683
|
+
.thumbnailSize="${this.thumbnailSize}"
|
|
684
|
+
.enableAdditionalInformation="${this.enableAdditionalInformation}"
|
|
685
|
+
.enableThumbnailDetail="${this.enableThumbnailDetail}"
|
|
516
686
|
></attachments-tab-settings>
|
|
517
687
|
</div>`
|
|
518
688
|
: null}
|
|
@@ -523,7 +693,7 @@ export class LitAttachmentsTab extends LitElement {
|
|
|
523
693
|
LitAttachmentsTab.styles = [
|
|
524
694
|
css `
|
|
525
695
|
.document-label {
|
|
526
|
-
|
|
696
|
+
min-height: 2.125rem;
|
|
527
697
|
gap: 0.25rem;
|
|
528
698
|
display: flex;
|
|
529
699
|
justify-content: space-between;
|
|
@@ -532,7 +702,7 @@ LitAttachmentsTab.styles = [
|
|
|
532
702
|
position: relative;
|
|
533
703
|
font-weight: 500;
|
|
534
704
|
font-size: 0.8125rem;
|
|
535
|
-
padding: 0.
|
|
705
|
+
padding: 0.5rem 0 0.5rem 1rem;
|
|
536
706
|
background: var(--background-paper, #ffffff);
|
|
537
707
|
color: var(--color-secondary-main, #111827);
|
|
538
708
|
border-radius: 0.5rem;
|
|
@@ -543,9 +713,40 @@ LitAttachmentsTab.styles = [
|
|
|
543
713
|
font-weight: 500;
|
|
544
714
|
font-size: 0.8125rem;
|
|
545
715
|
color: var(--color-secondary-main, #111827);
|
|
716
|
+
display: flex;
|
|
717
|
+
align-items: center;
|
|
718
|
+
gap: 0.75rem;
|
|
719
|
+
overflow: hidden;
|
|
720
|
+
flex: 1;
|
|
721
|
+
}
|
|
722
|
+
|
|
723
|
+
.document-item-content {
|
|
724
|
+
display: flex;
|
|
725
|
+
flex-direction: column;
|
|
726
|
+
gap: 0.125rem;
|
|
727
|
+
overflow: hidden;
|
|
728
|
+
flex: 1;
|
|
729
|
+
}
|
|
730
|
+
|
|
731
|
+
.document-name {
|
|
546
732
|
display: flex;
|
|
547
733
|
align-items: center;
|
|
548
734
|
gap: 0.5rem;
|
|
735
|
+
min-width: 0;
|
|
736
|
+
}
|
|
737
|
+
|
|
738
|
+
.document-name-text {
|
|
739
|
+
overflow: hidden;
|
|
740
|
+
white-space: nowrap;
|
|
741
|
+
text-overflow: ellipsis;
|
|
742
|
+
flex-shrink: 1;
|
|
743
|
+
min-width: 0;
|
|
744
|
+
}
|
|
745
|
+
|
|
746
|
+
.document-info {
|
|
747
|
+
font-size: 0.6875rem;
|
|
748
|
+
font-weight: 400;
|
|
749
|
+
color: var(--text-secondary, #6b7280);
|
|
549
750
|
overflow: hidden;
|
|
550
751
|
white-space: nowrap;
|
|
551
752
|
text-overflow: ellipsis;
|
|
@@ -685,6 +886,18 @@ __decorate([
|
|
|
685
886
|
__decorate([
|
|
686
887
|
property({ type: Boolean })
|
|
687
888
|
], LitAttachmentsTab.prototype, "enableSettings", void 0);
|
|
889
|
+
__decorate([
|
|
890
|
+
property({ type: Boolean })
|
|
891
|
+
], LitAttachmentsTab.prototype, "enableThumbnails", void 0);
|
|
892
|
+
__decorate([
|
|
893
|
+
property({ type: Number })
|
|
894
|
+
], LitAttachmentsTab.prototype, "thumbnailSize", void 0);
|
|
895
|
+
__decorate([
|
|
896
|
+
property({ type: Boolean })
|
|
897
|
+
], LitAttachmentsTab.prototype, "enableAdditionalInformation", void 0);
|
|
898
|
+
__decorate([
|
|
899
|
+
property({ type: Boolean })
|
|
900
|
+
], LitAttachmentsTab.prototype, "enableThumbnailDetail", void 0);
|
|
688
901
|
__decorate([
|
|
689
902
|
property({ attribute: false })
|
|
690
903
|
], LitAttachmentsTab.prototype, "onSettingsChanged", void 0);
|
|
@@ -715,6 +928,12 @@ __decorate([
|
|
|
715
928
|
__decorate([
|
|
716
929
|
state()
|
|
717
930
|
], LitAttachmentsTab.prototype, "localScale", void 0);
|
|
931
|
+
__decorate([
|
|
932
|
+
state()
|
|
933
|
+
], LitAttachmentsTab.prototype, "pdfThumbnailGenerator", void 0);
|
|
934
|
+
__decorate([
|
|
935
|
+
state()
|
|
936
|
+
], LitAttachmentsTab.prototype, "generatedThumbnails", void 0);
|
|
718
937
|
if (!window.customElements.get('lit-attachments-tab')) {
|
|
719
938
|
window.customElements.define('lit-attachments-tab', LitAttachmentsTab);
|
|
720
939
|
}
|