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.

Files changed (229) hide show
  1. package/README.md +4 -0
  2. package/bower.json +1 -1
  3. package/build/pdf.js +8816 -19300
  4. package/build/pdf.js.map +1 -1
  5. package/build/pdf.min.js +22 -1
  6. package/build/pdf.worker.entry.js +5 -3
  7. package/build/pdf.worker.js +27185 -35746
  8. package/build/pdf.worker.js.map +1 -1
  9. package/build/pdf.worker.min.js +22 -1
  10. package/es5/build/pdf.js +26665 -0
  11. package/es5/build/pdf.js.map +1 -0
  12. package/es5/build/pdf.min.js +22 -0
  13. package/{lib/shared/global_scope.js → es5/build/pdf.worker.entry.js} +5 -10
  14. package/es5/build/pdf.worker.js +61231 -0
  15. package/es5/build/pdf.worker.js.map +1 -0
  16. package/es5/build/pdf.worker.min.js +22 -0
  17. package/es5/image_decoders/pdf.image_decoders.js +12529 -0
  18. package/es5/image_decoders/pdf.image_decoders.js.map +1 -0
  19. package/es5/image_decoders/pdf.image_decoders.min.js +22 -0
  20. package/es5/web/images/annotation-check.svg +11 -0
  21. package/es5/web/images/annotation-comment.svg +16 -0
  22. package/es5/web/images/annotation-help.svg +26 -0
  23. package/es5/web/images/annotation-insert.svg +10 -0
  24. package/es5/web/images/annotation-key.svg +11 -0
  25. package/es5/web/images/annotation-newparagraph.svg +11 -0
  26. package/es5/web/images/annotation-noicon.svg +7 -0
  27. package/es5/web/images/annotation-note.svg +42 -0
  28. package/es5/web/images/annotation-paragraph.svg +16 -0
  29. package/es5/web/images/loading-icon.gif +0 -0
  30. package/es5/web/images/shadow.png +0 -0
  31. package/es5/web/pdf_viewer.css +406 -0
  32. package/es5/web/pdf_viewer.js +7886 -0
  33. package/es5/web/pdf_viewer.js.map +1 -0
  34. package/image_decoders/pdf.image_decoders.js +1498 -4832
  35. package/image_decoders/pdf.image_decoders.js.map +1 -1
  36. package/image_decoders/pdf.image_decoders.min.js +22 -1
  37. package/lib/README.md +7 -0
  38. package/lib/core/annotation.js +1144 -927
  39. package/lib/core/arithmetic_decoder.js +81 -97
  40. package/lib/core/bidi.js +54 -46
  41. package/lib/core/ccitt.js +88 -81
  42. package/lib/core/ccitt_stream.js +15 -14
  43. package/lib/core/cff_parser.js +747 -716
  44. package/lib/core/charsets.js +4 -4
  45. package/lib/core/chunked_stream.js +462 -553
  46. package/lib/core/cmap.js +231 -277
  47. package/lib/core/colorspace.js +715 -857
  48. package/lib/core/core_utils.js +57 -52
  49. package/lib/core/crypto.js +416 -437
  50. package/lib/core/document.js +629 -670
  51. package/lib/core/encodings.js +15 -15
  52. package/lib/core/evaluator.js +3229 -2800
  53. package/lib/core/font_renderer.js +135 -178
  54. package/lib/core/fonts.js +602 -534
  55. package/lib/core/function.js +355 -279
  56. package/lib/core/glyphlist.js +4527 -4526
  57. package/lib/core/image.js +442 -439
  58. package/lib/core/image_utils.js +221 -61
  59. package/lib/core/jbig2.js +325 -316
  60. package/lib/core/jbig2_stream.js +18 -17
  61. package/lib/core/jpeg_stream.js +21 -26
  62. package/lib/core/jpg.js +289 -233
  63. package/lib/core/jpx.js +161 -143
  64. package/lib/core/jpx_stream.js +28 -28
  65. package/lib/core/metrics.js +2928 -2928
  66. package/lib/core/murmurhash3.js +87 -102
  67. package/lib/core/obj.js +1343 -1300
  68. package/lib/core/operator_list.js +90 -67
  69. package/lib/core/parser.js +990 -987
  70. package/lib/core/pattern.js +105 -77
  71. package/lib/core/pdf_manager.js +149 -316
  72. package/lib/core/primitives.js +156 -104
  73. package/lib/core/ps_parser.js +175 -214
  74. package/lib/core/standard_fonts.js +237 -236
  75. package/lib/core/stream.js +94 -74
  76. package/lib/core/type1_parser.js +89 -69
  77. package/lib/core/unicode.js +1654 -1654
  78. package/lib/core/worker.js +275 -290
  79. package/lib/core/worker_stream.js +101 -210
  80. package/lib/core/writer.js +242 -0
  81. package/lib/display/annotation_layer.js +772 -1041
  82. package/lib/display/annotation_storage.js +89 -0
  83. package/lib/display/api.js +1575 -1868
  84. package/lib/display/api_compatibility.js +12 -17
  85. package/lib/display/canvas.js +370 -222
  86. package/lib/display/content_disposition.js +40 -59
  87. package/lib/display/display_utils.js +341 -536
  88. package/lib/display/fetch_stream.js +188 -304
  89. package/lib/display/font_loader.js +282 -414
  90. package/lib/display/metadata.js +81 -99
  91. package/lib/display/network.js +362 -511
  92. package/lib/display/network_utils.js +25 -18
  93. package/lib/display/node_stream.js +283 -465
  94. package/lib/display/node_utils.js +87 -0
  95. package/lib/display/optional_content_config.js +184 -0
  96. package/lib/display/pattern_helper.js +93 -44
  97. package/lib/display/svg.js +1163 -1401
  98. package/lib/display/text_layer.js +154 -137
  99. package/lib/display/transport_stream.js +237 -375
  100. package/lib/display/webgl.js +70 -83
  101. package/lib/display/worker_options.js +3 -3
  102. package/lib/display/xml_parser.js +303 -392
  103. package/lib/examples/node/domstubs.js +37 -37
  104. package/lib/pdf.js +220 -58
  105. package/lib/pdf.worker.js +14 -6
  106. package/lib/shared/compatibility.js +3 -246
  107. package/lib/shared/is_node.js +7 -6
  108. package/lib/shared/message_handler.js +327 -332
  109. package/lib/shared/util.js +271 -306
  110. package/lib/test/unit/annotation_spec.js +1902 -763
  111. package/lib/test/unit/annotation_storage_spec.js +83 -0
  112. package/lib/test/unit/api_spec.js +790 -592
  113. package/lib/test/unit/bidi_spec.js +7 -7
  114. package/lib/test/unit/cff_parser_spec.js +73 -72
  115. package/lib/test/unit/clitests_helper.js +7 -9
  116. package/lib/test/unit/cmap_spec.js +86 -88
  117. package/lib/test/unit/colorspace_spec.js +346 -154
  118. package/lib/test/unit/core_utils_spec.js +125 -105
  119. package/lib/test/unit/crypto_spec.js +232 -185
  120. package/lib/test/unit/custom_spec.js +150 -24
  121. package/lib/test/unit/display_svg_spec.js +34 -39
  122. package/lib/test/unit/display_utils_spec.js +139 -149
  123. package/lib/test/unit/document_spec.js +128 -17
  124. package/lib/test/unit/encodings_spec.js +12 -34
  125. package/lib/test/unit/evaluator_spec.js +112 -91
  126. package/lib/test/unit/fetch_stream_spec.js +31 -29
  127. package/lib/test/unit/function_spec.js +206 -204
  128. package/lib/test/unit/jasmine-boot.js +48 -32
  129. package/lib/test/unit/message_handler_spec.js +173 -159
  130. package/lib/test/unit/metadata_spec.js +71 -71
  131. package/lib/test/unit/murmurhash3_spec.js +12 -12
  132. package/lib/test/unit/network_spec.js +13 -11
  133. package/lib/test/unit/network_utils_spec.js +158 -144
  134. package/lib/test/unit/node_stream_spec.js +76 -90
  135. package/lib/test/unit/parser_spec.js +108 -114
  136. package/lib/test/unit/pdf_find_controller_spec.js +55 -86
  137. package/lib/test/unit/pdf_find_utils_spec.js +32 -32
  138. package/lib/test/unit/pdf_history_spec.js +32 -32
  139. package/lib/test/unit/primitives_spec.js +337 -156
  140. package/lib/test/unit/stream_spec.js +16 -14
  141. package/lib/test/unit/test_utils.js +91 -304
  142. package/lib/test/unit/testreporter.js +33 -22
  143. package/lib/test/unit/type1_parser_spec.js +42 -42
  144. package/lib/test/unit/ui_utils_spec.js +299 -461
  145. package/lib/test/unit/unicode_spec.js +42 -42
  146. package/lib/test/unit/util_spec.js +129 -149
  147. package/lib/test/unit/writer_spec.js +84 -0
  148. package/lib/web/annotation_layer_builder.js +78 -111
  149. package/lib/web/app.js +1542 -1267
  150. package/lib/web/app_options.js +76 -91
  151. package/lib/web/base_tree_viewer.js +100 -0
  152. package/lib/web/base_viewer.js +869 -834
  153. package/lib/web/chromecom.js +165 -252
  154. package/lib/web/debugger.js +149 -205
  155. package/lib/web/download_manager.js +34 -58
  156. package/lib/web/firefox_print_service.js +62 -34
  157. package/lib/web/firefoxcom.js +206 -374
  158. package/lib/web/genericcom.js +26 -108
  159. package/lib/web/genericl10n.js +24 -153
  160. package/lib/web/grab_to_pan.js +30 -30
  161. package/lib/web/interfaces.js +80 -254
  162. package/lib/web/overlay_manager.js +70 -246
  163. package/lib/web/password_prompt.js +38 -64
  164. package/lib/web/pdf_attachment_viewer.js +150 -126
  165. package/lib/web/pdf_cursor_tools.js +75 -102
  166. package/lib/web/pdf_document_properties.js +229 -383
  167. package/lib/web/pdf_find_bar.js +136 -170
  168. package/lib/web/pdf_find_controller.js +492 -548
  169. package/lib/web/pdf_find_utils.js +13 -13
  170. package/lib/web/pdf_history.js +397 -406
  171. package/lib/web/pdf_layer_viewer.js +208 -0
  172. package/lib/web/pdf_link_service.js +304 -348
  173. package/lib/web/pdf_outline_viewer.js +119 -212
  174. package/lib/web/pdf_page_view.js +474 -513
  175. package/lib/web/pdf_presentation_mode.js +308 -357
  176. package/lib/web/pdf_print_service.js +96 -110
  177. package/lib/web/pdf_rendering_queue.js +87 -108
  178. package/lib/web/pdf_sidebar.js +286 -302
  179. package/lib/web/pdf_sidebar_resizer.js +92 -119
  180. package/lib/web/pdf_single_page_viewer.js +77 -126
  181. package/lib/web/pdf_thumbnail_view.js +289 -297
  182. package/lib/web/pdf_thumbnail_viewer.js +202 -206
  183. package/lib/web/pdf_viewer.component.js +20 -21
  184. package/lib/web/pdf_viewer.js +55 -115
  185. package/lib/web/preferences.js +69 -273
  186. package/lib/web/secondary_toolbar.js +164 -196
  187. package/lib/web/text_layer_builder.js +284 -319
  188. package/lib/web/toolbar.js +217 -210
  189. package/lib/web/ui_utils.js +274 -421
  190. package/lib/web/view_history.js +52 -226
  191. package/lib/web/viewer_compatibility.js +21 -6
  192. package/package.json +4 -9
  193. package/types/display/annotation_layer.d.ts +61 -0
  194. package/types/display/annotation_storage.d.ts +36 -0
  195. package/types/display/api.d.ts +1107 -0
  196. package/types/display/api_compatibility.d.ts +1 -0
  197. package/types/display/canvas.d.ts +4 -0
  198. package/types/display/content_disposition.d.ts +7 -0
  199. package/types/display/display_utils.d.ts +243 -0
  200. package/types/display/fetch_stream.d.ts +67 -0
  201. package/types/display/font_loader.d.ts +19 -0
  202. package/types/display/metadata.d.ts +9 -0
  203. package/types/display/network.d.ts +80 -0
  204. package/types/display/network_utils.d.ts +14 -0
  205. package/types/display/node_stream.d.ts +72 -0
  206. package/types/display/node_utils.d.ts +6 -0
  207. package/types/display/optional_content_config.d.ts +12 -0
  208. package/types/display/pattern_helper.d.ts +5 -0
  209. package/types/display/svg.d.ts +2 -0
  210. package/types/display/text_layer.d.ts +83 -0
  211. package/types/display/transport_stream.d.ts +57 -0
  212. package/types/display/webgl.d.ts +20 -0
  213. package/types/display/worker_options.d.ts +27 -0
  214. package/types/display/xml_parser.d.ts +35 -0
  215. package/types/pdf.d.ts +33 -0
  216. package/types/shared/compatibility.d.ts +1 -0
  217. package/types/shared/is_node.d.ts +1 -0
  218. package/types/shared/message_handler.d.ts +62 -0
  219. package/types/shared/util.d.ts +421 -0
  220. package/web/images/shadow.png +0 -0
  221. package/web/pdf_viewer.css +29 -27
  222. package/web/pdf_viewer.js +3524 -4746
  223. package/web/pdf_viewer.js.map +1 -1
  224. package/webpack.js +6 -5
  225. package/external/streams/streams-lib.js +0 -3962
  226. package/external/url/url-lib.js +0 -627
  227. package/lib/shared/streams_polyfill.js +0 -43
  228. package/lib/shared/url_polyfill.js +0 -56
  229. 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 2019 Mozilla Foundation
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,37 +26,17 @@ Object.defineProperty(exports, "__esModule", {
26
26
  });
