pdfjs-dist 2.0.943 → 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 (192) 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 +8286 -14230
  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 +25500 -26628
  9. package/build/pdf.worker.js.map +1 -1
  10. package/build/pdf.worker.min.js +22 -1
  11. package/es5/build/pdf.js +25473 -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 +57878 -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 +407 -0
  29. package/es5/web/pdf_viewer.js +7757 -0
  30. package/es5/web/pdf_viewer.js.map +1 -0
  31. package/image_decoders/pdf.image_decoders.js +2887 -4094
  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 +855 -778
  36. package/lib/core/arithmetic_decoder.js +325 -311
  37. package/lib/core/bidi.js +117 -50
  38. package/lib/core/ccitt.js +251 -89
  39. package/lib/core/ccitt_stream.js +26 -16
  40. package/lib/core/cff_parser.js +525 -197
  41. package/lib/core/charsets.js +6 -5
  42. package/lib/core/chunked_stream.js +541 -406
  43. package/lib/core/cmap.js +368 -253
  44. package/lib/core/colorspace.js +781 -800
  45. package/lib/core/core_utils.js +152 -0
  46. package/lib/core/crypto.js +609 -422
  47. package/lib/core/document.js +649 -481
  48. package/lib/core/encodings.js +33 -24
  49. package/lib/core/evaluator.js +1471 -736
  50. package/lib/core/font_renderer.js +289 -149
  51. package/lib/core/fonts.js +1067 -413
  52. package/lib/core/function.js +517 -287
  53. package/lib/core/glyphlist.js +4529 -4527
  54. package/lib/core/image.js +232 -114
  55. package/lib/core/image_utils.js +94 -0
  56. package/lib/core/jbig2.js +711 -342
  57. package/lib/core/jbig2_stream.js +31 -19
  58. package/lib/core/jpeg_stream.js +151 -26
  59. package/lib/core/jpg.js +433 -181
  60. package/lib/core/jpx.js +551 -143
  61. package/lib/core/jpx_stream.js +40 -28
  62. package/lib/core/metrics.js +2931 -2931
  63. package/lib/core/murmurhash3.js +104 -97
  64. package/lib/core/obj.js +1561 -1053
  65. package/lib/core/operator_list.js +192 -64
  66. package/lib/core/parser.js +1162 -864
  67. package/lib/core/pattern.js +224 -75
  68. package/lib/core/pdf_manager.js +154 -285
  69. package/lib/core/primitives.js +145 -69
  70. package/lib/core/ps_parser.js +212 -162
  71. package/lib/core/standard_fonts.js +245 -244
  72. package/lib/core/stream.js +353 -81
  73. package/lib/core/type1_parser.js +218 -68
  74. package/lib/core/unicode.js +1682 -1655
  75. package/lib/core/worker.js +233 -302
  76. package/lib/core/worker_stream.js +168 -0
  77. package/lib/display/annotation_layer.js +808 -862
  78. package/lib/display/api.js +1778 -1462
  79. package/lib/display/api_compatibility.js +14 -9
  80. package/lib/display/canvas.js +463 -140
  81. package/lib/display/content_disposition.js +86 -58
  82. package/lib/display/display_utils.js +524 -0
  83. package/lib/display/fetch_stream.js +202 -274
  84. package/lib/display/font_loader.js +311 -333
  85. package/lib/display/metadata.js +98 -88
  86. package/lib/display/network.js +343 -347
  87. package/lib/display/network_utils.js +46 -26
  88. package/lib/display/node_stream.js +326 -404
  89. package/lib/display/pattern_helper.js +168 -69
  90. package/lib/display/svg.js +1296 -885
  91. package/lib/display/text_layer.js +229 -103
  92. package/lib/display/transport_stream.js +290 -250
  93. package/lib/display/webgl.js +116 -83
  94. package/lib/display/worker_options.js +6 -5
  95. package/lib/display/xml_parser.js +358 -337
  96. package/lib/examples/node/domstubs.js +95 -39
  97. package/lib/pdf.js +49 -31
  98. package/lib/pdf.worker.js +7 -5
  99. package/lib/shared/compatibility.js +3 -145
  100. package/lib/shared/is_node.js +8 -7
  101. package/lib/shared/message_handler.js +367 -314
  102. package/lib/shared/util.js +421 -415
  103. package/lib/test/unit/annotation_spec.js +1570 -690
  104. package/lib/test/unit/api_spec.js +855 -493
  105. package/lib/test/unit/bidi_spec.js +12 -12
  106. package/lib/test/unit/cff_parser_spec.js +88 -61
  107. package/lib/test/unit/clitests_helper.js +9 -12
  108. package/lib/test/unit/cmap_spec.js +140 -88
  109. package/lib/test/unit/colorspace_spec.js +204 -152
  110. package/lib/test/unit/core_utils_spec.js +211 -0
  111. package/lib/test/unit/crypto_spec.js +194 -182
  112. package/lib/test/unit/custom_spec.js +50 -64
  113. package/lib/test/unit/display_svg_spec.js +53 -38
  114. package/lib/test/unit/display_utils_spec.js +263 -0
  115. package/lib/test/unit/document_spec.js +17 -22
  116. package/lib/test/unit/encodings_spec.js +15 -57
  117. package/lib/test/unit/evaluator_spec.js +90 -83
  118. package/lib/test/unit/fetch_stream_spec.js +111 -0
  119. package/lib/test/unit/function_spec.js +219 -205
  120. package/lib/test/unit/jasmine-boot.js +68 -39
  121. package/lib/test/unit/message_handler_spec.js +187 -160
  122. package/lib/test/unit/metadata_spec.js +87 -34
  123. package/lib/test/unit/murmurhash3_spec.js +13 -13
  124. package/lib/test/unit/network_spec.js +26 -59
  125. package/lib/test/unit/network_utils_spec.js +187 -121
  126. package/lib/test/unit/node_stream_spec.js +98 -90
  127. package/lib/test/unit/parser_spec.js +173 -131
  128. package/lib/test/unit/pdf_find_controller_spec.js +148 -67
  129. package/lib/test/unit/pdf_find_utils_spec.js +35 -34
  130. package/lib/test/unit/pdf_history_spec.js +45 -33
  131. package/lib/test/unit/primitives_spec.js +161 -126
  132. package/lib/test/unit/stream_spec.js +22 -15
  133. package/lib/test/unit/test_utils.js +149 -98
  134. package/lib/test/unit/testreporter.js +36 -18
  135. package/lib/test/unit/type1_parser_spec.js +46 -44
  136. package/lib/test/unit/ui_utils_spec.js +388 -372
  137. package/lib/test/unit/unicode_spec.js +49 -46
  138. package/lib/test/unit/util_spec.js +144 -248
  139. package/lib/web/annotation_layer_builder.js +75 -95
  140. package/lib/web/app.js +1538 -1147
  141. package/lib/web/app_options.js +116 -104
  142. package/lib/web/base_viewer.js +950 -775
  143. package/lib/web/chromecom.js +217 -225
  144. package/lib/web/debugger.js +236 -148
  145. package/lib/web/download_manager.js +50 -50
  146. package/lib/web/firefox_print_service.js +51 -33
  147. package/lib/web/firefoxcom.js +225 -352
  148. package/lib/web/genericcom.js +30 -93
  149. package/lib/web/genericl10n.js +26 -143
  150. package/lib/web/grab_to_pan.js +57 -33
  151. package/lib/web/interfaces.js +105 -232
  152. package/lib/web/overlay_manager.js +73 -227
  153. package/lib/web/password_prompt.js +44 -62
  154. package/lib/web/pdf_attachment_viewer.js +118 -123
  155. package/lib/web/pdf_cursor_tools.js +89 -93
  156. package/lib/web/pdf_document_properties.js +242 -281
  157. package/lib/web/pdf_find_bar.js +157 -163
  158. package/lib/web/pdf_find_controller.js +598 -454
  159. package/lib/web/pdf_find_utils.js +32 -16
  160. package/lib/web/pdf_history.js +481 -355
  161. package/lib/web/pdf_link_service.js +355 -323
  162. package/lib/web/pdf_outline_viewer.js +167 -152
  163. package/lib/web/pdf_page_view.js +511 -457
  164. package/lib/web/pdf_presentation_mode.js +347 -335
  165. package/lib/web/pdf_print_service.js +133 -103
  166. package/lib/web/pdf_rendering_queue.js +98 -100
  167. package/lib/web/pdf_sidebar.js +323 -299
  168. package/lib/web/pdf_sidebar_resizer.js +107 -108
  169. package/lib/web/pdf_single_page_viewer.js +94 -146
  170. package/lib/web/pdf_thumbnail_view.js +319 -269
  171. package/lib/web/pdf_thumbnail_viewer.js +219 -199
  172. package/lib/web/pdf_viewer.component.js +111 -32
  173. package/lib/web/pdf_viewer.js +61 -101
  174. package/lib/web/preferences.js +87 -272
  175. package/lib/web/secondary_toolbar.js +207 -220
  176. package/lib/web/text_layer_builder.js +322 -322
  177. package/lib/web/toolbar.js +227 -180
  178. package/lib/web/ui_utils.js +476 -421
  179. package/lib/web/view_history.js +59 -208
  180. package/lib/web/viewer_compatibility.js +9 -6
  181. package/package.json +2 -9
  182. package/web/pdf_viewer.css +36 -22
  183. package/web/pdf_viewer.js +4407 -4516
  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 -441
  189. package/lib/shared/streams_polyfill.js +0 -39
  190. package/lib/shared/url_polyfill.js +0 -50
  191. package/lib/test/unit/dom_utils_spec.js +0 -89
  192. package/lib/web/dom_events.js +0 -140
