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.
@@ -26,54 +26,28 @@ Object.defineProperty(exports, "__esModule", {
26
26
  });
27
27
  exports.ChromeCom = void 0;
28
28
 
29
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
29
+ var _app = require("./app.js");
30
30
 
31
- var _app = require("./app");
31
+ var _app_options = require("./app_options.js");
32
32
 
33
- var _app_options = require("./app_options");
33
+ var _preferences = require("./preferences.js");
34
34
 
35
- var _preferences = require("./preferences");
35
+ var _download_manager = require("./download_manager.js");
36
36
 
37
- var _download_manager = require("./download_manager");
38
-
39
- var _genericl10n = require("./genericl10n");
40
-
41
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
42
-
43
- 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); }
44
-
45
- function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
46
-
47
- function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
48
-
49
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
50
-
51
- 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); } }
52
-
53
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
54
-
55
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
56
-
57
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
58
-
59
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
60
-
61
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
62
-
63
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
37
+ var _genericl10n = require("./genericl10n.js");
64
38
 
65
39
  {
66
- throw new Error('Module "pdfjs-web/chromecom" shall not be used outside ' + 'CHROME build.');
40
+ throw new Error('Module "pdfjs-web/chromecom" shall not be used outside CHROME build.');
67
41
  }
68
- var ChromeCom = {
69
- request: function request(action, data, callback) {
70
- var message = {
71
- action: action,
72
- data: data
42
+ const ChromeCom = {
43
+ request(action, data, callback) {
44
+ const message = {
45
+ action,
46
+ data
73
47
  };
74
48
 
75
49
  if (!chrome.runtime) {
76
- console.error('chrome.runtime is undefined.');
50
+ console.error("chrome.runtime is undefined.");
77
51
 
78
52
  if (callback) {
79
53
  callback();
@@ -84,8 +58,9 @@ var ChromeCom = {
84
58
  chrome.runtime.sendMessage(message);
85
59
  }
86
60
  },
87
- resolvePDFFile: function resolvePDFFile(file, overlayManager, callback) {
88
- file = file.replace(/^drive:/i, 'filesystem:' + location.origin + '/external/');
61
+
62
+ resolvePDFFile(file, overlayManager, callback) {
63
+ file = file.replace(/^drive:/i, "filesystem:" + location.origin + "/external/");
89
64
 
90
65
  if (/^https?:/.test(file)) {
91
66
  setReferer(file, function () {
@@ -97,7 +72,7 @@ var ChromeCom = {
97
72
  if (/^file?:/.test(file)) {
98
73
  getEmbedderOrigin(function (origin) {
99
74
  if (origin && !/^file:|^chrome-extension:/.test(origin)) {
100
- _app.PDFViewerApplication.error('Blocked ' + origin + ' from loading ' + file + '. Refused to load a local file in a non-local page ' + 'for security reasons.');
75
+ _app.PDFViewerApplication.error("Blocked " + origin + " from loading " + file + ". Refused to load a local file in a non-local page " + "for security reasons.");
101
76
 
102
77
  return;
103
78
  }
@@ -115,13 +90,14 @@ var ChromeCom = {
115
90
 
116
91
  callback(file);
117
92
  }
93
+
118
94
  };
119
95
  exports.ChromeCom = ChromeCom;
120
96
 
121
97
  function getEmbedderOrigin(callback) {
122
- var origin = window === top ? location.origin : location.ancestorOrigins[0];
98
+ const origin = window === top ? location.origin : location.ancestorOrigins[0];
123
99
 
124
- if (origin === 'null') {
100
+ if (origin === "null") {
125
101
  getParentOrigin(callback);
126
102
  } else {
127
103
  callback(origin);
@@ -129,11 +105,11 @@ function getEmbedderOrigin(callback) {
129
105
  }
130
106
 
131
107
  function getParentOrigin(callback) {
132
- ChromeCom.request('getParentOrigin', null, callback);
108
+ ChromeCom.request("getParentOrigin", null, callback);
133
109
  }
134
110
 
135
111
  function isAllowedFileSchemeAccess(callback) {
136
- ChromeCom.request('isAllowedFileSchemeAccess', null, callback);
112
+ ChromeCom.request("isAllowedFileSchemeAccess", null, callback);
137
113
  }
138
114
 
139
115
  function isRuntimeAvailable() {
@@ -152,140 +128,140 @@ function reloadIfRuntimeIsUnavailable() {
152
128
  }
153
129
  }
154
130
 
155
- var chromeFileAccessOverlayPromise;
131
+ let chromeFileAccessOverlayPromise;
156
132
 
157
133
  function requestAccessToLocalFile(fileUrl, overlayManager, callback) {
158
- var onCloseOverlay = null;
134
+ let onCloseOverlay = null;
159
135
 
160
136
  if (top !== window) {
161
- window.addEventListener('focus', reloadIfRuntimeIsUnavailable);
137
+ window.addEventListener("focus", reloadIfRuntimeIsUnavailable);
162
138
 
163
- onCloseOverlay = function onCloseOverlay() {
164
- window.removeEventListener('focus', reloadIfRuntimeIsUnavailable);
139
+ onCloseOverlay = function () {
140
+ window.removeEventListener("focus", reloadIfRuntimeIsUnavailable);
165
141
  reloadIfRuntimeIsUnavailable();
166
- overlayManager.close('chromeFileAccessOverlay');
142
+ overlayManager.close("chromeFileAccessOverlay");
167
143
  };
168
144
  }
169
145
 
170
146
  if (!chromeFileAccessOverlayPromise) {
171
- chromeFileAccessOverlayPromise = overlayManager.register('chromeFileAccessOverlay', document.getElementById('chromeFileAccessOverlay'), onCloseOverlay, true);
147
+ chromeFileAccessOverlayPromise = overlayManager.register("chromeFileAccessOverlay", document.getElementById("chromeFileAccessOverlay"), onCloseOverlay, true);
172
148
  }
173
149
 
174
150
  chromeFileAccessOverlayPromise.then(function () {
175
- var iconPath = chrome.runtime.getManifest().icons[48];
176
- document.getElementById('chrome-pdfjs-logo-bg').style.backgroundImage = 'url(' + chrome.runtime.getURL(iconPath) + ')';
177
- var i18nFileAccessLabel = {
178
- "am": "\u1208\u134B\u12ED\u120D \u12E9\u12A0\u122D\u12A4\u120D\u12CE\u127D \u1218\u12F3\u1228\u123B \u134D\u1240\u12F5",
179
- "ar": "\u200F\u0627\u0644\u0633\u0645\u0627\u062D \u0628\u0627\u0644\u062F\u062E\u0648\u0644 \u0625\u0644\u0649 \u0639\u0646\u0627\u0648\u064A\u0646 URL \u0644\u0644\u0645\u0644\u0641\u0627\u062A",
180
- "bg": "\u0414\u0430 \u0441\u0435 \u0440\u0430\u0437\u0440\u0435\u0448\u0438 \u0434\u043E\u0441\u0442\u044A\u043F \u0434\u043E URL \u0430\u0434\u0440\u0435\u0441\u0438\u0442\u0435 \u043D\u0430 \u0444\u0430\u0439\u043B\u043E\u0432\u0435\u0442\u0435",
181
- "bn": "\u09AB\u09BE\u0987\u09B2 URL\u0997\u09C1\u09B2\u09BF\u09A4\u09C7 \u0985\u09CD\u09AF\u09BE\u0995\u09CD\u09B8\u09C7\u09B8 \u09AE\u099E\u09CD\u099C\u09C1\u09B0 \u0995\u09B0\u09C1\u09A8",
182
- "ca": "Permet l'acc\xE9s als URL de fitxer",
183
- "cs": "Umo\u017Enit p\u0159\xEDstup k adres\xE1m URL soubor\u016F",
184
- "da": "Tillad adgang til webadresser p\xE5 filer",
151
+ const iconPath = chrome.runtime.getManifest().icons[48];
152
+ document.getElementById("chrome-pdfjs-logo-bg").style.backgroundImage = "url(" + chrome.runtime.getURL(iconPath) + ")";
153
+ const i18nFileAccessLabel = {
154
+ "am": "\u1208\u134b\u12ed\u120d \u12e9\u12a0\u122d\u12a4\u120d\u12ce\u127d \u1218\u12f3\u1228\u123b \u134d\u1240\u12f5",
155
+ "ar": "\u200f\u0627\u0644\u0633\u0645\u0627\u062d \u0628\u0627\u0644\u062f\u062e\u0648\u0644 \u0625\u0644\u0649 \u0639\u0646\u0627\u0648\u064a\u0646 URL \u0644\u0644\u0645\u0644\u0641\u0627\u062a",
156
+ "bg": "\u0414\u0430 \u0441\u0435 \u0440\u0430\u0437\u0440\u0435\u0448\u0438 \u0434\u043e\u0441\u0442\u044a\u043f \u0434\u043e URL \u0430\u0434\u0440\u0435\u0441\u0438\u0442\u0435 \u043d\u0430 \u0444\u0430\u0439\u043b\u043e\u0432\u0435\u0442\u0435",
157
+ "bn": "\u09ab\u09be\u0987\u09b2 URL\u0997\u09c1\u09b2\u09bf\u09a4\u09c7 \u0985\u09cd\u09af\u09be\u0995\u09cd\u09b8\u09c7\u09b8 \u09ae\u099e\u09cd\u099c\u09c1\u09b0 \u0995\u09b0\u09c1\u09a8",
158
+ "ca": "Permet l'acc\u00e9s als URL de fitxer",
159
+ "cs": "Umo\u017enit p\u0159\u00edstup k adres\u00e1m URL soubor\u016f",
160
+ "da": "Tillad adgang til webadresser p\u00e5 filer",
185
161
  "de": "Zugriff auf Datei-URLs zulassen",
186
- "el": "\u039D\u03B1 \u03B5\u03C0\u03B9\u03C4\u03C1\u03AD\u03C0\u03B5\u03C4\u03B1\u03B9 \u03B7 \u03C0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7 \u03C3\u03B5 \u03B4\u03B9\u03B5\u03C5\u03B8\u03CD\u03BD\u03C3\u03B5\u03B9\u03C2 URL \u03B1\u03C1\u03C7\u03B5\u03AF\u03C9\u03BD",
162
+ "el": "\u039d\u03b1 \u03b5\u03c0\u03b9\u03c4\u03c1\u03ad\u03c0\u03b5\u03c4\u03b1\u03b9 \u03b7 \u03c0\u03c1\u03cc\u03c3\u03b2\u03b1\u03c3\u03b7 \u03c3\u03b5 \u03b4\u03b9\u03b5\u03c5\u03b8\u03cd\u03bd\u03c3\u03b5\u03b9\u03c2 URL \u03b1\u03c1\u03c7\u03b5\u03af\u03c9\u03bd",
187
163
  "en-GB": "Allow access to file URLs",
188
164
  "es": "Permitir acceso a URL de archivo",
189
165
  "es-419": "Permitir el acceso a las URL del archivo",
190
- "et": "Luba juurdep\xE4\xE4s failide URL-idele",
191
- "fa": "\u200F\u0627\u062C\u0627\u0632\u0647\u0654 \u062F\u0633\u062A\u0631\u0633\u06CC \u0628\u0647 URL \u0647\u0627\u06CC \u0641\u0627\u06CC\u0644",
192
- "fi": "Salli tiedostojen URL-osoitteiden k\xE4ytt\xF6",
166
+ "et": "Luba juurdep\u00e4\u00e4s failide URL-idele",
167
+ "fa": "\u200f\u0627\u062c\u0627\u0632\u0647\u0654 \u062f\u0633\u062a\u0631\u0633\u06cc \u0628\u0647 URL \u0647\u0627\u06cc \u0641\u0627\u06cc\u0644",
168
+ "fi": "Salli tiedostojen URL-osoitteiden k\u00e4ytt\u00f6",
193
169
  "fil": "Payagan ang access na mag-file ng mga URL",
194
- "fr": "Autoriser l'acc\xE8s aux URL de fichier",
195
- "gu": "URL \u0AAB\u0ABE\u0A87\u0AB2 \u0A95\u0AB0\u0AB5\u0ABE \u0A8D\u0A95\u0ACD\u0AB8\u0AC7\u0AB8\u0AA8\u0AC0 \u0AAE\u0A82\u0A9C\u0AC2\u0AB0\u0AC0 \u0A86\u0AAA\u0ACB",
196
- "hi": "\u092B\u093C\u093E\u0907\u0932 URL \u0924\u0915 \u092A\u0939\u0941\u0902\u091A\u0928\u0947 \u0915\u0940 \u0905\u0928\u0941\u092E\u0924\u093F \u0926\u0947\u0902",
170
+ "fr": "Autoriser l'acc\u00e8s aux URL de fichier",
171
+ "gu": "URL \u0aab\u0abe\u0a87\u0ab2 \u0a95\u0ab0\u0ab5\u0abe \u0a8d\u0a95\u0acd\u0ab8\u0ac7\u0ab8\u0aa8\u0ac0 \u0aae\u0a82\u0a9c\u0ac2\u0ab0\u0ac0 \u0a86\u0aaa\u0acb",
172
+ "hi": "\u092b\u093c\u093e\u0907\u0932 URL \u0924\u0915 \u092a\u0939\u0941\u0902\u091a\u0928\u0947 \u0915\u0940 \u0905\u0928\u0941\u092e\u0924\u093f \u0926\u0947\u0902",
197
173
  "hr": "Dozvoli pristup URL-ovima datoteke",
198
- "hu": "F\xE1jl URL-ekhez val\xF3 hozz\xE1f\xE9r\xE9s enged\xE9lyez\xE9se",
174
+ "hu": "F\u00e1jl URL-ekhez val\u00f3 hozz\u00e1f\u00e9r\u00e9s enged\u00e9lyez\u00e9se",
199
175
  "id": "Izinkan akses ke URL file",
200
176
  "it": "Consenti l'accesso agli URL dei file",
201
- "iw": "\u05D0\u05E4\u05E9\u05E8 \u05D2\u05D9\u05E9\u05D4 \u05DC\u05DB\u05EA\u05D5\u05D1\u05D5\u05EA \u05D0\u05EA\u05E8\u05D9\u05DD \u05E9\u05DC \u05E7\u05D1\u05E6\u05D9\u05DD",
202
- "ja": "\u30D5\u30A1\u30A4\u30EB\u306E URL \u3078\u306E\u30A2\u30AF\u30BB\u30B9\u3092\u8A31\u53EF\u3059\u308B",
203
- "kn": "URL \u0C97\u0CB3\u0CA8\u0CCD\u0CA8\u0CC1 \u0CAB\u0CC8\u0CB2\u0CCD\u200C\u0C97\u0CB3\u0CBF\u0C97\u0CC6 \u0CAA\u0CCD\u0CB0\u0CB5\u0CC7\u0CB6\u0CBF\u0CB8\u0CB2\u0CC1 \u0C85\u0CA8\u0CC1\u0CAE\u0CA4\u0CBF\u0CB8\u0CBF",
204
- "ko": "\uD30C\uC77C URL\uC5D0 \uB300\uD55C \uC561\uC138\uC2A4 \uD5C8\uC6A9",
177
+ "iw": "\u05d0\u05e4\u05e9\u05e8 \u05d2\u05d9\u05e9\u05d4 \u05dc\u05db\u05ea\u05d5\u05d1\u05d5\u05ea \u05d0\u05ea\u05e8\u05d9\u05dd \u05e9\u05dc \u05e7\u05d1\u05e6\u05d9\u05dd",
178
+ "ja": "\u30d5\u30a1\u30a4\u30eb\u306e URL \u3078\u306e\u30a2\u30af\u30bb\u30b9\u3092\u8a31\u53ef\u3059\u308b",
179
+ "kn": "URL \u0c97\u0cb3\u0ca8\u0ccd\u0ca8\u0cc1 \u0cab\u0cc8\u0cb2\u0ccd\u200c\u0c97\u0cb3\u0cbf\u0c97\u0cc6 \u0caa\u0ccd\u0cb0\u0cb5\u0cc7\u0cb6\u0cbf\u0cb8\u0cb2\u0cc1 \u0c85\u0ca8\u0cc1\u0cae\u0ca4\u0cbf\u0cb8\u0cbf",
180
+ "ko": "\ud30c\uc77c URL\uc5d0 \ub300\ud55c \uc561\uc138\uc2a4 \ud5c8\uc6a9",
205
181
  "lt": "Leisti pasiekti failo URL",
206
- "lv": "At\u013Caut piek\u013Cuvi faila vietr\u0101\u017Eiem URL",
207
- "ml": "URL \u0D15\u0D33\u0D4D\u200D\u200C \u0D2B\u0D2F\u0D32\u0D4D\u200D\u200C \u0D1A\u0D46\u0D2F\u0D4D\u0D2F\u0D41\u0D28\u0D4D\u0D28\u0D24\u0D3F\u0D28\u0D4D \u0D06\u0D15\u0D4D\u200D\u0D38\u0D38\u0D4D\u0D38\u0D4D \u0D05\u0D28\u0D41\u0D35\u0D26\u0D3F\u0D15\u0D4D\u0D15\u0D41\u0D15",
208
- "mr": "\u092B\u093E\u0907\u0932 URL \u092E\u0927\u094D\u092F\u0947 \u092A\u094D\u0930\u0935\u0947\u0936\u093E\u0938 \u0905\u0928\u0941\u092E\u0924\u0940 \u0926\u094D\u092F\u093E",
182
+ "lv": "At\u013caut piek\u013cuvi faila vietr\u0101\u017eiem URL",
183
+ "ml": "URL \u0d15\u0d33\u0d4d\u200d\u200c \u0d2b\u0d2f\u0d32\u0d4d\u200d\u200c \u0d1a\u0d46\u0d2f\u0d4d\u0d2f\u0d41\u0d28\u0d4d\u0d28\u0d24\u0d3f\u0d28\u0d4d \u0d06\u0d15\u0d4d\u200d\u0d38\u0d38\u0d4d\u0d38\u0d4d \u0d05\u0d28\u0d41\u0d35\u0d26\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15",
184
+ "mr": "\u092b\u093e\u0907\u0932 URL \u092e\u0927\u094d\u092f\u0947 \u092a\u094d\u0930\u0935\u0947\u0936\u093e\u0938 \u0905\u0928\u0941\u092e\u0924\u0940 \u0926\u094d\u092f\u093e",
209
185
  "ms": "Membenarkan akses ke URL fail",
210
186
  "nl": "Toegang tot bestand-URL's toestaan",
211
187
  "no": "Tillat tilgang til filnettadresser",
212
- "pl": "Zezwalaj na dost\u0119p do adres\xF3w URL plik\xF3w",
188
+ "pl": "Zezwalaj na dost\u0119p do adres\u00f3w URL plik\u00f3w",
213
189
  "pt-BR": "Permitir acesso aos URLs do arquivo",
214
190
  "pt-PT": "Permitir acesso a URLs de ficheiro",
215
191
  "ro": "Permite accesul la adresele URL de fi\u0219iere",
216
- "ru": "\u0420\u0430\u0437\u0440\u0435\u0448\u0438\u0442\u044C \u043E\u0442\u043A\u0440\u044B\u0432\u0430\u0442\u044C \u0444\u0430\u0439\u043B\u044B \u043F\u043E \u0441\u0441\u044B\u043B\u043A\u0430\u043C",
217
- "sk": "Povoli\u0165 pr\xEDstup k webov\xFDm adres\xE1m s\xFAboru",
192
+ "ru": "\u0420\u0430\u0437\u0440\u0435\u0448\u0438\u0442\u044c \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0442\u044c \u0444\u0430\u0439\u043b\u044b \u043f\u043e \u0441\u0441\u044b\u043b\u043a\u0430\u043c",
193
+ "sk": "Povoli\u0165 pr\u00edstup k webov\u00fdm adres\u00e1m s\u00faboru",
218
194
  "sl": "Dovoli dostop do URL-jev datoteke",
219
- "sr": "\u0414\u043E\u0437\u0432\u043E\u043B\u0438 \u043F\u0440\u0438\u0441\u0442\u0443\u043F URL \u0430\u0434\u0440\u0435\u0441\u0430\u043C\u0430 \u0434\u0430\u0442\u043E\u0442\u0435\u043A\u0430",
220
- "sv": "Till\xE5t \xE5tkomst till webbadresser i filen",
195
+ "sr": "\u0414\u043e\u0437\u0432\u043e\u043b\u0438 \u043f\u0440\u0438\u0441\u0442\u0443\u043f URL \u0430\u0434\u0440\u0435\u0441\u0430\u043c\u0430 \u0434\u0430\u0442\u043e\u0442\u0435\u043a\u0430",
196
+ "sv": "Till\u00e5t \u00e5tkomst till webbadresser i filen",
221
197
  "sw": "Ruhusu kufikia URL za faili",
222
- "ta": "\u0B95\u0BCB\u0BAA\u0BCD\u0BAA\u0BC1 URL\u0B95\u0BB3\u0BC1\u0B95\u0BCD\u0B95\u0BC1 \u0B85\u0BA3\u0BC1\u0B95\u0BB2\u0BC8 \u0B85\u0BA9\u0BC1\u0BAE\u0BA4\u0BBF",
223
- "te": "\u0C2B\u0C48\u0C32\u0C4D URL\u0C32\u0C15\u0C41 \u0C2A\u0C4D\u0C30\u0C3E\u0C2A\u0C4D\u0C24\u0C3F\u0C28\u0C3F \u0C05\u0C28\u0C41\u0C2E\u0C24\u0C3F\u0C02\u0C1A\u0C41",
224
- "th": "\u0E2D\u0E19\u0E38\u0E0D\u0E32\u0E15\u0E43\u0E2B\u0E49\u0E40\u0E02\u0E49\u0E32\u0E16\u0E36\u0E07\u0E44\u0E1F\u0E25\u0E4C URL",
225
- "tr": "Dosya URL'lerine eri\u015Fime izin ver",
226
- "uk": "\u041D\u0430\u0434\u0430\u0432\u0430\u0442\u0438 \u0434\u043E\u0441\u0442\u0443\u043F \u0434\u043E URL-\u0430\u0434\u0440\u0435\u0441 \u0444\u0430\u0439\u043B\u0443",
227
- "vi": "Cho ph\xE9p truy c\u1EADp v\xE0o c\xE1c URL c\u1EE7a t\u1EC7p",
228
- "zh-CN": "\u5141\u8BB8\u8BBF\u95EE\u6587\u4EF6\u7F51\u5740",
229
- "zh-TW": "\u5141\u8A31\u5B58\u53D6\u6A94\u6848\u7DB2\u5740"
198
+ "ta": "\u0b95\u0bcb\u0baa\u0bcd\u0baa\u0bc1 URL\u0b95\u0bb3\u0bc1\u0b95\u0bcd\u0b95\u0bc1 \u0b85\u0ba3\u0bc1\u0b95\u0bb2\u0bc8 \u0b85\u0ba9\u0bc1\u0bae\u0ba4\u0bbf",
199
+ "te": "\u0c2b\u0c48\u0c32\u0c4d URL\u0c32\u0c15\u0c41 \u0c2a\u0c4d\u0c30\u0c3e\u0c2a\u0c4d\u0c24\u0c3f\u0c28\u0c3f \u0c05\u0c28\u0c41\u0c2e\u0c24\u0c3f\u0c02\u0c1a\u0c41",
200
+ "th": "\u0e2d\u0e19\u0e38\u0e0d\u0e32\u0e15\u0e43\u0e2b\u0e49\u0e40\u0e02\u0e49\u0e32\u0e16\u0e36\u0e07\u0e44\u0e1f\u0e25\u0e4c URL",
201
+ "tr": "Dosya URL'lerine eri\u015fime izin ver",
202
+ "uk": "\u041d\u0430\u0434\u0430\u0432\u0430\u0442\u0438 \u0434\u043e\u0441\u0442\u0443\u043f \u0434\u043e URL-\u0430\u0434\u0440\u0435\u0441 \u0444\u0430\u0439\u043b\u0443",
203
+ "vi": "Cho ph\u00e9p truy c\u1eadp v\u00e0o c\u00e1c URL c\u1ee7a t\u1ec7p",
204
+ "zh-CN": "\u5141\u8bb8\u8bbf\u95ee\u6587\u4ef6\u7f51\u5740",
205
+ "zh-TW": "\u5141\u8a31\u5b58\u53d6\u6a94\u6848\u7db2\u5740"
230
206
  }[chrome.i18n.getUILanguage && chrome.i18n.getUILanguage()];
231
207
 
232
208
  if (i18nFileAccessLabel) {
233
- document.getElementById('chrome-file-access-label').textContent = i18nFileAccessLabel;
209
+ document.getElementById("chrome-file-access-label").textContent = i18nFileAccessLabel;
234
210
  }
235
211
 
236
- var link = document.getElementById('chrome-link-to-extensions-page');
237
- link.href = 'chrome://extensions/?id=' + chrome.runtime.id;
212
+ const link = document.getElementById("chrome-link-to-extensions-page");
213
+ link.href = "chrome://extensions/?id=" + chrome.runtime.id;
238
214
 
239
215
  link.onclick = function (e) {
240
216
  e.preventDefault();
241
- ChromeCom.request('openExtensionsPageForFileAccess', {
217
+ ChromeCom.request("openExtensionsPageForFileAccess", {
242
218
  newTab: e.ctrlKey || e.metaKey || e.button === 1 || window !== top
243
219
  });
244
220
  };
245
221
 
246
- document.getElementById('chrome-url-of-local-file').textContent = fileUrl;
222
+ document.getElementById("chrome-url-of-local-file").textContent = fileUrl;
247
223
 
248
- document.getElementById('chrome-file-fallback').onchange = function () {
249
- var file = this.files[0];
224
+ document.getElementById("chrome-file-fallback").onchange = function () {
225
+ const file = this.files[0];
250
226
 
251
227
  if (file) {
252
- var originalFilename = decodeURIComponent(fileUrl.split('/').pop());
253
- var originalUrl = fileUrl;
228
+ const originalFilename = decodeURIComponent(fileUrl.split("/").pop());
229
+ let originalUrl = fileUrl;
254
230
 
255
231
  if (originalFilename !== file.name) {
256
- var msg = 'The selected file does not match the original file.' + '\nOriginal: ' + originalFilename + '\nSelected: ' + file.name + '\nDo you want to open the selected file?';
232
+ const msg = "The selected file does not match the original file." + "\nOriginal: " + originalFilename + "\nSelected: " + file.name + "\nDo you want to open the selected file?";
257
233
 
258
234
  if (!confirm(msg)) {
259
- this.value = '';
235
+ this.value = "";
260
236
  return;
261
237
  }
262
238
 
263
- originalUrl = 'file:///fakepath/to/' + encodeURIComponent(file.name);
239
+ originalUrl = "file:///fakepath/to/" + encodeURIComponent(file.name);
264
240
  }
265
241
 
266
242
  callback(URL.createObjectURL(file), file.size, originalUrl);
267
- overlayManager.close('chromeFileAccessOverlay');
243
+ overlayManager.close("chromeFileAccessOverlay");
268
244
  }
269
245
  };
270
246
 
271
- overlayManager.open('chromeFileAccessOverlay');
247
+ overlayManager.open("chromeFileAccessOverlay");
272
248
  });
273
249
  }
274
250
 
275
251
  if (window === top) {
276
- addEventListener('unload', function () {
252
+ addEventListener("unload", function () {
277
253
  if (!isRuntimeAvailable()) {
278
- localStorage.setItem('unload-' + Date.now() + '-' + document.hidden + '-' + location.href, JSON.stringify(history.state));
254
+ localStorage.setItem("unload-" + Date.now() + "-" + document.hidden + "-" + location.href, JSON.stringify(history.state));
279
255
  }
280
256
  });
281
257
  }
282
258
 
283
- var port;
259
+ let port;
284
260
 
285
261
  function setReferer(url, callback) {
286
262
  if (!port) {
287
263
  port = chrome.runtime.connect({
288
- name: 'chromecom-referrer'
264
+ name: "chromecom-referrer"
289
265
  });
290
266
  }
291
267
 
@@ -298,9 +274,9 @@ function setReferer(url, callback) {
298
274
 
299
275
  function onMessage(referer) {
300
276
  if (referer) {
301
- var state = window.history.state || {};
277
+ const state = window.history.state || {};
302
278
  state.chromecomState = referer;
303
- window.history.replaceState(state, '');
279
+ window.history.replaceState(state, "");
304
280
  }
305
281
 
306
282
  onCompleted();
@@ -318,160 +294,99 @@ function setReferer(url, callback) {
318
294
  }
319
295
  }
320
296
 
321
- var storageArea = chrome.storage.sync || chrome.storage.local;
297
+ const storageArea = chrome.storage.sync || chrome.storage.local;
322
298
 
323
- var ChromePreferences =
324
- /*#__PURE__*/
325
- function (_BasePreferences) {
326
- _inherits(ChromePreferences, _BasePreferences);
299
+ class ChromePreferences extends _preferences.BasePreferences {
300
+ async _writeToStorage(prefObj) {
301
+ return new Promise(resolve => {
302
+ if (prefObj === this.defaults) {
303
+ const keysToRemove = Object.keys(this.defaults);
304
+ storageArea.remove(keysToRemove, function () {
305
+ resolve();
306
+ });
307
+ } else {
308
+ storageArea.set(prefObj, function () {
309
+ resolve();
310
+ });
311
+ }
312
+ });
313
+ }
327
314
 
328
- function ChromePreferences() {
329
- _classCallCheck(this, ChromePreferences);
315
+ async _readFromStorage(prefObj) {
316
+ return new Promise(resolve => {
317
+ const getPreferences = defaultPrefs => {
318
+ if (chrome.runtime.lastError) {
319
+ defaultPrefs = this.defaults;
320
+ }
330
321
 
331
- return _possibleConstructorReturn(this, _getPrototypeOf(ChromePreferences).apply(this, arguments));
332
- }
322
+ storageArea.get(defaultPrefs, function (readPrefs) {
323
+ resolve(readPrefs);
324
+ });
325
+ };
326
+
327
+ if (chrome.storage.managed) {
328
+ const defaultManagedPrefs = Object.assign({
329
+ enableHandToolOnLoad: false,
330
+ disableTextLayer: false,
331
+ enhanceTextSelection: false,
332
+ showPreviousViewOnLoad: true,
333
+ disablePageMode: false
334
+ }, this.defaults);
335
+ chrome.storage.managed.get(defaultManagedPrefs, function (items) {
336
+ items = items || defaultManagedPrefs;
337
+
338
+ if (items.enableHandToolOnLoad && !items.cursorToolOnLoad) {
339
+ items.cursorToolOnLoad = 1;
340
+ }
341
+
342
+ delete items.enableHandToolOnLoad;
333
343
 
334
- _createClass(ChromePreferences, [{
335
- key: "_writeToStorage",
336
- value: function () {
337
- var _writeToStorage2 = _asyncToGenerator(
338
- /*#__PURE__*/
339
- _regenerator["default"].mark(function _callee(prefObj) {
340
- var _this = this;
341
-
342
- return _regenerator["default"].wrap(function _callee$(_context) {
343
- while (1) {
344
- switch (_context.prev = _context.next) {
345
- case 0:
346
- return _context.abrupt("return", new Promise(function (resolve) {
347
- if (prefObj === _this.defaults) {
348
- var keysToRemove = Object.keys(_this.defaults);
349
- storageArea.remove(keysToRemove, function () {
350
- resolve();
351
- });
352
- } else {
353
- storageArea.set(prefObj, function () {
354
- resolve();
355
- });
356
- }
357
- }));
358
-
359
- case 1:
360
- case "end":
361
- return _context.stop();
344
+ if (items.textLayerMode !== 1) {
345
+ if (items.disableTextLayer) {
346
+ items.textLayerMode = 0;
347
+ } else if (items.enhanceTextSelection) {
348
+ items.textLayerMode = 2;
362
349
  }
363
350
  }
364
- }, _callee);
365
- }));
366
351
 
367
- function _writeToStorage(_x) {
368
- return _writeToStorage2.apply(this, arguments);
369
- }
352
+ delete items.disableTextLayer;
353
+ delete items.enhanceTextSelection;
370
354
 
371
- return _writeToStorage;
372
- }()
373
- }, {
374
- key: "_readFromStorage",
375
- value: function () {
376
- var _readFromStorage2 = _asyncToGenerator(
377
- /*#__PURE__*/
378
- _regenerator["default"].mark(function _callee2(prefObj) {
379
- var _this2 = this;
380
-
381
- return _regenerator["default"].wrap(function _callee2$(_context2) {
382
- while (1) {
383
- switch (_context2.prev = _context2.next) {
384
- case 0:
385
- return _context2.abrupt("return", new Promise(function (resolve) {
386
- var getPreferences = function getPreferences(defaultPrefs) {
387
- if (chrome.runtime.lastError) {
388
- defaultPrefs = _this2.defaults;
389
- }
390
-
391
- storageArea.get(defaultPrefs, function (readPrefs) {
392
- resolve(readPrefs);
393
- });
394
- };
395
-
396
- if (chrome.storage.managed) {
397
- var defaultManagedPrefs = Object.assign({
398
- enableHandToolOnLoad: false,
399
- disableTextLayer: false,
400
- enhanceTextSelection: false,
401
- showPreviousViewOnLoad: true,
402
- disablePageMode: false
403
- }, _this2.defaults);
404
- chrome.storage.managed.get(defaultManagedPrefs, function (items) {
405
- items = items || defaultManagedPrefs;
406
-
407
- if (items.enableHandToolOnLoad && !items.cursorToolOnLoad) {
408
- items.cursorToolOnLoad = 1;
409
- }
410
-
411
- delete items.enableHandToolOnLoad;
412
-
413
- if (items.textLayerMode !== 1) {
414
- if (items.disableTextLayer) {
415
- items.textLayerMode = 0;
416
- } else if (items.enhanceTextSelection) {
417
- items.textLayerMode = 2;
418
- }
419
- }
420
-
421
- delete items.disableTextLayer;
422
- delete items.enhanceTextSelection;
423
-
424
- if (!items.showPreviousViewOnLoad && !items.viewOnLoad) {
425
- items.viewOnLoad = 1;
426
- }
427
-
428
- delete items.showPreviousViewOnLoad;
429
- delete items.disablePageMode;
430
- getPreferences(items);
431
- });
432
- } else {
433
- getPreferences(_this2.defaults);
434
- }
435
- }));
436
-
437
- case 1:
438
- case "end":
439
- return _context2.stop();
440
- }
355
+ if (!items.showPreviousViewOnLoad && !items.viewOnLoad) {
356
+ items.viewOnLoad = 1;
441
357
  }
442
- }, _callee2);
443
- }));
444
358
 
445
- function _readFromStorage(_x2) {
446
- return _readFromStorage2.apply(this, arguments);
359
+ delete items.showPreviousViewOnLoad;
360
+ delete items.disablePageMode;
361
+ getPreferences(items);
362
+ });
363
+ } else {
364
+ getPreferences(this.defaults);
447
365
  }
366
+ });
367
+ }
448
368
 
449
- return _readFromStorage;
450
- }()
451
- }]);
452
-
453
- return ChromePreferences;
454
- }(_preferences.BasePreferences);
369
+ }
455
370
 
456
- var ChromeExternalServices = Object.create(_app.DefaultExternalServices);
371
+ class ChromeExternalServices extends _app.DefaultExternalServices {
372
+ static initPassiveLoading(callbacks) {
373
+ ChromeCom.resolvePDFFile(_app_options.AppOptions.get("defaultUrl"), _app.PDFViewerApplication.overlayManager, function (url, length, originalUrl) {
374
+ callbacks.onOpenWithURL(url, length, originalUrl);
375
+ });
376
+ }
457
377
 
458
- ChromeExternalServices.initPassiveLoading = function (callbacks) {
459
- var overlayManager = _app.PDFViewerApplication.overlayManager;
460
- ChromeCom.resolvePDFFile(_app_options.AppOptions.get('defaultUrl'), overlayManager, function (url, length, originalUrl) {
461
- callbacks.onOpenWithURL(url, length, originalUrl);
462
- });
463
- };
378
+ static createDownloadManager(options) {
379
+ return new _download_manager.DownloadManager(options);
380
+ }
464
381
 
465
- ChromeExternalServices.createDownloadManager = function (options) {
466
- return new _download_manager.DownloadManager(options);
467
- };
382
+ static createPreferences() {
383
+ return new ChromePreferences();
384
+ }
468
385
 
469
- ChromeExternalServices.createPreferences = function () {
470
- return new ChromePreferences();
471
- };
386
+ static createL10n(options) {
387
+ return new _genericl10n.GenericL10n(navigator.language);
388
+ }
472
389
 
473
- ChromeExternalServices.createL10n = function (options) {
474
- return new _genericl10n.GenericL10n(navigator.language);
475
- };
390
+ }
476
391
 
477
392
  _app.PDFViewerApplication.externalServices = ChromeExternalServices;