Browse Source

PDF.js version 1.8.252 - See mozilla/pdf.js@5fe26bb9da4fca7c9f8424734f99b353ba96ff39

master v1.8.252
pdfjsbot 8 years ago
parent
commit
c039c5001c
  1. 2
      bower.json
  2. 12
      build/pdf.combined.js
  3. 12
      build/pdf.js
  4. 4
      build/pdf.min.js
  5. 4
      build/pdf.worker.js
  6. 4
      lib/display/api.js
  7. 4
      lib/display/global.js
  8. 4
      lib/pdf.js
  9. 4
      lib/pdf.worker.js
  10. 94
      lib/web/app.js
  11. 90
      lib/web/chromecom.js
  12. 59
      lib/web/firefoxcom.js
  13. 44
      lib/web/genericcom.js
  14. 11
      lib/web/hand_tool.js
  15. 60
      lib/web/pdf_attachment_viewer.js
  16. 86
      lib/web/pdf_outline_viewer.js
  17. 184
      lib/web/pdf_sidebar.js
  18. 188
      lib/web/preferences.js
  19. 2
      package.json

2
bower.json

@ -1,6 +1,6 @@ @@ -1,6 +1,6 @@
{
"name": "pdfjs-dist",
"version": "1.8.241",
"version": "1.8.252",
"main": [
"build/pdf.js",
"build/pdf.worker.js"

12
build/pdf.combined.js

@ -12722,8 +12722,8 @@ var _UnsupportedManager = function UnsupportedManagerClosure() { @@ -12722,8 +12722,8 @@ var _UnsupportedManager = function UnsupportedManagerClosure() {
}();
var version, build;
{
exports.version = version = '1.8.241';
exports.build = build = 'c44fd3d6';
exports.version = version = '1.8.252';
exports.build = build = '5fe26bb9';
}
exports.getDocument = getDocument;
exports.PDFDataRangeTransport = PDFDataRangeTransport;
@ -28016,8 +28016,8 @@ if (!_util.globalScope.PDFJS) { @@ -28016,8 +28016,8 @@ if (!_util.globalScope.PDFJS) {
}
var PDFJS = _util.globalScope.PDFJS;
{
PDFJS.version = '1.8.241';
PDFJS.build = 'c44fd3d6';
PDFJS.version = '1.8.252';
PDFJS.build = '5fe26bb9';
}
PDFJS.pdfBug = false;
if (PDFJS.verbosity !== undefined) {
@ -43534,8 +43534,8 @@ exports.TilingPattern = TilingPattern; @@ -43534,8 +43534,8 @@ exports.TilingPattern = TilingPattern;
"use strict";
var pdfjsVersion = '1.8.241';
var pdfjsBuild = 'c44fd3d6';
var pdfjsVersion = '1.8.252';
var pdfjsBuild = '5fe26bb9';
var pdfjsSharedUtil = __w_pdfjs_require__(0);
var pdfjsDisplayGlobal = __w_pdfjs_require__(26);
var pdfjsDisplayAPI = __w_pdfjs_require__(10);

12
build/pdf.js

@ -3431,8 +3431,8 @@ var _UnsupportedManager = function UnsupportedManagerClosure() { @@ -3431,8 +3431,8 @@ var _UnsupportedManager = function UnsupportedManagerClosure() {
}();
var version, build;
{
exports.version = version = '1.8.241';
exports.build = build = 'c44fd3d6';
exports.version = version = '1.8.252';
exports.build = build = '5fe26bb9';
}
exports.getDocument = getDocument;
exports.PDFDataRangeTransport = PDFDataRangeTransport;
@ -5399,8 +5399,8 @@ if (!_util.globalScope.PDFJS) { @@ -5399,8 +5399,8 @@ if (!_util.globalScope.PDFJS) {
}
var PDFJS = _util.globalScope.PDFJS;
{
PDFJS.version = '1.8.241';
PDFJS.build = 'c44fd3d6';
PDFJS.version = '1.8.252';
PDFJS.build = '5fe26bb9';
}
PDFJS.pdfBug = false;
if (PDFJS.verbosity !== undefined) {
@ -7889,8 +7889,8 @@ exports.TilingPattern = TilingPattern; @@ -7889,8 +7889,8 @@ exports.TilingPattern = TilingPattern;
"use strict";
var pdfjsVersion = '1.8.241';
var pdfjsBuild = 'c44fd3d6';
var pdfjsVersion = '1.8.252';
var pdfjsBuild = '5fe26bb9';
var pdfjsSharedUtil = __w_pdfjs_require__(0);
var pdfjsDisplayGlobal = __w_pdfjs_require__(9);
var pdfjsDisplayAPI = __w_pdfjs_require__(3);

4
build/pdf.min.js vendored

File diff suppressed because one or more lines are too long

4
build/pdf.worker.js vendored

@ -36956,8 +36956,8 @@ exports.Type1Parser = Type1Parser; @@ -36956,8 +36956,8 @@ exports.Type1Parser = Type1Parser;
"use strict";
var pdfjsVersion = '1.8.241';
var pdfjsBuild = 'c44fd3d6';
var pdfjsVersion = '1.8.252';
var pdfjsBuild = '5fe26bb9';
var pdfjsCoreWorker = __w_pdfjs_require__(8);
{
__w_pdfjs_require__(19);

4
lib/display/api.js

@ -1362,8 +1362,8 @@ var _UnsupportedManager = function UnsupportedManagerClosure() { @@ -1362,8 +1362,8 @@ var _UnsupportedManager = function UnsupportedManagerClosure() {
}();
var version, build;
{
exports.version = version = '1.8.241';
exports.build = build = 'c44fd3d6';
exports.version = version = '1.8.252';
exports.build = build = '5fe26bb9';
}
exports.getDocument = getDocument;
exports.PDFDataRangeTransport = PDFDataRangeTransport;

4
lib/display/global.js

@ -39,8 +39,8 @@ if (!_util.globalScope.PDFJS) { @@ -39,8 +39,8 @@ if (!_util.globalScope.PDFJS) {
}
var PDFJS = _util.globalScope.PDFJS;
{
PDFJS.version = '1.8.241';
PDFJS.build = 'c44fd3d6';
PDFJS.version = '1.8.252';
PDFJS.build = '5fe26bb9';
}
PDFJS.pdfBug = false;
if (PDFJS.verbosity !== undefined) {

4
lib/pdf.js

@ -14,8 +14,8 @@ @@ -14,8 +14,8 @@
*/
'use strict';
var pdfjsVersion = '1.8.241';
var pdfjsBuild = 'c44fd3d6';
var pdfjsVersion = '1.8.252';
var pdfjsBuild = '5fe26bb9';
var pdfjsSharedUtil = require('./shared/util.js');
var pdfjsDisplayGlobal = require('./display/global.js');
var pdfjsDisplayAPI = require('./display/api.js');

4
lib/pdf.worker.js vendored

@ -14,8 +14,8 @@ @@ -14,8 +14,8 @@
*/
'use strict';
var pdfjsVersion = '1.8.241';
var pdfjsBuild = 'c44fd3d6';
var pdfjsVersion = '1.8.252';
var pdfjsBuild = '5fe26bb9';
var pdfjsCoreWorker = require('./core/worker.js');
{
require('./core/network.js');

94
lib/web/app.js

@ -55,8 +55,6 @@ var _pdf_presentation_mode = require('./pdf_presentation_mode'); @@ -55,8 +55,6 @@ var _pdf_presentation_mode = require('./pdf_presentation_mode');
var _pdf_thumbnail_viewer = require('./pdf_thumbnail_viewer');
var _preferences = require('./preferences');
var _secondary_toolbar = require('./secondary_toolbar');
var _toolbar = require('./toolbar');
@ -79,6 +77,10 @@ var DefaultExternalServices = { @@ -79,6 +77,10 @@ var DefaultExternalServices = {
createDownloadManager: function createDownloadManager() {
throw new Error('Not implemented: createDownloadManager');
},
createPreferences: function createPreferences() {
throw new Error('Not implemented: createPreferences');
},
supportsIntegratedFind: false,
supportsDocumentFonts: true,
supportsDocumentColors: true,
@ -108,6 +110,7 @@ var PDFViewerApplication = { @@ -108,6 +110,7 @@ var PDFViewerApplication = {
pdfAttachmentViewer: null,
store: null,
downloadManager: null,
preferences: null,
toolbar: null,
secondaryToolbar: null,
eventBus: null,
@ -129,79 +132,83 @@ var PDFViewerApplication = { @@ -129,79 +132,83 @@ var PDFViewerApplication = {
baseUrl: '',
externalServices: DefaultExternalServices,
initialize: function pdfViewInitialize(appConfig) {
var self = this;
_preferences.Preferences.initialize();
this.preferences = _preferences.Preferences;
var _this = this;
this.preferences = this.externalServices.createPreferences();
configure(_pdfjs.PDFJS);
this.appConfig = appConfig;
return this._readPreferences().then(function () {
return self._initializeViewerComponents();
return _this._initializeViewerComponents();
}).then(function () {
self.bindEvents();
self.bindWindowEvents();
_this.bindEvents();
_this.bindWindowEvents();
_ui_utils.localized.then(function () {
self.eventBus.dispatch('localized');
_this.eventBus.dispatch('localized');
});
if (self.isViewerEmbedded && !_pdfjs.PDFJS.isExternalLinkTargetSet()) {
if (_this.isViewerEmbedded && !_pdfjs.PDFJS.isExternalLinkTargetSet()) {
_pdfjs.PDFJS.externalLinkTarget = _pdfjs.PDFJS.LinkTarget.TOP;
}
self.initialized = true;
_this.initialized = true;
});
},
_readPreferences: function _readPreferences() {
var self = this;
return Promise.all([_preferences.Preferences.get('enableWebGL').then(function resolved(value) {
var preferences = this.preferences,
viewerPrefs = this.viewerPrefs;
return Promise.all([preferences.get('enableWebGL').then(function resolved(value) {
_pdfjs.PDFJS.disableWebGL = !value;
}), _preferences.Preferences.get('sidebarViewOnLoad').then(function resolved(value) {
self.viewerPrefs['sidebarViewOnLoad'] = value;
}), _preferences.Preferences.get('pdfBugEnabled').then(function resolved(value) {
self.viewerPrefs['pdfBugEnabled'] = value;
}), _preferences.Preferences.get('showPreviousViewOnLoad').then(function resolved(value) {
self.viewerPrefs['showPreviousViewOnLoad'] = value;
}), _preferences.Preferences.get('defaultZoomValue').then(function resolved(value) {
self.viewerPrefs['defaultZoomValue'] = value;
}), _preferences.Preferences.get('enhanceTextSelection').then(function resolved(value) {
self.viewerPrefs['enhanceTextSelection'] = value;
}), _preferences.Preferences.get('disableTextLayer').then(function resolved(value) {
}), preferences.get('sidebarViewOnLoad').then(function resolved(value) {
viewerPrefs['sidebarViewOnLoad'] = value;
}), preferences.get('pdfBugEnabled').then(function resolved(value) {
viewerPrefs['pdfBugEnabled'] = value;
}), preferences.get('showPreviousViewOnLoad').then(function resolved(value) {
viewerPrefs['showPreviousViewOnLoad'] = value;
}), preferences.get('defaultZoomValue').then(function resolved(value) {
viewerPrefs['defaultZoomValue'] = value;
}), preferences.get('enhanceTextSelection').then(function resolved(value) {
viewerPrefs['enhanceTextSelection'] = value;
}), preferences.get('disableTextLayer').then(function resolved(value) {
if (_pdfjs.PDFJS.disableTextLayer === true) {
return;
}
_pdfjs.PDFJS.disableTextLayer = value;
}), _preferences.Preferences.get('disableRange').then(function resolved(value) {
}), preferences.get('disableRange').then(function resolved(value) {
if (_pdfjs.PDFJS.disableRange === true) {
return;
}
_pdfjs.PDFJS.disableRange = value;
}), _preferences.Preferences.get('disableStream').then(function resolved(value) {
}), preferences.get('disableStream').then(function resolved(value) {
if (_pdfjs.PDFJS.disableStream === true) {
return;
}
_pdfjs.PDFJS.disableStream = value;
}), _preferences.Preferences.get('disableAutoFetch').then(function resolved(value) {
}), preferences.get('disableAutoFetch').then(function resolved(value) {
_pdfjs.PDFJS.disableAutoFetch = value;
}), _preferences.Preferences.get('disableFontFace').then(function resolved(value) {
}), preferences.get('disableFontFace').then(function resolved(value) {
if (_pdfjs.PDFJS.disableFontFace === true) {
return;
}
_pdfjs.PDFJS.disableFontFace = value;
}), _preferences.Preferences.get('useOnlyCssZoom').then(function resolved(value) {
}), preferences.get('useOnlyCssZoom').then(function resolved(value) {
_pdfjs.PDFJS.useOnlyCssZoom = value;
}), _preferences.Preferences.get('externalLinkTarget').then(function resolved(value) {
}), preferences.get('externalLinkTarget').then(function resolved(value) {
if (_pdfjs.PDFJS.isExternalLinkTargetSet()) {
return;
}
_pdfjs.PDFJS.externalLinkTarget = value;
}), _preferences.Preferences.get('renderer').then(function resolved(value) {
self.viewerPrefs['renderer'] = value;
}), _preferences.Preferences.get('renderInteractiveForms').then(function resolved(value) {
self.viewerPrefs['renderInteractiveForms'] = value;
}), _preferences.Preferences.get('disablePageLabels').then(function resolved(value) {
self.viewerPrefs['disablePageLabels'] = value;
}), _preferences.Preferences.get('enablePrintAutoRotate').then(function resolved(value) {
self.viewerPrefs['enablePrintAutoRotate'] = value;
}), preferences.get('renderer').then(function resolved(value) {
viewerPrefs['renderer'] = value;
}), preferences.get('renderInteractiveForms').then(function resolved(value) {
viewerPrefs['renderInteractiveForms'] = value;
}), preferences.get('disablePageLabels').then(function resolved(value) {
viewerPrefs['disablePageLabels'] = value;
}), preferences.get('enablePrintAutoRotate').then(function resolved(value) {
viewerPrefs['enablePrintAutoRotate'] = value;
})]).catch(function (reason) {});
},
_initializeViewerComponents: function _initializeViewerComponents() {
var _this2 = this;
var self = this;
var appConfig = this.appConfig;
return new Promise(function (resolve, reject) {
@ -267,7 +274,8 @@ var PDFViewerApplication = { @@ -267,7 +274,8 @@ var PDFViewerApplication = {
self.overlayManager = _overlay_manager.OverlayManager;
self.handTool = new _hand_tool.HandTool({
container: container,
eventBus: eventBus
eventBus: eventBus,
preferences: _this2.preferences
});
self.pdfDocumentProperties = new _pdf_document_properties.PDFDocumentProperties(appConfig.documentProperties);
self.toolbar = new _toolbar.Toolbar(appConfig.toolbar, container, eventBus);
@ -417,14 +425,16 @@ var PDFViewerApplication = { @@ -417,14 +425,16 @@ var PDFViewerApplication = {
return promise;
},
open: function pdfViewOpen(file, args) {
var _this3 = this;
if (arguments.length > 2 || typeof args === 'number') {
return Promise.reject(new Error('Call of open() with obsolete signature.'));
}
if (this.pdfLoadingTask) {
return this.close().then(function () {
_preferences.Preferences.reload();
return this.open(file, args);
}.bind(this));
_this3.preferences.reload();
return _this3.open(file, args);
});
}
var parameters = Object.create(null),
scale;

90
lib/web/chromecom.js

@ -19,15 +19,23 @@ Object.defineProperty(exports, "__esModule", { @@ -19,15 +19,23 @@ Object.defineProperty(exports, "__esModule", {
});
exports.ChromeCom = undefined;
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
var _app = require('./app');
var _preferences = require('./preferences');
var _download_manager = require('./download_manager');
var _overlay_manager = require('./overlay_manager');
var _pdfjs = require('./pdfjs');
var _preferences = require('./preferences');
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
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; }
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; }
{
throw new Error('Module "pdfjs-web/chromecom" shall not be used outside ' + 'CHROME build.');
@ -236,37 +244,60 @@ function setReferer(url, callback) { @@ -236,37 +244,60 @@ function setReferer(url, callback) {
}
}
var storageArea = chrome.storage.sync || chrome.storage.local;
_preferences.Preferences._writeToStorage = function (prefObj) {
return new Promise(function (resolve) {
if (prefObj === _preferences.Preferences.defaults) {
var keysToRemove = Object.keys(_preferences.Preferences.defaults);
storageArea.remove(keysToRemove, function () {
resolve();
});
} else {
storageArea.set(prefObj, function () {
resolve();
var ChromePreferences = function (_BasePreferences) {
_inherits(ChromePreferences, _BasePreferences);
function ChromePreferences() {
_classCallCheck(this, ChromePreferences);
return _possibleConstructorReturn(this, (ChromePreferences.__proto__ || Object.getPrototypeOf(ChromePreferences)).apply(this, arguments));
}
_createClass(ChromePreferences, [{
key: '_writeToStorage',
value: function _writeToStorage(prefObj) {
var _this2 = this;
return new Promise(function (resolve) {
if (prefObj === _this2.defaults) {
var keysToRemove = Object.keys(_this2.defaults);
storageArea.remove(keysToRemove, function () {
resolve();
});
} else {
storageArea.set(prefObj, function () {
resolve();
});
}
});
}
});
};
_preferences.Preferences._readFromStorage = function (prefObj) {
return new Promise(function (resolve) {
if (chrome.storage.managed) {
chrome.storage.managed.get(_preferences.Preferences.defaults, getPreferences);
} else {
getPreferences(_preferences.Preferences.defaults);
}
function getPreferences(defaultPrefs) {
if (chrome.runtime.lastError) {
defaultPrefs = _preferences.Preferences.defaults;
}
storageArea.get(defaultPrefs, function (readPrefs) {
resolve(readPrefs);
}, {
key: '_readFromStorage',
value: function _readFromStorage(prefObj) {
var _this3 = this;
return new Promise(function (resolve) {
var getPreferences = function getPreferences(defaultPrefs) {
if (chrome.runtime.lastError) {
defaultPrefs = _this3.defaults;
}
storageArea.get(defaultPrefs, function (readPrefs) {
resolve(readPrefs);
});
};
if (chrome.storage.managed) {
chrome.storage.managed.get(_this3.defaults, getPreferences);
} else {
getPreferences(_this3.defaults);
}
});
}
});
};
}]);
return ChromePreferences;
}(_preferences.BasePreferences);
var ChromeExternalServices = Object.create(_app.DefaultExternalServices);
ChromeExternalServices.initPassiveLoading = function (callbacks) {
var appConfig = _app.PDFViewerApplication.appConfig;
@ -277,5 +308,8 @@ ChromeExternalServices.initPassiveLoading = function (callbacks) { @@ -277,5 +308,8 @@ ChromeExternalServices.initPassiveLoading = function (callbacks) {
ChromeExternalServices.createDownloadManager = function () {
return new _download_manager.DownloadManager();
};
ChromeExternalServices.createPreferences = function () {
return new ChromePreferences();
};
_app.PDFViewerApplication.externalServices = ChromeExternalServices;
exports.ChromeCom = ChromeCom;

59
lib/web/firefoxcom.js

@ -21,11 +21,19 @@ exports.FirefoxCom = exports.DownloadManager = undefined; @@ -21,11 +21,19 @@ exports.FirefoxCom = exports.DownloadManager = undefined;
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
var _pdfjs = require('./pdfjs');
var _preferences = require('./preferences');
var _app = require('./app');
var _preferences = require('./preferences');
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
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; }
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; }
{
throw new Error('Module "pdfjs-web/firefoxcom" shall not be used outside ' + 'FIREFOX and MOZCENTRAL builds.');
@ -103,19 +111,38 @@ var DownloadManager = function DownloadManagerClosure() { @@ -103,19 +111,38 @@ var DownloadManager = function DownloadManagerClosure() {
};
return DownloadManager;
}();
_preferences.Preferences._writeToStorage = function (prefObj) {
return new Promise(function (resolve) {
FirefoxCom.request('setPreferences', prefObj, resolve);
});
};
_preferences.Preferences._readFromStorage = function (prefObj) {
return new Promise(function (resolve) {
FirefoxCom.request('getPreferences', prefObj, function (prefStr) {
var readPrefs = JSON.parse(prefStr);
resolve(readPrefs);
});
});
};
var FirefoxPreferences = function (_BasePreferences) {
_inherits(FirefoxPreferences, _BasePreferences);
function FirefoxPreferences() {
_classCallCheck(this, FirefoxPreferences);
return _possibleConstructorReturn(this, (FirefoxPreferences.__proto__ || Object.getPrototypeOf(FirefoxPreferences)).apply(this, arguments));
}
_createClass(FirefoxPreferences, [{
key: '_writeToStorage',
value: function _writeToStorage(prefObj) {
return new Promise(function (resolve) {
FirefoxCom.request('setPreferences', prefObj, resolve);
});
}
}, {
key: '_readFromStorage',
value: function _readFromStorage(prefObj) {
return new Promise(function (resolve) {
FirefoxCom.request('getPreferences', prefObj, function (prefStr) {
var readPrefs = JSON.parse(prefStr);
resolve(readPrefs);
});
});
}
}]);
return FirefoxPreferences;
}(_preferences.BasePreferences);
(function listenFindEvents() {
var events = ['find', 'findagain', 'findhighlightallchange', 'findcasesensitivitychange'];
var handleEvent = function handleEvent(evt) {
@ -201,6 +228,10 @@ _app.PDFViewerApplication.externalServices = { @@ -201,6 +228,10 @@ _app.PDFViewerApplication.externalServices = {
createDownloadManager: function createDownloadManager() {
return new DownloadManager();
},
createPreferences: function createPreferences() {
return new FirefoxPreferences();
},
get supportsIntegratedFind() {
var support = FirefoxCom.requestSync('supportsIntegratedFind');
return (0, _pdfjs.shadow)(this, 'supportsIntegratedFind', support);

44
lib/web/genericcom.js

@ -19,15 +19,59 @@ Object.defineProperty(exports, "__esModule", { @@ -19,15 +19,59 @@ Object.defineProperty(exports, "__esModule", {
});
exports.GenericCom = undefined;
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
var _app = require('./app');
var _preferences = require('./preferences');
var _download_manager = require('./download_manager');
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
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; }
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; }
;
var GenericCom = {};
var GenericPreferences = function (_BasePreferences) {
_inherits(GenericPreferences, _BasePreferences);
function GenericPreferences() {
_classCallCheck(this, GenericPreferences);
return _possibleConstructorReturn(this, (GenericPreferences.__proto__ || Object.getPrototypeOf(GenericPreferences)).apply(this, arguments));
}
_createClass(GenericPreferences, [{
key: '_writeToStorage',
value: function _writeToStorage(prefObj) {
return new Promise(function (resolve) {
localStorage.setItem('pdfjs.preferences', JSON.stringify(prefObj));
resolve();
});
}
}, {
key: '_readFromStorage',
value: function _readFromStorage(prefObj) {
return new Promise(function (resolve) {
var readPrefs = JSON.parse(localStorage.getItem('pdfjs.preferences'));
resolve(readPrefs);
});
}
}]);
return GenericPreferences;
}(_preferences.BasePreferences);
var GenericExternalServices = Object.create(_app.DefaultExternalServices);
GenericExternalServices.createDownloadManager = function () {
return new _download_manager.DownloadManager();
};
GenericExternalServices.createPreferences = function () {
return new GenericPreferences();
};
_app.PDFViewerApplication.externalServices = GenericExternalServices;
exports.GenericCom = GenericCom;

11
lib/web/hand_tool.js

@ -23,12 +23,13 @@ var _grab_to_pan = require('./grab_to_pan'); @@ -23,12 +23,13 @@ var _grab_to_pan = require('./grab_to_pan');
var _ui_utils = require('./ui_utils');
var _preferences = require('./preferences');
var HandTool = function HandToolClosure() {
function HandTool(options) {
var _this = this;
this.container = options.container;
this.eventBus = options.eventBus;
var preferences = options.preferences;
this.wasActive = false;
this.handTool = new _grab_to_pan.GrabToPan({
element: this.container,
@ -37,11 +38,11 @@ var HandTool = function HandToolClosure() { @@ -37,11 +38,11 @@ var HandTool = function HandToolClosure() {
}.bind(this)
});
this.eventBus.on('togglehandtool', this.toggle.bind(this));
Promise.all([_ui_utils.localized, _preferences.Preferences.get('enableHandToolOnLoad')]).then(function resolved(values) {
Promise.all([_ui_utils.localized, preferences.get('enableHandToolOnLoad')]).then(function (values) {
if (values[1] === true) {
this.handTool.activate();
_this.handTool.activate();
}
}.bind(this)).catch(function rejected(reason) {});
}).catch(function rejected(reason) {});
this.eventBus.on('presentationmodechanged', function (e) {
if (e.switchInProgress) {
return;

60
lib/web/pdf_attachment_viewer.js

@ -19,10 +19,16 @@ Object.defineProperty(exports, "__esModule", { @@ -19,10 +19,16 @@ Object.defineProperty(exports, "__esModule", {
});
exports.PDFAttachmentViewer = undefined;
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
var _pdfjs = require('./pdfjs');
var PDFAttachmentViewer = function PDFAttachmentViewerClosure() {
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
var PDFAttachmentViewer = function () {
function PDFAttachmentViewer(options) {
_classCallCheck(this, PDFAttachmentViewer);
this.attachments = null;
this.container = options.container;
this.eventBus = options.eventBus;
@ -30,22 +36,30 @@ var PDFAttachmentViewer = function PDFAttachmentViewerClosure() { @@ -30,22 +36,30 @@ var PDFAttachmentViewer = function PDFAttachmentViewerClosure() {
this._renderedCapability = (0, _pdfjs.createPromiseCapability)();
this.eventBus.on('fileattachmentannotation', this._appendAttachment.bind(this));
}
PDFAttachmentViewer.prototype = {
reset: function PDFAttachmentViewer_reset(keepRenderedCapability) {
_createClass(PDFAttachmentViewer, [{
key: 'reset',
value: function reset() {
var keepRenderedCapability = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
this.attachments = null;
this.container.textContent = '';
if (!keepRenderedCapability) {
this._renderedCapability = (0, _pdfjs.createPromiseCapability)();
}
},
_dispatchEvent: function PDFAttachmentViewer_dispatchEvent(attachmentsCount) {
}
}, {
key: '_dispatchEvent',
value: function _dispatchEvent(attachmentsCount) {
this.eventBus.dispatch('attachmentsloaded', {
source: this,
attachmentsCount: attachmentsCount
});
this._renderedCapability.resolve();
},
_bindPdfLink: function _bindPdfLink(button, content, filename) {
}
}, {
key: '_bindPdfLink',
value: function _bindPdfLink(button, content, filename) {
if (_pdfjs.PDFJS.disableCreateObjectURL) {
throw new Error('bindPdfLink: ' + 'Unsupported "PDFJS.disableCreateObjectURL" value.');
}
@ -59,16 +73,22 @@ var PDFAttachmentViewer = function PDFAttachmentViewerClosure() { @@ -59,16 +73,22 @@ var PDFAttachmentViewer = function PDFAttachmentViewerClosure() {
window.open(viewerUrl);
return false;
};
},
}
}, {
key: '_bindLink',
value: function _bindLink(button, content, filename) {
var _this = this;
_bindLink: function PDFAttachmentViewer_bindLink(button, content, filename) {
button.onclick = function downloadFile(e) {
this.downloadManager.downloadData(content, filename, '');
button.onclick = function () {
_this.downloadManager.downloadData(content, filename, '');
return false;
}.bind(this);
},
render: function PDFAttachmentViewer_render(params) {
params = params || {};
};
}
}, {
key: 'render',
value: function render() {
var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
var attachments = params.attachments || null;
var attachmentsCount = 0;
if (this.attachments) {
@ -100,8 +120,10 @@ var PDFAttachmentViewer = function PDFAttachmentViewerClosure() { @@ -100,8 +120,10 @@ var PDFAttachmentViewer = function PDFAttachmentViewerClosure() {
this.container.appendChild(div);
}
this._dispatchEvent(attachmentsCount);
},
_appendAttachment: function PDFAttachmentViewer_appendAttachment(item) {
}
}, {
key: '_appendAttachment',
value: function _appendAttachment(item) {
this._renderedCapability.promise.then(function (id, filename, content) {
var attachments = this.attachments;
if (!attachments) {
@ -123,7 +145,9 @@ var PDFAttachmentViewer = function PDFAttachmentViewerClosure() { @@ -123,7 +145,9 @@ var PDFAttachmentViewer = function PDFAttachmentViewerClosure() {
});
}.bind(this, item.id, item.filename, item.content));
}
};
}]);
return PDFAttachmentViewer;
}();
exports.PDFAttachmentViewer = PDFAttachmentViewer;

86
lib/web/pdf_outline_viewer.js

@ -19,31 +19,46 @@ Object.defineProperty(exports, "__esModule", { @@ -19,31 +19,46 @@ Object.defineProperty(exports, "__esModule", {
});
exports.PDFOutlineViewer = undefined;
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
var _pdfjs = require('./pdfjs');
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
var DEFAULT_TITLE = '\u2013';
var PDFOutlineViewer = function PDFOutlineViewerClosure() {
var PDFOutlineViewer = function () {
function PDFOutlineViewer(options) {
_classCallCheck(this, PDFOutlineViewer);
this.outline = null;
this.lastToggleIsShow = true;
this.container = options.container;
this.linkService = options.linkService;
this.eventBus = options.eventBus;
}
PDFOutlineViewer.prototype = {
reset: function PDFOutlineViewer_reset() {
_createClass(PDFOutlineViewer, [{
key: 'reset',
value: function reset() {
this.outline = null;
this.lastToggleIsShow = true;
this.container.textContent = '';
this.container.classList.remove('outlineWithDeepNesting');
},
_dispatchEvent: function PDFOutlineViewer_dispatchEvent(outlineCount) {
}
}, {
key: '_dispatchEvent',
value: function _dispatchEvent(outlineCount) {
this.eventBus.dispatch('outlineloaded', {
source: this,
outlineCount: outlineCount
});
},
_bindLink: function PDFOutlineViewer_bindLink(element, item) {
}
}, {
key: '_bindLink',
value: function _bindLink(element, item) {
var _this = this;
if (item.url) {
(0, _pdfjs.addLinkAttributes)(element, {
url: item.url,
@ -51,17 +66,18 @@ var PDFOutlineViewer = function PDFOutlineViewerClosure() { @@ -51,17 +66,18 @@ var PDFOutlineViewer = function PDFOutlineViewerClosure() {
});
return;
}
var self = this,
destination = item.dest;
element.href = self.linkService.getDestinationHash(destination);
var destination = item.dest;
element.href = this.linkService.getDestinationHash(destination);
element.onclick = function () {
if (destination) {
self.linkService.navigateTo(destination);
_this.linkService.navigateTo(destination);
}
return false;
};
},
_setStyles: function PDFOutlineViewer_setStyles(element, item) {
}
}, {
key: '_setStyles',
value: function _setStyles(element, item) {
var styleStr = '';
if (item.bold) {
styleStr += 'font-weight: bold;';
@ -72,35 +88,47 @@ var PDFOutlineViewer = function PDFOutlineViewerClosure() { @@ -72,35 +88,47 @@ var PDFOutlineViewer = function PDFOutlineViewerClosure() {
if (styleStr) {
element.setAttribute('style', styleStr);
}
},
_addToggleButton: function PDFOutlineViewer_addToggleButton(div) {
}
}, {
key: '_addToggleButton',
value: function _addToggleButton(div) {
var _this2 = this;
var toggler = document.createElement('div');
toggler.className = 'outlineItemToggler';
toggler.onclick = function (event) {
event.stopPropagation();
toggler.onclick = function (evt) {
evt.stopPropagation();
toggler.classList.toggle('outlineItemsHidden');
if (event.shiftKey) {
if (evt.shiftKey) {
var shouldShowAll = !toggler.classList.contains('outlineItemsHidden');
this._toggleOutlineItem(div, shouldShowAll);
_this2._toggleOutlineItem(div, shouldShowAll);
}
}.bind(this);
};
div.insertBefore(toggler, div.firstChild);
},
_toggleOutlineItem: function PDFOutlineViewer_toggleOutlineItem(root, show) {
}
}, {
key: '_toggleOutlineItem',
value: function _toggleOutlineItem(root, show) {
this.lastToggleIsShow = show;
var togglers = root.querySelectorAll('.outlineItemToggler');
for (var i = 0, ii = togglers.length; i < ii; ++i) {
togglers[i].classList[show ? 'remove' : 'add']('outlineItemsHidden');
}
},
toggleOutlineTree: function PDFOutlineViewer_toggleOutlineTree() {
}
}, {
key: 'toggleOutlineTree',
value: function toggleOutlineTree() {
if (!this.outline) {
return;
}
this._toggleOutlineItem(this.container, !this.lastToggleIsShow);
},
render: function PDFOutlineViewer_render(params) {
var outline = params && params.outline || null;
}
}, {
key: 'render',
value: function render() {
var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
var outline = params.outline || null;
var outlineCount = 0;
if (this.outline) {
this.reset();
@ -148,7 +176,9 @@ var PDFOutlineViewer = function PDFOutlineViewerClosure() { @@ -148,7 +176,9 @@ var PDFOutlineViewer = function PDFOutlineViewerClosure() {
this.container.appendChild(fragment);
this._dispatchEvent(outlineCount);
}
};
}]);
return PDFOutlineViewer;
}();
exports.PDFOutlineViewer = PDFOutlineViewer;

184
lib/web/pdf_sidebar.js

@ -19,10 +19,14 @@ Object.defineProperty(exports, "__esModule", { @@ -19,10 +19,14 @@ Object.defineProperty(exports, "__esModule", {
});
exports.PDFSidebar = exports.SidebarView = undefined;
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
var _ui_utils = require('./ui_utils');
var _pdf_rendering_queue = require('./pdf_rendering_queue');
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
var UI_NOTIFICATION_CLASS = 'pdfSidebarNotification';
var SidebarView = {
NONE: 0,
@ -30,8 +34,11 @@ var SidebarView = { @@ -30,8 +34,11 @@ var SidebarView = {
OUTLINE: 2,
ATTACHMENTS: 3
};
var PDFSidebar = function PDFSidebarClosure() {
var PDFSidebar = function () {
function PDFSidebar(options) {
_classCallCheck(this, PDFSidebar);
this.isOpen = false;
this.active = SidebarView.THUMBS;
this.isInitialViewSet = false;
@ -52,27 +59,19 @@ var PDFSidebar = function PDFSidebarClosure() { @@ -52,27 +59,19 @@ var PDFSidebar = function PDFSidebarClosure() {
this.disableNotification = options.disableNotification || false;
this._addEventListeners();
}
PDFSidebar.prototype = {
reset: function PDFSidebar_reset() {
_createClass(PDFSidebar, [{
key: 'reset',
value: function reset() {
this.isInitialViewSet = false;
this._hideUINotification(null);
this.switchView(SidebarView.THUMBS);
this.outlineButton.disabled = false;
this.attachmentsButton.disabled = false;
},
get visibleView() {
return this.isOpen ? this.active : SidebarView.NONE;
},
get isThumbnailViewVisible() {
return this.isOpen && this.active === SidebarView.THUMBS;
},
get isOutlineViewVisible() {
return this.isOpen && this.active === SidebarView.OUTLINE;
},
get isAttachmentsViewVisible() {
return this.isOpen && this.active === SidebarView.ATTACHMENTS;
},
setInitialView: function PDFSidebar_setInitialView(view) {
}
}, {
key: 'setInitialView',
value: function setInitialView(view) {
if (this.isInitialViewSet) {
return;
}
@ -86,8 +85,12 @@ var PDFSidebar = function PDFSidebarClosure() { @@ -86,8 +85,12 @@ var PDFSidebar = function PDFSidebarClosure() {
if (isViewPreserved) {
this._dispatchEvent();
}
},
switchView: function PDFSidebar_switchView(view, forceOpen) {
}
}, {
key: 'switchView',
value: function switchView(view) {
var forceOpen = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
if (view === SidebarView.NONE) {
this.close();
return;
@ -145,8 +148,10 @@ var PDFSidebar = function PDFSidebarClosure() { @@ -145,8 +148,10 @@ var PDFSidebar = function PDFSidebarClosure() {
this._dispatchEvent();
}
this._hideUINotification(this.active);
},
open: function PDFSidebar_open() {
}
}, {
key: 'open',
value: function open() {
if (this.isOpen) {
return;
}
@ -160,8 +165,10 @@ var PDFSidebar = function PDFSidebarClosure() { @@ -160,8 +165,10 @@ var PDFSidebar = function PDFSidebarClosure() {
this._forceRendering();
this._dispatchEvent();
this._hideUINotification(this.active);
},
close: function PDFSidebar_close() {
}
}, {
key: 'close',
value: function close() {
if (!this.isOpen) {
return;
}
@ -171,29 +178,37 @@ var PDFSidebar = function PDFSidebarClosure() { @@ -171,29 +178,37 @@ var PDFSidebar = function PDFSidebarClosure() {
this.outerContainer.classList.remove('sidebarOpen');
this._forceRendering();
this._dispatchEvent();
},
toggle: function PDFSidebar_toggle() {
}
}, {
key: 'toggle',
value: function toggle() {
if (this.isOpen) {
this.close();
} else {
this.open();
}
},
_dispatchEvent: function PDFSidebar_dispatchEvent() {
}
}, {
key: '_dispatchEvent',
value: function _dispatchEvent() {
this.eventBus.dispatch('sidebarviewchanged', {
source: this,
view: this.visibleView
});
},
_forceRendering: function PDFSidebar_forceRendering() {
}
}, {
key: '_forceRendering',
value: function _forceRendering() {
if (this.onToggled) {
this.onToggled();
} else {
this.pdfViewer.forceRendering();
this.pdfThumbnailViewer.forceRendering();
}
},
_updateThumbnailViewer: function PDFSidebar_updateThumbnailViewer() {
}
}, {
key: '_updateThumbnailViewer',
value: function _updateThumbnailViewer() {
var pdfViewer = this.pdfViewer;
var thumbnailViewer = this.pdfThumbnailViewer;
var pagesCount = pdfViewer.pagesCount;
@ -205,8 +220,10 @@ var PDFSidebar = function PDFSidebarClosure() { @@ -205,8 +220,10 @@ var PDFSidebar = function PDFSidebarClosure() {
}
}
thumbnailViewer.scrollThumbnailIntoView(pdfViewer.currentPageNumber);
},
_showUINotification: function _showUINotification(view) {
}
}, {
key: '_showUINotification',
value: function _showUINotification(view) {
if (this.disableNotification) {
return;
}
@ -224,21 +241,25 @@ var PDFSidebar = function PDFSidebarClosure() { @@ -224,21 +241,25 @@ var PDFSidebar = function PDFSidebarClosure() {
this.attachmentsButton.classList.add(UI_NOTIFICATION_CLASS);
break;
}
},
_hideUINotification: function _hideUINotification(view) {
}
}, {
key: '_hideUINotification',
value: function _hideUINotification(view) {
var _this = this;
if (this.disableNotification) {
return;
}
var removeNotification = function (view) {
var removeNotification = function removeNotification(view) {
switch (view) {
case SidebarView.OUTLINE:
this.outlineButton.classList.remove(UI_NOTIFICATION_CLASS);
_this.outlineButton.classList.remove(UI_NOTIFICATION_CLASS);
break;
case SidebarView.ATTACHMENTS:
this.attachmentsButton.classList.remove(UI_NOTIFICATION_CLASS);
_this.attachmentsButton.classList.remove(UI_NOTIFICATION_CLASS);
break;
}
}.bind(this);
};
if (!this.isOpen && view !== null) {
return;
}
@ -251,52 +272,77 @@ var PDFSidebar = function PDFSidebarClosure() { @@ -251,52 +272,77 @@ var PDFSidebar = function PDFSidebarClosure() {
removeNotification(SidebarView[view]);
}
this.toggleButton.title = _ui_utils.mozL10n.get('toggle_sidebar.title', null, 'Toggle Sidebar');
},
_addEventListeners: function PDFSidebar_addEventListeners() {
var self = this;
self.mainContainer.addEventListener('transitionend', function (evt) {
if (evt.target === this) {
self.outerContainer.classList.remove('sidebarMoving');
}
}, {
key: '_addEventListeners',
value: function _addEventListeners() {
var _this2 = this;
this.mainContainer.addEventListener('transitionend', function (evt) {
if (evt.target === _this2.mainContainer) {
_this2.outerContainer.classList.remove('sidebarMoving');
}
});
self.thumbnailButton.addEventListener('click', function () {
self.switchView(SidebarView.THUMBS);
this.thumbnailButton.addEventListener('click', function () {
_this2.switchView(SidebarView.THUMBS);
});
self.outlineButton.addEventListener('click', function () {
self.switchView(SidebarView.OUTLINE);
this.outlineButton.addEventListener('click', function () {
_this2.switchView(SidebarView.OUTLINE);
});
self.outlineButton.addEventListener('dblclick', function () {
self.pdfOutlineViewer.toggleOutlineTree();
this.outlineButton.addEventListener('dblclick', function () {
_this2.pdfOutlineViewer.toggleOutlineTree();
});
self.attachmentsButton.addEventListener('click', function () {
self.switchView(SidebarView.ATTACHMENTS);
this.attachmentsButton.addEventListener('click', function () {
_this2.switchView(SidebarView.ATTACHMENTS);
});
self.eventBus.on('outlineloaded', function (e) {
var outlineCount = e.outlineCount;
self.outlineButton.disabled = !outlineCount;
this.eventBus.on('outlineloaded', function (evt) {
var outlineCount = evt.outlineCount;
_this2.outlineButton.disabled = !outlineCount;
if (outlineCount) {
self._showUINotification(SidebarView.OUTLINE);
} else if (self.active === SidebarView.OUTLINE) {
self.switchView(SidebarView.THUMBS);
_this2._showUINotification(SidebarView.OUTLINE);
} else if (_this2.active === SidebarView.OUTLINE) {
_this2.switchView(SidebarView.THUMBS);
}
});
self.eventBus.on('attachmentsloaded', function (e) {
var attachmentsCount = e.attachmentsCount;
self.attachmentsButton.disabled = !attachmentsCount;
this.eventBus.on('attachmentsloaded', function (evt) {
var attachmentsCount = evt.attachmentsCount;
_this2.attachmentsButton.disabled = !attachmentsCount;
if (attachmentsCount) {
self._showUINotification(SidebarView.ATTACHMENTS);
} else if (self.active === SidebarView.ATTACHMENTS) {
self.switchView(SidebarView.THUMBS);
_this2._showUINotification(SidebarView.ATTACHMENTS);
} else if (_this2.active === SidebarView.ATTACHMENTS) {
_this2.switchView(SidebarView.THUMBS);
}
});
self.eventBus.on('presentationmodechanged', function (e) {
if (!e.active && !e.switchInProgress && self.isThumbnailViewVisible) {
self._updateThumbnailViewer();
this.eventBus.on('presentationmodechanged', function (evt) {
if (!evt.active && !evt.switchInProgress && _this2.isThumbnailViewVisible) {
_this2._updateThumbnailViewer();
}
});
}
};
}, {
key: 'visibleView',
get: function get() {
return this.isOpen ? this.active : SidebarView.NONE;
}
}, {
key: 'isThumbnailViewVisible',
get: function get() {
return this.isOpen && this.active === SidebarView.THUMBS;
}
}, {
key: 'isOutlineViewVisible',
get: function get() {
return this.isOpen && this.active === SidebarView.OUTLINE;
}
}, {
key: 'isAttachmentsViewVisible',
get: function get() {
return this.isOpen && this.active === SidebarView.ATTACHMENTS;
}
}]);
return PDFSidebar;
}();
exports.SidebarView = SidebarView;
exports.PDFSidebar = PDFSidebar;

188
lib/web/preferences.js

@ -20,6 +20,10 @@ Object.defineProperty(exports, "__esModule", { @@ -20,6 +20,10 @@ Object.defineProperty(exports, "__esModule", {
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
var defaultPreferences = null;
function getDefaultPreferences() {
if (!defaultPreferences) {
@ -55,99 +59,115 @@ function cloneObj(obj) { @@ -55,99 +59,115 @@ function cloneObj(obj) {
}
return result;
}
var Preferences = {
prefs: null,
isInitializedPromiseResolved: false,
initializedPromise: null,
initialize: function preferencesInitialize() {
return this.initializedPromise = getDefaultPreferences().then(function (defaults) {
Object.defineProperty(this, 'defaults', {
var BasePreferences = function () {
function BasePreferences() {
var _this = this;
_classCallCheck(this, BasePreferences);
if (this.constructor === BasePreferences) {
throw new Error('Cannot initialize BasePreferences.');
}
this.prefs = null;
this._initializedPromise = getDefaultPreferences().then(function (defaults) {
Object.defineProperty(_this, 'defaults', {
value: Object.freeze(defaults),
writable: false,
enumerable: true,
configurable: false
});
this.prefs = cloneObj(defaults);
return this._readFromStorage(defaults);
}.bind(this)).then(function (prefObj) {
this.isInitializedPromiseResolved = true;
_this.prefs = cloneObj(defaults);
return _this._readFromStorage(defaults);
}).then(function (prefObj) {
if (prefObj) {
this.prefs = prefObj;
_this.prefs = prefObj;
}
}.bind(this));
},
_writeToStorage: function preferences_writeToStorage(prefObj) {
return Promise.resolve();
},
_readFromStorage: function preferences_readFromStorage(prefObj) {
return Promise.resolve();
},
reset: function preferencesReset() {
return this.initializedPromise.then(function () {
this.prefs = cloneObj(this.defaults);
return this._writeToStorage(this.defaults);
}.bind(this));
},
reload: function preferencesReload() {
return this.initializedPromise.then(function () {
this._readFromStorage(this.defaults).then(function (prefObj) {
});
}
_createClass(BasePreferences, [{
key: "_writeToStorage",
value: function _writeToStorage(prefObj) {
return Promise.reject(new Error('Not implemented: _writeToStorage'));
}
}, {
key: "_readFromStorage",
value: function _readFromStorage(prefObj) {
return Promise.reject(new Error('Not implemented: _readFromStorage'));
}
}, {
key: "reset",
value: function reset() {
var _this2 = this;
return this._initializedPromise.then(function () {
_this2.prefs = cloneObj(_this2.defaults);
return _this2._writeToStorage(_this2.defaults);
});
}
}, {
key: "reload",
value: function reload() {
var _this3 = this;
return this._initializedPromise.then(function () {
return _this3._readFromStorage(_this3.defaults);
}).then(function (prefObj) {
if (prefObj) {
this.prefs = prefObj;
_this3.prefs = prefObj;
}
}.bind(this));
}.bind(this));
},
set: function preferencesSet(name, value) {
return this.initializedPromise.then(function () {
if (this.defaults[name] === undefined) {
throw new Error('preferencesSet: \'' + name + '\' is undefined.');
} else if (value === undefined) {
throw new Error('preferencesSet: no value is specified.');
}
var valueType = typeof value === "undefined" ? "undefined" : _typeof(value);
var defaultType = _typeof(this.defaults[name]);
if (valueType !== defaultType) {
if (valueType === 'number' && defaultType === 'string') {
value = value.toString();
} else {
throw new Error('Preferences_set: \'' + value + '\' is a \"' + valueType + '\", expected \"' + defaultType + '\".');
});
}
}, {
key: "set",
value: function set(name, value) {
var _this4 = this;
return this._initializedPromise.then(function () {
if (_this4.defaults[name] === undefined) {
throw new Error("Set preference: \"" + name + "\" is undefined.");
} else if (value === undefined) {
throw new Error('Set preference: no value is specified.');
}
} else {
if (valueType === 'number' && (value | 0) !== value) {
throw new Error('Preferences_set: \'' + value + '\' must be an \"integer\".');
var valueType = typeof value === "undefined" ? "undefined" : _typeof(value);
var defaultType = _typeof(_this4.defaults[name]);
if (valueType !== defaultType) {
if (valueType === 'number' && defaultType === 'string') {
value = value.toString();
} else {
throw new Error("Set preference: \"" + value + "\" is a " + valueType + ", " + ("expected a " + defaultType + "."));
}
} else {
if (valueType === 'number' && (value | 0) !== value) {
throw new Error("Set preference: \"" + value + "\" must be an integer.");
}
}
}
this.prefs[name] = value;
return this._writeToStorage(this.prefs);
}.bind(this));
},
get: function preferencesGet(name) {
return this.initializedPromise.then(function () {
var defaultValue = this.defaults[name];
if (defaultValue === undefined) {
throw new Error('preferencesGet: \'' + name + '\' is undefined.');
} else {
var prefValue = this.prefs[name];
if (prefValue !== undefined) {
return prefValue;
_this4.prefs[name] = value;
return _this4._writeToStorage(_this4.prefs);
});
}
}, {
key: "get",
value: function get(name) {
var _this5 = this;
return this._initializedPromise.then(function () {
var defaultValue = _this5.defaults[name];
if (defaultValue === undefined) {
throw new Error("Get preference: \"" + name + "\" is undefined.");
} else {
var prefValue = _this5.prefs[name];
if (prefValue !== undefined) {
return prefValue;
}
}
}
return defaultValue;
}.bind(this));
}
};
{
Preferences._writeToStorage = function (prefObj) {
return new Promise(function (resolve) {
localStorage.setItem('pdfjs.preferences', JSON.stringify(prefObj));
resolve();
});
};
Preferences._readFromStorage = function (prefObj) {
return new Promise(function (resolve) {
var readPrefs = JSON.parse(localStorage.getItem('pdfjs.preferences'));
resolve(readPrefs);
});
};
}
exports.Preferences = Preferences;
return defaultValue;
});
}
}]);
return BasePreferences;
}();
exports.BasePreferences = BasePreferences;

2
package.json

@ -1,6 +1,6 @@ @@ -1,6 +1,6 @@
{
"name": "pdfjs-dist",
"version": "1.8.241",
"version": "1.8.252",
"main": "build/pdf.js",
"description": "Generic build of Mozilla's PDF.js library.",
"keywords": [

Loading…
Cancel
Save