1(self.webpackChunkjavascript_nodejs = self.webpackChunkjavascript_nodejs || []).push([ [ 616 ], { 2641: function(e, t, i) { 3let n = i(1276); 4class o extends Modal { 5constructor(e = {}) { 6super(e), this.options.inModal = !0; 7let t = new n(this.options); 8this.setContent(t.getElem()); 9} 10render() { 11super.render(), this.elem.classList.add("login-form-modal"); 12} 13} 14e.exports = o; 15}, 16773: function(e, t, i) { 17"use strict"; 18const n = new (i(8679))("en"); 19let o = console.error; 20function a(e) { 21if (!n.hasPhrase(s, e)) { 22!1 && o("No such phrase", e); 23} 24return n.t(s, ...arguments); 25} 26e.exports = a; 27const s = i(9907).lang; 28"en" !== s && n.setFallback(s, "en"), n.add = (...e) => (e = e.map(e => e.__esModule ? e.default : e), 29n.addPhrase(s, ...e)), a.i18n = n; 30}, 311276: function(e, t, i) { 32let n = i(1495), o = i(3102), a = i(8944); 33const s = i(9907), {Captcha: l} = i(2024), r = i(773), c = i(9907).lang; 34let u = i(5582), f = i(1898), p = i(4500), m = i(8242), d = i(5345); 35r.i18n.add("auth", i(4766)("./" + c + ".yml")); 36class h { 37constructor(e) { 38this.options = e, e.successRedirect || (e.successRedirect = window.location.href), 39this.options.providers = s.providers; 40} 41render() { 42this.elem = document.createElement("div"), this.elem.innerHTML = m(u, this.options), 43this.options.message && this.showFormMessage(this.options.message), this.options.email && (this.elem.querySelector('[name="email"]').value = this.options.email, 44this.elem.querySelector('[name="email"]').removeAttribute("autofocus"), this.elem.querySelector('[name="password"]').setAttribute("autofocus", "")), 45this.initEventHandlers(); 46} 47getElem() { 48return this.elem || this.render(), this.elem; 49} 50successRedirect() { 51window.location.href == this.options.successRedirect ? window.location.reload() : window.location.href = this.options.successRedirect; 52} 53clearFormMessages() { 54[].forEach.call(this.elem.querySelectorAll(".text-input_invalid"), function(e) { 55e.classList.remove("text-input_invalid"); 56}), [].forEach.call(this.elem.querySelectorAll(".text-input__err"), function(e) { 57e.remove(); 58}), this.elem.querySelector("[data-notification]").innerHTML = ""; 59} 60request(e) { 61let t = n(e); 62return t.addEventListener("loadstart", function() { 63let e = this.startRequestIndication(); 64t.addEventListener("loadend", e); 65}.bind(this)), t; 66} 67startRequestIndication() { 68this.elem.classList.add("modal-overlay_light"); 69let e, t = this.elem.querySelector('[type="submit"]'); 70return t && (e = new a({ 71elem: t, 72size: "small", 73class: "", 74elemClass: "button_loading" 75}), e.start()), () => { 76this.elem.classList.remove("modal-overlay_light"), e && e.stop(); 77}; 78} 79initEventHandlers() { 80this.delegate('[data-switch="register-form"]', "click", function(e) { 81e.preventDefault(), this.elem.innerHTML = m(f, this.options), this.registerCaptcha = new l(this.elem.querySelector("form")), 82_(this.elem); 83}), this.delegate('[data-switch="login-form"]', "click", function(e) { 84e.preventDefault(), this.elem.innerHTML = m(u, this.options), _(this.elem); 85}), this.delegate('[data-switch="forgot-form"]', "click", function(e) { 86e.preventDefault(); 87let t = this.elem.querySelector('[type="email"]'); 88this.elem.innerHTML = m(p, this.options), this.elem.querySelector('[type="email"]').value = t.value, 89_(this.elem); 90}), this.delegate('[data-form="login"]', "submit", function(e) { 91e.preventDefault(), this.submitLoginForm(e.target); 92}), this.delegate('[data-form="register"]', "submit", function(e) { 93e.preventDefault(), this.submitRegisterForm(e.target); 94}), this.delegate('[data-form="forgot"]', "submit", function(e) { 95e.preventDefault(), this.submitForgotForm(e.target); 96}), this.delegate("[data-provider]", "click", function(e) { 97e.preventDefault(), this.openAuthPopup("/auth/login/" + e.delegateTarget.dataset.provider); 98}), this.delegate("[data-action-verify-email]", "click", function(e) { 99e.preventDefault(); 100let t = new FormData, i = e.delegateTarget.dataset.actionVerifyEmail; 101t.append("email", i); 102let n = this.request({ 103method: "POST", 104url: "/auth/reverify", 105body: t 106}), o = this; 107n.addEventListener("success", function(e) { 108200 == this.status ? o.showFormMessage({ 109html: r("auth.auth_form.letter_resend", { 110email: i 111}), 112type: "success" 113}) : o.showFormMessage({ 114type: "error", 115html: e.result 116}); 117}); 118}), this.delegate("[data-action-accept-agreements]", "change", function(e) { 119let t = e.delegateTarget.checked; 120this.elem.querySelector('[type="submit"]').disabled = !t; 121}); 122} 123async submitRegisterForm(e) { 124this.clearFormMessages(); 125let t = !1; 126if (e.elements.email.value || (t = !0, this.showInputError(e.elements.email, r("auth.auth_form.enter_email"))), 127e.elements.displayName.value || (t = !0, this.showInputError(e.elements.displayName, r("auth.auth_form.enter_displayname"))), 128e.elements.password.value || (t = !0, this.showInputError(e.elements.password, r("auth.auth_form.enter_password"))), 129t) return; 130await this.registerCaptcha.validateForm(e); 131let i = new FormData(e); 132i.append("successRedirect", this.options.successRedirect); 133let n = this.request({ 134method: "POST", 135url: "/auth/register", 136normalStatuses: [ 201, 400, 403 ], 137body: i 138}), o = this; 139n.addEventListener("success", function(t) { 140if (201 == this.status) return o.elem.innerHTML = m(u, o.options), void o.showFormMessage({ 141html: r("auth.auth_form.letter_sent", { 142email: e.elements.email.value, 143notifyEmail: "[email protected]" 144}), 145type: "success" 146}); 147if (400 != this.status) 403 != this.status ? o.showFormMessage({ 148html: r("auth.auth_form.unknown_error"), 149type: "error" 150}) : new d.Error(t.result.message); else for (let i in t.result.errors) o.showInputError(e.elements[i], t.result.errors[i]); 151}); 152} 153submitForgotForm(e) { 154this.clearFormMessages(); 155let t = !1; 156if (e.elements.email.value || (t = !0, this.showInputError(e.elements.email, r("auth.auth_form.enter_email"))), 157t) return; 158let i = new FormData(e); 159i.append("successRedirect", this.options.successRedirect); 160let n = this.request({ 161method: "POST", 162url: "/auth/forgot", 163normalStatuses: [ 200, 404, 403 ], 164body: i 165}), o = this; 166n.addEventListener("success", function(e) { 167200 == this.status ? (o.elem.innerHTML = m(u, o.options), o.showFormMessage({ 168html: e.result, 169type: "success" 170})) : 404 == this.status ? o.showFormMessage({ 171html: e.result, 172type: "error" 173}) : 403 == this.status && o.showFormMessage({ 174html: e.result.message || r("auth.auth_form.forbidden"), 175type: "error" 176}); 177}); 178} 179showInputError(e, t) { 180e.parentNode.classList.add("text-input_invalid"); 181let i = document.createElement("span"); 182i.className = "text-input__err", i.innerHTML = t, e.parentNode.appendChild(i); 183} 184showFormMessage(e) { 185let t = e.html; 1860 !== t.indexOf("<p>") && (t = "<p>" + t + "</p>"); 187let i = e.type; 188if (-1 == [ "info", "error", "warning", "success" ].indexOf(i)) throw new Error("Unsupported type: " + i); 189let n = document.createElement("div"); 190n.className = "login-form__" + i, n.innerHTML = t, this.elem.querySelector("[data-notification]").innerHTML = "", 191this.elem.querySelector("[data-notification]").appendChild(n); 192} 193submitLoginForm(e) { 194this.clearFormMessages(); 195let t = !1; 196if (e.elements.email.value || (t = !0, this.showInputError(e.elements.email, r("auth.auth_form.enter_email"))), 197e.elements.password.value || (t = !0, this.showInputError(e.elements.password, r("auth.auth_form.enter_password"))), 198t) return; 199let i = n({ 200method: "POST", 201url: "/auth/login/local", 202noDocumentEvents: !0, 203normalStatuses: [ 200, 401 ], 204body: new FormData(e) 205}), o = this.startRequestIndication(); 206i.addEventListener("success", e => { 207if (401 == i.status) return o(), void this.onAuthFailure(e.result.message); 208this.options.callback ? (o(), this.onAuthSuccess(e.result.user)) : this.onAuthSuccess(e.result.user); 209}), i.addEventListener("fail", e => { 210o(), this.onAuthFailure(e.reason); 211}); 212} 213openAuthPopup(e) { 214this.authPopup && !this.authPopup.closed && this.authPopup.close(); 215let t = (window.outerHeight - 600) / 2, i = (window.outerWidth - 800) / 2; 216window.authForm = this, this.authPopup = window.open(e, "authForm", "width=800,height=600,scrollbars=0,top=" + t + ",left=" + i); 217} 218onAuthSuccess(e) { 219window.currentUser = e, this.options.callback ? this.options.callback() : this.successRedirect(); 220} 221onAuthFailure(e) {
222this.showFormMessage({ 223html: e || r("auth.auth_form.auth_reject"), 224type: "error" 225}); 226} 227} 228function _(e) { 229let t = e.querySelector("[autofocus]"); 230t && t.focus(); 231} 232o.delegateMixin(h.prototype), e.exports = h; 233}, 2341495: function(e, t, i) { 235let n = i(5345), o = i(4629); 236const a = i(9907).lang, s = i(773); 237s.i18n.add("", i(3205)("./" + a + ".yml")), s.i18n.add("error.network", i(6188)("./" + a + ".yml")), 238document.addEventListener("xhrfail", function(e) { 239new n.Error(e.reason); 240}), e.exports = function(e) { 241let t = new XMLHttpRequest, i = e.method || "GET", n = e.body, a = e.url; 242t.open(i, a, !e.sync), t.method = i; 243let l = o(); 244l && !e.skipCsrf && t.setRequestHeader("X-XSRF-TOKEN", l), e.responseType && (t.responseType = e.responseType), 245"[object Object]" == {}.toString.call(n) && (t.setRequestHeader("Content-Type", "application/json;charset=UTF-8"), 246n = JSON.stringify(n)), e.noDocumentEvents || (t.addEventListener("loadstart", e => { 247t.timeStart = Date.now(); 248let i = c("xhrstart", e); 249document.dispatchEvent(i); 250}), t.addEventListener("loadend", e => { 251let t = c("xhrend", e); 252document.dispatchEvent(t); 253}), t.addEventListener("success", e => { 254let t = c("xhrsuccess", e); 255t.result = e.result, document.dispatchEvent(t); 256}), t.addEventListener("fail", e => { 257let t = c("xhrfail", e); 258t.reason = e.reason, document.dispatchEvent(t); 259})), e.raw || t.setRequestHeader("Accept", "application/json"), t.setRequestHeader("X-Requested-With", "XMLHttpRequest"); 260let r = e.normalStatuses || [ 200 ]; 261function c(e, t) { 262let i = new CustomEvent(e); 263return i.originalEvent = t, i; 264} 265function u(e, i) { 266let n = c("fail", i); 267n.reason = e, t.dispatchEvent(n); 268} 269return t.addEventListener("error", e => {
270u(s("error.network.server_connection_error"), e); 271}), t.addEventListener("timeout", e => { 272u(s("error.network.server_request_timeout"), e); 273}), t.addEventListener("abort", e => { 274u(s("error.network.request_aborted"), e); 275}), t.addEventListener("load", i => { 276if (!t.status) return void u(s("error.network.no_response"), i); 277let n = e.responseType && "text" !== e.responseType ? t.response : t.responseText; 278if ((t.getResponseHeader("Content-Type") || "").match(/^application\/json/) || e.json) try { 279n = JSON.parse(n); 280} catch (i) { 281return void u(s("error.network.invalid_format"), i); 282} 283if (!r.includes(t.status)) { 284return void u(n.info ? s("error.network.server_error_info", { 285status: t.status, 286info: n.info 287}) : s("error.network.server_error", { 288status: t.status 289}), i); 290} 291!function(e, i) { 292let n = c("success", i); 293n.result = e, t.dispatchEvent(n); 294}(n, i); 295}), setTimeout(function() { 296t.send(n); 297}), t; 298}; 299}, 3001898: function(e, i, n) { 301var o = n(7766); 302e.exports = function(e) { 303var i, n = "", a = {}, s = e || {}; 304return function(e, t, s, l, r, c, u, f, p, m, d, h) { 305var _ = function(i) { 306var n; 307if (null == i || "object" != typeof i) return i; 308if (i instanceof t) return (n = new t).setTime(i.getTime()), n; 309if (i instanceof e) { 310n = []; 311for (var o = 0, a = i.length; o < a; o++) n[o] = _(i[o]); 312return n; 313} 314if (i instanceof l) { 315for (var r in n = {}, i) i.hasOwnProperty(r) && (n[r] = _(i[r])); 316return n; 317} 318throw new s("Unable to copy obj! Its type isn't supported."); 319}, b = { 320hr: { 321type: "self_closing" 322}, 323br: { 324type: "self_closing" 325}, 326wbr: { 327type: "self_closing" 328}, 329source: { 330type: "self_closing" 331}, 332img: { 333type: "self_closing" 334}, 335input: { 336type: "self_closing" 337}, 338a: { 339type: "inline" 340}, 341abbr: { 342type: "inline" 343}, 344acronym: { 345type: "inline" 346}, 347b: { 348type: "inline" 349}, 350code: { 351type: "inline" 352}, 353em: { 354type: "inline" 355}, 356font: { 357type: "inline" 358}, 359i: { 360type: "inline" 361}, 362ins: { 363type: "inline" 364}, 365kbd: { 366type: "inline" 367}, 368map: { 369type: "inline" 370}, 371pre: { 372type: "inline" 373}, 374samp: { 375type: "inline" 376}, 377small: { 378type: "inline" 379}, 380span: { 381type: "inline" 382}, 383strong: { 384type: "inline" 385}, 386sub: { 387type: "inline" 388}, 389sup: { 390type: "inline" 391}, 392textarea: { 393type: "inline" 394}, 395time: { 396type: "inline" 397}, 398label: { 399content_type: "inline" 400}, 401p: { 402content_type: "inline" 403}, 404h1: { 405content_type: "inline" 406}, 407h2: { 408content_type: "inline" 409}, 410h3: { 411content_type: "inline" 412}, 413h4: { 414content_type: "inline" 415}, 416h5: { 417content_type: "inline" 418}, 419h6: { 420content_type: "inline" 421}, 422ul: { 423content_type: "list" 424}, 425ol: { 426content_type: "list" 427}, 428select: { 429content_type: "optionlist" 430}, 431datalist: { 432content_type: "optionlist" 433} 434}, g = [ "element", "modifier" ], v = { 435prefix: "", 436element: "__", 437modifier: "_", 438default_tag: "div", 439nosrc_substitute: !0, 440flat_elements: !0, 441class_delimiter: "" 442}, y = function() { 443var e = _(v); 444void 0 !== p && (e.prefix = p), void 0 !== u && (e.element = u), void 0 !== f && (e.modifier = f), 445void 0 !== c && (e.default_tag = c); 446for (var t = 0; t < g.length; t++) { 447var i = g[t]; 448void 0 === e["output_" + i] && (e["output_" + i] = e[i]); 449} 450return e; 451}; 452a.bemto_custom_inline_tag = i = function(e, t) { 453var a = this && this.block, s = this && this.attributes || {}; 454if (t = t || !1, n += (null == (i = "<") ? "" : i) + o.escape(null == (i = e) ? "" : i), 455s) for (var l in s) s.hasOwnProperty(l) && !1 !== s[l] && void 0 !== s[l] && (n += o.escape(null == (i = " ") ? "" : i) + o.escape(null == (i = l) ? "" : i) + (null == (i = '="') ? "" : i) + (null == (i = !0 === s[l] ? l : s[l]) ? "" : i) + (null == (i = '"') ? "" : i)); 456t ? n += null == (i = "/>") ? "" : i : (n += null == (i = ">") ? "" : i, a && a(), 457n += (null == (i = "</") ? "" : i) + o.escape(null == (i = e) ? "" : i) + (null == (i = ">") ? "" : i)); 458}, a.bemto_custom_tag = i = function(e, t) { 459var i = this && this.block, s = this && this.attributes || {}; 460t = t || {}; 461var l, r, c = !1; 462switch ("/" === (e = e || "div").substr(-1) && (c = !0, e = e.slice(0, -1)), t.type || (r = "block", 463b[l = e] && (r = b[l].type || r), r)) { 464case "inline": 465a.bemto_custom_inline_tag.call({ 466block: function() { 467i && i(); 468}, 469attributes: s 470}, e); 471break; 472 473case "self_closing": 474a.bemto_custom_inline_tag.call({ 475attributes: s 476}, e, !0); 477break; 478 479default: 480c ? n = n + "<" + e + o.attrs(s, !0) + "/>" : (n = n + "<" + e + o.attrs(s, !0) + ">", 481i && i(), n = n + "</" + e + ">"); 482} 483}, a.bemto_tag = i = function(e, t) { 484var i = this && this.block, o = this && this.attributes || {}, s = y(); 485t = t || {}; 486var l = e || s.default_tag, r = x.length; 487e || ("inline" === x[r - 1] ? l = "span" : "list" === x[r - 1] ? l = "li" : "optionlist" === x[r - 1] && (l = "o
487ption")), 488e && "span" != e && "div" != e || (o.href && (l = "a"), o.for && (l = "label"), 489o.type ? l = i ? "button" : "input" : o.src && (l = "img")), "list" === x[r - 1] && "li" !== l ? n += "<li>" : "list" !== x[r - 1] && "pseudo-list" !== x[r - 1] && "li" === l ? (n += "<ul>", 490x[x.length] = "pseudo-list") : "pseudo-list" === x[r - 1] && "li" !== l && (n += "</ul>", 491x = x.splice(0, x.length - 1)); 492var c, u, f = t.content_type || (u = "block", b[c = l] && (u = b[c].content_type || b[c].type || u), 493u); 494x[x.length] = f, "img" == l && (o.alt && !o.title && (o.title = ""), o.title && !o.alt && (o.alt = o.title), 495o.alt || (o.alt = ""), "" === o.alt && (o.role = "presentation"), o.src || (!0 === s.nosrc_substitute ? o.src = "data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" : s.nosrc_substitute && (o.src = s.nosrc_substitute))), 496"input" == l && (o.type || (o.type = "text")), "main" == l && (o.role || (o.role = "main")), 497"html" == l && (n += "<!DOCTYPE html>"), a.bemto_custom_tag.call({ 498block: function() { 499i && i && i(); 500}, 501attributes: o 502}, l, t), "list" === x[r - 1] && "li" != l && (n += "</li>"); 503}; 504var w = [], x = [ "block" ]; 505a.b = i = function(t) { 506var i = this && this.block, n = this && this.attributes || {}, o = y(); 507t && void 0 !== t.prefix && (o.prefix = t.prefix); 508var s = t && t.tag || ("string" == typeof t ? t : ""), c = t && t.isElement, u = t && t.metadata, f = !1; 509if (n.class) { 510var p = n.class; 511p instanceof e && (p = p.join(" ")), p = p.split(" "); 512var m = [], d = !0, h = []; 513if (function() { 514var e = p; 515if ("number" == typeof e.length) for (var t = 0, i = e.length; t < i; t++) { 516var n = e[t], a = {}, u = m[m.length - 1], b = !1; 517if (n.match(/^[A-Z-]+[A-Z0-9-]?$/)) s = n.toLowerCase(); else if (d && c && (a.context = w[w.length - 1]), 518(x = n.match(new r("^(?!" + o.element + "[A-Za-z0-9])" + o.modifier + "(.+)$"))) && u && u.name) u.modifiers || (u.modifiers = []), 519u.modifiers.push(x[1]); else { 520(k = n.match(new r("^(?!" + o.modifier + "[A-Za-z0-9])" + o.element + "(.+)$"))) && (a.context = w[w.length - 1], 521n = k[1]), (A = n.match(new r("^(.*[A-Za-z0-9])(?!" + o.modifier + "$)" + o.element + "$"))) && (n = A[1], 522a.is_context = !0, b = !0, f = !0, c = !1), (E = n.match(new r("^(.*?[A-Za-z0-9])(?!" + o.element + "[A-Za-z0-9])" + o.modifier + "(.+)$"))) && (n = E[1], 523a.modifiers || (a.modifiers = []), a.modifiers.push(E[2])); 524var g = "", v = "()?"; 525if (o.prefix) { 526"string" == typeof (O = o.prefix) && (O = { 527"": O 528}); 529var y = []; 530O instanceof l && (function() { 531var e = O; 532if ("number" == typeof e.length) for (var t = 0, i = e.length; t < i; t++) { 533var n = e[t]; 534"string" == typeof t && "" != t && -1 == y.indexOf(t) && y.push(t), "string" == typeof n && "" != n && -1 == y.indexOf(n) && y.push(n); 535} else { 536i = 0; 537for (var t in e) { 538i++; 539n = e[t]; 540"string" == typeof t && "" != t && -1 == y.indexOf(t) && y.push(t), "string" == typeof n && "" != n && -1 == y.indexOf(n) && y.push(n); 541} 542} 543}.call(this), v = "(" + y.join("|") + ")?"), (Z = n.match(new r("^" + v + "([A-Za-z0-9]+.*)$"))) && (n = Z[2], 544g = Z[1] || "", void 0 !== (g = O[g]) && !0 !== g || (g = Z[1])); 545} 546a.prefix = (g || "").replace(/\-/g, "%DASH%").replace(/\_/g, "%UNDERSCORE%"), b && n.match(/^[a-zA-Z0-9]+.*/) && h.push(a.context ? a.context + o.element + n : a.prefix + n), 547a.name = n, d = !1, a.context && a.context.length > 1 ? function() { 548var e = a.context; 549if ("number" == typeof e.length) for (var t = 0, i = e.length; t < i; t++) { 550var n = e[t]; 551(o = _(a)).context = [ n ], m.push(o); 552} else { 553i = 0; 554for (var t in e) { 555i++; 556var o; 557n = e[t]; 558(o = _(a)).context = [ n ], m.push(o); 559} 560} 561}.call(this) : m.push(a); 562} 563} else { 564i = 0; 565for (var t in e) { 566i++; 567var x; 568n = e[t], a = {}, u = m[m.length - 1], b = !1; 569if (n.match(/^[A-Z-]+[A-Z0-9-]?$/)) s = n.toLowerCase(); else if (d && c && (a.context = w[w.length - 1]), 570(x = n.match(new r("^(?!" + o.element + "[A-Za-z0-9])" + o.modifier + "(.+)$"))) && u && u.name) u.modifiers || (u.modifiers = []), 571u.modifiers.push(x[1]); else { 572var k, A, E; 573(k = n.match(new r("^(?!" + o.modifier + "[A-Za-z0-9])" + o.element + "(.+)$"))) && (a.context = w[w.length - 1], 574n = k[1]), (A = n.match(new r("^(.*[A-Za-z0-9])(?!" + o.modifier + "$)" + o.element + "$"))) && (n = A[1], 575a.is_context = !0, b = !0, f = !0, c = !1), (E = n.match(new r("^(.*?[A-Za-z0-9])(?!" + o.element + "[A-Za-z0-9])" + o.modifier + "(.+)$"))) && (n = E[1], 576a.modifiers || (a.modifiers = []), a.modifiers.push(E[2])); 577g = "", v = "()?"; 578if (o.prefix) { 579var O; 580"string" == typeof (O = o.prefix) && (O = { 581"": O 582}); 583var Z; 584y = []; 585O instanceof l && (function() { 586var e = O; 587if ("number" == typeof e.length) for (var t = 0, i = e.length; t < i; t++) { 588var n = e[t]; 589"string" == typeof t && "" != t && -1 == y.indexOf(t) && y.push(t), "string" == typeof n && "" != n && -1 == y.indexOf(n) && y.push(n); 590} else { 591i = 0; 592for (var t in e) { 593i++; 594n = e[t]; 595"string" == typeof t && "" != t && -1 == y.indexOf(t) && y.push(t), "string" == typeof n && "" != n && -1 == y.indexOf(n) && y.push(n); 596} 597} 598}.call(this), v = "(" + y.join("|") + ")?"), (Z = n.match(new r("^" + v + "([A-Za-z0-9]+.*)$"))) && (n = Z[2], 599g = Z[1] || "", void 0 !== (g = O[g]) && !0 !== g || (g = Z[1])); 600} 601a.prefix = (g || "").replace(/\-/g, "%DASH%").replace(/\_/g, "%UNDERSCORE%"), b && n.match(/^[a-zA-Z0-9]+.*/) && h.push(a.context ? a.context + o.element + n : a.prefix + n), 602a.name = n, d = !1, a.context && a.context.length > 1 ? function() { 603var e = a.context; 604if ("number" == typeof e.length) for (var t = 0, i = e.length; t < i; t++) { 605var n = e[t]; 606(o = _(a)).context = [ n ], m.push(o); 607} else { 608i = 0; 609for (var t in e) { 610i++; 611var o; 612n = e[t]; 613(o = _(a)).context = [ n ], m.push(o); 614} 615} 616}.call(this) : m.push(a); 617} 618} 619} 620}.call(this), !c && !h.length && m[0] && m[0].name && m[0].name.match(/^[a-zA-Z0-9]+.*/) && (m[0].is_context = !0, 621h.push(m[0].context ? m[0].context + o.element + m[0].name : m[0].prefix + m[0].name), 622f = !0), h.length && (o.flat_elements && function() { 623var e = h; 624if ("number" == typeof e.length) for (var t = 0, i = e.length; t < i; t++) { 625(n = e[t].match(new r("^(.*?[A-Za-z0-9])(?!" + o.modifier + "[A-Za-z0-9])" + o.element + ".+$"))) && (h[t] = n[1]); 626} else { 627i = 0; 628for (var t in e) { 629var n; 630i++, (n = e[t].match(new r("^(.*?[A-Za-z0-9])(?!" + o.modifier + "[A-Za-z0-9])" + o.element + ".+$"))) && (h[t] = n[1]); 631} 632} 633}.call(this), w[w.length] = h), m.length) { 634var b = []; 635(function() { 636var e = m; 637if ("number" == typeof e.length) for (var t = 0, i = e.length; t < i; t++) { 638if ((a = e[t]).name) { 639var n = a.prefix;
640a.context && (n = a.context + o.output_element), b.push(n + a.name), a.modifiers && function() { 641var e = a.modifiers; 642if ("number" == typeof e.length) for (var t = 0, i = e.length; t < i; t++) { 643var s = e[t]; 644b.push(n + a.name + o.output_modifier + s); 645} else { 646i = 0; 647for (var t in e) { 648i++; 649s = e[t]; 650b.push(n + a.name + o.output_modifier + s); 651} 652} 653}.call(this); 654} 655} else { 656i = 0; 657for (var t in e) { 658var a; 659if (i++, (a = e[t]).name) { 660n = a.prefix; 661a.context && (n = a.context + o.output_element), b.push(n + a.name), a.modifiers && function() { 662var e = a.modifiers; 663if ("number" == typeof e.length) for (var t = 0, i = e.length; t < i; t++) { 664var s = e[t]; 665b.push(n + a.name + o.output_modifier + s); 666} else { 667i = 0; 668for (var t in e) { 669i++; 670s = e[t]; 671b.push(n + a.name + o.output_modifier + s); 672} 673} 674}.call(this); 675} 676} 677} 678}).call(this); 679var g = o.class_delimiter; 680g = g ? " " + g + " " : " ", n.class = b.join(g).replace(/%DASH%/g, "-").replace(/%UNDERSCORE%/g, "_"); 681} else n.class = void 0; 682} 683i ? a.bemto_tag.call({ 684block: function() { 685i && i(); 686}, 687attributes: n 688}, s, u) : a.bemto_tag.call({ 689attributes: n 690}, s, u), !c && f && (w = w.splice(0, w.length - 1)), x = x.splice(0, x.length - 1); 691}, a.e = i = function(e) { 692var t = this && this.block, i = this && this.attributes || {}; 693(e = e && "string" == typeof e ? { 694tag: e 695} : e || {}).isElement = !0, a.b.call({ 696block: function() { 697t && t(); 698}, 699attributes: i 700}, e); 701}, a.b.call({ 702block: function() { 703a.e.call({ 704block: function() { 705m ? a.e.call({ 706block: function() { 707a.e.call({ 708block: function() { 709n += o.escape(null == (i = h("auth.signup_form.title")) ? "" : i); 710}, 711attributes: { 712class: "title" 713} 714}, "h4"), a.e.call({ 715block: function() { 716n += "/"; 717}, 718attributes: { 719class: "header-delimiter" 720} 721}), a.e.call({ 722block: function() { 723a.e.call({ 724block: function() { 725n += o.escape(null == (i = h("auth.signup_form.login_link")) ? "" : i); 726}, 727attributes: { 728class: "button-link __login", 729type: "button", 730"data-switch": "login-form" 731} 732}, "button"); 733}, 734attributes: { 735class: "header-aside" 736} 737}
737); 738}, 739attributes: { 740class: "line __header" 741} 742}) : (n = n + "<p>" + o.escape(null == (i = h("auth.signup_form.if_you_already_have_account")) ? "" : i) + " ", 743a.e.call({ 744block: function() { 745n += o.escape(null == (i = h("auth.signup_form.login")) ? "" : i); 746}, 747attributes: { 748class: "button-link", 749type: "button", 750"data-switch": "login-form" 751} 752}, "button"), n += "</p>"), a.e.call({ 753block: function() { 754a.e.call({ 755attributes: { 756class: "line __notification", 757"data-notification": o.escape(!0) 758} 759}), a.e.call({ 760block: function() { 761a.e.call({ 762block: function() { 763a.e.call({ 764block: function() { 765n = n + o.escape(null == (i = h("auth.email_field_label")) ? "" : i) + ":"; 766}, 767attributes: { 768class: "label", 769for: "register-email" 770} 771}, "label"), a.b.call({ 772block: function() { 773a.e.call({ 774attributes: { 775class: "control", 776id: "register-email", 777name: "email", 778type: "email", 779required: o.escape(!0), 780autofocus: o.escape(!0) 781} 782}, "input"); 783}, 784attributes: { 785class: "text-input __input" 786} 787}, "span"); 788}, 789attributes: { 790class: "form-control" 791} 792}), a.e.call({ 793block: function() { 794a.e.call({ 795block: function() { 796n = n + o.escape(null == (i = h("auth.signup_form.displayName_field_label")) ? "" : i) + ":"; 797}, 798attributes: { 799class: "label", 800for: "register-displayName" 801} 802}, "label"), a.b.call({ 803block: function() { 804a.e.call({ 805attributes: { 806class: "control", 807id: "register-displayName", 808name: "displayName", 809required: o.escape(!0) 810} 811}, "input"); 812}, 813attributes: { 814class: "text-input __input" 815} 816}, "span"); 817}, 818attributes: { 819class: "form-control" 820} 821}), a.e.call({ 822block: function() { 823a.e.call({ 824block: function() { 825n = n + o.escape(null == (i = h("auth.password_field_label")) ? "" : i) + ":"; 826}, 827attributes: { 828class: "label", 829for: "register-password" 830} 831}, "label"), a.b.call({ 832block: function() { 833a.e.call({ 834attributes: { 835class: "control", 836id: "register-password", 837type: "password", 838name: "password", 839required: o.escape(!0), 840minlength: "4" 841} 842}, "input"); 843}, 844attributes: { 845class: "text-input __input" 846} 847}, "span"); 848}, 849attributes: { 850class: "form-control" 851} 852}); 853}, 854attributes: { 855class: "line __row" 856} 857}), a.e.call({ 858block: function() { 859a.e.call({ 860block: function() { 861a.e.call({ 862attributes: { 863class: "agreement-control", 864id: "accept-agreement", 865type: "checkbox", 866"data-action-accept-agreements": o.escape(!0) 867} 868}, "input"), n += null == (i = h("auth.signup_form.register_accept")) ? "" : i; 869}, 870attributes: { 871class: "agreement-label", 872for: "accept-agreement" 873} 874}, "label"); 875}, 876attributes: { 877class: "line __agreement" 878} 879}), a.e.call({ 880block: function() { 881a.e.call({ 882attributes: { 883class: "captcha" 884} 885}); 886}, 887attributes: { 888class: "line" 889} 890}), a.e.call({ 891block: function() { 892a.b.call({ 893block: function() { 894a.e.call({ 895block: function() { 896n += o.escape(null == (i = h("auth.signup_form.signup")) ? "" : i); 897}, 898attributes: { 899class: "text" 900} 901}, "span"); 902}, 903attributes: { 904class: "button _action submit", 905type: "submit", 906disabled: "true" 907} 908}, "button"), m && a.e.call({ 909block: function() { 910n += o.escape(null == (i = h("auth.signup_form.cancel")) ? "" : i); 911}, 912attributes: { 913class: "close-link tablet-only modal__close", 914href: "#" 915} 916}, "a"); 917}, 918attributes: { 919class: "line __footer" 920} 921}), a.e.call({ 922block: function() { 923a.e.call({ 924block: function() { 925n += o.escape(null == (i = h("auth.login_form.login_using_socialnetworks")) ? "" : i); 926}, 927attributes: { 928class: "social-logins-title" 929} 930}, "h5"), n += o.escape(null == (i = " ") ? "" : i), function() { 931var e = d; 932if ("number" == typeof e.length) for (var t = 0, s = e.length; t < s; t++) { 933let s = [ "social-login", "_" + (l = e[t]).id, "__social-login" ]; 934a.b.call({ 935block: function() { 936n += o.escape(null == (i = l.name) ? "" : i); 937}, 938attributes: { 939class: o.classes([ s ], [ !0 ]), 940"data-provider": o.escape(l.id) 941} 942}, "button"), n += o.escape(null == (i = " ") ? "" : i); 943} else { 944s = 0; 945for (var t in e) { 946var l; 947s++; 948let r = [ "social-login", "_" + (l = e[t]).id, "__social-login" ]; 949a.b.call({ 950block: function() { 951n += o.escape(null == (i = l.name) ? "" : i); 952}, 953attributes: { 954class: o.classes([ r ], [ !0 ]), 955"data-provider": o.escape(l.id) 956} 957}, "button"), n += o.escape(null == (i = " ") ? "" : i); 958} 959} 960}.call(this); 961}, 962attributes: { 963class: "line __social-logins" 964} 965}); 966}, 967attributes: { 968class: "body" 969} 970}); 971}, 972attributes: { 973class: "form", 974action: "#", 975"data-form": "register" 976} 977}, "form"); 978}, 979attributes: { 980class: o.classes([ [ "login-form", m ? "_modal" : "_inline" ] ], [ !0 ]) 981} 982}); 983}.call(this, "Array" in s ? s.Array : "undefined" != typeof Array ? Array : void 0, "Date" in s ? s.Date : "undefined" != typeof Date ? Date : void 0, "Error" in s ? s.Error : "undefined" != typeof Error ? Error : void 0, "Object" in s ? s.Object : "undefined" != typeof Object ? Object : void 0, "RegExp" in s ? s.RegExp : "undefined" != typeof RegExp ? RegExp : void 0, "bemto_settings_default_tag" in s ? s.bemto_settings_default_tag : "undefined" != typeof bemto_settings_default_tag ? bemto_settings_default_tag : void 0, "bemto_settings_element" in s ? s.bemto_settings_element : "undefined" != typeof bemto_settings_element ? bemto_settings_element : void 0, "bemto_settings_modifier" in s ? s.bemto_settings_modifier : "undefined" != typeof bemto_settings_modifier ? bemto_settings_modifier : void 0, "bemto_settings_prefix" in s ? s.bemto_settings_prefix : "undefined" != typeof bemto_settings_prefix ? bemto_settings_prefix : void 0, "inModal" in s ? s.inModal : "undefined" != typeof inModal ? inModal : void 0, "providers" in s ? s.providers : [ {
984name: "Github", 985id: "github" 986}, { 987name: "Discord", 988id: "discord" 989}, { 990name: "Facebook", 991id: "facebook" 992}, { 993name: "Google", 994id: "google" 995} ], "t" in s ? s.t : "undefined" != typeof t ? t : void 0), n; 996}; 997}, 9982296: function(e, t, i) { 999"use strict"; 1000i.r(t), t.default = { 1001if_you_dont_have_account: "If you don't have an account yet, you can", 1002signup: "register", 1003email_field_label: "Email", 1004password_field_label: "Password", 1005login_form: { 1006title: "Log in", 1007registration_link: "Register", 1008forgot: "Forgot?", 1009login_button: "Log in", 1010cancel: "Cancel", 1011login_using_socialnetworks: "Log in with...", 1012test_mode: "Authorization is running in test mode, right now it does not add any additional features to the site." 1013}, 1014signup_form: { 1015title: "Register", 1016login_link: "Log in", 1017if_you_already_have_account: "If you already have an account, you can", 1018login: "log in", 1019email_field_label: "Email", 1020displayName_field_label: "Name", 1021password_field_label: "Password", 1022signup: "Register", 1023cancel: "Cancel", 1024register_accept: 'I\'ve read and accept <a href="/terms">the terms of usage</a> and <a href="/privacy">the privacy policy</a>.' 1025}, 1026auth_form: { 1027letter_resend: "<p>The confirmation email was sent.</p> <p><a href='#' data-action-verify-email='#{email}'>send it again.</a></p>\n", 1028enter_email: "Please enter email.", 1029enter_displayname: "Please enter username.", 1030enter_password: "Please enter password.", 1031letter_sent: "<p>The letter with a confirmation link was sent from #{notifyEmail}. Please check your mailbox.</p> <p><a href='#' data-action-verify-email='#{email}'>resend confirmation.</a></p>\n", 1032unknown_error: "Unkown response status from server", 1033forbidden: "Forbidden.", 1034auth_reject: "Authentication rejected", 1035enter_captcha: "Please confirm that you're note a robot (captcha)." 1036}, 1037forgot: { 1038no_such_user: "There is no user with that email", 1039access_recovery: "Password recovery", 1040letter_sent: "A letter with the link for password reset was sent to your email." 1041}, 1042forgot_email: { 1043title: "Password recovery for javascript.info", 1044text: "For password recovery please follow this link:" 1045}, 1046forgot_recover: { 1047invalid_link: "You used outdated or invalid link", 1048invalid_link_received: "You link for password recovery is outdated or invalid", 1049password_empty_error: "Password can not be empty.", 1050password_length_error: "Password should contain at least 4 symbols.", 1051title: "Password recovery", 1052close: "Close", 1053new_password: "New password", 1054save_password: "Save password" 1055}, 1056email_not_verified: "Email not verified", 1057confirm_activity: { 1058subject: "Hello! Please, verify that you're a human", 1059text: "Please confirm that you're human using the link below. Take note that your account is to be deleted in 7 days if no confirmation is received.", 1060success_text: "Congratulation! You have successfully confirmed that you're a human.", 1061already_confirmed_text: "Thank you! You have already confirmed that you're a human.", 1062success_link: "Back to main page" 1063}, 1064login: { 1065title: "Authorization" 1066}, 1067register: { 1068already_exists: 'If it\'s your email, you can <a data-switch="login-form" href="#">log in</a> or <a data-switch="forgot-form" href="#">recovery your password</a>.\n', 1069confirm_email: "Email confirmation", 1070email_sent_error: "Error while sending confirmation email.", 1071email_title: "Email confirmation from #{host}", 1072goto_link: "Please confirm your email by following this link:" 1073}, 1074reverify: { 1075email_empty_error: "Please enter email.", 1076no_such_user: "There is no such user.", 1077email_already_confirmed: "Your email is already confirmed.", 1078email_subject: "Confirmation email", 1079sending_email_error: "Error occured while sending email." 1080}, 1081verify: { 1082invalid_link: "Confirmation link is invalid or already used", 1083email_already_taken: "Email change is forbidden, email is already being used.", 1084email_already_verified: "No changes has been made: your email has already been verified, email change was not requested.", 1085no_password: "No password" 1086}, 1087authenticateByProfile: { 1088entrance_is_forbidden: "Unfortunately, logging in with this email is forbidden.", 1089not_enough_data: "There's not enough information, please allow the information transfer." 1090}, 1091mustNotBeAuthenticated: { 1092must_not_be_authenticated: "This action is not allowed for authenticated users." 1093}, 1094must_be_authenticated: "You have to log in to access this page", 1095forgot_form: { 1096title: "Password recovery", 1097do_recovery: "Recovery password", 1098login: "Log in", 1099registration: "Registration", 1100cancel: "Cancel" 1101}, 1102local_strategy: { 1103need_email: "Provide the email.", 1104need_password: "Provide the password, please.", 1105no_user: "No such user.", 1106wrong_password: "Password incorrect. Or maybe the password is too old, then please update it using <
1106a href='#' data-switch='forgot-form'>password reset</a>.", 1107email_not_confirmed: 'The email is not confirmed, please check the mail. Also you can <a href="#" data-action-verify-email="#{email}">re-request the confirmation email</a>.' 1108}, 1109facebook_strategy: { 1110no_email_error: "Please allow access to email. It uses for user identification.", 1111request_error: "Facebook request error" 1112}, 1113discord_strategy: { 1114error_connection: "Connection to discord.com failed.", 1115email_not_verified: "Email in Discord profile should be verified.", 1116no_email: "Email required in Discord profile." 1117}, 1118github_strategy: { 1119error_connection: "Connection to github.com failed.", 1120email_not_confirmed: "Email in github profile should be confirmed." 1121}, 1122capcha_error: "Please confirm that you're not a robot.", 1123accept_agreements: { 1124title: "Terms Of Usage", 1125complete_registration: "Complete the registration", 1126cancel: "Cancel", 1127need_accept_agreements: 'To work with the site you need to accept the <a href="/agreement">terms of usage</a>' 1128} 1129}; 1130}, 11313205: function(e, t, i) { 1132var n = { 1133"./en.yml": 3979 1134}; 1135function o(e) { 1136var t = a(e); 1137return i(t); 1138} 1139function a(e) { 1140if (!i.o(n, e)) { 1141var t = new Error("Cannot find module '" + e + "'"); 1142throw t.code = "MODULE_NOT_FOUND", t; 1143} 1144return n[e]; 1145} 1146o.keys = function() { 1147return Object.keys(n); 1148}, o.resolve = a, e.exports = o, o.id = 3205; 1149}, 11503365: function() {}, 11513979: function(e, t, i) { 1152"use strict"; 1153i.r(t), t.default = { 1154site: { 1155privacy_policy: "privacy policy", 1156terms: "terms of usage", 1157banner_bottom_courses: 'Advance your skils with <a href="https://frontendmasters.com/learn/javascript/?utm_source=website&utm_medium=jsinfo&utm_campaign=jsinfo">video courses on JavaScript and Frameworks</a>.', 1158banner_buttom_sponsor: 'Benefitted from the site? <a href="/sponsor">Sponsor us</a>!', 1159action_required: "Action required", 1160gdpr_dialog: { 1161title: "This website uses cookies", 1162text: 'We use browser technologies such as cookies and local storage to store your preferences. You need to accept our <a href="/privacy">Privacy Policy</a> and <a href="/terms">Terms of Use</a> for us to do so.', 1163accept: "Accept", 1164cancel: "Cancel" 1165}, 1166theme: { 1167light: "Light theme", 1168dark: "Dark theme", 1169change: "Change theme" 1170}, 1171toolbar: { 1172lang_switcher: { 1173cta_text: '<p>We want to make this open-source project available for people all around the world.</p> <p><a href="https://javascript.info/translate">Help to translate</a> the content of this tutorial to your language!</p>\n', 1174footer_text: "how much content is translated to the corresponding language", 1175old_version: "Old version is published, needs backporting." 1176}, 1177logo: { 1178normal: { 1179svg: "sitetoolbar__logo_en.svg", 1180width: 200 1181}, 1182"normal-white": { 1183svg: "sitetoolbar__logo_en-white.svg" 1184}, 1185small: { 1186svg: "sitetoolbar__logo_small_en.svg", 1187width: 70 1188}, 1189"small-white": { 1190svg: "sitetoolbar__logo_small_en-white.svg" 1191} 1192}, 1193sections: null, 1194buy_ebook_extra: "Buy", 1195buy_ebook: "EPUB/PDF", 1196search_placeholder: "Search on Javascript.info", 1197search_button: "Search", 1198public_profile: "Public profile", 1199account: "Account", 1200notifications: "Notifications", 1201admin: "Admin", 1202logout: "Logout" 1203}, 1204sorry_old_browser: "Sorry, Internet Explorer is not supported, please use a newer browser.", 1205contact_us: "contact us", 1206about_the_project: "about the project", 1207ilya_kantor: "Ilya Kantor", 1208comments: "Comments", 1209loading: "Loading...", 1210search: "Search", 1211share: "Share", 1212read_before_commenting: "read this before commenting…", 1213last_updated_at: "Last updated on #{date}", 1214meta: { 1215description: "Modern JavaScript Tutorial: simple, but detailed explanations with examples and tasks, including: closures, document and events, object oriented programming and more." 1216}, 1217"tablet-menu": { 1218choose_section: "Choose section", 1219search_placeholder: "Search in the tutorial", 1220search_button: "Search" 1221}, 1222comment: { 1223help: [ 'If you have suggestions what to improve - please <a href="https://github.com/javascript-tutorial/en.javascript.info/issues/new">submit a GitHub issue</a> or a pull request instead of commenting.', "If you can't understand something in the article – please elaborate.", "To insert few words of code, use the <code><code></code> tag, for several lines – wrap them in <code><pre></code> tag, for more than 10 lines – use a sandbox (<a href='https://plnkr.co/edit/?p=preview'>plnkr</a>, <a href='https://jsbin.com'>jsbin</a>, <a href='http://codepen.io'>codepen</a>…)" ] 1224}, 1225edit_on_github: "Edit on GitHub", 1226error: "error", 1227close: "close", 1228hide_forever: "hide permanently", 1229hide_week: "hide for 1 week", 1230hidden_forever: "This information will not show up any more.", 1231hidden_week: "This information will stay hidden for 1 week", 1232subscribe: { 1233title: "Watch for javascript.info updates", 1234text: "We do not send advertisements, only relevant stuff. You choose what to receive:", 1235agreement: 'By signing up to newsletters you agree to the <a href="#{link}" target="_blank">terms of usage</a>.', 1236button: "Subscribe", 1237button_unsubscribe: "Unsubscribe from all", 1238common_updates: "Common updates", 1239common_updates_text: "new courses, master classes, article and screencast releases", 1240your_email: "[email protected]",
1241newsletters: "newsletter,newsletters,newsletters", 1242no_selected: "Nothing selected" 1243}, 1244form: { 1245value_must_not_be_empty: "Value must not be empty.", 1246value_is_too_long: "Value is too long.", 1247value_is_too_short: "Value is too short.", 1248invalid_email: "Invalid email.", 1249invalid_value: "Invalid value.", 1250invalid_autocomplete: "Please, choose from the list", 1251invalid_date: "Invalid date, format: dd.mm.yyyyy.", 1252invalid_range: "This date is invalid here.", 1253save: "Save", 1254upload_file: "Upload file", 1255cancel: "Cancel", 1256server_error: "Request error, status code" 1257} 1258} 1259}; 1260}, 12614500: function(e, i, n) { 1262var o = n(7766); 1263e.exports = function(e) { 1264var i, n = "", a = {}, s = e || {}; 1265return function(e, t, s, l, r, c, u, f, p, m, d, h, _) { 1266var b = function(i) { 1267var n; 1268if (null == i || "object" != typeof i) return i; 1269if (i instanceof t) return (n = new t).setTime(i.getTime()), n; 1270if (i instanceof e) { 1271n = []; 1272for (var o = 0, a = i.length; o < a; o++) n[o] = b(i[o]); 1273return n; 1274} 1275if (i instanceof l) { 1276for (var r in n = {}, i) i.hasOwnProperty(r) && (n[r] = b(i[r])); 1277return n; 1278} 1279throw new s("Unable to copy obj! Its type isn't supported."); 1280}, g = { 1281hr: { 1282type: "self_closing" 1283}, 1284br: { 1285type: "self_closing" 1286}, 1287wbr: { 1288type: "self_closing" 1289}, 1290source: { 1291type: "self_closing" 1292}, 1293img: { 1294type: "self_closing" 1295}, 1296input: { 1297type: "self_closing" 1298}, 1299a: { 1300type: "inline" 1301}, 1302abbr: { 1303type: "inline" 1304}, 1305acronym: { 1306type: "inline" 1307}, 1308b: { 1309type: "inline" 1310}, 1311code: { 1312type: "inline" 1313}, 1314em: { 1315type: "inline" 1316}, 1317font: { 1318type: "inline" 1319}, 1320i: { 1321type: "inline" 1322}, 1323ins: { 1324type: "inline" 1325}, 1326kbd: { 1327type: "inline" 1328}, 1329map: { 1330type: "inline" 1331}, 1332pre: { 1333type: "inline" 1334}, 1335samp: { 1336type: "inline" 1337}, 1338small: { 1339type: "inline" 1340}, 1341span: { 1342type: "inline" 1343}, 1344strong: { 1345type: "inline" 1346}, 1347sub: { 1348type: "inline" 1349}, 1350sup: { 1351type: "inline" 1352}, 1353textarea: { 1354type: "inline" 1355}, 1356time: { 1357type: "inline" 1358}, 1359label: { 1360content_type: "inline" 1361}, 1362p: { 1363content_type: "inline" 1364}, 1365h1: { 1366content_type: "inline" 1367}, 1368h2: { 1369content_type: "inline" 1370}, 1371h3: { 1372content_type: "inline" 1373}, 1374h4: { 1375content_type: "inline" 1376}, 1377h5: { 1378content_type: "inline" 1379}, 1380h6: { 1381content_type: "inline" 1382}, 1383ul: { 1384content_type: "list" 1385}, 1386ol: { 1387content_type: "list" 1388}, 1389select: { 1390content_type: "optionlist" 1391}, 1392datalist: { 1393content_type: "optionlist" 1394} 1395}, v = [ "element", "modifier" ], y = { 1396prefix: "", 1397element: "__", 1398modifier: "_", 1399default_tag: "div", 1400nosrc_substitute: !0, 1401flat_elements: !0, 1402class_delimiter: "" 1403}, w = function() { 1404var e = b(y); 1405void 0 !== p && (e.prefix = p), void 0 !== u && (e.element = u), void 0 !== f && (e.modifier = f), 1406void 0 !== c && (e.default_tag = c); 1407for (var t = 0; t < v.length; t++) { 1408var i = v[t]; 1409void 0 === e["output_" + i] && (e["output_" + i] = e[i]); 1410} 1411return e; 1412}; 1413a.bemto_custom_inline_tag = i = function(e, t) { 1414var a = this && this.block, s = this && this.attributes || {}; 1415if (t = t || !1, n += (null == (i = "<") ? "" : i) + o.escape(null == (i = e) ? "" : i), 1416s) for (var l in s) s.hasOwnProperty(l) && !1 !== s[l] && void 0 !== s[l] && (n += o.escape(null == (i = " ") ? "" : i) + o.escape(null == (i = l) ? "" : i) + (null == (i = '="') ? "" : i) + (null == (i = !0 === s[l] ? l : s[l]) ? "" : i) + (null == (i = '"') ? "" : i)); 1417t ? n += null == (i = "/>") ? "" : i : (n += null == (i = ">") ? "" : i, a && a(), 1418n += (null == (i = "</") ? "" : i) + o.escape(null == (i = e) ? "" : i) + (null == (i = ">") ? "" : i)); 1419}, a.bemto_custom_tag = i = function(e, t) { 1420var i = this && this.block, s = this && this.attributes || {}; 1421t = t || {}; 1422var l, r, c = !1; 1423switch ("/" === (e = e || "div").substr(-1) && (c = !0, e = e.slice(0, -1)), t.type || (r = "block", 1424g[l = e] && (r = g[l].type || r), r)) { 1425case "inline": 1426a.bemto_custom_inline_tag.call({ 1427block: function() { 1428i && i(); 1429}, 1430attributes: s 1431}, e); 1432break; 1433 1434case "self_closing": 1435a.bemto_custom_inline_tag.call({ 1436attributes: s 1437}, e, !0); 1438break; 1439 1440default: 1441c ? n = n + "<" + e + o.attrs(s, !0) + "/>" : (n = n + "<" + e + o.attrs(s, !0) + ">", 1442i && i(), n = n + "</" + e + ">"); 1443} 1444}, a.bemto_tag = i = function(e, t) { 1445var i = this && this.block, o = this && this.attributes || {}, s = w(); 1446t = t || {}; 1447var l = e || s.default_tag, r = k.length; 1448e || ("inline" === k[r - 1] ? l = "span" : "list" === k[r - 1] ? l = "li" : "optionlist" === k[r - 1] && (l = "o
1448ption")), 1449e && "span" != e && "div" != e || (o.href && (l = "a"), o.for && (l = "label"), 1450o.type ? l = i ? "button" : "input" : o.src && (l = "img")), "list" === k[r - 1] && "li" !== l ? n += "<li>" : "list" !== k[r - 1] && "pseudo-list" !== k[r - 1] && "li" === l ? (n += "<ul>", 1451k[k.length] = "pseudo-list") : "pseudo-list" === k[r - 1] && "li" !== l && (n += "</ul>", 1452k = k.splice(0, k.length - 1)); 1453var c, u, f = t.content_type || (u = "block", g[c = l] && (u = g[c].content_type || g[c].type || u), 1454u); 1455k[k.length] = f, "img" == l && (o.alt && !o.title && (o.title = ""), o.title && !o.alt && (o.alt = o.title), 1456o.alt || (o.alt = ""), "" === o.alt && (o.role = "presentation"), o.src || (!0 === s.nosrc_substitute ? o.src = "data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" : s.nosrc_substitute && (o.src = s.nosrc_substitute))), 1457"input" == l && (o.type || (o.type = "text")), "main" == l && (o.role || (o.role = "main")), 1458"html" == l && (n += "<!DOCTYPE html>"), a.bemto_custom_tag.call({ 1459block: function() { 1460i && i && i(); 1461}, 1462attributes: o 1463}, l, t), "list" === k[r - 1] && "li" != l && (n += "</li>"); 1464}; 1465var x = [], k = [ "block" ]; 1466a.b = i = function(t) { 1467var i = this && this.block, n = this && this.attributes || {}, o = w(); 1468t && void 0 !== t.prefix && (o.prefix = t.prefix); 1469var s = t && t.tag || ("string" == typeof t ? t : ""), c = t && t.isElement, u = t && t.metadata, f = !1; 1470if (n.class) { 1471var p = n.class; 1472p instanceof e && (p = p.join(" ")), p = p.split(" "); 1473var m = [], d = !0, h = []; 1474if (function() { 1475var e = p; 1476if ("number" == typeof e.length) for (var t = 0, i = e.length; t < i; t++) { 1477var n = e[t], a = {}, u = m[m.length - 1], _ = !1; 1478if (n.match(/^[A-Z-]+[A-Z0-9-]?$/)) s = n.toLowerCase(); else if (d && c && (a.context = x[x.length - 1]), 1479(w = n.match(new r("^(?!" + o.element + "[A-Za-z0-9])" + o.modifier + "(.+)$"))) && u && u.name) u.modifiers || (u.modifiers = []), 1480u.modifiers.push(w[1]); else { 1481(k = n.match(new r("^(?!" + o.modifier + "[A-Za-z0-9])" + o.element + "(.+)$"))) && (a.context = x[x.length - 1], 1482n = k[1]), (A = n.match(new r("^(.*[A-Za-z0-9])(?!" + o.modifier + "$)" + o.element + "$"))) && (n = A[1], 1483a.is_context = !0, _ = !0, f = !0, c = !1), (E = n.match(new r("^(.*?[A-Za-z0-9])(?!" + o.element + "[A-Za-z0-9])" + o.modifier + "(.+)$"))) && (n = E[1], 1484a.modifiers || (a.modifiers = []), a.modifiers.push(E[2])); 1485var g = "", v = "()?"; 1486if (o.prefix) { 1487"string" == typeof (O = o.prefix) && (O = { 1488"": O 1489}); 1490var y = []; 1491O instanceof l && (function() { 1492var e = O; 1493if ("number" == typeof e.length) for (var t = 0, i = e.length; t < i; t++) { 1494var n = e[t]; 1495"string" == typeof t && "" != t && -1 == y.indexOf(t) && y.push(t), "string" == typeof n && "" != n && -1 == y.indexOf(n) && y.push(n); 1496} else { 1497i = 0; 1498for (var t in e) { 1499i++; 1500n = e[t]; 1501"string" == typeof t && "" != t && -1 == y.indexOf(t) && y.push(t), "string" == typeof n && "" != n && -1 == y.indexOf(n) && y.push(n); 1502} 1503} 1504}.call(this), v = "(" + y.join("|") + ")?"), (Z = n.match(new r("^" + v + "([A-Za-z0-9]+.*)$"))) && (n = Z[2], 1505g = Z[1] || "", void 0 !== (g = O[g]) && !0 !== g || (g = Z[1])); 1506} 1507a.prefix = (g || "").replace(/\-/g, "%DASH%").replace(/\_/g, "%UNDERSCORE%"), _ && n.match(/^[a-zA-Z0-9]+.*/) && h.push(a.context ? a.context + o.element + n : a.prefix + n), 1508a.name = n, d = !1, a.context && a.context.length > 1 ? function() { 1509var e = a.context; 1510if ("number" == typeof e.length) for (var t = 0, i = e.length; t < i; t++) { 1511var n = e[t]; 1512(o = b(a)).context = [ n ], m.push(o); 1513} else { 1514i = 0; 1515for (var t in e) { 1516i++; 1517var o; 1518n = e[t]; 1519(o = b(a)).context = [ n ], m.push(o); 1520} 1521} 1522}.call(this) : m.push(a); 1523} 1524} else { 1525i = 0; 1526for (var t in e) { 1527i++; 1528var w; 1529n = e[t], a = {}, u = m[m.length - 1], _ = !1; 1530if (n.match(/^[A-Z-]+[A-Z0-9-]?$/)) s = n.toLowerCase(); else if (d && c && (a.context = x[x.length - 1]), 1531(w = n.match(new r("^(?!" + o.element + "[A-Za-z0-9])" + o.modifier + "(.+)$"))) && u && u.name) u.modifiers || (u.modifiers = []), 1532u.modifiers.push(w[1]); else { 1533var k, A, E; 1534(k = n.match(new r("^(?!" + o.modifier + "[A-Za-z0-9])" + o.element + "(.+)$"))) && (a.context = x[x.length - 1], 1535n = k[1]), (A = n.match(new r("^(.*[A-Za-z0-9])(?!" + o.modifier + "$)" + o.element + "$"))) && (n = A[1], 1536a.is_context = !0, _ = !0, f = !0, c = !1), (E = n.match(new r("^(.*?[A-Za-z0-9])(?!" + o.element + "[A-Za-z0-9])" + o.modifier + "(.+)$"))) && (n = E[1], 1537a.modifiers || (a.modifiers = []), a.modifiers.push(E[2])); 1538g = "", v = "()?"; 1539if (o.prefix) { 1540var O; 1541"string" == typeof (O = o.prefix) && (O = { 1542"": O 1543}); 1544var Z; 1545y = []; 1546O instanceof l && (function() { 1547var e = O; 1548if ("number" == typeof e.length) for (var t = 0, i = e.length; t < i; t++) { 1549var n = e[t]; 1550"string" == typeof t && "" != t && -1 == y.indexOf(t) && y.push(t), "string" == typeof n && "" != n && -1 == y.indexOf(n) && y.push(n); 1551} else { 1552i = 0; 1553for (var t in e) { 1554i++; 1555n = e[t]; 1556"string" == typeof t && "" != t && -1 == y.indexOf(t) && y.push(t), "string" == typeof n && "" != n && -1 == y.indexOf(n) && y.push(n); 1557} 1558} 1559}.call(this), v = "(" + y.join("|") + ")?"), (Z = n.match(new r("^" + v + "([A-Za-z0-9]+.*)$"))) && (n = Z[2], 1560g = Z[1] || "", void 0 !== (g = O[g]) && !0 !== g || (g = Z[1])); 1561} 1562a.prefix = (g || "").replace(/\-/g, "%DASH%").replace(/\_/g, "%UNDERSCORE%"), _ && n.match(/^[a-zA-Z0-9]+.*/) && h.push(a.context ? a.context + o.element + n : a.prefix + n), 1563a.name = n, d = !1, a.context && a.context.length > 1 ? function() { 1564var e = a.context; 1565if ("number" == typeof e.length) for (var t = 0, i = e.length; t < i; t++) { 1566var n = e[t]; 1567(o = b(a)).context = [ n ], m.push(o); 1568} else { 1569i = 0; 1570for (var t in e) { 1571i++; 1572var o; 1573n = e[t]; 1574(o = b(a)).context = [ n ], m.push(o); 1575} 1576} 1577}.call(this) : m.push(a); 1578} 1579} 1580} 1581}.call(this), !c && !h.length && m[0] && m[0].name && m[0].name.match(/^[a-zA-Z0-9]+.*/) && (m[0].is_context = !0, 1582h.push(m[0].context ? m[0].context + o.element + m[0].name : m[0].prefix + m[0].name), 1583f = !0), h.length && (o.flat_elements && function() { 1584var e = h; 1585if ("number" == typeof e.length) for (var t = 0, i = e.length; t < i; t++) { 1586(n = e[t].match(new r("^(.*?[A-Za-z0-9])(?!" + o.modifier + "[A-Za-z0-9])" + o.element + ".+$"))) && (h[t] = n[1]); 1587} else { 1588i = 0; 1589for (var t in e) { 1590var n; 1591i++, (n = e[t].match(new r("^(.*?[A-Za-z0-9])(?!" + o.modifier + "[A-Za-z0-9])" + o.element + ".+$"))) && (h[t] = n[1]); 1592} 1593} 1594}.call(this), x[x.length] = h), m.length) { 1595var _ = []; 1596(function() { 1597var e = m; 1598if ("number" == typeof e.length) for (var t = 0, i = e.length; t < i; t++) { 1599if ((a = e[t]).name) { 1600var n = a.prefix; 1601a.context && (n = a.context + o.output_element), _.push(n + a.name), a.modifiers && function() { 1602var e = a.modifiers; 1603if ("number" == typeof e.length) for (var t = 0, i = e.length; t < i; t++) { 1604var s = e[t]; 1605_.push(n + a.name + o.output_modifier + s); 1606} else { 1607i = 0; 1608for (var t in e) { 1609i++; 1610s = e[t]; 1611_.push(n + a.name + o.output_modifier + s); 1612} 1613} 1614}.call(this); 1615} 1616} else { 1617i = 0; 1618for (var t in e) { 1619var a; 1620if (i++, (a = e[t]).name) { 1621n = a.prefix; 1622a.context && (n = a.context + o.output_element), _.push(n + a.name), a.modifiers && function() { 1623var e = a.modifiers; 1624if ("number" == typeof e.length) for (var t = 0, i = e.length; t < i; t++) { 1625var s = e[t]; 1626_.push(n + a.name + o.output_modifier + s); 1627} else { 1628i = 0; 1629for (var t in e) { 1630i++; 1631s = e[t]; 1632_.push(n + a.name + o.output_modifier + s); 1633} 1634} 1635}.call(this); 1636} 1637} 1638} 1639}).call(this); 1640var g = o.class_delimiter; 1641g = g ? " " + g + " " : " ", n.class = _.join(g).replace(/%DASH%/g, "-").replace(/%UNDERSCORE%/g, "_"); 1642} else n.class = void 0; 1643} 1644i ? a.bemto_tag.call({ 1645block: function() { 1646i && i(); 1647}, 1648attributes: n 1649}, s, u) : a.bemto_tag.call({ 1650attributes: n 1651}, s, u), !c && f && (x = x.splice(0, x.length - 1)), k = k.splice(0, k.length - 1); 1652}, a.e = i = function(e) { 1653var t = this && this.block, i = this && this.attributes || {}; 1654(e = e && "string" == typeof e ? { 1655tag: e 1656} : e || {}).isElement = !0, a.b.call({ 1657block: function() { 1658t && t(); 1659},
1660attributes: i 1661}, e); 1662}, a.b.call({ 1663block: function() { 1664a.e.call({ 1665block: function() { 1666m ? a.e.call({ 1667block: function() { 1668a.e.call({ 1669block: function() { 1670n += o.escape(null == (i = _("auth.forgot_form.title")) ? "" : i); 1671}, 1672attributes: { 1673class: "title" 1674} 1675}, "h4"); 1676}, 1677attributes: { 1678class: "line __header" 1679} 1680}) : h ? n += null == (i = h) ? "" : i : (n = n + "<p>" + (null == (i = _("auth.if_you_dont_have_account")) ? "" : i) + " ", 1681a.e.call({ 1682block: function() { 1683n += o.escape(null == (i = _("auth.signup")) ? "" : i); 1684}, 1685attributes: { 1686class: "button-link __register", 1687type: "button", 1688"data-switch": "register-form" 1689} 1690}, "button"), n += "</p>"), a.e.call({ 1691block: function() { 1692a.e.call({ 1693attributes: { 1694class: "line __notification", 1695"data-notification": o.escape(!0) 1696} 1697}), a.e.call({ 1698block: function() { 1699a.e.call({ 1700block: function() { 1701n += o.escape(null == (i = _("auth.email_field_label") + ":") ? "" : i); 1702}, 1703attributes: { 1704class: "label", 1705for: "forgot-email" 1706} 1707}, "label"), a.b.call({ 1708block: function() { 1709a.e.call({ 1710attributes: { 1711class: "control", 1712id: "forgot-email", 1713name: "email", 1714type: "email", 1715autofocus: o.escape(!0) 1716} 1717}, "input"); 1718}, 1719attributes: { 1720class: "text-input __input" 1721} 1722}, "span"); 1723}, 1724attributes: { 1725class: "line" 1726} 1727}), a.e.call({ 1728block: function() { 1729a.e.call({ 1730attributes: { 1731class: "captcha" 1732} 1733}); 1734}, 1735attributes: { 1736class: "line" 1737} 1738}), a.e.call({ 1739block: function() { 1740a.b.call({ 1741block: function() { 1742a.e.call({ 1743block: function() { 1744n += o.escape(null == (i = _("auth.forgot_form.do_recovery")) ? "" : i); 1745}, 1746attributes: { 1747class: "text" 1748} 1749}, "span"); 1750}, 1751attributes: { 1752class: "button _action", 1753type: "submit" 1754} 1755}, "button"), m && a.e.call({ 1756block: function() { 1757n += o.escape(null == (i = _("auth.forgot_form.cancel")) ? "" : i); 1758}, 1759attributes: { 1760class: "close-link tablet-only modal__close", 1761href: "#" 1762} 1763}, "a"); 1764}, 1765attributes: { 1766class: "line" 1767} 1768}), a.e.call({ 1769block: function() { 1770a.e.call({ 1771block: function() { 1772n += o.escape(null == (i = _("auth.forgot_form.login")) ? "" : i); 1773}, 1774attributes: { 1775class: "button-link", 1776type: "button", 1777"data-switch": "login-form" 1778} 1779}, "button"), n += o.escape(null == (i = " ") ? "" : i), a.e.call({ 1780block: function() { 1781n += "/"; 1782}, 1783attributes: { 1784class: "separator" 1785} 1786}, "span"), n += o.escape(null == (i = " ") ? "" : i), a.e.call({ 1787block: function() { 1788n += o.escape(null == (i = _("auth.forgot_form.registration")) ? "" : i); 1789}, 1790attributes: { 1791class: "button-link", 1792"data-switch": "register-form" 1793} 1794}, "button"); 1795}, 1796attributes: { 1797class: "line __footer" 1798} 1799}), a.e.call({ 1800block: function() { 1801a.e.call({ 1802block: function() { 1803n += o.escape(null == (i = _("auth.login_form.login_using_socialnetworks")) ? "" : i); 1804}, 1805attributes: { 1806class: "social-logins-title" 1807} 1808}, "h5"), n += o.escape(null == (i = " ") ? "" : i), function() { 1809var e = d; 1810if ("number" == typeof e.length) for (var t = 0, s = e.length; t < s; t++) { 1811let s = [ "social-login", "_" + (l = e[t]).id, "__social-login" ]; 1812a.b.call({ 1813block: function() { 1814n += o.escape(null == (i = l.name) ? "" : i); 1815}, 1816attributes: { 1817class: o.classes([ s ], [ !0 ]), 1818"data-provider": o.escape(l.id) 1819} 1820}, "button"), n += o.escape(null == (i = " ") ? "" : i); 1821} else { 1822s = 0; 1823for (var t in e) { 1824var l; 1825s++; 1826let r = [ "social-login", "_" + (l = e[t]).id, "__social-login" ]; 1827a.b.call({ 1828block: function() { 1829n += o.escape(null == (i = l.name) ? "" : i); 1830}, 1831attributes: { 1832class: o.classes([ r ], [ !0 ]), 1833"data-provider": o.escape(l.id) 1834} 1835}, "button"), n += o.escape(null == (i = " ") ? "" : i); 1836} 1837} 1838}.call(this); 1839}, 1840attributes: { 1841class: "line __social-logins" 1842} 1843}); 1844}, 1845attributes: { 1846class: "body" 1847} 1848}); 1849}, 1850attributes: { 1851class: "form", 1852action: "#", 1853"data-form": "forgot" 1854} 1855}, "form"); 1856}, 1857attributes: { 1858class: o.classes([ [ "login-form", m ? "_modal" : "_inline" ] ], [ !0 ]) 1859} 1860}); 1861}.call(this, "Array" in s ? s.Array : "undefined" != typeof Array ? Array : void 0, "Date" in s ? s.Date : "undefined" != typeof Date ? Date : void 0, "Error" in s ? s.Error : "undefined" != typeof Error ? Error : void 0, "Object" in s ? s.Object : "undefined" != typeof Object ? Object : void 0, "RegExp" in s ? s.RegExp : "undefined" != typeof RegExp ? RegExp : void 0, "bemto_settings_default_tag" in s ? s.bemto_settings_default_tag : "undefined" != typeof bemto_settings_default_tag ? bemto_settings_default_tag : void 0, "bemto_settings_element" in s ? s.bemto_settings_element : "undefined" != typeof bemto_settings_element ? bemto_settings_element : void 0, "bemto_settings_modifier" in s ? s.bemto_settings_modifier : "undefined" != typeof bemto_settings_modifier ? bemto_settings_modifier : void 0, "bemto_settings_prefix" in s ? s.bemto_settings_prefix : "undefined" != typeof bemto_settings_prefix ? bemto_settings_prefix : void 0, "inModal" in s ? s.inModal : "undefined" != typeof inModal ? inModal : void 0, "providers" in s ? s.providers : [ {
1862name: "Github", 1863id: "github" 1864}, { 1865name: "Discord", 1866id: "discord" 1867}, { 1868name: "Facebook", 1869id: "facebook" 1870}, { 1871name: "Google", 1872id: "google" 1873} ], "subtitle" in s ? s.subtitle : "undefined" != typeof subtitle ? subtitle : void 0, "t" in s ? s.t : "undefined" != typeof t ? t : void 0), 1874n; 1875}; 1876}, 18774629: function(e) { 1878e.exports = function() { 1879let e = document.cookie.match(/XSRF-TOKEN=([\w-]+)/); 1880return e ? e[1] : null; 1881}; 1882}, 18834766: function(e, t, i) { 1884var n = { 1885"./en.yml": 2296 1886}; 1887function o(e) { 1888var t = a(e); 1889return i(t); 1890} 1891function a(e) { 1892if (!i.o(n, e)) { 1893var t = new Error("Cannot find module '" + e + "'"); 1894throw t.code = "MODULE_NOT_FOUND", t; 1895} 1896return n[e]; 1897} 1898o.keys = function() { 1899return Object.keys(n); 1900}, o.resolve = a, e.exports = o, o.id = 4766; 1901}, 19025582: function(e, i, n) { 1903var o = n(7766); 1904e.exports = function(e) { 1905var i, n = "", a = {}, s = e || {}; 1906return function(e, t, s, l, r, c, u, f, p, m, d, h, _) { 1907var b = function(i) { 1908var n; 1909if (null == i || "object" != typeof i) return i; 1910if (i instanceof t) return (n = new t).setTime(i.getTime()), n; 1911if (i instanceof e) { 1912n = []; 1913for (var o = 0, a = i.length; o < a; o++) n[o] = b(i[o]); 1914return n; 1915} 1916if (i instanceof l) { 1917for (var r in n = {}, i) i.hasOwnProperty(r) && (n[r] = b(i[r])); 1918return n; 1919} 1920throw new s("Unable to copy obj! Its type isn't supported."); 1921}, g = { 1922hr: { 1923type: "self_closing" 1924}, 1925br: { 1926type: "self_closing" 1927}, 1928wbr: { 1929type: "self_closing" 1930}, 1931source: { 1932type: "self_closing" 1933}, 1934img: { 1935type: "self_closing" 1936}, 1937input: { 1938type: "self_closing" 1939}, 1940a: { 1941type: "inline" 1942}, 1943abbr: { 1944type: "inline" 1945}, 1946acronym: { 1947type: "inline" 1948}, 1949b: { 1950type: "inline" 1951}, 1952code: { 1953type: "inline" 1954}, 1955em: { 1956type: "inline" 1957}, 1958font: { 1959type: "inline" 1960}, 1961i: { 1962type: "inline" 1963}, 1964ins: { 1965type: "inline" 1966}, 1967kbd: { 1968type: "inline" 1969}, 1970map: { 1971type: "inline" 1972}, 1973pre: { 1974type: "inline" 1975}, 1976samp: { 1977type: "inline" 1978}, 1979small: { 1980type: "inline" 1981}, 1982span: { 1983type: "inline" 1984}, 1985strong: { 1986type: "inline" 1987}, 1988sub: { 1989type: "inline" 1990}, 1991sup: { 1992type: "inline" 1993}, 1994textarea: { 1995type: "inline" 1996}, 1997time: { 1998type: "inline" 1999}, 2000label: { 2001content_type: "inline" 2002}, 2003p: { 2004content_type: "inline" 2005}, 2006h1: { 2007content_type: "inline" 2008}, 2009h2: { 2010content_type: "inline" 2011}, 2012h3: { 2013content_type: "inline" 2014}, 2015h4: { 2016content_type: "inline" 2017}, 2018h5: { 2019content_type: "inline" 2020}, 2021h6: { 2022content_type: "inline" 2023}, 2024ul: { 2025content_type: "list" 2026}, 2027ol: { 2028content_type: "list" 2029}, 2030select: { 2031content_type: "optionlist" 2032}, 2033datalist: { 2034content_type: "optionlist" 2035} 2036}, v = [ "element", "modifier" ], y = { 2037prefix: "", 2038element: "__", 2039modifier: "_", 2040default_tag: "div", 2041nosrc_substitute: !0, 2042flat_elements: !0, 2043class_delimiter: "" 2044}, w = function() { 2045var e = b(y); 2046void 0 !== p && (e.prefix = p), void 0 !== u && (e.element = u), void 0 !== f && (e.modifier = f), 2047void 0 !== c && (e.default_tag = c); 2048for (var t = 0; t < v.length; t++) { 2049var i = v[t]; 2050void 0 === e["output_" + i] && (e["output_" + i] = e[i]); 2051} 2052return e; 2053}; 2054a.bemto_custom_inline_tag = i = function(e, t) { 2055var a = this && this.block, s = this && this.attributes || {}; 2056if (t = t || !1, n += (null == (i = "<") ? "" : i) + o.escape(null == (i = e) ? "" : i), 2057s) for (var l in s) s.hasOwnProperty(l) && !1 !== s[l] && void 0 !== s[l] && (n += o.escape(null == (i = " ") ? "" : i) + o.escape(null == (i = l) ? "" : i) + (null == (i = '="') ? "" : i) + (null == (i = !0 === s[l] ? l : s[l]) ? "" : i) + (null == (i = '"') ? "" : i)); 2058t ? n += null == (i = "/>") ? "" : i : (n += null == (i = ">") ? "" : i, a && a(), 2059n += (null == (i = "</") ? "" : i) + o.escape(null == (i = e) ? "" : i) + (null == (i = ">") ? "" : i)); 2060}, a.bemto_custom_tag = i = function(e, t) { 2061var i = this && this.block, s = this && this.attributes || {}; 2062t = t || {}; 2063var l, r, c = !1; 2064switch ("/" === (e = e || "div").substr(-1) && (c = !0, e = e.slice(0, -1)), t.type || (r = "block", 2065g[l = e] && (r = g[l].type || r), r)) { 2066case "inline": 2067a.bemto_custom_inline_tag.call({ 2068block: function() { 2069i && i(); 2070}, 2071attributes: s 2072}, e); 2073break; 2074 2075case "self_closing": 2076a.bemto_custom_inline_tag.call({ 2077attributes: s 2078}, e, !0); 2079break; 2080 2081default: 2082c ? n = n + "<" + e + o.attrs(s, !0) + "/>" : (n = n + "<" + e + o.attrs(s, !0) + ">", 2083i && i(), n = n + "</" + e + ">"); 2084} 2085}, a.bemto_tag = i = function(e, t) { 2086var i = this && this.block, o = this && this.attributes || {}, s = w(); 2087t = t || {}; 2088var l = e || s.default_tag, r = k.length; 2089e || ("inline" === k[r - 1] ? l = "span" : "list" === k[r - 1] ? l = "li" : "optionlist" === k[r - 1] && (l = "o
2089ption")), 2090e && "span" != e && "div" != e || (o.href && (l = "a"), o.for && (l = "label"), 2091o.type ? l = i ? "button" : "input" : o.src && (l = "img")), "list" === k[r - 1] && "li" !== l ? n += "<li>" : "list" !== k[r - 1] && "pseudo-list" !== k[r - 1] && "li" === l ? (n += "<ul>", 2092k[k.length] = "pseudo-list") : "pseudo-list" === k[r - 1] && "li" !== l && (n += "</ul>", 2093k = k.splice(0, k.length - 1)); 2094var c, u, f = t.content_type || (u = "block", g[c = l] && (u = g[c].content_type || g[c].type || u), 2095u); 2096k[k.length] = f, "img" == l && (o.alt && !o.title && (o.title = ""), o.title && !o.alt && (o.alt = o.title), 2097o.alt || (o.alt = ""), "" === o.alt && (o.role = "presentation"), o.src || (!0 === s.nosrc_substitute ? o.src = "data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" : s.nosrc_substitute && (o.src = s.nosrc_substitute))), 2098"input" == l && (o.type || (o.type = "text")), "main" == l && (o.role || (o.role = "main")), 2099"html" == l && (n += "<!DOCTYPE html>"), a.bemto_custom_tag.call({ 2100block: function() { 2101i && i && i(); 2102}, 2103attributes: o 2104}, l, t), "list" === k[r - 1] && "li" != l && (n += "</li>"); 2105}; 2106var x = [], k = [ "block" ]; 2107a.b = i = function(t) { 2108var i = this && this.block, n = this && this.attributes || {}, o = w(); 2109t && void 0 !== t.prefix && (o.prefix = t.prefix); 2110var s = t && t.tag || ("string" == typeof t ? t : ""), c = t && t.isElement, u = t && t.metadata, f = !1; 2111if (n.class) { 2112var p = n.class; 2113p instanceof e && (p = p.join(" ")), p = p.split(" "); 2114var m = [], d = !0, h = []; 2115if (function() { 2116var e = p; 2117if ("number" == typeof e.length) for (var t = 0, i = e.length; t < i; t++) { 2118var n = e[t], a = {}, u = m[m.length - 1], _ = !1; 2119if (n.match(/^[A-Z-]+[A-Z0-9-]?$/)) s = n.toLowerCase(); else if (d && c && (a.context = x[x.length - 1]), 2120(w = n.match(new r("^(?!" + o.element + "[A-Za-z0-9])" + o.modifier + "(.+)$"))) && u && u.name) u.modifiers || (u.modifiers = []), 2121u.modifiers.push(w[1]); else { 2122(k = n.match(new r("^(?!" + o.modifier + "[A-Za-z0-9])" + o.element + "(.+)$"))) && (a.context = x[x.length - 1], 2123n = k[1]), (A = n.match(new r("^(.*[A-Za-z0-9])(?!" + o.modifier + "$)" + o.element + "$"))) && (n = A[1], 2124a.is_context = !0, _ = !0, f = !0, c = !1), (E = n.match(new r("^(.*?[A-Za-z0-9])(?!" + o.element + "[A-Za-z0-9])" + o.modifier + "(.+)$"))) && (n = E[1], 2125a.modifiers || (a.modifiers = []), a.modifiers.push(E[2])); 2126var g = "", v = "()?"; 2127if (o.prefix) { 2128"string" == typeof (O = o.prefix) && (O = { 2129"": O 2130}); 2131var y = []; 2132O instanceof l && (function() { 2133var e = O; 2134if ("number" == typeof e.length) for (var t = 0, i = e.length; t < i; t++) { 2135var n = e[t]; 2136"string" == typeof t && "" != t && -1 == y.indexOf(t) && y.push(t), "string" == typeof n && "" != n && -1 == y.indexOf(n) && y.push(n); 2137} else { 2138i = 0; 2139for (var t in e) { 2140i++; 2141n = e[t]; 2142"string" == typeof t && "" != t && -1 == y.indexOf(t) && y.push(t), "string" == typeof n && "" != n && -1 == y.indexOf(n) && y.push(n); 2143} 2144} 2145}.call(this), v = "(" + y.join("|") + ")?"), (Z = n.match(new r("^" + v + "([A-Za-z0-9]+.*)$"))) && (n = Z[2], 2146g = Z[1] || "", void 0 !== (g = O[g]) && !0 !== g || (g = Z[1])); 2147} 2148a.prefix = (g || "").replace(/\-/g, "%DASH%").replace(/\_/g, "%UNDERSCORE%"), _ && n.match(/^[a-zA-Z0-9]+.*/) && h.push(a.context ? a.context + o.element + n : a.prefix + n), 2149a.name = n, d = !1, a.context && a.context.length > 1 ? function() { 2150var e = a.context; 2151if ("number" == typeof e.length) for (var t = 0, i = e.length; t < i; t++) { 2152var n = e[t]; 2153(o = b(a)).context = [ n ], m.push(o); 2154} else { 2155i = 0; 2156for (var t in e) { 2157i++; 2158var o; 2159n = e[t]; 2160(o = b(a)).context = [ n ], m.push(o); 2161} 2162} 2163}.call(this) : m.push(a); 2164} 2165} else { 2166i = 0; 2167for (var t in e) { 2168i++; 2169var w; 2170n = e[t], a = {}, u = m[m.length - 1], _ = !1; 2171if (n.match(/^[A-Z-]+[A-Z0-9-]?$/)) s = n.toLowerCase(); else if (d && c && (a.context = x[x.length - 1]), 2172(w = n.match(new r("^(?!" + o.element + "[A-Za-z0-9])" + o.modifier + "(.+)$"))) && u && u.name) u.modifiers || (u.modifiers = []), 2173u.modifiers.push(w[1]); else { 2174var k, A, E; 2175(k = n.match(new r("^(?!" + o.modifier + "[A-Za-z0-9])" + o.element + "(.+)$"))) && (a.context = x[x.length - 1], 2176n = k[1]), (A = n.match(new r("^(.*[A-Za-z0-9])(?!" + o.modifier + "$)" + o.element + "$"))) && (n = A[1], 2177a.is_context = !0, _ = !0, f = !0, c = !1), (E = n.match(new r("^(.*?[A-Za-z0-9])(?!" + o.element + "[A-Za-z0-9])" + o.modifier + "(.+)$"))) && (n = E[1], 2178a.modifiers || (a.modifiers = []), a.modifiers.push(E[2])); 2179g = "", v = "()?"; 2180if (o.prefix) { 2181var O; 2182"string" == typeof (O = o.prefix) && (O = { 2183"": O 2184}); 2185var Z; 2186y = []; 2187O instanceof l && (function() { 2188var e = O; 2189if ("number" == typeof e.length) for (var t = 0, i = e.length; t < i; t++) { 2190var n = e[t]; 2191"string" == typeof t && "" != t && -1 == y.indexOf(t) && y.push(t), "string" == typeof n && "" != n && -1 == y.indexOf(n) && y.push(n); 2192} else { 2193i = 0; 2194for (var t in e) { 2195i++; 2196n = e[t]; 2197"string" == typeof t && "" != t && -1 == y.indexOf(t) && y.push(t), "string" == typeof n && "" != n && -1 == y.indexOf(n) && y.push(n); 2198} 2199} 2200}.call(this), v = "(" + y.join("|") + ")?"), (Z = n.match(new r("^" + v + "([A-Za-z0-9]+.*)$"))) && (n = Z[2], 2201g = Z[1] || "", void 0 !== (g = O[g]) && !0 !== g || (g = Z[1])); 2202} 2203a.prefix = (g || "").replace(/\-/g, "%DASH%").replace(/\_/g, "%UNDERSCORE%"), _ && n.match(/^[a-zA-Z0-9]+.*/) && h.push(a.context ? a.context + o.element + n : a.prefix + n), 2204a.name = n, d = !1, a.context && a.context.length > 1 ? function() { 2205var e = a.context; 2206if ("number" == typeof e.length) for (var t = 0, i = e.length; t < i; t++) { 2207var n = e[t]; 2208(o = b(a)).context = [ n ], m.push(o); 2209} else { 2210i = 0; 2211for (var t in e) { 2212i++; 2213var o; 2214n = e[t]; 2215(o = b(a)).context = [ n ], m.push(o); 2216} 2217} 2218}.call(this) : m.push(a); 2219} 2220} 2221} 2222}.call(this), !c && !h.length && m[0] && m[0].name && m[0].name.match(/^[a-zA-Z0-9]+.*/) && (m[0].is_context = !0, 2223h.push(m[0].context ? m[0].context + o.element + m[0].name : m[0].prefix + m[0].name), 2224f = !0), h.length && (o.flat_elements && function() { 2225var e = h; 2226if ("number" == typeof e.length) for (var t = 0, i = e.length; t < i; t++) { 2227(n = e[t].match(new r("^(.*?[A-Za-z0-9])(?!" + o.modifier + "[A-Za-z0-9])" + o.element + ".+$"))) && (h[t] = n[1]); 2228} else { 2229i = 0; 2230for (var t in e) { 2231var n; 2232i++, (n = e[t].match(new r("^(.*?[A-Za-z0-9])(?!" + o.modifier + "[A-Za-z0-9])" + o.element + ".+$"))) && (h[t] = n[1]); 2233} 2234} 2235}.call(this), x[x.length] = h), m.length) { 2236var _ = []; 2237(function() { 2238var e = m; 2239if ("number" == typeof e.length) for (var t = 0, i = e.length; t < i; t++) { 2240if ((a = e[t]).name) { 2241var n = a.prefix; 2242a.context && (n = a.context + o.output_element), _.push(n + a.name), a.modifiers && function() { 2243var e = a.modifiers; 2244if ("number" == typeof e.length) for (var t = 0, i = e.length; t < i; t++) { 2245var s = e[t]; 2246_.push(n + a.name + o.output_modifier + s); 2247} else { 2248i = 0; 2249for (var t in e) { 2250i++; 2251s = e[t]; 2252_.push(n + a.name + o.output_modifier + s); 2253} 2254} 2255}.call(this); 2256} 2257} else { 2258i = 0; 2259for (var t in e) { 2260var a; 2261if (i++, (a = e[t]).name) { 2262n = a.prefix; 2263a.context && (n = a.context + o.output_element), _.push(n + a.name), a.modifiers && function() { 2264var e = a.modifiers; 2265if ("number" == typeof e.length) for (var t = 0, i = e.length; t < i; t++) { 2266var s = e[t]; 2267_.push(n + a.name + o.output_modifier + s); 2268} else { 2269i = 0; 2270for (var t in e) { 2271i++; 2272s = e[t]; 2273_.push(n + a.name + o.output_modifier + s); 2274} 2275} 2276}.call(this); 2277} 2278} 2279} 2280}).call(this); 2281var g = o.class_delimiter; 2282g = g ? " " + g + " " : " ", n.class = _.join(g).replace(/%DASH%/g, "-").replace(/%UNDERSCORE%/g, "_"); 2283} else n.class = void 0; 2284} 2285i ? a.bemto_tag.call({ 2286block: function() { 2287i && i(); 2288}, 2289attributes: n 2290}, s, u) : a.bemto_tag.call({ 2291attributes: n 2292}, s, u), !c && f && (x = x.splice(0, x.length - 1)), k = k.splice(0, k.length - 1); 2293}, a.e = i = function(e) { 2294var t = this && this.block, i = this && this.attributes || {}; 2295(e = e && "string" == typeof e ? { 2296tag: e 2297} : e || {}).isElement = !0, a.b.call({ 2298block: function() { 2299t && t(); 2300},
2301attributes: i 2302}, e); 2303}, a.b.call({ 2304block: function() { 2305a.e.call({ 2306block: function() { 2307m ? a.e.call({ 2308block: function() { 2309a.e.call({ 2310block: function() { 2311n += o.escape(null == (i = _("auth.login_form.title")) ? "" : i); 2312}, 2313attributes: { 2314class: "title" 2315} 2316}, "h4"), a.e.call({ 2317block: function() { 2318n += "/"; 2319}, 2320attributes: { 2321class: "header-delimiter" 2322} 2323}), a.e.call({ 2324block: function() { 2325a.e.call({ 2326block: function() { 2327n += o.escape(null == (i = _("auth.login_form.registration_link")) ? "" : i); 2328}, 2329attributes: { 2330class: "button-link __register", 2331type: "button", 2332"data-switch": "register-form" 2333} 2334}, "button"); 2335}, 2336attributes: { 2337class: "header-aside" 2338} 2339}); 2340}, 2341attributes: { 2342class: "line __header" 2343} 2344}) : h ? n = n + "<p>" + (null == (i = h) ? "" : i) + "</p>" : (n = n + "<p>" + o.escape(null == (i = _("auth.if_you_dont_have_account")) ? "" : i) + " ", 2345a.e.call({ 2346block: function() { 2347n += o.escape(null == (i = _("auth.signup")) ? "" : i); 2348}, 2349attributes: { 2350class: "button-link __register", 2351type: "button", 2352"data-switch": "register-form" 2353} 2354}, "button"), n += "</p>"), a.e.call({ 2355block: function() { 2356a.e.call({ 2357attributes: { 2358class: "line __notification", 2359"data-notification": o.escape(!0) 2360} 2361}), a.e.call({ 2362block: function() { 2363a.e.call({ 2364block: function() { 2365a.e.call({ 2366block: function() { 2367n += o.escape(null == (i = _("auth.email_field_label") + ":") ? "" : i); 2368}, 2369attributes: { 2370class: "label", 2371for: "auth-email" 2372} 2373}, "label"), a.b.call({ 2374block: function() { 2375a.e.call({ 2376attributes: { 2377class: "control", 2378id: "auth-email", 2379name: "email", 2380type: "email", 2381autofocus: o.escape(!0), 2382tabindex: "1" 2383} 2384}, "input"); 2385}, 2386attributes: { 2387class: "text-input __input" 2388} 2389}, "span"); 2390}, 2391attributes: { 2392class: "form-control" 2393} 2394}), a.e.call({ 2395block: function() { 2396a.e.call({ 2397block: function() { 2398n += o.escape(null == (i = _("auth.password_field_label") + ":") ? "" : i); 2399}, 2400attributes: { 2401class: "label", 2402for: "auth-password" 2403} 2404}, "label"), a.e.call({ 2405block: function() { 2406n += o.escape(null == (i = _("auth.login_form.forgot")) ? "" : i); 2407}, 2408attributes: { 2409class: "aside __forgot __button-link", 2410type: "button", 2411"data-switch": "forgot-form", 2412tabindex: "4" 2413} 2414}, "button"), a.b.call({ 2415block: function() { 2416a.e.call({ 2417attributes: { 2418class: "control", 2419id: "auth-password", 2420type: "password", 2421name: "password", 2422tabindex: "2" 2423} 2424}, "input"); 2425}, 2426attributes: { 2427class: "text-input _with-aside __input" 2428} 2429}, "span"); 2430}, 2431attributes: { 2432class: "form-control" 2433} 2434}), a.e.call({ 2435block: function() { 2436a.b.call({ 2437block: function() { 2438a.e.call({ 2439block: function() { 2440n += o.escape(null == (i = _("auth.login_form.login_button")) ? "" : i); 2441}, 2442attributes: { 2443class: "text" 2444} 2445}, "span"); 2446}, 2447attributes: { 2448class: "button _action", 2449type: "submit", 2450tabindex: "3" 2451} 2452}, "button"), m && a.e.call({ 2453block: function() { 2454n += o.escape(null == (i = _("auth.login_form.cancel")) ? "" : i); 2455}, 2456attributes: { 2457class: "close-link tablet-only modal__close", 2458href: "#" 2459} 2460}, "a"); 2461}, 2462attributes: { 2463class: "form-control __submit" 2464} 2465}); 2466}, 2467attributes: { 2468class: "line __row __row-wrap" 2469} 2470}), a.e.call({ 2471block: function() { 2472a.e.call({ 2473block: function() { 2474n += o.escape(null == (i = _("auth.login_form.login_using_socialnetworks")) ? "" : i); 2475}, 2476attributes: { 2477class: "social-logins-title" 2478} 2479}, "h5"), n += o.escape(null == (i = " ") ? "" : i), function() { 2480var e = d; 2481if ("number" == typeof e.length) for (var t = 0, s = e.length; t < s; t++) { 2482let s = [ "social-login", "_" + (l = e[t]).id, "__social-login" ]; 2483a.b.call({ 2484block: function() { 2485n += o.escape(null == (i = l.name) ? "" : i); 2486}, 2487attributes: { 2488class: o.classes([ s ], [ !0 ]), 2489"data-provider": o.escape(l.id) 2490} 2491}, "button"), n += o.escape(null == (i = " ") ? "" : i); 2492} else { 2493s = 0; 2494for (var t in e) { 2495var l; 2496s++; 2497let r = [ "social-login", "_" + (l = e[t]).id, "__social-login" ]; 2498a.b.call({ 2499block: function() { 2500n += o.escape(null == (i = l.name) ? "" : i); 2501}, 2502attributes: { 2503class: o.classes([ r ], [ !0 ]), 2504"data-provider": o.escape(l.id) 2505} 2506}, "button"), n += o.escape(null == (i = " ") ? "" : i); 2507} 2508} 2509}.call(this); 2510}, 2511attributes: { 2512class: "line __social-logins" 2513} 2514}); 2515}, 2516attributes: { 2517class: "body" 2518} 2519}); 2520}, 2521attributes: { 2522class: "form", 2523action: "#" 2524} 2525}, "form"); 2526}, 2527attributes: { 2528class: o.classes([ [ "login-form", m ? "_modal" : "_inline" ] ], [ !0 ]), 2529"data-form": "login" 2530} 2531}); 2532}.call(this, "Array" in s ? s.Array : "undefined" != typeof Array ? Array : void 0, "Date" in s ? s.Date : "undefined" != typeof Date ? Date : void 0, "Error" in s ? s.Error : "undefined" != typeof Error ? Error : void 0, "Object" in s ? s.Object : "undefined" != typeof Object ? Object : void 0, "RegExp" in s ? s.RegExp : "undefined" != typeof RegExp ? RegExp : void 0, "bemto_settings_default_tag" in s ? s.bemto_settings_default_tag : "undefined" != typeof bemto_settings_default_tag ? bemto_settings_default_tag : void 0, "bemto_settings_element" in s ? s.bemto_settings_element : "undefined" != typeof bemto_settings_element ? bemto_settings_element : void 0, "bemto_settings_modifier" in s ? s.bemto_settings_modifier : "undefined" != typeof bemto_settings_modifier ? bemto_settings_modifier : void 0, "bemto_settings_prefix" in s ? s.bemto_settings_prefix : "undefined" != typeof bemto_settings_prefix ? bemto_settings_prefix : void 0, "inModal" in s ? s.inModal : "undefined" != typeof inModal ? inModal : void 0, "providers" in s ? s.providers : [ {
2533name: "Github", 2534id: "github" 2535}, { 2536name: "Discord", 2537id: "discord" 2538}, { 2539name: "Facebook", 2540id: "facebook" 2541}, { 2542name: "Google", 2543id: "google" 2544} ], "subtitle" in s ? s.subtitle : "undefined" != typeof subtitle ? subtitle : void 0, "t" in s ? s.t : "undefined" != typeof t ? t : void 0), 2545n; 2546}; 2547}, 25486188: function(e, t, i) { 2549var n = { 2550"./en.yml": 6526 2551}; 2552function o(e) { 2553var t = a(e); 2554return i(t); 2555} 2556function a(e) { 2557if (!i.o(n, e)) { 2558var t = new Error("Cannot find module '" + e + "'"); 2559throw t.code = "MODULE_NOT_FOUND", t; 2560} 2561return n[e]; 2562} 2563o.keys = function() { 2564return Object.keys(n); 2565}, o.resolve = a, e.exports = o, o.id = 6188; 2566}, 25676526: function(e, t, i) { 2568"use strict"; 2569i.r(t), t.default = { 2570server_connection_error: "Server connection error.", 2571server_request_timeout: "Server request timeout.", 2572request_aborted: "Request was aborted.", 2573no_response: "No response from server.", 2574server_error: "Server error (code #{status}), try again later.", 2575invalid_format: "Invalid response format." 2576}; 2577}, 25788242: function(e, t, i) { 2579const n = i(9220).F, o = i(9907), a = i(773); 2580e.exports = function(e, t) { 2581return function(e) { 2582e.t = a, e.thumb = n, e.lang = o.lang, e.env = o.env; 2583}(t = t ? Object.create(t) : {}), e(t); 2584}; 2585}, 25869220: function(e, t) { 2587t.F = function(e, t, i) { 2588if (!e) return e; 2589let n = window.devicePixelRatio; 2590i *= n; 2591let o = (t *= n) <= 160 && i <= 160 ? "t" : t <= 320 && i <= 320 ? "m" : t <= 640 && i <= 640 ? "i" : t <= 1024 && i <= 1024 ? "h" : ""; 2592return e.slice(0, e.lastIndexOf(".")) + o + e.slice(e.lastIndexOf(".")); 2593}; 2594} 2595} ]); 2596//# sourceMappingURL=authClient-616.e2bc65ff7d02701ced64.js.map
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.