pdfjs-dist 2.1.266 → 2.5.207

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 (191) hide show
  1. package/CODE_OF_CONDUCT.md +15 -0
  2. package/README.md +4 -0
  3. package/bower.json +1 -1
  4. package/build/pdf.js +8382 -18492
  5. package/build/pdf.js.map +1 -1
  6. package/build/pdf.min.js +22 -1
  7. package/build/pdf.worker.entry.js +5 -3
  8. package/build/pdf.worker.js +20417 -29816
  9. package/build/pdf.worker.js.map +1 -1
  10. package/build/pdf.worker.min.js +22 -1
  11. package/es5/build/pdf.js +25688 -0
  12. package/es5/build/pdf.js.map +1 -0
  13. package/{lib/shared/global_scope.js → es5/build/pdf.worker.entry.js} +5 -10
  14. package/es5/build/pdf.worker.js +58239 -0
  15. package/es5/build/pdf.worker.js.map +1 -0
  16. package/es5/web/images/annotation-check.svg +11 -0
  17. package/es5/web/images/annotation-comment.svg +16 -0
  18. package/es5/web/images/annotation-help.svg +26 -0
  19. package/es5/web/images/annotation-insert.svg +10 -0
  20. package/es5/web/images/annotation-key.svg +11 -0
  21. package/es5/web/images/annotation-newparagraph.svg +11 -0
  22. package/es5/web/images/annotation-noicon.svg +7 -0
  23. package/es5/web/images/annotation-note.svg +42 -0
  24. package/es5/web/images/annotation-paragraph.svg +16 -0
  25. package/es5/web/images/loading-icon.gif +0 -0
  26. package/es5/web/images/shadow.png +0 -0
  27. package/es5/web/images/texture.png +0 -0
  28. package/es5/web/pdf_viewer.css +403 -0
  29. package/es5/web/pdf_viewer.js +7742 -0
  30. package/es5/web/pdf_viewer.js.map +1 -0
  31. package/image_decoders/pdf.image_decoders.js +1475 -4897
  32. package/image_decoders/pdf.image_decoders.js.map +1 -1
  33. package/image_decoders/pdf.image_decoders.min.js +22 -1
  34. package/lib/README.md +7 -0
  35. package/lib/core/annotation.js +750 -899
  36. package/lib/core/arithmetic_decoder.js +81 -97
  37. package/lib/core/bidi.js +54 -46
  38. package/lib/core/ccitt.js +88 -81
  39. package/lib/core/ccitt_stream.js +15 -14
  40. package/lib/core/cff_parser.js +235 -183
  41. package/lib/core/charsets.js +4 -4
  42. package/lib/core/chunked_stream.js +447 -542
  43. package/lib/core/cmap.js +222 -264
  44. package/lib/core/colorspace.js +699 -863
  45. package/lib/core/core_utils.js +152 -0
  46. package/lib/core/crypto.js +379 -437
  47. package/lib/core/document.js +573 -660
  48. package/lib/core/encodings.js +15 -15
  49. package/lib/core/evaluator.js +1103 -868
  50. package/lib/core/font_renderer.js +135 -178
  51. package/lib/core/fonts.js +570 -491
  52. package/lib/core/function.js +291 -288
  53. package/lib/core/glyphlist.js +4527 -4526
  54. package/lib/core/image.js +145 -149
  55. package/lib/core/image_utils.js +170 -0
  56. package/lib/core/jbig2.js +325 -316
  57. package/lib/core/jbig2_stream.js +18 -17
  58. package/lib/core/jpeg_stream.js +21 -26
  59. package/lib/core/jpg.js +284 -232
  60. package/lib/core/jpx.js +161 -143
  61. package/lib/core/jpx_stream.js +28 -28
  62. package/lib/core/metrics.js +2929 -2929
  63. package/lib/core/murmurhash3.js +90 -101
  64. package/lib/core/obj.js +1183 -1157
  65. package/lib/core/operator_list.js +99 -67
  66. package/lib/core/parser.js +972 -911
  67. package/lib/core/pattern.js +87 -70
  68. package/lib/core/pdf_manager.js +150 -315
  69. package/lib/core/primitives.js +83 -56
  70. package/lib/core/ps_parser.js +175 -214
  71. package/lib/core/standard_fonts.js +237 -236
  72. package/lib/core/stream.js +94 -74
  73. package/lib/core/type1_parser.js +87 -69
  74. package/lib/core/unicode.js +1654 -1654
  75. package/lib/core/worker.js +193 -390
  76. package/lib/core/worker_stream.js +168 -0
  77. package/lib/display/annotation_layer.js +741 -972
  78. package/lib/display/api.js +1500 -1791
  79. package/lib/display/api_compatibility.js +12 -17
  80. package/lib/display/canvas.js +165 -165
  81. package/lib/display/content_disposition.js +40 -59
  82. package/lib/display/display_utils.js +515 -0
  83. package/lib/display/fetch_stream.js +183 -298
  84. package/lib/display/font_loader.js +273 -413
  85. package/lib/display/metadata.js +86 -98
  86. package/lib/display/network.js +266 -359
  87. package/lib/display/network_utils.js +25 -18
  88. package/lib/display/node_stream.js +285 -458
  89. package/lib/display/pattern_helper.js +113 -65
  90. package/lib/display/svg.js +1166 -901
  91. package/lib/display/text_layer.js +156 -132
  92. package/lib/display/transport_stream.js +262 -278
  93. package/lib/display/webgl.js +70 -83
  94. package/lib/display/worker_options.js +3 -3
  95. package/lib/display/xml_parser.js +303 -392
  96. package/lib/examples/node/domstubs.js +40 -37
  97. package/lib/pdf.js +226 -59
  98. package/lib/pdf.worker.js +14 -6
  99. package/lib/shared/compatibility.js +3 -246
  100. package/lib/shared/is_node.js +7 -6
  101. package/lib/shared/message_handler.js +327 -332
  102. package/lib/shared/util.js +266 -416
  103. package/lib/test/unit/annotation_spec.js +1555 -701
  104. package/lib/test/unit/api_spec.js +802 -604
  105. package/lib/test/unit/bidi_spec.js +7 -7
  106. package/lib/test/unit/cff_parser_spec.js +84 -69
  107. package/lib/test/unit/clitests_helper.js +7 -9
  108. package/lib/test/unit/cmap_spec.js +74 -76
  109. package/lib/test/unit/colorspace_spec.js +166 -161
  110. package/lib/test/unit/core_utils_spec.js +211 -0
  111. package/lib/test/unit/crypto_spec.js +181 -181
  112. package/lib/test/unit/custom_spec.js +20 -22
  113. package/lib/test/unit/display_svg_spec.js +34 -39
  114. package/lib/test/unit/display_utils_spec.js +263 -0
  115. package/lib/test/unit/document_spec.js +16 -21
  116. package/lib/test/unit/encodings_spec.js +12 -34
  117. package/lib/test/unit/evaluator_spec.js +83 -83
  118. package/lib/test/unit/fetch_stream_spec.js +111 -0
  119. package/lib/test/unit/function_spec.js +206 -204
  120. package/lib/test/unit/jasmine-boot.js +46 -30
  121. package/lib/test/unit/message_handler_spec.js +173 -159
  122. package/lib/test/unit/metadata_spec.js +69 -69
  123. package/lib/test/unit/murmurhash3_spec.js +12 -12
  124. package/lib/test/unit/network_spec.js +13 -61
  125. package/lib/test/unit/network_utils_spec.js +183 -119
  126. package/lib/test/unit/node_stream_spec.js +78 -92
  127. package/lib/test/unit/parser_spec.js +172 -114
  128. package/lib/test/unit/pdf_find_controller_spec.js +55 -86
  129. package/lib/test/unit/pdf_find_utils_spec.js +32 -32
  130. package/lib/test/unit/pdf_history_spec.js +32 -32
  131. package/lib/test/unit/primitives_spec.js +140 -125
  132. package/lib/test/unit/stream_spec.js +16 -14
  133. package/lib/test/unit/test_utils.js +131 -143
  134. package/lib/test/unit/testreporter.js +19 -19
  135. package/lib/test/unit/type1_parser_spec.js +42 -42
  136. package/lib/test/unit/ui_utils_spec.js +297 -459
  137. package/lib/test/unit/unicode_spec.js +38 -38
  138. package/lib/test/unit/util_spec.js +121 -305
  139. package/lib/web/annotation_layer_builder.js +66 -103
  140. package/lib/web/app.js +1328 -1214
  141. package/lib/web/app_options.js +105 -107
  142. package/lib/web/base_viewer.js +824 -838
  143. package/lib/web/chromecom.js +165 -252
  144. package/lib/web/debugger.js +149 -205
  145. package/lib/web/download_manager.js +39 -55
  146. package/lib/web/firefox_print_service.js +37 -27
  147. package/lib/web/firefoxcom.js +212 -363
  148. package/lib/web/genericcom.js +26 -108
  149. package/lib/web/genericl10n.js +24 -153
  150. package/lib/web/grab_to_pan.js +32 -30
  151. package/lib/web/interfaces.js +80 -254
  152. package/lib/web/overlay_manager.js +70 -246
  153. package/lib/web/password_prompt.js +38 -64
  154. package/lib/web/pdf_attachment_viewer.js +113 -131
  155. package/lib/web/pdf_cursor_tools.js +75 -102
  156. package/lib/web/pdf_document_properties.js +221 -306
  157. package/lib/web/pdf_find_bar.js +136 -170
  158. package/lib/web/pdf_find_controller.js +491 -548
  159. package/lib/web/pdf_find_utils.js +13 -13
  160. package/lib/web/pdf_history.js +397 -406
  161. package/lib/web/pdf_link_service.js +304 -348
  162. package/lib/web/pdf_outline_viewer.js +140 -175
  163. package/lib/web/pdf_page_view.js +452 -523
  164. package/lib/web/pdf_presentation_mode.js +308 -357
  165. package/lib/web/pdf_print_service.js +90 -104
  166. package/lib/web/pdf_rendering_queue.js +84 -108
  167. package/lib/web/pdf_sidebar.js +276 -306
  168. package/lib/web/pdf_sidebar_resizer.js +92 -119
  169. package/lib/web/pdf_single_page_viewer.js +77 -126
  170. package/lib/web/pdf_thumbnail_view.js +276 -297
  171. package/lib/web/pdf_thumbnail_viewer.js +186 -206
  172. package/lib/web/pdf_viewer.component.js +20 -21
  173. package/lib/web/pdf_viewer.js +55 -115
  174. package/lib/web/preferences.js +82 -286
  175. package/lib/web/secondary_toolbar.js +164 -196
  176. package/lib/web/text_layer_builder.js +282 -339
  177. package/lib/web/toolbar.js +217 -210
  178. package/lib/web/ui_utils.js +267 -420
  179. package/lib/web/view_history.js +52 -226
  180. package/lib/web/viewer_compatibility.js +21 -6
  181. package/package.json +2 -9
  182. package/web/pdf_viewer.css +35 -25
  183. package/web/pdf_viewer.js +3489 -4855
  184. package/web/pdf_viewer.js.map +1 -1
  185. package/webpack.js +14 -5
  186. package/external/streams/streams-lib.js +0 -3962
  187. package/external/url/url-lib.js +0 -627
  188. package/lib/display/dom_utils.js +0 -494
  189. package/lib/shared/streams_polyfill.js +0 -43
  190. package/lib/shared/url_polyfill.js +0 -56
  191. package/lib/test/unit/dom_utils_spec.js +0 -89
