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/chromecom.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,52 +19,36 @@
|
|
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.ChromeCom =
|
27
|
+
exports.ChromeCom = void 0;
|
28
28
|
|
29
|
-
var
|
29
|
+
var _app = require("./app.js");
|
30
30
|
|
31
|
-
var
|
31
|
+
var _app_options = require("./app_options.js");
|
32
32
|
|
33
|
-
var
|
33
|
+
var _preferences = require("./preferences.js");
|
34
34
|
|
35
|
-
var
|
35
|
+
var _download_manager = require("./download_manager.js");
|
36
36
|
|
37
|
-
var
|
38
|
-
|
39
|
-
var _preferences = require('./preferences');
|
40
|
-
|
41
|
-
var _download_manager = require('./download_manager');
|
42
|
-
|
43
|
-
var _genericl10n = require('./genericl10n');
|
44
|
-
|
45
|
-
var _pdf = require('../pdf');
|
46
|
-
|
47
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
48
|
-
|
49
|
-
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"); }); }; }
|
50
|
-
|
51
|
-
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
52
|
-
|
53
|
-
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; }
|
54
|
-
|
55
|
-
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; }
|
37
|
+
var _genericl10n = require("./genericl10n.js");
|
56
38
|
|
57
39
|
{
|
58
|
-
throw new Error('Module "pdfjs-web/chromecom" shall not be used outside
|
40
|
+
throw new Error('Module "pdfjs-web/chromecom" shall not be used outside CHROME build.');
|
59
41
|
}
|
60
|
-
|
61
|
-
request
|
62
|
-
|
63
|
-
action
|
64
|
-
data
|
42
|
+
const ChromeCom = {
|
43
|
+
request(action, data, callback) {
|
44
|
+
const message = {
|
45
|
+
action,
|
46
|
+
data
|
65
47
|
};
|
48
|
+
|
66
49
|
if (!chrome.runtime) {
|
67
|
-
console.error(
|
50
|
+
console.error("chrome.runtime is undefined.");
|
51
|
+
|
68
52
|
if (callback) {
|
69
53
|
callback();
|
70
54
|
}
|
@@ -74,20 +58,25 @@ var ChromeCom = {
|
|
74
58
|
chrome.runtime.sendMessage(message);
|
75
59
|
}
|
76
60
|
},
|
77
|
-
|
78
|
-
|
61
|
+
|
62
|
+
resolvePDFFile(file, overlayManager, callback) {
|
63
|
+
file = file.replace(/^drive:/i, "filesystem:" + location.origin + "/external/");
|
64
|
+
|
79
65
|
if (/^https?:/.test(file)) {
|
80
66
|
setReferer(file, function () {
|
81
67
|
callback(file);
|
82
68
|
});
|
83
69
|
return;
|
84
70
|
}
|
71
|
+
|
85
72
|
if (/^file?:/.test(file)) {
|
86
73
|
getEmbedderOrigin(function (origin) {
|
87
74
|
if (origin && !/^file:|^chrome-extension:/.test(origin)) {
|
88
|
-
_app.PDFViewerApplication.error(
|
75
|
+
_app.PDFViewerApplication.error("Blocked " + origin + " from loading " + file + ". Refused to load a local file in a non-local page " + "for security reasons.");
|
76
|
+
|
89
77
|
return;
|
90
78
|
}
|
79
|
+
|
91
80
|
isAllowedFileSchemeAccess(function (isAllowedAccess) {
|
92
81
|
if (isAllowedAccess) {
|
93
82
|
callback(file);
|
@@ -98,303 +87,306 @@ var ChromeCom = {
|
|
98
87
|
});
|
99
88
|
return;
|
100
89
|
}
|
90
|
+
|
101
91
|
callback(file);
|
102
92
|
}
|
93
|
+
|
103
94
|
};
|
95
|
+
exports.ChromeCom = ChromeCom;
|
96
|
+
|
104
97
|
function getEmbedderOrigin(callback) {
|
105
|
-
|
106
|
-
|
98
|
+
const origin = window === top ? location.origin : location.ancestorOrigins[0];
|
99
|
+
|
100
|
+
if (origin === "null") {
|
107
101
|
getParentOrigin(callback);
|
108
102
|
} else {
|
109
103
|
callback(origin);
|
110
104
|
}
|
111
105
|
}
|
106
|
+
|
112
107
|
function getParentOrigin(callback) {
|
113
|
-
ChromeCom.request(
|
108
|
+
ChromeCom.request("getParentOrigin", null, callback);
|
114
109
|
}
|
110
|
+
|
115
111
|
function isAllowedFileSchemeAccess(callback) {
|
116
|
-
ChromeCom.request(
|
112
|
+
ChromeCom.request("isAllowedFileSchemeAccess", null, callback);
|
117
113
|
}
|
114
|
+
|
118
115
|
function isRuntimeAvailable() {
|
119
116
|
try {
|
120
117
|
if (chrome.runtime && chrome.runtime.getManifest()) {
|
121
118
|
return true;
|
122
119
|
}
|
123
120
|
} catch (e) {}
|
121
|
+
|
124
122
|
return false;
|
125
123
|
}
|
124
|
+
|
126
125
|
function reloadIfRuntimeIsUnavailable() {
|
127
126
|
if (!isRuntimeAvailable()) {
|
128
127
|
location.reload();
|
129
128
|
}
|
130
129
|
}
|
131
|
-
|
130
|
+
|
131
|
+
let chromeFileAccessOverlayPromise;
|
132
|
+
|
132
133
|
function requestAccessToLocalFile(fileUrl, overlayManager, callback) {
|
133
|
-
|
134
|
+
let onCloseOverlay = null;
|
135
|
+
|
134
136
|
if (top !== window) {
|
135
|
-
window.addEventListener(
|
136
|
-
|
137
|
-
|
137
|
+
window.addEventListener("focus", reloadIfRuntimeIsUnavailable);
|
138
|
+
|
139
|
+
onCloseOverlay = function () {
|
140
|
+
window.removeEventListener("focus", reloadIfRuntimeIsUnavailable);
|
138
141
|
reloadIfRuntimeIsUnavailable();
|
139
|
-
overlayManager.close(
|
142
|
+
overlayManager.close("chromeFileAccessOverlay");
|
140
143
|
};
|
141
144
|
}
|
145
|
+
|
142
146
|
if (!chromeFileAccessOverlayPromise) {
|
143
|
-
chromeFileAccessOverlayPromise = overlayManager.register(
|
147
|
+
chromeFileAccessOverlayPromise = overlayManager.register("chromeFileAccessOverlay", document.getElementById("chromeFileAccessOverlay"), onCloseOverlay, true);
|
144
148
|
}
|
149
|
+
|
145
150
|
chromeFileAccessOverlayPromise.then(function () {
|
146
|
-
|
147
|
-
document.getElementById(
|
148
|
-
|
149
|
-
"am":
|
150
|
-
"ar":
|
151
|
-
"bg":
|
152
|
-
"bn":
|
153
|
-
"ca":
|
154
|
-
"cs":
|
155
|
-
"da":
|
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",
|
156
161
|
"de": "Zugriff auf Datei-URLs zulassen",
|
157
|
-
"el":
|
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",
|
158
163
|
"en-GB": "Allow access to file URLs",
|
159
164
|
"es": "Permitir acceso a URL de archivo",
|
160
165
|
"es-419": "Permitir el acceso a las URL del archivo",
|
161
|
-
"et":
|
162
|
-
"fa":
|
163
|
-
"fi":
|
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",
|
164
169
|
"fil": "Payagan ang access na mag-file ng mga URL",
|
165
|
-
"fr":
|
166
|
-
"gu":
|
167
|
-
"hi":
|
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",
|
168
173
|
"hr": "Dozvoli pristup URL-ovima datoteke",
|
169
|
-
"hu":
|
174
|
+
"hu": "F\u00e1jl URL-ekhez val\u00f3 hozz\u00e1f\u00e9r\u00e9s enged\u00e9lyez\u00e9se",
|
170
175
|
"id": "Izinkan akses ke URL file",
|
171
176
|
"it": "Consenti l'accesso agli URL dei file",
|
172
|
-
"iw":
|
173
|
-
"ja":
|
174
|
-
"kn":
|
175
|
-
"ko":
|
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",
|
176
181
|
"lt": "Leisti pasiekti failo URL",
|
177
|
-
"lv":
|
178
|
-
"ml":
|
179
|
-
"mr":
|
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",
|
180
185
|
"ms": "Membenarkan akses ke URL fail",
|
181
186
|
"nl": "Toegang tot bestand-URL's toestaan",
|
182
187
|
"no": "Tillat tilgang til filnettadresser",
|
183
|
-
"pl":
|
188
|
+
"pl": "Zezwalaj na dost\u0119p do adres\u00f3w URL plik\u00f3w",
|
184
189
|
"pt-BR": "Permitir acesso aos URLs do arquivo",
|
185
190
|
"pt-PT": "Permitir acesso a URLs de ficheiro",
|
186
|
-
"ro":
|
187
|
-
"ru":
|
188
|
-
"sk":
|
191
|
+
"ro": "Permite accesul la adresele URL de fi\u0219iere",
|
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",
|
189
194
|
"sl": "Dovoli dostop do URL-jev datoteke",
|
190
|
-
"sr":
|
191
|
-
"sv":
|
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",
|
192
197
|
"sw": "Ruhusu kufikia URL za faili",
|
193
|
-
"ta":
|
194
|
-
"te":
|
195
|
-
"th":
|
196
|
-
"tr":
|
197
|
-
"uk":
|
198
|
-
"vi":
|
199
|
-
"zh-CN":
|
200
|
-
"zh-TW":
|
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"
|
201
206
|
}[chrome.i18n.getUILanguage && chrome.i18n.getUILanguage()];
|
207
|
+
|
202
208
|
if (i18nFileAccessLabel) {
|
203
|
-
document.getElementById(
|
209
|
+
document.getElementById("chrome-file-access-label").textContent = i18nFileAccessLabel;
|
204
210
|
}
|
205
|
-
|
206
|
-
link
|
211
|
+
|
212
|
+
const link = document.getElementById("chrome-link-to-extensions-page");
|
213
|
+
link.href = "chrome://extensions/?id=" + chrome.runtime.id;
|
214
|
+
|
207
215
|
link.onclick = function (e) {
|
208
216
|
e.preventDefault();
|
209
|
-
ChromeCom.request(
|
217
|
+
ChromeCom.request("openExtensionsPageForFileAccess", {
|
218
|
+
newTab: e.ctrlKey || e.metaKey || e.button === 1 || window !== top
|
219
|
+
});
|
210
220
|
};
|
211
|
-
|
212
|
-
document.getElementById(
|
213
|
-
|
221
|
+
|
222
|
+
document.getElementById("chrome-url-of-local-file").textContent = fileUrl;
|
223
|
+
|
224
|
+
document.getElementById("chrome-file-fallback").onchange = function () {
|
225
|
+
const file = this.files[0];
|
226
|
+
|
214
227
|
if (file) {
|
215
|
-
|
216
|
-
|
228
|
+
const originalFilename = decodeURIComponent(fileUrl.split("/").pop());
|
229
|
+
let originalUrl = fileUrl;
|
230
|
+
|
217
231
|
if (originalFilename !== file.name) {
|
218
|
-
|
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?";
|
233
|
+
|
219
234
|
if (!confirm(msg)) {
|
220
|
-
this.value =
|
235
|
+
this.value = "";
|
221
236
|
return;
|
222
237
|
}
|
223
|
-
|
238
|
+
|
239
|
+
originalUrl = "file:///fakepath/to/" + encodeURIComponent(file.name);
|
224
240
|
}
|
225
|
-
|
226
|
-
|
241
|
+
|
242
|
+
callback(URL.createObjectURL(file), file.size, originalUrl);
|
243
|
+
overlayManager.close("chromeFileAccessOverlay");
|
227
244
|
}
|
228
245
|
};
|
229
|
-
|
246
|
+
|
247
|
+
overlayManager.open("chromeFileAccessOverlay");
|
230
248
|
});
|
231
249
|
}
|
250
|
+
|
232
251
|
if (window === top) {
|
233
|
-
addEventListener(
|
252
|
+
addEventListener("unload", function () {
|
234
253
|
if (!isRuntimeAvailable()) {
|
235
|
-
localStorage.setItem(
|
254
|
+
localStorage.setItem("unload-" + Date.now() + "-" + document.hidden + "-" + location.href, JSON.stringify(history.state));
|
236
255
|
}
|
237
256
|
});
|
238
257
|
}
|
239
|
-
|
258
|
+
|
259
|
+
let port;
|
260
|
+
|
240
261
|
function setReferer(url, callback) {
|
241
262
|
if (!port) {
|
242
|
-
port = chrome.runtime.connect({
|
263
|
+
port = chrome.runtime.connect({
|
264
|
+
name: "chromecom-referrer"
|
265
|
+
});
|
243
266
|
}
|
267
|
+
|
244
268
|
port.onDisconnect.addListener(onDisconnect);
|
245
269
|
port.onMessage.addListener(onMessage);
|
246
270
|
port.postMessage({
|
247
271
|
referer: window.history.state && window.history.state.chromecomState,
|
248
272
|
requestUrl: url
|
249
273
|
});
|
274
|
+
|
250
275
|
function onMessage(referer) {
|
251
276
|
if (referer) {
|
252
|
-
|
277
|
+
const state = window.history.state || {};
|
253
278
|
state.chromecomState = referer;
|
254
|
-
window.history.replaceState(state,
|
279
|
+
window.history.replaceState(state, "");
|
255
280
|
}
|
281
|
+
|
256
282
|
onCompleted();
|
257
283
|
}
|
284
|
+
|
258
285
|
function onDisconnect() {
|
259
286
|
port = null;
|
260
287
|
callback();
|
261
288
|
}
|
289
|
+
|
262
290
|
function onCompleted() {
|
263
291
|
port.onDisconnect.removeListener(onDisconnect);
|
264
292
|
port.onMessage.removeListener(onMessage);
|
265
293
|
callback();
|
266
294
|
}
|
267
295
|
}
|
268
|
-
var storageArea = chrome.storage.sync || chrome.storage.local;
|
269
296
|
|
270
|
-
|
271
|
-
_inherits(ChromePreferences, _BasePreferences);
|
297
|
+
const storageArea = chrome.storage.sync || chrome.storage.local;
|
272
298
|
|
273
|
-
|
274
|
-
|
275
|
-
|
276
|
-
|
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
|
+
});
|
277
313
|
}
|
278
314
|
|
279
|
-
|
280
|
-
|
281
|
-
|
282
|
-
|
283
|
-
|
284
|
-
|
285
|
-
|
286
|
-
|
287
|
-
|
288
|
-
|
289
|
-
|
290
|
-
|
291
|
-
|
292
|
-
|
293
|
-
|
294
|
-
|
295
|
-
|
296
|
-
|
297
|
-
|
298
|
-
|
299
|
-
|
300
|
-
|
301
|
-
|
302
|
-
|
303
|
-
|
304
|
-
return _context.stop();
|
305
|
-
}
|
315
|
+
async _readFromStorage(prefObj) {
|
316
|
+
return new Promise(resolve => {
|
317
|
+
const getPreferences = defaultPrefs => {
|
318
|
+
if (chrome.runtime.lastError) {
|
319
|
+
defaultPrefs = this.defaults;
|
320
|
+
}
|
321
|
+
|
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;
|
306
340
|
}
|
307
|
-
}, _callee, this);
|
308
|
-
}));
|
309
341
|
|
310
|
-
|
311
|
-
return _ref.apply(this, arguments);
|
312
|
-
}
|
342
|
+
delete items.enableHandToolOnLoad;
|
313
343
|
|
314
|
-
|
315
|
-
|
316
|
-
|
317
|
-
|
318
|
-
|
319
|
-
var _ref2 = _asyncToGenerator( /*#__PURE__*/_regenerator2.default.mark(function _callee2(prefObj) {
|
320
|
-
var _this3 = this;
|
321
|
-
|
322
|
-
return _regenerator2.default.wrap(function _callee2$(_context2) {
|
323
|
-
while (1) {
|
324
|
-
switch (_context2.prev = _context2.next) {
|
325
|
-
case 0:
|
326
|
-
return _context2.abrupt('return', new Promise(function (resolve) {
|
327
|
-
var getPreferences = function getPreferences(defaultPrefs) {
|
328
|
-
if (chrome.runtime.lastError) {
|
329
|
-
defaultPrefs = _this3.defaults;
|
330
|
-
}
|
331
|
-
storageArea.get(defaultPrefs, function (readPrefs) {
|
332
|
-
resolve(readPrefs);
|
333
|
-
});
|
334
|
-
};
|
335
|
-
if (chrome.storage.managed) {
|
336
|
-
var defaultManagedPrefs = Object.assign({
|
337
|
-
enableHandToolOnLoad: false,
|
338
|
-
disableTextLayer: false,
|
339
|
-
enhanceTextSelection: false
|
340
|
-
}, _this3.defaults);
|
341
|
-
chrome.storage.managed.get(defaultManagedPrefs, function (items) {
|
342
|
-
items = items || defaultManagedPrefs;
|
343
|
-
if (items.enableHandToolOnLoad && !items.cursorToolOnLoad) {
|
344
|
-
items.cursorToolOnLoad = 1;
|
345
|
-
}
|
346
|
-
delete items.enableHandToolOnLoad;
|
347
|
-
if (items.textLayerMode !== 1) {
|
348
|
-
if (items.disableTextLayer) {
|
349
|
-
items.textLayerMode = 0;
|
350
|
-
} else if (items.enhanceTextSelection) {
|
351
|
-
items.textLayerMode = 2;
|
352
|
-
}
|
353
|
-
}
|
354
|
-
delete items.disableTextLayer;
|
355
|
-
delete items.enhanceTextSelection;
|
356
|
-
getPreferences(items);
|
357
|
-
});
|
358
|
-
} else {
|
359
|
-
getPreferences(_this3.defaults);
|
360
|
-
}
|
361
|
-
}));
|
362
|
-
|
363
|
-
case 1:
|
364
|
-
case 'end':
|
365
|
-
return _context2.stop();
|
344
|
+
if (items.textLayerMode !== 1) {
|
345
|
+
if (items.disableTextLayer) {
|
346
|
+
items.textLayerMode = 0;
|
347
|
+
} else if (items.enhanceTextSelection) {
|
348
|
+
items.textLayerMode = 2;
|
366
349
|
}
|
367
350
|
}
|
368
|
-
}, _callee2, this);
|
369
|
-
}));
|
370
351
|
|
371
|
-
|
372
|
-
|
352
|
+
delete items.disableTextLayer;
|
353
|
+
delete items.enhanceTextSelection;
|
354
|
+
|
355
|
+
if (!items.showPreviousViewOnLoad && !items.viewOnLoad) {
|
356
|
+
items.viewOnLoad = 1;
|
357
|
+
}
|
358
|
+
|
359
|
+
delete items.showPreviousViewOnLoad;
|
360
|
+
delete items.disablePageMode;
|
361
|
+
getPreferences(items);
|
362
|
+
});
|
363
|
+
} else {
|
364
|
+
getPreferences(this.defaults);
|
373
365
|
}
|
366
|
+
});
|
367
|
+
}
|
374
368
|
|
375
|
-
|
376
|
-
}()
|
377
|
-
}]);
|
369
|
+
}
|
378
370
|
|
379
|
-
|
380
|
-
|
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
|
+
}
|
381
377
|
|
382
|
-
|
383
|
-
|
384
|
-
|
378
|
+
static createDownloadManager(options) {
|
379
|
+
return new _download_manager.DownloadManager(options);
|
380
|
+
}
|
385
381
|
|
386
|
-
|
387
|
-
|
388
|
-
}
|
389
|
-
|
390
|
-
|
391
|
-
|
392
|
-
}
|
393
|
-
|
394
|
-
|
395
|
-
|
396
|
-
|
397
|
-
return new _genericl10n.GenericL10n(navigator.language);
|
398
|
-
};
|
399
|
-
_app.PDFViewerApplication.externalServices = ChromeExternalServices;
|
400
|
-
exports.ChromeCom = ChromeCom;
|
382
|
+
static createPreferences() {
|
383
|
+
return new ChromePreferences();
|
384
|
+
}
|
385
|
+
|
386
|
+
static createL10n(options) {
|
387
|
+
return new _genericl10n.GenericL10n(navigator.language);
|
388
|
+
}
|
389
|
+
|
390
|
+
}
|
391
|
+
|
392
|
+
_app.PDFViewerApplication.externalServices = ChromeExternalServices;
|