Update pdf.js

This commit is contained in:
2021-08-17 18:42:32 +02:00
parent 481b42be47
commit fee81146aa
262 changed files with 88077 additions and 86148 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@@ -12,41 +12,45 @@
* See the License for the specific language governing permissions and * See the License for the specific language governing permissions and
* limitations under the License. * limitations under the License.
*/ */
/* eslint-disable no-var */
'use strict'; "use strict";
// eslint-disable-next-line no-var
var FontInspector = (function FontInspectorClosure() { var FontInspector = (function FontInspectorClosure() {
var fonts, createObjectURL; let fonts;
var active = false; let active = false;
var fontAttribute = 'data-font-name'; const fontAttribute = "data-font-name";
function removeSelection() { function removeSelection() {
let divs = document.querySelectorAll(`span[${fontAttribute}]`); const divs = document.querySelectorAll(`span[${fontAttribute}]`);
for (let div of divs) { for (const div of divs) {
div.className = ''; div.className = "";
} }
} }
function resetSelection() { function resetSelection() {
let divs = document.querySelectorAll(`span[${fontAttribute}]`); const divs = document.querySelectorAll(`span[${fontAttribute}]`);
for (let div of divs) { for (const div of divs) {
div.className = 'debuggerHideText'; div.className = "debuggerHideText";
} }
} }
function selectFont(fontName, show) { function selectFont(fontName, show) {
let divs = document.querySelectorAll(`span[${fontAttribute}=${fontName}]`); const divs = document.querySelectorAll(
for (let div of divs) { `span[${fontAttribute}=${fontName}]`
div.className = show ? 'debuggerShowText' : 'debuggerHideText'; );
for (const div of divs) {
div.className = show ? "debuggerShowText" : "debuggerHideText";
} }
} }
function textLayerClick(e) { function textLayerClick(e) {
if (!e.target.dataset.fontName || if (
e.target.tagName.toUpperCase() !== 'SPAN') { !e.target.dataset.fontName ||
e.target.tagName.toUpperCase() !== "SPAN"
) {
return; return;
} }
var fontName = e.target.dataset.fontName; const fontName = e.target.dataset.fontName;
var selects = document.getElementsByTagName('input'); const selects = document.getElementsByTagName("input");
for (var i = 0; i < selects.length; ++i) { for (let i = 0; i < selects.length; ++i) {
var select = selects[i]; const select = selects[i];
if (select.dataset.fontName !== fontName) { if (select.dataset.fontName !== fontName) {
continue; continue;
} }
@@ -57,25 +61,22 @@ var FontInspector = (function FontInspectorClosure() {
} }
return { return {
// Properties/functions needed by PDFBug. // Properties/functions needed by PDFBug.
id: 'FontInspector', id: "FontInspector",
name: 'Font Inspector', name: "Font Inspector",
panel: null, panel: null,
manager: null, manager: null,
init: function init(pdfjsLib) { init: function init(pdfjsLib) {
var panel = this.panel; const panel = this.panel;
panel.setAttribute('style', 'padding: 5px;'); const tmp = document.createElement("button");
var tmp = document.createElement('button'); tmp.addEventListener("click", resetSelection);
tmp.addEventListener('click', resetSelection); tmp.textContent = "Refresh";
tmp.textContent = 'Refresh';
panel.appendChild(tmp); panel.appendChild(tmp);
fonts = document.createElement('div'); fonts = document.createElement("div");
panel.appendChild(fonts); panel.appendChild(fonts);
createObjectURL = pdfjsLib.createObjectURL;
}, },
cleanup: function cleanup() { cleanup: function cleanup() {
fonts.textContent = ''; fonts.textContent = "";
}, },
enabled: false, enabled: false,
get active() { get active() {
@@ -84,62 +85,62 @@ var FontInspector = (function FontInspectorClosure() {
set active(value) { set active(value) {
active = value; active = value;
if (active) { if (active) {
document.body.addEventListener('click', textLayerClick, true); document.body.addEventListener("click", textLayerClick, true);
resetSelection(); resetSelection();
} else { } else {
document.body.removeEventListener('click', textLayerClick, true); document.body.removeEventListener("click", textLayerClick, true);
removeSelection(); removeSelection();
} }
}, },
// FontInspector specific functions. // FontInspector specific functions.
fontAdded: function fontAdded(fontObj, url) { fontAdded: function fontAdded(fontObj, url) {
function properties(obj, list) { function properties(obj, list) {
var moreInfo = document.createElement('table'); const moreInfo = document.createElement("table");
for (var i = 0; i < list.length; i++) { for (let i = 0; i < list.length; i++) {
var tr = document.createElement('tr'); const tr = document.createElement("tr");
var td1 = document.createElement('td'); const td1 = document.createElement("td");
td1.textContent = list[i]; td1.textContent = list[i];
tr.appendChild(td1); tr.appendChild(td1);
var td2 = document.createElement('td'); const td2 = document.createElement("td");
td2.textContent = obj[list[i]].toString(); td2.textContent = obj[list[i]].toString();
tr.appendChild(td2); tr.appendChild(td2);
moreInfo.appendChild(tr); moreInfo.appendChild(tr);
} }
return moreInfo; return moreInfo;
} }
var moreInfo = properties(fontObj, ['name', 'type']); const moreInfo = properties(fontObj, ["name", "type"]);
var fontName = fontObj.loadedName; const fontName = fontObj.loadedName;
var font = document.createElement('div'); const font = document.createElement("div");
var name = document.createElement('span'); const name = document.createElement("span");
name.textContent = fontName; name.textContent = fontName;
var download = document.createElement('a'); const download = document.createElement("a");
if (url) { if (url) {
url = /url\(['"]?([^\)"']+)/.exec(url); url = /url\(['"]?([^)"']+)/.exec(url);
download.href = url[1]; download.href = url[1];
} else if (fontObj.data) { } else if (fontObj.data) {
download.href = createObjectURL(fontObj.data, fontObj.mimeType); download.href = URL.createObjectURL(
new Blob([fontObj.data], { type: fontObj.mimeType })
);
} }
download.textContent = 'Download'; download.textContent = "Download";
var logIt = document.createElement('a'); const logIt = document.createElement("a");
logIt.href = ''; logIt.href = "";
logIt.textContent = 'Log'; logIt.textContent = "Log";
logIt.addEventListener('click', function(event) { logIt.addEventListener("click", function (event) {
event.preventDefault(); event.preventDefault();
console.log(fontObj); console.log(fontObj);
}); });
var select = document.createElement('input'); const select = document.createElement("input");
select.setAttribute('type', 'checkbox'); select.setAttribute("type", "checkbox");
select.dataset.fontName = fontName; select.dataset.fontName = fontName;
select.addEventListener('click', (function(select, fontName) { select.addEventListener("click", function () {
return (function() {
selectFont(fontName, select.checked); selectFont(fontName, select.checked);
}); });
})(select, fontName));
font.appendChild(select); font.appendChild(select);
font.appendChild(name); font.appendChild(name);
font.appendChild(document.createTextNode(' ')); font.appendChild(document.createTextNode(" "));
font.appendChild(download); font.appendChild(download);
font.appendChild(document.createTextNode(' ')); font.appendChild(document.createTextNode(" "));
font.appendChild(logIt); font.appendChild(logIt);
font.appendChild(moreInfo); font.appendChild(moreInfo);
fonts.appendChild(font); fonts.appendChild(font);
@@ -154,62 +155,63 @@ var FontInspector = (function FontInspectorClosure() {
}; };
})(); })();
var opMap; let opMap;
// Manages all the page steppers. // Manages all the page steppers.
//
// eslint-disable-next-line no-var
var StepperManager = (function StepperManagerClosure() { var StepperManager = (function StepperManagerClosure() {
var steppers = []; let steppers = [];
var stepperDiv = null; let stepperDiv = null;
var stepperControls = null; let stepperControls = null;
var stepperChooser = null; let stepperChooser = null;
var breakPoints = Object.create(null); let breakPoints = Object.create(null);
return { return {
// Properties/functions needed by PDFBug. // Properties/functions needed by PDFBug.
id: 'Stepper', id: "Stepper",
name: 'Stepper', name: "Stepper",
panel: null, panel: null,
manager: null, manager: null,
init: function init(pdfjsLib) { init: function init(pdfjsLib) {
var self = this; const self = this;
this.panel.setAttribute('style', 'padding: 5px;'); stepperControls = document.createElement("div");
stepperControls = document.createElement('div'); stepperChooser = document.createElement("select");
stepperChooser = document.createElement('select'); stepperChooser.addEventListener("change", function (event) {
stepperChooser.addEventListener('change', function(event) {
self.selectStepper(this.value); self.selectStepper(this.value);
}); });
stepperControls.appendChild(stepperChooser); stepperControls.appendChild(stepperChooser);
stepperDiv = document.createElement('div'); stepperDiv = document.createElement("div");
this.panel.appendChild(stepperControls); this.panel.appendChild(stepperControls);
this.panel.appendChild(stepperDiv); this.panel.appendChild(stepperDiv);
if (sessionStorage.getItem('pdfjsBreakPoints')) { if (sessionStorage.getItem("pdfjsBreakPoints")) {
breakPoints = JSON.parse(sessionStorage.getItem('pdfjsBreakPoints')); breakPoints = JSON.parse(sessionStorage.getItem("pdfjsBreakPoints"));
} }
opMap = Object.create(null); opMap = Object.create(null);
for (var key in pdfjsLib.OPS) { for (const key in pdfjsLib.OPS) {
opMap[pdfjsLib.OPS[key]] = key; opMap[pdfjsLib.OPS[key]] = key;
} }
}, },
cleanup: function cleanup() { cleanup: function cleanup() {
stepperChooser.textContent = ''; stepperChooser.textContent = "";
stepperDiv.textContent = ''; stepperDiv.textContent = "";
steppers = []; steppers = [];
}, },
enabled: false, enabled: false,
active: false, active: false,
// Stepper specific functions. // Stepper specific functions.
create: function create(pageIndex) { create: function create(pageIndex) {
var debug = document.createElement('div'); const debug = document.createElement("div");
debug.id = 'stepper' + pageIndex; debug.id = "stepper" + pageIndex;
debug.setAttribute('hidden', true); debug.hidden = true;
debug.className = 'stepper'; debug.className = "stepper";
stepperDiv.appendChild(debug); stepperDiv.appendChild(debug);
var b = document.createElement('option'); const b = document.createElement("option");
b.textContent = 'Page ' + (pageIndex + 1); b.textContent = "Page " + (pageIndex + 1);
b.value = pageIndex; b.value = pageIndex;
stepperChooser.appendChild(b); stepperChooser.appendChild(b);
var initBreakPoints = breakPoints[pageIndex] || []; const initBreakPoints = breakPoints[pageIndex] || [];
var stepper = new Stepper(debug, pageIndex, initBreakPoints); const stepper = new Stepper(debug, pageIndex, initBreakPoints);
steppers.push(stepper); steppers.push(stepper);
if (steppers.length === 1) { if (steppers.length === 1) {
this.selectStepper(pageIndex, false); this.selectStepper(pageIndex, false);
@@ -217,37 +219,33 @@ var StepperManager = (function StepperManagerClosure() {
return stepper; return stepper;
}, },
selectStepper: function selectStepper(pageIndex, selectPanel) { selectStepper: function selectStepper(pageIndex, selectPanel) {
var i; let i;
pageIndex = pageIndex | 0; pageIndex = pageIndex | 0;
if (selectPanel) { if (selectPanel) {
this.manager.selectPanel(this); this.manager.selectPanel(this);
} }
for (i = 0; i < steppers.length; ++i) { for (i = 0; i < steppers.length; ++i) {
var stepper = steppers[i]; const stepper = steppers[i];
if (stepper.pageIndex === pageIndex) { stepper.panel.hidden = stepper.pageIndex !== pageIndex;
stepper.panel.removeAttribute('hidden');
} else {
stepper.panel.setAttribute('hidden', true);
} }
} const options = stepperChooser.options;
var options = stepperChooser.options;
for (i = 0; i < options.length; ++i) { for (i = 0; i < options.length; ++i) {
var option = options[i]; const option = options[i];
option.selected = (option.value | 0) === pageIndex; option.selected = (option.value | 0) === pageIndex;
} }
}, },
saveBreakPoints: function saveBreakPoints(pageIndex, bps) { saveBreakPoints: function saveBreakPoints(pageIndex, bps) {
breakPoints[pageIndex] = bps; breakPoints[pageIndex] = bps;
sessionStorage.setItem('pdfjsBreakPoints', JSON.stringify(breakPoints)); sessionStorage.setItem("pdfjsBreakPoints", JSON.stringify(breakPoints));
}, },
}; };
})(); })();
// The stepper for each page's IRQueue. // The stepper for each page's operatorList.
var Stepper = (function StepperClosure() { const Stepper = (function StepperClosure() {
// Shorter way to create element and optionally set textContent. // Shorter way to create element and optionally set textContent.
function c(tag, textContent) { function c(tag, textContent) {
var d = document.createElement(tag); const d = document.createElement(tag);
if (textContent) { if (textContent) {
d.textContent = textContent; d.textContent = textContent;
} }
@@ -255,33 +253,38 @@ var Stepper = (function StepperClosure() {
} }
function simplifyArgs(args) { function simplifyArgs(args) {
if (typeof args === 'string') { if (typeof args === "string") {
var MAX_STRING_LENGTH = 75; const MAX_STRING_LENGTH = 75;
return args.length <= MAX_STRING_LENGTH ? args : return args.length <= MAX_STRING_LENGTH
args.substring(0, MAX_STRING_LENGTH) + '...'; ? args
: args.substring(0, MAX_STRING_LENGTH) + "...";
} }
if (typeof args !== 'object' || args === null) { if (typeof args !== "object" || args === null) {
return args; return args;
} }
if ('length' in args) { // array if ("length" in args) {
var simpleArgs = [], i, ii; // array
var MAX_ITEMS = 10; const MAX_ITEMS = 10,
simpleArgs = [];
let i, ii;
for (i = 0, ii = Math.min(MAX_ITEMS, args.length); i < ii; i++) { for (i = 0, ii = Math.min(MAX_ITEMS, args.length); i < ii; i++) {
simpleArgs.push(simplifyArgs(args[i])); simpleArgs.push(simplifyArgs(args[i]));
} }
if (i < args.length) { if (i < args.length) {
simpleArgs.push('...'); simpleArgs.push("...");
} }
return simpleArgs; return simpleArgs;
} }
var simpleObj = {}; const simpleObj = {};
for (var key in args) { for (const key in args) {
simpleObj[key] = simplifyArgs(args[key]); simpleObj[key] = simplifyArgs(args[key]);
} }
return simpleObj; return simpleObj;
} }
function Stepper(panel, pageIndex, initialBreakPoints) { // eslint-disable-next-line no-shadow
class Stepper {
constructor(panel, pageIndex, initialBreakPoints) {
this.panel = panel; this.panel = panel;
this.breakPoint = 0; this.breakPoint = 0;
this.nextBreakPoint = null; this.nextBreakPoint = null;
@@ -290,28 +293,29 @@ var Stepper = (function StepperClosure() {
this.currentIdx = -1; this.currentIdx = -1;
this.operatorListIdx = 0; this.operatorListIdx = 0;
} }
Stepper.prototype = {
init: function init(operatorList) { init(operatorList) {
var panel = this.panel; const panel = this.panel;
var content = c('div', 'c=continue, s=step'); const content = c("div", "c=continue, s=step");
var table = c('table'); const table = c("table");
content.appendChild(table); content.appendChild(table);
table.cellSpacing = 0; table.cellSpacing = 0;
var headerRow = c('tr'); const headerRow = c("tr");
table.appendChild(headerRow); table.appendChild(headerRow);
headerRow.appendChild(c('th', 'Break')); headerRow.appendChild(c("th", "Break"));
headerRow.appendChild(c('th', 'Idx')); headerRow.appendChild(c("th", "Idx"));
headerRow.appendChild(c('th', 'fn')); headerRow.appendChild(c("th", "fn"));
headerRow.appendChild(c('th', 'args')); headerRow.appendChild(c("th", "args"));
panel.appendChild(content); panel.appendChild(content);
this.table = table; this.table = table;
this.updateOperatorList(operatorList); this.updateOperatorList(operatorList);
}, }
updateOperatorList: function updateOperatorList(operatorList) {
var self = this; updateOperatorList(operatorList) {
const self = this;
function cboxOnClick() { function cboxOnClick() {
var x = +this.dataset.idx; const x = +this.dataset.idx;
if (this.checked) { if (this.checked) {
self.breakPoints.push(x); self.breakPoints.push(x);
} else { } else {
@@ -320,129 +324,132 @@ var Stepper = (function StepperClosure() {
StepperManager.saveBreakPoints(self.pageIndex, self.breakPoints); StepperManager.saveBreakPoints(self.pageIndex, self.breakPoints);
} }
var MAX_OPERATORS_COUNT = 15000; const MAX_OPERATORS_COUNT = 15000;
if (this.operatorListIdx > MAX_OPERATORS_COUNT) { if (this.operatorListIdx > MAX_OPERATORS_COUNT) {
return; return;
} }
var chunk = document.createDocumentFragment(); const chunk = document.createDocumentFragment();
var operatorsToDisplay = Math.min(MAX_OPERATORS_COUNT, const operatorsToDisplay = Math.min(
operatorList.fnArray.length); MAX_OPERATORS_COUNT,
for (var i = this.operatorListIdx; i < operatorsToDisplay; i++) { operatorList.fnArray.length
var line = c('tr'); );
line.className = 'line'; for (let i = this.operatorListIdx; i < operatorsToDisplay; i++) {
const line = c("tr");
line.className = "line";
line.dataset.idx = i; line.dataset.idx = i;
chunk.appendChild(line); chunk.appendChild(line);
var checked = this.breakPoints.includes(i); const checked = this.breakPoints.includes(i);
var args = operatorList.argsArray[i] || []; const args = operatorList.argsArray[i] || [];
var breakCell = c('td'); const breakCell = c("td");
var cbox = c('input'); const cbox = c("input");
cbox.type = 'checkbox'; cbox.type = "checkbox";
cbox.className = 'points'; cbox.className = "points";
cbox.checked = checked; cbox.checked = checked;
cbox.dataset.idx = i; cbox.dataset.idx = i;
cbox.onclick = cboxOnClick; cbox.onclick = cboxOnClick;
breakCell.appendChild(cbox); breakCell.appendChild(cbox);
line.appendChild(breakCell); line.appendChild(breakCell);
line.appendChild(c('td', i.toString())); line.appendChild(c("td", i.toString()));
var fn = opMap[operatorList.fnArray[i]]; const fn = opMap[operatorList.fnArray[i]];
var decArgs = args; let decArgs = args;
if (fn === 'showText') { if (fn === "showText") {
var glyphs = args[0]; const glyphs = args[0];
var newArgs = []; const newArgs = [];
var str = []; let str = [];
for (var j = 0; j < glyphs.length; j++) { for (let j = 0; j < glyphs.length; j++) {
var glyph = glyphs[j]; const glyph = glyphs[j];
if (typeof glyph === 'object' && glyph !== null) { if (typeof glyph === "object" && glyph !== null) {
str.push(glyph.fontChar); str.push(glyph.fontChar);
} else { } else {
if (str.length > 0) { if (str.length > 0) {
newArgs.push(str.join('')); newArgs.push(str.join(""));
str = []; str = [];
} }
newArgs.push(glyph); // null or number newArgs.push(glyph); // null or number
} }
} }
if (str.length > 0) { if (str.length > 0) {
newArgs.push(str.join('')); newArgs.push(str.join(""));
} }
decArgs = [newArgs]; decArgs = [newArgs];
} }
line.appendChild(c('td', fn)); line.appendChild(c("td", fn));
line.appendChild(c('td', JSON.stringify(simplifyArgs(decArgs)))); line.appendChild(c("td", JSON.stringify(simplifyArgs(decArgs))));
} }
if (operatorsToDisplay < operatorList.fnArray.length) { if (operatorsToDisplay < operatorList.fnArray.length) {
line = c('tr'); const lastCell = c("td", "...");
var lastCell = c('td', '...');
lastCell.colspan = 4; lastCell.colspan = 4;
chunk.appendChild(lastCell); chunk.appendChild(lastCell);
} }
this.operatorListIdx = operatorList.fnArray.length; this.operatorListIdx = operatorList.fnArray.length;
this.table.appendChild(chunk); this.table.appendChild(chunk);
}, }
getNextBreakPoint: function getNextBreakPoint() {
getNextBreakPoint() {
this.breakPoints.sort(function (a, b) { this.breakPoints.sort(function (a, b) {
return a - b; return a - b;
}); });
for (var i = 0; i < this.breakPoints.length; i++) { for (let i = 0; i < this.breakPoints.length; i++) {
if (this.breakPoints[i] > this.currentIdx) { if (this.breakPoints[i] > this.currentIdx) {
return this.breakPoints[i]; return this.breakPoints[i];
} }
} }
return null; return null;
}, }
breakIt: function breakIt(idx, callback) {
breakIt(idx, callback) {
StepperManager.selectStepper(this.pageIndex, true); StepperManager.selectStepper(this.pageIndex, true);
var self = this; this.currentIdx = idx;
var dom = document;
self.currentIdx = idx; const listener = evt => {
var listener = function(e) { switch (evt.keyCode) {
switch (e.keyCode) {
case 83: // step case 83: // step
dom.removeEventListener('keydown', listener); document.removeEventListener("keydown", listener);
self.nextBreakPoint = self.currentIdx + 1; this.nextBreakPoint = this.currentIdx + 1;
self.goTo(-1); this.goTo(-1);
callback(); callback();
break; break;
case 67: // continue case 67: // continue
dom.removeEventListener('keydown', listener); document.removeEventListener("keydown", listener);
var breakPoint = self.getNextBreakPoint(); this.nextBreakPoint = this.getNextBreakPoint();
self.nextBreakPoint = breakPoint; this.goTo(-1);
self.goTo(-1);
callback(); callback();
break; break;
} }
}; };
dom.addEventListener('keydown', listener); document.addEventListener("keydown", listener);
self.goTo(idx); this.goTo(idx);
}, }
goTo: function goTo(idx) {
var allRows = this.panel.getElementsByClassName('line'); goTo(idx) {
for (var x = 0, xx = allRows.length; x < xx; ++x) { const allRows = this.panel.getElementsByClassName("line");
var row = allRows[x]; for (let x = 0, xx = allRows.length; x < xx; ++x) {
const row = allRows[x];
if ((row.dataset.idx | 0) === idx) { if ((row.dataset.idx | 0) === idx) {
row.style.backgroundColor = 'rgb(251,250,207)'; row.style.backgroundColor = "rgb(251,250,207)";
row.scrollIntoView(); row.scrollIntoView();
} else { } else {
row.style.backgroundColor = null; row.style.backgroundColor = null;
} }
} }
}, }
}; }
return Stepper; return Stepper;
})(); })();
// eslint-disable-next-line no-var
var Stats = (function Stats() { var Stats = (function Stats() {
var stats = []; let stats = [];
function clear(node) { function clear(node) {
while (node.hasChildNodes()) { while (node.hasChildNodes()) {
node.removeChild(node.lastChild); node.removeChild(node.lastChild);
} }
} }
function getStatIndex(pageNumber) { function getStatIndex(pageNumber) {
for (var i = 0, ii = stats.length; i < ii; ++i) { for (let i = 0, ii = stats.length; i < ii; ++i) {
if (stats[i].pageNumber === pageNumber) { if (stats[i].pageNumber === pageNumber) {
return i; return i;
} }
@@ -451,13 +458,11 @@ var Stats = (function Stats() {
} }
return { return {
// Properties/functions needed by PDFBug. // Properties/functions needed by PDFBug.
id: 'Stats', id: "Stats",
name: 'Stats', name: "Stats",
panel: null, panel: null,
manager: null, manager: null,
init(pdfjsLib) { init(pdfjsLib) {},
this.panel.setAttribute('style', 'padding: 5px;');
},
enabled: false, enabled: false,
active: false, active: false,
// Stats specific functions. // Stats specific functions.
@@ -465,27 +470,27 @@ var Stats = (function Stats() {
if (!stat) { if (!stat) {
return; return;
} }
var statsIndex = getStatIndex(pageNumber); const statsIndex = getStatIndex(pageNumber);
if (statsIndex !== false) { if (statsIndex !== false) {
var b = stats[statsIndex]; const b = stats[statsIndex];
this.panel.removeChild(b.div); this.panel.removeChild(b.div);
stats.splice(statsIndex, 1); stats.splice(statsIndex, 1);
} }
var wrapper = document.createElement('div'); const wrapper = document.createElement("div");
wrapper.className = 'stats'; wrapper.className = "stats";
var title = document.createElement('div'); const title = document.createElement("div");
title.className = 'title'; title.className = "title";
title.textContent = 'Page: ' + pageNumber; title.textContent = "Page: " + pageNumber;
var statsDiv = document.createElement('div'); const statsDiv = document.createElement("div");
statsDiv.textContent = stat.toString(); statsDiv.textContent = stat.toString();
wrapper.appendChild(title); wrapper.appendChild(title);
wrapper.appendChild(statsDiv); wrapper.appendChild(statsDiv);
stats.push({ pageNumber, div: wrapper, }); stats.push({ pageNumber, div: wrapper });
stats.sort(function (a, b) { stats.sort(function (a, b) {
return a.pageNumber - b.pageNumber; return a.pageNumber - b.pageNumber;
}); });
clear(this.panel); clear(this.panel);
for (var i = 0, ii = stats.length; i < ii; ++i) { for (let i = 0, ii = stats.length; i < ii; ++i) {
this.panel.appendChild(stats[i].div); this.panel.appendChild(stats[i].div);
} }
}, },
@@ -498,23 +503,17 @@ var Stats = (function Stats() {
// Manages all the debugging tools. // Manages all the debugging tools.
window.PDFBug = (function PDFBugClosure() { window.PDFBug = (function PDFBugClosure() {
var panelWidth = 300; const panelWidth = 300;
var buttons = []; const buttons = [];
var activePanel = null; let activePanel = null;
return { return {
tools: [ tools: [FontInspector, StepperManager, Stats],
FontInspector,
StepperManager,
Stats
],
enable(ids) { enable(ids) {
var all = false, tools = this.tools; const all = ids.length === 1 && ids[0] === "all";
if (ids.length === 1 && ids[0] === 'all') { const tools = this.tools;
all = true; for (let i = 0; i < tools.length; ++i) {
} const tool = tools[i];
for (var i = 0; i < tools.length; ++i) {
var tool = tools[i];
if (all || ids.includes(tool.id)) { if (all || ids.includes(tool.id)) {
tool.enabled = true; tool.enabled = true;
} }
@@ -522,9 +521,9 @@ window.PDFBug = (function PDFBugClosure() {
if (!all) { if (!all) {
// Sort the tools by the order they are enabled. // Sort the tools by the order they are enabled.
tools.sort(function (a, b) { tools.sort(function (a, b) {
var indexA = ids.indexOf(a.id); let indexA = ids.indexOf(a.id);
indexA = indexA < 0 ? tools.length : indexA; indexA = indexA < 0 ? tools.length : indexA;
var indexB = ids.indexOf(b.id); let indexB = ids.indexOf(b.id);
indexB = indexB < 0 ? tools.length : indexB; indexB = indexB < 0 ? tools.length : indexB;
return indexA - indexB; return indexA - indexB;
}); });
@@ -540,34 +539,37 @@ window.PDFBug = (function PDFBugClosure() {
* Panel * Panel
* ... * ...
*/ */
var ui = document.createElement('div'); const ui = document.createElement("div");
ui.id = 'PDFBug'; ui.id = "PDFBug";
var controls = document.createElement('div'); const controls = document.createElement("div");
controls.setAttribute('class', 'controls'); controls.setAttribute("class", "controls");
ui.appendChild(controls); ui.appendChild(controls);
var panels = document.createElement('div'); const panels = document.createElement("div");
panels.setAttribute('class', 'panels'); panels.setAttribute("class", "panels");
ui.appendChild(panels); ui.appendChild(panels);
container.appendChild(ui); container.appendChild(ui);
container.style.right = panelWidth + 'px'; container.style.right = panelWidth + "px";
// Initialize all the debugging tools. // Initialize all the debugging tools.
var tools = this.tools; const tools = this.tools;
var self = this; const self = this;
for (var i = 0; i < tools.length; ++i) { for (let i = 0; i < tools.length; ++i) {
var tool = tools[i]; const tool = tools[i];
var panel = document.createElement('div'); const panel = document.createElement("div");
var panelButton = document.createElement('button'); const panelButton = document.createElement("button");
panelButton.textContent = tool.name; panelButton.textContent = tool.name;
panelButton.addEventListener('click', (function(selected) { panelButton.addEventListener(
"click",
(function (selected) {
return function (event) { return function (event) {
event.preventDefault(); event.preventDefault();
self.selectPanel(selected); self.selectPanel(selected);
}; };
})(i)); })(i)
);
controls.appendChild(panelButton); controls.appendChild(panelButton);
panels.appendChild(panel); panels.appendChild(panel);
tool.panel = panel; tool.panel = panel;
@@ -575,40 +577,39 @@ window.PDFBug = (function PDFBugClosure() {
if (tool.enabled) { if (tool.enabled) {
tool.init(pdfjsLib); tool.init(pdfjsLib);
} else { } else {
panel.textContent = tool.name + ' is disabled. To enable add ' + panel.textContent =
' "' + tool.id + '" to the pdfBug parameter ' + tool.name +
'and refresh (separate multiple by commas).'; " is disabled. To enable add " +
' "' +
tool.id +
'" to the pdfBug parameter ' +
"and refresh (separate multiple by commas).";
} }
buttons.push(panelButton); buttons.push(panelButton);
} }
this.selectPanel(0); this.selectPanel(0);
}, },
cleanup() { cleanup() {
for (var i = 0, ii = this.tools.length; i < ii; i++) { for (let i = 0, ii = this.tools.length; i < ii; i++) {
if (this.tools[i].enabled) { if (this.tools[i].enabled) {
this.tools[i].cleanup(); this.tools[i].cleanup();
} }
} }
}, },
selectPanel(index) { selectPanel(index) {
if (typeof index !== 'number') { if (typeof index !== "number") {
index = this.tools.indexOf(index); index = this.tools.indexOf(index);
} }
if (index === activePanel) { if (index === activePanel) {
return; return;
} }
activePanel = index; activePanel = index;
var tools = this.tools; const tools = this.tools;
for (var j = 0; j < tools.length; ++j) { for (let j = 0; j < tools.length; ++j) {
if (j === index) { const isActive = j === index;
buttons[j].setAttribute('class', 'active'); buttons[j].classList.toggle("active", isActive);
tools[j].active = true; tools[j].active = isActive;
tools[j].panel.removeAttribute('hidden'); tools[j].panel.hidden = !isActive;
} else {
buttons[j].setAttribute('class', '');
tools[j].active = false;
tools[j].panel.setAttribute('hidden', 'true');
}
} }
}, },
}; };

Binary file not shown.

Before

Width:  |  Height:  |  Size: 199 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 304 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 193 B

View File

@@ -0,0 +1,4 @@
<!-- 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" width="16" height="16" viewBox="0 0 16 16"><path d="M8 12a1 1 0 0 1-.707-.293l-5-5a1 1 0 0 1 1.414-1.414L8 9.586l4.293-4.293a1 1 0 0 1 1.414 1.414l-5 5A1 1 0 0 1 8 12z"></path></svg>

After

Width:  |  Height:  |  Size: 434 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 296 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 193 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 296 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 199 B

View File

@@ -0,0 +1,4 @@
<!-- 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" width="16" height="16" viewBox="0 0 16 16"><path d="M13 11a1 1 0 0 1-.707-.293L8 6.414l-4.293 4.293a1 1 0 0 1-1.414-1.414l5-5a1 1 0 0 1 1.414 0l5 5A1 1 0 0 1 13 11z"></path></svg>

After

Width:  |  Height:  |  Size: 431 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 304 B

View File

@@ -0,0 +1,24 @@
<svg xmlns="http://www.w3.org/2000/svg" height="16" width="16"
fill="rgba(255,255,255,1)" 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>

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

View File

@@ -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>

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 403 B

View File

@@ -0,0 +1,15 @@
<!-- 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" width="16" height="16" viewBox="0 0 16
16">
<path
d="M8 16a8 8 0 1 1 8-8 8.009 8.009 0 0 1-8 8zM8 2a6 6 0 1 0 6 6 6.006 6.006 0 0 0-6-6z">
</path>
<path
d="M8 7a1 1 0 0 0-1 1v3a1 1 0 0 0 2 0V8a1 1 0 0 0-1-1z">
</path>
<circle
cx="8" cy="5" r="1.188">
</circle>
</svg>

After

Width:  |  Height:  |  Size: 530 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 933 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 179 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16"><path d="M13 13c-.3 0-.5-.1-.7-.3L8 8.4l-4.3 4.3c-.9.9-2.3-.5-1.4-1.4l5-5c.4-.4 1-.4 1.4 0l5 5c.6.6.2 1.7-.7 1.7zm0-11H3C1.7 2 1.7 4 3 4h10c1.3 0 1.3-2 0-2z"/></svg>

After

Width:  |  Height:  |  Size: 228 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 266 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 301 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="16" width="16"><path d="M15 3.7V13c0 1.5-1.53 3-3 3H7.13c-.72 0-1.63-.5-2.13-1l-5-5s.84-1 .87-1c.13-.1.33-.2.53-.2.1 0 .3.1.4.2L4 10.6V2.7c0-.6.4-1 1-1s1 .4 1 1v4.6h1V1c0-.6.4-1 1-1s1 .4 1 1v6.3h1V1.7c0-.6.4-1 1-1s1 .4 1 1v5.7h1V3.7c0-.6.4-1 1-1s1 .4 1 1z"/></svg>

After

Width:  |  Height:  |  Size: 312 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 583 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 175 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16"><path d="M8 10c-.3 0-.5-.1-.7-.3l-5-5c-.9-.9.5-2.3 1.4-1.4L8 7.6l4.3-4.3c.9-.9 2.3.5 1.4 1.4l-5 5c-.2.2-.4.3-.7.3zm5 2H3c-1.3 0-1.3 2 0 2h10c1.3 0 1.3-2 0-2z"/></svg>

After

Width:  |  Height:  |  Size: 229 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 276 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 360 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="16" width="16"><path d="M1 1a1 1 0 011 1v2.4A7 7 0 118 15a7 7 0 01-4.9-2 1 1 0 011.4-1.5 5 5 0 10-1-5.5H6a1 1 0 010 2H1a1 1 0 01-1-1V2a1 1 0 011-1z"/></svg>

After

Width:  |  Height:  |  Size: 204 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 731 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 359 B

View File

@@ -0,0 +1,4 @@
<!-- 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" width="16" height="16" viewBox="0 0 16 16"><path d="M15 1a1 1 0 0 0-1 1v2.418A6.995 6.995 0 1 0 8 15a6.954 6.954 0 0 0 4.95-2.05 1 1 0 0 0-1.414-1.414A5.019 5.019 0 1 1 12.549 6H10a1 1 0 0 0 0 2h5a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1z"></path></svg>

After

Width:  |  Height:  |  Size: 494 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 714 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 218 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="16" width="16"><path d="M0 4h1.5c1 0 1.5.5 1.5 1.5v5c0 1-.5 1.5-1.5 1.5H0zM9.5 4c1 0 1.5.5 1.5 1.5v5c0 1-.5 1.5-1.5 1.5h-3c-1 0-1.5-.5-1.5-1.5v-5C5 4.5 5.5 4 6.5 4zM16 4h-1.5c-1 0-1.5.5-1.5 1.5v5c0 1 .5 1.5 1.5 1.5H16z"/></svg>

After

Width:  |  Height:  |  Size: 275 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 332 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 228 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="16" width="16"><path d="M9.5 4c1 0 1.5.5 1.5 1.5v5c0 1-.5 1.5-1.5 1.5h-3c-1 0-1.5-.5-1.5-1.5v-5C5 4.5 5.5 4 6.5 4zM11 0v.5c0 1-.5 1.5-1.5 1.5h-3C5.5 2 5 1.5 5 .5V0h6zM11 16v-.5c0-1-.5-1.5-1.5-1.5h-3c-1 0-1.5.5-1.5 1.5v.5h6z"/></svg>

After

Width:  |  Height:  |  Size: 280 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 349 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 297 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16"><path d="M5.5 4c1 0 1.5.5 1.5 1.5v5c0 1-.5 1.5-1.5 1.5h-3c-1 0-1.5-.5-1.5-1.5v-5C1 4.5 1.5 4 2.5 4zM7 0v.5C7 1.5 6.5 2 5.5 2h-3C1.5 2 1 1.5 1 .5V0h6zM7 16v-.5c0-1-.5-1.5-1.5-1.5h-3c-1 0-1.5.5-1.5 1.5v.5h6zM13.5 4c1 0 1.5.5 1.5 1.5v5c0 1-.5 1.5-1.5 1.5h-3c-1 0-1.5-.5-1.5-1.5v-5c0-1 .5-1.5 1.5-1.5zM15 0v.5c0 1-.5 1.5-1.5 1.5h-3C9.5 2 9 1.5 9 .5V0h6zM15 16v-.507c0-1-.5-1.5-1.5-1.5h-3C9.5 14 9 14.5 9 15.5v.5h6z"/></svg>

After

Width:  |  Height:  |  Size: 482 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 490 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 461 B

View File

@@ -0,0 +1,4 @@
<!-- 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" width="16" height="16" viewBox="0 0 16 16"><path d="M12.408 8.217l-8.083-6.7A.2.2 0 0 0 4 1.672V12.3a.2.2 0 0 0 .333.146l2.56-2.372 1.857 3.9A1.125 1.125 0 1 0 10.782 13L8.913 9.075l3.4-.51a.2.2 0 0 0 .095-.348z"></path></svg>

After

Width:  |  Height:  |  Size: 478 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 347 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16"><path d="M1.5 3.5C.5 3.5 0 4 0 5v6.5c0 1 .5 1.5 1.5 1.5h4c1 0 1.5-.5 1.5-1.5V5c0-1-.5-1.5-1.5-1.5zm2 1.2c.8 0 1.4.2 1.8.6.5.4.7 1 .7 1.7 0 .5-.2 1-.5 1.4-.2.3-.5.7-1 1l-.6.4c-.4.3-.6.4-.75.56-.15.14-.25.24-.35.44H6v1.3H1c0-.6.1-1.1.3-1.5.3-.6.7-1 1.5-1.6.7-.4 1.1-.8 1.28-1 .32-.3.42-.6.42-1 0-.3-.1-.6-.23-.8-.17-.2-.37-.3-.77-.3s-.7.1-.9.5c-.04.2-.1.5-.1.9H1.1c0-.6.1-1.1.3-1.5.4-.7 1.1-1.1 2.1-1.1zM10.54 3.54C9.5 3.54 9 4 9 5v6.5c0 1 .5 1.5 1.54 1.5h4c.96 0 1.46-.5 1.46-1.5V5c0-1-.5-1.46-1.5-1.46zm1.9.95c.7 0 1.3.2 1.7.5.4.4.6.8.6 1.4 0 .4-.1.8-.4 1.1-.2.2-.3.3-.5.4.1 0 .3.1.6.3.4.3.5.8.5 1.4 0 .6-.2 1.2-.6 1.6-.4.5-1.1.7-1.9.7-1 0-1.8-.3-2.2-1-.14-.29-.24-.69-.24-1.29h1.4c0 .3 0 .5.1.7.2.4.5.5 1 .5.3 0 .5-.1.7-.3.2-.2.3-.5.3-.8 0-.5-.2-.8-.6-.95-.2-.05-.5-.15-1-.15v-1c.5 0 .8-.1 1-.14.3-.1.5-.4.5-.9 0-.3-.1-.5-.2-.7-.2-.2-.4-.3-.7-.3-.3 0-.6.1-.75.3-.2.2-.2.5-.2.86h-1.34c0-.4.1-.7.19-1.1 0-.12.2-.32.4-.62.2-.2.4-.3.7-.4.3-.1.6-.1 1-.1z"/></svg>

After

Width:  |  Height:  |  Size: 1022 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 694 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 179 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="16" width="16"><path d="M6 3c-1 0-1.5.5-1.5 1.5v7c0 1 .5 1.5 1.5 1.5h4c1 0 1.5-.5 1.5-1.5v-7c0-1-.5-1.5-1.5-1.5z"/></svg>

After

Width:  |  Height:  |  Size: 169 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 261 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 344 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16"><path d="M10.56 3.5C9.56 3.5 9 4 9 5v6.5c0 1 .5 1.5 1.5 1.5h4c1 0 1.5-.5 1.5-1.5V5c0-1-.5-1.5-1.5-1.5zm1.93 1.2c.8 0 1.4.2 1.8.64.5.4.7 1 .7 1.7 0 .5-.2 1-.5 1.44-.2.3-.6.6-1 .93l-.6.4c-.4.3-.6.4-.7.55-.1.1-.2.2-.3.4h3.2v1.27h-5c0-.5.1-1 .3-1.43.2-.49.7-1 1.5-1.54.7-.5 1.1-.8 1.3-1.02.3-.3.4-.7.4-1.05 0-.3-.1-.6-.3-.77-.2-.2-.4-.3-.7-.3-.4 0-.7.2-.9.5-.1.2-.1.5-.2.9h-1.4c0-.6.2-1.1.3-1.5.4-.7 1.1-1.1 2-1.1zM1.54 3.5C.54 3.5 0 4 0 5v6.5c0 1 .5 1.5 1.54 1.5h4c1 0 1.5-.5 1.5-1.5V5c0-1-.5-1.5-1.5-1.5zm1.8 1.125H4.5V12H3V6.9H1.3v-1c.5 0 .8 0 .97-.03.33-.07.53-.17.73-.37.1-.2.2-.3.25-.5.05-.2.05-.3.05-.3z"/></svg>

After

Width:  |  Height:  |  Size: 678 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 621 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 290 B

After

Width:  |  Height:  |  Size: 269 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 174 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="16" width="16"><path d="M4 16V2s0-1 1-1h6s1 0 1 1v14l-4-5z"/></svg>

After

Width:  |  Height:  |  Size: 115 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 260 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="16" width="16"><path d="m14 9h-6c-1.3 0-1.3 2 0 2h6c1.3 0 1.3-2 0-2zm-5.2-8h-3.8c-1.3 0-1.3 2 0 2h1.7zm-6.8 0c-1 0-1.3 1-0.7 1.7 0.7 0.6 1.7 0.3 1.7-0.7 0-0.5-0.4-1-1-1zm3 8c-1 0-1.3 1-0.7 1.7 0.6 0.6 1.7 0.2 1.7-0.7 0-0.5-0.4-1-1-1zm0.3-4h-0.3c-1.4 0-1.4 2 0 2h2.3zm-3.3 0c-0.9 0-1.4 1-0.7 1.7 0.7 0.6 1.7 0.2 1.7-0.7 0-0.6-0.5-1-1-1zm12 8h-9c-1.3 0-1.3 2 0 2h9c1.3 0 1.3-2 0-2zm-12 0c-1 0-1.3 1-0.7 1.7 0.7 0.6 1.7 0.2 1.7-0.712 0-0.5-0.4-1-1-1z"/><path d="m7.37 4.838 3.93-3.911v2.138h3.629v3.546h-3.629v2.138l-3.93-3.911"/></svg>

After

Width:  |  Height:  |  Size: 581 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 259 B

View File

@@ -0,0 +1,4 @@
<!-- 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" width="16" height="16" viewBox="0 0 16 16"><path d="M14 3h-2v2h2v8H2V5h7V3h-.849L6.584 1.538A2 2 0 0 0 5.219 1H2a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2zM2 3h3.219l1.072 1H2z"></path><path d="M8.146 6.146a.5.5 0 0 0 0 .707l2 2a.5.5 0 0 0 .707 0l2-2a.5.5 0 1 0-.707-.707L11 7.293V.5a.5.5 0 0 0-1 0v6.793L8.854 6.146a.5.5 0 0 0-.708 0z"></path></svg>

After

Width:  |  Height:  |  Size: 624 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 425 B

View File

@@ -0,0 +1 @@
<svg width="16" height="16" xmlns="http://www.w3.org/2000/svg"><path d="M8 11a1 1 0 01-.707-.293l-2.99-2.99c-.91-.942.471-2.324 1.414-1.414L8 8.586l2.283-2.283c.943-.91 2.324.472 1.414 1.414l-2.99 2.99A1 1 0 018 11z"/></svg>

After

Width:  |  Height:  |  Size: 224 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 107 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 152 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 295 B

View File

@@ -0,0 +1,4 @@
<!-- 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" width="16" height="16" viewBox="0 0 16 16"><path d="M14.859 3.2a1.335 1.335 0 0 1-1.217.8H13v1h1v8H2V5h8V4h-.642a1.365 1.365 0 0 1-1.325-1.11L6.584 1.538A2 2 0 0 0 5.219 1H2a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V5a2 2 0 0 0-1.141-1.8zM2 3h3.219l1.072 1H2zm7.854-.146L11 1.707V8.5a.5.5 0 0 0 1 0V1.707l1.146 1.146a.5.5 0 1 0 .707-.707l-2-2a.5.5 0 0 0-.707 0l-2 2a.5.5 0 0 0 .707.707z"></path></svg>

After

Width:  |  Height:  |  Size: 659 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 550 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 242 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 398 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 238 B

View File

@@ -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" width="16" height="16" viewBox="0 0 16
16"><path transform='rotate(90) translate(0, -16)'
d="M15.707 7.293l-6-6a1 1 0 0 0-1.414 1.414L12.586 7H1a1 1 0 0 0 0 2h11.586l-4.293
4.293a1 1 0 1 0 1.414 1.414l6-6a1 1 0 0 0 0-1.414z"></path></svg>

After

Width:  |  Height:  |  Size: 490 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 396 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 245 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 405 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 246 B

View File

@@ -0,0 +1,12 @@
<!-- 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" width="16" height="16" viewBox="0 0 16
16">
<path
transform='rotate(90) translate(0, -16)'
d="M15 7H3.414l4.293-4.293a1 1 0 0
0-1.414-1.414l-6 6a1 1 0 0 0 0 1.414l6 6a1 1 0 0 0 1.414-1.414L3.414 9H15a1 1 0 0
0 0-2z">
</path>
</svg>

After

Width:  |  Height:  |  Size: 490 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 403 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 321 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16"><path d="M.5 1H7s0-1 1-1 1 1 1 1h6.5s.5 0 .5.5-.5.5-.5.5H.5S0 2 0 1.5.5 1 .5 1zM1 3h14v7c0 2-1 2-2 2H3c-1 0-2 0-2-2zm5 1v7l6-3.5zM3.72 15.33l.53-2s0-.5.65-.35c.51.13.38.63.38.63l-.53 2s0 .5-.64.35c-.53-.13-.39-.63-.39-.63zM11.24 15.61l-.53-1.99s0-.5.38-.63c.51-.13.64.35.64.35l.53 2s0 .5-.38.63c-.5.13-.64-.35-.65-.35z"/></svg>

After

Width:  |  Height:  |  Size: 390 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 586 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 257 B

View File

@@ -0,0 +1,4 @@
<!-- 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" width="16" height="16" viewBox="0 0 16 16"><path d="M14 5h-1V1a1 1 0 0 0-1-1H4a1 1 0 0 0-1 1v4H2a2 2 0 0 0-2 2v5h3v3a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1v-3h3V7a2 2 0 0 0-2-2zM2.5 8a.5.5 0 1 1 .5-.5.5.5 0 0 1-.5.5zm9.5 7H4v-5h8zm0-10H4V1h8zm-6.5 7h4a.5.5 0 0 0 0-1h-4a.5.5 0 1 0 0 1zm0 2h5a.5.5 0 0 0 0-1h-5a.5.5 0 1 0 0 1z"></path></svg>

After

Width:  |  Height:  |  Size: 583 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 464 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 309 B

View File

@@ -0,0 +1,4 @@
<!-- 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" width="16" height="16" viewBox="0 0 16 16"><path d="M15.707 14.293l-4.822-4.822a6.019 6.019 0 1 0-1.414 1.414l4.822 4.822a1 1 0 0 0 1.414-1.414zM6 10a4 4 0 1 1 4-4 4 4 0 0 1-4 4z"></path></svg>

After

Width:  |  Height:  |  Size: 445 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 653 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 246 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 456 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 243 B

View File

@@ -0,0 +1,4 @@
<!-- 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" width="16" height="16" viewBox="0 0 16 16"><path d="M8.707 7.293l-5-5a1 1 0 0 0-1.414 1.414L6.586 8l-4.293 4.293a1 1 0 1 0 1.414 1.414l5-5a1 1 0 0 0 0-1.414zm6 0l-5-5a1 1 0 0 0-1.414 1.414L12.586 8l-4.293 4.293a1 1 0 1 0 1.414 1.414l5-5a1 1 0 0 0 0-1.414z"></path></svg>

After

Width:  |  Height:  |  Size: 522 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 458 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 225 B

Some files were not shown because too many files have changed in this diff Show More