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
@@ -0,0 +1,277 @@
|
|
1
|
+
/**
|
2
|
+
* @licstart The following is the entire license notice for the
|
3
|
+
* Javascript code in this page
|
4
|
+
*
|
5
|
+
* Copyright 2019 Mozilla Foundation
|
6
|
+
*
|
7
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
8
|
+
* you may not use this file except in compliance with the License.
|
9
|
+
* You may obtain a copy of the License at
|
10
|
+
*
|
11
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
12
|
+
*
|
13
|
+
* Unless required by applicable law or agreed to in writing, software
|
14
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
15
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
16
|
+
* See the License for the specific language governing permissions and
|
17
|
+
* limitations under the License.
|
18
|
+
*
|
19
|
+
* @licend The above is the entire license notice for the
|
20
|
+
* Javascript code in this page
|
21
|
+
*/
|
22
|
+
"use strict";
|
23
|
+
|
24
|
+
Object.defineProperty(exports, "__esModule", {
|
25
|
+
value: true
|
26
|
+
});
|
27
|
+
exports.PDFWorkerStream = void 0;
|
28
|
+
|
29
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
30
|
+
|
31
|
+
var _util = require("../shared/util");
|
32
|
+
|
33
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
34
|
+
|
35
|
+
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); } }
|
36
|
+
|
37
|
+
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); }); }; }
|
38
|
+
|
39
|
+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
40
|
+
|
41
|
+
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); } }
|
42
|
+
|
43
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
44
|
+
|
45
|
+
var PDFWorkerStream =
|
46
|
+
/*#__PURE__*/
|
47
|
+
function () {
|
48
|
+
function PDFWorkerStream(msgHandler) {
|
49
|
+
_classCallCheck(this, PDFWorkerStream);
|
50
|
+
|
51
|
+
this._msgHandler = msgHandler;
|
52
|
+
this._contentLength = null;
|
53
|
+
this._fullRequestReader = null;
|
54
|
+
this._rangeRequestReaders = [];
|
55
|
+
}
|
56
|
+
|
57
|
+
_createClass(PDFWorkerStream, [{
|
58
|
+
key: "getFullReader",
|
59
|
+
value: function getFullReader() {
|
60
|
+
(0, _util.assert)(!this._fullRequestReader);
|
61
|
+
this._fullRequestReader = new PDFWorkerStreamReader(this._msgHandler);
|
62
|
+
return this._fullRequestReader;
|
63
|
+
}
|
64
|
+
}, {
|
65
|
+
key: "getRangeReader",
|
66
|
+
value: function getRangeReader(begin, end) {
|
67
|
+
var reader = new PDFWorkerStreamRangeReader(begin, end, this._msgHandler);
|
68
|
+
|
69
|
+
this._rangeRequestReaders.push(reader);
|
70
|
+
|
71
|
+
return reader;
|
72
|
+
}
|
73
|
+
}, {
|
74
|
+
key: "cancelAllRequests",
|
75
|
+
value: function cancelAllRequests(reason) {
|
76
|
+
if (this._fullRequestReader) {
|
77
|
+
this._fullRequestReader.cancel(reason);
|
78
|
+
}
|
79
|
+
|
80
|
+
var readers = this._rangeRequestReaders.slice(0);
|
81
|
+
|
82
|
+
readers.forEach(function (reader) {
|
83
|
+
reader.cancel(reason);
|
84
|
+
});
|
85
|
+
}
|
86
|
+
}]);
|
87
|
+
|
88
|
+
return PDFWorkerStream;
|
89
|
+
}();
|
90
|
+
|
91
|
+
exports.PDFWorkerStream = PDFWorkerStream;
|
92
|
+
|
93
|
+
var PDFWorkerStreamReader =
|
94
|
+
/*#__PURE__*/
|
95
|
+
function () {
|
96
|
+
function PDFWorkerStreamReader(msgHandler) {
|
97
|
+
var _this = this;
|
98
|
+
|
99
|
+
_classCallCheck(this, PDFWorkerStreamReader);
|
100
|
+
|
101
|
+
this._msgHandler = msgHandler;
|
102
|
+
this.onProgress = null;
|
103
|
+
this._contentLength = null;
|
104
|
+
this._isRangeSupported = false;
|
105
|
+
this._isStreamingSupported = false;
|
106
|
+
|
107
|
+
var readableStream = this._msgHandler.sendWithStream('GetReader');
|
108
|
+
|
109
|
+
this._reader = readableStream.getReader();
|
110
|
+
this._headersReady = this._msgHandler.sendWithPromise('ReaderHeadersReady').then(function (data) {
|
111
|
+
_this._isStreamingSupported = data.isStreamingSupported;
|
112
|
+
_this._isRangeSupported = data.isRangeSupported;
|
113
|
+
_this._contentLength = data.contentLength;
|
114
|
+
});
|
115
|
+
}
|
116
|
+
|
117
|
+
_createClass(PDFWorkerStreamReader, [{
|
118
|
+
key: "read",
|
119
|
+
value: function () {
|
120
|
+
var _read = _asyncToGenerator(
|
121
|
+
/*#__PURE__*/
|
122
|
+
_regenerator["default"].mark(function _callee() {
|
123
|
+
var _ref, value, done;
|
124
|
+
|
125
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
126
|
+
while (1) {
|
127
|
+
switch (_context.prev = _context.next) {
|
128
|
+
case 0:
|
129
|
+
_context.next = 2;
|
130
|
+
return this._reader.read();
|
131
|
+
|
132
|
+
case 2:
|
133
|
+
_ref = _context.sent;
|
134
|
+
value = _ref.value;
|
135
|
+
done = _ref.done;
|
136
|
+
|
137
|
+
if (!done) {
|
138
|
+
_context.next = 7;
|
139
|
+
break;
|
140
|
+
}
|
141
|
+
|
142
|
+
return _context.abrupt("return", {
|
143
|
+
value: undefined,
|
144
|
+
done: true
|
145
|
+
});
|
146
|
+
|
147
|
+
case 7:
|
148
|
+
return _context.abrupt("return", {
|
149
|
+
value: value.buffer,
|
150
|
+
done: false
|
151
|
+
});
|
152
|
+
|
153
|
+
case 8:
|
154
|
+
case "end":
|
155
|
+
return _context.stop();
|
156
|
+
}
|
157
|
+
}
|
158
|
+
}, _callee, this);
|
159
|
+
}));
|
160
|
+
|
161
|
+
function read() {
|
162
|
+
return _read.apply(this, arguments);
|
163
|
+
}
|
164
|
+
|
165
|
+
return read;
|
166
|
+
}()
|
167
|
+
}, {
|
168
|
+
key: "cancel",
|
169
|
+
value: function cancel(reason) {
|
170
|
+
this._reader.cancel(reason);
|
171
|
+
}
|
172
|
+
}, {
|
173
|
+
key: "headersReady",
|
174
|
+
get: function get() {
|
175
|
+
return this._headersReady;
|
176
|
+
}
|
177
|
+
}, {
|
178
|
+
key: "contentLength",
|
179
|
+
get: function get() {
|
180
|
+
return this._contentLength;
|
181
|
+
}
|
182
|
+
}, {
|
183
|
+
key: "isStreamingSupported",
|
184
|
+
get: function get() {
|
185
|
+
return this._isStreamingSupported;
|
186
|
+
}
|
187
|
+
}, {
|
188
|
+
key: "isRangeSupported",
|
189
|
+
get: function get() {
|
190
|
+
return this._isRangeSupported;
|
191
|
+
}
|
192
|
+
}]);
|
193
|
+
|
194
|
+
return PDFWorkerStreamReader;
|
195
|
+
}();
|
196
|
+
|
197
|
+
var PDFWorkerStreamRangeReader =
|
198
|
+
/*#__PURE__*/
|
199
|
+
function () {
|
200
|
+
function PDFWorkerStreamRangeReader(begin, end, msgHandler) {
|
201
|
+
_classCallCheck(this, PDFWorkerStreamRangeReader);
|
202
|
+
|
203
|
+
this._msgHandler = msgHandler;
|
204
|
+
this.onProgress = null;
|
205
|
+
|
206
|
+
var readableStream = this._msgHandler.sendWithStream('GetRangeReader', {
|
207
|
+
begin: begin,
|
208
|
+
end: end
|
209
|
+
});
|
210
|
+
|
211
|
+
this._reader = readableStream.getReader();
|
212
|
+
}
|
213
|
+
|
214
|
+
_createClass(PDFWorkerStreamRangeReader, [{
|
215
|
+
key: "read",
|
216
|
+
value: function () {
|
217
|
+
var _read2 = _asyncToGenerator(
|
218
|
+
/*#__PURE__*/
|
219
|
+
_regenerator["default"].mark(function _callee2() {
|
220
|
+
var _ref2, value, done;
|
221
|
+
|
222
|
+
return _regenerator["default"].wrap(function _callee2$(_context2) {
|
223
|
+
while (1) {
|
224
|
+
switch (_context2.prev = _context2.next) {
|
225
|
+
case 0:
|
226
|
+
_context2.next = 2;
|
227
|
+
return this._reader.read();
|
228
|
+
|
229
|
+
case 2:
|
230
|
+
_ref2 = _context2.sent;
|
231
|
+
value = _ref2.value;
|
232
|
+
done = _ref2.done;
|
233
|
+
|
234
|
+
if (!done) {
|
235
|
+
_context2.next = 7;
|
236
|
+
break;
|
237
|
+
}
|
238
|
+
|
239
|
+
return _context2.abrupt("return", {
|
240
|
+
value: undefined,
|
241
|
+
done: true
|
242
|
+
});
|
243
|
+
|
244
|
+
case 7:
|
245
|
+
return _context2.abrupt("return", {
|
246
|
+
value: value.buffer,
|
247
|
+
done: false
|
248
|
+
});
|
249
|
+
|
250
|
+
case 8:
|
251
|
+
case "end":
|
252
|
+
return _context2.stop();
|
253
|
+
}
|
254
|
+
}
|
255
|
+
}, _callee2, this);
|
256
|
+
}));
|
257
|
+
|
258
|
+
function read() {
|
259
|
+
return _read2.apply(this, arguments);
|
260
|
+
}
|
261
|
+
|
262
|
+
return read;
|
263
|
+
}()
|
264
|
+
}, {
|
265
|
+
key: "cancel",
|
266
|
+
value: function cancel(reason) {
|
267
|
+
this._reader.cancel(reason);
|
268
|
+
}
|
269
|
+
}, {
|
270
|
+
key: "isStreamingSupported",
|
271
|
+
get: function get() {
|
272
|
+
return false;
|
273
|
+
}
|
274
|
+
}]);
|
275
|
+
|
276
|
+
return PDFWorkerStreamRangeReader;
|
277
|
+
}();
|