27
27
  exports.PDFDataTransportStream = void 0;
28
28
 
29
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
29
+ var _util = require("../shared/util.js");
30
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 PDFDataTransportStream =
46
- /*#__PURE__*/
47
- function () {
48
- function PDFDataTransportStream(params, pdfDataRangeTransport) {
49
- var _this = this;
50
-
51
- _classCallCheck(this, PDFDataTransportStream);
52
-
53
- (0, _util.assert)(pdfDataRangeTransport);
31
+ class PDFDataTransportStream {
32
+ constructor(params, pdfDataRangeTransport) {
33
+ (0, _util.assert)(pdfDataRangeTransport, 'PDFDataTransportStream - missing required "pdfDataRangeTransport" argument.');
54
34
  this._queuedChunks = [];
55
35
  this._progressiveDone = params.progressiveDone || false;
56
- var initialData = params.initialData;
36
+ const initialData = params.initialData;
57
37
 
58
38
  if (initialData && initialData.length > 0) {
59
- var buffer = new Uint8Array(initialData).buffer;
39
+ const buffer = new Uint8Array(initialData).buffer;
60
40
 
61
41
  this._queuedChunks.push(buffer);
62
42
  }
@@ -68,183 +48,147 @@ function () {
68
48
  this._fullRequestReader = null;
69
49
  this._rangeReaders = [];
70
50
 
71
- this._pdfDataRangeTransport.addRangeListener(function (begin, chunk) {
72
- _this._onReceiveData({
73
- begin: begin,
74
- chunk: chunk
51
+ this._pdfDataRangeTransport.addRangeListener((begin, chunk) => {
52
+ this._onReceiveData({
53
+ begin,
54
+ chunk
75
55
  });
76
56
  });
77
57
 
78
- this._pdfDataRangeTransport.addProgressListener(function (loaded, total) {
79
- _this._onProgress({
80
- loaded: loaded,
81
- total: total
58
+ this._pdfDataRangeTransport.addProgressListener((loaded, total) => {
59
+ this._onProgress({
60
+ loaded,
61
+ total
82
62
  });
83
63
  });
84
64
 
85
- this._pdfDataRangeTransport.addProgressiveReadListener(function (chunk) {
86
- _this._onReceiveData({
87
- chunk: chunk
65
+ this._pdfDataRangeTransport.addProgressiveReadListener(chunk => {
66
+ this._onReceiveData({
67
+ chunk
88
68
  });
89
69
  });
90
70
 
91
- this._pdfDataRangeTransport.addProgressiveDoneListener(function () {
92
- _this._onProgressiveDone();
71
+ this._pdfDataRangeTransport.addProgressiveDoneListener(() => {
72
+ this._onProgressiveDone();
93
73
  });
94
74
 
95
75
  this._pdfDataRangeTransport.transportReady();
96
76
  }
97
77
 
98
- _createClass(PDFDataTransportStream, [{
99
- key: "_onReceiveData",
100
- value: function _onReceiveData(args) {
101
- var buffer = new Uint8Array(args.chunk).buffer;
78
+ _onReceiveData(args) {
79
+ const buffer = new Uint8Array(args.chunk).buffer;
102
80
 
103
- if (args.begin === undefined) {
104
- if (this._fullRequestReader) {
105
- this._fullRequestReader._enqueue(buffer);
106
- } else {
107
- this._queuedChunks.push(buffer);
108
- }
81
+ if (args.begin === undefined) {
82
+ if (this._fullRequestReader) {
83
+ this._fullRequestReader._enqueue(buffer);
109
84
  } else {
110
- var found = this._rangeReaders.some(function (rangeReader) {
111
- if (rangeReader._begin !== args.begin) {
112
- return false;
113
- }
85
+ this._queuedChunks.push(buffer);
86
+ }
87
+ } else {
88
+ const found = this._rangeReaders.some(function (rangeReader) {
89
+ if (rangeReader._begin !== args.begin) {
90
+ return false;
91
+ }
114
92
 
115
- rangeReader._enqueue(buffer);
93
+ rangeReader._enqueue(buffer);
116
94
 
117
- return true;
118
- });
95
+ return true;
96
+ });
119
97
 
120
- (0, _util.assert)(found);
121
- }
98
+ (0, _util.assert)(found, "_onReceiveData - no `PDFDataTransportStreamRangeReader` instance found.");
122
99
  }
123
- }, {
124
- key: "_onProgress",
125
- value: function _onProgress(evt) {
126
- if (evt.total === undefined) {
127
- var firstReader = this._rangeReaders[0];
128
-
129
- if (firstReader && firstReader.onProgress) {
130
- firstReader.onProgress({
131
- loaded: evt.loaded
132
- });
133
- }
134
- } else {
135
- var fullReader = this._fullRequestReader;
100
+ }
136
101
 
137
- if (fullReader && fullReader.onProgress) {
138
- fullReader.onProgress({
139
- loaded: evt.loaded,
140
- total: evt.total
141
- });
142
- }
143
- }
144
- }
145
- }, {
146
- key: "_onProgressiveDone",
147
- value: function _onProgressiveDone() {
148
- if (this._fullRequestReader) {
149
- this._fullRequestReader.progressiveDone();
150
- }
102
+ get _progressiveDataLength() {
103
+ return this._fullRequestReader ? this._fullRequestReader._loaded : 0;
104
+ }
151
105
 
152
- this._progressiveDone = true;
153
- }
154
- }, {
155
- key: "_removeRangeReader",
156
- value: function _removeRangeReader(reader) {
157
- var i = this._rangeReaders.indexOf(reader);
106
+ _onProgress(evt) {
107
+ if (evt.total === undefined) {
108
+ const firstReader = this._rangeReaders[0];
158
109
 
159
- if (i >= 0) {
160
- this._rangeReaders.splice(i, 1);
110
+ if (firstReader && firstReader.onProgress) {
111
+ firstReader.onProgress({
112
+ loaded: evt.loaded
113
+ });
114
+ }
115
+ } else {
116
+ const fullReader = this._fullRequestReader;
117
+
118
+ if (fullReader && fullReader.onProgress) {
119
+ fullReader.onProgress({
120
+ loaded: evt.loaded,
121
+ total: evt.total
122
+ });
161
123
  }
162
124
  }
163
- }, {
164
- key: "getFullReader",
165
- value: function getFullReader() {
166
- (0, _util.assert)(!this._fullRequestReader);
167
- var queuedChunks = this._queuedChunks;
168
- this._queuedChunks = null;
169
- return new PDFDataTransportStreamReader(this, queuedChunks, this._progressiveDone);
125
+ }
126
+
127
+ _onProgressiveDone() {
128
+ if (this._fullRequestReader) {
129
+ this._fullRequestReader.progressiveDone();
170
130
  }
171
- }, {
172
- key: "getRangeReader",
173
- value: function getRangeReader(begin, end) {
174
- if (end <= this._progressiveDataLength) {
175
- return null;
176
- }
177
131
 
178
- var reader = new PDFDataTransportStreamRangeReader(this, begin, end);
132
+ this._progressiveDone = true;
133
+ }
134
+
135
+ _removeRangeReader(reader) {
136
+ const i = this._rangeReaders.indexOf(reader);
179
137
 
180
- this._pdfDataRangeTransport.requestDataRange(begin, end);
138
+ if (i >= 0) {
139
+ this._rangeReaders.splice(i, 1);
140
+ }
141
+ }
181
142
 
182
- this._rangeReaders.push(reader);
143
+ getFullReader() {
144
+ (0, _util.assert)(!this._fullRequestReader, "PDFDataTransportStream.getFullReader can only be called once.");
145
+ const queuedChunks = this._queuedChunks;
146
+ this._queuedChunks = null;
147
+ return new PDFDataTransportStreamReader(this, queuedChunks, this._progressiveDone);
148
+ }
183
149
 
184
- return reader;
150
+ getRangeReader(begin, end) {
151
+ if (end <= this._progressiveDataLength) {
152
+ return null;
185
153
  }
186
- }, {
187
- key: "cancelAllRequests",
188
- value: function cancelAllRequests(reason) {
189
- if (this._fullRequestReader) {
190
- this._fullRequestReader.cancel(reason);
191
- }
192
154
 
193
- var readers = this._rangeReaders.slice(0);
155
+ const reader = new PDFDataTransportStreamRangeReader(this, begin, end);
194
156
 
195
- readers.forEach(function (rangeReader) {
196
- rangeReader.cancel(reason);
197
- });
157
+ this._pdfDataRangeTransport.requestDataRange(begin, end);
198
158
 
199
- this._pdfDataRangeTransport.abort();
200
- }
201
- }, {
202
- key: "_progressiveDataLength",
203
- get: function get() {
204
- return this._fullRequestReader ? this._fullRequestReader._loaded : 0;
159
+ this._rangeReaders.push(reader);
160
+
161
+ return reader;
162
+ }
163
+
164
+ cancelAllRequests(reason) {
165
+ if (this._fullRequestReader) {
166
+ this._fullRequestReader.cancel(reason);
205
167
  }
206
- }]);
207
168
 
208
- return PDFDataTransportStream;
209
- }();
169
+ const readers = this._rangeReaders.slice(0);
210
170
 
211
- exports.PDFDataTransportStream = PDFDataTransportStream;
171
+ readers.forEach(function (rangeReader) {
172
+ rangeReader.cancel(reason);
173
+ });
212
174
 
213
- var PDFDataTransportStreamReader =
214
- /*#__PURE__*/
215
- function () {
216
- function PDFDataTransportStreamReader(stream, queuedChunks) {
217
- var progressiveDone = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
175
+ this._pdfDataRangeTransport.abort();
176
+ }
177
+
178
+ }
218
179
 
219
- _classCallCheck(this, PDFDataTransportStreamReader);
180
+ exports.PDFDataTransportStream = PDFDataTransportStream;
220
181
 
182
+ class PDFDataTransportStreamReader {
183
+ constructor(stream, queuedChunks, progressiveDone = false) {
221
184
  this._stream = stream;
222
185
  this._done = progressiveDone || false;
223
186
  this._filename = null;
224
187
  this._queuedChunks = queuedChunks || [];
225
188
  this._loaded = 0;
226
- var _iteratorNormalCompletion = true;
227
- var _didIteratorError = false;
228
- var _iteratorError = undefined;
229
-
230
- try {
231
- for (var _iterator = this._queuedChunks[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
232
- var chunk = _step.value;
233
- this._loaded += chunk.byteLength;
234
- }
235
- } catch (err) {
236
- _didIteratorError = true;
237
- _iteratorError = err;
238
- } finally {
239
- try {
240
- if (!_iteratorNormalCompletion && _iterator["return"] != null) {
241
- _iterator["return"]();
242
- }
243
- } finally {
244
- if (_didIteratorError) {
245
- throw _iteratorError;
246
- }
247
- }
189
+
190
+ for (const chunk of this._queuedChunks) {
191
+ this._loaded += chunk.byteLength;
248
192
  }
249
193
 
250
194
  this._requests = [];
@@ -253,139 +197,94 @@ function () {
253
197
  this.onProgress = null;
254
198
  }
255
199
 
256
- _createClass(PDFDataTransportStreamReader, [{
257
- key: "_enqueue",
258
- value: function _enqueue(chunk) {
259
- if (this._done) {
260
- return;
261
- }
200
+ _enqueue(chunk) {
201
+ if (this._done) {
202
+ return;
203
+ }
262
204
 
263
- if (this._requests.length > 0) {
264
- var requestCapability = this._requests.shift();
205
+ if (this._requests.length > 0) {
206
+ const requestCapability = this._requests.shift();
265
207
 
266
- requestCapability.resolve({
267
- value: chunk,
268
- done: false
269
- });
270
- } else {
271
- this._queuedChunks.push(chunk);
272
- }
273
-
274
- this._loaded += chunk.byteLength;
208
+ requestCapability.resolve({
209
+ value: chunk,
210
+ done: false
211
+ });
212
+ } else {
213
+ this._queuedChunks.push(chunk);
275
214
  }
276
- }, {
277
- key: "read",
278
- value: function () {
279
- var _read = _asyncToGenerator(
280
- /*#__PURE__*/
281
- _regenerator["default"].mark(function _callee() {
282
- var chunk, requestCapability;
283
- return _regenerator["default"].wrap(function _callee$(_context) {
284
- while (1) {
285
- switch (_context.prev = _context.next) {
286
- case 0:
287
- if (!(this._queuedChunks.length > 0)) {
288
- _context.next = 3;
289
- break;
290
- }
291
-
292
- chunk = this._queuedChunks.shift();
293
- return _context.abrupt("return", {
294
- value: chunk,
295
- done: false
296
- });
297
-
298
- case 3:
299
- if (!this._done) {
300
- _context.next = 5;
301
- break;
302
- }
303
-
304
- return _context.abrupt("return", {
305
- value: undefined,
306
- done: true
307
- });
308
-
309
- case 5:
310
- requestCapability = (0, _util.createPromiseCapability)();
311
-
312
- this._requests.push(requestCapability);
313
-
314
- return _context.abrupt("return", requestCapability.promise);
315
-
316
- case 8:
317
- case "end":
318
- return _context.stop();
319
- }
320
- }
321
- }, _callee, this);
322
- }));
323
-
324
- function read() {
325
- return _read.apply(this, arguments);
326
- }
327
215
 
328
- return read;
329
- }()
330
- }, {
331
- key: "cancel",
332
- value: function cancel(reason) {
333
- this._done = true;
216
+ this._loaded += chunk.byteLength;
217
+ }
334
218
 
335
- this._requests.forEach(function (requestCapability) {
336
- requestCapability.resolve({
337
- value: undefined,
338
- done: true
339
- });
340
- });
219
+ get headersReady() {
220
+ return this._headersReady;
221
+ }
341
222
 
342
- this._requests = [];
343
- }
344
- }, {
345
- key: "progressiveDone",
346
- value: function progressiveDone() {
347
- if (this._done) {
348
- return;
349
- }
223
+ get filename() {
224
+ return this._filename;
225
+ }
350
226
 
351
- this._done = true;
352
- }
353
- }, {
354
- key: "headersReady",
355
- get: function get() {
356
- return this._headersReady;
357
- }
358
- }, {
359
- key: "filename",
360
- get: function get() {
361
- return this._filename;
362
- }
363
- }, {
364
- key: "isRangeSupported",
365
- get: function get() {
366
- return this._stream._isRangeSupported;
227
+ get isRangeSupported() {
228
+ return this._stream._isRangeSupported;
229
+ }
230
+
231
+ get isStreamingSupported() {
232
+ return this._stream._isStreamingSupported;
233
+ }
234
+
235
+ get contentLength() {
236
+ return this._stream._contentLength;
237
+ }
238
+
239
+ async read() {
240
+ if (this._queuedChunks.length > 0) {
241
+ const chunk = this._queuedChunks.shift();
242
+
243
+ return {
244
+ value: chunk,
245
+ done: false
246
+ };
367
247
  }
368
- }, {
369
- key: "isStreamingSupported",
370
- get: function get() {
371
- return this._stream._isStreamingSupported;
248
+
249
+ if (this._done) {
250
+ return {
251
+ value: undefined,
252
+ done: true
253
+ };
372
254
  }
373
- }, {
374
- key: "contentLength",
375
- get: function get() {
376
- return this._stream._contentLength;
255
+
256
+ const requestCapability = (0, _util.createPromiseCapability)();
257
+
258
+ this._requests.push(requestCapability);
259
+
260
+ return requestCapability.promise;
261
+ }
262
+
263
+ cancel(reason) {
264
+ this._done = true;
265
+
266
+ this._requests.forEach(function (requestCapability) {
267
+ requestCapability.resolve({
268
+ value: undefined,
269
+ done: true
270
+ });
271
+ });
272
+
273
+ this._requests = [];
274
+ }
275
+
276
+ progressiveDone() {
277
+ if (this._done) {
278
+ return;
377
279
  }
378
- }]);
379
280
 
380
- return PDFDataTransportStreamReader;
381
- }();
281
+ this._done = true;
282
+ }
382
283
 
383
- var PDFDataTransportStreamRangeReader =
384
- /*#__PURE__*/
385
- function () {
386
- function PDFDataTransportStreamRangeReader(stream, begin, end) {
387
- _classCallCheck(this, PDFDataTransportStreamRangeReader);
284
+ }
388
285
 
286
+ class PDFDataTransportStreamRangeReader {
287
+ constructor(stream, begin, end) {
389
288
  this._stream = stream;
390
289
  this._begin = begin;
391
290
  this._end = end;
@@ -395,96 +294,20 @@ function () {
395
294
  this.onProgress = null;
396
295
  }
397
296
 
398
- _createClass(PDFDataTransportStreamRangeReader, [{
399
- key: "_enqueue",
400
- value: function _enqueue(chunk) {
401
- if (this._done) {
402
- return;
403
- }
404
-
405
- if (this._requests.length === 0) {
406
- this._queuedChunk = chunk;
407
- } else {
408
- var requestsCapability = this._requests.shift();
409
-
410
- requestsCapability.resolve({
411
- value: chunk,
412
- done: false
413
- });
414
-
415
- this._requests.forEach(function (requestCapability) {
416
- requestCapability.resolve({
417
- value: undefined,
418
- done: true
419
- });
420
- });
421
-
422
- this._requests = [];
423
- }
424
-
425
- this._done = true;
426
-
427
- this._stream._removeRangeReader(this);
297
+ _enqueue(chunk) {
298
+ if (this._done) {
299
+ return;
428
300
  }
429
- }, {
430
- key: "read",
431
- value: function () {
432
- var _read2 = _asyncToGenerator(
433
- /*#__PURE__*/
434
- _regenerator["default"].mark(function _callee2() {
435
- var chunk, requestCapability;
436
- return _regenerator["default"].wrap(function _callee2$(_context2) {
437
- while (1) {
438
- switch (_context2.prev = _context2.next) {
439
- case 0:
440
- if (!this._queuedChunk) {
441
- _context2.next = 4;
442
- break;
443
- }
444
-
445
- chunk = this._queuedChunk;
446
- this._queuedChunk = null;
447
- return _context2.abrupt("return", {
448
- value: chunk,
449
- done: false
450
- });
451
-
452
- case 4:
453
- if (!this._done) {
454
- _context2.next = 6;
455
- break;
456
- }
457
-
458
- return _context2.abrupt("return", {
459
- value: undefined,
460
- done: true
461
- });
462
-
463
- case 6:
464
- requestCapability = (0, _util.createPromiseCapability)();
465
-
466
- this._requests.push(requestCapability);
467
-
468
- return _context2.abrupt("return", requestCapability.promise);
469
-
470
- case 9:
471
- case "end":
472
- return _context2.stop();
473
- }
474
- }
475
- }, _callee2, this);
476
- }));
477
-
478
- function read() {
479
- return _read2.apply(this, arguments);
480
- }
481
301
 
482
- return read;
483
- }()
484
- }, {
485
- key: "cancel",
486
- value: function cancel(reason) {
487
- this._done = true;
302
+ if (this._requests.length === 0) {
303
+ this._queuedChunk = chunk;
304
+ } else {
305
+ const requestsCapability = this._requests.shift();
306
+
307
+ requestsCapability.resolve({
308
+ value: chunk,
309
+ done: false
310
+ });
488
311
 
489
312
  this._requests.forEach(function (requestCapability) {
490
313
  requestCapability.resolve({
@@ -494,15 +317,54 @@ function () {
494
317
  });
495
318
 
496
319
  this._requests = [];
320
+ }
497
321
 
498
- this._stream._removeRangeReader(this);
322
+ this._done = true;
323
+
324
+ this._stream._removeRangeReader(this);
325
+ }
326
+
327
+ get isStreamingSupported() {
328
+ return false;
329
+ }
330
+
331
+ async read() {
332
+ if (this._queuedChunk) {
333
+ const chunk = this._queuedChunk;
334
+ this._queuedChunk = null;
335
+ return {
336
+ value: chunk,
337
+ done: false
338
+ };
499
339
  }
500
- }, {
501
- key: "isStreamingSupported",
502
- get: function get() {
503
- return false;
340
+
341
+ if (this._done) {
342
+ return {
343
+ value: undefined,
344
+ done: true
345
+ };
504
346
  }
505
- }]);
506
347
 
507
- return PDFDataTransportStreamRangeReader;
508
- }();
348
+ const requestCapability = (0, _util.createPromiseCapability)();
349
+
350
+ this._requests.push(requestCapability);
351
+
352
+ return requestCapability.promise;
353
+ }
354
+
355
+ cancel(reason) {
356
+ this._done = true;
357
+
358
+ this._requests.forEach(function (requestCapability) {
359
+ requestCapability.resolve({
360
+ value: undefined,
361
+ done: true
362
+ });
363
+ });
364
+
365
+ this._requests = [];
366
+
367
+ this._stream._removeRangeReader(this);
368
+ }
369
+
370
+ }