pdfjs-dist 2.1.266 → 2.5.207
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of pdfjs-dist might be problematic. Click here for more details.
- package/CODE_OF_CONDUCT.md +15 -0
- package/README.md +4 -0
- package/bower.json +1 -1
- package/build/pdf.js +8382 -18492
- 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 +20417 -29816
- package/build/pdf.worker.js.map +1 -1
- package/build/pdf.worker.min.js +22 -1
- package/es5/build/pdf.js +25688 -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 +58239 -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 +403 -0
- package/es5/web/pdf_viewer.js +7742 -0
- package/es5/web/pdf_viewer.js.map +1 -0
- package/image_decoders/pdf.image_decoders.js +1475 -4897
- 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 +750 -899
- package/lib/core/arithmetic_decoder.js +81 -97
- package/lib/core/bidi.js +54 -46
- package/lib/core/ccitt.js +88 -81
- package/lib/core/ccitt_stream.js +15 -14
- package/lib/core/cff_parser.js +235 -183
- package/lib/core/charsets.js +4 -4
- package/lib/core/chunked_stream.js +447 -542
- package/lib/core/cmap.js +222 -264
- package/lib/core/colorspace.js +699 -863
- package/lib/core/core_utils.js +152 -0
- package/lib/core/crypto.js +379 -437
- package/lib/core/document.js +573 -660
- package/lib/core/encodings.js +15 -15
- package/lib/core/evaluator.js +1103 -868
- package/lib/core/font_renderer.js +135 -178
- package/lib/core/fonts.js +570 -491
- package/lib/core/function.js +291 -288
- package/lib/core/glyphlist.js +4527 -4526
- package/lib/core/image.js +145 -149
- package/lib/core/image_utils.js +170 -0
- package/lib/core/jbig2.js +325 -316
- package/lib/core/jbig2_stream.js +18 -17
- package/lib/core/jpeg_stream.js +21 -26
- package/lib/core/jpg.js +284 -232
- package/lib/core/jpx.js +161 -143
- package/lib/core/jpx_stream.js +28 -28
- package/lib/core/metrics.js +2929 -2929
- package/lib/core/murmurhash3.js +90 -101
- package/lib/core/obj.js +1183 -1157
- package/lib/core/operator_list.js +99 -67
- package/lib/core/parser.js +972 -911
- package/lib/core/pattern.js +87 -70
- package/lib/core/pdf_manager.js +150 -315
- package/lib/core/primitives.js +83 -56
- package/lib/core/ps_parser.js +175 -214
- package/lib/core/standard_fonts.js +237 -236
- package/lib/core/stream.js +94 -74
- package/lib/core/type1_parser.js +87 -69
- package/lib/core/unicode.js +1654 -1654
- package/lib/core/worker.js +193 -390
- package/lib/core/worker_stream.js +168 -0
- package/lib/display/annotation_layer.js +741 -972
- package/lib/display/api.js +1500 -1791
- package/lib/display/api_compatibility.js +12 -17
- package/lib/display/canvas.js +165 -165
- package/lib/display/content_disposition.js +40 -59
- package/lib/display/display_utils.js +515 -0
- package/lib/display/fetch_stream.js +183 -298
- package/lib/display/font_loader.js +273 -413
- package/lib/display/metadata.js +86 -98
- package/lib/display/network.js +266 -359
- package/lib/display/network_utils.js +25 -18
- package/lib/display/node_stream.js +285 -458
- package/lib/display/pattern_helper.js +113 -65
- package/lib/display/svg.js +1166 -901
- package/lib/display/text_layer.js +156 -132
- package/lib/display/transport_stream.js +262 -278
- package/lib/display/webgl.js +70 -83
- package/lib/display/worker_options.js +3 -3
- package/lib/display/xml_parser.js +303 -392
- package/lib/examples/node/domstubs.js +40 -37
- package/lib/pdf.js +226 -59
- package/lib/pdf.worker.js +14 -6
- package/lib/shared/compatibility.js +3 -246
- package/lib/shared/is_node.js +7 -6
- package/lib/shared/message_handler.js +327 -332
- package/lib/shared/util.js +266 -416
- package/lib/test/unit/annotation_spec.js +1555 -701
- package/lib/test/unit/api_spec.js +802 -604
- package/lib/test/unit/bidi_spec.js +7 -7
- package/lib/test/unit/cff_parser_spec.js +84 -69
- package/lib/test/unit/clitests_helper.js +7 -9
- package/lib/test/unit/cmap_spec.js +74 -76
- package/lib/test/unit/colorspace_spec.js +166 -161
- package/lib/test/unit/core_utils_spec.js +211 -0
- package/lib/test/unit/crypto_spec.js +181 -181
- package/lib/test/unit/custom_spec.js +20 -22
- package/lib/test/unit/display_svg_spec.js +34 -39
- package/lib/test/unit/display_utils_spec.js +263 -0
- package/lib/test/unit/document_spec.js +16 -21
- package/lib/test/unit/encodings_spec.js +12 -34
- package/lib/test/unit/evaluator_spec.js +83 -83
- package/lib/test/unit/fetch_stream_spec.js +111 -0
- package/lib/test/unit/function_spec.js +206 -204
- package/lib/test/unit/jasmine-boot.js +46 -30
- package/lib/test/unit/message_handler_spec.js +173 -159
- package/lib/test/unit/metadata_spec.js +69 -69
- package/lib/test/unit/murmurhash3_spec.js +12 -12
- package/lib/test/unit/network_spec.js +13 -61
- package/lib/test/unit/network_utils_spec.js +183 -119
- package/lib/test/unit/node_stream_spec.js +78 -92
- package/lib/test/unit/parser_spec.js +172 -114
- package/lib/test/unit/pdf_find_controller_spec.js +55 -86
- package/lib/test/unit/pdf_find_utils_spec.js +32 -32
- package/lib/test/unit/pdf_history_spec.js +32 -32
- package/lib/test/unit/primitives_spec.js +140 -125
- package/lib/test/unit/stream_spec.js +16 -14
- package/lib/test/unit/test_utils.js +131 -143
- package/lib/test/unit/testreporter.js +19 -19
- package/lib/test/unit/type1_parser_spec.js +42 -42
- package/lib/test/unit/ui_utils_spec.js +297 -459
- package/lib/test/unit/unicode_spec.js +38 -38
- package/lib/test/unit/util_spec.js +121 -305
- package/lib/web/annotation_layer_builder.js +66 -103
- package/lib/web/app.js +1328 -1214
- package/lib/web/app_options.js +105 -107
- package/lib/web/base_viewer.js +824 -838
- package/lib/web/chromecom.js +165 -252
- package/lib/web/debugger.js +149 -205
- package/lib/web/download_manager.js +39 -55
- package/lib/web/firefox_print_service.js +37 -27
- package/lib/web/firefoxcom.js +212 -363
- package/lib/web/genericcom.js +26 -108
- package/lib/web/genericl10n.js +24 -153
- package/lib/web/grab_to_pan.js +32 -30
- package/lib/web/interfaces.js +80 -254
- package/lib/web/overlay_manager.js +70 -246
- package/lib/web/password_prompt.js +38 -64
- package/lib/web/pdf_attachment_viewer.js +113 -131
- package/lib/web/pdf_cursor_tools.js +75 -102
- package/lib/web/pdf_document_properties.js +221 -306
- package/lib/web/pdf_find_bar.js +136 -170
- package/lib/web/pdf_find_controller.js +491 -548
- package/lib/web/pdf_find_utils.js +13 -13
- package/lib/web/pdf_history.js +397 -406
- package/lib/web/pdf_link_service.js +304 -348
- package/lib/web/pdf_outline_viewer.js +140 -175
- package/lib/web/pdf_page_view.js +452 -523
- package/lib/web/pdf_presentation_mode.js +308 -357
- package/lib/web/pdf_print_service.js +90 -104
- package/lib/web/pdf_rendering_queue.js +84 -108
- package/lib/web/pdf_sidebar.js +276 -306
- package/lib/web/pdf_sidebar_resizer.js +92 -119
- package/lib/web/pdf_single_page_viewer.js +77 -126
- package/lib/web/pdf_thumbnail_view.js +276 -297
- package/lib/web/pdf_thumbnail_viewer.js +186 -206
- package/lib/web/pdf_viewer.component.js +20 -21
- package/lib/web/pdf_viewer.js +55 -115
- package/lib/web/preferences.js +82 -286
- package/lib/web/secondary_toolbar.js +164 -196
- package/lib/web/text_layer_builder.js +282 -339
- package/lib/web/toolbar.js +217 -210
- package/lib/web/ui_utils.js +267 -420
- package/lib/web/view_history.js +52 -226
- package/lib/web/viewer_compatibility.js +21 -6
- package/package.json +2 -9
- package/web/pdf_viewer.css +35 -25
- package/web/pdf_viewer.js +3489 -4855
- 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 -494
- package/lib/shared/streams_polyfill.js +0 -43
- package/lib/shared/url_polyfill.js +0 -56
- package/lib/test/unit/dom_utils_spec.js +0 -89
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.
|
@@ -26,56 +26,28 @@ Object.defineProperty(exports, "__esModule", {
|
|
26
26
|
});
|
27
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 _genericl10n = require("./genericl10n");
|
40
|
-
|
41
|
-
var _pdf = require("../pdf");
|
42
|
-
|
43
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
44
|
-
|
45
|
-
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); }
|
46
|
-
|
47
|
-
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); } }
|
48
|
-
|
49
|
-
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); }); }; }
|
50
|
-
|
51
|
-
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
52
|
-
|
53
|
-
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); } }
|
54
|
-
|
55
|
-
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
56
|
-
|
57
|
-
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
|
58
|
-
|
59
|
-
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
60
|
-
|
61
|
-
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
62
|
-
|
63
|
-
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); }
|
64
|
-
|
65
|
-
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");
|
66
38
|
|
67
39
|
{
|
68
|
-
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.');
|
69
41
|
}
|
70
|
-
|
71
|
-
request
|
72
|
-
|
73
|
-
action
|
74
|
-
data
|
42
|
+
const ChromeCom = {
|
43
|
+
request(action, data, callback) {
|
44
|
+
const message = {
|
45
|
+
action,
|
46
|
+
data
|
75
47
|
};
|
76
48
|
|
77
49
|
if (!chrome.runtime) {
|
78
|
-
console.error(
|
50
|
+
console.error("chrome.runtime is undefined.");
|
79
51
|
|
80
52
|
if (callback) {
|
81
53
|
callback();
|
@@ -86,8 +58,9 @@ var ChromeCom = {
|
|
86
58
|
chrome.runtime.sendMessage(message);
|
87
59
|
}
|
88
60
|
},
|
89
|
-
|
90
|
-
|
61
|
+
|
62
|
+
resolvePDFFile(file, overlayManager, callback) {
|
63
|
+
file = file.replace(/^drive:/i, "filesystem:" + location.origin + "/external/");
|
91
64
|
|
92
65
|
if (/^https?:/.test(file)) {
|
93
66
|
setReferer(file, function () {
|
@@ -99,7 +72,7 @@ var ChromeCom = {
|
|
99
72
|
if (/^file?:/.test(file)) {
|
100
73
|
getEmbedderOrigin(function (origin) {
|
101
74
|
if (origin && !/^file:|^chrome-extension:/.test(origin)) {
|
102
|
-
_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.");
|
103
76
|
|
104
77
|
return;
|
105
78
|
}
|
@@ -117,13 +90,14 @@ var ChromeCom = {
|
|
117
90
|
|
118
91
|
callback(file);
|
119
92
|
}
|
93
|
+
|
120
94
|
};
|
121
95
|
exports.ChromeCom = ChromeCom;
|
122
96
|
|
123
97
|
function getEmbedderOrigin(callback) {
|
124
|
-
|
98
|
+
const origin = window === top ? location.origin : location.ancestorOrigins[0];
|
125
99
|
|
126
|
-
if (origin ===
|
100
|
+
if (origin === "null") {
|
127
101
|
getParentOrigin(callback);
|
128
102
|
} else {
|
129
103
|
callback(origin);
|
@@ -131,11 +105,11 @@ function getEmbedderOrigin(callback) {
|
|
131
105
|
}
|
132
106
|
|
133
107
|
function getParentOrigin(callback) {
|
134
|
-
ChromeCom.request(
|
108
|
+
ChromeCom.request("getParentOrigin", null, callback);
|
135
109
|
}
|
136
110
|
|
137
111
|
function isAllowedFileSchemeAccess(callback) {
|
138
|
-
ChromeCom.request(
|
112
|
+
ChromeCom.request("isAllowedFileSchemeAccess", null, callback);
|
139
113
|
}
|
140
114
|
|
141
115
|
function isRuntimeAvailable() {
|
@@ -154,140 +128,140 @@ function reloadIfRuntimeIsUnavailable() {
|
|
154
128
|
}
|
155
129
|
}
|
156
130
|
|
157
|
-
|
131
|
+
let chromeFileAccessOverlayPromise;
|
158
132
|
|
159
133
|
function requestAccessToLocalFile(fileUrl, overlayManager, callback) {
|
160
|
-
|
134
|
+
let onCloseOverlay = null;
|
161
135
|
|
162
136
|
if (top !== window) {
|
163
|
-
window.addEventListener(
|
137
|
+
window.addEventListener("focus", reloadIfRuntimeIsUnavailable);
|
164
138
|
|
165
|
-
onCloseOverlay = function
|
166
|
-
window.removeEventListener(
|
139
|
+
onCloseOverlay = function () {
|
140
|
+
window.removeEventListener("focus", reloadIfRuntimeIsUnavailable);
|
167
141
|
reloadIfRuntimeIsUnavailable();
|
168
|
-
overlayManager.close(
|
142
|
+
overlayManager.close("chromeFileAccessOverlay");
|
169
143
|
};
|
170
144
|
}
|
171
145
|
|
172
146
|
if (!chromeFileAccessOverlayPromise) {
|
173
|
-
chromeFileAccessOverlayPromise = overlayManager.register(
|
147
|
+
chromeFileAccessOverlayPromise = overlayManager.register("chromeFileAccessOverlay", document.getElementById("chromeFileAccessOverlay"), onCloseOverlay, true);
|
174
148
|
}
|
175
149
|
|
176
150
|
chromeFileAccessOverlayPromise.then(function () {
|
177
|
-
|
178
|
-
document.getElementById(
|
179
|
-
|
180
|
-
"am": "\u1208\
|
181
|
-
"ar": "\
|
182
|
-
"bg": "\u0414\u0430 \u0441\u0435 \u0440\u0430\u0437\u0440\u0435\u0448\u0438 \u0434\
|
183
|
-
"bn": "\
|
184
|
-
"ca": "Permet l'acc\
|
185
|
-
"cs": "Umo\
|
186
|
-
"da": "Tillad adgang til webadresser p\
|
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",
|
187
161
|
"de": "Zugriff auf Datei-URLs zulassen",
|
188
|
-
"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",
|
189
163
|
"en-GB": "Allow access to file URLs",
|
190
164
|
"es": "Permitir acceso a URL de archivo",
|
191
165
|
"es-419": "Permitir el acceso a las URL del archivo",
|
192
|
-
"et": "Luba juurdep\
|
193
|
-
"fa": "\
|
194
|
-
"fi": "Salli tiedostojen URL-osoitteiden k\
|
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",
|
195
169
|
"fil": "Payagan ang access na mag-file ng mga URL",
|
196
|
-
"fr": "Autoriser l'acc\
|
197
|
-
"gu": "URL \
|
198
|
-
"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",
|
199
173
|
"hr": "Dozvoli pristup URL-ovima datoteke",
|
200
|
-
"hu": "F\
|
174
|
+
"hu": "F\u00e1jl URL-ekhez val\u00f3 hozz\u00e1f\u00e9r\u00e9s enged\u00e9lyez\u00e9se",
|
201
175
|
"id": "Izinkan akses ke URL file",
|
202
176
|
"it": "Consenti l'accesso agli URL dei file",
|
203
|
-
"iw": "\
|
204
|
-
"ja": "\
|
205
|
-
"kn": "URL \
|
206
|
-
"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",
|
207
181
|
"lt": "Leisti pasiekti failo URL",
|
208
|
-
"lv": "At\
|
209
|
-
"ml": "URL \
|
210
|
-
"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",
|
211
185
|
"ms": "Membenarkan akses ke URL fail",
|
212
186
|
"nl": "Toegang tot bestand-URL's toestaan",
|
213
187
|
"no": "Tillat tilgang til filnettadresser",
|
214
|
-
"pl": "Zezwalaj na dost\u0119p do adres\
|
188
|
+
"pl": "Zezwalaj na dost\u0119p do adres\u00f3w URL plik\u00f3w",
|
215
189
|
"pt-BR": "Permitir acesso aos URLs do arquivo",
|
216
190
|
"pt-PT": "Permitir acesso a URLs de ficheiro",
|
217
191
|
"ro": "Permite accesul la adresele URL de fi\u0219iere",
|
218
|
-
"ru": "\u0420\u0430\u0437\u0440\u0435\u0448\u0438\u0442\
|
219
|
-
"sk": "Povoli\u0165 pr\
|
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",
|
220
194
|
"sl": "Dovoli dostop do URL-jev datoteke",
|
221
|
-
"sr": "\u0414\
|
222
|
-
"sv": "Till\
|
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",
|
223
197
|
"sw": "Ruhusu kufikia URL za faili",
|
224
|
-
"ta": "\
|
225
|
-
"te": "\
|
226
|
-
"th": "\
|
227
|
-
"tr": "Dosya URL'lerine eri\
|
228
|
-
"uk": "\
|
229
|
-
"vi": "Cho ph\
|
230
|
-
"zh-CN": "\u5141\
|
231
|
-
"zh-TW": "\u5141\
|
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"
|
232
206
|
}[chrome.i18n.getUILanguage && chrome.i18n.getUILanguage()];
|
233
207
|
|
234
208
|
if (i18nFileAccessLabel) {
|
235
|
-
document.getElementById(
|
209
|
+
document.getElementById("chrome-file-access-label").textContent = i18nFileAccessLabel;
|
236
210
|
}
|
237
211
|
|
238
|
-
|
239
|
-
link.href =
|
212
|
+
const link = document.getElementById("chrome-link-to-extensions-page");
|
213
|
+
link.href = "chrome://extensions/?id=" + chrome.runtime.id;
|
240
214
|
|
241
215
|
link.onclick = function (e) {
|
242
216
|
e.preventDefault();
|
243
|
-
ChromeCom.request(
|
217
|
+
ChromeCom.request("openExtensionsPageForFileAccess", {
|
244
218
|
newTab: e.ctrlKey || e.metaKey || e.button === 1 || window !== top
|
245
219
|
});
|
246
220
|
};
|
247
221
|
|
248
|
-
document.getElementById(
|
222
|
+
document.getElementById("chrome-url-of-local-file").textContent = fileUrl;
|
249
223
|
|
250
|
-
document.getElementById(
|
251
|
-
|
224
|
+
document.getElementById("chrome-file-fallback").onchange = function () {
|
225
|
+
const file = this.files[0];
|
252
226
|
|
253
227
|
if (file) {
|
254
|
-
|
255
|
-
|
228
|
+
const originalFilename = decodeURIComponent(fileUrl.split("/").pop());
|
229
|
+
let originalUrl = fileUrl;
|
256
230
|
|
257
231
|
if (originalFilename !== file.name) {
|
258
|
-
|
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?";
|
259
233
|
|
260
234
|
if (!confirm(msg)) {
|
261
|
-
this.value =
|
235
|
+
this.value = "";
|
262
236
|
return;
|
263
237
|
}
|
264
238
|
|
265
|
-
originalUrl =
|
239
|
+
originalUrl = "file:///fakepath/to/" + encodeURIComponent(file.name);
|
266
240
|
}
|
267
241
|
|
268
|
-
callback(
|
269
|
-
overlayManager.close(
|
242
|
+
callback(URL.createObjectURL(file), file.size, originalUrl);
|
243
|
+
overlayManager.close("chromeFileAccessOverlay");
|
270
244
|
}
|
271
245
|
};
|
272
246
|
|
273
|
-
overlayManager.open(
|
247
|
+
overlayManager.open("chromeFileAccessOverlay");
|
274
248
|
});
|
275
249
|
}
|
276
250
|
|
277
251
|
if (window === top) {
|
278
|
-
addEventListener(
|
252
|
+
addEventListener("unload", function () {
|
279
253
|
if (!isRuntimeAvailable()) {
|
280
|
-
localStorage.setItem(
|
254
|
+
localStorage.setItem("unload-" + Date.now() + "-" + document.hidden + "-" + location.href, JSON.stringify(history.state));
|
281
255
|
}
|
282
256
|
});
|
283
257
|
}
|
284
258
|
|
285
|
-
|
259
|
+
let port;
|
286
260
|
|
287
261
|
function setReferer(url, callback) {
|
288
262
|
if (!port) {
|
289
263
|
port = chrome.runtime.connect({
|
290
|
-
name:
|
264
|
+
name: "chromecom-referrer"
|
291
265
|
});
|
292
266
|
}
|
293
267
|
|
@@ -300,9 +274,9 @@ function setReferer(url, callback) {
|
|
300
274
|
|
301
275
|
function onMessage(referer) {
|
302
276
|
if (referer) {
|
303
|
-
|
277
|
+
const state = window.history.state || {};
|
304
278
|
state.chromecomState = referer;
|
305
|
-
window.history.replaceState(state,
|
279
|
+
window.history.replaceState(state, "");
|
306
280
|
}
|
307
281
|
|
308
282
|
onCompleted();
|
@@ -320,160 +294,99 @@ function setReferer(url, callback) {
|
|
320
294
|
}
|
321
295
|
}
|
322
296
|
|
323
|
-
|
297
|
+
const storageArea = chrome.storage.sync || chrome.storage.local;
|
298
|
+
|
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
|
+
}
|
324
314
|
|
325
|
-
|
326
|
-
|
327
|
-
|
328
|
-
|
315
|
+
async _readFromStorage(prefObj) {
|
316
|
+
return new Promise(resolve => {
|
317
|
+
const getPreferences = defaultPrefs => {
|
318
|
+
if (chrome.runtime.lastError) {
|
319
|
+
defaultPrefs = this.defaults;
|
320
|
+
}
|
329
321
|
|
330
|
-
|
331
|
-
|
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
|
+
}
|
332
341
|
|
333
|
-
|
334
|
-
}
|
342
|
+
delete items.enableHandToolOnLoad;
|
335
343
|
|
336
|
-
|
337
|
-
|
338
|
-
|
339
|
-
|
340
|
-
|
341
|
-
_regenerator.default.mark(function _callee(prefObj) {
|
342
|
-
var _this = this;
|
343
|
-
|
344
|
-
return _regenerator.default.wrap(function _callee$(_context) {
|
345
|
-
while (1) {
|
346
|
-
switch (_context.prev = _context.next) {
|
347
|
-
case 0:
|
348
|
-
return _context.abrupt("return", new Promise(function (resolve) {
|
349
|
-
if (prefObj === _this.defaults) {
|
350
|
-
var keysToRemove = Object.keys(_this.defaults);
|
351
|
-
storageArea.remove(keysToRemove, function () {
|
352
|
-
resolve();
|
353
|
-
});
|
354
|
-
} else {
|
355
|
-
storageArea.set(prefObj, function () {
|
356
|
-
resolve();
|
357
|
-
});
|
358
|
-
}
|
359
|
-
}));
|
360
|
-
|
361
|
-
case 1:
|
362
|
-
case "end":
|
363
|
-
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;
|
364
349
|
}
|
365
350
|
}
|
366
|
-
}, _callee, this);
|
367
|
-
}));
|
368
351
|
|
369
|
-
|
370
|
-
|
371
|
-
}
|
352
|
+
delete items.disableTextLayer;
|
353
|
+
delete items.enhanceTextSelection;
|
372
354
|
|
373
|
-
|
374
|
-
|
375
|
-
}, {
|
376
|
-
key: "_readFromStorage",
|
377
|
-
value: function () {
|
378
|
-
var _readFromStorage2 = _asyncToGenerator(
|
379
|
-
/*#__PURE__*/
|
380
|
-
_regenerator.default.mark(function _callee2(prefObj) {
|
381
|
-
var _this2 = this;
|
382
|
-
|
383
|
-
return _regenerator.default.wrap(function _callee2$(_context2) {
|
384
|
-
while (1) {
|
385
|
-
switch (_context2.prev = _context2.next) {
|
386
|
-
case 0:
|
387
|
-
return _context2.abrupt("return", new Promise(function (resolve) {
|
388
|
-
var getPreferences = function getPreferences(defaultPrefs) {
|
389
|
-
if (chrome.runtime.lastError) {
|
390
|
-
defaultPrefs = _this2.defaults;
|
391
|
-
}
|
392
|
-
|
393
|
-
storageArea.get(defaultPrefs, function (readPrefs) {
|
394
|
-
resolve(readPrefs);
|
395
|
-
});
|
396
|
-
};
|
397
|
-
|
398
|
-
if (chrome.storage.managed) {
|
399
|
-
var defaultManagedPrefs = Object.assign({
|
400
|
-
enableHandToolOnLoad: false,
|
401
|
-
disableTextLayer: false,
|
402
|
-
enhanceTextSelection: false,
|
403
|
-
showPreviousViewOnLoad: true,
|
404
|
-
disablePageMode: false
|
405
|
-
}, _this2.defaults);
|
406
|
-
chrome.storage.managed.get(defaultManagedPrefs, function (items) {
|
407
|
-
items = items || defaultManagedPrefs;
|
408
|
-
|
409
|
-
if (items.enableHandToolOnLoad && !items.cursorToolOnLoad) {
|
410
|
-
items.cursorToolOnLoad = 1;
|
411
|
-
}
|
412
|
-
|
413
|
-
delete items.enableHandToolOnLoad;
|
414
|
-
|
415
|
-
if (items.textLayerMode !== 1) {
|
416
|
-
if (items.disableTextLayer) {
|
417
|
-
items.textLayerMode = 0;
|
418
|
-
} else if (items.enhanceTextSelection) {
|
419
|
-
items.textLayerMode = 2;
|
420
|
-
}
|
421
|
-
}
|
422
|
-
|
423
|
-
delete items.disableTextLayer;
|
424
|
-
delete items.enhanceTextSelection;
|
425
|
-
|
426
|
-
if (!items.showPreviousViewOnLoad && !items.viewOnLoad) {
|
427
|
-
items.viewOnLoad = 1;
|
428
|
-
}
|
429
|
-
|
430
|
-
delete items.showPreviousViewOnLoad;
|
431
|
-
delete items.disablePageMode;
|
432
|
-
getPreferences(items);
|
433
|
-
});
|
434
|
-
} else {
|
435
|
-
getPreferences(_this2.defaults);
|
436
|
-
}
|
437
|
-
}));
|
438
|
-
|
439
|
-
case 1:
|
440
|
-
case "end":
|
441
|
-
return _context2.stop();
|
442
|
-
}
|
355
|
+
if (!items.showPreviousViewOnLoad && !items.viewOnLoad) {
|
356
|
+
items.viewOnLoad = 1;
|
443
357
|
}
|
444
|
-
}, _callee2, this);
|
445
|
-
}));
|
446
358
|
|
447
|
-
|
448
|
-
|
359
|
+
delete items.showPreviousViewOnLoad;
|
360
|
+
delete items.disablePageMode;
|
361
|
+
getPreferences(items);
|
362
|
+
});
|
363
|
+
} else {
|
364
|
+
getPreferences(this.defaults);
|
449
365
|
}
|
366
|
+
});
|
367
|
+
}
|
450
368
|
|
451
|
-
|
452
|
-
}()
|
453
|
-
}]);
|
454
|
-
|
455
|
-
return ChromePreferences;
|
456
|
-
}(_preferences.BasePreferences);
|
369
|
+
}
|
457
370
|
|
458
|
-
|
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
|
+
}
|
459
377
|
|
460
|
-
|
461
|
-
|
462
|
-
|
463
|
-
callbacks.onOpenWithURL(url, length, originalUrl);
|
464
|
-
});
|
465
|
-
};
|
378
|
+
static createDownloadManager(options) {
|
379
|
+
return new _download_manager.DownloadManager(options);
|
380
|
+
}
|
466
381
|
|
467
|
-
|
468
|
-
|
469
|
-
}
|
382
|
+
static createPreferences() {
|
383
|
+
return new ChromePreferences();
|
384
|
+
}
|
470
385
|
|
471
|
-
|
472
|
-
|
473
|
-
}
|
386
|
+
static createL10n(options) {
|
387
|
+
return new _genericl10n.GenericL10n(navigator.language);
|
388
|
+
}
|
474
389
|
|
475
|
-
|
476
|
-
return new _genericl10n.GenericL10n(navigator.language);
|
477
|
-
};
|
390
|
+
}
|
478
391
|
|
479
392
|
_app.PDFViewerApplication.externalServices = ChromeExternalServices;
|