Merge pull request #8594 from Snuffleupagus/es6-web-let
Change `var` to `let`, and use object destructuring, in a couple of previously class converted `web/*.js` files
This commit is contained in:
commit
05b1ef2d23
@ -31,13 +31,14 @@ class AnnotationLayerBuilder {
|
||||
/**
|
||||
* @param {AnnotationLayerBuilderOptions} options
|
||||
*/
|
||||
constructor(options) {
|
||||
this.pageDiv = options.pageDiv;
|
||||
this.pdfPage = options.pdfPage;
|
||||
this.renderInteractiveForms = options.renderInteractiveForms;
|
||||
this.linkService = options.linkService;
|
||||
this.downloadManager = options.downloadManager;
|
||||
this.l10n = options.l10n || NullL10n;
|
||||
constructor({ pageDiv, pdfPage, linkService, downloadManager,
|
||||
renderInteractiveForms = false, l10n = NullL10n, }) {
|
||||
this.pageDiv = pageDiv;
|
||||
this.pdfPage = pdfPage;
|
||||
this.linkService = linkService;
|
||||
this.downloadManager = downloadManager;
|
||||
this.renderInteractiveForms = renderInteractiveForms;
|
||||
this.l10n = l10n;
|
||||
|
||||
this.div = null;
|
||||
}
|
||||
@ -48,7 +49,7 @@ class AnnotationLayerBuilder {
|
||||
*/
|
||||
render(viewport, intent = 'display') {
|
||||
this.pdfPage.getAnnotations({ intent, }).then((annotations) => {
|
||||
var parameters = {
|
||||
let parameters = {
|
||||
viewport: viewport.clone({ dontFlip: true, }),
|
||||
div: this.div,
|
||||
annotations,
|
||||
@ -68,7 +69,6 @@ class AnnotationLayerBuilder {
|
||||
if (annotations.length === 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
this.div = document.createElement('div');
|
||||
this.div.className = 'annotationLayer';
|
||||
this.pageDiv.appendChild(this.div);
|
||||
@ -99,8 +99,7 @@ class DefaultAnnotationLayerFactory {
|
||||
* @param {IL10n} l10n
|
||||
* @returns {AnnotationLayerBuilder}
|
||||
*/
|
||||
createAnnotationLayerBuilder(pageDiv, pdfPage,
|
||||
renderInteractiveForms = false,
|
||||
createAnnotationLayerBuilder(pageDiv, pdfPage, renderInteractiveForms = false,
|
||||
l10n = NullL10n) {
|
||||
return new AnnotationLayerBuilder({
|
||||
pageDiv,
|
||||
|
@ -87,7 +87,7 @@ class PasswordPrompt {
|
||||
}
|
||||
|
||||
verify() {
|
||||
var password = this.input.value;
|
||||
let password = this.input.value;
|
||||
if (password && password.length > 0) {
|
||||
this.close();
|
||||
return this.updateCallback(password);
|
||||
|
@ -27,19 +27,19 @@ import {
|
||||
|
||||
/**
|
||||
* @typedef {Object} PDFAttachmentViewerRenderParameters
|
||||
* @property {Array|null} attachments - An array of attachment objects.
|
||||
* @property {Object|null} attachments - A lookup table of attachment objects.
|
||||
*/
|
||||
|
||||
class PDFAttachmentViewer {
|
||||
/**
|
||||
* @param {PDFAttachmentViewerOptions} options
|
||||
*/
|
||||
constructor(options) {
|
||||
constructor({ container, eventBus, downloadManager, }) {
|
||||
this.attachments = null;
|
||||
|
||||
this.container = options.container;
|
||||
this.eventBus = options.eventBus;
|
||||
this.downloadManager = options.downloadManager;
|
||||
this.container = container;
|
||||
this.eventBus = eventBus;
|
||||
this.downloadManager = downloadManager;
|
||||
|
||||
this._renderedCapability = createPromiseCapability();
|
||||
this.eventBus.on('fileattachmentannotation',
|
||||
@ -79,12 +79,12 @@ class PDFAttachmentViewer {
|
||||
throw new Error('bindPdfLink: ' +
|
||||
'Unsupported "PDFJS.disableCreateObjectURL" value.');
|
||||
}
|
||||
var blobUrl;
|
||||
let blobUrl;
|
||||
button.onclick = function() {
|
||||
if (!blobUrl) {
|
||||
blobUrl = createObjectURL(content, 'application/pdf');
|
||||
}
|
||||
var viewerUrl;
|
||||
let viewerUrl;
|
||||
if (typeof PDFJSDev === 'undefined' || PDFJSDev.test('GENERIC')) {
|
||||
// The current URL is the viewer, let's use it and append the file.
|
||||
viewerUrl = '?file=' + encodeURIComponent(blobUrl + '#' + filename);
|
||||
@ -116,33 +116,31 @@ class PDFAttachmentViewer {
|
||||
/**
|
||||
* @param {PDFAttachmentViewerRenderParameters} params
|
||||
*/
|
||||
render(params = {}) {
|
||||
var attachments = params.attachments || null;
|
||||
var attachmentsCount = 0;
|
||||
render({ attachments, keepRenderedCapability = false, }) {
|
||||
let attachmentsCount = 0;
|
||||
|
||||
if (this.attachments) {
|
||||
var keepRenderedCapability = params.keepRenderedCapability === true;
|
||||
this.reset(keepRenderedCapability);
|
||||
this.reset(keepRenderedCapability === true);
|
||||
}
|
||||
this.attachments = attachments;
|
||||
this.attachments = attachments || null;
|
||||
|
||||
if (!attachments) {
|
||||
this._dispatchEvent(attachmentsCount);
|
||||
return;
|
||||
}
|
||||
|
||||
var names = Object.keys(attachments).sort(function(a, b) {
|
||||
let names = Object.keys(attachments).sort(function(a, b) {
|
||||
return a.toLowerCase().localeCompare(b.toLowerCase());
|
||||
});
|
||||
attachmentsCount = names.length;
|
||||
|
||||
for (var i = 0; i < attachmentsCount; i++) {
|
||||
var item = attachments[names[i]];
|
||||
var filename = removeNullCharacters(getFilenameFromUrl(item.filename));
|
||||
for (let i = 0; i < attachmentsCount; i++) {
|
||||
let item = attachments[names[i]];
|
||||
let filename = removeNullCharacters(getFilenameFromUrl(item.filename));
|
||||
|
||||
var div = document.createElement('div');
|
||||
let div = document.createElement('div');
|
||||
div.className = 'attachmentsItem';
|
||||
var button = document.createElement('button');
|
||||
let button = document.createElement('button');
|
||||
button.textContent = filename;
|
||||
if (/\.pdf$/i.test(filename) && !PDFJS.disableCreateObjectURL) {
|
||||
this._bindPdfLink(button, item.content, filename);
|
||||
@ -163,12 +161,12 @@ class PDFAttachmentViewer {
|
||||
*/
|
||||
_appendAttachment({ id, filename, content, }) {
|
||||
this._renderedCapability.promise.then(() => {
|
||||
var attachments = this.attachments;
|
||||
let attachments = this.attachments;
|
||||
|
||||
if (!attachments) {
|
||||
attachments = Object.create(null);
|
||||
} else {
|
||||
for (var name in attachments) {
|
||||
for (let name in attachments) {
|
||||
if (id === name) {
|
||||
return; // Ignore the new attachment if it already exists.
|
||||
}
|
||||
|
@ -231,15 +231,15 @@ class PDFDocumentProperties {
|
||||
// Get all elements from the PDF date string.
|
||||
// JavaScript's `Date` object expects the month to be between
|
||||
// 0 and 11 instead of 1 and 12, so we're correcting for this.
|
||||
var year = parseInt(dateToParse.substring(0, 4), 10);
|
||||
var month = parseInt(dateToParse.substring(4, 6), 10) - 1;
|
||||
var day = parseInt(dateToParse.substring(6, 8), 10);
|
||||
var hours = parseInt(dateToParse.substring(8, 10), 10);
|
||||
var minutes = parseInt(dateToParse.substring(10, 12), 10);
|
||||
var seconds = parseInt(dateToParse.substring(12, 14), 10);
|
||||
var utRel = dateToParse.substring(14, 15);
|
||||
var offsetHours = parseInt(dateToParse.substring(15, 17), 10);
|
||||
var offsetMinutes = parseInt(dateToParse.substring(18, 20), 10);
|
||||
let year = parseInt(dateToParse.substring(0, 4), 10);
|
||||
let month = parseInt(dateToParse.substring(4, 6), 10) - 1;
|
||||
let day = parseInt(dateToParse.substring(6, 8), 10);
|
||||
let hours = parseInt(dateToParse.substring(8, 10), 10);
|
||||
let minutes = parseInt(dateToParse.substring(10, 12), 10);
|
||||
let seconds = parseInt(dateToParse.substring(12, 14), 10);
|
||||
let utRel = dateToParse.substring(14, 15);
|
||||
let offsetHours = parseInt(dateToParse.substring(15, 17), 10);
|
||||
let offsetMinutes = parseInt(dateToParse.substring(18, 20), 10);
|
||||
|
||||
// As per spec, utRel = 'Z' means equal to universal time.
|
||||
// The other cases ('-' and '+') have to be handled here.
|
||||
@ -252,9 +252,9 @@ class PDFDocumentProperties {
|
||||
}
|
||||
|
||||
// Return the new date format from the user's locale.
|
||||
var date = new Date(Date.UTC(year, month, day, hours, minutes, seconds));
|
||||
var dateString = date.toLocaleDateString();
|
||||
var timeString = date.toLocaleTimeString();
|
||||
let date = new Date(Date.UTC(year, month, day, hours, minutes, seconds));
|
||||
let dateString = date.toLocaleDateString();
|
||||
let timeString = date.toLocaleTimeString();
|
||||
return this.l10n.get('document_properties_date_string',
|
||||
{ date: dateString, time: timeString, },
|
||||
'{{date}}, {{time}}');
|
||||
|
@ -103,9 +103,9 @@ class PDFFindBar {
|
||||
}
|
||||
|
||||
updateUIState(state, previous, matchCount) {
|
||||
var notFound = false;
|
||||
var findMsg = '';
|
||||
var status = '';
|
||||
let notFound = false;
|
||||
let findMsg = '';
|
||||
let status = '';
|
||||
|
||||
switch (state) {
|
||||
case FindState.FOUND:
|
||||
@ -206,8 +206,8 @@ class PDFFindBar {
|
||||
// wrapped). Here we detect and fix that.
|
||||
this.bar.classList.remove('wrapContainers');
|
||||
|
||||
var findbarHeight = this.bar.clientHeight;
|
||||
var inputContainerHeight = this.bar.firstElementChild.clientHeight;
|
||||
let findbarHeight = this.bar.clientHeight;
|
||||
let inputContainerHeight = this.bar.firstElementChild.clientHeight;
|
||||
|
||||
if (findbarHeight > inputContainerHeight) {
|
||||
// The findbar is taller than the input container, which means that
|
||||
|
@ -35,13 +35,13 @@ class PDFOutlineViewer {
|
||||
/**
|
||||
* @param {PDFOutlineViewerOptions} options
|
||||
*/
|
||||
constructor(options) {
|
||||
constructor({ container, linkService, eventBus, }) {
|
||||
this.outline = null;
|
||||
this.lastToggleIsShow = true;
|
||||
|
||||
this.container = options.container;
|
||||
this.linkService = options.linkService;
|
||||
this.eventBus = options.eventBus;
|
||||
this.container = container;
|
||||
this.linkService = linkService;
|
||||
this.eventBus = eventBus;
|
||||
}
|
||||
|
||||
reset() {
|
||||
@ -77,7 +77,7 @@ class PDFOutlineViewer {
|
||||
});
|
||||
return;
|
||||
}
|
||||
var destination = item.dest;
|
||||
let destination = item.dest;
|
||||
|
||||
element.href = this.linkService.getDestinationHash(destination);
|
||||
element.onclick = () => {
|
||||
@ -92,7 +92,7 @@ class PDFOutlineViewer {
|
||||
* @private
|
||||
*/
|
||||
_setStyles(element, item) {
|
||||
var styleStr = '';
|
||||
let styleStr = '';
|
||||
if (item.bold) {
|
||||
styleStr += 'font-weight: bold;';
|
||||
}
|
||||
@ -112,14 +112,14 @@ class PDFOutlineViewer {
|
||||
* @private
|
||||
*/
|
||||
_addToggleButton(div) {
|
||||
var toggler = document.createElement('div');
|
||||
let toggler = document.createElement('div');
|
||||
toggler.className = 'outlineItemToggler';
|
||||
toggler.onclick = (evt) => {
|
||||
evt.stopPropagation();
|
||||
toggler.classList.toggle('outlineItemsHidden');
|
||||
|
||||
if (evt.shiftKey) {
|
||||
var shouldShowAll = !toggler.classList.contains('outlineItemsHidden');
|
||||
let shouldShowAll = !toggler.classList.contains('outlineItemsHidden');
|
||||
this._toggleOutlineItem(div, shouldShowAll);
|
||||
}
|
||||
};
|
||||
@ -137,8 +137,8 @@ class PDFOutlineViewer {
|
||||
*/
|
||||
_toggleOutlineItem(root, show) {
|
||||
this.lastToggleIsShow = show;
|
||||
var togglers = root.querySelectorAll('.outlineItemToggler');
|
||||
for (var i = 0, ii = togglers.length; i < ii; ++i) {
|
||||
let togglers = root.querySelectorAll('.outlineItemToggler');
|
||||
for (let i = 0, ii = togglers.length; i < ii; ++i) {
|
||||
togglers[i].classList[show ? 'remove' : 'add']('outlineItemsHidden');
|
||||
}
|
||||
}
|
||||
@ -156,32 +156,31 @@ class PDFOutlineViewer {
|
||||
/**
|
||||
* @param {PDFOutlineViewerRenderParameters} params
|
||||
*/
|
||||
render(params = {}) {
|
||||
var outline = params.outline || null;
|
||||
var outlineCount = 0;
|
||||
render({ outline, }) {
|
||||
let outlineCount = 0;
|
||||
|
||||
if (this.outline) {
|
||||
this.reset();
|
||||
}
|
||||
this.outline = outline;
|
||||
this.outline = outline || null;
|
||||
|
||||
if (!outline) {
|
||||
this._dispatchEvent(outlineCount);
|
||||
return;
|
||||
}
|
||||
|
||||
var fragment = document.createDocumentFragment();
|
||||
var queue = [{ parent: fragment, items: this.outline, }];
|
||||
var hasAnyNesting = false;
|
||||
let fragment = document.createDocumentFragment();
|
||||
let queue = [{ parent: fragment, items: this.outline, }];
|
||||
let hasAnyNesting = false;
|
||||
while (queue.length > 0) {
|
||||
var levelData = queue.shift();
|
||||
for (var i = 0, len = levelData.items.length; i < len; i++) {
|
||||
var item = levelData.items[i];
|
||||
let levelData = queue.shift();
|
||||
for (let i = 0, len = levelData.items.length; i < len; i++) {
|
||||
let item = levelData.items[i];
|
||||
|
||||
var div = document.createElement('div');
|
||||
let div = document.createElement('div');
|
||||
div.className = 'outlineItem';
|
||||
|
||||
var element = document.createElement('a');
|
||||
let element = document.createElement('a');
|
||||
this._bindLink(element, item);
|
||||
this._setStyles(element, item);
|
||||
element.textContent =
|
||||
@ -193,7 +192,7 @@ class PDFOutlineViewer {
|
||||
hasAnyNesting = true;
|
||||
this._addToggleButton(div);
|
||||
|
||||
var itemsDiv = document.createElement('div');
|
||||
let itemsDiv = document.createElement('div');
|
||||
itemsDiv.className = 'outlineItems';
|
||||
div.appendChild(itemsDiv);
|
||||
queue.push({ parent: itemsDiv, items: item.items, });
|
||||
|
@ -43,12 +43,12 @@ class PDFPresentationMode {
|
||||
/**
|
||||
* @param {PDFPresentationModeOptions} options
|
||||
*/
|
||||
constructor(options) {
|
||||
this.container = options.container;
|
||||
this.viewer = options.viewer || options.container.firstElementChild;
|
||||
this.pdfViewer = options.pdfViewer;
|
||||
this.eventBus = options.eventBus;
|
||||
var contextMenuItems = options.contextMenuItems || null;
|
||||
constructor({ container, viewer = null, pdfViewer, eventBus,
|
||||
contextMenuItems = null, }) {
|
||||
this.container = container;
|
||||
this.viewer = viewer || container.firstElementChild;
|
||||
this.pdfViewer = pdfViewer;
|
||||
this.eventBus = eventBus;
|
||||
|
||||
this.active = false;
|
||||
this.args = null;
|
||||
@ -119,9 +119,9 @@ class PDFPresentationMode {
|
||||
|
||||
evt.preventDefault();
|
||||
|
||||
var delta = normalizeWheelEventDelta(evt);
|
||||
var currentTime = (new Date()).getTime();
|
||||
var storedTime = this.mouseScrollTimeStamp;
|
||||
let delta = normalizeWheelEventDelta(evt);
|
||||
let currentTime = (new Date()).getTime();
|
||||
let storedTime = this.mouseScrollTimeStamp;
|
||||
|
||||
// If we've already switched page, avoid accidentally switching again.
|
||||
if (currentTime > storedTime &&
|
||||
@ -136,9 +136,9 @@ class PDFPresentationMode {
|
||||
this.mouseScrollDelta += delta;
|
||||
|
||||
if (Math.abs(this.mouseScrollDelta) >= PAGE_SWITCH_THRESHOLD) {
|
||||
var totalDelta = this.mouseScrollDelta;
|
||||
let totalDelta = this.mouseScrollDelta;
|
||||
this._resetMouseScrollState();
|
||||
var success = totalDelta > 0 ? this._goToPreviousPage()
|
||||
let success = totalDelta > 0 ? this._goToPreviousPage()
|
||||
: this._goToNextPage();
|
||||
if (success) {
|
||||
this.mouseScrollTimeStamp = currentTime;
|
||||
@ -155,7 +155,7 @@ class PDFPresentationMode {
|
||||
* @private
|
||||
*/
|
||||
_goToPreviousPage() {
|
||||
var page = this.pdfViewer.currentPageNumber;
|
||||
let page = this.pdfViewer.currentPageNumber;
|
||||
// If we're at the first page, we don't need to do anything.
|
||||
if (page <= 1) {
|
||||
return false;
|
||||
@ -168,7 +168,7 @@ class PDFPresentationMode {
|
||||
* @private
|
||||
*/
|
||||
_goToNextPage() {
|
||||
var page = this.pdfViewer.currentPageNumber;
|
||||
let page = this.pdfViewer.currentPageNumber;
|
||||
// If we're at the last page, we don't need to do anything.
|
||||
if (page >= this.pdfViewer.pagesCount) {
|
||||
return false;
|
||||
@ -249,7 +249,7 @@ class PDFPresentationMode {
|
||||
* @private
|
||||
*/
|
||||
_exit() {
|
||||
var page = this.pdfViewer.currentPageNumber;
|
||||
let page = this.pdfViewer.currentPageNumber;
|
||||
this.container.classList.remove(ACTIVE_SELECTOR);
|
||||
|
||||
// Ensure that the correct page is scrolled into view when exiting
|
||||
@ -283,7 +283,7 @@ class PDFPresentationMode {
|
||||
if (evt.button === 0) {
|
||||
// Enable clicking of links in presentation mode. Note: only links
|
||||
// pointing to destinations in the current PDF document work.
|
||||
var isInternalLink = (evt.target.href &&
|
||||
let isInternalLink = (evt.target.href &&
|
||||
evt.target.classList.contains('internalLink'));
|
||||
if (!isInternalLink) {
|
||||
// Unless an internal link was clicked, advance one page.
|
||||
@ -378,10 +378,10 @@ class PDFPresentationMode {
|
||||
if (this.touchSwipeState === null) {
|
||||
return;
|
||||
}
|
||||
var delta = 0;
|
||||
var dx = this.touchSwipeState.endX - this.touchSwipeState.startX;
|
||||
var dy = this.touchSwipeState.endY - this.touchSwipeState.startY;
|
||||
var absAngle = Math.abs(Math.atan2(dy, dx));
|
||||
let delta = 0;
|
||||
let dx = this.touchSwipeState.endX - this.touchSwipeState.startX;
|
||||
let dy = this.touchSwipeState.endY - this.touchSwipeState.startY;
|
||||
let absAngle = Math.abs(Math.atan2(dy, dx));
|
||||
if (Math.abs(dx) > SWIPE_MIN_DISTANCE_THRESHOLD &&
|
||||
(absAngle <= SWIPE_ANGLE_THRESHOLD ||
|
||||
absAngle >= (Math.PI - SWIPE_ANGLE_THRESHOLD))) {
|
||||
|
@ -138,7 +138,7 @@ class PDFSidebar {
|
||||
// immediately closing it would be bad UX.
|
||||
return;
|
||||
}
|
||||
var isViewPreserved = (view === this.visibleView);
|
||||
let isViewPreserved = (view === this.visibleView);
|
||||
this.switchView(view, /* forceOpen */ true);
|
||||
|
||||
if (isViewPreserved) {
|
||||
@ -159,8 +159,8 @@ class PDFSidebar {
|
||||
this.close();
|
||||
return;
|
||||
}
|
||||
var isViewChanged = (view !== this.active);
|
||||
var shouldForceRendering = false;
|
||||
let isViewChanged = (view !== this.active);
|
||||
let shouldForceRendering = false;
|
||||
|
||||
switch (view) {
|
||||
case SidebarView.THUMBS:
|
||||
@ -290,19 +290,18 @@ class PDFSidebar {
|
||||
* @private
|
||||
*/
|
||||
_updateThumbnailViewer() {
|
||||
var pdfViewer = this.pdfViewer;
|
||||
var thumbnailViewer = this.pdfThumbnailViewer;
|
||||
let { pdfViewer, pdfThumbnailViewer, } = this;
|
||||
|
||||
// Use the rendered pages to set the corresponding thumbnail images.
|
||||
var pagesCount = pdfViewer.pagesCount;
|
||||
for (var pageIndex = 0; pageIndex < pagesCount; pageIndex++) {
|
||||
var pageView = pdfViewer.getPageView(pageIndex);
|
||||
let pagesCount = pdfViewer.pagesCount;
|
||||
for (let pageIndex = 0; pageIndex < pagesCount; pageIndex++) {
|
||||
let pageView = pdfViewer.getPageView(pageIndex);
|
||||
if (pageView && pageView.renderingState === RenderingStates.FINISHED) {
|
||||
var thumbnailView = thumbnailViewer.getThumbnail(pageIndex);
|
||||
let thumbnailView = pdfThumbnailViewer.getThumbnail(pageIndex);
|
||||
thumbnailView.setImage(pageView);
|
||||
}
|
||||
}
|
||||
thumbnailViewer.scrollThumbnailIntoView(pdfViewer.currentPageNumber);
|
||||
pdfThumbnailViewer.scrollThumbnailIntoView(pdfViewer.currentPageNumber);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -347,7 +346,7 @@ class PDFSidebar {
|
||||
return;
|
||||
}
|
||||
|
||||
var removeNotification = (view) => {
|
||||
let removeNotification = (view) => {
|
||||
switch (view) {
|
||||
case SidebarView.OUTLINE:
|
||||
this.outlineButton.classList.remove(UI_NOTIFICATION_CLASS);
|
||||
@ -407,7 +406,7 @@ class PDFSidebar {
|
||||
|
||||
// Disable/enable views.
|
||||
this.eventBus.on('outlineloaded', (evt) => {
|
||||
var outlineCount = evt.outlineCount;
|
||||
let outlineCount = evt.outlineCount;
|
||||
|
||||
this.outlineButton.disabled = !outlineCount;
|
||||
|
||||
@ -421,7 +420,7 @@ class PDFSidebar {
|
||||
});
|
||||
|
||||
this.eventBus.on('attachmentsloaded', (evt) => {
|
||||
var attachmentsCount = evt.attachmentsCount;
|
||||
let attachmentsCount = evt.attachmentsCount;
|
||||
|
||||
this.attachmentsButton.disabled = !attachmentsCount;
|
||||
|
||||
|
@ -30,16 +30,16 @@ class ViewHistory {
|
||||
this.cacheSize = cacheSize;
|
||||
|
||||
this._initializedPromise = this._readFromStorage().then((databaseStr) => {
|
||||
var database = JSON.parse(databaseStr || '{}');
|
||||
let database = JSON.parse(databaseStr || '{}');
|
||||
if (!('files' in database)) {
|
||||
database.files = [];
|
||||
}
|
||||
if (database.files.length >= this.cacheSize) {
|
||||
database.files.shift();
|
||||
}
|
||||
var index;
|
||||
for (var i = 0, length = database.files.length; i < length; i++) {
|
||||
var branch = database.files[i];
|
||||
let index;
|
||||
for (let i = 0, length = database.files.length; i < length; i++) {
|
||||
let branch = database.files[i];
|
||||
if (branch.fingerprint === this.fingerprint) {
|
||||
index = i;
|
||||
break;
|
||||
@ -55,7 +55,7 @@ class ViewHistory {
|
||||
|
||||
_writeToStorage() {
|
||||
return new Promise((resolve) => {
|
||||
var databaseStr = JSON.stringify(this.database);
|
||||
let databaseStr = JSON.stringify(this.database);
|
||||
|
||||
if (typeof PDFJSDev !== 'undefined' &&
|
||||
PDFJSDev.test('FIREFOX || MOZCENTRAL')) {
|
||||
@ -73,16 +73,16 @@ class ViewHistory {
|
||||
PDFJSDev.test('FIREFOX || MOZCENTRAL')) {
|
||||
resolve(sessionStorage.getItem('pdfjs.history'));
|
||||
} else {
|
||||
var value = localStorage.getItem('pdfjs.history');
|
||||
let value = localStorage.getItem('pdfjs.history');
|
||||
|
||||
// TODO: Remove this key-name conversion after a suitable time-frame.
|
||||
// Note that we only remove the old 'database' entry if it looks like
|
||||
// it was created by PDF.js, to avoid removing someone else's data.
|
||||
if (!value) {
|
||||
var databaseStr = localStorage.getItem('database');
|
||||
let databaseStr = localStorage.getItem('database');
|
||||
if (databaseStr) {
|
||||
try {
|
||||
var database = JSON.parse(databaseStr);
|
||||
let database = JSON.parse(databaseStr);
|
||||
if (typeof database.files[0].fingerprint === 'string') {
|
||||
localStorage.setItem('pdfjs.history', databaseStr);
|
||||
localStorage.removeItem('database');
|
||||
@ -105,7 +105,7 @@ class ViewHistory {
|
||||
|
||||
setMultiple(properties) {
|
||||
return this._initializedPromise.then(() => {
|
||||
for (var name in properties) {
|
||||
for (let name in properties) {
|
||||
this.file[name] = properties[name];
|
||||
}
|
||||
return this._writeToStorage();
|
||||
@ -114,17 +114,17 @@ class ViewHistory {
|
||||
|
||||
get(name, defaultValue) {
|
||||
return this._initializedPromise.then(() => {
|
||||
var val = this.file[name];
|
||||
let val = this.file[name];
|
||||
return val !== undefined ? val : defaultValue;
|
||||
});
|
||||
}
|
||||
|
||||
getMultiple(properties) {
|
||||
return this._initializedPromise.then(() => {
|
||||
var values = Object.create(null);
|
||||
let values = Object.create(null);
|
||||
|
||||
for (var name in properties) {
|
||||
var val = this.file[name];
|
||||
for (let name in properties) {
|
||||
let val = this.file[name];
|
||||
values[name] = val !== undefined ? val : properties[name];
|
||||
}
|
||||
return values;
|
||||
|
Loading…
x
Reference in New Issue
Block a user