@@ -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,114 +19,51 @@
19
19
  * @licend The above is the entire license notice for the
20
20
  * Javascript code in this page
21
21
  */
22
- 'use strict';
22
+ "use strict";
23
23
 
24
24
  Object.defineProperty(exports, "__esModule", {
25
25
  value: true
26
26
  });
27
- exports.GenericCom = undefined;
27
+ exports.GenericCom = void 0;
28
28
 
29
- var _regenerator = require('babel-runtime/regenerator');
29
+ var _app = require("./app.js");
30
30
 
31
- var _regenerator2 = _interopRequireDefault(_regenerator);
31
+ var _preferences = require("./preferences.js");
32
32
 
33
- var _createClass = function () { 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); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
33
+ var _download_manager = require("./download_manager.js");
34
34
 
35
- var _app = require('./app');
36
-
37
- var _preferences = require('./preferences');
38
-
39
- var _download_manager = require('./download_manager');
40
-
41
- var _genericl10n = require('./genericl10n');
42
-
43
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
44
-
45
- function _asyncToGenerator(fn) { return function () { var gen = fn.apply(this, arguments); return new Promise(function (resolve, reject) { function step(key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { return Promise.resolve(value).then(function (value) { step("next", value); }, function (err) { step("throw", err); }); } } return step("next"); }); }; }
46
-
47
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
48
-
49
- function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
50
-
51
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
35
+ var _genericl10n = require("./genericl10n.js");
52
36
 
