@design.estate/dees-document 2.2.0 → 2.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/dist_ts_web/00_commitinfo_data.js +1 -1
  2. package/dist_ts_web/elements/contentinvoice.d.ts +6 -0
  3. package/dist_ts_web/elements/contentinvoice.js +39 -3
  4. package/dist_ts_web/elements/document.d.ts +21 -0
  5. package/dist_ts_web/elements/document.js +73 -4
  6. package/dist_ts_web/elements/page.d.ts +1 -0
  7. package/dist_ts_web/elements/page.js +19 -4
  8. package/dist_ts_web/elements/viewer.d.ts +117 -4
  9. package/dist_ts_web/elements/viewer.js +1347 -17
  10. package/package.json +1 -1
  11. package/dist_ts_web/ts_shared/translation.d.ts +0 -82
  12. package/dist_ts_web/ts_shared/translation.js +0 -134
  13. package/dist_ts_web/ts_web/00_commitinfo_data.d.ts +0 -8
  14. package/dist_ts_web/ts_web/00_commitinfo_data.js +0 -9
  15. package/dist_ts_web/ts_web/elements/contentinvoice.d.ts +0 -47
  16. package/dist_ts_web/ts_web/elements/contentinvoice.js +0 -502
  17. package/dist_ts_web/ts_web/elements/document.d.ts +0 -48
  18. package/dist_ts_web/ts_web/elements/document.demo.d.ts +0 -1
  19. package/dist_ts_web/ts_web/elements/document.demo.js +0 -9
  20. package/dist_ts_web/ts_web/elements/document.js +0 -375
  21. package/dist_ts_web/ts_web/elements/index.d.ts +0 -10
  22. package/dist_ts_web/ts_web/elements/index.js +0 -11
  23. package/dist_ts_web/ts_web/elements/letterheader.d.ts +0 -18
  24. package/dist_ts_web/ts_web/elements/letterheader.js +0 -224
  25. package/dist_ts_web/ts_web/elements/page.d.ts +0 -26
  26. package/dist_ts_web/ts_web/elements/page.js +0 -350
  27. package/dist_ts_web/ts_web/elements/pagecontainer.d.ts +0 -14
  28. package/dist_ts_web/ts_web/elements/pagecontainer.js +0 -114
  29. package/dist_ts_web/ts_web/elements/pagecontent.d.ts +0 -19
  30. package/dist_ts_web/ts_web/elements/pagecontent.js +0 -177
  31. package/dist_ts_web/ts_web/elements/pagefooter.d.ts +0 -17
  32. package/dist_ts_web/ts_web/elements/pagefooter.js +0 -234
  33. package/dist_ts_web/ts_web/elements/pageheader.d.ts +0 -17
  34. package/dist_ts_web/ts_web/elements/pageheader.js +0 -165
  35. package/dist_ts_web/ts_web/elements/paymentcode.d.ts +0 -19
  36. package/dist_ts_web/ts_web/elements/paymentcode.js +0 -162
  37. package/dist_ts_web/ts_web/elements/viewer.d.ts +0 -128
  38. package/dist_ts_web/ts_web/elements/viewer.demo.d.ts +0 -1
  39. package/dist_ts_web/ts_web/elements/viewer.demo.js +0 -9
  40. package/dist_ts_web/ts_web/elements/viewer.js +0 -1480
  41. package/dist_ts_web/ts_web/index.d.ts +0 -1
  42. package/dist_ts_web/ts_web/index.js +0 -2
  43. package/dist_ts_web/ts_web/pages/index.d.ts +0 -2
  44. package/dist_ts_web/ts_web/pages/index.js +0 -3
  45. package/dist_ts_web/ts_web/pages/page1.d.ts +0 -1
  46. package/dist_ts_web/ts_web/pages/page1.js +0 -21
  47. package/dist_ts_web/ts_web/pages/page2.d.ts +0 -1
  48. package/dist_ts_web/ts_web/pages/page2.js +0 -18
  49. package/dist_ts_web/ts_web/plugins.d.ts +0 -9
  50. package/dist_ts_web/ts_web/plugins.js +0 -14
  51. package/dist_ts_web/ts_web/style.d.ts +0 -1
  52. package/dist_ts_web/ts_web/style.js +0 -38
@@ -1,15 +1,128 @@
1
1
  import * as plugins from "../plugins.js";
2
- import { DeesElement } from "@design.estate/dees-element";
2
+ import { DeesElement, type TemplateResult } from "@design.estate/dees-element";
3
+ import { type IPagePaginationInfo } from "./document.js";
4
+ import "./page.js";
5
+ import "./contentinvoice.js";
6
+ import "@design.estate/dees-catalog";
3
7
  declare global {
4
8
  interface HTMLElementTagNameMap {
5
9
  "dedocument-viewer": DeDocumentViewer;
6
10
  }
7
11
  }
