pdfjs-dist 2.2.228 → 2.6.347
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/README.md +4 -0
- package/bower.json +1 -1
- package/build/pdf.js +8816 -19300
- package/build/pdf.js.map +1 -1
- package/build/pdf.min.js +22 -1
- package/build/pdf.worker.entry.js +5 -3
- package/build/pdf.worker.js +27185 -35746
- package/build/pdf.worker.js.map +1 -1
- package/build/pdf.worker.min.js +22 -1
- package/es5/build/pdf.js +26665 -0
- package/es5/build/pdf.js.map +1 -0
- package/es5/build/pdf.min.js +22 -0
- package/{lib/shared/global_scope.js → es5/build/pdf.worker.entry.js} +5 -10
- package/es5/build/pdf.worker.js +61231 -0
- package/es5/build/pdf.worker.js.map +1 -0
- package/es5/build/pdf.worker.min.js +22 -0
- package/es5/image_decoders/pdf.image_decoders.js +12529 -0
- package/es5/image_decoders/pdf.image_decoders.js.map +1 -0
- package/es5/image_decoders/pdf.image_decoders.min.js +22 -0
- package/es5/web/images/annotation-check.svg +11 -0
- package/es5/web/images/annotation-comment.svg +16 -0
- package/es5/web/images/annotation-help.svg +26 -0
- package/es5/web/images/annotation-insert.svg +10 -0
- package/es5/web/images/annotation-key.svg +11 -0
- package/es5/web/images/annotation-newparagraph.svg +11 -0
- package/es5/web/images/annotation-noicon.svg +7 -0
- package/es5/web/images/annotation-note.svg +42 -0
- package/es5/web/images/annotation-paragraph.svg +16 -0
- package/es5/web/images/loading-icon.gif +0 -0
- package/es5/web/images/shadow.png +0 -0
- package/es5/web/pdf_viewer.css +406 -0
- package/es5/web/pdf_viewer.js +7886 -0
- package/es5/web/pdf_viewer.js.map +1 -0
- package/image_decoders/pdf.image_decoders.js +1498 -4832
- package/image_decoders/pdf.image_decoders.js.map +1 -1
- package/image_decoders/pdf.image_decoders.min.js +22 -1
- package/lib/README.md +7 -0
- package/lib/core/annotation.js +1144 -927
- package/lib/core/arithmetic_decoder.js +81 -97
- package/lib/core/bidi.js +54 -46
- package/lib/core/ccitt.js +88 -81
- package/lib/core/ccitt_stream.js +15 -14
- package/lib/core/cff_parser.js +747 -716
- package/lib/core/charsets.js +4 -4
- package/lib/core/chunked_stream.js +462 -553
- package/lib/core/cmap.js +231 -277
- package/lib/core/colorspace.js +715 -857
- package/lib/core/core_utils.js +57 -52
- package/lib/core/crypto.js +416 -437
- package/lib/core/document.js +629 -670
- package/lib/core/encodings.js +15 -15
- package/lib/core/evaluator.js +3229 -2800
- package/lib/core/font_renderer.js +135 -178
- package/lib/core/fonts.js +602 -534
- package/lib/core/function.js +355 -279
- package/lib/core/glyphlist.js +4527 -4526
- package/lib/core/image.js +442 -439
- package/lib/core/image_utils.js +221 -61
- package/lib/core/jbig2.js +325 -316
- package/lib/core/jbig2_stream.js +18 -17
- package/lib/core/jpeg_stream.js +21 -26
- package/lib/core/jpg.js +289 -233
- package/lib/core/jpx.js +161 -143
- package/lib/core/jpx_stream.js +28 -28
- package/lib/core/metrics.js +2928 -2928
- package/lib/core/murmurhash3.js +87 -102
- package/lib/core/obj.js +1343 -1300
- package/lib/core/operator_list.js +90 -67
- package/lib/core/parser.js +990 -987
- package/lib/core/pattern.js +105 -77
- package/lib/core/pdf_manager.js +149 -316
- package/lib/core/primitives.js +156 -104
- package/lib/core/ps_parser.js +175 -214
- package/lib/core/standard_fonts.js +237 -236
- package/lib/core/stream.js +94 -74
- package/lib/core/type1_parser.js +89 -69
- package/lib/core/unicode.js +1654 -1654
- package/lib/core/worker.js +275 -290
- package/lib/core/worker_stream.js +101 -210
- package/lib/core/writer.js +242 -0
- package/lib/display/annotation_layer.js +772 -1041
- package/lib/display/annotation_storage.js +89 -0
- package/lib/display/api.js +1575 -1868
- package/lib/display/api_compatibility.js +12 -17
- package/lib/display/canvas.js +370 -222
- package/lib/display/content_disposition.js +40 -59
- package/lib/display/display_utils.js +341 -536
- package/lib/display/fetch_stream.js +188 -304
- package/lib/display/font_loader.js +282 -414
- package/lib/display/metadata.js +81 -99
- package/lib/display/network.js +362 -511
- package/lib/display/network_utils.js +25 -18
- package/lib/display/node_stream.js +283 -465
- package/lib/display/node_utils.js +87 -0
- package/lib/display/optional_content_config.js +184 -0
- package/lib/display/pattern_helper.js +93 -44
- package/lib/display/svg.js +1163 -1401
- package/lib/display/text_layer.js +154 -137
- package/lib/display/transport_stream.js +237 -375
- package/lib/display/webgl.js +70 -83
- package/lib/display/worker_options.js +3 -3
- package/lib/display/xml_parser.js +303 -392
- package/lib/examples/node/domstubs.js +37 -37
- package/lib/pdf.js +220 -58
- package/lib/pdf.worker.js +14 -6
- package/lib/shared/compatibility.js +3 -246
- package/lib/shared/is_node.js +7 -6
- package/lib/shared/message_handler.js +327 -332
- package/lib/shared/util.js +271 -306
- package/lib/test/unit/annotation_spec.js +1902 -763
- package/lib/test/unit/annotation_storage_spec.js +83 -0
- package/lib/test/unit/api_spec.js +790 -592
- package/lib/test/unit/bidi_spec.js +7 -7
- package/lib/test/unit/cff_parser_spec.js +73 -72
- package/lib/test/unit/clitests_helper.js +7 -9
- package/lib/test/unit/cmap_spec.js +86 -88
- package/lib/test/unit/colorspace_spec.js +346 -154
- package/lib/test/unit/core_utils_spec.js +125 -105
- package/lib/test/unit/crypto_spec.js +232 -185
- package/lib/test/unit/custom_spec.js +150 -24
- package/lib/test/unit/display_svg_spec.js +34 -39
- package/lib/test/unit/display_utils_spec.js +139 -149
- package/lib/test/unit/document_spec.js +128 -17
- package/lib/test/unit/encodings_spec.js +12 -34
- package/lib/test/unit/evaluator_spec.js +112 -91
- package/lib/test/unit/fetch_stream_spec.js +31 -29
- package/lib/test/unit/function_spec.js +206 -204
- package/lib/test/unit/jasmine-boot.js +48 -32
- package/lib/test/unit/message_handler_spec.js +173 -159
- package/lib/test/unit/metadata_spec.js +71 -71
- package/lib/test/unit/murmurhash3_spec.js +12 -12
- package/lib/test/unit/network_spec.js +13 -11
- package/lib/test/unit/network_utils_spec.js +158 -144
- package/lib/test/unit/node_stream_spec.js +76 -90
- package/lib/test/unit/parser_spec.js +108 -114
- package/lib/test/unit/pdf_find_controller_spec.js +55 -86
- package/lib/test/unit/pdf_find_utils_spec.js +32 -32
- package/lib/test/unit/pdf_history_spec.js +32 -32
- package/lib/test/unit/primitives_spec.js +337 -156
- package/lib/test/unit/stream_spec.js +16 -14
- package/lib/test/unit/test_utils.js +91 -304
- package/lib/test/unit/testreporter.js +33 -22
- package/lib/test/unit/type1_parser_spec.js +42 -42
- package/lib/test/unit/ui_utils_spec.js +299 -461
- package/lib/test/unit/unicode_spec.js +42 -42
- package/lib/test/unit/util_spec.js +129 -149
- package/lib/test/unit/writer_spec.js +84 -0
- package/lib/web/annotation_layer_builder.js +78 -111
- package/lib/web/app.js +1542 -1267
- package/lib/web/app_options.js +76 -91
- package/lib/web/base_tree_viewer.js +100 -0
- package/lib/web/base_viewer.js +869 -834
- package/lib/web/chromecom.js +165 -252
- package/lib/web/debugger.js +149 -205
- package/lib/web/download_manager.js +34 -58
- package/lib/web/firefox_print_service.js +62 -34
- package/lib/web/firefoxcom.js +206 -374
- package/lib/web/genericcom.js +26 -108
- package/lib/web/genericl10n.js +24 -153
- package/lib/web/grab_to_pan.js +30 -30
- package/lib/web/interfaces.js +80 -254
- package/lib/web/overlay_manager.js +70 -246
- package/lib/web/password_prompt.js +38 -64
- package/lib/web/pdf_attachment_viewer.js +150 -126
- package/lib/web/pdf_cursor_tools.js +75 -102
- package/lib/web/pdf_document_properties.js +229 -383
- package/lib/web/pdf_find_bar.js +136 -170
- package/lib/web/pdf_find_controller.js +492 -548
- package/lib/web/pdf_find_utils.js +13 -13
- package/lib/web/pdf_history.js +397 -406
- package/lib/web/pdf_layer_viewer.js +208 -0
- package/lib/web/pdf_link_service.js +304 -348
- package/lib/web/pdf_outline_viewer.js +119 -212
- package/lib/web/pdf_page_view.js +474 -513
- package/lib/web/pdf_presentation_mode.js +308 -357
- package/lib/web/pdf_print_service.js +96 -110
- package/lib/web/pdf_rendering_queue.js +87 -108
- package/lib/web/pdf_sidebar.js +286 -302
- package/lib/web/pdf_sidebar_resizer.js +92 -119
- package/lib/web/pdf_single_page_viewer.js +77 -126
- package/lib/web/pdf_thumbnail_view.js +289 -297
- package/lib/web/pdf_thumbnail_viewer.js +202 -206
- package/lib/web/pdf_viewer.component.js +20 -21
- package/lib/web/pdf_viewer.js +55 -115
- package/lib/web/preferences.js +69 -273
- package/lib/web/secondary_toolbar.js +164 -196
- package/lib/web/text_layer_builder.js +284 -319
- package/lib/web/toolbar.js +217 -210
- package/lib/web/ui_utils.js +274 -421
- package/lib/web/view_history.js +52 -226
- package/lib/web/viewer_compatibility.js +21 -6
- package/package.json +4 -9
- package/types/display/annotation_layer.d.ts +61 -0
- package/types/display/annotation_storage.d.ts +36 -0
- package/types/display/api.d.ts +1107 -0
- package/types/display/api_compatibility.d.ts +1 -0
- package/types/display/canvas.d.ts +4 -0
- package/types/display/content_disposition.d.ts +7 -0
- package/types/display/display_utils.d.ts +243 -0
- package/types/display/fetch_stream.d.ts +67 -0
- package/types/display/font_loader.d.ts +19 -0
- package/types/display/metadata.d.ts +9 -0
- package/types/display/network.d.ts +80 -0
- package/types/display/network_utils.d.ts +14 -0
- package/types/display/node_stream.d.ts +72 -0
- package/types/display/node_utils.d.ts +6 -0
- package/types/display/optional_content_config.d.ts +12 -0
- package/types/display/pattern_helper.d.ts +5 -0
- package/types/display/svg.d.ts +2 -0
- package/types/display/text_layer.d.ts +83 -0
- package/types/display/transport_stream.d.ts +57 -0
- package/types/display/webgl.d.ts +20 -0
- package/types/display/worker_options.d.ts +27 -0
- package/types/display/xml_parser.d.ts +35 -0
- package/types/pdf.d.ts +33 -0
- package/types/shared/compatibility.d.ts +1 -0
- package/types/shared/is_node.d.ts +1 -0
- package/types/shared/message_handler.d.ts +62 -0
- package/types/shared/util.d.ts +421 -0
- package/web/images/shadow.png +0 -0
- package/web/pdf_viewer.css +29 -27
- package/web/pdf_viewer.js +3524 -4746
- package/web/pdf_viewer.js.map +1 -1
- package/webpack.js +6 -5
- package/external/streams/streams-lib.js +0 -3962
- package/external/url/url-lib.js +0 -627
- package/lib/shared/streams_polyfill.js +0 -43
- package/lib/shared/url_polyfill.js +0 -56
- package/web/images/texture.png +0 -0
@@ -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 2020 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.
|
@@ -26,41 +26,41 @@ Object.defineProperty(exports, "__esModule", {
|
|
26
26
|
});
|
27
27
|
exports.PDFFetchStream = void 0;
|
28
28
|
|
29
|
-
var
|
29
|
+
var _util = require("../shared/util.js");
|
30
30
|
|
31
|
-
var
|
31
|
+
var _network_utils = require("./network_utils.js");
|
32
32
|
|
33
|
-
|
34
|
-
|
35
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
36
|
-
|
37
|
-
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); } }
|
38
|
-
|
39
|
-
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); }); }; }
|
40
|
-
|
41
|
-
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
42
|
-
|
43
|
-
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); } }
|
44
|
-
|
45
|
-
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
33
|
+
;
|
46
34
|
|
47
35
|
function createFetchOptions(headers, withCredentials, abortController) {
|
48
36
|
return {
|
49
|
-
method:
|
50
|
-
headers
|
37
|
+
method: "GET",
|
38
|
+
headers,
|
51
39
|
signal: abortController && abortController.signal,
|
52
|
-
mode:
|
53
|
-
credentials: withCredentials ?
|
54
|
-
redirect:
|
40
|
+
mode: "cors",
|
41
|
+
credentials: withCredentials ? "include" : "same-origin",
|
42
|
+
redirect: "follow"
|
55
43
|
};
|
56
44
|
}
|
57
45
|
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
46
|
+
function createHeaders(httpHeaders) {
|
47
|
+
const headers = new Headers();
|
48
|
+
|
49
|
+
for (const property in httpHeaders) {
|
50
|
+
const value = httpHeaders[property];
|
51
|
+
|
52
|
+
if (typeof value === "undefined") {
|
53
|
+
continue;
|
54
|
+
}
|
55
|
+
|
56
|
+
headers.append(property, value);
|
57
|
+
}
|
63
58
|
|
59
|
+
return headers;
|
60
|
+
}
|
61
|
+
|
62
|
+
class PDFFetchStream {
|
63
|
+
constructor(source) {
|
64
64
|
this.source = source;
|
65
65
|
this.isHttp = /^https?:/i.test(source.url);
|
66
66
|
this.httpHeaders = this.isHttp && source.httpHeaders || {};
|
@@ -68,64 +68,51 @@ function () {
|
|
68
68
|
this._rangeRequestReaders = [];
|
69
69
|
}
|
70
70
|
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
(0, _util.assert)(!this._fullRequestReader);
|
75
|
-
this._fullRequestReader = new PDFFetchStreamReader(this);
|
76
|
-
return this._fullRequestReader;
|
77
|
-
}
|
78
|
-
}, {
|
79
|
-
key: "getRangeReader",
|
80
|
-
value: function getRangeReader(begin, end) {
|
81
|
-
if (end <= this._progressiveDataLength) {
|
82
|
-
return null;
|
83
|
-
}
|
84
|
-
|
85
|
-
var reader = new PDFFetchStreamRangeReader(this, begin, end);
|
71
|
+
get _progressiveDataLength() {
|
72
|
+
return this._fullRequestReader ? this._fullRequestReader._loaded : 0;
|
73
|
+
}
|
86
74
|
|
87
|
-
|
75
|
+
getFullReader() {
|
76
|
+
(0, _util.assert)(!this._fullRequestReader, "PDFFetchStream.getFullReader can only be called once.");
|
77
|
+
this._fullRequestReader = new PDFFetchStreamReader(this);
|
78
|
+
return this._fullRequestReader;
|
79
|
+
}
|
88
80
|
|
89
|
-
|
81
|
+
getRangeReader(begin, end) {
|
82
|
+
if (end <= this._progressiveDataLength) {
|
83
|
+
return null;
|
90
84
|
}
|
91
|
-
}, {
|
92
|
-
key: "cancelAllRequests",
|
93
|
-
value: function cancelAllRequests(reason) {
|
94
|
-
if (this._fullRequestReader) {
|
95
|
-
this._fullRequestReader.cancel(reason);
|
96
|
-
}
|
97
85
|
|
98
|
-
|
86
|
+
const reader = new PDFFetchStreamRangeReader(this, begin, end);
|
99
87
|
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
88
|
+
this._rangeRequestReaders.push(reader);
|
89
|
+
|
90
|
+
return reader;
|
91
|
+
}
|
92
|
+
|
93
|
+
cancelAllRequests(reason) {
|
94
|
+
if (this._fullRequestReader) {
|
95
|
+
this._fullRequestReader.cancel(reason);
|
108
96
|
}
|
109
|
-
}]);
|
110
97
|
|
111
|
-
|
112
|
-
}();
|
98
|
+
const readers = this._rangeRequestReaders.slice(0);
|
113
99
|
|
114
|
-
|
100
|
+
readers.forEach(function (reader) {
|
101
|
+
reader.cancel(reason);
|
102
|
+
});
|
103
|
+
}
|
115
104
|
|
116
|
-
|
117
|
-
/*#__PURE__*/
|
118
|
-
function () {
|
119
|
-
function PDFFetchStreamReader(stream) {
|
120
|
-
var _this = this;
|
105
|
+
}
|
121
106
|
|
122
|
-
|
107
|
+
exports.PDFFetchStream = PDFFetchStream;
|
123
108
|
|
109
|
+
class PDFFetchStreamReader {
|
110
|
+
constructor(stream) {
|
124
111
|
this._stream = stream;
|
125
112
|
this._reader = null;
|
126
113
|
this._loaded = 0;
|
127
114
|
this._filename = null;
|
128
|
-
|
115
|
+
const source = stream.source;
|
129
116
|
this._withCredentials = source.withCredentials || false;
|
130
117
|
this._contentLength = source.length;
|
131
118
|
this._headersCapability = (0, _util.createPromiseCapability)();
|
@@ -136,290 +123,187 @@ function () {
|
|
136
123
|
this._disableRange = true;
|
137
124
|
}
|
138
125
|
|
139
|
-
if (typeof AbortController !==
|
126
|
+
if (typeof AbortController !== "undefined") {
|
140
127
|
this._abortController = new AbortController();
|
141
128
|
}
|
142
129
|
|
143
130
|
this._isStreamingSupported = !source.disableStream;
|
144
131
|
this._isRangeSupported = !source.disableRange;
|
145
|
-
this._headers =
|
146
|
-
|
147
|
-
|
148
|
-
var value = this._stream.httpHeaders[property];
|
149
|
-
|
150
|
-
if (typeof value === 'undefined') {
|
151
|
-
continue;
|
152
|
-
}
|
153
|
-
|
154
|
-
this._headers.append(property, value);
|
155
|
-
}
|
156
|
-
|
157
|
-
var url = source.url;
|
158
|
-
fetch(url, createFetchOptions(this._headers, this._withCredentials, this._abortController)).then(function (response) {
|
132
|
+
this._headers = createHeaders(this._stream.httpHeaders);
|
133
|
+
const url = source.url;
|
134
|
+
fetch(url, createFetchOptions(this._headers, this._withCredentials, this._abortController)).then(response => {
|
159
135
|
if (!(0, _network_utils.validateResponseStatus)(response.status)) {
|
160
136
|
throw (0, _network_utils.createResponseStatusError)(response.status, url);
|
161
137
|
}
|
162
138
|
|
163
|
-
|
139
|
+
this._reader = response.body.getReader();
|
164
140
|
|
165
|
-
|
141
|
+
this._headersCapability.resolve();
|
166
142
|
|
167
|
-
|
143
|
+
const getResponseHeader = name => {
|
168
144
|
return response.headers.get(name);
|
169
145
|
};
|
170
146
|
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
if (!
|
185
|
-
|
147
|
+
const {
|
148
|
+
allowRangeRequests,
|
149
|
+
suggestedLength
|
150
|
+
} = (0, _network_utils.validateRangeRequestCapabilities)({
|
151
|
+
getResponseHeader,
|
152
|
+
isHttp: this._stream.isHttp,
|
153
|
+
rangeChunkSize: this._rangeChunkSize,
|
154
|
+
disableRange: this._disableRange
|
155
|
+
});
|
156
|
+
this._isRangeSupported = allowRangeRequests;
|
157
|
+
this._contentLength = suggestedLength || this._contentLength;
|
158
|
+
this._filename = (0, _network_utils.extractFilenameFromHeader)(getResponseHeader);
|
159
|
+
|
160
|
+
if (!this._isStreamingSupported && this._isRangeSupported) {
|
161
|
+
this.cancel(new _util.AbortException("Streaming is disabled."));
|
186
162
|
}
|
187
|
-
})
|
163
|
+
}).catch(this._headersCapability.reject);
|
188
164
|
this.onProgress = null;
|
189
165
|
}
|
190
166
|
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
var _read = _asyncToGenerator(
|
195
|
-
/*#__PURE__*/
|
196
|
-
_regenerator["default"].mark(function _callee() {
|
197
|
-
var _ref, value, done, buffer;
|
198
|
-
|
199
|
-
return _regenerator["default"].wrap(function _callee$(_context) {
|
200
|
-
while (1) {
|
201
|
-
switch (_context.prev = _context.next) {
|
202
|
-
case 0:
|
203
|
-
_context.next = 2;
|
204
|
-
return this._headersCapability.promise;
|
205
|
-
|
206
|
-
case 2:
|
207
|
-
_context.next = 4;
|
208
|
-
return this._reader.read();
|
209
|
-
|
210
|
-
case 4:
|
211
|
-
_ref = _context.sent;
|
212
|
-
value = _ref.value;
|
213
|
-
done = _ref.done;
|
214
|
-
|
215
|
-
if (!done) {
|
216
|
-
_context.next = 9;
|
217
|
-
break;
|
218
|
-
}
|
219
|
-
|
220
|
-
return _context.abrupt("return", {
|
221
|
-
value: value,
|
222
|
-
done: done
|
223
|
-
});
|
224
|
-
|
225
|
-
case 9:
|
226
|
-
this._loaded += value.byteLength;
|
227
|
-
|
228
|
-
if (this.onProgress) {
|
229
|
-
this.onProgress({
|
230
|
-
loaded: this._loaded,
|
231
|
-
total: this._contentLength
|
232
|
-
});
|
233
|
-
}
|
234
|
-
|
235
|
-
buffer = new Uint8Array(value).buffer;
|
236
|
-
return _context.abrupt("return", {
|
237
|
-
value: buffer,
|
238
|
-
done: false
|
239
|
-
});
|
240
|
-
|
241
|
-
case 13:
|
242
|
-
case "end":
|
243
|
-
return _context.stop();
|
244
|
-
}
|
245
|
-
}
|
246
|
-
}, _callee, this);
|
247
|
-
}));
|
248
|
-
|
249
|
-
function read() {
|
250
|
-
return _read.apply(this, arguments);
|
251
|
-
}
|
167
|
+
get headersReady() {
|
168
|
+
return this._headersCapability.promise;
|
169
|
+
}
|
252
170
|
|
253
|
-
|
254
|
-
|
255
|
-
}
|
256
|
-
key: "cancel",
|
257
|
-
value: function cancel(reason) {
|
258
|
-
if (this._reader) {
|
259
|
-
this._reader.cancel(reason);
|
260
|
-
}
|
171
|
+
get filename() {
|
172
|
+
return this._filename;
|
173
|
+
}
|
261
174
|
|
262
|
-
|
263
|
-
|
264
|
-
|
265
|
-
|
266
|
-
|
267
|
-
|
268
|
-
|
269
|
-
|
270
|
-
|
271
|
-
|
272
|
-
|
273
|
-
|
274
|
-
|
275
|
-
|
276
|
-
|
277
|
-
|
278
|
-
|
279
|
-
|
280
|
-
|
281
|
-
|
282
|
-
|
283
|
-
|
284
|
-
|
175
|
+
get contentLength() {
|
176
|
+
return this._contentLength;
|
177
|
+
}
|
178
|
+
|
179
|
+
get isRangeSupported() {
|
180
|
+
return this._isRangeSupported;
|
181
|
+
}
|
182
|
+
|
183
|
+
get isStreamingSupported() {
|
184
|
+
return this._isStreamingSupported;
|
185
|
+
}
|
186
|
+
|
187
|
+
async read() {
|
188
|
+
await this._headersCapability.promise;
|
189
|
+
const {
|
190
|
+
value,
|
191
|
+
done
|
192
|
+
} = await this._reader.read();
|
193
|
+
|
194
|
+
if (done) {
|
195
|
+
return {
|
196
|
+
value,
|
197
|
+
done
|
198
|
+
};
|
285
199
|
}
|
286
|
-
|
287
|
-
|
288
|
-
|
289
|
-
|
200
|
+
|
201
|
+
this._loaded += value.byteLength;
|
202
|
+
|
203
|
+
if (this.onProgress) {
|
204
|
+
this.onProgress({
|
205
|
+
loaded: this._loaded,
|
206
|
+
total: this._contentLength
|
207
|
+
});
|
290
208
|
}
|
291
|
-
}]);
|
292
209
|
|
293
|
-
|
294
|
-
|
210
|
+
const buffer = new Uint8Array(value).buffer;
|
211
|
+
return {
|
212
|
+
value: buffer,
|
213
|
+
done: false
|
214
|
+
};
|
215
|
+
}
|
216
|
+
|
217
|
+
cancel(reason) {
|
218
|
+
if (this._reader) {
|
219
|
+
this._reader.cancel(reason);
|
220
|
+
}
|
295
221
|
|
296
|
-
|
297
|
-
|
298
|
-
|
299
|
-
|
300
|
-
var _this2 = this;
|
222
|
+
if (this._abortController) {
|
223
|
+
this._abortController.abort();
|
224
|
+
}
|
225
|
+
}
|
301
226
|
|
302
|
-
|
227
|
+
}
|
303
228
|
|
229
|
+
class PDFFetchStreamRangeReader {
|
230
|
+
constructor(stream, begin, end) {
|
304
231
|
this._stream = stream;
|
305
232
|
this._reader = null;
|
306
233
|
this._loaded = 0;
|
307
|
-
|
234
|
+
const source = stream.source;
|
308
235
|
this._withCredentials = source.withCredentials || false;
|
309
236
|
this._readCapability = (0, _util.createPromiseCapability)();
|
310
237
|
this._isStreamingSupported = !source.disableStream;
|
311
238
|
|
312
|
-
if (typeof AbortController !==
|
239
|
+
if (typeof AbortController !== "undefined") {
|
313
240
|
this._abortController = new AbortController();
|
314
241
|
}
|
315
242
|
|
316
|
-
this._headers =
|
243
|
+
this._headers = createHeaders(this._stream.httpHeaders);
|
317
244
|
|
318
|
-
|
319
|
-
var value = this._stream.httpHeaders[property];
|
245
|
+
this._headers.append("Range", `bytes=${begin}-${end - 1}`);
|
320
246
|
|
321
|
-
|
322
|
-
|
323
|
-
}
|
324
|
-
|
325
|
-
this._headers.append(property, value);
|
326
|
-
}
|
327
|
-
|
328
|
-
this._headers.append('Range', "bytes=".concat(begin, "-").concat(end - 1));
|
329
|
-
|
330
|
-
var url = source.url;
|
331
|
-
fetch(url, createFetchOptions(this._headers, this._withCredentials, this._abortController)).then(function (response) {
|
247
|
+
const url = source.url;
|
248
|
+
fetch(url, createFetchOptions(this._headers, this._withCredentials, this._abortController)).then(response => {
|
332
249
|
if (!(0, _network_utils.validateResponseStatus)(response.status)) {
|
333
250
|
throw (0, _network_utils.createResponseStatusError)(response.status, url);
|
334
251
|
}
|
335
252
|
|
336
|
-
|
253
|
+
this._readCapability.resolve();
|
254
|
+
|
255
|
+
this._reader = response.body.getReader();
|
256
|
+
}).catch(reason => {
|
257
|
+
if (reason && reason.name === "AbortError") {
|
258
|
+
return;
|
259
|
+
}
|
337
260
|
|
338
|
-
|
261
|
+
throw reason;
|
339
262
|
});
|
340
263
|
this.onProgress = null;
|
341
264
|
}
|
342
265
|
|
343
|
-
|
344
|
-
|
345
|
-
|
346
|
-
var _read2 = _asyncToGenerator(
|
347
|
-
/*#__PURE__*/
|
348
|
-
_regenerator["default"].mark(function _callee2() {
|
349
|
-
var _ref2, value, done, buffer;
|
350
|
-
|
351
|
-
return _regenerator["default"].wrap(function _callee2$(_context2) {
|
352
|
-
while (1) {
|
353
|
-
switch (_context2.prev = _context2.next) {
|
354
|
-
case 0:
|
355
|
-
_context2.next = 2;
|
356
|
-
return this._readCapability.promise;
|
357
|
-
|
358
|
-
case 2:
|
359
|
-
_context2.next = 4;
|
360
|
-
return this._reader.read();
|
361
|
-
|
362
|
-
case 4:
|
363
|
-
_ref2 = _context2.sent;
|
364
|
-
value = _ref2.value;
|
365
|
-
done = _ref2.done;
|
366
|
-
|
367
|
-
if (!done) {
|
368
|
-
_context2.next = 9;
|
369
|
-
break;
|
370
|
-
}
|
371
|
-
|
372
|
-
return _context2.abrupt("return", {
|
373
|
-
value: value,
|
374
|
-
done: done
|
375
|
-
});
|
376
|
-
|
377
|
-
case 9:
|
378
|
-
this._loaded += value.byteLength;
|
379
|
-
|
380
|
-
if (this.onProgress) {
|
381
|
-
this.onProgress({
|
382
|
-
loaded: this._loaded
|
383
|
-
});
|
384
|
-
}
|
385
|
-
|
386
|
-
buffer = new Uint8Array(value).buffer;
|
387
|
-
return _context2.abrupt("return", {
|
388
|
-
value: buffer,
|
389
|
-
done: false
|
390
|
-
});
|
391
|
-
|
392
|
-
case 13:
|
393
|
-
case "end":
|
394
|
-
return _context2.stop();
|
395
|
-
}
|
396
|
-
}
|
397
|
-
}, _callee2, this);
|
398
|
-
}));
|
399
|
-
|
400
|
-
function read() {
|
401
|
-
return _read2.apply(this, arguments);
|
402
|
-
}
|
266
|
+
get isStreamingSupported() {
|
267
|
+
return this._isStreamingSupported;
|
268
|
+
}
|
403
269
|
|
404
|
-
|
405
|
-
|
406
|
-
|
407
|
-
|
408
|
-
|
409
|
-
|
410
|
-
|
411
|
-
|
270
|
+
async read() {
|
271
|
+
await this._readCapability.promise;
|
272
|
+
const {
|
273
|
+
value,
|
274
|
+
done
|
275
|
+
} = await this._reader.read();
|
276
|
+
|
277
|
+
if (done) {
|
278
|
+
return {
|
279
|
+
value,
|
280
|
+
done
|
281
|
+
};
|
282
|
+
}
|
412
283
|
|
413
|
-
|
414
|
-
|
415
|
-
|
284
|
+
this._loaded += value.byteLength;
|
285
|
+
|
286
|
+
if (this.onProgress) {
|
287
|
+
this.onProgress({
|
288
|
+
loaded: this._loaded
|
289
|
+
});
|
290
|
+
}
|
291
|
+
|
292
|
+
const buffer = new Uint8Array(value).buffer;
|
293
|
+
return {
|
294
|
+
value: buffer,
|
295
|
+
done: false
|
296
|
+
};
|
297
|
+
}
|
298
|
+
|
299
|
+
cancel(reason) {
|
300
|
+
if (this._reader) {
|
301
|
+
this._reader.cancel(reason);
|
416
302
|
}
|
417
|
-
|
418
|
-
|
419
|
-
|
420
|
-
return this._isStreamingSupported;
|
303
|
+
|
304
|
+
if (this._abortController) {
|
305
|
+
this._abortController.abort();
|
421
306
|
}
|
422
|
-
}
|
307
|
+
}
|
423
308
|
|
424
|
-
|
425
|
-
}();
|
309
|
+
}
|