53
37
  ;
54
- var GenericCom = {};
55
-
56
- var GenericPreferences = function (_BasePreferences) {
57
- _inherits(GenericPreferences, _BasePreferences);
38
+ const GenericCom = {};
39
+ exports.GenericCom = GenericCom;
58
40
 
59
- function GenericPreferences() {
60
- _classCallCheck(this, GenericPreferences);
61
-
62
- return _possibleConstructorReturn(this, (GenericPreferences.__proto__ || Object.getPrototypeOf(GenericPreferences)).apply(this, arguments));
41
+ class GenericPreferences extends _preferences.BasePreferences {
42
+ async _writeToStorage(prefObj) {
43
+ localStorage.setItem("pdfjs.preferences", JSON.stringify(prefObj));
63
44
  }
64
45
 
65
- _createClass(GenericPreferences, [{
66
- key: '_writeToStorage',
67
- value: function () {
68
- var _ref = _asyncToGenerator( /*#__PURE__*/_regenerator2.default.mark(function _callee(prefObj) {
69
- return _regenerator2.default.wrap(function _callee$(_context) {
70
- while (1) {
71
- switch (_context.prev = _context.next) {
72
- case 0:
73
- localStorage.setItem('pdfjs.preferences', JSON.stringify(prefObj));
74
-
75
- case 1:
76
- case 'end':
77
- return _context.stop();
78
- }
79
- }
80
- }, _callee, this);
81
- }));
82
-
83
- function _writeToStorage(_x) {
84
- return _ref.apply(this, arguments);
85
- }
86
-
87
- return _writeToStorage;
88
- }()
89
- }, {
90
- key: '_readFromStorage',
91
- value: function () {
92
- var _ref2 = _asyncToGenerator( /*#__PURE__*/_regenerator2.default.mark(function _callee2(prefObj) {
93
- return _regenerator2.default.wrap(function _callee2$(_context2) {
94
- while (1) {
95
- switch (_context2.prev = _context2.next) {
96
- case 0:
97
- return _context2.abrupt('return', JSON.parse(localStorage.getItem('pdfjs.preferences')));
46
+ async _readFromStorage(prefObj) {
47
+ return JSON.parse(localStorage.getItem("pdfjs.preferences"));
48
+ }
98
49
 
99
- case 1:
100
- case 'end':
101
- return _context2.stop();
102
- }
103
- }
104
- }, _callee2, this);
105
- }));
50
+ }
106
51
 
107
- function _readFromStorage(_x2) {
108
- return _ref2.apply(this, arguments);
109
- }
52
+ class GenericExternalServices extends _app.DefaultExternalServices {
53
+ static createDownloadManager(options) {
54
+ return new _download_manager.DownloadManager(options);
55
+ }
110
56
 
111
- return _readFromStorage;
112
- }()
113
- }]);
57
+ static createPreferences() {
58
+ return new GenericPreferences();
59
+ }
114
60
 
115
- return GenericPreferences;
116
- }(_preferences.BasePreferences);
61
+ static createL10n({
62
+ locale = "en-US"
63
+ }) {
64
+ return new _genericl10n.GenericL10n(locale);
65
+ }
117
66
 
118
- var GenericExternalServices = Object.create(_app.DefaultExternalServices);
119
- GenericExternalServices.createDownloadManager = function (options) {
120
- return new _download_manager.DownloadManager(options);
121
- };
122
- GenericExternalServices.createPreferences = function () {
123
- return new GenericPreferences();
124
- };
125
- GenericExternalServices.createL10n = function (_ref3) {
126
- var _ref3$locale = _ref3.locale,
127
- locale = _ref3$locale === undefined ? 'en-US' : _ref3$locale;
67
+ }
128
68
 
129
- return new _genericl10n.GenericL10n(locale);
130
- };
131
- _app.PDFViewerApplication.externalServices = GenericExternalServices;
132
- exports.GenericCom = GenericCom;
69
+ _app.PDFViewerApplication.externalServices = GenericExternalServices;
@@ -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,164 +19,47 @@
19
19
  * @licend The above is the entire license notice for the
20
20
  * Javascript code in this page
21
21
  */
22
- 'use strict';
22
+ "use strict";
23
23
 
24
24
  Object.defineProperty(exports, "__esModule", {
25
25
  value: true
26
26
  });
27
- exports.GenericL10n = undefined;
27
+ exports.GenericL10n = void 0;
28
28
 
29
- var _regenerator = require('babel-runtime/regenerator');
29
+ require("../external/webL10n/l10n.js");
30
30
 
31
- var _regenerator2 = _interopRequireDefault(_regenerator);
32
-
33
- var _createClass = function () { 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); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
34
-
35
- require('../external/webL10n/l10n');
36
-
37
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
38
-
39
- function _asyncToGenerator(fn) { return function () { var gen = fn.apply(this, arguments); return new Promise(function (resolve, reject) { function step(key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { return Promise.resolve(value).then(function (value) { step("next", value); }, function (err) { step("throw", err); }); } } return step("next"); }); }; }
40
-
41
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
42
-
43
- var webL10n = document.webL10n;
44
-
45
- var GenericL10n = function () {
46
- function GenericL10n(lang) {
47
- _classCallCheck(this, GenericL10n);
31
+ const webL10n = document.webL10n;
48
32
 
33
+ class GenericL10n {
34
+ constructor(lang) {
49
35
  this._lang = lang;
50
- this._ready = new Promise(function (resolve, reject) {
51
- webL10n.setLanguage(lang, function () {
36
+ this._ready = new Promise((resolve, reject) => {
37
+ webL10n.setLanguage(lang, () => {
52
38
  resolve(webL10n);
53
39
  });
54
40
  });
55
41
  }
56
42
 
57
- _createClass(GenericL10n, [{
58
- key: 'getLanguage',
59
- value: function () {
60
- var _ref = _asyncToGenerator( /*#__PURE__*/_regenerator2.default.mark(function _callee() {
61
- var l10n;
62
- return _regenerator2.default.wrap(function _callee$(_context) {
63
- while (1) {
64
- switch (_context.prev = _context.next) {
65
- case 0:
66
- _context.next = 2;
67
- return this._ready;
68
-
69
- case 2:
70
- l10n = _context.sent;
71
- return _context.abrupt('return', l10n.getLanguage());
72
-
73
- case 4:
74
- case 'end':
75
- return _context.stop();
76
- }
77
- }
78
- }, _callee, this);
79
- }));
80
-
81
- function getLanguage() {
82
- return _ref.apply(this, arguments);
83
- }
84
-
85
- return getLanguage;
86
- }()
87
- }, {
88
- key: 'getDirection',
89
- value: function () {
90
- var _ref2 = _asyncToGenerator( /*#__PURE__*/_regenerator2.default.mark(function _callee2() {
91
- var l10n;
92
- return _regenerator2.default.wrap(function _callee2$(_context2) {
93
- while (1) {
94
- switch (_context2.prev = _context2.next) {
95
- case 0:
96
- _context2.next = 2;
97
- return this._ready;
98
-
99
- case 2:
100
- l10n = _context2.sent;
101
- return _context2.abrupt('return', l10n.getDirection());
102
-
103
- case 4:
104
- case 'end':
105
- return _context2.stop();
106
- }
107
- }
108
- }, _callee2, this);
109
- }));
110
-
111
- function getDirection() {
112
- return _ref2.apply(this, arguments);
113
- }
114
-
115
- return getDirection;
116
- }()
117
- }, {
118
- key: 'get',
119
- value: function () {
120
- var _ref3 = _asyncToGenerator( /*#__PURE__*/_regenerator2.default.mark(function _callee3(property, args, fallback) {
121
- var l10n;
122
- return _regenerator2.default.wrap(function _callee3$(_context3) {
123
- while (1) {
124
- switch (_context3.prev = _context3.next) {
125
- case 0:
126
- _context3.next = 2;
127
- return this._ready;
128
-
129
- case 2:
130
- l10n = _context3.sent;
131
- return _context3.abrupt('return', l10n.get(property, args, fallback));
132
-
133
- case 4:
134
- case 'end':
135
- return _context3.stop();
136
- }
137
- }
138
- }, _callee3, this);
139
- }));
140
-
141
- function get(_x, _x2, _x3) {
142
- return _ref3.apply(this, arguments);
143
- }
144
-
145
- return get;
146
- }()
147
- }, {
148
- key: 'translate',
149
- value: function () {
150
- var _ref4 = _asyncToGenerator( /*#__PURE__*/_regenerator2.default.mark(function _callee4(element) {
151
- var l10n;
152
- return _regenerator2.default.wrap(function _callee4$(_context4) {
153
- while (1) {
154
- switch (_context4.prev = _context4.next) {
155
- case 0:
156
- _context4.next = 2;
157
- return this._ready;
158
-
159
- case 2:
160
- l10n = _context4.sent;
161
- return _context4.abrupt('return', l10n.translate(element));
43
+ async getLanguage() {
44
+ const l10n = await this._ready;
45
+ return l10n.getLanguage();
46
+ }
162
47
 
163
- case 4:
164
- case 'end':
165
- return _context4.stop();
166
- }
167
- }
168
- }, _callee4, this);
169
- }));
48
+ async getDirection() {
49
+ const l10n = await this._ready;
50
+ return l10n.getDirection();
51
+ }
170
52
 
171
- function translate(_x4) {
172
- return _ref4.apply(this, arguments);
173
- }
53
+ async get(property, args, fallback) {
54
+ const l10n = await this._ready;
55
+ return l10n.get(property, args, fallback);
56
+ }
174
57
 
175
- return translate;
176
- }()
177
- }]);
58
+ async translate(element) {
59
+ const l10n = await this._ready;
60
+ return l10n.translate(element);
61
+ }
178
62
 
179
- return GenericL10n;
180
- }();
63
+ }
181
64
 
182
65
  exports.GenericL10n = GenericL10n;
@@ -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,17 +19,21 @@
19
19
  * @licend The above is the entire license notice for the
20
20
  * Javascript code in this page
21
21
  */
22
- 'use strict';
22
+ "use strict";
23
23
 
24
24
  Object.defineProperty(exports, "__esModule", {
25
25
  value: true
26
26
  });
27
+ exports.GrabToPan = GrabToPan;
28
+
27
29
  function GrabToPan(options) {
28
30
  this.element = options.element;
29
31
  this.document = options.element.ownerDocument;
30
- if (typeof options.ignoreTarget === 'function') {
32
+
33
+ if (typeof options.ignoreTarget === "function") {
31
34
  this.ignoreTarget = options.ignoreTarget;
32
35
  }
36
+
33
37
  this.onActiveChanged = options.onActiveChanged;
34
38
  this.activate = this.activate.bind(this);
35
39
  this.deactivate = this.deactivate.bind(this);
@@ -37,16 +41,18 @@ function GrabToPan(options) {
37
41
  this._onmousedown = this._onmousedown.bind(this);
38
42
  this._onmousemove = this._onmousemove.bind(this);
39
43
  this._endPan = this._endPan.bind(this);
40
- var overlay = this.overlay = document.createElement('div');
41
- overlay.className = 'grab-to-pan-grabbing';
44
+ const overlay = this.overlay = document.createElement("div");
45
+ overlay.className = "grab-to-pan-grabbing";
42
46
  }
47
+
43
48
  GrabToPan.prototype = {
44
- CSS_CLASS_GRAB: 'grab-to-pan-grab',
49
+ CSS_CLASS_GRAB: "grab-to-pan-grab",
45
50
  activate: function GrabToPan_activate() {
46
51
  if (!this.active) {
47
52
  this.active = true;
48
- this.element.addEventListener('mousedown', this._onmousedown, true);
53
+ this.element.addEventListener("mousedown", this._onmousedown, true);
49
54
  this.element.classList.add(this.CSS_CLASS_GRAB);
55
+
50
56
  if (this.onActiveChanged) {
51
57
  this.onActiveChanged(true);
52
58
  }
@@ -55,9 +61,12 @@ GrabToPan.prototype = {
55
61
  deactivate: function GrabToPan_deactivate() {
56
62
  if (this.active) {
57
63
  this.active = false;
58
- this.element.removeEventListener('mousedown', this._onmousedown, true);
64
+ this.element.removeEventListener("mousedown", this._onmousedown, true);
65
+
59
66
  this._endPan();
67
+
60
68
  this.element.classList.remove(this.CSS_CLASS_GRAB);
69
+
61
70
  if (this.onActiveChanged) {
62
71
  this.onActiveChanged(false);
63
72
  }
@@ -71,12 +80,13 @@ GrabToPan.prototype = {
71
80
  }
72
81
  },
73
82
  ignoreTarget: function GrabToPan_ignoreTarget(node) {
74
- return node[matchesSelector]('a[href], a[href] *, input, textarea, button, button *, select, option');
83
+ return node[matchesSelector]("a[href], a[href] *, input, textarea, button, button *, select, option");
75
84
  },
76
85
  _onmousedown: function GrabToPan__onmousedown(event) {
77
86
  if (event.button !== 0 || this.ignoreTarget(event.target)) {
78
87
  return;
79
88
  }
89
+
80
90
  if (event.originalTarget) {
81
91
  try {
82
92
  event.originalTarget.tagName;
@@ -84,73 +94,87 @@ GrabToPan.prototype = {
84
94
  return;
85
95
  }
86
96
  }
97
+
87
98
  this.scrollLeftStart = this.element.scrollLeft;
88
99
  this.scrollTopStart = this.element.scrollTop;
89
100
  this.clientXStart = event.clientX;
90
101
  this.clientYStart = event.clientY;
91
- this.document.addEventListener('mousemove', this._onmousemove, true);
92
- this.document.addEventListener('mouseup', this._endPan, true);
93
- this.element.addEventListener('scroll', this._endPan, true);
102
+ this.document.addEventListener("mousemove", this._onmousemove, true);
103
+ this.document.addEventListener("mouseup", this._endPan, true);
104
+ this.element.addEventListener("scroll", this._endPan, true);
94
105
  event.preventDefault();
95
106
  event.stopPropagation();
96
- var focusedElement = document.activeElement;
107
+ const focusedElement = document.activeElement;
108
+
97
109
  if (focusedElement && !focusedElement.contains(event.target)) {
98
110
  focusedElement.blur();
99
111
  }
100
112
  },
101
113
  _onmousemove: function GrabToPan__onmousemove(event) {
102
- this.element.removeEventListener('scroll', this._endPan, true);
114
+ this.element.removeEventListener("scroll", this._endPan, true);
115
+
103
116
  if (isLeftMouseReleased(event)) {
104
117
  this._endPan();
118
+
105
119
  return;
106
120
  }
107
- var xDiff = event.clientX - this.clientXStart;
108
- var yDiff = event.clientY - this.clientYStart;
109
- var scrollTop = this.scrollTopStart - yDiff;
110
- var scrollLeft = this.scrollLeftStart - xDiff;
121
+
122
+ const xDiff = event.clientX - this.clientXStart;
123
+ const yDiff = event.clientY - this.clientYStart;
124
+ const scrollTop = this.scrollTopStart - yDiff;
125
+ const scrollLeft = this.scrollLeftStart - xDiff;
126
+
111
127
  if (this.element.scrollTo) {
112
128
  this.element.scrollTo({
113
129
  top: scrollTop,
114
130
  left: scrollLeft,
115
- behavior: 'instant'
131
+ behavior: "instant"
116
132
  });
117
133
  } else {
118
134
  this.element.scrollTop = scrollTop;
119
135
  this.element.scrollLeft = scrollLeft;
120
136
  }
137
+
121
138
  if (!this.overlay.parentNode) {
122
139
  document.body.appendChild(this.overlay);
123
140
  }
124
141
  },
125
142
  _endPan: function GrabToPan__endPan() {
126
- this.element.removeEventListener('scroll', this._endPan, true);
127
- this.document.removeEventListener('mousemove', this._onmousemove, true);
128
- this.document.removeEventListener('mouseup', this._endPan, true);
143
+ this.element.removeEventListener("scroll", this._endPan, true);
144
+ this.document.removeEventListener("mousemove", this._onmousemove, true);
145
+ this.document.removeEventListener("mouseup", this._endPan, true);
129
146
  this.overlay.remove();
130
147
  }
131
148
  };
132
- var matchesSelector;
133
- ['webkitM', 'mozM', 'msM', 'oM', 'm'].some(function (prefix) {
134
- var name = prefix + 'atches';
149
+ let matchesSelector;
150
+ ["webkitM", "mozM", "msM", "oM", "m"].some(function (prefix) {
151
+ let name = prefix + "atches";
152
+
135
153
  if (name in document.documentElement) {
136
154
  matchesSelector = name;
137
155
  }
138
- name += 'Selector';
156
+
157
+ name += "Selector";
158
+
139
159
  if (name in document.documentElement) {
140
160
  matchesSelector = name;
141
161
  }
162
+
142
163
  return matchesSelector;
143
164
  });
144
- var isNotIEorIsIE10plus = !document.documentMode || document.documentMode > 9;
145
- var chrome = window.chrome;
146
- var isChrome15OrOpera15plus = chrome && (chrome.webstore || chrome.app);
147
- var isSafari6plus = /Apple/.test(navigator.vendor) && /Version\/([6-9]\d*|[1-5]\d+)/.test(navigator.userAgent);
165
+ const isNotIEorIsIE10plus = !document.documentMode || document.documentMode > 9;
166
+ const chrome = window.chrome;
167
+ const isChrome15OrOpera15plus = chrome && (chrome.webstore || chrome.app);
168
+ const isSafari6plus = /Apple/.test(navigator.vendor) && /Version\/([6-9]\d*|[1-5]\d+)/.test(navigator.userAgent);
169
+
148
170
  function isLeftMouseReleased(event) {
149
- if ('buttons' in event && isNotIEorIsIE10plus) {
171
+ if ("buttons" in event && isNotIEorIsIE10plus) {
150
172
  return !(event.buttons & 1);
151
173
  }
174
+
152
175
  if (isChrome15OrOpera15plus || isSafari6plus) {
153
176
  return event.which === 0;
154
177
  }
155
- }
156
- exports.GrabToPan = GrabToPan;
178
+
179
+ return false;
180
+ }