CVE-2025-47943
Description
Gogs is an open source self-hosted Git service. In application version 0.14.0+dev and prior, there is a stored cross-site scripting (XSS) vulnerability present in Gogs, which allows client-side Javascript code execution. The vulnerability is caused by the usage of a vulnerable and outdated component: pdfjs-1.4.20 under public/plugins/. This issue has been fixed for gogs.io/gogs in version 0.13.3.
AI Insight
LLM-synthesized narrative grounded in this CVE's description and references.
Gogs 0.14.0+dev and prior suffer from a stored XSS vulnerability due to outdated pdfjs-1.4.20, allowing arbitrary JavaScript execution.
Vulnerability
CVE-2025-47943 is a stored cross-site scripting (XSS) vulnerability in Gogs, an open-source self-hosted Git service. The flaw originates from the inclusion of an outdated and vulnerable PDF.js library (pdfjs-1.4.20) located under public/plugins/. This component fails to properly sanitize PDF content, enabling attackers to inject malicious JavaScript code that gets stored and later executed in the browser of any user viewing the crafted PDF file [1][2].
Exploitation
An attacker with the ability to upload a PDF file to a Gogs repository (e.g., via the web interface or API) can craft a malicious PDF containing embedded JavaScript. When other users, including administrators, view the PDF through Gogs' built-in PDF renderer, the injected script executes in their browser session. No special privileges are required beyond the ability to upload files to a repository; the attack is performed in the context of the victim's session [2].
Impact
Successful exploitation allows the attacker to perform actions on behalf of the victim, such as stealing session cookies, modifying repository content, creating or deleting issues, or performing other administrative actions if the victim is an admin. The stored XSS can persist until the malicious PDF is removed, affecting all users who view it [2][3].
Mitigation
The vulnerability is fixed in Gogs version 0.13.3, which updates or removes the vulnerable PDF.js component. Users are strongly advised to upgrade to at least v0.13.3, and preferably to the latest patch release v0.13.4, which includes additional security fixes [3]. No workarounds are documented; updating is the recommended course of action [4].
AI Insight generated on May 19, 2026. Synthesized from this CVE's description and the cited reference URLs; citations are validated against the source bundle.
Affected packages
Versions sourced from the GitHub Security Advisory.
| Package | Affected versions | Patched versions |
|---|---|---|
github.com/gogs/gogsGo | < 0.13.3-0.20250608224432-110117b2e5e5 | 0.13.3-0.20250608224432-110117b2e5e5 |
gogs.io/gogsGo | < 0.13.3-0.20250608224432-110117b2e5e5 | 0.13.3-0.20250608224432-110117b2e5e5 |
Affected products
5- ghsa-coords3 versionspkg:golang/github.com/gogs/gogspkg:golang/gogs.io/gogspkg:rpm/opensuse/govulncheck-vulndb&distro=openSUSE%20Tumbleweed
< 0.13.3-0.20250608224432-110117b2e5e5+ 2 more
- (no CPE)range: < 0.13.3-0.20250608224432-110117b2e5e5
- (no CPE)range: < 0.13.3-0.20250608224432-110117b2e5e5
- (no CPE)range: < 0.0.20250730T213748-1.1
Patches
2110117b2e5e5security: patch for Stored XSS in PDF renderer (#7966)
300 files changed · +81715 −64125
public/plugins/pdfjs-1.4.20/build/pdf.js+0 −10375 removedpublic/plugins/pdfjs-1.4.20/build/pdf.worker.js+0 −42034 removedpublic/plugins/pdfjs-1.4.20/web/compatibility.js+0 −593 removed@@ -1,593 +0,0 @@ -/* Copyright 2012 Mozilla Foundation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -/* globals VBArray, PDFJS */ - -'use strict'; - -// Initializing PDFJS global object here, it case if we need to change/disable -// some PDF.js features, e.g. range requests -if (typeof PDFJS === 'undefined') { - (typeof window !== 'undefined' ? window : this).PDFJS = {}; -} - -// Checking if the typed arrays are supported -// Support: iOS<6.0 (subarray), IE<10, Android<4.0 -(function checkTypedArrayCompatibility() { - if (typeof Uint8Array !== 'undefined') { - // Support: iOS<6.0 - if (typeof Uint8Array.prototype.subarray === 'undefined') { - Uint8Array.prototype.subarray = function subarray(start, end) { - return new Uint8Array(this.slice(start, end)); - }; - Float32Array.prototype.subarray = function subarray(start, end) { - return new Float32Array(this.slice(start, end)); - }; - } - - // Support: Android<4.1 - if (typeof Float64Array === 'undefined') { - window.Float64Array = Float32Array; - } - return; - } - - function subarray(start, end) { - return new TypedArray(this.slice(start, end)); - } - - function setArrayOffset(array, offset) { - if (arguments.length < 2) { - offset = 0; - } - for (var i = 0, n = array.length; i < n; ++i, ++offset) { - this[offset] = array[i] & 0xFF; - } - } - - function TypedArray(arg1) { - var result, i, n; - if (typeof arg1 === 'number') { - result = []; - for (i = 0; i < arg1; ++i) { - result[i] = 0; - } - } else if ('slice' in arg1) { - result = arg1.slice(0); - } else { - result = []; - for (i = 0, n = arg1.length; i < n; ++i) { - result[i] = arg1[i]; - } - } - - result.subarray = subarray; - result.buffer = result; - result.byteLength = result.length; - result.set = setArrayOffset; - - if (typeof arg1 === 'object' && arg1.buffer) { - result.buffer = arg1.buffer; - } - return result; - } - - window.Uint8Array = TypedArray; - window.Int8Array = TypedArray; - - // we don't need support for set, byteLength for 32-bit array - // so we can use the TypedArray as well - window.Uint32Array = TypedArray; - window.Int32Array = TypedArray; - window.Uint16Array = TypedArray; - window.Float32Array = TypedArray; - window.Float64Array = TypedArray; -})(); - -// URL = URL || webkitURL -// Support: Safari<7, Android 4.2+ -(function normalizeURLObject() { - if (!window.URL) { - window.URL = window.webkitURL; - } -})(); - -// Object.defineProperty()? -// Support: Android<4.0, Safari<5.1 -(function checkObjectDefinePropertyCompatibility() { - if (typeof Object.defineProperty !== 'undefined') { - var definePropertyPossible = true; - try { - // some browsers (e.g. safari) cannot use defineProperty() on DOM objects - // and thus the native version is not sufficient - Object.defineProperty(new Image(), 'id', { value: 'test' }); - // ... another test for android gb browser for non-DOM objects - var Test = function Test() {}; - Test.prototype = { get id() { } }; - Object.defineProperty(new Test(), 'id', - { value: '', configurable: true, enumerable: true, writable: false }); - } catch (e) { - definePropertyPossible = false; - } - if (definePropertyPossible) { - return; - } - } - - Object.defineProperty = function objectDefineProperty(obj, name, def) { - delete obj[name]; - if ('get' in def) { - obj.__defineGetter__(name, def['get']); - } - if ('set' in def) { - obj.__defineSetter__(name, def['set']); - } - if ('value' in def) { - obj.__defineSetter__(name, function objectDefinePropertySetter(value) { - this.__defineGetter__(name, function objectDefinePropertyGetter() { - return value; - }); - return value; - }); - obj[name] = def.value; - } - }; -})(); - - -// No XMLHttpRequest#response? -// Support: IE<11, Android <4.0 -(function checkXMLHttpRequestResponseCompatibility() { - var xhrPrototype = XMLHttpRequest.prototype; - var xhr = new XMLHttpRequest(); - if (!('overrideMimeType' in xhr)) { - // IE10 might have response, but not overrideMimeType - // Support: IE10 - Object.defineProperty(xhrPrototype, 'overrideMimeType', { - value: function xmlHttpRequestOverrideMimeType(mimeType) {} - }); - } - if ('responseType' in xhr) { - return; - } - - // The worker will be using XHR, so we can save time and disable worker. - PDFJS.disableWorker = true; - - Object.defineProperty(xhrPrototype, 'responseType', { - get: function xmlHttpRequestGetResponseType() { - return this._responseType || 'text'; - }, - set: function xmlHttpRequestSetResponseType(value) { - if (value === 'text' || value === 'arraybuffer') { - this._responseType = value; - if (value === 'arraybuffer' && - typeof this.overrideMimeType === 'function') { - this.overrideMimeType('text/plain; charset=x-user-defined'); - } - } - } - }); - - // Support: IE9 - if (typeof VBArray !== 'undefined') { - Object.defineProperty(xhrPrototype, 'response', { - get: function xmlHttpRequestResponseGet() { - if (this.responseType === 'arraybuffer') { - return new Uint8Array(new VBArray(this.responseBody).toArray()); - } else { - return this.responseText; - } - } - }); - return; - } - - Object.defineProperty(xhrPrototype, 'response', { - get: function xmlHttpRequestResponseGet() { - if (this.responseType !== 'arraybuffer') { - return this.responseText; - } - var text = this.responseText; - var i, n = text.length; - var result = new Uint8Array(n); - for (i = 0; i < n; ++i) { - result[i] = text.charCodeAt(i) & 0xFF; - } - return result.buffer; - } - }); -})(); - -// window.btoa (base64 encode function) ? -// Support: IE<10 -(function checkWindowBtoaCompatibility() { - if ('btoa' in window) { - return; - } - - var digits = - 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/='; - - window.btoa = function windowBtoa(chars) { - var buffer = ''; - var i, n; - for (i = 0, n = chars.length; i < n; i += 3) { - var b1 = chars.charCodeAt(i) & 0xFF; - var b2 = chars.charCodeAt(i + 1) & 0xFF; - var b3 = chars.charCodeAt(i + 2) & 0xFF; - var d1 = b1 >> 2, d2 = ((b1 & 3) << 4) | (b2 >> 4); - var d3 = i + 1 < n ? ((b2 & 0xF) << 2) | (b3 >> 6) : 64; - var d4 = i + 2 < n ? (b3 & 0x3F) : 64; - buffer += (digits.charAt(d1) + digits.charAt(d2) + - digits.charAt(d3) + digits.charAt(d4)); - } - return buffer; - }; -})(); - -// window.atob (base64 encode function)? -// Support: IE<10 -(function checkWindowAtobCompatibility() { - if ('atob' in window) { - return; - } - - // https://github.com/davidchambers/Base64.js - var digits = - 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/='; - window.atob = function (input) { - input = input.replace(/=+$/, ''); - if (input.length % 4 === 1) { - throw new Error('bad atob input'); - } - for ( - // initialize result and counters - var bc = 0, bs, buffer, idx = 0, output = ''; - // get next character - buffer = input.charAt(idx++); - // character found in table? - // initialize bit storage and add its ascii value - ~buffer && (bs = bc % 4 ? bs * 64 + buffer : buffer, - // and if not first of each 4 characters, - // convert the first 8 bits to one ascii character - bc++ % 4) ? output += String.fromCharCode(255 & bs >> (-2 * bc & 6)) : 0 - ) { - // try to find character in table (0-63, not found => -1) - buffer = digits.indexOf(buffer); - } - return output; - }; -})(); - -// Function.prototype.bind? -// Support: Android<4.0, iOS<6.0 -(function checkFunctionPrototypeBindCompatibility() { - if (typeof Function.prototype.bind !== 'undefined') { - return; - } - - Function.prototype.bind = function functionPrototypeBind(obj) { - var fn = this, headArgs = Array.prototype.slice.call(arguments, 1); - var bound = function functionPrototypeBindBound() { - var args = headArgs.concat(Array.prototype.slice.call(arguments)); - return fn.apply(obj, args); - }; - return bound; - }; -})(); - -// HTMLElement dataset property -// Support: IE<11, Safari<5.1, Android<4.0 -(function checkDatasetProperty() { - var div = document.createElement('div'); - if ('dataset' in div) { - return; // dataset property exists - } - - Object.defineProperty(HTMLElement.prototype, 'dataset', { - get: function() { - if (this._dataset) { - return this._dataset; - } - - var dataset = {}; - for (var j = 0, jj = this.attributes.length; j < jj; j++) { - var attribute = this.attributes[j]; - if (attribute.name.substring(0, 5) !== 'data-') { - continue; - } - var key = attribute.name.substring(5).replace(/\-([a-z])/g, - function(all, ch) { - return ch.toUpperCase(); - }); - dataset[key] = attribute.value; - } - - Object.defineProperty(this, '_dataset', { - value: dataset, - writable: false, - enumerable: false - }); - return dataset; - }, - enumerable: true - }); -})(); - -// HTMLElement classList property -// Support: IE<10, Android<4.0, iOS<5.0 -(function checkClassListProperty() { - var div = document.createElement('div'); - if ('classList' in div) { - return; // classList property exists - } - - function changeList(element, itemName, add, remove) { - var s = element.className || ''; - var list = s.split(/\s+/g); - if (list[0] === '') { - list.shift(); - } - var index = list.indexOf(itemName); - if (index < 0 && add) { - list.push(itemName); - } - if (index >= 0 && remove) { - list.splice(index, 1); - } - element.className = list.join(' '); - return (index >= 0); - } - - var classListPrototype = { - add: function(name) { - changeList(this.element, name, true, false); - }, - contains: function(name) { - return changeList(this.element, name, false, false); - }, - remove: function(name) { - changeList(this.element, name, false, true); - }, - toggle: function(name) { - changeList(this.element, name, true, true); - } - }; - - Object.defineProperty(HTMLElement.prototype, 'classList', { - get: function() { - if (this._classList) { - return this._classList; - } - - var classList = Object.create(classListPrototype, { - element: { - value: this, - writable: false, - enumerable: true - } - }); - Object.defineProperty(this, '_classList', { - value: classList, - writable: false, - enumerable: false - }); - return classList; - }, - enumerable: true - }); -})(); - -// Check console compatibility -// In older IE versions the console object is not available -// unless console is open. -// Support: IE<10 -(function checkConsoleCompatibility() { - if (!('console' in window)) { - window.console = { - log: function() {}, - error: function() {}, - warn: function() {} - }; - } else if (!('bind' in console.log)) { - // native functions in IE9 might not have bind - console.log = (function(fn) { - return function(msg) { return fn(msg); }; - })(console.log); - console.error = (function(fn) { - return function(msg) { return fn(msg); }; - })(console.error); - console.warn = (function(fn) { - return function(msg) { return fn(msg); }; - })(console.warn); - } -})(); - -// Check onclick compatibility in Opera -// Support: Opera<15 -(function checkOnClickCompatibility() { - // workaround for reported Opera bug DSK-354448: - // onclick fires on disabled buttons with opaque content - function ignoreIfTargetDisabled(event) { - if (isDisabled(event.target)) { - event.stopPropagation(); - } - } - function isDisabled(node) { - return node.disabled || (node.parentNode && isDisabled(node.parentNode)); - } - if (navigator.userAgent.indexOf('Opera') !== -1) { - // use browser detection since we cannot feature-check this bug - document.addEventListener('click', ignoreIfTargetDisabled, true); - } -})(); - -// Checks if possible to use URL.createObjectURL() -// Support: IE -(function checkOnBlobSupport() { - // sometimes IE loosing the data created with createObjectURL(), see #3977 - if (navigator.userAgent.indexOf('Trident') >= 0) { - PDFJS.disableCreateObjectURL = true; - } -})(); - -// Checks if navigator.language is supported -(function checkNavigatorLanguage() { - if ('language' in navigator) { - return; - } - PDFJS.locale = navigator.userLanguage || 'en-US'; -})(); - -(function checkRangeRequests() { - // Safari has issues with cached range requests see: - // https://github.com/mozilla/pdf.js/issues/3260 - // Last tested with version 6.0.4. - // Support: Safari 6.0+ - var isSafari = Object.prototype.toString.call( - window.HTMLElement).indexOf('Constructor') > 0; - - // Older versions of Android (pre 3.0) has issues with range requests, see: - // https://github.com/mozilla/pdf.js/issues/3381. - // Make sure that we only match webkit-based Android browsers, - // since Firefox/Fennec works as expected. - // Support: Android<3.0 - var regex = /Android\s[0-2][^\d]/; - var isOldAndroid = regex.test(navigator.userAgent); - - // Range requests are broken in Chrome 39 and 40, https://crbug.com/442318 - var isChromeWithRangeBug = /Chrome\/(39|40)\./.test(navigator.userAgent); - - if (isSafari || isOldAndroid || isChromeWithRangeBug) { - PDFJS.disableRange = true; - PDFJS.disableStream = true; - } -})(); - -// Check if the browser supports manipulation of the history. -// Support: IE<10, Android<4.2 -(function checkHistoryManipulation() { - // Android 2.x has so buggy pushState support that it was removed in - // Android 3.0 and restored as late as in Android 4.2. - // Support: Android 2.x - if (!history.pushState || navigator.userAgent.indexOf('Android 2.') >= 0) { - PDFJS.disableHistory = true; - } -})(); - -// Support: IE<11, Chrome<21, Android<4.4, Safari<6 -(function checkSetPresenceInImageData() { - // IE < 11 will use window.CanvasPixelArray which lacks set function. - if (window.CanvasPixelArray) { - if (typeof window.CanvasPixelArray.prototype.set !== 'function') { - window.CanvasPixelArray.prototype.set = function(arr) { - for (var i = 0, ii = this.length; i < ii; i++) { - this[i] = arr[i]; - } - }; - } - } else { - // Old Chrome and Android use an inaccessible CanvasPixelArray prototype. - // Because we cannot feature detect it, we rely on user agent parsing. - var polyfill = false, versionMatch; - if (navigator.userAgent.indexOf('Chrom') >= 0) { - versionMatch = navigator.userAgent.match(/Chrom(e|ium)\/([0-9]+)\./); - // Chrome < 21 lacks the set function. - polyfill = versionMatch && parseInt(versionMatch[2]) < 21; - } else if (navigator.userAgent.indexOf('Android') >= 0) { - // Android < 4.4 lacks the set function. - // Android >= 4.4 will contain Chrome in the user agent, - // thus pass the Chrome check above and not reach this block. - polyfill = /Android\s[0-4][^\d]/g.test(navigator.userAgent); - } else if (navigator.userAgent.indexOf('Safari') >= 0) { - versionMatch = navigator.userAgent. - match(/Version\/([0-9]+)\.([0-9]+)\.([0-9]+) Safari\//); - // Safari < 6 lacks the set function. - polyfill = versionMatch && parseInt(versionMatch[1]) < 6; - } - - if (polyfill) { - var contextPrototype = window.CanvasRenderingContext2D.prototype; - var createImageData = contextPrototype.createImageData; - contextPrototype.createImageData = function(w, h) { - var imageData = createImageData.call(this, w, h); - imageData.data.set = function(arr) { - for (var i = 0, ii = this.length; i < ii; i++) { - this[i] = arr[i]; - } - }; - return imageData; - }; - // this closure will be kept referenced, so clear its vars - contextPrototype = null; - } - } -})(); - -// Support: IE<10, Android<4.0, iOS -(function checkRequestAnimationFrame() { - function fakeRequestAnimationFrame(callback) { - window.setTimeout(callback, 20); - } - - var isIOS = /(iPad|iPhone|iPod)/g.test(navigator.userAgent); - if (isIOS) { - // requestAnimationFrame on iOS is broken, replacing with fake one. - window.requestAnimationFrame = fakeRequestAnimationFrame; - return; - } - if ('requestAnimationFrame' in window) { - return; - } - window.requestAnimationFrame = - window.mozRequestAnimationFrame || - window.webkitRequestAnimationFrame || - fakeRequestAnimationFrame; -})(); - -(function checkCanvasSizeLimitation() { - var isIOS = /(iPad|iPhone|iPod)/g.test(navigator.userAgent); - var isAndroid = /Android/g.test(navigator.userAgent); - if (isIOS || isAndroid) { - // 5MP - PDFJS.maxCanvasPixels = 5242880; - } -})(); - -// Disable fullscreen support for certain problematic configurations. -// Support: IE11+ (when embedded). -(function checkFullscreenSupport() { - var isEmbeddedIE = (navigator.userAgent.indexOf('Trident') >= 0 && - window.parent !== window); - if (isEmbeddedIE) { - PDFJS.disableFullscreen = true; - } -})(); - -// Provides document.currentScript support -// Support: IE, Chrome<29. -(function checkCurrentScript() { - if ('currentScript' in document) { - return; - } - Object.defineProperty(document, 'currentScript', { - get: function () { - var scripts = document.getElementsByTagName('script'); - return scripts[scripts.length - 1]; - }, - enumerable: true, - configurable: true - }); -})();
public/plugins/pdfjs-1.4.20/web/debugger.js+0 −618 removed@@ -1,618 +0,0 @@ -/* Copyright 2012 Mozilla Foundation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -/* globals PDFJS */ - -'use strict'; - -var FontInspector = (function FontInspectorClosure() { - var fonts; - var active = false; - var fontAttribute = 'data-font-name'; - function removeSelection() { - var divs = document.querySelectorAll('div[' + fontAttribute + ']'); - for (var i = 0, ii = divs.length; i < ii; ++i) { - var div = divs[i]; - div.className = ''; - } - } - function resetSelection() { - var divs = document.querySelectorAll('div[' + fontAttribute + ']'); - for (var i = 0, ii = divs.length; i < ii; ++i) { - var div = divs[i]; - div.className = 'debuggerHideText'; - } - } - function selectFont(fontName, show) { - var divs = document.querySelectorAll('div[' + fontAttribute + '=' + - fontName + ']'); - for (var i = 0, ii = divs.length; i < ii; ++i) { - var div = divs[i]; - div.className = show ? 'debuggerShowText' : 'debuggerHideText'; - } - } - function textLayerClick(e) { - if (!e.target.dataset.fontName || - e.target.tagName.toUpperCase() !== 'DIV') { - return; - } - var fontName = e.target.dataset.fontName; - var selects = document.getElementsByTagName('input'); - for (var i = 0; i < selects.length; ++i) { - var select = selects[i]; - if (select.dataset.fontName !== fontName) { - continue; - } - select.checked = !select.checked; - selectFont(fontName, select.checked); - select.scrollIntoView(); - } - } - return { - // Properties/functions needed by PDFBug. - id: 'FontInspector', - name: 'Font Inspector', - panel: null, - manager: null, - init: function init() { - var panel = this.panel; - panel.setAttribute('style', 'padding: 5px;'); - var tmp = document.createElement('button'); - tmp.addEventListener('click', resetSelection); - tmp.textContent = 'Refresh'; - panel.appendChild(tmp); - - fonts = document.createElement('div'); - panel.appendChild(fonts); - }, - cleanup: function cleanup() { - fonts.textContent = ''; - }, - enabled: false, - get active() { - return active; - }, - set active(value) { - active = value; - if (active) { - document.body.addEventListener('click', textLayerClick, true); - resetSelection(); - } else { - document.body.removeEventListener('click', textLayerClick, true); - removeSelection(); - } - }, - // FontInspector specific functions. - fontAdded: function fontAdded(fontObj, url) { - function properties(obj, list) { - var moreInfo = document.createElement('table'); - for (var i = 0; i < list.length; i++) { - var tr = document.createElement('tr'); - var td1 = document.createElement('td'); - td1.textContent = list[i]; - tr.appendChild(td1); - var td2 = document.createElement('td'); - td2.textContent = obj[list[i]].toString(); - tr.appendChild(td2); - moreInfo.appendChild(tr); - } - return moreInfo; - } - var moreInfo = properties(fontObj, ['name', 'type']); - var fontName = fontObj.loadedName; - var font = document.createElement('div'); - var name = document.createElement('span'); - name.textContent = fontName; - var download = document.createElement('a'); - if (url) { - url = /url\(['"]?([^\)"']+)/.exec(url); - download.href = url[1]; - } else if (fontObj.data) { - url = URL.createObjectURL(new Blob([fontObj.data], { - type: fontObj.mimeType - })); - download.href = url; - } - download.textContent = 'Download'; - var logIt = document.createElement('a'); - logIt.href = ''; - logIt.textContent = 'Log'; - logIt.addEventListener('click', function(event) { - event.preventDefault(); - console.log(fontObj); - }); - var select = document.createElement('input'); - select.setAttribute('type', 'checkbox'); - select.dataset.fontName = fontName; - select.addEventListener('click', (function(select, fontName) { - return (function() { - selectFont(fontName, select.checked); - }); - })(select, fontName)); - font.appendChild(select); - font.appendChild(name); - font.appendChild(document.createTextNode(' ')); - font.appendChild(download); - font.appendChild(document.createTextNode(' ')); - font.appendChild(logIt); - font.appendChild(moreInfo); - fonts.appendChild(font); - // Somewhat of a hack, should probably add a hook for when the text layer - // is done rendering. - setTimeout(function() { - if (this.active) { - resetSelection(); - } - }.bind(this), 2000); - } - }; -})(); - -// Manages all the page steppers. -var StepperManager = (function StepperManagerClosure() { - var steppers = []; - var stepperDiv = null; - var stepperControls = null; - var stepperChooser = null; - var breakPoints = {}; - return { - // Properties/functions needed by PDFBug. - id: 'Stepper', - name: 'Stepper', - panel: null, - manager: null, - init: function init() { - var self = this; - this.panel.setAttribute('style', 'padding: 5px;'); - stepperControls = document.createElement('div'); - stepperChooser = document.createElement('select'); - stepperChooser.addEventListener('change', function(event) { - self.selectStepper(this.value); - }); - stepperControls.appendChild(stepperChooser); - stepperDiv = document.createElement('div'); - this.panel.appendChild(stepperControls); - this.panel.appendChild(stepperDiv); - if (sessionStorage.getItem('pdfjsBreakPoints')) { - breakPoints = JSON.parse(sessionStorage.getItem('pdfjsBreakPoints')); - } - }, - cleanup: function cleanup() { - stepperChooser.textContent = ''; - stepperDiv.textContent = ''; - steppers = []; - }, - enabled: false, - active: false, - // Stepper specific functions. - create: function create(pageIndex) { - var debug = document.createElement('div'); - debug.id = 'stepper' + pageIndex; - debug.setAttribute('hidden', true); - debug.className = 'stepper'; - stepperDiv.appendChild(debug); - var b = document.createElement('option'); - b.textContent = 'Page ' + (pageIndex + 1); - b.value = pageIndex; - stepperChooser.appendChild(b); - var initBreakPoints = breakPoints[pageIndex] || []; - var stepper = new Stepper(debug, pageIndex, initBreakPoints); - steppers.push(stepper); - if (steppers.length === 1) { - this.selectStepper(pageIndex, false); - } - return stepper; - }, - selectStepper: function selectStepper(pageIndex, selectPanel) { - var i; - pageIndex = pageIndex | 0; - if (selectPanel) { - this.manager.selectPanel(this); - } - for (i = 0; i < steppers.length; ++i) { - var stepper = steppers[i]; - if (stepper.pageIndex === pageIndex) { - stepper.panel.removeAttribute('hidden'); - } else { - stepper.panel.setAttribute('hidden', true); - } - } - var options = stepperChooser.options; - for (i = 0; i < options.length; ++i) { - var option = options[i]; - option.selected = (option.value | 0) === pageIndex; - } - }, - saveBreakPoints: function saveBreakPoints(pageIndex, bps) { - breakPoints[pageIndex] = bps; - sessionStorage.setItem('pdfjsBreakPoints', JSON.stringify(breakPoints)); - } - }; -})(); - -// The stepper for each page's IRQueue. -var Stepper = (function StepperClosure() { - // Shorter way to create element and optionally set textContent. - function c(tag, textContent) { - var d = document.createElement(tag); - if (textContent) { - d.textContent = textContent; - } - return d; - } - - var opMap = null; - - function simplifyArgs(args) { - if (typeof args === 'string') { - var MAX_STRING_LENGTH = 75; - return args.length <= MAX_STRING_LENGTH ? args : - args.substr(0, MAX_STRING_LENGTH) + '...'; - } - if (typeof args !== 'object' || args === null) { - return args; - } - if ('length' in args) { // array - var simpleArgs = [], i, ii; - var MAX_ITEMS = 10; - for (i = 0, ii = Math.min(MAX_ITEMS, args.length); i < ii; i++) { - simpleArgs.push(simplifyArgs(args[i])); - } - if (i < args.length) { - simpleArgs.push('...'); - } - return simpleArgs; - } - var simpleObj = {}; - for (var key in args) { - simpleObj[key] = simplifyArgs(args[key]); - } - return simpleObj; - } - - function Stepper(panel, pageIndex, initialBreakPoints) { - this.panel = panel; - this.breakPoint = 0; - this.nextBreakPoint = null; - this.pageIndex = pageIndex; - this.breakPoints = initialBreakPoints; - this.currentIdx = -1; - this.operatorListIdx = 0; - } - Stepper.prototype = { - init: function init() { - var panel = this.panel; - var content = c('div', 'c=continue, s=step'); - var table = c('table'); - content.appendChild(table); - table.cellSpacing = 0; - var headerRow = c('tr'); - table.appendChild(headerRow); - headerRow.appendChild(c('th', 'Break')); - headerRow.appendChild(c('th', 'Idx')); - headerRow.appendChild(c('th', 'fn')); - headerRow.appendChild(c('th', 'args')); - panel.appendChild(content); - this.table = table; - if (!opMap) { - opMap = Object.create(null); - for (var key in PDFJS.OPS) { - opMap[PDFJS.OPS[key]] = key; - } - } - }, - updateOperatorList: function updateOperatorList(operatorList) { - var self = this; - - function cboxOnClick() { - var x = +this.dataset.idx; - if (this.checked) { - self.breakPoints.push(x); - } else { - self.breakPoints.splice(self.breakPoints.indexOf(x), 1); - } - StepperManager.saveBreakPoints(self.pageIndex, self.breakPoints); - } - - var MAX_OPERATORS_COUNT = 15000; - if (this.operatorListIdx > MAX_OPERATORS_COUNT) { - return; - } - - var chunk = document.createDocumentFragment(); - var operatorsToDisplay = Math.min(MAX_OPERATORS_COUNT, - operatorList.fnArray.length); - for (var i = this.operatorListIdx; i < operatorsToDisplay; i++) { - var line = c('tr'); - line.className = 'line'; - line.dataset.idx = i; - chunk.appendChild(line); - var checked = this.breakPoints.indexOf(i) !== -1; - var args = operatorList.argsArray[i] || []; - - var breakCell = c('td'); - var cbox = c('input'); - cbox.type = 'checkbox'; - cbox.className = 'points'; - cbox.checked = checked; - cbox.dataset.idx = i; - cbox.onclick = cboxOnClick; - - breakCell.appendChild(cbox); - line.appendChild(breakCell); - line.appendChild(c('td', i.toString())); - var fn = opMap[operatorList.fnArray[i]]; - var decArgs = args; - if (fn === 'showText') { - var glyphs = args[0]; - var newArgs = []; - var str = []; - for (var j = 0; j < glyphs.length; j++) { - var glyph = glyphs[j]; - if (typeof glyph === 'object' && glyph !== null) { - str.push(glyph.fontChar); - } else { - if (str.length > 0) { - newArgs.push(str.join('')); - str = []; - } - newArgs.push(glyph); // null or number - } - } - if (str.length > 0) { - newArgs.push(str.join('')); - } - decArgs = [newArgs]; - } - line.appendChild(c('td', fn)); - line.appendChild(c('td', JSON.stringify(simplifyArgs(decArgs)))); - } - if (operatorsToDisplay < operatorList.fnArray.length) { - line = c('tr'); - var lastCell = c('td', '...'); - lastCell.colspan = 4; - chunk.appendChild(lastCell); - } - this.operatorListIdx = operatorList.fnArray.length; - this.table.appendChild(chunk); - }, - getNextBreakPoint: function getNextBreakPoint() { - this.breakPoints.sort(function(a, b) { return a - b; }); - for (var i = 0; i < this.breakPoints.length; i++) { - if (this.breakPoints[i] > this.currentIdx) { - return this.breakPoints[i]; - } - } - return null; - }, - breakIt: function breakIt(idx, callback) { - StepperManager.selectStepper(this.pageIndex, true); - var self = this; - var dom = document; - self.currentIdx = idx; - var listener = function(e) { - switch (e.keyCode) { - case 83: // step - dom.removeEventListener('keydown', listener, false); - self.nextBreakPoint = self.currentIdx + 1; - self.goTo(-1); - callback(); - break; - case 67: // continue - dom.removeEventListener('keydown', listener, false); - var breakPoint = self.getNextBreakPoint(); - self.nextBreakPoint = breakPoint; - self.goTo(-1); - callback(); - break; - } - }; - dom.addEventListener('keydown', listener, false); - self.goTo(idx); - }, - goTo: function goTo(idx) { - var allRows = this.panel.getElementsByClassName('line'); - for (var x = 0, xx = allRows.length; x < xx; ++x) { - var row = allRows[x]; - if ((row.dataset.idx | 0) === idx) { - row.style.backgroundColor = 'rgb(251,250,207)'; - row.scrollIntoView(); - } else { - row.style.backgroundColor = null; - } - } - } - }; - return Stepper; -})(); - -var Stats = (function Stats() { - var stats = []; - function clear(node) { - while (node.hasChildNodes()) { - node.removeChild(node.lastChild); - } - } - function getStatIndex(pageNumber) { - for (var i = 0, ii = stats.length; i < ii; ++i) { - if (stats[i].pageNumber === pageNumber) { - return i; - } - } - return false; - } - return { - // Properties/functions needed by PDFBug. - id: 'Stats', - name: 'Stats', - panel: null, - manager: null, - init: function init() { - this.panel.setAttribute('style', 'padding: 5px;'); - PDFJS.enableStats = true; - }, - enabled: false, - active: false, - // Stats specific functions. - add: function(pageNumber, stat) { - if (!stat) { - return; - } - var statsIndex = getStatIndex(pageNumber); - if (statsIndex !== false) { - var b = stats[statsIndex]; - this.panel.removeChild(b.div); - stats.splice(statsIndex, 1); - } - var wrapper = document.createElement('div'); - wrapper.className = 'stats'; - var title = document.createElement('div'); - title.className = 'title'; - title.textContent = 'Page: ' + pageNumber; - var statsDiv = document.createElement('div'); - statsDiv.textContent = stat.toString(); - wrapper.appendChild(title); - wrapper.appendChild(statsDiv); - stats.push({ pageNumber: pageNumber, div: wrapper }); - stats.sort(function(a, b) { return a.pageNumber - b.pageNumber; }); - clear(this.panel); - for (var i = 0, ii = stats.length; i < ii; ++i) { - this.panel.appendChild(stats[i].div); - } - }, - cleanup: function () { - stats = []; - clear(this.panel); - } - }; -})(); - -// Manages all the debugging tools. -var PDFBug = (function PDFBugClosure() { - var panelWidth = 300; - var buttons = []; - var activePanel = null; - - return { - tools: [ - FontInspector, - StepperManager, - Stats - ], - enable: function(ids) { - var all = false, tools = this.tools; - if (ids.length === 1 && ids[0] === 'all') { - all = true; - } - for (var i = 0; i < tools.length; ++i) { - var tool = tools[i]; - if (all || ids.indexOf(tool.id) !== -1) { - tool.enabled = true; - } - } - if (!all) { - // Sort the tools by the order they are enabled. - tools.sort(function(a, b) { - var indexA = ids.indexOf(a.id); - indexA = indexA < 0 ? tools.length : indexA; - var indexB = ids.indexOf(b.id); - indexB = indexB < 0 ? tools.length : indexB; - return indexA - indexB; - }); - } - }, - init: function init() { - /* - * Basic Layout: - * PDFBug - * Controls - * Panels - * Panel - * Panel - * ... - */ - var ui = document.createElement('div'); - ui.id = 'PDFBug'; - - var controls = document.createElement('div'); - controls.setAttribute('class', 'controls'); - ui.appendChild(controls); - - var panels = document.createElement('div'); - panels.setAttribute('class', 'panels'); - ui.appendChild(panels); - - var container = document.getElementById('viewerContainer'); - container.appendChild(ui); - container.style.right = panelWidth + 'px'; - - // Initialize all the debugging tools. - var tools = this.tools; - var self = this; - for (var i = 0; i < tools.length; ++i) { - var tool = tools[i]; - var panel = document.createElement('div'); - var panelButton = document.createElement('button'); - panelButton.textContent = tool.name; - panelButton.addEventListener('click', (function(selected) { - return function(event) { - event.preventDefault(); - self.selectPanel(selected); - }; - })(i)); - controls.appendChild(panelButton); - panels.appendChild(panel); - tool.panel = panel; - tool.manager = this; - if (tool.enabled) { - tool.init(); - } else { - panel.textContent = tool.name + ' is disabled. To enable add ' + - ' "' + tool.id + '" to the pdfBug parameter ' + - 'and refresh (seperate multiple by commas).'; - } - buttons.push(panelButton); - } - this.selectPanel(0); - }, - cleanup: function cleanup() { - for (var i = 0, ii = this.tools.length; i < ii; i++) { - if (this.tools[i].enabled) { - this.tools[i].cleanup(); - } - } - }, - selectPanel: function selectPanel(index) { - if (typeof index !== 'number') { - index = this.tools.indexOf(index); - } - if (index === activePanel) { - return; - } - activePanel = index; - var tools = this.tools; - for (var j = 0; j < tools.length; ++j) { - if (j === index) { - buttons[j].setAttribute('class', 'active'); - tools[j].active = true; - tools[j].panel.removeAttribute('hidden'); - } else { - buttons[j].setAttribute('class', ''); - tools[j].active = false; - tools[j].panel.setAttribute('hidden', 'true'); - } - } - } - }; -})();
public/plugins/pdfjs-1.4.20/web/images/annotation-check.svg+0 −1 removed@@ -1 +0,0 @@ -<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 40 40"><path id="path4" fill="#ff0" fill-opacity="1" stroke="#000" stroke-opacity="1" stroke-width="1.254" d="M 1.5006714,23.536225 6.8925879,18.994244 14.585721,26.037937 34.019683,4.5410479 38.499329,9.2235032 14.585721,35.458952 z"/></svg> \ No newline at end of file
public/plugins/pdfjs-1.4.20/web/images/annotation-comment.svg+0 −1 removed@@ -1 +0,0 @@ -<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 40 40"><rect width="33.76" height="33.76" x="3.12" y="3.12" fill="#ff0" fill-opacity="1" fill-rule="evenodd" stroke="#000" stroke-dasharray="none" stroke-miterlimit="4" stroke-opacity="1" stroke-width="1"/><path fill="#fff" fill-opacity="1" stroke="#000" stroke-dasharray="none" stroke-miterlimit="4" stroke-opacity="1" stroke-width=".93" d="m 20.677967,8.54499 c -7.342801,0 -13.295293,4.954293 -13.295293,11.065751 0,2.088793 0.3647173,3.484376 1.575539,5.150563 L 6.0267418,31.45501 13.560595,29.011117 c 2.221262,1.387962 4.125932,1.665377 7.117372,1.665377 7.3428,0 13.295291,-4.954295 13.295291,-11.065753 0,-6.111458 -5.952491,-11.065751 -13.295291,-11.065751 z"/></svg> \ No newline at end of file
public/plugins/pdfjs-1.4.20/web/images/annotation-help.svg+0 −1 removed@@ -1 +0,0 @@ -<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 40 40"><g id="layer1" transform="translate(0,-60)"><rect width="36.461" height="34.806" x="1.77" y="62.597" fill="#ff0" fill-opacity="1" fill-rule="evenodd" stroke="#000" stroke-opacity="1" stroke-width="1.308"/><g><path fill="#fff" fill-opacity="1" fill-rule="nonzero" stroke="#000" stroke-dasharray="none" stroke-miterlimit="4" stroke-opacity="1" stroke-width="1.028" d="M 20,64.526342 C 11.454135,64.526342 4.5263421,71.454135 4.5263421,80 4.5263421,88.545865 11.454135,95.473658 20,95.473658 28.545865,95.473658 35.473658,88.545865 35.473658,80 35.473658,71.454135 28.545865,64.526342 20,64.526342 z m -0.408738,9.488564 c 3.527079,0 6.393832,2.84061 6.393832,6.335441 0,3.494831 -2.866753,6.335441 -6.393832,6.335441 -3.527079,0 -6.393832,-2.84061 -6.393832,-6.335441 0,-3.494831 2.866753,-6.335441 6.393832,-6.335441 z" transform="matrix(0.88763677,0,0,0.88763677,2.2472646,8.9890584)"/><path fill="#000" fill-opacity="1" stroke="none" d="m 7.2335209,71.819938 4.9702591,4.161823 c -1.679956,2.581606 -1.443939,6.069592 0.159325,8.677725 l -5.1263071,3.424463 c 0.67516,1.231452 3.0166401,3.547686 4.2331971,4.194757 l 3.907728,-4.567277 c 2.541952,1.45975 5.730694,1.392161 8.438683,-0.12614 l 3.469517,6.108336 c 1.129779,-0.44367 4.742234,-3.449633 5.416358,-5.003859 l -5.46204,-4.415541 c 1.44319,-2.424098 1.651175,-5.267515 0.557303,-7.748623 l 5.903195,-3.833951 C 33.14257,71.704996 30.616217,69.018606 29.02952,67.99296 l -4.118813,4.981678 C 22.411934,71.205099 18.900853,70.937534 16.041319,72.32916 l -3.595408,-5.322091 c -1.345962,0.579488 -4.1293881,2.921233 -5.2123901,4.812869 z m 8.1010311,3.426672 c 2.75284,-2.446266 6.769149,-2.144694 9.048998,0.420874 2.279848,2.56557 2.113919,6.596919 -0.638924,9.043185 -2.752841,2.446267 -6.775754,2.13726 -9.055604,-0.428308 -2.279851,-2.565568 -2.107313,-6.589485 0.64553,-9.035751 z" transform="matrix(0.88763677,0,0,0.88763677,2.2472646,8.9890584)"/></g></g></svg> \ No newline at end of file
public/plugins/pdfjs-1.4.20/web/images/annotation-insert.svg+0 −1 removed@@ -1 +0,0 @@ -<svg xmlns="http://www.w3.org/2000/svg" width="64" height="64" viewBox="0 0 64 64"><path fill="#ff0" fill-opacity=".941" fill-rule="nonzero" stroke="#000" stroke-dasharray="none" stroke-miterlimit="4" stroke-opacity="1" stroke-width="1.005" d="M 32.003143,1.4044602 57.432701,62.632577 6.5672991,62.627924 z"/></svg> \ No newline at end of file
public/plugins/pdfjs-1.4.20/web/images/annotation-key.svg+0 −1 removed@@ -1 +0,0 @@ -<svg xmlns="http://www.w3.org/2000/svg" width="64" height="64" viewBox="0 0 64 64"><path id="path604" fill="#ff0" fill-opacity="1" stroke="#000" stroke-opacity="1" stroke-width="1.727" d="M 25.470843,9.4933766 C 25.30219,12.141818 30.139101,14.445969 34.704831,13.529144 40.62635,12.541995 41.398833,7.3856498 35.97505,5.777863 31.400921,4.1549155 25.157674,6.5445892 25.470843,9.4933766 z M 4.5246282,17.652051 C 4.068249,11.832873 9.2742983,5.9270407 18.437379,3.0977088 29.751911,-0.87185184 45.495663,1.4008022 53.603953,7.1104009 c 9.275765,6.1889221 7.158128,16.2079421 -3.171076,21.5939521 -1.784316,1.635815 -6.380222,1.21421 -7.068351,3.186186 -1.04003,0.972427 -1.288046,2.050158 -1.232864,3.168203 1.015111,2.000108 -3.831548,1.633216 -3.270553,3.759574 0.589477,5.264544 -0.179276,10.53738 -0.362842,15.806257 -0.492006,2.184998 1.163456,4.574232 -0.734888,6.610642 -2.482919,2.325184 -7.30604,2.189143 -9.193497,-0.274767 -2.733688,-1.740626 -8.254447,-3.615254 -6.104247,-6.339626 3.468112,-1.708686 -2.116197,-3.449897 0.431242,-5.080274 5.058402,-1.39256 -2.393215,-2.304318 -0.146889,-4.334645 3.069198,-0.977415 2.056986,-2.518352 -0.219121,-3.540397 1.876567,-1.807151 1.484149,-4.868919 -2.565455,-5.942205 0.150866,-1.805474 2.905737,-4.136876 -1.679967,-5.20493 C 10.260902,27.882167 4.6872697,22.95045 4.5245945,17.652051 z"/></svg> \ No newline at end of file
public/plugins/pdfjs-1.4.20/web/images/annotation-newparagraph.svg+0 −1 removed@@ -1 +0,0 @@ -<svg xmlns="http://www.w3.org/2000/svg" width="64" height="64" viewBox="0 0 64 64"><path id="path2985" fill="#ff0" fill-opacity=".941" fill-rule="nonzero" stroke="#000" stroke-dasharray="none" stroke-miterlimit="4" stroke-opacity="1" stroke-width=".834" d="M 32.003143,10.913072 57.432701,53.086929 6.567299,53.083723 z"/></svg> \ No newline at end of file
public/plugins/pdfjs-1.4.20/web/images/annotation-noicon.svg+0 −1 removed@@ -1 +0,0 @@ -<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 40 40"/> \ No newline at end of file
public/plugins/pdfjs-1.4.20/web/images/annotation-note.svg+0 −1 removed@@ -1 +0,0 @@ -<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 40 40"><rect id="rect4" width="36.075" height="31.097" x="1.962" y="4.452" fill="#ff0" fill-opacity="1" fill-rule="evenodd" stroke="#000" stroke-opacity="1" stroke-width="1.23"/><rect id="rect6" width="27.969" height="1.501" x="6.016" y="10.285" fill="#000" fill-opacity="1" stroke="none"/><rect id="rect8" width="27.969" height=".858" x="6.016" y="23.217" fill="#000" fill-opacity="1" stroke="none"/><rect id="rect10" width="27.969" height=".858" x="5.813" y="28.964" fill="#000" fill-opacity="1" stroke="none"/><rect id="rect12" width="27.969" height=".858" x="6.016" y="17.426" fill="#000" fill-opacity="1" stroke="none"/></svg> \ No newline at end of file
public/plugins/pdfjs-1.4.20/web/images/annotation-paragraph.svg+0 −1 removed@@ -1 +0,0 @@ -<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 40 40"><rect width="33.76" height="33.76" x="3.12" y="3.12" fill="#ff0" fill-opacity="1" fill-rule="evenodd" stroke="#000" stroke-dasharray="none" stroke-miterlimit="4" stroke-opacity="1" stroke-width="1"/><path fill="#fff" fill-opacity="1" stroke="#000" stroke-opacity="1" stroke-width="1.078" d="m 17.692678,34.50206 0,-16.182224 c -1.930515,-0.103225 -3.455824,-0.730383 -4.57593,-1.881473 -1.12011,-1.151067 -1.680164,-2.619596 -1.680164,-4.405591 0,-1.992435 0.621995,-3.5796849 1.865988,-4.7617553 1.243989,-1.1820288 3.06352,-1.7730536 5.458598,-1.7730764 l 9.802246,0 0,2.6789711 -2.229895,0 0,26.3251486 -2.632515,0 0,-26.3251486 -3.45324,0 0,26.3251486 z" font-family="Arial" font-size="29.421" font-stretch="normal" font-style="normal" font-variant="normal" font-weight="normal" letter-spacing="0" text-anchor="start" word-spacing="0" writing-mode="lr-tb" style="text-align:start;line-height:125%;-inkscape-font-specification:Arial"/></svg> \ No newline at end of file
public/plugins/pdfjs-1.4.20/web/images/findbarButton-next@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/findbarButton-next.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/findbarButton-next-rtl@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/findbarButton-next-rtl.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/findbarButton-previous@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/findbarButton-previous.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/findbarButton-previous-rtl@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/findbarButton-previous-rtl.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/grabbing.cur+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/grab.cur+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/loading-small@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/loading-small.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/secondaryToolbarButton-documentProperties@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/secondaryToolbarButton-documentProperties.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/secondaryToolbarButton-firstPage@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/secondaryToolbarButton-firstPage.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/secondaryToolbarButton-handTool@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/secondaryToolbarButton-handTool.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/secondaryToolbarButton-lastPage@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/secondaryToolbarButton-lastPage.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/secondaryToolbarButton-rotateCcw@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/secondaryToolbarButton-rotateCcw.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/secondaryToolbarButton-rotateCw@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/secondaryToolbarButton-rotateCw.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/shadow.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/texture.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-bookmark@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-bookmark.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-download@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-download.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-menuArrows@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-menuArrows.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-openFile@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-openFile.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-pageDown@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-pageDown.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-pageDown-rtl@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-pageDown-rtl.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-pageUp@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-pageUp.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-pageUp-rtl@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-pageUp-rtl.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-presentationMode@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-presentationMode.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-print@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-print.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-search@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-search.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-secondaryToolbarToggle@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-secondaryToolbarToggle.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-secondaryToolbarToggle-rtl@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-secondaryToolbarToggle-rtl.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-sidebarToggle@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-sidebarToggle.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-sidebarToggle-rtl@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-sidebarToggle-rtl.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-viewAttachments@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-viewAttachments.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-viewOutline@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-viewOutline.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-viewOutline-rtl@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-viewOutline-rtl.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-viewThumbnail@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-viewThumbnail.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-zoomIn@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-zoomIn.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-zoomOut@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/toolbarButton-zoomOut.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/treeitem-collapsed@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/treeitem-collapsed.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/treeitem-collapsed-rtl@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/treeitem-collapsed-rtl.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/treeitem-expanded@2x.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/images/treeitem-expanded.png+0 −0 removedpublic/plugins/pdfjs-1.4.20/web/viewer.css+0 −2122 removed@@ -1,2122 +0,0 @@ -/* Copyright 2014 Mozilla Foundation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -.textLayer { - position: absolute; - left: 0; - top: 0; - right: 0; - bottom: 0; - overflow: hidden; - opacity: 0.2; - line-height: 1.0; -} - -.textLayer > div { - color: transparent; - position: absolute; - white-space: pre; - cursor: text; - -webkit-transform-origin: 0% 0%; - -moz-transform-origin: 0% 0%; - -o-transform-origin: 0% 0%; - -ms-transform-origin: 0% 0%; - transform-origin: 0% 0%; -} - -.textLayer .highlight { - margin: -1px; - padding: 1px; - - background-color: rgb(180, 0, 170); - border-radius: 4px; -} - -.textLayer .highlight.begin { - border-radius: 4px 0px 0px 4px; -} - -.textLayer .highlight.end { - border-radius: 0px 4px 4px 0px; -} - -.textLayer .highlight.middle { - border-radius: 0px; -} - -.textLayer .highlight.selected { - background-color: rgb(0, 100, 0); -} - -.textLayer ::selection { background: rgb(0,0,255); } -.textLayer ::-moz-selection { background: rgb(0,0,255); } - -.textLayer .endOfContent { - display: block; - position: absolute; - left: 0px; - top: 100%; - right: 0px; - bottom: 0px; - z-index: -1; - cursor: default; - -webkit-user-select: none; - -ms-user-select: none; - -moz-user-select: none; -} - -.textLayer .endOfContent.active { - top: 0px; -} - - -.annotationLayer section { - position: absolute; -} - -.annotationLayer .linkAnnotation > a { - position: absolute; - font-size: 1em; - top: 0; - left: 0; - width: 100%; - height: 100%; -} - -.annotationLayer .linkAnnotation > a /* -ms-a */ { - background: url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7") 0 0 repeat; -} - -.annotationLayer .linkAnnotation > a:hover { - opacity: 0.2; - background: #ff0; - box-shadow: 0px 2px 10px #ff0; -} - -.annotationLayer .textAnnotation img { - position: absolute; - cursor: pointer; -} - -.annotationLayer .popupWrapper { - position: absolute; - width: 20em; -} - -.annotationLayer .popup { - position: absolute; - z-index: 200; - max-width: 20em; - background-color: #FFFF99; - box-shadow: 0px 2px 5px #333; - border-radius: 2px; - padding: 0.6em; - margin-left: 5px; - cursor: pointer; - word-wrap: break-word; -} - -.annotationLayer .popup h1 { - font-size: 1em; - border-bottom: 1px solid #000000; - padding-bottom: 0.2em; -} - -.annotationLayer .popup p { - padding-top: 0.2em; -} - -.annotationLayer .highlightAnnotation, -.annotationLayer .underlineAnnotation, -.annotationLayer .squigglyAnnotation, -.annotationLayer .strikeoutAnnotation { - cursor: pointer; -} - -.pdfViewer .canvasWrapper { - overflow: hidden; -} - -.pdfViewer .page { - direction: ltr; - width: 816px; - height: 1056px; - margin: 1px auto -8px auto; - position: relative; - overflow: visible; - border: 9px solid transparent; - background-clip: content-box; - border-image: url(images/shadow.png) 9 9 repeat; - background-color: white; -} - -.pdfViewer.removePageBorders .page { - margin: 0px auto 10px auto; - border: none; -} - -.pdfViewer .page canvas { - margin: 0; - display: block; -} - -.pdfViewer .page .loadingIcon { - position: absolute; - display: block; - left: 0; - top: 0; - right: 0; - bottom: 0; - background: url('images/loading-icon.gif') center no-repeat; -} - -.pdfPresentationMode:-webkit-full-screen .pdfViewer .page { - margin-bottom: 100%; - border: 0; -} - -.pdfPresentationMode:-moz-full-screen .pdfViewer .page { - margin-bottom: 100%; - border: 0; -} - -.pdfPresentationMode:-ms-fullscreen .pdfViewer .page { - margin-bottom: 100% !important; - border: 0; -} - -.pdfPresentationMode:fullscreen .pdfViewer .page { - margin-bottom: 100%; - border: 0; -} - -* { - padding: 0; - margin: 0; -} - -html { - height: 100%; - /* Font size is needed to make the activity bar the correct size. */ - font-size: 10px; -} - -body { - height: 100%; - background-color: #404040; - background-image: url(images/texture.png); -} - -body, -input, -button, -select { - font: message-box; - outline: none; -} - -.hidden { - display: none !important; -} -[hidden] { - display: none !important; -} - -#viewerContainer.pdfPresentationMode:-webkit-full-screen { - top: 0px; - border-top: 2px solid transparent; - background-color: #000; - width: 100%; - height: 100%; - overflow: hidden; - cursor: none; - -webkit-user-select: none; -} - -#viewerContainer.pdfPresentationMode:-moz-full-screen { - top: 0px; - border-top: 2px solid transparent; - background-color: #000; - width: 100%; - height: 100%; - overflow: hidden; - cursor: none; - -moz-user-select: none; -} - -#viewerContainer.pdfPresentationMode:-ms-fullscreen { - top: 0px !important; - border-top: 2px solid transparent; - width: 100%; - height: 100%; - overflow: hidden !important; - cursor: none; - -ms-user-select: none; -} - -#viewerContainer.pdfPresentationMode:-ms-fullscreen::-ms-backdrop { - background-color: #000; -} - -#viewerContainer.pdfPresentationMode:fullscreen { - top: 0px; - border-top: 2px solid transparent; - background-color: #000; - width: 100%; - height: 100%; - overflow: hidden; - cursor: none; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; -} - -.pdfPresentationMode:-webkit-full-screen a:not(.internalLink) { - display: none; -} - -.pdfPresentationMode:-moz-full-screen a:not(.internalLink) { - display: none; -} - -.pdfPresentationMode:-ms-fullscreen a:not(.internalLink) { - display: none !important; -} - -.pdfPresentationMode:fullscreen a:not(.internalLink) { - display: none; -} - -.pdfPresentationMode:-webkit-full-screen .textLayer > div { - cursor: none; -} - -.pdfPresentationMode:-moz-full-screen .textLayer > div { - cursor: none; -} - -.pdfPresentationMode:-ms-fullscreen .textLayer > div { - cursor: none; -} - -.pdfPresentationMode:fullscreen .textLayer > div { - cursor: none; -} - -.pdfPresentationMode.pdfPresentationModeControls > *, -.pdfPresentationMode.pdfPresentationModeControls .textLayer > div { - cursor: default; -} - -/* outer/inner center provides horizontal center */ -.outerCenter { - pointer-events: none; - position: relative; -} -html[dir='ltr'] .outerCenter { - float: right; - right: 50%; -} -html[dir='rtl'] .outerCenter { - float: left; - left: 50%; -} -.innerCenter { - pointer-events: auto; - position: relative; -} -html[dir='ltr'] .innerCenter { - float: right; - right: -50%; -} -html[dir='rtl'] .innerCenter { - float: left; - left: -50%; -} - -#outerContainer { - width: 100%; - height: 100%; - position: relative; -} - -#sidebarContainer { - position: absolute; - top: 0; - bottom: 0; - width: 200px; - visibility: hidden; - -webkit-transition-duration: 200ms; - -webkit-transition-timing-function: ease; - transition-duration: 200ms; - transition-timing-function: ease; - -} -html[dir='ltr'] #sidebarContainer { - -webkit-transition-property: left; - transition-property: left; - left: -200px; -} -html[dir='rtl'] #sidebarContainer { - -webkit-transition-property: right; - transition-property: right; - right: -200px; -} - -#outerContainer.sidebarMoving > #sidebarContainer, -#outerContainer.sidebarOpen > #sidebarContainer { - visibility: visible; -} -html[dir='ltr'] #outerContainer.sidebarOpen > #sidebarContainer { - left: 0px; -} -html[dir='rtl'] #outerContainer.sidebarOpen > #sidebarContainer { - right: 0px; -} - -#mainContainer { - position: absolute; - top: 0; - right: 0; - bottom: 0; - left: 0; - min-width: 320px; - -webkit-transition-duration: 200ms; - -webkit-transition-timing-function: ease; - transition-duration: 200ms; - transition-timing-function: ease; -} -html[dir='ltr'] #outerContainer.sidebarOpen > #mainContainer { - -webkit-transition-property: left; - transition-property: left; - left: 200px; -} -html[dir='rtl'] #outerContainer.sidebarOpen > #mainContainer { - -webkit-transition-property: right; - transition-property: right; - right: 200px; -} - -#sidebarContent { - top: 32px; - bottom: 0; - overflow: auto; - -webkit-overflow-scrolling: touch; - position: absolute; - width: 200px; - background-color: hsla(0,0%,0%,.1); -} -html[dir='ltr'] #sidebarContent { - left: 0; - box-shadow: inset -1px 0 0 hsla(0,0%,0%,.25); -} -html[dir='rtl'] #sidebarContent { - right: 0; - box-shadow: inset 1px 0 0 hsla(0,0%,0%,.25); -} - -#viewerContainer { - overflow: auto; - -webkit-overflow-scrolling: touch; - position: absolute; - top: 32px; - right: 0; - bottom: 0; - left: 0; - outline: none; -} -html[dir='ltr'] #viewerContainer { - box-shadow: inset 1px 0 0 hsla(0,0%,100%,.05); -} -html[dir='rtl'] #viewerContainer { - box-shadow: inset -1px 0 0 hsla(0,0%,100%,.05); -} - -.toolbar { - position: relative; - left: 0; - right: 0; - z-index: 9999; - cursor: default; -} - -#toolbarContainer { - width: 100%; -} - -#toolbarSidebar { - width: 200px; - height: 32px; - background-color: #424242; /* fallback */ - background-image: url(images/texture.png), - linear-gradient(hsla(0,0%,30%,.99), hsla(0,0%,25%,.95)); -} -html[dir='ltr'] #toolbarSidebar { - box-shadow: inset -1px 0 0 rgba(0, 0, 0, 0.25), - inset 0 -1px 0 hsla(0,0%,100%,.05), - 0 1px 0 hsla(0,0%,0%,.15), - 0 0 1px hsla(0,0%,0%,.1); -} -html[dir='rtl'] #toolbarSidebar { - box-shadow: inset 1px 0 0 rgba(0, 0, 0, 0.25), - inset 0 1px 0 hsla(0,0%,100%,.05), - 0 1px 0 hsla(0,0%,0%,.15), - 0 0 1px hsla(0,0%,0%,.1); -} - -#toolbarContainer, .findbar, .secondaryToolbar { - position: relative; - height: 32px; - background-color: #474747; /* fallback */ - background-image: url(images/texture.png), - linear-gradient(hsla(0,0%,32%,.99), hsla(0,0%,27%,.95)); -} -html[dir='ltr'] #toolbarContainer, .findbar, .secondaryToolbar { - box-shadow: inset 1px 0 0 hsla(0,0%,100%,.08), - inset 0 1px 1px hsla(0,0%,0%,.15), - inset 0 -1px 0 hsla(0,0%,100%,.05), - 0 1px 0 hsla(0,0%,0%,.15), - 0 1px 1px hsla(0,0%,0%,.1); -} -html[dir='rtl'] #toolbarContainer, .findbar, .secondaryToolbar { - box-shadow: inset -1px 0 0 hsla(0,0%,100%,.08), - inset 0 1px 1px hsla(0,0%,0%,.15), - inset 0 -1px 0 hsla(0,0%,100%,.05), - 0 1px 0 hsla(0,0%,0%,.15), - 0 1px 1px hsla(0,0%,0%,.1); -} - -#toolbarViewer { - height: 32px; -} - -#loadingBar { - position: relative; - width: 100%; - height: 4px; - background-color: #333; - border-bottom: 1px solid #333; -} - -#loadingBar .progress { - position: absolute; - top: 0; - left: 0; - width: 0%; - height: 100%; - background-color: #ddd; - overflow: hidden; - -webkit-transition: width 200ms; - transition: width 200ms; -} - -@-webkit-keyframes progressIndeterminate { - 0% { left: -142px; } - 100% { left: 0; } -} - -@keyframes progressIndeterminate { - 0% { left: -142px; } - 100% { left: 0; } -} - -#loadingBar .progress.indeterminate { - background-color: #999; - -webkit-transition: none; - transition: none; -} - -#loadingBar .progress.indeterminate .glimmer { - position: absolute; - top: 0; - left: 0; - height: 100%; - width: calc(100% + 150px); - - background: repeating-linear-gradient(135deg, - #bbb 0, #999 5px, - #999 45px, #ddd 55px, - #ddd 95px, #bbb 100px); - - -webkit-animation: progressIndeterminate 950ms linear infinite; - animation: progressIndeterminate 950ms linear infinite; -} - -.findbar, .secondaryToolbar { - top: 32px; - position: absolute; - z-index: 10000; - height: 32px; - - min-width: 16px; - padding: 0px 6px 0px 6px; - margin: 4px 2px 4px 2px; - color: hsl(0,0%,85%); - font-size: 12px; - line-height: 14px; - text-align: left; - cursor: default; -} - -html[dir='ltr'] .findbar { - left: 68px; -} - -html[dir='rtl'] .findbar { - right: 68px; -} - -.findbar label { - -webkit-user-select: none; - -moz-user-select: none; -} - -#findInput[data-status="pending"] { - background-image: url(images/loading-small.png); - background-repeat: no-repeat; - background-position: right; -} -html[dir='rtl'] #findInput[data-status="pending"] { - background-position: left; -} - -.secondaryToolbar { - padding: 6px; - height: auto; - z-index: 30000; -} -html[dir='ltr'] .secondaryToolbar { - right: 4px; -} -html[dir='rtl'] .secondaryToolbar { - left: 4px; -} - -#secondaryToolbarButtonContainer { - max-width: 200px; - max-height: 400px; - overflow-y: auto; - -webkit-overflow-scrolling: touch; - margin-bottom: -4px; -} - -.doorHanger, -.doorHangerRight { - border: 1px solid hsla(0,0%,0%,.5); - border-radius: 2px; - box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3); -} -.doorHanger:after, .doorHanger:before, -.doorHangerRight:after, .doorHangerRight:before { - bottom: 100%; - border: solid transparent; - content: " "; - height: 0; - width: 0; - position: absolute; - pointer-events: none; -} -.doorHanger:after, -.doorHangerRight:after { - border-bottom-color: hsla(0,0%,32%,.99); - border-width: 8px; -} -.doorHanger:before, -.doorHangerRight:before { - border-bottom-color: hsla(0,0%,0%,.5); - border-width: 9px; -} - -html[dir='ltr'] .doorHanger:after, -html[dir='rtl'] .doorHangerRight:after { - left: 13px; - margin-left: -8px; -} - -html[dir='ltr'] .doorHanger:before, -html[dir='rtl'] .doorHangerRight:before { - left: 13px; - margin-left: -9px; -} - -html[dir='rtl'] .doorHanger:after, -html[dir='ltr'] .doorHangerRight:after { - right: 13px; - margin-right: -8px; -} - -html[dir='rtl'] .doorHanger:before, -html[dir='ltr'] .doorHangerRight:before { - right: 13px; - margin-right: -9px; -} - -#findResultsCount { - background-color: hsl(0, 0%, 85%); - color: hsl(0, 0%, 32%); - text-align: center; - padding: 3px 4px; -} - -#findMsg { - font-style: italic; - color: #A6B7D0; -} - -#findInput.notFound { - background-color: rgb(255, 102, 102); -} - -html[dir='ltr'] #toolbarViewerLeft { - margin-left: -1px; -} -html[dir='rtl'] #toolbarViewerRight { - margin-right: -1px; -} - -html[dir='ltr'] #toolbarViewerLeft, -html[dir='rtl'] #toolbarViewerRight { - position: absolute; - top: 0; - left: 0; -} -html[dir='ltr'] #toolbarViewerRight, -html[dir='rtl'] #toolbarViewerLeft { - position: absolute; - top: 0; - right: 0; -} -html[dir='ltr'] #toolbarViewerLeft > *, -html[dir='ltr'] #toolbarViewerMiddle > *, -html[dir='ltr'] #toolbarViewerRight > *, -html[dir='ltr'] .findbar > * { - position: relative; - float: left; -} -html[dir='rtl'] #toolbarViewerLeft > *, -html[dir='rtl'] #toolbarViewerMiddle > *, -html[dir='rtl'] #toolbarViewerRight > *, -html[dir='rtl'] .findbar > * { - position: relative; - float: right; -} - -html[dir='ltr'] .splitToolbarButton { - margin: 3px 2px 4px 0; - display: inline-block; -} -html[dir='rtl'] .splitToolbarButton { - margin: 3px 0 4px 2px; - display: inline-block; -} -html[dir='ltr'] .splitToolbarButton > .toolbarButton { - border-radius: 0; - float: left; -} -html[dir='rtl'] .splitToolbarButton > .toolbarButton { - border-radius: 0; - float: right; -} - -.toolbarButton, -.secondaryToolbarButton, -.overlayButton { - border: 0 none; - background: none; - width: 32px; - height: 25px; -} - -.toolbarButton > span { - display: inline-block; - width: 0; - height: 0; - overflow: hidden; -} - -.toolbarButton[disabled], -.secondaryToolbarButton[disabled], -.overlayButton[disabled] { - opacity: .5; -} - -.toolbarButton.group { - margin-right: 0; -} - -.splitToolbarButton.toggled .toolbarButton { - margin: 0; -} - -.splitToolbarButton:hover > .toolbarButton, -.splitToolbarButton:focus > .toolbarButton, -.splitToolbarButton.toggled > .toolbarButton, -.toolbarButton.textButton { - background-color: hsla(0,0%,0%,.12); - background-image: linear-gradient(hsla(0,0%,100%,.05), hsla(0,0%,100%,0)); - background-clip: padding-box; - border: 1px solid hsla(0,0%,0%,.35); - border-color: hsla(0,0%,0%,.32) hsla(0,0%,0%,.38) hsla(0,0%,0%,.42); - box-shadow: 0 1px 0 hsla(0,0%,100%,.05) inset, - 0 0 1px hsla(0,0%,100%,.15) inset, - 0 1px 0 hsla(0,0%,100%,.05); - -webkit-transition-property: background-color, border-color, box-shadow; - -webkit-transition-duration: 150ms; - -webkit-transition-timing-function: ease; - transition-property: background-color, border-color, box-shadow; - transition-duration: 150ms; - transition-timing-function: ease; - -} -.splitToolbarButton > .toolbarButton:hover, -.splitToolbarButton > .toolbarButton:focus, -.dropdownToolbarButton:hover, -.overlayButton:hover, -.overlayButton:focus, -.toolbarButton.textButton:hover, -.toolbarButton.textButton:focus { - background-color: hsla(0,0%,0%,.2); - box-shadow: 0 1px 0 hsla(0,0%,100%,.05) inset, - 0 0 1px hsla(0,0%,100%,.15) inset, - 0 0 1px hsla(0,0%,0%,.05); - z-index: 199; -} -.splitToolbarButton > .toolbarButton { - position: relative; -} -html[dir='ltr'] .splitToolbarButton > .toolbarButton:first-child, -html[dir='rtl'] .splitToolbarButton > .toolbarButton:last-child { - position: relative; - margin: 0; - margin-right: -1px; - border-top-left-radius: 2px; - border-bottom-left-radius: 2px; - border-right-color: transparent; -} -html[dir='ltr'] .splitToolbarButton > .toolbarButton:last-child, -html[dir='rtl'] .splitToolbarButton > .toolbarButton:first-child { - position: relative; - margin: 0; - margin-left: -1px; - border-top-right-radius: 2px; - border-bottom-right-radius: 2px; - border-left-color: transparent; -} -.splitToolbarButtonSeparator { - padding: 8px 0; - width: 1px; - background-color: hsla(0,0%,0%,.5); - z-index: 99; - box-shadow: 0 0 0 1px hsla(0,0%,100%,.08); - display: inline-block; - margin: 5px 0; -} -html[dir='ltr'] .splitToolbarButtonSeparator { - float: left; -} -html[dir='rtl'] .splitToolbarButtonSeparator { - float: right; -} -.splitToolbarButton:hover > .splitToolbarButtonSeparator, -.splitToolbarButton.toggled > .splitToolbarButtonSeparator { - padding: 12px 0; - margin: 1px 0; - box-shadow: 0 0 0 1px hsla(0,0%,100%,.03); - -webkit-transition-property: padding; - -webkit-transition-duration: 10ms; - -webkit-transition-timing-function: ease; - transition-property: padding; - transition-duration: 10ms; - transition-timing-function: ease; -} - -.toolbarButton, -.dropdownToolbarButton, -.secondaryToolbarButton, -.overlayButton { - min-width: 16px; - padding: 2px 6px 0; - border: 1px solid transparent; - border-radius: 2px; - color: hsla(0,0%,100%,.8); - font-size: 12px; - line-height: 14px; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - /* Opera does not support user-select, use <... unselectable="on"> instead */ - cursor: default; - -webkit-transition-property: background-color, border-color, box-shadow; - -webkit-transition-duration: 150ms; - -webkit-transition-timing-function: ease; - transition-property: background-color, border-color, box-shadow; - transition-duration: 150ms; - transition-timing-function: ease; -} - -html[dir='ltr'] .toolbarButton, -html[dir='ltr'] .overlayButton, -html[dir='ltr'] .dropdownToolbarButton { - margin: 3px 2px 4px 0; -} -html[dir='rtl'] .toolbarButton, -html[dir='rtl'] .overlayButton, -html[dir='rtl'] .dropdownToolbarButton { - margin: 3px 0 4px 2px; -} - -.toolbarButton:hover, -.toolbarButton:focus, -.dropdownToolbarButton, -.overlayButton, -.secondaryToolbarButton:hover, -.secondaryToolbarButton:focus { - background-color: hsla(0,0%,0%,.12); - background-image: linear-gradient(hsla(0,0%,100%,.05), hsla(0,0%,100%,0)); - background-clip: padding-box; - border: 1px solid hsla(0,0%,0%,.35); - border-color: hsla(0,0%,0%,.32) hsla(0,0%,0%,.38) hsla(0,0%,0%,.42); - box-shadow: 0 1px 0 hsla(0,0%,100%,.05) inset, - 0 0 1px hsla(0,0%,100%,.15) inset, - 0 1px 0 hsla(0,0%,100%,.05); -} - -.toolbarButton:hover:active, -.overlayButton:hover:active, -.dropdownToolbarButton:hover:active, -.secondaryToolbarButton:hover:active { - background-color: hsla(0,0%,0%,.2); - background-image: linear-gradient(hsla(0,0%,100%,.05), hsla(0,0%,100%,0)); - border-color: hsla(0,0%,0%,.35) hsla(0,0%,0%,.4) hsla(0,0%,0%,.45); - box-shadow: 0 1px 1px hsla(0,0%,0%,.1) inset, - 0 0 1px hsla(0,0%,0%,.2) inset, - 0 1px 0 hsla(0,0%,100%,.05); - -webkit-transition-property: background-color, border-color, box-shadow; - -webkit-transition-duration: 10ms; - -webkit-transition-timing-function: linear; - transition-property: background-color, border-color, box-shadow; - transition-duration: 10ms; - transition-timing-function: linear; -} - -.toolbarButton.toggled, -.splitToolbarButton.toggled > .toolbarButton.toggled, -.secondaryToolbarButton.toggled { - background-color: hsla(0,0%,0%,.3); - background-image: linear-gradient(hsla(0,0%,100%,.05), hsla(0,0%,100%,0)); - border-color: hsla(0,0%,0%,.4) hsla(0,0%,0%,.45) hsla(0,0%,0%,.5); - box-shadow: 0 1px 1px hsla(0,0%,0%,.1) inset, - 0 0 1px hsla(0,0%,0%,.2) inset, - 0 1px 0 hsla(0,0%,100%,.05); - -webkit-transition-property: background-color, border-color, box-shadow; - -webkit-transition-duration: 10ms; - -webkit-transition-timing-function: linear; - transition-property: background-color, border-color, box-shadow; - transition-duration: 10ms; - transition-timing-function: linear; -} - -.toolbarButton.toggled:hover:active, -.splitToolbarButton.toggled > .toolbarButton.toggled:hover:active, -.secondaryToolbarButton.toggled:hover:active { - background-color: hsla(0,0%,0%,.4); - border-color: hsla(0,0%,0%,.4) hsla(0,0%,0%,.5) hsla(0,0%,0%,.55); - box-shadow: 0 1px 1px hsla(0,0%,0%,.2) inset, - 0 0 1px hsla(0,0%,0%,.3) inset, - 0 1px 0 hsla(0,0%,100%,.05); -} - -.dropdownToolbarButton { - width: 120px; - max-width: 120px; - padding: 0; - overflow: hidden; - background: url(images/toolbarButton-menuArrows.png) no-repeat; -} -html[dir='ltr'] .dropdownToolbarButton { - background-position: 95%; -} -html[dir='rtl'] .dropdownToolbarButton { - background-position: 5%; -} - -.dropdownToolbarButton > select { - min-width: 140px; - font-size: 12px; - color: hsl(0,0%,95%); - margin: 0; - padding: 3px 2px 2px; - border: none; - background: rgba(0,0,0,0); /* Opera does not support 'transparent' <select> background */ -} - -.dropdownToolbarButton > select > option { - background: hsl(0,0%,24%); -} - -#customScaleOption { - display: none; -} - -#pageWidthOption { - border-bottom: 1px rgba(255, 255, 255, .5) solid; -} - -html[dir='ltr'] .splitToolbarButton:first-child, -html[dir='ltr'] .toolbarButton:first-child, -html[dir='rtl'] .splitToolbarButton:last-child, -html[dir='rtl'] .toolbarButton:last-child { - margin-left: 4px; -} -html[dir='ltr'] .splitToolbarButton:last-child, -html[dir='ltr'] .toolbarButton:last-child, -html[dir='rtl'] .splitToolbarButton:first-child, -html[dir='rtl'] .toolbarButton:first-child { - margin-right: 4px; -} - -.toolbarButtonSpacer { - width: 30px; - display: inline-block; - height: 1px; -} - -.toolbarButtonFlexibleSpacer { - -webkit-box-flex: 1; - -moz-box-flex: 1; - min-width: 30px; -} - -html[dir='ltr'] #findPrevious { - margin-left: 3px; -} -html[dir='ltr'] #findNext { - margin-right: 3px; -} - -html[dir='rtl'] #findPrevious { - margin-right: 3px; -} -html[dir='rtl'] #findNext { - margin-left: 3px; -} - -.toolbarButton::before, -.secondaryToolbarButton::before { - /* All matching images have a size of 16x16 - * All relevant containers have a size of 32x25 */ - position: absolute; - display: inline-block; - top: 4px; - left: 7px; -} - -html[dir="ltr"] .secondaryToolbarButton::before { - left: 4px; -} -html[dir="rtl"] .secondaryToolbarButton::before { - right: 4px; -} - -html[dir='ltr'] .toolbarButton#sidebarToggle::before { - content: url(images/toolbarButton-sidebarToggle.png); -} -html[dir='rtl'] .toolbarButton#sidebarToggle::before { - content: url(images/toolbarButton-sidebarToggle-rtl.png); -} - -html[dir='ltr'] .toolbarButton#secondaryToolbarToggle::before { - content: url(images/toolbarButton-secondaryToolbarToggle.png); -} -html[dir='rtl'] .toolbarButton#secondaryToolbarToggle::before { - content: url(images/toolbarButton-secondaryToolbarToggle-rtl.png); -} - -html[dir='ltr'] .toolbarButton.findPrevious::before { - content: url(images/findbarButton-previous.png); -} -html[dir='rtl'] .toolbarButton.findPrevious::before { - content: url(images/findbarButton-previous-rtl.png); -} - -html[dir='ltr'] .toolbarButton.findNext::before { - content: url(images/findbarButton-next.png); -} -html[dir='rtl'] .toolbarButton.findNext::before { - content: url(images/findbarButton-next-rtl.png); -} - -html[dir='ltr'] .toolbarButton.pageUp::before { - content: url(images/toolbarButton-pageUp.png); -} -html[dir='rtl'] .toolbarButton.pageUp::before { - content: url(images/toolbarButton-pageUp-rtl.png); -} - -html[dir='ltr'] .toolbarButton.pageDown::before { - content: url(images/toolbarButton-pageDown.png); -} -html[dir='rtl'] .toolbarButton.pageDown::before { - content: url(images/toolbarButton-pageDown-rtl.png); -} - -.toolbarButton.zoomOut::before { - content: url(images/toolbarButton-zoomOut.png); -} - -.toolbarButton.zoomIn::before { - content: url(images/toolbarButton-zoomIn.png); -} - -.toolbarButton.presentationMode::before, -.secondaryToolbarButton.presentationMode::before { - content: url(images/toolbarButton-presentationMode.png); -} - -.toolbarButton.print::before, -.secondaryToolbarButton.print::before { - content: url(images/toolbarButton-print.png); -} - -.toolbarButton.openFile::before, -.secondaryToolbarButton.openFile::before { - content: url(images/toolbarButton-openFile.png); -} - -.toolbarButton.download::before, -.secondaryToolbarButton.download::before { - content: url(images/toolbarButton-download.png); -} - -.toolbarButton.bookmark, -.secondaryToolbarButton.bookmark { - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; - outline: none; - padding-top: 4px; - text-decoration: none; -} -.secondaryToolbarButton.bookmark { - padding-top: 5px; -} - -.bookmark[href='#'] { - opacity: .5; - pointer-events: none; -} - -.toolbarButton.bookmark::before, -.secondaryToolbarButton.bookmark::before { - content: url(images/toolbarButton-bookmark.png); -} - -#viewThumbnail.toolbarButton::before { - content: url(images/toolbarButton-viewThumbnail.png); -} - -html[dir="ltr"] #viewOutline.toolbarButton::before { - content: url(images/toolbarButton-viewOutline.png); -} -html[dir="rtl"] #viewOutline.toolbarButton::before { - content: url(images/toolbarButton-viewOutline-rtl.png); -} - -#viewAttachments.toolbarButton::before { - content: url(images/toolbarButton-viewAttachments.png); -} - -#viewFind.toolbarButton::before { - content: url(images/toolbarButton-search.png); -} - -.secondaryToolbarButton { - position: relative; - margin: 0 0 4px 0; - padding: 3px 0 1px 0; - height: auto; - min-height: 25px; - width: auto; - min-width: 100%; - white-space: normal; -} -html[dir="ltr"] .secondaryToolbarButton { - padding-left: 24px; - text-align: left; -} -html[dir="rtl"] .secondaryToolbarButton { - padding-right: 24px; - text-align: right; -} -html[dir="ltr"] .secondaryToolbarButton.bookmark { - padding-left: 27px; -} -html[dir="rtl"] .secondaryToolbarButton.bookmark { - padding-right: 27px; -} - -html[dir="ltr"] .secondaryToolbarButton > span { - padding-right: 4px; -} -html[dir="rtl"] .secondaryToolbarButton > span { - padding-left: 4px; -} - -.secondaryToolbarButton.firstPage::before { - content: url(images/secondaryToolbarButton-firstPage.png); -} - -.secondaryToolbarButton.lastPage::before { - content: url(images/secondaryToolbarButton-lastPage.png); -} - -.secondaryToolbarButton.rotateCcw::before { - content: url(images/secondaryToolbarButton-rotateCcw.png); -} - -.secondaryToolbarButton.rotateCw::before { - content: url(images/secondaryToolbarButton-rotateCw.png); -} - -.secondaryToolbarButton.handTool::before { - content: url(images/secondaryToolbarButton-handTool.png); -} - -.secondaryToolbarButton.documentProperties::before { - content: url(images/secondaryToolbarButton-documentProperties.png); -} - -.verticalToolbarSeparator { - display: block; - padding: 8px 0; - margin: 8px 4px; - width: 1px; - background-color: hsla(0,0%,0%,.5); - box-shadow: 0 0 0 1px hsla(0,0%,100%,.08); -} -html[dir='ltr'] .verticalToolbarSeparator { - margin-left: 2px; -} -html[dir='rtl'] .verticalToolbarSeparator { - margin-right: 2px; -} - -.horizontalToolbarSeparator { - display: block; - margin: 0 0 4px 0; - height: 1px; - width: 100%; - background-color: hsla(0,0%,0%,.5); - box-shadow: 0 0 0 1px hsla(0,0%,100%,.08); -} - -.toolbarField { - padding: 3px 6px; - margin: 4px 0 4px 0; - border: 1px solid transparent; - border-radius: 2px; - background-color: hsla(0,0%,100%,.09); - background-image: linear-gradient(hsla(0,0%,100%,.05), hsla(0,0%,100%,0)); - background-clip: padding-box; - border: 1px solid hsla(0,0%,0%,.35); - border-color: hsla(0,0%,0%,.32) hsla(0,0%,0%,.38) hsla(0,0%,0%,.42); - box-shadow: 0 1px 0 hsla(0,0%,0%,.05) inset, - 0 1px 0 hsla(0,0%,100%,.05); - color: hsl(0,0%,95%); - font-size: 12px; - line-height: 14px; - outline-style: none; - transition-property: background-color, border-color, box-shadow; - transition-duration: 150ms; - transition-timing-function: ease; -} - -.toolbarField[type=checkbox] { - display: inline-block; - margin: 8px 0px; -} - -.toolbarField.pageNumber { - -moz-appearance: textfield; /* hides the spinner in moz */ - min-width: 16px; - text-align: right; - width: 40px; -} - -.toolbarField.pageNumber.visiblePageIsLoading { - background-image: url(images/loading-small.png); - background-repeat: no-repeat; - background-position: 1px; -} - -.toolbarField.pageNumber::-webkit-inner-spin-button, -.toolbarField.pageNumber::-webkit-outer-spin-button { - -webkit-appearance: none; - margin: 0; -} - -.toolbarField:hover { - background-color: hsla(0,0%,100%,.11); - border-color: hsla(0,0%,0%,.4) hsla(0,0%,0%,.43) hsla(0,0%,0%,.45); -} - -.toolbarField:focus { - background-color: hsla(0,0%,100%,.15); - border-color: hsla(204,100%,65%,.8) hsla(204,100%,65%,.85) hsla(204,100%,65%,.9); -} - -.toolbarLabel { - min-width: 16px; - padding: 3px 6px 3px 2px; - margin: 4px 2px 4px 0; - border: 1px solid transparent; - border-radius: 2px; - color: hsl(0,0%,85%); - font-size: 12px; - line-height: 14px; - text-align: left; - -webkit-user-select: none; - -moz-user-select: none; - cursor: default; -} - -#thumbnailView { - position: absolute; - width: 120px; - top: 0; - bottom: 0; - padding: 10px 40px 0; - overflow: auto; - -webkit-overflow-scrolling: touch; -} - -.thumbnail { - float: left; - margin-bottom: 5px; -} - -#thumbnailView > a:last-of-type > .thumbnail { - margin-bottom: 10px; -} - -#thumbnailView > a:last-of-type > .thumbnail:not([data-loaded]) { - margin-bottom: 9px; -} - -.thumbnail:not([data-loaded]) { - border: 1px dashed rgba(255, 255, 255, 0.5); - margin: -1px -1px 4px -1px; -} - -.thumbnailImage { - border: 1px solid transparent; - box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.5), 0 2px 8px rgba(0, 0, 0, 0.3); - opacity: 0.8; - z-index: 99; - background-color: white; - background-clip: content-box; -} - -.thumbnailSelectionRing { - border-radius: 2px; - padding: 7px; -} - -a:focus > .thumbnail > .thumbnailSelectionRing > .thumbnailImage, -.thumbnail:hover > .thumbnailSelectionRing > .thumbnailImage { - opacity: .9; -} - -a:focus > .thumbnail > .thumbnailSelectionRing, -.thumbnail:hover > .thumbnailSelectionRing { - background-color: hsla(0,0%,100%,.15); - background-image: linear-gradient(hsla(0,0%,100%,.05), hsla(0,0%,100%,0)); - background-clip: padding-box; - box-shadow: 0 1px 0 hsla(0,0%,100%,.05) inset, - 0 0 1px hsla(0,0%,100%,.2) inset, - 0 0 1px hsla(0,0%,0%,.2); - color: hsla(0,0%,100%,.9); -} - -.thumbnail.selected > .thumbnailSelectionRing > .thumbnailImage { - box-shadow: 0 0 0 1px hsla(0,0%,0%,.5); - opacity: 1; -} - -.thumbnail.selected > .thumbnailSelectionRing { - background-color: hsla(0,0%,100%,.3); - background-image: linear-gradient(hsla(0,0%,100%,.05), hsla(0,0%,100%,0)); - background-clip: padding-box; - box-shadow: 0 1px 0 hsla(0,0%,100%,.05) inset, - 0 0 1px hsla(0,0%,100%,.1) inset, - 0 0 1px hsla(0,0%,0%,.2); - color: hsla(0,0%,100%,1); -} - -#outlineView, -#attachmentsView { - position: absolute; - width: 192px; - top: 0; - bottom: 0; - overflow: auto; - -webkit-overflow-scrolling: touch; - -webkit-user-select: none; - -moz-user-select: none; -} - -#outlineView { - padding: 4px 4px 0; -} -#attachmentsView { - padding: 3px 4px 0; -} - -html[dir='ltr'] .outlineWithDeepNesting > .outlineItem, -html[dir='ltr'] .outlineItem > .outlineItems { - margin-left: 20px; -} - -html[dir='rtl'] .outlineWithDeepNesting > .outlineItem, -html[dir='rtl'] .outlineItem > .outlineItems { - margin-right: 20px; -} - -.outlineItem > a, -.attachmentsItem > button { - text-decoration: none; - display: inline-block; - min-width: 95%; - min-width: calc(100% - 4px); /* Subtract the right padding (left, in RTL mode) - of the container. */ - height: auto; - margin-bottom: 1px; - border-radius: 2px; - color: hsla(0,0%,100%,.8); - font-size: 13px; - line-height: 15px; - -moz-user-select: none; - white-space: normal; -} - -.attachmentsItem > button { - border: 0 none; - background: none; - cursor: pointer; - width: 100%; -} - -html[dir='ltr'] .outlineItem > a { - padding: 2px 0 5px 4px; -} -html[dir='ltr'] .attachmentsItem > button { - padding: 2px 0 3px 7px; - text-align: left; -} - -html[dir='rtl'] .outlineItem > a { - padding: 2px 4px 5px 0; -} -html[dir='rtl'] .attachmentsItem > button { - padding: 2px 7px 3px 0; - text-align: right; -} - -.outlineItemToggler { - position: relative; - height: 0; - width: 0; - color: hsla(0,0%,100%,.5); -} -.outlineItemToggler::before { - content: url(images/treeitem-expanded.png); - display: inline-block; - position: absolute; -} -html[dir='ltr'] .outlineItemToggler.outlineItemsHidden::before { - content: url(images/treeitem-collapsed.png); -} -html[dir='rtl'] .outlineItemToggler.outlineItemsHidden::before { - content: url(images/treeitem-collapsed-rtl.png); -} -.outlineItemToggler.outlineItemsHidden ~ .outlineItems { - display: none; -} -html[dir='ltr'] .outlineItemToggler { - float: left; -} -html[dir='rtl'] .outlineItemToggler { - float: right; -} -html[dir='ltr'] .outlineItemToggler::before { - right: 4px; -} -html[dir='rtl'] .outlineItemToggler::before { - left: 4px; -} - -.outlineItemToggler:hover, -.outlineItemToggler:hover + a, -.outlineItemToggler:hover ~ .outlineItems, -.outlineItem > a:hover, -.attachmentsItem > button:hover { - background-color: hsla(0,0%,100%,.02); - background-image: linear-gradient(hsla(0,0%,100%,.05), hsla(0,0%,100%,0)); - background-clip: padding-box; - box-shadow: 0 1px 0 hsla(0,0%,100%,.05) inset, - 0 0 1px hsla(0,0%,100%,.2) inset, - 0 0 1px hsla(0,0%,0%,.2); - border-radius: 2px; - color: hsla(0,0%,100%,.9); -} - -.outlineItem.selected { - background-color: hsla(0,0%,100%,.08); - background-image: linear-gradient(hsla(0,0%,100%,.05), hsla(0,0%,100%,0)); - background-clip: padding-box; - box-shadow: 0 1px 0 hsla(0,0%,100%,.05) inset, - 0 0 1px hsla(0,0%,100%,.1) inset, - 0 0 1px hsla(0,0%,0%,.2); - color: hsla(0,0%,100%,1); -} - -.noResults { - font-size: 12px; - color: hsla(0,0%,100%,.8); - font-style: italic; - cursor: default; -} - -/* TODO: file FF bug to support ::-moz-selection:window-inactive - so we can override the opaque grey background when the window is inactive; - see https://bugzilla.mozilla.org/show_bug.cgi?id=706209 */ -::selection { background: rgba(0,0,255,0.3); } -::-moz-selection { background: rgba(0,0,255,0.3); } - -#errorWrapper { - background: none repeat scroll 0 0 #FF5555; - color: white; - left: 0; - position: absolute; - right: 0; - z-index: 1000; - padding: 3px; - font-size: 0.8em; -} -.loadingInProgress #errorWrapper { - top: 37px; -} - -#errorMessageLeft { - float: left; -} - -#errorMessageRight { - float: right; -} - -#errorMoreInfo { - background-color: #FFFFFF; - color: black; - padding: 3px; - margin: 3px; - width: 98%; -} - -.overlayButton { - width: auto; - margin: 3px 4px 2px 4px !important; - padding: 2px 6px 3px 6px; -} - -#overlayContainer { - display: table; - position: absolute; - width: 100%; - height: 100%; - background-color: hsla(0,0%,0%,.2); - z-index: 40000; -} -#overlayContainer > * { - overflow: auto; - -webkit-overflow-scrolling: touch; -} - -#overlayContainer > .container { - display: table-cell; - vertical-align: middle; - text-align: center; -} - -#overlayContainer > .container > .dialog { - display: inline-block; - padding: 15px; - border-spacing: 4px; - color: hsl(0,0%,85%); - font-size: 12px; - line-height: 14px; - background-color: #474747; /* fallback */ - background-image: url(images/texture.png), - linear-gradient(hsla(0,0%,32%,.99), hsla(0,0%,27%,.95)); - box-shadow: inset 1px 0 0 hsla(0,0%,100%,.08), - inset 0 1px 1px hsla(0,0%,0%,.15), - inset 0 -1px 0 hsla(0,0%,100%,.05), - 0 1px 0 hsla(0,0%,0%,.15), - 0 1px 1px hsla(0,0%,0%,.1); - border: 1px solid hsla(0,0%,0%,.5); - border-radius: 4px; - box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3); -} - -.dialog > .row { - display: table-row; -} - -.dialog > .row > * { - display: table-cell; -} - -.dialog .toolbarField { - margin: 5px 0; -} - -.dialog .separator { - display: block; - margin: 4px 0 4px 0; - height: 1px; - width: 100%; - background-color: hsla(0,0%,0%,.5); - box-shadow: 0 0 0 1px hsla(0,0%,100%,.08); -} - -.dialog .buttonRow { - text-align: center; - vertical-align: middle; -} - -.dialog :link { - color: white; -} - -#passwordOverlay > .dialog { - text-align: center; -} -#passwordOverlay .toolbarField { - width: 200px; -} - -#documentPropertiesOverlay > .dialog { - text-align: left; -} -#documentPropertiesOverlay .row > * { - min-width: 100px; -} -html[dir='ltr'] #documentPropertiesOverlay .row > * { - text-align: left; -} -html[dir='rtl'] #documentPropertiesOverlay .row > * { - text-align: right; -} -#documentPropertiesOverlay .row > span { - width: 125px; - word-wrap: break-word; -} -#documentPropertiesOverlay .row > p { - max-width: 225px; - word-wrap: break-word; -} -#documentPropertiesOverlay .buttonRow { - margin-top: 10px; -} - -.clearBoth { - clear: both; -} - -.fileInput { - background: white; - color: black; - margin-top: 5px; - visibility: hidden; - position: fixed; - right: 0; - top: 0; -} - -#PDFBug { - background: none repeat scroll 0 0 white; - border: 1px solid #666666; - position: fixed; - top: 32px; - right: 0; - bottom: 0; - font-size: 10px; - padding: 0; - width: 300px; -} -#PDFBug .controls { - background:#EEEEEE; - border-bottom: 1px solid #666666; - padding: 3px; -} -#PDFBug .panels { - bottom: 0; - left: 0; - overflow: auto; - -webkit-overflow-scrolling: touch; - position: absolute; - right: 0; - top: 27px; -} -#PDFBug button.active { - font-weight: bold; -} -.debuggerShowText { - background: none repeat scroll 0 0 yellow; - color: blue; -} -.debuggerHideText:hover { - background: none repeat scroll 0 0 yellow; -} -#PDFBug .stats { - font-family: courier; - font-size: 10px; - white-space: pre; -} -#PDFBug .stats .title { - font-weight: bold; -} -#PDFBug table { - font-size: 10px; -} - -#viewer.textLayer-visible .textLayer { - opacity: 1.0; -} - -#viewer.textLayer-visible .canvasWrapper { - background-color: rgb(128,255,128); -} - -#viewer.textLayer-visible .canvasWrapper canvas { - mix-blend-mode: screen; -} - -#viewer.textLayer-visible .textLayer > div { - background-color: rgba(255, 255, 0, 0.1); - color: black; - border: solid 1px rgba(255, 0, 0, 0.5); - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; -} - -#viewer.textLayer-hover .textLayer > div:hover { - background-color: white; - color: black; -} - -#viewer.textLayer-shadow .textLayer > div { - background-color: rgba(255,255,255, .6); - color: black; -} - -.grab-to-pan-grab { - cursor: url("images/grab.cur"), move !important; - cursor: -webkit-grab !important; - cursor: -moz-grab !important; - cursor: grab !important; -} -.grab-to-pan-grab *:not(input):not(textarea):not(button):not(select):not(:link) { - cursor: inherit !important; -} -.grab-to-pan-grab:active, -.grab-to-pan-grabbing { - cursor: url("images/grabbing.cur"), move !important; - cursor: -webkit-grabbing !important; - cursor: -moz-grabbing !important; - cursor: grabbing !important; - - position: fixed; - background: transparent; - display: block; - top: 0; - left: 0; - right: 0; - bottom: 0; - overflow: hidden; - z-index: 50000; /* should be higher than anything else in PDF.js! */ -} - -@page { - margin: 0; -} - -#printContainer { - display: none; -} - -@media screen and (min-resolution: 2dppx) { - /* Rules for Retina screens */ - .toolbarButton::before { - -webkit-transform: scale(0.5); - transform: scale(0.5); - top: -5px; - } - - .secondaryToolbarButton::before { - -webkit-transform: scale(0.5); - transform: scale(0.5); - top: -4px; - } - - html[dir='ltr'] .toolbarButton::before, - html[dir='rtl'] .toolbarButton::before { - left: -1px; - } - - html[dir='ltr'] .secondaryToolbarButton::before { - left: -2px; - } - html[dir='rtl'] .secondaryToolbarButton::before { - left: 186px; - } - - .toolbarField.pageNumber.visiblePageIsLoading, - #findInput[data-status="pending"] { - background-image: url(images/loading-small@2x.png); - background-size: 16px 17px; - } - - .dropdownToolbarButton { - background: url(images/toolbarButton-menuArrows@2x.png) no-repeat; - background-size: 7px 16px; - } - - html[dir='ltr'] .toolbarButton#sidebarToggle::before { - content: url(images/toolbarButton-sidebarToggle@2x.png); - } - html[dir='rtl'] .toolbarButton#sidebarToggle::before { - content: url(images/toolbarButton-sidebarToggle-rtl@2x.png); - } - - html[dir='ltr'] .toolbarButton#secondaryToolbarToggle::before { - content: url(images/toolbarButton-secondaryToolbarToggle@2x.png); - } - html[dir='rtl'] .toolbarButton#secondaryToolbarToggle::before { - content: url(images/toolbarButton-secondaryToolbarToggle-rtl@2x.png); - } - - html[dir='ltr'] .toolbarButton.findPrevious::before { - content: url(images/findbarButton-previous@2x.png); - } - html[dir='rtl'] .toolbarButton.findPrevious::before { - content: url(images/findbarButton-previous-rtl@2x.png); - } - - html[dir='ltr'] .toolbarButton.findNext::before { - content: url(images/findbarButton-next@2x.png); - } - html[dir='rtl'] .toolbarButton.findNext::before { - content: url(images/findbarButton-next-rtl@2x.png); - } - - html[dir='ltr'] .toolbarButton.pageUp::before { - content: url(images/toolbarButton-pageUp@2x.png); - } - html[dir='rtl'] .toolbarButton.pageUp::before { - content: url(images/toolbarButton-pageUp-rtl@2x.png); - } - - html[dir='ltr'] .toolbarButton.pageDown::before { - content: url(images/toolbarButton-pageDown@2x.png); - } - html[dir='rtl'] .toolbarButton.pageDown::before { - content: url(images/toolbarButton-pageDown-rtl@2x.png); - } - - .toolbarButton.zoomIn::before { - content: url(images/toolbarButton-zoomIn@2x.png); - } - - .toolbarButton.zoomOut::before { - content: url(images/toolbarButton-zoomOut@2x.png); - } - - .toolbarButton.presentationMode::before, - .secondaryToolbarButton.presentationMode::before { - content: url(images/toolbarButton-presentationMode@2x.png); - } - - .toolbarButton.print::before, - .secondaryToolbarButton.print::before { - content: url(images/toolbarButton-print@2x.png); - } - - .toolbarButton.openFile::before, - .secondaryToolbarButton.openFile::before { - content: url(images/toolbarButton-openFile@2x.png); - } - - .toolbarButton.download::before, - .secondaryToolbarButton.download::before { - content: url(images/toolbarButton-download@2x.png); - } - - .toolbarButton.bookmark::before, - .secondaryToolbarButton.bookmark::before { - content: url(images/toolbarButton-bookmark@2x.png); - } - - #viewThumbnail.toolbarButton::before { - content: url(images/toolbarButton-viewThumbnail@2x.png); - } - - html[dir="ltr"] #viewOutline.toolbarButton::before { - content: url(images/toolbarButton-viewOutline@2x.png); - } - html[dir="rtl"] #viewOutline.toolbarButton::before { - content: url(images/toolbarButton-viewOutline-rtl@2x.png); - } - - #viewAttachments.toolbarButton::before { - content: url(images/toolbarButton-viewAttachments@2x.png); - } - - #viewFind.toolbarButton::before { - content: url(images/toolbarButton-search@2x.png); - } - - .secondaryToolbarButton.firstPage::before { - content: url(images/secondaryToolbarButton-firstPage@2x.png); - } - - .secondaryToolbarButton.lastPage::before { - content: url(images/secondaryToolbarButton-lastPage@2x.png); - } - - .secondaryToolbarButton.rotateCcw::before { - content: url(images/secondaryToolbarButton-rotateCcw@2x.png); - } - - .secondaryToolbarButton.rotateCw::before { - content: url(images/secondaryToolbarButton-rotateCw@2x.png); - } - - .secondaryToolbarButton.handTool::before { - content: url(images/secondaryToolbarButton-handTool@2x.png); - } - - .secondaryToolbarButton.documentProperties::before { - content: url(images/secondaryToolbarButton-documentProperties@2x.png); - } - - .outlineItemToggler::before { - -webkit-transform: scale(0.5); - transform: scale(0.5); - top: -1px; - content: url(images/treeitem-expanded@2x.png); - } - html[dir='ltr'] .outlineItemToggler.outlineItemsHidden::before { - content: url(images/treeitem-collapsed@2x.png); - } - html[dir='rtl'] .outlineItemToggler.outlineItemsHidden::before { - content: url(images/treeitem-collapsed-rtl@2x.png); - } - html[dir='ltr'] .outlineItemToggler::before { - right: 0; - } - html[dir='rtl'] .outlineItemToggler::before { - left: 0; - } -} - -@media print { - /* General rules for printing. */ - body { - background: transparent none; - } - - /* Rules for browsers that don't support mozPrintCallback. */ - #sidebarContainer, #secondaryToolbar, .toolbar, #loadingBox, #errorWrapper, .textLayer { - display: none; - } - #viewerContainer { - overflow: visible; - } - - #mainContainer, #viewerContainer, .page, .page canvas { - position: static; - padding: 0; - margin: 0; - } - - .page { - float: left; - display: none; - border: none; - box-shadow: none; - background-clip: content-box; - background-color: white; - } - - .page[data-loaded] { - display: block; - } - - .fileInput { - display: none; - } - - /* Rules for browsers that support mozPrintCallback */ - body[data-mozPrintCallback] #outerContainer { - display: none; - } - body[data-mozPrintCallback] #printContainer { - display: block; - } - /* wrapper around (scaled) print canvas elements */ - #printContainer > div { - position: relative; - top: 0; - left: 0; - overflow: hidden; - } - #printContainer canvas { - display: block; - } -} - -.visibleLargeView, -.visibleMediumView, -.visibleSmallView { - display: none; -} - -@media all and (max-width: 960px) { - html[dir='ltr'] #outerContainer.sidebarMoving .outerCenter, - html[dir='ltr'] #outerContainer.sidebarOpen .outerCenter { - float: left; - left: 205px; - } - html[dir='rtl'] #outerContainer.sidebarMoving .outerCenter, - html[dir='rtl'] #outerContainer.sidebarOpen .outerCenter { - float: right; - right: 205px; - } -} - -@media all and (max-width: 900px) { - .sidebarOpen .hiddenLargeView { - display: none; - } - .sidebarOpen .visibleLargeView { - display: inherit; - } -} - -@media all and (max-width: 860px) { - .sidebarOpen .hiddenMediumView { - display: none; - } - .sidebarOpen .visibleMediumView { - display: inherit; - } -} - -@media all and (max-width: 770px) { - #sidebarContainer { - top: 32px; - z-index: 100; - } - .loadingInProgress #sidebarContainer { - top: 37px; - } - #sidebarContent { - top: 32px; - background-color: hsla(0,0%,0%,.7); - } - - html[dir='ltr'] #outerContainer.sidebarOpen > #mainContainer { - left: 0px; - } - html[dir='rtl'] #outerContainer.sidebarOpen > #mainContainer { - right: 0px; - } - - html[dir='ltr'] .outerCenter { - float: left; - left: 205px; - } - html[dir='rtl'] .outerCenter { - float: right; - right: 205px; - } - - #outerContainer .hiddenLargeView, - #outerContainer .hiddenMediumView { - display: inherit; - } - #outerContainer .visibleLargeView, - #outerContainer .visibleMediumView { - display: none; - } -} - -@media all and (max-width: 700px) { - #outerContainer .hiddenLargeView { - display: none; - } - #outerContainer .visibleLargeView { - display: inherit; - } -} - -@media all and (max-width: 660px) { - #outerContainer .hiddenMediumView { - display: none; - } - #outerContainer .visibleMediumView { - display: inherit; - } -} - -@media all and (max-width: 600px) { - .hiddenSmallView { - display: none; - } - .visibleSmallView { - display: inherit; - } - html[dir='ltr'] #outerContainer.sidebarMoving .outerCenter, - html[dir='ltr'] #outerContainer.sidebarOpen .outerCenter, - html[dir='ltr'] .outerCenter { - left: 156px; - } - html[dir='rtl'] #outerContainer.sidebarMoving .outerCenter, - html[dir='rtl'] #outerContainer.sidebarOpen .outerCenter, - html[dir='rtl'] .outerCenter { - right: 156px; - } - .toolbarButtonSpacer { - width: 0; - } -} - -@media all and (max-width: 510px) { - #scaleSelectContainer, #pageNumberLabel { - display: none; - } -}
public/plugins/pdfjs-1.4.20/web/viewer.html+0 −422 removed@@ -1,422 +0,0 @@ -<!DOCTYPE html> -<!-- -Copyright 2012 Mozilla Foundation - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. - -Adobe CMap resources are covered by their own copyright but the same license: - - Copyright 1990-2015 Adobe Systems Incorporated. - -See https://github.com/adobe-type-tools/cmap-resources ---> -<html dir="ltr" mozdisallowselectionprint moznomarginboxes> - <head> - <meta charset="utf-8"> - <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> - <meta name="google" content="notranslate"> - <meta http-equiv="X-UA-Compatible" content="IE=edge"> - <title>PDF.js viewer</title> - - - <link rel="stylesheet" href="viewer.css"/> - - <script src="compatibility.js"></script> - - - -<!-- This snippet is used in production (included from viewer.html) --> -<script src="../build/pdf.js"></script> - - - - <script src="debugger.js"></script> - <script src="viewer.js"></script> - - </head> - - <body tabindex="1" class="loadingInProgress"> - <div id="outerContainer"> - - <div id="sidebarContainer"> - <div id="toolbarSidebar"> - <div class="splitToolbarButton toggled"> - <button id="viewThumbnail" class="toolbarButton group toggled" title="Show Thumbnails" tabindex="2" data-l10n-id="thumbs"> - <span data-l10n-id="thumbs_label">Thumbnails</span> - </button> - <button id="viewOutline" class="toolbarButton group" title="Show Document Outline" tabindex="3" data-l10n-id="outline"> - <span data-l10n-id="outline_label">Document Outline</span> - </button> - <button id="viewAttachments" class="toolbarButton group" title="Show Attachments" tabindex="4" data-l10n-id="attachments"> - <span data-l10n-id="attachments_label">Attachments</span> - </button> - </div> - </div> - <div id="sidebarContent"> - <div id="thumbnailView"> - </div> - <div id="outlineView" class="hidden"> - </div> - <div id="attachmentsView" class="hidden"> - </div> - </div> - </div> <!-- sidebarContainer --> - - <div id="mainContainer"> - <div class="findbar hidden doorHanger hiddenSmallView" id="findbar"> - <label for="findInput" class="toolbarLabel" data-l10n-id="find_label">Find:</label> - <input id="findInput" class="toolbarField" tabindex="91"> - <div class="splitToolbarButton"> - <button class="toolbarButton findPrevious" title="" id="findPrevious" tabindex="92" data-l10n-id="find_previous"> - <span data-l10n-id="find_previous_label">Previous</span> - </button> - <div class="splitToolbarButtonSeparator"></div> - <button class="toolbarButton findNext" title="" id="findNext" tabindex="93" data-l10n-id="find_next"> - <span data-l10n-id="find_next_label">Next</span> - </button> - </div> - <input type="checkbox" id="findHighlightAll" class="toolbarField" tabindex="94"> - <label for="findHighlightAll" class="toolbarLabel" data-l10n-id="find_highlight">Highlight all</label> - <input type="checkbox" id="findMatchCase" class="toolbarField" tabindex="95"> - <label for="findMatchCase" class="toolbarLabel" data-l10n-id="find_match_case_label">Match case</label> - <span id="findResultsCount" class="toolbarLabel hidden"></span> - <span id="findMsg" class="toolbarLabel"></span> - </div> <!-- findbar --> - - <div id="secondaryToolbar" class="secondaryToolbar hidden doorHangerRight"> - <div id="secondaryToolbarButtonContainer"> - <button id="secondaryPresentationMode" class="secondaryToolbarButton presentationMode visibleLargeView" title="Switch to Presentation Mode" tabindex="51" data-l10n-id="presentation_mode"> - <span data-l10n-id="presentation_mode_label">Presentation Mode</span> - </button> - - <button id="secondaryOpenFile" class="secondaryToolbarButton openFile visibleLargeView" title="Open File" tabindex="52" data-l10n-id="open_file"> - <span data-l10n-id="open_file_label">Open</span> - </button> - - <button id="secondaryPrint" class="secondaryToolbarButton print visibleMediumView" title="Print" tabindex="53" data-l10n-id="print"> - <span data-l10n-id="print_label">Print</span> - </button> - - <button id="secondaryDownload" class="secondaryToolbarButton download visibleMediumView" title="Download" tabindex="54" data-l10n-id="download"> - <span data-l10n-id="download_label">Download</span> - </button> - - <a href="#" id="secondaryViewBookmark" class="secondaryToolbarButton bookmark visibleSmallView" title="Current view (copy or open in new window)" tabindex="55" data-l10n-id="bookmark"> - <span data-l10n-id="bookmark_label">Current View</span> - </a> - - <div class="horizontalToolbarSeparator visibleLargeView"></div> - - <button id="firstPage" class="secondaryToolbarButton firstPage" title="Go to First Page" tabindex="56" data-l10n-id="first_page"> - <span data-l10n-id="first_page_label">Go to First Page</span> - </button> - <button id="lastPage" class="secondaryToolbarButton lastPage" title="Go to Last Page" tabindex="57" data-l10n-id="last_page"> - <span data-l10n-id="last_page_label">Go to Last Page</span> - </button> - - <div class="horizontalToolbarSeparator"></div> - - <button id="pageRotateCw" class="secondaryToolbarButton rotateCw" title="Rotate Clockwise" tabindex="58" data-l10n-id="page_rotate_cw"> - <span data-l10n-id="page_rotate_cw_label">Rotate Clockwise</span> - </button> - <button id="pageRotateCcw" class="secondaryToolbarButton rotateCcw" title="Rotate Counterclockwise" tabindex="59" data-l10n-id="page_rotate_ccw"> - <span data-l10n-id="page_rotate_ccw_label">Rotate Counterclockwise</span> - </button> - - <div class="horizontalToolbarSeparator"></div> - - <button id="toggleHandTool" class="secondaryToolbarButton handTool" title="Enable hand tool" tabindex="60" data-l10n-id="hand_tool_enable"> - <span data-l10n-id="hand_tool_enable_label">Enable hand tool</span> - </button> - - <div class="horizontalToolbarSeparator"></div> - - <button id="documentProperties" class="secondaryToolbarButton documentProperties" title="Document Properties…" tabindex="61" data-l10n-id="document_properties"> - <span data-l10n-id="document_properties_label">Document Properties…</span> - </button> - </div> - </div> <!-- secondaryToolbar --> - - <div class="toolbar"> - <div id="toolbarContainer"> - <div id="toolbarViewer"> - <div id="toolbarViewerLeft"> - <button id="sidebarToggle" class="toolbarButton" title="Toggle Sidebar" tabindex="11" data-l10n-id="toggle_sidebar"> - <span data-l10n-id="toggle_sidebar_label">Toggle Sidebar</span> - </button> - <div class="toolbarButtonSpacer"></div> - <button id="viewFind" class="toolbarButton group hiddenSmallView" title="Find in Document" tabindex="12" data-l10n-id="findbar"> - <span data-l10n-id="findbar_label">Find</span> - </button> - <div class="splitToolbarButton"> - <button class="toolbarButton pageUp" title="Previous Page" id="previous" tabindex="13" data-l10n-id="previous"> - <span data-l10n-id="previous_label">Previous</span> - </button> - <div class="splitToolbarButtonSeparator"></div> - <button class="toolbarButton pageDown" title="Next Page" id="next" tabindex="14" data-l10n-id="next"> - <span data-l10n-id="next_label">Next</span> - </button> - </div> - <label id="pageNumberLabel" class="toolbarLabel" for="pageNumber" data-l10n-id="page_label">Page: </label> - <input type="number" id="pageNumber" class="toolbarField pageNumber" value="1" size="4" min="1" tabindex="15"> - <span id="numPages" class="toolbarLabel"></span> - </div> - <div id="toolbarViewerRight"> - <button id="presentationMode" class="toolbarButton presentationMode hiddenLargeView" title="Switch to Presentation Mode" tabindex="31" data-l10n-id="presentation_mode"> - <span data-l10n-id="presentation_mode_label">Presentation Mode</span> - </button> - - <button id="openFile" class="toolbarButton openFile hiddenLargeView" title="Open File" tabindex="32" data-l10n-id="open_file"> - <span data-l10n-id="open_file_label">Open</span> - </button> - - <button id="print" class="toolbarButton print hiddenMediumView" title="Print" tabindex="33" data-l10n-id="print"> - <span data-l10n-id="print_label">Print</span> - </button> - - <button id="download" class="toolbarButton download hiddenMediumView" title="Download" tabindex="34" data-l10n-id="download"> - <span data-l10n-id="download_label">Download</span> - </button> - <a href="#" id="viewBookmark" class="toolbarButton bookmark hiddenSmallView" title="Current view (copy or open in new window)" tabindex="35" data-l10n-id="bookmark"> - <span data-l10n-id="bookmark_label">Current View</span> - </a> - - <div class="verticalToolbarSeparator hiddenSmallView"></div> - - <button id="secondaryToolbarToggle" class="toolbarButton" title="Tools" tabindex="36" data-l10n-id="tools"> - <span data-l10n-id="tools_label">Tools</span> - </button> - </div> - <div class="outerCenter"> - <div class="innerCenter" id="toolbarViewerMiddle"> - <div class="splitToolbarButton"> - <button id="zoomOut" class="toolbarButton zoomOut" title="Zoom Out" tabindex="21" data-l10n-id="zoom_out"> - <span data-l10n-id="zoom_out_label">Zoom Out</span> - </button> - <div class="splitToolbarButtonSeparator"></div> - <button id="zoomIn" class="toolbarButton zoomIn" title="Zoom In" tabindex="22" data-l10n-id="zoom_in"> - <span data-l10n-id="zoom_in_label">Zoom In</span> - </button> - </div> - <span id="scaleSelectContainer" class="dropdownToolbarButton"> - <select id="scaleSelect" title="Zoom" tabindex="23" data-l10n-id="zoom"> - <option id="pageAutoOption" title="" value="auto" selected="selected" data-l10n-id="page_scale_auto">Automatic Zoom</option> - <option id="pageActualOption" title="" value="page-actual" data-l10n-id="page_scale_actual">Actual Size</option> - <option id="pageFitOption" title="" value="page-fit" data-l10n-id="page_scale_fit">Fit Page</option> - <option id="pageWidthOption" title="" value="page-width" data-l10n-id="page_scale_width">Full Width</option> - <option id="customScaleOption" title="" value="custom"></option> - <option title="" value="0.5" data-l10n-id="page_scale_percent" data-l10n-args='{ "scale": 50 }'>50%</option> - <option title="" value="0.75" data-l10n-id="page_scale_percent" data-l10n-args='{ "scale": 75 }'>75%</option> - <option title="" value="1" data-l10n-id="page_scale_percent" data-l10n-args='{ "scale": 100 }'>100%</option> - <option title="" value="1.25" data-l10n-id="page_scale_percent" data-l10n-args='{ "scale": 125 }'>125%</option> - <option title="" value="1.5" data-l10n-id="page_scale_percent" data-l10n-args='{ "scale": 150 }'>150%</option> - <option title="" value="2" data-l10n-id="page_scale_percent" data-l10n-args='{ "scale": 200 }'>200%</option> - <option title="" value="3" data-l10n-id="page_scale_percent" data-l10n-args='{ "scale": 300 }'>300%</option> - <option title="" value="4" data-l10n-id="page_scale_percent" data-l10n-args='{ "scale": 400 }'>400%</option> - </select> - </span> - </div> - </div> - </div> - <div id="loadingBar"> - <div class="progress"> - <div class="glimmer"> - </div> - </div> - </div> - </div> - </div> - - <menu type="context" id="viewerContextMenu"> - <menuitem id="contextFirstPage" label="First Page" - data-l10n-id="first_page"></menuitem> - <menuitem id="contextLastPage" label="Last Page" - data-l10n-id="last_page"></menuitem> - <menuitem id="contextPageRotateCw" label="Rotate Clockwise" - data-l10n-id="page_rotate_cw"></menuitem> - <menuitem id="contextPageRotateCcw" label="Rotate Counter-Clockwise" - data-l10n-id="page_rotate_ccw"></menuitem> - </menu> - - <div id="viewerContainer" tabindex="0"> - <div id="viewer" class="pdfViewer"></div> - </div> - - <div id="errorWrapper" hidden='true'> - <div id="errorMessageLeft"> - <span id="errorMessage"></span> - <button id="errorShowMore" data-l10n-id="error_more_info"> - More Information - </button> - <button id="errorShowLess" data-l10n-id="error_less_info" hidden='true'> - Less Information - </button> - </div> - <div id="errorMessageRight"> - <button id="errorClose" data-l10n-id="error_close"> - Close - </button> - </div> - <div class="clearBoth"></div> - <textarea id="errorMoreInfo" hidden='true' readonly="readonly"></textarea> - </div> - </div> <!-- mainContainer --> - - <div id="overlayContainer" class="hidden"> - <div id="passwordOverlay" class="container hidden"> - <div class="dialog"> - <div class="row"> - <p id="passwordText" data-l10n-id="password_label">Enter the password to open this PDF file:</p> - </div> - <div class="row"> - <!-- The type="password" attribute is set via script, to prevent warnings in Firefox for all http:// documents. --> - <input id="password" class="toolbarField" /> - </div> - <div class="buttonRow"> - <button id="passwordCancel" class="overlayButton"><span data-l10n-id="password_cancel">Cancel</span></button> - <button id="passwordSubmit" class="overlayButton"><span data-l10n-id="password_ok">OK</span></button> - </div> - </div> - </div> - <div id="documentPropertiesOverlay" class="container hidden"> - <div class="dialog"> - <div class="row"> - <span data-l10n-id="document_properties_file_name">File name:</span> <p id="fileNameField">-</p> - </div> - <div class="row"> - <span data-l10n-id="document_properties_file_size">File size:</span> <p id="fileSizeField">-</p> - </div> - <div class="separator"></div> - <div class="row"> - <span data-l10n-id="document_properties_title">Title:</span> <p id="titleField">-</p> - </div> - <div class="row"> - <span data-l10n-id="document_properties_author">Author:</span> <p id="authorField">-</p> - </div> - <div class="row"> - <span data-l10n-id="document_properties_subject">Subject:</span> <p id="subjectField">-</p> - </div> - <div class="row"> - <span data-l10n-id="document_properties_keywords">Keywords:</span> <p id="keywordsField">-</p> - </div> - <div class="row"> - <span data-l10n-id="document_properties_creation_date">Creation Date:</span> <p id="creationDateField">-</p> - </div> - <div class="row"> - <span data-l10n-id="document_properties_modification_date">Modification Date:</span> <p id="modificationDateField">-</p> - </div> - <div class="row"> - <span data-l10n-id="document_properties_creator">Creator:</span> <p id="creatorField">-</p> - </div> - <div class="separator"></div> - <div class="row"> - <span data-l10n-id="document_properties_producer">PDF Producer:</span> <p id="producerField">-</p> - </div> - <div class="row"> - <span data-l10n-id="document_properties_version">PDF Version:</span> <p id="versionField">-</p> - </div> - <div class="row"> - <span data-l10n-id="document_properties_page_count">Page Count:</span> <p id="pageCountField">-</p> - </div> - <div class="buttonRow"> - <button id="documentPropertiesClose" class="overlayButton"><span data-l10n-id="document_properties_close">Close</span></button> - </div> - </div> - </div> - </div> <!-- overlayContainer --> - - </div> <!-- outerContainer --> - <div id="printContainer"></div> -<div id="mozPrintCallback-shim" hidden> - <style> -@media print { - #printContainer div { - page-break-after: always; - page-break-inside: avoid; - } -} - </style> - <style scoped> -#mozPrintCallback-shim { - position: fixed; - top: 0; - left: 0; - height: 100%; - width: 100%; - z-index: 9999999; - - display: block; - text-align: center; - background-color: rgba(0, 0, 0, 0.5); -} -#mozPrintCallback-shim[hidden] { - display: none; -} -@media print { - #mozPrintCallback-shim { - display: none; - } -} - -#mozPrintCallback-shim .mozPrintCallback-dialog-box { - display: inline-block; - margin: -50px auto 0; - position: relative; - top: 45%; - left: 0; - min-width: 220px; - max-width: 400px; - - padding: 9px; - - border: 1px solid hsla(0, 0%, 0%, .5); - border-radius: 2px; - box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3); - - background-color: #474747; - - color: hsl(0, 0%, 85%); - font-size: 16px; - line-height: 20px; -} -#mozPrintCallback-shim .progress-row { - clear: both; - padding: 1em 0; -} -#mozPrintCallback-shim progress { - width: 100%; -} -#mozPrintCallback-shim .relative-progress { - clear: both; - float: right; -} -#mozPrintCallback-shim .progress-actions { - clear: both; -} - </style> - <div class="mozPrintCallback-dialog-box"> - <!-- TODO: Localise the following strings --> - Preparing document for printing... - <div class="progress-row"> - <progress value="0" max="100"></progress> - <span class="relative-progress">0%</span> - </div> - <div class="progress-actions"> - <input type="button" value="Cancel" class="mozPrintCallback-cancel"> - </div> - </div> -</div> - - </body> -</html> -
public/plugins/pdfjs-1.4.20/web/viewer.js+0 −7952 removedpublic/plugins/pdfjs-5.2.133/build/pdf.mjs+22614 −0 addedpublic/plugins/pdfjs-5.2.133/build/pdf.mjs.map+1 −0 addedpublic/plugins/pdfjs-5.2.133/build/pdf.sandbox.mjs+216 −0 addedpublic/plugins/pdfjs-5.2.133/build/pdf.sandbox.mjs.map+1 −0 addedpublic/plugins/pdfjs-5.2.133/build/pdf.worker.mjs+57734 −0 addedpublic/plugins/pdfjs-5.2.133/build/pdf.worker.mjs.map+1 −0 addedpublic/plugins/pdfjs-5.2.133/LICENSE+0 −0 renamedpublic/plugins/pdfjs-5.2.133/web/cmaps/78-EUC-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/78-EUC-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/78-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/78ms-RKSJ-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/78ms-RKSJ-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/78-RKSJ-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/78-RKSJ-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/78-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/83pv-RKSJ-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/90msp-RKSJ-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/90msp-RKSJ-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/90ms-RKSJ-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/90ms-RKSJ-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/90pv-RKSJ-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/90pv-RKSJ-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Add-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Add-RKSJ-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Add-RKSJ-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Add-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Adobe-CNS1-0.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Adobe-CNS1-1.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Adobe-CNS1-2.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Adobe-CNS1-3.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Adobe-CNS1-4.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Adobe-CNS1-5.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Adobe-CNS1-6.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Adobe-CNS1-UCS2.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Adobe-GB1-0.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Adobe-GB1-1.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Adobe-GB1-2.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Adobe-GB1-3.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Adobe-GB1-4.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Adobe-GB1-5.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Adobe-GB1-UCS2.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Adobe-Japan1-0.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Adobe-Japan1-1.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Adobe-Japan1-2.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Adobe-Japan1-3.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Adobe-Japan1-4.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Adobe-Japan1-5.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Adobe-Japan1-6.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Adobe-Japan1-UCS2.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Adobe-Korea1-0.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Adobe-Korea1-1.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Adobe-Korea1-2.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Adobe-Korea1-UCS2.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/B5-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/B5pc-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/B5pc-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/B5-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/CNS1-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/CNS1-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/CNS2-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/CNS2-V.bcmap+3 −0 added@@ -0,0 +1,3 @@ +�RCopyright 1990-2009 Adobe Systems Incorporated. +All rights reserved. +See ./LICENSE�CNS2-H \ No newline at end of file
public/plugins/pdfjs-5.2.133/web/cmaps/CNS-EUC-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/CNS-EUC-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/ETen-B5-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/ETen-B5-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/ETenms-B5-H.bcmap+3 −0 added@@ -0,0 +1,3 @@ +�RCopyright 1990-2009 Adobe Systems Incorporated. +All rights reserved. +See ./LICENSE� ETen-B5-H` ^ \ No newline at end of file
public/plugins/pdfjs-5.2.133/web/cmaps/ETenms-B5-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/ETHK-B5-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/ETHK-B5-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/EUC-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/EUC-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Ext-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Ext-RKSJ-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Ext-RKSJ-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Ext-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/GB-EUC-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/GB-EUC-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/GB-H.bcmap+4 −0 added@@ -0,0 +1,4 @@ +�RCopyright 1990-2009 Adobe Systems Incorporated. +All rights reserved. +See ./LICENSE!!��]aX!!]`�21�> �p�z�$]��"R�d�-U�7�*� 4�%�+ �Z �{�/�%�<�9K�b�1]�.�"��`]�,�"]� +�"]�h�"]�F�"]�$�"]��"]�`�"]�>�"]��"]�z�"]�X�"]�6�"]��"]�r�"]�P�"]�.�"]��"]�j�"]�H�"]�&�"]��"]�b�"]�@�"]��"]�|�"]�Z�"]�8�"]��"]�t�"]�R�"]�0�"]��"]�l�"]�J�"]�(�"]��"]�d�"]�B�"]� �"X�~�']�W�"]�5�"]��"]�q�"]�O�"]�-�"]��"]�i�"]�G�"]�%�"]��"]�a�"]�?�"]��"]�{�"]�Y�"]�7�"]��"]�s�"]�Q�"]�/�"]� �"]�k�"]�I�"]�'�"]��"]�c�"]�A�"]��"]�}�"]�[�"]�9 \ No newline at end of file
public/plugins/pdfjs-5.2.133/web/cmaps/GBK2K-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/GBK2K-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/GBK-EUC-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/GBK-EUC-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/GBKp-EUC-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/GBKp-EUC-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/GBpc-EUC-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/GBpc-EUC-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/GBT-EUC-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/GBT-EUC-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/GBT-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/GBTpc-EUC-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/GBTpc-EUC-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/GBT-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/GB-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Hankaku.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Hiragana.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/HKdla-B5-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/HKdla-B5-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/HKdlb-B5-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/HKdlb-B5-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/HKgccs-B5-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/HKgccs-B5-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/HKm314-B5-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/HKm314-B5-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/HKm471-B5-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/HKm471-B5-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/HKscs-B5-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/HKscs-B5-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Katakana.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/KSC-EUC-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/KSC-EUC-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/KSC-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/KSC-Johab-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/KSC-Johab-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/KSCms-UHC-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/KSCms-UHC-HW-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/KSCms-UHC-HW-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/KSCms-UHC-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/KSCpc-EUC-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/KSCpc-EUC-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/KSC-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/LICENSE+36 −0 added@@ -0,0 +1,36 @@ +%%Copyright: ----------------------------------------------------------- +%%Copyright: Copyright 1990-2009 Adobe Systems Incorporated. +%%Copyright: All rights reserved. +%%Copyright: +%%Copyright: Redistribution and use in source and binary forms, with or +%%Copyright: without modification, are permitted provided that the +%%Copyright: following conditions are met: +%%Copyright: +%%Copyright: Redistributions of source code must retain the above +%%Copyright: copyright notice, this list of conditions and the following +%%Copyright: disclaimer. +%%Copyright: +%%Copyright: Redistributions in binary form must reproduce the above +%%Copyright: copyright notice, this list of conditions and the following +%%Copyright: disclaimer in the documentation and/or other materials +%%Copyright: provided with the distribution. +%%Copyright: +%%Copyright: Neither the name of Adobe Systems Incorporated nor the names +%%Copyright: of its contributors may be used to endorse or promote +%%Copyright: products derived from this software without specific prior +%%Copyright: written permission. +%%Copyright: +%%Copyright: THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND +%%Copyright: CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, +%%Copyright: INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +%%Copyright: MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +%%Copyright: DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR +%%Copyright: CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +%%Copyright: SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +%%Copyright: NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +%%Copyright: LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +%%Copyright: HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +%%Copyright: CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +%%Copyright: OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +%%Copyright: SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +%%Copyright: -----------------------------------------------------------
public/plugins/pdfjs-5.2.133/web/cmaps/NWP-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/NWP-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/RKSJ-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/RKSJ-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/Roman.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniCNS-UCS2-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniCNS-UCS2-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniCNS-UTF16-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniCNS-UTF16-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniCNS-UTF32-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniCNS-UTF32-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniCNS-UTF8-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniCNS-UTF8-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniGB-UCS2-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniGB-UCS2-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniGB-UTF16-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniGB-UTF16-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniGB-UTF32-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniGB-UTF32-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniGB-UTF8-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniGB-UTF8-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniJIS2004-UTF16-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniJIS2004-UTF16-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniJIS2004-UTF32-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniJIS2004-UTF32-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniJIS2004-UTF8-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniJIS2004-UTF8-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniJISPro-UCS2-HW-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniJISPro-UCS2-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniJISPro-UTF8-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniJIS-UCS2-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniJIS-UCS2-HW-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniJIS-UCS2-HW-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniJIS-UCS2-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniJIS-UTF16-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniJIS-UTF16-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniJIS-UTF32-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniJIS-UTF32-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniJIS-UTF8-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniJIS-UTF8-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniJISX02132004-UTF32-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniJISX02132004-UTF32-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniJISX0213-UTF32-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniJISX0213-UTF32-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniKS-UCS2-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniKS-UCS2-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniKS-UTF16-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniKS-UTF16-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniKS-UTF32-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniKS-UTF32-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniKS-UTF8-H.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/UniKS-UTF8-V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/V.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/cmaps/WP-Symbol.bcmap+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/debugger.css+114 −0 added@@ -0,0 +1,114 @@ +/* Copyright 2014 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +:root { + --panel-width: 300px; +} + +#PDFBug, +#PDFBug :is(input, button, select) { + font: message-box; +} +#PDFBug { + color-scheme: only light; + + background-color: white; + color: black; + border: 1px solid rgb(102 102 102); + position: fixed; + top: 32px; + right: 0; + bottom: 0; + font-size: 10px; + padding: 0; + width: var(--panel-width); +} +#PDFBug .controls { + background: rgb(238 238 238); + border-bottom: 1px solid rgb(102 102 102); + padding: 3px; +} +#PDFBug .panels { + inset: 27px 0 0; + overflow: auto; + position: absolute; +} +#PDFBug .panels > div { + padding: 5px; +} +#PDFBug button.active { + font-weight: bold; +} +.debuggerShowText, +.debuggerHideText:hover { + background-color: rgb(255 255 0 / 0.25); +} +#PDFBug .stats { + font-family: courier; + font-size: 10px; + white-space: pre; +} +#PDFBug .stats .title { + font-weight: bold; +} +#PDFBug table { + font-size: 10px; + white-space: pre; +} +#PDFBug table.showText { + border-collapse: collapse; + text-align: center; +} +#PDFBug table.showText, +#PDFBug table.showText :is(tr, td) { + border: 1px solid black; + padding: 1px; +} +#PDFBug table.showText td.advance { + color: grey; +} + +#viewer.textLayer-visible .textLayer { + opacity: 1; +} + +#viewer.textLayer-visible .canvasWrapper { + background-color: rgb(128 255 128); +} + +#viewer.textLayer-visible .canvasWrapper canvas { + mix-blend-mode: screen; +} + +#viewer.textLayer-visible .textLayer span { + background-color: rgb(255 255 0 / 0.1); + color: rgb(0 0 0); + border: solid 1px rgb(255 0 0 / 0.5); + box-sizing: border-box; +} + +#viewer.textLayer-visible .textLayer span[aria-owns] { + background-color: rgb(255 0 0 / 0.3); +} + +#viewer.textLayer-hover .textLayer span:hover { + background-color: rgb(255 255 255); + color: rgb(0 0 0); +} + +#viewer.textLayer-shadow .textLayer span { + background-color: rgb(255 255 255 / 0.6); + color: rgb(0 0 0); +}
public/plugins/pdfjs-5.2.133/web/debugger.mjs+619 −0 added@@ -0,0 +1,619 @@ +/* Copyright 2012 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +const { OPS } = globalThis.pdfjsLib || (await import("pdfjs-lib")); + +const opMap = Object.create(null); +for (const key in OPS) { + opMap[OPS[key]] = key; +} + +const FontInspector = (function FontInspectorClosure() { + let fonts; + let active = false; + const fontAttribute = "data-font-name"; + function removeSelection() { + const divs = document.querySelectorAll(`span[${fontAttribute}]`); + for (const div of divs) { + div.className = ""; + } + } + function resetSelection() { + const divs = document.querySelectorAll(`span[${fontAttribute}]`); + for (const div of divs) { + div.className = "debuggerHideText"; + } + } + function selectFont(fontName, show) { + const divs = document.querySelectorAll( + `span[${fontAttribute}=${fontName}]` + ); + for (const div of divs) { + div.className = show ? "debuggerShowText" : "debuggerHideText"; + } + } + function textLayerClick(e) { + if ( + !e.target.dataset.fontName || + e.target.tagName.toUpperCase() !== "SPAN" + ) { + return; + } + const fontName = e.target.dataset.fontName; + const selects = document.getElementsByTagName("input"); + for (const select of selects) { + if (select.dataset.fontName !== fontName) { + continue; + } + select.checked = !select.checked; + selectFont(fontName, select.checked); + select.scrollIntoView(); + } + } + return { + // Properties/functions needed by PDFBug. + id: "FontInspector", + name: "Font Inspector", + panel: null, + manager: null, + init() { + const panel = this.panel; + const tmp = document.createElement("button"); + tmp.addEventListener("click", resetSelection); + tmp.textContent = "Refresh"; + panel.append(tmp); + + fonts = document.createElement("div"); + panel.append(fonts); + }, + cleanup() { + fonts.textContent = ""; + }, + enabled: false, + get active() { + return active; + }, + set active(value) { + active = value; + if (active) { + document.body.addEventListener("click", textLayerClick, true); + resetSelection(); + } else { + document.body.removeEventListener("click", textLayerClick, true); + removeSelection(); + } + }, + // FontInspector specific functions. + fontAdded(fontObj, url) { + function properties(obj, list) { + const moreInfo = document.createElement("table"); + for (const entry of list) { + const tr = document.createElement("tr"); + const td1 = document.createElement("td"); + td1.textContent = entry; + tr.append(td1); + const td2 = document.createElement("td"); + td2.textContent = obj[entry].toString(); + tr.append(td2); + moreInfo.append(tr); + } + return moreInfo; + } + + const moreInfo = fontObj.css + ? properties(fontObj, ["baseFontName"]) + : properties(fontObj, ["name", "type"]); + + const fontName = fontObj.loadedName; + const font = document.createElement("div"); + const name = document.createElement("span"); + name.textContent = fontName; + let download; + if (!fontObj.css) { + download = document.createElement("a"); + if (url) { + url = /url\(['"]?([^)"']+)/.exec(url); + download.href = url[1]; + } else if (fontObj.data) { + download.href = URL.createObjectURL( + new Blob([fontObj.data], { type: fontObj.mimetype }) + ); + } + download.textContent = "Download"; + } + + const logIt = document.createElement("a"); + logIt.href = ""; + logIt.textContent = "Log"; + logIt.addEventListener("click", function (event) { + event.preventDefault(); + console.log(fontObj); + }); + const select = document.createElement("input"); + select.setAttribute("type", "checkbox"); + select.dataset.fontName = fontName; + select.addEventListener("click", function () { + selectFont(fontName, select.checked); + }); + if (download) { + font.append(select, name, " ", download, " ", logIt, moreInfo); + } else { + font.append(select, name, " ", logIt, moreInfo); + } + fonts.append(font); + // Somewhat of a hack, should probably add a hook for when the text layer + // is done rendering. + setTimeout(() => { + if (this.active) { + resetSelection(); + } + }, 2000); + }, + }; +})(); + +// Manages all the page steppers. +const StepperManager = (function StepperManagerClosure() { + let steppers = []; + let stepperDiv = null; + let stepperControls = null; + let stepperChooser = null; + let breakPoints = Object.create(null); + return { + // Properties/functions needed by PDFBug. + id: "Stepper", + name: "Stepper", + panel: null, + manager: null, + init() { + const self = this; + stepperControls = document.createElement("div"); + stepperChooser = document.createElement("select"); + stepperChooser.addEventListener("change", function (event) { + self.selectStepper(this.value); + }); + stepperControls.append(stepperChooser); + stepperDiv = document.createElement("div"); + this.panel.append(stepperControls, stepperDiv); + if (sessionStorage.getItem("pdfjsBreakPoints")) { + breakPoints = JSON.parse(sessionStorage.getItem("pdfjsBreakPoints")); + } + }, + cleanup() { + stepperChooser.textContent = ""; + stepperDiv.textContent = ""; + steppers = []; + }, + enabled: false, + active: false, + // Stepper specific functions. + create(pageIndex) { + const debug = document.createElement("div"); + debug.id = "stepper" + pageIndex; + debug.hidden = true; + debug.className = "stepper"; + stepperDiv.append(debug); + const b = document.createElement("option"); + b.textContent = "Page " + (pageIndex + 1); + b.value = pageIndex; + stepperChooser.append(b); + const initBreakPoints = breakPoints[pageIndex] || []; + const stepper = new Stepper(debug, pageIndex, initBreakPoints); + steppers.push(stepper); + if (steppers.length === 1) { + this.selectStepper(pageIndex, false); + } + return stepper; + }, + selectStepper(pageIndex, selectPanel) { + pageIndex |= 0; + if (selectPanel) { + this.manager.selectPanel(this); + } + for (const stepper of steppers) { + stepper.panel.hidden = stepper.pageIndex !== pageIndex; + } + for (const option of stepperChooser.options) { + option.selected = (option.value | 0) === pageIndex; + } + }, + saveBreakPoints(pageIndex, bps) { + breakPoints[pageIndex] = bps; + sessionStorage.setItem("pdfjsBreakPoints", JSON.stringify(breakPoints)); + }, + }; +})(); + +// The stepper for each page's operatorList. +class Stepper { + // Shorter way to create element and optionally set textContent. + #c(tag, textContent) { + const d = document.createElement(tag); + if (textContent) { + d.textContent = textContent; + } + return d; + } + + #simplifyArgs(args) { + if (typeof args === "string") { + const MAX_STRING_LENGTH = 75; + return args.length <= MAX_STRING_LENGTH + ? args + : args.substring(0, MAX_STRING_LENGTH) + "..."; + } + if (typeof args !== "object" || args === null) { + return args; + } + if ("length" in args) { + // array + const MAX_ITEMS = 10, + simpleArgs = []; + let i, ii; + for (i = 0, ii = Math.min(MAX_ITEMS, args.length); i < ii; i++) { + simpleArgs.push(this.#simplifyArgs(args[i])); + } + if (i < args.length) { + simpleArgs.push("..."); + } + return simpleArgs; + } + const simpleObj = {}; + for (const key in args) { + simpleObj[key] = this.#simplifyArgs(args[key]); + } + return simpleObj; + } + + constructor(panel, pageIndex, initialBreakPoints) { + this.panel = panel; + this.breakPoint = 0; + this.nextBreakPoint = null; + this.pageIndex = pageIndex; + this.breakPoints = initialBreakPoints; + this.currentIdx = -1; + this.operatorListIdx = 0; + this.indentLevel = 0; + } + + init(operatorList) { + const panel = this.panel; + const content = this.#c("div", "c=continue, s=step"); + const table = this.#c("table"); + content.append(table); + table.cellSpacing = 0; + const headerRow = this.#c("tr"); + table.append(headerRow); + headerRow.append( + this.#c("th", "Break"), + this.#c("th", "Idx"), + this.#c("th", "fn"), + this.#c("th", "args") + ); + panel.append(content); + this.table = table; + this.updateOperatorList(operatorList); + } + + updateOperatorList(operatorList) { + const self = this; + + function cboxOnClick() { + const x = +this.dataset.idx; + if (this.checked) { + self.breakPoints.push(x); + } else { + self.breakPoints.splice(self.breakPoints.indexOf(x), 1); + } + StepperManager.saveBreakPoints(self.pageIndex, self.breakPoints); + } + + const MAX_OPERATORS_COUNT = 15000; + if (this.operatorListIdx > MAX_OPERATORS_COUNT) { + return; + } + + const chunk = document.createDocumentFragment(); + const operatorsToDisplay = Math.min( + MAX_OPERATORS_COUNT, + operatorList.fnArray.length + ); + for (let i = this.operatorListIdx; i < operatorsToDisplay; i++) { + const line = this.#c("tr"); + line.className = "line"; + line.dataset.idx = i; + chunk.append(line); + const checked = this.breakPoints.includes(i); + const args = operatorList.argsArray[i] || []; + + const breakCell = this.#c("td"); + const cbox = this.#c("input"); + cbox.type = "checkbox"; + cbox.className = "points"; + cbox.checked = checked; + cbox.dataset.idx = i; + cbox.onclick = cboxOnClick; + + breakCell.append(cbox); + line.append(breakCell, this.#c("td", i.toString())); + const fn = opMap[operatorList.fnArray[i]]; + let decArgs = args; + if (fn === "showText") { + const glyphs = args[0]; + const charCodeRow = this.#c("tr"); + const fontCharRow = this.#c("tr"); + const unicodeRow = this.#c("tr"); + for (const glyph of glyphs) { + if (typeof glyph === "object" && glyph !== null) { + charCodeRow.append(this.#c("td", glyph.originalCharCode)); + fontCharRow.append(this.#c("td", glyph.fontChar)); + unicodeRow.append(this.#c("td", glyph.unicode)); + } else { + // null or number + const advanceEl = this.#c("td", glyph); + advanceEl.classList.add("advance"); + charCodeRow.append(advanceEl); + fontCharRow.append(this.#c("td")); + unicodeRow.append(this.#c("td")); + } + } + decArgs = this.#c("td"); + const table = this.#c("table"); + table.classList.add("showText"); + decArgs.append(table); + table.append(charCodeRow, fontCharRow, unicodeRow); + } else if (fn === "restore" && this.indentLevel > 0) { + this.indentLevel--; + } + line.append(this.#c("td", " ".repeat(this.indentLevel * 2) + fn)); + if (fn === "save") { + this.indentLevel++; + } + + if (decArgs instanceof HTMLElement) { + line.append(decArgs); + } else { + line.append(this.#c("td", JSON.stringify(this.#simplifyArgs(decArgs)))); + } + } + if (operatorsToDisplay < operatorList.fnArray.length) { + const lastCell = this.#c("td", "..."); + lastCell.colspan = 4; + chunk.append(lastCell); + } + this.operatorListIdx = operatorList.fnArray.length; + this.table.append(chunk); + } + + getNextBreakPoint() { + this.breakPoints.sort((a, b) => a - b); + for (const breakPoint of this.breakPoints) { + if (breakPoint > this.currentIdx) { + return breakPoint; + } + } + return null; + } + + breakIt(idx, callback) { + StepperManager.selectStepper(this.pageIndex, true); + this.currentIdx = idx; + + const listener = evt => { + switch (evt.keyCode) { + case 83: // step + document.removeEventListener("keydown", listener); + this.nextBreakPoint = this.currentIdx + 1; + this.goTo(-1); + callback(); + break; + case 67: // continue + document.removeEventListener("keydown", listener); + this.nextBreakPoint = this.getNextBreakPoint(); + this.goTo(-1); + callback(); + break; + } + }; + document.addEventListener("keydown", listener); + this.goTo(idx); + } + + goTo(idx) { + const allRows = this.panel.getElementsByClassName("line"); + for (const row of allRows) { + if ((row.dataset.idx | 0) === idx) { + row.style.backgroundColor = "rgb(251,250,207)"; + row.scrollIntoView(); + } else { + row.style.backgroundColor = null; + } + } + } +} + +const Stats = (function Stats() { + let stats = []; + function clear(node) { + node.textContent = ""; // Remove any `node` contents from the DOM. + } + function getStatIndex(pageNumber) { + for (const [i, stat] of stats.entries()) { + if (stat.pageNumber === pageNumber) { + return i; + } + } + return false; + } + return { + // Properties/functions needed by PDFBug. + id: "Stats", + name: "Stats", + panel: null, + manager: null, + init() {}, + enabled: false, + active: false, + // Stats specific functions. + add(pageNumber, stat) { + if (!stat) { + return; + } + const statsIndex = getStatIndex(pageNumber); + if (statsIndex !== false) { + stats[statsIndex].div.remove(); + stats.splice(statsIndex, 1); + } + const wrapper = document.createElement("div"); + wrapper.className = "stats"; + const title = document.createElement("div"); + title.className = "title"; + title.textContent = "Page: " + pageNumber; + const statsDiv = document.createElement("div"); + statsDiv.textContent = stat.toString(); + wrapper.append(title, statsDiv); + stats.push({ pageNumber, div: wrapper }); + stats.sort((a, b) => a.pageNumber - b.pageNumber); + clear(this.panel); + for (const entry of stats) { + this.panel.append(entry.div); + } + }, + cleanup() { + stats = []; + clear(this.panel); + }, + }; +})(); + +// Manages all the debugging tools. +class PDFBug { + static #buttons = []; + + static #activePanel = null; + + static tools = [FontInspector, StepperManager, Stats]; + + static enable(ids) { + const all = ids.length === 1 && ids[0] === "all"; + const tools = this.tools; + for (const tool of tools) { + if (all || ids.includes(tool.id)) { + tool.enabled = true; + } + } + if (!all) { + // Sort the tools by the order they are enabled. + tools.sort(function (a, b) { + let indexA = ids.indexOf(a.id); + indexA = indexA < 0 ? tools.length : indexA; + let indexB = ids.indexOf(b.id); + indexB = indexB < 0 ? tools.length : indexB; + return indexA - indexB; + }); + } + } + + static init(container, ids) { + this.loadCSS(); + this.enable(ids); + /* + * Basic Layout: + * PDFBug + * Controls + * Panels + * Panel + * Panel + * ... + */ + const ui = document.createElement("div"); + ui.id = "PDFBug"; + + const controls = document.createElement("div"); + controls.setAttribute("class", "controls"); + ui.append(controls); + + const panels = document.createElement("div"); + panels.setAttribute("class", "panels"); + ui.append(panels); + + container.append(ui); + container.style.right = "var(--panel-width)"; + + // Initialize all the debugging tools. + for (const tool of this.tools) { + const panel = document.createElement("div"); + const panelButton = document.createElement("button"); + panelButton.textContent = tool.name; + panelButton.addEventListener("click", event => { + event.preventDefault(); + this.selectPanel(tool); + }); + controls.append(panelButton); + panels.append(panel); + tool.panel = panel; + tool.manager = this; + if (tool.enabled) { + tool.init(); + } else { + panel.textContent = + `${tool.name} is disabled. To enable add "${tool.id}" to ` + + "the pdfBug parameter and refresh (separate multiple by commas)."; + } + this.#buttons.push(panelButton); + } + this.selectPanel(0); + } + + static loadCSS() { + const { url } = import.meta; + + const link = document.createElement("link"); + link.rel = "stylesheet"; + link.href = url.replace(/\.mjs$/, ".css"); + + document.head.append(link); + } + + static cleanup() { + for (const tool of this.tools) { + if (tool.enabled) { + tool.cleanup(); + } + } + } + + static selectPanel(index) { + if (typeof index !== "number") { + index = this.tools.indexOf(index); + } + if (index === this.#activePanel) { + return; + } + this.#activePanel = index; + for (const [j, tool] of this.tools.entries()) { + const isActive = j === index; + this.#buttons[j].classList.toggle("active", isActive); + tool.active = isActive; + tool.panel.hidden = !isActive; + } + } +} + +globalThis.FontInspector = FontInspector; +globalThis.StepperManager = StepperManager; +globalThis.Stats = Stats; + +export { PDFBug };
public/plugins/pdfjs-5.2.133/web/iccs/CGATS001Compat-v2-micro.icc+0 −0 addedpublic/plugins/pdfjs-5.2.133/web/iccs/LICENSE+116 −0 added@@ -0,0 +1,116 @@ +CC0 1.0 Universal + +Statement of Purpose + +The laws of most jurisdictions throughout the world automatically confer +exclusive Copyright and Related Rights (defined below) upon the creator and +subsequent owner(s) (each and all, an "owner") of an original work of +authorship and/or a database (each, a "Work"). + +Certain owners wish to permanently relinquish those rights to a Work for the +purpose of contributing to a commons of creative, cultural and scientific +works ("Commons") that the public can reliably and without fear of later +claims of infringement build upon, modify, incorporate in other works, reuse +and redistribute as freely as possible in any form whatsoever and for any +purposes, including without limitation commercial purposes. These owners may +contribute to the Commons to promote the ideal of a free culture and the +further production of creative, cultural and scientific works, or to gain +reputation or greater distribution for their Work in part through the use and +efforts of others. + +For these and/or other purposes and motivations, and without any expectation +of additional consideration or compensation, the person associating CC0 with a +Work (the "Affirmer"), to the extent that he or she is an owner of Copyright +and Related Rights in the Work, voluntarily elects to apply CC0 to the Work +and publicly distribute the Work under its terms, with knowledge of his or her +Copyright and Related Rights in the Work and the meaning and intended legal +effect of CC0 on those rights. + +1. Copyright and Related Rights. A Work made available under CC0 may be +protected by copyright and related or neighboring rights ("Copyright and +Related Rights"). Copyright and Related Rights include, but are not limited +to, the following: + + i. the right to reproduce, adapt, distribute, perform, display, communicate, + and translate a Work; + + ii. moral rights retained by the original author(s) and/or performer(s); + + iii. publicity and privacy rights pertaining to a person's image or likeness + depicted in a Work; + + iv. rights protecting against unfair competition in regards to a Work, + subject to the limitations in paragraph 4(a), below; + + v. rights protecting the extraction, dissemination, use and reuse of data in + a Work; + + vi. database rights (such as those arising under Directive 96/9/EC of the + European Parliament and of the Council of 11 March 1996 on the legal + protection of databases, and under any national implementation thereof, + including any amended or successor version of such directive); and + + vii. other similar, equivalent or corresponding rights throughout the world + based on applicable law or treaty, and any national implementations thereof. + +2. Waiver. To the greatest extent permitted by, but not in contravention of, +applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and +unconditionally waives, abandons, and surrenders all of Affirmer's Copyright +and Related Rights and associated claims and causes of action, whether now +known or unknown (including existing as well as future claims and causes of +action), in the Work (i) in all territories worldwide, (ii) for the maximum +duration provided by applicable law or treaty (including future time +extensions), (iii) in any current or future medium and for any number of +copies, and (iv) for any purpose whatsoever, including without limitation +commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes +the Waiver for the benefit of each member of the public at large and to the +detriment of Affirmer's heirs and successors, fully intending that such Waiver +shall not be subject to revocation, rescission, cancellation, termination, or +any other legal or equitable action to disrupt the quiet enjoyment of the Work +by the public as contemplated by Affirmer's express Statement of Purpose. + +3. Public License Fallback. Should any part of the Waiver for any reason be +judged legally invalid or ineffective under applicable law, then the Waiver +shall be preserved to the maximum extent permitted taking into account +Affirmer's express Statement of Purpose. In addition, to the extent the Waiver +is so judged Affirmer hereby grants to each affected person a royalty-free, +non transferable, non sublicensable, non exclusive, irrevocable and +unconditional license to exercise Affirmer's Copyright and Related Rights in +the Work (i) in all territories worldwide, (ii) for the maximum duration +provided by applicable law or treaty (including future time extensions), (iii) +in any current or future medium and for any number of copies, and (iv) for any +purpose whatsoever, including without limitation commercial, advertising or +promotional purposes (the "License"). The License shall be deemed effective as +of the date CC0 was applied by Affirmer to the Work. Should any part of the +License for any reason be judged legally invalid or ineffective under +applicable law, such partial invalidity or ineffectiveness shall not +invalidate the remainder of the License, and in such case Affirmer hereby +affirms that he or she will not (i) exercise any of his or her remaining +Copyright and Related Rights in the Work or (ii) assert any associated claims +and causes of action with respect to the Work, in either case contrary to +Affirmer's express Statement of Purpose. + +4. Limitations and Disclaimers. + + a. No trademark or patent rights held by Affirmer are waived, abandoned, + surrendered, licensed or otherwise affected by this document. + + b. Affirmer offers the Work as-is and makes no representations or warranties + of any kind concerning the Work, express, implied, statutory or otherwise, + including without limitation warranties of title, merchantability, fitness + for a particular purpose, non infringement, or the absence of latent or + other defects, accuracy, or the present or absence of errors, whether or not + discoverable, all to the greatest extent permissible under applicable law. + + c. Affirmer disclaims responsibility for clearing rights of other persons + that may apply to the Work or any use thereof, including without limitation + any person's Copyright and Related Rights in the Work. Further, Affirmer + disclaims responsibility for obtaining any necessary consents, permissions + or other rights required for any use of the Work. + + d. Affirmer understands and acknowledges that Creative Commons is not a + party to this document and has no duty or obligation with respect to this + CC0 or use of the Work. + +For more information, please see +http://creativecommons.org/publicdomain/zero/1.0/
public/plugins/pdfjs-5.2.133/web/images/altText_add.svg+3 −0 added@@ -0,0 +1,3 @@ +<svg width="12" height="13" viewBox="0 0 12 13" fill="none" xmlns="http://www.w3.org/2000/svg"> + <path d="M5.375 7.625V11.875C5.375 12.0408 5.44085 12.1997 5.55806 12.3169C5.67527 12.4342 5.83424 12.5 6 12.5C6.16576 12.5 6.32473 12.4342 6.44194 12.3169C6.55915 12.1997 6.625 12.0408 6.625 11.875V7.625L7.125 7.125H11.375C11.5408 7.125 11.6997 7.05915 11.8169 6.94194C11.9342 6.82473 12 6.66576 12 6.5C12 6.33424 11.9342 6.17527 11.8169 6.05806C11.6997 5.94085 11.5408 5.875 11.375 5.875H7.125L6.625 5.375V1.125C6.625 0.95924 6.55915 0.800269 6.44194 0.683058C6.32473 0.565848 6.16576 0.5 6 0.5C5.83424 0.5 5.67527 0.565848 5.55806 0.683058C5.44085 0.800269 5.375 0.95924 5.375 1.125V5.375L4.875 5.875H0.625C0.45924 5.875 0.300269 5.94085 0.183058 6.05806C0.065848 6.17527 0 6.33424 0 6.5C0 6.66576 0.065848 6.82473 0.183058 6.94194C0.300269 7.05915 0.45924 7.125 0.625 7.125H4.762L5.375 7.625Z" fill="black"/> +</svg>
public/plugins/pdfjs-5.2.133/web/images/altText_disclaimer.svg+3 −0 added@@ -0,0 +1,3 @@ +<svg width="17" height="16" viewBox="0 0 17 16" fill="none" xmlns="http://www.w3.org/2000/svg"> +<path fill-rule="evenodd" clip-rule="evenodd" d="M3.49073 1.3015L3.30873 2.1505C3.29349 2.22246 3.25769 2.28844 3.20568 2.34045C3.15368 2.39246 3.08769 2.42826 3.01573 2.4435L2.16673 2.6255C1.76473 2.7125 1.76473 3.2865 2.16673 3.3725L3.01573 3.5555C3.08769 3.57074 3.15368 3.60654 3.20568 3.65855C3.25769 3.71056 3.29349 3.77654 3.30873 3.8485L3.49073 4.6975C3.57773 5.0995 4.15173 5.0995 4.23773 4.6975L4.42073 3.8485C4.43598 3.77654 4.47177 3.71056 4.52378 3.65855C4.57579 3.60654 4.64178 3.57074 4.71373 3.5555L5.56173 3.3725C5.96373 3.2855 5.96373 2.7115 5.56173 2.6255L4.71273 2.4435C4.64083 2.42814 4.57491 2.3923 4.52292 2.34031C4.47093 2.28832 4.43509 2.2224 4.41973 2.1505L4.23773 1.3015C4.15073 0.8995 3.57673 0.8995 3.49073 1.3015ZM10.8647 13.9995C10.4853 14.0056 10.1158 13.8782 9.82067 13.6397C9.52553 13.4013 9.32347 13.0667 9.24973 12.6945L8.89273 11.0275C8.83676 10.7687 8.70738 10.5316 8.52009 10.3445C8.3328 10.1574 8.09554 10.0282 7.83673 9.9725L6.16973 9.6155C5.38873 9.4465 4.86473 8.7975 4.86473 7.9995C4.86473 7.2015 5.38873 6.5525 6.16973 6.3845L7.83673 6.0275C8.09551 5.97135 8.33267 5.84193 8.51992 5.65468C8.70716 5.46744 8.83658 5.23028 8.89273 4.9715L9.25073 3.3045C9.41773 2.5235 10.0667 1.9995 10.8647 1.9995C11.6627 1.9995 12.3117 2.5235 12.4797 3.3045L12.8367 4.9715C12.9507 5.4995 13.3647 5.9135 13.8927 6.0265L15.5597 6.3835C16.3407 6.5525 16.8647 7.2015 16.8647 7.9995C16.8647 8.7975 16.3407 9.4465 15.5597 9.6145L13.8927 9.9715C13.6337 10.0275 13.3963 10.157 13.209 10.3445C13.0217 10.5319 12.8925 10.7694 12.8367 11.0285L12.4787 12.6945C12.4054 13.0667 12.2036 13.4014 11.9086 13.6399C11.6135 13.8784 11.2441 14.0057 10.8647 13.9995ZM10.8647 3.2495C10.7667 3.2495 10.5337 3.2795 10.4727 3.5655L10.1147 5.2335C10.0081 5.72777 9.76116 6.18082 9.40361 6.53837C9.04606 6.89593 8.59301 7.14283 8.09873 7.2495L6.43173 7.6065C6.14573 7.6685 6.11473 7.9015 6.11473 7.9995C6.11473 8.0975 6.14573 8.3305 6.43173 8.3925L8.09873 8.7495C8.59301 8.85617 9.04606 9.10307 9.40361 9.46062C9.76116 9.81817 10.0081 10.2712 10.1147 10.7655L10.4727 12.4335C10.5337 12.7195 10.7667 12.7495 10.8647 12.7495C10.9627 12.7495 11.1957 12.7195 11.2567 12.4335L11.6147 10.7665C11.7212 10.272 11.9681 9.81878 12.3256 9.46103C12.6832 9.10329 13.1363 8.85624 13.6307 8.7495L15.2977 8.3925C15.5837 8.3305 15.6147 8.0975 15.6147 7.9995C15.6147 7.9015 15.5837 7.6685 15.2977 7.6065L13.6307 7.2495C13.1365 7.14283 12.6834 6.89593 12.3259 6.53837C11.9683 6.18082 11.7214 5.72777 11.6147 5.2335L11.2567 3.5655C11.1957 3.2795 10.9627 3.2495 10.8647 3.2495ZM3.30873 12.1505L3.49073 11.3015C3.57673 10.8995 4.15073 10.8995 4.23773 11.3015L4.41973 12.1505C4.43509 12.2224 4.47093 12.2883 4.52292 12.3403C4.57491 12.3923 4.64083 12.4281 4.71273 12.4435L5.56173 12.6255C5.96373 12.7115 5.96373 13.2855 5.56173 13.3725L4.71273 13.5545C4.64083 13.5699 4.57491 13.6057 4.52292 13.6577C4.47093 13.7097 4.43509 13.7756 4.41973 13.8475L4.23773 14.6965C4.15173 15.0985 3.57773 15.0985 3.49073 14.6965L3.30873 13.8475C3.29337 13.7756 3.25754 13.7097 3.20555 13.6577C3.15356 13.6057 3.08764 13.5699 3.01573 13.5545L2.16673 13.3725C1.76473 13.2865 1.76473 12.7125 2.16673 12.6255L3.01573 12.4435C3.08769 12.4283 3.15368 12.3925 3.20568 12.3405C3.25769 12.2884 3.29349 12.2225 3.30873 12.1505Z" fill="black"/> +</svg>
public/plugins/pdfjs-5.2.133/web/images/altText_done.svg+3 −0 added@@ -0,0 +1,3 @@ +<svg width="12" height="13" viewBox="0 0 12 13" fill="none" xmlns="http://www.w3.org/2000/svg"> + <path d="M6 0.5C5.21207 0.5 4.43185 0.655195 3.7039 0.956723C2.97595 1.25825 2.31451 1.70021 1.75736 2.25736C1.20021 2.81451 0.758251 3.47595 0.456723 4.2039C0.155195 4.93185 0 5.71207 0 6.5C0 7.28793 0.155195 8.06815 0.456723 8.7961C0.758251 9.52405 1.20021 10.1855 1.75736 10.7426C2.31451 11.2998 2.97595 11.7417 3.7039 12.0433C4.43185 12.3448 5.21207 12.5 6 12.5C7.5913 12.5 9.11742 11.8679 10.2426 10.7426C11.3679 9.61742 12 8.0913 12 6.5C12 4.9087 11.3679 3.38258 10.2426 2.25736C9.11742 1.13214 7.5913 0.5 6 0.5ZM5.06 8.9L2.9464 6.7856C2.85273 6.69171 2.80018 6.56446 2.80033 6.43183C2.80048 6.29921 2.85331 6.17207 2.9472 6.0784C3.04109 5.98473 3.16834 5.93218 3.30097 5.93233C3.43359 5.93248 3.56073 5.98531 3.6544 6.0792L5.3112 7.7368L8.3464 4.7008C8.44109 4.6109 8.56715 4.56153 8.69771 4.56322C8.82827 4.56492 8.95301 4.61754 9.04534 4.70986C9.13766 4.80219 9.19028 4.92693 9.19198 5.05749C9.19367 5.18805 9.1443 5.31411 9.0544 5.4088L5.5624 8.9H5.06Z" fill="#FBFBFE"/> +</svg>
public/plugins/pdfjs-5.2.133/web/images/altText_spinner.svg+30 −0 added@@ -0,0 +1,30 @@ +<!-- This Source Code Form is subject to the terms of the Mozilla Public + - License, v. 2.0. If a copy of the MPL was not distributed with this + - file, You can obtain one at http://mozilla.org/MPL/2.0/. --> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" width="16" height="16"> + <style> + @media not (prefers-reduced-motion) { + @keyframes loadingRotate { + from { rotate: 0; } to { rotate: 360deg } + } + #circle-arrows { + animation: loadingRotate 1.8s linear infinite; + transform-origin: 50% 50%; + } + #hourglass { + display: none; + } + } + + @media (prefers-reduced-motion) { + #circle-arrows { + display: none; + } + } + </style> + <path id="circle-arrows" d="M9 5.528c0 .42.508.63.804.333l2.528-2.528a.47.47 0 0 0 0-.666L9.805.14A.471.471 0 0 0 9 .472v1.866A5.756 5.756 0 0 0 2.25 8c0 .942.232 1.83.635 2.615l1.143-1.143A4.208 4.208 0 0 1 3.75 8 4.254 4.254 0 0 1 8 3.75c.345 0 .68.042 1 .122v1.656zM7 10.472v1.656c.32.08.655.122 1 .122A4.254 4.254 0 0 0 12.25 8c0-.52-.107-1.013-.279-1.474l1.143-1.143c.404.786.636 1.674.636 2.617A5.756 5.756 0 0 1 7 13.662v1.866a.47.47 0 0 1-.804.333l-2.528-2.528a.47.47 0 0 1 0-.666l2.528-2.528a.47.47 0 0 1 .804.333z"/> + <g id="hourglass"> + <path d="M13,1 C13.5522847,1 14,1.44771525 14,2 C14,2.55228475 13.5522847,3 13,3 L12.9854217,2.99990801 C12.9950817,3.16495885 13,3.33173274 13,3.5 C13,5.24679885 10.9877318,6.01090495 10.9877318,8.0017538 C10.9877318,9.99260264 13,10.7536922 13,12.5 C13,12.6686079 12.9950617,12.8357163 12.985363,13.0010943 L13,13 C13.5522847,13 14,13.4477153 14,14 C14,14.5522847 13.5522847,15 13,15 L3,15 C2.44771525,15 2,14.5522847 2,14 C2,13.4477153 2.44771525,13 3,13 L3.01463704,13.0010943 C3.00493827,12.8357163 3,12.6686079 3,12.5 C3,10.7536922 4.9877318,9.99260264 5,8.0017538 C5.0122682,6.01090495 3,5.24679885 3,3.5 C3,3.33173274 3.00491834,3.16495885 3.01457832,2.99990801 L3,3 C2.44771525,3 2,2.55228475 2,2 C2,1.44771525 2.44771525,1 3,1 L13,1 Z M10.987,3 L5.012,3 L5.00308914,3.24815712 C5.00103707,3.33163368 5,3.4155948 5,3.5 C5,5.36125069 6.99153646,6.01774089 6.99153646,8.0017538 C6.99153646,9.98576671 5,10.6393737 5,12.5 L5.00307746,12.7513676 L5.01222201,12.9998392 L5.60191711,12.9988344 L6.0425138,12.2959826 C7.02362731,10.7653275 7.67612271,10 8,10 C8.37014547,10 9.16950644,10.9996115 10.3980829,12.9988344 L10.987778,12.9998392 C10.9958674,12.8352104 11,12.66849 11,12.5 C11,10.6393737 8.98689779,10.0147381 8.98689779,8.0017538 C8.98689779,5.98876953 11,5.36125069 11,3.5 L10.9969109,3.24815712 L10.987,3 Z"/> + <path d="M6,4 L10,4 C8.95166016,6 8.28499349,7 8,7 C7.71500651,7 7.04833984,6 6,4 Z"/> + </g> +</svg>
public/plugins/pdfjs-5.2.133/web/images/altText_warning.svg+3 −0 added@@ -0,0 +1,3 @@ +<svg width="17" height="16" viewBox="0 0 17 16" fill="none" xmlns="http://www.w3.org/2000/svg"> + <path fill-rule="evenodd" clip-rule="evenodd" d="M8.78182 2.63903C8.58882 2.28803 8.25782 2.25003 8.12482 2.25003C7.99019 2.24847 7.85771 2.28393 7.74185 2.35253C7.62599 2.42113 7.5312 2.52023 7.46782 2.63903L1.97082 12.639C1.90673 12.7528 1.87406 12.8816 1.87617 13.0122C1.87828 13.1427 1.91509 13.2704 1.98282 13.382C2.04798 13.4951 2.14207 13.5888 2.25543 13.6535C2.36879 13.7182 2.49732 13.7515 2.62782 13.75H13.6218C13.7523 13.7515 13.8809 13.7182 13.9942 13.6535C14.1076 13.5888 14.2017 13.4951 14.2668 13.382C14.3346 13.2704 14.3714 13.1427 14.3735 13.0122C14.3756 12.8816 14.3429 12.7528 14.2788 12.639L8.78182 2.63903ZM6.37282 2.03703C6.75182 1.34603 7.43882 1.00003 8.12482 1.00003C8.48341 0.997985 8.83583 1.09326 9.14454 1.2757C9.45325 1.45814 9.70668 1.72092 9.87782 2.03603L15.3748 12.036C16.1078 13.369 15.1438 15 13.6228 15H2.62782C1.10682 15 0.141823 13.37 0.875823 12.037L6.37282 2.03703ZM8.74982 9.06203C8.74982 9.22779 8.68397 9.38676 8.56676 9.50397C8.44955 9.62118 8.29058 9.68703 8.12482 9.68703C7.95906 9.68703 7.80009 9.62118 7.68288 9.50397C7.56566 9.38676 7.49982 9.22779 7.49982 9.06203V5.62503C7.49982 5.45927 7.56566 5.3003 7.68288 5.18309C7.80009 5.06588 7.95906 5.00003 8.12482 5.00003C8.29058 5.00003 8.44955 5.06588 8.56676 5.18309C8.68397 5.3003 8.74982 5.45927 8.74982 5.62503V9.06203ZM7.74982 12L7.49982 11.75V11L7.74982 10.75H8.49982L8.74982 11V11.75L8.49982 12H7.74982Z" fill="black"/> +</svg>
public/plugins/pdfjs-5.2.133/web/images/annotation-check.svg+11 −0 added@@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + xmlns="http://www.w3.org/2000/svg" + width="40" + height="40" + viewBox="0 0 40 40"> + <path + d="M 1.5006714,23.536225 6.8925879,18.994244 14.585721,26.037937 34.019683,4.5410479 38.499329,9.2235032 14.585721,35.458952 z" + id="path4" + style="fill:#ffff00;fill-opacity:1;stroke:#000000;stroke-width:1.25402856;stroke-opacity:1" /> +</svg>
public/plugins/pdfjs-5.2.133/web/images/annotation-comment.svg+16 −0 added@@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + xmlns="http://www.w3.org/2000/svg" + height="40" + width="40" + viewBox="0 0 40 40"> + <rect + style="fill:#ffff00;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" + width="33.76017" + height="33.76017" + x="3.119915" + y="3.119915" /> + <path + d="m 20.677967,8.54499 c -7.342801,0 -13.295293,4.954293 -13.295293,11.065751 0,2.088793 0.3647173,3.484376 1.575539,5.150563 L 6.0267418,31.45501 13.560595,29.011117 c 2.221262,1.387962 4.125932,1.665377 7.117372,1.665377 7.3428,0 13.295291,-4.954295 13.295291,-11.065753 0,-6.111458 -5.952491,-11.065751 -13.295291,-11.065751 z" + style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.93031836;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"/> +</svg>
public/plugins/pdfjs-5.2.133/web/images/annotation-help.svg+26 −0 added@@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + xmlns="http://www.w3.org/2000/svg" + width="40" + height="40" + viewBox="0 0 40 40"> + <g + transform="translate(0,-60)" + id="layer1"> + <rect + width="36.460953" + height="34.805603" + x="1.7695236" + y="62.597198" + style="fill:#ffff00;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.30826771;stroke-opacity:1" /> + <g + transform="matrix(0.88763677,0,0,0.88763677,2.2472646,8.9890584)"> + <path + d="M 20,64.526342 C 11.454135,64.526342 4.5263421,71.454135 4.5263421,80 4.5263421,88.545865 11.454135,95.473658 20,95.473658 28.545865,95.473658 35.473658,88.545865 35.473658,80 35.473658,71.454135 28.545865,64.526342 20,64.526342 z m -0.408738,9.488564 c 3.527079,0 6.393832,2.84061 6.393832,6.335441 0,3.494831 -2.866753,6.335441 -6.393832,6.335441 -3.527079,0 -6.393832,-2.84061 -6.393832,-6.335441 0,-3.494831 2.866753,-6.335441 6.393832,-6.335441 z" + style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1.02768445;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" /> + <path + d="m 7.2335209,71.819938 4.9702591,4.161823 c -1.679956,2.581606 -1.443939,6.069592 0.159325,8.677725 l -5.1263071,3.424463 c 0.67516,1.231452 3.0166401,3.547686 4.2331971,4.194757 l 3.907728,-4.567277 c 2.541952,1.45975 5.730694,1.392161 8.438683,-0.12614 l 3.469517,6.108336 c 1.129779,-0.44367 4.742234,-3.449633 5.416358,-5.003859 l -5.46204,-4.415541 c 1.44319,-2.424098 1.651175,-5.267515 0.557303,-7.748623 l 5.903195,-3.833951 C 33.14257,71.704996 30.616217,69.018606 29.02952,67.99296 l -4.118813,4.981678 C 22.411934,71.205099 18.900853,70.937534 16.041319,72.32916 l -3.595408,-5.322091 c -1.345962,0.579488 -4.1293881,2.921233 -5.2123901,4.812869 z m 8.1010311,3.426672 c 2.75284,-2.446266 6.769149,-2.144694 9.048998,0.420874 2.279848,2.56557 2.113919,6.596919 -0.638924,9.043185 -2.752841,2.446267 -6.775754,2.13726 -9.055604,-0.428308 -2.279851,-2.565568 -2.107313,-6.589485 0.64553,-9.035751 z" + style="fill:#000000;fill-opacity:1;stroke:none" /> + </g> + </g> +</svg>
public/plugins/pdfjs-5.2.133/web/images/annotation-insert.svg+10 −0 added@@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + xmlns="http://www.w3.org/2000/svg" + width="64" + height="64" + viewBox="0 0 64 64"> + <path + d="M 32.003143,1.4044602 57.432701,62.632577 6.5672991,62.627924 z" + style="fill:#ffff00;fill-opacity:0.94117647;fill-rule:nonzero;stroke:#000000;stroke-width:1.00493038;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" /> +</svg>
public/plugins/pdfjs-5.2.133/web/images/annotation-key.svg+11 −0 added@@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + xmlns="http://www.w3.org/2000/svg" + width="64" + height="64" + viewBox="0 0 64 64"> + <path + d="M 25.470843,9.4933766 C 25.30219,12.141818 30.139101,14.445969 34.704831,13.529144 40.62635,12.541995 41.398833,7.3856498 35.97505,5.777863 31.400921,4.1549155 25.157674,6.5445892 25.470843,9.4933766 z M 4.5246282,17.652051 C 4.068249,11.832873 9.2742983,5.9270407 18.437379,3.0977088 29.751911,-0.87185184 45.495663,1.4008022 53.603953,7.1104009 c 9.275765,6.1889221 7.158128,16.2079421 -3.171076,21.5939521 -1.784316,1.635815 -6.380222,1.21421 -7.068351,3.186186 -1.04003,0.972427 -1.288046,2.050158 -1.232864,3.168203 1.015111,2.000108 -3.831548,1.633216 -3.270553,3.759574 0.589477,5.264544 -0.179276,10.53738 -0.362842,15.806257 -0.492006,2.184998 1.163456,4.574232 -0.734888,6.610642 -2.482919,2.325184 -7.30604,2.189143 -9.193497,-0.274767 -2.733688,-1.740626 -8.254447,-3.615254 -6.104247,-6.339626 3.468112,-1.708686 -2.116197,-3.449897 0.431242,-5.080274 5.058402,-1.39256 -2.393215,-2.304318 -0.146889,-4.334645 3.069198,-0.977415 2.056986,-2.518352 -0.219121,-3.540397 1.876567,-1.807151 1.484149,-4.868919 -2.565455,-5.942205 0.150866,-1.805474 2.905737,-4.136876 -1.679967,-5.20493 C 10.260902,27.882167 4.6872697,22.95045 4.5245945,17.652051 z" + id="path604" + style="fill:#ffff00;fill-opacity:1;stroke:#000000;stroke-width:1.72665179;stroke-opacity:1" /> +</svg>
public/plugins/pdfjs-5.2.133/web/images/annotation-newparagraph.svg+11 −0 added@@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + xmlns="http://www.w3.org/2000/svg" + width="64" + height="64" + viewBox="0 0 64 64"> + <path + d="M 32.003143,10.913072 57.432701,53.086929 6.567299,53.083723 z" + id="path2985" + style="fill:#ffff00;fill-opacity:0.94117647;fill-rule:nonzero;stroke:#000000;stroke-width:0.83403099;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" /> +</svg>
public/plugins/pdfjs-5.2.133/web/images/annotation-noicon.svg+7 −0 added@@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + xmlns="http://www.w3.org/2000/svg" + width="40" + height="40" + viewBox="0 0 40 40"> +</svg>
public/plugins/pdfjs-5.2.133/web/images/annotation-note.svg+42 −0 added@@ -0,0 +1,42 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + xmlns="http://www.w3.org/2000/svg" + width="40" + height="40" + viewBox="0 0 40 40"> + <rect + width="36.075428" + height="31.096582" + x="1.962286" + y="4.4517088" + id="rect4" + style="fill:#ffff00;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.23004246;stroke-opacity:1" /> + <rect + width="27.96859" + height="1.5012145" + x="6.0157046" + y="10.285" + id="rect6" + style="fill:#000000;fill-opacity:1;stroke:none" /> + <rect + width="27.96859" + height="0.85783684" + x="6.0157056" + y="23.21689" + id="rect8" + style="fill:#000000;fill-opacity:1;stroke:none" /> + <rect + width="27.96859" + height="0.85783684" + x="5.8130345" + y="28.964394" + id="rect10" + style="fill:#000000;fill-opacity:1;stroke:none" /> + <rect + width="27.96859" + height="0.85783684" + x="6.0157046" + y="17.426493" + id="rect12" + style="fill:#000000;fill-opacity:1;stroke:none" /> +</svg>
public/plugins/pdfjs-5.2.133/web/images/annotation-paperclip.svg+6 −0 added@@ -0,0 +1,6 @@ +<!-- This Source Code Form is subject to the terms of the Mozilla Public + - License, v. 2.0. If a copy of the MPL was not distributed with this + - file, You can obtain one at http://mozilla.org/MPL/2.0/. --> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" height="40" width="40"> + <path d="M9 3.5a1.5 1.5 0 0 0-3-.001v7.95C6 12.83 7.12 14 8.5 14s2.5-1.17 2.5-2.55V5.5a.5.5 0 0 1 1 0v6.03C11.955 13.427 10.405 15 8.5 15S5.044 13.426 5 11.53V3.5a2.5 2.5 0 0 1 5 0v7.003a1.5 1.5 0 0 1-3-.003v-5a.5.5 0 0 1 1 0v5a.5.5 0 0 0 1 0Z"/> +</svg>
public/plugins/pdfjs-5.2.133/web/images/annotation-paragraph.svg+16 −0 added@@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + xmlns="http://www.w3.org/2000/svg" + width="40" + height="40" + viewBox="0 0 40 40"> + <rect + width="33.76017" + height="33.76017" + x="3.119915" + y="3.119915" + style="fill:#ffff00;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" /> + <path + d="m 17.692678,34.50206 0,-16.182224 c -1.930515,-0.103225 -3.455824,-0.730383 -4.57593,-1.881473 -1.12011,-1.151067 -1.680164,-2.619596 -1.680164,-4.405591 0,-1.992435 0.621995,-3.5796849 1.865988,-4.7617553 1.243989,-1.1820288 3.06352,-1.7730536 5.458598,-1.7730764 l 9.802246,0 0,2.6789711 -2.229895,0 0,26.3251486 -2.632515,0 0,-26.3251486 -3.45324,0 0,26.3251486 z" + style="font-size:29.42051125px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1.07795751;stroke-opacity:1;font-family:Arial;-inkscape-font-specification:Arial" /> +</svg>
public/plugins/pdfjs-5.2.133/web/images/annotation-pushpin.svg+7 −0 added@@ -0,0 +1,7 @@ +<!-- This Source Code Form is subject to the terms of the Mozilla Public + - License, v. 2.0. If a copy of the MPL was not distributed with this + - file, You can obtain one at http://mozilla.org/MPL/2.0/. --> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" height="40" width="40"> + <path d="M8.156 12.5a.99.99 0 0 0 .707-.294l.523-2.574L10.5 8.499l1.058-1.04 2.65-.601a.996.996 0 0 0 0-1.414l-3.657-3.658a.996.996 0 0 0-1.414 0l-.523 2.576L7.5 5.499 6.442 6.535l-2.65.6a.996.996 0 0 0 0 1.413l3.657 3.658a.999.999 0 0 0 .707.295z"/> + <path d="M9.842.996c-.386 0-.77.146-1.06.44a.5.5 0 0 0-.136.251l-.492 2.43-1.008 1.03-.953.933-2.511.566a.5.5 0 0 0-.243.133 1.505 1.505 0 0 0-.002 2.123l1.477 1.477-2.768 2.767a.5.5 0 0 0 0 .707.5.5 0 0 0 .708 0l2.767-2.767 1.475 1.474a1.494 1.494 0 0 0 2.123-.002.5.5 0 0 0 .135-.254l.492-2.427 1.008-1.024.953-.937 2.511-.57a.5.5 0 0 0 .243-.132c.586-.58.583-1.543.002-2.125l-3.659-3.656A1.501 1.501 0 0 0 9.842.996Zm.05 1.025a.394.394 0 0 1 .305.12l3.658 3.657c.18.18.141.432.002.627l-2.41.545a.5.5 0 0 0-.24.131L10.15 8.142a.5.5 0 0 0-.007.006L9.029 9.283a.5.5 0 0 0-.133.25l-.48 2.36c-.082.053-.165.109-.26.109a.492.492 0 0 1-.353-.149L4.145 8.195c-.18-.18-.141-.432-.002-.627l2.41-.545a.5.5 0 0 0 .238-.13L7.85 5.857a.5.5 0 0 0 .007-.008l1.114-1.138a.5.5 0 0 0 .133-.25l.472-2.323a.619.619 0 0 1 .317-.117Z"/> +</svg>
public/plugins/pdfjs-5.2.133/web/images/cursor-editorFreeHighlight.svg+6 −0 added@@ -0,0 +1,6 @@ +<svg width="18" height="19" viewBox="0 0 18 19" fill="none" xmlns="http://www.w3.org/2000/svg"> +<path fill-rule="evenodd" clip-rule="evenodd" d="M12.2 3.09C12.28 3.01 12.43 3 12.43 3C12.48 3 12.58 3.02 12.66 3.1L14.45 4.89C14.58 5.02 14.58 5.22 14.45 5.35L11.7713 8.02872L9.51628 5.77372L12.2 3.09ZM13.2658 5.12L11.7713 6.6145L10.9305 5.77372L12.425 4.27921L13.2658 5.12Z" fill="#FBFBFE"/> +<path fill-rule="evenodd" clip-rule="evenodd" d="M5.98 9.32L8.23 11.57L10.7106 9.08938L8.45562 6.83438L5.98 9.31V9.32ZM8.23 10.1558L9.29641 9.08938L8.45562 8.24859L7.38921 9.315L8.23 10.1558Z" fill="#FBFBFE"/> +<path fill-rule="evenodd" clip-rule="evenodd" d="M10.1526 13.1816L16.2125 7.1217C16.7576 6.58919 17.05 5.8707 17.05 5.12C17.05 4.36931 16.7576 3.65084 16.2126 3.11834L14.4317 1.33747C13.8992 0.79242 13.1807 0.5 12.43 0.5C11.6643 0.5 10.9529 0.812929 10.4329 1.33289L3.68289 8.08289C3.04127 8.72452 3.00459 9.75075 3.57288 10.4363L1.29187 12.7239C1.09186 12.9245 0.990263 13.1957 1.0007 13.4685L1 14.5C0.447715 14.5 0 14.9477 0 15.5V17.5C0 18.0523 0.447715 18.5 1 18.5H16C16.5523 18.5 17 18.0523 17 17.5V15.5C17 14.9477 16.5523 14.5 16 14.5H10.2325C9.83594 14.5 9.39953 13.9347 10.1526 13.1816ZM4.39 9.85L4.9807 10.4407L2.39762 13.0312H6.63877L7.10501 12.565L7.57125 13.0312H8.88875L15.51 6.41C15.86 6.07 16.05 5.61 16.05 5.12C16.05 4.63 15.86 4.17 15.51 3.83L13.72 2.04C13.38 1.69 12.92 1.5 12.43 1.5C11.94 1.5 11.48 1.7 11.14 2.04L4.39 8.79C4.1 9.08 4.1 9.56 4.39 9.85ZM16 17.5V15.5H1V17.5H16Z" fill="#FBFBFE"/> +<path d="M15.1616 6.05136L15.1616 6.05132L15.1564 6.05645L8.40645 12.8064C8.35915 12.8537 8.29589 12.88 8.23 12.88C8.16411 12.88 8.10085 12.8537 8.05355 12.8064L7.45857 12.2115L7.10501 11.8579L6.75146 12.2115L6.03289 12.93H3.20465L5.33477 10.7937L5.6873 10.4402L5.33426 10.0871L4.74355 9.49645C4.64882 9.40171 4.64882 9.23829 4.74355 9.14355L11.4936 2.39355C11.7436 2.14354 12.0779 2 12.43 2C12.7883 2 13.1179 2.13776 13.3614 2.38839L13.3613 2.38843L13.3664 2.39355L15.1564 4.18355L15.1564 4.18359L15.1616 4.18864C15.4122 4.43211 15.55 4.76166 15.55 5.12C15.55 5.47834 15.4122 5.80789 15.1616 6.05136ZM7.87645 11.9236L8.23 12.2771L8.58355 11.9236L11.0642 9.44293L11.4177 9.08938L11.0642 8.73582L8.80918 6.48082L8.45562 6.12727L8.10207 6.48082L5.62645 8.95645L5.48 9.10289V9.31V9.32V9.52711L5.62645 9.67355L7.87645 11.9236ZM11.4177 8.38227L11.7713 8.73582L12.1248 8.38227L14.8036 5.70355C15.1288 5.37829 15.1288 4.86171 14.8036 4.53645L13.0136 2.74645C12.8186 2.55146 12.5792 2.5 12.43 2.5H12.4134L12.3967 2.50111L12.43 3C12.3967 2.50111 12.3966 2.50112 12.3965 2.50112L12.3963 2.50114L12.3957 2.50117L12.3947 2.50125L12.3924 2.50142L12.387 2.50184L12.3732 2.50311C12.3628 2.50416 12.3498 2.50567 12.3346 2.50784C12.3049 2.51208 12.2642 2.51925 12.2178 2.53146C12.1396 2.55202 11.9797 2.60317 11.8464 2.73645L9.16273 5.42016L8.80918 5.77372L9.16273 6.12727L11.4177 8.38227ZM1.5 16H15.5V17H1.5V16Z" stroke="#15141A"/> +</svg>
public/plugins/pdfjs-5.2.133/web/images/cursor-editorFreeText.svg+3 −0 added@@ -0,0 +1,3 @@ +<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> +<path d="M12 2.75H12.5V2.25V1V0.5H12H10.358C9.91165 0.5 9.47731 0.625661 9.09989 0.860442L9.09886 0.861087L8 1.54837L6.89997 0.860979L6.89911 0.860443C6.5218 0.625734 6.08748 0.5 5.642 0.5H4H3.5V1V2.25V2.75H4H5.642C5.66478 2.75 5.6885 2.75641 5.71008 2.76968C5.71023 2.76977 5.71038 2.76986 5.71053 2.76995L6.817 3.461C6.81704 3.46103 6.81709 3.46105 6.81713 3.46108C6.81713 3.46108 6.81713 3.46108 6.81714 3.46109C6.8552 3.48494 6.876 3.52285 6.876 3.567V8V12.433C6.876 12.4771 6.85523 12.515 6.81722 12.5389C6.81715 12.5389 6.81707 12.539 6.817 12.539L5.70953 13.23C5.70941 13.2301 5.70929 13.2302 5.70917 13.2303C5.68723 13.2438 5.6644 13.25 5.641 13.25H4H3.5V13.75V15V15.5H4H5.642C6.08835 15.5 6.52269 15.3743 6.90011 15.1396L6.90086 15.1391L8 14.4526L9.10003 15.14L9.10089 15.1406C9.47831 15.3753 9.91265 15.501 10.359 15.501H12H12.5V15.001V13.751V13.251H12H10.358C10.3352 13.251 10.3115 13.2446 10.2899 13.2313C10.2897 13.2312 10.2896 13.2311 10.2895 13.231L9.183 12.54C9.18298 12.54 9.18295 12.54 9.18293 12.54C9.18291 12.5399 9.18288 12.5399 9.18286 12.5399C9.14615 12.5169 9.125 12.4797 9.125 12.434V8V3.567C9.125 3.52266 9.14603 3.48441 9.18364 3.4606C9.18377 3.46052 9.1839 3.46043 9.18404 3.46035L10.2895 2.76995C10.2896 2.76985 10.2898 2.76975 10.2899 2.76966C10.3119 2.75619 10.3346 2.75 10.358 2.75H12Z" fill="black" stroke="white"/> +</svg>
public/plugins/pdfjs-5.2.133/web/images/cursor-editorInk.svg+4 −0 added@@ -0,0 +1,4 @@ +<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> +<path d="M0.0189877 13.6645L0.612989 10.4635C0.687989 10.0545 0.884989 9.6805 1.18099 9.3825L9.98199 0.5805C10.756 -0.1925 12.015 -0.1945 12.792 0.5805L14.42 2.2085C15.194 2.9835 15.194 4.2435 14.42 5.0185L5.61599 13.8215C5.31999 14.1165 4.94599 14.3125 4.53799 14.3875L1.33599 14.9815C1.26599 14.9935 1.19799 15.0005 1.12999 15.0005C0.832989 15.0005 0.544988 14.8835 0.330988 14.6695C0.0679874 14.4055 -0.0490122 14.0305 0.0189877 13.6645Z" fill="white"/> +<path d="M0.0189877 13.6645L0.612989 10.4635C0.687989 10.0545 0.884989 9.6805 1.18099 9.3825L9.98199 0.5805C10.756 -0.1925 12.015 -0.1945 12.792 0.5805L14.42 2.2085C15.194 2.9835 15.194 4.2435 14.42 5.0185L5.61599 13.8215C5.31999 14.1165 4.94599 14.3125 4.53799 14.3875L1.33599 14.9815C1.26599 14.9935 1.19799 15.0005 1.12999 15.0005C0.832989 15.0005 0.544988 14.8835 0.330988 14.6695C0.0679874 14.4055 -0.0490122 14.0305 0.0189877 13.6645ZM12.472 5.1965L13.632 4.0365L13.631 3.1885L11.811 1.3675L10.963 1.3685L9.80299 2.5285L12.472 5.1965ZM4.31099 13.1585C4.47099 13.1285 4.61799 13.0515 4.73399 12.9345L11.587 6.0815L8.91899 3.4135L2.06599 10.2655C1.94899 10.3835 1.87199 10.5305 1.84099 10.6915L1.36699 13.2485L1.75199 13.6335L4.31099 13.1585Z" fill="black"/> +</svg>
public/plugins/pdfjs-5.2.133/web/images/cursor-editorTextHighlight.svg+8 −0 added@@ -0,0 +1,8 @@ +<svg width="29" height="32" viewBox="0 0 29 32" fill="none" xmlns="http://www.w3.org/2000/svg"> +<path d="M28 16.75C28.2761 16.75 28.5 16.5261 28.5 16.25V15C28.5 14.7239 28.2761 14.5 28 14.5H26.358C25.9117 14.5 25.4773 14.6257 25.0999 14.8604L25.0989 14.8611L24 15.5484L22.9 14.861L22.8991 14.8604C22.5218 14.6257 22.0875 14.5 21.642 14.5H20C19.7239 14.5 19.5 14.7239 19.5 15V16.25C19.5 16.5261 19.7239 16.75 20 16.75H21.642C21.6648 16.75 21.6885 16.7564 21.7101 16.7697C21.7102 16.7698 21.7104 16.7699 21.7105 16.77L22.817 17.461C22.817 17.461 22.8171 17.4611 22.8171 17.4611C22.8171 17.4611 22.8171 17.4611 22.8171 17.4611C22.8552 17.4849 22.876 17.5229 22.876 17.567V22.625V27.683C22.876 27.7271 22.8552 27.765 22.8172 27.7889C22.8171 27.7889 22.8171 27.789 22.817 27.789L21.7095 28.48C21.7094 28.4801 21.7093 28.4802 21.7092 28.4803C21.6872 28.4938 21.6644 28.5 21.641 28.5H20C19.7239 28.5 19.5 28.7239 19.5 29V30.25C19.5 30.5261 19.7239 30.75 20 30.75H21.642C22.0883 30.75 22.5227 30.6243 22.9001 30.3896L22.9009 30.3891L24 29.7026L25.1 30.39L25.1009 30.3906C25.4783 30.6253 25.9127 30.751 26.359 30.751H28C28.2761 30.751 28.5 30.5271 28.5 30.251V29.001C28.5 28.7249 28.2761 28.501 28 28.501H26.358C26.3352 28.501 26.3115 28.4946 26.2899 28.4813C26.2897 28.4812 26.2896 28.4811 26.2895 28.481L25.183 27.79C25.183 27.79 25.183 27.79 25.1829 27.79C25.1829 27.7899 25.1829 27.7899 25.1829 27.7899C25.1462 27.7669 25.125 27.7297 25.125 27.684V22.625V17.567C25.125 17.5227 25.146 17.4844 25.1836 17.4606C25.1838 17.4605 25.1839 17.4604 25.184 17.4603L26.2895 16.77C26.2896 16.7699 26.2898 16.7698 26.2899 16.7697C26.3119 16.7562 26.3346 16.75 26.358 16.75H28Z" fill="black" stroke="#FBFBFE" stroke-linejoin="round"/> +<path d="M24.625 17.567C24.625 17.35 24.735 17.152 24.918 17.037L26.026 16.345C26.126 16.283 26.24 16.25 26.358 16.25H28V15H26.358C26.006 15 25.663 15.099 25.364 15.285L24.256 15.978C24.161 16.037 24.081 16.113 24 16.187C23.918 16.113 23.839 16.037 23.744 15.978L22.635 15.285C22.336 15.099 21.993 15 21.642 15H20V16.25H21.642C21.759 16.25 21.874 16.283 21.974 16.345L23.082 17.037C23.266 17.152 23.376 17.35 23.376 17.567V22.625V27.683C23.376 27.9 23.266 28.098 23.082 28.213L21.973 28.905C21.873 28.967 21.759 29 21.641 29H20V30.25H21.642C21.994 30.25 22.337 30.151 22.636 29.965L23.744 29.273C23.84 29.213 23.919 29.137 24 29.064C24.081 29.137 24.161 29.213 24.256 29.273L25.365 29.966C25.664 30.152 26.007 30.251 26.359 30.251H28V29.001H26.358C26.241 29.001 26.126 28.968 26.026 28.906L24.918 28.214C24.734 28.099 24.625 27.901 24.625 27.684V22.625V17.567Z" fill="black"/> +<path fill-rule="evenodd" clip-rule="evenodd" d="M12.2 2.59C12.28 2.51 12.43 2.5 12.43 2.5C12.48 2.5 12.58 2.52 12.66 2.6L14.45 4.39C14.58 4.52 14.58 4.72 14.45 4.85L11.7713 7.52872L9.51628 5.27372L12.2 2.59ZM13.2658 4.62L11.7713 6.1145L10.9305 5.27372L12.425 3.77921L13.2658 4.62Z" fill="#FBFBFE"/> +<path fill-rule="evenodd" clip-rule="evenodd" d="M5.98 8.82L8.23 11.07L10.7106 8.58938L8.45562 6.33438L5.98 8.81V8.82ZM8.23 9.65579L9.29641 8.58938L8.45562 7.74859L7.38921 8.815L8.23 9.65579Z" fill="#FBFBFE"/> +<path fill-rule="evenodd" clip-rule="evenodd" d="M10.1526 12.6816L16.2125 6.6217C16.7576 6.08919 17.05 5.3707 17.05 4.62C17.05 3.86931 16.7576 3.15084 16.2126 2.61834L14.4317 0.837474C13.8992 0.29242 13.1807 0 12.43 0C11.6643 0 10.9529 0.312929 10.4329 0.832893L3.68289 7.58289C3.04127 8.22452 3.00459 9.25075 3.57288 9.93634L1.29187 12.2239C1.09186 12.4245 0.990263 12.6957 1.0007 12.9685L1 14C0.447715 14 0 14.4477 0 15V17C0 17.5523 0.447715 18 1 18H16C16.5523 18 17 17.5523 17 17V15C17 14.4477 16.5523 14 16 14H10.2325C9.83594 14 9.39953 13.4347 10.1526 12.6816ZM4.39 9.35L4.9807 9.9407L2.39762 12.5312H6.63877L7.10501 12.065L7.57125 12.5312H8.88875L15.51 5.91C15.86 5.57 16.05 5.11 16.05 4.62C16.05 4.13 15.86 3.67 15.51 3.33L13.72 1.54C13.38 1.19 12.92 1 12.43 1C11.94 1 11.48 1.2 11.14 1.54L4.39 8.29C4.1 8.58 4.1 9.06 4.39 9.35ZM16 17V15H1V17H16Z" fill="#FBFBFE"/> +<path d="M15.1616 5.55136L15.1616 5.55132L15.1564 5.55645L8.40645 12.3064C8.35915 12.3537 8.29589 12.38 8.23 12.38C8.16411 12.38 8.10085 12.3537 8.05355 12.3064L7.45857 11.7115L7.10501 11.3579L6.75146 11.7115L6.03289 12.43H3.20465L5.33477 10.2937L5.6873 9.94019L5.33426 9.58715L4.74355 8.99645C4.64882 8.90171 4.64882 8.73829 4.74355 8.64355L11.4936 1.89355C11.7436 1.64354 12.0779 1.5 12.43 1.5C12.7883 1.5 13.1179 1.63776 13.3614 1.88839L13.3613 1.88843L13.3664 1.89355L15.1564 3.68355L15.1564 3.68359L15.1616 3.68864C15.4122 3.93211 15.55 4.26166 15.55 4.62C15.55 4.97834 15.4122 5.30789 15.1616 5.55136ZM5.48 8.82V9.02711L5.62645 9.17355L7.87645 11.4236L8.23 11.7771L8.58355 11.4236L11.0642 8.94293L11.4177 8.58938L11.0642 8.23582L8.80918 5.98082L8.45562 5.62727L8.10207 5.98082L5.62645 8.45645L5.48 8.60289V8.81V8.82ZM11.4177 7.88227L11.7713 8.23582L12.1248 7.88227L14.8036 5.20355C15.1288 4.87829 15.1288 4.36171 14.8036 4.03645L13.0136 2.24645C12.8186 2.05146 12.5792 2 12.43 2H12.4134L12.3967 2.00111L12.43 2.5C12.3967 2.00111 12.3966 2.00112 12.3965 2.00112L12.3963 2.00114L12.3957 2.00117L12.3947 2.00125L12.3924 2.00142L12.387 2.00184L12.3732 2.00311C12.3628 2.00416 12.3498 2.00567 12.3346 2.00784C12.3049 2.01208 12.2642 2.01925 12.2178 2.03146C12.1396 2.05202 11.9797 2.10317 11.8464 2.23645L9.16273 4.92016L8.80918 5.27372L9.16273 5.62727L11.4177 7.88227ZM1.5 16.5V15.5H15.5V16.5H1.5Z" stroke="#15141A"/> +</svg>
public/plugins/pdfjs-5.2.133/web/images/editor-toolbar-delete.svg+5 −0 added@@ -0,0 +1,5 @@ +<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> + <path fill-rule="evenodd" clip-rule="evenodd" + d="M11 3H13.6C14 3 14.3 3.3 14.3 3.6C14.3 3.9 14 4.2 13.7 4.2H13.3V14C13.3 15.1 12.4 16 11.3 16H4.80005C3.70005 16 2.80005 15.1 2.80005 14V4.2H2.40005C2.00005 4.2 1.80005 4 1.80005 3.6C1.80005 3.2 2.00005 3 2.40005 3H5.00005V2C5.00005 0.9 5.90005 0 7.00005 0H9.00005C10.1 0 11 0.9 11 2V3ZM6.90005 1.2L6.30005 1.8V3H9.80005V1.8L9.20005 1.2H6.90005ZM11.4 14.7L12 14.1V4.2H4.00005V14.1L4.60005 14.7H11.4ZM7.00005 12.4C7.00005 12.7 6.70005 13 6.40005 13C6.10005 13 5.80005 12.7 5.80005 12.4V7.6C5.70005 7.3 6.00005 7 6.40005 7C6.80005 7 7.00005 7.3 7.00005 7.6V12.4ZM10.2001 12.4C10.2001 12.7 9.90006 13 9.60006 13C9.30006 13 9.00006 12.7 9.00006 12.4V7.6C9.00006 7.3 9.30006 7 9.60006 7C9.90006 7 10.2001 7.3 10.2001 7.6V12.4Z" + fill="black" /> +</svg> \ No newline at end of file
public/plugins/pdfjs-5.2.133/web/images/editor-toolbar-edit.svg+3 −0 added@@ -0,0 +1,3 @@ +<svg width="16" height="17" viewBox="0 0 16 17" fill="none" xmlns="http://www.w3.org/2000/svg"> +<path d="M14.9815 14.3461L14.3875 11.1451C14.3125 10.7361 14.1155 10.3621 13.8195 10.0641L5.0185 1.26214C4.2445 0.489141 2.9855 0.487141 2.2085 1.26214L0.5805 2.89014C-0.1935 3.66514 -0.1935 4.92514 0.5805 5.70014L9.3845 14.5031C9.6805 14.7981 10.0545 14.9941 10.4625 15.0691L13.6645 15.6631C13.7345 15.6751 13.8025 15.6821 13.8705 15.6821C14.1675 15.6821 14.4555 15.5651 14.6695 15.3511C14.9325 15.0871 15.0495 14.7121 14.9815 14.3461ZM2.5285 5.87814L1.3685 4.71814L1.3695 3.87014L3.1895 2.04914L4.0375 2.05014L5.1975 3.21014L2.5285 5.87814ZM10.6895 13.8401C10.5295 13.8101 10.3825 13.7331 10.2665 13.6161L3.4135 6.76314L6.0815 4.09514L12.9345 10.9471C13.0515 11.0651 13.1285 11.2121 13.1595 11.3731L13.6335 13.9301L13.2485 14.3151L10.6895 13.8401Z" fill="black"/> +</svg>
public/plugins/pdfjs-5.2.133/web/images/findbarButton-next.svg+3 −0 added@@ -0,0 +1,3 @@ +<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> +<path d="M10.999 8.352L5.534 13.818C5.41551 13.9303 5.25786 13.9918 5.09466 13.9895C4.93146 13.9872 4.77561 13.9212 4.66033 13.8057C4.54505 13.6902 4.47945 13.5342 4.47752 13.3709C4.47559 13.2077 4.53748 13.0502 4.65 12.932L9.585 7.998L4.651 3.067C4.53862 2.94864 4.47691 2.79106 4.47903 2.62786C4.48114 2.46466 4.54692 2.30874 4.66233 2.19333C4.77774 2.07792 4.93366 2.01215 5.09686 2.01003C5.26006 2.00792 5.41763 2.06962 5.536 2.182L11 7.647L10.999 8.352Z" fill="black"/> +</svg>
public/plugins/pdfjs-5.2.133/web/images/findbarButton-previous.svg+3 −0 added@@ -0,0 +1,3 @@ +<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> +<path d="M5.001 8.352L10.466 13.818C10.5845 13.9303 10.7421 13.9918 10.9053 13.9895C11.0685 13.9872 11.2244 13.9212 11.3397 13.8057C11.4549 13.6902 11.5205 13.5342 11.5225 13.3709C11.5244 13.2077 11.4625 13.0502 11.35 12.932L6.416 7.999L11.349 3.067C11.4614 2.94864 11.5231 2.79106 11.521 2.62786C11.5189 2.46466 11.4531 2.30874 11.3377 2.19333C11.2223 2.07792 11.0663 2.01215 10.9031 2.01003C10.7399 2.00792 10.5824 2.06962 10.464 2.182L5 7.647L5.001 8.352Z" fill="black"/> +</svg>
public/plugins/pdfjs-5.2.133/web/images/gv-toolbarButton-download.svg+3 −0 added@@ -0,0 +1,3 @@ +<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> +<path fill-rule="evenodd" clip-rule="evenodd" d="M16.969 10.059C17.262 9.766 17.737 9.766 18.03 10.059C18.323 10.352 18.323 10.827 18.03 11.12L12.15 17H11.35L5.46896 11.12C5.17596 10.827 5.17596 10.352 5.46896 10.059C5.76196 9.766 6.23696 9.766 6.52996 10.059L11 14.529V2.75C11 2.336 11.336 2 11.75 2C12.164 2 12.5 2.336 12.499 2.75V14.529L16.969 10.059ZM4.98193 19.7L5.78193 20.5H17.7169L18.5169 19.7V17.75C18.5169 17.336 18.8529 17 19.2669 17C19.6809 17 20.0169 17.336 20.0169 17.75V19.5C20.0169 20.881 18.8979 22 17.5169 22H5.98193C4.60093 22 3.48193 20.881 3.48193 19.5V17.75C3.48193 17.336 3.81793 17 4.23193 17C4.64593 17 4.98193 17.336 4.98193 17.75V19.7Z" fill="black"/> +</svg>
public/plugins/pdfjs-5.2.133/web/images/loading-icon.gif+0 −0 renamedpublic/plugins/pdfjs-5.2.133/web/images/loading.svg+1 −0 added@@ -0,0 +1 @@ +<svg xmlns="http://www.w3.org/2000/svg" height="16" width="16" style="animation:spinLoadingIcon 1s steps(12,end) infinite"><style>@keyframes spinLoadingIcon{to{transform:rotate(360deg)}}</style><path d="M7 3V1s0-1 1-1 1 1 1 1v2s0 1-1 1-1-1-1-1z"/><path d="M4.63 4.1l-1-1.73S3.13 1.5 4 1c.87-.5 1.37.37 1.37.37l1 1.73s.5.87-.37 1.37c-.87.57-1.37-.37-1.37-.37z" fill-opacity=".93"/><path d="M3.1 6.37l-1.73-1S.5 4.87 1 4c.5-.87 1.37-.37 1.37-.37l1.73 1s.87.5.37 1.37c-.5.87-1.37.37-1.37.37z" fill-opacity=".86"/><path d="M3 9H1S0 9 0 8s1-1 1-1h2s1 0 1 1-1 1-1 1z" fill-opacity=".79"/><path d="M4.1 11.37l-1.73 1S1.5 12.87 1 12c-.5-.87.37-1.37.37-1.37l1.73-1s.87-.5 1.37.37c.5.87-.37 1.37-.37 1.37z" fill-opacity=".72"/><path d="M3.63 13.56l1-1.73s.5-.87 1.37-.37c.87.5.37 1.37.37 1.37l-1 1.73s-.5.87-1.37.37c-.87-.5-.37-1.37-.37-1.37z" fill-opacity=".65"/><path d="M7 15v-2s0-1 1-1 1 1 1 1v2s0 1-1 1-1-1-1-1z" fill-opacity=".58"/><path d="M10.63 14.56l-1-1.73s-.5-.87.37-1.37c.87-.5 1.37.37 1.37.37l1 1.73s.5.87-.37 1.37c-.87.5-1.37-.37-1.37-.37z" fill-opacity=".51"/><path d="M13.56 12.37l-1.73-1s-.87-.5-.37-1.37c.5-.87 1.37-.37 1.37-.37l1.73 1s.87.5.37 1.37c-.5.87-1.37.37-1.37.37z" fill-opacity=".44"/><path d="M15 9h-2s-1 0-1-1 1-1 1-1h2s1 0 1 1-1 1-1 1z" fill-opacity=".37"/><path d="M14.56 5.37l-1.73 1s-.87.5-1.37-.37c-.5-.87.37-1.37.37-1.37l1.73-1s.87-.5 1.37.37c.5.87-.37 1.37-.37 1.37z" fill-opacity=".3"/><path d="M9.64 3.1l.98-1.66s.5-.874 1.37-.37c.87.5.37 1.37.37 1.37l-1 1.73s-.5.87-1.37.37c-.87-.5-.37-1.37-.37-1.37z" fill-opacity=".23"/></svg> \ No newline at end of file
public/plugins/pdfjs-5.2.133/web/images/messageBar_closingButton.svg+3 −0 added@@ -0,0 +1,3 @@ +<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> + <path d="M7.85822 8.84922L4.85322 11.8542C4.75891 11.9453 4.63261 11.9957 4.50151 11.9946C4.37042 11.9934 4.24501 11.9408 4.15231 11.8481C4.0596 11.7554 4.00702 11.63 4.00588 11.4989C4.00474 11.3678 4.05514 11.2415 4.14622 11.1472L7.15122 8.14222V7.85922L4.14622 4.85322C4.05514 4.75891 4.00474 4.63261 4.00588 4.50151C4.00702 4.37042 4.0596 4.24501 4.15231 4.15231C4.24501 4.0596 4.37042 4.00702 4.50151 4.00588C4.63261 4.00474 4.75891 4.05514 4.85322 4.14622L7.85822 7.15122H8.14122L11.1462 4.14622C11.2405 4.05514 11.3668 4.00474 11.4979 4.00588C11.629 4.00702 11.7544 4.0596 11.8471 4.15231C11.9398 4.24501 11.9924 4.37042 11.9936 4.50151C11.9947 4.63261 11.9443 4.75891 11.8532 4.85322L8.84822 7.85922V8.14222L11.8532 11.1472C11.9443 11.2415 11.9947 11.3678 11.9936 11.4989C11.9924 11.63 11.9398 11.7554 11.8471 11.8481C11.7544 11.9408 11.629 11.9934 11.4979 11.9946C11.3668 11.9957 11.2405 11.9453 11.1462 11.8542L8.14122 8.84922L8.14222 8.85022L7.85822 8.84922Z" fill="black"/> +</svg>
public/plugins/pdfjs-5.2.133/web/images/messageBar_info.svg+3 −0 added@@ -0,0 +1,3 @@ +<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> + <path d="M7.625 0.5C6.64009 0.5 5.66482 0.693993 4.75487 1.0709C3.84493 1.44781 3.01814 2.00026 2.3217 2.6967C1.62526 3.39314 1.07281 4.21993 0.695904 5.12987C0.318993 6.03982 0.125 7.01509 0.125 8C0.125 8.98491 0.318993 9.96018 0.695904 10.8701C1.07281 11.7801 1.62526 12.6069 2.3217 13.3033C3.01814 13.9997 3.84493 14.5522 4.75487 14.9291C5.66482 15.306 6.64009 15.5 7.625 15.5C9.61412 15.5 11.5218 14.7098 12.9283 13.3033C14.3348 11.8968 15.125 9.98912 15.125 8C15.125 6.01088 14.3348 4.10322 12.9283 2.6967C11.5218 1.29018 9.61412 0.5 7.625 0.5ZM8.25 11.375C8.25 11.5408 8.18415 11.6997 8.06694 11.8169C7.94973 11.9342 7.79076 12 7.625 12C7.45924 12 7.30027 11.9342 7.18306 11.8169C7.06585 11.6997 7 11.5408 7 11.375V6.938C7 6.77224 7.06585 6.61327 7.18306 6.49606C7.30027 6.37885 7.45924 6.313 7.625 6.313C7.79076 6.313 7.94973 6.37885 8.06694 6.49606C8.18415 6.61327 8.25 6.77224 8.25 6.938V11.375ZM8.25 5L8 5.25H7.25L7 5V4.25L7.25 4H8L8.25 4.25V5Z" fill="black" /> +</svg>
public/plugins/pdfjs-5.2.133/web/images/messageBar_warning.svg+3 −0 added@@ -0,0 +1,3 @@ +<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> + <path d="M14.8748 12.037L9.37782 2.037C8.99682 1.346 8.31082 1 7.62482 1C6.93882 1 6.25282 1.346 5.87282 2.037L0.375823 12.037C-0.358177 13.37 0.606823 15 2.12782 15H13.1228C14.6428 15 15.6078 13.37 14.8748 12.037ZM8.24982 11.75L7.99982 12H7.24982L6.99982 11.75V11L7.24982 10.75H7.99982L8.24982 11V11.75ZM8.24982 9.062C8.24982 9.22776 8.18398 9.38673 8.06677 9.50394C7.94955 9.62115 7.79058 9.687 7.62482 9.687C7.45906 9.687 7.30009 9.62115 7.18288 9.50394C7.06567 9.38673 6.99982 9.22776 6.99982 9.062V5.625C6.99982 5.45924 7.06567 5.30027 7.18288 5.18306C7.30009 5.06585 7.45906 5 7.62482 5C7.79058 5 7.94955 5.06585 8.06677 5.18306C8.18398 5.30027 8.24982 5.45924 8.24982 5.625V9.062Z" fill="black"/> +</svg>
5084b4a9b77aVulnerability mechanics
Generated on May 9, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.
References
6- github.com/advisories/GHSA-xh32-cx6c-cp4vghsaADVISORY
- nvd.nist.gov/vuln/detail/CVE-2025-47943ghsaADVISORY
- github.com/gogs/gogs/commit/110117b2e5e5baa4809c819bec701e929d2d8d40nvdWEB
- github.com/gogs/gogs/releases/tag/v0.13.3nvdWEB
- github.com/gogs/gogs/security/advisories/GHSA-xh32-cx6c-cp4vnvdWEB
- www.hacktivesecurity.com/blog/2025/07/15/cve-2025-47943-stored-xss-in-gogs-via-pdfnvdWEB
News mentions
0No linked articles in our index yet.