pdfjs-dist 2.0.943 → 2.1.266

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 (159) hide show
  1. package/bower.json +1 -1
  2. package/build/pdf.js +15329 -11095
  3. package/build/pdf.js.map +1 -1
  4. package/build/pdf.min.js +1 -1
  5. package/build/pdf.worker.js +12497 -4184
  6. package/build/pdf.worker.js.map +1 -1
  7. package/build/pdf.worker.min.js +1 -1
  8. package/image_decoders/pdf.image_decoders.js +3438 -1209
  9. package/image_decoders/pdf.image_decoders.js.map +1 -1
  10. package/image_decoders/pdf.image_decoders.min.js +1 -1
  11. package/lib/core/annotation.js +335 -109
  12. package/lib/core/arithmetic_decoder.js +274 -244
  13. package/lib/core/bidi.js +64 -5
  14. package/lib/core/ccitt.js +172 -17
  15. package/lib/core/ccitt_stream.js +14 -5
  16. package/lib/core/cff_parser.js +304 -28
  17. package/lib/core/charsets.js +4 -3
  18. package/lib/core/chunked_stream.js +379 -149
  19. package/lib/core/cmap.js +210 -40
  20. package/lib/core/colorspace.js +332 -187
  21. package/lib/core/crypto.js +289 -44
  22. package/lib/core/document.js +508 -249
  23. package/lib/core/encodings.js +18 -9
  24. package/lib/core/evaluator.js +657 -119
  25. package/lib/core/font_renderer.js +217 -34
  26. package/lib/core/fonts.js +632 -41
  27. package/lib/core/function.js +252 -26
  28. package/lib/core/glyphlist.js +2 -1
  29. package/lib/core/image.js +124 -27
  30. package/lib/core/jbig2.js +425 -65
  31. package/lib/core/jbig2_stream.js +18 -7
  32. package/lib/core/jpeg_stream.js +24 -8
  33. package/lib/core/jpg.js +208 -16
  34. package/lib/core/jpx.js +395 -5
  35. package/lib/core/jpx_stream.js +17 -5
  36. package/lib/core/metrics.js +3 -3
  37. package/lib/core/murmurhash3.js +23 -5
  38. package/lib/core/obj.js +625 -132
  39. package/lib/core/operator_list.js +104 -3
  40. package/lib/core/parser.js +262 -25
  41. package/lib/core/pattern.js +144 -12
  42. package/lib/core/pdf_manager.js +104 -70
  43. package/lib/core/primitives.js +74 -21
  44. package/lib/core/ps_parser.js +133 -44
  45. package/lib/core/standard_fonts.js +9 -9
  46. package/lib/core/stream.js +283 -31
  47. package/lib/core/type1_parser.js +138 -6
  48. package/lib/core/unicode.js +28 -1
  49. package/lib/core/worker.js +192 -57
  50. package/lib/display/annotation_layer.js +303 -123
  51. package/lib/display/api.js +1073 -574
  52. package/lib/display/api_compatibility.js +4 -1
  53. package/lib/display/canvas.js +314 -18
  54. package/lib/display/content_disposition.js +70 -23
  55. package/lib/display/dom_utils.js +112 -59
  56. package/lib/display/fetch_stream.js +95 -50
  57. package/lib/display/font_loader.js +250 -132
  58. package/lib/display/metadata.js +37 -15
  59. package/lib/display/network.js +123 -34
  60. package/lib/display/network_utils.js +23 -10
  61. package/lib/display/node_stream.js +162 -65
  62. package/lib/display/pattern_helper.js +57 -6
  63. package/lib/display/svg.js +194 -18
  64. package/lib/display/text_layer.js +128 -14
  65. package/lib/display/transport_stream.js +83 -27
  66. package/lib/display/webgl.js +63 -17
  67. package/lib/display/worker_options.js +4 -3
  68. package/lib/display/xml_parser.js +162 -52
  69. package/lib/examples/node/domstubs.js +56 -3
  70. package/lib/pdf.js +15 -2
  71. package/lib/pdf.worker.js +4 -2
  72. package/lib/shared/compatibility.js +129 -26
  73. package/lib/shared/global_scope.js +1 -1
  74. package/lib/shared/is_node.js +3 -3
  75. package/lib/shared/message_handler.js +103 -45
  76. package/lib/shared/streams_polyfill.js +20 -16
  77. package/lib/shared/url_polyfill.js +8 -2
  78. package/lib/shared/util.js +246 -84
  79. package/lib/test/unit/annotation_spec.js +99 -73
  80. package/lib/test/unit/api_spec.js +347 -113
  81. package/lib/test/unit/bidi_spec.js +6 -6
  82. package/lib/test/unit/cff_parser_spec.js +17 -5
  83. package/lib/test/unit/clitests_helper.js +7 -8
  84. package/lib/test/unit/cmap_spec.js +79 -25
  85. package/lib/test/unit/colorspace_spec.js +65 -18
  86. package/lib/test/unit/crypto_spec.js +16 -4
  87. package/lib/test/unit/custom_spec.js +40 -52
  88. package/lib/test/unit/display_svg_spec.js +32 -16
  89. package/lib/test/unit/document_spec.js +2 -2
  90. package/lib/test/unit/dom_utils_spec.js +8 -8
  91. package/lib/test/unit/encodings_spec.js +24 -44
  92. package/lib/test/unit/evaluator_spec.js +15 -8
  93. package/lib/test/unit/function_spec.js +16 -4
  94. package/lib/test/unit/jasmine-boot.js +29 -16
  95. package/lib/test/unit/message_handler_spec.js +19 -6
  96. package/lib/test/unit/metadata_spec.js +64 -11
  97. package/lib/test/unit/murmurhash3_spec.js +2 -2
  98. package/lib/test/unit/network_spec.js +19 -4
  99. package/lib/test/unit/network_utils_spec.js +6 -4
  100. package/lib/test/unit/node_stream_spec.js +50 -26
  101. package/lib/test/unit/parser_spec.js +13 -29
  102. package/lib/test/unit/pdf_find_controller_spec.js +144 -32
  103. package/lib/test/unit/pdf_find_utils_spec.js +10 -9
  104. package/lib/test/unit/pdf_history_spec.js +20 -8
  105. package/lib/test/unit/primitives_spec.js +23 -3
  106. package/lib/test/unit/stream_spec.js +8 -3
  107. package/lib/test/unit/test_utils.js +89 -26
  108. package/lib/test/unit/testreporter.js +19 -1
  109. package/lib/test/unit/type1_parser_spec.js +7 -5
  110. package/lib/test/unit/ui_utils_spec.js +162 -38
  111. package/lib/test/unit/unicode_spec.js +13 -10
  112. package/lib/test/unit/util_spec.js +89 -9
  113. package/lib/web/annotation_layer_builder.js +38 -21
  114. package/lib/web/app.js +610 -245
  115. package/lib/web/app_options.js +54 -34
  116. package/lib/web/base_viewer.js +359 -162
  117. package/lib/web/chromecom.js +159 -80
  118. package/lib/web/debugger.js +161 -17
  119. package/lib/web/download_manager.js +29 -11
  120. package/lib/web/firefox_print_service.js +16 -8
  121. package/lib/web/firefoxcom.js +127 -91
  122. package/lib/web/genericcom.js +50 -31
  123. package/lib/web/genericl10n.js +46 -34
  124. package/lib/web/grab_to_pan.js +25 -3
  125. package/lib/web/interfaces.js +108 -61
  126. package/lib/web/overlay_manager.js +67 -45
  127. package/lib/web/password_prompt.js +20 -12
  128. package/lib/web/pdf_attachment_viewer.js +37 -17
  129. package/lib/web/pdf_cursor_tools.js +38 -15
  130. package/lib/web/pdf_document_properties.js +65 -24
  131. package/lib/web/pdf_find_bar.js +48 -20
  132. package/lib/web/pdf_find_controller.js +290 -89
  133. package/lib/web/pdf_find_utils.js +19 -3
  134. package/lib/web/pdf_history.js +186 -49
  135. package/lib/web/pdf_link_service.js +127 -52
  136. package/lib/web/pdf_outline_viewer.js +71 -21
  137. package/lib/web/pdf_page_view.js +188 -63
  138. package/lib/web/pdf_presentation_mode.js +98 -33
  139. package/lib/web/pdf_print_service.js +54 -10
  140. package/lib/web/pdf_rendering_queue.js +26 -4
  141. package/lib/web/pdf_sidebar.js +116 -62
  142. package/lib/web/pdf_sidebar_resizer.js +41 -15
  143. package/lib/web/pdf_single_page_viewer.js +65 -68
  144. package/lib/web/pdf_thumbnail_view.js +102 -31
  145. package/lib/web/pdf_thumbnail_viewer.js +62 -22
  146. package/lib/web/pdf_viewer.component.js +111 -31
  147. package/lib/web/pdf_viewer.js +80 -60
  148. package/lib/web/preferences.js +61 -39
  149. package/lib/web/secondary_toolbar.js +101 -82
  150. package/lib/web/text_layer_builder.js +124 -69
  151. package/lib/web/toolbar.js +67 -27
  152. package/lib/web/ui_utils.js +284 -128
  153. package/lib/web/view_history.js +75 -51
  154. package/lib/web/viewer_compatibility.js +2 -1
  155. package/package.json +1 -1
  156. package/web/pdf_viewer.css +1 -1
  157. package/web/pdf_viewer.js +2200 -973
  158. package/web/pdf_viewer.js.map +1 -1
  159. package/lib/web/dom_events.js +0 -140
