pdfjs-dist 2.0.550 → 2.3.200

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of pdfjs-dist might be problematic. Click here for more details.

Files changed (168) hide show
  1. package/CODE_OF_CONDUCT.md +15 -0
  2. package/bower.json +1 -1
  3. package/build/pdf.js +21618 -14369
  4. package/build/pdf.js.map +1 -1
  5. package/build/pdf.min.js +1 -1
  6. package/build/pdf.worker.js +22758 -11399
  7. package/build/pdf.worker.js.map +1 -1
  8. package/build/pdf.worker.min.js +1 -1
  9. package/image_decoders/pdf.image_decoders.js +11500 -0
  10. package/image_decoders/pdf.image_decoders.js.map +1 -0
  11. package/image_decoders/pdf.image_decoders.min.js +1 -0
  12. package/lib/core/annotation.js +767 -258
  13. package/lib/core/arithmetic_decoder.js +275 -245
  14. package/lib/core/bidi.js +65 -6
  15. package/lib/core/ccitt.js +173 -18
  16. package/lib/core/ccitt_stream.js +15 -6
  17. package/lib/core/cff_parser.js +433 -61
  18. package/lib/core/charsets.js +5 -4
  19. package/lib/core/chunked_stream.js +428 -157
  20. package/lib/core/cmap.js +326 -87
  21. package/lib/core/colorspace.js +874 -594
  22. package/lib/core/core_utils.js +173 -0
  23. package/lib/core/crypto.js +290 -45
  24. package/lib/core/document.js +575 -272
  25. package/lib/core/encodings.js +19 -10
  26. package/lib/core/evaluator.js +1032 -351
  27. package/lib/core/font_renderer.js +331 -97
  28. package/lib/core/fonts.js +813 -196
  29. package/lib/core/function.js +253 -27
  30. package/lib/core/glyphlist.js +5 -3
  31. package/lib/core/image.js +169 -62
  32. package/lib/core/image_utils.js +111 -0
  33. package/lib/core/jbig2.js +502 -72
  34. package/lib/core/jbig2_stream.js +19 -8
  35. package/lib/core/jpeg_stream.js +38 -13
  36. package/lib/core/jpg.js +293 -52
  37. package/lib/core/jpx.js +419 -12
  38. package/lib/core/jpx_stream.js +18 -6
  39. package/lib/core/metrics.js +15 -15
  40. package/lib/core/murmurhash3.js +56 -34
  41. package/lib/core/obj.js +1368 -500
  42. package/lib/core/operator_list.js +159 -43
  43. package/lib/core/parser.js +544 -199
  44. package/lib/core/pattern.js +170 -21
  45. package/lib/core/pdf_manager.js +324 -134
  46. package/lib/core/primitives.js +169 -61
  47. package/lib/core/ps_parser.js +134 -45
  48. package/lib/core/standard_fonts.js +17 -17
  49. package/lib/core/stream.js +327 -34
  50. package/lib/core/type1_parser.js +148 -8
  51. package/lib/core/unicode.js +32 -5
  52. package/lib/core/worker.js +215 -229
  53. package/lib/core/worker_stream.js +277 -0
  54. package/lib/display/annotation_layer.js +618 -192
  55. package/lib/display/api.js +1798 -882
  56. package/lib/display/api_compatibility.js +5 -10
  57. package/lib/display/canvas.js +366 -45
  58. package/lib/display/content_disposition.js +71 -24
  59. package/lib/display/display_utils.js +777 -0
  60. package/lib/display/fetch_stream.js +205 -87
  61. package/lib/display/font_loader.js +468 -236
  62. package/lib/display/metadata.js +38 -16
  63. package/lib/display/network.js +635 -428
  64. package/lib/display/network_utils.js +38 -19
  65. package/lib/display/node_stream.js +367 -175
  66. package/lib/display/pattern_helper.js +103 -36
  67. package/lib/display/svg.js +1232 -519
  68. package/lib/display/text_layer.js +208 -75
  69. package/lib/display/transport_stream.js +345 -94
  70. package/lib/display/webgl.js +64 -18
  71. package/lib/display/worker_options.js +5 -4
  72. package/lib/display/xml_parser.js +166 -53
  73. package/lib/examples/node/domstubs.js +60 -4
  74. package/lib/pdf.js +35 -14
  75. package/lib/pdf.worker.js +5 -3
  76. package/lib/shared/compatibility.js +170 -572
  77. package/lib/shared/global_scope.js +2 -2
  78. package/lib/shared/is_node.js +4 -4
  79. package/lib/shared/message_handler.js +216 -163
  80. package/lib/shared/streams_polyfill.js +21 -17
  81. package/lib/shared/util.js +495 -385
  82. package/lib/test/unit/annotation_spec.js +1464 -401
  83. package/lib/test/unit/api_spec.js +718 -361
  84. package/lib/test/unit/bidi_spec.js +7 -7
  85. package/lib/test/unit/cff_parser_spec.js +54 -11
  86. package/lib/test/unit/clitests_helper.js +9 -10
  87. package/lib/test/unit/cmap_spec.js +95 -41
  88. package/lib/test/unit/colorspace_spec.js +115 -63
  89. package/lib/test/unit/core_utils_spec.js +191 -0
  90. package/lib/test/unit/crypto_spec.js +17 -5
  91. package/lib/test/unit/custom_spec.js +43 -55
  92. package/lib/test/unit/display_svg_spec.js +34 -18
  93. package/lib/test/unit/display_utils_spec.js +273 -0
  94. package/lib/test/unit/document_spec.js +8 -13
  95. package/lib/test/unit/encodings_spec.js +25 -45
  96. package/lib/test/unit/evaluator_spec.js +59 -20
  97. package/lib/test/unit/fetch_stream_spec.js +111 -0
  98. package/lib/test/unit/function_spec.js +17 -5
  99. package/lib/test/unit/jasmine-boot.js +33 -20
  100. package/lib/test/unit/message_handler_spec.js +30 -13
  101. package/lib/test/unit/metadata_spec.js +71 -11
  102. package/lib/test/unit/murmurhash3_spec.js +3 -3
  103. package/lib/test/unit/network_spec.js +22 -55
  104. package/lib/test/unit/network_utils_spec.js +105 -14
  105. package/lib/test/unit/node_stream_spec.js +58 -34
  106. package/lib/test/unit/parser_spec.js +162 -71
  107. package/lib/test/unit/pdf_find_controller_spec.js +230 -0
  108. package/lib/test/unit/pdf_find_utils_spec.js +63 -0
  109. package/lib/test/unit/pdf_history_spec.js +21 -9
  110. package/lib/test/unit/primitives_spec.js +55 -22
  111. package/lib/test/unit/stream_spec.js +12 -4
  112. package/lib/test/unit/test_utils.js +273 -56
  113. package/lib/test/unit/testreporter.js +21 -3
  114. package/lib/test/unit/type1_parser_spec.js +9 -7
  115. package/lib/test/unit/ui_utils_spec.js +236 -36
  116. package/lib/test/unit/unicode_spec.js +18 -15
  117. package/lib/test/unit/util_spec.js +87 -128
  118. package/lib/web/annotation_layer_builder.js +39 -22
  119. package/lib/web/app.js +1252 -609
  120. package/lib/web/app_options.js +103 -65
  121. package/lib/web/base_viewer.js +522 -242
  122. package/lib/web/chromecom.js +259 -117
  123. package/lib/web/debugger.js +166 -22
  124. package/lib/web/download_manager.js +31 -12
  125. package/lib/web/firefox_print_service.js +27 -14
  126. package/lib/web/firefoxcom.js +318 -78
  127. package/lib/web/genericcom.js +89 -30
  128. package/lib/web/genericl10n.js +142 -30
  129. package/lib/web/grab_to_pan.js +28 -4
  130. package/lib/web/interfaces.js +174 -47
  131. package/lib/web/overlay_manager.js +235 -85
  132. package/lib/web/password_prompt.js +22 -14
  133. package/lib/web/pdf_attachment_viewer.js +38 -18
  134. package/lib/web/pdf_cursor_tools.js +39 -16
  135. package/lib/web/pdf_document_properties.js +255 -136
  136. package/lib/web/pdf_find_bar.js +84 -40
  137. package/lib/web/pdf_find_controller.js +495 -184
  138. package/lib/web/pdf_find_utils.js +111 -0
  139. package/lib/web/pdf_history.js +190 -53
  140. package/lib/web/pdf_link_service.js +144 -79
  141. package/lib/web/pdf_outline_viewer.js +124 -47
  142. package/lib/web/pdf_page_view.js +194 -74
  143. package/lib/web/pdf_presentation_mode.js +99 -34
  144. package/lib/web/pdf_print_service.js +59 -13
  145. package/lib/web/pdf_rendering_queue.js +28 -9
  146. package/lib/web/pdf_sidebar.js +144 -81
  147. package/lib/web/pdf_sidebar_resizer.js +42 -16
  148. package/lib/web/pdf_single_page_viewer.js +74 -66
  149. package/lib/web/pdf_thumbnail_view.js +104 -33
  150. package/lib/web/pdf_thumbnail_viewer.js +66 -26
  151. package/lib/web/pdf_viewer.component.js +112 -32
  152. package/lib/web/pdf_viewer.js +82 -87
  153. package/lib/web/preferences.js +284 -91
  154. package/lib/web/secondary_toolbar.js +132 -59
  155. package/lib/web/text_layer_builder.js +134 -59
  156. package/lib/web/toolbar.js +80 -43
  157. package/lib/web/ui_utils.js +400 -134
  158. package/lib/web/view_history.js +215 -67
  159. package/lib/web/viewer_compatibility.js +3 -8
  160. package/package.json +3 -2
  161. package/web/pdf_viewer.css +23 -15
  162. package/web/pdf_viewer.js +3429 -1245
  163. package/web/pdf_viewer.js.map +1 -1
  164. package/external/streams/streams-lib.js +0 -3962
  165. package/lib/display/dom_utils.js +0 -429
  166. package/lib/test/unit/dom_utils_spec.js +0 -89
  167. package/lib/test/unit/fonts_spec.js +0 -81
  168. package/lib/web/dom_events.js +0 -137
