pdfjs-dist 2.3.200 → 2.4.456

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 (185) hide show
  1. package/README.md +4 -0
  2. package/bower.json +1 -1
  3. package/build/pdf.js +6499 -17971
  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 +19303 -29896
  8. package/build/pdf.worker.js.map +1 -1
  9. package/build/pdf.worker.min.js +22 -1
  10. package/es5/build/pdf.js +25473 -0
  11. package/es5/build/pdf.js.map +1 -0
  12. package/{lib/shared/global_scope.js → es5/build/pdf.worker.entry.js} +5 -10
  13. package/es5/build/pdf.worker.js +57878 -0
  14. package/es5/build/pdf.worker.js.map +1 -0
  15. package/es5/web/images/annotation-check.svg +11 -0
  16. package/es5/web/images/annotation-comment.svg +16 -0
  17. package/es5/web/images/annotation-help.svg +26 -0
  18. package/es5/web/images/annotation-insert.svg +10 -0
  19. package/es5/web/images/annotation-key.svg +11 -0
  20. package/es5/web/images/annotation-newparagraph.svg +11 -0
  21. package/es5/web/images/annotation-noicon.svg +7 -0
  22. package/es5/web/images/annotation-note.svg +42 -0
  23. package/es5/web/images/annotation-paragraph.svg +16 -0
  24. package/es5/web/images/loading-icon.gif +0 -0
  25. package/es5/web/images/shadow.png +0 -0
  26. package/es5/web/images/texture.png +0 -0
  27. package/es5/web/pdf_viewer.css +407 -0
  28. package/es5/web/pdf_viewer.js +7757 -0
  29. package/es5/web/pdf_viewer.js.map +1 -0
  30. package/image_decoders/pdf.image_decoders.js +1333 -4839
  31. package/image_decoders/pdf.image_decoders.js.map +1 -1
  32. package/image_decoders/pdf.image_decoders.min.js +22 -1
  33. package/lib/README.md +7 -0
  34. package/lib/core/annotation.js +683 -1066
  35. package/lib/core/arithmetic_decoder.js +81 -97
  36. package/lib/core/bidi.js +54 -46
  37. package/lib/core/ccitt.js +88 -81
  38. package/lib/core/ccitt_stream.js +15 -14
  39. package/lib/core/cff_parser.js +196 -193
  40. package/lib/core/charsets.js +4 -4
  41. package/lib/core/chunked_stream.js +441 -569
  42. package/lib/core/cmap.js +220 -279
  43. package/lib/core/colorspace.js +699 -863
  44. package/lib/core/core_utils.js +59 -80
  45. package/lib/core/crypto.js +379 -437
  46. package/lib/core/document.js +564 -673
  47. package/lib/core/encodings.js +15 -15
  48. package/lib/core/evaluator.js +983 -889
  49. package/lib/core/font_renderer.js +128 -171
  50. package/lib/core/fonts.js +451 -400
  51. package/lib/core/function.js +289 -285
  52. package/lib/core/glyphlist.js +4527 -4527
  53. package/lib/core/image.js +138 -117
  54. package/lib/core/image_utils.js +46 -63
  55. package/lib/core/jbig2.js +324 -332
  56. package/lib/core/jbig2_stream.js +18 -17
  57. package/lib/core/jpeg_stream.js +133 -24
  58. package/lib/core/jpg.js +238 -210
  59. package/lib/core/jpx.js +158 -157
  60. package/lib/core/jpx_stream.js +28 -28
  61. package/lib/core/metrics.js +2928 -2928
  62. package/lib/core/murmurhash3.js +87 -102
  63. package/lib/core/obj.js +1111 -1302
  64. package/lib/core/operator_list.js +55 -42
  65. package/lib/core/parser.js +956 -987
  66. package/lib/core/pattern.js +69 -69
  67. package/lib/core/pdf_manager.js +149 -316
  68. package/lib/core/primitives.js +45 -77
  69. package/lib/core/ps_parser.js +175 -214
  70. package/lib/core/standard_fonts.js +237 -236
  71. package/lib/core/stream.js +83 -77
  72. package/lib/core/type1_parser.js +78 -68
  73. package/lib/core/unicode.js +1654 -1654
  74. package/lib/core/worker.js +148 -196
  75. package/lib/core/worker_stream.js +101 -210
  76. package/lib/display/annotation_layer.js +733 -1155
  77. package/lib/display/api.js +1539 -1928
  78. package/lib/display/api_compatibility.js +10 -8
  79. package/lib/display/canvas.js +159 -158
  80. package/lib/display/content_disposition.js +36 -55
  81. package/lib/display/display_utils.js +298 -551
  82. package/lib/display/fetch_stream.js +181 -305
  83. package/lib/display/font_loader.js +273 -416
  84. package/lib/display/metadata.js +86 -98
  85. package/lib/display/network.js +376 -511
  86. package/lib/display/network_utils.js +20 -19
  87. package/lib/display/node_stream.js +276 -460
  88. package/lib/display/pattern_helper.js +76 -44
  89. package/lib/display/svg.js +1137 -1405
  90. package/lib/display/text_layer.js +75 -82
  91. package/lib/display/transport_stream.js +236 -374
  92. package/lib/display/webgl.js +70 -83
  93. package/lib/display/worker_options.js +3 -3
  94. package/lib/display/xml_parser.js +303 -392
  95. package/lib/examples/node/domstubs.js +37 -37
  96. package/lib/pdf.js +22 -21
  97. package/lib/pdf.worker.js +5 -5
  98. package/lib/shared/compatibility.js +2 -251
  99. package/lib/shared/is_node.js +7 -6
  100. package/lib/shared/message_handler.js +222 -194
  101. package/lib/shared/util.js +269 -405
  102. package/lib/test/unit/annotation_spec.js +1089 -1014
  103. package/lib/test/unit/api_spec.js +617 -544
  104. package/lib/test/unit/bidi_spec.js +7 -7
  105. package/lib/test/unit/cff_parser_spec.js +63 -62
  106. package/lib/test/unit/clitests_helper.js +7 -9
  107. package/lib/test/unit/cmap_spec.js +84 -86
  108. package/lib/test/unit/colorspace_spec.js +154 -154
  109. package/lib/test/unit/core_utils_spec.js +125 -105
  110. package/lib/test/unit/crypto_spec.js +181 -181
  111. package/lib/test/unit/custom_spec.js +22 -24
  112. package/lib/test/unit/display_svg_spec.js +35 -36
  113. package/lib/test/unit/display_utils_spec.js +139 -149
  114. package/lib/test/unit/document_spec.js +16 -16
  115. package/lib/test/unit/encodings_spec.js +12 -34
  116. package/lib/test/unit/evaluator_spec.js +81 -95
  117. package/lib/test/unit/fetch_stream_spec.js +30 -30
  118. package/lib/test/unit/function_spec.js +206 -204
  119. package/lib/test/unit/jasmine-boot.js +48 -32
  120. package/lib/test/unit/message_handler_spec.js +172 -162
  121. package/lib/test/unit/metadata_spec.js +69 -69
  122. package/lib/test/unit/murmurhash3_spec.js +12 -12
  123. package/lib/test/unit/network_spec.js +12 -12
  124. package/lib/test/unit/network_utils_spec.js +152 -152
  125. package/lib/test/unit/node_stream_spec.js +74 -90
  126. package/lib/test/unit/parser_spec.js +107 -113
  127. package/lib/test/unit/pdf_find_controller_spec.js +55 -86
  128. package/lib/test/unit/pdf_find_utils_spec.js +32 -32
  129. package/lib/test/unit/pdf_history_spec.js +32 -32
  130. package/lib/test/unit/primitives_spec.js +117 -115
  131. package/lib/test/unit/stream_spec.js +16 -14
  132. package/lib/test/unit/test_utils.js +119 -285
  133. package/lib/test/unit/testreporter.js +19 -19
  134. package/lib/test/unit/type1_parser_spec.js +41 -41
  135. package/lib/test/unit/ui_utils_spec.js +318 -426
  136. package/lib/test/unit/unicode_spec.js +42 -42
  137. package/lib/test/unit/util_spec.js +122 -143
  138. package/lib/web/annotation_layer_builder.js +66 -103
  139. package/lib/web/app.js +1166 -1196
  140. package/lib/web/app_options.js +61 -77
  141. package/lib/web/base_viewer.js +804 -850
  142. package/lib/web/chromecom.js +164 -249
  143. package/lib/web/debugger.js +149 -205
  144. package/lib/web/download_manager.js +38 -57
  145. package/lib/web/firefox_print_service.js +35 -30
  146. package/lib/web/firefoxcom.js +175 -374
  147. package/lib/web/genericcom.js +26 -108
  148. package/lib/web/genericl10n.js +24 -153
  149. package/lib/web/grab_to_pan.js +30 -30
  150. package/lib/web/interfaces.js +80 -258
  151. package/lib/web/overlay_manager.js +70 -246
  152. package/lib/web/password_prompt.js +38 -64
  153. package/lib/web/pdf_attachment_viewer.js +105 -130
  154. package/lib/web/pdf_cursor_tools.js +75 -102
  155. package/lib/web/pdf_document_properties.js +227 -376
  156. package/lib/web/pdf_find_bar.js +137 -171
  157. package/lib/web/pdf_find_controller.js +492 -549
  158. package/lib/web/pdf_find_utils.js +13 -13
  159. package/lib/web/pdf_history.js +395 -406
  160. package/lib/web/pdf_link_service.js +302 -349
  161. package/lib/web/pdf_outline_viewer.js +148 -209
  162. package/lib/web/pdf_page_view.js +449 -507
  163. package/lib/web/pdf_presentation_mode.js +304 -357
  164. package/lib/web/pdf_print_service.js +90 -104
  165. package/lib/web/pdf_rendering_queue.js +87 -108
  166. package/lib/web/pdf_sidebar.js +264 -304
  167. package/lib/web/pdf_sidebar_resizer.js +92 -119
  168. package/lib/web/pdf_single_page_viewer.js +77 -126
  169. package/lib/web/pdf_thumbnail_view.js +276 -297
  170. package/lib/web/pdf_thumbnail_viewer.js +186 -206
  171. package/lib/web/pdf_viewer.component.js +20 -21
  172. package/lib/web/pdf_viewer.js +55 -115
  173. package/lib/web/preferences.js +66 -273
  174. package/lib/web/secondary_toolbar.js +164 -196
  175. package/lib/web/text_layer_builder.js +284 -317
  176. package/lib/web/toolbar.js +216 -211
  177. package/lib/web/ui_utils.js +303 -404
  178. package/lib/web/view_history.js +49 -222
  179. package/lib/web/viewer_compatibility.js +7 -5
  180. package/package.json +2 -9
  181. package/web/pdf_viewer.css +25 -18
  182. package/web/pdf_viewer.js +3481 -4764
  183. package/web/pdf_viewer.js.map +1 -1
  184. package/webpack.js +14 -5
  185. package/lib/shared/streams_polyfill.js +0 -43
