@docmentis/udoc-viewer 0.1.0 → 0.1.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/wasm/udoc_bg.wasm +0 -0
- package/dist/worker/WorkerClient.js +1 -1
- package/package.json +11 -3
- package/dist/WorkerClient.d.ts +0 -36
- package/dist/WorkerClient.d.ts.map +0 -1
- package/dist/WorkerClient.js +0 -121
- package/dist/WorkerClient.js.map +0 -1
- package/dist/annotation/AnnotationLayer.d.ts +0 -166
- package/dist/annotation/AnnotationLayer.d.ts.map +0 -1
- package/dist/annotation/AnnotationLayer.js +0 -1090
- package/dist/annotation/AnnotationLayer.js.map +0 -1
- package/dist/annotation/index.d.ts +0 -6
- package/dist/annotation/index.d.ts.map +0 -1
- package/dist/annotation/index.js +0 -6
- package/dist/annotation/index.js.map +0 -1
- package/dist/components/FloatingBar.d.ts +0 -102
- package/dist/components/FloatingBar.d.ts.map +0 -1
- package/dist/components/FloatingBar.js +0 -513
- package/dist/components/FloatingBar.js.map +0 -1
- package/dist/components/Header.d.ts +0 -46
- package/dist/components/Header.d.ts.map +0 -1
- package/dist/components/Header.js +0 -93
- package/dist/components/Header.js.map +0 -1
- package/dist/components/index.d.ts +0 -6
- package/dist/components/index.d.ts.map +0 -1
- package/dist/components/index.js +0 -4
- package/dist/components/index.js.map +0 -1
- package/dist/components/panels/CommentsPanel.d.ts +0 -33
- package/dist/components/panels/CommentsPanel.d.ts.map +0 -1
- package/dist/components/panels/CommentsPanel.js +0 -176
- package/dist/components/panels/CommentsPanel.js.map +0 -1
- package/dist/components/panels/OutlinePanel.d.ts +0 -30
- package/dist/components/panels/OutlinePanel.d.ts.map +0 -1
- package/dist/components/panels/OutlinePanel.js +0 -144
- package/dist/components/panels/OutlinePanel.js.map +0 -1
- package/dist/components/panels/ThumbnailsPanel.d.ts +0 -51
- package/dist/components/panels/ThumbnailsPanel.d.ts.map +0 -1
- package/dist/components/panels/ThumbnailsPanel.js +0 -160
- package/dist/components/panels/ThumbnailsPanel.js.map +0 -1
- package/dist/components/panels/index.d.ts +0 -7
- package/dist/components/panels/index.d.ts.map +0 -1
- package/dist/components/panels/index.js +0 -4
- package/dist/components/panels/index.js.map +0 -1
- package/dist/constants.d.ts +0 -25
- package/dist/constants.d.ts.map +0 -1
- package/dist/constants.js +0 -46
- package/dist/constants.js.map +0 -1
- package/dist/core/NavigationController.d.ts +0 -54
- package/dist/core/NavigationController.d.ts.map +0 -1
- package/dist/core/NavigationController.js +0 -145
- package/dist/core/NavigationController.js.map +0 -1
- package/dist/core/PerfTimer.d.ts +0 -12
- package/dist/core/PerfTimer.d.ts.map +0 -1
- package/dist/core/PerfTimer.js +0 -32
- package/dist/core/PerfTimer.js.map +0 -1
- package/dist/core/ViewerState.d.ts +0 -108
- package/dist/core/ViewerState.d.ts.map +0 -1
- package/dist/core/ViewerState.js +0 -179
- package/dist/core/ViewerState.js.map +0 -1
- package/dist/core/constants.d.ts +0 -24
- package/dist/core/constants.d.ts.map +0 -1
- package/dist/core/constants.js +0 -42
- package/dist/core/constants.js.map +0 -1
- package/dist/core/index.d.ts +0 -8
- package/dist/core/index.d.ts.map +0 -1
- package/dist/core/index.js +0 -11
- package/dist/core/index.js.map +0 -1
- package/dist/core/types.d.ts +0 -573
- package/dist/core/types.d.ts.map +0 -1
- package/dist/core/types.js +0 -5
- package/dist/core/types.js.map +0 -1
- package/dist/icons/icons.d.ts +0 -41
- package/dist/icons/icons.d.ts.map +0 -1
- package/dist/icons/icons.js +0 -51
- package/dist/icons/icons.js.map +0 -1
- package/dist/icons/index.d.ts +0 -3
- package/dist/icons/index.d.ts.map +0 -1
- package/dist/icons/index.js +0 -2
- package/dist/icons/index.js.map +0 -1
- package/dist/layout/BandManager.d.ts +0 -87
- package/dist/layout/BandManager.d.ts.map +0 -1
- package/dist/layout/BandManager.js +0 -185
- package/dist/layout/BandManager.js.map +0 -1
- package/dist/layout/LayoutCalculator.d.ts +0 -42
- package/dist/layout/LayoutCalculator.d.ts.map +0 -1
- package/dist/layout/LayoutCalculator.js +0 -180
- package/dist/layout/LayoutCalculator.js.map +0 -1
- package/dist/layout/LayoutState.d.ts +0 -46
- package/dist/layout/LayoutState.d.ts.map +0 -1
- package/dist/layout/LayoutState.js +0 -109
- package/dist/layout/LayoutState.js.map +0 -1
- package/dist/layout/TransitionCoordinator.d.ts +0 -11
- package/dist/layout/TransitionCoordinator.d.ts.map +0 -1
- package/dist/layout/TransitionCoordinator.js +0 -22
- package/dist/layout/TransitionCoordinator.js.map +0 -1
- package/dist/layout/index.d.ts +0 -7
- package/dist/layout/index.d.ts.map +0 -1
- package/dist/layout/index.js +0 -4
- package/dist/layout/index.js.map +0 -1
- package/dist/rendering/BandManager.d.ts +0 -87
- package/dist/rendering/BandManager.d.ts.map +0 -1
- package/dist/rendering/BandManager.js +0 -185
- package/dist/rendering/BandManager.js.map +0 -1
- package/dist/rendering/PageCache.d.ts +0 -75
- package/dist/rendering/PageCache.d.ts.map +0 -1
- package/dist/rendering/PageCache.js +0 -122
- package/dist/rendering/PageCache.js.map +0 -1
- package/dist/rendering/RenderQueue.d.ts +0 -75
- package/dist/rendering/RenderQueue.d.ts.map +0 -1
- package/dist/rendering/RenderQueue.js +0 -105
- package/dist/rendering/RenderQueue.js.map +0 -1
- package/dist/rendering/ThumbnailQueue.d.ts +0 -57
- package/dist/rendering/ThumbnailQueue.d.ts.map +0 -1
- package/dist/rendering/ThumbnailQueue.js +0 -85
- package/dist/rendering/ThumbnailQueue.js.map +0 -1
- package/dist/rendering/index.d.ts +0 -13
- package/dist/rendering/index.d.ts.map +0 -1
- package/dist/rendering/index.js +0 -10
- package/dist/rendering/index.js.map +0 -1
- package/dist/rendering/types.d.ts +0 -72
- package/dist/rendering/types.d.ts.map +0 -1
- package/dist/rendering/types.js +0 -5
- package/dist/rendering/types.js.map +0 -1
- package/dist/styles/index.d.ts +0 -6
- package/dist/styles/index.d.ts.map +0 -1
- package/dist/styles/index.js +0 -1221
- package/dist/styles/index.js.map +0 -1
- package/dist/types.d.ts +0 -6
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -6
- package/dist/types.js.map +0 -1
- package/dist/ui/Component.d.ts +0 -127
- package/dist/ui/Component.d.ts.map +0 -1
- package/dist/ui/Component.js +0 -201
- package/dist/ui/Component.js.map +0 -1
- package/dist/ui/annotation/AnnotationLayer.d.ts +0 -90
- package/dist/ui/annotation/AnnotationLayer.d.ts.map +0 -1
- package/dist/ui/annotation/AnnotationLayer.js +0 -322
- package/dist/ui/annotation/AnnotationLayer.js.map +0 -1
- package/dist/ui/annotation/LinkRenderer.d.ts +0 -32
- package/dist/ui/annotation/LinkRenderer.d.ts.map +0 -1
- package/dist/ui/annotation/LinkRenderer.js +0 -74
- package/dist/ui/annotation/LinkRenderer.js.map +0 -1
- package/dist/ui/annotation/MarkupRenderer.d.ts +0 -40
- package/dist/ui/annotation/MarkupRenderer.d.ts.map +0 -1
- package/dist/ui/annotation/MarkupRenderer.js +0 -154
- package/dist/ui/annotation/MarkupRenderer.js.map +0 -1
- package/dist/ui/annotation/ShapeRenderer.d.ts +0 -46
- package/dist/ui/annotation/ShapeRenderer.d.ts.map +0 -1
- package/dist/ui/annotation/ShapeRenderer.js +0 -376
- package/dist/ui/annotation/ShapeRenderer.js.map +0 -1
- package/dist/ui/annotation/TextRenderer.d.ts +0 -36
- package/dist/ui/annotation/TextRenderer.d.ts.map +0 -1
- package/dist/ui/annotation/TextRenderer.js +0 -199
- package/dist/ui/annotation/TextRenderer.js.map +0 -1
- package/dist/ui/annotation/index.d.ts +0 -17
- package/dist/ui/annotation/index.d.ts.map +0 -1
- package/dist/ui/annotation/index.js +0 -13
- package/dist/ui/annotation/index.js.map +0 -1
- package/dist/ui/annotation/utils.d.ts +0 -40
- package/dist/ui/annotation/utils.d.ts.map +0 -1
- package/dist/ui/annotation/utils.js +0 -62
- package/dist/ui/annotation/utils.js.map +0 -1
- package/dist/ui/components/CommentsContent.d.ts +0 -35
- package/dist/ui/components/CommentsContent.d.ts.map +0 -1
- package/dist/ui/components/CommentsContent.js +0 -203
- package/dist/ui/components/CommentsContent.js.map +0 -1
- package/dist/ui/components/FloatingBar.d.ts +0 -55
- package/dist/ui/components/FloatingBar.d.ts.map +0 -1
- package/dist/ui/components/FloatingBar.js +0 -585
- package/dist/ui/components/FloatingBar.js.map +0 -1
- package/dist/ui/components/Header.d.ts +0 -29
- package/dist/ui/components/Header.d.ts.map +0 -1
- package/dist/ui/components/Header.js +0 -127
- package/dist/ui/components/Header.js.map +0 -1
- package/dist/ui/components/LeftPanel.d.ts +0 -54
- package/dist/ui/components/LeftPanel.d.ts.map +0 -1
- package/dist/ui/components/LeftPanel.js +0 -202
- package/dist/ui/components/LeftPanel.js.map +0 -1
- package/dist/ui/components/OutlineContent.d.ts +0 -34
- package/dist/ui/components/OutlineContent.d.ts.map +0 -1
- package/dist/ui/components/OutlineContent.js +0 -147
- package/dist/ui/components/OutlineContent.js.map +0 -1
- package/dist/ui/components/RightPanel.d.ts +0 -52
- package/dist/ui/components/RightPanel.d.ts.map +0 -1
- package/dist/ui/components/RightPanel.js +0 -142
- package/dist/ui/components/RightPanel.js.map +0 -1
- package/dist/ui/components/Viewport.d.ts +0 -70
- package/dist/ui/components/Viewport.d.ts.map +0 -1
- package/dist/ui/components/Viewport.js +0 -173
- package/dist/ui/components/Viewport.js.map +0 -1
- package/dist/ui/components/index.d.ts +0 -11
- package/dist/ui/components/index.d.ts.map +0 -1
- package/dist/ui/components/index.js +0 -10
- package/dist/ui/components/index.js.map +0 -1
- package/dist/ui/icons/icons.d.ts +0 -43
- package/dist/ui/icons/icons.d.ts.map +0 -1
- package/dist/ui/icons/icons.js +0 -46
- package/dist/ui/icons/icons.js.map +0 -1
- package/dist/ui/icons/index.d.ts +0 -11
- package/dist/ui/icons/index.d.ts.map +0 -1
- package/dist/ui/icons/index.js +0 -18
- package/dist/ui/icons/index.js.map +0 -1
- package/dist/ui/index.d.ts +0 -7
- package/dist/ui/index.d.ts.map +0 -1
- package/dist/ui/index.js +0 -9
- package/dist/ui/index.js.map +0 -1
- package/dist/ui/styles/base.css.d.ts +0 -5
- package/dist/ui/styles/base.css.d.ts.map +0 -1
- package/dist/ui/styles/base.css.js +0 -49
- package/dist/ui/styles/base.css.js.map +0 -1
- package/dist/ui/styles/floating-bar.css.d.ts +0 -5
- package/dist/ui/styles/floating-bar.css.d.ts.map +0 -1
- package/dist/ui/styles/floating-bar.css.js +0 -417
- package/dist/ui/styles/floating-bar.css.js.map +0 -1
- package/dist/ui/styles/header.css.d.ts +0 -5
- package/dist/ui/styles/header.css.d.ts.map +0 -1
- package/dist/ui/styles/header.css.js +0 -49
- package/dist/ui/styles/header.css.js.map +0 -1
- package/dist/ui/styles/index.d.ts +0 -21
- package/dist/ui/styles/index.d.ts.map +0 -1
- package/dist/ui/styles/index.js +0 -48
- package/dist/ui/styles/index.js.map +0 -1
- package/dist/ui/styles/panels.css.d.ts +0 -5
- package/dist/ui/styles/panels.css.d.ts.map +0 -1
- package/dist/ui/styles/panels.css.js +0 -446
- package/dist/ui/styles/panels.css.js.map +0 -1
- package/dist/ui/styles/responsive.css.d.ts +0 -5
- package/dist/ui/styles/responsive.css.d.ts.map +0 -1
- package/dist/ui/styles/responsive.css.js +0 -201
- package/dist/ui/styles/responsive.css.js.map +0 -1
- package/dist/ui/styles/variables.css.d.ts +0 -6
- package/dist/ui/styles/variables.css.d.ts.map +0 -1
- package/dist/ui/styles/variables.css.js +0 -75
- package/dist/ui/styles/variables.css.js.map +0 -1
- package/dist/ui/styles/viewport.css.d.ts +0 -5
- package/dist/ui/styles/viewport.css.d.ts.map +0 -1
- package/dist/ui/styles/viewport.css.js +0 -87
- package/dist/ui/styles/viewport.css.js.map +0 -1
- package/dist/view/LayoutCalculator.d.ts +0 -42
- package/dist/view/LayoutCalculator.d.ts.map +0 -1
- package/dist/view/LayoutCalculator.js +0 -180
- package/dist/view/LayoutCalculator.js.map +0 -1
- package/dist/view/TransitionCoordinator.d.ts +0 -11
- package/dist/view/TransitionCoordinator.d.ts.map +0 -1
- package/dist/view/TransitionCoordinator.js +0 -22
- package/dist/view/TransitionCoordinator.js.map +0 -1
- package/dist/view/ViewState.d.ts +0 -46
- package/dist/view/ViewState.d.ts.map +0 -1
- package/dist/view/ViewState.js +0 -109
- package/dist/view/ViewState.js.map +0 -1
- package/dist/view/index.d.ts +0 -7
- package/dist/view/index.d.ts.map +0 -1
- package/dist/view/index.js +0 -4
- package/dist/view/index.js.map +0 -1
- package/dist/worker/types.d.ts +0 -81
- package/dist/worker/types.d.ts.map +0 -1
- package/dist/worker/types.js +0 -6
- package/dist/worker/types.js.map +0 -1
- package/dist/worker.d.ts +0 -2
- package/dist/worker.d.ts.map +0 -1
- package/dist/worker.js +0 -205
- package/dist/worker.js.map +0 -1
|
@@ -1,147 +0,0 @@
|
|
|
1
|
-
import { Component } from '../Component';
|
|
2
|
-
import { ICONS } from '../icons';
|
|
3
|
-
/**
|
|
4
|
-
* OutlineContent renders the document outline (table of contents) in the left panel.
|
|
5
|
-
*
|
|
6
|
-
* Features:
|
|
7
|
-
* - Hierarchical tree structure with expand/collapse
|
|
8
|
-
* - Click to navigate to destination
|
|
9
|
-
* - Preserves collapse state across re-renders
|
|
10
|
-
*/
|
|
11
|
-
export class OutlineContent extends Component {
|
|
12
|
-
outlineItems = [];
|
|
13
|
-
collapsedItems = new Set();
|
|
14
|
-
onNavigate;
|
|
15
|
-
constructor(viewer, onNavigate) {
|
|
16
|
-
super(viewer);
|
|
17
|
-
this.onNavigate = onNavigate;
|
|
18
|
-
}
|
|
19
|
-
createElement() {
|
|
20
|
-
const container = document.createElement('div');
|
|
21
|
-
container.className = 'udoc-outline-content';
|
|
22
|
-
return container;
|
|
23
|
-
}
|
|
24
|
-
/**
|
|
25
|
-
* Set outline items and initialize collapse state from PDF data.
|
|
26
|
-
*/
|
|
27
|
-
setOutlineItems(items) {
|
|
28
|
-
this.outlineItems = items;
|
|
29
|
-
this.collapsedItems.clear();
|
|
30
|
-
this.initializeCollapseState(items, '');
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* Initialize collapse state based on PDF's initiallyCollapsed flag.
|
|
34
|
-
*/
|
|
35
|
-
initializeCollapseState(items, pathPrefix) {
|
|
36
|
-
for (let i = 0; i < items.length; i++) {
|
|
37
|
-
const item = items[i];
|
|
38
|
-
const itemPath = pathPrefix ? `${pathPrefix}.${i}` : `${i}`;
|
|
39
|
-
if (item.initiallyCollapsed && item.children && item.children.length > 0) {
|
|
40
|
-
this.collapsedItems.add(itemPath);
|
|
41
|
-
}
|
|
42
|
-
if (item.children && item.children.length > 0) {
|
|
43
|
-
this.initializeCollapseState(item.children, itemPath);
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
/**
|
|
48
|
-
* Render the outline. Call this after setting outline items.
|
|
49
|
-
*/
|
|
50
|
-
render() {
|
|
51
|
-
this.element.innerHTML = '';
|
|
52
|
-
if (this.outlineItems.length === 0) {
|
|
53
|
-
this.renderPlaceholder();
|
|
54
|
-
return;
|
|
55
|
-
}
|
|
56
|
-
const container = document.createElement('div');
|
|
57
|
-
container.className = 'udoc-outline';
|
|
58
|
-
this.renderOutlineItems(container, this.outlineItems, 0, '');
|
|
59
|
-
this.element.appendChild(container);
|
|
60
|
-
}
|
|
61
|
-
renderPlaceholder() {
|
|
62
|
-
const placeholder = document.createElement('div');
|
|
63
|
-
placeholder.className = 'udoc-panel-placeholder';
|
|
64
|
-
placeholder.innerHTML = `
|
|
65
|
-
<div class="udoc-placeholder-icon">${ICONS.outline}</div>
|
|
66
|
-
<div class="udoc-placeholder-title">Outline</div>
|
|
67
|
-
<div class="udoc-placeholder-message">No outline available</div>
|
|
68
|
-
`;
|
|
69
|
-
this.element.appendChild(placeholder);
|
|
70
|
-
}
|
|
71
|
-
renderOutlineItems(container, items, level, pathPrefix) {
|
|
72
|
-
for (let i = 0; i < items.length; i++) {
|
|
73
|
-
const item = items[i];
|
|
74
|
-
const itemPath = pathPrefix ? `${pathPrefix}.${i}` : `${i}`;
|
|
75
|
-
const hasChildren = item.children && item.children.length > 0;
|
|
76
|
-
const isCollapsed = this.collapsedItems.has(itemPath);
|
|
77
|
-
// Create node container (item + children)
|
|
78
|
-
const nodeEl = document.createElement('div');
|
|
79
|
-
nodeEl.className = 'udoc-outline-node';
|
|
80
|
-
// Create outline item element
|
|
81
|
-
const itemEl = document.createElement('div');
|
|
82
|
-
itemEl.className = 'udoc-outline-item';
|
|
83
|
-
itemEl.style.paddingLeft = `${12 + level * 16}px`;
|
|
84
|
-
// Add expand/collapse toggle for items with children
|
|
85
|
-
let childrenEl = null;
|
|
86
|
-
if (hasChildren) {
|
|
87
|
-
const toggle = document.createElement('span');
|
|
88
|
-
toggle.className = 'udoc-outline-toggle' + (isCollapsed ? ' collapsed' : '');
|
|
89
|
-
toggle.innerHTML = ICONS.chevronDown;
|
|
90
|
-
toggle.addEventListener('click', (e) => {
|
|
91
|
-
e.stopPropagation();
|
|
92
|
-
this.toggleItem(itemPath, toggle, childrenEl);
|
|
93
|
-
});
|
|
94
|
-
itemEl.appendChild(toggle);
|
|
95
|
-
}
|
|
96
|
-
else {
|
|
97
|
-
// Placeholder to maintain alignment
|
|
98
|
-
const placeholder = document.createElement('span');
|
|
99
|
-
placeholder.className = 'udoc-outline-toggle-placeholder';
|
|
100
|
-
itemEl.appendChild(placeholder);
|
|
101
|
-
}
|
|
102
|
-
// Title text
|
|
103
|
-
const title = document.createElement('span');
|
|
104
|
-
title.className = 'udoc-outline-title';
|
|
105
|
-
title.textContent = item.title;
|
|
106
|
-
itemEl.appendChild(title);
|
|
107
|
-
// Make clickable if has destination
|
|
108
|
-
if (item.destination) {
|
|
109
|
-
itemEl.classList.add('clickable');
|
|
110
|
-
const dest = item.destination;
|
|
111
|
-
itemEl.addEventListener('click', (e) => {
|
|
112
|
-
e.stopPropagation();
|
|
113
|
-
this.onNavigate(dest);
|
|
114
|
-
});
|
|
115
|
-
}
|
|
116
|
-
nodeEl.appendChild(itemEl);
|
|
117
|
-
// Render children container if any
|
|
118
|
-
if (hasChildren) {
|
|
119
|
-
childrenEl = document.createElement('div');
|
|
120
|
-
childrenEl.className = 'udoc-outline-children' + (isCollapsed ? ' collapsed' : '');
|
|
121
|
-
this.renderOutlineItems(childrenEl, item.children, level + 1, itemPath);
|
|
122
|
-
nodeEl.appendChild(childrenEl);
|
|
123
|
-
}
|
|
124
|
-
container.appendChild(nodeEl);
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
toggleItem(itemPath, toggle, childrenEl) {
|
|
128
|
-
const isCollapsed = this.collapsedItems.has(itemPath);
|
|
129
|
-
if (isCollapsed) {
|
|
130
|
-
// Expand
|
|
131
|
-
this.collapsedItems.delete(itemPath);
|
|
132
|
-
toggle.classList.remove('collapsed');
|
|
133
|
-
if (childrenEl) {
|
|
134
|
-
childrenEl.classList.remove('collapsed');
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
else {
|
|
138
|
-
// Collapse
|
|
139
|
-
this.collapsedItems.add(itemPath);
|
|
140
|
-
toggle.classList.add('collapsed');
|
|
141
|
-
if (childrenEl) {
|
|
142
|
-
childrenEl.classList.add('collapsed');
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
//# sourceMappingURL=OutlineContent.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"OutlineContent.js","sourceRoot":"","sources":["../../../src/ui/components/OutlineContent.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import { Component } from '../Component';
|
|
2
|
-
import type { UDocViewer } from '../../UDocViewer';
|
|
3
|
-
import type { RightPanelTab } from '../../core/types';
|
|
4
|
-
export interface RightPanelOptions {
|
|
5
|
-
initialWidth?: number;
|
|
6
|
-
initialOpen?: boolean;
|
|
7
|
-
initialTab?: RightPanelTab;
|
|
8
|
-
}
|
|
9
|
-
/**
|
|
10
|
-
* Right panel component for comments and search.
|
|
11
|
-
*
|
|
12
|
-
* Contains:
|
|
13
|
-
* - Content area for the selected tab (comments or search)
|
|
14
|
-
* - Resize handle for adjusting panel width
|
|
15
|
-
*
|
|
16
|
-
* Note: This panel doesn't have visible tabs - tab switching is done via
|
|
17
|
-
* header toolbar buttons (search and comments icons).
|
|
18
|
-
*/
|
|
19
|
-
export declare class RightPanel extends Component<HTMLDivElement> {
|
|
20
|
-
private options;
|
|
21
|
-
private contentEl;
|
|
22
|
-
private resizeHandle;
|
|
23
|
-
private panelWidth;
|
|
24
|
-
private commentsContent;
|
|
25
|
-
constructor(viewer: UDocViewer, options?: RightPanelOptions);
|
|
26
|
-
protected createElement(): HTMLDivElement;
|
|
27
|
-
protected bindEvents(): void;
|
|
28
|
-
private setupPanelResize;
|
|
29
|
-
protected subscribeToState(): void;
|
|
30
|
-
/**
|
|
31
|
-
* Render the appropriate content for the active tab.
|
|
32
|
-
*/
|
|
33
|
-
private renderContent;
|
|
34
|
-
/**
|
|
35
|
-
* Render comments content using CommentsContent component.
|
|
36
|
-
*/
|
|
37
|
-
private renderCommentsContent;
|
|
38
|
-
/**
|
|
39
|
-
* Get the content element for rendering panel content.
|
|
40
|
-
* Used by the viewer to render comments, search, etc.
|
|
41
|
-
*/
|
|
42
|
-
getContentElement(): HTMLDivElement | null;
|
|
43
|
-
/**
|
|
44
|
-
* Get the current panel width.
|
|
45
|
-
*/
|
|
46
|
-
getWidth(): number;
|
|
47
|
-
/**
|
|
48
|
-
* Set the panel width.
|
|
49
|
-
*/
|
|
50
|
-
setWidth(width: number): void;
|
|
51
|
-
}
|
|
52
|
-
//# sourceMappingURL=RightPanel.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RightPanel.d.ts","sourceRoot":"","sources":["../../../src/ui/components/RightPanel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD,MAAM,WAAW,iBAAiB;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,aAAa,CAAC;CAC9B;AAED;;;;;;;;;GASG;AACH,qBAAa,UAAW,SAAQ,SAAS,CAAC,cAAc,CAAC;IACrD,OAAO,CAAC,OAAO,CAAoB;IACnC,OAAO,CAAC,SAAS,CAA+B;IAChD,OAAO,CAAC,YAAY,CAA+B;IACnD,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,eAAe,CAAgC;gBAE3C,MAAM,EAAE,UAAU,EAAE,OAAO,GAAE,iBAAsB;IAM/D,SAAS,CAAC,aAAa,IAAI,cAAc;IAuBzC,SAAS,CAAC,UAAU,IAAI,IAAI;IAK5B,OAAO,CAAC,gBAAgB;IAgCxB,SAAS,CAAC,gBAAgB,IAAI,IAAI;IAiBlC;;OAEG;IACH,OAAO,CAAC,aAAa;IAgBrB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAkB7B;;;OAGG;IACH,iBAAiB,IAAI,cAAc,GAAG,IAAI;IAI1C;;OAEG;IACH,QAAQ,IAAI,MAAM;IAIlB;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;CAIhC"}
|
|
@@ -1,142 +0,0 @@
|
|
|
1
|
-
import { Component } from '../Component';
|
|
2
|
-
import { CommentsContent } from './CommentsContent';
|
|
3
|
-
/**
|
|
4
|
-
* Right panel component for comments and search.
|
|
5
|
-
*
|
|
6
|
-
* Contains:
|
|
7
|
-
* - Content area for the selected tab (comments or search)
|
|
8
|
-
* - Resize handle for adjusting panel width
|
|
9
|
-
*
|
|
10
|
-
* Note: This panel doesn't have visible tabs - tab switching is done via
|
|
11
|
-
* header toolbar buttons (search and comments icons).
|
|
12
|
-
*/
|
|
13
|
-
export class RightPanel extends Component {
|
|
14
|
-
options;
|
|
15
|
-
contentEl = null;
|
|
16
|
-
resizeHandle = null;
|
|
17
|
-
panelWidth;
|
|
18
|
-
commentsContent = null;
|
|
19
|
-
constructor(viewer, options = {}) {
|
|
20
|
-
super(viewer);
|
|
21
|
-
this.options = options;
|
|
22
|
-
this.panelWidth = options.initialWidth ?? 240;
|
|
23
|
-
}
|
|
24
|
-
createElement() {
|
|
25
|
-
const initialWidth = this.options.initialWidth ?? 240;
|
|
26
|
-
const initialOpen = this.options.initialOpen ?? this.viewer.state.get('rightPanelOpen');
|
|
27
|
-
const panel = document.createElement('div');
|
|
28
|
-
panel.className = 'udoc-panel right no-tabs';
|
|
29
|
-
panel.style.width = `${initialWidth}px`;
|
|
30
|
-
if (!initialOpen) {
|
|
31
|
-
panel.classList.add('collapsed');
|
|
32
|
-
}
|
|
33
|
-
// Resize handle (comes first in DOM due to flex-direction: row-reverse)
|
|
34
|
-
this.resizeHandle = document.createElement('div');
|
|
35
|
-
this.resizeHandle.className = 'udoc-panel-resize';
|
|
36
|
-
// Content area
|
|
37
|
-
this.contentEl = document.createElement('div');
|
|
38
|
-
this.contentEl.className = 'udoc-panel-content';
|
|
39
|
-
panel.append(this.resizeHandle, this.contentEl);
|
|
40
|
-
return panel;
|
|
41
|
-
}
|
|
42
|
-
bindEvents() {
|
|
43
|
-
// Panel resize
|
|
44
|
-
this.setupPanelResize();
|
|
45
|
-
}
|
|
46
|
-
setupPanelResize() {
|
|
47
|
-
if (!this.resizeHandle)
|
|
48
|
-
return;
|
|
49
|
-
let startX = 0;
|
|
50
|
-
let startWidth = 0;
|
|
51
|
-
const onMouseMove = (e) => {
|
|
52
|
-
// Right panel resizes in opposite direction
|
|
53
|
-
const delta = startX - e.clientX;
|
|
54
|
-
const newWidth = Math.max(240, Math.min(500, startWidth + delta));
|
|
55
|
-
this.panelWidth = newWidth;
|
|
56
|
-
this.element.style.width = `${newWidth}px`;
|
|
57
|
-
};
|
|
58
|
-
const onMouseUp = () => {
|
|
59
|
-
this.resizeHandle.classList.remove('resizing');
|
|
60
|
-
document.removeEventListener('mousemove', onMouseMove);
|
|
61
|
-
document.removeEventListener('mouseup', onMouseUp);
|
|
62
|
-
// Notify viewer to recalculate zoom if needed
|
|
63
|
-
this.viewer.handlePanelResize();
|
|
64
|
-
};
|
|
65
|
-
this.addEventListener(this.resizeHandle, 'mousedown', (e) => {
|
|
66
|
-
e.preventDefault();
|
|
67
|
-
startX = e.clientX;
|
|
68
|
-
startWidth = this.panelWidth;
|
|
69
|
-
this.resizeHandle.classList.add('resizing');
|
|
70
|
-
document.addEventListener('mousemove', onMouseMove);
|
|
71
|
-
document.addEventListener('mouseup', onMouseUp);
|
|
72
|
-
});
|
|
73
|
-
}
|
|
74
|
-
subscribeToState() {
|
|
75
|
-
// Subscribe to panel open state
|
|
76
|
-
this.subscribe('rightPanelOpen', (isOpen) => {
|
|
77
|
-
this.element.classList.toggle('collapsed', !isOpen);
|
|
78
|
-
if (isOpen) {
|
|
79
|
-
this.renderContent();
|
|
80
|
-
}
|
|
81
|
-
});
|
|
82
|
-
// Subscribe to active tab changes
|
|
83
|
-
this.subscribe('rightPanelActiveTab', () => {
|
|
84
|
-
if (this.viewer.state.get('rightPanelOpen')) {
|
|
85
|
-
this.renderContent();
|
|
86
|
-
}
|
|
87
|
-
});
|
|
88
|
-
}
|
|
89
|
-
/**
|
|
90
|
-
* Render the appropriate content for the active tab.
|
|
91
|
-
*/
|
|
92
|
-
renderContent() {
|
|
93
|
-
if (!this.contentEl)
|
|
94
|
-
return;
|
|
95
|
-
const activeTab = this.viewer.state.get('rightPanelActiveTab');
|
|
96
|
-
switch (activeTab) {
|
|
97
|
-
case 'comments':
|
|
98
|
-
this.renderCommentsContent();
|
|
99
|
-
break;
|
|
100
|
-
default:
|
|
101
|
-
// Search - delegate to viewer
|
|
102
|
-
this.viewer.renderRightPanelContent();
|
|
103
|
-
break;
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
/**
|
|
107
|
-
* Render comments content using CommentsContent component.
|
|
108
|
-
*/
|
|
109
|
-
renderCommentsContent() {
|
|
110
|
-
if (!this.contentEl)
|
|
111
|
-
return;
|
|
112
|
-
this.contentEl.innerHTML = '';
|
|
113
|
-
// Create comments content if needed
|
|
114
|
-
if (!this.commentsContent) {
|
|
115
|
-
this.commentsContent = new CommentsContent(this.viewer, () => this.viewer.getAnnotationsWithMetadata(), (pageIndex) => this.viewer.goToPage(pageIndex)).init();
|
|
116
|
-
}
|
|
117
|
-
// Render comments
|
|
118
|
-
this.commentsContent.render();
|
|
119
|
-
this.contentEl.appendChild(this.commentsContent.getElement());
|
|
120
|
-
}
|
|
121
|
-
/**
|
|
122
|
-
* Get the content element for rendering panel content.
|
|
123
|
-
* Used by the viewer to render comments, search, etc.
|
|
124
|
-
*/
|
|
125
|
-
getContentElement() {
|
|
126
|
-
return this.contentEl;
|
|
127
|
-
}
|
|
128
|
-
/**
|
|
129
|
-
* Get the current panel width.
|
|
130
|
-
*/
|
|
131
|
-
getWidth() {
|
|
132
|
-
return this.panelWidth;
|
|
133
|
-
}
|
|
134
|
-
/**
|
|
135
|
-
* Set the panel width.
|
|
136
|
-
*/
|
|
137
|
-
setWidth(width) {
|
|
138
|
-
this.panelWidth = Math.max(240, Math.min(500, width));
|
|
139
|
-
this.element.style.width = `${this.panelWidth}px`;
|
|
140
|
-
}
|
|
141
|
-
}
|
|
142
|
-
//# sourceMappingURL=RightPanel.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RightPanel.js","sourceRoot":"","sources":["../../../src/ui/components/RightPanel.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
import { Component } from '../Component';
|
|
2
|
-
/**
|
|
3
|
-
* Viewport component - the main scrollable content area.
|
|
4
|
-
*
|
|
5
|
-
* Contains:
|
|
6
|
-
* - Scrollable viewport container
|
|
7
|
-
* - Content element with band virtualization structure
|
|
8
|
-
* - Top/bottom spacers for virtual scrolling
|
|
9
|
-
* - Band container for visible page bands
|
|
10
|
-
*
|
|
11
|
-
* This component provides the DOM structure and basic event handling.
|
|
12
|
-
* Complex rendering logic (pages, bands, virtualization) remains in UDocViewer.
|
|
13
|
-
*/
|
|
14
|
-
export declare class Viewport extends Component<HTMLDivElement> {
|
|
15
|
-
private viewportEl;
|
|
16
|
-
private contentEl;
|
|
17
|
-
private topSpacer;
|
|
18
|
-
private bottomSpacer;
|
|
19
|
-
private bandContainer;
|
|
20
|
-
private isPanning;
|
|
21
|
-
private panStartX;
|
|
22
|
-
private panStartY;
|
|
23
|
-
private scrollStartX;
|
|
24
|
-
private scrollStartY;
|
|
25
|
-
protected createElement(): HTMLDivElement;
|
|
26
|
-
protected bindEvents(): void;
|
|
27
|
-
private startPanning;
|
|
28
|
-
private handlePanning;
|
|
29
|
-
private endPanning;
|
|
30
|
-
protected subscribeToState(): void;
|
|
31
|
-
/**
|
|
32
|
-
* Get the viewport element (scrollable container).
|
|
33
|
-
*/
|
|
34
|
-
getViewportElement(): HTMLDivElement;
|
|
35
|
-
/**
|
|
36
|
-
* Get the content element.
|
|
37
|
-
*/
|
|
38
|
-
getContentElement(): HTMLDivElement;
|
|
39
|
-
/**
|
|
40
|
-
* Get the top spacer element for virtual scrolling.
|
|
41
|
-
*/
|
|
42
|
-
getTopSpacer(): HTMLDivElement;
|
|
43
|
-
/**
|
|
44
|
-
* Get the bottom spacer element for virtual scrolling.
|
|
45
|
-
*/
|
|
46
|
-
getBottomSpacer(): HTMLDivElement;
|
|
47
|
-
/**
|
|
48
|
-
* Get the band container element.
|
|
49
|
-
*/
|
|
50
|
-
getBandContainer(): HTMLDivElement;
|
|
51
|
-
/**
|
|
52
|
-
* Get viewport scroll position.
|
|
53
|
-
*/
|
|
54
|
-
getScrollPosition(): {
|
|
55
|
-
scrollTop: number;
|
|
56
|
-
scrollLeft: number;
|
|
57
|
-
};
|
|
58
|
-
/**
|
|
59
|
-
* Set viewport scroll position.
|
|
60
|
-
*/
|
|
61
|
-
setScrollPosition(scrollTop: number, scrollLeft?: number): void;
|
|
62
|
-
/**
|
|
63
|
-
* Get viewport dimensions.
|
|
64
|
-
*/
|
|
65
|
-
getDimensions(): {
|
|
66
|
-
width: number;
|
|
67
|
-
height: number;
|
|
68
|
-
};
|
|
69
|
-
}
|
|
70
|
-
//# sourceMappingURL=Viewport.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Viewport.d.ts","sourceRoot":"","sources":["../../../src/ui/components/Viewport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAIzC;;;;;;;;;;;GAWG;AACH,qBAAa,QAAS,SAAQ,SAAS,CAAC,cAAc,CAAC;IAEnD,OAAO,CAAC,UAAU,CAAkB;IACpC,OAAO,CAAC,SAAS,CAAkB;IACnC,OAAO,CAAC,SAAS,CAAkB;IACnC,OAAO,CAAC,YAAY,CAAkB;IACtC,OAAO,CAAC,aAAa,CAAkB;IAGvC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,YAAY,CAAK;IAEzB,SAAS,CAAC,aAAa,IAAI,cAAc;IAwCzC,SAAS,CAAC,UAAU,IAAI,IAAI;IAkC5B,OAAO,CAAC,YAAY;IAUpB,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,UAAU;IAOlB,SAAS,CAAC,gBAAgB,IAAI,IAAI;IAUlC;;OAEG;IACH,kBAAkB,IAAI,cAAc;IAIpC;;OAEG;IACH,iBAAiB,IAAI,cAAc;IAInC;;OAEG;IACH,YAAY,IAAI,cAAc;IAI9B;;OAEG;IACH,eAAe,IAAI,cAAc;IAIjC;;OAEG;IACH,gBAAgB,IAAI,cAAc;IAIlC;;OAEG;IACH,iBAAiB,IAAI;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE;IAO9D;;OAEG;IACH,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI;IAO/D;;OAEG;IACH,aAAa,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;CAMrD"}
|
|
@@ -1,173 +0,0 @@
|
|
|
1
|
-
import { Component } from '../Component';
|
|
2
|
-
/**
|
|
3
|
-
* Viewport component - the main scrollable content area.
|
|
4
|
-
*
|
|
5
|
-
* Contains:
|
|
6
|
-
* - Scrollable viewport container
|
|
7
|
-
* - Content element with band virtualization structure
|
|
8
|
-
* - Top/bottom spacers for virtual scrolling
|
|
9
|
-
* - Band container for visible page bands
|
|
10
|
-
*
|
|
11
|
-
* This component provides the DOM structure and basic event handling.
|
|
12
|
-
* Complex rendering logic (pages, bands, virtualization) remains in UDocViewer.
|
|
13
|
-
*/
|
|
14
|
-
export class Viewport extends Component {
|
|
15
|
-
// Main elements - initialized in createElement() via two-phase init
|
|
16
|
-
viewportEl;
|
|
17
|
-
contentEl;
|
|
18
|
-
topSpacer;
|
|
19
|
-
bottomSpacer;
|
|
20
|
-
bandContainer;
|
|
21
|
-
// Hand tool panning state
|
|
22
|
-
isPanning = false;
|
|
23
|
-
panStartX = 0;
|
|
24
|
-
panStartY = 0;
|
|
25
|
-
scrollStartX = 0;
|
|
26
|
-
scrollStartY = 0;
|
|
27
|
-
createElement() {
|
|
28
|
-
const activeTool = this.viewer.state.get('activeTool');
|
|
29
|
-
// Create wrapper (for positioning floating bar)
|
|
30
|
-
const wrapper = document.createElement('div');
|
|
31
|
-
wrapper.className = 'udoc-viewport-wrapper';
|
|
32
|
-
wrapper.style.cssText = 'flex:1;position:relative;display:flex;flex-direction:column;overflow:hidden;';
|
|
33
|
-
// Create viewport (scrollable area)
|
|
34
|
-
const viewport = document.createElement('div');
|
|
35
|
-
viewport.className = `udoc-viewport tool-${activeTool}`;
|
|
36
|
-
// Create content (holds pages)
|
|
37
|
-
const content = document.createElement('div');
|
|
38
|
-
content.className = 'udoc-content';
|
|
39
|
-
// Create band virtualization containers
|
|
40
|
-
const topSpacer = document.createElement('div');
|
|
41
|
-
topSpacer.className = 'udoc-spacer';
|
|
42
|
-
const bandContainer = document.createElement('div');
|
|
43
|
-
bandContainer.className = 'udoc-band-container';
|
|
44
|
-
const bottomSpacer = document.createElement('div');
|
|
45
|
-
bottomSpacer.className = 'udoc-spacer';
|
|
46
|
-
content.append(topSpacer, bandContainer, bottomSpacer);
|
|
47
|
-
viewport.appendChild(content);
|
|
48
|
-
wrapper.appendChild(viewport);
|
|
49
|
-
// Store element references directly (two-phase init pattern)
|
|
50
|
-
this.viewportEl = viewport;
|
|
51
|
-
this.contentEl = content;
|
|
52
|
-
this.topSpacer = topSpacer;
|
|
53
|
-
this.bottomSpacer = bottomSpacer;
|
|
54
|
-
this.bandContainer = bandContainer;
|
|
55
|
-
return wrapper;
|
|
56
|
-
}
|
|
57
|
-
bindEvents() {
|
|
58
|
-
// Scroll handling - delegate to viewer
|
|
59
|
-
this.addEventListener(this.viewportEl, 'scroll', () => {
|
|
60
|
-
this.viewer.handleViewportScroll();
|
|
61
|
-
});
|
|
62
|
-
// Wheel page flip in single page mode - delegate to viewer
|
|
63
|
-
this.viewportEl.addEventListener('wheel', (e) => {
|
|
64
|
-
this.viewer.handleViewportWheel(e);
|
|
65
|
-
}, { passive: true });
|
|
66
|
-
// Hand tool panning
|
|
67
|
-
this.addEventListener(this.viewportEl, 'mousedown', (e) => {
|
|
68
|
-
const activeTool = this.viewer.state.get('activeTool');
|
|
69
|
-
if (activeTool === 'hand' && e.button === 0) {
|
|
70
|
-
this.startPanning(e);
|
|
71
|
-
}
|
|
72
|
-
});
|
|
73
|
-
this.addEventListener(this.viewportEl, 'mousemove', (e) => {
|
|
74
|
-
if (this.isPanning) {
|
|
75
|
-
this.handlePanning(e);
|
|
76
|
-
}
|
|
77
|
-
});
|
|
78
|
-
this.addEventListener(this.viewportEl, 'mouseup', () => {
|
|
79
|
-
this.endPanning();
|
|
80
|
-
});
|
|
81
|
-
this.addEventListener(this.viewportEl, 'mouseleave', () => {
|
|
82
|
-
this.endPanning();
|
|
83
|
-
});
|
|
84
|
-
}
|
|
85
|
-
startPanning(e) {
|
|
86
|
-
this.isPanning = true;
|
|
87
|
-
this.panStartX = e.clientX;
|
|
88
|
-
this.panStartY = e.clientY;
|
|
89
|
-
this.scrollStartX = this.viewportEl.scrollLeft;
|
|
90
|
-
this.scrollStartY = this.viewportEl.scrollTop;
|
|
91
|
-
this.viewportEl.classList.add('panning');
|
|
92
|
-
e.preventDefault();
|
|
93
|
-
}
|
|
94
|
-
handlePanning(e) {
|
|
95
|
-
const dx = e.clientX - this.panStartX;
|
|
96
|
-
const dy = e.clientY - this.panStartY;
|
|
97
|
-
this.viewportEl.scrollLeft = this.scrollStartX - dx;
|
|
98
|
-
this.viewportEl.scrollTop = this.scrollStartY - dy;
|
|
99
|
-
}
|
|
100
|
-
endPanning() {
|
|
101
|
-
if (this.isPanning) {
|
|
102
|
-
this.isPanning = false;
|
|
103
|
-
this.viewportEl.classList.remove('panning');
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
subscribeToState() {
|
|
107
|
-
// Update viewport class when tool changes
|
|
108
|
-
this.subscribe('activeTool', (tool) => {
|
|
109
|
-
// Remove old tool class
|
|
110
|
-
this.viewportEl.className = this.viewportEl.className.replace(/tool-\w+/g, '');
|
|
111
|
-
// Add new tool class
|
|
112
|
-
this.viewportEl.classList.add(`tool-${tool}`);
|
|
113
|
-
});
|
|
114
|
-
}
|
|
115
|
-
/**
|
|
116
|
-
* Get the viewport element (scrollable container).
|
|
117
|
-
*/
|
|
118
|
-
getViewportElement() {
|
|
119
|
-
return this.viewportEl;
|
|
120
|
-
}
|
|
121
|
-
/**
|
|
122
|
-
* Get the content element.
|
|
123
|
-
*/
|
|
124
|
-
getContentElement() {
|
|
125
|
-
return this.contentEl;
|
|
126
|
-
}
|
|
127
|
-
/**
|
|
128
|
-
* Get the top spacer element for virtual scrolling.
|
|
129
|
-
*/
|
|
130
|
-
getTopSpacer() {
|
|
131
|
-
return this.topSpacer;
|
|
132
|
-
}
|
|
133
|
-
/**
|
|
134
|
-
* Get the bottom spacer element for virtual scrolling.
|
|
135
|
-
*/
|
|
136
|
-
getBottomSpacer() {
|
|
137
|
-
return this.bottomSpacer;
|
|
138
|
-
}
|
|
139
|
-
/**
|
|
140
|
-
* Get the band container element.
|
|
141
|
-
*/
|
|
142
|
-
getBandContainer() {
|
|
143
|
-
return this.bandContainer;
|
|
144
|
-
}
|
|
145
|
-
/**
|
|
146
|
-
* Get viewport scroll position.
|
|
147
|
-
*/
|
|
148
|
-
getScrollPosition() {
|
|
149
|
-
return {
|
|
150
|
-
scrollTop: this.viewportEl.scrollTop,
|
|
151
|
-
scrollLeft: this.viewportEl.scrollLeft,
|
|
152
|
-
};
|
|
153
|
-
}
|
|
154
|
-
/**
|
|
155
|
-
* Set viewport scroll position.
|
|
156
|
-
*/
|
|
157
|
-
setScrollPosition(scrollTop, scrollLeft) {
|
|
158
|
-
this.viewportEl.scrollTop = scrollTop;
|
|
159
|
-
if (scrollLeft !== undefined) {
|
|
160
|
-
this.viewportEl.scrollLeft = scrollLeft;
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
/**
|
|
164
|
-
* Get viewport dimensions.
|
|
165
|
-
*/
|
|
166
|
-
getDimensions() {
|
|
167
|
-
return {
|
|
168
|
-
width: this.viewportEl.clientWidth,
|
|
169
|
-
height: this.viewportEl.clientHeight,
|
|
170
|
-
};
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
//# sourceMappingURL=Viewport.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Viewport.js","sourceRoot":"","sources":["../../../src/ui/components/Viewport.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
export { Header } from './Header';
|
|
2
|
-
export type { HeaderOptions } from './Header';
|
|
3
|
-
export { FloatingBar } from './FloatingBar';
|
|
4
|
-
export { LeftPanel } from './LeftPanel';
|
|
5
|
-
export type { LeftPanelOptions } from './LeftPanel';
|
|
6
|
-
export { RightPanel } from './RightPanel';
|
|
7
|
-
export type { RightPanelOptions } from './RightPanel';
|
|
8
|
-
export { Viewport } from './Viewport';
|
|
9
|
-
export { OutlineContent } from './OutlineContent';
|
|
10
|
-
export { CommentsContent } from './CommentsContent';
|
|
11
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/components/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE9C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEtD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
// UI Components
|
|
2
|
-
export { Header } from './Header';
|
|
3
|
-
export { FloatingBar } from './FloatingBar';
|
|
4
|
-
export { LeftPanel } from './LeftPanel';
|
|
5
|
-
export { RightPanel } from './RightPanel';
|
|
6
|
-
export { Viewport } from './Viewport';
|
|
7
|
-
// Content Components
|
|
8
|
-
export { OutlineContent } from './OutlineContent';
|
|
9
|
-
export { CommentsContent } from './CommentsContent';
|
|
10
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ui/components/index.ts"],"names":[],"mappings":"AAAA,gBAAgB;AAChB,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGlC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG1C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,qBAAqB;AACrB,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
|