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.
@@ -21,327 +21,341 @@
21
21
  */
22
22
  "use strict";
23
23
 
24
- var _util = require("../../shared/util");
24
+ var _util = require("../../shared/util.js");
25
25
 
26
- var _api = require("../../display/api");
26
+ var _api = require("../../display/api.js");
27
27
 
28
- var _message_handler = require("../../shared/message_handler");
28
+ var _message_handler = require("../../shared/message_handler.js");
29
29
 
30
- 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); }
31
-
32
- describe('message_handler', function () {
30
+ describe("message_handler", function () {
33
31
  function sleep(ticks) {
34
- return Promise.resolve().then(function () {
32
+ return Promise.resolve().then(() => {
35
33
  return ticks && sleep(ticks - 1);
36
34
  });
37
35
  }
38
36
 
39
- describe('sendWithStream', function () {
40
- it('should return a ReadableStream', function () {
41
- var port = new _api.LoopbackPort();
42
- var messageHandler1 = new _message_handler.MessageHandler('main', 'worker', port);
43
- var readable = messageHandler1.sendWithStream('fakeHandler');
44
- expect(_typeof(readable)).toEqual('object');
45
- expect(_typeof(readable.getReader)).toEqual('function');
37
+ describe("sendWithStream", function () {
38
+ it("should return a ReadableStream", function () {
39
+ const port = new _api.LoopbackPort();
40
+ const messageHandler1 = new _message_handler.MessageHandler("main", "worker", port);
41
+ const readable = messageHandler1.sendWithStream("fakeHandler");
42
+ expect(typeof readable).toEqual("object");
43
+ expect(typeof readable.getReader).toEqual("function");
46
44
  });
47
- it('should read using a reader', function (done) {
48
- var log = '';
49
- var port = new _api.LoopbackPort();
50
- var messageHandler1 = new _message_handler.MessageHandler('main', 'worker', port);
51
- var messageHandler2 = new _message_handler.MessageHandler('worker', 'main', port);
52
- messageHandler2.on('fakeHandler', function (data, sink) {
45
+ it("should read using a reader", function (done) {
46
+ let log = "";
47
+ const port = new _api.LoopbackPort();
48
+ const messageHandler1 = new _message_handler.MessageHandler("main", "worker", port);
49
+ const messageHandler2 = new _message_handler.MessageHandler("worker", "main", port);
50
+ messageHandler2.on("fakeHandler", (data, sink) => {
53
51
  sink.onPull = function () {
54
- log += 'p';
52
+ log += "p";
55
53
  };
56
54
 
57
55
  sink.onCancel = function (reason) {
58
- log += 'c';
56
+ log += "c";
59
57
  };
60
58
 
61
- sink.ready.then(function () {
62
- sink.enqueue('hi');
59
+ sink.ready.then(() => {
60
+ sink.enqueue("hi");
63
61
  return sink.ready;
64
- }).then(function () {
62
+ }).then(() => {
65
63
  sink.close();
66
64
  });
67
65
  return sleep(5);
68
66
  });
69
- var readable = messageHandler1.sendWithStream('fakeHandler', {}, {
67
+ const readable = messageHandler1.sendWithStream("fakeHandler", {}, {
70
68
  highWaterMark: 1,
71
- size: function size() {
69
+
70
+ size() {
72
71
  return 1;
73
72
  }
73
+
74
74
  });
75
- var reader = readable.getReader();
76
- sleep(10).then(function () {
77
- expect(log).toEqual('');
75
+ const reader = readable.getReader();
76
+ sleep(10).then(() => {
77
+ expect(log).toEqual("");
78
78
  return reader.read();
79
- }).then(function (result) {
80
- expect(log).toEqual('p');
81
- expect(result.value).toEqual('hi');
79
+ }).then(result => {
80
+ expect(log).toEqual("p");
81
+ expect(result.value).toEqual("hi");
82
82
  expect(result.done).toEqual(false);
83
83
  return sleep(10);
84
- }).then(function () {
84
+ }).then(() => {
85
85
  return reader.read();
86
- }).then(function (result) {
86
+ }).then(result => {
87
87
  expect(result.value).toEqual(undefined);
88
88
  expect(result.done).toEqual(true);
89
89
  done();
90
90
  });
91
91
  });
92
- it('should not read any data when cancelled', function (done) {
93
- var log = '';
94
- var port = new _api.LoopbackPort();
95
- var messageHandler2 = new _message_handler.MessageHandler('worker', 'main', port);
96
- messageHandler2.on('fakeHandler', function (data, sink) {
92
+ it("should not read any data when cancelled", function (done) {
93
+ let log = "";
94
+ const port = new _api.LoopbackPort();
95
+ const messageHandler2 = new _message_handler.MessageHandler("worker", "main", port);
96
+ messageHandler2.on("fakeHandler", (data, sink) => {
97
97
  sink.onPull = function () {
98
- log += 'p';
98
+ log += "p";
99
99
  };
100
100
 
101
101
  sink.onCancel = function (reason) {
102
- log += 'c';
102
+ log += "c";
103
103
  };
104
104
 
105
- log += '0';
106
- sink.ready.then(function () {
107
- log += '1';
105
+ log += "0";
106
+ sink.ready.then(() => {
107
+ log += "1";
108
108
  sink.enqueue([1, 2, 3, 4], 4);
109
109
  return sink.ready;
110
- }).then(function () {
111
- log += '2';
110
+ }).then(() => {
111
+ log += "2";
112
112
  sink.enqueue([5, 6, 7, 8], 4);
113
113
  return sink.ready;
114
- }).then(function () {
115
- log += '3';
114
+ }).then(() => {
115
+ log += "3";
116
116
  sink.close();
117
- }, function () {
118
- log += '4';
117
+ }, () => {
118
+ log += "4";
119
119
  });
120
120
  });
121
- var messageHandler1 = new _message_handler.MessageHandler('main', 'worker', port);
122
- var readable = messageHandler1.sendWithStream('fakeHandler', {}, {
121
+ const messageHandler1 = new _message_handler.MessageHandler("main", "worker", port);
122
+ const readable = messageHandler1.sendWithStream("fakeHandler", {}, {
123
123
  highWaterMark: 4,
124
- size: function size(arr) {
124
+
125
+ size(arr) {
125
126
  return arr.length;
126
127
  }
128
+
127
129
  });
128
- var reader = readable.getReader();
129
- sleep(10).then(function () {
130
- expect(log).toEqual('01');
130
+ const reader = readable.getReader();
131
+ sleep(10).then(() => {
132
+ expect(log).toEqual("01");
131
133
  return reader.read();
132
- }).then(function (result) {
134
+ }).then(result => {
133
135
  expect(result.value).toEqual([1, 2, 3, 4]);
134
136
  expect(result.done).toEqual(false);
135
137
  return sleep(10);
136
- }).then(function () {
137
- expect(log).toEqual('01p2');
138
- return reader.cancel();
139
- }).then(function () {
140
- expect(log).toEqual('01p2c4');
138
+ }).then(() => {
139
+ expect(log).toEqual("01p2");
140
+ return reader.cancel(new _util.AbortException("reader cancelled."));
141
+ }).then(() => {
142
+ expect(log).toEqual("01p2c4");
141
143
  done();
142
144
  });
143
145
  });
144
- it('should not read when errored', function (done) {
145
- var log = '';
146
- var port = new _api.LoopbackPort();
147
- var messageHandler2 = new _message_handler.MessageHandler('worker', 'main', port);
148
- messageHandler2.on('fakeHandler', function (data, sink) {
146
+ it("should not read when errored", function (done) {
147
+ let log = "";
148
+ const port = new _api.LoopbackPort();
149
+ const messageHandler2 = new _message_handler.MessageHandler("worker", "main", port);
150
+ messageHandler2.on("fakeHandler", (data, sink) => {
149
151
  sink.onPull = function () {
150
- log += 'p';
152
+ log += "p";
151
153
  };
152
154
 
153
155
  sink.onCancel = function (reason) {
154
- log += 'c';
156
+ log += "c";
155
157
  };
156
158
 
157
- sink.ready.then(function () {
159
+ log += "0";
160
+ sink.ready.then(() => {
161
+ log += "1";
158
162
  sink.enqueue([1, 2, 3, 4], 4);
159
163
  return sink.ready;
160
- }).then(function () {
161
- log += 'error';
162
- sink.error('error');
164
+ }).then(() => {
165
+ log += "e";
166
+ sink.error(new Error("should not read when errored"));
163
167
  });
164
168
  });
165
- var messageHandler1 = new _message_handler.MessageHandler('main', 'worker', port);
166
- var readable = messageHandler1.sendWithStream('fakeHandler', {}, {
169
+ const messageHandler1 = new _message_handler.MessageHandler("main", "worker", port);
170
+ const readable = messageHandler1.sendWithStream("fakeHandler", {}, {
167
171
  highWaterMark: 4,
168
- size: function size(arr) {
172
+
173
+ size(arr) {
169
174
  return arr.length;
170
175
  }
176
+
171
177
  });
172
- var reader = readable.getReader();
173
- sleep(10).then(function () {
174
- expect(log).toEqual('');
178
+ const reader = readable.getReader();
179
+ sleep(10).then(() => {
180
+ expect(log).toEqual("01");
175
181
  return reader.read();
176
- }).then(function (result) {
182
+ }).then(result => {
177
183
  expect(result.value).toEqual([1, 2, 3, 4]);
178
184
  expect(result.done).toEqual(false);
179
185
  return reader.read();
180
- }).then(function () {}, function (reason) {
181
- expect(reason).toEqual('error');
186
+ }).catch(reason => {
187
+ expect(log).toEqual("01pe");
188
+ expect(reason instanceof _util.UnknownErrorException).toEqual(true);
189
+ expect(reason.message).toEqual("should not read when errored");
182
190
  done();
183
191
  });
184
192
  });
185
- it('should read data with blocking promise', function (done) {
186
- var log = '';
187
- var port = new _api.LoopbackPort();
188
- var messageHandler2 = new _message_handler.MessageHandler('worker', 'main', port);
189
- messageHandler2.on('fakeHandler', function (data, sink) {
193
+ it("should read data with blocking promise", function (done) {
194
+ let log = "";
195
+ const port = new _api.LoopbackPort();
196
+ const messageHandler2 = new _message_handler.MessageHandler("worker", "main", port);
197
+ messageHandler2.on("fakeHandler", (data, sink) => {
190
198
  sink.onPull = function () {
191
- log += 'p';
199
+ log += "p";
192
200
  };
193
201
 
194
202
  sink.onCancel = function (reason) {
195
- log += 'c';
203
+ log += "c";
196
204
  };
197
205
 
198
- log += '0';
199
- sink.ready.then(function () {
200
- log += '1';
206
+ log += "0";
207
+ sink.ready.then(() => {
208
+ log += "1";
201
209
  sink.enqueue([1, 2, 3, 4], 4);
202
210
  return sink.ready;
203
- }).then(function () {
204
- log += '2';
211
+ }).then(() => {
212
+ log += "2";
205
213
  sink.enqueue([5, 6, 7, 8], 4);
206
214
  return sink.ready;
207
- }).then(function () {
215
+ }).then(() => {
208
216
  sink.close();
209
217
  });
210
218
  });
211
- var messageHandler1 = new _message_handler.MessageHandler('main', 'worker', port);
212
- var readable = messageHandler1.sendWithStream('fakeHandler', {}, {
219
+ const messageHandler1 = new _message_handler.MessageHandler("main", "worker", port);
220
+ const readable = messageHandler1.sendWithStream("fakeHandler", {}, {
213
221
  highWaterMark: 4,
214
- size: function size(arr) {
222
+
223
+ size(arr) {
215
224
  return arr.length;
216
225
  }
226
+
217
227
  });
218
- var reader = readable.getReader();
219
- sleep(10).then(function () {
220
- expect(log).toEqual('01');
228
+ const reader = readable.getReader();
229
+ sleep(10).then(() => {
230
+ expect(log).toEqual("01");
221
231
  return reader.read();
222
- }).then(function (result) {
232
+ }).then(result => {
223
233
  expect(result.value).toEqual([1, 2, 3, 4]);
224
234
  expect(result.done).toEqual(false);
225
235
  return sleep(10);
226
- }).then(function () {
227
- expect(log).toEqual('01p2');
236
+ }).then(() => {
237
+ expect(log).toEqual("01p2");
228
238
  return reader.read();
229
- }).then(function (result) {
239
+ }).then(result => {
230
240
  expect(result.value).toEqual([5, 6, 7, 8]);
231
241
  expect(result.done).toEqual(false);
232
242
  return sleep(10);
233
- }).then(function () {
234
- expect(log).toEqual('01p2p');
243
+ }).then(() => {
244
+ expect(log).toEqual("01p2p");
235
245
  return reader.read();
236
- }).then(function (result) {
246
+ }).then(result => {
237
247
  expect(result.value).toEqual(undefined);
238
248
  expect(result.done).toEqual(true);
239
249
  done();
240
250
  });
241
251
  });
242
- it('should read data with blocking promise and buffer whole data' + ' into stream', function (done) {
243
- var log = '';
244
- var port = new _api.LoopbackPort();
245
- var messageHandler2 = new _message_handler.MessageHandler('worker', 'main', port);
246
- messageHandler2.on('fakeHandler', function (data, sink) {
252
+ it("should read data with blocking promise and buffer whole data" + " into stream", function (done) {
253
+ let log = "";
254
+ const port = new _api.LoopbackPort();
255
+ const messageHandler2 = new _message_handler.MessageHandler("worker", "main", port);
256
+ messageHandler2.on("fakeHandler", (data, sink) => {
247
257
  sink.onPull = function () {
248
- log += 'p';
258
+ log += "p";
249
259
  };
250
260
 
251
261
  sink.onCancel = function (reason) {
252
- log += 'c';
262
+ log += "c";
253
263
  };
254
264
 
255
- log += '0';
256
- sink.ready.then(function () {
257
- log += '1';
265
+ log += "0";
266
+ sink.ready.then(() => {
267
+ log += "1";
258
268
  sink.enqueue([1, 2, 3, 4], 4);
259
269
  return sink.ready;
260
- }).then(function () {
261
- log += '2';
270
+ }).then(() => {
271
+ log += "2";
262
272
  sink.enqueue([5, 6, 7, 8], 4);
263
273
  return sink.ready;
264
- }).then(function () {
274
+ }).then(() => {
265
275
  sink.close();
266
276
  });
267
277
  return sleep(10);
268
278
  });
269
- var messageHandler1 = new _message_handler.MessageHandler('main', 'worker', port);
270
- var readable = messageHandler1.sendWithStream('fakeHandler', {}, {
279
+ const messageHandler1 = new _message_handler.MessageHandler("main", "worker", port);
280
+ const readable = messageHandler1.sendWithStream("fakeHandler", {}, {
271
281
  highWaterMark: 8,
272
- size: function size(arr) {
282
+
283
+ size(arr) {
273
284
  return arr.length;
274
285
  }
286
+
275
287
  });
276
- var reader = readable.getReader();
277
- sleep(10).then(function () {
278
- expect(log).toEqual('012');
288
+ const reader = readable.getReader();
289
+ sleep(10).then(() => {
290
+ expect(log).toEqual("012");
279
291
  return reader.read();
280
- }).then(function (result) {
292
+ }).then(result => {
281
293
  expect(result.value).toEqual([1, 2, 3, 4]);
282
294
  expect(result.done).toEqual(false);
283
295
  return sleep(10);
284
- }).then(function () {
285
- expect(log).toEqual('012p');
296
+ }).then(() => {
297
+ expect(log).toEqual("012p");
286
298
  return reader.read();
287
- }).then(function (result) {
299
+ }).then(result => {
288
300
  expect(result.value).toEqual([5, 6, 7, 8]);
289
301
  expect(result.done).toEqual(false);
290
302
  return sleep(10);
291
- }).then(function () {
292
- expect(log).toEqual('012p');
303
+ }).then(() => {
304
+ expect(log).toEqual("012p");
293
305
  return reader.read();
294
- }).then(function (result) {
306
+ }).then(result => {
295
307
  expect(result.value).toEqual(undefined);
296
308
  expect(result.done).toEqual(true);
297
309
  done();
298
310
  });
299
311
  });
300
- it('should ignore any pull after close is called', function (done) {
301
- var log = '';
302
- var port = new _api.LoopbackPort();
303
- var capability = (0, _util.createPromiseCapability)();
304
- var messageHandler2 = new _message_handler.MessageHandler('worker', 'main', port);
305
- messageHandler2.on('fakeHandler', function (data, sink) {
312
+ it("should ignore any pull after close is called", function (done) {
313
+ let log = "";
314
+ const port = new _api.LoopbackPort();
315
+ const capability = (0, _util.createPromiseCapability)();
316
+ const messageHandler2 = new _message_handler.MessageHandler("worker", "main", port);
317
+ messageHandler2.on("fakeHandler", (data, sink) => {
306
318
  sink.onPull = function () {
307
- log += 'p';
319
+ log += "p";
308
320
  };
309
321
 
310
322
  sink.onCancel = function (reason) {
311
- log += 'c';
323
+ log += "c";
312
324
  };
313
325
 
314
- log += '0';
315
- sink.ready.then(function () {
316
- log += '1';
326
+ log += "0";
327
+ sink.ready.then(() => {
328
+ log += "1";
317
329
  sink.enqueue([1, 2, 3, 4], 4);
318
330
  });
319
- return capability.promise.then(function () {
331
+ return capability.promise.then(() => {
320
332
  sink.close();
321
333
  });
322
334
  });
323
- var messageHandler1 = new _message_handler.MessageHandler('main', 'worker', port);
324
- var readable = messageHandler1.sendWithStream('fakeHandler', {}, {
335
+ const messageHandler1 = new _message_handler.MessageHandler("main", "worker", port);
336
+ const readable = messageHandler1.sendWithStream("fakeHandler", {}, {
325
337
  highWaterMark: 10,
326
- size: function size(arr) {
338
+
339
+ size(arr) {
327
340
  return arr.length;
328
341
  }
342
+
329
343
  });
330
- var reader = readable.getReader();
331
- sleep(10).then(function () {
332
- expect(log).toEqual('01');
344
+ const reader = readable.getReader();
345
+ sleep(10).then(() => {
346
+ expect(log).toEqual("01");
333
347
  capability.resolve();
334
- return capability.promise.then(function () {
348
+ return capability.promise.then(() => {
335
349
  return reader.read();
336
350
  });
337
- }).then(function (result) {
351
+ }).then(result => {
338
352
  expect(result.value).toEqual([1, 2, 3, 4]);
339
353
  expect(result.done).toEqual(false);
340
354
  return sleep(10);
341
- }).then(function () {
342
- expect(log).toEqual('01');
355
+ }).then(() => {
356
+ expect(log).toEqual("01");
343
357
  return reader.read();
344
- }).then(function (result) {
358
+ }).then(result => {
345
359
  expect(result.value).toEqual(undefined);
346
360
  expect(result.done).toEqual(true);
347
361
  done();