@@ -2,7 +2,7 @@
2
2
  * @licstart The following is the entire license notice for the
3
3
  * Javascript code in this page
4
4
  *
5
- * Copyright 2017 Mozilla Foundation
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,67 +19,232 @@
19
19
  * @licend The above is the entire license notice for the
20
20
  * Javascript code in this page
21
21
  */
22
- 'use strict';
22
+ "use strict";
23
23
 
24
24
  Object.defineProperty(exports, "__esModule", {
25
25
  value: true
26
26
  });
27
- exports.TEST_PDFS_PATH = exports.buildGetDocumentParams = exports.XRefMock = exports.NodeCMapReaderFactory = exports.NodeFileReaderFactory = undefined;
27
+ exports.buildGetDocumentParams = buildGetDocumentParams;
28
+ exports.createIdFactory = createIdFactory;
29
+ exports.TEST_PDFS_PATH = exports.XRefMock = exports.NodeCMapReaderFactory = exports.NodeCanvasFactory = exports.NodeFileReaderFactory = exports.DOMFileReaderFactory = void 0;
30
+
31
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
32
+
33
+ var _util = require("../../shared/util");
28
34
 
29
- var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
35
+ var _is_node = _interopRequireDefault(require("../../shared/is_node"));
30
36
 
31
- var _util = require('../../shared/util');
37
+ var _primitives = require("../../core/primitives");
32
38
 
