pdfjs-dist 2.0.550 → 2.3.200
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.
Potentially problematic release.
This version of pdfjs-dist might be problematic. Click here for more details.
- package/CODE_OF_CONDUCT.md +15 -0
- package/bower.json +1 -1
- package/build/pdf.js +21618 -14369
- package/build/pdf.js.map +1 -1
- package/build/pdf.min.js +1 -1
- package/build/pdf.worker.js +22758 -11399
- package/build/pdf.worker.js.map +1 -1
- package/build/pdf.worker.min.js +1 -1
- package/image_decoders/pdf.image_decoders.js +11500 -0
- package/image_decoders/pdf.image_decoders.js.map +1 -0
- package/image_decoders/pdf.image_decoders.min.js +1 -0
- package/lib/core/annotation.js +767 -258
- package/lib/core/arithmetic_decoder.js +275 -245
- package/lib/core/bidi.js +65 -6
- package/lib/core/ccitt.js +173 -18
- package/lib/core/ccitt_stream.js +15 -6
- package/lib/core/cff_parser.js +433 -61
- package/lib/core/charsets.js +5 -4
- package/lib/core/chunked_stream.js +428 -157
- package/lib/core/cmap.js +326 -87
- package/lib/core/colorspace.js +874 -594
- package/lib/core/core_utils.js +173 -0
- package/lib/core/crypto.js +290 -45
- package/lib/core/document.js +575 -272
- package/lib/core/encodings.js +19 -10
- package/lib/core/evaluator.js +1032 -351
- package/lib/core/font_renderer.js +331 -97
- package/lib/core/fonts.js +813 -196
- package/lib/core/function.js +253 -27
- package/lib/core/glyphlist.js +5 -3
- package/lib/core/image.js +169 -62
- package/lib/core/image_utils.js +111 -0
- package/lib/core/jbig2.js +502 -72
- package/lib/core/jbig2_stream.js +19 -8
- package/lib/core/jpeg_stream.js +38 -13
- package/lib/core/jpg.js +293 -52
- package/lib/core/jpx.js +419 -12
- package/lib/core/jpx_stream.js +18 -6
- package/lib/core/metrics.js +15 -15
- package/lib/core/murmurhash3.js +56 -34
- package/lib/core/obj.js +1368 -500
- package/lib/core/operator_list.js +159 -43
- package/lib/core/parser.js +544 -199
- package/lib/core/pattern.js +170 -21
- package/lib/core/pdf_manager.js +324 -134
- package/lib/core/primitives.js +169 -61
- package/lib/core/ps_parser.js +134 -45
- package/lib/core/standard_fonts.js +17 -17
- package/lib/core/stream.js +327 -34
- package/lib/core/type1_parser.js +148 -8
- package/lib/core/unicode.js +32 -5
- package/lib/core/worker.js +215 -229
- package/lib/core/worker_stream.js +277 -0
- package/lib/display/annotation_layer.js +618 -192
- package/lib/display/api.js +1798 -882
- package/lib/display/api_compatibility.js +5 -10
- package/lib/display/canvas.js +366 -45
- package/lib/display/content_disposition.js +71 -24
- package/lib/display/display_utils.js +777 -0
- package/lib/display/fetch_stream.js +205 -87
- package/lib/display/font_loader.js +468 -236
- package/lib/display/metadata.js +38 -16
- package/lib/display/network.js +635 -428
- package/lib/display/network_utils.js +38 -19
- package/lib/display/node_stream.js +367 -175
- package/lib/display/pattern_helper.js +103 -36
- package/lib/display/svg.js +1232 -519
- package/lib/display/text_layer.js +208 -75
- package/lib/display/transport_stream.js +345 -94
- package/lib/display/webgl.js +64 -18
- package/lib/display/worker_options.js +5 -4
- package/lib/display/xml_parser.js +166 -53
- package/lib/examples/node/domstubs.js +60 -4
- package/lib/pdf.js +35 -14
- package/lib/pdf.worker.js +5 -3
- package/lib/shared/compatibility.js +170 -572
- package/lib/shared/global_scope.js +2 -2
- package/lib/shared/is_node.js +4 -4
- package/lib/shared/message_handler.js +216 -163
- package/lib/shared/streams_polyfill.js +21 -17
- package/lib/shared/util.js +495 -385
- package/lib/test/unit/annotation_spec.js +1464 -401
- package/lib/test/unit/api_spec.js +718 -361
- package/lib/test/unit/bidi_spec.js +7 -7
- package/lib/test/unit/cff_parser_spec.js +54 -11
- package/lib/test/unit/clitests_helper.js +9 -10
- package/lib/test/unit/cmap_spec.js +95 -41
- package/lib/test/unit/colorspace_spec.js +115 -63
- package/lib/test/unit/core_utils_spec.js +191 -0
- package/lib/test/unit/crypto_spec.js +17 -5
- package/lib/test/unit/custom_spec.js +43 -55
- package/lib/test/unit/display_svg_spec.js +34 -18
- package/lib/test/unit/display_utils_spec.js +273 -0
- package/lib/test/unit/document_spec.js +8 -13
- package/lib/test/unit/encodings_spec.js +25 -45
- package/lib/test/unit/evaluator_spec.js +59 -20
- package/lib/test/unit/fetch_stream_spec.js +111 -0
- package/lib/test/unit/function_spec.js +17 -5
- package/lib/test/unit/jasmine-boot.js +33 -20
- package/lib/test/unit/message_handler_spec.js +30 -13
- package/lib/test/unit/metadata_spec.js +71 -11
- package/lib/test/unit/murmurhash3_spec.js +3 -3
- package/lib/test/unit/network_spec.js +22 -55
- package/lib/test/unit/network_utils_spec.js +105 -14
- package/lib/test/unit/node_stream_spec.js +58 -34
- package/lib/test/unit/parser_spec.js +162 -71
- package/lib/test/unit/pdf_find_controller_spec.js +230 -0
- package/lib/test/unit/pdf_find_utils_spec.js +63 -0
- package/lib/test/unit/pdf_history_spec.js +21 -9
- package/lib/test/unit/primitives_spec.js +55 -22
- package/lib/test/unit/stream_spec.js +12 -4
- package/lib/test/unit/test_utils.js +273 -56
- package/lib/test/unit/testreporter.js +21 -3
- package/lib/test/unit/type1_parser_spec.js +9 -7
- package/lib/test/unit/ui_utils_spec.js +236 -36
- package/lib/test/unit/unicode_spec.js +18 -15
- package/lib/test/unit/util_spec.js +87 -128
- package/lib/web/annotation_layer_builder.js +39 -22
- package/lib/web/app.js +1252 -609
- package/lib/web/app_options.js +103 -65
- package/lib/web/base_viewer.js +522 -242
- package/lib/web/chromecom.js +259 -117
- package/lib/web/debugger.js +166 -22
- package/lib/web/download_manager.js +31 -12
- package/lib/web/firefox_print_service.js +27 -14
- package/lib/web/firefoxcom.js +318 -78
- package/lib/web/genericcom.js +89 -30
- package/lib/web/genericl10n.js +142 -30
- package/lib/web/grab_to_pan.js +28 -4
- package/lib/web/interfaces.js +174 -47
- package/lib/web/overlay_manager.js +235 -85
- package/lib/web/password_prompt.js +22 -14
- package/lib/web/pdf_attachment_viewer.js +38 -18
- package/lib/web/pdf_cursor_tools.js +39 -16
- package/lib/web/pdf_document_properties.js +255 -136
- package/lib/web/pdf_find_bar.js +84 -40
- package/lib/web/pdf_find_controller.js +495 -184
- package/lib/web/pdf_find_utils.js +111 -0
- package/lib/web/pdf_history.js +190 -53
- package/lib/web/pdf_link_service.js +144 -79
- package/lib/web/pdf_outline_viewer.js +124 -47
- package/lib/web/pdf_page_view.js +194 -74
- package/lib/web/pdf_presentation_mode.js +99 -34
- package/lib/web/pdf_print_service.js +59 -13
- package/lib/web/pdf_rendering_queue.js +28 -9
- package/lib/web/pdf_sidebar.js +144 -81
- package/lib/web/pdf_sidebar_resizer.js +42 -16
- package/lib/web/pdf_single_page_viewer.js +74 -66
- package/lib/web/pdf_thumbnail_view.js +104 -33
- package/lib/web/pdf_thumbnail_viewer.js +66 -26
- package/lib/web/pdf_viewer.component.js +112 -32
- package/lib/web/pdf_viewer.js +82 -87
- package/lib/web/preferences.js +284 -91
- package/lib/web/secondary_toolbar.js +132 -59
- package/lib/web/text_layer_builder.js +134 -59
- package/lib/web/toolbar.js +80 -43
- package/lib/web/ui_utils.js +400 -134
- package/lib/web/view_history.js +215 -67
- package/lib/web/viewer_compatibility.js +3 -8
- package/package.json +3 -2
- package/web/pdf_viewer.css +23 -15
- package/web/pdf_viewer.js +3429 -1245
- package/web/pdf_viewer.js.map +1 -1
- package/external/streams/streams-lib.js +0 -3962
- package/lib/display/dom_utils.js +0 -429
- package/lib/test/unit/dom_utils_spec.js +0 -89
- package/lib/test/unit/fonts_spec.js +0 -81
- package/lib/web/dom_events.js +0 -137
@@ -2,7 +2,7 @@
|
|
2
2
|
* @licstart The following is the entire license notice for the
|
3
3
|
* Javascript code in this page
|
4
4
|
*
|
5
|
-
* Copyright
|
5
|
+
* Copyright 2019 Mozilla Foundation
|
6
6
|
*
|
7
7
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
8
8
|
* you may not use this file except in compliance with the License.
|
@@ -19,22 +19,25 @@
|
|
19
19
|
* @licend The above is the entire license notice for the
|
20
20
|
* Javascript code in this page
|
21
21
|
*/
|
22
|
-
|
22
|
+
"use strict";
|
23
23
|
|
24
24
|
Object.defineProperty(exports, "__esModule", {
|
25
25
|
value: true
|
26
26
|
});
|
27
|
-
exports.PDFPrintService =
|
27
|
+
exports.PDFPrintService = PDFPrintService;
|
28
28
|
|
29
|
-
var _ui_utils = require(
|
29
|
+
var _ui_utils = require("./ui_utils");
|
30
30
|
|
31
|
-
var _app = require(
|
31
|
+
var _app = require("./app");
|
32
|
+
|
33
|
+
var _app_options = require("./app_options");
|
32
34
|
|
33
35
|
var activeService = null;
|
34
36
|
var overlayManager = null;
|
37
|
+
|
35
38
|
function renderPage(activeServiceOnEntry, pdfDocument, pageNumber, size) {
|
36
39
|
var scratchCanvas = activeService.scratchCanvas;
|
37
|
-
var PRINT_RESOLUTION = 150;
|
40
|
+
var PRINT_RESOLUTION = _app_options.AppOptions.get('printResolution') || 150;
|
38
41
|
var PRINT_UNITS = PRINT_RESOLUTION / 72.0;
|
39
42
|
scratchCanvas.width = Math.floor(size.width * PRINT_UNITS);
|
40
43
|
scratchCanvas.height = Math.floor(size.height * PRINT_UNITS);
|
@@ -49,7 +52,10 @@ function renderPage(activeServiceOnEntry, pdfDocument, pageNumber, size) {
|
|
49
52
|
var renderContext = {
|
50
53
|
canvasContext: ctx,
|
51
54
|
transform: [PRINT_UNITS, 0, 0, PRINT_UNITS, 0, 0],
|
52
|
-
viewport: pdfPage.getViewport(
|
55
|
+
viewport: pdfPage.getViewport({
|
56
|
+
scale: 1,
|
57
|
+
rotation: size.rotation
|
58
|
+
}),
|
53
59
|
intent: 'print'
|
54
60
|
};
|
55
61
|
return pdfPage.render(renderContext).promise;
|
@@ -60,6 +66,7 @@ function renderPage(activeServiceOnEntry, pdfDocument, pageNumber, size) {
|
|
60
66
|
};
|
61
67
|
});
|
62
68
|
}
|
69
|
+
|
63
70
|
function PDFPrintService(pdfDocument, pagesOverview, printContainer, l10n) {
|
64
71
|
this.pdfDocument = pdfDocument;
|
65
72
|
this.pagesOverview = pagesOverview;
|
@@ -69,6 +76,7 @@ function PDFPrintService(pdfDocument, pagesOverview, printContainer, l10n) {
|
|
69
76
|
this.currentPage = -1;
|
70
77
|
this.scratchCanvas = document.createElement('canvas');
|
71
78
|
}
|
79
|
+
|
72
80
|
PDFPrintService.prototype = {
|
73
81
|
layout: function layout() {
|
74
82
|
this.throwIfInactive();
|
@@ -77,9 +85,11 @@ PDFPrintService.prototype = {
|
|
77
85
|
var hasEqualPageSizes = this.pagesOverview.every(function (size) {
|
78
86
|
return size.width === this.pagesOverview[0].width && size.height === this.pagesOverview[0].height;
|
79
87
|
}, this);
|
88
|
+
|
80
89
|
if (!hasEqualPageSizes) {
|
81
90
|
console.warn('Not all pages have the same size. The printed ' + 'result may be incorrect!');
|
82
91
|
}
|
92
|
+
|
83
93
|
this.pageStyleSheet = document.createElement('style');
|
84
94
|
var pageSize = this.pagesOverview[0];
|
85
95
|
this.pageStyleSheet.textContent = '@supports ((size:A4) and (size:1pt 1pt)) {' + '@page { size: ' + pageSize.width + 'pt ' + pageSize.height + 'pt;}' + '}';
|
@@ -89,11 +99,16 @@ PDFPrintService.prototype = {
|
|
89
99
|
if (activeService !== this) {
|
90
100
|
return;
|
91
101
|
}
|
102
|
+
|
92
103
|
this.printContainer.textContent = '';
|
104
|
+
var body = document.querySelector('body');
|
105
|
+
body.removeAttribute('data-pdfjsprinting');
|
106
|
+
|
93
107
|
if (this.pageStyleSheet) {
|
94
108
|
this.pageStyleSheet.remove();
|
95
109
|
this.pageStyleSheet = null;
|
96
110
|
}
|
111
|
+
|
97
112
|
this.scratchCanvas.width = this.scratchCanvas.height = 0;
|
98
113
|
this.scratchCanvas = null;
|
99
114
|
activeService = null;
|
@@ -101,6 +116,7 @@ PDFPrintService.prototype = {
|
|
101
116
|
if (overlayManager.active !== 'printServiceOverlay') {
|
102
117
|
return;
|
103
118
|
}
|
119
|
+
|
104
120
|
overlayManager.close('printServiceOverlay');
|
105
121
|
});
|
106
122
|
},
|
@@ -108,19 +124,23 @@ PDFPrintService.prototype = {
|
|
108
124
|
var _this = this;
|
109
125
|
|
110
126
|
var pageCount = this.pagesOverview.length;
|
127
|
+
|
111
128
|
var renderNextPage = function renderNextPage(resolve, reject) {
|
112
129
|
_this.throwIfInactive();
|
130
|
+
|
113
131
|
if (++_this.currentPage >= pageCount) {
|
114
132
|
renderProgress(pageCount, pageCount, _this.l10n);
|
115
133
|
resolve();
|
116
134
|
return;
|
117
135
|
}
|
136
|
+
|
118
137
|
var index = _this.currentPage;
|
119
138
|
renderProgress(index, pageCount, _this.l10n);
|
120
139
|
renderPage(_this, _this.pdfDocument, index + 1, _this.pagesOverview[index]).then(_this.useRenderedPage.bind(_this)).then(function () {
|
121
140
|
renderNextPage(resolve, reject);
|
122
141
|
}, reject);
|
123
142
|
};
|
143
|
+
|
124
144
|
return new Promise(renderNextPage);
|
125
145
|
},
|
126
146
|
useRenderedPage: function useRenderedPage(printItem) {
|
@@ -129,6 +149,7 @@ PDFPrintService.prototype = {
|
|
129
149
|
img.style.width = printItem.width;
|
130
150
|
img.style.height = printItem.height;
|
131
151
|
var scratchCanvas = this.scratchCanvas;
|
152
|
+
|
132
153
|
if ('toBlob' in scratchCanvas && !this.disableCreateObjectURL) {
|
133
154
|
scratchCanvas.toBlob(function (blob) {
|
134
155
|
img.src = URL.createObjectURL(blob);
|
@@ -136,6 +157,7 @@ PDFPrintService.prototype = {
|
|
136
157
|
} else {
|
137
158
|
img.src = scratchCanvas.toDataURL();
|
138
159
|
}
|
160
|
+
|
139
161
|
var wrapper = document.createElement('div');
|
140
162
|
wrapper.appendChild(img);
|
141
163
|
this.printContainer.appendChild(wrapper);
|
@@ -154,6 +176,7 @@ PDFPrintService.prototype = {
|
|
154
176
|
resolve();
|
155
177
|
return;
|
156
178
|
}
|
179
|
+
|
157
180
|
print.call(window);
|
158
181
|
setTimeout(resolve, 20);
|
159
182
|
}, 0);
|
@@ -163,6 +186,7 @@ PDFPrintService.prototype = {
|
|
163
186
|
get active() {
|
164
187
|
return this === activeService;
|
165
188
|
},
|
189
|
+
|
166
190
|
throwIfInactive: function throwIfInactive() {
|
167
191
|
if (!this.active) {
|
168
192
|
throw new Error('This print request was cancelled or completed.');
|
@@ -170,16 +194,19 @@ PDFPrintService.prototype = {
|
|
170
194
|
}
|
171
195
|
};
|
172
196
|
var print = window.print;
|
197
|
+
|
173
198
|
window.print = function print() {
|
174
199
|
if (activeService) {
|
175
200
|
console.warn('Ignored window.print() because of a pending print job.');
|
176
201
|
return;
|
177
202
|
}
|
203
|
+
|
178
204
|
ensureOverlay().then(function () {
|
179
205
|
if (activeService) {
|
180
206
|
overlayManager.open('printServiceOverlay');
|
181
207
|
}
|
182
208
|
});
|
209
|
+
|
183
210
|
try {
|
184
211
|
dispatchEvent('beforeprint');
|
185
212
|
} finally {
|
@@ -192,91 +219,110 @@ window.print = function print() {
|
|
192
219
|
});
|
193
220
|
return;
|
194
221
|
}
|
222
|
+
|
195
223
|
var activeServiceOnEntry = activeService;
|
196
224
|
activeService.renderPages().then(function () {
|
197
225
|
return activeServiceOnEntry.performPrint();
|
198
|
-
})
|
226
|
+
})["catch"](function () {}).then(function () {
|
199
227
|
if (activeServiceOnEntry.active) {
|
200
228
|
abort();
|
201
229
|
}
|
202
230
|
});
|
203
231
|
}
|
204
232
|
};
|
233
|
+
|
205
234
|
function dispatchEvent(eventType) {
|
206
235
|
var event = document.createEvent('CustomEvent');
|
207
236
|
event.initCustomEvent(eventType, false, false, 'custom');
|
208
237
|
window.dispatchEvent(event);
|
209
238
|
}
|
239
|
+
|
210
240
|
function abort() {
|
211
241
|
if (activeService) {
|
212
242
|
activeService.destroy();
|
213
243
|
dispatchEvent('afterprint');
|
214
244
|
}
|
215
245
|
}
|
246
|
+
|
216
247
|
function renderProgress(index, total, l10n) {
|
217
248
|
var progressContainer = document.getElementById('printServiceOverlay');
|
218
249
|
var progress = Math.round(100 * index / total);
|
219
250
|
var progressBar = progressContainer.querySelector('progress');
|
220
251
|
var progressPerc = progressContainer.querySelector('.relative-progress');
|
221
252
|
progressBar.value = progress;
|
222
|
-
l10n.get('print_progress_percent', {
|
253
|
+
l10n.get('print_progress_percent', {
|
254
|
+
progress: progress
|
255
|
+
}, progress + '%').then(function (msg) {
|
223
256
|
progressPerc.textContent = msg;
|
224
257
|
});
|
225
258
|
}
|
259
|
+
|
226
260
|
var hasAttachEvent = !!document.attachEvent;
|
227
261
|
window.addEventListener('keydown', function (event) {
|
228
262
|
if (event.keyCode === 80 && (event.ctrlKey || event.metaKey) && !event.altKey && (!event.shiftKey || window.chrome || window.opera)) {
|
229
263
|
window.print();
|
264
|
+
|
230
265
|
if (hasAttachEvent) {
|
231
266
|
return;
|
232
267
|
}
|
268
|
+
|
233
269
|
event.preventDefault();
|
270
|
+
|
234
271
|
if (event.stopImmediatePropagation) {
|
235
272
|
event.stopImmediatePropagation();
|
236
273
|
} else {
|
237
274
|
event.stopPropagation();
|
238
275
|
}
|
239
|
-
return;
|
240
276
|
}
|
241
277
|
}, true);
|
278
|
+
|
242
279
|
if (hasAttachEvent) {
|
243
280
|
document.attachEvent('onkeydown', function (event) {
|
244
281
|
event = event || window.event;
|
282
|
+
|
245
283
|
if (event.keyCode === 80 && event.ctrlKey) {
|
246
284
|
event.keyCode = 0;
|
247
285
|
return false;
|
248
286
|
}
|
249
287
|
});
|
250
288
|
}
|
289
|
+
|
251
290
|
if ('onbeforeprint' in window) {
|
252
291
|
var stopPropagationIfNeeded = function stopPropagationIfNeeded(event) {
|
253
292
|
if (event.detail !== 'custom' && event.stopImmediatePropagation) {
|
254
293
|
event.stopImmediatePropagation();
|
255
294
|
}
|
256
295
|
};
|
296
|
+
|
257
297
|
window.addEventListener('beforeprint', stopPropagationIfNeeded);
|
258
298
|
window.addEventListener('afterprint', stopPropagationIfNeeded);
|
259
299
|
}
|
260
|
-
|
300
|
+
|
301
|
+
var overlayPromise;
|
302
|
+
|
261
303
|
function ensureOverlay() {
|
262
304
|
if (!overlayPromise) {
|
263
305
|
overlayManager = _app.PDFViewerApplication.overlayManager;
|
306
|
+
|
264
307
|
if (!overlayManager) {
|
265
308
|
throw new Error('The overlay manager has not yet been initialized.');
|
266
309
|
}
|
310
|
+
|
267
311
|
overlayPromise = overlayManager.register('printServiceOverlay', document.getElementById('printServiceOverlay'), abort, true);
|
268
312
|
document.getElementById('printCancel').onclick = abort;
|
269
313
|
}
|
314
|
+
|
270
315
|
return overlayPromise;
|
271
316
|
}
|
317
|
+
|
272
318
|
_app.PDFPrintServiceFactory.instance = {
|
273
319
|
supportsPrinting: true,
|
274
320
|
createPrintService: function createPrintService(pdfDocument, pagesOverview, printContainer, l10n) {
|
275
321
|
if (activeService) {
|
276
322
|
throw new Error('The print service is created and active.');
|
277
323
|
}
|
324
|
+
|
278
325
|
activeService = new PDFPrintService(pdfDocument, pagesOverview, printContainer, l10n);
|
279
326
|
return activeService;
|
280
327
|
}
|
281
|
-
};
|
282
|
-
exports.PDFPrintService = PDFPrintService;
|
328
|
+
};
|
@@ -2,7 +2,7 @@
|
|
2
2
|
* @licstart The following is the entire license notice for the
|
3
3
|
* Javascript code in this page
|
4
4
|
*
|
5
|
-
* Copyright
|
5
|
+
* Copyright 2019 Mozilla Foundation
|
6
6
|
*
|
7
7
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
8
8
|
* you may not use this file except in compliance with the License.
|
@@ -24,11 +24,14 @@
|
|
24
24
|
Object.defineProperty(exports, "__esModule", {
|
25
25
|
value: true
|
26
26
|
});
|
27
|
-
|
28
|
-
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
|
27
|
+
exports.PDFRenderingQueue = exports.RenderingStates = void 0;
|
29
28
|
|
30
29
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
31
30
|
|
31
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
32
|
+
|
33
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
34
|
+
|
32
35
|
var CLEANUP_TIMEOUT = 30000;
|
33
36
|
var RenderingStates = {
|
34
37
|
INITIAL: 0,
|
@@ -36,8 +39,11 @@ var RenderingStates = {
|
|
36
39
|
PAUSED: 2,
|
37
40
|
FINISHED: 3
|
38
41
|
};
|
42
|
+
exports.RenderingStates = RenderingStates;
|
39
43
|
|
40
|
-
var PDFRenderingQueue =
|
44
|
+
var PDFRenderingQueue =
|
45
|
+
/*#__PURE__*/
|
46
|
+
function () {
|
41
47
|
function PDFRenderingQueue() {
|
42
48
|
_classCallCheck(this, PDFRenderingQueue);
|
43
49
|
|
@@ -72,17 +78,21 @@ var PDFRenderingQueue = function () {
|
|
72
78
|
clearTimeout(this.idleTimeout);
|
73
79
|
this.idleTimeout = null;
|
74
80
|
}
|
81
|
+
|
75
82
|
if (this.pdfViewer.forceRendering(currentlyVisiblePages)) {
|
76
83
|
return;
|
77
84
|
}
|
85
|
+
|
78
86
|
if (this.pdfThumbnailViewer && this.isThumbnailViewEnabled) {
|
79
87
|
if (this.pdfThumbnailViewer.forceRendering()) {
|
80
88
|
return;
|
81
89
|
}
|
82
90
|
}
|
91
|
+
|
83
92
|
if (this.printing) {
|
84
93
|
return;
|
85
94
|
}
|
95
|
+
|
86
96
|
if (this.onIdle) {
|
87
97
|
this.idleTimeout = setTimeout(this.onIdle.bind(this), CLEANUP_TIMEOUT);
|
88
98
|
}
|
@@ -92,26 +102,33 @@ var PDFRenderingQueue = function () {
|
|
92
102
|
value: function getHighestPriority(visible, views, scrolledDown) {
|
93
103
|
var visibleViews = visible.views;
|
94
104
|
var numVisible = visibleViews.length;
|
105
|
+
|
95
106
|
if (numVisible === 0) {
|
96
|
-
return
|
107
|
+
return null;
|
97
108
|
}
|
109
|
+
|
98
110
|
for (var i = 0; i < numVisible; ++i) {
|
99
111
|
var view = visibleViews[i].view;
|
112
|
+
|
100
113
|
if (!this.isViewFinished(view)) {
|
101
114
|
return view;
|
102
115
|
}
|
103
116
|
}
|
117
|
+
|
104
118
|
if (scrolledDown) {
|
105
119
|
var nextPageIndex = visible.last.id;
|
120
|
+
|
106
121
|
if (views[nextPageIndex] && !this.isViewFinished(views[nextPageIndex])) {
|
107
122
|
return views[nextPageIndex];
|
108
123
|
}
|
109
124
|
} else {
|
110
125
|
var previousPageIndex = visible.first.id - 2;
|
126
|
+
|
111
127
|
if (views[previousPageIndex] && !this.isViewFinished(views[previousPageIndex])) {
|
112
128
|
return views[previousPageIndex];
|
113
129
|
}
|
114
130
|
}
|
131
|
+
|
115
132
|
return null;
|
116
133
|
}
|
117
134
|
}, {
|
@@ -127,21 +144,24 @@ var PDFRenderingQueue = function () {
|
|
127
144
|
switch (view.renderingState) {
|
128
145
|
case RenderingStates.FINISHED:
|
129
146
|
return false;
|
147
|
+
|
130
148
|
case RenderingStates.PAUSED:
|
131
149
|
this.highestPriorityPage = view.renderingId;
|
132
150
|
view.resume();
|
133
151
|
break;
|
152
|
+
|
134
153
|
case RenderingStates.RUNNING:
|
135
154
|
this.highestPriorityPage = view.renderingId;
|
136
155
|
break;
|
156
|
+
|
137
157
|
case RenderingStates.INITIAL:
|
138
158
|
this.highestPriorityPage = view.renderingId;
|
139
|
-
|
159
|
+
view.draw()["finally"](function () {
|
140
160
|
_this.renderHighestPriority();
|
141
|
-
};
|
142
|
-
view.draw().then(continueRendering, continueRendering);
|
161
|
+
});
|
143
162
|
break;
|
144
163
|
}
|
164
|
+
|
145
165
|
return true;
|
146
166
|
}
|
147
167
|
}]);
|
@@ -149,5 +169,4 @@ var PDFRenderingQueue = function () {
|
|
149
169
|
return PDFRenderingQueue;
|
150
170
|
}();
|
151
171
|
|
152
|
-
exports.RenderingStates = RenderingStates;
|
153
172
|
exports.PDFRenderingQueue = PDFRenderingQueue;
|