Edit File by line

Deprecated: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in /home/sportsfever/public_html/filemanger/function.php on line 93

Warning: Undefined array key "page_file_edit_line" in /home/sportsfever/public_html/filemanger/edit_text_line.php on line 32
/home/sportsfe.../httpdocs/clone/wp-conte.../plugins/embedpre.../assets/pdf/web
File: viewer.js
const RenderingStates = {
[4000] Fix | Delete
INITIAL: 0,
[4001] Fix | Delete
RUNNING: 1,
[4002] Fix | Delete
PAUSED: 2,
[4003] Fix | Delete
FINISHED: 3
[4004] Fix | Delete
};
[4005] Fix | Delete
const PresentationModeState = {
[4006] Fix | Delete
UNKNOWN: 0,
[4007] Fix | Delete
NORMAL: 1,
[4008] Fix | Delete
CHANGING: 2,
[4009] Fix | Delete
FULLSCREEN: 3
[4010] Fix | Delete
};
[4011] Fix | Delete
const SidebarView = {
[4012] Fix | Delete
UNKNOWN: -1,
[4013] Fix | Delete
NONE: 0,
[4014] Fix | Delete
THUMBS: 1,
[4015] Fix | Delete
OUTLINE: 2,
[4016] Fix | Delete
ATTACHMENTS: 3,
[4017] Fix | Delete
LAYERS: 4
[4018] Fix | Delete
};
[4019] Fix | Delete
const TextLayerMode = {
[4020] Fix | Delete
DISABLE: 0,
[4021] Fix | Delete
ENABLE: 1,
[4022] Fix | Delete
ENABLE_PERMISSIONS: 2
[4023] Fix | Delete
};
[4024] Fix | Delete
const ScrollMode = {
[4025] Fix | Delete
UNKNOWN: -1,
[4026] Fix | Delete
VERTICAL: 0,
[4027] Fix | Delete
HORIZONTAL: 1,
[4028] Fix | Delete
WRAPPED: 2,
[4029] Fix | Delete
PAGE: 3
[4030] Fix | Delete
};
[4031] Fix | Delete
const SpreadMode = {
[4032] Fix | Delete
UNKNOWN: -1,
[4033] Fix | Delete
NONE: 0,
[4034] Fix | Delete
ODD: 1,
[4035] Fix | Delete
EVEN: 2
[4036] Fix | Delete
};
[4037] Fix | Delete
const CursorTool = {
[4038] Fix | Delete
SELECT: 0,
[4039] Fix | Delete
HAND: 1,
[4040] Fix | Delete
ZOOM: 2
[4041] Fix | Delete
};
[4042] Fix | Delete
const AutoPrintRegExp = /\bprint\s*\(/;
[4043] Fix | Delete
class OutputScale {
[4044] Fix | Delete
constructor() {
[4045] Fix | Delete
const pixelRatio = window.devicePixelRatio || 1;
[4046] Fix | Delete
this.sx = pixelRatio;
[4047] Fix | Delete
this.sy = pixelRatio;
[4048] Fix | Delete
}
[4049] Fix | Delete
get scaled() {
[4050] Fix | Delete
return this.sx !== 1 || this.sy !== 1;
[4051] Fix | Delete
}
[4052] Fix | Delete
}
[4053] Fix | Delete
function scrollIntoView(element, spot, scrollMatches = false) {
[4054] Fix | Delete
let parent = element.offsetParent;
[4055] Fix | Delete
if (!parent) {
[4056] Fix | Delete
console.error("offsetParent is not set -- cannot scroll");
[4057] Fix | Delete
return;
[4058] Fix | Delete
}
[4059] Fix | Delete
let offsetY = element.offsetTop + element.clientTop;
[4060] Fix | Delete
let offsetX = element.offsetLeft + element.clientLeft;
[4061] Fix | Delete
while (parent.clientHeight === parent.scrollHeight && parent.clientWidth === parent.scrollWidth || scrollMatches && (parent.classList.contains("markedContent") || getComputedStyle(parent).overflow === "hidden")) {
[4062] Fix | Delete
offsetY += parent.offsetTop;
[4063] Fix | Delete
offsetX += parent.offsetLeft;
[4064] Fix | Delete
parent = parent.offsetParent;
[4065] Fix | Delete
if (!parent) {
[4066] Fix | Delete
return;
[4067] Fix | Delete
}
[4068] Fix | Delete
}
[4069] Fix | Delete
if (spot) {
[4070] Fix | Delete
if (spot.top !== undefined) {
[4071] Fix | Delete
offsetY += spot.top;
[4072] Fix | Delete
}
[4073] Fix | Delete
if (spot.left !== undefined) {
[4074] Fix | Delete
offsetX += spot.left;
[4075] Fix | Delete
parent.scrollLeft = offsetX;
[4076] Fix | Delete
}
[4077] Fix | Delete
}
[4078] Fix | Delete
parent.scrollTop = offsetY;
[4079] Fix | Delete
}
[4080] Fix | Delete
function watchScroll(viewAreaElement, callback) {
[4081] Fix | Delete
const debounceScroll = function (evt) {
[4082] Fix | Delete
if (rAF) {
[4083] Fix | Delete
return;
[4084] Fix | Delete
}
[4085] Fix | Delete
rAF = window.requestAnimationFrame(function viewAreaElementScrolled() {
[4086] Fix | Delete
rAF = null;
[4087] Fix | Delete
const currentX = viewAreaElement.scrollLeft;
[4088] Fix | Delete
const lastX = state.lastX;
[4089] Fix | Delete
if (currentX !== lastX) {
[4090] Fix | Delete
state.right = currentX > lastX;
[4091] Fix | Delete
}
[4092] Fix | Delete
state.lastX = currentX;
[4093] Fix | Delete
const currentY = viewAreaElement.scrollTop;
[4094] Fix | Delete
const lastY = state.lastY;
[4095] Fix | Delete
if (currentY !== lastY) {
[4096] Fix | Delete
state.down = currentY > lastY;
[4097] Fix | Delete
}
[4098] Fix | Delete
state.lastY = currentY;
[4099] Fix | Delete
callback(state);
[4100] Fix | Delete
});
[4101] Fix | Delete
};
[4102] Fix | Delete
const state = {
[4103] Fix | Delete
right: true,
[4104] Fix | Delete
down: true,
[4105] Fix | Delete
lastX: viewAreaElement.scrollLeft,
[4106] Fix | Delete
lastY: viewAreaElement.scrollTop,
[4107] Fix | Delete
_eventHandler: debounceScroll
[4108] Fix | Delete
};
[4109] Fix | Delete
let rAF = null;
[4110] Fix | Delete
viewAreaElement.addEventListener("scroll", debounceScroll, true);
[4111] Fix | Delete
return state;
[4112] Fix | Delete
}
[4113] Fix | Delete
function parseQueryString(query) {
[4114] Fix | Delete
const params = new Map();
[4115] Fix | Delete
for (const [key, value] of new URLSearchParams(query)) {
[4116] Fix | Delete
params.set(key.toLowerCase(), value);
[4117] Fix | Delete
}
[4118] Fix | Delete
return params;
[4119] Fix | Delete
}
[4120] Fix | Delete
const InvisibleCharsRegExp = /[\x00-\x1F]/g;
[4121] Fix | Delete
function removeNullCharacters(str, replaceInvisible = false) {
[4122] Fix | Delete
if (!InvisibleCharsRegExp.test(str)) {
[4123] Fix | Delete
return str;
[4124] Fix | Delete
}
[4125] Fix | Delete
if (replaceInvisible) {
[4126] Fix | Delete
return str.replaceAll(InvisibleCharsRegExp, m => m === "\x00" ? "" : " ");
[4127] Fix | Delete
}
[4128] Fix | Delete
return str.replaceAll("\x00", "");
[4129] Fix | Delete
}
[4130] Fix | Delete
function binarySearchFirstItem(items, condition, start = 0) {
[4131] Fix | Delete
let minIndex = start;
[4132] Fix | Delete
let maxIndex = items.length - 1;
[4133] Fix | Delete
if (maxIndex < 0 || !condition(items[maxIndex])) {
[4134] Fix | Delete
return items.length;
[4135] Fix | Delete
}
[4136] Fix | Delete
if (condition(items[minIndex])) {
[4137] Fix | Delete
return minIndex;
[4138] Fix | Delete
}
[4139] Fix | Delete
while (minIndex < maxIndex) {
[4140] Fix | Delete
const currentIndex = minIndex + maxIndex >> 1;
[4141] Fix | Delete
const currentItem = items[currentIndex];
[4142] Fix | Delete
if (condition(currentItem)) {
[4143] Fix | Delete
maxIndex = currentIndex;
[4144] Fix | Delete
} else {
[4145] Fix | Delete
minIndex = currentIndex + 1;
[4146] Fix | Delete
}
[4147] Fix | Delete
}
[4148] Fix | Delete
return minIndex;
[4149] Fix | Delete
}
[4150] Fix | Delete
function approximateFraction(x) {
[4151] Fix | Delete
if (Math.floor(x) === x) {
[4152] Fix | Delete
return [x, 1];
[4153] Fix | Delete
}
[4154] Fix | Delete
const xinv = 1 / x;
[4155] Fix | Delete
const limit = 8;
[4156] Fix | Delete
if (xinv > limit) {
[4157] Fix | Delete
return [1, limit];
[4158] Fix | Delete
} else if (Math.floor(xinv) === xinv) {
[4159] Fix | Delete
return [1, xinv];
[4160] Fix | Delete
}
[4161] Fix | Delete
const x_ = x > 1 ? xinv : x;
[4162] Fix | Delete
let a = 0,
[4163] Fix | Delete
b = 1,
[4164] Fix | Delete
c = 1,
[4165] Fix | Delete
d = 1;
[4166] Fix | Delete
while (true) {
[4167] Fix | Delete
const p = a + c,
[4168] Fix | Delete
q = b + d;
[4169] Fix | Delete
if (q > limit) {
[4170] Fix | Delete
break;
[4171] Fix | Delete
}
[4172] Fix | Delete
if (x_ <= p / q) {
[4173] Fix | Delete
c = p;
[4174] Fix | Delete
d = q;
[4175] Fix | Delete
} else {
[4176] Fix | Delete
a = p;
[4177] Fix | Delete
b = q;
[4178] Fix | Delete
}
[4179] Fix | Delete
}
[4180] Fix | Delete
let result;
[4181] Fix | Delete
if (x_ - a / b < c / d - x_) {
[4182] Fix | Delete
result = x_ === x ? [a, b] : [b, a];
[4183] Fix | Delete
} else {
[4184] Fix | Delete
result = x_ === x ? [c, d] : [d, c];
[4185] Fix | Delete
}
[4186] Fix | Delete
return result;
[4187] Fix | Delete
}
[4188] Fix | Delete
function roundToDivide(x, div) {
[4189] Fix | Delete
const r = x % div;
[4190] Fix | Delete
return r === 0 ? x : Math.round(x - r + div);
[4191] Fix | Delete
}
[4192] Fix | Delete
function getPageSizeInches({
[4193] Fix | Delete
view,
[4194] Fix | Delete
userUnit,
[4195] Fix | Delete
rotate
[4196] Fix | Delete
}) {
[4197] Fix | Delete
const [x1, y1, x2, y2] = view;
[4198] Fix | Delete
const changeOrientation = rotate % 180 !== 0;
[4199] Fix | Delete
const width = (x2 - x1) / 72 * userUnit;
[4200] Fix | Delete
const height = (y2 - y1) / 72 * userUnit;
[4201] Fix | Delete
return {
[4202] Fix | Delete
width: changeOrientation ? height : width,
[4203] Fix | Delete
height: changeOrientation ? width : height
[4204] Fix | Delete
};
[4205] Fix | Delete
}
[4206] Fix | Delete
function backtrackBeforeAllVisibleElements(index, views, top) {
[4207] Fix | Delete
if (index < 2) {
[4208] Fix | Delete
return index;
[4209] Fix | Delete
}
[4210] Fix | Delete
let elt = views[index].div;
[4211] Fix | Delete
let pageTop = elt.offsetTop + elt.clientTop;
[4212] Fix | Delete
if (pageTop >= top) {
[4213] Fix | Delete
elt = views[index - 1].div;
[4214] Fix | Delete
pageTop = elt.offsetTop + elt.clientTop;
[4215] Fix | Delete
}
[4216] Fix | Delete
for (let i = index - 2; i >= 0; --i) {
[4217] Fix | Delete
elt = views[i].div;
[4218] Fix | Delete
if (elt.offsetTop + elt.clientTop + elt.clientHeight <= pageTop) {
[4219] Fix | Delete
break;
[4220] Fix | Delete
}
[4221] Fix | Delete
index = i;
[4222] Fix | Delete
}
[4223] Fix | Delete
return index;
[4224] Fix | Delete
}
[4225] Fix | Delete
function getVisibleElements({
[4226] Fix | Delete
scrollEl,
[4227] Fix | Delete
views,
[4228] Fix | Delete
sortByVisibility = false,
[4229] Fix | Delete
horizontal = false,
[4230] Fix | Delete
rtl = false
[4231] Fix | Delete
}) {
[4232] Fix | Delete
const top = scrollEl.scrollTop,
[4233] Fix | Delete
bottom = top + scrollEl.clientHeight;
[4234] Fix | Delete
const left = scrollEl.scrollLeft,
[4235] Fix | Delete
right = left + scrollEl.clientWidth;
[4236] Fix | Delete
function isElementBottomAfterViewTop(view) {
[4237] Fix | Delete
const element = view.div;
[4238] Fix | Delete
const elementBottom = element.offsetTop + element.clientTop + element.clientHeight;
[4239] Fix | Delete
return elementBottom > top;
[4240] Fix | Delete
}
[4241] Fix | Delete
function isElementNextAfterViewHorizontally(view) {
[4242] Fix | Delete
const element = view.div;
[4243] Fix | Delete
const elementLeft = element.offsetLeft + element.clientLeft;
[4244] Fix | Delete
const elementRight = elementLeft + element.clientWidth;
[4245] Fix | Delete
return rtl ? elementLeft < right : elementRight > left;
[4246] Fix | Delete
}
[4247] Fix | Delete
const visible = [],
[4248] Fix | Delete
ids = new Set(),
[4249] Fix | Delete
numViews = views.length;
[4250] Fix | Delete
let firstVisibleElementInd = binarySearchFirstItem(views, horizontal ? isElementNextAfterViewHorizontally : isElementBottomAfterViewTop);
[4251] Fix | Delete
if (firstVisibleElementInd > 0 && firstVisibleElementInd < numViews && !horizontal) {
[4252] Fix | Delete
firstVisibleElementInd = backtrackBeforeAllVisibleElements(firstVisibleElementInd, views, top);
[4253] Fix | Delete
}
[4254] Fix | Delete
let lastEdge = horizontal ? right : -1;
[4255] Fix | Delete
for (let i = firstVisibleElementInd; i < numViews; i++) {
[4256] Fix | Delete
const view = views[i],
[4257] Fix | Delete
element = view.div;
[4258] Fix | Delete
const currentWidth = element.offsetLeft + element.clientLeft;
[4259] Fix | Delete
const currentHeight = element.offsetTop + element.clientTop;
[4260] Fix | Delete
const viewWidth = element.clientWidth,
[4261] Fix | Delete
viewHeight = element.clientHeight;
[4262] Fix | Delete
const viewRight = currentWidth + viewWidth;
[4263] Fix | Delete
const viewBottom = currentHeight + viewHeight;
[4264] Fix | Delete
if (lastEdge === -1) {
[4265] Fix | Delete
if (viewBottom >= bottom) {
[4266] Fix | Delete
lastEdge = viewBottom;
[4267] Fix | Delete
}
[4268] Fix | Delete
} else if ((horizontal ? currentWidth : currentHeight) > lastEdge) {
[4269] Fix | Delete
break;
[4270] Fix | Delete
}
[4271] Fix | Delete
if (viewBottom <= top || currentHeight >= bottom || viewRight <= left || currentWidth >= right) {
[4272] Fix | Delete
continue;
[4273] Fix | Delete
}
[4274] Fix | Delete
const hiddenHeight = Math.max(0, top - currentHeight) + Math.max(0, viewBottom - bottom);
[4275] Fix | Delete
const hiddenWidth = Math.max(0, left - currentWidth) + Math.max(0, viewRight - right);
[4276] Fix | Delete
const fractionHeight = (viewHeight - hiddenHeight) / viewHeight,
[4277] Fix | Delete
fractionWidth = (viewWidth - hiddenWidth) / viewWidth;
[4278] Fix | Delete
const percent = fractionHeight * fractionWidth * 100 | 0;
[4279] Fix | Delete
visible.push({
[4280] Fix | Delete
id: view.id,
[4281] Fix | Delete
x: currentWidth,
[4282] Fix | Delete
y: currentHeight,
[4283] Fix | Delete
view,
[4284] Fix | Delete
percent,
[4285] Fix | Delete
widthPercent: fractionWidth * 100 | 0
[4286] Fix | Delete
});
[4287] Fix | Delete
ids.add(view.id);
[4288] Fix | Delete
}
[4289] Fix | Delete
const first = visible[0],
[4290] Fix | Delete
last = visible.at(-1);
[4291] Fix | Delete
if (sortByVisibility) {
[4292] Fix | Delete
visible.sort(function (a, b) {
[4293] Fix | Delete
const pc = a.percent - b.percent;
[4294] Fix | Delete
if (Math.abs(pc) > 0.001) {
[4295] Fix | Delete
return -pc;
[4296] Fix | Delete
}
[4297] Fix | Delete
return a.id - b.id;
[4298] Fix | Delete
});
[4299] Fix | Delete
}
[4300] Fix | Delete
return {
[4301] Fix | Delete
first,
[4302] Fix | Delete
last,
[4303] Fix | Delete
views: visible,
[4304] Fix | Delete
ids
[4305] Fix | Delete
};
[4306] Fix | Delete
}
[4307] Fix | Delete
function normalizeWheelEventDirection(evt) {
[4308] Fix | Delete
let delta = Math.hypot(evt.deltaX, evt.deltaY);
[4309] Fix | Delete
const angle = Math.atan2(evt.deltaY, evt.deltaX);
[4310] Fix | Delete
if (-0.25 * Math.PI < angle && angle < 0.75 * Math.PI) {
[4311] Fix | Delete
delta = -delta;
[4312] Fix | Delete
}
[4313] Fix | Delete
return delta;
[4314] Fix | Delete
}
[4315] Fix | Delete
function normalizeWheelEventDelta(evt) {
[4316] Fix | Delete
const deltaMode = evt.deltaMode;
[4317] Fix | Delete
let delta = normalizeWheelEventDirection(evt);
[4318] Fix | Delete
const MOUSE_PIXELS_PER_LINE = 30;
[4319] Fix | Delete
const MOUSE_LINES_PER_PAGE = 30;
[4320] Fix | Delete
if (deltaMode === WheelEvent.DOM_DELTA_PIXEL) {
[4321] Fix | Delete
delta /= MOUSE_PIXELS_PER_LINE * MOUSE_LINES_PER_PAGE;
[4322] Fix | Delete
} else if (deltaMode === WheelEvent.DOM_DELTA_LINE) {
[4323] Fix | Delete
delta /= MOUSE_LINES_PER_PAGE;
[4324] Fix | Delete
}
[4325] Fix | Delete
return delta;
[4326] Fix | Delete
}
[4327] Fix | Delete
function isValidRotation(angle) {
[4328] Fix | Delete
return Number.isInteger(angle) && angle % 90 === 0;
[4329] Fix | Delete
}
[4330] Fix | Delete
function isValidScrollMode(mode) {
[4331] Fix | Delete
return Number.isInteger(mode) && Object.values(ScrollMode).includes(mode) && mode !== ScrollMode.UNKNOWN;
[4332] Fix | Delete
}
[4333] Fix | Delete
function isValidSpreadMode(mode) {
[4334] Fix | Delete
return Number.isInteger(mode) && Object.values(SpreadMode).includes(mode) && mode !== SpreadMode.UNKNOWN;
[4335] Fix | Delete
}
[4336] Fix | Delete
function isPortraitOrientation(size) {
[4337] Fix | Delete
return size.width <= size.height;
[4338] Fix | Delete
}
[4339] Fix | Delete
const animationStarted = new Promise(function (resolve) {
[4340] Fix | Delete
window.requestAnimationFrame(resolve);
[4341] Fix | Delete
});
[4342] Fix | Delete
const docStyle = document.documentElement.style;
[4343] Fix | Delete
function clamp(v, min, max) {
[4344] Fix | Delete
return Math.min(Math.max(v, min), max);
[4345] Fix | Delete
}
[4346] Fix | Delete
class ProgressBar {
[4347] Fix | Delete
#classList = null;
[4348] Fix | Delete
#disableAutoFetchTimeout = null;
[4349] Fix | Delete
#percent = 0;
[4350] Fix | Delete
#style = null;
[4351] Fix | Delete
#visible = true;
[4352] Fix | Delete
constructor(bar) {
[4353] Fix | Delete
this.#classList = bar.classList;
[4354] Fix | Delete
this.#style = bar.style;
[4355] Fix | Delete
}
[4356] Fix | Delete
get percent() {
[4357] Fix | Delete
return this.#percent;
[4358] Fix | Delete
}
[4359] Fix | Delete
set percent(val) {
[4360] Fix | Delete
this.#percent = clamp(val, 0, 100);
[4361] Fix | Delete
if (isNaN(val)) {
[4362] Fix | Delete
this.#classList.add("indeterminate");
[4363] Fix | Delete
return;
[4364] Fix | Delete
}
[4365] Fix | Delete
this.#classList.remove("indeterminate");
[4366] Fix | Delete
this.#style.setProperty("--progressBar-percent", `${this.#percent}%`);
[4367] Fix | Delete
}
[4368] Fix | Delete
setWidth(viewer) {
[4369] Fix | Delete
if (!viewer) {
[4370] Fix | Delete
return;
[4371] Fix | Delete
}
[4372] Fix | Delete
const container = viewer.parentNode;
[4373] Fix | Delete
const scrollbarWidth = container.offsetWidth - viewer.offsetWidth;
[4374] Fix | Delete
if (scrollbarWidth > 0) {
[4375] Fix | Delete
this.#style.setProperty("--progressBar-end-offset", `${scrollbarWidth}px`);
[4376] Fix | Delete
}
[4377] Fix | Delete
}
[4378] Fix | Delete
setDisableAutoFetch(delay = 5000) {
[4379] Fix | Delete
if (isNaN(this.#percent)) {
[4380] Fix | Delete
return;
[4381] Fix | Delete
}
[4382] Fix | Delete
if (this.#disableAutoFetchTimeout) {
[4383] Fix | Delete
clearTimeout(this.#disableAutoFetchTimeout);
[4384] Fix | Delete
}
[4385] Fix | Delete
this.show();
[4386] Fix | Delete
this.#disableAutoFetchTimeout = setTimeout(() => {
[4387] Fix | Delete
this.#disableAutoFetchTimeout = null;
[4388] Fix | Delete
this.hide();
[4389] Fix | Delete
}, delay);
[4390] Fix | Delete
}
[4391] Fix | Delete
hide() {
[4392] Fix | Delete
if (!this.#visible) {
[4393] Fix | Delete
return;
[4394] Fix | Delete
}
[4395] Fix | Delete
this.#visible = false;
[4396] Fix | Delete
this.#classList.add("hidden");
[4397] Fix | Delete
}
[4398] Fix | Delete
show() {
[4399] Fix | Delete
if (this.#visible) {
[4400] Fix | Delete
return;
[4401] Fix | Delete
}
[4402] Fix | Delete
this.#visible = true;
[4403] Fix | Delete
this.#classList.remove("hidden");
[4404] Fix | Delete
}
[4405] Fix | Delete
}
[4406] Fix | Delete
function getActiveOrFocusedElement() {
[4407] Fix | Delete
let curRoot = document;
[4408] Fix | Delete
let curActiveOrFocused = curRoot.activeElement || curRoot.querySelector(":focus");
[4409] Fix | Delete
while (curActiveOrFocused?.shadowRoot) {
[4410] Fix | Delete
curRoot = curActiveOrFocused.shadowRoot;
[4411] Fix | Delete
curActiveOrFocused = curRoot.activeElement || curRoot.querySelector(":focus");
[4412] Fix | Delete
}
[4413] Fix | Delete
return curActiveOrFocused;
[4414] Fix | Delete
}
[4415] Fix | Delete
function apiPageLayoutToViewerModes(layout) {
[4416] Fix | Delete
let scrollMode = ScrollMode.VERTICAL,
[4417] Fix | Delete
spreadMode = SpreadMode.NONE;
[4418] Fix | Delete
switch (layout) {
[4419] Fix | Delete
case "SinglePage":
[4420] Fix | Delete
scrollMode = ScrollMode.PAGE;
[4421] Fix | Delete
break;
[4422] Fix | Delete
case "OneColumn":
[4423] Fix | Delete
break;
[4424] Fix | Delete
case "TwoPageLeft":
[4425] Fix | Delete
scrollMode = ScrollMode.PAGE;
[4426] Fix | Delete
case "TwoColumnLeft":
[4427] Fix | Delete
spreadMode = SpreadMode.ODD;
[4428] Fix | Delete
break;
[4429] Fix | Delete
case "TwoPageRight":
[4430] Fix | Delete
scrollMode = ScrollMode.PAGE;
[4431] Fix | Delete
case "TwoColumnRight":
[4432] Fix | Delete
spreadMode = SpreadMode.EVEN;
[4433] Fix | Delete
break;
[4434] Fix | Delete
}
[4435] Fix | Delete
return {
[4436] Fix | Delete
scrollMode,
[4437] Fix | Delete
spreadMode
[4438] Fix | Delete
};
[4439] Fix | Delete
}
[4440] Fix | Delete
function apiPageModeToSidebarView(mode) {
[4441] Fix | Delete
switch (mode) {
[4442] Fix | Delete
case "UseNone":
[4443] Fix | Delete
return SidebarView.NONE;
[4444] Fix | Delete
case "UseThumbs":
[4445] Fix | Delete
return SidebarView.THUMBS;
[4446] Fix | Delete
case "UseOutlines":
[4447] Fix | Delete
return SidebarView.OUTLINE;
[4448] Fix | Delete
case "UseAttachments":
[4449] Fix | Delete
return SidebarView.ATTACHMENTS;
[4450] Fix | Delete
case "UseOC":
[4451] Fix | Delete
return SidebarView.LAYERS;
[4452] Fix | Delete
}
[4453] Fix | Delete
return SidebarView.NONE;
[4454] Fix | Delete
}
[4455] Fix | Delete
function toggleCheckedBtn(button, toggle, view = null) {
[4456] Fix | Delete
button.classList.toggle("toggled", toggle);
[4457] Fix | Delete
button.setAttribute("aria-checked", toggle);
[4458] Fix | Delete
view?.classList.toggle("hidden", !toggle);
[4459] Fix | Delete
}
[4460] Fix | Delete
function toggleExpandedBtn(button, toggle, view = null) {
[4461] Fix | Delete
button.classList.toggle("toggled", toggle);
[4462] Fix | Delete
button.setAttribute("aria-expanded", toggle);
[4463] Fix | Delete
view?.classList.toggle("hidden", !toggle);
[4464] Fix | Delete
}
[4465] Fix | Delete
[4466] Fix | Delete
;// CONCATENATED MODULE: ./web/app_options.js
[4467] Fix | Delete
{
[4468] Fix | Delete
var compatibilityParams = Object.create(null);
[4469] Fix | Delete
const userAgent = navigator.userAgent || "";
[4470] Fix | Delete
const platform = navigator.platform || "";
[4471] Fix | Delete
const maxTouchPoints = navigator.maxTouchPoints || 1;
[4472] Fix | Delete
const isAndroid = /Android/.test(userAgent);
[4473] Fix | Delete
const isIOS = /\b(iPad|iPhone|iPod)(?=;)/.test(userAgent) || platform === "MacIntel" && maxTouchPoints > 1;
[4474] Fix | Delete
(function checkCanvasSizeLimitation() {
[4475] Fix | Delete
if (isIOS || isAndroid) {
[4476] Fix | Delete
compatibilityParams.maxCanvasPixels = 5242880;
[4477] Fix | Delete
}
[4478] Fix | Delete
})();
[4479] Fix | Delete
}
[4480] Fix | Delete
const OptionKind = {
[4481] Fix | Delete
BROWSER: 0x01,
[4482] Fix | Delete
VIEWER: 0x02,
[4483] Fix | Delete
API: 0x04,
[4484] Fix | Delete
WORKER: 0x08,
[4485] Fix | Delete
PREFERENCE: 0x80
[4486] Fix | Delete
};
[4487] Fix | Delete
const defaultOptions = {
[4488] Fix | Delete
canvasMaxAreaInBytes: {
[4489] Fix | Delete
value: -1,
[4490] Fix | Delete
kind: OptionKind.BROWSER + OptionKind.API
[4491] Fix | Delete
},
[4492] Fix | Delete
isInAutomation: {
[4493] Fix | Delete
value: false,
[4494] Fix | Delete
kind: OptionKind.BROWSER
[4495] Fix | Delete
},
[4496] Fix | Delete
supportsCaretBrowsingMode: {
[4497] Fix | Delete
value: false,
[4498] Fix | Delete
kind: OptionKind.BROWSER
[4499] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function