pdfjs-dist 2.0.550 → 2.3.200
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/bower.json +1 -1
- package/build/pdf.js +21618 -14369
- package/build/pdf.js.map +1 -1
- package/build/pdf.min.js +1 -1
- package/build/pdf.worker.js +22758 -11399
- package/build/pdf.worker.js.map +1 -1
- package/build/pdf.worker.min.js +1 -1
- package/image_decoders/pdf.image_decoders.js +11500 -0
- package/image_decoders/pdf.image_decoders.js.map +1 -0
- package/image_decoders/pdf.image_decoders.min.js +1 -0
- package/lib/core/annotation.js +767 -258
- package/lib/core/arithmetic_decoder.js +275 -245
- package/lib/core/bidi.js +65 -6
- package/lib/core/ccitt.js +173 -18
- package/lib/core/ccitt_stream.js +15 -6
- package/lib/core/cff_parser.js +433 -61
- package/lib/core/charsets.js +5 -4
- package/lib/core/chunked_stream.js +428 -157
- package/lib/core/cmap.js +326 -87
- package/lib/core/colorspace.js +874 -594
- package/lib/core/core_utils.js +173 -0
- package/lib/core/crypto.js +290 -45
- package/lib/core/document.js +575 -272
- package/lib/core/encodings.js +19 -10
- package/lib/core/evaluator.js +1032 -351
- package/lib/core/font_renderer.js +331 -97
- package/lib/core/fonts.js +813 -196
- package/lib/core/function.js +253 -27
- package/lib/core/glyphlist.js +5 -3
- package/lib/core/image.js +169 -62
- package/lib/core/image_utils.js +111 -0
- package/lib/core/jbig2.js +502 -72
- package/lib/core/jbig2_stream.js +19 -8
- package/lib/core/jpeg_stream.js +38 -13
- package/lib/core/jpg.js +293 -52
- package/lib/core/jpx.js +419 -12
- package/lib/core/jpx_stream.js +18 -6
- package/lib/core/metrics.js +15 -15
- package/lib/core/murmurhash3.js +56 -34
- package/lib/core/obj.js +1368 -500
- package/lib/core/operator_list.js +159 -43
- package/lib/core/parser.js +544 -199
- package/lib/core/pattern.js +170 -21
- package/lib/core/pdf_manager.js +324 -134
- package/lib/core/primitives.js +169 -61
- package/lib/core/ps_parser.js +134 -45
- package/lib/core/standard_fonts.js +17 -17
- package/lib/core/stream.js +327 -34
- package/lib/core/type1_parser.js +148 -8
- package/lib/core/unicode.js +32 -5
- package/lib/core/worker.js +215 -229
- package/lib/core/worker_stream.js +277 -0
- package/lib/display/annotation_layer.js +618 -192
- package/lib/display/api.js +1798 -882
- package/lib/display/api_compatibility.js +5 -10
- package/lib/display/canvas.js +366 -45
- package/lib/display/content_disposition.js +71 -24
- package/lib/display/display_utils.js +777 -0
- package/lib/display/fetch_stream.js +205 -87
- package/lib/display/font_loader.js +468 -236
- package/lib/display/metadata.js +38 -16
- package/lib/display/network.js +635 -428
- package/lib/display/network_utils.js +38 -19
- package/lib/display/node_stream.js +367 -175
- package/lib/display/pattern_helper.js +103 -36
- package/lib/display/svg.js +1232 -519
- package/lib/display/text_layer.js +208 -75
- package/lib/display/transport_stream.js +345 -94
- package/lib/display/webgl.js +64 -18
- package/lib/display/worker_options.js +5 -4
- package/lib/display/xml_parser.js +166 -53
- package/lib/examples/node/domstubs.js +60 -4
- package/lib/pdf.js +35 -14
- package/lib/pdf.worker.js +5 -3
- package/lib/shared/compatibility.js +170 -572
- package/lib/shared/global_scope.js +2 -2
- package/lib/shared/is_node.js +4 -4
- package/lib/shared/message_handler.js +216 -163
- package/lib/shared/streams_polyfill.js +21 -17
- package/lib/shared/util.js +495 -385
- package/lib/test/unit/annotation_spec.js +1464 -401
- package/lib/test/unit/api_spec.js +718 -361
- package/lib/test/unit/bidi_spec.js +7 -7
- package/lib/test/unit/cff_parser_spec.js +54 -11
- package/lib/test/unit/clitests_helper.js +9 -10
- package/lib/test/unit/cmap_spec.js +95 -41
- package/lib/test/unit/colorspace_spec.js +115 -63
- package/lib/test/unit/core_utils_spec.js +191 -0
- package/lib/test/unit/crypto_spec.js +17 -5
- package/lib/test/unit/custom_spec.js +43 -55
- package/lib/test/unit/display_svg_spec.js +34 -18
- package/lib/test/unit/display_utils_spec.js +273 -0
- package/lib/test/unit/document_spec.js +8 -13
- package/lib/test/unit/encodings_spec.js +25 -45
- package/lib/test/unit/evaluator_spec.js +59 -20
- package/lib/test/unit/fetch_stream_spec.js +111 -0
- package/lib/test/unit/function_spec.js +17 -5
- package/lib/test/unit/jasmine-boot.js +33 -20
- package/lib/test/unit/message_handler_spec.js +30 -13
- package/lib/test/unit/metadata_spec.js +71 -11
- package/lib/test/unit/murmurhash3_spec.js +3 -3
- package/lib/test/unit/network_spec.js +22 -55
- package/lib/test/unit/network_utils_spec.js +105 -14
- package/lib/test/unit/node_stream_spec.js +58 -34
- package/lib/test/unit/parser_spec.js +162 -71
- package/lib/test/unit/pdf_find_controller_spec.js +230 -0
- package/lib/test/unit/pdf_find_utils_spec.js +63 -0
- package/lib/test/unit/pdf_history_spec.js +21 -9
- package/lib/test/unit/primitives_spec.js +55 -22
- package/lib/test/unit/stream_spec.js +12 -4
- package/lib/test/unit/test_utils.js +273 -56
- package/lib/test/unit/testreporter.js +21 -3
- package/lib/test/unit/type1_parser_spec.js +9 -7
- package/lib/test/unit/ui_utils_spec.js +236 -36
- package/lib/test/unit/unicode_spec.js +18 -15
- package/lib/test/unit/util_spec.js +87 -128
- package/lib/web/annotation_layer_builder.js +39 -22
- package/lib/web/app.js +1252 -609
- package/lib/web/app_options.js +103 -65
- package/lib/web/base_viewer.js +522 -242
- package/lib/web/chromecom.js +259 -117
- package/lib/web/debugger.js +166 -22
- package/lib/web/download_manager.js +31 -12
- package/lib/web/firefox_print_service.js +27 -14
- package/lib/web/firefoxcom.js +318 -78
- package/lib/web/genericcom.js +89 -30
- package/lib/web/genericl10n.js +142 -30
- package/lib/web/grab_to_pan.js +28 -4
- package/lib/web/interfaces.js +174 -47
- package/lib/web/overlay_manager.js +235 -85
- package/lib/web/password_prompt.js +22 -14
- package/lib/web/pdf_attachment_viewer.js +38 -18
- package/lib/web/pdf_cursor_tools.js +39 -16
- package/lib/web/pdf_document_properties.js +255 -136
- package/lib/web/pdf_find_bar.js +84 -40
- package/lib/web/pdf_find_controller.js +495 -184
- package/lib/web/pdf_find_utils.js +111 -0
- package/lib/web/pdf_history.js +190 -53
- package/lib/web/pdf_link_service.js +144 -79
- package/lib/web/pdf_outline_viewer.js +124 -47
- package/lib/web/pdf_page_view.js +194 -74
- package/lib/web/pdf_presentation_mode.js +99 -34
- package/lib/web/pdf_print_service.js +59 -13
- package/lib/web/pdf_rendering_queue.js +28 -9
- package/lib/web/pdf_sidebar.js +144 -81
- package/lib/web/pdf_sidebar_resizer.js +42 -16
- package/lib/web/pdf_single_page_viewer.js +74 -66
- package/lib/web/pdf_thumbnail_view.js +104 -33
- package/lib/web/pdf_thumbnail_viewer.js +66 -26
- package/lib/web/pdf_viewer.component.js +112 -32
- package/lib/web/pdf_viewer.js +82 -87
- package/lib/web/preferences.js +284 -91
- package/lib/web/secondary_toolbar.js +132 -59
- package/lib/web/text_layer_builder.js +134 -59
- package/lib/web/toolbar.js +80 -43
- package/lib/web/ui_utils.js +400 -134
- package/lib/web/view_history.js +215 -67
- package/lib/web/viewer_compatibility.js +3 -8
- package/package.json +3 -2
- package/web/pdf_viewer.css +23 -15
- package/web/pdf_viewer.js +3429 -1245
- package/web/pdf_viewer.js.map +1 -1
- package/external/streams/streams-lib.js +0 -3962
- package/lib/display/dom_utils.js +0 -429
- package/lib/test/unit/dom_utils_spec.js +0 -89
- package/lib/test/unit/fonts_spec.js +0 -81
- package/lib/web/dom_events.js +0 -137
package/lib/web/ui_utils.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 2019 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,69 +19,215 @@
|
|
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.
|
27
|
+
exports.isValidRotation = isValidRotation;
|
28
|
+
exports.isValidScrollMode = isValidScrollMode;
|
29
|
+
exports.isValidSpreadMode = isValidSpreadMode;
|
30
|
+
exports.isPortraitOrientation = isPortraitOrientation;
|
31
|
+
exports.getGlobalEventBus = getGlobalEventBus;
|
32
|
+
exports.getPDFFileNameFromURL = getPDFFileNameFromURL;
|
33
|
+
exports.noContextMenuHandler = noContextMenuHandler;
|
34
|
+
exports.parseQueryString = parseQueryString;
|
35
|
+
exports.backtrackBeforeAllVisibleElements = backtrackBeforeAllVisibleElements;
|
36
|
+
exports.getVisibleElements = getVisibleElements;
|
37
|
+
exports.roundToDivide = roundToDivide;
|
38
|
+
exports.getPageSizeInches = getPageSizeInches;
|
39
|
+
exports.approximateFraction = approximateFraction;
|
40
|
+
exports.getOutputScale = getOutputScale;
|
41
|
+
exports.scrollIntoView = scrollIntoView;
|
42
|
+
exports.watchScroll = watchScroll;
|
43
|
+
exports.binarySearchFirstItem = binarySearchFirstItem;
|
44
|
+
exports.normalizeWheelEventDelta = normalizeWheelEventDelta;
|
45
|
+
exports.waitOnEventOrTimeout = waitOnEventOrTimeout;
|
46
|
+
exports.moveToEndOfArray = moveToEndOfArray;
|
47
|
+
exports.WaitOnType = exports.animationStarted = exports.ProgressBar = exports.EventBus = exports.NullL10n = exports.SpreadMode = exports.ScrollMode = exports.TextLayerMode = exports.RendererType = exports.PresentationModeState = exports.VERTICAL_PADDING = exports.SCROLLBAR_PADDING = exports.MAX_AUTO_SCALE = exports.UNKNOWN_SCALE = exports.MAX_SCALE = exports.MIN_SCALE = exports.DEFAULT_SCALE = exports.DEFAULT_SCALE_VALUE = exports.CSS_UNITS = void 0;
|
28
48
|
|
29
|
-
var
|
49
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
30
50
|
|
31
|
-
|
51
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
32
52
|
|
33
|
-
|
53
|
+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
34
54
|
|
35
|
-
var
|
55
|
+
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); } }
|
36
56
|
|
37
|
-
function
|
57
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
58
|
+
|
59
|
+
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); }
|
60
|
+
|
61
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); }
|
62
|
+
|
63
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); }
|
64
|
+
|
65
|
+
function _iterableToArrayLimit(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
66
|
+
|
67
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
68
|
+
|
69
|
+
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); } }
|
70
|
+
|
71
|
+
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); }); }; }
|
38
72
|
|
39
73
|
var CSS_UNITS = 96.0 / 72.0;
|
74
|
+
exports.CSS_UNITS = CSS_UNITS;
|
40
75
|
var DEFAULT_SCALE_VALUE = 'auto';
|
76
|
+
exports.DEFAULT_SCALE_VALUE = DEFAULT_SCALE_VALUE;
|
41
77
|
var DEFAULT_SCALE = 1.0;
|
78
|
+
exports.DEFAULT_SCALE = DEFAULT_SCALE;
|
42
79
|
var MIN_SCALE = 0.10;
|
80
|
+
exports.MIN_SCALE = MIN_SCALE;
|
43
81
|
var MAX_SCALE = 10.0;
|
82
|
+
exports.MAX_SCALE = MAX_SCALE;
|
44
83
|
var UNKNOWN_SCALE = 0;
|
84
|
+
exports.UNKNOWN_SCALE = UNKNOWN_SCALE;
|
45
85
|
var MAX_AUTO_SCALE = 1.25;
|
86
|
+
exports.MAX_AUTO_SCALE = MAX_AUTO_SCALE;
|
46
87
|
var SCROLLBAR_PADDING = 40;
|
88
|
+
exports.SCROLLBAR_PADDING = SCROLLBAR_PADDING;
|
47
89
|
var VERTICAL_PADDING = 5;
|
90
|
+
exports.VERTICAL_PADDING = VERTICAL_PADDING;
|
48
91
|
var PresentationModeState = {
|
49
92
|
UNKNOWN: 0,
|
50
93
|
NORMAL: 1,
|
51
94
|
CHANGING: 2,
|
52
95
|
FULLSCREEN: 3
|
53
96
|
};
|
97
|
+
exports.PresentationModeState = PresentationModeState;
|
54
98
|
var RendererType = {
|
55
99
|
CANVAS: 'canvas',
|
56
100
|
SVG: 'svg'
|
57
101
|
};
|
102
|
+
exports.RendererType = RendererType;
|
58
103
|
var TextLayerMode = {
|
59
104
|
DISABLE: 0,
|
60
105
|
ENABLE: 1,
|
61
106
|
ENABLE_ENHANCE: 2
|
62
107
|
};
|
108
|
+
exports.TextLayerMode = TextLayerMode;
|
109
|
+
var ScrollMode = {
|
110
|
+
UNKNOWN: -1,
|
111
|
+
VERTICAL: 0,
|
112
|
+
HORIZONTAL: 1,
|
113
|
+
WRAPPED: 2
|
114
|
+
};
|
115
|
+
exports.ScrollMode = ScrollMode;
|
116
|
+
var SpreadMode = {
|
117
|
+
UNKNOWN: -1,
|
118
|
+
NONE: 0,
|
119
|
+
ODD: 1,
|
120
|
+
EVEN: 2
|
121
|
+
};
|
122
|
+
exports.SpreadMode = SpreadMode;
|
123
|
+
|
63
124
|
function formatL10nValue(text, args) {
|
64
125
|
if (!args) {
|
65
126
|
return text;
|
66
127
|
}
|
128
|
+
|
67
129
|
return text.replace(/\{\{\s*(\w+)\s*\}\}/g, function (all, name) {
|
68
130
|
return name in args ? args[name] : '{{' + name + '}}';
|
69
131
|
});
|
70
132
|
}
|
133
|
+
|
71
134
|
var NullL10n = {
|
72
|
-
getLanguage: function
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
135
|
+
getLanguage: function () {
|
136
|
+
var _getLanguage = _asyncToGenerator(
|
137
|
+
/*#__PURE__*/
|
138
|
+
_regenerator["default"].mark(function _callee() {
|
139
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
140
|
+
while (1) {
|
141
|
+
switch (_context.prev = _context.next) {
|
142
|
+
case 0:
|
143
|
+
return _context.abrupt("return", 'en-us');
|
144
|
+
|
145
|
+
case 1:
|
146
|
+
case "end":
|
147
|
+
return _context.stop();
|
148
|
+
}
|
149
|
+
}
|
150
|
+
}, _callee);
|
151
|
+
}));
|
152
|
+
|
153
|
+
function getLanguage() {
|
154
|
+
return _getLanguage.apply(this, arguments);
|
155
|
+
}
|
156
|
+
|
157
|
+
return getLanguage;
|
158
|
+
}(),
|
159
|
+
getDirection: function () {
|
160
|
+
var _getDirection = _asyncToGenerator(
|
161
|
+
/*#__PURE__*/
|
162
|
+
_regenerator["default"].mark(function _callee2() {
|
163
|
+
return _regenerator["default"].wrap(function _callee2$(_context2) {
|
164
|
+
while (1) {
|
165
|
+
switch (_context2.prev = _context2.next) {
|
166
|
+
case 0:
|
167
|
+
return _context2.abrupt("return", 'ltr');
|
168
|
+
|
169
|
+
case 1:
|
170
|
+
case "end":
|
171
|
+
return _context2.stop();
|
172
|
+
}
|
173
|
+
}
|
174
|
+
}, _callee2);
|
175
|
+
}));
|
176
|
+
|
177
|
+
function getDirection() {
|
178
|
+
return _getDirection.apply(this, arguments);
|
179
|
+
}
|
180
|
+
|
181
|
+
return getDirection;
|
182
|
+
}(),
|
183
|
+
get: function () {
|
184
|
+
var _get = _asyncToGenerator(
|
185
|
+
/*#__PURE__*/
|
186
|
+
_regenerator["default"].mark(function _callee3(property, args, fallback) {
|
187
|
+
return _regenerator["default"].wrap(function _callee3$(_context3) {
|
188
|
+
while (1) {
|
189
|
+
switch (_context3.prev = _context3.next) {
|
190
|
+
case 0:
|
191
|
+
return _context3.abrupt("return", formatL10nValue(fallback, args));
|
192
|
+
|
193
|
+
case 1:
|
194
|
+
case "end":
|
195
|
+
return _context3.stop();
|
196
|
+
}
|
197
|
+
}
|
198
|
+
}, _callee3);
|
199
|
+
}));
|
200
|
+
|
201
|
+
function get(_x, _x2, _x3) {
|
202
|
+
return _get.apply(this, arguments);
|
203
|
+
}
|
204
|
+
|
205
|
+
return get;
|
206
|
+
}(),
|
207
|
+
translate: function () {
|
208
|
+
var _translate = _asyncToGenerator(
|
209
|
+
/*#__PURE__*/
|
210
|
+
_regenerator["default"].mark(function _callee4(element) {
|
211
|
+
return _regenerator["default"].wrap(function _callee4$(_context4) {
|
212
|
+
while (1) {
|
213
|
+
switch (_context4.prev = _context4.next) {
|
214
|
+
case 0:
|
215
|
+
case "end":
|
216
|
+
return _context4.stop();
|
217
|
+
}
|
218
|
+
}
|
219
|
+
}, _callee4);
|
220
|
+
}));
|
221
|
+
|
222
|
+
function translate(_x4) {
|
223
|
+
return _translate.apply(this, arguments);
|
224
|
+
}
|
225
|
+
|
226
|
+
return translate;
|
227
|
+
}()
|
84
228
|
};
|
229
|
+
exports.NullL10n = NullL10n;
|
230
|
+
|
85
231
|
function getOutputScale(ctx) {
|
86
232
|
var devicePixelRatio = window.devicePixelRatio || 1;
|
87
233
|
var backingStoreRatio = ctx.webkitBackingStorePixelRatio || ctx.mozBackingStorePixelRatio || ctx.msBackingStorePixelRatio || ctx.oBackingStorePixelRatio || ctx.backingStorePixelRatio || 1;
|
@@ -92,61 +238,76 @@ function getOutputScale(ctx) {
|
|
92
238
|
scaled: pixelRatio !== 1
|
93
239
|
};
|
94
240
|
}
|
241
|
+
|
95
242
|
function scrollIntoView(element, spot) {
|
96
243
|
var skipOverflowHiddenElements = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
97
|
-
|
98
244
|
var parent = element.offsetParent;
|
245
|
+
|
99
246
|
if (!parent) {
|
100
247
|
console.error('offsetParent is not set -- cannot scroll');
|
101
248
|
return;
|
102
249
|
}
|
250
|
+
|
103
251
|
var offsetY = element.offsetTop + element.clientTop;
|
104
252
|
var offsetX = element.offsetLeft + element.clientLeft;
|
253
|
+
|
105
254
|
while (parent.clientHeight === parent.scrollHeight && parent.clientWidth === parent.scrollWidth || skipOverflowHiddenElements && getComputedStyle(parent).overflow === 'hidden') {
|
106
255
|
if (parent.dataset._scaleY) {
|
107
256
|
offsetY /= parent.dataset._scaleY;
|
108
257
|
offsetX /= parent.dataset._scaleX;
|
109
258
|
}
|
259
|
+
|
110
260
|
offsetY += parent.offsetTop;
|
111
261
|
offsetX += parent.offsetLeft;
|
112
262
|
parent = parent.offsetParent;
|
263
|
+
|
113
264
|
if (!parent) {
|
114
265
|
return;
|
115
266
|
}
|
116
267
|
}
|
268
|
+
|
117
269
|
if (spot) {
|
118
270
|
if (spot.top !== undefined) {
|
119
271
|
offsetY += spot.top;
|
120
272
|
}
|
273
|
+
|
121
274
|
if (spot.left !== undefined) {
|
122
275
|
offsetX += spot.left;
|
123
276
|
parent.scrollLeft = offsetX;
|
124
277
|
}
|
125
278
|
}
|
279
|
+
|
126
280
|
parent.scrollTop = offsetY;
|
127
281
|
}
|
282
|
+
|
128
283
|
function watchScroll(viewAreaElement, callback) {
|
129
284
|
var debounceScroll = function debounceScroll(evt) {
|
130
285
|
if (rAF) {
|
131
286
|
return;
|
132
287
|
}
|
288
|
+
|
133
289
|
rAF = window.requestAnimationFrame(function viewAreaElementScrolled() {
|
134
290
|
rAF = null;
|
135
291
|
var currentX = viewAreaElement.scrollLeft;
|
136
292
|
var lastX = state.lastX;
|
293
|
+
|
137
294
|
if (currentX !== lastX) {
|
138
295
|
state.right = currentX > lastX;
|
139
296
|
}
|
297
|
+
|
140
298
|
state.lastX = currentX;
|
141
299
|
var currentY = viewAreaElement.scrollTop;
|
142
300
|
var lastY = state.lastY;
|
301
|
+
|
143
302
|
if (currentY !== lastY) {
|
144
303
|
state.down = currentY > lastY;
|
145
304
|
}
|
305
|
+
|
146
306
|
state.lastY = currentY;
|
147
307
|
callback(state);
|
148
308
|
});
|
149
309
|
};
|
310
|
+
|
150
311
|
var state = {
|
151
312
|
right: true,
|
152
313
|
down: true,
|
@@ -158,59 +319,75 @@ function watchScroll(viewAreaElement, callback) {
|
|
158
319
|
viewAreaElement.addEventListener('scroll', debounceScroll, true);
|
159
320
|
return state;
|
160
321
|
}
|
322
|
+
|
161
323
|
function parseQueryString(query) {
|
162
324
|
var parts = query.split('&');
|
163
325
|
var params = Object.create(null);
|
326
|
+
|
164
327
|
for (var i = 0, ii = parts.length; i < ii; ++i) {
|
165
328
|
var param = parts[i].split('=');
|
166
329
|
var key = param[0].toLowerCase();
|
167
330
|
var value = param.length > 1 ? param[1] : null;
|
168
331
|
params[decodeURIComponent(key)] = decodeURIComponent(value);
|
169
332
|
}
|
333
|
+
|
170
334
|
return params;
|
171
335
|
}
|
336
|
+
|
172
337
|
function binarySearchFirstItem(items, condition) {
|
173
338
|
var minIndex = 0;
|
174
339
|
var maxIndex = items.length - 1;
|
340
|
+
|
175
341
|
if (items.length === 0 || !condition(items[maxIndex])) {
|
176
342
|
return items.length;
|
177
343
|
}
|
344
|
+
|
178
345
|
if (condition(items[minIndex])) {
|
179
346
|
return minIndex;
|
180
347
|
}
|
348
|
+
|
181
349
|
while (minIndex < maxIndex) {
|
182
350
|
var currentIndex = minIndex + maxIndex >> 1;
|
183
351
|
var currentItem = items[currentIndex];
|
352
|
+
|
184
353
|
if (condition(currentItem)) {
|
185
354
|
maxIndex = currentIndex;
|
186
355
|
} else {
|
187
356
|
minIndex = currentIndex + 1;
|
188
357
|
}
|
189
358
|
}
|
359
|
+
|
190
360
|
return minIndex;
|
191
361
|
}
|
362
|
+
|
192
363
|
function approximateFraction(x) {
|
193
364
|
if (Math.floor(x) === x) {
|
194
365
|
return [x, 1];
|
195
366
|
}
|
367
|
+
|
196
368
|
var xinv = 1 / x;
|
197
369
|
var limit = 8;
|
370
|
+
|
198
371
|
if (xinv > limit) {
|
199
372
|
return [1, limit];
|
200
373
|
} else if (Math.floor(xinv) === xinv) {
|
201
374
|
return [1, xinv];
|
202
375
|
}
|
376
|
+
|
203
377
|
var x_ = x > 1 ? xinv : x;
|
204
378
|
var a = 0,
|
205
379
|
b = 1,
|
206
380
|
c = 1,
|
207
381
|
d = 1;
|
382
|
+
|
208
383
|
while (true) {
|
209
384
|
var p = a + c,
|
210
385
|
q = b + d;
|
386
|
+
|
211
387
|
if (q > limit) {
|
212
388
|
break;
|
213
389
|
}
|
390
|
+
|
214
391
|
if (x_ <= p / q) {
|
215
392
|
c = p;
|
216
393
|
d = q;
|
@@ -219,18 +396,23 @@ function approximateFraction(x) {
|
|
219
396
|
b = q;
|
220
397
|
}
|
221
398
|
}
|
222
|
-
|
399
|
+
|
400
|
+
var result;
|
401
|
+
|
223
402
|
if (x_ - a / b < c / d - x_) {
|
224
403
|
result = x_ === x ? [a, b] : [b, a];
|
225
404
|
} else {
|
226
405
|
result = x_ === x ? [c, d] : [d, c];
|
227
406
|
}
|
407
|
+
|
228
408
|
return result;
|
229
409
|
}
|
410
|
+
|
230
411
|
function roundToDivide(x, div) {
|
231
412
|
var r = x % div;
|
232
413
|
return r === 0 ? x : Math.round(x - r + div);
|
233
414
|
}
|
415
|
+
|
234
416
|
function getPageSizeInches(_ref) {
|
235
417
|
var view = _ref.view,
|
236
418
|
userUnit = _ref.userUnit,
|
@@ -250,69 +432,73 @@ function getPageSizeInches(_ref) {
|
|
250
432
|
height: changeOrientation ? width : height
|
251
433
|
};
|
252
434
|
}
|
435
|
+
|
253
436
|
function backtrackBeforeAllVisibleElements(index, views, top) {
|
254
437
|
if (index < 2) {
|
255
438
|
return index;
|
256
439
|
}
|
440
|
+
|
257
441
|
var elt = views[index].div;
|
258
442
|
var pageTop = elt.offsetTop + elt.clientTop;
|
443
|
+
|
259
444
|
if (pageTop >= top) {
|
260
445
|
elt = views[index - 1].div;
|
261
446
|
pageTop = elt.offsetTop + elt.clientTop;
|
262
447
|
}
|
448
|
+
|
263
449
|
for (var i = index - 2; i >= 0; --i) {
|
264
450
|
elt = views[i].div;
|
451
|
+
|
265
452
|
if (elt.offsetTop + elt.clientTop + elt.clientHeight <= pageTop) {
|
266
453
|
break;
|
267
454
|
}
|
455
|
+
|
268
456
|
index = i;
|
269
457
|
}
|
458
|
+
|
270
459
|
return index;
|
271
460
|
}
|
461
|
+
|
272
462
|
function getVisibleElements(scrollEl, views) {
|
273
463
|
var sortByVisibility = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
274
464
|
var horizontal = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
|
275
|
-
|
276
465
|
var top = scrollEl.scrollTop,
|
277
466
|
bottom = top + scrollEl.clientHeight;
|
278
467
|
var left = scrollEl.scrollLeft,
|
279
468
|
right = left + scrollEl.clientWidth;
|
469
|
+
|
280
470
|
function isElementBottomAfterViewTop(view) {
|
281
471
|
var element = view.div;
|
282
472
|
var elementBottom = element.offsetTop + element.clientTop + element.clientHeight;
|
283
473
|
return elementBottom > top;
|
284
474
|
}
|
475
|
+
|
285
476
|
function isElementRightAfterViewLeft(view) {
|
286
477
|
var element = view.div;
|
287
478
|
var elementRight = element.offsetLeft + element.clientLeft + element.clientWidth;
|
288
479
|
return elementRight > left;
|
289
480
|
}
|
481
|
+
|
290
482
|
var visible = [],
|
291
|
-
|
292
|
-
|
293
|
-
|
294
|
-
|
295
|
-
viewBottom = void 0,
|
296
|
-
hiddenHeight = void 0;
|
297
|
-
var currentWidth = void 0,
|
298
|
-
viewWidth = void 0,
|
299
|
-
viewRight = void 0,
|
300
|
-
hiddenWidth = void 0;
|
301
|
-
var percentVisible = void 0;
|
302
|
-
var firstVisibleElementInd = views.length === 0 ? 0 : binarySearchFirstItem(views, horizontal ? isElementRightAfterViewLeft : isElementBottomAfterViewTop);
|
303
|
-
if (views.length > 0 && !horizontal) {
|
483
|
+
numViews = views.length;
|
484
|
+
var firstVisibleElementInd = numViews === 0 ? 0 : binarySearchFirstItem(views, horizontal ? isElementRightAfterViewLeft : isElementBottomAfterViewTop);
|
485
|
+
|
486
|
+
if (firstVisibleElementInd > 0 && firstVisibleElementInd < numViews && !horizontal) {
|
304
487
|
firstVisibleElementInd = backtrackBeforeAllVisibleElements(firstVisibleElementInd, views, top);
|
305
488
|
}
|
489
|
+
|
306
490
|
var lastEdge = horizontal ? right : -1;
|
307
|
-
|
308
|
-
|
309
|
-
|
310
|
-
|
311
|
-
|
312
|
-
|
313
|
-
|
314
|
-
|
315
|
-
|
491
|
+
|
492
|
+
for (var i = firstVisibleElementInd; i < numViews; i++) {
|
493
|
+
var view = views[i],
|
494
|
+
element = view.div;
|
495
|
+
var currentWidth = element.offsetLeft + element.clientLeft;
|
496
|
+
var currentHeight = element.offsetTop + element.clientTop;
|
497
|
+
var viewWidth = element.clientWidth,
|
498
|
+
viewHeight = element.clientHeight;
|
499
|
+
var viewRight = currentWidth + viewWidth;
|
500
|
+
var viewBottom = currentHeight + viewHeight;
|
501
|
+
|
316
502
|
if (lastEdge === -1) {
|
317
503
|
if (viewBottom >= bottom) {
|
318
504
|
lastEdge = viewBottom;
|
@@ -320,198 +506,303 @@ function getVisibleElements(scrollEl, views) {
|
|
320
506
|
} else if ((horizontal ? currentWidth : currentHeight) > lastEdge) {
|
321
507
|
break;
|
322
508
|
}
|
509
|
+
|
323
510
|
if (viewBottom <= top || currentHeight >= bottom || viewRight <= left || currentWidth >= right) {
|
324
511
|
continue;
|
325
512
|
}
|
326
|
-
|
327
|
-
|
328
|
-
|
513
|
+
|
514
|
+
var hiddenHeight = Math.max(0, top - currentHeight) + Math.max(0, viewBottom - bottom);
|
515
|
+
var hiddenWidth = Math.max(0, left - currentWidth) + Math.max(0, viewRight - right);
|
516
|
+
var percent = (viewHeight - hiddenHeight) * (viewWidth - hiddenWidth) * 100 / viewHeight / viewWidth | 0;
|
329
517
|
visible.push({
|
330
518
|
id: view.id,
|
331
519
|
x: currentWidth,
|
332
520
|
y: currentHeight,
|
333
521
|
view: view,
|
334
|
-
percent:
|
522
|
+
percent: percent
|
335
523
|
});
|
336
524
|
}
|
337
|
-
|
338
|
-
var
|
525
|
+
|
526
|
+
var first = visible[0],
|
527
|
+
last = visible[visible.length - 1];
|
528
|
+
|
339
529
|
if (sortByVisibility) {
|
340
530
|
visible.sort(function (a, b) {
|
341
531
|
var pc = a.percent - b.percent;
|
532
|
+
|
342
533
|
if (Math.abs(pc) > 0.001) {
|
343
534
|
return -pc;
|
344
535
|
}
|
536
|
+
|
345
537
|
return a.id - b.id;
|
346
538
|
});
|
347
539
|
}
|
540
|
+
|
348
541
|
return {
|
349
542
|
first: first,
|
350
543
|
last: last,
|
351
544
|
views: visible
|
352
545
|
};
|
353
546
|
}
|
547
|
+
|
354
548
|
function noContextMenuHandler(evt) {
|
355
549
|
evt.preventDefault();
|
356
550
|
}
|
551
|
+
|
357
552
|
function isDataSchema(url) {
|
358
553
|
var i = 0,
|
359
554
|
ii = url.length;
|
555
|
+
|
360
556
|
while (i < ii && url[i].trim() === '') {
|
361
557
|
i++;
|
362
558
|
}
|
363
|
-
|
559
|
+
|
560
|
+
return url.substring(i, i + 5).toLowerCase() === 'data:';
|
364
561
|
}
|
562
|
+
|
365
563
|
function getPDFFileNameFromURL(url) {
|
366
564
|
var defaultFilename = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'document.pdf';
|
367
565
|
|
566
|
+
if (typeof url !== 'string') {
|
567
|
+
return defaultFilename;
|
568
|
+
}
|
569
|
+
|
368
570
|
if (isDataSchema(url)) {
|
369
571
|
console.warn('getPDFFileNameFromURL: ' + 'ignoring "data:" URL for performance reasons.');
|
370
572
|
return defaultFilename;
|
371
573
|
}
|
574
|
+
|
372
575
|
var reURI = /^(?:(?:[^:]+:)?\/\/[^\/]+)?([^?#]*)(\?[^#]*)?(#.*)?$/;
|
373
576
|
var reFilename = /[^\/?#=]+\.pdf\b(?!.*\.pdf\b)/i;
|
374
577
|
var splitURI = reURI.exec(url);
|
375
578
|
var suggestedFilename = reFilename.exec(splitURI[1]) || reFilename.exec(splitURI[2]) || reFilename.exec(splitURI[3]);
|
579
|
+
|
376
580
|
if (suggestedFilename) {
|
377
581
|
suggestedFilename = suggestedFilename[0];
|
582
|
+
|
378
583
|
if (suggestedFilename.includes('%')) {
|
379
584
|
try {
|
380
585
|
suggestedFilename = reFilename.exec(decodeURIComponent(suggestedFilename))[0];
|
381
586
|
} catch (ex) {}
|
382
587
|
}
|
383
588
|
}
|
589
|
+
|
384
590
|
return suggestedFilename || defaultFilename;
|
385
591
|
}
|
592
|
+
|
386
593
|
function normalizeWheelEventDelta(evt) {
|
387
594
|
var delta = Math.sqrt(evt.deltaX * evt.deltaX + evt.deltaY * evt.deltaY);
|
388
595
|
var angle = Math.atan2(evt.deltaY, evt.deltaX);
|
596
|
+
|
389
597
|
if (-0.25 * Math.PI < angle && angle < 0.75 * Math.PI) {
|
390
598
|
delta = -delta;
|
391
599
|
}
|
600
|
+
|
392
601
|
var MOUSE_DOM_DELTA_PIXEL_MODE = 0;
|
393
602
|
var MOUSE_DOM_DELTA_LINE_MODE = 1;
|
394
603
|
var MOUSE_PIXELS_PER_LINE = 30;
|
395
604
|
var MOUSE_LINES_PER_PAGE = 30;
|
605
|
+
|
396
606
|
if (evt.deltaMode === MOUSE_DOM_DELTA_PIXEL_MODE) {
|
397
607
|
delta /= MOUSE_PIXELS_PER_LINE * MOUSE_LINES_PER_PAGE;
|
398
608
|
} else if (evt.deltaMode === MOUSE_DOM_DELTA_LINE_MODE) {
|
399
609
|
delta /= MOUSE_LINES_PER_PAGE;
|
400
610
|
}
|
611
|
+
|
401
612
|
return delta;
|
402
613
|
}
|
614
|
+
|
403
615
|
function isValidRotation(angle) {
|
404
616
|
return Number.isInteger(angle) && angle % 90 === 0;
|
405
617
|
}
|
618
|
+
|
619
|
+
function isValidScrollMode(mode) {
|
620
|
+
return Number.isInteger(mode) && Object.values(ScrollMode).includes(mode) && mode !== ScrollMode.UNKNOWN;
|
621
|
+
}
|
622
|
+
|
623
|
+
function isValidSpreadMode(mode) {
|
624
|
+
return Number.isInteger(mode) && Object.values(SpreadMode).includes(mode) && mode !== SpreadMode.UNKNOWN;
|
625
|
+
}
|
626
|
+
|
406
627
|
function isPortraitOrientation(size) {
|
407
628
|
return size.width <= size.height;
|
408
629
|
}
|
409
|
-
|
410
|
-
var result = Object.create(null);
|
411
|
-
for (var i in obj) {
|
412
|
-
if (Object.prototype.hasOwnProperty.call(obj, i)) {
|
413
|
-
result[i] = obj[i];
|
414
|
-
}
|
415
|
-
}
|
416
|
-
return result;
|
417
|
-
}
|
630
|
+
|
418
631
|
var WaitOnType = {
|
419
632
|
EVENT: 'event',
|
420
633
|
TIMEOUT: 'timeout'
|
421
634
|
};
|
635
|
+
exports.WaitOnType = WaitOnType;
|
636
|
+
|
422
637
|
function waitOnEventOrTimeout(_ref2) {
|
423
638
|
var target = _ref2.target,
|
424
639
|
name = _ref2.name,
|
425
640
|
_ref2$delay = _ref2.delay,
|
426
|
-
delay = _ref2$delay ===
|
641
|
+
delay = _ref2$delay === void 0 ? 0 : _ref2$delay;
|
642
|
+
return new Promise(function (resolve, reject) {
|
643
|
+
if (_typeof(target) !== 'object' || !(name && typeof name === 'string') || !(Number.isInteger(delay) && delay >= 0)) {
|
644
|
+
throw new Error('waitOnEventOrTimeout - invalid parameters.');
|
645
|
+
}
|
646
|
+
|
647
|
+
function handler(type) {
|
648
|
+
if (target instanceof EventBus) {
|
649
|
+
target.off(name, eventHandler);
|
650
|
+
} else {
|
651
|
+
target.removeEventListener(name, eventHandler);
|
652
|
+
}
|
653
|
+
|
654
|
+
if (timeout) {
|
655
|
+
clearTimeout(timeout);
|
656
|
+
}
|
657
|
+
|
658
|
+
resolve(type);
|
659
|
+
}
|
660
|
+
|
661
|
+
var eventHandler = handler.bind(null, WaitOnType.EVENT);
|
427
662
|
|
428
|
-
if ((typeof target === 'undefined' ? 'undefined' : _typeof(target)) !== 'object' || !(name && typeof name === 'string') || !(Number.isInteger(delay) && delay >= 0)) {
|
429
|
-
return Promise.reject(new Error('waitOnEventOrTimeout - invalid parameters.'));
|
430
|
-
}
|
431
|
-
var capability = (0, _pdf.createPromiseCapability)();
|
432
|
-
function handler(type) {
|
433
663
|
if (target instanceof EventBus) {
|
434
|
-
target.
|
664
|
+
target.on(name, eventHandler);
|
435
665
|
} else {
|
436
|
-
target.
|
437
|
-
}
|
438
|
-
if (timeout) {
|
439
|
-
clearTimeout(timeout);
|
666
|
+
target.addEventListener(name, eventHandler);
|
440
667
|
}
|
441
|
-
|
442
|
-
|
443
|
-
|
444
|
-
|
445
|
-
target.on(name, eventHandler);
|
446
|
-
} else {
|
447
|
-
target.addEventListener(name, eventHandler);
|
448
|
-
}
|
449
|
-
var timeoutHandler = handler.bind(null, WaitOnType.TIMEOUT);
|
450
|
-
var timeout = setTimeout(timeoutHandler, delay);
|
451
|
-
return capability.promise;
|
668
|
+
|
669
|
+
var timeoutHandler = handler.bind(null, WaitOnType.TIMEOUT);
|
670
|
+
var timeout = setTimeout(timeoutHandler, delay);
|
671
|
+
});
|
452
672
|
}
|
673
|
+
|
453
674
|
var animationStarted = new Promise(function (resolve) {
|
454
675
|
if (typeof window === 'undefined') {
|
455
676
|
setTimeout(resolve, 20);
|
456
677
|
return;
|
457
678
|
}
|
679
|
+
|
458
680
|
window.requestAnimationFrame(resolve);
|
459
681
|
});
|
682
|
+
exports.animationStarted = animationStarted;
|
460
683
|
|
461
|
-
var EventBus =
|
684
|
+
var EventBus =
|
685
|
+
/*#__PURE__*/
|
686
|
+
function () {
|
462
687
|
function EventBus() {
|
688
|
+
var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
|
689
|
+
_ref3$dispatchToDOM = _ref3.dispatchToDOM,
|
690
|
+
dispatchToDOM = _ref3$dispatchToDOM === void 0 ? false : _ref3$dispatchToDOM;
|
691
|
+
|
463
692
|
_classCallCheck(this, EventBus);
|
464
693
|
|
465
694
|
this._listeners = Object.create(null);
|
695
|
+
this._dispatchToDOM = dispatchToDOM === true;
|
466
696
|
}
|
467
697
|
|
468
698
|
_createClass(EventBus, [{
|
469
|
-
key:
|
699
|
+
key: "on",
|
470
700
|
value: function on(eventName, listener) {
|
471
701
|
var eventListeners = this._listeners[eventName];
|
702
|
+
|
472
703
|
if (!eventListeners) {
|
473
704
|
eventListeners = [];
|
474
705
|
this._listeners[eventName] = eventListeners;
|
475
706
|
}
|
707
|
+
|
476
708
|
eventListeners.push(listener);
|
477
709
|
}
|
478
710
|
}, {
|
479
|
-
key:
|
711
|
+
key: "off",
|
480
712
|
value: function off(eventName, listener) {
|
481
713
|
var eventListeners = this._listeners[eventName];
|
482
|
-
var i
|
714
|
+
var i;
|
715
|
+
|
483
716
|
if (!eventListeners || (i = eventListeners.indexOf(listener)) < 0) {
|
484
717
|
return;
|
485
718
|
}
|
719
|
+
|
486
720
|
eventListeners.splice(i, 1);
|
487
721
|
}
|
488
722
|
}, {
|
489
|
-
key:
|
723
|
+
key: "dispatch",
|
490
724
|
value: function dispatch(eventName) {
|
491
725
|
var eventListeners = this._listeners[eventName];
|
726
|
+
|
492
727
|
if (!eventListeners || eventListeners.length === 0) {
|
728
|
+
if (this._dispatchToDOM) {
|
729
|
+
var _args5 = Array.prototype.slice.call(arguments, 1);
|
730
|
+
|
731
|
+
this._dispatchDOMEvent(eventName, _args5);
|
732
|
+
}
|
733
|
+
|
493
734
|
return;
|
494
735
|
}
|
736
|
+
|
495
737
|
var args = Array.prototype.slice.call(arguments, 1);
|
496
738
|
eventListeners.slice(0).forEach(function (listener) {
|
497
739
|
listener.apply(null, args);
|
498
740
|
});
|
741
|
+
|
742
|
+
if (this._dispatchToDOM) {
|
743
|
+
this._dispatchDOMEvent(eventName, args);
|
744
|
+
}
|
745
|
+
}
|
746
|
+
}, {
|
747
|
+
key: "_dispatchDOMEvent",
|
748
|
+
value: function _dispatchDOMEvent(eventName) {
|
749
|
+
var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
|
750
|
+
var details = Object.create(null);
|
751
|
+
|
752
|
+
if (args && args.length > 0) {
|
753
|
+
var obj = args[0];
|
754
|
+
|
755
|
+
for (var key in obj) {
|
756
|
+
var value = obj[key];
|
757
|
+
|
758
|
+
if (key === 'source') {
|
759
|
+
if (value === window || value === document) {
|
760
|
+
return;
|
761
|
+
}
|
762
|
+
|
763
|
+
continue;
|
764
|
+
}
|
765
|
+
|
766
|
+
details[key] = value;
|
767
|
+
}
|
768
|
+
}
|
769
|
+
|
770
|
+
var event = document.createEvent('CustomEvent');
|
771
|
+
event.initCustomEvent(eventName, true, true, details);
|
772
|
+
document.dispatchEvent(event);
|
499
773
|
}
|
500
774
|
}]);
|
501
775
|
|
502
776
|
return EventBus;
|
503
777
|
}();
|
504
778
|
|
779
|
+
exports.EventBus = EventBus;
|
780
|
+
var globalEventBus = null;
|
781
|
+
|
782
|
+
function getGlobalEventBus() {
|
783
|
+
var dispatchToDOM = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
784
|
+
|
785
|
+
if (!globalEventBus) {
|
786
|
+
globalEventBus = new EventBus({
|
787
|
+
dispatchToDOM: dispatchToDOM
|
788
|
+
});
|
789
|
+
}
|
790
|
+
|
791
|
+
return globalEventBus;
|
792
|
+
}
|
793
|
+
|
505
794
|
function clamp(v, min, max) {
|
506
795
|
return Math.min(Math.max(v, min), max);
|
507
796
|
}
|
508
797
|
|
509
|
-
var ProgressBar =
|
798
|
+
var ProgressBar =
|
799
|
+
/*#__PURE__*/
|
800
|
+
function () {
|
510
801
|
function ProgressBar(id) {
|
511
|
-
var
|
512
|
-
height =
|
513
|
-
width =
|
514
|
-
units =
|
802
|
+
var _ref4 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
|
803
|
+
height = _ref4.height,
|
804
|
+
width = _ref4.width,
|
805
|
+
units = _ref4.units;
|
515
806
|
|
516
807
|
_classCallCheck(this, ProgressBar);
|
517
808
|
|
@@ -526,57 +817,63 @@ var ProgressBar = function () {
|
|
526
817
|
}
|
527
818
|
|
528
819
|
_createClass(ProgressBar, [{
|
529
|
-
key:
|
820
|
+
key: "_updateBar",
|
530
821
|
value: function _updateBar() {
|
531
822
|
if (this._indeterminate) {
|
532
823
|
this.div.classList.add('indeterminate');
|
533
824
|
this.div.style.width = this.width + this.units;
|
534
825
|
return;
|
535
826
|
}
|
827
|
+
|
536
828
|
this.div.classList.remove('indeterminate');
|
537
829
|
var progressSize = this.width * this._percent / 100;
|
538
830
|
this.div.style.width = progressSize + this.units;
|
539
831
|
}
|
540
832
|
}, {
|
541
|
-
key:
|
833
|
+
key: "setWidth",
|
542
834
|
value: function setWidth(viewer) {
|
543
835
|
if (!viewer) {
|
544
836
|
return;
|
545
837
|
}
|
838
|
+
|
546
839
|
var container = viewer.parentNode;
|
547
840
|
var scrollbarWidth = container.offsetWidth - viewer.offsetWidth;
|
841
|
+
|
548
842
|
if (scrollbarWidth > 0) {
|
549
843
|
this.bar.setAttribute('style', 'width: calc(100% - ' + scrollbarWidth + 'px);');
|
550
844
|
}
|
551
845
|
}
|
552
846
|
}, {
|
553
|
-
key:
|
847
|
+
key: "hide",
|
554
848
|
value: function hide() {
|
555
849
|
if (!this.visible) {
|
556
850
|
return;
|
557
851
|
}
|
852
|
+
|
558
853
|
this.visible = false;
|
559
854
|
this.bar.classList.add('hidden');
|
560
855
|
document.body.classList.remove('loadingInProgress');
|
561
856
|
}
|
562
857
|
}, {
|
563
|
-
key:
|
858
|
+
key: "show",
|
564
859
|
value: function show() {
|
565
860
|
if (this.visible) {
|
566
861
|
return;
|
567
862
|
}
|
863
|
+
|
568
864
|
this.visible = true;
|
569
865
|
document.body.classList.add('loadingInProgress');
|
570
866
|
this.bar.classList.remove('hidden');
|
571
867
|
}
|
572
868
|
}, {
|
573
|
-
key:
|
869
|
+
key: "percent",
|
574
870
|
get: function get() {
|
575
871
|
return this._percent;
|
576
872
|
},
|
577
873
|
set: function set(val) {
|
578
874
|
this._indeterminate = isNaN(val);
|
579
875
|
this._percent = clamp(val, 0, 100);
|
876
|
+
|
580
877
|
this._updateBar();
|
581
878
|
}
|
582
879
|
}]);
|
@@ -584,10 +881,13 @@ var ProgressBar = function () {
|
|
584
881
|
return ProgressBar;
|
585
882
|
}();
|
586
883
|
|
884
|
+
exports.ProgressBar = ProgressBar;
|
885
|
+
|
587
886
|
function moveToEndOfArray(arr, condition) {
|
588
887
|
var moved = [],
|
589
888
|
len = arr.length;
|
590
889
|
var write = 0;
|
890
|
+
|
591
891
|
for (var read = 0; read < len; ++read) {
|
592
892
|
if (condition(arr[read])) {
|
593
893
|
moved.push(arr[read]);
|
@@ -596,42 +896,8 @@ function moveToEndOfArray(arr, condition) {
|
|
596
896
|
++write;
|
597
897
|
}
|
598
898
|
}
|
899
|
+
|
599
900
|
for (var _read = 0; write < len; ++_read, ++write) {
|
600
901
|
arr[write] = moved[_read];
|
601
902
|
}
|
602
|
-
}
|
603
|
-
exports.CSS_UNITS = CSS_UNITS;
|
604
|
-
exports.DEFAULT_SCALE_VALUE = DEFAULT_SCALE_VALUE;
|
605
|
-
exports.DEFAULT_SCALE = DEFAULT_SCALE;
|
606
|
-
exports.MIN_SCALE = MIN_SCALE;
|
607
|
-
exports.MAX_SCALE = MAX_SCALE;
|
608
|
-
exports.UNKNOWN_SCALE = UNKNOWN_SCALE;
|
609
|
-
exports.MAX_AUTO_SCALE = MAX_AUTO_SCALE;
|
610
|
-
exports.SCROLLBAR_PADDING = SCROLLBAR_PADDING;
|
611
|
-
exports.VERTICAL_PADDING = VERTICAL_PADDING;
|
612
|
-
exports.isValidRotation = isValidRotation;
|
613
|
-
exports.isPortraitOrientation = isPortraitOrientation;
|
614
|
-
exports.cloneObj = cloneObj;
|
615
|
-
exports.PresentationModeState = PresentationModeState;
|
616
|
-
exports.RendererType = RendererType;
|
617
|
-
exports.TextLayerMode = TextLayerMode;
|
618
|
-
exports.NullL10n = NullL10n;
|
619
|
-
exports.EventBus = EventBus;
|
620
|
-
exports.ProgressBar = ProgressBar;
|
621
|
-
exports.getPDFFileNameFromURL = getPDFFileNameFromURL;
|
622
|
-
exports.noContextMenuHandler = noContextMenuHandler;
|
623
|
-
exports.parseQueryString = parseQueryString;
|
624
|
-
exports.backtrackBeforeAllVisibleElements = backtrackBeforeAllVisibleElements;
|
625
|
-
exports.getVisibleElements = getVisibleElements;
|
626
|
-
exports.roundToDivide = roundToDivide;
|
627
|
-
exports.getPageSizeInches = getPageSizeInches;
|
628
|
-
exports.approximateFraction = approximateFraction;
|
629
|
-
exports.getOutputScale = getOutputScale;
|
630
|
-
exports.scrollIntoView = scrollIntoView;
|
631
|
-
exports.watchScroll = watchScroll;
|
632
|
-
exports.binarySearchFirstItem = binarySearchFirstItem;
|
633
|
-
exports.normalizeWheelEventDelta = normalizeWheelEventDelta;
|
634
|
-
exports.animationStarted = animationStarted;
|
635
|
-
exports.WaitOnType = WaitOnType;
|
636
|
-
exports.waitOnEventOrTimeout = waitOnEventOrTimeout;
|
637
|
-
exports.moveToEndOfArray = moveToEndOfArray;
|
903
|
+
}
|