@@ -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 _crypto = require('../../core/crypto');
24
+ var _crypto = require("../../core/crypto");
25
25
 
26
- var _primitives = require('../../core/primitives');
26
+ var _primitives = require("../../core/primitives");
27
27
 
28
- var _util = require('../../shared/util');
28
+ var _util = require("../../shared/util");
29
29
 
30
30
  describe('crypto', function () {
31
31
  function hex2binary(s) {
@@ -35,14 +35,17 @@ describe('crypto', function () {
35
35
  i,
36
36
  j;
37
37
  var result = new Uint8Array(n);
38
+
38
39
  for (i = 0, j = 0; i < n; ++i) {
39
40
  var d1 = s.charAt(j++);
40
41
  var d2 = s.charAt(j++);
41
42
  var value = digits.indexOf(d1) << 4 | digits.indexOf(d2);
42
43
  result[i] = value;
43
44
  }
45
+
44
46
  return result;
45
47
  }
48
+
46
49
  describe('calculateMD5', function () {
47
50
  it('should pass RFC 1321 test #1', function () {
48
51
  var input, result, expected;
@@ -357,11 +360,14 @@ describe('crypto', function () {
357
360
  describe('CipherTransformFactory', function () {
358
361
  function buildDict(map) {
359
362
  var dict = new _primitives.Dict();
363
+
360
364
  for (var key in map) {
361
365
  dict.set(key, map[key]);
362
366
  }
367
+
363
368
  return dict;
364
369
  }
370
+
365
371
  function ensurePasswordCorrect(done, dict, fileId, password) {
366
372
  try {
367
373
  var factory = new _crypto.CipherTransformFactory(dict, fileId, password);
@@ -370,8 +376,10 @@ describe('CipherTransformFactory', function () {
370
376
  done.fail('Password should be accepted: ' + ex);
371
377
  return;
372
378
  }
379
+
373
380
  done();
374
381
  }
382
+
375
383
  function ensurePasswordNeeded(done, dict, fileId, password) {
376
384
  try {
377
385
  new _crypto.CipherTransformFactory(dict, fileId, password);
@@ -381,8 +389,10 @@ describe('CipherTransformFactory', function () {
381
389
  done();
382
390
  return;
383
391
  }
392
+
384
393
  done.fail('Password should be rejected.');
385
394
  }
395
+
386
396
  function ensurePasswordIncorrect(done, dict, fileId, password) {
387
397
  try {
388
398
  new _crypto.CipherTransformFactory(dict, fileId, password);
@@ -392,8 +402,10 @@ describe('CipherTransformFactory', function () {
392
402
  done();
393
403
  return;
394
404
  }
405
+
395
406
  done.fail('Password should be rejected.');
396
407
  }
408
+
397
409
  var fileId1, fileId2, dict1, dict2;
398
410
  var aes256Dict, aes256IsoDict, aes256BlankDict, aes256IsoBlankDict;
399
411
  beforeAll(function (done) {
@@ -19,17 +19,15 @@
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 _test_utils = require('./test_utils');
24
+ var _test_utils = require("./test_utils");
25
25
 
26
- var _dom_utils = require('../../display/dom_utils');
26
+ var _dom_utils = require("../../display/dom_utils");
27
27
 
28
- var _api = require('../../display/api');
28
+ var _api = require("../../display/api");
29
29
 
30
- var _is_node = require('../../shared/is_node');
31
-
32
- var _is_node2 = _interopRequireDefault(_is_node);
30
+ var _is_node = _interopRequireDefault(require("../../shared/is_node"));
33
31
 
34
32
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
35
33
 
@@ -42,24 +40,26 @@ function getTopLeftPixel(canvasContext) {
42
40
  a: imgData.data[3]
43
41
  };
44
42
  }
43
+
45
44
  describe('custom canvas rendering', function () {
46
45
  var transparentGetDocumentParams = (0, _test_utils.buildGetDocumentParams)('transparent.pdf');
47
- var CanvasFactory = void 0;
48
- var loadingTask = void 0;
49
- var page = void 0;
46
+ var CanvasFactory;
47
+ var loadingTask;
48
+ var page;
50
49
  beforeAll(function (done) {
51
- if ((0, _is_node2.default)()) {} else {
50
+ if ((0, _is_node.default)()) {
51
+ CanvasFactory = new _test_utils.NodeCanvasFactory();
52
+ } else {
52
53
  CanvasFactory = new _dom_utils.DOMCanvasFactory();
53
54
  }
55
+
54
56
  loadingTask = (0, _api.getDocument)(transparentGetDocumentParams);
55
57
  loadingTask.promise.then(function (doc) {
56
58
  return doc.getPage(1);
57
59
  }).then(function (data) {
58
60
  page = data;
59
61
  done();
60
- }).catch(function (reason) {
61
- done.fail(reason);
62
- });
62
+ }).catch(done.fail);
63
63
  });
64
64
  afterAll(function (done) {
65
65
  CanvasFactory = null;
@@ -67,56 +67,44 @@ describe('custom canvas rendering', function () {
67
67
  loadingTask.destroy().then(done);
68
68
  });
69
69
  it('renders to canvas with a default white background', function (done) {
70
- if ((0, _is_node2.default)()) {
71
- pending('TODO: Support Canvas testing in Node.js.');
72
- }
73
- var viewport = page.getViewport(1);
70
+ var viewport = page.getViewport({
71
+ scale: 1
72
+ });
74
73
  var canvasAndCtx = CanvasFactory.create(viewport.width, viewport.height);
75
- page.render({
74
+ var renderTask = page.render({
76
75
  canvasContext: canvasAndCtx.context,
77
76
  viewport: viewport
78
- }).then(function () {
79
- var _getTopLeftPixel = getTopLeftPixel(canvasAndCtx.context),
80
- r = _getTopLeftPixel.r,
81
- g = _getTopLeftPixel.g,
82
- b = _getTopLeftPixel.b,
83
- a = _getTopLeftPixel.a;
84
-
77
+ });
78
+ renderTask.promise.then(function () {
79
+ expect(getTopLeftPixel(canvasAndCtx.context)).toEqual({
80
+ r: 255,
81
+ g: 255,
82
+ b: 255,
83
+ a: 255
84
+ });
85
85
  CanvasFactory.destroy(canvasAndCtx);
86
- expect(r).toEqual(255);
87
- expect(g).toEqual(255);
88
- expect(b).toEqual(255);
89
- expect(a).toEqual(255);
90
86
  done();
91
- }).catch(function (reason) {
92
- done(reason);
93
- });
87
+ }).catch(done.fail);
94
88
  });
95
89
  it('renders to canvas with a custom background', function (done) {
96
- if ((0, _is_node2.default)()) {
97
- pending('TODO: Support Canvas testing in Node.js.');
98
- }
99
- var viewport = page.getViewport(1);
90
+ var viewport = page.getViewport({
91
+ scale: 1
92
+ });
100
93
  var canvasAndCtx = CanvasFactory.create(viewport.width, viewport.height);
101
- page.render({
94
+ var renderTask = page.render({
102
95
  canvasContext: canvasAndCtx.context,
103
96
  viewport: viewport,
104
97
  background: 'rgba(255,0,0,1.0)'
105
- }).then(function () {
106
- var _getTopLeftPixel2 = getTopLeftPixel(canvasAndCtx.context),
107
- r = _getTopLeftPixel2.r,
108
- g = _getTopLeftPixel2.g,
109
- b = _getTopLeftPixel2.b,
110
- a = _getTopLeftPixel2.a;
111
-
98
+ });
99
+ renderTask.promise.then(function () {
100
+ expect(getTopLeftPixel(canvasAndCtx.context)).toEqual({
101
+ r: 255,
102
+ g: 0,
103
+ b: 0,
104
+ a: 255
105
+ });
112
106
  CanvasFactory.destroy(canvasAndCtx);
113
- expect(r).toEqual(255);
114
- expect(g).toEqual(0);
115
- expect(b).toEqual(0);
116
- expect(a).toEqual(255);
117
107
  done();
118
- }).catch(function (reason) {
119
- done(reason);
120
- });
108
+ }).catch(done.fail);
121
109
  });
122
110
  });
@@ -19,55 +19,64 @@
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 _domstubs = require('../../examples/node/domstubs');
24
+ var _domstubs = require("../../examples/node/domstubs");
25
25
 
26
- var _test_utils = require('./test_utils');
26
+ var _test_utils = require("./test_utils");
27
27
 
28
- var _api = require('../../display/api');
28
+ var _api = require("../../display/api");
29
29
 
30
- var _is_node = require('../../shared/is_node');
30
+ var _is_node = _interopRequireDefault(require("../../shared/is_node"));
31
31
 
32
- var _is_node2 = _interopRequireDefault(_is_node);
32
+ var _util = require("../../shared/util");
33
33
 
34
- var _util = require('../../shared/util');
35
-
36
- var _svg = require('../../display/svg');
34
+ var _svg = require("../../display/svg");
37
35
 
38
36
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
39
37
 
40
38
  var XLINK_NS = 'http://www.w3.org/1999/xlink';
39
+
41
40
  function withZlib(isZlibRequired, callback) {
42
41
  if (isZlibRequired) {
43
- if (!(0, _is_node2.default)()) {
42
+ if (!(0, _is_node.default)()) {
44
43
  throw new Error('zlib test can only be run in Node.js');
45
44
  }
45
+
46
46
  return callback();
47
47
  }
48
- if (!(0, _is_node2.default)()) {
48
+
49
+ if (!(0, _is_node.default)()) {
49
50
  return callback();
50
51
  }
52
+
51
53
  var zlib = require('zlib');
54
+
52
55
  var deflateSync = zlib.deflateSync;
53
56
  zlib.deflateSync = disabledDeflateSync;
57
+
54
58
  function disabledDeflateSync() {
55
59
  throw new Error('zlib.deflateSync is explicitly disabled for testing.');
56
60
  }
61
+
57
62
  function restoreDeflateSync() {
58
63
  if (zlib.deflateSync === disabledDeflateSync) {
59
64
  zlib.deflateSync = deflateSync;
60
65
  }
61
66
  }
67
+
62
68
  var promise = callback();
63
69
  promise.then(restoreDeflateSync, restoreDeflateSync);
64
70
  return promise;
65
71
  }
72
+
66
73
  describe('SVGGraphics', function () {
67
74
  var loadingTask;
68
75
  var page;
69
76
  beforeAll(function (done) {
70
- loadingTask = (0, _api.getDocument)((0, _test_utils.buildGetDocumentParams)('xobject-image.pdf', { nativeImageDecoderSupport: _util.NativeImageDecoding.DISPLAY }));
77
+ loadingTask = (0, _api.getDocument)((0, _test_utils.buildGetDocumentParams)('xobject-image.pdf', {
78
+ nativeImageDecoderSupport: _util.NativeImageDecoding.DISPLAY
79
+ }));
71
80
  loadingTask.promise.then(function (doc) {
72
81
  doc.getPage(1).then(function (firstPage) {
73
82
  page = firstPage;
@@ -93,35 +102,42 @@ describe('SVGGraphics', function () {
93
102
  }
94
103
  };
95
104
  var xobjectObjId = 'img_p0_1';
96
- if ((0, _is_node2.default)()) {
105
+
106
+ if ((0, _is_node.default)()) {
97
107
  (0, _domstubs.setStubs)(global);
98
108
  }
109
+
99
110
  try {
100
111
  var imgData = svgGfx.objs.get(xobjectObjId);
101
112
  svgGfx.paintInlineImageXObject(imgData, elementContainer);
102
113
  } finally {
103
- if ((0, _is_node2.default)()) {
114
+ if ((0, _is_node.default)()) {
104
115
  (0, _domstubs.unsetStubs)(global);
105
116
  }
106
117
  }
118
+
107
119
  return svgImg;
108
120
  });
109
121
  }
122
+
110
123
  it('should fail require("zlib") unless in Node.js', function () {
111
124
  function testFunc() {
112
125
  require('zlib');
113
126
  }
127
+
114
128
  expect(testFunc.toString()).toMatch(/\srequire\(["']zlib["']\)/);
115
- if ((0, _is_node2.default)()) {
129
+
130
+ if ((0, _is_node.default)()) {
116
131
  expect(testFunc).not.toThrow();
117
132
  } else {
118
133
  expect(testFunc).toThrow();
119
134
  }
120
135
  });
121
136
  it('should produce a reasonably small svg:image', function (done) {
122
- if (!(0, _is_node2.default)()) {
137
+ if (!(0, _is_node.default)()) {
123
138
  pending('zlib.deflateSync is not supported in non-Node environments.');
124
139
  }
140
+
125
141
  withZlib(true, getSVGImage).then(function (svgImg) {
126
142
  expect(svgImg.nodeName).toBe('svg:image');
127
143
  expect(svgImg.getAttributeNS(null, 'width')).toBe('200px');
@@ -19,9 +19,9 @@
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 _document = require('../../core/document');
24
+ var _document = require("../../core/document");
25
25
 
26
26
  describe('document', function () {
27
27
  describe('Page', function () {
@@ -19,19 +19,17 @@
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 _dom_utils = require('../../display/dom_utils');
24
+ var _dom_utils = require("../../display/dom_utils");
25
25
 
26
- var _is_node = require('../../shared/is_node');
27
-
28
- var _is_node2 = _interopRequireDefault(_is_node);
26
+ var _is_node = _interopRequireDefault(require("../../shared/is_node"));
29
27
 
30
28
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
31
29
 
32
30
  describe('dom_utils', function () {
33
31
  describe('DOMSVGFactory', function () {
34
- var svgFactory = void 0;
32
+ var svgFactory;
35
33
  beforeAll(function (done) {
36
34
  svgFactory = new _dom_utils.DOMSVGFactory();
37
35
  done();
@@ -48,9 +46,10 @@ describe('dom_utils', function () {
48
46
  }).toThrow(new Error('Invalid SVG dimensions'));
49
47
  });
50
48
  it('`create` should return an SVG element if the dimensions are valid', function () {
51
- if ((0, _is_node2.default)()) {
49
+ if ((0, _is_node.default)()) {
52
50
  pending('Document is not supported in Node.js.');
53
51
  }
52
+
54
53
  var svg = svgFactory.create(20, 40);
55
54
  expect(svg instanceof SVGSVGElement).toBe(true);
56
55
  expect(svg.getAttribute('version')).toBe('1.1');
@@ -65,9 +64,10 @@ describe('dom_utils', function () {
65
64
  }).toThrow(new Error('Invalid SVG element type'));
66
65
  });
67
66
  it('`createElement` should return an SVG element if the type is valid', function () {
68
- if ((0, _is_node2.default)()) {
67
+ if ((0, _is_node.default)()) {
69
68
  pending('Document is not supported in Node.js.');
70
69
  }
70
+
71
71
  var svg = svgFactory.createElement('svg:rect');
72
72
  expect(svg instanceof SVGRectElement).toBe(true);
73
73
  });
@@ -19,65 +19,45 @@
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 _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
24
+ var _encodings = require("../../core/encodings");
25
25
 
26
- var _encodings = require('../../core/encodings');
26
+ function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
27
27
 
28
28
  describe('encodings', function () {
29
29
  describe('getEncoding', function () {
30
30
  it('fetches a valid array for known encoding names', function () {
31
31
  var knownEncodingNames = ['ExpertEncoding', 'MacExpertEncoding', 'MacRomanEncoding', 'StandardEncoding', 'SymbolSetEncoding', 'WinAnsiEncoding', 'ZapfDingbatsEncoding'];
32
- var _iteratorNormalCompletion = true;
33
- var _didIteratorError = false;
34
- var _iteratorError = undefined;
35
32
 
36
- try {
37
- for (var _iterator = knownEncodingNames[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
38
- var knownEncodingName = _step.value;
39
-
40
- var encoding = (0, _encodings.getEncoding)(knownEncodingName);
41
- expect(Array.isArray(encoding)).toEqual(true);
42
- expect(encoding.length).toEqual(256);
43
- var _iteratorNormalCompletion2 = true;
44
- var _didIteratorError2 = false;
45
- var _iteratorError2 = undefined;
33
+ for (var _i = 0; _i < knownEncodingNames.length; _i++) {
34
+ var knownEncodingName = knownEncodingNames[_i];
35
+ var encoding = (0, _encodings.getEncoding)(knownEncodingName);
36
+ expect(Array.isArray(encoding)).toEqual(true);
37
+ expect(encoding.length).toEqual(256);
38
+ var _iteratorNormalCompletion = true;
39
+ var _didIteratorError = false;
40
+ var _iteratorError = undefined;
46
41
 
42
+ try {
43
+ for (var _iterator = encoding[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
44
+ var item = _step.value;
45
+ expect(_typeof(item)).toEqual('string');
46
+ }
47
+ } catch (err) {
48
+ _didIteratorError = true;
49
+ _iteratorError = err;
50
+ } finally {
47
51
  try {
48
- for (var _iterator2 = encoding[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
49
- var item = _step2.value;
50
-
51
- expect(typeof item === 'undefined' ? 'undefined' : _typeof(item)).toEqual('string');
52
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
53
+ _iterator.return();
52
54
  }
53
- } catch (err) {
54
- _didIteratorError2 = true;
55
- _iteratorError2 = err;
56
55
  } finally {
57
- try {
58
- if (!_iteratorNormalCompletion2 && _iterator2.return) {
59
- _iterator2.return();
60
- }
61
- } finally {
62
- if (_didIteratorError2) {
63
- throw _iteratorError2;
64
- }
56
+ if (_didIteratorError) {
57
+ throw _iteratorError;
65
58
  }
66
59
  }
67
60
  }
68
- } catch (err) {
69
- _didIteratorError = true;
70
- _iteratorError = err;
71
- } finally {
72
- try {
73
- if (!_iteratorNormalCompletion && _iterator.return) {
74
- _iterator.return();
75
- }
76
- } finally {
77
- if (_didIteratorError) {
78
- throw _iteratorError;
79
- }
80
- }
81
61
  }
82
62
  });
83
63
  it('fetches `null` for unknown encoding names', function () {
@@ -19,26 +19,27 @@
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 _primitives = require('../../core/primitives');
24
+ var _primitives = require("../../core/primitives");
25
25
 
26
- var _util = require('../../shared/util');
26
+ var _util = require("../../shared/util");
27
27
 
28
- var _stream = require('../../core/stream');
28
+ var _stream = require("../../core/stream");
29
29
 
30
- var _operator_list = require('../../core/operator_list');
30
+ var _operator_list = require("../../core/operator_list");
31
31
 
32
- var _evaluator = require('../../core/evaluator');
32
+ var _evaluator = require("../../core/evaluator");
33
33
 
34
- var _worker = require('../../core/worker');
34
+ var _worker = require("../../core/worker");
35
35
 
36
- var _test_utils = require('./test_utils');
36
+ var _test_utils = require("./test_utils");
37
37
 
38
38
  describe('evaluator', function () {
39
39
  function HandlerMock() {
40
40
  this.inputs = [];
41
41
  }
42
+
42
43
  HandlerMock.prototype = {
43
44
  send: function send(name, data) {
44
45
  this.inputs.push({
@@ -47,13 +48,17 @@ describe('evaluator', function () {
47
48
  });
48
49
  }
49
50
  };
51
+
50
52
  function ResourcesMock() {}
53
+
51
54
  ResourcesMock.prototype = {
52
55
  get: function get(name) {
53
56
  return this[name];
54
57
  }
55
58
  };
59
+
56
60
  function PdfManagerMock() {}
61
+
57
62
  function runOperatorListCheck(evaluator, stream, resources, callback) {
58
63
  var result = new _operator_list.OperatorList();
59
64
  var task = new _worker.WorkerTask('OperatorListCheck');
@@ -68,6 +73,7 @@ describe('evaluator', function () {
68
73
  callback(reason);
69
74
  });
70
75
  }
76
+
71
77
  var partialEvaluator;
72
78
  beforeAll(function (done) {
73
79
  partialEvaluator = new _evaluator.PartialEvaluator({
@@ -298,6 +304,7 @@ describe('evaluator', function () {
298
304
  });
299
305
  describe('operator list', function () {
300
306
  function MessageHandlerMock() {}
307
+
301
308
  MessageHandlerMock.prototype = {
302
309
  send: function send() {}
303
310
  };
@@ -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 _function = require('../../core/function');
24
+ var _function = require("../../core/function");
25
25
 
26
- var _ps_parser = require('../../core/ps_parser');
26
+ var _ps_parser = require("../../core/ps_parser");
27
27
 
28
- var _stream = require('../../core/stream');
28
+ var _stream = require("../../core/stream");
29
29
 
30
30
  describe('function', function () {
31
31
  beforeEach(function () {
@@ -34,23 +34,29 @@ describe('function', function () {
34
34
  return {
35
35
  compare: function compare(actual, expected) {
36
36
  var result = {};
37
+
37
38
  if (actual.length !== expected.length) {
38
39
  result.pass = false;
39
40
  result.message = 'Array length: ' + actual.length + ', expected: ' + expected.length;
40
41
  return result;
41
42
  }
43
+
42
44
  result.pass = true;
45
+
43
46
  for (var i = 0; i < expected.length; i++) {
44
47
  var a = actual[i],
45
48
  b = expected[i];
49
+
46
50
  if (Array.isArray(b)) {
47
51
  if (a.length !== b.length) {
48
52
  result.pass = false;
49
53
  break;
50
54
  }
55
+
51
56
  for (var j = 0; j < a.length; j++) {
52
57
  var suba = a[j],
53
58
  subb = b[j];
59
+
54
60
  if (suba !== subb) {
55
61
  result.pass = false;
56
62
  break;
@@ -63,6 +69,7 @@ describe('function', function () {
63
69
  }
64
70
  }
65
71
  }
72
+
66
73
  return result;
67
74
  }
68
75
  };
@@ -75,6 +82,7 @@ describe('function', function () {
75
82
  var parser = new _ps_parser.PostScriptParser(new _ps_parser.PostScriptLexer(stream));
76
83
  return parser.parse();
77
84
  }
85
+
78
86
  it('parses empty programs', function () {
79
87
  var output = parse('{}');
80
88
  expect(output.length).toEqual(0);
@@ -133,6 +141,7 @@ describe('function', function () {
133
141
  var output = evaluator.execute();
134
142
  return output;
135
143
  }
144
+
136
145
  it('pushes stack', function () {
137
146
  var stack = evaluate('{ 99 }');
138
147
  var expectedStack = [99];
@@ -448,11 +457,13 @@ describe('function', function () {
448
457
  function check(code, domain, range, samples) {
449
458
  var compiler = new _function.PostScriptCompiler();
450
459
  var compiledCode = compiler.compile(code, domain, range);
460
+
451
461
  if (samples === null) {
452
462
  expect(compiledCode).toBeNull();
453
463
  } else {
454
464
  expect(compiledCode).not.toBeNull();
455
465
  var fn = new Function('src', 'srcOffset', 'dest', 'destOffset', compiledCode);
466
+
456
467
  for (var i = 0; i < samples.length; i++) {
457
468
  var out = new Float32Array(samples[i].output.length);
458
469
  fn(samples[i].input, 0, out, 0);
@@ -460,6 +471,7 @@ describe('function', function () {
460
471
  }
461
472
  }
462
473
  }
474
+
463
475
  it('check compiled add', function () {
464
476
  check([0.25, 0.5, 'add'], [], [0, 1], [{
465
477
  input: [],