33
- var _is_node = require('../../shared/is_node');
39
+ var _document = require("../../core/document");
34
40
 
35
- var _is_node2 = _interopRequireDefault(_is_node);
41
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
36
42
 
37
- var _primitives = require('../../core/primitives');
43
+ 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
44
 
39
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
45
+ 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
46
 
41
47
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
42
48
 
43
- var NodeFileReaderFactory = function () {
49
+ 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); } }
50
+
51
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
52
+
53
+ var DOMFileReaderFactory =
54
+ /*#__PURE__*/
55
+ function () {
56
+ function DOMFileReaderFactory() {
57
+ _classCallCheck(this, DOMFileReaderFactory);
58
+ }
59
+
60
+ _createClass(DOMFileReaderFactory, null, [{
61
+ key: "fetch",
62
+ value: function (_fetch) {
63
+ function fetch(_x) {
64
+ return _fetch.apply(this, arguments);
65
+ }
66
+
67
+ fetch.toString = function () {
68
+ return _fetch.toString();
69
+ };
70
+
71
+ return fetch;
72
+ }(
73
+ /*#__PURE__*/
74
+ function () {
75
+ var _ref = _asyncToGenerator(
76
+ /*#__PURE__*/
77
+ _regenerator["default"].mark(function _callee(params) {
78
+ var response;
79
+ return _regenerator["default"].wrap(function _callee$(_context) {
80
+ while (1) {
81
+ switch (_context.prev = _context.next) {
82
+ case 0:
83
+ _context.next = 2;
84
+ return fetch(params.path);
85
+
86
+ case 2:
87
+ response = _context.sent;
88
+
89
+ if (response.ok) {
90
+ _context.next = 5;
91
+ break;
92
+ }
93
+
94
+ throw new Error(response.statusText);
95
+
96
+ case 5:
97
+ _context.t0 = Uint8Array;
98
+ _context.next = 8;
99
+ return response.arrayBuffer();
100
+
101
+ case 8:
102
+ _context.t1 = _context.sent;
103
+ return _context.abrupt("return", new _context.t0(_context.t1));
104
+
105
+ case 10:
106
+ case "end":
107
+ return _context.stop();
108
+ }
109
+ }
110
+ }, _callee);
111
+ }));
112
+
113
+ return function (_x2) {
114
+ return _ref.apply(this, arguments);
115
+ };
116
+ }())
117
+ }]);
118
+
119
+ return DOMFileReaderFactory;
120
+ }();
121
+
122
+ exports.DOMFileReaderFactory = DOMFileReaderFactory;
123
+
124
+ var NodeFileReaderFactory =
125
+ /*#__PURE__*/
126
+ function () {
44
127
  function NodeFileReaderFactory() {
45
128
  _classCallCheck(this, NodeFileReaderFactory);
46
129
  }
47
130
 
48
131
  _createClass(NodeFileReaderFactory, null, [{
49
- key: 'fetch',
50
- value: function fetch(params) {
51
- var fs = require('fs');
52
- var file = fs.readFileSync(params.path);
53
- return new Uint8Array(file);
54
- }
132
+ key: "fetch",
133
+ value: function () {
134
+ var _fetch2 = _asyncToGenerator(
135
+ /*#__PURE__*/
136
+ _regenerator["default"].mark(function _callee2(params) {
137
+ var fs;
138
+ return _regenerator["default"].wrap(function _callee2$(_context2) {
139
+ while (1) {
140
+ switch (_context2.prev = _context2.next) {
141
+ case 0:
142
+ fs = require('fs');
143
+ return _context2.abrupt("return", new Promise(function (resolve, reject) {
144
+ fs.readFile(params.path, function (error, data) {
145
+ if (error || !data) {
146
+ reject(error || new Error("Empty file for: ".concat(params.path)));
147
+ return;
148
+ }
149
+
150
+ resolve(new Uint8Array(data));
151
+ });
152
+ }));
153
+
154
+ case 2:
155
+ case "end":
156
+ return _context2.stop();
157
+ }
158
+ }
159
+ }, _callee2);
160
+ }));
161
+
162
+ function fetch(_x3) {
163
+ return _fetch2.apply(this, arguments);
164
+ }
165
+
166
+ return fetch;
167
+ }()
55
168
  }]);
56
169
 
57
170
  return NodeFileReaderFactory;
58
171
  }();
