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.
- package/CODE_OF_CONDUCT.md +15 -0
- package/README.md +4 -0
- package/bower.json +1 -1
- package/build/pdf.js +8286 -14230
- package/build/pdf.js.map +1 -1
- package/build/pdf.min.js +22 -1
- package/build/pdf.worker.entry.js +5 -3
- package/build/pdf.worker.js +25500 -26628
- package/build/pdf.worker.js.map +1 -1
- package/build/pdf.worker.min.js +22 -1
- package/es5/build/pdf.js +25473 -0
- package/es5/build/pdf.js.map +1 -0
- package/{lib/shared/global_scope.js → es5/build/pdf.worker.entry.js} +5 -10
- package/es5/build/pdf.worker.js +57878 -0
- package/es5/build/pdf.worker.js.map +1 -0
- package/es5/web/images/annotation-check.svg +11 -0
- package/es5/web/images/annotation-comment.svg +16 -0
- package/es5/web/images/annotation-help.svg +26 -0
- package/es5/web/images/annotation-insert.svg +10 -0
- package/es5/web/images/annotation-key.svg +11 -0
- package/es5/web/images/annotation-newparagraph.svg +11 -0
- package/es5/web/images/annotation-noicon.svg +7 -0
- package/es5/web/images/annotation-note.svg +42 -0
- package/es5/web/images/annotation-paragraph.svg +16 -0
- package/es5/web/images/loading-icon.gif +0 -0
- package/es5/web/images/shadow.png +0 -0
- package/es5/web/images/texture.png +0 -0
- package/es5/web/pdf_viewer.css +407 -0
- package/es5/web/pdf_viewer.js +7757 -0
- package/es5/web/pdf_viewer.js.map +1 -0
- package/image_decoders/pdf.image_decoders.js +2887 -4094
- package/image_decoders/pdf.image_decoders.js.map +1 -1
- package/image_decoders/pdf.image_decoders.min.js +22 -1
- package/lib/README.md +7 -0
- package/lib/core/annotation.js +855 -778
- package/lib/core/arithmetic_decoder.js +325 -311
- package/lib/core/bidi.js +117 -50
- package/lib/core/ccitt.js +251 -89
- package/lib/core/ccitt_stream.js +26 -16
- package/lib/core/cff_parser.js +525 -197
- package/lib/core/charsets.js +6 -5
- package/lib/core/chunked_stream.js +541 -406
- package/lib/core/cmap.js +368 -253
- package/lib/core/colorspace.js +781 -800
- package/lib/core/core_utils.js +152 -0
- package/lib/core/crypto.js +609 -422
- package/lib/core/document.js +649 -481
- package/lib/core/encodings.js +33 -24
- package/lib/core/evaluator.js +1471 -736
- package/lib/core/font_renderer.js +289 -149
- package/lib/core/fonts.js +1067 -413
- package/lib/core/function.js +517 -287
- package/lib/core/glyphlist.js +4529 -4527
- package/lib/core/image.js +232 -114
- package/lib/core/image_utils.js +94 -0
- package/lib/core/jbig2.js +711 -342
- package/lib/core/jbig2_stream.js +31 -19
- package/lib/core/jpeg_stream.js +151 -26
- package/lib/core/jpg.js +433 -181
- package/lib/core/jpx.js +551 -143
- package/lib/core/jpx_stream.js +40 -28
- package/lib/core/metrics.js +2931 -2931
- package/lib/core/murmurhash3.js +104 -97
- package/lib/core/obj.js +1561 -1053
- package/lib/core/operator_list.js +192 -64
- package/lib/core/parser.js +1162 -864
- package/lib/core/pattern.js +224 -75
- package/lib/core/pdf_manager.js +154 -285
- package/lib/core/primitives.js +145 -69
- package/lib/core/ps_parser.js +212 -162
- package/lib/core/standard_fonts.js +245 -244
- package/lib/core/stream.js +353 -81
- package/lib/core/type1_parser.js +218 -68
- package/lib/core/unicode.js +1682 -1655
- package/lib/core/worker.js +233 -302
- package/lib/core/worker_stream.js +168 -0
- package/lib/display/annotation_layer.js +808 -862
- package/lib/display/api.js +1778 -1462
- package/lib/display/api_compatibility.js +14 -9
- package/lib/display/canvas.js +463 -140
- package/lib/display/content_disposition.js +86 -58
- package/lib/display/display_utils.js +524 -0
- package/lib/display/fetch_stream.js +202 -274
- package/lib/display/font_loader.js +311 -333
- package/lib/display/metadata.js +98 -88
- package/lib/display/network.js +343 -347
- package/lib/display/network_utils.js +46 -26
- package/lib/display/node_stream.js +326 -404
- package/lib/display/pattern_helper.js +168 -69
- package/lib/display/svg.js +1296 -885
- package/lib/display/text_layer.js +229 -103
- package/lib/display/transport_stream.js +290 -250
- package/lib/display/webgl.js +116 -83
- package/lib/display/worker_options.js +6 -5
- package/lib/display/xml_parser.js +358 -337
- package/lib/examples/node/domstubs.js +95 -39
- package/lib/pdf.js +49 -31
- package/lib/pdf.worker.js +7 -5
- package/lib/shared/compatibility.js +3 -145
- package/lib/shared/is_node.js +8 -7
- package/lib/shared/message_handler.js +367 -314
- package/lib/shared/util.js +421 -415
- package/lib/test/unit/annotation_spec.js +1570 -690
- package/lib/test/unit/api_spec.js +855 -493
- package/lib/test/unit/bidi_spec.js +12 -12
- package/lib/test/unit/cff_parser_spec.js +88 -61
- package/lib/test/unit/clitests_helper.js +9 -12
- package/lib/test/unit/cmap_spec.js +140 -88
- package/lib/test/unit/colorspace_spec.js +204 -152
- package/lib/test/unit/core_utils_spec.js +211 -0
- package/lib/test/unit/crypto_spec.js +194 -182
- package/lib/test/unit/custom_spec.js +50 -64
- package/lib/test/unit/display_svg_spec.js +53 -38
- package/lib/test/unit/display_utils_spec.js +263 -0
- package/lib/test/unit/document_spec.js +17 -22
- package/lib/test/unit/encodings_spec.js +15 -57
- package/lib/test/unit/evaluator_spec.js +90 -83
- package/lib/test/unit/fetch_stream_spec.js +111 -0
- package/lib/test/unit/function_spec.js +219 -205
- package/lib/test/unit/jasmine-boot.js +68 -39
- package/lib/test/unit/message_handler_spec.js +187 -160
- package/lib/test/unit/metadata_spec.js +87 -34
- package/lib/test/unit/murmurhash3_spec.js +13 -13
- package/lib/test/unit/network_spec.js +26 -59
- package/lib/test/unit/network_utils_spec.js +187 -121
- package/lib/test/unit/node_stream_spec.js +98 -90
- package/lib/test/unit/parser_spec.js +173 -131
- package/lib/test/unit/pdf_find_controller_spec.js +148 -67
- package/lib/test/unit/pdf_find_utils_spec.js +35 -34
- package/lib/test/unit/pdf_history_spec.js +45 -33
- package/lib/test/unit/primitives_spec.js +161 -126
- package/lib/test/unit/stream_spec.js +22 -15
- package/lib/test/unit/test_utils.js +149 -98
- package/lib/test/unit/testreporter.js +36 -18
- package/lib/test/unit/type1_parser_spec.js +46 -44
- package/lib/test/unit/ui_utils_spec.js +388 -372
- package/lib/test/unit/unicode_spec.js +49 -46
- package/lib/test/unit/util_spec.js +144 -248
- package/lib/web/annotation_layer_builder.js +75 -95
- package/lib/web/app.js +1538 -1147
- package/lib/web/app_options.js +116 -104
- package/lib/web/base_viewer.js +950 -775
- package/lib/web/chromecom.js +217 -225
- package/lib/web/debugger.js +236 -148
- package/lib/web/download_manager.js +50 -50
- package/lib/web/firefox_print_service.js +51 -33
- package/lib/web/firefoxcom.js +225 -352
- package/lib/web/genericcom.js +30 -93
- package/lib/web/genericl10n.js +26 -143
- package/lib/web/grab_to_pan.js +57 -33
- package/lib/web/interfaces.js +105 -232
- package/lib/web/overlay_manager.js +73 -227
- package/lib/web/password_prompt.js +44 -62
- package/lib/web/pdf_attachment_viewer.js +118 -123
- package/lib/web/pdf_cursor_tools.js +89 -93
- package/lib/web/pdf_document_properties.js +242 -281
- package/lib/web/pdf_find_bar.js +157 -163
- package/lib/web/pdf_find_controller.js +598 -454
- package/lib/web/pdf_find_utils.js +32 -16
- package/lib/web/pdf_history.js +481 -355
- package/lib/web/pdf_link_service.js +355 -323
- package/lib/web/pdf_outline_viewer.js +167 -152
- package/lib/web/pdf_page_view.js +511 -457
- package/lib/web/pdf_presentation_mode.js +347 -335
- package/lib/web/pdf_print_service.js +133 -103
- package/lib/web/pdf_rendering_queue.js +98 -100
- package/lib/web/pdf_sidebar.js +323 -299
- package/lib/web/pdf_sidebar_resizer.js +107 -108
- package/lib/web/pdf_single_page_viewer.js +94 -146
- package/lib/web/pdf_thumbnail_view.js +319 -269
- package/lib/web/pdf_thumbnail_viewer.js +219 -199
- package/lib/web/pdf_viewer.component.js +111 -32
- package/lib/web/pdf_viewer.js +61 -101
- package/lib/web/preferences.js +87 -272
- package/lib/web/secondary_toolbar.js +207 -220
- package/lib/web/text_layer_builder.js +322 -322
- package/lib/web/toolbar.js +227 -180
- package/lib/web/ui_utils.js +476 -421
- package/lib/web/view_history.js +59 -208
- package/lib/web/viewer_compatibility.js +9 -6
- package/package.json +2 -9
- package/web/pdf_viewer.css +36 -22
- package/web/pdf_viewer.js +4407 -4516
- package/web/pdf_viewer.js.map +1 -1
- package/webpack.js +14 -5
- package/external/streams/streams-lib.js +0 -3962
- package/external/url/url-lib.js +0 -627
- package/lib/display/dom_utils.js +0 -441
- package/lib/shared/streams_polyfill.js +0 -39
- package/lib/shared/url_polyfill.js +0 -50
- package/lib/test/unit/dom_utils_spec.js +0 -89
- package/lib/web/dom_events.js +0 -140
package/lib/web/genericcom.js
CHANGED
@@ -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
|
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
|
-
|
22
|
+
"use strict";
|
23
23
|
|
24
24
|
Object.defineProperty(exports, "__esModule", {
|
25
25
|
value: true
|
26
26
|
});
|
27
|
-
exports.GenericCom =
|
27
|
+
exports.GenericCom = void 0;
|
28
28
|
|
29
|
-
var
|
29
|
+
var _app = require("./app.js");
|
30
30
|
|
31
|
-
var
|
31
|
+
var _preferences = require("./preferences.js");
|
32
32
|
|
33
|
-
var
|
33
|
+
var _download_manager = require("./download_manager.js");
|
34
34
|
|
35
|
-
var
|
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
|
-
|
55
|
-
|
56
|
-
var GenericPreferences = function (_BasePreferences) {
|
57
|
-
_inherits(GenericPreferences, _BasePreferences);
|
38
|
+
const GenericCom = {};
|
39
|
+
exports.GenericCom = GenericCom;
|
58
40
|
|
59
|
-
|
60
|
-
|
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
|
-
|
66
|
-
|
67
|
-
|
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
|
-
|
100
|
-
case 'end':
|
101
|
-
return _context2.stop();
|
102
|
-
}
|
103
|
-
}
|
104
|
-
}, _callee2, this);
|
105
|
-
}));
|
50
|
+
}
|
106
51
|
|
107
|
-
|
108
|
-
|
109
|
-
|
52
|
+
class GenericExternalServices extends _app.DefaultExternalServices {
|
53
|
+
static createDownloadManager(options) {
|
54
|
+
return new _download_manager.DownloadManager(options);
|
55
|
+
}
|
110
56
|
|
111
|
-
|
112
|
-
|
113
|
-
}
|
57
|
+
static createPreferences() {
|
58
|
+
return new GenericPreferences();
|
59
|
+
}
|
114
60
|
|
115
|
-
|
116
|
-
|
61
|
+
static createL10n({
|
62
|
+
locale = "en-US"
|
63
|
+
}) {
|
64
|
+
return new _genericl10n.GenericL10n(locale);
|
65
|
+
}
|
117
66
|
|
118
|
-
|
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
|
-
|
130
|
-
};
|
131
|
-
_app.PDFViewerApplication.externalServices = GenericExternalServices;
|
132
|
-
exports.GenericCom = GenericCom;
|
69
|
+
_app.PDFViewerApplication.externalServices = GenericExternalServices;
|
package/lib/web/genericl10n.js
CHANGED
@@ -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
|
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
|
-
|
22
|
+
"use strict";
|
23
23
|
|
24
24
|
Object.defineProperty(exports, "__esModule", {
|
25
25
|
value: true
|
26
26
|
});
|
27
|
-
exports.GenericL10n =
|
27
|
+
exports.GenericL10n = void 0;
|
28
28
|
|
29
|
-
|
29
|
+
require("../external/webL10n/l10n.js");
|
30
30
|
|
31
|
-
|
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(
|
51
|
-
webL10n.setLanguage(lang,
|
36
|
+
this._ready = new Promise((resolve, reject) => {
|
37
|
+
webL10n.setLanguage(lang, () => {
|
52
38
|
resolve(webL10n);
|
53
39
|
});
|
54
40
|
});
|
55
41
|
}
|
56
42
|
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
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
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
}
|
168
|
-
}, _callee4, this);
|
169
|
-
}));
|
48
|
+
async getDirection() {
|
49
|
+
const l10n = await this._ready;
|
50
|
+
return l10n.getDirection();
|
51
|
+
}
|
170
52
|
|
171
|
-
|
172
|
-
|
173
|
-
|
53
|
+
async get(property, args, fallback) {
|
54
|
+
const l10n = await this._ready;
|
55
|
+
return l10n.get(property, args, fallback);
|
56
|
+
}
|
174
57
|
|
175
|
-
|
176
|
-
|
177
|
-
|
58
|
+
async translate(element) {
|
59
|
+
const l10n = await this._ready;
|
60
|
+
return l10n.translate(element);
|
61
|
+
}
|
178
62
|
|
179
|
-
|
180
|
-
}();
|
63
|
+
}
|
181
64
|
|
182
65
|
exports.GenericL10n = GenericL10n;
|
package/lib/web/grab_to_pan.js
CHANGED
@@ -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
|
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
|
-
|
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
|
-
|
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
|
-
|
41
|
-
overlay.className =
|
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:
|
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(
|
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(
|
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](
|
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(
|
92
|
-
this.document.addEventListener(
|
93
|
-
this.element.addEventListener(
|
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
|
-
|
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(
|
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
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
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:
|
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(
|
127
|
-
this.document.removeEventListener(
|
128
|
-
this.document.removeEventListener(
|
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
|
-
|
133
|
-
[
|
134
|
-
|
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
|
-
|
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
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
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 (
|
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
|
-
|
178
|
+
|
179
|
+
return false;
|
180
|
+
}
|