12
+ type TZoomPreset = "auto" | "fit-width" | "fit-page" | number;
8
13
  export declare class DeDocumentViewer extends DeesElement {
9
- static demo: () => import("@design.estate/dees-element").TemplateResult<1>;
14
+ static demo: () => TemplateResult<1>;
10
15
  accessor letterData: plugins.tsclass.business.TLetter;
11
16
  accessor documentSettings: plugins.shared.interfaces.IDocumentSettings;
17
+ accessor initialZoom: number;
18
+ accessor initialPageGap: number;
19
+ accessor zoomMode: TZoomPreset;
20
+ accessor zoomLevel: number;
21
+ accessor pageGap: number;
22
+ accessor showZoomDropdown: boolean;
23
+ accessor displayZoom: number;
24
+ accessor currentPageDisplay: string;
25
+ accessor showThumbnails: boolean;
26
+ accessor sidebarWidth: number;
27
+ accessor isResizingSidebar: boolean;
28
+ accessor thumbnailPages: number[];
29
+ accessor paginationInfo: IPagePaginationInfo[];
30
+ private zoomAnimationId;
12
31
  static styles: import("@design.estate/dees-element").CSSResult[];
13
- render: () => import("@design.estate/dees-element").TemplateResult<1>;
14
- updated: (changedProperties: Map<string | number | symbol, unknown>) => void;
32
+ render(): TemplateResult;
33
+ private renderSidebar;
34
+ private getThumbnailScale;
35
+ private renderZoomControls;
36
+ private renderSpacingControls;
37
+ private getZoomDisplayText;
38
+ private isActivePreset;
39
+ private toggleZoomDropdown;
40
+ private handleZoomPreset;
41
+ private handleZoomStep;
42
+ private handleZoomSlider;
43
+ /**
44
+ * Animate zoom level to target value
45
+ * @param targetZoom - Target zoom percentage
46
+ * @param duration - Animation duration in ms (default: 200)
47
+ */
48
+ private animateZoomTo;
49
+ private handleSpacingPreset;
50
+ private handleSpacingSlider;
51
+ private startSidebarResize;
52
+ private updateThumbnailPages;
53
+ private handlePreviousPage;
54
+ private handleNextPage;
55
+ private updatePageIndicator;
56
+ private handlePrint;
57
+ private calculateFitWidth;
58
+ private calculateFitPage;
59
+ private updateDisplayZoom;
60
+ updated(changedProperties: Map<string | number | symbol, unknown>): void;
61
+ firstUpdated(): void;
62
+ /**
63
+ * Set the zoom level programmatically
64
+ * @param level - Zoom percentage (25-400), or 'auto', 'fit-width', 'fit-page'
65
+ */
66
+ setZoom(level: number | "auto" | "fit-width" | "fit-page"): void;
67
+ /**
68
+ * Get the current zoom percentage
69
+ */
70
+ getZoom(): number;
71
+ /**
72
+ * Set the page gap (spacing between pages)
73
+ * @param gap - Gap in pixels (0-64)
74
+ */
75
+ setPageGap(gap: number): void;
76
+ /**
77
+ * Get the current page gap in pixels
78
+ */
79
+ getPageGap(): number;
80
+ /**
81
+ * Get the total number of pages in the document
82
+ */
83
+ getPageCount(): number;
84
+ /**
85
+ * Get the currently visible page number (1-indexed)
86
+ */
87
+ getCurrentPage(): number;
88
+ /**
89
+ * Scroll to a specific page
90
+ * @param pageNumber - Page number (1-indexed)
91
+ * @param smooth - Whether to use smooth scrolling (default: true)
92
+ */
93
+ scrollToPage(pageNumber: number, smooth?: boolean): void;
94
+ /**
95
+ * Animate scroll to target position
96
+ * @param element - The scrollable element
97
+ * @param targetTop - Target scroll position
98
+ * @param duration - Animation duration in ms (default: 150)
99
+ */
100
+ private animateScrollTo;
101
+ /**
102
+ * Trigger the print dialog
103
+ */
104
+ print(): Promise<void>;
105
+ /**
106
+ * Toggle the thumbnails sidebar visibility
107
+ */
108
+ toggleThumbnails(): void;
109
+ /**
110
+ * Set whether the thumbnails sidebar is visible
111
+ * @param visible - Whether the sidebar should be visible
112
+ */
113
+ setThumbnailsVisible(visible: boolean): void;
114
+ /**
115
+ * Get whether the thumbnails sidebar is visible
116
+ */
117
+ getThumbnailsVisible(): boolean;
118
+ /**
119
+ * Set the sidebar width
120
+ * @param width - Width in pixels (100-300)
121
+ */
122
+ setSidebarWidth(width: number): void;
123
+ /**
124
+ * Get the current sidebar width
125
+ */
126
+ getSidebarWidth(): number;
15
127
  }
128
+ export {};