@@ -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.
@@ -28,162 +28,137 @@ exports.PDFAttachmentViewer = void 0;
28
28
 
29
29
  var _pdf = require("../pdf");
30
30
 
31
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
32
-
33
- 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); } }
34
-
35
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
36
-
37
- var PDFAttachmentViewer =
38
- /*#__PURE__*/
39
- function () {
40
- function PDFAttachmentViewer(_ref) {
41
- var container = _ref.container,
42
- eventBus = _ref.eventBus,
43
- downloadManager = _ref.downloadManager;
44
-
45
- _classCallCheck(this, PDFAttachmentViewer);
46
-
31
+ class PDFAttachmentViewer {
32
+ constructor({
33
+ container,
34
+ eventBus,
35
+ downloadManager
36
+ }) {
47
37
  this.container = container;
48
38
  this.eventBus = eventBus;
49
39
  this.downloadManager = downloadManager;
50
40
  this.reset();
51
- this.eventBus.on('fileattachmentannotation', this._appendAttachment.bind(this));
41
+
42
+ this.eventBus._on("fileattachmentannotation", this._appendAttachment.bind(this));
52
43
  }
53
44
 
54
- _createClass(PDFAttachmentViewer, [{
55
- key: "reset",
56
- value: function reset() {
57
- var keepRenderedCapability = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
58
- this.attachments = null;
59
- this.container.textContent = '';
45
+ reset(keepRenderedCapability = false) {
46
+ this.attachments = null;
47
+ this.container.textContent = "";
60
48
 
61
- if (!keepRenderedCapability) {
62
- this._renderedCapability = (0, _pdf.createPromiseCapability)();
63
- }
49
+ if (!keepRenderedCapability) {
50
+ this._renderedCapability = (0, _pdf.createPromiseCapability)();
64
51
  }
65
- }, {
66
- key: "_dispatchEvent",
67
- value: function _dispatchEvent(attachmentsCount) {
68
- this._renderedCapability.resolve();
69
-
70
- this.eventBus.dispatch('attachmentsloaded', {
71
- source: this,
72
- attachmentsCount: attachmentsCount
73
- });
74
- }
75
- }, {
76
- key: "_bindPdfLink",
77
- value: function _bindPdfLink(button, content, filename) {
78
- if (this.downloadManager.disableCreateObjectURL) {
79
- throw new Error('bindPdfLink: Unsupported "disableCreateObjectURL" value.');
80
- }
52
+ }
81
53
 
82
- var blobUrl;
54
+ _dispatchEvent(attachmentsCount) {
55
+ this._renderedCapability.resolve();
83
56
 
84
- button.onclick = function () {
85
- if (!blobUrl) {
86
- blobUrl = (0, _pdf.createObjectURL)(content, 'application/pdf');
87
- }
57
+ this.eventBus.dispatch("attachmentsloaded", {
58
+ source: this,
59
+ attachmentsCount
60
+ });
61
+ }
88
62
 
89
- var viewerUrl;
90
- viewerUrl = '?file=' + encodeURIComponent(blobUrl + '#' + filename);
91
- window.open(viewerUrl);
92
- return false;
93
- };
63
+ _bindPdfLink(button, content, filename) {
64
+ if (this.downloadManager.disableCreateObjectURL) {
65
+ throw new Error('bindPdfLink: Unsupported "disableCreateObjectURL" value.');
94
66
  }
95
- }, {
96
- key: "_bindLink",
97
- value: function _bindLink(button, content, filename) {
98
- var _this = this;
99
67
 
100
- button.onclick = function () {
101
- _this.downloadManager.downloadData(content, filename, '');
68
+ let blobUrl;
102
69
 
103
- return false;
104
- };
105
- }
106
- }, {
107
- key: "render",
108
- value: function render(_ref2) {
109
- var attachments = _ref2.attachments,
110
- _ref2$keepRenderedCap = _ref2.keepRenderedCapability,
111
- keepRenderedCapability = _ref2$keepRenderedCap === void 0 ? false : _ref2$keepRenderedCap;
112
- var attachmentsCount = 0;
113
-
114
- if (this.attachments) {
115
- this.reset(keepRenderedCapability === true);
70
+ button.onclick = function () {
71
+ if (!blobUrl) {
72
+ blobUrl = (0, _pdf.createObjectURL)(content, "application/pdf");
116
73
  }
117
74
 
118
- this.attachments = attachments || null;
75
+ let viewerUrl;
76
+ viewerUrl = "?file=" + encodeURIComponent(blobUrl + "#" + filename);
77
+ window.open(viewerUrl);
78
+ return false;
79
+ };
80
+ }
119
81
 
120
- if (!attachments) {
121
- this._dispatchEvent(attachmentsCount);
82
+ _bindLink(button, content, filename) {
83
+ button.onclick = () => {
84
+ this.downloadManager.downloadData(content, filename, "");
85
+ return false;
86
+ };
87
+ }
122
88
 
123
- return;
124
- }
89
+ render({
90
+ attachments,
91
+ keepRenderedCapability = false
92
+ }) {
93
+ let attachmentsCount = 0;
125
94
 
126
- var names = Object.keys(attachments).sort(function (a, b) {
127
- return a.toLowerCase().localeCompare(b.toLowerCase());
128
- });
129
- attachmentsCount = names.length;
130
-
131
- for (var i = 0; i < attachmentsCount; i++) {
132
- var item = attachments[names[i]];
133
- var filename = (0, _pdf.removeNullCharacters)((0, _pdf.getFilenameFromUrl)(item.filename));
134
- var div = document.createElement('div');
135
- div.className = 'attachmentsItem';
136
- var button = document.createElement('button');
137
- button.textContent = filename;
138
-
139
- if (/\.pdf$/i.test(filename) && !this.downloadManager.disableCreateObjectURL) {
140
- this._bindPdfLink(button, item.content, filename);
141
- } else {
142
- this._bindLink(button, item.content, filename);
143
- }
95
+ if (this.attachments) {
96
+ this.reset(keepRenderedCapability === true);
97
+ }
144
98
 
145
- div.appendChild(button);
146
- this.container.appendChild(div);
147
- }
99
+ this.attachments = attachments || null;
148
100
 
101
+ if (!attachments) {
149
102
  this._dispatchEvent(attachmentsCount);
103
+
104
+ return;
150
105
  }
151
- }, {
152
- key: "_appendAttachment",
153
- value: function _appendAttachment(_ref3) {
154
- var _this2 = this;
155
-
156
- var id = _ref3.id,
157
- filename = _ref3.filename,
158
- content = _ref3.content;
159
-
160
- this._renderedCapability.promise.then(function () {
161
- var attachments = _this2.attachments;
162
-
163
- if (!attachments) {
164
- attachments = Object.create(null);
165
- } else {
166
- for (var name in attachments) {
167
- if (id === name) {
168
- return;
169
- }
106
+
107
+ const names = Object.keys(attachments).sort(function (a, b) {
108
+ return a.toLowerCase().localeCompare(b.toLowerCase());
109
+ });
110
+ attachmentsCount = names.length;
111
+
112
+ for (let i = 0; i < attachmentsCount; i++) {
113
+ const item = attachments[names[i]];
114
+ const filename = (0, _pdf.removeNullCharacters)((0, _pdf.getFilenameFromUrl)(item.filename));
115
+ const div = document.createElement("div");
116
+ div.className = "attachmentsItem";
117
+ const button = document.createElement("button");
118
+ button.textContent = filename;
119
+
120
+ if (/\.pdf$/i.test(filename) && !this.downloadManager.disableCreateObjectURL) {
121
+ this._bindPdfLink(button, item.content, filename);
122
+ } else {
123
+ this._bindLink(button, item.content, filename);
124
+ }
125
+
126
+ div.appendChild(button);
127
+ this.container.appendChild(div);
128
+ }
129
+
130
+ this._dispatchEvent(attachmentsCount);
131
+ }
132
+
133
+ _appendAttachment({
134
+ id,
135
+ filename,
136
+ content
137
+ }) {
138
+ this._renderedCapability.promise.then(() => {
139
+ let attachments = this.attachments;
140
+
141
+ if (!attachments) {
142
+ attachments = Object.create(null);
143
+ } else {
144
+ for (const name in attachments) {
145
+ if (id === name) {
146
+ return;
170
147
  }
171
148
  }
149
+ }
172
150
 
173
- attachments[id] = {
174
- filename: filename,
175
- content: content
176
- };
177
-
178
- _this2.render({
179
- attachments: attachments,
180
- keepRenderedCapability: true
181
- });
151
+ attachments[id] = {
152
+ filename,
153
+ content
154
+ };
155
+ this.render({
156
+ attachments,
157
+ keepRenderedCapability: true
182
158
  });
183
- }
184
- }]);
159
+ });
160
+ }
185
161
 
186
- return PDFAttachmentViewer;
187
- }();
162
+ }
188
163
 
189
164
  exports.PDFAttachmentViewer = PDFAttachmentViewer;
@@ -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,34 +26,21 @@ Object.defineProperty(exports, "__esModule", {
26
26
  });
27
27
  exports.PDFCursorTools = exports.CursorTool = void 0;
28
28
 
29
- var _grab_to_pan = require("./grab_to_pan");
29
+ var _grab_to_pan = require("./grab_to_pan.js");
30
30
 
31
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
32
-
33
- 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); } }
34
-
35
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
36
-
37
- var CursorTool = {
31
+ const CursorTool = {
38
32
  SELECT: 0,
39
33
  HAND: 1,
40
34
  ZOOM: 2
41
35
  };
42
36
  exports.CursorTool = CursorTool;
43
37
 
44
- var PDFCursorTools =
45
- /*#__PURE__*/
46
- function () {
47
- function PDFCursorTools(_ref) {
48
- var _this = this;
49
-
50
- var container = _ref.container,
51
- eventBus = _ref.eventBus,
52
- _ref$cursorToolOnLoad = _ref.cursorToolOnLoad,
53
- cursorToolOnLoad = _ref$cursorToolOnLoad === void 0 ? CursorTool.SELECT : _ref$cursorToolOnLoad;
54
-
55
- _classCallCheck(this, PDFCursorTools);
56
-
38
+ class PDFCursorTools {
39
+ constructor({
40
+ container,
41
+ eventBus,
42
+ cursorToolOnLoad = CursorTool.SELECT
43
+ }) {
57
44
  this.container = container;
58
45
  this.eventBus = eventBus;
59
46
  this.active = CursorTool.SELECT;
@@ -64,103 +51,89 @@ function () {
64
51
 
65
52
  this._addEventListeners();
66
53
 
67
- Promise.resolve().then(function () {
68
- _this.switchTool(cursorToolOnLoad);
54
+ Promise.resolve().then(() => {
55
+ this.switchTool(cursorToolOnLoad);
69
56
  });
70
57
  }
71
58
 
72
- _createClass(PDFCursorTools, [{
73
- key: "switchTool",
74
- value: function switchTool(tool) {
75
- var _this2 = this;
76
-
77
- if (this.activeBeforePresentationMode !== null) {
78
- return;
79
- }
80
-
81
- if (tool === this.active) {
82
- return;
83
- }
84
-
85
- var disableActiveTool = function disableActiveTool() {
86
- switch (_this2.active) {
87
- case CursorTool.SELECT:
88
- break;
89
-
90
- case CursorTool.HAND:
91
- _this2.handTool.deactivate();
59
+ get activeTool() {
60
+ return this.active;
61
+ }
92
62
 
93
- break;
63
+ switchTool(tool) {
64
+ if (this.activeBeforePresentationMode !== null) {
65
+ return;
66
+ }
94
67
 
95
- case CursorTool.ZOOM:
96
- }
97
- };
68
+ if (tool === this.active) {
69
+ return;
70
+ }
98
71
 
99
- switch (tool) {
72
+ const disableActiveTool = () => {
73
+ switch (this.active) {
100
74
  case CursorTool.SELECT:
101
- disableActiveTool();
102
75
  break;
103
76
 
104
77
  case CursorTool.HAND:
105
- disableActiveTool();
106
- this.handTool.activate();
78
+ this.handTool.deactivate();
107
79
  break;
108
80
 
109
81
  case CursorTool.ZOOM:
110
- default:
111
- console.error("switchTool: \"".concat(tool, "\" is an unsupported value."));
112
- return;
113
82
  }
83
+ };
114
84
 
115
- this.active = tool;
85
+ switch (tool) {
86
+ case CursorTool.SELECT:
87
+ disableActiveTool();
88
+ break;
116
89
 
117
- this._dispatchEvent();
118
- }
119
- }, {
120
- key: "_dispatchEvent",
121
- value: function _dispatchEvent() {
122
- this.eventBus.dispatch('cursortoolchanged', {
123
- source: this,
124
- tool: this.active
125
- });
126
- }
127
- }, {
128
- key: "_addEventListeners",
129
- value: function _addEventListeners() {
130
- var _this3 = this;
131
-
132
- this.eventBus.on('switchcursortool', function (evt) {
133
- _this3.switchTool(evt.tool);
134
- });
135
- this.eventBus.on('presentationmodechanged', function (evt) {
136
- if (evt.switchInProgress) {
137
- return;
138
- }
139
-
140
- var previouslyActive;
141
-
142
- if (evt.active) {
143
- previouslyActive = _this3.active;
144
-
145
- _this3.switchTool(CursorTool.SELECT);
146
-
147
- _this3.activeBeforePresentationMode = previouslyActive;
148
- } else {
149
- previouslyActive = _this3.activeBeforePresentationMode;
150
- _this3.activeBeforePresentationMode = null;
151
-
152
- _this3.switchTool(previouslyActive);
153
- }
154
- });
155
- }
156
- }, {
157
- key: "activeTool",
158
- get: function get() {
159
- return this.active;
90
+ case CursorTool.HAND:
91
+ disableActiveTool();
92
+ this.handTool.activate();
93
+ break;
94
+
95
+ case CursorTool.ZOOM:
96
+ default:
97
+ console.error(`switchTool: "${tool}" is an unsupported value.`);
98
+ return;
160
99
  }
161
- }]);
162
100
 
163
- return PDFCursorTools;
164
- }();
101
+ this.active = tool;
102
+
103
+ this._dispatchEvent();
104
+ }
105
+
106
+ _dispatchEvent() {
107
+ this.eventBus.dispatch("cursortoolchanged", {
108
+ source: this,
109
+ tool: this.active
110
+ });
111
+ }
112
+
113
+ _addEventListeners() {
114
+ this.eventBus._on("switchcursortool", evt => {
115
+ this.switchTool(evt.tool);
116
+ });
117
+
118
+ this.eventBus._on("presentationmodechanged", evt => {
119
+ if (evt.switchInProgress) {
120
+ return;
121
+ }
122
+
123
+ let previouslyActive;
124
+
125
+ if (evt.active) {
126
+ previouslyActive = this.active;
127
+ this.switchTool(CursorTool.SELECT);
128
+ this.activeBeforePresentationMode = previouslyActive;
129
+ } else {
130
+ previouslyActive = this.activeBeforePresentationMode;
131
+ this.activeBeforePresentationMode = null;
132
+ this.switchTool(previouslyActive);
133
+ }
134
+ });
135
+ }
136
+
137
+ }
165
138
 
166
139
  exports.PDFCursorTools = PDFCursorTools;