@@ -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 2018 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.
@@ -19,103 +19,44 @@
19
19
  * @licend The above is the entire license notice for the
20
20
  * Javascript code in this page
21
21
  */
22
- 'use strict';
23
-
24
- 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); }
22
+ "use strict";
25
23
 
26
24
  var FontInspector = function FontInspectorClosure() {
27
- var fonts, createObjectURL;
25
+ var fonts;
28
26
  var active = false;
29
- var fontAttribute = 'data-font-name';
27
+ var fontAttribute = "data-font-name";
30
28
 
31
29
  function removeSelection() {
32
- var divs = document.querySelectorAll("span[".concat(fontAttribute, "]"));
33
- var _iteratorNormalCompletion = true;
34
- var _didIteratorError = false;
35
- var _iteratorError = undefined;
36
-
37
- try {
38
- for (var _iterator = divs[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
39
- var div = _step.value;
40
- div.className = '';
41
- }
42
- } catch (err) {
43
- _didIteratorError = true;
44
- _iteratorError = err;
45
- } finally {
46
- try {
47
- if (!_iteratorNormalCompletion && _iterator.return != null) {
48
- _iterator.return();
49
- }
50
- } finally {
51
- if (_didIteratorError) {
52
- throw _iteratorError;
53
- }
54
- }
30
+ const divs = document.querySelectorAll(`span[${fontAttribute}]`);
31
+
32
+ for (const div of divs) {
33
+ div.className = "";
55
34
  }
56
35
  }
57
36
 
58
37
  function resetSelection() {
59
- var divs = document.querySelectorAll("span[".concat(fontAttribute, "]"));
60
- var _iteratorNormalCompletion2 = true;
61
- var _didIteratorError2 = false;
62
- var _iteratorError2 = undefined;
63
-
64
- try {
65
- for (var _iterator2 = divs[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
66
- var div = _step2.value;
67
- div.className = 'debuggerHideText';
68
- }
69
- } catch (err) {
70
- _didIteratorError2 = true;
71
- _iteratorError2 = err;
72
- } finally {
73
- try {
74
- if (!_iteratorNormalCompletion2 && _iterator2.return != null) {
75
- _iterator2.return();
76
- }
77
- } finally {
78
- if (_didIteratorError2) {
79
- throw _iteratorError2;
80
- }
81
- }
38
+ const divs = document.querySelectorAll(`span[${fontAttribute}]`);
39
+
40
+ for (const div of divs) {
41
+ div.className = "debuggerHideText";
82
42
  }
83
43
  }
84
44
 
85
45
  function selectFont(fontName, show) {
86
- var divs = document.querySelectorAll("span[".concat(fontAttribute, "=").concat(fontName, "]"));
87
- var _iteratorNormalCompletion3 = true;
88
- var _didIteratorError3 = false;
89
- var _iteratorError3 = undefined;
90
-
91
- try {
92
- for (var _iterator3 = divs[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {
93
- var div = _step3.value;
94
- div.className = show ? 'debuggerShowText' : 'debuggerHideText';
95
- }
96
- } catch (err) {
97
- _didIteratorError3 = true;
98
- _iteratorError3 = err;
99
- } finally {
100
- try {
101
- if (!_iteratorNormalCompletion3 && _iterator3.return != null) {
102
- _iterator3.return();
103
- }
104
- } finally {
105
- if (_didIteratorError3) {
106
- throw _iteratorError3;
107
- }
108
- }
46
+ const divs = document.querySelectorAll(`span[${fontAttribute}=${fontName}]`);
47
+
48
+ for (const div of divs) {
49
+ div.className = show ? "debuggerShowText" : "debuggerHideText";
109
50
  }
110
51
  }
111
52
 
112
53
  function textLayerClick(e) {
113
- if (!e.target.dataset.fontName || e.target.tagName.toUpperCase() !== 'SPAN') {
54
+ if (!e.target.dataset.fontName || e.target.tagName.toUpperCase() !== "SPAN") {
114
55
  return;
115
56
  }
116
57
 
117
58
  var fontName = e.target.dataset.fontName;
118
- var selects = document.getElementsByTagName('input');
59
+ var selects = document.getElementsByTagName("input");
119
60
 
120
61
  for (var i = 0; i < selects.length; ++i) {
121
62
  var select = selects[i];
@@ -131,23 +72,21 @@ var FontInspector = function FontInspectorClosure() {
131
72
  }
132
73
 
133
74
  return {
134
- id: 'FontInspector',
135
- name: 'Font Inspector',
75
+ id: "FontInspector",
76
+ name: "Font Inspector",
136
77
  panel: null,
137
78
  manager: null,
138
79
  init: function init(pdfjsLib) {
139
80
  var panel = this.panel;
140
- panel.setAttribute('style', 'padding: 5px;');
141
- var tmp = document.createElement('button');
142
- tmp.addEventListener('click', resetSelection);
143
- tmp.textContent = 'Refresh';
81
+ var tmp = document.createElement("button");
82
+ tmp.addEventListener("click", resetSelection);
83
+ tmp.textContent = "Refresh";
144
84
  panel.appendChild(tmp);
145
- fonts = document.createElement('div');
85
+ fonts = document.createElement("div");
146
86
  panel.appendChild(fonts);
147
- createObjectURL = pdfjsLib.createObjectURL;
148
87
  },
149
88
  cleanup: function cleanup() {
150
- fonts.textContent = '';
89
+ fonts.textContent = "";
151
90
  },
152
91
  enabled: false,
153
92
 
@@ -159,26 +98,24 @@ var FontInspector = function FontInspectorClosure() {
159
98
  active = value;
160
99
 
161
100
  if (active) {
162
- document.body.addEventListener('click', textLayerClick, true);
101
+ document.body.addEventListener("click", textLayerClick, true);
163
102
  resetSelection();
164
103
  } else {
165
- document.body.removeEventListener('click', textLayerClick, true);
104
+ document.body.removeEventListener("click", textLayerClick, true);
166
105
  removeSelection();
167
106
  }
168
107
  },
169
108
 
170
109
  fontAdded: function fontAdded(fontObj, url) {
171
- var _this = this;
172
-
173
110
  function properties(obj, list) {
174
- var moreInfo = document.createElement('table');
111
+ var moreInfo = document.createElement("table");
175
112
 
176
113
  for (var i = 0; i < list.length; i++) {
177
- var tr = document.createElement('tr');
178
- var td1 = document.createElement('td');
114
+ var tr = document.createElement("tr");
115
+ var td1 = document.createElement("td");
179
116
  td1.textContent = list[i];
180
117
  tr.appendChild(td1);
181
- var td2 = document.createElement('td');
118
+ var td2 = document.createElement("td");
182
119
  td2.textContent = obj[list[i]].toString();
183
120
  tr.appendChild(td2);
184
121
  moreInfo.appendChild(tr);
@@ -187,46 +124,46 @@ var FontInspector = function FontInspectorClosure() {
187
124
  return moreInfo;
188
125
  }
189
126
 
190
- var moreInfo = properties(fontObj, ['name', 'type']);
191
- var fontName = fontObj.loadedName;
192
- var font = document.createElement('div');
193
- var name = document.createElement('span');
127
+ var moreInfo = properties(fontObj, ["name", "type"]);
128
+ const fontName = fontObj.loadedName;
129
+ var font = document.createElement("div");
130
+ var name = document.createElement("span");
194
131
  name.textContent = fontName;
195
- var download = document.createElement('a');
132
+ var download = document.createElement("a");
196
133
 
197
134
  if (url) {
198
135
  url = /url\(['"]?([^\)"']+)/.exec(url);
199
136
  download.href = url[1];
200
137
  } else if (fontObj.data) {
201
- download.href = createObjectURL(fontObj.data, fontObj.mimeType);
138
+ download.href = URL.createObjectURL(new Blob([fontObj.data], {
139
+ type: fontObj.mimeType
140
+ }));
202
141
  }
203
142
 
204
- download.textContent = 'Download';
205
- var logIt = document.createElement('a');
206
- logIt.href = '';
207
- logIt.textContent = 'Log';
208
- logIt.addEventListener('click', function (event) {
143
+ download.textContent = "Download";
144
+ var logIt = document.createElement("a");
145
+ logIt.href = "";
146
+ logIt.textContent = "Log";
147
+ logIt.addEventListener("click", function (event) {
209
148
  event.preventDefault();
210
149
  console.log(fontObj);
211
150
  });
212
- var select = document.createElement('input');
213
- select.setAttribute('type', 'checkbox');
151
+ const select = document.createElement("input");
152
+ select.setAttribute("type", "checkbox");
214
153
  select.dataset.fontName = fontName;
215
- select.addEventListener('click', function (select, fontName) {
216
- return function () {
217
- selectFont(fontName, select.checked);
218
- };
219
- }(select, fontName));
154
+ select.addEventListener("click", function () {
155
+ selectFont(fontName, select.checked);
156
+ });
220
157
  font.appendChild(select);
221
158
  font.appendChild(name);
222
- font.appendChild(document.createTextNode(' '));
159
+ font.appendChild(document.createTextNode(" "));
223
160
  font.appendChild(download);
224
- font.appendChild(document.createTextNode(' '));
161
+ font.appendChild(document.createTextNode(" "));
225
162
  font.appendChild(logIt);
226
163
  font.appendChild(moreInfo);
227
164
  fonts.appendChild(font);
228
- setTimeout(function () {
229
- if (_this.active) {
165
+ setTimeout(() => {
166
+ if (this.active) {
230
167
  resetSelection();
231
168
  }
232
169
  }, 2000);
@@ -243,25 +180,24 @@ var StepperManager = function StepperManagerClosure() {
243
180
  var stepperChooser = null;
244
181
  var breakPoints = Object.create(null);
245
182
  return {
246
- id: 'Stepper',
247
- name: 'Stepper',
183
+ id: "Stepper",
184
+ name: "Stepper",
248
185
  panel: null,
249
186
  manager: null,
250
187
  init: function init(pdfjsLib) {
251
188
  var self = this;
252
- this.panel.setAttribute('style', 'padding: 5px;');
253
- stepperControls = document.createElement('div');
254
- stepperChooser = document.createElement('select');
255
- stepperChooser.addEventListener('change', function (event) {
189
+ stepperControls = document.createElement("div");
190
+ stepperChooser = document.createElement("select");
191
+ stepperChooser.addEventListener("change", function (event) {
256
192
  self.selectStepper(this.value);
257
193
  });
258
194
  stepperControls.appendChild(stepperChooser);
259
- stepperDiv = document.createElement('div');
195
+ stepperDiv = document.createElement("div");
260
196
  this.panel.appendChild(stepperControls);
261
197
  this.panel.appendChild(stepperDiv);
262
198
 
263
- if (sessionStorage.getItem('pdfjsBreakPoints')) {
264
- breakPoints = JSON.parse(sessionStorage.getItem('pdfjsBreakPoints'));
199
+ if (sessionStorage.getItem("pdfjsBreakPoints")) {
200
+ breakPoints = JSON.parse(sessionStorage.getItem("pdfjsBreakPoints"));
265
201
  }
266
202
 
267
203
  opMap = Object.create(null);
@@ -271,20 +207,20 @@ var StepperManager = function StepperManagerClosure() {
271
207
  }
272
208
  },
273
209
  cleanup: function cleanup() {
274
- stepperChooser.textContent = '';
275
- stepperDiv.textContent = '';
210
+ stepperChooser.textContent = "";
211
+ stepperDiv.textContent = "";
276
212
  steppers = [];
277
213
  },
278
214
  enabled: false,
279
215
  active: false,
280
216
  create: function create(pageIndex) {
281
- var debug = document.createElement('div');
282
- debug.id = 'stepper' + pageIndex;
283
- debug.setAttribute('hidden', true);
284
- debug.className = 'stepper';
217
+ var debug = document.createElement("div");
218
+ debug.id = "stepper" + pageIndex;
219
+ debug.setAttribute("hidden", true);
220
+ debug.className = "stepper";
285
221
  stepperDiv.appendChild(debug);
286
- var b = document.createElement('option');
287
- b.textContent = 'Page ' + (pageIndex + 1);
222
+ var b = document.createElement("option");
223
+ b.textContent = "Page " + (pageIndex + 1);
288
224
  b.value = pageIndex;
289
225
  stepperChooser.appendChild(b);
290
226
  var initBreakPoints = breakPoints[pageIndex] || [];
@@ -309,9 +245,9 @@ var StepperManager = function StepperManagerClosure() {
309
245
  var stepper = steppers[i];
310
246
 
311
247
  if (stepper.pageIndex === pageIndex) {
312
- stepper.panel.removeAttribute('hidden');
248
+ stepper.panel.removeAttribute("hidden");
313
249
  } else {
314
- stepper.panel.setAttribute('hidden', true);
250
+ stepper.panel.setAttribute("hidden", true);
315
251
  }
316
252
  }
317
253
 
@@ -324,7 +260,7 @@ var StepperManager = function StepperManagerClosure() {
324
260
  },
325
261
  saveBreakPoints: function saveBreakPoints(pageIndex, bps) {
326
262
  breakPoints[pageIndex] = bps;
327
- sessionStorage.setItem('pdfjsBreakPoints', JSON.stringify(breakPoints));
263
+ sessionStorage.setItem("pdfjsBreakPoints", JSON.stringify(breakPoints));
328
264
  }
329
265
  };
330
266
  }();
@@ -341,16 +277,16 @@ var Stepper = function StepperClosure() {
341
277
  }
342
278
 
343
279
  function simplifyArgs(args) {
344
- if (typeof args === 'string') {
280
+ if (typeof args === "string") {
345
281
  var MAX_STRING_LENGTH = 75;
346
- return args.length <= MAX_STRING_LENGTH ? args : args.substring(0, MAX_STRING_LENGTH) + '...';
282
+ return args.length <= MAX_STRING_LENGTH ? args : args.substring(0, MAX_STRING_LENGTH) + "...";
347
283
  }
348
284
 
349
- if (_typeof(args) !== 'object' || args === null) {
285
+ if (typeof args !== "object" || args === null) {
350
286
  return args;
351
287
  }
352
288
 
353
- if ('length' in args) {
289
+ if ("length" in args) {
354
290
  var simpleArgs = [],
355
291
  i,
356
292
  ii;
@@ -361,7 +297,7 @@ var Stepper = function StepperClosure() {
361
297
  }
362
298
 
363
299
  if (i < args.length) {
364
- simpleArgs.push('...');
300
+ simpleArgs.push("...");
365
301
  }
366
302
 
367
303
  return simpleArgs;
@@ -389,16 +325,16 @@ var Stepper = function StepperClosure() {
389
325
  Stepper.prototype = {
390
326
  init: function init(operatorList) {
391
327
  var panel = this.panel;
392
- var content = c('div', 'c=continue, s=step');
393
- var table = c('table');
328
+ var content = c("div", "c=continue, s=step");
329
+ var table = c("table");
394
330
  content.appendChild(table);
395
331
  table.cellSpacing = 0;
396
- var headerRow = c('tr');
332
+ var headerRow = c("tr");
397
333
  table.appendChild(headerRow);
398
- headerRow.appendChild(c('th', 'Break'));
399
- headerRow.appendChild(c('th', 'Idx'));
400
- headerRow.appendChild(c('th', 'fn'));
401
- headerRow.appendChild(c('th', 'args'));
334
+ headerRow.appendChild(c("th", "Break"));
335
+ headerRow.appendChild(c("th", "Idx"));
336
+ headerRow.appendChild(c("th", "fn"));
337
+ headerRow.appendChild(c("th", "args"));
402
338
  panel.appendChild(content);
403
339
  this.table = table;
404
340
  this.updateOperatorList(operatorList);
@@ -428,26 +364,26 @@ var Stepper = function StepperClosure() {
428
364
  var operatorsToDisplay = Math.min(MAX_OPERATORS_COUNT, operatorList.fnArray.length);
429
365
 
430
366
  for (var i = this.operatorListIdx; i < operatorsToDisplay; i++) {
431
- var line = c('tr');
432
- line.className = 'line';
367
+ var line = c("tr");
368
+ line.className = "line";
433
369
  line.dataset.idx = i;
434
370
  chunk.appendChild(line);
435
371
  var checked = this.breakPoints.includes(i);
436
372
  var args = operatorList.argsArray[i] || [];
437
- var breakCell = c('td');
438
- var cbox = c('input');
439
- cbox.type = 'checkbox';
440
- cbox.className = 'points';
373
+ var breakCell = c("td");
374
+ var cbox = c("input");
375
+ cbox.type = "checkbox";
376
+ cbox.className = "points";
441
377
  cbox.checked = checked;
442
378
  cbox.dataset.idx = i;
443
379
  cbox.onclick = cboxOnClick;
444
380
  breakCell.appendChild(cbox);
445
381
  line.appendChild(breakCell);
446
- line.appendChild(c('td', i.toString()));
382
+ line.appendChild(c("td", i.toString()));
447
383
  var fn = opMap[operatorList.fnArray[i]];
448
384
  var decArgs = args;
449
385
 
450
- if (fn === 'showText') {
386
+ if (fn === "showText") {
451
387
  var glyphs = args[0];
452
388
  var newArgs = [];
453
389
  var str = [];
@@ -455,11 +391,11 @@ var Stepper = function StepperClosure() {
455
391
  for (var j = 0; j < glyphs.length; j++) {
456
392
  var glyph = glyphs[j];
457
393
 
458
- if (_typeof(glyph) === 'object' && glyph !== null) {
394
+ if (typeof glyph === "object" && glyph !== null) {
459
395
  str.push(glyph.fontChar);
460
396
  } else {
461
397
  if (str.length > 0) {
462
- newArgs.push(str.join(''));
398
+ newArgs.push(str.join(""));
463
399
  str = [];
464
400
  }
465
401
 
@@ -468,19 +404,19 @@ var Stepper = function StepperClosure() {
468
404
  }
469
405
 
470
406
  if (str.length > 0) {
471
- newArgs.push(str.join(''));
407
+ newArgs.push(str.join(""));
472
408
  }
473
409
 
474
410
  decArgs = [newArgs];
475
411
  }
476
412
 
477
- line.appendChild(c('td', fn));
478
- line.appendChild(c('td', JSON.stringify(simplifyArgs(decArgs))));
413
+ line.appendChild(c("td", fn));
414
+ line.appendChild(c("td", JSON.stringify(simplifyArgs(decArgs))));
479
415
  }
480
416
 
481
417
  if (operatorsToDisplay < operatorList.fnArray.length) {
482
- line = c('tr');
483
- var lastCell = c('td', '...');
418
+ line = c("tr");
419
+ var lastCell = c("td", "...");
484
420
  lastCell.colspan = 4;
485
421
  chunk.appendChild(lastCell);
486
422
  }
@@ -507,17 +443,17 @@ var Stepper = function StepperClosure() {
507
443
  var dom = document;
508
444
  self.currentIdx = idx;
509
445
 
510
- var listener = function listener(e) {
446
+ var listener = function (e) {
511
447
  switch (e.keyCode) {
512
448
  case 83:
513
- dom.removeEventListener('keydown', listener);
449
+ dom.removeEventListener("keydown", listener);
514
450
  self.nextBreakPoint = self.currentIdx + 1;
515
451
  self.goTo(-1);
516
452
  callback();
517
453
  break;
518
454
 
519
455
  case 67:
520
- dom.removeEventListener('keydown', listener);
456
+ dom.removeEventListener("keydown", listener);
521
457
  var breakPoint = self.getNextBreakPoint();
522
458
  self.nextBreakPoint = breakPoint;
523
459
  self.goTo(-1);
@@ -526,17 +462,17 @@ var Stepper = function StepperClosure() {
526
462
  }
527
463
  };
528
464
 
529
- dom.addEventListener('keydown', listener);
465
+ dom.addEventListener("keydown", listener);
530
466
  self.goTo(idx);
531
467
  },
532
468
  goTo: function goTo(idx) {
533
- var allRows = this.panel.getElementsByClassName('line');
469
+ var allRows = this.panel.getElementsByClassName("line");
534
470
 
535
471
  for (var x = 0, xx = allRows.length; x < xx; ++x) {
536
472
  var row = allRows[x];
537
473
 
538
474
  if ((row.dataset.idx | 0) === idx) {
539
- row.style.backgroundColor = 'rgb(251,250,207)';
475
+ row.style.backgroundColor = "rgb(251,250,207)";
540
476
  row.scrollIntoView();
541
477
  } else {
542
478
  row.style.backgroundColor = null;
@@ -567,16 +503,17 @@ var Stats = function Stats() {
567
503
  }
568
504
 
569
505
  return {
570
- id: 'Stats',
571
- name: 'Stats',
506
+ id: "Stats",
507
+ name: "Stats",
572
508
  panel: null,
573
509
  manager: null,
574
- init: function init(pdfjsLib) {
575
- this.panel.setAttribute('style', 'padding: 5px;');
576
- },
510
+
511
+ init(pdfjsLib) {},
512
+
577
513
  enabled: false,
578
514
  active: false,
579
- add: function add(pageNumber, stat) {
515
+
516
+ add(pageNumber, stat) {
580
517
  if (!stat) {
581
518
  return;
582
519
  }
@@ -584,22 +521,22 @@ var Stats = function Stats() {
584
521
  var statsIndex = getStatIndex(pageNumber);
585
522
 
586
523
  if (statsIndex !== false) {
587
- var b = stats[statsIndex];
524
+ const b = stats[statsIndex];
588
525
  this.panel.removeChild(b.div);
589
526
  stats.splice(statsIndex, 1);
590
527
  }
591
528
 
592
- var wrapper = document.createElement('div');
593
- wrapper.className = 'stats';
594
- var title = document.createElement('div');
595
- title.className = 'title';
596
- title.textContent = 'Page: ' + pageNumber;
597
- var statsDiv = document.createElement('div');
529
+ var wrapper = document.createElement("div");
530
+ wrapper.className = "stats";
531
+ var title = document.createElement("div");
532
+ title.className = "title";
533
+ title.textContent = "Page: " + pageNumber;
534
+ var statsDiv = document.createElement("div");
598
535
  statsDiv.textContent = stat.toString();
599
536
  wrapper.appendChild(title);
600
537
  wrapper.appendChild(statsDiv);
601
538
  stats.push({
602
- pageNumber: pageNumber,
539
+ pageNumber,
603
540
  div: wrapper
604
541
  });
605
542
  stats.sort(function (a, b) {
@@ -611,10 +548,12 @@ var Stats = function Stats() {
611
548
  this.panel.appendChild(stats[i].div);
612
549
  }
613
550
  },
614
- cleanup: function cleanup() {
551
+
552
+ cleanup() {
615
553
  stats = [];
616
554
  clear(this.panel);
617
555
  }
556
+
618
557
  };
619
558
  }();
620
559
 
@@ -624,11 +563,12 @@ window.PDFBug = function PDFBugClosure() {
624
563
  var activePanel = null;
625
564
  return {
626
565
  tools: [FontInspector, StepperManager, Stats],
627
- enable: function enable(ids) {
566
+
567
+ enable(ids) {
628
568
  var all = false,
629
569
  tools = this.tools;
630
570
 
631
- if (ids.length === 1 && ids[0] === 'all') {
571
+ if (ids.length === 1 && ids[0] === "all") {
632
572
  all = true;
633
573
  }
634
574
 
@@ -650,26 +590,27 @@ window.PDFBug = function PDFBugClosure() {
650
590
  });
651
591
  }
652
592
  },
653
- init: function init(pdfjsLib, container) {
654
- var ui = document.createElement('div');
655
- ui.id = 'PDFBug';
656
- var controls = document.createElement('div');
657
- controls.setAttribute('class', 'controls');
593
+
594
+ init(pdfjsLib, container) {
595
+ var ui = document.createElement("div");
596
+ ui.id = "PDFBug";
597
+ var controls = document.createElement("div");
598
+ controls.setAttribute("class", "controls");
658
599
  ui.appendChild(controls);
659
- var panels = document.createElement('div');
660
- panels.setAttribute('class', 'panels');
600
+ var panels = document.createElement("div");
601
+ panels.setAttribute("class", "panels");
661
602
  ui.appendChild(panels);
662
603
  container.appendChild(ui);
663
- container.style.right = panelWidth + 'px';
604
+ container.style.right = panelWidth + "px";
664
605
  var tools = this.tools;
665
606
  var self = this;
666
607
 
667
608
  for (var i = 0; i < tools.length; ++i) {
668
609
  var tool = tools[i];
669
- var panel = document.createElement('div');
670
- var panelButton = document.createElement('button');
610
+ var panel = document.createElement("div");
611
+ var panelButton = document.createElement("button");
671
612
  panelButton.textContent = tool.name;
672
- panelButton.addEventListener('click', function (selected) {
613
+ panelButton.addEventListener("click", function (selected) {
673
614
  return function (event) {
674
615
  event.preventDefault();
675
616
  self.selectPanel(selected);
@@ -683,7 +624,7 @@ window.PDFBug = function PDFBugClosure() {
683
624
  if (tool.enabled) {
684
625
  tool.init(pdfjsLib);
685
626
  } else {
686
- panel.textContent = tool.name + ' is disabled. To enable add ' + ' "' + tool.id + '" to the pdfBug parameter ' + 'and refresh (separate multiple by commas).';
627
+ panel.textContent = tool.name + " is disabled. To enable add " + ' "' + tool.id + '" to the pdfBug parameter ' + "and refresh (separate multiple by commas).";
687
628
  }
688
629
 
689
630
  buttons.push(panelButton);
@@ -691,15 +632,17 @@ window.PDFBug = function PDFBugClosure() {
691
632
 
692
633
  this.selectPanel(0);
693
634
  },
694
- cleanup: function cleanup() {
635
+
636
+ cleanup() {
695
637
  for (var i = 0, ii = this.tools.length; i < ii; i++) {
696
638
  if (this.tools[i].enabled) {
697
639
  this.tools[i].cleanup();
698
640
  }
699
641
  }
700
642
  },
701
- selectPanel: function selectPanel(index) {
702
- if (typeof index !== 'number') {
643
+
644
+ selectPanel(index) {
645
+ if (typeof index !== "number") {
703
646
  index = this.tools.indexOf(index);
704
647
  }
705
648
 
@@ -712,15 +655,16 @@ window.PDFBug = function PDFBugClosure() {
712
655
 
713
656
  for (var j = 0; j < tools.length; ++j) {
714
657
  if (j === index) {
715
- buttons[j].setAttribute('class', 'active');
658
+ buttons[j].setAttribute("class", "active");
716
659
  tools[j].active = true;
717
- tools[j].panel.removeAttribute('hidden');
660
+ tools[j].panel.removeAttribute("hidden");
718
661
  } else {
719
- buttons[j].setAttribute('class', '');
662
+ buttons[j].setAttribute("class", "");
720
663
  tools[j].active = false;
721
- tools[j].panel.setAttribute('hidden', 'true');
664
+ tools[j].panel.setAttribute("hidden", "true");
722
665
  }
723
666
  }
724
667
  }
668
+
725
669
  };
726
670
  }();