pdfjs-dist 2.0.489 → 2.2.228
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 +18515 -11402
- package/build/pdf.js.map +1 -1
- package/build/pdf.min.js +1 -1
- package/build/pdf.worker.js +48266 -37137
- package/build/pdf.worker.js.map +1 -1
- package/build/pdf.worker.min.js +1 -1
- package/external/url/url-lib.js +627 -0
- package/image_decoders/pdf.image_decoders.js +11350 -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 +587 -242
- 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 +400 -152
- package/lib/core/cmap.js +326 -87
- package/lib/core/colorspace.js +874 -594
- package/lib/core/core_utils.js +147 -0
- package/lib/core/crypto.js +290 -45
- package/lib/core/document.js +560 -268
- package/lib/core/encodings.js +19 -10
- package/lib/core/evaluator.js +1005 -360
- package/lib/core/font_renderer.js +331 -97
- package/lib/core/fonts.js +812 -195
- package/lib/core/function.js +284 -71
- package/lib/core/glyphlist.js +4 -3
- package/lib/core/image.js +169 -62
- package/lib/core/image_utils.js +111 -0
- package/lib/core/jbig2.js +479 -66
- package/lib/core/jbig2_stream.js +19 -8
- package/lib/core/jpeg_stream.js +38 -13
- package/lib/core/jpg.js +253 -29
- package/lib/core/jpx.js +396 -6
- 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 +1354 -488
- package/lib/core/operator_list.js +144 -31
- package/lib/core/parser.js +539 -191
- package/lib/core/pattern.js +148 -14
- package/lib/core/pdf_manager.js +323 -133
- package/lib/core/primitives.js +111 -24
- package/lib/core/ps_parser.js +134 -45
- package/lib/core/standard_fonts.js +17 -17
- package/lib/core/stream.js +313 -34
- package/lib/core/type1_parser.js +143 -13
- package/lib/core/unicode.js +32 -5
- package/lib/core/worker.js +217 -190
- package/lib/core/worker_stream.js +277 -0
- package/lib/display/annotation_layer.js +450 -133
- package/lib/display/api.js +1597 -784
- package/lib/display/api_compatibility.js +11 -13
- package/lib/display/canvas.js +360 -44
- package/lib/display/content_disposition.js +83 -32
- package/lib/display/display_utils.js +747 -0
- package/lib/display/fetch_stream.js +221 -90
- 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 +32 -19
- package/lib/display/node_stream.js +367 -175
- package/lib/display/pattern_helper.js +81 -31
- package/lib/display/svg.js +1235 -519
- package/lib/display/text_layer.js +153 -29
- 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 +36 -14
- package/lib/pdf.worker.js +5 -3
- package/lib/shared/compatibility.js +158 -564
- package/lib/shared/global_scope.js +2 -2
- package/lib/shared/is_node.js +4 -4
- package/lib/shared/message_handler.js +521 -0
- package/lib/shared/streams_polyfill.js +21 -17
- package/lib/shared/url_polyfill.js +56 -0
- package/lib/shared/util.js +243 -710
- package/lib/test/unit/annotation_spec.js +870 -401
- package/lib/test/unit/api_spec.js +657 -345
- 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 +10 -8
- 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 +38 -15
- package/lib/test/unit/fetch_stream_spec.js +109 -0
- package/lib/test/unit/function_spec.js +17 -5
- package/lib/test/unit/jasmine-boot.js +33 -20
- package/lib/test/unit/{util_stream_spec.js → message_handler_spec.js} +41 -69
- 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 +19 -54
- package/lib/test/unit/network_utils_spec.js +91 -14
- package/lib/test/unit/node_stream_spec.js +56 -32
- 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 +53 -20
- 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 +8 -6
- package/lib/test/unit/ui_utils_spec.js +454 -16
- 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 +1290 -588
- package/lib/web/app_options.js +100 -62
- package/lib/web/base_viewer.js +511 -182
- package/lib/web/chromecom.js +261 -117
- package/lib/web/debugger.js +166 -22
- package/lib/web/download_manager.js +32 -13
- package/lib/web/firefox_print_service.js +20 -10
- package/lib/web/firefoxcom.js +315 -80
- 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 +170 -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 +138 -77
- package/lib/web/pdf_outline_viewer.js +122 -46
- package/lib/web/pdf_page_view.js +191 -67
- package/lib/web/pdf_presentation_mode.js +99 -34
- package/lib/web/pdf_print_service.js +61 -13
- package/lib/web/pdf_rendering_queue.js +28 -9
- package/lib/web/pdf_sidebar.js +141 -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 +91 -52
- package/lib/web/preferences.js +284 -89
- package/lib/web/secondary_toolbar.js +165 -40
- package/lib/web/text_layer_builder.js +134 -59
- package/lib/web/toolbar.js +78 -43
- package/lib/web/ui_utils.js +462 -136
- package/lib/web/view_history.js +215 -67
- package/lib/web/viewer_compatibility.js +4 -13
- package/package.json +5 -4
- package/web/pdf_viewer.css +79 -11
- package/web/pdf_viewer.js +6107 -3748
- package/web/pdf_viewer.js.map +1 -1
- package/lib/display/dom_utils.js +0 -309
- 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
package/lib/display/api.js
CHANGED
@@ -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,104 +19,166 @@
|
|
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.
|
28
|
-
|
29
|
-
|
27
|
+
exports.getDocument = getDocument;
|
28
|
+
exports.setPDFNetworkStreamFactory = setPDFNetworkStreamFactory;
|
29
|
+
exports.build = exports.version = exports.PDFPageProxy = exports.PDFDocumentProxy = exports.PDFWorker = exports.PDFDataRangeTransport = exports.LoopbackPort = void 0;
|
30
30
|
|
31
|
-
var
|
31
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
32
32
|
|
33
|
-
var _util = require(
|
33
|
+
var _util = require("../shared/util");
|
34
34
|
|
35
|
-
var
|
35
|
+
var _display_utils = require("./display_utils");
|
36
36
|
|
37
|
-
var _font_loader = require(
|
37
|
+
var _font_loader = require("./font_loader");
|
38
38
|
|
39
|
-
var _api_compatibility = require(
|
39
|
+
var _api_compatibility = require("./api_compatibility");
|
40
40
|
|
41
|
-
var _canvas = require(
|
41
|
+
var _canvas = require("./canvas");
|
42
42
|
|
43
|
-
var _global_scope = require(
|
43
|
+
var _global_scope = _interopRequireDefault(require("../shared/global_scope"));
|
44
44
|
|
45
|
-
var
|
45
|
+
var _worker_options = require("./worker_options");
|
46
46
|
|
47
|
-
var
|
47
|
+
var _message_handler = require("../shared/message_handler");
|
48
48
|
|
49
|
-
var _metadata = require(
|
49
|
+
var _metadata = require("./metadata");
|
50
50
|
|
51
|
-
var _transport_stream = require(
|
51
|
+
var _transport_stream = require("./transport_stream");
|
52
52
|
|
53
|
-
var _webgl = require(
|
53
|
+
var _webgl = require("./webgl");
|
54
54
|
|
55
55
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
56
56
|
|
57
|
+
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
58
|
+
|
59
|
+
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
60
|
+
|
61
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); }
|
62
|
+
|
63
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); }
|
64
|
+
|
65
|
+
function _iterableToArrayLimit(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
66
|
+
|
67
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
68
|
+
|
69
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread(); }
|
70
|
+
|
71
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance"); }
|
72
|
+
|
73
|
+
function _iterableToArray(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter); }
|
74
|
+
|
75
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } }
|
76
|
+
|
57
77
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
58
78
|
|
79
|
+
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); } }
|
80
|
+
|
81
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
82
|
+
|
83
|
+
function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
84
|
+
|
59
85
|
var DEFAULT_RANGE_CHUNK_SIZE = 65536;
|
60
86
|
var isWorkerDisabled = false;
|
61
|
-
var
|
62
|
-
var pdfjsFilePath = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : null;
|
87
|
+
var fallbackWorkerSrc;
|
63
88
|
var fakeWorkerFilesLoader = null;
|
64
|
-
var useRequireEnsure = false;
|
65
89
|
{
|
90
|
+
var useRequireEnsure = false;
|
91
|
+
|
66
92
|
if (typeof window === 'undefined') {
|
67
93
|
isWorkerDisabled = true;
|
94
|
+
|
68
95
|
if (typeof require.ensure === 'undefined') {
|
69
96
|
require.ensure = require('node-ensure');
|
70
97
|
}
|
98
|
+
|
71
99
|
useRequireEnsure = true;
|
72
100
|
} else if (typeof require !== 'undefined' && typeof require.ensure === 'function') {
|
73
101
|
useRequireEnsure = true;
|
74
102
|
}
|
103
|
+
|
75
104
|
if (typeof requirejs !== 'undefined' && requirejs.toUrl) {
|
76
|
-
|
105
|
+
fallbackWorkerSrc = requirejs.toUrl('pdfjs-dist/build/pdf.worker.js');
|
77
106
|
}
|
107
|
+
|
78
108
|
var dynamicLoaderSupported = typeof requirejs !== 'undefined' && requirejs.load;
|
79
|
-
fakeWorkerFilesLoader = useRequireEnsure ? function (
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
109
|
+
fakeWorkerFilesLoader = useRequireEnsure ? function () {
|
110
|
+
return new Promise(function (resolve, reject) {
|
111
|
+
require.ensure([], function () {
|
112
|
+
try {
|
113
|
+
var worker;
|
114
|
+
worker = require('../pdf.worker.js');
|
115
|
+
resolve(worker.WorkerMessageHandler);
|
116
|
+
} catch (ex) {
|
117
|
+
reject(ex);
|
118
|
+
}
|
119
|
+
}, reject, 'pdfjsWorker');
|
84
120
|
});
|
85
|
-
} : dynamicLoaderSupported ? function (
|
86
|
-
|
87
|
-
|
121
|
+
} : dynamicLoaderSupported ? function () {
|
122
|
+
return new Promise(function (resolve, reject) {
|
123
|
+
requirejs(['pdfjs-dist/build/pdf.worker'], function (worker) {
|
124
|
+
try {
|
125
|
+
resolve(worker.WorkerMessageHandler);
|
126
|
+
} catch (ex) {
|
127
|
+
reject(ex);
|
128
|
+
}
|
129
|
+
}, reject);
|
88
130
|
});
|
89
131
|
} : null;
|
132
|
+
|
133
|
+
if (!fallbackWorkerSrc && (typeof document === "undefined" ? "undefined" : _typeof(document)) === 'object' && 'currentScript' in document) {
|
134
|
+
var pdfjsFilePath = document.currentScript && document.currentScript.src;
|
135
|
+
|
136
|
+
if (pdfjsFilePath) {
|
137
|
+
fallbackWorkerSrc = pdfjsFilePath.replace(/(\.(?:min\.)?js)(\?.*)?$/i, '.worker$1$2');
|
138
|
+
}
|
139
|
+
}
|
90
140
|
}
|
91
141
|
var createPDFNetworkStream;
|
142
|
+
|
92
143
|
function setPDFNetworkStreamFactory(pdfNetworkStreamFactory) {
|
93
144
|
createPDFNetworkStream = pdfNetworkStreamFactory;
|
94
145
|
}
|
146
|
+
|
95
147
|
function getDocument(src) {
|
96
148
|
var task = new PDFDocumentLoadingTask();
|
97
149
|
var source;
|
150
|
+
|
98
151
|
if (typeof src === 'string') {
|
99
|
-
source = {
|
152
|
+
source = {
|
153
|
+
url: src
|
154
|
+
};
|
100
155
|
} else if ((0, _util.isArrayBuffer)(src)) {
|
101
|
-
source = {
|
156
|
+
source = {
|
157
|
+
data: src
|
158
|
+
};
|
102
159
|
} else if (src instanceof PDFDataRangeTransport) {
|
103
|
-
source = {
|
160
|
+
source = {
|
161
|
+
range: src
|
162
|
+
};
|
104
163
|
} else {
|
105
|
-
if (
|
164
|
+
if (_typeof(src) !== 'object') {
|
106
165
|
throw new Error('Invalid parameter in getDocument, ' + 'need either Uint8Array, string or a parameter object');
|
107
166
|
}
|
167
|
+
|
108
168
|
if (!src.url && !src.data && !src.range) {
|
109
169
|
throw new Error('Invalid parameter object: need either .data, .range or .url');
|
110
170
|
}
|
171
|
+
|
111
172
|
source = src;
|
112
173
|
}
|
174
|
+
|
113
175
|
var params = Object.create(null);
|
114
|
-
var rangeTransport = null
|
115
|
-
|
116
|
-
|
176
|
+
var rangeTransport = null,
|
177
|
+
worker = null;
|
178
|
+
|
117
179
|
for (var key in source) {
|
118
180
|
if (key === 'url' && typeof window !== 'undefined') {
|
119
|
-
params[key] = new URL(source[key], window.location).href;
|
181
|
+
params[key] = new _util.URL(source[key], window.location).href;
|
120
182
|
continue;
|
121
183
|
} else if (key === 'range') {
|
122
184
|
rangeTransport = source[key];
|
@@ -126,79 +188,91 @@ function getDocument(src) {
|
|
126
188
|
continue;
|
127
189
|
} else if (key === 'data' && !(source[key] instanceof Uint8Array)) {
|
128
190
|
var pdfBytes = source[key];
|
191
|
+
|
129
192
|
if (typeof pdfBytes === 'string') {
|
130
193
|
params[key] = (0, _util.stringToBytes)(pdfBytes);
|
131
|
-
} else if (
|
194
|
+
} else if (_typeof(pdfBytes) === 'object' && pdfBytes !== null && !isNaN(pdfBytes.length)) {
|
132
195
|
params[key] = new Uint8Array(pdfBytes);
|
133
196
|
} else if ((0, _util.isArrayBuffer)(pdfBytes)) {
|
134
197
|
params[key] = new Uint8Array(pdfBytes);
|
135
198
|
} else {
|
136
199
|
throw new Error('Invalid PDF binary data: either typed array, ' + 'string or array-like object is expected in the ' + 'data property.');
|
137
200
|
}
|
138
|
-
|
139
|
-
} else if (key === 'CMapReaderFactory') {
|
140
|
-
CMapReaderFactory = source[key];
|
201
|
+
|
141
202
|
continue;
|
142
203
|
}
|
204
|
+
|
143
205
|
params[key] = source[key];
|
144
206
|
}
|
207
|
+
|
145
208
|
params.rangeChunkSize = params.rangeChunkSize || DEFAULT_RANGE_CHUNK_SIZE;
|
209
|
+
params.CMapReaderFactory = params.CMapReaderFactory || _display_utils.DOMCMapReaderFactory;
|
146
210
|
params.ignoreErrors = params.stopAtErrors !== true;
|
147
211
|
params.pdfBug = params.pdfBug === true;
|
148
212
|
var NativeImageDecoderValues = Object.values(_util.NativeImageDecoding);
|
213
|
+
|
149
214
|
if (params.nativeImageDecoderSupport === undefined || !NativeImageDecoderValues.includes(params.nativeImageDecoderSupport)) {
|
150
|
-
params.nativeImageDecoderSupport = _util.NativeImageDecoding.DECODE;
|
215
|
+
params.nativeImageDecoderSupport = _api_compatibility.apiCompatibilityParams.nativeImageDecoderSupport || _util.NativeImageDecoding.DECODE;
|
151
216
|
}
|
217
|
+
|
152
218
|
if (!Number.isInteger(params.maxImageSize)) {
|
153
219
|
params.maxImageSize = -1;
|
154
220
|
}
|
221
|
+
|
155
222
|
if (typeof params.isEvalSupported !== 'boolean') {
|
156
223
|
params.isEvalSupported = true;
|
157
224
|
}
|
225
|
+
|
158
226
|
if (typeof params.disableFontFace !== 'boolean') {
|
159
|
-
params.disableFontFace = false;
|
227
|
+
params.disableFontFace = _api_compatibility.apiCompatibilityParams.disableFontFace || false;
|
160
228
|
}
|
229
|
+
|
161
230
|
if (typeof params.disableRange !== 'boolean') {
|
162
|
-
params.disableRange =
|
231
|
+
params.disableRange = false;
|
163
232
|
}
|
233
|
+
|
164
234
|
if (typeof params.disableStream !== 'boolean') {
|
165
|
-
params.disableStream =
|
235
|
+
params.disableStream = false;
|
166
236
|
}
|
237
|
+
|
167
238
|
if (typeof params.disableAutoFetch !== 'boolean') {
|
168
239
|
params.disableAutoFetch = false;
|
169
240
|
}
|
241
|
+
|
170
242
|
if (typeof params.disableCreateObjectURL !== 'boolean') {
|
171
243
|
params.disableCreateObjectURL = _api_compatibility.apiCompatibilityParams.disableCreateObjectURL || false;
|
172
244
|
}
|
245
|
+
|
173
246
|
(0, _util.setVerbosityLevel)(params.verbosity);
|
247
|
+
|
174
248
|
if (!worker) {
|
175
249
|
var workerParams = {
|
176
250
|
postMessageTransfers: params.postMessageTransfers,
|
177
|
-
verbosity: params.verbosity
|
251
|
+
verbosity: params.verbosity,
|
252
|
+
port: _worker_options.GlobalWorkerOptions.workerPort
|
178
253
|
};
|
179
|
-
|
180
|
-
if (workerPort) {
|
181
|
-
workerParams.port = workerPort;
|
182
|
-
worker = PDFWorker.fromPort(workerParams);
|
183
|
-
} else {
|
184
|
-
worker = new PDFWorker(workerParams);
|
185
|
-
}
|
254
|
+
worker = workerParams.port ? PDFWorker.fromPort(workerParams) : new PDFWorker(workerParams);
|
186
255
|
task._worker = worker;
|
187
256
|
}
|
257
|
+
|
188
258
|
var docId = task.docId;
|
189
259
|
worker.promise.then(function () {
|
190
260
|
if (task.destroyed) {
|
191
261
|
throw new Error('Loading aborted');
|
192
262
|
}
|
263
|
+
|
193
264
|
return _fetchDocument(worker, params, rangeTransport, docId).then(function (workerId) {
|
194
265
|
if (task.destroyed) {
|
195
266
|
throw new Error('Loading aborted');
|
196
267
|
}
|
197
|
-
|
268
|
+
|
269
|
+
var networkStream;
|
270
|
+
|
198
271
|
if (rangeTransport) {
|
199
272
|
networkStream = new _transport_stream.PDFDataTransportStream({
|
200
273
|
length: params.length,
|
201
274
|
initialData: params.initialData,
|
275
|
+
progressiveDone: params.progressiveDone,
|
202
276
|
disableRange: params.disableRange,
|
203
277
|
disableStream: params.disableStream
|
204
278
|
}, rangeTransport);
|
@@ -213,26 +287,31 @@ function getDocument(src) {
|
|
213
287
|
disableStream: params.disableStream
|
214
288
|
});
|
215
289
|
}
|
216
|
-
|
290
|
+
|
291
|
+
var messageHandler = new _message_handler.MessageHandler(docId, workerId, worker.port);
|
217
292
|
messageHandler.postMessageTransfers = worker.postMessageTransfers;
|
218
|
-
var transport = new WorkerTransport(messageHandler, task, networkStream, params
|
293
|
+
var transport = new WorkerTransport(messageHandler, task, networkStream, params);
|
219
294
|
task._transport = transport;
|
220
295
|
messageHandler.send('Ready', null);
|
221
296
|
});
|
222
|
-
})
|
297
|
+
})["catch"](task._capability.reject);
|
223
298
|
return task;
|
224
299
|
}
|
300
|
+
|
225
301
|
function _fetchDocument(worker, source, pdfDataRangeTransport, docId) {
|
226
302
|
if (worker.destroyed) {
|
227
303
|
return Promise.reject(new Error('Worker was destroyed'));
|
228
304
|
}
|
305
|
+
|
229
306
|
if (pdfDataRangeTransport) {
|
230
307
|
source.length = pdfDataRangeTransport.length;
|
231
308
|
source.initialData = pdfDataRangeTransport.initialData;
|
309
|
+
source.progressiveDone = pdfDataRangeTransport.progressiveDone;
|
232
310
|
}
|
311
|
+
|
233
312
|
return worker.messageHandler.sendWithPromise('GetDocRequest', {
|
234
313
|
docId: docId,
|
235
|
-
apiVersion: '2.
|
314
|
+
apiVersion: '2.2.228',
|
236
315
|
source: {
|
237
316
|
data: source.data,
|
238
317
|
url: source.url,
|
@@ -253,175 +332,388 @@ function _fetchDocument(worker, source, pdfDataRangeTransport, docId) {
|
|
253
332
|
if (worker.destroyed) {
|
254
333
|
throw new Error('Worker was destroyed');
|
255
334
|
}
|
335
|
+
|
256
336
|
return workerId;
|
257
337
|
});
|
258
338
|
}
|
339
|
+
|
259
340
|
var PDFDocumentLoadingTask = function PDFDocumentLoadingTaskClosure() {
|
260
341
|
var nextDocumentId = 0;
|
261
|
-
function PDFDocumentLoadingTask() {
|
262
|
-
this._capability = (0, _util.createPromiseCapability)();
|
263
|
-
this._transport = null;
|
264
|
-
this._worker = null;
|
265
|
-
this.docId = 'd' + nextDocumentId++;
|
266
|
-
this.destroyed = false;
|
267
|
-
this.onPassword = null;
|
268
|
-
this.onProgress = null;
|
269
|
-
this.onUnsupportedFeature = null;
|
270
|
-
}
|
271
|
-
PDFDocumentLoadingTask.prototype = {
|
272
|
-
get promise() {
|
273
|
-
return this._capability.promise;
|
274
|
-
},
|
275
|
-
destroy: function destroy() {
|
276
|
-
var _this = this;
|
277
342
|
|
278
|
-
|
279
|
-
|
280
|
-
|
281
|
-
|
282
|
-
|
283
|
-
_this._worker.destroy();
|
284
|
-
_this._worker = null;
|
285
|
-
}
|
286
|
-
});
|
287
|
-
},
|
343
|
+
var PDFDocumentLoadingTask =
|
344
|
+
/*#__PURE__*/
|
345
|
+
function () {
|
346
|
+
function PDFDocumentLoadingTask() {
|
347
|
+
_classCallCheck(this, PDFDocumentLoadingTask);
|
288
348
|
|
289
|
-
|
290
|
-
|
349
|
+
this._capability = (0, _util.createPromiseCapability)();
|
350
|
+
this._transport = null;
|
351
|
+
this._worker = null;
|
352
|
+
this.docId = 'd' + nextDocumentId++;
|
353
|
+
this.destroyed = false;
|
354
|
+
this.onPassword = null;
|
355
|
+
this.onProgress = null;
|
356
|
+
this.onUnsupportedFeature = null;
|
291
357
|
}
|
292
|
-
|
358
|
+
|
359
|
+
_createClass(PDFDocumentLoadingTask, [{
|
360
|
+
key: "destroy",
|
361
|
+
value: function destroy() {
|
362
|
+
var _this = this;
|
363
|
+
|
364
|
+
this.destroyed = true;
|
365
|
+
var transportDestroyed = !this._transport ? Promise.resolve() : this._transport.destroy();
|
366
|
+
return transportDestroyed.then(function () {
|
367
|
+
_this._transport = null;
|
368
|
+
|
369
|
+
if (_this._worker) {
|
370
|
+
_this._worker.destroy();
|
371
|
+
|
372
|
+
_this._worker = null;
|
373
|
+
}
|
374
|
+
});
|
375
|
+
}
|
376
|
+
}, {
|
377
|
+
key: "then",
|
378
|
+
value: function then(onFulfilled, onRejected) {
|
379
|
+
(0, _display_utils.deprecated)('PDFDocumentLoadingTask.then method, ' + 'use the `promise` getter instead.');
|
380
|
+
return this.promise.then.apply(this.promise, arguments);
|
381
|
+
}
|
382
|
+
}, {
|
383
|
+
key: "promise",
|
384
|
+
get: function get() {
|
385
|
+
return this._capability.promise;
|
386
|
+
}
|
387
|
+
}]);
|
388
|
+
|
389
|
+
return PDFDocumentLoadingTask;
|
390
|
+
}();
|
391
|
+
|
293
392
|
return PDFDocumentLoadingTask;
|
294
393
|
}();
|
295
|
-
|
394
|
+
|
395
|
+
var PDFDataRangeTransport =
|
396
|
+
/*#__PURE__*/
|
397
|
+
function () {
|
296
398
|
function PDFDataRangeTransport(length, initialData) {
|
399
|
+
var progressiveDone = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
400
|
+
|
401
|
+
_classCallCheck(this, PDFDataRangeTransport);
|
402
|
+
|
297
403
|
this.length = length;
|
298
404
|
this.initialData = initialData;
|
405
|
+
this.progressiveDone = progressiveDone;
|
299
406
|
this._rangeListeners = [];
|
300
407
|
this._progressListeners = [];
|
301
408
|
this._progressiveReadListeners = [];
|
409
|
+
this._progressiveDoneListeners = [];
|
302
410
|
this._readyCapability = (0, _util.createPromiseCapability)();
|
303
411
|
}
|
304
|
-
|
305
|
-
|
412
|
+
|
413
|
+
_createClass(PDFDataRangeTransport, [{
|
414
|
+
key: "addRangeListener",
|
415
|
+
value: function addRangeListener(listener) {
|
306
416
|
this._rangeListeners.push(listener);
|
307
|
-
}
|
308
|
-
|
417
|
+
}
|
418
|
+
}, {
|
419
|
+
key: "addProgressListener",
|
420
|
+
value: function addProgressListener(listener) {
|
309
421
|
this._progressListeners.push(listener);
|
310
|
-
}
|
311
|
-
|
422
|
+
}
|
423
|
+
}, {
|
424
|
+
key: "addProgressiveReadListener",
|
425
|
+
value: function addProgressiveReadListener(listener) {
|
312
426
|
this._progressiveReadListeners.push(listener);
|
313
|
-
}
|
314
|
-
|
315
|
-
|
316
|
-
|
317
|
-
|
427
|
+
}
|
428
|
+
}, {
|
429
|
+
key: "addProgressiveDoneListener",
|
430
|
+
value: function addProgressiveDoneListener(listener) {
|
431
|
+
this._progressiveDoneListeners.push(listener);
|
432
|
+
}
|
433
|
+
}, {
|
434
|
+
key: "onDataRange",
|
435
|
+
value: function onDataRange(begin, chunk) {
|
436
|
+
var _iteratorNormalCompletion = true;
|
437
|
+
var _didIteratorError = false;
|
438
|
+
var _iteratorError = undefined;
|
439
|
+
|
440
|
+
try {
|
441
|
+
for (var _iterator = this._rangeListeners[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
442
|
+
var listener = _step.value;
|
443
|
+
listener(begin, chunk);
|
444
|
+
}
|
445
|
+
} catch (err) {
|
446
|
+
_didIteratorError = true;
|
447
|
+
_iteratorError = err;
|
448
|
+
} finally {
|
449
|
+
try {
|
450
|
+
if (!_iteratorNormalCompletion && _iterator["return"] != null) {
|
451
|
+
_iterator["return"]();
|
452
|
+
}
|
453
|
+
} finally {
|
454
|
+
if (_didIteratorError) {
|
455
|
+
throw _iteratorError;
|
456
|
+
}
|
457
|
+
}
|
318
458
|
}
|
319
|
-
}
|
320
|
-
|
459
|
+
}
|
460
|
+
}, {
|
461
|
+
key: "onDataProgress",
|
462
|
+
value: function onDataProgress(loaded, total) {
|
321
463
|
var _this2 = this;
|
322
464
|
|
323
465
|
this._readyCapability.promise.then(function () {
|
324
|
-
var
|
325
|
-
|
326
|
-
|
466
|
+
var _iteratorNormalCompletion2 = true;
|
467
|
+
var _didIteratorError2 = false;
|
468
|
+
var _iteratorError2 = undefined;
|
469
|
+
|
470
|
+
try {
|
471
|
+
for (var _iterator2 = _this2._progressListeners[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
|
472
|
+
var listener = _step2.value;
|
473
|
+
listener(loaded, total);
|
474
|
+
}
|
475
|
+
} catch (err) {
|
476
|
+
_didIteratorError2 = true;
|
477
|
+
_iteratorError2 = err;
|
478
|
+
} finally {
|
479
|
+
try {
|
480
|
+
if (!_iteratorNormalCompletion2 && _iterator2["return"] != null) {
|
481
|
+
_iterator2["return"]();
|
482
|
+
}
|
483
|
+
} finally {
|
484
|
+
if (_didIteratorError2) {
|
485
|
+
throw _iteratorError2;
|
486
|
+
}
|
487
|
+
}
|
327
488
|
}
|
328
489
|
});
|
329
|
-
}
|
330
|
-
|
490
|
+
}
|
491
|
+
}, {
|
492
|
+
key: "onDataProgressiveRead",
|
493
|
+
value: function onDataProgressiveRead(chunk) {
|
331
494
|
var _this3 = this;
|
332
495
|
|
333
496
|
this._readyCapability.promise.then(function () {
|
334
|
-
var
|
335
|
-
|
336
|
-
|
497
|
+
var _iteratorNormalCompletion3 = true;
|
498
|
+
var _didIteratorError3 = false;
|
499
|
+
var _iteratorError3 = undefined;
|
500
|
+
|
501
|
+
try {
|
502
|
+
for (var _iterator3 = _this3._progressiveReadListeners[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {
|
503
|
+
var listener = _step3.value;
|
504
|
+
listener(chunk);
|
505
|
+
}
|
506
|
+
} catch (err) {
|
507
|
+
_didIteratorError3 = true;
|
508
|
+
_iteratorError3 = err;
|
509
|
+
} finally {
|
510
|
+
try {
|
511
|
+
if (!_iteratorNormalCompletion3 && _iterator3["return"] != null) {
|
512
|
+
_iterator3["return"]();
|
513
|
+
}
|
514
|
+
} finally {
|
515
|
+
if (_didIteratorError3) {
|
516
|
+
throw _iteratorError3;
|
517
|
+
}
|
518
|
+
}
|
337
519
|
}
|
338
520
|
});
|
339
|
-
}
|
340
|
-
|
521
|
+
}
|
522
|
+
}, {
|
523
|
+
key: "onDataProgressiveDone",
|
524
|
+
value: function onDataProgressiveDone() {
|
525
|
+
var _this4 = this;
|
526
|
+
|
527
|
+
this._readyCapability.promise.then(function () {
|
528
|
+
var _iteratorNormalCompletion4 = true;
|
529
|
+
var _didIteratorError4 = false;
|
530
|
+
var _iteratorError4 = undefined;
|
531
|
+
|
532
|
+
try {
|
533
|
+
for (var _iterator4 = _this4._progressiveDoneListeners[Symbol.iterator](), _step4; !(_iteratorNormalCompletion4 = (_step4 = _iterator4.next()).done); _iteratorNormalCompletion4 = true) {
|
534
|
+
var listener = _step4.value;
|
535
|
+
listener();
|
536
|
+
}
|
537
|
+
} catch (err) {
|
538
|
+
_didIteratorError4 = true;
|
539
|
+
_iteratorError4 = err;
|
540
|
+
} finally {
|
541
|
+
try {
|
542
|
+
if (!_iteratorNormalCompletion4 && _iterator4["return"] != null) {
|
543
|
+
_iterator4["return"]();
|
544
|
+
}
|
545
|
+
} finally {
|
546
|
+
if (_didIteratorError4) {
|
547
|
+
throw _iteratorError4;
|
548
|
+
}
|
549
|
+
}
|
550
|
+
}
|
551
|
+
});
|
552
|
+
}
|
553
|
+
}, {
|
554
|
+
key: "transportReady",
|
555
|
+
value: function transportReady() {
|
341
556
|
this._readyCapability.resolve();
|
342
|
-
}
|
343
|
-
|
557
|
+
}
|
558
|
+
}, {
|
559
|
+
key: "requestDataRange",
|
560
|
+
value: function requestDataRange(begin, end) {
|
344
561
|
(0, _util.unreachable)('Abstract method PDFDataRangeTransport.requestDataRange');
|
345
|
-
}
|
346
|
-
|
347
|
-
|
562
|
+
}
|
563
|
+
}, {
|
564
|
+
key: "abort",
|
565
|
+
value: function abort() {}
|
566
|
+
}]);
|
567
|
+
|
348
568
|
return PDFDataRangeTransport;
|
349
569
|
}();
|
350
|
-
var PDFDocumentProxy = function PDFDocumentProxyClosure() {
|
351
|
-
function PDFDocumentProxy(pdfInfo, transport, loadingTask) {
|
352
|
-
this.pdfInfo = pdfInfo;
|
353
|
-
this.transport = transport;
|
354
|
-
this.loadingTask = loadingTask;
|
355
|
-
}
|
356
|
-
PDFDocumentProxy.prototype = {
|
357
|
-
get numPages() {
|
358
|
-
return this.pdfInfo.numPages;
|
359
|
-
},
|
360
|
-
get fingerprint() {
|
361
|
-
return this.pdfInfo.fingerprint;
|
362
|
-
},
|
363
|
-
getPage: function getPage(pageNumber) {
|
364
|
-
return this.transport.getPage(pageNumber);
|
365
|
-
},
|
366
570
|
|
367
|
-
|
368
|
-
return this.transport.getPageIndex(ref);
|
369
|
-
},
|
370
|
-
getDestinations: function PDFDocumentProxy_getDestinations() {
|
371
|
-
return this.transport.getDestinations();
|
372
|
-
},
|
373
|
-
getDestination: function PDFDocumentProxy_getDestination(id) {
|
374
|
-
return this.transport.getDestination(id);
|
375
|
-
},
|
376
|
-
getPageLabels: function PDFDocumentProxy_getPageLabels() {
|
377
|
-
return this.transport.getPageLabels();
|
378
|
-
},
|
379
|
-
getPageMode: function getPageMode() {
|
380
|
-
return this.transport.getPageMode();
|
381
|
-
},
|
571
|
+
exports.PDFDataRangeTransport = PDFDataRangeTransport;
|
382
572
|
|
383
|
-
|
384
|
-
|
385
|
-
|
386
|
-
|
387
|
-
|
388
|
-
},
|
573
|
+
var PDFDocumentProxy =
|
574
|
+
/*#__PURE__*/
|
575
|
+
function () {
|
576
|
+
function PDFDocumentProxy(pdfInfo, transport) {
|
577
|
+
_classCallCheck(this, PDFDocumentProxy);
|
389
578
|
|
390
|
-
|
391
|
-
|
392
|
-
|
393
|
-
|
394
|
-
|
395
|
-
|
396
|
-
|
397
|
-
return this.
|
398
|
-
}
|
399
|
-
|
400
|
-
|
401
|
-
|
402
|
-
|
403
|
-
|
404
|
-
|
405
|
-
|
406
|
-
|
407
|
-
|
408
|
-
|
579
|
+
this._pdfInfo = pdfInfo;
|
580
|
+
this._transport = transport;
|
581
|
+
}
|
582
|
+
|
583
|
+
_createClass(PDFDocumentProxy, [{
|
584
|
+
key: "getPage",
|
585
|
+
value: function getPage(pageNumber) {
|
586
|
+
return this._transport.getPage(pageNumber);
|
587
|
+
}
|
588
|
+
}, {
|
589
|
+
key: "getPageIndex",
|
590
|
+
value: function getPageIndex(ref) {
|
591
|
+
return this._transport.getPageIndex(ref);
|
592
|
+
}
|
593
|
+
}, {
|
594
|
+
key: "getDestinations",
|
595
|
+
value: function getDestinations() {
|
596
|
+
return this._transport.getDestinations();
|
597
|
+
}
|
598
|
+
}, {
|
599
|
+
key: "getDestination",
|
600
|
+
value: function getDestination(id) {
|
601
|
+
return this._transport.getDestination(id);
|
602
|
+
}
|
603
|
+
}, {
|
604
|
+
key: "getPageLabels",
|
605
|
+
value: function getPageLabels() {
|
606
|
+
return this._transport.getPageLabels();
|
607
|
+
}
|
608
|
+
}, {
|
609
|
+
key: "getPageLayout",
|
610
|
+
value: function getPageLayout() {
|
611
|
+
return this._transport.getPageLayout();
|
612
|
+
}
|
613
|
+
}, {
|
614
|
+
key: "getPageMode",
|
615
|
+
value: function getPageMode() {
|
616
|
+
return this._transport.getPageMode();
|
617
|
+
}
|
618
|
+
}, {
|
619
|
+
key: "getViewerPreferences",
|
620
|
+
value: function getViewerPreferences() {
|
621
|
+
return this._transport.getViewerPreferences();
|
622
|
+
}
|
623
|
+
}, {
|
624
|
+
key: "getOpenActionDestination",
|
625
|
+
value: function getOpenActionDestination() {
|
626
|
+
return this._transport.getOpenActionDestination();
|
627
|
+
}
|
628
|
+
}, {
|
629
|
+
key: "getAttachments",
|
630
|
+
value: function getAttachments() {
|
631
|
+
return this._transport.getAttachments();
|
632
|
+
}
|
633
|
+
}, {
|
634
|
+
key: "getJavaScript",
|
635
|
+
value: function getJavaScript() {
|
636
|
+
return this._transport.getJavaScript();
|
637
|
+
}
|
638
|
+
}, {
|
639
|
+
key: "getOutline",
|
640
|
+
value: function getOutline() {
|
641
|
+
return this._transport.getOutline();
|
642
|
+
}
|
643
|
+
}, {
|
644
|
+
key: "getPermissions",
|
645
|
+
value: function getPermissions() {
|
646
|
+
return this._transport.getPermissions();
|
647
|
+
}
|
648
|
+
}, {
|
649
|
+
key: "getMetadata",
|
650
|
+
value: function getMetadata() {
|
651
|
+
return this._transport.getMetadata();
|
652
|
+
}
|
653
|
+
}, {
|
654
|
+
key: "getData",
|
655
|
+
value: function getData() {
|
656
|
+
return this._transport.getData();
|
657
|
+
}
|
658
|
+
}, {
|
659
|
+
key: "getDownloadInfo",
|
660
|
+
value: function getDownloadInfo() {
|
661
|
+
return this._transport.downloadInfoCapability.promise;
|
662
|
+
}
|
663
|
+
}, {
|
664
|
+
key: "getStats",
|
665
|
+
value: function getStats() {
|
666
|
+
return this._transport.getStats();
|
667
|
+
}
|
668
|
+
}, {
|
669
|
+
key: "cleanup",
|
670
|
+
value: function cleanup() {
|
671
|
+
this._transport.startCleanup();
|
672
|
+
}
|
673
|
+
}, {
|
674
|
+
key: "destroy",
|
675
|
+
value: function destroy() {
|
409
676
|
return this.loadingTask.destroy();
|
410
|
-
},
|
411
|
-
get loadingParams() {
|
412
|
-
return this.transport.loadingParams;
|
413
677
|
}
|
414
|
-
}
|
678
|
+
}, {
|
679
|
+
key: "numPages",
|
680
|
+
get: function get() {
|
681
|
+
return this._pdfInfo.numPages;
|
682
|
+
}
|
683
|
+
}, {
|
684
|
+
key: "fingerprint",
|
685
|
+
get: function get() {
|
686
|
+
return this._pdfInfo.fingerprint;
|
687
|
+
}
|
688
|
+
}, {
|
689
|
+
key: "loadingParams",
|
690
|
+
get: function get() {
|
691
|
+
return this._transport.loadingParams;
|
692
|
+
}
|
693
|
+
}, {
|
694
|
+
key: "loadingTask",
|
695
|
+
get: function get() {
|
696
|
+
return this._transport.loadingTask;
|
697
|
+
}
|
698
|
+
}]);
|
699
|
+
|
415
700
|
return PDFDocumentProxy;
|
416
701
|
}();
|
417
|
-
|
702
|
+
|
703
|
+
exports.PDFDocumentProxy = PDFDocumentProxy;
|
704
|
+
|
705
|
+
var PDFPageProxy =
|
706
|
+
/*#__PURE__*/
|
707
|
+
function () {
|
418
708
|
function PDFPageProxy(pageIndex, pageInfo, transport) {
|
419
709
|
var pdfBug = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
|
420
710
|
|
711
|
+
_classCallCheck(this, PDFPageProxy);
|
712
|
+
|
421
713
|
this.pageIndex = pageIndex;
|
422
|
-
this.
|
423
|
-
this.
|
424
|
-
this._stats = pdfBug ? new
|
714
|
+
this._pageInfo = pageInfo;
|
715
|
+
this._transport = transport;
|
716
|
+
this._stats = pdfBug ? new _display_utils.StatTimer() : _display_utils.DummyStatTimer;
|
425
717
|
this._pdfBug = pdfBug;
|
426
718
|
this.commonObjs = transport.commonObjs;
|
427
719
|
this.objs = new PDFObjects();
|
@@ -430,50 +722,81 @@ var PDFPageProxy = function PDFPageProxyClosure() {
|
|
430
722
|
this.intentStates = Object.create(null);
|
431
723
|
this.destroyed = false;
|
432
724
|
}
|
433
|
-
PDFPageProxy.prototype = {
|
434
|
-
get pageNumber() {
|
435
|
-
return this.pageIndex + 1;
|
436
|
-
},
|
437
|
-
get rotate() {
|
438
|
-
return this.pageInfo.rotate;
|
439
|
-
},
|
440
|
-
get ref() {
|
441
|
-
return this.pageInfo.ref;
|
442
|
-
},
|
443
|
-
get userUnit() {
|
444
|
-
return this.pageInfo.userUnit;
|
445
|
-
},
|
446
|
-
get view() {
|
447
|
-
return this.pageInfo.view;
|
448
|
-
},
|
449
|
-
getViewport: function getViewport(scale) {
|
450
|
-
var rotate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.rotate;
|
451
|
-
var dontFlip = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
452
725
|
|
453
|
-
|
454
|
-
|
726
|
+
_createClass(PDFPageProxy, [{
|
727
|
+
key: "getViewport",
|
728
|
+
value: function getViewport() {
|
729
|
+
var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
|
730
|
+
scale = _ref.scale,
|
731
|
+
_ref$rotation = _ref.rotation,
|
732
|
+
rotation = _ref$rotation === void 0 ? this.rotate : _ref$rotation,
|
733
|
+
_ref$dontFlip = _ref.dontFlip,
|
734
|
+
dontFlip = _ref$dontFlip === void 0 ? false : _ref$dontFlip;
|
735
|
+
|
736
|
+
if (arguments.length > 1 || typeof arguments[0] === 'number') {
|
737
|
+
(0, _display_utils.deprecated)('getViewport is called with obsolete arguments.');
|
738
|
+
scale = arguments[0];
|
739
|
+
rotation = typeof arguments[1] === 'number' ? arguments[1] : this.rotate;
|
740
|
+
dontFlip = typeof arguments[2] === 'boolean' ? arguments[2] : false;
|
741
|
+
}
|
742
|
+
|
743
|
+
return new _display_utils.PageViewport({
|
744
|
+
viewBox: this.view,
|
745
|
+
scale: scale,
|
746
|
+
rotation: rotation,
|
747
|
+
dontFlip: dontFlip
|
748
|
+
});
|
749
|
+
}
|
750
|
+
}, {
|
751
|
+
key: "getAnnotations",
|
752
|
+
value: function getAnnotations() {
|
753
|
+
var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
|
754
|
+
_ref2$intent = _ref2.intent,
|
755
|
+
intent = _ref2$intent === void 0 ? null : _ref2$intent;
|
455
756
|
|
456
|
-
getAnnotations: function PDFPageProxy_getAnnotations(params) {
|
457
|
-
var intent = params && params.intent || null;
|
458
757
|
if (!this.annotationsPromise || this.annotationsIntent !== intent) {
|
459
|
-
this.annotationsPromise = this.
|
758
|
+
this.annotationsPromise = this._transport.getAnnotations(this.pageIndex, intent);
|
460
759
|
this.annotationsIntent = intent;
|
461
760
|
}
|
761
|
+
|
462
762
|
return this.annotationsPromise;
|
463
|
-
}
|
464
|
-
|
465
|
-
|
763
|
+
}
|
764
|
+
}, {
|
765
|
+
key: "render",
|
766
|
+
value: function render(_ref3) {
|
767
|
+
var _this5 = this;
|
466
768
|
|
769
|
+
var canvasContext = _ref3.canvasContext,
|
770
|
+
viewport = _ref3.viewport,
|
771
|
+
_ref3$intent = _ref3.intent,
|
772
|
+
intent = _ref3$intent === void 0 ? 'display' : _ref3$intent,
|
773
|
+
_ref3$enableWebGL = _ref3.enableWebGL,
|
774
|
+
enableWebGL = _ref3$enableWebGL === void 0 ? false : _ref3$enableWebGL,
|
775
|
+
_ref3$renderInteracti = _ref3.renderInteractiveForms,
|
776
|
+
renderInteractiveForms = _ref3$renderInteracti === void 0 ? false : _ref3$renderInteracti,
|
777
|
+
_ref3$transform = _ref3.transform,
|
778
|
+
transform = _ref3$transform === void 0 ? null : _ref3$transform,
|
779
|
+
_ref3$imageLayer = _ref3.imageLayer,
|
780
|
+
imageLayer = _ref3$imageLayer === void 0 ? null : _ref3$imageLayer,
|
781
|
+
_ref3$canvasFactory = _ref3.canvasFactory,
|
782
|
+
canvasFactory = _ref3$canvasFactory === void 0 ? null : _ref3$canvasFactory,
|
783
|
+
_ref3$background = _ref3.background,
|
784
|
+
background = _ref3$background === void 0 ? null : _ref3$background;
|
467
785
|
var stats = this._stats;
|
468
786
|
stats.time('Overall');
|
469
787
|
this.pendingCleanup = false;
|
470
|
-
var renderingIntent =
|
471
|
-
var
|
472
|
-
var webGLContext = new _webgl.WebGLContext({
|
788
|
+
var renderingIntent = intent === 'print' ? 'print' : 'display';
|
789
|
+
var canvasFactoryInstance = canvasFactory || new _display_utils.DOMCanvasFactory();
|
790
|
+
var webGLContext = new _webgl.WebGLContext({
|
791
|
+
enable: enableWebGL
|
792
|
+
});
|
793
|
+
|
473
794
|
if (!this.intentStates[renderingIntent]) {
|
474
795
|
this.intentStates[renderingIntent] = Object.create(null);
|
475
796
|
}
|
797
|
+
|
476
798
|
var intentState = this.intentStates[renderingIntent];
|
799
|
+
|
477
800
|
if (!intentState.displayReadyCapability) {
|
478
801
|
intentState.receivingOperatorList = true;
|
479
802
|
intentState.displayReadyCapability = (0, _util.createPromiseCapability)();
|
@@ -483,63 +806,97 @@ var PDFPageProxy = function PDFPageProxyClosure() {
|
|
483
806
|
lastChunk: false
|
484
807
|
};
|
485
808
|
stats.time('Page Request');
|
486
|
-
|
809
|
+
|
810
|
+
this._transport.messageHandler.send('RenderPageRequest', {
|
487
811
|
pageIndex: this.pageNumber - 1,
|
488
812
|
intent: renderingIntent,
|
489
|
-
renderInteractiveForms:
|
813
|
+
renderInteractiveForms: renderInteractiveForms === true
|
490
814
|
});
|
491
815
|
}
|
816
|
+
|
492
817
|
var complete = function complete(error) {
|
493
818
|
var i = intentState.renderTasks.indexOf(internalRenderTask);
|
819
|
+
|
494
820
|
if (i >= 0) {
|
495
821
|
intentState.renderTasks.splice(i, 1);
|
496
822
|
}
|
497
|
-
|
498
|
-
|
823
|
+
|
824
|
+
if (_this5.cleanupAfterRender || renderingIntent === 'print') {
|
825
|
+
_this5.pendingCleanup = true;
|
499
826
|
}
|
500
|
-
|
827
|
+
|
828
|
+
_this5._tryCleanup();
|
829
|
+
|
501
830
|
if (error) {
|
502
831
|
internalRenderTask.capability.reject(error);
|
503
832
|
} else {
|
504
833
|
internalRenderTask.capability.resolve();
|
505
834
|
}
|
835
|
+
|
506
836
|
stats.timeEnd('Rendering');
|
507
837
|
stats.timeEnd('Overall');
|
508
838
|
};
|
509
|
-
|
510
|
-
internalRenderTask
|
839
|
+
|
840
|
+
var internalRenderTask = new InternalRenderTask({
|
841
|
+
callback: complete,
|
842
|
+
params: {
|
843
|
+
canvasContext: canvasContext,
|
844
|
+
viewport: viewport,
|
845
|
+
transform: transform,
|
846
|
+
imageLayer: imageLayer,
|
847
|
+
background: background
|
848
|
+
},
|
849
|
+
objs: this.objs,
|
850
|
+
commonObjs: this.commonObjs,
|
851
|
+
operatorList: intentState.operatorList,
|
852
|
+
pageNumber: this.pageNumber,
|
853
|
+
canvasFactory: canvasFactoryInstance,
|
854
|
+
webGLContext: webGLContext,
|
855
|
+
useRequestAnimationFrame: renderingIntent !== 'print',
|
856
|
+
pdfBug: this._pdfBug
|
857
|
+
});
|
858
|
+
|
511
859
|
if (!intentState.renderTasks) {
|
512
860
|
intentState.renderTasks = [];
|
513
861
|
}
|
862
|
+
|
514
863
|
intentState.renderTasks.push(internalRenderTask);
|
515
864
|
var renderTask = internalRenderTask.task;
|
516
865
|
intentState.displayReadyCapability.promise.then(function (transparency) {
|
517
|
-
if (
|
866
|
+
if (_this5.pendingCleanup) {
|
518
867
|
complete();
|
519
868
|
return;
|
520
869
|
}
|
870
|
+
|
521
871
|
stats.time('Rendering');
|
522
872
|
internalRenderTask.initializeGraphics(transparency);
|
523
873
|
internalRenderTask.operatorListChanged();
|
524
|
-
})
|
874
|
+
})["catch"](complete);
|
525
875
|
return renderTask;
|
526
|
-
}
|
527
|
-
|
876
|
+
}
|
877
|
+
}, {
|
878
|
+
key: "getOperatorList",
|
879
|
+
value: function getOperatorList() {
|
528
880
|
function operatorListChanged() {
|
529
881
|
if (intentState.operatorList.lastChunk) {
|
530
882
|
intentState.opListReadCapability.resolve(intentState.operatorList);
|
531
883
|
var i = intentState.renderTasks.indexOf(opListTask);
|
884
|
+
|
532
885
|
if (i >= 0) {
|
533
886
|
intentState.renderTasks.splice(i, 1);
|
534
887
|
}
|
535
888
|
}
|
536
889
|
}
|
890
|
+
|
537
891
|
var renderingIntent = 'oplist';
|
892
|
+
|
538
893
|
if (!this.intentStates[renderingIntent]) {
|
539
894
|
this.intentStates[renderingIntent] = Object.create(null);
|
540
895
|
}
|
896
|
+
|
541
897
|
var intentState = this.intentStates[renderingIntent];
|
542
898
|
var opListTask;
|
899
|
+
|
543
900
|
if (!intentState.opListReadCapability) {
|
544
901
|
opListTask = {};
|
545
902
|
opListTask.operatorListChanged = operatorListChanged;
|
@@ -552,47 +909,64 @@ var PDFPageProxy = function PDFPageProxyClosure() {
|
|
552
909
|
argsArray: [],
|
553
910
|
lastChunk: false
|
554
911
|
};
|
555
|
-
|
912
|
+
|
913
|
+
this._stats.time('Page Request');
|
914
|
+
|
915
|
+
this._transport.messageHandler.send('RenderPageRequest', {
|
556
916
|
pageIndex: this.pageIndex,
|
557
917
|
intent: renderingIntent
|
558
918
|
});
|
559
919
|
}
|
920
|
+
|
560
921
|
return intentState.opListReadCapability.promise;
|
561
|
-
}
|
562
|
-
|
563
|
-
|
922
|
+
}
|
923
|
+
}, {
|
924
|
+
key: "streamTextContent",
|
925
|
+
value: function streamTextContent() {
|
926
|
+
var _ref4 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
|
927
|
+
_ref4$normalizeWhites = _ref4.normalizeWhitespace,
|
928
|
+
normalizeWhitespace = _ref4$normalizeWhites === void 0 ? false : _ref4$normalizeWhites,
|
929
|
+
_ref4$disableCombineT = _ref4.disableCombineTextItems,
|
930
|
+
disableCombineTextItems = _ref4$disableCombineT === void 0 ? false : _ref4$disableCombineT;
|
564
931
|
|
565
932
|
var TEXT_CONTENT_CHUNK_SIZE = 100;
|
566
|
-
return this.
|
933
|
+
return this._transport.messageHandler.sendWithStream('GetTextContent', {
|
567
934
|
pageIndex: this.pageNumber - 1,
|
568
|
-
normalizeWhitespace:
|
569
|
-
combineTextItems:
|
935
|
+
normalizeWhitespace: normalizeWhitespace === true,
|
936
|
+
combineTextItems: disableCombineTextItems !== true
|
570
937
|
}, {
|
571
938
|
highWaterMark: TEXT_CONTENT_CHUNK_SIZE,
|
572
939
|
size: function size(textContent) {
|
573
940
|
return textContent.items.length;
|
574
941
|
}
|
575
942
|
});
|
576
|
-
}
|
577
|
-
|
578
|
-
|
579
|
-
|
943
|
+
}
|
944
|
+
}, {
|
945
|
+
key: "getTextContent",
|
946
|
+
value: function getTextContent() {
|
947
|
+
var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
580
948
|
var readableStream = this.streamTextContent(params);
|
581
949
|
return new Promise(function (resolve, reject) {
|
582
950
|
function pump() {
|
583
|
-
reader.read().then(function (
|
584
|
-
var
|
585
|
-
|
951
|
+
reader.read().then(function (_ref5) {
|
952
|
+
var _textContent$items;
|
953
|
+
|
954
|
+
var value = _ref5.value,
|
955
|
+
done = _ref5.done;
|
586
956
|
|
587
957
|
if (done) {
|
588
958
|
resolve(textContent);
|
589
959
|
return;
|
590
960
|
}
|
591
|
-
|
592
|
-
|
961
|
+
|
962
|
+
Object.assign(textContent.styles, value.styles);
|
963
|
+
|
964
|
+
(_textContent$items = textContent.items).push.apply(_textContent$items, _toConsumableArray(value.items));
|
965
|
+
|
593
966
|
pump();
|
594
967
|
}, reject);
|
595
968
|
}
|
969
|
+
|
596
970
|
var reader = readableStream.getReader();
|
597
971
|
var textContent = {
|
598
972
|
items: [],
|
@@ -600,18 +974,21 @@ var PDFPageProxy = function PDFPageProxyClosure() {
|
|
600
974
|
};
|
601
975
|
pump();
|
602
976
|
});
|
603
|
-
}
|
604
|
-
|
977
|
+
}
|
978
|
+
}, {
|
979
|
+
key: "_destroy",
|
980
|
+
value: function _destroy() {
|
605
981
|
this.destroyed = true;
|
606
|
-
this.
|
982
|
+
this._transport.pageCache[this.pageIndex] = null;
|
607
983
|
var waitOn = [];
|
608
984
|
Object.keys(this.intentStates).forEach(function (intent) {
|
609
985
|
if (intent === 'oplist') {
|
610
986
|
return;
|
611
987
|
}
|
988
|
+
|
612
989
|
var intentState = this.intentStates[intent];
|
613
990
|
intentState.renderTasks.forEach(function (renderTask) {
|
614
|
-
var renderCompleted = renderTask.capability.promise
|
991
|
+
var renderCompleted = renderTask.capability.promise["catch"](function () {});
|
615
992
|
waitOn.push(renderCompleted);
|
616
993
|
renderTask.cancel();
|
617
994
|
});
|
@@ -620,14 +997,18 @@ var PDFPageProxy = function PDFPageProxyClosure() {
|
|
620
997
|
this.annotationsPromise = null;
|
621
998
|
this.pendingCleanup = false;
|
622
999
|
return Promise.all(waitOn);
|
623
|
-
}
|
624
|
-
|
1000
|
+
}
|
1001
|
+
}, {
|
1002
|
+
key: "cleanup",
|
1003
|
+
value: function cleanup() {
|
625
1004
|
var resetStats = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
626
|
-
|
627
1005
|
this.pendingCleanup = true;
|
1006
|
+
|
628
1007
|
this._tryCleanup(resetStats);
|
629
|
-
}
|
630
|
-
|
1008
|
+
}
|
1009
|
+
}, {
|
1010
|
+
key: "_tryCleanup",
|
1011
|
+
value: function _tryCleanup() {
|
631
1012
|
var resetStats = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
632
1013
|
|
633
1014
|
if (!this.pendingCleanup || Object.keys(this.intentStates).some(function (intent) {
|
@@ -636,48 +1017,93 @@ var PDFPageProxy = function PDFPageProxyClosure() {
|
|
636
1017
|
}, this)) {
|
637
1018
|
return;
|
638
1019
|
}
|
1020
|
+
|
639
1021
|
Object.keys(this.intentStates).forEach(function (intent) {
|
640
1022
|
delete this.intentStates[intent];
|
641
1023
|
}, this);
|
642
1024
|
this.objs.clear();
|
643
1025
|
this.annotationsPromise = null;
|
644
|
-
|
645
|
-
|
1026
|
+
|
1027
|
+
if (resetStats && this._stats instanceof _display_utils.StatTimer) {
|
1028
|
+
this._stats = new _display_utils.StatTimer();
|
646
1029
|
}
|
647
|
-
this.pendingCleanup = false;
|
648
|
-
},
|
649
1030
|
|
650
|
-
|
1031
|
+
this.pendingCleanup = false;
|
1032
|
+
}
|
1033
|
+
}, {
|
1034
|
+
key: "_startRenderPage",
|
1035
|
+
value: function _startRenderPage(transparency, intent) {
|
651
1036
|
var intentState = this.intentStates[intent];
|
1037
|
+
|
652
1038
|
if (intentState.displayReadyCapability) {
|
653
1039
|
intentState.displayReadyCapability.resolve(transparency);
|
654
1040
|
}
|
655
|
-
}
|
656
|
-
|
1041
|
+
}
|
1042
|
+
}, {
|
1043
|
+
key: "_renderPageChunk",
|
1044
|
+
value: function _renderPageChunk(operatorListChunk, intent) {
|
657
1045
|
var intentState = this.intentStates[intent];
|
658
|
-
|
659
|
-
for (i = 0, ii = operatorListChunk.length; i < ii; i++) {
|
1046
|
+
|
1047
|
+
for (var i = 0, ii = operatorListChunk.length; i < ii; i++) {
|
660
1048
|
intentState.operatorList.fnArray.push(operatorListChunk.fnArray[i]);
|
661
1049
|
intentState.operatorList.argsArray.push(operatorListChunk.argsArray[i]);
|
662
1050
|
}
|
1051
|
+
|
663
1052
|
intentState.operatorList.lastChunk = operatorListChunk.lastChunk;
|
664
|
-
|
665
|
-
|
1053
|
+
|
1054
|
+
for (var _i = 0; _i < intentState.renderTasks.length; _i++) {
|
1055
|
+
intentState.renderTasks[_i].operatorListChanged();
|
666
1056
|
}
|
1057
|
+
|
667
1058
|
if (operatorListChunk.lastChunk) {
|
668
1059
|
intentState.receivingOperatorList = false;
|
1060
|
+
|
669
1061
|
this._tryCleanup();
|
670
1062
|
}
|
671
|
-
},
|
672
|
-
get stats() {
|
673
|
-
return this._stats instanceof _dom_utils.StatTimer ? this._stats : null;
|
674
1063
|
}
|
675
|
-
}
|
1064
|
+
}, {
|
1065
|
+
key: "pageNumber",
|
1066
|
+
get: function get() {
|
1067
|
+
return this.pageIndex + 1;
|
1068
|
+
}
|
1069
|
+
}, {
|
1070
|
+
key: "rotate",
|
1071
|
+
get: function get() {
|
1072
|
+
return this._pageInfo.rotate;
|
1073
|
+
}
|
1074
|
+
}, {
|
1075
|
+
key: "ref",
|
1076
|
+
get: function get() {
|
1077
|
+
return this._pageInfo.ref;
|
1078
|
+
}
|
1079
|
+
}, {
|
1080
|
+
key: "userUnit",
|
1081
|
+
get: function get() {
|
1082
|
+
return this._pageInfo.userUnit;
|
1083
|
+
}
|
1084
|
+
}, {
|
1085
|
+
key: "view",
|
1086
|
+
get: function get() {
|
1087
|
+
return this._pageInfo.view;
|
1088
|
+
}
|
1089
|
+
}, {
|
1090
|
+
key: "stats",
|
1091
|
+
get: function get() {
|
1092
|
+
return this._stats instanceof _display_utils.StatTimer ? this._stats : null;
|
1093
|
+
}
|
1094
|
+
}]);
|
1095
|
+
|
676
1096
|
return PDFPageProxy;
|
677
1097
|
}();
|
678
1098
|
|
679
|
-
|
680
|
-
|
1099
|
+
exports.PDFPageProxy = PDFPageProxy;
|
1100
|
+
|
1101
|
+
var LoopbackPort =
|
1102
|
+
/*#__PURE__*/
|
1103
|
+
function () {
|
1104
|
+
function LoopbackPort() {
|
1105
|
+
var defer = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
|
1106
|
+
|
681
1107
|
_classCallCheck(this, LoopbackPort);
|
682
1108
|
|
683
1109
|
this._listeners = [];
|
@@ -686,21 +1112,24 @@ var LoopbackPort = function () {
|
|
686
1112
|
}
|
687
1113
|
|
688
1114
|
_createClass(LoopbackPort, [{
|
689
|
-
key:
|
1115
|
+
key: "postMessage",
|
690
1116
|
value: function postMessage(obj, transfers) {
|
691
|
-
var
|
1117
|
+
var _this6 = this;
|
692
1118
|
|
693
1119
|
function cloneValue(value) {
|
694
|
-
if (
|
1120
|
+
if (_typeof(value) !== 'object' || value === null) {
|
695
1121
|
return value;
|
696
1122
|
}
|
1123
|
+
|
697
1124
|
if (cloned.has(value)) {
|
698
1125
|
return cloned.get(value);
|
699
1126
|
}
|
700
|
-
|
701
|
-
var buffer;
|
1127
|
+
|
1128
|
+
var buffer, result;
|
1129
|
+
|
702
1130
|
if ((buffer = value.buffer) && (0, _util.isArrayBuffer)(buffer)) {
|
703
1131
|
var transferable = transfers && transfers.includes(buffer);
|
1132
|
+
|
704
1133
|
if (value === buffer) {
|
705
1134
|
result = value;
|
706
1135
|
} else if (transferable) {
|
@@ -708,283 +1137,390 @@ var LoopbackPort = function () {
|
|
708
1137
|
} else {
|
709
1138
|
result = new value.constructor(value);
|
710
1139
|
}
|
1140
|
+
|
711
1141
|
cloned.set(value, result);
|
712
1142
|
return result;
|
713
1143
|
}
|
1144
|
+
|
714
1145
|
result = Array.isArray(value) ? [] : {};
|
715
1146
|
cloned.set(value, result);
|
1147
|
+
|
716
1148
|
for (var i in value) {
|
717
|
-
var desc,
|
1149
|
+
var desc = void 0,
|
718
1150
|
p = value;
|
1151
|
+
|
719
1152
|
while (!(desc = Object.getOwnPropertyDescriptor(p, i))) {
|
720
1153
|
p = Object.getPrototypeOf(p);
|
721
1154
|
}
|
1155
|
+
|
722
1156
|
if (typeof desc.value === 'undefined' || typeof desc.value === 'function') {
|
723
1157
|
continue;
|
724
1158
|
}
|
1159
|
+
|
725
1160
|
result[i] = cloneValue(desc.value);
|
726
1161
|
}
|
1162
|
+
|
727
1163
|
return result;
|
728
1164
|
}
|
1165
|
+
|
729
1166
|
if (!this._defer) {
|
730
1167
|
this._listeners.forEach(function (listener) {
|
731
|
-
listener.call(this, {
|
1168
|
+
listener.call(this, {
|
1169
|
+
data: obj
|
1170
|
+
});
|
732
1171
|
}, this);
|
1172
|
+
|
733
1173
|
return;
|
734
1174
|
}
|
1175
|
+
|
735
1176
|
var cloned = new WeakMap();
|
736
|
-
var e = {
|
1177
|
+
var e = {
|
1178
|
+
data: cloneValue(obj)
|
1179
|
+
};
|
1180
|
+
|
737
1181
|
this._deferred.then(function () {
|
738
|
-
|
1182
|
+
_this6._listeners.forEach(function (listener) {
|
739
1183
|
listener.call(this, e);
|
740
|
-
},
|
1184
|
+
}, _this6);
|
741
1185
|
});
|
742
1186
|
}
|
743
1187
|
}, {
|
744
|
-
key:
|
1188
|
+
key: "addEventListener",
|
745
1189
|
value: function addEventListener(name, listener) {
|
746
1190
|
this._listeners.push(listener);
|
747
1191
|
}
|
748
1192
|
}, {
|
749
|
-
key:
|
1193
|
+
key: "removeEventListener",
|
750
1194
|
value: function removeEventListener(name, listener) {
|
751
1195
|
var i = this._listeners.indexOf(listener);
|
1196
|
+
|
752
1197
|
this._listeners.splice(i, 1);
|
753
1198
|
}
|
754
1199
|
}, {
|
755
|
-
key:
|
1200
|
+
key: "terminate",
|
756
1201
|
value: function terminate() {
|
757
|
-
this._listeners =
|
1202
|
+
this._listeners.length = 0;
|
758
1203
|
}
|
759
1204
|
}]);
|
760
1205
|
|
761
1206
|
return LoopbackPort;
|
762
1207
|
}();
|
763
1208
|
|
1209
|
+
exports.LoopbackPort = LoopbackPort;
|
1210
|
+
|
764
1211
|
var PDFWorker = function PDFWorkerClosure() {
|
1212
|
+
var pdfWorkerPorts = new WeakMap();
|
765
1213
|
var nextFakeWorkerId = 0;
|
766
|
-
|
1214
|
+
var fakeWorkerFilesLoadedCapability;
|
1215
|
+
|
1216
|
+
function _getWorkerSrc() {
|
767
1217
|
if (_worker_options.GlobalWorkerOptions.workerSrc) {
|
768
1218
|
return _worker_options.GlobalWorkerOptions.workerSrc;
|
769
1219
|
}
|
770
|
-
|
771
|
-
|
772
|
-
|
773
|
-
if (pdfjsFilePath) {
|
774
|
-
return pdfjsFilePath.replace(/(\.(?:min\.)?js)(\?.*)?$/i, '.worker$1$2');
|
1220
|
+
|
1221
|
+
if (typeof fallbackWorkerSrc !== 'undefined') {
|
1222
|
+
return fallbackWorkerSrc;
|
775
1223
|
}
|
1224
|
+
|
776
1225
|
throw new Error('No "GlobalWorkerOptions.workerSrc" specified.');
|
777
1226
|
}
|
1227
|
+
|
778
1228
|
function getMainThreadWorkerMessageHandler() {
|
779
|
-
|
780
|
-
|
781
|
-
|
782
|
-
|
1229
|
+
try {
|
1230
|
+
if (typeof window !== 'undefined') {
|
1231
|
+
return window.pdfjsWorker && window.pdfjsWorker.WorkerMessageHandler;
|
1232
|
+
}
|
1233
|
+
} catch (ex) {}
|
1234
|
+
|
1235
|
+
return null;
|
783
1236
|
}
|
784
|
-
|
1237
|
+
|
785
1238
|
function setupFakeWorkerGlobal() {
|
786
1239
|
if (fakeWorkerFilesLoadedCapability) {
|
787
1240
|
return fakeWorkerFilesLoadedCapability.promise;
|
788
1241
|
}
|
1242
|
+
|
789
1243
|
fakeWorkerFilesLoadedCapability = (0, _util.createPromiseCapability)();
|
790
1244
|
var mainWorkerMessageHandler = getMainThreadWorkerMessageHandler();
|
1245
|
+
|
791
1246
|
if (mainWorkerMessageHandler) {
|
792
1247
|
fakeWorkerFilesLoadedCapability.resolve(mainWorkerMessageHandler);
|
793
1248
|
return fakeWorkerFilesLoadedCapability.promise;
|
794
1249
|
}
|
795
|
-
|
796
|
-
|
797
|
-
|
1250
|
+
|
1251
|
+
var loader = fakeWorkerFilesLoader || function () {
|
1252
|
+
return (0, _display_utils.loadScript)(_getWorkerSrc()).then(function () {
|
1253
|
+
return window.pdfjsWorker.WorkerMessageHandler;
|
798
1254
|
});
|
799
1255
|
};
|
800
|
-
|
1256
|
+
|
1257
|
+
loader().then(fakeWorkerFilesLoadedCapability.resolve, fakeWorkerFilesLoadedCapability.reject);
|
801
1258
|
return fakeWorkerFilesLoadedCapability.promise;
|
802
1259
|
}
|
1260
|
+
|
803
1261
|
function createCDNWrapper(url) {
|
804
1262
|
var wrapper = 'importScripts(\'' + url + '\');';
|
805
|
-
return URL.createObjectURL(new Blob([wrapper]));
|
806
|
-
}
|
807
|
-
var pdfWorkerPorts = new WeakMap();
|
808
|
-
function PDFWorker() {
|
809
|
-
var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
|
810
|
-
_ref2$name = _ref2.name,
|
811
|
-
name = _ref2$name === undefined ? null : _ref2$name,
|
812
|
-
_ref2$port = _ref2.port,
|
813
|
-
port = _ref2$port === undefined ? null : _ref2$port,
|
814
|
-
_ref2$postMessageTran = _ref2.postMessageTransfers,
|
815
|
-
postMessageTransfers = _ref2$postMessageTran === undefined ? true : _ref2$postMessageTran,
|
816
|
-
_ref2$verbosity = _ref2.verbosity,
|
817
|
-
verbosity = _ref2$verbosity === undefined ? null : _ref2$verbosity;
|
818
|
-
|
819
|
-
if (port && pdfWorkerPorts.has(port)) {
|
820
|
-
throw new Error('Cannot use more than one PDFWorker per port');
|
821
|
-
}
|
822
|
-
this.name = name;
|
823
|
-
this.destroyed = false;
|
824
|
-
this.postMessageTransfers = postMessageTransfers !== false;
|
825
|
-
this.verbosity = (0, _util.isNum)(verbosity) ? verbosity : (0, _util.getVerbosityLevel)();
|
826
|
-
this._readyCapability = (0, _util.createPromiseCapability)();
|
827
|
-
this._port = null;
|
828
|
-
this._webWorker = null;
|
829
|
-
this._messageHandler = null;
|
830
|
-
if (port) {
|
831
|
-
pdfWorkerPorts.set(port, this);
|
832
|
-
this._initializeFromPort(port);
|
833
|
-
return;
|
834
|
-
}
|
835
|
-
this._initialize();
|
1263
|
+
return _util.URL.createObjectURL(new Blob([wrapper]));
|
836
1264
|
}
|
837
|
-
PDFWorker.prototype = {
|
838
|
-
get promise() {
|
839
|
-
return this._readyCapability.promise;
|
840
|
-
},
|
841
|
-
get port() {
|
842
|
-
return this._port;
|
843
|
-
},
|
844
|
-
get messageHandler() {
|
845
|
-
return this._messageHandler;
|
846
|
-
},
|
847
|
-
_initializeFromPort: function PDFWorker_initializeFromPort(port) {
|
848
|
-
this._port = port;
|
849
|
-
this._messageHandler = new _util.MessageHandler('main', 'worker', port);
|
850
|
-
this._messageHandler.on('ready', function () {});
|
851
|
-
this._readyCapability.resolve();
|
852
|
-
},
|
853
|
-
_initialize: function PDFWorker_initialize() {
|
854
|
-
var _this6 = this;
|
855
1265
|
|
856
|
-
|
857
|
-
|
858
|
-
|
859
|
-
|
860
|
-
|
861
|
-
|
862
|
-
|
863
|
-
|
864
|
-
|
865
|
-
|
866
|
-
|
867
|
-
|
868
|
-
|
869
|
-
|
870
|
-
|
871
|
-
|
872
|
-
|
873
|
-
|
874
|
-
|
875
|
-
|
876
|
-
|
877
|
-
|
878
|
-
|
879
|
-
|
880
|
-
|
881
|
-
|
882
|
-
|
883
|
-
|
884
|
-
|
1266
|
+
var PDFWorker =
|
1267
|
+
/*#__PURE__*/
|
1268
|
+
function () {
|
1269
|
+
function PDFWorker() {
|
1270
|
+
var _ref6 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
|
1271
|
+
_ref6$name = _ref6.name,
|
1272
|
+
name = _ref6$name === void 0 ? null : _ref6$name,
|
1273
|
+
_ref6$port = _ref6.port,
|
1274
|
+
port = _ref6$port === void 0 ? null : _ref6$port,
|
1275
|
+
_ref6$postMessageTran = _ref6.postMessageTransfers,
|
1276
|
+
postMessageTransfers = _ref6$postMessageTran === void 0 ? true : _ref6$postMessageTran,
|
1277
|
+
_ref6$verbosity = _ref6.verbosity,
|
1278
|
+
verbosity = _ref6$verbosity === void 0 ? (0, _util.getVerbosityLevel)() : _ref6$verbosity;
|
1279
|
+
|
1280
|
+
_classCallCheck(this, PDFWorker);
|
1281
|
+
|
1282
|
+
if (port && pdfWorkerPorts.has(port)) {
|
1283
|
+
throw new Error('Cannot use more than one PDFWorker per port');
|
1284
|
+
}
|
1285
|
+
|
1286
|
+
this.name = name;
|
1287
|
+
this.destroyed = false;
|
1288
|
+
this.postMessageTransfers = postMessageTransfers !== false;
|
1289
|
+
this.verbosity = verbosity;
|
1290
|
+
this._readyCapability = (0, _util.createPromiseCapability)();
|
1291
|
+
this._port = null;
|
1292
|
+
this._webWorker = null;
|
1293
|
+
this._messageHandler = null;
|
1294
|
+
|
1295
|
+
if (port) {
|
1296
|
+
pdfWorkerPorts.set(port, this);
|
1297
|
+
|
1298
|
+
this._initializeFromPort(port);
|
1299
|
+
|
1300
|
+
return;
|
1301
|
+
}
|
1302
|
+
|
1303
|
+
this._initialize();
|
1304
|
+
}
|
1305
|
+
|
1306
|
+
_createClass(PDFWorker, [{
|
1307
|
+
key: "_initializeFromPort",
|
1308
|
+
value: function _initializeFromPort(port) {
|
1309
|
+
this._port = port;
|
1310
|
+
this._messageHandler = new _message_handler.MessageHandler('main', 'worker', port);
|
1311
|
+
|
1312
|
+
this._messageHandler.on('ready', function () {});
|
1313
|
+
|
1314
|
+
this._readyCapability.resolve();
|
1315
|
+
}
|
1316
|
+
}, {
|
1317
|
+
key: "_initialize",
|
1318
|
+
value: function _initialize() {
|
1319
|
+
var _this7 = this;
|
1320
|
+
|
1321
|
+
if (typeof Worker !== 'undefined' && !isWorkerDisabled && !getMainThreadWorkerMessageHandler()) {
|
1322
|
+
var workerSrc = _getWorkerSrc();
|
1323
|
+
|
1324
|
+
try {
|
1325
|
+
if (!(0, _util.isSameOrigin)(window.location.href, workerSrc)) {
|
1326
|
+
workerSrc = createCDNWrapper(new _util.URL(workerSrc, window.location).href);
|
885
1327
|
}
|
886
|
-
|
887
|
-
|
888
|
-
|
889
|
-
|
890
|
-
|
891
|
-
|
892
|
-
_this6.postMessageTransfers = false;
|
893
|
-
}
|
894
|
-
_this6._readyCapability.resolve();
|
895
|
-
messageHandler.send('configure', { verbosity: _this6.verbosity });
|
896
|
-
} else {
|
897
|
-
_this6._setupFakeWorker();
|
1328
|
+
|
1329
|
+
var worker = new Worker(workerSrc);
|
1330
|
+
var messageHandler = new _message_handler.MessageHandler('main', 'worker', worker);
|
1331
|
+
|
1332
|
+
var terminateEarly = function terminateEarly() {
|
1333
|
+
worker.removeEventListener('error', onWorkerError);
|
898
1334
|
messageHandler.destroy();
|
899
1335
|
worker.terminate();
|
900
|
-
|
901
|
-
|
902
|
-
|
903
|
-
|
904
|
-
|
905
|
-
|
906
|
-
|
907
|
-
|
908
|
-
|
909
|
-
|
910
|
-
|
911
|
-
|
912
|
-
}
|
913
|
-
|
914
|
-
|
915
|
-
|
916
|
-
|
917
|
-
|
918
|
-
|
919
|
-
|
920
|
-
|
921
|
-
|
922
|
-
|
923
|
-
|
924
|
-
|
925
|
-
|
926
|
-
|
927
|
-
|
1336
|
+
|
1337
|
+
if (_this7.destroyed) {
|
1338
|
+
_this7._readyCapability.reject(new Error('Worker was destroyed'));
|
1339
|
+
} else {
|
1340
|
+
_this7._setupFakeWorker();
|
1341
|
+
}
|
1342
|
+
};
|
1343
|
+
|
1344
|
+
var onWorkerError = function onWorkerError() {
|
1345
|
+
if (!_this7._webWorker) {
|
1346
|
+
terminateEarly();
|
1347
|
+
}
|
1348
|
+
};
|
1349
|
+
|
1350
|
+
worker.addEventListener('error', onWorkerError);
|
1351
|
+
messageHandler.on('test', function (data) {
|
1352
|
+
worker.removeEventListener('error', onWorkerError);
|
1353
|
+
|
1354
|
+
if (_this7.destroyed) {
|
1355
|
+
terminateEarly();
|
1356
|
+
return;
|
1357
|
+
}
|
1358
|
+
|
1359
|
+
if (data && data.supportTypedArray) {
|
1360
|
+
_this7._messageHandler = messageHandler;
|
1361
|
+
_this7._port = worker;
|
1362
|
+
_this7._webWorker = worker;
|
1363
|
+
|
1364
|
+
if (!data.supportTransfers) {
|
1365
|
+
_this7.postMessageTransfers = false;
|
1366
|
+
}
|
1367
|
+
|
1368
|
+
_this7._readyCapability.resolve();
|
1369
|
+
|
1370
|
+
messageHandler.send('configure', {
|
1371
|
+
verbosity: _this7.verbosity
|
1372
|
+
});
|
1373
|
+
} else {
|
1374
|
+
_this7._setupFakeWorker();
|
1375
|
+
|
1376
|
+
messageHandler.destroy();
|
1377
|
+
worker.terminate();
|
1378
|
+
}
|
1379
|
+
});
|
1380
|
+
messageHandler.on('ready', function (data) {
|
1381
|
+
worker.removeEventListener('error', onWorkerError);
|
1382
|
+
|
1383
|
+
if (_this7.destroyed) {
|
1384
|
+
terminateEarly();
|
1385
|
+
return;
|
1386
|
+
}
|
1387
|
+
|
1388
|
+
try {
|
1389
|
+
sendTest();
|
1390
|
+
} catch (e) {
|
1391
|
+
_this7._setupFakeWorker();
|
1392
|
+
}
|
1393
|
+
});
|
1394
|
+
|
1395
|
+
var sendTest = function sendTest() {
|
1396
|
+
var testObj = new Uint8Array([_this7.postMessageTransfers ? 255 : 0]);
|
1397
|
+
|
1398
|
+
try {
|
1399
|
+
messageHandler.send('test', testObj, [testObj.buffer]);
|
1400
|
+
} catch (ex) {
|
1401
|
+
(0, _util.info)('Cannot use postMessage transfers');
|
1402
|
+
testObj[0] = 0;
|
1403
|
+
messageHandler.send('test', testObj);
|
1404
|
+
}
|
1405
|
+
};
|
1406
|
+
|
1407
|
+
sendTest();
|
1408
|
+
return;
|
1409
|
+
} catch (e) {
|
1410
|
+
(0, _util.info)('The worker has been disabled.');
|
1411
|
+
}
|
928
1412
|
}
|
1413
|
+
|
1414
|
+
this._setupFakeWorker();
|
929
1415
|
}
|
930
|
-
|
931
|
-
|
932
|
-
|
933
|
-
|
1416
|
+
}, {
|
1417
|
+
key: "_setupFakeWorker",
|
1418
|
+
value: function _setupFakeWorker() {
|
1419
|
+
var _this8 = this;
|
1420
|
+
|
1421
|
+
if (!isWorkerDisabled) {
|
1422
|
+
(0, _util.warn)('Setting up fake worker.');
|
1423
|
+
isWorkerDisabled = true;
|
1424
|
+
}
|
1425
|
+
|
1426
|
+
setupFakeWorkerGlobal().then(function (WorkerMessageHandler) {
|
1427
|
+
if (_this8.destroyed) {
|
1428
|
+
_this8._readyCapability.reject(new Error('Worker was destroyed'));
|
1429
|
+
|
1430
|
+
return;
|
1431
|
+
}
|
934
1432
|
|
935
|
-
|
936
|
-
|
937
|
-
|
1433
|
+
var port = new LoopbackPort();
|
1434
|
+
_this8._port = port;
|
1435
|
+
var id = 'fake' + nextFakeWorkerId++;
|
1436
|
+
var workerHandler = new _message_handler.MessageHandler(id + '_worker', id, port);
|
1437
|
+
WorkerMessageHandler.setup(workerHandler, port);
|
1438
|
+
var messageHandler = new _message_handler.MessageHandler(id, id + '_worker', port);
|
1439
|
+
_this8._messageHandler = messageHandler;
|
1440
|
+
|
1441
|
+
_this8._readyCapability.resolve();
|
1442
|
+
})["catch"](function (reason) {
|
1443
|
+
_this8._readyCapability.reject(new Error("Setting up fake worker failed: \"".concat(reason.message, "\".")));
|
1444
|
+
});
|
938
1445
|
}
|
939
|
-
|
940
|
-
|
941
|
-
|
942
|
-
|
1446
|
+
}, {
|
1447
|
+
key: "destroy",
|
1448
|
+
value: function destroy() {
|
1449
|
+
this.destroyed = true;
|
1450
|
+
|
1451
|
+
if (this._webWorker) {
|
1452
|
+
this._webWorker.terminate();
|
1453
|
+
|
1454
|
+
this._webWorker = null;
|
1455
|
+
}
|
1456
|
+
|
1457
|
+
pdfWorkerPorts["delete"](this._port);
|
1458
|
+
this._port = null;
|
1459
|
+
|
1460
|
+
if (this._messageHandler) {
|
1461
|
+
this._messageHandler.destroy();
|
1462
|
+
|
1463
|
+
this._messageHandler = null;
|
943
1464
|
}
|
944
|
-
var isTypedArraysPresent = Uint8Array !== Float32Array;
|
945
|
-
var port = new LoopbackPort(isTypedArraysPresent);
|
946
|
-
_this7._port = port;
|
947
|
-
var id = 'fake' + nextFakeWorkerId++;
|
948
|
-
var workerHandler = new _util.MessageHandler(id + '_worker', id, port);
|
949
|
-
WorkerMessageHandler.setup(workerHandler, port);
|
950
|
-
var messageHandler = new _util.MessageHandler(id, id + '_worker', port);
|
951
|
-
_this7._messageHandler = messageHandler;
|
952
|
-
_this7._readyCapability.resolve();
|
953
|
-
});
|
954
|
-
},
|
955
|
-
destroy: function PDFWorker_destroy() {
|
956
|
-
this.destroyed = true;
|
957
|
-
if (this._webWorker) {
|
958
|
-
this._webWorker.terminate();
|
959
|
-
this._webWorker = null;
|
960
1465
|
}
|
961
|
-
|
962
|
-
|
963
|
-
|
964
|
-
this.
|
965
|
-
this._messageHandler = null;
|
1466
|
+
}, {
|
1467
|
+
key: "promise",
|
1468
|
+
get: function get() {
|
1469
|
+
return this._readyCapability.promise;
|
966
1470
|
}
|
967
|
-
}
|
968
|
-
|
969
|
-
|
970
|
-
|
971
|
-
|
972
|
-
}
|
973
|
-
|
974
|
-
|
975
|
-
|
976
|
-
|
977
|
-
|
1471
|
+
}, {
|
1472
|
+
key: "port",
|
1473
|
+
get: function get() {
|
1474
|
+
return this._port;
|
1475
|
+
}
|
1476
|
+
}, {
|
1477
|
+
key: "messageHandler",
|
1478
|
+
get: function get() {
|
1479
|
+
return this._messageHandler;
|
1480
|
+
}
|
1481
|
+
}], [{
|
1482
|
+
key: "fromPort",
|
1483
|
+
value: function fromPort(params) {
|
1484
|
+
if (!params || !params.port) {
|
1485
|
+
throw new Error('PDFWorker.fromPort - invalid method signature.');
|
1486
|
+
}
|
1487
|
+
|
1488
|
+
if (pdfWorkerPorts.has(params.port)) {
|
1489
|
+
return pdfWorkerPorts.get(params.port);
|
1490
|
+
}
|
1491
|
+
|
1492
|
+
return new PDFWorker(params);
|
1493
|
+
}
|
1494
|
+
}, {
|
1495
|
+
key: "getWorkerSrc",
|
1496
|
+
value: function getWorkerSrc() {
|
1497
|
+
return _getWorkerSrc();
|
1498
|
+
}
|
1499
|
+
}]);
|
1500
|
+
|
1501
|
+
return PDFWorker;
|
1502
|
+
}();
|
1503
|
+
|
978
1504
|
return PDFWorker;
|
979
1505
|
}();
|
980
|
-
|
981
|
-
|
1506
|
+
|
1507
|
+
exports.PDFWorker = PDFWorker;
|
1508
|
+
|
1509
|
+
var WorkerTransport =
|
1510
|
+
/*#__PURE__*/
|
1511
|
+
function () {
|
1512
|
+
function WorkerTransport(messageHandler, loadingTask, networkStream, params) {
|
1513
|
+
_classCallCheck(this, WorkerTransport);
|
1514
|
+
|
982
1515
|
this.messageHandler = messageHandler;
|
983
1516
|
this.loadingTask = loadingTask;
|
984
1517
|
this.commonObjs = new PDFObjects();
|
985
|
-
this.fontLoader = new _font_loader.FontLoader(
|
1518
|
+
this.fontLoader = new _font_loader.FontLoader({
|
1519
|
+
docId: loadingTask.docId,
|
1520
|
+
onUnsupportedFeature: this._onUnsupportedFeature.bind(this)
|
1521
|
+
});
|
986
1522
|
this._params = params;
|
987
|
-
this.CMapReaderFactory = new CMapReaderFactory({
|
1523
|
+
this.CMapReaderFactory = new params.CMapReaderFactory({
|
988
1524
|
baseUrl: params.cMapUrl,
|
989
1525
|
isCompressed: params.cMapPacked
|
990
1526
|
});
|
@@ -999,89 +1535,101 @@ var WorkerTransport = function WorkerTransportClosure() {
|
|
999
1535
|
this.downloadInfoCapability = (0, _util.createPromiseCapability)();
|
1000
1536
|
this.setupMessageHandler();
|
1001
1537
|
}
|
1002
|
-
|
1003
|
-
|
1004
|
-
|
1538
|
+
|
1539
|
+
_createClass(WorkerTransport, [{
|
1540
|
+
key: "destroy",
|
1541
|
+
value: function destroy() {
|
1542
|
+
var _this9 = this;
|
1005
1543
|
|
1006
1544
|
if (this.destroyCapability) {
|
1007
1545
|
return this.destroyCapability.promise;
|
1008
1546
|
}
|
1547
|
+
|
1009
1548
|
this.destroyed = true;
|
1010
1549
|
this.destroyCapability = (0, _util.createPromiseCapability)();
|
1550
|
+
|
1011
1551
|
if (this._passwordCapability) {
|
1012
1552
|
this._passwordCapability.reject(new Error('Worker was destroyed during onPassword callback'));
|
1013
1553
|
}
|
1554
|
+
|
1014
1555
|
var waitOn = [];
|
1015
1556
|
this.pageCache.forEach(function (page) {
|
1016
1557
|
if (page) {
|
1017
1558
|
waitOn.push(page._destroy());
|
1018
1559
|
}
|
1019
1560
|
});
|
1020
|
-
this.pageCache =
|
1021
|
-
this.pagePromises =
|
1561
|
+
this.pageCache.length = 0;
|
1562
|
+
this.pagePromises.length = 0;
|
1022
1563
|
var terminated = this.messageHandler.sendWithPromise('Terminate', null);
|
1023
1564
|
waitOn.push(terminated);
|
1024
1565
|
Promise.all(waitOn).then(function () {
|
1025
|
-
|
1026
|
-
|
1027
|
-
|
1566
|
+
_this9.fontLoader.clear();
|
1567
|
+
|
1568
|
+
if (_this9._networkStream) {
|
1569
|
+
_this9._networkStream.cancelAllRequests();
|
1028
1570
|
}
|
1029
|
-
|
1030
|
-
|
1031
|
-
|
1571
|
+
|
1572
|
+
if (_this9.messageHandler) {
|
1573
|
+
_this9.messageHandler.destroy();
|
1574
|
+
|
1575
|
+
_this9.messageHandler = null;
|
1032
1576
|
}
|
1033
|
-
|
1577
|
+
|
1578
|
+
_this9.destroyCapability.resolve();
|
1034
1579
|
}, this.destroyCapability.reject);
|
1035
1580
|
return this.destroyCapability.promise;
|
1036
|
-
}
|
1037
|
-
|
1038
|
-
|
1039
|
-
|
1581
|
+
}
|
1582
|
+
}, {
|
1583
|
+
key: "setupMessageHandler",
|
1584
|
+
value: function setupMessageHandler() {
|
1585
|
+
var messageHandler = this.messageHandler,
|
1586
|
+
loadingTask = this.loadingTask;
|
1040
1587
|
messageHandler.on('GetReader', function (data, sink) {
|
1041
|
-
var
|
1588
|
+
var _this10 = this;
|
1042
1589
|
|
1043
1590
|
(0, _util.assert)(this._networkStream);
|
1044
1591
|
this._fullReader = this._networkStream.getFullReader();
|
1592
|
+
|
1045
1593
|
this._fullReader.onProgress = function (evt) {
|
1046
|
-
|
1594
|
+
_this10._lastProgress = {
|
1047
1595
|
loaded: evt.loaded,
|
1048
1596
|
total: evt.total
|
1049
1597
|
};
|
1050
1598
|
};
|
1599
|
+
|
1051
1600
|
sink.onPull = function () {
|
1052
|
-
|
1053
|
-
var value =
|
1054
|
-
done =
|
1601
|
+
_this10._fullReader.read().then(function (_ref7) {
|
1602
|
+
var value = _ref7.value,
|
1603
|
+
done = _ref7.done;
|
1055
1604
|
|
1056
1605
|
if (done) {
|
1057
1606
|
sink.close();
|
1058
1607
|
return;
|
1059
1608
|
}
|
1609
|
+
|
1060
1610
|
(0, _util.assert)((0, _util.isArrayBuffer)(value));
|
1061
1611
|
sink.enqueue(new Uint8Array(value), 1, [value]);
|
1062
|
-
})
|
1612
|
+
})["catch"](function (reason) {
|
1063
1613
|
sink.error(reason);
|
1064
1614
|
});
|
1065
1615
|
};
|
1616
|
+
|
1066
1617
|
sink.onCancel = function (reason) {
|
1067
|
-
|
1618
|
+
_this10._fullReader.cancel(reason);
|
1068
1619
|
};
|
1069
1620
|
}, this);
|
1070
1621
|
messageHandler.on('ReaderHeadersReady', function (data) {
|
1071
|
-
var
|
1622
|
+
var _this11 = this;
|
1072
1623
|
|
1073
1624
|
var headersCapability = (0, _util.createPromiseCapability)();
|
1074
1625
|
var fullReader = this._fullReader;
|
1075
1626
|
fullReader.headersReady.then(function () {
|
1076
1627
|
if (!fullReader.isStreamingSupported || !fullReader.isRangeSupported) {
|
1077
|
-
if (
|
1078
|
-
|
1079
|
-
if (_loadingTask.onProgress) {
|
1080
|
-
_loadingTask.onProgress(_this10._lastProgress);
|
1081
|
-
}
|
1628
|
+
if (_this11._lastProgress && loadingTask.onProgress) {
|
1629
|
+
loadingTask.onProgress(_this11._lastProgress);
|
1082
1630
|
}
|
1631
|
+
|
1083
1632
|
fullReader.onProgress = function (evt) {
|
1084
|
-
var loadingTask = _this10.loadingTask;
|
1085
1633
|
if (loadingTask.onProgress) {
|
1086
1634
|
loadingTask.onProgress({
|
1087
1635
|
loaded: evt.loaded,
|
@@ -1090,6 +1638,7 @@ var WorkerTransport = function WorkerTransportClosure() {
|
|
1090
1638
|
}
|
1091
1639
|
};
|
1092
1640
|
}
|
1641
|
+
|
1093
1642
|
headersCapability.resolve({
|
1094
1643
|
isStreamingSupported: fullReader.isStreamingSupported,
|
1095
1644
|
isRangeSupported: fullReader.isRangeSupported,
|
@@ -1100,173 +1649,230 @@ var WorkerTransport = function WorkerTransportClosure() {
|
|
1100
1649
|
}, this);
|
1101
1650
|
messageHandler.on('GetRangeReader', function (data, sink) {
|
1102
1651
|
(0, _util.assert)(this._networkStream);
|
1103
|
-
|
1652
|
+
|
1653
|
+
var rangeReader = this._networkStream.getRangeReader(data.begin, data.end);
|
1654
|
+
|
1655
|
+
if (!rangeReader) {
|
1656
|
+
sink.close();
|
1657
|
+
return;
|
1658
|
+
}
|
1659
|
+
|
1104
1660
|
sink.onPull = function () {
|
1105
|
-
|
1106
|
-
var value =
|
1107
|
-
done =
|
1661
|
+
rangeReader.read().then(function (_ref8) {
|
1662
|
+
var value = _ref8.value,
|
1663
|
+
done = _ref8.done;
|
1108
1664
|
|
1109
1665
|
if (done) {
|
1110
1666
|
sink.close();
|
1111
1667
|
return;
|
1112
1668
|
}
|
1669
|
+
|
1113
1670
|
(0, _util.assert)((0, _util.isArrayBuffer)(value));
|
1114
1671
|
sink.enqueue(new Uint8Array(value), 1, [value]);
|
1115
|
-
})
|
1672
|
+
})["catch"](function (reason) {
|
1116
1673
|
sink.error(reason);
|
1117
1674
|
});
|
1118
1675
|
};
|
1676
|
+
|
1119
1677
|
sink.onCancel = function (reason) {
|
1120
|
-
|
1678
|
+
rangeReader.cancel(reason);
|
1121
1679
|
};
|
1122
1680
|
}, this);
|
1123
|
-
messageHandler.on('GetDoc', function
|
1124
|
-
var pdfInfo =
|
1125
|
-
|
1126
|
-
|
1127
|
-
|
1128
|
-
var pdfDocument = new PDFDocumentProxy(pdfInfo, this, loadingTask);
|
1129
|
-
this.pdfDocument = pdfDocument;
|
1130
|
-
loadingTask._capability.resolve(pdfDocument);
|
1681
|
+
messageHandler.on('GetDoc', function (_ref9) {
|
1682
|
+
var pdfInfo = _ref9.pdfInfo;
|
1683
|
+
this._numPages = pdfInfo.numPages;
|
1684
|
+
|
1685
|
+
loadingTask._capability.resolve(new PDFDocumentProxy(pdfInfo, this));
|
1131
1686
|
}, this);
|
1132
|
-
messageHandler.on('PasswordRequest', function
|
1133
|
-
var
|
1687
|
+
messageHandler.on('PasswordRequest', function (exception) {
|
1688
|
+
var _this12 = this;
|
1134
1689
|
|
1135
1690
|
this._passwordCapability = (0, _util.createPromiseCapability)();
|
1691
|
+
|
1136
1692
|
if (loadingTask.onPassword) {
|
1137
1693
|
var updatePassword = function updatePassword(password) {
|
1138
|
-
|
1694
|
+
_this12._passwordCapability.resolve({
|
1695
|
+
password: password
|
1696
|
+
});
|
1139
1697
|
};
|
1140
|
-
|
1141
|
-
|
1698
|
+
|
1699
|
+
try {
|
1700
|
+
loadingTask.onPassword(updatePassword, exception.code);
|
1701
|
+
} catch (ex) {
|
1702
|
+
this._passwordCapability.reject(ex);
|
1703
|
+
}
|
1704
|
+
} else {
|
1142
1705
|
this._passwordCapability.reject(new _util.PasswordException(exception.message, exception.code));
|
1143
1706
|
}
|
1707
|
+
|
1144
1708
|
return this._passwordCapability.promise;
|
1145
1709
|
}, this);
|
1146
|
-
messageHandler.on('PasswordException', function
|
1710
|
+
messageHandler.on('PasswordException', function (exception) {
|
1147
1711
|
loadingTask._capability.reject(new _util.PasswordException(exception.message, exception.code));
|
1148
1712
|
}, this);
|
1149
|
-
messageHandler.on('InvalidPDF', function
|
1150
|
-
|
1713
|
+
messageHandler.on('InvalidPDF', function (exception) {
|
1714
|
+
loadingTask._capability.reject(new _util.InvalidPDFException(exception.message));
|
1151
1715
|
}, this);
|
1152
|
-
messageHandler.on('MissingPDF', function
|
1153
|
-
|
1716
|
+
messageHandler.on('MissingPDF', function (exception) {
|
1717
|
+
loadingTask._capability.reject(new _util.MissingPDFException(exception.message));
|
1154
1718
|
}, this);
|
1155
|
-
messageHandler.on('UnexpectedResponse', function
|
1156
|
-
|
1719
|
+
messageHandler.on('UnexpectedResponse', function (exception) {
|
1720
|
+
loadingTask._capability.reject(new _util.UnexpectedResponseException(exception.message, exception.status));
|
1157
1721
|
}, this);
|
1158
|
-
messageHandler.on('UnknownError', function
|
1159
|
-
|
1722
|
+
messageHandler.on('UnknownError', function (exception) {
|
1723
|
+
loadingTask._capability.reject(new _util.UnknownErrorException(exception.message, exception.details));
|
1160
1724
|
}, this);
|
1161
|
-
messageHandler.on('DataLoaded', function
|
1725
|
+
messageHandler.on('DataLoaded', function (data) {
|
1726
|
+
if (loadingTask.onProgress) {
|
1727
|
+
loadingTask.onProgress({
|
1728
|
+
loaded: data.length,
|
1729
|
+
total: data.length
|
1730
|
+
});
|
1731
|
+
}
|
1732
|
+
|
1162
1733
|
this.downloadInfoCapability.resolve(data);
|
1163
1734
|
}, this);
|
1164
|
-
messageHandler.on('
|
1165
|
-
messageHandler.on('StartRenderPage', function transportRender(data) {
|
1735
|
+
messageHandler.on('StartRenderPage', function (data) {
|
1166
1736
|
if (this.destroyed) {
|
1167
1737
|
return;
|
1168
1738
|
}
|
1739
|
+
|
1169
1740
|
var page = this.pageCache[data.pageIndex];
|
1741
|
+
|
1170
1742
|
page._stats.timeEnd('Page Request');
|
1743
|
+
|
1171
1744
|
page._startRenderPage(data.transparency, data.intent);
|
1172
1745
|
}, this);
|
1173
|
-
messageHandler.on('RenderPageChunk', function
|
1746
|
+
messageHandler.on('RenderPageChunk', function (data) {
|
1174
1747
|
if (this.destroyed) {
|
1175
1748
|
return;
|
1176
1749
|
}
|
1750
|
+
|
1177
1751
|
var page = this.pageCache[data.pageIndex];
|
1752
|
+
|
1178
1753
|
page._renderPageChunk(data.operatorList, data.intent);
|
1179
1754
|
}, this);
|
1180
|
-
messageHandler.on('commonobj', function
|
1181
|
-
var
|
1755
|
+
messageHandler.on('commonobj', function (data) {
|
1756
|
+
var _this13 = this;
|
1182
1757
|
|
1183
1758
|
if (this.destroyed) {
|
1184
1759
|
return;
|
1185
1760
|
}
|
1186
|
-
|
1187
|
-
var
|
1188
|
-
|
1761
|
+
|
1762
|
+
var _data = _slicedToArray(data, 3),
|
1763
|
+
id = _data[0],
|
1764
|
+
type = _data[1],
|
1765
|
+
exportedData = _data[2];
|
1766
|
+
|
1767
|
+
if (this.commonObjs.has(id)) {
|
1189
1768
|
return;
|
1190
1769
|
}
|
1770
|
+
|
1191
1771
|
switch (type) {
|
1192
1772
|
case 'Font':
|
1193
|
-
var exportedData = data[2];
|
1194
1773
|
var params = this._params;
|
1774
|
+
|
1195
1775
|
if ('error' in exportedData) {
|
1196
1776
|
var exportedError = exportedData.error;
|
1197
|
-
(0, _util.warn)(
|
1777
|
+
(0, _util.warn)("Error during font loading: ".concat(exportedError));
|
1198
1778
|
this.commonObjs.resolve(id, exportedError);
|
1199
1779
|
break;
|
1200
1780
|
}
|
1781
|
+
|
1201
1782
|
var fontRegistry = null;
|
1202
|
-
|
1783
|
+
|
1784
|
+
if (params.pdfBug && _global_scope["default"].FontInspector && _global_scope["default"].FontInspector.enabled) {
|
1203
1785
|
fontRegistry = {
|
1204
1786
|
registerFont: function registerFont(font, url) {
|
1205
|
-
|
1787
|
+
_global_scope["default"]['FontInspector'].fontAdded(font, url);
|
1206
1788
|
}
|
1207
1789
|
};
|
1208
1790
|
}
|
1791
|
+
|
1209
1792
|
var font = new _font_loader.FontFaceObject(exportedData, {
|
1210
1793
|
isEvalSupported: params.isEvalSupported,
|
1211
1794
|
disableFontFace: params.disableFontFace,
|
1795
|
+
ignoreErrors: params.ignoreErrors,
|
1796
|
+
onUnsupportedFeature: this._onUnsupportedFeature.bind(this),
|
1212
1797
|
fontRegistry: fontRegistry
|
1213
1798
|
});
|
1214
|
-
|
1215
|
-
|
1216
|
-
}
|
1217
|
-
|
1799
|
+
this.fontLoader.bind(font).then(function () {
|
1800
|
+
_this13.commonObjs.resolve(id, font);
|
1801
|
+
}, function (reason) {
|
1802
|
+
messageHandler.sendWithPromise('FontFallback', {
|
1803
|
+
id: id
|
1804
|
+
})["finally"](function () {
|
1805
|
+
_this13.commonObjs.resolve(id, font);
|
1806
|
+
});
|
1807
|
+
});
|
1218
1808
|
break;
|
1809
|
+
|
1219
1810
|
case 'FontPath':
|
1220
|
-
|
1811
|
+
case 'FontType3Res':
|
1812
|
+
this.commonObjs.resolve(id, exportedData);
|
1221
1813
|
break;
|
1814
|
+
|
1222
1815
|
default:
|
1223
|
-
throw new Error(
|
1816
|
+
throw new Error("Got unknown common object type ".concat(type));
|
1224
1817
|
}
|
1225
1818
|
}, this);
|
1226
|
-
messageHandler.on('obj', function
|
1819
|
+
messageHandler.on('obj', function (data) {
|
1227
1820
|
if (this.destroyed) {
|
1228
|
-
return;
|
1821
|
+
return undefined;
|
1229
1822
|
}
|
1230
|
-
|
1231
|
-
var
|
1232
|
-
|
1823
|
+
|
1824
|
+
var _data2 = _slicedToArray(data, 4),
|
1825
|
+
id = _data2[0],
|
1826
|
+
pageIndex = _data2[1],
|
1827
|
+
type = _data2[2],
|
1828
|
+
imageData = _data2[3];
|
1829
|
+
|
1233
1830
|
var pageProxy = this.pageCache[pageIndex];
|
1234
|
-
|
1235
|
-
if (pageProxy.objs.
|
1236
|
-
return;
|
1831
|
+
|
1832
|
+
if (pageProxy.objs.has(id)) {
|
1833
|
+
return undefined;
|
1237
1834
|
}
|
1835
|
+
|
1238
1836
|
switch (type) {
|
1239
1837
|
case 'JpegStream':
|
1240
|
-
imageData = data[3];
|
1241
1838
|
return new Promise(function (resolve, reject) {
|
1242
1839
|
var img = new Image();
|
1840
|
+
|
1243
1841
|
img.onload = function () {
|
1244
1842
|
resolve(img);
|
1245
1843
|
};
|
1844
|
+
|
1246
1845
|
img.onerror = function () {
|
1247
1846
|
reject(new Error('Error during JPEG image loading'));
|
1847
|
+
(0, _display_utils.releaseImageResources)(img);
|
1248
1848
|
};
|
1849
|
+
|
1249
1850
|
img.src = imageData;
|
1250
1851
|
}).then(function (img) {
|
1251
1852
|
pageProxy.objs.resolve(id, img);
|
1252
1853
|
});
|
1854
|
+
|
1253
1855
|
case 'Image':
|
1254
|
-
imageData = data[3];
|
1255
1856
|
pageProxy.objs.resolve(id, imageData);
|
1256
1857
|
var MAX_IMAGE_SIZE_TO_STORE = 8000000;
|
1858
|
+
|
1257
1859
|
if (imageData && 'data' in imageData && imageData.data.length > MAX_IMAGE_SIZE_TO_STORE) {
|
1258
1860
|
pageProxy.cleanupAfterRender = true;
|
1259
1861
|
}
|
1862
|
+
|
1260
1863
|
break;
|
1864
|
+
|
1261
1865
|
default:
|
1262
|
-
throw new Error(
|
1866
|
+
throw new Error("Got unknown object type ".concat(type));
|
1263
1867
|
}
|
1868
|
+
|
1869
|
+
return undefined;
|
1264
1870
|
}, this);
|
1265
|
-
messageHandler.on('DocProgress', function
|
1871
|
+
messageHandler.on('DocProgress', function (data) {
|
1266
1872
|
if (this.destroyed) {
|
1267
1873
|
return;
|
1268
1874
|
}
|
1269
|
-
|
1875
|
+
|
1270
1876
|
if (loadingTask.onProgress) {
|
1271
1877
|
loadingTask.onProgress({
|
1272
1878
|
loaded: data.loaded,
|
@@ -1274,80 +1880,91 @@ var WorkerTransport = function WorkerTransportClosure() {
|
|
1274
1880
|
});
|
1275
1881
|
}
|
1276
1882
|
}, this);
|
1277
|
-
messageHandler.on('PageError', function
|
1883
|
+
messageHandler.on('PageError', function (data) {
|
1278
1884
|
if (this.destroyed) {
|
1279
1885
|
return;
|
1280
1886
|
}
|
1281
|
-
|
1887
|
+
|
1888
|
+
var page = this.pageCache[data.pageIndex];
|
1282
1889
|
var intentState = page.intentStates[data.intent];
|
1890
|
+
|
1283
1891
|
if (intentState.displayReadyCapability) {
|
1284
|
-
intentState.displayReadyCapability.reject(data.error);
|
1892
|
+
intentState.displayReadyCapability.reject(new Error(data.error));
|
1285
1893
|
} else {
|
1286
1894
|
throw new Error(data.error);
|
1287
1895
|
}
|
1896
|
+
|
1288
1897
|
if (intentState.operatorList) {
|
1289
1898
|
intentState.operatorList.lastChunk = true;
|
1899
|
+
|
1290
1900
|
for (var i = 0; i < intentState.renderTasks.length; i++) {
|
1291
1901
|
intentState.renderTasks[i].operatorListChanged();
|
1292
1902
|
}
|
1293
1903
|
}
|
1294
1904
|
}, this);
|
1295
|
-
messageHandler.on('UnsupportedFeature',
|
1296
|
-
if (this.destroyed) {
|
1297
|
-
return;
|
1298
|
-
}
|
1299
|
-
var loadingTask = this.loadingTask;
|
1300
|
-
if (loadingTask.onUnsupportedFeature) {
|
1301
|
-
loadingTask.onUnsupportedFeature(data.featureId);
|
1302
|
-
}
|
1303
|
-
}, this);
|
1905
|
+
messageHandler.on('UnsupportedFeature', this._onUnsupportedFeature, this);
|
1304
1906
|
messageHandler.on('JpegDecode', function (data) {
|
1305
1907
|
if (this.destroyed) {
|
1306
1908
|
return Promise.reject(new Error('Worker was destroyed'));
|
1307
1909
|
}
|
1910
|
+
|
1308
1911
|
if (typeof document === 'undefined') {
|
1309
1912
|
return Promise.reject(new Error('"document" is not defined.'));
|
1310
1913
|
}
|
1311
|
-
|
1312
|
-
var
|
1914
|
+
|
1915
|
+
var _data3 = _slicedToArray(data, 2),
|
1916
|
+
imageUrl = _data3[0],
|
1917
|
+
components = _data3[1];
|
1918
|
+
|
1313
1919
|
if (components !== 3 && components !== 1) {
|
1314
1920
|
return Promise.reject(new Error('Only 3 components or 1 component can be returned'));
|
1315
1921
|
}
|
1922
|
+
|
1316
1923
|
return new Promise(function (resolve, reject) {
|
1317
1924
|
var img = new Image();
|
1925
|
+
|
1318
1926
|
img.onload = function () {
|
1319
|
-
var width = img.width
|
1320
|
-
|
1927
|
+
var width = img.width,
|
1928
|
+
height = img.height;
|
1321
1929
|
var size = width * height;
|
1322
1930
|
var rgbaLength = size * 4;
|
1323
|
-
var buf = new
|
1931
|
+
var buf = new Uint8ClampedArray(size * components);
|
1324
1932
|
var tmpCanvas = document.createElement('canvas');
|
1325
1933
|
tmpCanvas.width = width;
|
1326
1934
|
tmpCanvas.height = height;
|
1327
1935
|
var tmpCtx = tmpCanvas.getContext('2d');
|
1328
1936
|
tmpCtx.drawImage(img, 0, 0);
|
1329
1937
|
var data = tmpCtx.getImageData(0, 0, width, height).data;
|
1330
|
-
|
1938
|
+
|
1331
1939
|
if (components === 3) {
|
1332
|
-
for (i = 0, j = 0; i < rgbaLength; i += 4, j += 3) {
|
1940
|
+
for (var i = 0, j = 0; i < rgbaLength; i += 4, j += 3) {
|
1333
1941
|
buf[j] = data[i];
|
1334
1942
|
buf[j + 1] = data[i + 1];
|
1335
1943
|
buf[j + 2] = data[i + 2];
|
1336
1944
|
}
|
1337
1945
|
} else if (components === 1) {
|
1338
|
-
for (
|
1339
|
-
buf[
|
1946
|
+
for (var _i2 = 0, _j = 0; _i2 < rgbaLength; _i2 += 4, _j++) {
|
1947
|
+
buf[_j] = data[_i2];
|
1340
1948
|
}
|
1341
1949
|
}
|
1950
|
+
|
1342
1951
|
resolve({
|
1343
1952
|
data: buf,
|
1344
1953
|
width: width,
|
1345
1954
|
height: height
|
1346
1955
|
});
|
1956
|
+
(0, _display_utils.releaseImageResources)(img);
|
1957
|
+
tmpCanvas.width = 0;
|
1958
|
+
tmpCanvas.height = 0;
|
1959
|
+
tmpCanvas = null;
|
1960
|
+
tmpCtx = null;
|
1347
1961
|
};
|
1962
|
+
|
1348
1963
|
img.onerror = function () {
|
1349
1964
|
reject(new Error('JpegDecode failed to load image'));
|
1965
|
+
(0, _display_utils.releaseImageResources)(img);
|
1350
1966
|
};
|
1967
|
+
|
1351
1968
|
img.src = imageUrl;
|
1352
1969
|
});
|
1353
1970
|
}, this);
|
@@ -1355,310 +1972,506 @@ var WorkerTransport = function WorkerTransportClosure() {
|
|
1355
1972
|
if (this.destroyed) {
|
1356
1973
|
return Promise.reject(new Error('Worker was destroyed'));
|
1357
1974
|
}
|
1358
|
-
|
1975
|
+
|
1976
|
+
return this.CMapReaderFactory.fetch({
|
1977
|
+
name: data.name
|
1978
|
+
});
|
1359
1979
|
}, this);
|
1360
|
-
}
|
1361
|
-
|
1980
|
+
}
|
1981
|
+
}, {
|
1982
|
+
key: "_onUnsupportedFeature",
|
1983
|
+
value: function _onUnsupportedFeature(_ref10) {
|
1984
|
+
var featureId = _ref10.featureId;
|
1985
|
+
|
1986
|
+
if (this.destroyed) {
|
1987
|
+
return;
|
1988
|
+
}
|
1989
|
+
|
1990
|
+
if (this.loadingTask.onUnsupportedFeature) {
|
1991
|
+
this.loadingTask.onUnsupportedFeature(featureId);
|
1992
|
+
}
|
1993
|
+
}
|
1994
|
+
}, {
|
1995
|
+
key: "getData",
|
1996
|
+
value: function getData() {
|
1362
1997
|
return this.messageHandler.sendWithPromise('GetData', null);
|
1363
|
-
}
|
1364
|
-
|
1365
|
-
|
1998
|
+
}
|
1999
|
+
}, {
|
2000
|
+
key: "getPage",
|
2001
|
+
value: function getPage(pageNumber) {
|
2002
|
+
var _this14 = this;
|
1366
2003
|
|
1367
|
-
if (!Number.isInteger(pageNumber) || pageNumber <= 0 || pageNumber > this.
|
2004
|
+
if (!Number.isInteger(pageNumber) || pageNumber <= 0 || pageNumber > this._numPages) {
|
1368
2005
|
return Promise.reject(new Error('Invalid page request'));
|
1369
2006
|
}
|
2007
|
+
|
1370
2008
|
var pageIndex = pageNumber - 1;
|
2009
|
+
|
1371
2010
|
if (pageIndex in this.pagePromises) {
|
1372
2011
|
return this.pagePromises[pageIndex];
|
1373
2012
|
}
|
1374
|
-
|
1375
|
-
|
2013
|
+
|
2014
|
+
var promise = this.messageHandler.sendWithPromise('GetPage', {
|
2015
|
+
pageIndex: pageIndex
|
2016
|
+
}).then(function (pageInfo) {
|
2017
|
+
if (_this14.destroyed) {
|
1376
2018
|
throw new Error('Transport destroyed');
|
1377
2019
|
}
|
1378
|
-
|
1379
|
-
|
2020
|
+
|
2021
|
+
var page = new PDFPageProxy(pageIndex, pageInfo, _this14, _this14._params.pdfBug);
|
2022
|
+
_this14.pageCache[pageIndex] = page;
|
1380
2023
|
return page;
|
1381
2024
|
});
|
1382
2025
|
this.pagePromises[pageIndex] = promise;
|
1383
2026
|
return promise;
|
1384
|
-
}
|
1385
|
-
|
1386
|
-
|
1387
|
-
|
2027
|
+
}
|
2028
|
+
}, {
|
2029
|
+
key: "getPageIndex",
|
2030
|
+
value: function getPageIndex(ref) {
|
2031
|
+
return this.messageHandler.sendWithPromise('GetPageIndex', {
|
2032
|
+
ref: ref
|
2033
|
+
})["catch"](function (reason) {
|
1388
2034
|
return Promise.reject(new Error(reason));
|
1389
2035
|
});
|
1390
|
-
}
|
1391
|
-
|
2036
|
+
}
|
2037
|
+
}, {
|
2038
|
+
key: "getAnnotations",
|
2039
|
+
value: function getAnnotations(pageIndex, intent) {
|
1392
2040
|
return this.messageHandler.sendWithPromise('GetAnnotations', {
|
1393
2041
|
pageIndex: pageIndex,
|
1394
2042
|
intent: intent
|
1395
2043
|
});
|
1396
|
-
}
|
1397
|
-
|
2044
|
+
}
|
2045
|
+
}, {
|
2046
|
+
key: "getDestinations",
|
2047
|
+
value: function getDestinations() {
|
1398
2048
|
return this.messageHandler.sendWithPromise('GetDestinations', null);
|
1399
|
-
}
|
1400
|
-
|
1401
|
-
|
1402
|
-
|
1403
|
-
|
2049
|
+
}
|
2050
|
+
}, {
|
2051
|
+
key: "getDestination",
|
2052
|
+
value: function getDestination(id) {
|
2053
|
+
if (typeof id !== 'string') {
|
2054
|
+
return Promise.reject(new Error('Invalid destination request.'));
|
2055
|
+
}
|
2056
|
+
|
2057
|
+
return this.messageHandler.sendWithPromise('GetDestination', {
|
2058
|
+
id: id
|
2059
|
+
});
|
2060
|
+
}
|
2061
|
+
}, {
|
2062
|
+
key: "getPageLabels",
|
2063
|
+
value: function getPageLabels() {
|
1404
2064
|
return this.messageHandler.sendWithPromise('GetPageLabels', null);
|
1405
|
-
}
|
1406
|
-
|
2065
|
+
}
|
2066
|
+
}, {
|
2067
|
+
key: "getPageLayout",
|
2068
|
+
value: function getPageLayout() {
|
2069
|
+
return this.messageHandler.sendWithPromise('GetPageLayout', null);
|
2070
|
+
}
|
2071
|
+
}, {
|
2072
|
+
key: "getPageMode",
|
2073
|
+
value: function getPageMode() {
|
1407
2074
|
return this.messageHandler.sendWithPromise('GetPageMode', null);
|
1408
|
-
}
|
1409
|
-
|
1410
|
-
|
2075
|
+
}
|
2076
|
+
}, {
|
2077
|
+
key: "getViewerPreferences",
|
2078
|
+
value: function getViewerPreferences() {
|
2079
|
+
return this.messageHandler.sendWithPromise('GetViewerPreferences', null);
|
2080
|
+
}
|
2081
|
+
}, {
|
2082
|
+
key: "getOpenActionDestination",
|
2083
|
+
value: function getOpenActionDestination() {
|
2084
|
+
return this.messageHandler.sendWithPromise('GetOpenActionDestination', null);
|
2085
|
+
}
|
2086
|
+
}, {
|
2087
|
+
key: "getAttachments",
|
2088
|
+
value: function getAttachments() {
|
1411
2089
|
return this.messageHandler.sendWithPromise('GetAttachments', null);
|
1412
|
-
}
|
1413
|
-
|
2090
|
+
}
|
2091
|
+
}, {
|
2092
|
+
key: "getJavaScript",
|
2093
|
+
value: function getJavaScript() {
|
1414
2094
|
return this.messageHandler.sendWithPromise('GetJavaScript', null);
|
1415
|
-
}
|
1416
|
-
|
2095
|
+
}
|
2096
|
+
}, {
|
2097
|
+
key: "getOutline",
|
2098
|
+
value: function getOutline() {
|
1417
2099
|
return this.messageHandler.sendWithPromise('GetOutline', null);
|
1418
|
-
}
|
1419
|
-
|
1420
|
-
|
2100
|
+
}
|
2101
|
+
}, {
|
2102
|
+
key: "getPermissions",
|
2103
|
+
value: function getPermissions() {
|
2104
|
+
return this.messageHandler.sendWithPromise('GetPermissions', null);
|
2105
|
+
}
|
2106
|
+
}, {
|
2107
|
+
key: "getMetadata",
|
2108
|
+
value: function getMetadata() {
|
2109
|
+
var _this15 = this;
|
1421
2110
|
|
1422
2111
|
return this.messageHandler.sendWithPromise('GetMetadata', null).then(function (results) {
|
1423
2112
|
return {
|
1424
2113
|
info: results[0],
|
1425
2114
|
metadata: results[1] ? new _metadata.Metadata(results[1]) : null,
|
1426
|
-
contentDispositionFilename:
|
2115
|
+
contentDispositionFilename: _this15._fullReader ? _this15._fullReader.filename : null
|
1427
2116
|
};
|
1428
2117
|
});
|
1429
|
-
}
|
1430
|
-
|
2118
|
+
}
|
2119
|
+
}, {
|
2120
|
+
key: "getStats",
|
2121
|
+
value: function getStats() {
|
1431
2122
|
return this.messageHandler.sendWithPromise('GetStats', null);
|
1432
|
-
}
|
1433
|
-
|
1434
|
-
|
2123
|
+
}
|
2124
|
+
}, {
|
2125
|
+
key: "startCleanup",
|
2126
|
+
value: function startCleanup() {
|
2127
|
+
var _this16 = this;
|
1435
2128
|
|
1436
2129
|
this.messageHandler.sendWithPromise('Cleanup', null).then(function () {
|
1437
|
-
for (var i = 0, ii =
|
1438
|
-
var page =
|
2130
|
+
for (var i = 0, ii = _this16.pageCache.length; i < ii; i++) {
|
2131
|
+
var page = _this16.pageCache[i];
|
2132
|
+
|
1439
2133
|
if (page) {
|
1440
2134
|
page.cleanup();
|
1441
2135
|
}
|
1442
2136
|
}
|
1443
|
-
|
1444
|
-
|
2137
|
+
|
2138
|
+
_this16.commonObjs.clear();
|
2139
|
+
|
2140
|
+
_this16.fontLoader.clear();
|
1445
2141
|
});
|
1446
|
-
}
|
1447
|
-
|
2142
|
+
}
|
2143
|
+
}, {
|
2144
|
+
key: "loadingParams",
|
2145
|
+
get: function get() {
|
1448
2146
|
var params = this._params;
|
1449
2147
|
return (0, _util.shadow)(this, 'loadingParams', {
|
1450
|
-
disableRange: params.disableRange,
|
1451
|
-
disableStream: params.disableStream,
|
1452
2148
|
disableAutoFetch: params.disableAutoFetch,
|
1453
|
-
disableCreateObjectURL: params.disableCreateObjectURL
|
2149
|
+
disableCreateObjectURL: params.disableCreateObjectURL,
|
2150
|
+
disableFontFace: params.disableFontFace,
|
2151
|
+
nativeImageDecoderSupport: params.nativeImageDecoderSupport
|
1454
2152
|
});
|
1455
2153
|
}
|
1456
|
-
};
|
2154
|
+
}]);
|
2155
|
+
|
1457
2156
|
return WorkerTransport;
|
1458
2157
|
}();
|
1459
|
-
|
2158
|
+
|
2159
|
+
var PDFObjects =
|
2160
|
+
/*#__PURE__*/
|
2161
|
+
function () {
|
1460
2162
|
function PDFObjects() {
|
1461
|
-
this
|
2163
|
+
_classCallCheck(this, PDFObjects);
|
2164
|
+
|
2165
|
+
this._objs = Object.create(null);
|
1462
2166
|
}
|
1463
|
-
|
1464
|
-
|
1465
|
-
|
1466
|
-
|
2167
|
+
|
2168
|
+
_createClass(PDFObjects, [{
|
2169
|
+
key: "_ensureObj",
|
2170
|
+
value: function _ensureObj(objId) {
|
2171
|
+
if (this._objs[objId]) {
|
2172
|
+
return this._objs[objId];
|
1467
2173
|
}
|
1468
|
-
|
2174
|
+
|
2175
|
+
return this._objs[objId] = {
|
1469
2176
|
capability: (0, _util.createPromiseCapability)(),
|
1470
2177
|
data: null,
|
1471
2178
|
resolved: false
|
1472
2179
|
};
|
1473
|
-
|
1474
|
-
|
1475
|
-
|
1476
|
-
|
2180
|
+
}
|
2181
|
+
}, {
|
2182
|
+
key: "get",
|
2183
|
+
value: function get(objId) {
|
2184
|
+
var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
|
2185
|
+
|
1477
2186
|
if (callback) {
|
1478
|
-
this.
|
2187
|
+
this._ensureObj(objId).capability.promise.then(callback);
|
2188
|
+
|
1479
2189
|
return null;
|
1480
2190
|
}
|
1481
|
-
|
2191
|
+
|
2192
|
+
var obj = this._objs[objId];
|
2193
|
+
|
1482
2194
|
if (!obj || !obj.resolved) {
|
1483
|
-
throw new Error(
|
2195
|
+
throw new Error("Requesting object that isn't resolved yet ".concat(objId, "."));
|
1484
2196
|
}
|
2197
|
+
|
1485
2198
|
return obj.data;
|
1486
|
-
}
|
1487
|
-
|
1488
|
-
|
2199
|
+
}
|
2200
|
+
}, {
|
2201
|
+
key: "has",
|
2202
|
+
value: function has(objId) {
|
2203
|
+
var obj = this._objs[objId];
|
2204
|
+
return obj ? obj.resolved : false;
|
2205
|
+
}
|
2206
|
+
}, {
|
2207
|
+
key: "resolve",
|
2208
|
+
value: function resolve(objId, data) {
|
2209
|
+
var obj = this._ensureObj(objId);
|
2210
|
+
|
1489
2211
|
obj.resolved = true;
|
1490
2212
|
obj.data = data;
|
1491
2213
|
obj.capability.resolve(data);
|
1492
|
-
}
|
1493
|
-
|
1494
|
-
|
1495
|
-
|
1496
|
-
|
1497
|
-
|
1498
|
-
|
1499
|
-
|
1500
|
-
|
1501
|
-
|
1502
|
-
},
|
1503
|
-
getData: function PDFObjects_getData(objId) {
|
1504
|
-
var objs = this.objs;
|
1505
|
-
if (!objs[objId] || !objs[objId].resolved) {
|
1506
|
-
return null;
|
2214
|
+
}
|
2215
|
+
}, {
|
2216
|
+
key: "clear",
|
2217
|
+
value: function clear() {
|
2218
|
+
for (var objId in this._objs) {
|
2219
|
+
var data = this._objs[objId].data;
|
2220
|
+
|
2221
|
+
if (typeof Image !== 'undefined' && data instanceof Image) {
|
2222
|
+
(0, _display_utils.releaseImageResources)(data);
|
2223
|
+
}
|
1507
2224
|
}
|
1508
|
-
|
1509
|
-
|
1510
|
-
clear: function PDFObjects_clear() {
|
1511
|
-
this.objs = Object.create(null);
|
2225
|
+
|
2226
|
+
this._objs = Object.create(null);
|
1512
2227
|
}
|
1513
|
-
};
|
2228
|
+
}]);
|
2229
|
+
|
1514
2230
|
return PDFObjects;
|
1515
2231
|
}();
|
1516
|
-
|
2232
|
+
|
2233
|
+
var RenderTask =
|
2234
|
+
/*#__PURE__*/
|
2235
|
+
function () {
|
1517
2236
|
function RenderTask(internalRenderTask) {
|
2237
|
+
_classCallCheck(this, RenderTask);
|
2238
|
+
|
1518
2239
|
this._internalRenderTask = internalRenderTask;
|
1519
2240
|
this.onContinue = null;
|
1520
2241
|
}
|
1521
|
-
|
1522
|
-
|
1523
|
-
|
1524
|
-
|
1525
|
-
cancel: function RenderTask_cancel() {
|
2242
|
+
|
2243
|
+
_createClass(RenderTask, [{
|
2244
|
+
key: "cancel",
|
2245
|
+
value: function cancel() {
|
1526
2246
|
this._internalRenderTask.cancel();
|
1527
|
-
}
|
1528
|
-
|
2247
|
+
}
|
2248
|
+
}, {
|
2249
|
+
key: "then",
|
2250
|
+
value: function then(onFulfilled, onRejected) {
|
2251
|
+
(0, _display_utils.deprecated)('RenderTask.then method, use the `promise` getter instead.');
|
1529
2252
|
return this.promise.then.apply(this.promise, arguments);
|
1530
2253
|
}
|
1531
|
-
}
|
2254
|
+
}, {
|
2255
|
+
key: "promise",
|
2256
|
+
get: function get() {
|
2257
|
+
return this._internalRenderTask.capability.promise;
|
2258
|
+
}
|
2259
|
+
}]);
|
2260
|
+
|
1532
2261
|
return RenderTask;
|
1533
2262
|
}();
|
2263
|
+
|
1534
2264
|
var InternalRenderTask = function InternalRenderTaskClosure() {
|
1535
|
-
var canvasInRendering = new
|
1536
|
-
|
1537
|
-
|
1538
|
-
|
1539
|
-
|
1540
|
-
|
1541
|
-
|
1542
|
-
|
1543
|
-
|
1544
|
-
|
1545
|
-
|
1546
|
-
|
1547
|
-
|
1548
|
-
|
1549
|
-
|
1550
|
-
|
1551
|
-
|
1552
|
-
|
1553
|
-
|
1554
|
-
|
1555
|
-
|
1556
|
-
|
1557
|
-
|
1558
|
-
|
1559
|
-
|
1560
|
-
|
1561
|
-
|
1562
|
-
|
1563
|
-
|
1564
|
-
|
1565
|
-
|
1566
|
-
}
|
1567
|
-
canvasInRendering.set(this._canvas, this);
|
1568
|
-
}
|
1569
|
-
if (this.cancelled) {
|
1570
|
-
return;
|
1571
|
-
}
|
1572
|
-
if (this._pdfBug && _global_scope2.default.StepperManager && _global_scope2.default.StepperManager.enabled) {
|
1573
|
-
this.stepper = _global_scope2.default.StepperManager.create(this.pageNumber - 1);
|
1574
|
-
this.stepper.init(this.operatorList);
|
1575
|
-
this.stepper.nextBreakPoint = this.stepper.getNextBreakPoint();
|
1576
|
-
}
|
1577
|
-
var params = this.params;
|
1578
|
-
this.gfx = new _canvas.CanvasGraphics(params.canvasContext, this.commonObjs, this.objs, this.canvasFactory, this.webGLContext, params.imageLayer);
|
1579
|
-
this.gfx.beginDrawing({
|
1580
|
-
transform: params.transform,
|
1581
|
-
viewport: params.viewport,
|
1582
|
-
transparency: transparency,
|
1583
|
-
background: params.background
|
1584
|
-
});
|
1585
|
-
this.operatorListIdx = 0;
|
1586
|
-
this.graphicsReady = true;
|
1587
|
-
if (this.graphicsReadyCallback) {
|
1588
|
-
this.graphicsReadyCallback();
|
1589
|
-
}
|
1590
|
-
},
|
1591
|
-
cancel: function InternalRenderTask_cancel() {
|
2265
|
+
var canvasInRendering = new WeakSet();
|
2266
|
+
|
2267
|
+
var InternalRenderTask =
|
2268
|
+
/*#__PURE__*/
|
2269
|
+
function () {
|
2270
|
+
function InternalRenderTask(_ref11) {
|
2271
|
+
var callback = _ref11.callback,
|
2272
|
+
params = _ref11.params,
|
2273
|
+
objs = _ref11.objs,
|
2274
|
+
commonObjs = _ref11.commonObjs,
|
2275
|
+
operatorList = _ref11.operatorList,
|
2276
|
+
pageNumber = _ref11.pageNumber,
|
2277
|
+
canvasFactory = _ref11.canvasFactory,
|
2278
|
+
webGLContext = _ref11.webGLContext,
|
2279
|
+
_ref11$useRequestAnim = _ref11.useRequestAnimationFrame,
|
2280
|
+
useRequestAnimationFrame = _ref11$useRequestAnim === void 0 ? false : _ref11$useRequestAnim,
|
2281
|
+
_ref11$pdfBug = _ref11.pdfBug,
|
2282
|
+
pdfBug = _ref11$pdfBug === void 0 ? false : _ref11$pdfBug;
|
2283
|
+
|
2284
|
+
_classCallCheck(this, InternalRenderTask);
|
2285
|
+
|
2286
|
+
this.callback = callback;
|
2287
|
+
this.params = params;
|
2288
|
+
this.objs = objs;
|
2289
|
+
this.commonObjs = commonObjs;
|
2290
|
+
this.operatorListIdx = null;
|
2291
|
+
this.operatorList = operatorList;
|
2292
|
+
this.pageNumber = pageNumber;
|
2293
|
+
this.canvasFactory = canvasFactory;
|
2294
|
+
this.webGLContext = webGLContext;
|
2295
|
+
this._pdfBug = pdfBug;
|
1592
2296
|
this.running = false;
|
1593
|
-
this.
|
1594
|
-
|
1595
|
-
|
1596
|
-
|
1597
|
-
this.
|
1598
|
-
|
1599
|
-
|
1600
|
-
|
1601
|
-
|
1602
|
-
|
2297
|
+
this.graphicsReadyCallback = null;
|
2298
|
+
this.graphicsReady = false;
|
2299
|
+
this._useRequestAnimationFrame = useRequestAnimationFrame === true && typeof window !== 'undefined';
|
2300
|
+
this.cancelled = false;
|
2301
|
+
this.capability = (0, _util.createPromiseCapability)();
|
2302
|
+
this.task = new RenderTask(this);
|
2303
|
+
this._continueBound = this._continue.bind(this);
|
2304
|
+
this._scheduleNextBound = this._scheduleNext.bind(this);
|
2305
|
+
this._nextBound = this._next.bind(this);
|
2306
|
+
this._canvas = params.canvasContext.canvas;
|
2307
|
+
}
|
2308
|
+
|
2309
|
+
_createClass(InternalRenderTask, [{
|
2310
|
+
key: "initializeGraphics",
|
2311
|
+
value: function initializeGraphics() {
|
2312
|
+
var transparency = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
2313
|
+
|
2314
|
+
if (this.cancelled) {
|
2315
|
+
return;
|
2316
|
+
}
|
2317
|
+
|
2318
|
+
if (this._canvas) {
|
2319
|
+
if (canvasInRendering.has(this._canvas)) {
|
2320
|
+
throw new Error('Cannot use the same canvas during multiple render() operations. ' + 'Use different canvas or ensure previous operations were ' + 'cancelled or completed.');
|
2321
|
+
}
|
2322
|
+
|
2323
|
+
canvasInRendering.add(this._canvas);
|
2324
|
+
}
|
2325
|
+
|
2326
|
+
if (this._pdfBug && _global_scope["default"].StepperManager && _global_scope["default"].StepperManager.enabled) {
|
2327
|
+
this.stepper = _global_scope["default"].StepperManager.create(this.pageNumber - 1);
|
2328
|
+
this.stepper.init(this.operatorList);
|
2329
|
+
this.stepper.nextBreakPoint = this.stepper.getNextBreakPoint();
|
2330
|
+
}
|
2331
|
+
|
2332
|
+
var _this$params = this.params,
|
2333
|
+
canvasContext = _this$params.canvasContext,
|
2334
|
+
viewport = _this$params.viewport,
|
2335
|
+
transform = _this$params.transform,
|
2336
|
+
imageLayer = _this$params.imageLayer,
|
2337
|
+
background = _this$params.background;
|
2338
|
+
this.gfx = new _canvas.CanvasGraphics(canvasContext, this.commonObjs, this.objs, this.canvasFactory, this.webGLContext, imageLayer);
|
2339
|
+
this.gfx.beginDrawing({
|
2340
|
+
transform: transform,
|
2341
|
+
viewport: viewport,
|
2342
|
+
transparency: transparency,
|
2343
|
+
background: background
|
2344
|
+
});
|
2345
|
+
this.operatorListIdx = 0;
|
2346
|
+
this.graphicsReady = true;
|
2347
|
+
|
2348
|
+
if (this.graphicsReadyCallback) {
|
2349
|
+
this.graphicsReadyCallback();
|
1603
2350
|
}
|
1604
|
-
return;
|
1605
|
-
}
|
1606
|
-
if (this.stepper) {
|
1607
|
-
this.stepper.updateOperatorList(this.operatorList);
|
1608
|
-
}
|
1609
|
-
if (this.running) {
|
1610
|
-
return;
|
1611
|
-
}
|
1612
|
-
this._continue();
|
1613
|
-
},
|
1614
|
-
_continue: function InternalRenderTask__continue() {
|
1615
|
-
this.running = true;
|
1616
|
-
if (this.cancelled) {
|
1617
|
-
return;
|
1618
|
-
}
|
1619
|
-
if (this.task.onContinue) {
|
1620
|
-
this.task.onContinue(this._scheduleNextBound);
|
1621
|
-
} else {
|
1622
|
-
this._scheduleNext();
|
1623
|
-
}
|
1624
|
-
},
|
1625
|
-
_scheduleNext: function InternalRenderTask__scheduleNext() {
|
1626
|
-
if (this.useRequestAnimationFrame && typeof window !== 'undefined') {
|
1627
|
-
window.requestAnimationFrame(this._nextBound);
|
1628
|
-
} else {
|
1629
|
-
Promise.resolve(undefined).then(this._nextBound);
|
1630
|
-
}
|
1631
|
-
},
|
1632
|
-
_next: function InternalRenderTask__next() {
|
1633
|
-
if (this.cancelled) {
|
1634
|
-
return;
|
1635
2351
|
}
|
1636
|
-
|
1637
|
-
|
2352
|
+
}, {
|
2353
|
+
key: "cancel",
|
2354
|
+
value: function cancel() {
|
2355
|
+
var error = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
|
1638
2356
|
this.running = false;
|
1639
|
-
|
2357
|
+
this.cancelled = true;
|
2358
|
+
|
2359
|
+
if (this.gfx) {
|
1640
2360
|
this.gfx.endDrawing();
|
1641
|
-
|
1642
|
-
|
2361
|
+
}
|
2362
|
+
|
2363
|
+
if (this._canvas) {
|
2364
|
+
canvasInRendering["delete"](this._canvas);
|
2365
|
+
}
|
2366
|
+
|
2367
|
+
this.callback(error || new _display_utils.RenderingCancelledException("Rendering cancelled, page ".concat(this.pageNumber), 'canvas'));
|
2368
|
+
}
|
2369
|
+
}, {
|
2370
|
+
key: "operatorListChanged",
|
2371
|
+
value: function operatorListChanged() {
|
2372
|
+
if (!this.graphicsReady) {
|
2373
|
+
if (!this.graphicsReadyCallback) {
|
2374
|
+
this.graphicsReadyCallback = this._continueBound;
|
1643
2375
|
}
|
1644
|
-
|
2376
|
+
|
2377
|
+
return;
|
1645
2378
|
}
|
2379
|
+
|
2380
|
+
if (this.stepper) {
|
2381
|
+
this.stepper.updateOperatorList(this.operatorList);
|
2382
|
+
}
|
2383
|
+
|
2384
|
+
if (this.running) {
|
2385
|
+
return;
|
2386
|
+
}
|
2387
|
+
|
2388
|
+
this._continue();
|
1646
2389
|
}
|
1647
|
-
}
|
1648
|
-
|
2390
|
+
}, {
|
2391
|
+
key: "_continue",
|
2392
|
+
value: function _continue() {
|
2393
|
+
this.running = true;
|
2394
|
+
|
2395
|
+
if (this.cancelled) {
|
2396
|
+
return;
|
2397
|
+
}
|
2398
|
+
|
2399
|
+
if (this.task.onContinue) {
|
2400
|
+
this.task.onContinue(this._scheduleNextBound);
|
2401
|
+
} else {
|
2402
|
+
this._scheduleNext();
|
2403
|
+
}
|
2404
|
+
}
|
2405
|
+
}, {
|
2406
|
+
key: "_scheduleNext",
|
2407
|
+
value: function _scheduleNext() {
|
2408
|
+
var _this17 = this;
|
2409
|
+
|
2410
|
+
if (this._useRequestAnimationFrame) {
|
2411
|
+
window.requestAnimationFrame(function () {
|
2412
|
+
_this17._nextBound()["catch"](_this17.cancel.bind(_this17));
|
2413
|
+
});
|
2414
|
+
} else {
|
2415
|
+
Promise.resolve().then(this._nextBound)["catch"](this.cancel.bind(this));
|
2416
|
+
}
|
2417
|
+
}
|
2418
|
+
}, {
|
2419
|
+
key: "_next",
|
2420
|
+
value: function () {
|
2421
|
+
var _next2 = _asyncToGenerator(
|
2422
|
+
/*#__PURE__*/
|
2423
|
+
_regenerator["default"].mark(function _callee() {
|
2424
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
2425
|
+
while (1) {
|
2426
|
+
switch (_context.prev = _context.next) {
|
2427
|
+
case 0:
|
2428
|
+
if (!this.cancelled) {
|
2429
|
+
_context.next = 2;
|
2430
|
+
break;
|
2431
|
+
}
|
2432
|
+
|
2433
|
+
return _context.abrupt("return");
|
2434
|
+
|
2435
|
+
case 2:
|
2436
|
+
this.operatorListIdx = this.gfx.executeOperatorList(this.operatorList, this.operatorListIdx, this._continueBound, this.stepper);
|
2437
|
+
|
2438
|
+
if (this.operatorListIdx === this.operatorList.argsArray.length) {
|
2439
|
+
this.running = false;
|
2440
|
+
|
2441
|
+
if (this.operatorList.lastChunk) {
|
2442
|
+
this.gfx.endDrawing();
|
2443
|
+
|
2444
|
+
if (this._canvas) {
|
2445
|
+
canvasInRendering["delete"](this._canvas);
|
2446
|
+
}
|
2447
|
+
|
2448
|
+
this.callback();
|
2449
|
+
}
|
2450
|
+
}
|
2451
|
+
|
2452
|
+
case 4:
|
2453
|
+
case "end":
|
2454
|
+
return _context.stop();
|
2455
|
+
}
|
2456
|
+
}
|
2457
|
+
}, _callee, this);
|
2458
|
+
}));
|
2459
|
+
|
2460
|
+
function _next() {
|
2461
|
+
return _next2.apply(this, arguments);
|
2462
|
+
}
|
2463
|
+
|
2464
|
+
return _next;
|
2465
|
+
}()
|
2466
|
+
}]);
|
2467
|
+
|
2468
|
+
return InternalRenderTask;
|
2469
|
+
}();
|
2470
|
+
|
1649
2471
|
return InternalRenderTask;
|
1650
2472
|
}();
|
1651
|
-
|
1652
|
-
|
1653
|
-
exports.version = version = '2.0.489';
|
1654
|
-
exports.build = build = '7d7bc80e';
|
1655
|
-
}
|
1656
|
-
exports.getDocument = getDocument;
|
1657
|
-
exports.LoopbackPort = LoopbackPort;
|
1658
|
-
exports.PDFDataRangeTransport = PDFDataRangeTransport;
|
1659
|
-
exports.PDFWorker = PDFWorker;
|
1660
|
-
exports.PDFDocumentProxy = PDFDocumentProxy;
|
1661
|
-
exports.PDFPageProxy = PDFPageProxy;
|
1662
|
-
exports.setPDFNetworkStreamFactory = setPDFNetworkStreamFactory;
|
2473
|
+
|
2474
|
+
var version = '2.2.228';
|
1663
2475
|
exports.version = version;
|
2476
|
+
var build = 'd7afb74a';
|
1664
2477
|
exports.build = build;
|