59
172
 
173
+ exports.NodeFileReaderFactory = NodeFileReaderFactory;
60
174
  var TEST_PDFS_PATH = {
61
175
  dom: '../pdfs/',
62
176
  node: './test/pdfs/'
63
177
  };
178
+ exports.TEST_PDFS_PATH = TEST_PDFS_PATH;
179
+
64
180
  function buildGetDocumentParams(filename, options) {
65
181
  var params = Object.create(null);
66
- if ((0, _is_node2.default)()) {
182
+
183
+ if ((0, _is_node["default"])()) {
67
184
  params.url = TEST_PDFS_PATH.node + filename;
68
185
  } else {
69
186
  params.url = new URL(TEST_PDFS_PATH.dom + filename, window.location).href;
70
187
  }
188
+
71
189
  for (var option in options) {
72
190
  params[option] = options[option];
73
191
  }
192
+
74
193
  return params;
75
194
  }
76
195
 
77
- var NodeCMapReaderFactory = function () {
78
- function NodeCMapReaderFactory(_ref) {
79
- var _ref$baseUrl = _ref.baseUrl,
80
- baseUrl = _ref$baseUrl === undefined ? null : _ref$baseUrl,
81
- _ref$isCompressed = _ref.isCompressed,
82
- isCompressed = _ref$isCompressed === undefined ? false : _ref$isCompressed;
196
+ var NodeCanvasFactory =
197
+ /*#__PURE__*/
198
+ function () {
199
+ function NodeCanvasFactory() {
200
+ _classCallCheck(this, NodeCanvasFactory);
201
+ }
202
+
203
+ _createClass(NodeCanvasFactory, [{
204
+ key: "create",
205
+ value: function create(width, height) {
206
+ (0, _util.assert)(width > 0 && height > 0, 'Invalid canvas size');
207
+
208
+ var Canvas = require('canvas');
209
+
210
+ var canvas = Canvas.createCanvas(width, height);
211
+ return {
212
+ canvas: canvas,
213
+ context: canvas.getContext('2d')
214
+ };
215
+ }
216
+ }, {
217
+ key: "reset",
218
+ value: function reset(canvasAndContext, width, height) {
219
+ (0, _util.assert)(canvasAndContext.canvas, 'Canvas is not specified');
220
+ (0, _util.assert)(width > 0 && height > 0, 'Invalid canvas size');
221
+ canvasAndContext.canvas.width = width;
222
+ canvasAndContext.canvas.height = height;
223
+ }
224
+ }, {
225
+ key: "destroy",
226
+ value: function destroy(canvasAndContext) {
227
+ (0, _util.assert)(canvasAndContext.canvas, 'Canvas is not specified');
228
+ canvasAndContext.canvas.width = 0;
229
+ canvasAndContext.canvas.height = 0;
230
+ canvasAndContext.canvas = null;
231
+ canvasAndContext.context = null;
232
+ }
233
+ }]);
234
+
235
+ return NodeCanvasFactory;
236
+ }();
237
+
238
+ exports.NodeCanvasFactory = NodeCanvasFactory;
239
+
240
+ var NodeCMapReaderFactory =
241
+ /*#__PURE__*/
242
+ function () {
243
+ function NodeCMapReaderFactory(_ref2) {
244
+ var _ref2$baseUrl = _ref2.baseUrl,
245
+ baseUrl = _ref2$baseUrl === void 0 ? null : _ref2$baseUrl,
246
+ _ref2$isCompressed = _ref2.isCompressed,
247
+ isCompressed = _ref2$isCompressed === void 0 ? false : _ref2$isCompressed;
83
248
 
84
249
  _classCallCheck(this, NodeCMapReaderFactory);
85
250
 
@@ -88,43 +253,85 @@ var NodeCMapReaderFactory = function () {
88
253
  }
89
254
 
90
255
  _createClass(NodeCMapReaderFactory, [{
91
- key: 'fetch',
92
- value: function fetch(_ref2) {
93
- var _this = this;
256
+ key: "fetch",
257
+ value: function () {
258
+ var _fetch3 = _asyncToGenerator(
259
+ /*#__PURE__*/
260
+ _regenerator["default"].mark(function _callee3(_ref3) {
261
+ var _this = this;
94
262
 
95
- var name = _ref2.name;
263
+ var name, url, compressionType;
264
+ return _regenerator["default"].wrap(function _callee3$(_context3) {
265
+ while (1) {
266
+ switch (_context3.prev = _context3.next) {
267
+ case 0:
268
+ name = _ref3.name;
96
269
 
97
- if (!this.baseUrl) {
98
- return Promise.reject(new Error('The CMap "baseUrl" parameter must be specified, ensure that ' + 'the "cMapUrl" and "cMapPacked" API parameters are provided.'));
99
- }
100
- if (!name) {
101
- return Promise.reject(new Error('CMap name must be specified.'));
102
- }
103
- return new Promise(function (resolve, reject) {
104
- var url = _this.baseUrl + name + (_this.isCompressed ? '.bcmap' : '');
105
- var fs = require('fs');
106
- fs.readFile(url, function (error, data) {
107
- if (error || !data) {
108
- reject(new Error('Unable to load ' + (_this.isCompressed ? 'binary ' : '') + 'CMap at: ' + url));
109
- return;
270
+ if (this.baseUrl) {
271
+ _context3.next = 3;
272
+ break;
273
+ }
274
+
275
+ throw new Error('The CMap "baseUrl" parameter must be specified, ensure that ' + 'the "cMapUrl" and "cMapPacked" API parameters are provided.');
276
+
277
+ case 3:
278
+ if (name) {
279
+ _context3.next = 5;
280
+ break;
281
+ }
282
+
283
+ throw new Error('CMap name must be specified.');
284
+
285
+ case 5:
286
+ url = this.baseUrl + name + (this.isCompressed ? '.bcmap' : '');
287
+ compressionType = this.isCompressed ? _util.CMapCompressionType.BINARY : _util.CMapCompressionType.NONE;
288
+ return _context3.abrupt("return", new Promise(function (resolve, reject) {
289
+ var fs = require('fs');
290
+
291
+ fs.readFile(url, function (error, data) {
292
+ if (error || !data) {
293
+ reject(new Error(error));
294
+ return;
295
+ }
296
+
297
+ resolve({
298
+ cMapData: new Uint8Array(data),
299
+ compressionType: compressionType
300
+ });
301
+ });
302
+ })["catch"](function (reason) {
303
+ throw new Error("Unable to load ".concat(_this.isCompressed ? 'binary ' : '') + "CMap at: ".concat(url));
304
+ }));
305
+
306
+ case 8:
307
+ case "end":
308
+ return _context3.stop();
309
+ }
110
310
  }
111
- resolve({
112
- cMapData: new Uint8Array(data),
113
- compressionType: _this.isCompressed ? _util.CMapCompressionType.BINARY : _util.CMapCompressionType.NONE
114
- });
115
- });
116
- });
117
- }
311
+ }, _callee3, this);
312
+ }));
313
+
314
+ function fetch(_x4) {
315
+ return _fetch3.apply(this, arguments);
316
+ }
317
+
318
+ return fetch;
319
+ }()
118
320
  }]);
119
321
 
120
322
  return NodeCMapReaderFactory;
121
323
  }();
122
324
 
123
- var XRefMock = function () {
325
+ exports.NodeCMapReaderFactory = NodeCMapReaderFactory;
326
+
327
+ var XRefMock =
328
+ /*#__PURE__*/
329
+ function () {
124
330
  function XRefMock(array) {
125
331
  _classCallCheck(this, XRefMock);
126
332
 
127
333
  this._map = Object.create(null);
334
+
128
335
  for (var key in array) {
129
336
  var obj = array[key];
130
337
  this._map[obj.ref.toString()] = obj.data;
@@ -132,25 +339,26 @@ var XRefMock = function () {
132
339
  }
133
340
 
134
341
  _createClass(XRefMock, [{
135
- key: 'fetch',
342
+ key: "fetch",
136
343
  value: function fetch(ref) {
137
344
  return this._map[ref.toString()];
138
345
  }
139
346
  }, {
140
- key: 'fetchAsync',
347
+ key: "fetchAsync",
141
348
  value: function fetchAsync(ref) {
142
349
  return Promise.resolve(this.fetch(ref));
143
350
  }
144
351
  }, {
145
- key: 'fetchIfRef',
352
+ key: "fetchIfRef",
146
353
  value: function fetchIfRef(obj) {
147
354
  if (!(0, _primitives.isRef)(obj)) {
148
355
  return obj;
149
356
  }
357
+
150
358
  return this.fetch(obj);
151
359
  }
152
360
  }, {
153
- key: 'fetchIfRefAsync',
361
+ key: "fetchIfRefAsync",
154
362
  value: function fetchIfRefAsync(obj) {
155
363
  return Promise.resolve(this.fetchIfRef(obj));
156
364
  }
@@ -159,8 +367,17 @@ var XRefMock = function () {
159
367
  return XRefMock;
160
368
  }();
161
369
 
162
- exports.NodeFileReaderFactory = NodeFileReaderFactory;
163
- exports.NodeCMapReaderFactory = NodeCMapReaderFactory;
164
370
  exports.XRefMock = XRefMock;
165
- exports.buildGetDocumentParams = buildGetDocumentParams;
166
- exports.TEST_PDFS_PATH = TEST_PDFS_PATH;
371
+
372
+ function createIdFactory(pageIndex) {
373
+ var page = new _document.Page({
374
+ pdfManager: {
375
+ get docId() {
376
+ return 'd0';
377
+ }
378
+
379
+ },
380
+ pageIndex: pageIndex
381
+ });
382
+ return page.idFactory;
383
+ }
@@ -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 2017 Mozilla Foundation
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.
@@ -26,6 +26,7 @@ var TestReporter = function TestReporter(browser, appPath) {
26
26
  var r = new XMLHttpRequest();
27
27
  r.open('POST', action, true);
28
28
  r.setRequestHeader('Content-Type', 'application/json');
29
+
29
30
  r.onreadystatechange = function sendTaskResultOnreadystatechange(e) {
30
31
  if (r.readyState === 4) {
31
32
  if (r.status !== 200) {
@@ -37,47 +38,64 @@ var TestReporter = function TestReporter(browser, appPath) {
37
38
  }
38
39
  }
39
40
  };
41
+
40
42
  json['browser'] = browser;
41
43
  r.send(JSON.stringify(json));
42
44
  }
45
+
43
46
  function sendInfo(message) {
44
- send('/info', { message: message });
47
+ send('/info', {
48
+ message: message
49
+ });
45
50
  }
51
+
46
52
  function sendResult(status, description, error) {
47
53
  var message = {
48
54
  status: status,
49
55
  description: description
50
56
  };
57
+
51
58
  if (typeof error !== 'undefined') {
52
59
  message['error'] = error;
53
60
  }
61
+
54
62
  send('/submit_task_results', message);
55
63
  }
64
+
56
65
  function sendQuitRequest() {
57
66
  send('/tellMeToQuit?path=' + escape(appPath), {});
58
67
  }
68
+
59
69
  this.now = function () {
60
70
  return new Date().getTime();
61
71
  };
72
+
62
73
  this.jasmineStarted = function (suiteInfo) {
63
74
  this.runnerStartTime = this.now();
64
- sendInfo('Started unit tests for ' + browser + '.');
75
+ sendInfo('Started tests for ' + browser + '.');
65
76
  };
77
+
66
78
  this.suiteStarted = function (result) {};
79
+
67
80
  this.specStarted = function (result) {};
81
+
68
82
  this.specDone = function (result) {
69
83
  if (result.failedExpectations.length === 0) {
70
84
  sendResult('TEST-PASSED', result.description);
71
85
  } else {
72
86
  var failedMessages = '';
73
87
  var items = result.failedExpectations;
88
+
74
89
  for (var i = 0, ii = items.length; i < ii; i++) {
75
90
  failedMessages += items[i].message + ' ';
76
91
  }
92
+
77
93
  sendResult('TEST-UNEXPECTED-FAIL', result.description, failedMessages);
78
94
  }
79
95
  };
96
+
80
97
  this.suiteDone = function (result) {};
98
+
81
99
  this.jasmineDone = function () {
82
100
  setTimeout(sendQuitRequest, 500);
83
101
  };
@@ -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 2017 Mozilla Foundation
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,13 +19,13 @@
19
19
  * @licend The above is the entire license notice for the
20
20
  * Javascript code in this page
21
21
  */
22
- 'use strict';
22
+ "use strict";
23
23
 
24
- var _fonts = require('../../core/fonts');
24
+ var _fonts = require("../../core/fonts");
25
25
 
26
- var _stream = require('../../core/stream');
26
+ var _stream = require("../../core/stream");
27
27
 
28
- var _type1_parser = require('../../core/type1_parser');
28
+ var _type1_parser = require("../../core/type1_parser");
29
29
 
30
30
  describe('Type1Parser', function () {
31
31
  it('splits tokens', function () {
@@ -81,7 +81,7 @@ describe('Type1Parser', function () {
81
81
  it('parses font program', function () {
82
82
  var stream = new _stream.StringStream('/ExpansionFactor 99\n' + '/Subrs 1 array\n' + 'dup 0 1 RD x noaccess put\n' + 'end\n' + '/CharStrings 46 dict dup begin\n' + '/.notdef 1 RD x ND\n' + 'end');
83
83
  var parser = new _type1_parser.Type1Parser(stream, false, _fonts.SEAC_ANALYSIS_ENABLED);
84
- var program = parser.extractFontProgram();
84
+ var program = parser.extractFontProgram({});
85
85
  expect(program.charstrings.length).toEqual(1);
86
86
  expect(program.properties.privateData.ExpansionFactor).toEqual(99);
87
87
  });
@@ -95,7 +95,9 @@ describe('Type1Parser', function () {
95
95
  it('parses font header encoding', function () {
96
96
  var stream = new _stream.StringStream('/Encoding 256 array\n' + '0 1 255 {1 index exch /.notdef put} for\n' + 'dup 33 /arrowright put\n' + 'readonly def\n');
97
97
  var parser = new _type1_parser.Type1Parser(stream, false, _fonts.SEAC_ANALYSIS_ENABLED);
98
- var props = { overridableEncoding: true };
98
+ var props = {
99
+ overridableEncoding: true
100
+ };
99
101
  parser.extractFontHeader(props);
100
102
  expect(props.builtInEncoding[33]).toEqual('arrowright');
101
103
  });