1import { a as Eb, b as Re, d as $t, f as Qi, g as Oe, n as J, p as Zi, t as C, y as LA } from "./chunk-i2pl4wu9.js"; 2import { $i as de, Ai as Dt, At as qe, Bi as ht, Bn as Rn, Ci as Ln, Cn as _a, Co as ge, Cr as Cb, Ct as Ru, Di as BA, Dn as Nb, Do as Tb, Dt as DA, E as Gt, Ei as R, Er as Lu, Et as mt, F as Bn, Fi as kb, Fo as Ce, G as ce, Ga as fr, Gi as Ma, Gn as xb, Ha as le, Hi as Sl, Ho as FA, Hr as Bu, I as Dn, In as gr, It as zA, Ji as GA, Kn as ei, Kt as ys, L as Ra, Ln as VA, Lt as Ib, Ma as vr, Mo as It, Na as Hs, Nr as Pe, On as Vt, Pi as Us, Pr as HA, Pt as UA, Qi as Ob, Ri as WA, Rn as jA, Ro as We, S as YA, St as KA, T as Hr, Ti as Pi, Tt as Pb, Ua as La, Ui as Fe, Un as ci, Ut as Ab, V as $b, Vr as zi, W as f, Wa as bl, Wi as be, Wt as Ws, Xi as wt, Xr as qA, Xt as yl, Y as je, Ya as Du, Yn as XA, Z as Xe, _ as er, _i as _b, _o as Mb, _r as Je, _t as di, a as Fu, ao as N, ba as Ke, bn as A, bo as zu, bt as Ne, do as tr, ei as JA, en as Rb, eo as ne, et as pe, fi as ft, fn as QA, fr as U, g as ze, ga as Gi, gn as Ur, gr as Gu, gt as ZA, h as e$, hi as Ot, hn as Vu, ht as W, in as Te, jn as Ae, jo as ui, jt as Fn, kn as Lb, kt as js, l as t$, mo as Bb, mt as Ie, n as Sr, na as br, ni as Db, oi as ve, or as i$, ot as Fb, pi as r$, po as ws, q as gt, qi as Ge, qn as Hu, ro as te, rr as zb, rt as P, si as ot, sn as s$, ta as Uu, ti as Nt, tn as vi, to as Wu, tr as xe, tt as Gb, ui as zn, un as Le, ut as Vb, va as Si, vi as _t, vr as Ys, vt as bi, wa as Hb, wi as Ks, xa as Gn, xo as Ub, xr as ir, xt as ti, yi as n$, yn as Ba, za as Es, zi as ie, zt as Qe } from "./chunk-ql746sly.js"; 3import { K as a$, S as o$, U as Vn, V as qs, _ as ju, j as rr, l as Vi, t as Wb, x as jb } from "./chunk-hcheit1f.js"; 4import { a as Yu, l as Yb, m as l$, p as wl, t as Ku, v as Kb } from "./chunk-b11o3szq.js"; 5import { D as dt, Dt as Xs, F as qb, Ft as Xb, H as Da, K as El, Mt as Jb, Pt as c$, R as d$, St as qu, Tt as u$, d as sr, dt as p$, gt as Qb, j as it, kt as Cl, l as h$, mt as Wr, o as Xu, p as m$, ut as Ye, v as f$, vt as Zb, wt as g$ } from "./chunk-fz42rx6r.js"; 6import { r as Ju, t as Qu } from "./chunk-icjzvqcx.js"; 7import { n as jr, t as Cs } from "./chunk-jbaamz4y.js"; 8import { A as Hn, D as ey, E as Zu, a as Fa, b as Un, d as v$, h as S$, j as ty, k as Wn, l as b$, o as y$, u as w$, w as E$, y as C$ } from "./chunk-c01xxjhs.js"; 9import { $ as Hi, B as iy, G as N$, J as st, L as Nl, M as yr, N as ry, O as T$, P as k$, Q as x$, S as Tl, T as $e, Y as I$, b as Ui, c as za, ct as kl, et as Ai, gt as sy, h as O$, ht as ny, j as P$, l as A$, lt as $$, m as ay, mt as _$, n as Js, pt as lt, rt as M$, t as R$, w as L$, x as xl, z as Yr } from "./chunk-jtpxiaxj.js"; 10import { o as oy, t as ly } from "./chunk-jaxwt8s1.js"; 11import { d as B$, h as D$, i as F$, j as jn, l as z$, m as G$, s as Il, v as cy } from "./chunk-nhl74n6z.js"; 12import { i as wr, n as dy, o as Et, r as Ol, t as he } from "./chunk-br9ckdzm.js"; 13import { a as V$, c as ep, d as ii, g as H$, h as Ga, i as U$, l as uy, m as W$, p as yi, r as Va, t as j$, u as Y$ } from "./chunk-bl09vhvv.js"; 14import { a as Kr, c as Ns, r as K$, s as Pl, t as q$ } from "./chunk-n63cutws.js"; 15import { Ar as py, C as tp, Dn as Ht, Et as X$, Fn as hy, Ht as J$, It as my, Jn as Q$, Ln as qr, Mr as Er, Mt as fy, O as Z$, Or as gy, Pn as vy, S as e_, T as ip, Tn as t_, Tt as Al, Vn as i_, Wt as r_, Z as s_, _ as Sy, _n as by, an as n_, b as yy, cr as a_, ct as wy, dr as Ey, en as Cy, fn as o_, ft as Ny, h as Ty, hr as ky, i as rp, in as l_, ir as c_, it as sp, jr as xy, l as np, lt as d_, nt as u_, p as Iy, qn as Oy, st as p_, u as h_, vt as m_, x as f_, yt as g_, zn as Py } from "./chunk-eu7ozsb7.js"; 16import { i as v_, n as Cr, r as nr } from "./chunk-gpn04stg.js"; 17import { n as Ut, t as Ts } from "./chunk-lf77xnpz.js"; 18import { c as S_, d as Ay, f as $y, i as ks, p as Ha, t as Nr } from "./chunk-bnt36dw9.js"; 19import { n as _y, r as ap } from "./chunk-d6iooz3w.js"; 20import { n as ri, r as xs, t as Wt } from "./chunk-jouxu15i.js"; 21import { n as b_, t as y_ } from "./chunk-c8btpjog.js"; 22import { At as w_, F as E_, ht as C_, k as N_, mt as T_, pt as k_, tt as op, ut as My, vt as x_ } from "./chunk-dkzazc5t.js"; 23import { Dn as Ry, F as Ly, Hn as I_, Jn as O_, Kn as By, L as P_, Pt as A_, Qn as $_, Yn as __, b as M_, c as R_, f as L_, h as Dy, ht as B_, mn as Yn, rt as D_, tr as F_, vn as z_ } from "./chunk-b0owf95e.js"; 24import { a as Ua, i as ee } from "./chunk-kanq2829.js"; 25import { c as G_, i as Kn, o as $l, s as Is } from "./chunk-hv7vgf8e.js"; 26import { n as Fy, t as zy } from "./chunk-odv3lgpg.js"; 27import { a as V_, r as H_ } from "./chunk-jnhmm4s0.js"; 28import { c as U_, l as W_ } from "./chunk-c9i0kray.js"; 29import { r as _l, t as Wi } from "./chunk-e73ndlg5.js"; 30import { r as j_, t as Y_ } from "./chunk-ggzcwtgt.js"; 31import { n as lp, t as cp } from "./chunk-mzi4pjon.js"; 32import { n as Gy, t as dp } from "./chunk-gd9lkrcj.js"; 33import { i as K_, o as q_ } from "./chunk-fht9rnel.js"; 34import { N as Vy, P as Ml, i as X_, r as J_ } from "./chunk-f74tx1a3.js"; 35import { n as Hy, t as Q_ } from "./chunk-nhq7wupa.js"; 36import { n as Uy, t as Wy } from "./chunk-hh163lda.js"; 37import { t as Z } from "./chunk-o4f8w5yc.js"; 38var jy; 39function Yy() { 40 return (Yy = Z((() => { 41 de(), jy = (() => { 42 class e { 43 _allPaymentsBlocked = le(!1); 44 allPaymentsBlocked = this._allPaymentsBlocked.asReadonly(); 45 _interactionActive = le(null); 46 interactionActive = ne(() => !!this._interactionActive()); 47 _continueAction = le(null); 48 continueAction = this._continueAction.asReadonly(); 49 isBlocked = ne(() => this._allPaymentsBlocked() || this.interactionActive()); 50 setAllPaymentsBlocked(t) { 51 this._allPaymentsBlocked.set(t); 52 } 53 setInteractionActive(t) { 54 this._interactionActive.set(t); 55 } 56 confirmContinue() { 57 let t = this._interactionActive(); 58 t && (this._continueAction.set(t), this._interactionActive.set(null)); 59 } 60 consumeContinueAction() { 61 this._continueAction.set(null); 62 } 63 resetInteraction() { 64 this._interactionActive.set(null), this._continueAction.set(null); 65 } 66 reset() { 67 this._allPaymentsBlocked.set(!1), this._interactionActive.set(null), this._continueAction.set(null); 68 } 69 static ɵfac = function(t) { 70 return new (t || e)(); 71 }; 72 static ɵprov = R({ 73 token: e, 74 factory: e.ɵfac, 75 providedIn: "root" 76 }); 77 } 78 return e; 79 })(); 80 })))(); 81} 82function Z_(e) { 83 return e.get(Xr); 84} 85function eM(e) { 86 let i = e.get(mp); 87 return f(my).addStyle("payments-image-variables", i.imageVariablesCSS), i; 88} 89function tM(e) { 90 return e.get(Ya); 91} 92function iM(e) { 93 return e.get(Ll); 94} 95function rM(e) { 96 return e.createForProduct(Qs, { 97 product: it.PAYMENTS, 98 area: "payments", 99 forwardProductApiRequestHeader: !0 100 }); 101} 102function sM(e) { 103 return e.get(Ka); 104} 105function nM(e) { 106 return e.get(qn); 107} 108function aM(e) { 109 return e.get(fp); 110} 111function oM(e) { 112 return e.get(gp); 113} 114function Wa(e, i) { 115 if (!e) return; 116 let t = e[i ? "mobile" : "desktop"] ?? e.default; 117 if (t === void 0) return e; 118 try { 119 return JSON.parse(t); 120 } catch { 121 return; 122 } 123} 124function lM(e, i) { 125 let t = e.family !== "CC" && !!e.instrument, r = ""; 126 return t && (r = e.paymentAccountDetails?.paymentAccountId ?? ""), r || (r = i || e.instrument || ""), r; 127} 128function cM(e, i, t) { 129 let r = e.family !== "CC", s = i || ""; 130 return !s && r && (s = e.instrumentId || t || ""), s; 131} 132function Ky(e) { 133 return e.instrument ?? e.instrumentId ?? e.name; 134} 135function qy(e) { 136 let i = e?.name?.toLowerCase() ?? "";
137 return e?.family === "CC" || e?.name === Zs.TRUELAYER || Sp.includes(i); 138} 139function dM(e) { 140 let i = e?.name, t = i?.toLowerCase() ?? ""; 141 return (i === Zs.TRUELAYER || Sp.includes(t)) && !e?.popularOption ? e?.bankName ?? "" : e?.contentMetadata?.displayName || i || ""; 142} 143function Xy(e) { 144 if (!qy(e) || !e?.instrumentId) return ""; 145 let i = String(e.instrumentId); 146 return i.length > 4 ? ` \u2022 ${i.slice(-4)}` : ` \u2022 ${i}`; 147} 148function uM() { 149 return new wp("MainCashier"); 150} 151function pM() { 152 return new wp("BetSlipQD"); 153} 154function hM(e) { 155 return e.get(qa); 156} 157function mM(e) { 158 return e.get(Xa); 159} 160function fM(e) { 161 return e.get(Ep); 162} 163function gM(e) { 164 return e.get(Np); 165} 166function vM(e) { 167 return e.get(Tp); 168} 169function SM(e) { 170 return e.get(kp); 171} 172function bM(e) { 173 return e.get(xp); 174} 175function yM(e, i, t) { 176 return new Promise((r) => { 177 let s = e.createElement("iframe"), n = `nocache=${Date.now()}`; 178 s.src = t.includes("?") ? `${t}&${n}` : `${t}?${n}`, s.style.display = "none"; 179 let a = !1, o, l = () => { 180 a || (a = !0, i.clearTimeout(o), s.remove(), r()); 181 }; 182 s.onload = l, o = i.setTimeout(l, 2e3), e.body.appendChild(s); 183 }); 184} 185var up, pp, Rl, Jy, Xr, hp, ja, mp, Ya, Ll, Qs, Bl, Ka, Dl, qn, fp, gp, Fl, Zs, en, vp, Qy, Zy, Sp, ew, tw, iw, rw, sw, tn, zl, bp, nw, yp, wp, qa, Xa, Ep, aw, Cp, Np, Tp, kp, xp, ow, lw, cw, dw, uw, Ip, Op, pw; 186function Os() { 187 return (Os = Z((() => { 188 Re(), de(), wl(), Ye(), Ju(), Hn(), Et(), yi(), st(), Ts(), xs(), Ht(), up = (function(e) { 189 return e.MainCashier = "MainCashier", e.BetSlipQd = "BetSlipQd", e.QdOverlay = "QdOverlay", e; 190 })(up || {}), pp = (() => { 191 class e { 192 _authDetails = le({ 193 authCode: "", 194 authFlag: !1, 195 cashierType: void 0 196 }); 197 initialize() { 198 this.updateAuthDetails({ 199 authCode: "", 200 authFlag: !1, 201 cashierType: void 0 202 }); 203 } 204 getAuthDetails() { 205 return this._authDetails(); 206 } 207 updateAuthDetails(t) { 208 this._authDetails.set(t); 209 } 210 static ɵfac = function(t) { 211 return new (t || e)(); 212 }; 213 static ɵprov = R({ 214 token: e, 215 factory: e.ɵfac, 216 providedIn: "root" 217 }); 218 } 219 return e; 220 })(), Rl = (() => { 221 class e { 222 httpBackend = f(Kb); 223 http; 224 initialize(t) { 225 let r = this.createInterceptorChain(this.httpBackend, t); 226 this.http = new Yu(r); 227 } 228 get httpClient() { 229 return this.http ? this.http : (this.initialize([]), this.http); 230 } 231 createInterceptorChain(t, r) { 232 let s = t; 233 return [...r].reverse().forEach((n) => { 234 s = new Jy(s, n); 235 }), s; 236 } 237 static ɵfac = function(t) { 238 return new (t || e)(); 239 }; 240 static ɵprov = R({ 241 token: e, 242 factory: e.ɵfac, 243 providedIn: "root" 244 }); 245 } 246 return e; 247 })(), Jy = class { 248 next; 249 interceptor; 250 constructor(e, i) { 251 this.next = e, this.interceptor = i; 252 } 253 handle(e) { 254 return this.interceptor.intercept(e, this.next); 255 } 256 }, ht(), Xr = (() => { 257 let e = class ub { 258 host; 259 useV2DepositApis; 260 paymentMethodUrlAliases; 261 static ɵfac = function(t) { 262 return new (t || ub)(); 263 }; 264 static ɵprov = R({ 265 token: ub, 266 factory: function(t) { 267 let r = null; 268 return t ? r = new t() : r = Z_(ve(sr)), r; 269 }, 270 providedIn: "root" 271 }); 272 }; 273 return e = mt([Xs({ 274 key: "paCashier", 275 product: it.PAYMENTS 276 })], e), e; 277 })(), hp = (() => { 278 class e { 279 customHttpClientService = f(Rl); 280 injector = f(ui); 281 authenticateUser(t, r) { 282 let s = this.injector.get(Xr).host, n = { 283 userId: t.userId ?? "", 284 labelInfo: { 285 brandId: t.brandId ?? "", 286 productId: t.productId ?? "", 287 channelId: t.channelId ?? "" 288 } 289 }; 290 t.LANG_ID && (n.languageCode = t.LANG_ID); 291 let a = { 292 headers: new Ku({ 293 "Content-Type": "application/json", 294 Accept: "application/json", 295 "sso-key": t.sessionKey || "" 296 }), 297 observe: "response", 298 withCredentials: !0 299 }; 300 return this.customHttpClientService.httpClient.post(s + r, n, a); 301 } 302 static ɵfac = function(t) { 303 return new (t || e)(); 304 }; 305 static ɵprov = R({ 306 token: e, 307 factory: e.ɵfac, 308 providedIn: "root" 309 }); 310 } 311 return e; 312 })(), ja = (() => { 313 class e { 314 customHttpClientService = f(Rl); 315 authService = f(hp); 316 injector = f(ui);
317 authDetailsStore = f(pp); 318 getHttpHeaders(t) { 319 let r = { Accept: "application/json" }; 320 return this.authDetailsStore.getAuthDetails().authCode && (r["auth-code"] = this.authDetailsStore.getAuthDetails().authCode), t !== "GET" && (r["Content-Type"] = "application/json"), new Ku(r); 321 } 322 getHttpOptions(t) { 323 return { 324 headers: this.getHttpHeaders(t), 325 observe: "response", 326 withCredentials: !0 327 }; 328 } 329 post(t, r) { 330 let s = this.injector.get(Xr).host; 331 return this.customHttpClientService.httpClient.post(s + t, r, this.getHttpOptions()).pipe(xe((n) => n.body)); 332 } 333 put(t, r) { 334 let s = this.injector.get(Xr).host; 335 return this.customHttpClientService.httpClient.put(s + t, r, this.getHttpOptions()).pipe(xe((n) => n.body)); 336 } 337 get(t) { 338 let r = this.injector.get(Xr).host; 339 return this.customHttpClientService.httpClient.get(r + t, this.getHttpOptions("GET")).pipe(xe((s) => s.body)); 340 } 341 postPgwRequest(t, r, s) { 342 let n = { 343 "Content-Type": "application/json; charset=utf-8", 344 Accept: "application/json", 345 token: s || "" 346 }; 347 return this.customHttpClientService.httpClient.post(t, r, { headers: n }).pipe(xe((a) => a.body)); 348 } 349 static ɵfac = function(t) { 350 return new (t || e)(); 351 }; 352 static ɵprov = R({ 353 token: e, 354 factory: e.ɵfac, 355 providedIn: "root" 356 }); 357 } 358 return e; 359 })(), ht(), mp = (() => { 360 let e = class pb { 361 imageVariablesCSS; 362 assets; 363 static ɵfac = function(t) { 364 return new (t || pb)(); 365 }; 366 static ɵprov = R({ 367 token: pb, 368 factory: function(t) { 369 let r = null; 370 return t ? r = new t() : r = eM(ve(sr)), r; 371 }, 372 providedIn: "root" 373 }); 374 }; 375 return e = mt([Xs({ 376 key: "paAssets", 377 product: it.PAYMENTS 378 })], e), e; 379 })(), ht(), Ya = (() => { 380 let e = class wu extends ri { 381 links; 382 static ɵfac = (() => { 383 let t; 384 return function(r) { 385 return (t || (t = Fe(wu)))(r || wu); 386 }; 387 })(); 388 static ɵprov = R({ 389 token: wu, 390 factory: function(t) { 391 let r = null; 392 return t ? r = new t() : r = tM(ve(Wt)), r; 393 }, 394 providedIn: "root" 395 }); 396 }; 397 return e = mt([Ut({ 398 key: "paLinks", 399 product: it.PAYMENTS 400 })], e), e; 401 })(), ht(), Ll = (() => { 402 let e = class hb { 403 loadCookieUpdate; 404 host; 405 enableIFrameV2; 406 renderNameOnCard; 407 static ɵfac = function(t) { 408 return new (t || hb)(); 409 }; 410 static ɵprov = R({ 411 token: hb, 412 factory: function(t) { 413 let r = null; 414 return t ? r = new t() : r = iM(ve(sr)), r; 415 }, 416 providedIn: "root" 417 }); 418 }; 419 return e = mt([Xs({ 420 key: "paNGPG", 421 product: it.PAYMENTS 422 })], e), e; 423 })(), Qs = (() => { 424 class e extends ty { 425 static ɵfac = (() => { 426 let t; 427 return function(r) { 428 return (t || (t = Fe(e)))(r || e); 429 }; 430 })(); 431 static ɵprov = R({ 432 token: e, 433 factory: function(t) { 434 let r = null; 435 return t ? r = new t() : r = rM(ve(Zu), ve(Qu)), r; 436 }, 437 providedIn: "root" 438 }); 439 } 440 return e; 441 })(), Bl = (() => { 442 class e { 443 api = f(Qs); 444 cache = le(/* @__PURE__ */ new Map()); 445 cacheKey(t, r) { 446 return `${t}:${r}`; 447 } 448 load(t, r) { 449 let s = r.filter((n) => !this.cache().has(this.cacheKey(t, n))); 450 return s.length === 0 ? je({ content: {} }) : this.api.get("PaymentContent/content/items", { 451 type: t, 452 itemNames: s 453 }).pipe(Hr((n) => { 454 n?.content && this.cache.update((a) => { 455 let o = new Map(a); 456 for (let [l, c] of Object.entries(n.content)) o.set(this.cacheKey(t, l), c); 457 return o; 458 }); 459 })); 460 } 461 page(t, r) { 462 return this.cache().get(this.cacheKey(t, r))?.keyValueList ?? {}; 463 } 464 pageTracking(t, r) { 465 return this.cache().get(this.cacheKey(t, r))?.trackingData ?? null; 466 } 467 message(t, r, s) { 468 return this.cache().get(this.cacheKey(t, r))?.keyValueList[s] ?? s; 469 } 470 static ɵfac = function(t) { 471 return new (t || e)(); 472 }; 473 static ɵprov = R({ 474 token: e, 475 factory: e.ɵfac, 476 providedIn: "root" 477 }); 478 } 479 return e; 480 })(), ht(), Ka = (() => { 481 let e = class Eu extends ri { 482 content; 483 static ɵfac = (() => { 484 let t; 485 return function(r) { 486 return (t || (t = Fe(Eu)))(r || Eu); 487 }; 488 })(); 489 static ɵprov = R({ 490 token: Eu, 491 factory: function(t) { 492 let r = null; 493 return t ? r = new t() : r = sM(ve(Wt)), r; 494 }, 495 providedIn: "root" 496 }); 497 }; 498 return e = mt([Ut({ 499 key: "paPaymentMethodContent", 500 product: it.PAYMENTS 501 })], e), e; 502 })(), Dl = (() => { 503 class e { 504 config = f(Xr); 505 forwardMap; 506 reverseMap; 507 get forward() { 508 return this.forwardMap ??= this.buildMaps().forward; 509 } 510 get reverse() { 511 return this.reverseMap ??= this.buildMaps().reverse; 512 } 513 buildMaps() { 514 let t = /* @__PURE__ */ new Map(), r = /* @__PURE__ */ new Map(), s = this.config.paymentMethodUrlAliases; 515 if (s) for (let [n, a] of Object.entries(s)) { 516 t.set(n.toUpperCase(), a); 517 let o = a.toLowerCase(); 518 r.has(o) || r.set(o, n); 519 } 520 return this.forwardMap = t, this.reverseMap = r, { 521 forward: t, 522 reverse: r 523 }; 524 } 525 toSlug(t) { 526 if (!t) return ""; 527 let r = t.toUpperCase(); 528 return this.forward.get(r) ?? (r.startsWith("PAY_") ? r.slice(4) : t); 529 } 530 fromSlug(t) { 531 return t ? this.reverse.get(t.toLowerCase()) ?? t : ""; 532 } 533 matchesSlug(t, r) { 534 return !t || !r ? !1 : this.toSlug(t).toLowerCase() === r.toLowerCase(); 535 } 536 static ɵfac = function(t) { 537 return new (t || e)(); 538 }; 539 static ɵprov = R({ 540 token: e, 541 factory: e.ɵfac, 542 providedIn: "root" 543 }); 544 } 545 return e; 546 })(), ht(), qn = (() => { 547 let e = class mb { 548 sprinklrEnabled; 549 siftEnabled; 550 singleCurrencyEnabled; 551 bizumInstrumentDeleteEnabled; 552 scriptsInjectionData; 553 redesignVersion; 554 mobileNumberLengthCountryWise; 555 iframeRedirectPaymentMethods; 556 disableAmountPrefillMethods; 557 tokenizationPhase2Enabled;
558 isRewardTncEnabled; 559 qdDarkModeEnabled; 560 redirectFormTimeout; 561 redirectPage; 562 routeTrackingMappings; 563 enableWithdrawalTrackerV2; 564 nameCheckConsentMethods; 565 skipWithdrawalConfirmForNameCheck; 566 static ɵfac = function(t) { 567 return new (t || mb)(); 568 }; 569 static ɵprov = R({ 570 token: mb, 571 factory: function(t) { 572 let r = null; 573 return t ? r = new t() : r = nM(ve(sr)), r; 574 }, 575 providedIn: "root" 576 }); 577 }; 578 return e = mt([Xs({ 579 key: "paCommon", 580 product: it.PAYMENTS 581 })], e), e; 582 })(), ht(), fp = (() => { 583 let e = class fb { 584 bankAccountsFacialEnabled; 585 nonFtdFacialEnabled; 586 ftdFacialEnabled; 587 facialConsentTimeout; 588 facialSharedLibEnabled; 589 static ɵfac = function(t) { 590 return new (t || fb)(); 591 }; 592 static ɵprov = R({ 593 token: fb, 594 factory: function(t) { 595 let r = null; 596 return t ? r = new t() : r = aM(ve(sr)), r; 597 }, 598 providedIn: "root" 599 }); 600 }; 601 return e = mt([Xs({ 602 key: "paKyx", 603 product: it.PAYMENTS 604 })], e), e; 605 })(), ht(), gp = (() => { 606 let e = class Cu extends ri { 607 applepayEnabled; 608 googlePayEnabled; 609 applePayEnabledOnCasinoGames; 610 googlePayEnabledOnCasinoGames; 611 googlePayEnabledOnBetslip; 612 usePaymentMethodContent; 613 successPageTimeout; 614 static ɵfac = (() => { 615 let t; 616 return function(r) { 617 return (t || (t = Fe(Cu)))(r || Cu); 618 }; 619 })(); 620 static ɵprov = R({ 621 token: Cu, 622 factory: function(t) { 623 let r = null; 624 return t ? r = new t() : r = oM(ve(Wt)), r; 625 }, 626 providedIn: "root" 627 }); 628 }; 629 return e = mt([Ut({ 630 key: "paQuickDeposit", 631 product: it.PAYMENTS 632 })], e), e; 633 })(), Fl = (function(e) { 634 return e.REAL = "real", e.PLAY = "play", e; 635 })(Fl || {}), Zs = { 636 TAPPP: "TAPPP", 637 TRUELAYER: "TRUELAYER", 638 MISTERCASH: "MISTERCASH", 639 INSTANTBANK: "INSTANTBANK", 640 MBWAY: "MBWAY", 641 PAYPALDIRECT: "PAYPALDIRECT", 642 PAYPAL: "PAYPAL", 643 PAYWITHMYBANK: "PAYWITHMYBANK", 644 ECHECKSELECT: "ECHECKSELECT", 645 INSTANTECHECKS: "INSTANTECHECKS", 646 AIRCASH_ABON: "AIRCASH_ABON", 647 APPLEPAYDIRECT: "APPLEPAYDIRECT", 648 GOOGLEPAY: "GOOGLEPAY" 649 }, en = { 650 DEPOSIT: "/payments/deposit/input", 651 DEPOSIT_OPTIONS: "/payments/deposit/options", 652 DEPOSIT_PAYMENT_METHODS: "/payments/deposit/payment-methods", 653 DEPOSIT_SUCCESS: "/payments/deposit/success", 654 depositSuccess: (e) => `/payments/deposit/success/${e}`, 655 DEPOSIT_PROVIDER_IFRAME: "/payments/deposit/provider-iframe", 656 depositInput: (e) => `/payments/deposit/input/${e}`, 657 depositInputEdit: (e) => `/payments/deposit/input/${e}/edit`, 658 myPaymentsEdit: (e) => `/payments/deposit/payment-methods/${e}/edit`, 659 depositMyPaymentMethods: (e) => `/payments/deposit/payment-methods/${e}` 660 }, vp = { 661 CARD_CANT_DELETED: "555", 662 MAX_FAIL_DEP_ENHANCEMENT_CASHIER: "1118" 663 }, Qy = { MAX_FAIL_DEP_ENHANCEMENT: "max_fail_dep_enhancement_message" }, Zy = { 664 PER_INSTRUMENT: "maxFailDepEnhancementEnabled", 665 AGNOSTIC: "nj_mfde_agnostic_block_enabled" 666 }, C(C({}, vp), { DELETE_SUCCESS: "DELETE_SUCCESS" }), Sp = [ 667 "pay_truelayer", 668 "pay_googlepay", 669 "pay_applepay", 670 "pay_applepaydirect" 671 ], ew = { 672 EWALLET: "EWALLET", 673 CARD: "CC", 674 VOUCHER: "VOUCHER", 675 BANKTRANSFER: "BANKTRANSFER", 676 ECHECK: "ECHECK", 677 CAGE: "CAGE", 678 CRYPTO: "CRYPTO", 679 RETAIL: "RETAIL" 680 }, tw = { 681 BANK_TRANSFER: "pay_banktransfer", 682 WIRE: "pay_wire", 683 TRUELAYER: "pay_truelayer", 684 GOOGLE_PAY: "pay_googlepay", 685 APPLE_PAY: "pay_applepay", 686 APPLE_PAY_DIRECT: "pay_applepaydirect", 687 PAYPAL_DIRECT: "pay_paypaldirect", 688 PAYPAL: "pay_paypal" 689 }, iw = 8e3, rw = [ 690 "JAN", 691 "FEB", 692 "MAR", 693 "APR", 694 "MAY", 695 "JUN", 696 "JUL", 697 "AUG", 698 "SEP", 699 "OCT", 700 "NOV", 701 "DEC" 702 ], sw = (e) => e.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, """).replace(/'/g, "'").replace(/`/g, "`"), tn = (e) => { 703 let i = sessionStorage.getItem("sessionInfo"); 704 if (!i) return ""; 705 try { 706 return JSON.parse(i)[e]; 707 } catch { 708 return ""; 709 } 710 }, zl = (() => { 711 class e { 712 api = f(ja); 713 logger = f(lt); 714 data = le(null); 715 set(t) { 716 this.data.set(t); 717 } 718 refresh() {
719 this.api.get("/commonservice/user-data/config").pipe(Ot(1)).subscribe({ 720 next: (t) => this.data.set(t), 721 error: (t) => this.logger.error("Failed to refresh user data config", t) 722 }); 723 } 724 get merchantGroup() { 725 return this.data()?.userInfo?.merchantGroup; 726 } 727 get contactUsUrl() { 728 return this.data()?.configParams?.contactUsUrl; 729 } 730 get country() { 731 return this.data()?.userInfo?.addressInfo?.country; 732 } 733 get timeZoneId() { 734 return this.data()?.userInfo?.timeZoneId; 735 } 736 get isUsaMerchantGroup() { 737 return this.merchantGroup === "usa"; 738 } 739 get isFtdUser() { 740 let t = this.data()?.userInfo?.playerStatus, r = this.data()?.configParams?.first_deposit_done; 741 return t === Fl.PLAY || t === Fl.REAL && r === "Y"; 742 } 743 static ɵfac = function(t) { 744 return new (t || e)(); 745 }; 746 static ɵprov = R({ 747 token: e, 748 factory: e.ɵfac, 749 providedIn: "root" 750 }); 751 } 752 return e; 753 })(), bp = "payments.block", nw = class { 754 session; 755 navigation; 756 constructor(e, i) { 757 this.session = e, this.navigation = i; 758 } 759 intercept(e, i) { 760 return i.handle(e).pipe(Hr((t) => { 761 t instanceof l$ && this.dispatch(t.body); 762 })); 763 } 764 dispatch(e) { 765 if (!e) return; 766 if (e.kYCCheckResponse?.kycRedirectionUrlInfo && e.errorResponse?.errorTemplate?.toLowerCase() === "redirect_to_url") { 767 let n = e.kYCCheckResponse.kycRedirectionUrlInfo; 768 n?.url && this.navigation.goTo(n.url); 769 return; 770 } 771 if (e.errorCode === "1004" && e.errorMessage === "deny") { 772 this.storeAndNavigate(e, "sanctioned", "/payments/acs-block"); 773 return; 774 } 775 let i = e.errorTemplate?.toLowerCase(), t = e.errorResponse?.errorTemplate?.toLowerCase(), r = i ?? t, s = i ? e : e.errorResponse; 776 switch (r) { 777 case "access_block": 778 case "cashout_blocked": 779 this.storeAndNavigate(e, "acs", "/payments/acs-block"); 780 break; 781 case "service_closure": 782 this.storeAndNavigate(e, "service-closure", "/payments/service-closure"); 783 break; 784 case "regulatoryverificationblock": 785 this.storeAndNavigate(e, "regulatory-block", "/payments/service-closure"); 786 break; 787 case "redirecttomerchant": { 788 let n = s?.additionalData; 789 n?.redirectUrl && this.navigation.goTo(n.redirectUrl); 790 break; 791 } 792 case "redirect_to_url": s?.redirectURL && this.navigation.goTo(s?.redirectURL); 793 } 794 } 795 storeAndNavigate(e, i, t) { 796 let r = e.errorResponse ?? e, s = { 797 kind: i, 798 errorCode: e.errorCode, 799 errorTemplate: r.errorTemplate, 800 errorMessage: e.errorMessage, 801 additionalData: r.additionalData, 802 redirectUrl: r.redirectUrl 803 }; 804 this.session.set(bp, s), this.navigation.goTo(t); 805 } 806 }, yp = (() => { 807 class e { 808 navigation = f(Ai); 809 loginNavigation = f(r_); 810 window = f(dt); 811 closeMainCashier() { 812 let t = tn("parent"); 813 t ? this.navigation.goTo(t) : this.loginNavigation.goToStoredReturnUrl(), this.postCloseMessages(); 814 } 815 postCloseMessages() { 816 this.window.parent.postMessage(encodeURIComponent("action=close"), "*"), this.window.top?.postMessage({ 817 action: "closePortalOverlay", 818 isUserAuthenticated: !0 819 }, "*"); 820 } 821 static ɵfac = function(t) { 822 return new (t || e)(); 823 }; 824 static ɵprov = R({ 825 token: e, 826 factory: e.ɵfac, 827 providedIn: "root" 828 }); 829 } 830 return e; 831 })(), wp = class { 832 cashierType = ""; 833 paymentsApiService = f(Qs); 834 constructor(e) { 835 this.cashierType = e; 836 } 837 getTranslation(e) { 838 return this.getContent(); 839 } 840 getContent() { 841 return this.paymentsApiService.get(`PaymentsApi/content?cashierType=${this.cashierType}`); 842 } 843 }, ht(), qa = (() => { 844 let e = class Nu extends ri { 845 composition; 846 storedPaymentComposition; 847 depositSubmitRules; 848 depositSuccessRules; 849 enableBizumPhoneInput; 850 binRules; 851 static ɵfac = (() => { 852 let t; 853 return function(r) { 854 return (t || (t = Fe(Nu)))(r || Nu); 855 }; 856 })(); 857 static ɵprov = R({ 858 token: Nu, 859 factory: function(t) { 860 let r = null; 861 return t ? r = new t() : r = hM(ve(Wt)), r; 862 }, 863 providedIn: "root" 864 }); 865 }; 866 return e = mt([Ut({ 867 key: "paDepositConfig", 868 product: it.PAYMENTS 869 })], e), e; 870 })(), ht(), Xa = (() => { 871 let e = class gb { 872 environment; 873 isEnabled; 874 isWebIntegrationEnabled; 875 merchantId; 876 merchantName; 877 publicKey; 878 allowedAuthMethods; 879 allowedCardNetworks; 880 static ɵfac = function(t) { 881 return new (t || gb)(); 882 }; 883 static ɵprov = R({ 884 token: gb, 885 factory: function(t) { 886 let r = null; 887 return t ? r = new t() : r = mM(ve(sr)), r; 888 }, 889 providedIn: "root" 890 }); 891 }; 892 return e = mt([Xs({ 893 key: "paGooglepay", 894 product: it.PAYMENTS 895 })], e), e; 896 })(), ht(), Ep = (() => { 897 let e = class vb { 898 content; 899 static ɵfac = function(t) { 900 return new (t || vb)(); 901 }; 902 static ɵprov = R({ 903 token: vb, 904 factory: function(t) { 905 let r = null; 906 return t ? r = new t() : r = fM(ve(Wt)), r; 907 }, 908 providedIn: "root" 909 }); 910 }; 911 return e = mt([Ut({ 912 key: "paNoInternetContent", 913 product: it.PAYMENTS 914 })], e), e; 915 })(), aw = (() => { 916 class e { 917 paymentMethodContent = f(Ka); 918 getPaymentMethodName(t) { 919 if (!t || !this.paymentMethodContent.isConfigReady) return ""; 920 let r = t.toLowerCase().replace(/^pay_/, ""); 921 return this.paymentMethodContent.content?.[r]?.value ?? ""; 922 } 923 static ɵfac = function(t) { 924 return new (t || e)(); 925 }; 926 static ɵprov = R({ 927 token: e, 928 factory: e.ɵfac, 929 providedIn: "root" 930 }); 931 } 932 return e; 933 })(), Cp = (() => { 934 class e { 935 api = f(Qs); 936 destroyRef = f(ze); 937 _names = le({}); 938 loaded = !1; 939 names = this._names.asReadonly(); 940 load() { 941 this.loaded || (this.loaded = !0, this.api.get("IssuerBankNames/GetNames").pipe(Ot(1), he(this.destroyRef)).subscribe({ next: (t) => this._names.set(t ?? {}) })); 942 } 943 resolve(t) { 944 return t ? this._names()[t.toUpperCase()] ?? t : ""; 945 } 946 static ɵfac = function(t) { 947 return new (t || e)(); 948 }; 949 static ɵprov = R({ 950 token: e, 951 factory: e.ɵfac, 952 providedIn: "root" 953 }); 954 } 955 return e; 956 })(), ht(), Np = (() => { 957 let e = class Tu extends ri { 958 isEnabled; 959 environment; 960 clientName; 961 siteName; 962 buttonRenderMode; 963 billingPreference; 964 acceptedPaymentCardNetworks; 965 kountDisabled; 966 style; 967 static ɵfac = (() => { 968 let t; 969 return function(r) { 970 return (t || (t = Fe(Tu)))(r || Tu); 971 }; 972 })(); 973 static ɵprov = R({ 974 token: Tu, 975 factory: function(t) { 976 let r = null; 977 return t ? r = new t() : r = gM(ve(Wt)), r; 978 }, 979 providedIn: "root" 980 }); 981 }; 982 return e = mt([Ut({ 983 key: "paPaze", 984 product: it.PAYMENTS 985 })], e), e; 986 })(), ht(), Tp = (() => { 987 let e = class ku extends ri { 988 environment; 989 publicToken; 990 static ɵfac = (() => { 991 let t; 992 return function(r) { 993 return (t || (t = Fe(ku)))(r || ku); 994 }; 995 })(); 996 static ɵprov = R({ 997 token: ku, 998 factory: function(t) { 999 let r = null; 1000 return t ? r = new t() : r = vM(ve(Wt)), r; 1001 }, 1002 providedIn: "root" 1003 }); 1004 }; 1005 return e = mt([Ut({ 1006 key: "paRevolutpay", 1007 product: it.PAYMENTS 1008 })], e), e; 1009 })(), ht(), kp = (() => { 1010 let e = class xu extends ri { 1011 data; 1012 static ɵfac = (() => { 1013 let t; 1014 return function(r) { 1015 return (t || (t = Fe(xu)))(r || xu); 1016 }; 1017 })(); 1018 static ɵprov = R({ 1019 token: xu, 1020 factory: function(t) { 1021 let r = null; 1022 return t ? r = new t() : r = SM(ve(Wt)), r; 1023 }, 1024 providedIn: "root" 1025 }); 1026 }; 1027 return e = mt([Ut({ 1028 key: "paWithdrawalSLA", 1029 product: it.PAYMENTS 1030 })], e), e; 1031 })(), ht(), xp = (() => { 1032 let e = class Iu extends ri { 1033 composition; 1034 storedPaymentComposition; 1035 static ɵfac = (() => { 1036 let t; 1037 return function(r) { 1038 return (t || (t = Fe(Iu)))(r || Iu); 1039 }; 1040 })(); 1041 static ɵprov = R({ 1042 token: Iu, 1043 factory: function(t) { 1044 let r = null; 1045 return t ? r = new t() : r = bM(ve(Wt)), r; 1046 }, 1047 providedIn: "root" 1048 }); 1049 }; 1050 return e = mt([Ut({ 1051 key: "paWithdrawalConfig", 1052 product: it.PAYMENTS 1053 })], e), e; 1054 })(), ow = (() => { 1055 class e { 1056 document = f(vi); 1057 logger = f(lt); 1058 paymentsCommonConfig = f(qn); 1059 inject(t, r = "") { 1060 if (this.document.getElementById(`${t}-script`)) return Promise.resolve(); 1061 let s = this.paymentsCommonConfig.scriptsInjectionData[t]; 1062 if (!s?.url) return this.logger.infoRemote(`Missing script config for key: ${t}`), Promise.resolve(); 1063 let n = s?.url, a = r ? n + (n?.includes("?") ? "&" : "?") + r : n, o = this.document.createElement("script"); 1064 o.setAttribute("src", a), this.setCustomAttributes(o, s?.customAttributes); 1065 let l = new Promise((c, d) => { 1066 o.addEventListener("load", () => { 1067 this.logger.infoRemote(`${t} SDK loaded from CDN: ${a}`), c(); 1068 }), o.onerror = () => { 1069 d(/* @__PURE__ */ new Error(`Failed to load external script to populate with key${t}`)); 1070 }; 1071 }); 1072 return this.document.body.append(o), l; 1073 } 1074 StyleSheetInject(t, r = "") { 1075 if (this.document.getElementById(`${t}-stylesheet`)) return Promise.resolve(); 1076 let s = this.paymentsCommonConfig.scriptsInjectionData[t]; 1077 if (!s?.styleSheetUrl) return this.logger.infoRemote(`Missing stylesheet config for key: ${t}`), Promise.resolve(); 1078 let n = s?.styleSheetUrl, a = r ? n + (n?.includes("?") ? "&" : "?") + r : n, o = this.document.createElement("link"); 1079 a && o.setAttribute("href", a), this.setCustomAttributes(o, s?.customAttributes); 1080 let l = new Promise((c, d) => { 1081 o.addEventListener("load", () => { 1082 c(); 1083 }), o.onerror = () => { 1084 let u = /* @__PURE__ */ new Error(`Failed to load external stylesheet to populate with key${t}`); 1085 d(u), this.logger.errorRemote(`Failed to load external stylesheet to populate with key${t}`, u); 1086 }; 1087 }); 1088 return this.document.head.append(o), l; 1089 } 1090 setCustomAttributes(t, r) { 1091 r && Object.entries(r).forEach(([s, n]) => { 1092 n !== void 0 && t.setAttribute(s, n); 1093 }); 1094 } 1095 static ɵfac = function(t) { 1096 return new (t || e)(); 1097 }; 1098 static ɵprov = R({ 1099 token: e, 1100 factory: e.ɵfac, 1101 providedIn: "root" 1102 }); 1103 } 1104 return e; 1105 })(), lw = () => Oe(null, null, function* () { 1106 let e = f(Ll), i = f(vi), t = f(Ui); 1107 return e.loadCookieUpdate && (yield yM(i, t, `${e.host}/cardIframe/cookieUpdate.html`)), !0; 1108 }), cw = () => Oe(null, null, function* () { 1109 return f(qa).isConfigReady || (yield f(sr).load("", [qa])), !0; 1110 }), dw = () => Oe(null, null, function* () { 1111 let e = f(sr); 1112 return yield f(Ya).isConfigReady ? null : e.load("", [Ya]), !0; 1113 }), uw = () => Oe(null, null, function* () { 1114 if (f(qn).redesignVersion?.app === 1) return !0; 1115 let e = f(Bl); 1116 return yield Vt(e.load("deposit", [ 1117 "options", 1118 "input", 1119 "helpLinks", 1120 "titles" 1121 ])), yield Vt(e.load("shared", [ 1122 "balance", 1123 "titles", 1124 "paymentcard", 1125 "header" 1126 ])), !0; 1127 }), Ip = (() => { 1128 class e { 1129 closeQdWindow = le(!1); 1130 static ɵfac = function(t) { 1131 return new (t || e)(); 1132 }; 1133 static ɵprov = R({ 1134 token: e, 1135 factory: e.ɵfac, 1136 providedIn: "root" 1137 }); 1138 } 1139 return e; 1140 })(), Op = (() => { 1141 class e { 1142 navigation = f(Ai); 1143 window = f(dt); 1144 closeService = f(yp); 1145 closeEventService = f(Ip); 1146 dispatch(t) { 1147 if (!t) return !1; 1148 if (t.action === "redirection" && t.actionValue) { 1149 if (t.actionData?.target === "_blank") return this.window.open(t.actionValue, "_blank", "noopener"), !0; 1150 let r = this.window.self !== this.window.top ? { 1151 forceReload: !0, 1152 forceReloadTarget: "top" 1153 } : {}; 1154 return this.closeEventService.closeQdWindow.set(!0), this.navigation.goTo(t.actionValue, r), !0; 1155 } 1156 if (t.action === "emit" && t.actionValue === "triggerLiveChat") { 1157 let r = t.actionData?.webSiteUrl ?? ""; 1158 return this.window?.gvczendesk?.initLiveChat?.("", r), !0; 1159 } 1160 return t.action === "emit" && t.actionValue === "redirectToParent" ? (this.closeService.closeMainCashier(), !0) : !1; 1161 } 1162 static ɵfac = function(t) { 1163 return new (t || e)(); 1164 }; 1165 static ɵprov = R({ 1166 token: e, 1167 factory: e.ɵfac, 1168 providedIn: "root" 1169 }); 1170 } 1171 return e; 1172 })(), pw = (() => { 1173 class e { 1174 window = f(dt); 1175 logger = f(lt); 1176 nativeApp = f(Yr); 1177 userService = f(ii); 1178 appConfig = f(by); 1179 userDataConfig = f(zl); 1180 rendererFactory = f(Ab); 1181 raiseDepositSuccessEvent(t, r, s) { 1182 let n = this.appConfig.channel, a = this.userDataConfig.data()?.userInfo?.labelInfo?.productId, o = s.toString(), l = tn("sessionKey"), c = tn("clientAppPath"), d = this.nativeApp.isNativeWrapper; 1183 this.nativeApp.isNativeWrapperTwa ? this.sendViaTwa(t, r, o, l) : this.nativeApp.htcmdSchemeEnabled ? this.sendViaPlaytech(o, t) : this.window.NativeBridge ? this.sendViaNativeBridge(t, o) : this.window.messageToNative && !d ? this.sendViaCcb(t, r, o, n, a) : (c === "1" || c === "2") && this.sendViaDeepLink(t, r, o, l, n), this.updateBalance(); 1184 } 1185 sendViaTwa(t, r, s, n) { 1186 let a = this.buildDepositEvent(t, r, s), o = this.buildDeepLinkUrl(a, n); 1187 this.nativeApp.sendToNative({ 1188 eventName: "DEPOSIT", 1189 parameters: { URL: o } 1190 }); 1191 } 1192 sendViaPlaytech(t, r) { 1193 this.nativeApp.sendToPlaytech(this.buildAFEvent(this.userService.username ?? "", t, r)); 1194 } 1195 sendViaNativeBridge(t, r) { 1196 let s = this.userService.currency ?? ""; 1197 t === "Y" && (this.window.NativeBridge?.deposit?.(s, r), this.logger.infoRemote("[Payments]: FTD success event sent to NativeBridge")); 1198 } 1199 sendViaCcb(t, r, s, n, a) { 1200 let o = this.buildDepositEvent(t, r, s); 1201 this.nativeApp.sendToNative(o), this.logger.infoRemote(`[Payments]: Deposit success event (firstTime=${t}) sent to native wrapper`), n === "IN" && a === "POKER" && (this.window.webkit?.messageHandlers?.handleDepositEvent?.postMessage?.(o), this.logger.infoRemote(`[Payments]: Deposit success event (firstTime=${t}) sent to webkit native`)); 1202 } 1203 sendViaDeepLink(t, r, s, n, a) { 1204 let o = this.buildDepositEvent(t, r, s), l = this.buildDeepLinkUrl(o, n), c = this.rendererFactory.createRenderer(null, null), d = c.createElement("iframe"); 1205 c.setAttribute(d, "src", l), c.setAttribute(d, "width", "0"), c.setAttribute(d, "height", "0"), c.setAttribute(d, "style", "display:none"), c.appendChild(this.window.document.body, d); 1206 let u = tn("clientScheme"); 1207 if (u && (a === "IW" || a === "IN")) { 1208 let h = `${u}://?cashierEvent=${o.eventName}&event=${o.eventName}&type=${o.parameters.depositMethod}¤cy=${o.parameters.currency}&amount=${o.parameters.depositAmount}&sso=${n}`; 1209 this.window.location.href = h, this.logger.infoRemote(`[Payments]: Deposit success event (firstTime=${t}) sent via scheme redirect`); 1210 } 1211 } 1212 buildDepositEvent(t, r, s) { 1213 return { 1214 eventName: t === "Y" ? "first_deposit" : "deposit", 1215 parameters: { 1216 currency: this.userDataConfig.data()?.userInfo?.accountCurrency ?? "", 1217 depositAmount: s, 1218 depositMethod: r 1219 } 1220 }; 1221 } 1222 buildAFEvent(t, r, s) { 1223 let n = { 1224 eventName: "AF_EVENT", 1225 message: "AF_EVENT", 1226 data: { 1227 event: s === "Y" ? "first_time_deposit" : "af_all_deposits", 1228 values: { 1229 userid: t, 1230 deposit_amount: r, 1231 af_revenue: r 1232 } 1233 } 1234 }; 1235 return this.logger.infoRemote(`[Payments]: Deposit AF Event: ${JSON.stringify(n)}`), n; 1236 } 1237 buildDeepLinkUrl(t, r) { 1238 return `bwinex://?event=${t.eventName}&type=${t.parameters.depositMethod}¤cy=${t.parameters.currency}&amount=${t.parameters.depositAmount}&sso=${r}`; 1239 } 1240 updateBalance() { 1241 this.appConfig.channel === "WC" && this.window.parent.postMessage(encodeURIComponent("action=updateBalance"), "*"); 1242 } 1243 static ɵfac = function(t) { 1244 return new (t || e
1244)(); 1245 }; 1246 static ɵprov = R({ 1247 token: e, 1248 factory: e.ɵfac, 1249 providedIn: "root" 1250 }); 1251 } 1252 return e; 1253 })(); 1254 })))(); 1255} 1256var hw; 1257function mw() { 1258 return (mw = Z((() => { 1259 de(), Et(), st(), Os(), hw = (() => { 1260 class e { 1261 navigationService = f(Ai); 1262 config = f(qn); 1263 destroyRef = f(ze); 1264 defaultLabel = "cashier"; 1265 defaultLocation = "cashier"; 1266 mappings = (this.config.routeTrackingMappings ?? []).map((t) => ({ 1267 regex: new RegExp(t.pattern, "i"), 1268 labelEvent: t.labelEvent, 1269 locationEvent: t.locationEvent 1270 })); 1271 labelEvent = le(this.defaultLabel); 1272 locationEvent = le(this.defaultLocation); 1273 active = null; 1274 constructor() { 1275 this.navigationService.locationChange.pipe(xe((t) => t.nextUrl), Gu(this.navigationService.location.absUrl()), he(this.destroyRef)).subscribe((t) => this.resolveFromUrl(t)); 1276 } 1277 resolveFromUrl(t) { 1278 if (this.mappings.length === 0) return; 1279 let r = t.toLowerCase(); 1280 if (this.active?.regex.test(r)) return; 1281 let s = this.mappings.find((n) => n.regex.test(r)) ?? null; 1282 this.active = s, this.labelEvent.set(s?.labelEvent ?? this.defaultLabel), this.locationEvent.set(s?.locationEvent ?? this.defaultLocation); 1283 } 1284 static ɵfac = function(t) { 1285 return new (t || e)(); 1286 }; 1287 static ɵprov = R({ 1288 token: e, 1289 factory: e.ɵfac, 1290 providedIn: "root" 1291 }); 1292 } 1293 return e; 1294 })(); 1295 })))(); 1296} 1297var Pp, Ap, $p; 1298function _p() { 1299 return (_p = Z((() => { 1300 de(), st(), Cr(), Os(), Pp = (() => { 1301 class e { 1302 navigationService = f(Ai); 1303 device = f(nr); 1304 goToUrl(t) { 1305 this.navigationService.goTo(t); 1306 } 1307 goToDepositOptions() { 1308 this.device.isMobile ? this.navigationService.goTo(en.DEPOSIT_OPTIONS) : this.navigationService.goTo(`${en.DEPOSIT}?showOptions=true`); 1309 } 1310 static ɵfac = function(t) { 1311 return new (t || e)(); 1312 }; 1313 static ɵprov = R({ 1314 token: e, 1315 factory: e.ɵfac, 1316 providedIn: "root" 1317 }); 1318 } 1319 return e; 1320 })(), Ap = 1e3, $p = (() => { 1321 class e { 1322 timerService = f(Ui); 1323 destroyRef = f(ze); 1324 _blocks = le(/* @__PURE__ */ new Map()); 1325 expiryTimers = /* @__PURE__ */ new Map(); 1326 _agnostic = le(null); 1327 agnosticTimerId = null; 1328 blocks = this._blocks.asReadonly(); 1329 isAgnosticBlocked = ne(() => this._agnostic()?.blocked === !0); 1330 constructor() { 1331 this.destroyRef.onDestroy(() => this.reset()); 1332 } 1333 applyBlock(t, r) { 1334 if (!t || !r?.blocked || !r.expiryTime || r.expiryTime <= 0) return null; 1335 this.clearInstrumentTimer(t); 1336 let s = this.toBlockStatus(r), n = new Map(this._blocks()); 1337 return n.set(t, s), this._blocks.set(n), this.scheduleExpiry(t, s.expiryTime), s; 1338 } 1339 applyBlocksFromOptions(t) { 1340 if (t?.length) for (let r of t) this.applyBlock(r?.instrumentNumber, r?.details?.userMaxFailDepStatus); 1341 } 1342 _blockForCache = /* @__PURE__ */ new Map(); 1343 _isBlockedCache = /* @__PURE__ */ new Map(); 1344 blockFor(t) { 1345 if (!t) return this._nullBlockSignal; 1346 let r = this._blockForCache.get(t); 1347 return r || (r = ne(() => this._blocks().get(t) ?? null), this._blockForCache.set(t, r)), r; 1348 } 1349 isBlocked(t) { 1350 if (!t) return this._agnosticOnlySignal; 1351 let r = this._isBlockedCache.get(t); 1352 return r || (r = ne(() => this.isAgnosticBlocked() || !!this._blocks().get(t)?.blocked), this._isBlockedCache.set(t, r)), r; 1353 } 1354 _agnosticOnlySignal = ne(() => this.isAgnosticBlocked()); 1355 _nullBlockSignal = ne(() => null); 1356 checkBlocked(t) { 1357 return this.isAgnosticBlocked() ? !0 : !!(t && this._blocks().get(t)?.blocked); 1358 } 1359 clearBlock(t) { 1360 if (t && (this.clearInstrumentTimer(t), this._blockForCache.delete(t), this._isBlockedCache.delete(t), this._blocks().has(t))) { 1361 let r = new Map(this._blocks()); 1362 r.delete(t), this._blocks.set(r); 1363 } 1364 } 1365 setAgnosticBlock(t) { 1366 if (!t?.blocked || !t.expiryTime || t.expiryTime <= 0) return null; 1367 this.clearAgnosticTimer(); 1368 let r = this.toBlockStatus(t); 1369 return this._agnostic.set(r), this.agnosticTimerId = this.timerService.setTimeout(() => this.clearAgnosticBlock(), r.expiryTime * Ap), r; 1370 } 1371 clearAgnosticBlock() {
1372 this.clearAgnosticTimer(), this._agnostic.set(null); 1373 } 1374 reset() { 1375 for (let t of [...this.expiryTimers.keys()]) this.clearInstrumentTimer(t); 1376 this._blocks.set(/* @__PURE__ */ new Map()), this._blockForCache.clear(), this._isBlockedCache.clear(), this.clearAgnosticBlock(); 1377 } 1378 toBlockStatus(t) { 1379 let r = { 1380 blocked: !0, 1381 expiryTime: t.expiryTime ?? 0 1382 }; 1383 return t.blockEndDate && (r.blockEndDate = t.blockEndDate), t.blockEndTime && (r.blockEndTime = t.blockEndTime), r; 1384 } 1385 scheduleExpiry(t, r) { 1386 let s = this.timerService.setTimeout(() => this.clearBlock(t), r * Ap); 1387 this.expiryTimers.set(t, s); 1388 } 1389 clearInstrumentTimer(t) { 1390 let r = this.expiryTimers.get(t); 1391 r != null && (this.timerService.clearTimeout(r), this.expiryTimers.delete(t)); 1392 } 1393 clearAgnosticTimer() { 1394 this.agnosticTimerId !== null && (this.timerService.clearTimeout(this.agnosticTimerId), this.agnosticTimerId = null); 1395 } 1396 static ɵfac = function(t) { 1397 return new (t || e)(); 1398 }; 1399 static ɵprov = R({ 1400 token: e, 1401 factory: e.ɵfac, 1402 providedIn: "root" 1403 }); 1404 } 1405 return e; 1406 })(); 1407 })))(); 1408} 1409var Mp; 1410function Rp() { 1411 return (Rp = Z((() => { 1412 de(), Mp = (() => { 1413 class e { 1414 selectedPayment = le(void 0); 1415 inputDetails = le(void 0); 1416 minLimit = le(void 0); 1417 maxLimit = le(void 0); 1418 limitType = le("txn_limit"); 1419 presetAmountList = le([]); 1420 isStoredPayment = le(!1); 1421 savedCardClicked = le(0); 1422 initData = le(null); 1423 showNumpad = le(!1); 1424 enteredAmount = le(0); 1425 applePayResult = le(null); 1426 googlePayResult = le(null); 1427 fundingSource = le(void 0); 1428 depositResult = le(void 0); 1429 truelayerInstrumentCount = le(0); 1430 setDepositResult(t) { 1431 this.depositResult.set(t); 1432 } 1433 clearDepositResult() { 1434 this.depositResult.set(void 0); 1435 } 1436 reset() { 1437 this.selectedPayment.set(void 0), this.inputDetails.set(void 0), this.minLimit.set(void 0), this.maxLimit.set(void 0), this.limitType.set("txn_limit"), this.presetAmountList.set([]), this.isStoredPayment.set(!1), this.showNumpad.set(!1), this.enteredAmount.set(0), this.applePayResult.set(null), this.googlePayResult.set(null), this.fundingSource.set(void 0); 1438 } 1439 static ɵfac = function(t) { 1440 return new (t || e)(); 1441 }; 1442 static ɵprov = R({ 1443 token: e, 1444 factory: e.ɵfac, 1445 providedIn: "root" 1446 }); 1447 } 1448 return e; 1449 })(); 1450 })))(); 1451} 1452var Tt, Gl, rn; 1453function Lp() { 1454 return (Lp = Z((() => { 1455 Tt = "/depositservice/deposit/", Gl = "/depositservice/deposit/v2/", rn = { 1456 deposit: { 1457 allOptions: `${Tt}allOptions`, 1458 usedOptions: `${Tt}usedOptions`, 1459 inputDetails: `${Tt}input-details`, 1460 allOptionsV2: `${Gl}allOptions`, 1461 usedOptionsV2: `${Gl}usedOptions`, 1462 inputDetailsV2: `${Gl}input-details`, 1463 deleteCard: `${Tt}card-delete`, 1464 updateCard: `${Tt}cc-expdate-update`, 1465 depositSubmit: `${Tt}submit`, 1466 tappDepositSubmit: `${Tt}tappp-submit`, 1467 binDetails: `${Tt}bin-details`, 1468 raiseAlertCcBlock: `${Tt}block-commercial-card-alert`, 1469 closeInstrument: `${Tt}closeInstrument`, 1470 threedsMethodStatus: `${Tt}threeds-data`, 1471 redirectUrl: `${Tt}creditcard-get-redirect-url`, 1472 status: `${Tt}status`, 1473 applePaySession: `${Tt}getApplepaySession`, 1474 depositLimits: `${Tt}deposit-limits?paymentMethod=%25&lang=`, 1475 braintreeProcessDeposit: `${Tt}braintree-process-deposit`, 1476 paypalToken: `${Tt}getPaypalToken`, 1477 paymentMethodBlock: `${Tt}payment-method-block`, 1478 depositCurfew: `${Tt}deposit-curfew`, 1479 toggleInterceptor: `${Tt}toggle-interceptor` 1480 }, 1481 withdrawal: { 1482 allOptions: "/cashoutservice/cashout/allOptions", 1483 submit: "/cashoutservice/cashout/submit", 1484 proposalSubmit: "/cashoutservice/cashout/proposalPageSubmit", 1485 fieldDetails: "/cashoutservice/cashout/fieldDetails", 1486 bonusForfeit: "/cashoutservice/cashout/forfeit-info" 1487 }, 1488 transactions: {} 1489 }; 1490 })))(); 1491} 1492var fw, gw, Bp, Dp, Fp, zp, vw, Sw, Ja, bw, yw, Gp, ww, Ew, Cw, Nw; 1493function Vp() { 1494 return (Vp = Z((() => { 1495 Re(), de(), wl(), Ye(), st(), Cr(), Ht(), fw = (() => { 1496 class e { 1497 navigationService = f(Ai); 1498 link = {}; 1499 doNothing = !1; 1500 onClick(t) { 1501 return Oe(this, null, function* () { 1502 if (!this.doNothing && this.link.url) { 1503 let r = {}; 1504 this.link.target && (r = { forceReloadTarget: this.link.target.replace("_", "") }), yield this.navigationService.goTo(this.link.url, r); 1505 } 1506 }); 1507 } 1508 static ɵfac = function(t) { 1509 return new (t || e)(); 1510 }; 1511 static ɵdir = ci({ 1512 type: e, 1513 selectors: [[ 1514 "", 1515 "paOpenLink", 1516 "" 1517 ]], 1518 hostBindings: function(t, r) { 1519 t & 1 && Ce("click", function(s) { 1520 return r.onClick(s); 1521 }); 1522 }, 1523 inputs: { 1524 link: [ 1525 0, 1526 "paOpenLink", 1527 "link" 1528 ], 1529 doNothing: [ 1530 0, 1531 "url", 1532 "doNothing" 1533 ] 1534 } 1535 }); 1536 } 1537 return e; 1538 })(), gw = (() => { 1539 class e { 1540 transform(t) { 1541 let r = (t ?? "").toString(); 1542 return r === "" ? "" : r.length <= 1 ? r : `${r.slice(0, -1)}-${r.at(-1)}`; 1543 } 1544 static ɵfac = function(t) { 1545 return new (t || e)(); 1546 }; 1547 static ɵpipe = yl({ 1548 name: "accountFormat", 1549 type: e, 1550 pure: !0 1551 }); 1552 } 1553 return e; 1554 })(), Bp = 11, Dp = 3, Fp = 6, zp = 9, vw = (() => { 1555 class e { 1556 transform(t) { 1557 let r = (t ?? "").toString(); 1558 return r === "" ? "" : r.length === Bp ? `${r.slice(0, Dp)}.${r.slice(Dp, Fp)}.${r.slice(Fp, zp)}-${r.slice(zp, Bp)}` : r; 1559 } 1560 static ɵfac = function(t) { 1561 return new (t || e)(); 1562 }; 1563 static ɵpipe = yl({ 1564 name: "cpfFormat", 1565 type: e, 1566 pure: !0 1567 }); 1568 } 1569 return e; 1570 })(), Sw = (() => { 1571 class e { 1572 _userData; 1573 setData(t) { 1574 this._userData = t; 1575 } 1576 get userData() { 1577 return this._userData; 1578 } 1579 static ɵfac = function(t) { 1580 return new (t || e)(); 1581 }; 1582 static ɵprov = R({ 1583 token: e, 1584 factory: e.ɵfac, 1585 providedIn: "root" 1586 }); 1587 } 1588 return e; 1589 })(), Ja = (function(e) { 1590 return e.EventName = "TRIGGER_GEO_LOCATION", e.Action = "fetchLocation", e; 1591 })(Ja || {}), bw = /* @__PURE__ */ new Set([ 1592 "AH", 1593 "AW", 1594 "AN", 1595 "IH", 1596 "IW", 1597 "IN" 1598 ]), yw = (() => { 1599 class e { 1600 deviceService = f(nr); 1601 nativeApp = f(Yr); 1602 logger = f(lt); 1603 window = f(dt); 1604 getPLCIdentifier(t) { 1605 return ["MW"].includes(t) ? this.deviceService.isiOS ? "oobeeiOS" : "oobeeAndroid" : "geocomply"; 1606 } 1607 getGeoComplyInitializeInput(t, r, s) { 1608 let n = t.channelId || ""; 1609 if (bw.has(n)) { 1610 let a = { 1611 eventName: Ja.EventName, 1612 parameters: { 1613 action: Ja.Action, 1614 geolocationReason: r 1615 } 1616 }; 1617 this.nativeApp.isNative ? (this.nativeApp.sendToNative(a), this.logger.info("Geocomply Message sent to Native App", a)) : s ? s(`action=${Ja.Action}&geolocationReason=${r}`) : this.window.parent.postMessage({ 1618 eventName: "MESSAGE_TO_NATIVE", 1619 eventData: a 1620 }, "*"); 1621 } else if (this.window.geolocationCoordinator) { 1622 let a = { 1623 session: t.sessionKey, 1624 channelId: n, 1625 plcIdentifier: this.getPLCIdentifier(n), 1626 showPLCPopup: !1, 1627 productId: t.productId || "CASINO", 1628 geolocationReason: r 1629 }; 1630 this.window.geolocationCoordinator.triggerFetchLocation(a); 1631 } 1632 } 1633 static ɵfac = function(t) { 1634 return new (t || e)(); 1635 }; 1636 static ɵprov = R({ 1637 token: e, 1638 factory: e.ɵfac, 1639 providedIn: "root" 1640 }); 1641 } 1642 return e; 1643 })(), Gp = (() => { 1644 class e { 1645 httpBackend = f(Kb); 1646 http; 1647 constructor() { 1648 this.http = new Yu(this.httpBackend); 1649 }
1650 registerCardDetails(t, r, s) { 1651 if (!this.isNullOrEmpty(t) && t !== "token") { 1652 let n = new Ku({ "Content-Type": "application/json" }); 1653 return s && (n = n.append("token", s)), Vt(this.http.post(t, r, { 1654 headers: n, 1655 observe: "response" 1656 })); 1657 } 1658 return Promise.resolve(null); 1659 } 1660 isNullOrEmpty(t) { 1661 return !t || t.trim() === ""; 1662 } 1663 static ɵfac = function(t) { 1664 return new (t || e)(); 1665 }; 1666 static ɵprov = R({ 1667 token: e, 1668 factory: e.ɵfac, 1669 providedIn: "root" 1670 }); 1671 } 1672 return e; 1673 })(), ww = (() => { 1674 class e { 1675 navigationService = f(Ai); 1676 lastKnownProductService = f($$); 1677 appConfig = f(by); 1678 platformProductMapConfig = f(h_); 1679 cookieService = f(yr); 1680 getProduct() { 1681 return Oe(this, null, function* () { 1682 let t = this.lastKnownProductService.get(), r = t.name === "unknown" ? "" : t.name; 1683 yield Vt(this.platformProductMapConfig.whenReady); 1684 let s = this.platformProductMapConfig.platformProductMap?.[r]; 1685 return (this.navigationService.location.search.get("forCashierProductId") || this.navigationService.location.search.get("productId") || s || this.cookieService.get("registrationProduct") || this.appConfig.product).toUpperCase(); 1686 }); 1687 } 1688 static ɵfac = function(t) { 1689 return new (t || e)(); 1690 }; 1691 static ɵprov = R({ 1692 token: e, 1693 factory: e.ɵfac, 1694 providedIn: "root" 1695 }); 1696 } 1697 return e; 1698 })(), Ew = (() => { 1699 class e { 1700 window = f(dt); 1701 pushSiftData(t) { 1702 let r = t?.userInfo?.singleAccountInfo?.masterAccount ?? t?.userInfo?.userId, s = t?.clientInfo?.sessionKey, n = t?.configParams?.siftJSBeaconKey; 1703 this.window._sift = this.window._sift || [], this.window._sift?.push(["_setAccount", n], ["_setUserId", r], ["_setSessionId", s], ["_trackPageview"]); 1704 } 1705 static ɵfac = function(t) { 1706 return new (t || e)(); 1707 }; 1708 static ɵprov = R({ 1709 token: e, 1710 factory: e.ɵfac, 1711 providedIn: "root" 1712 }); 1713 } 1714 return e; 1715 })(), Cw = (() => { 1716 class e { 1717 windowRef = f(dt); 1718 sprinklrInitialized = !1; 1719 logger = f(lt); 1720 openLiveChat(t) { 1721 this.windowRef?.entainsprinklr?.openChat(t); 1722 } 1723 initializeSprinklrChat(t, r = "") { 1724 let s = this.windowRef.entainsprinklr; 1725 if (s?.setInitData) { 1726 let n = ["qd-app", "betslip-app"].includes(r), a = J(C({}, t), { 1727 isCashier: !0, 1728 action: "initiatesprinklr", 1729 isFromQD: n, 1730 pageUrl: this.windowRef.location.href 1731 }); 1732 s.defaultDataSetup(a), this.sprinklrInitialized = !0, this.logger.info("Sprinklr chat initialized."); 1733 } else this.logger.warn("Sprinklr SDK not available after script load."); 1734 } 1735 isSprinklrInitialized() { 1736 return this.sprinklrInitialized; 1737 } 1738 static ɵfac = function(t) { 1739 return new (t || e)(); 1740 }; 1741 static ɵprov = R({ 1742 token: e, 1743 factory: e.ɵfac, 1744 providedIn: "root" 1745 }); 1746 } 1747 return e; 1748 })(), Nw = class { 1749 ttlMs; 1750 store = /* @__PURE__ */ new Map(); 1751 constructor(e) { 1752 this.ttlMs = e; 1753 } 1754 get(e) { 1755 let i = this.store.get(e); 1756 if (i) { 1757 if (Date.now() >= i.expiresAt) { 1758 this.store.delete(e); 1759 return; 1760 } 1761 return i.value; 1762 } 1763 } 1764 set(e, i) { 1765 this.store.set(e, { 1766 value: i, 1767 expiresAt: Date.now() + this.ttlMs 1768 }); 1769 } 1770 delete(e) { 1771 this.store.delete(e); 1772 } 1773 clear() { 1774 this.store.clear(); 1775 } 1776 }; 1777 })))(); 1778} 1779function wM(e) { 1780 return Up.includes((e ?? "").toLowerCase()) ? "game_cashier" : "main_cashier"; 1781} 1782function EM(e) { 1783 return Up.includes((e ?? "").toLowerCase()) ? "game_qd" : "regular_qd"; 1784} 1785function CM(e, i) { 1786 return e && e[i] === 2 ? "redesign" : "legacy"; 1787} 1788var Vl, Jr, Hp, Tw, Up; 1789function Wp() { 1790 return (Wp = Z((() => { 1791 de(), st(), Vl = { 1792 Deposit: "journey.deposit", 1793 QuickDeposit: "journey.quick_deposit", 1794 Withdrawal: "journey.withdrawal" 1795 }, Jr = { 1796 DepositOptionsLoaded: "deposit.options_loaded", 1797 DepositMethodSelected: "deposit.method_selected", 1798 DepositSubmitted: "deposit.submitted", 1799 DepositPending: "deposit.pending", 1800 WithdrawalMethodSelected: "withdrawal.method_selected", 1801 WithdrawalSubmitted: "withdrawal.submitted" 1802 }, Hp = (() => { 1803 class e { 1804 #e = f(ay); 1805 #t = Vl.Deposit; 1806 #i = !1; 1807 start(t) { 1808 this.#i = !1, this.#e.startJourney(this.#t, t); 1809 } 1810 optionsLoaded(t) { 1811 this.#e.step(this.#t, Jr.DepositOptionsLoaded, t); 1812 } 1813 methodSelected(t) { 1814 this.#e.step(this.#t, Jr.DepositMethodSelected, t); 1815 } 1816 submitted(t) { 1817 this.#e.step(this.#t, Jr.DepositSubmitted, t); 1818 } 1819 pending(t) { 1820 this.#e.step(this.#t, Jr.DepositPending, t); 1821 } 1822 succeeded(t) { 1823 this.#i = !1, this.#e.completeJourney(this.#t, t); 1824 } 1825 failed(t) { 1826 this.#i = !1, this.#e.failJourney(this.#t, { 1827 error_code: t.error_template, 1828 error_source: t.error_template, 1829 method: t.method, 1830 error_code_raw: t.error_code 1831 }); 1832 } 1833 markPendingProviderRedirect() { 1834 this.#i = !0, this.#e.persistForNavigation(this.#t); 1835 } 1836 abandoned() { 1837 this.#i || this.#e.abandonJourney(this.#t); 1838 } 1839 static ɵfac = function(t) { 1840 return new (t || e)(); 1841 }; 1842 static ɵprov = R({ 1843 token: e, 1844 factory: e.ɵfac, 1845 providedIn: "root" 1846 }); 1847 } 1848 return e; 1849 })(), Tw = (() => { 1850 class e { 1851 #e = f(ay); 1852 #t = Vl.QuickDeposit; 1853 start(t) { 1854 this.#e.startJourney(this.#t, t); 1855 } 1856 optionsLoaded(t) { 1857 this.#e.step(this.#t, Jr.DepositOptionsLoaded, t); 1858 } 1859 methodSelected(t) { 1860 this.#e.step(this.#t, Jr.DepositMethodSelected, t); 1861 } 1862 submitted(t) { 1863 this.#e.step(this.#t, Jr.DepositSubmitted, t); 1864 } 1865 succeeded(t) { 1866 this.#e.completeJourney(this.#t, t); 1867 } 1868 failed(t) { 1869 this.#e.failJourney(this.#t, { 1870 error_code: t.error_template, 1871 error_source: t.error_template, 1872 method: t.method, 1873 error_code_raw: t.error_code 1874 }); 1875 } 1876 abandoned() { 1877 this.#e.abandonJourney(this.#t); 1878 } 1879 static ɵfac = function(t) { 1880 return new (t || e)(); 1881 }; 1882 static ɵprov = R({ 1883 token: e, 1884 factory: e.ɵfac, 1885 providedIn: "root" 1886 }); 1887 } 1888 return e; 1889 })(), Up = ["games", "bingo"]; 1890 })))(); 1891} 1892var jp, kw, Yp, Kp; 1893function qp() { 1894 return (qp = Z((() => { 1895 de(), st(), Ht(), jp = "paymentsTracking.v1.", kw = 7776e6, Yp = /^\d{17}$/, Kp = (() => { 1896 class e { 1897 store = f(sp); 1898 logger = f(lt); 1899 buildEventId(t, r) { 1900 return !r || !Yp.test(r) ? null : `payments:${t}:${r}`; 1901 } 1902 tryReserve(t, r) { 1903 if (!r) return this.logger.infoRemote(`[Payments]: tracking event ${t} has no transactionId, dedup skipped`), !0; 1904 if (!Yp.test(r)) return this.logger.infoRemote(`[Payments]: tracking event ${t} has malformed transactionId '${r}'`), !0; 1905 let s = jp + this.buildEventId(t, r); 1906 return this.store.get(s) ? !1 : (this.store.set(s, { at: Date.now() }), this.pruneExpired(), !0); 1907 } 1908 pruneExpired() { 1909 let t = Date.now() - kw; 1910 this.store.keys().filter((r) => r.startsWith(jp)).filter((r) => { 1911 let s = this.store.get(r); 1912 return !s || s.at < t; 1913 }
1913).forEach((r) => this.store.remove(r)); 1914 } 1915 static ɵfac = function(t) { 1916 return new (t || e)(); 1917 }; 1918 static ɵprov = R({ 1919 token: e, 1920 factory: e.ɵfac, 1921 providedIn: "root" 1922 }); 1923 } 1924 return e; 1925 })(); 1926 })))(); 1927} 1928var sn, xw, Iw, Qa; 1929function Za() { 1930 return (Za = Z((() => { 1931 Re(), de(), yi(), st(), Ns(), Os(), qp(), sn = { 1932 Tracking: "Event.Tracking", 1933 Value: "Event.Value", 1934 PageView: "pageView", 1935 Deposit: "deposit", 1936 FirstDeposit: "firstDeposit", 1937 PaymentError: "paymentError", 1938 PaymentInlineError: "paymentInlineError", 1939 DepositInteraction: "depositInteraction", 1940 DepositView: "depositView", 1941 DepositSubmit: "depositSubmit", 1942 PaymentFailure: "paymentFailure" 1943 }, xw = [ 1944 "categoryEvent", 1945 "labelEvent", 1946 "actionEvent", 1947 "positionEvent", 1948 "locationEvent", 1949 "eventDetails", 1950 "urlClicked", 1951 "value", 1952 "contentPosition", 1953 "flowName" 1954 ], Iw = [ 1955 "method", 1956 "source", 1957 "product", 1958 "amountType", 1959 "txnAmount", 1960 "txnCurrency", 1961 "baseAmount", 1962 "baseCurrency", 1963 "lifeTimeDeposits", 1964 "depositMethod", 1965 "depositTransactionID", 1966 "depositEventSource", 1967 "bonusStatus", 1968 "bonusType", 1969 "bonusAmount", 1970 "bonusID", 1971 "bonusName", 1972 "error", 1973 "errorCode", 1974 "fasterdeposit" 1975 ], Qa = (() => { 1976 class e { 1977 trackingService = f(Kr); 1978 contentStore = f(Bl); 1979 urlAlias = f(Dl); 1980 navigationService = f(Ai); 1981 logger = f(lt); 1982 userService = f(ii); 1983 idempotency = f(Kp); 1984 method = le(""); 1985 _product = ""; 1986 _productResolved = !1; 1987 get product() { 1988 if (!this._productResolved) { 1989 this._productResolved = !0; 1990 try { 1991 this._product = (tn("productId") ?? "").toLowerCase(); 1992 } catch { 1993 this._product = ""; 1994 } 1995 } 1996 return this._product; 1997 } 1998 source = le("main cashier"); 1999 amountType = le(""); 2000 errorCode = le(""); 2001 pushPaymentContext(t) { 2002 let r = C({ 2003 method: this.method() ?? "not applicable", 2004 product: this.product, 2005 source: this.source(), 2006 txnCurrency: this.userService.currency.toLowerCase() 2007 }, t); 2008 this.trackingService.updateDataLayer({ payment: r }); 2009 } 2010 triggerDepositSuccess(t, r, s, n = "false") { 2011 let a = s === "first deposit", o = a ? sn.FirstDeposit : sn.Deposit; 2012 if (!this.idempotency.tryReserve(o, t.transactionId)) return this.logger.infoRemote(`[Payments]: Suppressed duplicate ${o} for txn-id: ${t.transactionId}`), !1; 2013 let l = r?.bonusCode ? "applied" : "no bonus applied", c = t.paymentMethod?.toLowerCase() || this.method() || ""; 2014 c && !this.method() && this.method.set(c), this.pushPaymentContext({ 2015 method: c, 2016 txnAmount: t.amount.value, 2017 txnCurrency: t.amount.currencyCode, 2018 baseAmount: t.baseAmount?.value ?? "", 2019 lifeTimeDeposits: t.totalDepositCount, 2020 depositTransactionID: t.transactionId, 2021 amountType: this.amountType(), 2022 BonusStatus: l, 2023 bonusType: r?.rewardType ?? "", 2024 bonusAmount: r?.bonusAmount?.value ?? "", 2025 bonusID: r?.bonusId ?? "", 2026 bonusName: r?.bonusCode ?? "", 2027 fasterdeposit: n 2028 }); 2029 let d = this.idempotency.buildEventId(o, t.transactionId); 2030 return this.trackingService.triggerEvent(o, C({ 2031 event_name: a ? "ftd_success" : "deposit_success", 2032 "deposit.Type": s 2033 }, d && { "payment.depositEventId": d })), a ? this.logger.infoRemote(`[Payments]: Triggering FTD success event for txn-id: ${t.transactionId}`) : this.logger.infoRemote(`[Payments]: Triggering deposit success event for txn-id: ${t.transactionId}`), !0; 2034 } 2035 reset() { 2036 this.method.set(""), this.amountType.set(""), this.errorCode.set(""), this.pushPaymentContext(); 2037 } 2038 triggerPaymentError(t) { 2039 this.pushPaymentContext(C(C(C(C({ error: t.error }, t.errorCode && { errorCode: t.errorCode }), t.depositMethod && { depositMethod: t.depositMethod }), t.method && { method: t.method.toLowerCase() }), t.lifeTimeDeposits && { lifeTimeDeposits: t.lifeTimeDeposits })), this.trackingService.updateDataLayer({ 2040 event: sn.PaymentError, 2041 "component.CategoryEvent": "deposit error", 2042 "component.EventDetails": "not applicable", 2043 event_name: "payment_error" 2044 }), this.clearErrorContext(); 2045 } 2046 triggerInlineError(t) { 2047 this.pushPaymentContext(C({ error: t.error }, t.method && { method: t.method.toLowerCase() })), this.trackingService.updateDataLayer({ 2048 event: sn.PaymentInlineError, 2049 "component.CategoryEvent": "deposit inline error", 2050 "component.EventDetails": "not applicable", 2051 event_name: "payment_inline_error" 2052 }), this.clearErrorContext(); 2053 } 2054 clearErrorContext() { 2055 this.pushPaymentContext({ 2056 error: "", 2057 errorCode: "" 2058 }); 2059 } 2060 trackEvent(t, r = sn.Tracking) { 2061 let s = this.buildComponentPayload(t); 2062 Object.keys(s).length !== 0 && this.trackingService.triggerEvent(r, s); 2063 } 2064 trackPaymentEvent(t, r = sn.Tracking) { 2065 let s = C(C({}, this.buildComponentPayload(t)), this.buildPaymentPayload(t)); 2066 t.depositType && (s["deposit.Type"] = t.depositType), Object.keys(s).length !== 0 && this.trackingService.triggerEvent(r, s); 2067 } 2068 trackRaw(t, r) { 2069 if (!t) return; 2070 let s = r ? C(C({}, t), r) : t, { eventName: n, declineError: a } = s, o = Eb(s, ["eventName", "declineError"]); 2071 if (n) { 2072 if (a) { 2073 let l = this.errorCode(); 2074 this.pushPaymentContext(C({ error: a }, l && { errorCode: l })), this.trackingService.updateDataLayer(C({ event: n }, o)); 2075 return; 2076 } 2077 this.trackingService.triggerEvent(n, o); 2078 } 2079 } 2080 trackFromSitecore(t, r) { 2081 if (t) try { 2082 this.trackRaw(JSON.parse(t), r); 2083 } catch { 2084 this.logger.warn("[Payments Tracking]: Failed to parse Sitecore tracking JSON"); 2085 } 2086 } 2087 trackMethodSwap(t, r) { 2088 let s = t?.name?.toLowerCase() ?? "not applicable", n = r.name?.toLowerCase() ?? "not applicable", a = this.contentStore.pageTracking("deposit", "input"); 2089 this.trackFromSitecore(a?.changePaymentMethod, { 2090 "component.PositionEvent": `${this.resolveMethodType(t)} - ${this.resolveMethodType(r)}`, 2091 "component.EventDetails": `${s} - ${n}`, 2092 "component.URLClicked": this.resolveMethodUrl(r) 2093 }); 2094 } 2095 resolveMethodUrl(t) { 2096 let r = this.urlAlias.toSlug(t.name); 2097 if (!r) return "not applicable"; 2098 let s = this.navigationService.location, n = s.culture ? `/${s.culture}` : ""; 2099 return `${s.baseUrl()}${n}${en.depositInput(r)}`.toLowerCase(); 2100 } 2101 resolveMethodType(t) { 2102 return t ? t.popularOption ? "popular payment method" : t.bonusTargetted ? "bonus eligible payment method" : "regular payment method" : "not applicable"; 2103 } 2104 buildComponentPayload(t) { 2105 return this.mapWithPrefix(t, xw, "component."); 2106 } 2107 buildPaymentPayload(t) { 2108 return this.mapWithPrefix(t, Iw, "payment."); 2109 } 2110 mapWithPrefix(t, r, s) { 2111 let n = {}; 2112 for (let a of r) { 2113 let o = t[a]; 2114 o != null && o !== "" && (n[s + String(a)] = o); 2115 } 2116 return n; 2117 } 2118 static ɵfac = function(t) { 2119 return new (t || e)(); 2120 }; 2121 static ɵprov = R({ 2122 token: e, 2123 factory: e.ɵfac, 2124 providedIn: "root" 2125 }); 2126 } 2127 return e; 2128 })(); 2129 })))(); 2130} 2131function Ow(e, i) { 2132 if (!e) return !1; 2133 let t = e[i]; 2134 return typeof t == "string" && t.toUpperCase() === "Y"; 2135} 2136function NM(e, i, t) { 2137 return new Promise((r, s) => { 2138 if (e.getElementById(t)) { 2139 r(); 2140 return; 2141 } 2142 let n = e.createElement("script"); 2143 n.id = t, n.src = i, n.async = !1, n.defer = !0, n.onload = () => r(), n.onerror = () => s(/* @__PURE__ */ new Error(`Failed to load script: ${i}`)), e.head.appendChild(n); 2144 }); 2145} 2146var Xp, Pw, Aw, $w, _w, Mw, Rw, Lw, Bw, Dw, Fw, zw, Gw, Jp, Qp, Zp, Vw, Hw; 2147function Uw() { 2148 return (Uw = Z((() => {
2149 Re(), de(), Ye(), jn(), Et(), st(), Os(), _p(), Rp(), Lp(), Vp(), Wp(), Za(), Xp = (() => { 2150 class e { 2151 triggerRegisterCard$ = new Xe(); 2152 triggerCvvSubmit$ = new Xe(); 2153 triggerApplePaySubmit$ = new Xe(); 2154 triggerGooglePaySubmit$ = new Xe(); 2155 triggerPayPalDirectSubmit$ = new Xe(); 2156 triggerCardSubmit$ = new Xe(); 2157 disableSubmitButton = le(!1); 2158 isFormSubmitting = le(!1); 2159 billingDescriptor = le("N"); 2160 static ɵfac = function(t) { 2161 return new (t || e)(); 2162 }; 2163 static ɵprov = R({ 2164 token: e, 2165 factory: e.ɵfac, 2166 providedIn: "root" 2167 }); 2168 } 2169 return e; 2170 })(), Pw = "706", Aw = "sg_payment_method_limit_block", $w = (() => { 2171 class e { 2172 api = f(ja); 2173 logger = f(lt); 2174 _paymentLimitBlockData = le(null); 2175 paymentLimitBlockData = this._paymentLimitBlockData.asReadonly(); 2176 resetPaymentLimitBlock() { 2177 this._paymentLimitBlockData.set(null); 2178 } 2179 setPaymentLimitBlock(t) { 2180 this._paymentLimitBlockData.set(t); 2181 } 2182 getPaymentMethodBlockStatus() { 2183 let t = this.paymentLimitBlockData(); 2184 return t ? je(t) : this.api.get(rn.deposit.paymentMethodBlock).pipe(xe((r) => r ?? null), Hr((r) => this.applyBlockState(r)), ei((r) => (this.logger.error("[PaymentLimitBlock] Failed to fetch block status", r), this.applyBlockState(null), je(null)))); 2185 } 2186 applyBlockState(t) { 2187 let r = this.isBlockResult(t); 2188 this._paymentLimitBlockData.set(r ? t : null); 2189 } 2190 isBlockResult(t) { 2191 return !!t && t.errorCode === Pw && t.errorTemplate === Aw; 2192 } 2193 static ɵfac = function(t) { 2194 return new (t || e)(); 2195 }; 2196 static ɵprov = R({ 2197 token: e, 2198 factory: e.ɵfac, 2199 providedIn: "root" 2200 }); 2201 } 2202 return e; 2203 })(), _w = "gPayAvailability", Mw = "gPayAvailabilityStatus", Rw = "initiategPay", Lw = "gPayPaymentResponse", Bw = 5e3, Dw = (() => { 2204 class e { 2205 window = f(dt); 2206 logger = f(lt); 2207 nativeAppService = f(Yr); 2208 destroyRef = f(ze); 2209 bridgeReady = !1; 2210 checkNativeAvailability(t) { 2211 return Oe(this, null, function* () { 2212 this.setupBridge(); 2213 let r = Vt(this.nativeAppService.liveEventsFromNative.pipe(We((s) => s.eventName === Mw), Ot(1), s$(Bw), he(this.destroyRef))); 2214 this.sendToNative({ 2215 eventName: _w, 2216 parameters: t 2217 }), this.logger.info("[GPay Native] Availability request sent"); 2218 try { 2219 let s = (yield r).parameters?.gpayAllowed === !0; 2220 return this.logger.info("[GPay Native] Availability status received:", s), s; 2221 } catch (s) { 2222 return this.logger.errorRemote("[GPay Native] Timeout waiting for gPayAvailabilityStatus", s), !1; 2223 } 2224 }); 2225 } 2226 requestPaymentData(t) { 2227 this.setupBridge(); 2228 let r = this.waitForPaymentResponse(); 2229 return this.sendToNative({ 2230 eventName: Rw, 2231 parameters: t 2232 }), this.logger.info("[GPay Native] Load payment data request sent"), r; 2233 } 2234 setupBridge() { 2235 if (this.bridgeReady || !this.window) return; 2236 let t = this.window; 2237 t.messageToCashier = (r) => { 2238 this.nativeAppService.onReceivedEventFromNative(r); 2239 }, this.bridgeReady = !0; 2240 } 2241 sendToNative(t) { 2242 let r = JSON.stringify(t); 2243 this.window.NativeBridge?.gpayEvents ? (this.window.NativeBridge.gpayEvents(r), this.logger.info("[GPay Native] Sent via NativeBridge.gpayEvents")) : (this.nativeAppService.sendToNative(t), this.logger.info("[GPay Native] Sent via NativeAppService.sendToNative")); 2244 } 2245 waitForPaymentResponse() { 2246 return Oe(this, null, function* () { 2247 let t = (yield Vt(this.nativeAppService.liveEventsFromNative.pipe(We((r) => r.eventName === Lw), Ot(1), he(this.destroyRef)))).parameters?.paymentData; 2248 if (typeof t != "string" || t.length === 0) throw new Error("[GPay Native] gPayPaymentResponse missing paymentData"); 2249 return JSON.parse(t); 2250 }); 2251 } 2252 static ɵfac = function(t) { 2253 return new (t || e)(); 2254 }; 2255 static ɵprov = R({ 2256 token: e, 2257 factory: e.ɵfac, 2258 providedIn: "root" 2259 }); 2260 } 2261 return e; 2262 })(), Fw = "https://pay.google.com/gp/p/js/pay.js", zw = "google-pay-sdk", Gw = (() => { 2263 class e { 2264 config = f(Xa); 2265 window = f(dt); 2266 document = f(vi); 2267 logger = f(lt); 2268 userDataConfig = f(zl); 2269 client = null; 2270 loadSdk() { 2271 return Oe(this, null, function* () { 2272 if (this.client) return this.client; 2273 try { 2274 yield this.injectScript(Fw, zw); 2275 let t = this.window.google?.payments?.api?.PaymentsClient; 2276 if (!t) throw new Error("Google Pay SDK not loaded"); 2277 return this.client = new t({ environment: this.config.environment }), this.client; 2278 } catch (t) { 2279 return this.logger.errorRemote("[GPay SDK] SDK load failed", t), null; 2280 } 2281 }); 2282 } 2283 checkWebAvailability() { 2284 return Oe(this, null, function* () { 2285 let t = yield this.loadSdk(); 2286 if (!t) return !1; 2287 let r = this.buildIsReadyToPayRequest(), s = yield t.isReadyToPay(r); 2288 return this.logger.info("[GPay SDK] Web availability:", s.result), s.result; 2289 }); 2290 } 2291 loadPaymentData(t) { 2292 return Oe(this, null, function* () { 2293 if (!this.client) { 2294 let r = /* @__PURE__ */ new Error("Google Pay client not available. Ensure loadSdk/checkWebAvailability is called first."); 2295 throw this.logger.errorRemote("[GPay SDK] Web client not initialized.", r), r; 2296 } 2297 return this.client.loadPaymentData(t); 2298 }); 2299 } 2300 getClient() { 2301 return this.client; 2302 } 2303 buildIsReadyToPayRequest() { 2304 let t = this.userDataConfig.data()?.configParams, r = Ow(t, "creditCardBanEnabled"), s = t ? [ 2305 "AMEX", 2306 "DISCOVER", 2307 "INTERAC", 2308 "JCB", 2309 "MASTERCARD", 2310 "VISA" 2311 ] : ["MASTERCARD", "VISA"], n = this.config.allowedCardNetworks || s; 2312 t || this.logger.warnRemote("[GPay SDK] userDataConfig not yet available â using safe fallback card networks"); 2313 let a = t?.supportedNetworks; 2314 if (typeof a == "string" && a.length > 0) { 2315 let o = a.split(",").map((l) => l.trim().toUpperCase()); 2316 o.length > 0 && (n = o); 2317 } 2318 return r && (n = n.filter((o) => o !== "AMEX")), { 2319 apiVersion: 2, 2320 apiVersionMinor: 0, 2321 allowedPaymentMethods: [{ 2322 type: "CARD", 2323 parameters: { 2324 allowedAuthMethods: this.config.allowedAuthMethods || ["CRYPTOGRAM_3DS"], 2325 allowedCardNetworks: n, 2326 allowCreditCards: !r 2327 }, 2328 tokenizationSpecification: { 2329 type: "DIRECT", 2330 parameters: { 2331 protocolVersion: "ECv2", 2332 publicKey: this.config.publicKey 2333 } 2334 } 2335 }] 2336 }; 2337 } 2338 buildPaymentDataRequest(t, r) { 2339 return J(C({}, this.buildIsReadyToPayRequest()), { 2340 merchantInfo: { 2341 merchantId: this.config.merchantId, 2342 merchantName: this.config.merchantName 2343 }, 2344 transactionInfo: { 2345 totalPriceStatus: "FINAL", 2346 totalPrice: t, 2347 currencyCode: r 2348 } 2349 }); 2350 } 2351 injectScript(t, r) { 2352 return NM(this.document, t, r); 2353 } 2354 static ɵfac = function(t) { 2355 return new (t || e)(); 2356 }; 2357 static ɵprov = R({ 2358 token: e, 2359 factory: e.ɵfac, 2360 providedIn: "root" 2361 }); 2362 } 2363 return e; 2364 })(), Jp = (() => { 2365 class e { 2366 config = f(Xa); 2367 logger = f(lt); 2368 paymentEwalletToken = f(Gp); 2369 sdkService = f(Gw); 2370 nativeBridge = f(Dw); 2371 depositFlowStore = f(Mp); 2372 flowActions = f(Xp); 2373 _available = le(!1); 2374 available = this._available.asReadonly(); 2375 isAvailable() { 2376 return this._available(); 2377 } 2378 loadSdk() { 2379 return this.sdkService.loadSdk(); 2380 } 2381 initAvailability() { 2382 return Oe(this, null, function* () { 2383 if (!this.config.isEnabled) { 2384 this.logger.info("[GPay] Google Pay is disabled"); 2385 return; 2386 } 2387 try { 2388 if (this.config.isWebIntegrationEnabled) { 2389 let t = yield this.sdkService.checkWebAvailability(); 2390 this._available.set(t); 2391 } else { 2392 let t = this.sdkService.buildIsReadyToPayRequest(), r = yield this.nativeBridge.checkNativeAvailability(t); 2393 this._available.set(r); 2394 } 2395 } catch (t) { 2396 this.logger.errorRemote("[GPay] Availability check failed", t), this._available.set(!1); 2397 } 2398 }); 2399 } 2400 loadPaymentData(t) { 2401 return Oe(this, null, function* () { 2402 try { 2403 this.config.isWebIntegrationEnabled ? yield this.loadPaymentDataWeb(t) : yield this.loadPaymentDataNative(t); 2404 } catch (r) { 2405 throw this.logger.errorRemote("[GPay] Load payment data failed", r), r; 2406 } 2407 }); 2408 } 2409 loadPaymentDataWeb(t) { 2410 return Oe(this, null, function* () { 2411 let r = this.sdkService.buildPaymentDataRequest(t.amount, t.currency), s = yield this.sdkService.loadPaymentData(r); 2412 yield this.processPaymentData(s, t), this.logger.info("[GPay] Card registered, deposit submission triggered via DepositSubmitService"); 2413 }); 2414 } 2415 loadPaymentDataNative(t) { 2416 return Oe(this, null, function* () { 2417 let r = this.sdkService.buildPaymentDataRequest(t.amount, t.currency), s = yield this.nativeBridge.requestPaymentData(r); 2418 yield this.processPaymentData(s, t); 2419 }); 2420 } 2421 processPaymentData(t, r) { 2422 return Oe(this, null, function* () { 2423 if (!r.tokenUrl) throw new Error("[GPay] tokenUrl is missing from input details. Cannot register card."); 2424 let s = t?.paymentMethodData?.tokenizationData, n = t?.paymentMethodData?.info;
2425 if (!s?.token || !n?.cardNetwork || !n?.cardDetails) throw new Error("[GPay] Payment data missing required fields (token, cardNetwork, or cardDetails)"); 2426 let a = s.token, o = n.cardNetwork, l = n.cardDetails, c = t.shippingAddress?.name || "", d = yield this.register(a, l, o, r.tokenUrl, c); 2427 return this.depositFlowStore.googlePayResult.set({ 2428 paymentAccountId: d, 2429 cardType: o, 2430 fundingSource: "", 2431 lastDigits: l 2432 }), this.flowActions.triggerGooglePaySubmit$.next(), d; 2433 }); 2434 } 2435 register(t, r, s, n, a) { 2436 return Oe(this, null, function* () { 2437 try { 2438 let o = n.lastIndexOf("?token"), l = a || "", c; 2439 o !== -1 ? c = `${n.substring(0, o)}/gPayDecryptAndRegister?endDigits=${encodeURIComponent(r)}&cardHolderName=${encodeURIComponent(l)}&cardType=${encodeURIComponent(s)}&${n.substring(o + 1)}` : c = `${n}/gPayDecryptAndRegister?endDigits=${encodeURIComponent(r)}&cardHolderName=${encodeURIComponent(l)}&cardType=${encodeURIComponent(s)}`; 2440 let d = { gpayToken: t }; 2441 this.logger.info("[GPay] Registering card with URL:", c); 2442 let u = (yield this.paymentEwalletToken.registerCardDetails(c, d))?.body?.accounts?.[0]?.id ?? ""; 2443 return this.logger.info("[GPay] Card registered, accountId:", u), u; 2444 } catch (o) { 2445 throw this.logger.errorRemote("[GPay] Card registration failed", o), o; 2446 } 2447 }); 2448 } 2449 static ɵfac = function(t) { 2450 return new (t || e)(); 2451 }; 2452 static ɵprov = R({ 2453 token: e, 2454 factory: e.ɵfac, 2455 providedIn: "root" 2456 }); 2457 } 2458 return e; 2459 })(), Qp = (() => { 2460 class e { 2461 api = f(ja); 2462 window = f(dt); 2463 googlePay = f(Jp); 2464 cashierConfig = f(Xr); 2465 issuerBankNames = f(Cp); 2466 static POPULAR_ID_OFFSET = 1e5; 2467 static BANK_DISPLAY_NAMES = { 2468 "HSBC BANK PLC": "HSBC", 2469 "BARCLAYS BANK PLC": "Barclays", 2470 "LLOYDS BANK PLC": "Lloyds", 2471 NATWEST: "NatWest", 2472 "NATIONAL WESTMINSTER BANK PLC": "NatWest", 2473 "ROYAL BANK OF SCOTLAND PLC": "RBS", 2474 "SANTANDER UK PLC": "Santander", 2475 HALIFAX: "Halifax", 2476 "NATIONWIDE BUILDING SOCIETY": "Nationwide", 2477 "TSB BANK PLC": "TSB", 2478 "MOCK-PAYMENTS-GB-REDIRECT": "Monzo" 2479 }; 2480 get allOptionsUrl() { 2481 return this.cashierConfig.useV2DepositApis ? rn.deposit.allOptionsV2 : rn.deposit.allOptions; 2482 } 2483 get usedOptionsUrl() { 2484 return this.cashierConfig.useV2DepositApis ? rn.deposit.usedOptionsV2 : rn.deposit.usedOptions; 2485 } 2486 popularOptions$ = this.api.get(this.allOptionsUrl).pipe(xe((t) => J(C({}, t), { paymentMethods: J(C({}, t?.paymentMethods), { paymentMethods: this.filterPaymentMethods(t?.paymentMethods?.paymentMethods ?? []).map((r, s) => J(C({}, r), { 2487 badge: null, 2488 id: e.POPULAR_ID_OFFSET + s, 2489 isSelected: !1 2490 })) }) }))); 2491 usedOptions$ = this.api.get(this.usedOptionsUrl).pipe(xe((t) => { 2492 let r = t?.usedPaymentMethods?.usedPaymentMethods ?? [], s = this.filterPaymentMethods(this.expandTruelayerMethods(r)); 2493 return J(C({}, t), { usedPaymentMethods: J(C({}, t?.usedPaymentMethods), { usedPaymentMethods: s.map((n, a) => this.mapUsedMethod(n, a)) }) }); 2494 })); 2495 mapUsedMethod(t, r) { 2496 return J(C({}, t), { 2497 isSelected: !1, 2498 title: this.resolveTitle(t), 2499 subTitle: this.resolveSubTitle(t), 2500 isEditable: t.family === "CC", 2501 canDelete: t.family === "CC", 2502 id: r + 1, 2503 instrumentId: this.resolveInstrumentId(t), 2504 paymentAccountDetails: t.paymentAccountDetails, 2505 issuingBank: t.issuingBank, 2506 bankName: this.resolveBankDisplayName(t?.paymentAccountDetails?.bankName ?? "") 2507 }); 2508 } 2509 resolveTitle(t) { 2510 return t.name === Zs.TRUELAYER ? t.paymentAccountDetails.provider_name : t.name; 2511 } 2512 resolveSubTitle(t) { 2513 return t.family === "CC" ? this.resolveBankDisplayName(t.paymentAccountDetails?.issuingBank ?? "") : t.name === Zs.TRUELAYER ? "Pay by bank" : ""; 2514 } 2515 resolveBankDisplayName(t) { 2516 if (!t) return ""; 2517 let r = this.issuerBankNames.resolve(t); 2518 return r !== t ? r : e.BANK_DISPLAY_NAMES[t.toUpperCase()] ?? t; 2519 } 2520 resolveInstrumentId(t) { 2521 return t.family === "CC" ? t.instrumentId?.slice(-4) ?? "" : t.name === Zs.TRUELAYER ? t.paymentAccountDetails.iban?.slice(-4) ?? "" : t.instrumentId ?? ""; 2522 } 2523 filterPaymentMethods(t) { 2524 return t.filter((r) => r.name === "APPLEPAY" || r.name === "APPLEPAYDIRECT" ? typeof this.window.ApplePaySession < "u" : r.name === "GOOGLEPAY" ? this.googlePay.isAvailable() : !0); 2525 } 2526 expandTruelayerMethods(t) { 2527 let r = t.findIndex((a) => a.name === "TRUELAYER" && !a.popularOption); 2528 if (r === -1) return t; 2529 let s = t[r]; 2530 if (!s?.instrumentInfoList?.length) return t; 2531 let n = s.instrumentInfoList.map((a, o) => J(C({}, s), { 2532 id: s.id + o, 2533 instrumentId: a.instrumentId, 2534 instrument: a.instrument, 2535 bankName: a.bankName, 2536 paymentAccountDetails: a.paymentAccountDetails 2537 })); 2538 return [ 2539 ...t.slice(0, r), 2540 ...n, 2541 ...t.slice(r + 1) 2542 ]; 2543 } 2544 static ɵfac = function(t) { 2545 return new (t || e)(); 2546 }; 2547 static ɵprov = R({ 2548 token: e, 2549 factory: e.ɵfac, 2550 providedIn: "root" 2551 }); 2552 } 2553 return e; 2554 })(), Zp = (() => { 2555 class e { 2556 _badges = le({}); 2557 badges = this._badges.asReadonly(); 2558 setBadges(t) { 2559 this._badges.set(t); 2560 } 2561 applyBadges(t) { 2562 let r = this._badges(); 2563 return !t || !Object.keys(r).length ? t : t.map((s) => J(C({}, s), { badge: this.getBadge(s.name, r) })); 2564 } 2565 getBadge(t, r) { 2566 if (!t) return; 2567 let s = t.trim().toLowerCase(), n = Object.values(r).find((a) => a.text && a.variant && a.paymentMethods?.some((o) => o.trim().toLowerCase() === s)); 2568 if (!(!n?.text || !n.variant)) return { 2569 type: n.variant, 2570 title: n.text 2571 }; 2572 } 2573 static ɵfac = function(t) { 2574 return new (t || e)(); 2575 }; 2576 static ɵprov = R({ 2577 token: e, 2578 factory: e.ɵfac, 2579 providedIn: "root" 2580 }); 2581 } 2582 return e; 2583 })(), Vw = (() => { 2584 class e { 2585 badgeStore = f(Zp); 2586 paymentMethodContent = f(Ka); 2587 static ON_HOLD_BADGE_KEY = "onhold"; 2588 static BONUS_INELIGIBLE_BADGE_KEY = "bonusineligible"; 2589 enrich(t, r) { 2590 if (t.length === 0) return t; 2591 let s = this.buildContentMap(), n = this.buildBadgeMap(), a = this.resolveKeyedBadge(e.ON_HOLD_BADGE_KEY), o = this.resolveKeyedBadge(e.BONUS_INELIGIBLE_BADGE_KEY), l = s.size > 0, c = r?.isSavedMethods; 2592 return t.map((d) => { 2593 let u = d.name.toLowerCase(), h = l ? this.resolveContentMetadata(s, u) : void 0, g = this.resolveBadge(d, u, n, a, o), p = c && !d.isOnHold ? void 0 : g, m = Xy(d); 2594 return !h && !p && !m ? d : C(C(C(C({}, d), h && { contentMetadata: h }), p && { badge: p }), m && { displayInstrumentId: m }); 2595 }); 2596 } 2597 resolveBadge(t, r, s, n, a) { 2598 if (t.isOnHold) return n?.info; 2599 let o = [], l = s.get(r); 2600 if (l && o.push(l), t.bonusTargetted !== !0 && a && o.push(a), o.length !== 0) return o.reduce((c, d) => d.priority < c.priority ? d : c).info; 2601 } 2602 resolveKeyedBadge(t) { 2603 let r = this.badgeStore.badges()[t]; 2604 if (!(!r?.text || !r.variant || r.priority <= 0)) return { 2605 info: { 2606 type: r.variant, 2607 title: r.text 2608 }, 2609 priority: r.priority 2610 }; 2611 } 2612 resolveContentMetadata(t, r) { 2613 return t.get(r) ?? (r.startsWith("pay_") ? t.get(r.slice(4)) : void 0); 2614 } 2615 buildContentMap() { 2616 let t = this.paymentMethodContent.content; 2617 if (!t) return /* @__PURE__ */ new Map(); 2618 let r = /* @__PURE__ */ new Map(); 2619 for (let [s, n] of Object.entries(t)) r.set(s.toLowerCase(), { 2620 displayName: n.value, 2621 logoSrc: n.logo?.src, 2622 logoWidth: n.logo?.width, 2623 logoHeight: n.logo?.height, 2624 logoAlt: n.logo?.alt || n.value 2625 }); 2626 return r; 2627 } 2628 buildBadgeMap() { 2629 let t = this.badgeStore.badges(), r = /* @__PURE__ */ new Map(); 2630 for (let s of Object.values(t)) { 2631 if (!s.text || !s.variant || !s.paymentMethods?.length || s.priority <= 0) continue; 2632 let n = { 2633 info: { 2634 type: s.variant, 2635 title: s.text 2636 }, 2637 priority: s.priority 2638 }; 2639 for (let a of s.paymentMethods) { 2640 let o = a.trim().toLowerCase(), l = r.get(o); 2641 (!l || n.priority < l.priority) && r.set(o, n); 2642 } 2643 } 2644 return r; 2645 } 2646 static ɵfac = function(t) { 2647 return new (t || e)(); 2648 }; 2649 static ɵprov = R({ 2650 token: e, 2651 factory: e.ɵfac, 2652 providedIn: "root" 2653 }); 2654 } 2655 return e; 2656 }
2656)(), Hw = (() => { 2657 class e { 2658 paymentOptions = f(Qp); 2659 mapper = f(Vw); 2660 destroyRef = f(ze); 2661 paymentsNav = f(Pp); 2662 journey = f(Hp); 2663 router = f(Il); 2664 tracking = f(Qa); 2665 mfdeBlockState = f($p); 2666 issuerBankNames = f(Cp); 2667 urlAlias = f(Dl); 2668 _selectedPayment = le(null); 2669 _selectedPaymentId = le(null); 2670 _usedOptionsData = le(null); 2671 _popularOptionsData = le(null); 2672 _loadError = le(null); 2673 loadError = this._loadError.asReadonly(); 2674 _loading = !1; 2675 _isStoredPayment = le(!1); 2676 refreshUsed$ = new Xe(); 2677 load() { 2678 this._loading || (this._loading = !0, this.issuerBankNames.load(), this.initUsedOptionsStream(), this.initPopularOptionsStream(), this.destroyRef.onDestroy(() => this.refreshUsed$.complete())); 2679 } 2680 usedMethods = ne(() => { 2681 let t = this._usedOptionsData()?.usedPaymentMethods?.usedPaymentMethods ?? [], r = this._selectedPaymentId(); 2682 return this.mapper.enrich(t.map((s) => J(C({}, s), { isSelected: s.id === r })), { isSavedMethods: !0 }); 2683 }); 2684 popularMethods = ne(() => { 2685 let t = this._popularOptionsData()?.paymentMethods?.paymentMethods ?? [], r = this._selectedPaymentId(); 2686 return this.mapper.enrich(t.map((s) => J(C({}, s), { isSelected: s.id === r }))); 2687 }); 2688 hasUsedMethods = ne(() => this.usedMethods().length > 0); 2689 hasPopularMethods = ne(() => this.popularMethods().length > 0); 2690 isOptionsReady = ne(() => this._usedOptionsData() !== null && this._popularOptionsData() !== null); 2691 selectedPayment = this._selectedPayment.asReadonly(); 2692 isStoredPayment = this._isStoredPayment.asReadonly(); 2693 cardInputDetails = le(null); 2694 binDetails = le(null); 2695 defaultSelected = ne(() => (this.hasUsedMethods() ? this.usedMethods()[0] : this.popularMethods()[0]) ?? null); 2696 resolveFromRoute(t, r) { 2697 if (!t) return; 2698 let s = this.usedMethods(), n = this.popularMethods(); 2699 if (s.length === 0 && n.length === 0) return; 2700 let a = r ? s.find((l) => this.urlAlias.matchesSlug(l.name, t) && (l.instrument === r || l.instrumentId === r)) : n.find((l) => this.urlAlias.matchesSlug(l.name, t)) ?? s.find((l) => this.urlAlias.matchesSlug(l.name, t)); 2701 if (!a) return; 2702 let o = this._selectedPayment(); 2703 o && o.id === a.id || this.selectPayment(a, !!a.instrument); 2704 } 2705 selectPayment(t, r = !1) { 2706 this._selectedPaymentId.set(t.id), this._selectedPayment.set(t), this._isStoredPayment.set(r), this.tracking.method.set(t.name?.toLowerCase() ?? ""), this.tracking.pushPaymentContext(), this.journey.methodSelected({ 2707 method: t.name, 2708 is_saved: r 2709 }); 2710 } 2711 updatePayments(t, r = !1, s = !1) { 2712 this._selectedPaymentId.set(r ? null : t.id), this._selectedPayment.set(t), this._isStoredPayment.set(s), r || (this.tracking.method.set(t.name?.toLowerCase() ?? ""), this.tracking.pushPaymentContext(), this.journey.methodSelected({ 2713 method: t.name, 2714 is_saved: s 2715 })); 2716 } 2717 clearSelection() { 2718 this._selectedPayment.set(null), this._selectedPaymentId.set(null); 2719 } 2720 selectId(t) { 2721 this._selectedPaymentId.set(t); 2722 } 2723 selectAndNavigate(t, r = !1, s = !1) { 2724 let n = this.urlAlias.toSlug(t.name), a = s ? en.depositMyPaymentMethods(n) : en.depositInput(n); 2725 if (this._selectedPayment()?.id === t.id && this.router.url.split("?")[0]?.endsWith(a)) return; 2726 this.selectPayment(t, r); 2727 let o = r && t.instrument ? `?instrumentId=${t.instrument}` : ""; 2728 this.paymentsNav.goToUrl(`${a}${o}`); 2729 } 2730 refreshUsedOptions() { 2731 this.refreshUsed$.next(); 2732 } 2733 initUsedOptionsStream() { 2734 this.refreshUsed$.pipe(Si(() => this.paymentOptions.usedOptions$), he(this.destroyRef)).subscribe((t) => { 2735 let r = t?.usedPaymentMethods?.usedPaymentMethods; 2736 this._usedOptionsData.set(r ? J(C({}, t), { usedPaymentMethods: J(C({}, t.usedPaymentMethods), { usedPaymentMethods: this.applyMfdeStatus(r) }) }) : t); 2737 }), this.refreshUsed$.next(); 2738 } 2739 initPopularOptionsStream() { 2740 this.paymentOptions.popularOptions$.pipe(he(this.destroyRef)).subscribe((t) => { 2741 let r = t?.paymentMethods?.paymentMethods; 2742 this._popularOptionsData.set(r ? J(C({}, t), { paymentMethods: J(C({}, t.paymentMethods), { paymentMethods: this.applyMfdeStatus(r) }) }) : t); 2743 }); 2744 } 2745 applyMfdeStatus(t) { 2746 return t.map((r) => { 2747 let s = r?.details?.userMaxFailDepStatus, n = s?.expiryTime ?? 0, a = !!s?.blocked && n > 0; 2748 return a && this.mfdeBlockState.applyBlock(Ky(r), C(C({ 2749 blocked: !0, 2750 expiryTime: n 2751 }, s?.blockEndDate && { blockEndDate: s.blockEndDate }), s?.blockEndTime && { blockEndTime: s.blockEndTime })), C(C(J(C({}, r), { 2752 isOnHold: a, 2753 holdExpirySeconds: a ? n : 0 2754 }), a && s?.blockEndDate && { blockEndDate: s.blockEndDate }), a && s?.blockEndTime && { blockEndTime: s.blockEndTime }); 2755 }); 2756 } 2757 static ɵfac = function(t) { 2758 return new (t || e)(); 2759 }; 2760 static ɵprov = R({ 2761 token: e, 2762 factory: e.ɵfac, 2763 providedIn: "root" 2764 }); 2765 } 2766 return e; 2767 })(); 2768 })))(); 2769} 2770var Ww; 2771function jw() { 2772 return (jw = Z((() => { 2773 de(), Cr(), Os(), Za(), Ww = (() => { 2774 class e { 2775 registry = /* @__PURE__ */ new Map(); 2776 dispatcher = f(Op); 2777 tracking = f(Qa); 2778 device = f(nr); 2779 registerAction(t, r, s) {
2780 let n = this.registry.get(t) ?? /* @__PURE__ */ new Map(); 2781 n.set(r, s), this.registry.set(t, n); 2782 } 2783 execute(t, r, s, n, a = !1) { 2784 let o = r === "primary" ? n?.primaryButton : r === "secondary" ? n?.secondaryButton : null; 2785 if (a || (r === "close" ? this.tracking.trackRaw(Wa(n?.closeTrackingData, this.device.isMobile)) : this.tracking.trackRaw(Wa(o?.trackingData, this.device.isMobile))), this.dispatcher.dispatch(o ?? void 0)) return !0; 2786 let l = o?.action === "emit" && o.actionValue ? o.actionValue : null, c = l && this.registry.get(s)?.get(l)?.[r] || this.registry.get(s)?.get(t)?.[r]; 2787 return c ? (c(t, n), !0) : !1; 2788 } 2789 clearActions(t) { 2790 this.registry.delete(t); 2791 } 2792 static ɵfac = function(t) { 2793 return new (t || e)(); 2794 }; 2795 static ɵprov = R({ 2796 token: e, 2797 factory: e.ɵfac, 2798 providedIn: "root" 2799 }); 2800 } 2801 return e; 2802 })(); 2803 })))(); 2804} 2805var Yw, Kw, eh, th; 2806function ih() { 2807 return (ih = Z((() => { 2808 Re(), de(), Ye(), st(), Yw = "0", Kw = "1", eh = "2", th = (() => { 2809 var e; 2810 let i = class { 2811 constructor() { 2812 Qi(this, e), this.cookieService = f(yr), this._isEnabled = this.getIsEnabled(), Zi(this, e, f(dt)); 2813 } 2814 get isEnabled() { 2815 return this._isEnabled; 2816 } 2817 toggle() { 2818 this.writeCookie(this._isEnabled ? Yw : eh), this._isEnabled = this.getIsEnabled(), $t(this, e).location.reload(); 2819 } 2820 writeCookie(r) { 2821 this.cookieService.putRaw($e.DarkMode, r, { expires: x$ }); 2822 } 2823 getIsEnabled() { 2824 let r = this.cookieService.get($e.DarkMode); 2825 return r === eh || r === Kw; 2826 } 2827 }; 2828 return e = /* @__PURE__ */ new WeakMap(), i.ɵfac = function(t) { 2829 return new (t || i)(); 2830 }, i.ɵprov = R({ 2831 token: i, 2832 factory: i.ɵfac, 2833 providedIn: "root" 2834 }), i; 2835 })(); 2836 })))(); 2837} 2838function TM(e) { 2839 return e.get(Xn); 2840} 2841function kM() { 2842 return [Z$(qw)]; 2843} 2844var Xn, rh, qw; 2845function sh() { 2846 return (sh = Z((() => { 2847 Re(), de(), Ye(), Et(), yi(), st(), Ts(), xs(), Ht(), ih(), ht(), Xn = (() => { 2848 var e = class extends ri {}; 2849 let i = (e.ɵfac = (() => { 2850 let t; 2851 return function(r) { 2852 return (t || (t = Fe(e)))(r || e); 2853 }; 2854 })(), e.ɵprov = R({ 2855 token: e, 2856 factory: function(t) { 2857 let r = null; 2858 return t ? r = new t() : r = TM(ve(Wt)), r; 2859 }, 2860 providedIn: "root" 2861 }), e); 2862 return i = mt([Ut({ 2863 key: "vnGoogleAnalytics", 2864 product: it.HOST 2865 })], i), i; 2866 })(), rh = (() => { 2867 let e = class Di { 2868 get googleAnalyticsApiEndpoint() { 2869 return `${this.navigationService.location.baseUrl()}/${this.navigationService.location.culture}/api/googleanalytics/track`; 2870 } 2871 get cookiesExpiryDate() { 2872 return this.dateTimeService.getFutureDate(1); 2873 } 2874 constructor() { 2875 this.claimsService = f(V$), this.config = f(Xn), this.cookieService = f(yr), this.darkModeService = f(th), this.dateTimeService = f(Cy), this.destroyRef = f(ze), this.frontendHelperService = f(J$), this.hostApiService = f(a_), this.localStoreService = f(sp), this.log = f(lt), this.nativeAppService = f(Yr), this.navigationService = f(Ai), this.rememberMeService = f(L$), this.userService = f(ii), this.webWorkerService = f(ky), this.window = f(dt), this.ga4EventsAuth = [], this.ga4EventsUnauth = [], this.isDraining = !1, this.hasPersistedQueues = !1, this.hasLoggedConsentDenial = !1, this.handleBeforeUnload = () => { 2876 this.ga4EventsUnauth.length === 0 && this.ga4EventsAuth.length === 0 || (this.persistClientId(), this.flushQueueWithBeacon(this.ga4EventsUnauth, () => this.unauthMeasurement), this.flushQueueWithBeacon(this.ga4EventsAuth, () => this.measurement), this.persistQueues()); 2877 }, this.window.addEventListener(qr.BeforeUnload, this.handleBeforeUnload, !1), this.restoreQueues(); 2878 } 2879 ngOnDestroy() { 2880 this.window.removeEventListener(qr.BeforeUnload, this.handleBeforeUnload, !1); 2881 } 2882 flushQueueWithBeacon(t, r) { 2883 if (t.length === 0) return; 2884 this.dropExpiredEvents(t); 2885 let s = r(); 2886 if (!this.hasClientId(s, t)) return; 2887 let n = this.takeAttributableEvents(t); 2888 for (; n.length > 0;) { 2889 let a = n.splice(0, Di.MaxEventsPerRequest), o = new Blob([JSON.stringify(J(C({}, s), { events: a }))], { type: "application/json" }); 2890 this.window.navigator.sendBeacon(this.googleAnalyticsApiEndpoint, o); 2891 } 2892 } 2893 hasClientId(t, r) { 2894 return t.client_id ? !0 : (this.log.infoRemote(`GOOGLE_ANALYTICS: Retained ${r.length} GA4 event(s) until a client_id is available: ${this.eventNames(r)}`), !1); 2895 } 2896 takeAttributableEvents(t) { 2897 let r = this.resolveSession(); 2898 if (!r) return this.log.infoRemote(`GOOGLE_ANALYTICS: Retained ${t.length} GA4 event(s) until a GA4 session is active: ${this.eventNames(t)}`), []; 2899 let s = [], n = []; 2900 return t.forEach((a) => (this.belongsToSession(a, r) ? s : n).push(a)), t.splice(0), n.length > 0 && this.log.infoRemote(`GOOGLE_ANALYTICS: Discarded ${n.length} GA4 event(s) that predate the active session: ${this.eventNames(n)}`), this.applySessionId(s, r.id), s; 2901 } 2902 belongsToSession(t, r) { 2903 return t.timestamp_micros ? t.timestamp_micros / 1e3 >= r.startedAtMs - Di.SessionInactivityWindowInMilliseconds : !0; 2904 } 2905 dropExpiredEvents(t) {
2906 let r = this.dateTimeService.now().getTime(), s = []; 2907 for (let n = t.length - 1; n >= 0; n--) { 2908 let a = t[n]?.timestamp_micros; 2909 a && r - a / 1e3 > Di.MaxEventAgeInMilliseconds && s.push(...t.splice(n, 1)); 2910 } 2911 return s.length === 0 ? 0 : (this.log.infoRemote(`GOOGLE_ANALYTICS: Discarded ${s.length} GA4 event(s) too old to attribute: ${this.eventNames(s)}`), s.length); 2912 } 2913 eventNames(t) { 2914 return t.map((r) => r.name).join(", "); 2915 } 2916 applySessionId(t, r) { 2917 t.forEach((s) => { 2918 s.params && (s.params = J(C({}, s.params), { session_id: r })); 2919 }); 2920 } 2921 get isAuthenticatedOrHasWorkflow() { 2922 return !!this.claimsService.get(H$.WorkflowType); 2923 } 2924 get measurement() { 2925 return { 2926 client_id: this.cookieService.get($e.VnGoogleAnalyticsClientId), 2927 user_id: this.userService.accountId ?? void 0, 2928 timestamp_micros: this.getCurrentTimestampMicros(), 2929 user_properties: C(C({}, this.getCommonUserProperties("logged_in")), this.authUserProperties), 2930 events: [] 2931 }; 2932 } 2933 get unauthMeasurement() { 2934 return { 2935 client_id: this.cookieService.get($e.VnGoogleAnalyticsClientId), 2936 user_id: void 0, 2937 timestamp_micros: this.getCurrentTimestampMicros(), 2938 user_properties: this.getCommonUserProperties("not_logged_in"), 2939 events: [] 2940 }; 2941 } 2942 getCommonUserProperties(t) { 2943 return { 2944 appinfo: { value: this.nativeAppService.isNative ? "app traffic" : "web traffic" }, 2945 device_native: { value: this.nativeAppService.nativeMode.toLowerCase() }, 2946 page_fe: { value: this.frontendHelperService.getFrontendDescription() }, 2947 prof_country: { value: this.userService.country?.toLowerCase() }, 2948 prof_loggedin: { value: t }, 2949 remember_me: { value: this.rememberMeService.tokenExists() ? "remember me cookie - enabled" : "remember me cookie - disabled" } 2950 }; 2951 } 2952 get authUserProperties() { 2953 return { prof_customerid: { value: this.userService.accountId ?? void 0 } }; 2954 } 2955 get consentState() { 2956 let t = this.cookieService.get($e.GoogleTrackingConsent); 2957 if (!t) return "unresolved"; 2958 let r = new URLSearchParams(t).get("groups")?.split(",").map((s) => s.trim()).find((s) => s.startsWith(`${Di.AnalyticsConsentGroup}:`)); 2959 return r ? r.endsWith(":1") ? "granted" : "denied" : t.includes(`${Di.AnalyticsConsentGroup}:0`) ? "denied" : "unresolved"; 2960 } 2961 get isConsentGiven() { 2962 return this.consentState !== "denied"; 2963 } 2964 getCurrentTimestampMicros() {
2965 return this.dateTimeService.now().getTime() * 1e3; 2966 } 2967 get gaSessionCookieName() { 2968 let t = this.config.measurementId.replace("G-", ""); 2969 return `${$e.GoogleAnalytics}_${t}`; 2970 } 2971 track(t) { 2972 if (!this.config.skipConsentCheck && !this.isConsentGiven) { 2973 this.hasLoggedConsentDenial || (this.log.infoRemote("GOOGLE_ANALYTICS: Tracking consent not given, events will be skipped"), this.hasLoggedConsentDenial = !0); 2974 return; 2975 } 2976 let r = this.cookieService.get($e.VnGoogleAnalyticsClientId); 2977 r || this.cookieService.get($e.GoogleAnalytics) && (r = this.updateClientIdCookie()); 2978 let s = this.buildEventData(t); 2979 if (!r) { 2980 this.queueEvent(s); 2981 return; 2982 } 2983 if (!this.resolveSessionId()) { 2984 this.queueEvent(s), this.scheduleEventBatch(); 2985 return; 2986 } 2987 if (this.config.measurementEndpoint) { 2988 let n = [s]; 2989 this.enrichTrackingParams(n); 2990 let a = this.isAuthenticatedOrHasWorkflow ? this.measurement : this.unauthMeasurement; 2991 if (!this.hasClientId(a, n) || !s.params?.session_id) { 2992 this.queueEvent(s), this.scheduleEventBatch(); 2993 return; 2994 } 2995 this.sendWithRetry(J(C({}, a), { events: n })); 2996 } else this.queueEvent(s), this.scheduleEventBatch(); 2997 } 2998 updateCookies() { 2999 this.updateClientIdCookie(), this.updateSessionIdCookie(); 3000 } 3001 buildEventData(t) { 3002 return { 3003 name: t.name, 3004 timestamp_micros: t.timestamp_micros ?? this.getCurrentTimestampMicros(), 3005 params: C({ 3006 clean_page_URL: this.navigationService.location.baseUrl() + this.navigationService.location.path(), 3007 consent_analytics_event: this.consentState, 3008 custom_timestamp: this.getCurrentTimestampMicros().toString(), 3009 page_hostname: this.navigationService.location.host(), 3010 page_location: this.navigationService.location.absUrl(), 3011 page_name: this.navigationService.location.path(), 3012 page_nightmode: this.darkModeService.isEnabled ? "night mode on" : "night mode off", 3013 page_referrer: this.navigationService.previousUrl, 3014 page_trackerid: this.cookieService.get($e.TrackerId), 3015 prof_customerid_event: this.userService.accountId || void 0, 3016 prof_loggedin_event: this.isAuthenticatedOrHasWorkflow ? "logged_in" : "not_logged_in", 3017 session_id: void 0, 3018 vn_client_id: this.cookieService.get($e.VnClientId) || void 0, 3019 vn_session_id: this.cookieService.get($e.VnSessionId) || void 0 3020 }, t.params) 3021 }; 3022 } 3023 queueEvent(t) { 3024 let r = this.isAuthenticatedOrHasWorkflow ? this.ga4EventsAuth : this.ga4EventsUnauth; 3025 if (r.length >= Di.MaxQueueSize && (this.log.infoRemote(`GOOGLE_ANALYTICS: GA4 event queue exceeded ${Di.MaxQueueSize} events. Flushing immediately.`), this.processBatchedEvents()), r.length >= Di.MaxQueueSize) { 3026 let [s] = r.splice(0, 1); 3027 this.log.infoRemote(`GOOGLE_ANALYTICS: GA4 event queue is full, dropped the oldest event: ${s?.name}`); 3028 } 3029 r.push(t), this.persistQueues(); 3030 } 3031 scheduleEventBatch() { 3032 this.webWorkerService.createWorker(yy.TrackEventsTimeout, { timeout: this.config.isConfigReady ? this.config.trackEventsTimeoutInMilliseconds : 5e3 }, () => { 3033 this.processBatchedEvents(), this.webWorkerService.removeWorker(yy.TrackEventsTimeout); 3034 }); 3035 } 3036 processBatchedEvents() { 3037 if (!this.isDraining) { 3038 this.isDraining = !0; 3039 try { 3040 this.processBatchForQueue(this.ga4EventsUnauth, this.unauthMeasurement), this.processBatchForQueue(this.ga4EventsAuth, this.measurement), this.persistQueues(); 3041 } finally { 3042 this.isDraining = !1; 3043 } 3044 } 3045 } 3046 processBatchForQueue(t, r) { 3047 if (t.length === 0 || (this.dropExpiredEvents(t), t.length === 0 || !this.hasClientId(r, t))) return; 3048 let s = this.takeAttributableEvents(t); 3049 for (; s.length > 0;) { 3050 let n = s.splice(0, Di.MaxEventsPerRequest), a = J(C({}, r), { events: n }); 3051 this.config.measurementEndpoint ? this.sendWithRetry(a) : this.sendEvents(a); 3052 } 3053 } 3054 updateClientIdCookie() {
3055 let t = this.persistClientId(); 3056 return t && (this.previousClientId || (this.log.infoRemote(`GOOGLE_ANALYTICS: Client ID is now available (${t}), flushing queued events`), this.processBatchedEvents()), this.previousClientId = t), t; 3057 } 3058 persistClientId() { 3059 let t = this.cookieService.get($e.GoogleAnalytics)?.match(this.config.gaCookieClientIdRegex)?.[1]; 3060 return t && this.cookieService.put($e.VnGoogleAnalyticsClientId, t, { expires: this.cookiesExpiryDate }), t; 3061 } 3062 updateSessionIdCookie() { 3063 let t = this.cookieService.get(this.gaSessionCookieName)?.match(this.config.gaCookieSessionIdRegex)?.[1]; 3064 if (t) { 3065 this.cookieService.put($e.VnGoogleAnalyticsSessionId, t, { expires: this.cookiesExpiryDate }); 3066 let r = !this.previousSessionId; 3067 this.previousSessionId = t, r && (this.log.infoRemote(`GOOGLE_ANALYTICS: GA4 session is now available (${t}), flushing queued events`), this.processBatchedEvents()); 3068 } 3069 } 3070 sendEvents(t) { 3071 this.enrichTrackingParams(t.events), this.hostApiService.post("googleanalytics/track", t, { 3072 keepalive: !0, 3073 showSpinner: !1 3074 }).pipe(ei((r) => (this.log.errorRemote(`GOOGLE_ANALYTICS: Failed to track GA4 ${t.user_properties.prof_loggedin.value} events (backend API): ${JSON.stringify(t)}`, r), je(null))), he(this.destroyRef)).subscribe(); 3075 } 3076 sendWithRetry(t, r = 0) { 3077 if (!this.config.measurementEndpoint) return; 3078 let s = t.user_properties.prof_loggedin.value, n = `GOOGLE_ANALYTICS: Failed to track GA4 ${s} events after ${this.config.retryCount} retries (frontend API): ${JSON.stringify(t)}`; 3079 this.window.fetch(this.config.measurementEndpoint, { 3080 method: "POST", 3081 body: JSON.stringify(t), 3082 keepalive: !0 3083 }).then((a) => { 3084 a.ok ? this.log.infoRemote(`GOOGLE_ANALYTICS: Successfully tracked GA4 ${s} event (frontend API): ${JSON.stringify(t)}`) : r < this.config.retryCount ? this.sendWithRetry(t, r + 1) : this.log.errorRemote(n, a); 3085 }, (a) => { 3086 a instanceof TypeError ? this.log.infoRemote(`GOOGLE_ANALYTICS: Frontend GA4 request failed; falling back to backend API (${a.name}: ${a.message}): ${JSON.stringify(t)}`) : this.log.errorRemote(n, a), this.sendEvents(t); 3087 }); 3088 } 3089 syncGaCookies() { 3090 let t = this.cookieService.get(this.gaSessionCookieName), r = this.cookieService.get($e.VnGoogleAnalyticsSessionId), s = this.cookieService.get($e.GoogleAnalytics), n = this.cookieService.get($e.VnGoogleAnalyticsClientId), a = !r || t && !t.includes(r), o = !n || s && !s.includes(n); 3091 return a || o ? (this.updateCookies(), !0) : !1; 3092 } 3093 enrichTrackingParams(t) { 3094 this.syncGaCookies(); 3095 let r = this.resolveSessionId(); 3096 r && this.applySessionId(t, r); 3097 } 3098 persistQueues() { 3099 if (this.ga4EventsAuth.length === 0 && this.ga4EventsUnauth.length === 0) { 3100 this.hasPersistedQueues && (this.localStoreService.remove(Tl.GoogleAnalyticsEventQueue), this.hasPersistedQueues = !1); 3101 return; 3102 } 3103 this.localStoreService.set(Tl.GoogleAnalyticsEventQueue, { 3104 auth: this.ga4EventsAuth, 3105 unauth: this.ga4EventsUnauth 3106 }), this.hasPersistedQueues = !0; 3107 } 3108 readStoredQueues() { 3109 try { 3110 return this.localStoreService.get(Tl.GoogleAnalyticsEventQueue); 3111 } catch (t) { 3112 return this.log.infoRemote(`GOOGLE_ANALYTICS: Could not restore the GA4 event queue, discarding it: ${t}`), this.localStoreService.remove(Tl.GoogleAnalyticsEventQueue), null; 3113 } 3114 } 3115 restoreQueues() { 3116 let t = this.readStoredQueues(); 3117 t && (this.hasPersistedQueues = !0, Array.isArray(t.auth) && this.ga4EventsAuth.push(...t.auth), Array.isArray(t.unauth) && this.ga4EventsUnauth.push(...t.unauth), this.dropExpiredEvents(this.ga4EventsAuth) + this.dropExpiredEvents(this.ga4EventsUnauth) > 0 && this.persistQueues(), (this.ga4EventsAuth.length > 0 || this.ga4EventsUnauth.length > 0) && this.scheduleEventBatch()); 3118 } 3119 resolveSessionId() { 3120 return this.resolveSession()?.id; 3121 } 3122 resolveSession() { 3123 let t = this.cookieService.get(this.gaSessionCookieName); 3124 if (!t) return; 3125 let r = t.match(this.config.gaCookieSessionIdRegex)?.[1]; 3126 if (!r || !this.isSessionActive(t)) return; 3127 let s = parseInt(r, 10); 3128 return { 3129 id: r, 3130 startedAtMs: isNaN(s) ? 0 : s * 1e3 3131 }; 3132 } 3133 isSessionActive(t) {
3134 let r = t.match(Di.GaCookieLastActivityRegex)?.[1]; 3135 if (!r) return !0; 3136 let s = parseInt(r, 10); 3137 if (isNaN(s) || s <= 0) return !1; 3138 let n = this.dateTimeService.now().getTime() - s * 1e3; 3139 return n >= -Di.MaxClockSkewInMilliseconds && n <= Di.SessionInactivityWindowInMilliseconds; 3140 } 3141 }; 3142 return e.MaxEventsPerRequest = 25, e.MaxQueueSize = 25, e.SessionInactivityWindowInMilliseconds = 18e5, e.MaxClockSkewInMilliseconds = 3e5, e.MaxEventAgeInMilliseconds = 1728e5, e.GaCookieLastActivityRegex = /\$t(\d+)/, e.AnalyticsConsentGroup = "C0002", e.ɵfac = function(i) { 3143 return new (i || e)(); 3144 }, e.ɵprov = R({ 3145 token: e, 3146 factory: e.ɵfac, 3147 providedIn: "root" 3148 }), e; 3149 })(), qw = (() => { 3150 let e = class { 3151 constructor() { 3152 this.config = f(Xn), this.googleAnalyticsService = f(rh), this.googleAnalyticsCoreService = f(Oy); 3153 } 3154 onFeatureInit() { 3155 return Oe(this, null, function* () { 3156 yield Vt(this.config.whenReady), this.googleAnalyticsCoreService.set(this.googleAnalyticsService); 3157 }); 3158 } 3159 }; 3160 return e.ɵfac = function(i) { 3161 return new (i || e)(); 3162 }, e.ɵprov = R({ 3163 token: e, 3164 factory: e.ɵfac 3165 }), e; 3166 })(); 3167 })))(); 3168} 3169var Xw; 3170function Jw() { 3171 return (Jw = Z((() => { 3172 de(), st(), sh(), Xw = (() => { 3173 class e { 3174 cookieService = f(yr); 3175 gaConfig = f(Xn); 3176 nativeAppService = f(Yr); 3177 get gaSessionId() { 3178 let t = this.gaConfig.measurementId?.replace("G-", ""); 3179 if (!t) return; 3180 let r = this.cookieService.get(`${$e.GoogleAnalytics}_${t}`); 3181 if (r) return r.match(this.gaConfig.gaCookieSessionIdRegex)?.[1] || void 0; 3182 } 3183 get gaClientId() { 3184 let t = this.cookieService.get($e.GoogleAnalytics); 3185 if (t) return t.match(this.gaConfig.gaCookieClientIdRegex)?.[1] || void 0; 3186 }
3187 get entryUrl() { 3188 return this.cookieService.get($e.EntryUrl) || void 0; 3189 } 3190 get nativeApp() { 3191 let t = this.nativeAppService.applicationName; 3192 return t && t.toLowerCase() !== "unknown" ? t : void 0; 3193 } 3194 static ɵfac = function(t) { 3195 return new (t || e)(); 3196 }; 3197 static ɵprov = R({ 3198 token: e, 3199 factory: e.ɵfac, 3200 providedIn: "root" 3201 }); 3202 } 3203 return e; 3204 })(); 3205 })))(); 3206} 3207var Qw, Zw, e1, t1, i1, r1, s1, n1, a1; 3208function o1() { 3209 return (o1 = Z((() => { 3210 Qw = { 3211 DEPOSIT_OPTIONS: "DEPOSIT_OPTIONS", 3212 DEPOSIT_OPTIONS_BELOW_SAVED: "DEPOSIT_OPTIONS_BELOW_SAVED", 3213 DEPOSIT_OPTIONS_MODAL_ABOVE_TITLE: "DEPOSIT_OPTIONS_MODAL_ABOVE_TITLE", 3214 DEPOSIT_INPUT: "DEPOSIT_INPUT", 3215 DEPOSIT_FORM_TOP: "DEPOSIT_FORM_TOP", 3216 DEPOSIT_PAYMENT_FORM_ABOVE_TITLE: "DEPOSIT_PAYMENT_FORM_ABOVE_TITLE", 3217 DEPOSIT_PAYMENT_FORM_BELOW_TITLE: "DEPOSIT_PAYMENT_FORM_BELOW_TITLE", 3218 DEPOSIT_SUCCESS: "DEPOSIT_SUCCESS", 3219 DEPOSIT_ERRORS: "DEPOSIT_ERRORS", 3220 DEPOSIT_INLINE: "DEPOSIT_INLINE", 3221 IRELAND_WALLET_INFO: "IRELAND_WALLET_INFO", 3222 WITHDRAWAL: "WITHDRAWAL", 3223 WITHDRAWAL_TOP: "WITHDRAWAL_TOP", 3224 WITHDRAWAL_ABOVE_SUBMIT: "WITHDRAWAL_ABOVE_SUBMIT", 3225 WITHDRAWAL_PAYMENT_FORM_ABOVE_TITLE: "WITHDRAWAL_PAYMENT_FORM_ABOVE_TITLE", 3226 WITHDRAWAL_PAYMENT_FORM_BELOW_TITLE: "WITHDRAWAL_PAYMENT_FORM_BELOW_TITLE", 3227 WITHDRAWAL_SUCCESS: "WITHDRAWAL_SUCCESS", 3228 QD_IRELAND_WALLET_MESSAGES: "QD_IRELAND_WALLET_MESSAGES", 3229 QD_IRELAND_GAMING_LIMIT: "QD_IRELAND_GAMING_LIMIT", 3230 IREALAND_GAMING_LIMIT: "IREALAND_GAMING_LIMIT", 3231 IRELAND_WALLET_TOASTERS: "IRELAND_WALLET_TOASTERS", 3232 EDIT_CARD: "EDIT_CARD", 3233 UK_LCCP_DEPOSIT_LIMIT_MESSAGES: "UK_LCCP_DEPOSIT_LIMIT_MESSAGES", 3234 CO_DEPOSIT_LIMIT_MESSAGES: "CO_DEPOSIT_LIMIT_MESSAGES", 3235 GDL_FRA_LTM: "GDL_FRA_LTM", 3236 DEPOSIT_DECLINED: "DEPOSIT_DECLINED", 3237 POPUP: "POPUP" 3238 }, Zw = { 3239 CARD_UPDATE: "editcard/card-update",
3240 CARD_DELETE: "editcard/card-delete", 3241 CARD_ERROR: "editcard/card-error", 3242 PAYMENT_LIMIT_BLOCK: "deposit/payment_limit_block", 3243 DEPOSIT_CURFEW: "deposit/deposit_curfew", 3244 PLAY_BREAK: "deposit/play_break", 3245 COMMON_ERROR: "common-error", 3246 POP_UP_BLOCKED: "deposit/popup_blocked_message", 3247 TRUELAYER_DELETE: "deposit/truelayer/delete-instrument", 3248 TRUELAYER_DELETE_ON_LIMIT: "deposit/truelayer/delete-instrument-on-limit", 3249 ARC_INTERVENTION: "Arc/intervention_message", 3250 ADA_BLOCKED: "Ada/blocked", 3251 ADA_SUCCESS_LIMIT: "Ada/success-limit", 3252 RG_SUCCESS_THRESHOLD: "success/rg-success/success-threshold", 3253 RG_SUCCESS_THRESHOLD_KYC: "success/rg-success/success-threshold-kyc", 3254 DPAN_BIN_EXCLUDED: "success/DPAN/dpan-bonus", 3255 RG_LIMIT_PARTIAL: "RG-limit/rg-limit-partial", 3256 RG_LIMIT_EXCEEDED: "RG-limit/rg-limit-exceeded", 3257 SESSION_LIMIT_BREACHED: "SessionLimit/session-limit-breached", 3258 SESSION_TIME_LIMIT_REACHED: "SessionLimit/session-time-limit-reached", 3259 BV_RISK_REJECT_BANNER: "Deposit/Decline/bv_risk_rejected_", 3260 WITHDRAWAL_NO_ELIGIBLE_METHODS: "Withdrawal/no-eligible-methods", 3261 NOT_ELIGIBLE_FOR_WITHDRAWALS: "Withdrawal/not-eligible-for-withdrawals", 3262 PAZE_ERROR_SESSION: "Deposit/Decline/paze/session", 3263 PAZE_ERROR_CONNECTION: "Deposit/Decline/paze/connection", 3264 PAZE_ERROR_GENERIC: "Deposit/Decline/paze/generic" 3265 }, e1 = { 3266 BLOCKED: "withdrawal/ireland-msgs/ireland-wallet-blocked", 3267 KYC_PENDING: "withdrawal/ireland-msgs/ireland-wallet-kyc-pending", 3268 SPORTS_KYC_PENDING_INFO: "withdrawal/ireland-msgs/ireland-sports-kyc-pending-info", 3269 WALLET_PRIORITY: "withdrawal/ireland-msgs/ireland-wallet-priority" 3270 }, t1 = { 3271 SPORTS_KYC_PENDING: "deposit/ireland/sports-kyc-pending", 3272 GAMING_UNVERF_EXHAUSTED: "deposit/ireland/gaming-unverf-exhausted", 3273 GAMING_PENDING: "deposit/ireland/gaming-pending", 3274 GAMING_PENDING_EXHAUSTED: "deposit/ireland/gaming-pending-exhausted", 3275 GAMING_MIN_LIMIT: "deposit/ireland/gaming-limit-lessthan-minlimit", 3276 GAMING_PENDING_LIMIT_AVAILABLE: "deposit/ireland/gaming-pending-limit-available", 3277 GAMING_UNVERF_LIMIT_AVAILABLE: "deposit/ireland/gaming-unver-limit-available", 3278 GAMING_PENDING_MINLIMIT: "deposit/ireland/gaming-pending-minlimit", 3279 WALLET_SELECTION: "deposit/ireland/wallet-selection" 3280 }, i1 = { 3281 FULLY_BLOCKED: "deposit/qd/ireland-msgs/fully-blocked", 3282 VERIFICATION_IN_PROGRESS: "deposit/qd/ireland-msgs/verification-in-progress", 3283 PENDING_LIMIT_AVAILABLE: "deposit/qd/ireland-msgs/pending-limit-available", 3284 SPORTS_UNVERIFIED: "deposit/qd/ireland-msgs/sports-unverified", 3285 SPORTS_KYC_PENDING: "deposit/qd/ireland-msgs/sports-kyc-pending", 3286 SPORTS_KYC_PENDING_DISMISSED: "deposit/qd/ireland-msgs/sports-kyc-pending-dismissed", 3287 GAMING_MIN_LIMIT: "deposit/qd/ireland-msgs/gaming-limit-lessthan-minlimit", 3288 GAMING_PENDING_MIN_LIMIT: "deposit/qd/ireland-msgs/gaming-pending-minlimit", 3289 GAMING_UNVERF_LIMIT_AVAILABLE: "deposit/qd/ireland-msgs/gaming-unver-limit-available", 3290 GAMING_KYC_PENDING_LIMIT_AVAILABLE: "deposit/qd/ireland-msgs/gaming-kyc-pending-limit-available" 3291 }, r1 = { 3292 GROSS_LIMIT_ADJUSTABLE_STATE: "deposit/uk/lccp/gross-limit-available", 3293 NET_LIMIT_ADJUSTABLE_STATE: "deposit/uk/lccp/net-limit-available", 3294 GROSS_LIMIT_BLOCKING_STATE: "deposit/uk/lccp/gross-limit-blocked", 3295 NET_LIMIT_BLOCKING_STATE: "deposit/uk/lccp/net-limit-blocked" 3296 }, s1 = { 3297 AGENT_GROSS_LIMIT_ADJUSTABLE_STATE: "deposit/uk/lccp/agent-gross-limit-available", 3298 AGENT_NET_LIMIT_ADJUSTABLE_STATE: "deposit/uk/lccp/agent-net-limit-available", 3299 AGENT_GROSS_LIMIT_BLOCKING_STATE: "deposit/uk/lccp/agent-gross-limit-blocked", 3300 AGENT_NET_LIMIT_BLOCKING_STATE: "deposit/uk/lccp/agent-net-limit-blocked" 3301 }, n1 = { 3302 GDL_FRA_LIMIT_EXCEEDED: "deposit/Uk/gdl-fra/gdl-fra-limit-exceeded", 3303 GDL_FRA_LIMIT_TO_BE_EXCEEDED: "deposit/Uk/gdl-fra/gdl-fra-limit-to-be-exceeded" 3304 }, a1 = { 3305 REMINDER: "deposit/Colorado/deposits-limit-reminder", 3306 EXHAUSTED: "deposit/Colorado/deposits-limit-exhausted" 3307 }; 3308 })))(); 3309} 3310function l1(e, i, t) { 3311 let r = (s) => s && t(s, ...i); 3312 return J(C({}, e), { 3313 title: r(e.title), 3314 text: r(e.text) ?? e.text, 3315 loadTrackingData: nh(e.loadTrackingData, i, t), 3316 closeTrackingData: nh(e.closeTrackingData, i, t), 3317 primaryButton: e.primaryButton ? c1(e.primaryButton, r, i, t) : e.primaryButton, 3318 secondaryButton: e.secondaryButton ? c1(e.secondaryButton, r, i, t) : e.secondaryButton 3319 }); 3320} 3321function c1(e, i, t, r) { 3322 return J(C({}, e), { 3323 text: i(e.text), 3324 actionValue: i(e.actionValue), 3325 trackingData: nh(e.trackingData, t, r), 3326 actionData: e.actionData ? xM(e.actionData, i) : e.actionData 3327 }); 3328} 3329function nh(e, i, t) { 3330 if (!e) return e; 3331 let r = i.map((n) => n?.toLowerCase() ?? ""), s = {}; 3332 for (let [n, a] of Object.entries(e)) s[n] = t(a, ...r); 3333 return s; 3334} 3335function xM(e, i) { 3336 let t = {}; 3337 for (let [r, s] of Object.entries(e)) t[r] = i(s) ?? s; 3338 return t; 3339} 3340var ah, oh, d1; 3341function u1() { 3342 return (u1 = Z((() => {
3343 Re(), de(), sy(), Et(), st(), Cr(), Os(), Za(), ah = (() => { 3344 class e { 3345 api = f(Qs); 3346 logger = f(lt); 3347 cachedContent = le(/* @__PURE__ */ new Map()); 3348 getBannerContent(t) { 3349 let r = this.cachedContent(), s = [], n = []; 3350 if (t.forEach((o) => { 3351 let l = r.get(o.toLowerCase()); 3352 l ? s.push(l) : n.push(o); 3353 }), n.length === 0) return je(s); 3354 let a = { messageNames: n }; 3355 return this.api.get("MessageContent/content", a).pipe(xe((o) => { 3356 if (!o || !o.messages || typeof o.messages != "object") return this.logger.error("MessageContent API returned invalid response", o), s; 3357 let l = Object.entries(o.messages).map(([c, d]) => ({ 3358 id: c, 3359 title: d.title ?? "", 3360 text: d.text ?? "", 3361 messageType: d.messageType ?? "info", 3362 displayType: d.displayType ?? "inline", 3363 showCloseButton: d.showCloseButton ?? !0, 3364 itemType: d.itemType ?? void 0, 3365 position: d.position ?? void 0, 3366 inverse: d.inverse ?? !1, 3367 primaryButton: d.primaryButton ?? {}, 3368 secondaryButton: d.secondaryButton ?? {}, 3369 loadTrackingData: d.loadTrackingData ?? {}, 3370 closeTrackingData: d.closeTrackingData ?? {} 3371 })); 3372 return this.cachedContent.update((c) => { 3373 let d = new Map(c); 3374 return l.forEach((u) => d.set(u.id.toLowerCase(), u)), d; 3375 }), [...s, ...l]; 3376 })); 3377 } 3378 clearCache(t) { 3379 t ? this.cachedContent.update((r) => { 3380 let s = new Map(r); 3381 return t.forEach((n) => s.delete(n.toLowerCase())), s; 3382 }) : this.cachedContent.set(/* @__PURE__ */ new Map()); 3383 } 3384 static ɵfac = function(t) { 3385 return new (t || e)(); 3386 }; 3387 static ɵprov = R({ 3388 token: e, 3389 factory: e.ɵfac, 3390 providedIn: "root" 3391 }); 3392 } 3393 return e; 3394 })(), oh = new Te("BannerPopupOpener"), d1 = (() => { 3395 class e { 3396 bannerContentService = f(ah); 3397 destroyRef = f(ze); 3398 logger = f(lt); 3399 device = f(nr); 3400 utils = f(ny); 3401 tracking = f(Qa); 3402 queue = le(/* @__PURE__ */ new Map()); 3403 idCounter = 0; 3404 openPopups = /* @__PURE__ */ new Set(); 3405 positionedBannersCache = /* @__PURE__ */ new Map(); 3406 popupOpener = f(oh, { optional: !0 }); 3407 getBannersForPosition(t) { 3408 let r = this.positionedBannersCache.get(t); 3409 return r || (r = ne(() => this.queue().get(t) || []), this.positionedBannersCache.set(t, r)), r; 3410 } 3411 fetch(t) { 3412 return this.bannerContentService.getBannerContent(t); 3413 } 3414 loadBanner(t, r, s, n) { 3415 let a = Array.isArray(t) ? t : [t]; 3416 this.loadBanners(a, r, s, n); 3417 } 3418 showTemporaryBanner(t, r, s, n = iw) { 3419 this.loadBanner(t, r, s), setTimeout(() => this.clear(r), n); 3420 } 3421 loadBanners(t, r, s, n) { 3422 this.fetch(t).pipe(he(this.destroyRef)).subscribe({ 3423 next: (a) => a.forEach((o, l) => { 3424 let c = s ? l1(o, s, this.utils.format.bind(this.utils)) : o; 3425 n && (c = this.applyActionDataOverride(c, n)); 3426 let d = c.id || t[l] || this.generateId(); 3427 this.shouldShowAsPopup(c.displayType) ? this.openModal(J(C({}, c), { id: d })) : this.add(J(C({}, c), { id: d }), r); 3428 }), 3429 error: (a) => this.logger.error("Failed to load banner content", a) 3430 }); 3431 } 3432 shouldShowAsPopup(t) { 3433 switch (t) { 3434 case "popup": return !0; 3435 case "inline-popup": return this.device.isMobile; 3436 case "popup-inline": return !this.device.isMobile; 3437 default: return !1; 3438 } 3439 } 3440 openPopup(t) { 3441 this.fetch([t]).pipe(he(this.destroyRef)).subscribe({ 3442 next: (r) => { 3443 let s = r[0]; 3444 s && this.openModal(J(C({}, s), { id: s.id || this.generateId() })); 3445 }, 3446 error: (r) => this.logger.error("Failed to load popup content", r) 3447 }); 3448 } 3449 add(t, r = "default") { 3450 if (!t) { 3451 this.logger.error("Attempted to add invalid banner config"); 3452 return; 3453 } 3454 let s = t.id || this.generateId(), n = J(C({}, t), { id: s }); 3455 this.queue.update((a) => { 3456 let o = new Map(a), l = (o.get(r) ?? []).filter((c) => c.id !== s); 3457 return o.set(r, [...l, n]), o; 3458 }), this.tracking.trackRaw(Wa(t.loadTrackingData, this.device.isMobile)); 3459 } 3460 remove(t, r = "default") { 3461 this.queue.update((s) => { 3462 let n = new Map(s), a = n.get(r) ?? []; 3463 return n.set(r, a.filter((o) => o.id !== t)), n; 3464 }); 3465 } 3466 clear(t) { 3467 t ? this.queue.update((r) => { 3468 let s = new Map(r); 3469 return s.delete(t), s; 3470 }) : this.queue.set(/* @__PURE__ */ new Map()); 3471 } 3472 openModal(t) { 3473 let r = t.id; 3474 !r || this.openPopups.has(r) || (this.openPopups.add(r), this.popupOpener ? (this.popupOpener(t).subscribe(() => this.openPopups.delete(r)), this.tracking.trackRaw(Wa(t.loadTrackingData, this.device.isMobile))) : (this.logger.warn("[BannerQueue] No popup opener registered â provide BANNER_POPUP_OPENER token"), this.openPopups.delete(r))); 3475 } 3476 generateId() { 3477 return `banner-${Date.now()}-${++this.idCounter}`; 3478 } 3479 applyActionDataOverride(t, r) { 3480 return J(C({}, t), {
3481 primaryButton: t.primaryButton ? J(C({}, t.primaryButton), { actionData: C(C({}, t.primaryButton.actionData), r) }) : t.primaryButton, 3482 secondaryButton: t.secondaryButton ? J(C({}, t.secondaryButton), { actionData: C(C({}, t.secondaryButton.actionData), r) }) : t.secondaryButton 3483 }); 3484 } 3485 static ɵfac = function(t) { 3486 return new (t || e)(); 3487 }; 3488 static ɵprov = R({ 3489 token: e, 3490 factory: e.ɵfac, 3491 providedIn: "root" 3492 }); 3493 } 3494 return e; 3495 })(); 3496 })))(); 3497} 3498function IM(e) { 3499 return e.get(Hl); 3500} 3501function OM() { 3502 return [Al(p1), O$(h1)]; 3503} 3504var Hl, Ul, p1, h1, lh; 3505function m1() { 3506 return (m1 = Z((() => { 3507 Re(), de(), Ye(), Et(), yi(), st(), Ns(), Ts(), xs(), b_(), Ht(), ht(), Hl = (() => { 3508 var e = class extends ri {}; 3509 let i = (e.ɵfac = (() => { 3510 let t; 3511 return function(r) { 3512 return (t || (t = Fe(e)))(r || e); 3513 }; 3514 })(), e.ɵprov = R({ 3515 token: e, 3516 factory: function(t) { 3517 let r = null; 3518 return t ? r = new t() : r = IM(ve(Wt)), r; 3519 }, 3520 providedIn: "root" 3521 }), e); 3522 return i = mt([Ut({ 3523 key: "vnBalanceProperties", 3524 product: it.SF 3525 })], i), i; 3526 })(), Ul = (() => { 3527 let e = class { 3528 get balanceProperties() { 3529 return this.balancePropertiesEvents; 3530 } 3531 constructor() { 3532 this.userService = f(ii), this.apiService = f(xl), this.balanceSettingsConfig = f(s_), this.balanceInfo = le(null), this.balancePropertiesEvents = new Gt(null), this.refresh$ = new Xe(), this.propagateAccumulator = !1, this.refresh$.pipe(Hr((t) => { 3533 this.propagateAccumulator = this.propagateAccumulator || t; 3534 }), t$(1e3, JA, { 3535 leading: !0, 3536 trailing: !0 3537 }), Si(() => { 3538 let t = this.propagateAccumulator; 3539 return this.propagateAccumulator = !1, this.apiService.get("balance", void 0, { showSpinner: !1 }).pipe(xe((r) => ({ 3540 response: r, 3541 propagate: t 3542 }))); 3543 })).subscribe(({ response: t, propagate: r }) => { 3544 this.balanceInfo.set(J(C({}, t.balance), { propagateRefresh: r })), this.balancePropertiesEvents.next(J(C({}, t.balance), { propagateRefresh: r })); 3545 }); 3546 } 3547 refresh(t = !0) { 3548 this.userService.isAuthenticated && this.refresh$.next(t); 3549 } 3550 update(t) { 3551 this.balanceInfo.set(t), this.balancePropertiesEvents.next(t); 3552 } 3553 transfer(t) { 3554 return this.apiService.post("balance/transfer", t); 3555 } 3556 isLow(t) { 3557 let r = this.balanceSettingsConfig.lowThresholds[this.userService.currency] || this.balanceSettingsConfig.lowThresholds["*"]; 3558 return r == null ? !1 : t <= r; 3559 } 3560 }; 3561 return e.ɵfac = function(i) { 3562 return new (i || e)(); 3563 }, e.ɵprov = R({ 3564 token: e, 3565 factory: e.ɵfac, 3566 providedIn: "root" 3567 }), e; 3568 })(), p1 = (() => { 3569 var e; 3570 let i = class { 3571 constructor() { 3572 Qi(this, e), this.balancePropertiesService = f(Ul), this.balancePropertiesConfig = f(Hl), this.userService = f(ii), this.nativeAppService = f(Yr), this.zone = f(Ys), this.trackingService = f(Kr), this.balancePropertiesCoreService = f(T$), Zi(this, e, f(dt)); 3573 } 3574 onFeatureInit() { 3575 return Oe(this, null, function* () { 3576 yield Vt(this.balancePropertiesConfig.whenReady), this.balancePropertiesService.update(this.balancePropertiesConfig.balanceProperties), this.balancePropertiesCoreService.set(this.balancePropertiesService), this.userService.events.pipe(We((r) => r instanceof ep)).subscribe(() => { 3577 this.balancePropertiesService.refresh(); 3578 }), this.zone.runOutsideAngular(() => { 3579 $t(this, e).addEventListener(qr.Focus, () => { 3580 this.userService.isAuthenticated && this.balancePropertiesService.refresh(!1); 3581 }); 3582 }), this.nativeAppService.eventsFromNative.subscribe((r) => { 3583 let s = r.eventName.toUpperCase(); 3584 s === za.GETBALANCE ? this.nativeAppService.sendToNative({ 3585 eventName: za.USERBALANCE, 3586 parameters: { 3587 amount: this.balancePropertiesConfig.balanceProperties.accountBalance, 3588 currencyCode: this.userService.currency 3589 } 3590 }) : s === za.UPDATEBALANCE && this.balancePropertiesService.refresh(); 3591 }), this.balancePropertiesService.balanceProperties.pipe(We(Boolean)).subscribe((r) => { 3592 this.userService.triggerEvent(new uy(/* @__PURE__ */ new Map([["balanceProperties", r]]))), this.trackingService.triggerEvent(Pl.BalanceRefresh, { 3593 "user.profile.bal": r.accountBalance, 3594 "user.profile.previousBal": this.balancePropertiesConfig.balanceProperties.accountBalance 3595 }); 3596 }); 3597 }); 3598 } 3599 }; 3600 return e = /* @__PURE__ */ new WeakMap(), i.ɵfac = function(t) { 3601 return new (t || i)(); 3602 }, i.ɵprov = R({ 3603 token: i, 3604 factory: i.ɵfac 3605 }), i; 3606 })(), h1 = (() => { 3607 let e = class { 3608 constructor() { 3609 this.dslRecorderService = f(_$), this.intlService = f(y_), this.balancePropertiesService = f(Ul), this.dslCacheService = f(I$); 3610 let t = this.balancePropertiesService, r = this.dslCacheService; 3611 t.balanceProperties.pipe(he()).subscribe((s) => { 3612 this.balanceProperties = s, r.invalidate(["balance"]); 3613 }); 3614 } 3615 getProviders() { 3616 let t = this.dslRecorderService.createRecordable("balance"), r = (s, n) => { 3617 t.createProperty({ 3618 name: s, 3619 get: () => this.balanceProperties ? n(this.balanceProperties) : M$, 3620 deps: ["balance"] 3621 }); 3622 }; 3623 return r("AccountBalance", (s) => s.accountBalance), r("PayPalBalance", (s) => s.payPalBalance), r("PayPalRestrictedBalance", (s) => s.payPalRestrictedBalance), r("PayPalCashoutableBalance", (s) => s.payPalCashoutableBalance), r("BalanceForGameType", (s) => s.balanceForGameType), r("BonusWinningsRestrictedBalance", (s) => s.bonusWinningsRestrictedBalance), r("CashoutRestrictedBalance", (s) => s.cashoutRestrictedBalance), r("CashoutableBalance", (s) => s.cashoutableBalance), r("CashoutableBalanceReal", (s) => s.cashoutableBalanceReal), r("AvailableBalance", (s) => s.availableBalance), r("DepositRestrictedBalance", (s) => s.depositRestrictedBalance), r("InPlayAmount", (s) => s.inPlayAmount), r("ReleaseRestrictedBalance", (s) => s.releaseRestrictedBalance), r("PlayMoneyBalance", (s) => s.playMoneyBalance), r("PlayMoneyInPlayAmount", (s) => s.playMoneyInPlayAmount), r("OwedAmount", (s) => s.owedAmount), r("TaxWithheldAmount", (s) => s.taxWithheldAmount), r("PokerWinningsRestrictedBalance", (s) => s.pokerWinningsRestrictedBalance), r("CashoutRestrictedCashBalance", (s) => s.cashoutRestrictedCashBalance), r("CashoutableBalanceAtOnline", (s) => s.cashoutableBalanceAtOnline), r("CashoutableBalanceAtRetail", (s) => s.cashoutableBalanceAtRetail), r("CreditCardDepositBalance", (s) => s.creditCardDepositBalance), r("CreditCardWinningsBalance", (s) => s.creditCardWinningsBalance), r("DebitCardDepositBalance", (s) => s.debitCardDepositBalance), r("MainRealBalance", (s) => s.mainRealBalance), r("UncollectedFunds", (s) => s.uncollectedFunds), r("SportsDepositBalance", (s) => s.sportsDepositBalance), r("SportsExclusiveBalance", (s) => s.sportsExclusiveBalance), r("GamesDepositBalance", (s) => s.gamesDepositBalance), r("SportsWinningsBalance", (s) => s.sportsWinningsBalance), r("PokerWinningsBalance", (s) => s.pokerWinningsBalance), r("SlotsWinningsBalance", (s) => s.slotsWinningsBalance), r("SportsRestrictedBalance", (s) => s.sportsRestrictedBalance), r("PokerRestrictedBalance", (s) => s.pokerRestrictedBalance), r("SlotsRestrictedBalance", (s) => s.slotsRestrictedBalance), r("AllWinningsBalance", (s) => s.allWinningsBalance), r("MaxLimitExceededBalance", (s) => s.maxLimitExceededBalance), r("PrepaidCardDepositBalance", (s) => s.prepaidCardDepositBalance), r("PrepaidCardLockedBalance", (s) => s.prepaidCardLockedBalance), r("AllDepositBalance", (s) => s.allDepositBalance), r("PokerAvailableBalance", (s) => s.pokerAvailableBalance), r("SlotsAvailableBalance", (s) => s.slotsAvailableBalance), r("SportsAvailableBalance", (s) => s.sportsAvailableBalance), r("PokerBonusRestricted", (s) => s.pokerBonusRestricted), r("GiftCardDepositBalance", (s) => s.giftCardDepositBalance), t.createFunction({ 3624 name: "IsLow", 3625 get: (s) => this.balancePropertiesService.isLow(s), 3626 deps: [] 3627 }), t.createFunction({ 3628 name: "Format", 3629 get: (s) => this.intlService.formatCurrency(s), 3630 deps: [] 3631 }), { Balance: t }; 3632 } 3633 }; 3634 return e.ɵfac = function(i) { 3635 return new (i || e)(); 3636 }, e.ɵprov = R({ 3637 token: e, 3638 factory: e.ɵfac 3639 }), e; 3640 })(), lh = (function(e) { 3641 return e.PayPalBal = "PAYPAL_BAL", e.MainRealBal = "MAIN_REAL_BAL", e; 3642 })(lh || {}); 3643 })))(); 3644} 3645var ch; 3646function dh() { 3647 return (dh = Z((() => { 3648 de(), jn(), Et(), Ht(), ch = (() => { 3649 let e = class { 3650 get currentActivationEnd() { 3651 return this.currentRouteActivationEnd.asObservable(); 3652 } 3653 get currentActivationStart() { 3654 return this.currentRouteActivationStart.asObservable(); 3655 } 3656 get currentRoutesRecognized() { 3657 return this.currentRouteRoutesRecognized.asObservable(); 3658 } 3659 get isDirectLink() { 3660 return this.recognizedRoutes.length === 1; 3661 } 3662 get urlHistory() { 3663 return [...this.recognizedRoutes]; 3664 } 3665 constructor() {
3666 this.router = f(Il), this.currentRouteActivationEnd = new Gt(void 0), this.currentRouteActivationStart = new Gt(void 0), this.currentRouteRoutesRecognized = new Gt(void 0), this.recognizedRoutes = [], this.initCurrentRouteActivationEnd(), this.initCurrentRouteActivationStart(), this.initCurrentRouteRoutesRecognized(); 3667 } 3668 initCurrentRouteActivationEnd() { 3669 this.router.events.pipe(We((t) => t instanceof B$), xb(this.router.events.pipe(We((t) => t instanceof G$))), xe((t) => t[0]), er(), he()).subscribe(this.currentRouteActivationEnd); 3670 } 3671 initCurrentRouteActivationStart() { 3672 this.router.events.pipe(We((t) => t instanceof F$), xb(this.router.events.pipe(We((t) => t instanceof D$))), xe((t) => this.getLastActivationEvent(t)), er(), he()).subscribe(this.currentRouteActivationStart); 3673 } 3674 initCurrentRouteRoutesRecognized() { 3675 this.router.events.pipe(We((t) => t instanceof z$), er(), he()).subscribe((t) => { 3676 this.recognizedRoutes.push(t.url), this.currentRouteRoutesRecognized.next(t); 3677 }); 3678 } 3679 getLastActivationEvent(t) { 3680 if (t.length <= 1) return t[0]; 3681 let r = t.filter((s) => !this.isInitialOverlayNavigation(s.snapshot)); 3682 return r.length > 0 ? r[r.length - 1] : t[t.length - 1]; 3683 } 3684 isInitialOverlayNavigation(t) { 3685 return (t.outlet === "overlay" || t.outlet === "prerender") && t.url.length === 0; 3686 } 3687 }; 3688 return e.ɵfac = function(i) { 3689 return new (i || e)(); 3690 }, e.ɵprov = R({ 3691 token: e, 3692 factory: e.ɵfac, 3693 providedIn: "root" 3694 }), e; 3695 })(); 3696 })))(); 3697} 3698var G; 3699function Wl() { 3700 return (Wl = Z((() => { 3701 G = (function(e) { 3702 return e.Single = "SINGLE", e.Combo = "COMBO", e.Teaser = "TEASER", e.System = "SYSTEM", e.EditBet = "EDIT_MY_BET", e.BetBuilder = "BET_BUILDER", e; 3703 })(G || {}); 3704 })))(); 3705} 3706var uh, jl, ph, hh, mh, fh, $i, gh, vh, Sh, bh, yh; 3707function wh() { 3708 return (wh = Z((() => { 3709 uh = (function(e) { 3710 return e.FreeBet = "freebets", e.RiskFreeBet = "riskfreebet", e.OddsBoost = "oddboost", e.BetAndGet = "betandget", e.DepositAndGet = "depositandget", e; 3711 })(uh || {}), jl = (function(e) { 3712 return e.Bonus = "Bonus", e.BonusNoWager = "BonusNoWager", e.FreeBet = "FreeBet", e.Cash = "Cash", e.OddsBoostToken = "OddsBoostToken", e.RiskFreeToken = "RiskFreeToken", e; 3713 })(jl || {}), ph = (function(e) { 3714 return e.Bonus = "BONUS", e.BonusNoWager = "BONUSNOWAGER", e.FreeBet = "FREEBET", e.Cash = "CASH", e.OddsBoostToken = "ODDS_BOOST", e.RiskFreeToken = "RISK_FREE_BET", e; 3715 })(ph || {}), hh = (function(e) { 3716 return e.RewardTokenBlackReceived = "RewardTokenBlackReceived", e.RewardTokenTimer = "RewardTokenTimer", e.RewardTokenTimerDark = "RewardTokenTimerDark", e.FreeBet = "FreeBet", e.RiskFreeBet = "RiskFreeBet", e.OddsBoost = "OddsBoost", e.BetAndGet = "BetAndGet", e.FreeBetDark = "FreeBetDark", e.RiskFreeBetDark = "RiskFreeBetDark", e.OddsBoostDark = "OddsBoostDark", e.BetAndGetDark = "BetAndGetDark", e.RewardErrorInfo = "RewardErrorInfo", e.RewardTokenTimerThemeDark = "RewardTokenTimerThemeDark", e.RewardTokenTimerBlack = "RewardTokenTimerBlack", e.DepositAndGet = "DepositAndGet", e.DepositAndGetDark = "DepositAndGetDark", e.Vip = "Vip", e.VipBadge = "VipBadge", e.ZeroActivePromotion = "ZeroActivePromotion", e; 3717 })(hh || {}), mh = (function(e) { 3718 return e.BetPlacement = "BetPlacement", e.BetSettlement = "BetSettlement", e; 3719 })(mh || {}), fh = (function(e) { 3720 return e.Any = "Any", e.Win = "Win", e.Loss = "Loss", e; 3721 })(fh || {}), $i = (function(e) { 3722 return e.FreeBet = "FreeBet", e.RiskFreeBet = "RiskFreeBet", e.OddsBoost = "OddsBoost", e.AccaBoost = "AccaBoost", e.AccaInsurance = "AccaInsurance", e.BetStationFreebet = "BetStationFreebet", e.BestOddsGuaranteed = "BestOddsGuaranteed", e.Eds = "Eds", e.BetAndGet = "BetAndGet", e.DepositAndGet = "DepositAndGet", e; 3723 })($i || {}), gh = (function(e) { 3724 return e.BetAndGet = "BET_AND_GET", e.BetMainGetLive = "BET_MAIN_GET_LIVE", e.MatchedStake = "MATCHED_STAKE", e.CustomToken = "CUSTOM_TOKEN", e; 3725 })(gh || {}), vh = (function(e) { 3726 return e.Deposit = "Deposit", e; 3727 })(vh || {}), Sh = (function(e) { 3728 return e.Eds = "EDS", e.Promo = "PROMO", e.BetAndGet = "BET_AND_GET", e.RiskFree = "RISK_FREE", e; 3729 })(Sh || {}), bh = (function(e) { 3730 return e.ActivePromoDrawer = "activePromoDrawer", e.EventDetailPage = "eventDetailPage", e; 3731 })(bh || {}), yh = (function(e) { 3732 return e.V1 = "V1", e.V2 = "V2", e; 3733 })(yh || {}); 3734 })))(); 3735} 3736function jt(e) { 3737 var i, t, r, s = e.length - 1, n = "", a = e[0]; 3738 if (s > 0) { 3739 for (n += a, i = 1; i < s; i++) r = e[i] + "", t = fe - r.length, t && (n += Ps(t)), n += r; 3740 a = e[i], r = a + "", t = fe - r.length, t && (n += Ps(t)); 3741 } else if (a === 0) return "0"; 3742 for (; a % 10 === 0;) a /= 10; 3743 return n + a; 3744} 3745function wi(e, i, t) { 3746 if (e !== ~~e || e < i || e > t) throw Error(es + e); 3747} 3748function eo(e, i, t, r) { 3749 for (var s, n = e[0], a, o; n >= 10; n /= 10) --i; 3750 return --i < 0 ? (i += fe, s = 0) : (s = Math.ceil((i + 1) / fe), i %= fe), n = Pt(10, fe - i
vendor: 6,034 bytes, lines 3750-3871
3750), o = e[s] % n | 0, r == null ? i < 3 ? (i == 0 ? o = o / 100 | 0 : i == 1 && (o = o / 10 | 0), a = t < 4 && o == 99999 || t > 3 && o == 49999 || o == 5e4 || o == 0) : a = (t < 4 && o + 1 == n || t > 3 && o + 1 == n / 2) && (e[s + 1] / n / 100 | 0) == Pt(10, i - 2) - 1 || (o == n / 2 || o == 0) && (e[s + 1] / n / 100 | 0) == 0 : i < 4 ? (i == 0 ? o = o / 1e3 | 0 : i == 1 ? o = o / 100 | 0 : i == 2 && (o = o / 10 | 0), a = (r || t < 4) && o == 9999 || !r && t > 3 && o == 4999) : a = ((r || t < 4) && o + 1 == n || !r && t > 3 && o + 1 == n / 2) && (e[s + 1] / n / 1e3 | 0) == Pt(10, i - 3) - 1, a; 3751} 3752function Yl(e, i, t) { 3753 for (var r, s = [0], n, a = 0, o = e.length; a < o;) { 3754 for (n = s.length; n--;) s[n] *= i; 3755 for (s[0] += Ql.indexOf(e.charAt(a++)), r = 0; r < s.length; r++) s[r] > t - 1 && (s[r + 1] === void 0 && (s[r + 1] = 0), s[r + 1] += s[r] / t | 0, s[r] %= t); 3756 } 3757 return s.reverse(); 3758} 3759function PM(e, i) { 3760 var t, r, s; 3761 if (i.isZero()) return i; 3762 r = i.d.length, r < 32 ? (t = Math.ceil(r / 3), s = (1 / Jl(4, t)).toString()) : (t = 16, s = "2.3283064365386962890625e-10"), e.precision += t, i = Jn(e, 1, i.times(s), new e(1)); 3763 for (var n = t; n--;) { 3764 var a = i.times(i); 3765 i = a.times(a).minus(a).times(8).plus(1); 3766 } 3767 return e.precision -= t, i; 3768} 3769function me(e, i, t, r) { 3770 var s, n, a, o, l, c, d, u, h, g = e.constructor; 3771 e: if (i != null) { 3772 if (u = e.d, !u) return e; 3773 for (s = 1, o = u[0]; o >= 10; o /= 10) s++; 3774 if (n = i - s, n < 0) n += fe, a = i, d = u[h = 0], l = d / Pt(10, s - a - 1) % 10 | 0; 3775 else if (h = Math.ceil((n + 1) / fe), o = u.length, h >= o) if (r) { 3776 for (; o++ <= h;) u.push(0); 3777 d = l = 0, s = 1, n %= fe, a = n - fe + 1; 3778 } else break e; 3779 else { 3780 for (d = o = u[h], s = 1; o >= 10; o /= 10) s++; 3781 n %= fe, a = n - fe + s, l = a < 0 ? 0 : d / Pt(10, s - a - 1) % 10 | 0; 3782 } 3783 if (r = r || i < 0 || u[h + 1] !== void 0 || (a < 0 ? d : d % Pt(10, s - a - 1)), c = t < 4 ? (l || r) && (t == 0 || t == (e.s < 0 ? 3 : 2)) : l > 5 || l == 5 && (t == 4 || r || t == 6 && (n > 0 ? a > 0 ? d / Pt(10, s - a) : 0 : u[h - 1]) % 10 & 1 || t == (e.s < 0 ? 8 : 7)), i < 1 || !u[0]) return u.length = 0, c ? (i -= e.e + 1, u[0] = Pt(10, (fe - i % fe) % fe), e.e = -i || 0) : u[0] = e.e = 0, e; 3784 if (n == 0 ? (u.length = h, o = 1, h--) : (u.length = h + 1, o = Pt(10, fe - n), u[h] = a > 0 ? (d / Pt(10, s - a) % Pt(10, a) | 0) * o : 0), c) for (;;) if (h == 0) { 3785 for (n = 1, a = u[0]; a >= 10; a /= 10) n++; 3786 for (a = u[0] += o, o = 1; a >= 10; a /= 10) o++; 3787 n != o && (e.e++, u[0] == ji && (u[0] = 1)); 3788 break; 3789 } else { 3790 if (u[h] += o, u[h] != ji) break; 3791 u[h--] = 0, o = 1; 3792 } 3793 for (n = u.length; u[--n] === 0;) u.pop(); 3794 } 3795 return we && (e.e > g.maxE ? (e.d = null, e.e = NaN) : e.e < g.minE && (e.e = 0, e.d = [0])), e; 3796} 3797function Tr(e, i, t) { 3798 if (!e.isFinite()) return b1(e); 3799 var r, s = e.e, n = jt(e.d), a = n.length; 3800 return i ? (t && (r = t - a) > 0 ? n = n.charAt(0) + "." + n.slice(1) + Ps(r) : a > 1 && (n = n.charAt(0) + "." + n.slice(1)), n = n + (e.e < 0 ? "e" : "e+") + e.e) : s < 0 ? (n = "0." + Ps(-s - 1) + n, t && (r = t - a) > 0 && (n += Ps(r))) : s >= a ? (n += Ps(s + 1 - a), t && (r = t - s - 1) > 0 && (n = n + "." + Ps(r))) : ((r = s + 1) < a && (n = n.slice(0, r) + "." + n.slice(r)), t && (r = t - a) > 0 && (s + 1 === a && (n += "."), n += Ps(r))), n; 3801} 3802function Kl(e, i) { 3803 var t = e[0]; 3804 for (i *= fe; t >= 10; t /= 10) i++; 3805 return i; 3806} 3807function ql(e, i, t) { 3808 if (i > O1) throw we = !0, t && (e.precision = t), Error(Nh); 3809 return me(new e(to), i, 1, !0); 3810} 3811function kr(e, i, t) { 3812 if (i > ec) throw Error(Nh); 3813 return me(new e(io), i, t, !0); 3814} 3815function f1(e) { 3816 var i = e.length - 1, t = i * fe + 1; 3817 if (i = e[i], i) { 3818 for (; i % 10 == 0; i /= 10) t--; 3819 for (i = e[0]; i >= 10; i /= 10) t++; 3820 } 3821 return t; 3822} 3823function Ps(e) { 3824 for (var i = ""; e--;) i += "0"; 3825 return i; 3826} 3827function g1(e, i, t, r) { 3828 var s, n = new e(1), a = Math.ceil(r / fe + 4); 3829 for (we = !1;;) { 3830 if (t % 2 && (n = n.times(i), w1(n.d, a) && (s = !0)), t = Yt(t / 2), t === 0) { 3831 t = n.d.length - 1, s && n.d[t] === 0 && ++n.d[t]; 3832 break; 3833 } 3834 i = i.times(i), w1(i.d, a); 3835 } 3836 return we = !0, n; 3837} 3838function v1(e) { 3839 return e.d[e.d.length - 1] & 1; 3840} 3841function S1(e, i, t) { 3842 for (var r, s, n = new e(i[0]), a = 0; ++a < i.length;) { 3843 if (s = new e(i[a]), !s.s) { 3844 n = s; 3845 break; 3846 } 3847 r = n.cmp(s), (r === t || r === 0 && n.s === t) && (n = s); 3848 } 3849 return n; 3850} 3851function Eh(e, i) { 3852 var t, r, s, n, a, o, l, c = 0, d = 0, u = 0, h = e.constructor, g = h.rounding, p = h.precision; 3853 if (!e.d || !e.d[0] || e.e > 17) return new h(e.d ? e.d[0] ? e.s < 0 ? 0 : 1 / 0 : 1 : e.s ? e.s < 0 ? 0 : e : NaN); 3854 for (i == null ? (we = !1, l = p) : l = i, o = new h(.03125); e.e > -2;) e = e.times(o), u += 5; 3855 for (r = Math.log(Pt(2, u)) / Math.LN10 * 2 + 5 | 0, l += r, t = n = a = new h(1), h.precision = l;;) { 3856 if (n = me(n.times(e), l, 1), t = t.times(++d), o = a.plus(rt(n, t, l, 1)), jt(o.d).slice(0, l) === jt(a.d).slice(0, l)) { 3857 for (s = u; s--;) a = me(a.times(a), l, 1); 3858 if (i == null) if (c < 3 && eo(a.d, l - r, g, c)) h.precision = l += 10, t = n = o = new h(1), d = 0, c++; 3859 else return me(a, h.precision = p, g, we = !0); 3860 else return h.precision = p, a; 3861 } 3862 a = o; 3863 } 3864} 3865function As(e, i) { 3866 var t, r, s, n, a, o, l, c, d, u, h, g = 1, p = 10, m = e, S = m.d, b = m.constructor, v = b.rounding, y = b.precision; 3867 if (m.s < 0 || !S || !S[0] || !m.e && S[0] == 1 && S.length == 1) return new b(S && !S[0] ? -1 / 0 : m.s != 1 ? NaN : S ? 0 : m); 3868 if (i == null ? (we = !1, d = y) : d = i, b.precision = d += p, t = jt(S), r = t.charAt(0), Math.abs(n = m.e) < 0x5543df729c000) { 3869 for (; r < 7 && r != 1 || r == 1 && t.charAt(1) > 3;) m = m.times(e), t = jt(m.d), r = t.charAt(0), g++; 3870 n = m.e, r > 1 ? (m = new b("0." + t), n++) : m = new b(r + "." + t.slice(1)); 3871 } else return c = ql(b, d + 2, y).times(n + ""), m = As(new b(r + "." + t.slice(1)), d - p).plus(c), b.precision = y, i == null ? me(m, y, v, we = !0) : m;
vendor: 5,995 bytes, lines 3872-3997
3872 for (u = m, l = a = m = rt(m.minus(1), m.plus(1), d, 1), h = me(m.times(m), d, 1), s = 3;;) { 3873 if (a = me(a.times(h), d, 1), c = l.plus(rt(a, new b(s), d, 1)), jt(c.d).slice(0, d) === jt(l.d).slice(0, d)) if (l = l.times(2), n !== 0 && (l = l.plus(ql(b, d + 2, y).times(n + ""))), l = rt(l, new b(g), d, 1), i == null) if (eo(l.d, d - p, v, o)) b.precision = d += p, c = a = m = rt(u.minus(1), u.plus(1), d, 1), h = me(m.times(m), d, 1), s = o = 1; 3874 else return me(l, b.precision = y, v, we = !0); 3875 else return b.precision = y, l; 3876 l = c, s += 2; 3877 } 3878} 3879function b1(e) { 3880 return String(e.s * e.s / 0); 3881} 3882function Xl(e, i) { 3883 var t, r, s; 3884 for ((t = i.indexOf(".")) > -1 && (i = i.replace(".", "")), (r = i.search(/e/i)) > 0 ? (t < 0 && (t = r), t += +i.slice(r + 1), i = i.substring(0, r)) : t < 0 && (t = i.length), r = 0; i.charCodeAt(r) === 48; r++); 3885 for (s = i.length; i.charCodeAt(s - 1) === 48; --s); 3886 if (i = i.slice(r, s), i) { 3887 if (s -= r, e.e = t = t - r - 1, e.d = [], r = (t + 1) % fe, t < 0 && (r += fe), r < s) { 3888 for (r && e.d.push(+i.slice(0, r)), s -= fe; r < s;) e.d.push(+i.slice(r, r += fe)); 3889 i = i.slice(r), r = fe - i.length; 3890 } else r -= s; 3891 for (; r--;) i += "0"; 3892 e.d.push(+i), we && (e.e > e.constructor.maxE ? (e.d = null, e.e = NaN) : e.e < e.constructor.minE && (e.e = 0, e.d = [0])); 3893 } else e.e = 0, e.d = [0]; 3894 return e; 3895} 3896function AM(e, i) { 3897 var t, r, s, n, a, o, l, c, d; 3898 if (i.indexOf("_") > -1) { 3899 if (i = i.replace(/(\d)_(?=\d)/g, "$1"), xh.test(i)) return Xl(e, i); 3900 } else if (i === "Infinity" || i === "NaN") return +i || (e.s = NaN), e.e = NaN, e.d = null, e; 3901 if (k1.test(i)) t = 16, i = i.toLowerCase(); 3902 else if (T1.test(i)) t = 2; 3903 else if (x1.test(i)) t = 8; 3904 else throw Error(es + i); 3905 for (n = i.search(/p/i), n > 0 ? (l = +i.slice(n + 1), i = i.substring(2, n)) : i = i.slice(2), n = i.indexOf("."), a = n >= 0, r = e.constructor, a && (i = i.replace(".", ""), o = i.length, n = o - n, s = g1(r, new r(t), n, n * 2)), c = Yl(i, t, ji), d = c.length - 1, n = d; c[n] === 0; --n) c.pop(); 3906 return n < 0 ? new r(e.s * 0) : (e.e = Kl(c, d), e.d = c, we = !1, a && (e = rt(e, s, o * 4)), l && (e = e.times(Math.abs(l) < 54 ? Pt(2, l) : _e.pow(2, l))), we = !0, e); 3907} 3908function $M(e, i) { 3909 var t, r = i.d.length; 3910 if (r < 3) return i.isZero() ? i : Jn(e, 2, i, i); 3911 t = 1.4 * Math.sqrt(r), t = t > 16 ? 16 : t | 0, i = i.times(1 / Jl(5, t)), i = Jn(e, 2, i, i); 3912 for (var s, n = new e(5), a = new e(16), o = new e(20); t--;) s = i.times(i), i = i.times(n.plus(s.times(a.times(s).minus(o)))); 3913 return i; 3914} 3915function Jn(e, i, t, r, s) { 3916 var n, a, o, l, c = 1, d = e.precision, u = Math.ceil(d / fe); 3917 for (we = !1, l = t.times(t), o = new e(r);;) { 3918 if (a = rt(o.times(l), new e(i++ * i++), d, 1), o = s ? r.plus(a) : r.minus(a), r = rt(a.times(l), new e(i++ * i++), d, 1), a = o.plus(r), a.d[u] !== void 0) { 3919 for (n = u; a.d[n] === o.d[n] && n--;); 3920 if (n == -1) break; 3921 } 3922 n = o, o = r, r = a, a = n, c++; 3923 } 3924 return we = !0, a.d.length = u + 1, a; 3925} 3926function Jl(e, i) { 3927 for (var t = e; --i;) t *= e; 3928 return t; 3929} 3930function y1(e, i) { 3931 var t, r = i.s < 0, s = kr(e, e.precision, 1), n = s.times(.5); 3932 if (i = i.abs(), i.lte(n)) return Zr = r ? 4 : 1, i; 3933 if (t = i.divToInt(s), t.isZero()) Zr = r ? 3 : 2; 3934 else { 3935 if (i = i.minus(t.times(s)), i.lte(n)) return Zr = v1(t) ? r ? 2 : 3 : r ? 4 : 1, i; 3936 Zr = v1(t) ? r ? 1 : 4 : r ? 3 : 2; 3937 } 3938 return i.minus(s).abs(); 3939} 3940function Ch(e, i, t, r) { 3941 var s, n, a, o, l, c, d, u, h, g = e.constructor, p = t !== void 0; 3942 if (p ? (wi(t, 1, Qr), r === void 0 ? r = g.rounding : wi(r, 0, 8)) : (t = g.precision, r = g.rounding), !e.isFinite()) d = b1(e); 3943 else { 3944 for (d = Tr(e), a = d.indexOf("."), p ? (s = 2, i == 16 ? t = t * 4 - 3 : i == 8 && (t = t * 3 - 2)) : s = i, a >= 0 && (d = d.replace(".", ""), h = new g(1), h.e = d.length - a, h.d = Yl(Tr(h), 10, s), h.e = h.d.length), u = Yl(d, 10, s), n = l = u.length; u[--l] == 0;) u.pop(); 3945 if (!u[0]) d = p ? "0p+0" : "0"; 3946 else { 3947 if (a < 0 ? n-- : (e = new g(e), e.d = u, e.e = n, e = rt(e, h, t, r, 0, s), u = e.d, n = e.e, c = N1), a = u[t], o = s / 2, c = c || u[t + 1] !== void 0, c = r < 4 ? (a !== void 0 || c) && (r === 0 || r === (e.s < 0 ? 3 : 2)) : a > o || a === o && (r === 4 || c || r === 6 && u[t - 1] & 1 || r === (e.s < 0 ? 8 : 7)), u.length = t, c) for (; ++u[--t] > s - 1;) u[t] = 0, t || (++n, u.unshift(1)); 3948 for (l = u.length; !u[l - 1]; --l); 3949 for (a = 0, d = ""; a < l; a++) d += Ql.charAt(u[a]); 3950 if (p) { 3951 if (l > 1) if (i == 16 || i == 8) { 3952 for (a = i == 16 ? 4 : 3, --l; l % a; l++) d += "0"; 3953 for (u = Yl(d, s, i), l = u.length; !u[l - 1]; --l); 3954 for (a = 1, d = "1."; a < l; a++) d += Ql.charAt(u[a]); 3955 } else d = d.charAt(0) + "." + d.slice(1); 3956 d = d + (n < 0 ? "p" : "p+") + n; 3957 } else if (n < 0) { 3958 for (; ++n;) d = "0" + d; 3959 d = "0." + d; 3960 } else if (++n > l) for (n -= l; n--;) d += "0"; 3961 else n < l && (d = d.slice(0, n) + "." + d.slice(n)); 3962 } 3963 d = (i == 16 ? "0x" : i == 2 ? "0b" : i == 8 ? "0o" : "") + d; 3964 } 3965 return e.s < 0 ? "-" + d : d; 3966} 3967function w1(e, i) { 3968 if (e.length > i) return e.length = i, !0; 3969} 3970function _M(e) { 3971 return new this(e).abs(); 3972} 3973function MM(e) { 3974 return new this(e).acos(); 3975} 3976function RM(e) { 3977 return new this(e).acosh(); 3978} 3979function LM(e, i) { 3980 return new this(e).plus(i); 3981} 3982function BM(e) { 3983 return new this(e).asin(); 3984} 3985function DM(e) { 3986 return new this(e).asinh(); 3987} 3988function FM(e) { 3989 return new this(e).atan(); 3990} 3991function zM(e) { 3992 return new this(e).atanh(); 3993} 3994function GM(e, i) { 3995 e = new this(e), i = new this(i); 3996 var t, r = this.precision, s = this.rounding, n = r + 4; 3997 return !e.s || !i.s ? t = new this(NaN) : !e.d && !i.d ? (t = kr(this, n, 1).times(i.s > 0 ? .25 : .75), t.s = e.s) : !i.d || e.isZero() ? (t = i.s < 0 ? kr(this, r, s) : new this(0), t.s = e.s) : !e.d || i.isZero() ? (t = kr(this, n, 1).times(.5), t.s = e.s) : i.s < 0 ? (this.precision = n, this.rounding = 1, t = this.atan(rt(e, i, n, 1
3997)), i = kr(this, n, 1), this.precision = r, this.rounding = s, t = e.s < 0 ? t.minus(i) : t.plus(i)) : t = this.atan(rt(e, i, n, 1)), t; 3998} 3999function VM(e) { 4000 return new this(e).cbrt(); 4001} 4002function HM(e) { 4003 return me(e = new this(e), e.e + 1, 2); 4004} 4005function UM(e, i, t) { 4006 return new this(e).clamp(i, t); 4007} 4008function WM(e) { 4009 if (!e || typeof e != "object") throw Error(ro + "Object expected"); 4010 var i, t, r, s = e.defaults === !0, n = [ 4011 "precision", 4012 1, 4013 Qr, 4014 "rounding", 4015 0, 4016 8, 4017 "toExpNeg", 4018 -nn, 4019 0, 4020 "toExpPos", 4021 0, 4022 nn, 4023 "maxE", 4024 0, 4025 nn, 4026 "minE", 4027 -nn, 4028 0, 4029 "modulo", 4030 0, 4031 9 4032 ]; 4033 for (i = 0; i < n.length; i += 3) if (t = n[i], s && (this[t] = Zl[t]), (r = e[t]) !== void 0) if (Yt(r) === r && r >= n[i + 1] && r <= n[i + 2]) this[t] = r; 4034 else throw Error(es + t + ": " + r); 4035 if (t = "crypto", s && (this[t] = Zl[t]), (r = e[t]) !== void 0) if (r === !0 || r === !1 || r === 0 || r === 1) if (r) if (typeof crypto < "u" && crypto && (crypto.getRandomValues || crypto.randomBytes)) this[t] = !0; 4036 else throw Error(Th); 4037 else this[t] = !1; 4038 else throw Error(es + t + ": " + r); 4039 return this; 4040} 4041function jM(e) { 4042 return new this(e).cos(); 4043} 4044function YM(e) { 4045 return new this(e).cosh(); 4046} 4047function E1(e) { 4048 var i, t, r; 4049 function s(n) { 4050 var a, o, l, c = this; 4051 if (!(c instanceof s)) return new s(n); 4052 if (c.constructor = s, C1(n)) { 4053 c.s = n.s, we ? !n.d || n.e > s.maxE ? (c.e = NaN, c.d = null) : n.e < s.minE ? (c.e = 0, c.d = [0]) : (c.e = n.e, c.d = n.d.slice()) : (c.e = n.e, c.d = n.d ? n.d.slice() : n.d); 4054 return; 4055 } 4056 if (l = typeof n, l === "number") { 4057 if (n === 0) { 4058 c.s = 1 / n < 0 ? -1 : 1, c.e = 0, c.d = [0]; 4059 return; 4060 }
4061 if (n < 0 ? (n = -n, c.s = -1) : c.s = 1, n === ~~n && n < 1e7) { 4062 for (a = 0, o = n; o >= 10; o /= 10) a++; 4063 we ? a > s.maxE ? (c.e = NaN, c.d = null) : a < s.minE ? (c.e = 0, c.d = [0]) : (c.e = a, c.d = [n]) : (c.e = a, c.d = [n]); 4064 return; 4065 } 4066 if (n * 0 !== 0) { 4067 n || (c.s = NaN), c.e = NaN, c.d = null; 4068 return; 4069 } 4070 return Xl(c, n.toString()); 4071 } 4072 if (l === "string") return (o = n.charCodeAt(0)) === 45 ? (n = n.slice(1), c.s = -1) : (o === 43 && (n = n.slice(1)), c.s = 1), xh.test(n) ? Xl(c, n) : AM(c, n); 4073 if (l === "bigint") return n < 0 ? (n = -n, c.s = -1) : c.s = 1, Xl(c, n.toString()); 4074 throw Error(es + n); 4075 } 4076 if (s.prototype = j, s.ROUND_UP = 0, s.ROUND_DOWN = 1, s.ROUND_CEIL = 2, s.ROUND_FLOOR = 3, s.ROUND_HALF_UP = 4, s.ROUND_HALF_DOWN = 5, s.ROUND_HALF_EVEN = 6, s.ROUND_HALF_CEIL = 7, s.ROUND_HALF_FLOOR = 8, s.EUCLID = 9, s.config = s.set = WM, s.clone = E1, s.isDecimal = C1, s.abs = _M, s.acos = MM, s.acosh = RM, s.add = LM, s.asin = BM, s.asinh = DM, s.atan = FM, s.atanh = zM, s.atan2 = GM, s.cbrt = VM, s.ceil = HM, s.clamp = UM, s.cos = jM, s.cosh = YM, s.div = KM, s.exp = qM, s.floor = XM, s.hypot = JM, s.ln = QM, s.log = ZM, s.log10 = tR, s.log2 = eR, s.max = iR, s.min = rR, s.mod = sR, s.mul = nR, s.pow = aR, s.random = oR, s.round = lR, s.sign = cR, s.sin = dR, s.sinh = uR, s.sqrt = pR, s.sub = hR, s.sum = mR, s.tan = fR, s.tanh = gR, s.trunc = vR, e === void 0 && (e = {}), e && e.defaults !== !0) for (r = [ 4077 "precision", 4078 "rounding", 4079 "toExpNeg", 4080 "toExpPos", 4081 "maxE", 4082 "minE", 4083 "modulo", 4084 "crypto" 4085 ], i = 0; i < r.length;) e.hasOwnProperty(t = r[i++]) || (e[t] = this[t]); 4086 return s.config(e), s; 4087} 4088function KM(e, i) { 4089 return new this(e).div(i); 4090} 4091function qM(e) { 4092 return new this(e).exp(); 4093} 4094function XM(e) { 4095 return me(e = new this(e), e.e + 1, 3); 4096} 4097function JM() { 4098 var e, i, t = new this(0); 4099 for (we = !1, e = 0; e < arguments.length;) if (i = new this(arguments[e++]), i.d) t.d && (t = t.plus(i.times(i))); 4100 else { 4101 if (i.s) return we = !0, new this(1 / 0); 4102 t = i; 4103 } 4104 return we = !0, t.sqrt(); 4105} 4106function C1(e) { 4107 return e instanceof _e || e && e.toStringTag === kh || !1; 4108} 4109function QM(e) { 4110 return new this(e).ln(); 4111} 4112function ZM(e, i) { 4113 return new this(e).log(i); 4114} 4115function eR(e) { 4116 return new this(e).log(2); 4117} 4118function tR(e) { 4119 return new this(e).log(10); 4120} 4121function iR() { 4122 return S1(this, arguments, -1); 4123} 4124function rR() { 4125 return S1(this, arguments, 1); 4126} 4127function sR(e, i) { 4128 return new this(e).mod(i); 4129} 4130function nR(e, i) { 4131 return new this(e).mul(i); 4132} 4133function aR(e, i) { 4134 return new this(e).pow(i); 4135} 4136function oR(e) { 4137 var i, t, r, s, n = 0, a = new this(1), o = []; 4138 if (e === void 0 ? e = this.precision : wi(e, 1, Qr), r = Math.
4138ceil(e / fe), this.crypto) if (crypto.getRandomValues) for (i = crypto.getRandomValues(new Uint32Array(r)); n < r;) s = i[n], s >= 429e7 ? i[n] = crypto.getRandomValues(/* @__PURE__ */ new Uint32Array(1))[0] : o[n++] = s % 1e7; 4139 else if (crypto.randomBytes) { 4140 for (i = crypto.randomBytes(r *= 4); n < r;) s = i[n] + (i[n + 1] << 8) + (i[n + 2] << 16) + ((i[n + 3] & 127) << 24), s >= 214e7 ? crypto.randomBytes(4).copy(i, n) : (o.push(s % 1e7), n += 4); 4141 n = r / 4; 4142 } else throw Error(Th); 4143 else for (; n < r;) o[n++] = Math.random() * 1e7 | 0; 4144 for (r = o[--n], e %= fe, r && e && (s = Pt(10, fe - e), o[n] = (r / s | 0) * s); o[n] === 0; n--) o.pop(); 4145 if (n < 0) t = 0, o = [0]; 4146 else { 4147 for (t = -1; o[0] === 0; t -= fe) o.shift(); 4148 for (r = 1, s = o[0]; s >= 10; s /= 10) r++; 4149 r < fe && (t -= fe - r); 4150 } 4151 return a.e = t, a.d = o, a; 4152} 4153function lR(e) { 4154 return me(e = new this(e), e.e + 1, this.rounding); 4155} 4156function cR(e) { 4157 return e = new this(e), e.d ? e.d[0] ? e.s : 0 * e.s : e.s || NaN; 4158} 4159function dR(e) { 4160 return new this(e).sin(); 4161} 4162function uR(e) { 4163 return new this(e).sinh(); 4164} 4165function pR(e) { 4166 return new this(e).sqrt(); 4167} 4168function hR(e, i) { 4169 return new this(e).sub(i); 4170} 4171function mR() { 4172 var e = 0, i = arguments, t = new this(i[e]); 4173 for (we = !1; t.s && ++e < i.length;) t = t.plus(i[e]); 4174 return we = !0, me(t, this.precision, this.rounding); 4175} 4176function fR(e) { 4177 return new this(e).tan(); 4178} 4179function gR(e) { 4180 return new this(e).tanh(); 4181} 4182function vR(e) { 4183 return me(e = new this(e), e.e + 1, 1); 4184} 4185var nn, Qr, Ql, to, io, Zl, N1, Zr, we, ro, es, Nh, Th, kh, Yt, Pt, T1, k1, x1, xh, ji, fe, I1, O1, ec, j, rt, _e, P1; 4186function tc() { 4187 return (tc = Z((() => { 4188 nn = 9e15, Qr = 1e9, Ql = "0123456789abcdef", to = "2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058", io = "3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789", Zl = { 4189 precision: 20, 4190 rounding: 4, 4191 modulo: 1, 4192 toExpNeg: -7, 4193 toExpPos: 21, 4194 minE: -nn, 4195 maxE: nn, 4196 crypto: !1 4197 }, we = !0, ro = "[DecimalError] ", es = ro + "Invalid argument: ", Nh = ro + "Precision limit exceeded", Th = ro + "crypto unavailable", kh = "[object Decimal]", Yt = Math.floor, Pt = Math.pow, T1 = /^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i, k1 = /^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i, x1 = /^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i, xh = /^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i, ji = 1e7, fe = 7, I1 = 9007199254740991, O1 = to.length - 1, ec = io.length - 1, j = { toStringTag: kh }, j.absoluteValue = j.abs = function() { 4198 var e = new this.constructor(this); 4199 return e.s < 0 && (e.s = 1), me(e); 4200 }, j.ceil = function() { 4201 return me(new this.constructor(this), this.e + 1, 2); 4202 }, j.clampedTo = j.clamp = function(e, i) { 4203 var t, r = this, s = r.constructor; 4204 if (e = new s(e), i = new s(i), !e.s || !i.s) return new s(NaN); 4205 if (e.gt(i)) throw Error(es + i); 4206 return t = r.cmp(e), t < 0 ? e : r.cmp(i) > 0 ? i : new s(r); 4207 }, j.comparedTo = j.cmp = function(e) { 4208 var i, t, r, s, n = this, a = n.d, o = (e = new n.constructor(e)).d, l = n.s, c = e.s; 4209 if (!a || !o) return !l || !c ? NaN : l !== c ? l : a === o ? 0 : !a ^ l < 0 ? 1 : -1; 4210 if (!a[0] || !o[0]) return a[0] ? l : o[0] ? -c : 0; 4211 if (l !== c) return l; 4212 if (n.e !== e.e) return n.e > e.e ^ l < 0 ? 1 : -1; 4213 for (r = a.length, s = o.length, i = 0, t = r < s ? r : s; i < t; ++i) if (a[i] !== o[i]) return a[i] > o[i] ^ l < 0 ? 1 : -1; 4214 return r === s ? 0 : r > s ^ l < 0 ? 1 : -1; 4215 }, j.cosine = j.cos = function() { 4216 var e, i, t = this, r = t.constructor; 4217 return t.d ? t.d[0] ? (e = r.precision, i = r.rounding, r.precision = e + Math.max(t.e, t.sd()) + fe, r.rounding = 1, t = PM(r, y1(r, t)), r.precision = e, r.rounding = i, me(Zr == 2 || Zr == 3 ? t.neg() : t, e, i, !0)) : new r(1) : new r(NaN); 4218 }, j.cubeRoot = j.cbrt = function() { 4219 var e, i, t, r, s, n, a, o, l, c, d = this, u = d.constructor; 4220 if (!d.isFinite() || d.isZero()) return new u(d); 4221 for (we = !1, n = d.s * Pt(d.s * d, 1 / 3), !n || Math.abs(n) == 1 / 0 ? (t = jt(d.d), e = d.e, (n = (e - t.length + 1) % 3) && (t += n == 1 || n == -2 ? "0" : "00"), n = Pt(t, 1 / 3), e = Yt((e + 1) / 3) - (e % 3 == (e < 0 ? -1 : 2)), n == 1 / 0 ? t = "5e" + e : (t = n.toExponential(), t = t.slice(0, t.indexOf("e") + 1) + e), r = new u(t), r.s = d.s) : r = new u(n.toString()), a = (e = u.precision) + 3;;) if (o = r, l = o.times(o).times(o), c = l.plus(d), r = rt(c.plus(d).times(o), c.plus(l), a + 2, 1), jt(o.d).slice(0, a) === (t = jt(r.d)).slice(0, a)) if (t = t.slice(a - 3, a + 1), t == "9999" || !s && t == "4999") {
4222 if (!s && (me(o, e + 1, 0), o.times(o).times(o).eq(d))) { 4223 r = o; 4224 break; 4225 } 4226 a += 4, s = 1; 4227 } else { 4228 (!+t || !+t.slice(1) && t.charAt(0) == "5") && (me(r, e + 1, 1), i = !r.times(r).times(r).eq(d)); 4229 break; 4230 } 4231 return we = !0, me(r, e, u.rounding, i); 4232 }, j.decimalPlaces = j.dp = function() { 4233 var e, i = this.d, t = NaN; 4234 if (i) { 4235 if (e = i.length - 1, t = (e - Yt(this.e / fe)) * fe, e = i[e], e) for (; e % 10 == 0; e /= 10) t--; 4236 t < 0 && (t = 0); 4237 } 4238 return t; 4239 }, j.dividedBy = j.div = function(e) { 4240 return rt(this, new this.constructor(e)); 4241 }, j.dividedToIntegerBy = j.divToInt = function(e) { 4242 var i = this, t = i.constructor; 4243 return me(rt(i, new t(e), 0, 1, 1), t.precision, t.rounding); 4244 }, j.equals = j.eq = function(e) { 4245 return this.cmp(e) === 0; 4246 }, j.floor = function() { 4247 return me(new this.constructor(this), this.e + 1, 3); 4248 }, j.greaterThan = j.gt = function(e) { 4249 return this.cmp(e) > 0; 4250 }, j.greaterThanOrEqualTo = j.gte = function(e) { 4251 var i = this.cmp(e); 4252 return i == 1 || i === 0; 4253 }, j.hyperbolicCosine = j.cosh = function() { 4254 var e, i, t, r, s, n = this, a = n.constructor, o = new a(1); 4255 if (!n.isFinite()) return new a(n.s ? 1 / 0 : NaN); 4256 if (n.isZero()) return o; 4257 t = a.precision, r = a.rounding, a.precision = t + Math.max(n.e, n.sd()) + 4, a.rounding = 1, s = n.d.length, s < 32 ? (e = Math.ceil(s / 3), i = (1 / Jl(4, e)).toString()) : (e = 16, i = "2.3283064365386962890625e-10"), n = Jn(a, 1, n.times(i), new a(1), !0); 4258 for (var l, c = e, d = new a(8); c--;) l = n.times(n), n = o.minus(l.times(d.minus(l.times(d)))); 4259 return me(n, a.precision = t, a.rounding = r, !0); 4260 }, j.hyperbolicSine = j.sinh = function() { 4261 var e, i, t, r, s = this, n = s.constructor; 4262 if (!s.isFinite() || s.isZero()) return new n(s); 4263 if (i = n.precision, t = n.rounding, n.precision = i + Math.max(s.e, s.sd()) + 4, n.rounding = 1, r = s.d.length, r < 3) s = Jn(n, 2, s, s, !0); 4264 else { 4265 e = 1.4 * Math.sqrt(r), e = e > 16 ? 16 : e | 0, s = s.times(1 / Jl(5, e)), s = Jn(n, 2, s, s, !0); 4266 for (var a, o = new n(5), l = new n(16), c = new n(20); e--;) a = s.times(s), s = s.times(o.plus(a.times(l.times(a).plus(c)))); 4267 } 4268 return n.precision = i, n.rounding = t, me(s, i, t, !0); 4269 }, j.hyperbolicTangent = j.tanh = function() { 4270 var e, i, t = this, r = t.constructor; 4271 return t.isFinite() ? t.isZero() ? new r(t) : (e = r.precision, i = r.rounding, r.precision = e + 7, r.rounding = 1, rt(t.sinh(), t.cosh(), r.precision = e, r.rounding = i)) : new r(t.s); 4272 }, j.inverseCosine = j.acos = function() { 4273 var e = this, i = e.constructor, t = e.abs().cmp(1), r = i.precision, s = i.rounding; 4274 return t !== -1 ? t === 0 ? e.isNeg() ? kr(i, r, s) : new i(0) : new i(NaN) : e.isZero() ? kr(i, r + 4, s).times(.5) : (i.precision = r + 6, i.rounding = 1, e = new i(1).minus(e).div(e.plus(1)).sqrt().atan(), i.precision = r, i.rounding = s, e.times(2)); 4275 }, j.inverseHyperbolicCosine = j.acosh = function() { 4276 var e, i, t = this, r = t.constructor; 4277 return t.lte(1) ? new r(t.eq(1) ? 0 : NaN) : t.isFinite() ? (e = r.precision, i = r.rounding, r.precision = e + Math.max(Math.abs(t.e), t.sd()) + 4, r.rounding = 1, we = !1, t = t.times(t).minus(1).sqrt().plus(t), we = !0, r.precision = e, r.rounding = i, t.ln()) : new r(t); 4278 }, j.inverseHyperbolicSine = j.asinh = function() { 4279 var e, i, t = this, r = t.constructor; 4280 return !t.isFinite() || t.isZero() ? new r(t) : (e = r.precision, i = r.rounding, r.precision = e + 2 * Math.max(Math.abs(t.e), t.sd()) + 6, r.rounding = 1, we = !1, t = t.times(t).plus(1).sqrt().plus(t), we = !0, r.precision = e, r.rounding = i, t.ln()); 4281 }, j.inverseHyperbolicTangent = j.atanh = function() { 4282 var e, i, t, r, s = this, n = s.constructor; 4283 return s.isFinite() ? s.e >= 0 ? new n(s.abs().eq(1) ? s.s / 0 : s.isZero() ? s : NaN) : (e = n.precision, i = n.rounding, r = s.sd(), Math.max(r, e) < 2 * -s.e - 1 ? me(new n(s), e, i, !0) : (n.precision = t = r - s.e, s = rt(s.plus(1), new n(1).minus(s), t + e, 1), n.precision = e + 4, n.roun
4283ding = 1, s = s.ln(), n.precision = e, n.rounding = i, s.times(.5))) : new n(NaN); 4284 }, j.inverseSine = j.asin = function() { 4285 var e, i, t, r, s = this, n = s.constructor; 4286 return s.isZero() ? new n(s) : (i = s.abs().cmp(1), t = n.precision, r = n.rounding, i !== -1 ? i === 0 ? (e = kr(n, t + 4, r).times(.5), e.s = s.s, e) : new n(NaN) : (n.precision = t + 6, n.rounding = 1, s = s.div(new n(1).minus(s.times(s)).sqrt().plus(1)).atan(), n.precision = t, n.rounding = r, s.times(2))); 4287 }, j.inverseTangent = j.atan = function() { 4288 var e, i, t, r, s, n, a, o, l, c = this, d = c.constructor, u = d.precision, h = d.rounding; 4289 if (c.isFinite()) { 4290 if (c.isZero()) return new d(c); 4291 if (c.abs().eq(1) && u + 4 <= ec) return a = kr(d, u + 4, h).times(.25), a.s = c.s, a; 4292 } else { 4293 if (!c.s) return new d(NaN); 4294 if (u + 4 <= ec) return a = kr(d, u + 4, h).times(.5), a.s = c.s, a; 4295 } 4296 for (d.precision = o = u + 10, d.rounding = 1, t = Math.min(28, o / fe + 2 | 0), e = t; e; --e) c = c.div(c.times(c).plus(1).sqrt().plus(1)); 4297 for (we = !1, i = Math.ceil(o / fe), r = 1, l = c.times(c), a = new d(c), s = c; e !== -1;) if (s = s.times(l), n = a.minus(s.div(r += 2)), s = s.times(l), a = n.plus(s.div(r += 2)), a.d[i] !== void 0) for (e = i; a.d[e] === n.d[e] && e--;); 4298 return t && (a = a.times(2 << t - 1)), we = !0, me(a, d.precision = u, d.rounding = h, !0); 4299 }, j.isFinite = function() { 4300 return !!this.d; 4301 }, j.isInteger = j.isInt = function() { 4302 return !!this.d && Yt(this.e / fe) > this.d.length - 2; 4303 }, j.isNaN = function() { 4304 return !this.s; 4305 }, j.isNegative = j.isNeg = function() { 4306 return this.s < 0; 4307 }, j.isPositive = j.isPos = function() { 4308 return this.s > 0; 4309 }, j.isZero = function() { 4310 return !!this.d && this.d[0] === 0; 4311 }, j.lessThan = j.lt = function(e) { 4312 return this.cmp(e) < 0; 4313 }, j.lessThanOrEqualTo = j.lte = function(e) { 4314 return this.cmp(e) < 1; 4315 }, j.logarithm = j.log = function(e) { 4316 var i, t, r, s, n, a, o, l, c = this, d = c.constructor, u = d.precision, h = d.rounding, g = 5; 4317 if (e == null) e = new d(10), i = !0; 4318 else { 4319 if (e = new d(e), t = e.d, e.s < 0 || !t || !t[0] || e.eq(1)) return new d(NaN); 4320 i = e.eq(10); 4321 } 4322 if (t = c.d, c.s < 0 || !t || !t[0] || c.eq(1)) return new d(t && !t[0] ? -1 / 0 : c.s != 1 ? NaN : t ? 0 : 1 / 0); 4323 if (i) if (t.length > 1) n = !0; 4324 else { 4325 for (s = t[0]; s % 10 === 0;) s /= 10; 4326 n = s !== 1; 4327 } 4328 if (we = !1, o = u + g, a = As(c, o), r = i ? ql(d, o + 10) : As(e, o), l = rt(a, r, o, 1), eo(l.d, s = u, h)) do 4329 if (o += 10, a = As(c, o), r = i ? ql(d, o + 10) : As(e, o), l = rt(a, r, o, 1), !n) { 4330 +jt(l.d).slice(s + 1, s + 15) + 1 == 0x5af3107a4000 && (l = me(l, u + 1, 0)); 4331 break; 4332 } 4333 while (eo(l.d, s += 10, h)); 4334 return we = !0, me(l, u, h); 4335 }, j.minus = j.sub = function(e) { 4336 var i, t, r, s, n, a, o, l, c, d, u, h, g = this, p = g.constructor; 4337 if (e = new p(e), !g.d || !e.d) return !g.s || !e.s ? e = new p(NaN) : g.d ? e.s = -e.s : e = new p(e.d || g.s !== e.s ? g : NaN), e; 4338 if (g.s != e.s) return e.s = -e.s, g.plus(e); 4339 if (c = g.d, h = e.d, o = p.precision, l = p.rounding, !c[0] || !h[0]) { 4340 if (h[0]) e.s = -e.s; 4341 else if (c[0]) e = new p(g); 4342 else return new p(l === 3 ? -0 : 0); 4343 return we ? me(e, o, l) : e; 4344 } 4345 if (t = Yt(e.e / fe), d = Yt(g.e / fe), c = c.slice(), n = d - t, n) { 4346 for (u = n < 0, u ? (i = c, n = -n, a = h.length) : (i = h, t = d, a = c.length), r = Math.max(Math.ceil(o / fe), a) + 2, n > r && (n = r, i.length = 1), i.reverse(), r = n; r--;) i.push(0); 4347 i.reverse(); 4348 } else { 4349 for (r = c.length, a = h.length, u = r < a, u && (a = r), r = 0; r < a; r++) if (c[r] != h[r]) { 4350 u = c[r] < h[r]; 4351 break; 4352 } 4353 n = 0; 4354 } 4355 for (u && (i = c, c = h, h = i, e.s = -e.s), a = c.length, r = h.length - a; r > 0; --r) c[a++] = 0; 4356 for (r = h.length; r > n;) { 4357 if (c[--r] < h[r]) { 4358 for (s = r; s && c[--s] === 0;) c[s] = ji - 1; 4359 --c[s], c[r] += ji; 4360 } 4361 c[r] -= h[r]; 4362 } 4363 for (; c[--a] === 0;) c.pop(); 4364 for (; c[0] === 0; c.shift()) --t; 4365 return c[0] ? (e.d = c, e.e = Kl(c, t), we ? me(e, o, l) : e) : new p(l === 3 ? -0 : 0); 4366 }, j.modulo = j.mod = function(e) { 4367 var i, t = this, r = t.constructor; 4368 return e = new r(e), !t.d || !e.s || e.d && !e.d[0] ? new r(NaN) : !e.d || t.d && !t.d[0] ? me(new r(t), r.precision, r.rounding) : (we = !1, r.modulo == 9 ? (i = rt(t, e.abs(), 0, 3, 1), i.s *= e.s) : i = rt(t, e, 0, r.modulo, 1), i = i.times(e), we = !0, t.minu
vendor: 7,350 bytes, lines 4368-4472
4368s(i)); 4369 }, j.naturalExponential = j.exp = function() { 4370 return Eh(this); 4371 }, j.naturalLogarithm = j.ln = function() { 4372 return As(this); 4373 }, j.negated = j.neg = function() { 4374 var e = new this.constructor(this); 4375 return e.s = -e.s, me(e); 4376 }, j.plus = j.add = function(e) { 4377 var i, t, r, s, n, a, o, l, c, d, u = this, h = u.constructor; 4378 if (e = new h(e), !u.d || !e.d) return !u.s || !e.s ? e = new h(NaN) : u.d || (e = new h(e.d || u.s === e.s ? u : NaN)), e; 4379 if (u.s != e.s) return e.s = -e.s, u.minus(e); 4380 if (c = u.d, d = e.d, o = h.precision, l = h.rounding, !c[0] || !d[0]) return d[0] || (e = new h(u)), we ? me(e, o, l) : e; 4381 if (n = Yt(u.e / fe), r = Yt(e.e / fe), c = c.slice(), s = n - r, s) { 4382 for (s < 0 ? (t = c, s = -s, a = d.length) : (t = d, r = n, a = c.length), n = Math.ceil(o / fe), a = n > a ? n + 1 : a + 1, s > a && (s = a, t.length = 1), t.reverse(); s--;) t.push(0); 4383 t.reverse(); 4384 } 4385 for (a = c.length, s = d.length, a - s < 0 && (s = a, t = d, d = c, c = t), i = 0; s;) i = (c[--s] = c[s] + d[s] + i) / ji | 0, c[s] %= ji; 4386 for (i && (c.unshift(i), ++r), a = c.length; c[--a] == 0;) c.pop(); 4387 return e.d = c, e.e = Kl(c, r), we ? me(e, o, l) : e; 4388 }, j.precision = j.sd = function(e) { 4389 var i, t = this; 4390 if (e !== void 0 && e !== !!e && e !== 1 && e !== 0) throw Error(es + e); 4391 return t.d ? (i = f1(t.d), e && t.e + 1 > i && (i = t.e + 1)) : i = NaN, i; 4392 }, j.round = function() { 4393 var e = this, i = e.constructor; 4394 return me(new i(e), e.e + 1, i.rounding); 4395 }, j.sine = j.sin = function() { 4396 var e, i, t = this, r = t.constructor; 4397 return t.isFinite() ? t.isZero() ? new r(t) : (e = r.precision, i = r.rounding, r.precision = e + Math.max(t.e, t.sd()) + fe, r.rounding = 1, t = $M(r, y1(r, t)), r.precision = e, r.rounding = i, me(Zr > 2 ? t.neg() : t, e, i, !0)) : new r(NaN); 4398 }, j.squareRoot = j.sqrt = function() { 4399 var e, i, t, r, s, n, a = this, o = a.d, l = a.e, c = a.s, d = a.constructor; 4400 if (c !== 1 || !o || !o[0]) return new d(!c || c < 0 && (!o || o[0]) ? NaN : o ? a : 1 / 0); 4401 for (we = !1, c = Math.sqrt(+a), c == 0 || c == 1 / 0 ? (i = jt(o), (i.length + l) % 2 == 0 && (i += "0"), c = Math.sqrt(i), l = Yt((l + 1) / 2) - (l < 0 || l % 2), c == 1 / 0 ? i = "5e" + l : (i = c.toExponential(), i = i.slice(0, i.indexOf("e") + 1) + l), r = new d(i)) : r = new d(c.toString()), t = (l = d.precision) + 3;;) if (n = r, r = n.plus(rt(a, n, t + 2, 1)).times(.5), jt(n.d).slice(0, t) === (i = jt(r.d)).slice(0, t)) if (i = i.slice(t - 3, t + 1), i == "9999" || !s && i == "4999") { 4402 if (!s && (me(n, l + 1, 0), n.times(n).eq(a))) { 4403 r = n; 4404 break; 4405 } 4406 t += 4, s = 1; 4407 } else { 4408 (!+i || !+i.slice(1) && i.charAt(0) == "5") && (me(r, l + 1, 1), e = !r.times(r).eq(a)); 4409 break; 4410 } 4411 return we = !0, me(r, l, d.rounding, e); 4412 }, j.tangent = j.tan = function() { 4413 var e, i, t = this, r = t.constructor; 4414 return t.isFinite() ? t.isZero() ? new r(t) : (e = r.precision, i = r.rounding, r.precision = e + 10, r.rounding = 1, t = t.sin(), t.s = 1, t = rt(t, new r(1).minus(t.times(t)).sqrt(), e + 10, 0), r.precision = e, r.rounding = i, me(Zr == 2 || Zr == 4 ? t.neg() : t, e, i, !0)) : new r(NaN); 4415 }, j.times = j.mul = function(e) { 4416 var i, t, r, s, n, a, o, l, c, d = this, u = d.constructor, h = d.d, g = (e = new u(e)).d; 4417 if (e.s *= d.s, !h || !h[0] || !g || !g[0]) return new u(!e.s || h && !h[0] && !g || g && !g[0] && !h ? NaN : !h || !g ? e.s / 0 : e.s * 0); 4418 for (t = Yt(d.e / fe) + Yt(e.e / fe), l = h.length, c = g.length, l < c && (n = h, h = g, g = n, a = l, l = c, c = a), n = [], a = l + c, r = a; r--;) n.push(0); 4419 for (r = c; --r >= 0;) { 4420 for (i = 0, s = l + r; s > r;) o = n[s] + g[r] * h[s - r - 1] + i, n[s--] = o % ji | 0, i = o / ji | 0; 4421 n[s] = (n[s] + i) % ji | 0; 4422 } 4423 for (; !n[--a];) n.pop(); 4424 return i ? ++t : n.shift(), e.d = n, e.e = Kl(n, t), we ? me(e, u.precision, u.rounding) : e; 4425 }, j.toBinary = function(e, i) { 4426 return Ch(this, 2, e, i); 4427 }, j.toDecimalPlaces = j.toDP = function(e, i) { 4428 var t = this, r = t.constructor; 4429 return t = new r(t), e === void 0 ? t : (wi(e, 0, Qr), i === void 0 ? i = r.rounding : wi(i, 0, 8), me(t, e + t.e + 1, i)); 4430 }, j.toExponential = function(e, i) { 4431 var t, r = this, s = r.constructor; 4432 return e === void 0 ? t = Tr(r, !0) : (wi(e, 0, Qr), i === void 0 ? i = s.rounding : wi(i, 0, 8), r = me(new s(r), e + 1, i), t = Tr(r, !0, e + 1)), r.isNeg() && !r.isZero() ? "-" + t : t; 4433 }, j.toFixed = function(e, i) { 4434 var t, r, s = this, n = s.constructor; 4435 return e === void 0 ? t = Tr(s) : (wi(e, 0, Qr), i === void 0 ? i = n.rounding : wi(i, 0, 8), r = me(new n(s), e + s.e + 1, i), t = Tr(r, !1, e + r.e + 1)), s.isNeg() && !s.isZero() ? "-" + t : t; 4436 }, j.toFraction = function(e) { 4437 var i, t, r, s, n, a, o, l, c, d, u, h, g = this, p = g.d, m = g.constructor; 4438 if (!p) return new m(g); 4439 if (c = t = new m(1), r = l = new m(0), i = new m(r), n = i.e = f1(p) - g.e - 1, a = n % fe, i.d[0] = Pt(10, a < 0 ? fe + a : a), e == null) e = n > 0 ? i : c; 4440 else { 4441 if (o = new m(e), !o.isInt() || o.lt(c)) throw Error(es + o); 4442 e = o.gt(i) ? n > 0 ? i : c : o; 4443 } 4444 for (we = !1, o = new m(jt(p)), d = m.precision, m.precision = n = p.length * fe * 2; u = rt(o, i, 0, 1, 1), s = t.plus(u.times(r)), s.cmp(e) != 1;) t = r, r = s, s = c, c = l.plus(u.times(s)), l = s, s = i, i = o.minus(u.times(s)), o = s; 4445 return s = rt(e.minus(t), r, 0, 1, 1), l = l.plus(s.times(c)), t = t.plus(s.times(r)), l.s = c.s = g.s, h = rt(c, r, n, 1).minus(g).abs().cmp(rt(l, t, n, 1).minus(g).abs()) < 1 ? [c, r] : [l, t], m.precision = d, we = !0, h; 4446 }, j.toHexadecimal = j.toHex = function(e, i) { 4447 return Ch(this, 16, e, i); 4448 }, j.toNearest = function(e, i) { 4449 var t = this, r = t.constructor; 4450 if (t = new r(t), e == null) { 4451 if (!t.d) return t; 4452 e = new r(1), i = r.rounding; 4453 } else { 4454 if (e = new r(e), i === void 0 ? i = r.rounding : wi(i, 0, 8), !t.d) return e.s ? t : e; 4455 if (!e.d) return e.s && (e.s = t.s), e; 4456 } 4457 return e.d[0] ? (we = !1, t = rt(t, e, 0, i, 1).times(e), we = !0, me(t)) : (e.s = t.s, t = e), t; 4458 }, j.toNumber = function() { 4459 return +this; 4460 }, j.toOctal = function(e, i) { 4461 return Ch(this, 8, e, i); 4462 }, j.toPower = j.pow = function(e) { 4463 var i, t, r, s, n, a, o = this, l = o.constructor, c = +(e = new l(e)); 4464 if (!o.d || !e.d || !o.d[0] || !e.d[0]) return new l(Pt(+o, c)); 4465 if (o = new l(o), o.eq(1)) return o; 4466 if (r = l.precision, n = l.rounding, e.eq(1)) return me(o, r, n); 4467 if (i = Yt(e.e / fe), i >= e.d.length - 1 && (t = c < 0 ? -c : c) <= I1) return s = g1(l, o, t, r), e.s < 0 ? new l(1).div(s) : me(s, r, n); 4468 if (a = o.s, a < 0) { 4469 if (i < e.d.length - 1) return new l(NaN); 4470 if (!(e.d[i] & 1) && (a = 1), o.e == 0 && o.d[0] == 1 && o.d.length == 1) return o.s = a, o; 4471 } 4472 return t = Pt(+o, c), i = t == 0 || !isFinite(t) ? Yt(c * (Math.log("0." + jt(o.d)) / Math.LN10 + o.e + 1)) : new l(t + "").e, i > l.maxE + 1 || i < l.minE - 1 ? new l(i > 0 ? a / 0 : 0) : (we = !1, l.rounding = o.s = 1, t = Math.min(12, (i + "").length), s = Eh(e.times(As(o, r + t)), r), s.d && (s = me(s, r + 5, 1), eo(s.d, r, n) && (i = r + 10, s = me(Eh(e.times(As(o, i + t)), i), i + 5, 1), +jt(s.d).slice(r + 1, r + 15) + 1 == 0x5af310
44727a4000 && (s = me(s, r + 1, 0)))), s.s = a, we = !0, l.rounding = n, me(s, r, n)); 4473 }, j.toPrecision = function(e, i) { 4474 var t, r = this, s = r.constructor; 4475 return e === void 0 ? t = Tr(r, r.e <= s.toExpNeg || r.e >= s.toExpPos) : (wi(e, 1, Qr), i === void 0 ? i = s.rounding : wi(i, 0, 8), r = me(new s(r), e, i), t = Tr(r, e <= r.e || r.e <= s.toExpNeg, e)), r.isNeg() && !r.isZero() ? "-" + t : t; 4476 }, j.toSignificantDigits = j.toSD = function(e, i) { 4477 var t = this, r = t.constructor; 4478 return e === void 0 ? (e = r.precision, i = r.rounding) : (wi(e, 1, Qr), i === void 0 ? i = r.rounding : wi(i, 0, 8)), me(new r(t), e, i); 4479 }, j.toString = function() { 4480 var e = this, i = e.constructor, t = Tr(e, e.e <= i.toExpNeg || e.e >= i.toExpPos); 4481 return e.isNeg() && !e.isZero() ? "-" + t : t; 4482 }, j.truncated = j.trunc = function() { 4483 return me(new this.constructor(this), this.e + 1, 1); 4484 }, j.valueOf = j.toJSON = function() { 4485 var e = this, i = e.constructor, t = Tr(e, e.e <= i.toExpNeg || e.e >= i.toExpPos); 4486 return e.isNeg() ? "-" + t : t; 4487 }, rt = (function() { 4488 function e(r, s, n) { 4489 var a, o = 0, l = r.length; 4490 for (r = r.slice(); l--;) a = r[l] * s + o, r[l] = a % n | 0, o = a / n | 0; 4491 return o && r.unshift(o), r; 4492 } 4493 function i(r, s, n, a) { 4494 var o, l; 4495 if (n != a) l = n > a ? 1 : -1; 4496 else for (o = l = 0; o < n; o++) if (r[o] != s[o]) { 4497 l = r[o] > s[o] ? 1 : -1; 4498 break; 4499 } 4500 return l; 4501 } 4502 function t(r, s, n, a) { 4503 for (var o = 0; n--;) r[n] -= o, o = r[n] < s[n] ? 1 : 0, r[n] = o * a + r[n] - s[n]; 4504 for (; !r[0] && r.length > 1;) r.shift(); 4505 } 4506 return function(r, s, n, a, o, l) { 4507 var c, d, u, h, g, p, m, S, b, v, y, w, T, O, _, z, V, x, $, I, D = r.constructor, H = r.s == s.s ? 1 : -1, F = r.d, K = s.d; 4508 if (!F || !F[0] || !K || !K[0]) return new D(!r.s || !s.s || (F ? K && F[0] == K[0] : !K) ? NaN : F && F[0] == 0 || !K ? H * 0 : H / 0); 4509 for (l ? (g = 1, d = r.e - s.e) : (l = ji, g = fe, d = Yt(r.e / g) - Yt(s.e / g)), $ = K.length, V = F.length, b = new D(H), v = b.d = [], u = 0; K[u] == (F[u] || 0); u++); 4510 if (K[u] > (F[u] || 0) && d--, n == null ? (O = n = D.precision, a = D.rounding) : o ? O = n + (r.e - s.e) + 1 : O = n, O < 0) v.push(1), p = !0; 4511 else { 4512 if (O = O / g + 2 | 0, u = 0, $ == 1) { 4513 for (h = 0, K = K[0], O++; (u < V || h) && O--; u++) _ = h * l + (F[u] || 0), v[u] = _ / K | 0, h = _ % K | 0; 4514 p = h || u < V; 4515 } else { 4516 for (h = l / (K[0] + 1) | 0, h > 1 && (K = e(K, h, l), F = e(F, h, l), $ = K.length, V = F.length), z = $, y = F.slice(0, $), w = y.length; w < $;) y[w++] = 0; 4517 I = K.slice(), I.unshift(0), x = K[0], K[1] >= l / 2 && ++x; 4518 do 4519 h = 0, c = i(K, y, $, w), c < 0 ? (T = y[0], $ != w && (T = T * l + (y[1] || 0)), h = T / x | 0, h > 1 ? (h >= l && (h = l - 1), m = e(K, h, l), S = m.length, w = y.length, c = i(m, y, S, w), c == 1 && (h--, t(m, $ < S ? I : K, S, l))) : (h == 0 && (c = h = 1), m = K.slice()), S = m.length, S < w && m.unshift(0), t(y, m, w, l), c == -1 && (w = y.length, c = i(K, y, $, w), c < 1 && (h++, t(y, $ < w ? I : K, w, l))), w = y.length) : c === 0 && (h++, y = [0]), v[u++] = h, c && y[0] ? y[w++] = F[z] || 0 : (y = [F[z]], w = 1); 4520 while ((z++ < V || y[0] !== void 0) && O--); 4521 p = y[0] !== void 0; 4522 } 4523 v[0] || v.shift(); 4524 } 4525 if (g == 1) b.e = d, N1 = p; 4526 else { 4527 for (u = 1, h = v[0]; h >= 10; h /= 10) u++; 4528 b.e = u + d * g - 1, me(b, o ? n + b.e + 1 : n, a, p); 4529 } 4530 return b; 4531 }; 4532 })(), j[Symbol.for("nodejs.util.inspect.custom")] = j.toString, j[Symbol.toStringTag] = "Decimal", _e = j.constructor = E1(Zl), to = new _e(to), io = new _e(io), P1 = _e; 4533 })))(); 4534} 4535function SR(e) { 4536 return new _e(qu((qu(e.toNumber(), 10) >= 2 ? e.minus(1).times(100) : new _e(-100).dividedBy(e.minus(1))).toNumber(), 10)); 4537} 4538function bR(e, i = !1) { 4539 return i ? e.toNearest(5).toNumber() : e.floor().toNumber(); 4540} 4541var At, _i, Ei, Ci, ic, St; 4542function rc() { 4543 return (rc = Z((() => { 4544 Ye(), tc(), At = (() => { 4545 let e = class ye { 4546 constructor(t, r = 1, s = !1) { 4547 this.isSimplified = !1, this.numerator = new _e(t), this.denominator = new _e(r), this.isSimplified = this.denominator.equals(1) || s; 4548 } 4549 static create(t) { 4550 return t instanceof ye ? t.copy() : ye.fromJSON(t); 4551 } 4552 static fromJSON(t) { 4553 return new ye(t.numerator, t.denominator); 4554 } 4555 static toCommonDenominator(t, r) { 4556 return t.denominator.equals(r.denominator) ? { 4557 firstNumerator: t.numerator, 4558 secondNumerator: r.numerator, 4559 denominator: t.denominator 4560 } : { 4561 firstNumerator: t.numerator.times(r.denominator), 4562 secondNumerator: r.numerator.times(t.denominator), 4563 denominator: t.denominator.times(r.denominator) 4564 }; 4565 } 4566 static isNumber(t) { 4567 return typeof t == "number"; 4568 } 4569 static toInt(t) { 4570 return Math.ceil(t) - t < ye.numberEps ? Math.ceil(t) : t - Math.floor(t) < ye.numberEps ? Math.floor(t) : NaN; 4571 } 4572 static numberToFraction(t) { 4573 let r = ye.toInt(t); 4574 if (!isNaN(r)) return new ye(r); 4575 let s = t.toString(10), n = s.indexOf("."), a = s.substring(n + 1).length, o = Math.pow(10, a), l = +s.replace(".", ""); 4576 return new ye(l, o).simplify(); 4577 } 4578 static getCommonDivisor(t, r) { 4579 let s; 4580 for (; !r.equals(0);) s = r, r = t.modulo(r), t = s; 4581 return t; 4582 } 4583 static empty() { 4584 return new ye(0, 0, !0); 4585 } 4586 static toFraction(t) { 4587 if (t == null) return ye.empty(); 4588 if (ye.isNumber(t)) return ye.numberToFraction(t); 4589 if (t.lessThanOrEqualTo(0)) return ye.empty(); 4590 let r = t.decimalPlaces(), s = Math.pow(10, r); 4591 return new ye(t.times(s), s).simplify(); 4592 } 4593 static fromString(t) { 4594 if (t.indexOf("/") === -1) return ye.empty(); 4595 let r = t.split("/"), s = new _e(r[0]), n = new _e(r[1]); 4596 return new ye(s, n); 4597 } 4598 add(t) { 4599 if (this.isEmpty()) return ye.empty(); 4600 if (ye.isNumber(t)) { 4601 let s = ye.toInt(t); 4602 if (!isNaN(s)) return new ye(this.numerator.add(this.denominator.times(s)), this.denominator); 4603 t = ye.numberToFraction(t); 4604 } 4605 if (t.isEmpty()) return ye.empty(); 4606 let r = ye.toCommonDenominator(this, t); 4607 return new ye(r.firstNumerator.plus(r.secondNumerator), r.denominator); 4608 } 4609 subtract(t) { 4610 if (this.isEmpty()) return ye.empty(); 4611 if (ye.isNumber(t)) { 4612 let s = ye.toInt(t); 4613 if (!isNaN(s)) return new ye(this.numerator.minus(this.denominator.times(s)), this.denominator); 4614 t = ye.numberToFraction(t); 4615 } 4616 if (t.isEmpty()) return ye.empty(); 4617 let r = ye.toCommonDenominator(this, t);
4618 return new ye(r.firstNumerator.minus(r.secondNumerator), r.denominator); 4619 } 4620 multiply(t) { 4621 return this.isEmpty() || (ye.isNumber(t) && (t = ye.numberToFraction(t)), t.isEmpty()) ? ye.empty() : new ye(this.numerator.times(t.numerator), this.denominator.times(t.denominator)); 4622 } 4623 divide(t) { 4624 return this.isEmpty() || (ye.isNumber(t) && (t = ye.numberToFraction(t)), t.isEmpty()) ? ye.empty() : new ye(this.numerator.times(t.denominator), this.denominator.times(t.numerator)); 4625 } 4626 getValue() { 4627 if (this.isEmpty()) return new _e(0); 4628 let t = new _e(this.numerator), r = new _e(this.denominator); 4629 return t.dividedBy(r); 4630 } 4631 toString() { 4632 return `${this.numerator}/${this.denominator}`; 4633 } 4634 simplify() { 4635 if (this.isSimplified) return this; 4636 let t = ye.getCommonDivisor(this.numerator, this.denominator); 4637 return new ye(this.numerator.dividedBy(t), this.denominator.dividedBy(t), !0); 4638 } 4639 compare(t) { 4640 let r = ye.isNumber(t) ? ye.toFraction(t) : t, s = ye.toCommonDenominator(this, r); 4641 return s.firstNumerator.lessThan(s.secondNumerator) ? -1 : s.firstNumerator.greaterThan(s.secondNumerator) ? 1 : 0; 4642 } 4643 lessThan(t) { 4644 return this.compare(t) === -1; 4645 } 4646 greaterThan(t) { 4647 return this.compare(t) === 1; 4648 } 4649 lessOrEqualThan(t) { 4650 return this.compare(t) <= 0; 4651 } 4652 greaterOrEqualThan(t) { 4653 return this.compare(t) >= 0; 4654 } 4655 equal(t) { 4656 return ye.isNumber(t) ? this.compare(t) === 0 : this.isEmpty() || t.isEmpty() ? this.isEmpty() && t.isEmpty() : this.compare(t) === 0; 4657 } 4658 isEmpty() { 4659 return this.denominator.equals(0); 4660 } 4661 toJSON() { 4662 return { 4663 numerator: this.numerator.toNumber(), 4664 denominator: this.denominator.toNumber() 4665 }; 4666 } 4667 copy() { 4668 return new ye(this.numerator, this.denominator, this.isSimplified); 4669 } 4670 }; 4671 return e.numberEps = 1e-7, e; 4672 })(), _i = Object.freeze({ 4673 decimals: 0, 4674 fractional: { 4675 numerator: 0, 4676 denominator: 0 4677 }, 4678 moneyline: 0 4679 }), Ei = Object.freeze({ 4680 decimals: new _e(0), 4681 fractional: At.empty(), 4682 moneyline: new _e(0) 4683 }), Ci = class Fr { 4684 static decimalToFraction(i) { 4685 return At.toFraction(i.minus(1)).simplify(); 4686 } 4687 static decimalToUS(i, t = 10) { 4688 return SR(i.toDecimalPlaces(t)); 4689 } 4690 static fractionToDecimal(i) { 4691 return i.add(1).getValue(); 4692 } 4693 static fractionToUS(i, t = 2) { 4694 return (i.greaterOrEqualThan(1) ? i.multiply(100).getValue() : new At(100, 1).divide(i).multiply(-1).getValue()).toDecimalPlaces(t); 4695 } 4696 static usToDecimal(i, t = 2) { 4697 return i.lessThan(0) ? new _e(1).minus(new _e(100).dividedBy(i).toDecimalPlaces(t)) : i.dividedBy(100).add(1); 4698 } 4699 static usToFraction(i, t = 2) { 4700 return i.lessThan(0) ? At.toFraction(new _e(-100).dividedBy(i).toDecimalPlaces(t)) : At.toFraction(i.dividedBy(100)); 4701 } 4702 static decimalToEachWay(i, t) { 4703 return Fr.decimalToFraction(i).multiply(t).add(1).getValue(); 4704 } 4705 static fractionToEachWay(i, t) { 4706 return i.multiply(t).simplify(); 4707 } 4708 static usToEachWay(i, t) { 4709 let r = Fr.usToFraction(i, 7).multiply(t).simplify(); 4710 return Fr.fractionToUS(r); 4711 } 4712 static convertOdds(i, t, r) { 4713 if (i === t) return r; 4714 switch (i) { 4715 case "EU": 4716 if (t === "UK") return { decimals: Fr.fractionToDecimal(At.create(r.fractional)).toNumber() }; 4717 if (t === "US") return { decimals: Fr.usToDecimal(new _e(r.moneyline)).toNumber() }; 4718 break; 4719 case "UK": 4720 if (t === "EU") return { fractional: Fr.decimalToFraction(new _e(r.decimals)).simplify().toJSON() }; 4721 if (t === "US") return { fractional: Fr.usToFraction(new _e(r.moneyline)).simplify().toJSON() }; 4722 break; 4723 case "US": 4724 if (t === "EU") return { moneyline: Fr.decimalToUS(new _e(r.decimals)).toNumber() }; 4725 if (t === "UK") return { moneyline: Fr.fractionToUS(At.create(r.fractional)).toNumber() }; 4726 } 4727 throw new Error("Invalid odds formats"); 4728 } 4729 }, ic = class zt { 4730 static create(i) { 4731 return !i.odds && !i.numerator && !i.denominator && !i.americanOdds ? _i : { 4732 decimals: i.odds || 0, 4733 fractional: i.numerator != null && i.denominator != null ? { 4734 numerator: i.numerator, 4735 denominator: i.denominator 4736 } : { 4737 numerator: 0, 4738 denominator: 0 4739 }, 4740 moneyline: i.americanOdds || 0 4741 }; 4742 } 4743 static createFromBpos(i, t) { 4744 switch (t) { 4745 case "European": return zt.create({ odds: i.european }); 4746 case "British": return zt.create({ 4747 numerator: i.british.numerator, 4748 denominator: i.british.denominator 4749 }); 4750 case "American": return zt.create({ americanOdds: i.american }); 4751 default: return _i; 4752 } 4753 } 4754 static isEmpty(i) { 4755 return i === _i || i === Ei; 4756 } 4757 static isValid(i) { 4758 return zt.isEmpty(i) ? !1 : zt.isDecimalOddsValid(i.decimals) || zt.isFractionalOddsValid(i.fractional) || zt.isMoneyLineOddsValid(i.moneyline); 4759 } 4760 static isDecimalOddsValid(i) { 4761 return typeof i == "number" ? i > 1 : i.greaterThan(1); 4762 } 4763 static isFractionalOddsValid(i) { 4764 return Ci.fractionToDecimal(At.create(i)).greaterThan(1); 4765 } 4766 static isMoneyLineOddsValid(i) { 4767 return typeof i == "number" ? i >= 100 || i < -100 && i >= -1e5 : i.greaterThanOrEqualTo(100) || i.lessThan(-100) && i.greaterThan(-1e5); 4768 } 4769 static sum(i) { 4770 if (i.length === 1) return zt.isEmpty(i[0]) ? Ei : i[0]; 4771 let t = new _e(0), r = new At(0, 1), s = r, n = new _e(0); 4772 for (let a of i) { 4773 if (zt.isEmpty(a)) return Ei; 4774 t = t.add(a.decimals), s = s === r ? a.fractional : s.add(1).add(a.fractional.add(1)).subtract(1), n = n.add(Ci.usToDecimal(a.moneyline, 10)); 4775 } 4776 return { 4777 decimals: t, 4778 fractional: s, 4779 moneyline: Ci.decimalToUS(n) 4780 }; 4781 } 4782 static merge(i, t) { 4783 return zt.multiply(Array.isArray(i) ? i : [i, this.OddsOne], t); 4784 } 4785 static multiply(i, t) { 4786 if (i.length === 1) return zt.isEmpty(i[0]) ? Ei : i[0]; 4787 let r = new _e(1), s = new At(0, 1), n = new _e(1); 4788 for (let a of i) { 4789 if (zt.isEmpty(a)) return Ei; 4790 r = r.times(a.decimals), s = s.add(1).multiply(a.fractional.add(1)).subtract(1), n = n.times(Ci.usToDecimal(a.moneyline, 10)); 4791 } 4792 return { 4793 decimals: t ? r.toDecimalPlaces(2, _e.ROUND_HALF_UP) : r, 4794 fractional: s, 4795 moneyline: Ci.decimalToUS(n) 4796 }; 4797 } 4798 static equal(i, t, r = "None") { 4799 switch (r) { 4800 case "British": return At.fromJSON(i.fractional).equal(At.fromJSON(t.fractional)); 4801 case "European": return i.decimals === t.decimals; 4802 case "American": return i.moneyline === t.moneyline; 4803 default: return i.decimals === t.decimals && At.fromJSON(i.fractional).equal(At.fromJSON(t.fractional)) && i.moneyline === t.moneyline; 4804 } 4805 } 4806 static equal2(i, t) { 4807 return i.decimals.equals(t.decimals) && i.fractional.equal(t.fractional) && i.moneyline.equals(t.moneyline); 4808 } 4809 static toCalculatedOdds(i) { 4810 if (!i) return Ei; 4811 let t = { 4812 decimals: i.decimals ? new _e(i.decimals) : new _e(0), 4813 fractional: i.fractional ? At.fromJSON(i.fractional) : At.empty(), 4814 moneyline: i.moneyline ? new _e(i.moneyline) : new _e(0) 4815 }; 4816 return this.equal2(t, Ei) ? Ei : t; 4817 } 4818 static toDecimal(i, t) { 4819 switch (t) { 4820 case "UK": return Ci.fractionToDecimal(i.fractional); 4821 case "US": return Ci.usToDecimal(i.moneyline, 10); 4822 default: return i.decimals; 4823 } 4824 } 4825 static fromDecimal(i) { 4826 return { 4827 decimals: i, 4828 fractional: Ci.decimalToFraction(i), 4829 moneyline: Ci.decimalToUS(i) 4830 }; 4831 } 4832 static createCalculatedOdds(i) { 4833 return !i.odds && !i.numerator && !i.denominator && !i.americanOdds ? Ei : zt.toCalculatedOdds(zt.create(i)); 4834 } 4835 static fromDecimalsToCalculatedOdds(i) { 4836 return i ? zt.toCalculatedOdds(zt.fromDecimalsToOdds(i)) : Ei; 4837 } 4838 static fromDecimalsToOdds(i) { 4839 return zt.create({ 4840 odds: i, 4841 numerator: new _e(i).minus(1).toNumber(), 4842 denominator: 1 4843 }); 4844 } 4845 static fromBposFormat(i) { 4846 switch (i) { 4847 case "American": return "US"; 4848 case "British": return "UK";
4849 case "European": return "EU"; 4850 case "None": return "EU"; 4851 } 4852 } 4853 static toBposFormat(i = "EU") { 4854 switch (i) { 4855 case "EU": return "European"; 4856 case "UK": return "British"; 4857 case "US": return "American"; 4858 } 4859 } 4860 static toOdds(i) { 4861 return { 4862 decimals: i.decimals ? i.decimals.toNumber() : 0, 4863 fractional: i.fractional ? { 4864 numerator: i.fractional.numerator.toNumber(), 4865 denominator: i.fractional.denominator.toNumber() 4866 } : { 4867 numerator: 0, 4868 denominator: 0 4869 }, 4870 moneyline: i.moneyline ? i.moneyline.toNumber() : 0 4871 }; 4872 } 4873 static lessThan(i, t, r) { 4874 switch (r) { 4875 case "UK": return i.fractional.lessThan(t.fractional); 4876 case "US": return i.moneyline.lessThan(t.moneyline); 4877 default: return i.decimals.lessThan(t.decimals); 4878 } 4879 } 4880 static greaterThan(i, t, r) { 4881 switch (r) { 4882 case "UK": return i.fractional.greaterThan(t.fractional); 4883 case "US": return i.moneyline.greaterThan(t.moneyline); 4884 default: return i.decimals.greaterThan(t.decimals); 4885 } 4886 } 4887 static clone(i) { 4888 return { 4889 decimals: i.decimals, 4890 fractional: i.fractional.copy(), 4891 moneyline: i.moneyline 4892 }; 4893 } 4894 }, ic.OddsOne = ic.fromDecimal(new _e(1)), St = ic; 4895 })))(); 4896} 4897function A1(e) { 4898 return e.split(":")[1] || e; 4899} 4900function $1(e) { 4901 return M1.test(e); 4902} 4903function yR(e) { 4904 return e.replace(":", "-"); 4905} 4906function _1(e) { 4907 if (e.indexOf(":") > -1) return +e.split(":")[0]; 4908} 4909var M1; 4910function so() { 4911 return (so = Z((() => { 4912 M1 = /(?!1:)\d+:(\d+)$/; 4913 })))(); 4914} 4915function R1(e) { 4916 switch (e) { 4917 case "AllCombo": return pi.AllCombo; 4918 case "AllLiveEvents": return pi.OnlyLiveEvents; 4919 case "NoCombo": return pi.NoCombo; 4920 case "NoEventCombo": return pi.NoEventCombo; 4921 case "NoFixtureCombo": return pi.NoFixtureCombo; 4922 case "NoEventSameLeagueCombo": return pi.OnlySameLeagueDifferentEvent; 4923 case "NoCompetitionCombo": return pi.NoCompetitionCombo; 4924 case "NoLeagueCombo": return pi.NoLeagueCombo; 4925 case "NoSportCombo": return pi.NoSportCombo; 4926 case "OtherLiveEvents": return pi.OnlyDifferentLiveEvents; 4927 case "NoGroupCombo": return pi.NoGroupCombo; 4928 default: return pi.Default; 4929 } 4930} 4931function wR() { 4932 return { 4933 clientLegId: "", 4934 isNoncombinable: !1, 4935 isClosed: !1, 4936 isVisible: !0, 4937 redundantState: "NotRedundantLeg" 4938 }; 4939} 4940function L1(e) { 4941 switch (e) { 4942 case "Combo2": return si.Combo2; 4943 case "Combo3": return si.Combo3; 4944 case "Combo4": return si.Combo4; 4945 case "Combo5": return si.Combo5; 4946 case "Combo6": return si.Combo6; 4947 } 4948 return si.Single; 4949} 4950function ER(e) { 4951 if (!e) return si.Single; 4952 switch (e) { 4953 case 2: return si.Combo2; 4954 case 3: return si.Combo3; 4955 case 4: return si.Combo4; 4956 case 5: return si.Combo5; 4957 case 6: return si.Combo6; 4958 } 4959 return si.Single; 4960} 4961function CR(e) { 4962 return e.messageType === "GameDelete"; 4963} 4964function NR(e) { 4965 return !!(e.messageType === "GameUpdate" && e.payload.game); 4966} 4967function B1(e) { 4968 return { 4969 id: e.price.id, 4970 isVisible: e.participantPriceStatus === "Visible" && (e.priceType !== "Fixed" || St.isValid(St.create(e.price))), 4971 marketId: e.marketId, 4972 nativeOdds: e.priceType === "Fixed" ? St.create(e.price) : _i, 4973 type: xt[e.priceType] 4974 }; 4975} 4976function TR(e, i) { 4977 let t = e.options?.filter((r) => r.price.id === i.id)[0]; 4978 return { 4979 id: i.id, 4980 isVisible: !0, 4981 marketId: e.id, 4982 nativeOdds: St.create(i), 4983 type: t?.participantPriceType ? xt[t.participantPriceType] : xt.Fixed 4984 }; 4985} 4986function D1(e) { 4987 return e.flatMap((i) => Kt.isPick(i) || nc(i) ? i.getLegs() : i).length; 4988} 4989function F1(e) { 4990 return ar.isPick(e) || Kt.isPick(e); 4991} 4992function kR(e) { 4993 return ar.isPick(e) ? !!e.sportcastOptions?.length : Kt.isPick(e) && ss.isId(e.id) ? e.id.groupInfo.provider === "Default" : !1; 4994} 4995function xR(e) { 4996 return Kt.isPick(e); 4997} 4998function IR(e) { 4999 return ar.isPick(e); 5000} 5001function OR(e) { 5002 return Kt.isPick(e) && e.isRacingGroupPick; 5003} 5004function PR(e) { 5005 return rs.isId(e) || ss.isId(e); 5006} 5007function AR(e) { 5008 return e.marketName.name + " - " + e.optionName.name; 5009} 5010function sc(e) { 5011 return Cl(Ih(e), (i) => i.id.toString()).reduce((i, t) => ar.isPick(t) ? i + t.getLegCount() : i + 1, 0); 5012} 5013function $R(e) { 5014 return Cl(e, (i) => i.id.toString()).reduce((i, t) => ar.isPick(t) ? i + t.getLegCount() : Kt.isPick(t) ? i + t.filterLegsByRedundantState("NotRedundantLeg").length : i + 1, 0); 5015} 5016function _R(e) { 5017 return Cl(e, (i) => i.id.toString()).reduce((i, t) => Kt.isPick(t) ? i + t.filterNoncombinableLegs().length : i, 0); 5018} 5019function MR(e, i, t = !1) { 5020 let r = sc(e), s = t ? _R(e) : 0, n = i ? r - $R(e) : 0; 5021 return r - s - n; 5022} 5023function Ih(e) { 5024 return e.flatMap((i) => Kt.isPick(i) || nc(i) ? i.getLegs() : i); 5025} 5026function an(e) { 5027 return Cl(e.flatMap((i) => Kt.isPick(i) || nc(i) ? [i, ...i.getLegs()] : i), (i) => i.id.toString()); 5028} 5029function nc(e) { 5030 return lc.isPick(e) && e.legs.length > 0; 5031} 5032function RR(e) { 5033 return e instanceof Ni ? e.option.isDraw : void 0; 5034} 5035function no(e) { 5036 switch (e.pickSubType) { 5037 case kt.V1Pick: return ns.fromJSON(e); 5038 case kt.HorseWinPick: return ho.fromJSON(e); 5039 case kt.HorseXCastPick: return ra.fromJSON(e);
5040 case kt.HorseOptionMarketPick: return sa.fromJSON(e); 5041 case kt.GolfWinPick: return _h.fromJSON(e); 5042 case kt.BetBuilderPick: return ar.fromJSON(e); 5043 case kt.StandardV2Pick: return cc.fromJSON(e); 5044 case kt.GroupedPicks: return Rh.fromJSON(e); 5045 case kt.HorseOptionMarketXCastRacePick: return oc.fromJSON(e); 5046 default: throw new Error("Unknown pick sub type"); 5047 } 5048} 5049function LR(e) { 5050 return e.boostedPriceDetails?.boostType ? !0 : Kt.isPick(e) ? e.getLegs().some((i) => !!i.boostedPriceDetails?.boostType) : !1; 5051} 5052var pi, si, ts, kt, Ue, Qn, ao, xt, Oh, bt, Ph, xr, oo, on, lo, Zn, is, Ah, $h, co, ln, cn, ea, uo, rs, po, ss, z1, ta, G1, ia, $s, Ni, ac, ns, ar, dn, un, or, ho, ra, sa, oc, lc, cc, _h, V1, H1, Mh, dc, uc, pc, U1, Kt, Rh, W1, pn; 5053function mo() { 5054 return (mo = Z((() => { 5055 Re(), Ye(), so(), rc(), pi = (function(e) { 5056 return e[e.Default = 0] = "Default", e[e.AllCombo = 1] = "AllCombo", e[e.NoCombo = 2] = "NoCombo", e[e.NoSportCombo = 3] = "NoSportCombo", e[e.NoLeagueCombo = 4] = "NoLeagueCombo", e[e.NoEventCombo = 6] = "NoEventCombo", e[e.OnlySameLeagueDifferentEvent = 7] = "OnlySameLeagueDifferentEvent", e[e.OnlyLiveEvents = 8] = "OnlyLiveEvents", e[e.OnlyDifferentLiveEvents = 9] = "OnlyDifferentLiveEvents", e[e.NoCompetitionCombo = 10] = "NoCompetitionCombo", e[e.NoFixtureCombo = 11] = "NoFixtureCombo", e[e.NoGroupCombo = 12] = "NoGroupCombo", e; 5057 })(pi || {}), si = (function(e) { 5058 return e[e.Default = 0] = "Default", e[e.Single = 1] = "Single", e[e.Combo2 = 2] = "Combo2", e[e.Combo3 = 3] = "Combo3", e[e.Combo4 = 4] = "Combo4", e[e.Combo5 = 5] = "Combo5", e[e.Combo6 = 6] = "Combo6", e; 5059 })(si || {}), ts = (function(e) { 5060 return e[e.V1Pick = 0] = "V1Pick", e[e.V2ParticipantPick = 1] = "V2ParticipantPick", e[e.V2OptionMarketPick = 2] = "V2OptionMarketPick", e[e.BetBuilderPick = 3] = "BetBuilderPick", e[e.GroupedPicks = 4] = "GroupedPicks", e[e.V2OptionMarketXcastPick = 5] = "V2OptionMarketXcastPick", e; 5061 })(ts || {}), kt = (function(e) { 5062 return e[e.None = 0] = "None", e[e.V1Pick = 1] = "V1Pick", e[e.HorseWinPick = 2] = "HorseWinPick", e[e.HorseXCastPick = 3] = "HorseXCastPick", e[e.HorseOptionMarketPick = 4] = "HorseOptionMarketPick", e[e.GolfWinPick = 5] = "GolfWinPick", e[e.BetBuilderPick = 6] = "BetBuilderPick", e[e.StandardV2Pick = 7] = "StandardV2Pick", e[e.UnknownPick = 8] = "UnknownPick", e[e.HorseOptionMarketXCastRacePick = 9] = "HorseOptionMarketXCastRacePick", e[e.GroupedPicks = 10] = "GroupedPicks", e; 5063 })(kt || {}), Ue = (function(e) { 5064 return e[e.Win = 1] = "Win", e[e.Forecast = 2] = "Forecast", e[e.CombinationForecast = 3] = "CombinationForecast", e[e.Tricast = 4] = "Tricast", e[e.CombinationTricast = 5] = "CombinationTricast", e[e.Freeform = 6] = "Freeform", e[e.Derived = 7] = "Derived", e[e.None = 8] = "None", e; 5065 })(Ue || {}), Qn = (function(e) { 5066 return e.Win = "win", e.Forecast = "fc", e.CombinationForecast = "cfc", e.Tricast = "tc", e.CombinationTricast = "ctc", e; 5067 })(Qn || {}), ao = (function(e) { 5068 return e[e.Open = 1] = "Open", e[e.Lost = 2] = "Lost", e[e.Won = 3] = "Won", e[e.Canceled = 5] = "Canceled", e[e.Unknown = 0] = "Unknown", e; 5069 })(ao || {}), xt = (function(e) { 5070 return e[e.Fixed = 1] = "Fixed", e[e.StartingPrice = 2] = "StartingPrice", e[e.NoPrice = 3] = "NoPrice", e; 5071 })(xt || {}), Oh = (function(e) { 5072 return e[e.SinglePick = 0] = "SinglePick", e[e.ComboPicks = 1] = "ComboPicks", e[e.BetBuilderPicks = 2] = "BetBuilderPicks", e[e.BetBuilderPlusPicks = 3] = "BetBuilderPlusPicks", e; 5073 })(Oh || {}), bt = (function(e) { 5074 return e[e.Open = 0] = "Open", e[e.Locked = 1] = "Locked", e[e.Closed = 2] = "Closed", e; 5075 })(bt || {}), Ph = (function(e) { 5076 return e[e.None = 0] = "None", e[e.Unknown = 1] = "Unknown", e[e.MarketVisibility = 2] = "MarketVisibility", e[e.PriceVisibility = 4] = "PriceVisibility", e[e.Odds = 8] = "Odds", e; 5077 })(Ph || {}), xr = class CA { 5078 constructor(i) { 5079 this.id = i, this.subscriptionContext = []; 5080 } 5081 static isEmpty(i) { 5082 return typeof i == "string" ? !i : i.isEmpty(); 5083 } 5084 static Empty() { 5085 class i extends CA { 5086 constructor() { 5087 super(""), this.fixtureId = ""; 5088 } 5089 getPickType() { 5090 throw Error("Empty Pick Id"); 5091 } 5092 copy() { 5093 return new i(); 5094 } 5095 } 5096 return new i(); 5097 } 5098 isEmpty() { 5099 return !this.id; 5100 } 5101 isEqual(i) { 5102 return i ? typeof i == "string" ? this.id === i : this.id === i.id : !1; 5103 } 5104 toString() { 5105 return this.id; 5106 } 5107 }, oo = class Pn extends xr { 5108 static asString(i, t, r) { 5109 return `${Pn.ID_PREFIX}-e:${i}/m:${t}/o:${r}`; 5110 } 5111 static isId(i) { 5112 let t = typeof i == "string" ? i : i.toString(); 5113 return Pn.PICK_REG_EX.test(t); 5114 } 5115 static fromString(i) { 5116 let t = i.match(Pn.PICK_REG_EX); 5117 return new Pn(t[1], +t[2], +t[3]); 5118 } 5119 constructor(i, t, r) { 5120 super(Pn.asString(i, t, r)), this.eventId = i, this.marketId = t, this.optionId = r, this.fixtureId = i.toString(); 5121 } 5122 getPickType() { 5123 return ts.V1Pick; 5124 } 5125 copy() { 5126 return new Pn(this.eventId, this.marketId, this.optionId); 5127 } 5128 }, oo.ID_PREFIX = "v1", oo.PICK_REG_EX = new RegExp(`${oo.ID_PREFIX}-e:(\\d+)/m:(\\d+)/o:(-?\\d+)`), on = oo, lo = class NA extends xr { 5129 static isId(i) { 5130 return i instanceof NA; 5131 } 5132 constructor(i, t) { 5133 super(i), this.fixtureId = t; 5134 } 5135 }, Zn = class zr extends lo { 5136 static getPrefix(i) { 5137 switch (i) { 5138 case Ue.Win: return "win";
5139 case Ue.Forecast: return "fc"; 5140 case Ue.CombinationForecast: return "cfc"; 5141 case Ue.Tricast: return "tc"; 5142 case Ue.CombinationTricast: return "ctc"; 5143 } 5144 return ""; 5145 } 5146 static asString(i, t, r, s) { 5147 let n = `${zr.ID_PREFIX}-${zr.getPrefix(s)}-f:${i}/m:${t}/`, a = Object.entries(r).sort((l, c) => +l[0] - +c[0]), o = []; 5148 for (let [l, c] of a) o.push(`p:${l}:${c}`); 5149 return n + o.join("/"); 5150 } 5151 static isId(i) { 5152 let t = typeof i == "string" ? i : i.toString(); 5153 return zr.PICK_REG_EX.test(t); 5154 } 5155 static fromString(i) { 5156 let t = i.match(zr.PICK_REG_EX), r = t[1], s; 5157 switch (r) { 5158 case "win": 5159 s = Ue.Win; 5160 break; 5161 case "fc": 5162 s = Ue.Forecast; 5163 break; 5164 case "cfc": 5165 s = Ue.CombinationForecast; 5166 break; 5167 case "tc": 5168 s = Ue.Tricast; 5169 break; 5170 case "ctc": 5171 s = Ue.CombinationTricast; 5172 break; 5173 default: throw new Error("Unknown participant pick type"); 5174 } 5175 let n = t[2], a = +t[3], o = {}, l = t[4]; 5176 for (; l.length > 0;) { 5177 let c = l.match(zr.PICK_PARTICIPANT_REG_EX); 5178 o[+c[1]] = +c[2], l = l.replace(zr.PICK_PARTICIPANT_REG_EX, ""); 5179 } 5180 return s === Ue.Win ? new $h(n, a, +Object.keys(o)[0]) : new zr(n, a, o, s); 5181 } 5182 constructor(i, t, r, s) { 5183 super(zr.asString(i, t, r, s), i), this.marketId = t, this.participantIds = r, this.pickType = s; 5184 } 5185 getPickType() { 5186 return ts.V2ParticipantPick; 5187 } 5188 copy() { 5189 return new zr(this.fixtureId, this.marketId, this.participantIds, this.pickType); 5190 } 5191 get participants() { 5192 return Object.keys(this.participantIds).map((i) => +i); 5193 } 5194 }, Zn.ID_PREFIX = "v2-p", Zn.PICK_REG_EX = new RegExp(`${Zn.ID_PREFIX}-(win|fc|cfc|tc|ctc)-f:([\\d:]+)/m:(\\d+)((/p:(\\d+):(\\d+))+)`), Zn.PICK_PARTICIPANT_REG_EX = /* @__PURE__ */ new RegExp("/p:(\\d+):(\\d+)"), is = Zn, Ah = class Sb extends is { 5195 constructor(i, t, r) { 5196 super(i, t, { [r]: 1 }, Ue.Win), this.fixtureId = i, this.marketId = t, this.participantId = r; 5197 } 5198 static isId(i) { 5199 let t = typeof i == "string" ? i : i.toString(); 5200 return Sb.V2WIN_PICK_REG_EX.test(t); 5201 } 5202 copy() { 5203 return new Sb(this.fixtureId, this.marketId, this.participantId); 5204 } 5205 }, Ah.V2WIN_PICK_REG_EX = new RegExp(`${is.ID_PREFIX}-win-f:([\\d:]+)/m:(\\d+)((/p:(\\d+):(\\d+))+)`), $h = Ah, co = class An extends lo { 5206 static asString(i, t, r, s) { 5207 return `${An.ID_PREFIX}-f:${i}/om:${t}/o:${r}/p:${s}`; 5208 } 5209 static fromString(i) { 5210 let t = i.match(An.PICK_REG_EX); 5211 return new An(t[1], +t[2], +t[3], +t[4]); 5212 } 5213 constructor(i, t, r, s) { 5214 super(An.asString(i, t, r, s), i), this.fixtureId = i, this.optionMarketId = t, this.optionId = r, this.priceId = s; 5215 } 5216 static isId(i) { 5217 let t = typeof i == "string" ? i : i.toString(); 5218 return An.PICK_REG_EX.test(t); 5219 } 5220 copy() { 5221 return new An(this.fixtureId, this.optionMarketId, this.optionId, this.priceId); 5222 } 5223 getPickType() { 5224 return ts.V2OptionMarketPick; 5225 } 5226 }, co.ID_PREFIX = "v2-om", co.PICK_REG_EX = new RegExp(`${co.ID_PREFIX}-f:([\\d:]+)/om:(\\d+)/o:(\\d+)/p:(\\d+)`), ln = co, cn = class Xi extends lo { 5227 static asString(i, t, r, s, n) { 5228 let a = `${Xi.ID_PREFIX}-${Xi.getPrefix(n)}-f:${i}/om:${t}/`, o = Object.entries(r).sort((u, h) => +u[0] - +h[0]), l = []; 5229 for (let [u, h] of o) l.push(`o:${u}:${h}`); 5230 let c = Object.entries(s).sort((u, h) => +u[0] - +h[0]), d = []; 5231 for (let [u, h] of c) d.push(`p:${u}:${h}`); 5232 return a + l.join("/") + "/" + d.join("/"); 5233 } 5234 static fromString(i) { 5235 let t = i.match(Xi.PICK_REG_EX), r = t[1], s; 5236 switch (r) { 5237 case Qn.Forecast: 5238 s = Ue.Forecast; 5239 break; 5240 case Qn.CombinationForecast: 5241 s = Ue.CombinationForecast; 5242 break; 5243 case Qn.Tricast: 5244 s = Ue.Tricast; 5245 break; 5246 case Qn.CombinationTricast: 5247 s = Ue.CombinationTricast; 5248 break; 5249 default: throw new Error("Unknown option market pick type"); 5250 } 5251 let n = t[2], a = +t[3], o = {}, l = {}, c = t[4]; 5252 for (; c.length > 0;) { 5253 let u = c.match(Xi.PICK_OPTION_REG_EX); 5254 o[+u[1]] = +u[2], c = c.replace(Xi.PICK_OPTION_REG_EX, ""); 5255 } 5256 let d = t[8]; 5257 for (; d.length > 0;) { 5258 let u = d.match(Xi.PICK_PRICE_REG_EX); 5259 l[+u[1]] = +u[2], d = d.replace(Xi.PICK_PRICE_REG_EX, ""); 5260 } 5261 return new Xi(n, a, o, l, s); 5262 } 5263 constructor(i, t, r, s, n) { 5264 super(Xi.asString(i, t, r, s, n), i), this.fixtureId = i, this.optionMarketId = t, this.optionIds = r, this.priceIds = s, this.pickType = n; 5265 } 5266 static isId(i) { 5267 let t = typeof i == "string" ? i : i.toString(); 5268 return Xi.PICK_REG_EX.test(t); 5269 } 5270 copy() { 5271 return new Xi(this.fixtureId, this.optionMarketId, this.optionIds, this.priceIds, this.pickType); 5272 } 5273 getPickType() { 5274 return ts.V2OptionMarketXcastPick; 5275 } 5276 static getPrefix(i) { 5277 switch (i) {
5278 case Ue.Forecast: return "fc"; 5279 case Ue.CombinationForecast: return "cfc"; 5280 case Ue.Tricast: return "tc"; 5281 case Ue.CombinationTricast: return "ctc"; 5282 } 5283 return ""; 5284 } 5285 }, cn.ID_PREFIX = "v2-om", cn.PICK_REG_EX = new RegExp(`${cn.ID_PREFIX}-?(fc|cfc|tc|ctc)?-f:([\\d:]+)/om:(\\d+)((/o:(\\d+):?(\\d+)?)*)((/p:(\\d+):?(\\d+)?)*)`), cn.PICK_OPTION_REG_EX = /* @__PURE__ */ new RegExp("/o:(\\d+):(\\d+)"), cn.PICK_PRICE_REG_EX = /* @__PURE__ */ new RegExp("/p:(\\d+):(\\d+)"), ea = cn, uo = class $n extends lo { 5286 static asString(i, t, r, s, n) { 5287 let a = i.indexOf(":") !== -1 ? i.split(":").pop() : i; 5288 return `${$n.ID_PREFIX}-e:${a}/f:${t}/om:${r}/o:${s}/p:${n}`; 5289 } 5290 static isId(i) { 5291 let t = typeof i == "string" ? i : i.toString(); 5292 return $n.PICK_REG_EX.test(t); 5293 } 5294 static fromString(i) { 5295 let t = i.match($n.PICK_REG_EX); 5296 return new $n(t[1], t[2], +t[3], +t[4], +t[5]); 5297 } 5298 constructor(i, t, r, s, n) { 5299 super($n.asString(i, t, r, s, n), t), this.eventId = i, this.optionMarketId = r, this.optionId = s, this.priceId = n; 5300 } 5301 getPickType() { 5302 return ts.BetBuilderPick; 5303 } 5304 copy() { 5305 return new $n(this.eventId, this.fixtureId, this.optionMarketId, this.optionId, this.priceId); 5306 } 5307 }, uo.ID_PREFIX = "bb", uo.PICK_REG_EX = new RegExp(`${uo.ID_PREFIX}-e:([\\d:]+)/f:([\\d:]+)/om:(\\d+)/o:(\\d+)/p:(\\d+)`), rs = uo, po = class _n extends xr { 5308 static asString(i) { 5309 return `${_n.ID_PREFIX}-e:${i.groupId}/${i.provider}`; 5310 } 5311 static isId(i) { 5312 let t = typeof i == "string" ? i : i.toString(); 5313 return _n.PICK_REG_EX.test(t); 5314 } 5315 static fromString(i) { 5316 let t = i.match(_n.PICK_REG_EX); 5317 return new _n({ 5318 groupId: t[1], 5319 provider: t[2] ? t[2] : "Angstrom" 5320 }); 5321 } 5322 constructor(i) { 5323 super(_n.asString(i)), this.groupInfo = i, this.fixtureId = i.groupId; 5324 } 5325 getPickType() { 5326 return ts.GroupedPicks; 5327 } 5328 copy() { 5329 return new _n(this.groupInfo); 5330 } 5331 }, po.ID_PREFIX = "GROUP", po.PICK_REG_EX = new RegExp(`${po.ID_PREFIX}-e:([^/]+)(?:/(.+))?`), ss = po, z1 = (e) => on.isId(e) || ln.isId(e) || is.isId(e), ta = function(e) { 5332 if (on.isId(e)) return on.fromString(e); 5333 if (is.isId(e)) return is.fromString(e); 5334 if (ln.isId(e)) return ln.fromString(e); 5335 if (ea.isId(e)) return ea.fromString(e); 5336 if (rs.isId(e)) return rs.fromString(e); 5337 if (xr.isEmpty(e)) return xr.Empty(); 5338 if (ss.isId(e)) return ss.fromString(e); 5339 throw new Error("Unknown pick id string"); 5340 }, G1 = function(e) { 5341 return on.isId(e) ? on.fromString(e) : is.isId(e) ? is.fromString(e) : ln.isId(e) ? ln.fromString(e) : ea.isId(e) ? ea.fromString(e) : rs.isId(e) ? rs.fromString(e) : xr.isEmpty(e) ? xr.Empty() : ss.isId(e) ? ss.fromString(e) : null; 5342 }, ia = class { 5343 get groupInfo() { 5344 return this._groupInfo; 5345 } 5346 constructor() { 5347 this.isAvailable = !0, this.resultStatus = ao.Open, this.subscriptionContext = [], this.priceHistory = []; 5348 } 5349 isVisible() { 5350 return this.isAvailable && this.isPriceVisible() && this.isMarketVisible(); 5351 } 5352 isOpen() { 5353 return this.resultStatus === ao.Open; 5354 } 5355 get currentPrice() { 5356 return this.prices[0]; 5357 } 5358 get oddsState() { 5359 return this.isOpen() ? this.isVisible() ? bt.Open : bt.Locked : bt.Closed; 5360 } 5361 betCount() { 5362 return 1; 5363 } 5364 toJSON() { 5365 return { 5366 id: this.id.toString(), 5367 priceHistory: this.priceHistory, 5368 priceType: this.priceType, 5369 acceptedPrice: this.acceptedPrice, 5370 isNewCustomerOffer: this.isNewCustomerOfferPick, 5371 market: this.market ? { 5372 id: this.market.id, 5373 isVisible: this.market.isVisible, 5374 isBetBuilderEnabled: this.market.isBetBuilderEnabled 5375 } : null, 5376 subscriptionContext: this.subscriptionContext, 5377 pickSubType: kt.None, 5378 tracking: this.tracking, 5379 boostedPriceDetails: this.boostedPriceDetails, 5380 liveAlert: this.liveAlert, 5381 groupInfo: this.groupInfo, 5382 parentLinkedEventId: this.parentLinkedEventId ?? this.id.parentLinkedEventId, 5383 totalsPrefix: this.totalsPrefix, 5384 fromHybridFixture: this.fromHybridFixture, 5385 pickUpdateMetadata: this.pickUpdateMetadata ? Da(this.pickUpdateMetadata) : void 0, 5386 optionParticipantId: this.optionParticipantId, 5387 optionParticipantParentId: this.optionParticipantParentId, 5388 marketGrouping: this.marketGrouping 5389 }; 5390 } 5391 initPropertiesFromJSON(e) { 5392 this.id = ta(e.id), this.priceHistory = e.priceHistory, this.priceType = e.priceType, this.acceptedPrice = e.acceptedPrice, this.isNewCustomerOfferPick = e.isNewCustomerOffer, this.subscriptionContext = e.subscriptionContext, e.market && (this.market = { 5393 id: e.market.id, 5394 isVisible: e.market.isVisible, 5395 isBetBuilderEnabled: e.market.isBetBuilderEnabled 5396 }), this.tracking = e.tracking ?? {}, this.boostedPriceDetails = e.boostedPriceDetails, this.liveAlert = e.liveAlert, this._groupInfo = e.groupInfo, this.parentLinkedEventId = e.parentLinkedEventId, this.totalsPrefix = e.totalsPrefix, this.fromHybridFixture = e.fromHybridFixture, this.pickUpdateMetadata = e.pickUpdateMetadata ? Da(e.pickUpdateMetadata) : void 0, this.optionParticipantId = e.optionParticipantId, this.optionParticipantParentId = e.optionParticipantParentId, this.marketGrouping = e.marketGrouping; 5397 } 5398 getOddsAcceptance() { 5399 return this.currentPrice?.nativeOdds === this.acceptedPrice.price?.
5399nativeOdds ? !0 : !this.currentPrice?.nativeOdds || !this.acceptedPrice.price?.nativeOdds ? !1 : St.equal(this.currentPrice?.nativeOdds, this.acceptedPrice.price?.nativeOdds); 5400 } 5401 setGroupInfo(e) { 5402 this._groupInfo = e; 5403 } 5404 }, $s = class TA extends ia { 5405 static isPick(i) { 5406 return i instanceof TA; 5407 } 5408 constructor() { 5409 super(), this.priceType = xt.Fixed; 5410 } 5411 isMarketVisible() { 5412 return this.market.isVisible; 5413 } 5414 isPriceVisible() { 5415 return !0; 5416 } 5417 initPropertiesFromJSON(i) { 5418 super.initPropertiesFromJSON(i), this.fixture = J(C({}, i.fixture), { 5419 eventDate: new Date(i.fixture.eventDate), 5420 cutOffDate: new Date(i.fixture.cutOffDate), 5421 league: i.fixture.league, 5422 region: i.fixture.region 5423 }); 5424 } 5425 get leagueId() { 5426 return this.fixture.league !== null ? this.fixture.league.id : 0; 5427 } 5428 get leagueName() { 5429 return this.fixture.league?.name || { 5430 name: "", 5431 signature: "" 5432 }; 5433 } 5434 get regionId() { 5435 return this.fixture.region !== null ? this.fixture.region.id : 0; 5436 } 5437 get regionName() { 5438 return this.fixture.region?.name || { 5439 name: "", 5440 signature: "" 5441 }; 5442 } 5443 isOpen() { 5444 return super.isOpen() ? this.fixture.cutOffDate > /* @__PURE__ */ new Date() : !1; 5445 } 5446 get eventName() { 5447 return this.fixture.name; 5448 } 5449 get sportId() { 5450 return this.fixture.sportId; 5451 } 5452 get partitionId() { 5453 return _1(this.fixture.fixtureId); 5454 } 5455 get sportName() { 5456 return this.fixture.sportName; 5457 } 5458 get eventDate() { 5459 return this.fixture.eventDate; 5460 } 5461 get competitionName() { 5462 return this.leagueName; 5463 } 5464 get competitionId() { 5465 return this.leagueId; 5466 } 5467 get isVirtual() { 5468 return this.fixture.virtual; 5469 } 5470 toJSON() { 5471 return J(C({}, super.toJSON()), { fixture: J(C({}, this.fixture), { 5472 eventDate: this.fixture.eventDate.toISOString(), 5473 cutOffDate: this.fixture.cutOffDate.toISOString(), 5474 league: this.fixture.league && { 5475 id: this.fixture.league.id, 5476 name: C({}, this.fixture.league.name), 5477 realCompetitionId: this.fixture.league.realCompetitionId 5478 }, 5479 region: this.fixture.region && { 5480 id: this.fixture.region.id, 5481 name: C({}, this.fixture.region.name) 5482 } 5483 }) }); 5484 } 5485 setMarketInvisible() { 5486 this.market.isVisible = !1; 5487 } 5488 }, Ni = class kA extends $s { 5489 get eventParticipants() { 5490 return this.fixture.participants; 5491 } 5492 get eventViewType() { 5493 return this.fixture.viewType; 5494 } 5495 static isPick(i) { 5496 return i instanceof kA; 5497 } 5498 initPropertiesFromJSON(i) { 5499 super.initPropertiesFromJSON(i), this.market = i.market, this.isFavouritePick = i.isFavouritePick, this.isFromNewCustomerOffer = i.isFromNewCustomerOffer || !1, this.option = J(C({}, i.option), { 5500 prices: Da(i.option.prices), 5501 isDraw: i.option.isDraw 5502 }), this.pickType = i.pickType, this.siblingOption = i.siblingOption; 5503 } 5504 get optionId() { 5505 return this.option.id; 5506 } 5507 get optionName() { 5508 return this.option.name; 5509 } 5510 get optionShortName() { 5511 return this.option.short; 5512 } 5513 get marketName() { 5514 return this.market.name; 5515 } 5516 get isLive() { 5517 return this.fixture.stage === "Live"; 5518 } 5519 get isEachWay() { 5520 return this.market.isEachWay; 5521 } 5522 get placeTerms() { 5523 return this.market.placeTerms; 5524 } 5525 get realCompetitionId() { 5526 return this.fixture.league?.realCompetitionId; 5527 } 5528 isPriceVisible() { 5529 return this.option.isVisible && !!this.currentPrice && this.currentPrice.isVisible; 5530 } 5531 isMarketVisible() { 5532 return this.market.isVisible; 5533 } 5534 isOpen() { 5535 return !super.isOpen() || this.market.isClosed ? !1 : this.fixture.cutOffDate > /* @__PURE__ */ new Date(); 5536 } 5537 toJSON() { 5538 return J(C({}, super.toJSON()), { 5539 id: this.id.toString(), 5540 isFromNewCustomerOffer: this.isFromNewCustomerOffer, 5541 market: C({}, this.market), 5542 isFavouritePick: this.isFavouritePick, 5543 option: C({}, this.option), 5544 pickType: this.pickType, 5545 siblingOption: this.siblingOption 5546 }); 5547 } 5548 get prices() { 5549 return this.option.prices.filter((i) => i.marketId === this.market.id); 5550 } 5551 }, ac = (function(e) { 5552 return e[e.OddsChange = 0] = "OddsChange", e[e.VisibilityChange = 1] = "VisibilityChange", e[e.LockChange = 2] = "LockChange", e; 5553 })(ac || {}), ns = class Ou extends ia { 5554 get eventParticipants() { 5555 return this.event.participants; 5556 } 5557 get eventViewType() { 5558 return this.event.viewType; 5559 } 5560 static fromJSON(i) { 5561 let t = new Ou(); 5562 return t.initPropertiesFromJSON(i), t;
5563 } 5564 static isPick(i) { 5565 return i instanceof Ou; 5566 } 5567 constructor() { 5568 super(), this.priceType = xt.Fixed; 5569 } 5570 initPropertiesFromJSON(i) { 5571 super.initPropertiesFromJSON(i), this.event = J(C({}, i.event), { 5572 eventDate: new Date(i.event.eventDate), 5573 cutOffDate: new Date(i.event.cutOffDate), 5574 sequence: i.event.sequence, 5575 latestSequence: i.event.latestSequence 5576 }), this.league = i.league, this.region = i.region, this.sport = i.sport, this.market = C({}, i.market), this.option = C({}, i.option), this.teaser = C({}, i.teaser); 5577 } 5578 get eventName() { 5579 return this.event.name; 5580 } 5581 get marketName() { 5582 return this.market.name; 5583 } 5584 get optionName() { 5585 return this.option.name; 5586 } 5587 get optionShortName() { 5588 return this.option.short; 5589 } 5590 get optionId() { 5591 return this.option.id; 5592 } 5593 get sportId() { 5594 return this.sport.id; 5595 } 5596 get partitionId() {} 5597 get isVirtual() { 5598 return !1; 5599 } 5600 get eventDate() { 5601 return this.event.eventDate; 5602 } 5603 get regionName() { 5604 return this.region.name; 5605 } 5606 get competitionName() { 5607 return this.league.name; 5608 } 5609 get competitionId() { 5610 return this.league.id; 5611 } 5612 get sportName() { 5613 return this.sport.name; 5614 } 5615 get leagueName() { 5616 return this.league.name; 5617 } 5618 isPriceVisible() { 5619 return !!this.currentPrice && this.currentPrice.isVisible; 5620 } 5621 isMarketVisible() { 5622 return this.market.isVisible; 5623 } 5624 setMarketInvisible() { 5625 this.market.isVisible = !1; 5626 } 5627 isOpen() { 5628 return !super.isOpen() || this.market.isClosed ? !1 : this.event.cutOffDate > /* @__PURE__ */ new Date(); 5629 } 5630 toJSON() { 5631 return J(C({}, super.toJSON()), { 5632 id: this.id.toString(), 5633 pickSubType: kt.V1Pick, 5634 event: { 5635 id: this.event.id, 5636 name: C({}, this.event.name), 5637 groupId: this.event.groupId, 5638 isLive: this.event.isLive, 5639 isPublished: this.event.isPublished, 5640 eventDate: this.event.eventDate.toISOString(), 5641 cutOffDate: this.event.cutOffDate.toISOString(), 5642 participants: this.event.participants, 5643 viewType: this.event.viewType, 5644 sequence: this.event.sequence, 5645 latestSequence: this.event.latestSequence 5646 }, 5647 league: C({}, this.league), 5648 region: C({}, this.region), 5649 sport: C({}, this.sport), 5650 market: C({}, this.market), 5651 option: C({}, this.option), 5652 teaser: C({}, this.teaser) 5653 }); 5654 } 5655 copy() { 5656 let i = this.toJSON(); 5657 return Ou.fromJSON(i); 5658 } 5659 updateFromMessage(i) { 5660 let t = {}; 5661 if (CR(i) && i.payload.gameId === this.market.id) return this.market = J(C({}, this.market), { 5662 isVisible: !1, 5663 isClosed: !0 5664 }), t; 5665 if (NR(i) && i.payload.game.id === this.market.id && i.payload.game.results.some((r) => r.id === this.option.id)) { 5666 let r = i.payload.game; 5667 this.market = J(C({}, this.market), { 5668 isVisible: r.visibility === "Visible", 5669 isClosed: r.visibility === "Hidden", 5670 comboPrevention: R1(r.combo1), 5671 minimumCombo: L1(r.combo2) 5672 }); 5673 let s = r.results.find((a) => a.id === this.option.id), n = J(C({}, this.currentPrice), { 5674 nativeOdds: St.create(s), 5675 isVisible: s.visibility === "Visible" && s.odds > 1 5676 }); 5677 (!St.equal(n.nativeOdds, this.currentPrice.nativeOdds) || n.isVisible !== this.currentPrice.isVisible) && (this.priceHistory.push(C({}, this.currentPrice)), St.equal(n.nativeOdds, this.currentPrice.nativeOdds) ? n.isVisible !== this.currentPrice.isVisible && (t.changeType = ac.VisibilityChange) : t.changeType = ac.OddsChange), this.option.price = n; 5678 } 5679 return t; 5680 } 5681 get isLive() { 5682 return this.event.isLive; 5683 } 5684 get prices() { 5685 return [this.option.price]; 5686 } 5687 }, ar = class fl extends Ni { 5688 get eventParticipants() { 5689 return this.event.event.participants; 5690 } 5691 get eventViewType() { 5692 return this.event.event.viewType; 5693 } 5694 constructor() { 5695 super(), this.pendingPrice = !1; 5696 } 5697 static isPick(i) { 5698 return i instanceof fl; 5699 } 5700 static isEntainUiBetBuilderPick(i) { 5701 return i instanceof fl && !!i.sportcastOptions?.length; 5702 } 5703 getLegCount() { 5704 return this.sportcastOptions?.length ? this.sportcastOptions.length : this.market.name.name.split(";").length; 5705 } 5706 static fromJSON(i) { 5707 let t = new fl(); 5708 return t.initPropertiesFromJSON(i), t;
5709 } 5710 initPropertiesFromJSON(i) { 5711 super.initPropertiesFromJSON(i), this.eventId = i.eventId, this.event = i.event && J(C({}, i.event), { event: J(C({}, i.event.event), { date: new Date(i.event.event.date) }) }), this.sportcastOptions = i.sportcastOptions, this.betgeniusId = i.betgeniusId, this.sportcastId = i.sportcastId, this.betSlipUid = i.betSlipUid, this.useV2Key = i.useV2key, this.longIds = i.longIds; 5712 } 5713 getLegs() { 5714 return this.market.name.name.split(";"); 5715 } 5716 betCount() { 5717 return 1; 5718 } 5719 toJSON() { 5720 return J(C({}, super.toJSON()), { 5721 eventId: this.eventId, 5722 event: this.event, 5723 pickSubType: kt.BetBuilderPick, 5724 sportcastOptions: this.sportcastOptions, 5725 betgeniusId: this.betgeniusId, 5726 sportcastId: this.sportcastId, 5727 betSlipUid: this.betSlipUid, 5728 useV2key: this.useV2Key, 5729 longIds: this.longIds 5730 }); 5731 } 5732 copy() { 5733 let i = this.toJSON(), t = fl.fromJSON(i); 5734 return t.pendingPrice = this.pendingPrice, t; 5735 } 5736 get regionName() { 5737 return this.event.region.name; 5738 } 5739 get leagueName() { 5740 return this.event.league.name; 5741 } 5742 get eventDate() { 5743 return this.event.event.date; 5744 } 5745 }, dn = class xA extends $s { 5746 static isPick(i) { 5747 return i instanceof xA; 5748 } 5749 initPropertiesFromJSON(i) { 5750 super.initPropertiesFromJSON(i), this.market = i.market, this.participants = i.participants.map((t) => J(C({}, t), { prices: t.prices.map((r) => C({}, r)) })), this.betType = i.betType, this.betTypeAltTranslation = i.betTypeAltTranslation; 5751 } 5752 updateFromPrice(i, t) { 5753 if (!t) this.priceHistory.push(C({}, i)), i.isVisible = !1; 5754 else { 5755 let r = { 5756 isVisible: t.marketStatus === "Visible" && t.participantPriceStatus === "Visible", 5757 nativeOdds: _i 5758 }; 5759 t.priceType === "Fixed" && (r.nativeOdds = St.create(t.price), r.isVisible = r.isVisible && St.isValid(r.nativeOdds)), (!St.equal(r.nativeOdds, i.nativeOdds) || i.isVisible !== r.isVisible) && this.priceHistory.push(C({}, i)), i.isVisible = r.isVisible, i.nativeOdds = r.nativeOdds; 5760 } 5761 } 5762 addPriceFromOption(i, t) { 5763 let r = B1(t); 5764 i.prices.push(r); 5765 } 5766 updateFromParticipantOptions(i) { 5767 let t = i.filter((r) => r.marketType === this.market.marketType); 5768 this.market.isVisible = !!t.length && t.every((r) => r.marketStatus === "Visible"); 5769 } 5770 isPriceVisible() { 5771 return !this.participants.some((i) => i.status === "Hidden") && !!this.currentPrice && this.currentPrice.isVisible; 5772 } 5773 isMarketVisible() { 5774 return this.market.isVisible; 5775 } 5776 get isLive() { 5777 return !1; 5778 } 5779 toJSON() { 5780 return J(C({}, super.toJSON()), { 5781 id: this.id.toString(), 5782 market: { 5783 id: this.market.id, 5784 isVisible: this.market.isVisible, 5785 marketType: this.market.marketType, 5786 isBetBuilderEnabled: !1 5787 }, 5788 participants: this.participants.map((i) => C({}, i)), 5789 betType: this.betType, 5790 betTypeAltTranslation: this.betTypeAltTranslation 5791 }); 5792 } 5793 get optionName() { 5794 return { 5795 name: this.participants.sort((i, t) => i.position - t.position).map((i) => i.name.name).join(", "), 5796 signature: "" 5797 }; 5798 } 5799 get prices() { 5800 return this.participants.flatMap((i) => i.prices.filter((t) => t.marketId === this.market.id)); 5801 } 5802 }, un = class IA extends dn { 5803 constructor() { 5804 super(); 5805 } 5806 static isPick(i) { 5807 return i instanceof IA; 5808 } 5809 initPropertiesFromJSON(i) { 5810 super.initPropertiesFromJSON(i), this.market = i.market; 5811 } 5812 updateFromParticipantOptions(i) { 5813 if (super.updateFromParticipantOptions(i), i.length) { 5814 let t = i.find((s) => s.priceType === "Fixed"), r = i.find((s) => s.priceType === "StartingPrice"); 5815 this.market.isStartingPriceAvailable = !!(r && r.marketStatus === "Visible"), this.market.isVisible = !!(t && t.marketStatus === "Visible"), this.market.isEachWay = t?.properties.isEachWay || !1, this.market.placeTerms = t?.properties.placeTerms || null; 5816 } 5817 } 5818 isMarketVisible() { 5819 if (!this.currentPrice) return !1; 5820 switch (this.currentPrice.type) { 5821 case xt.Fixed: return this.market.isVisible; 5822 case xt.StartingPrice: return this.market.isStartingPriceAvailable; 5823 default: return !1; 5824 } 5825 } 5826 isStartingPriceAvailable() { 5827 return this.market.isStartingPriceAvailable && this.prices.some((i) => i.type === xt.StartingPrice && i.isVisible); 5828 } 5829 isFixedPriceAvailable() { 5830 return this.market.isVisible && this.prices.some((i) => i.type === xt.Fixed && i.isVisible); 5831 } 5832 toJSON() { 5833 return J(C({}, super.toJSON()), { market: { 5834 id: this.market.id, 5835 isVisible: this.market.isVisible, 5836 isStartingPriceAvailable: this.market.isStartingPriceAvailable, 5837 isEachWay: this.market.isEachWay, 5838 marketType: this.market.marketType, 5839 placeTerms: this.market.placeTerms && C({}, this.market.placeTerms), 5840 isBetBuilderEnabled: !1 5841 } }); 5842 } 5843 get participant() { 5844 return this.participants[0]; 5845 } 5846 get isEachWay() { 5847 return this.market.isEachWay && this.participant.type !== "Favourite"; 5848 } 5849 get optionName() { 5850 return this.participant.name; 5851 } 5852 get prices() { 5853 return this.participant.prices.filter((i) => i.marketId === this.market.id); 5854 } 5855 get currentPrice() { 5856 return this.prices.find((i) => i.type === this.priceType); 5857 } 5858 }, or = class { 5859 static toJSON(e, i) { 5860 return { fixture: J(C({}, i), { 5861 bestOddsGuarantee: e.fixture.bestOddsGuarantee, 5862 isRaceOff: e.fixture.isRaceOff, 5863 isInPlay: e.fixture.isInPlay, 5864 isPlannedInPlay: e.fixture.isPlannedInPlay 5865 }) }; 5866 } 5867 static fromJSON(e, i, t) { 5868 e.fixture = J(C({}, i), { 5869 bestOddsGuarantee: t.fixture.bestOddsGuarantee, 5870 isRaceOff: t.fixture.isRaceOff, 5871 isInPlay: t.fixture.isInPlay, 5872 isPlannedInPlay: e.fixture.isPlannedInPlay 5873 }); 5874 } 5875 static eventName(e) { 5876 return e.fixture.fixtureType === "DayOfRace" ? e.leagueName : e.fixture.name; 5877 } 5878 }, ho = class Pu extends un { 5879 get eventParticipants() {} 5880 get eventViewType() {} 5881 static fromJSON(i) { 5882 let t = new Pu(); 5883 return t.initPropertiesFromJSON(i), t;
5884 } 5885 static isPick(i) { 5886 return i instanceof Pu; 5887 } 5888 initPropertiesFromJSON(i) { 5889 super.initPropertiesFromJSON(i), or.fromJSON(this, this.fixture, i), this.fromJSON(this, i); 5890 } 5891 setMarketName(i, t) { 5892 this._marketName = i, t && (this._marketNameAltTranslation = t); 5893 } 5894 toJSON() { 5895 let i = super.toJSON(); 5896 return J(C(C(C({}, i), or.toJSON(this, i.fixture)), this.toParticipantsJSON(this)), { pickSubType: kt.HorseWinPick }); 5897 } 5898 fromJSON(i, t) { 5899 this._marketName = t._marketName, i.participants = t.participants.map((r) => J(C({}, r), { prices: r.prices })), t._marketNameAltTranslation && (this._marketNameAltTranslation = t._marketNameAltTranslation); 5900 } 5901 toParticipantsJSON(i) { 5902 return C({ 5903 participants: i.participants.map((t) => J(C({}, t), { prices: t.prices })), 5904 _marketName: this._marketName 5905 }, this._marketNameAltTranslation && { _marketNameAltTranslation: this._marketNameAltTranslation }); 5906 } 5907 setMarketInvisible() { 5908 super.setMarketInvisible(), this.market.isStartingPriceAvailable = !1; 5909 } 5910 copy() { 5911 let i = this.toJSON(); 5912 return Pu.fromJSON(i); 5913 } 5914 get participant() { 5915 return this.participants[0]; 5916 } 5917 get eventName() { 5918 return or.eventName(this); 5919 } 5920 get marketName() { 5921 return { 5922 name: this._marketName, 5923 signature: "", 5924 nameAlternate: this._marketNameAltTranslation 5925 }; 5926 } 5927 get isLive() { 5928 return this.fixture.isInPlay; 5929 } 5930 }, ra = class Au extends dn { 5931 get eventParticipants() {} 5932 get eventViewType() {} 5933 static isPick(i) { 5934 return i instanceof Au; 5935 } 5936 static fromJSON(i) { 5937 let t = new Au(); 5938 return t.initPropertiesFromJSON(i), t; 5939 } 5940 constructor() { 5941 super(), this.priceType = xt.NoPrice; 5942 } 5943 initPropertiesFromJSON(i) { 5944 super.initPropertiesFromJSON(i), or.fromJSON(this, this.fixture, i), this.fromJSON(this, i); 5945 } 5946 getPermutations(i) { 5947 let t = 1; 5948 for (let r = this.participants.length; r > this.participants.length - i; r--) t *= r; 5949 return t; 5950 } 5951 betCount() { 5952 switch (this.id.pickType) { 5953 case Ue.CombinationForecast: return this.getPermutations(2); 5954 case Ue.CombinationTricast: return this.getPermutations(3); 5955 case Ue.Forecast: 5956 case Ue.Tricast: return 1; 5957 default: return 1; 5958 } 5959 } 5960 setMarketName(i, t) { 5961 this._marketName = i, t && (this._marketNameAltTranslation = t); 5962 } 5963 toJSON() { 5964 let i = super.toJSON(); 5965 return J(C(C(C({}, i), or.toJSON(this, i.fixture)), this.toParticipantsJSON(this)), { pickSubType: kt.HorseXCastPick }); 5966 } 5967 copy() { 5968 let i = this.toJSON(); 5969 return Au.fromJSON(i); 5970 } 5971 get eventName() { 5972 return or.eventName(this); 5973 } 5974 get marketName() { 5975 return { 5976 name: this._marketName, 5977 signature: "", 5978 nameAlternate: this._marketNameAltTranslation 5979 }; 5980 } 5981 fromJSON(i, t) { 5982 this._marketName = t._marketName, i.participants = t.participants.map((r) => J(C({}, r), { prices: r.prices })), t._marketNameAltTranslation && (this._marketNameAltTranslation = t._marketNameAltTranslation); 5983 } 5984 toParticipantsJSON(i) { 5985 return C({ 5986 participants: i.participants.map((t) => J(C({}, t), { prices: t.prices })), 5987 _marketName: this._marketName 5988 }, this._marketNameAltTranslation && { _marketNameAltTranslation: this._marketNameAltTranslation }); 5989 } 5990 }, sa = class $u extends Ni { 5991 constructor() { 5992 super(); 5993 } 5994 static fromJSON(i) { 5995 let t = new $u(); 5996 return t.initPropertiesFromJSON(i), t; 5997 } 5998 initPropertiesFromJSON(i) { 5999 super.initPropertiesFromJSON(i), or.fromJSON(this, this.fixture, i), this.betType = i.betType, this.betTypeAltTranslation = i.betTypeAltTranslation; 6000 } 6001 toJSON() { 6002 let i = super.toJSON(); 6003 return J(C(C({}, i), or.toJSON(this, i.fixture)), { 6004 pickSubType: kt.HorseOptionMarketPick, 6005 betType: this.betType, 6006 betTypeAltTranslation: this.betTypeAltTranslation 6007 }); 6008 } 6009 copy() { 6010 let i = this.toJSON(); 6011 return $u.fromJSON(i); 6012 } 6013 get eventName() { 6014 return this.leagueName; 6015 } 6016 get competitionName() { 6017 return this.leagueName; 6018 } 6019 static isPick(i) { 6020 return i instanceof $u; 6021 } 6022 get isLive() { 6023 return this.fixture.isInPlay; 6024 } 6025 isStartingPriceAvailable() { 6026 return this.market.isStartingPriceAvailable && !this.fixture.isRaceOff; 6027 } 6028 isFixedPriceAvailable() { 6029 return this.market.isVisible && this.market.isFixedPriceAvailable; 6030 } 6031 }, oc = class _u extends $s { 6032 get eventParticipants() {} 6033 get eventViewType() {} 6034 get marketName() { 6035 return this.market.name; 6036 } 6037 get isLive() { 6038 return this.fixture.stage === "Live"; 6039 } 6040 get optionName() { 6041 return { 6042 name: this.options.sort((i, t) => i.position - t.position).map((i) => i.name.name).join(", "), 6043 signature: "" 6044 }; 6045 } 6046 getPermutations(i) { 6047 let t = 1; 6048 for (let r = this.options.length; r > this.options.length - i; r--) t *= r; 6049 return t; 6050 } 6051 betCount() { 6052 switch (this.id.pickType) { 6053 case Ue.CombinationForecast: return this.getPermutations(2); 6054 case Ue.CombinationTricast: return this.getPermutations(3);
6055 case Ue.Forecast: 6056 case Ue.Tricast: return 1; 6057 default: return 1; 6058 } 6059 } 6060 get selectedOptions() { 6061 return this.options; 6062 } 6063 static isPick(i) { 6064 return i instanceof _u; 6065 } 6066 static fromJSON(i) { 6067 let t = new _u(); 6068 return t.initPropertiesFromJSON(i), t; 6069 } 6070 constructor() { 6071 super(), this.priceType = xt.NoPrice; 6072 } 6073 initPropertiesFromJSON(i) { 6074 super.initPropertiesFromJSON(i), or.fromJSON(this, this.fixture, i), this.market = i.market, this.betType = i.betType, this.betTypeAltTranslation = i.betTypeAltTranslation, this.options = i.options.map((t) => J(C({}, t), { prices: Da(t.prices) })); 6075 } 6076 toJSON() { 6077 let i = super.toJSON(); 6078 return J(C(C({}, i), or.toJSON(this, i.fixture)), { 6079 pickSubType: kt.HorseOptionMarketXCastRacePick, 6080 options: this.options, 6081 market: this.market, 6082 betType: this.betType, 6083 betTypeAltTranslation: this.betTypeAltTranslation 6084 }); 6085 } 6086 copy() { 6087 let i = this.toJSON(); 6088 return _u.fromJSON(i); 6089 } 6090 get eventName() { 6091 return this.leagueName; 6092 } 6093 get competitionName() { 6094 return this.leagueName; 6095 } 6096 get prices() { 6097 return this.options[0].prices.filter((i) => i.marketId === this.market.id); 6098 } 6099 }, lc = class bb extends ia { 6100 static isPick(i) { 6101 return i instanceof bb; 6102 } 6103 constructor(i, t, r, s) { 6104 super(), this.id = i, this.market = { 6105 id: 0, 6106 isVisible: !1, 6107 isBetBuilderEnabled: !1 6108 }, this.priceType = xt.NoPrice, this.acceptedPrice = { 6109 price: null, 6110 isManuallyAccepted: !1 6111 }, this.isAvailable = !1, this.tracking = t || { source: "" }, this.legs = r ?? [], this.subscriptionContext = s ?? []; 6112 } 6113 getLegs() { 6114 return this.legs; 6115 } 6116 copy() { 6117 let i = super.toJSON(), t = new bb(xr.Empty(), void 0, this.legs); 6118 return t.initPropertiesFromJSON(i), t; 6119 } 6120 get eventParticipants() {} 6121 get eventViewType() {} 6122 get eventName() { 6123 return { 6124 name: "", 6125 signature: "" 6126 }; 6127 } 6128 get isLive() { 6129 return !1; 6130 } 6131 isMarketVisible() { 6132 return !1; 6133 } 6134 isPriceVisible() { 6135 return !1; 6136 } 6137 get isVirtual() { 6138 return !1; 6139 } 6140 get marketName() { 6141 return { 6142 name: "", 6143 signature: "" 6144 }; 6145 } 6146 get eventDate() { 6147 return /* @__PURE__ */ new Date(); 6148 } 6149 get regionName() { 6150 return { 6151 name: "", 6152 signature: "" 6153 }; 6154 } 6155 get competitionName() { 6156 return { 6157 name: "", 6158 signature: "" 6159 }; 6160 } 6161 get competitionId() { 6162 return 0; 6163 } 6164 get leagueName() { 6165 return { 6166 name: "", 6167 signature: "" 6168 }; 6169 } 6170 get optionName() { 6171 return { 6172 name: "", 6173 signature: "" 6174 }; 6175 } 6176 get prices() { 6177 return []; 6178 } 6179 get sportName() { 6180 return { 6181 name: "", 6182 signature: "" 6183 }; 6184 } 6185 get partitionId() {} 6186 get sportId() { 6187 return 0; 6188 } 6189 }, cc = class yb extends Ni { 6190 constructor() { 6191 super(); 6192 } 6193 static fromJSON(i) { 6194 let t = new yb(); 6195 return t.initPropertiesFromJSON(i), t; 6196 } 6197 toJSON() { 6198 return J(C({}, super.toJSON()), { pickSubType: kt.StandardV2Pick }); 6199 } 6200 copy() { 6201 let i = this.toJSON(); 6202 return yb.fromJSON(i); 6203 } 6204 }, _h = class Mu extends un { 6205 get eventParticipants() {} 6206 get eventViewType() {} 6207 static isPick(i) { 6208 return i instanceof Mu; 6209 } 6210 static fromJSON(i) { 6211 let t = new Mu(); 6212 return t.initPropertiesFromJSON(i), t; 6213 } 6214 initPropertiesFromJSON(i) { 6215 super.initPropertiesFromJSON(i), this.fixture = J(C({}, this.fixture), { fixtureGroup: i.fixture.fixtureGroup }); 6216 } 6217 toJSON() { 6218 let i = super.toJSON(); 6219 return J(C({}, i), { 6220 fixture: J(C({}, i.fixture), { fixtureGroup: { 6221 id: this.fixture.fixtureGroup.id, 6222 name: { 6223 name: this.fixture.fixtureGroup.name.name, 6224 signature: this.fixture.fixtureGroup.name.signature 6225 } 6226 } }), 6227 pickSubType: kt.GolfWinPick 6228 }); 6229 } 6230 copy() { 6231 let i = this.toJSON(); 6232 return Mu.fromJSON(i); 6233 } 6234 get eventName() { 6235 return this.fixture.fixtureGroup.name; 6236 } 6237 get marketName() { 6238 return this.fixture.name; 6239 } 6240 }, V1 = (e) => e?.map((i) => H1(i)) ?? [], H1 = (e) => ({ 6241 isVisible: !Mh(e.suspensionState), 6242 isClosed: e.resultState !== "Open", 6243 clientLegId: e.clientLegId, 6244 redundantState: e?.redundantState 6245 }), Mh = (e) => e !== "MarketUnsuspended", dc = (e) => { 6246 try { 6247 return { 6248 nativeOdds: St.create(e), 6249 type: xt.Fixed, 6250 id: 1, 6251 isVisible: !0, 6252 marketId: 1 6253 }; 6254 } catch { 6255 return dc(uc()); 6256 } 6257 }, uc = () => ({ 6258 americanOdds: _i.moneyline, 6259 odds: _i.decimals, 6260 denominator: _i.fractional.denominator, 6261 numerator: _i.fractional.numerator 6262 }), pc = dc(uc()), U1 = (e) =>
6262 ns.isPick(e) ? `1:${e.event.id}:${e.market.id}:${e.optionId}` : Ni.isPick(e) ? `${e.fixture.fixtureId}:${e.market.id}:${e.optionId}` : "", Kt = class OA extends ia { 6263 constructor() { 6264 super(...arguments), this._legsState = {}, this._isRacingGroupPick = !1, this.pendingPrice = !1; 6265 } 6266 get groupInfo() { 6267 return this._groupInfo; 6268 } 6269 static isPick(i) { 6270 return i instanceof OA; 6271 } 6272 get sgpId() { 6273 return this._sgpId; 6274 } 6275 get isRacingGroupPick() { 6276 return this._isRacingGroupPick; 6277 } 6278 getLegs() { 6279 return this.legs; 6280 } 6281 get legsState() { 6282 return this._legsState; 6283 } 6284 get eventParticipants() { 6285 return this.legs[0]?.eventParticipants; 6286 } 6287 get eventViewType() { 6288 return this.legs[0]?.eventViewType; 6289 } 6290 hasPick(i) { 6291 return this.legs.some((t) => t.id.toString() === i.toString()); 6292 } 6293 legIsNoncombinable(i) { 6294 return !!this._legsState[i.toString()]?.isNoncombinable; 6295 } 6296 getOddsStateForLegId(i) { 6297 let t = this.legs.find((r) => r.id === i); 6298 return t ? this.getOddsStateForLeg(t) : bt.Closed; 6299 } 6300 getOddsStateForLeg(i) { 6301 let t = i.oddsState, { isClosed: r, isVisible: s } = this._legsState[i.id.toString()]; 6302 return r || t === bt.Closed ? bt.Closed : !s || t === bt.Locked ? bt.Locked : bt.Open; 6303 } 6304 hasNonOpenLegs() { 6305 return this.legs.some((i) => this.getOddsStateForLeg(i) !== bt.Open); 6306 } 6307 groupHasUncombinableLeg() { 6308 return Object.values(this._legsState).some((i) => i.isNoncombinable); 6309 } 6310 isPriceVisible() { 6311 return !0; 6312 } 6313 isMarketVisible() { 6314 return !0; 6315 } 6316 get isLive() { 6317 return this.legs.some((i) => i.isLive); 6318 } 6319 get prices() { 6320 return [this.price]; 6321 } 6322 get currentPrice() { 6323 return this.hasEmptyPrice ? pc : this.prices[0]; 6324 } 6325 getPriceExcludingSeparatedLegs(i) { 6326 return !i.redundant && !i.uncombinable ? this.currentPrice : this.legs.some((t) => { 6327 let r = t.id.toString(); 6328 return !(i.redundant && this.isLegInRedundantState(r, "RedundantLeg") || i.uncombinable && this.legIsNoncombinable(r)) && this.getOddsStateForLeg(t) !== bt.Open; 6329 }) ? pc : this.prices[0]; 6330 } 6331 get actualGroupPrice() { 6332 return this.prices[0]; 6333 } 6334 get eventName() { 6335 return this.legs[0]?.eventName; 6336 } 6337 get marketName() { 6338 throw new Error("Grouped picks market name getter shouldn't be invoked!"); 6339 } 6340 get optionName() { 6341 throw new Error("Grouped picks option name getter shouldn't be invoked!"); 6342 } 6343 get sportId() { 6344 return this.legs[0]?.sportId; 6345 } 6346 get partitionId() { 6347 throw new Error("Method not implemented."); 6348 } 6349 get isVirtual() { 6350 return this.legs.reduce((i, t) => i && t.isVirtual, !0); 6351 } 6352 get eventDate() { 6353 return this.legs[0]?.eventDate; 6354 } 6355 get regionName() { 6356 return this.legs[0]?.regionName; 6357 } 6358 get competitionName() { 6359 return this.legs[0]?.competitionName; 6360 } 6361 get competitionId() { 6362 return this.legs[0]?.competitionId; 6363 } 6364 get sportName() { 6365 return this.legs[0]?.sportName; 6366 } 6367 get leagueName() { 6368 return this.legs[0]?.leagueName; 6369 } 6370 get leagueId() { 6371 let i = this.legs[0]; 6372 return $s.isPick(i) ? i.leagueId : ns.isPick(i) ? i.league.id : 0; 6373 } 6374 get tryGetEventId() { 6375 let i = this.legs.find((t) => t instanceof ns); 6376 return i ? i.event.id : ""; 6377 } 6378 get tryGetFixtureId() { 6379 let i = this.legs.find((t) => t instanceof $s); 6380 return i ? i.fixture.fixtureId : ""; 6381 } 6382 get eventId() { 6383 return this.tryGetEventId || this.tryGetFixtureId; 6384 } 6385 initPropertiesFromJSON(i) { 6386 super.initPropertiesFromJSON(i), this.price = i.price, this._sgpId = i.SGPId, this._legsState = i.legsState, this.pendingPrice = i.pendingPrice ?? !1; 6387 } 6388 initLegState(i) { 6389 this._legsState = this.legs.reduce((t, r) => { 6390 let s = U1(r), n = i.find((a) => a.clientLegId === s) ?? wR(); 6391 return t[r.id.toString()] = { 6392 clientLegId: s, 6393 isVisible: n.isVisible, 6394 isClosed: n.isClosed, 6395 isNoncombinable: !r.market.isBetBuilderEnabled, 6396 redundantState: n.redundantState 6397 }, t; 6398 }, {}); 6399 } 6400 legExist(i) { 6401 return !!this.legs.find((t) => t.id.toString() === i.toString()); 6402 } 6403 filterLegsByRedundantState(i) { 6404 return this.legs.filter((t) => this.isLegInRedundantState(t.id.toString(), i)); 6405 } 6406 filterNoncombinableLegs() { 6407 return this.legs.filter((i) => this.legIsNoncombinable(i.id)); 6408 } 6409 isLegInRedundantState(i, t) { 6410 return this._legsState[i]?.redundantState === t; 6411 } 6412 setPrice(i) { 6413 this.price = i; 6414 } 6415 isOpen() { 6416 return super.isOpen(); 6417 } 6418 }, Rh = class Mn extends Kt { 6419 constructor(i) { 6420 if (super(), !i.groupInfo?.groupId) throw new Error("Can't init a group with empty group info!"); 6421 this.priceType = xt.Fixed, this.id = new ss(i.groupInfo), this.setGroupInfo(i.groupInfo), this._sgpId = i.sgpId, this.legs = i.picks, i.price && (this.price = i.price), this.acceptedPrice = { 6422 price: i.acceptedPrice ?? i.price, 6423 isManuallyAccepted: !1 6424 }, this.initLegState(i.legsInfo), this.subscriptionContext = i.sgpId ? [i.sgpId] : [], this.isSuspended = i.isSuspended, this.hasEmptyPrice = this.hasNonOpenLegs(), this.priceHistory = i.priceHistory ?? [], this._isRacingGroupPick = sa.isPick(i.picks[0]), this.pendingPrice = i.pendingPrice ?? !1; 6425 } 6426 addPick(i) { 6427 if (i.pick.groupInfo && i.pick.groupInfo.groupId !== this.groupInfo.groupId) throw new Error("Adding pick to a group failed, can't add a pick to a group with different groupId"); 6428 if (this.legExist(i.pick.id)) throw new Error("Leg already exists in the group"); 6429 let t = this.toJSON(), { sgpId: r, price: s, isSuspended: n, legsInfo: a } = i; 6430 return new Mn({ 6431 groupInfo: this._groupInfo, 6432 sgpId: r, 6433 price: s, 6434 isSuspended: n, 6435 legsInfo: a, 6436 picks: [...t.picks.map((o) => no(o)), i.pick], 6437 pendingPrice: this.pendingPrice 6438 }); 6439 } 6440 addPicks(i) { 6441 if (i.picks[0].groupInfo && i.picks[0].groupInfo.groupId !== this.groupInfo.groupId) throw new Error("Adding pick to a group failed, can't add a pick to a group with different group fixture"); 6442 if (i.picks.some((o) => this.legExist(o.id))) throw new Error("Leg already exists in the group"); 6443 let t = this.toJSON(), { sgpId: r, price: s, isSuspended: n, legsInfo: a } = i; 6444 return new Mn({ 6445 groupInfo: this._groupInfo, 6446 picks: [...t.picks.map((o) => no(o)), ...i.picks], 6447 sgpId: r, 6448 price: s, 6449 legsInfo: a, 6450 isSuspended: n, 6451 pendingPrice: this.pendingPrice 6452 }); 6453 } 6454 removePicks(i) { 6455 if (!i.ids.every((o) => this.legs.find((l) => l.id.toString() === o.toString()))) throw new Error("Removing picks failed, at least one pick doesn't belong to the specified group"); 6456 if (!i.persistGroupPick && this.legs.length === i.ids.length + 1) { 6457 let o = this.legs.find((l) => !i.ids.map((c) => c.toString()).includes(l.id.toString())); 6458 if (!o) throw new Error("Removing picks failed, remaining leg was not found"); 6459 return o; 6460 } 6461 let t = this.toJSON(); 6462 t.picks = t.picks.filter((o) => !i.ids.some((l) => o.id.toString() === l.toString())); 6463 let { sgpId: r, price: s, isSuspended: n, legsInfo: a } = i; 6464 return new Mn({ 6465 groupInfo: t.groupInfo, 6466 picks: t.picks.map((o) => no(o)), 6467 sgpId: r, 6468 price: s, 6469 legsInfo: a, 6470 isSuspended: n, 6471 pendingPrice: this.pendingPrice 6472 }); 6473 } 6474 updatePicks(i) { 6475 return new Mn({ 6476 groupInfo: this._groupInfo, 6477 sgpId: this._sgpId, 6478 picks: i, 6479 price: this.price, 6480 legsInfo: Object.values(this._legsState), 6481 isSuspended: this.isSuspended, 6482 acceptedPrice: this.acceptedPrice?.price ?? void 0, 6483 priceHistory: this.priceHistory, 6484 pendingPrice: this.pendingPrice 6485 }); 6486 } 6487 copy() { 6488 let i = this.toJSON(); 6489 return Mn.fromJSON(i); 6490 } 6491 static fromJSON(i) { 6492 if (!i.groupInfo) throw new Error("Failed instantiating group from storage value, missing group info!"); 6493 let t = new Mn({ 6494 groupInfo: i.groupInfo, 6495 sgpId: i.SGPId, 6496 picks: i.picks.map((r) => no(r)), 6497 price: i.price, 6498 legsInfo: Object.values(i.legsState).map((r) => ({ 6499 clientLegId: r.clientLegId, 6500 isVisible: r.isVisible, 6501 isClosed: r.isClosed, 6502 redundantState: r.redundantState 6503 })), 6504 isSuspended: i.isSuspended 6505 }); 6506 return t.initPropertiesFromJSON(i), t;
6507 } 6508 toJSON() { 6509 return J(C({}, super.toJSON()), { 6510 picks: this.legs.map((i) => i.toJSON()), 6511 price: this.price, 6512 SGPId: this._sgpId ?? "", 6513 legsState: this._legsState, 6514 pickSubType: kt.GroupedPicks, 6515 isSuspended: this.isSuspended, 6516 pendingPrice: this.pendingPrice 6517 }); 6518 } 6519 }, W1 = (e, i) => e.length === 1 && (Kt.isPick(e[0]) || i && ar.isPick(e[0])), pn = (function(e) { 6520 return e.Local = "local", e.Remote = "remote", e; 6521 })(pn || {}); 6522 })))(); 6523} 6524function ae(e, i) { 6525 if (mc[e] = (mc[e] || 0) + 1, typeof i == "function") return Lh(e, (...t) => J(C({}, i(...t)), { type: e })); 6526 switch (i ? i._as : "empty") { 6527 case "empty": return Lh(e, () => ({ type: e })); 6528 case "props": return Lh(e, (t) => J(C({}, t), { type: e })); 6529 default: throw new Error("Unexpected config."); 6530 } 6531} 6532function ut() { 6533 return { 6534 _as: "props", 6535 _p: void 0 6536 }; 6537} 6538function Lh(e, i) { 6539 return Object.defineProperty(i, "type", { 6540 value: e, 6541 writable: !1 6542 }); 6543} 6544function BR(e, i) { 6545 if (e == null) throw new Error(`${i} must be defined.`); 6546} 6547function hc(e, i = {}) { 6548 let t = Object.keys(e), r = {}; 6549 for (let n = 0; n < t.length; n++) { 6550 let a = t[n]; 6551 typeof e[a] == "function" && (r[a] = e[a]); 6552 } 6553 let s = Object.keys(r); 6554 return function(n, a) { 6555 n = n === void 0 ? i : n; 6556 let o = !1, l = {}; 6557 for (let c = 0; c < s.length; c++) { 6558 let d = s[c], u = r[d], h = n[d], g = u(h, a); 6559 l[d] = g, o = o || g !== h; 6560 } 6561 return o ? l : n; 6562 }; 6563} 6564function DR(e, i) { 6565 return Object.keys(e).filter((t) => t !== i).reduce((t, r) => Object.assign(t, { [r]: e[r] }), {}); 6566} 6567function j1(...e) { 6568 return function(i) { 6569 if (e.length === 0) return i; 6570 let t = e[e.length - 1]; 6571 return e.slice(0, -1).reduceRight((r, s) => s(r), t(i)); 6572 }; 6573} 6574function Y1(e, i) { 6575 return Array.isArray(i) && i.length > 0 && (e = j1.apply(null, [...i, e])), (t, r) => { 6576 let s = e(t); 6577 return (n, a) => (n = n === void 0 ? r : n, s(n, a)); 6578 }; 6579} 6580function FR(e) { 6581 let i = Array.isArray(e) && e.length > 0 ? j1(...e) : (t) => t; 6582 return (t, r) => (t = i(t), (s, n) => (s = s === void 0 ? r : s, t(s, n))); 6583} 6584function zR(e = { state: void 0 }, [i, t]) { 6585 let { state: r } = e; 6586 return { 6587 state: t(r, i), 6588 action: i 6589 }; 6590} 6591function GR(e, i, ...t) { 6592 return function(r) { 6593 let s; 6594 if (typeof e == "string") { 6595 let n = [i, ...t].filter(Boolean); 6596 s = r.pipe(ZA(e, ...n)); 6597 } else if (typeof e == "function") s = r.pipe(xe((n) => e(n, i))); 6598 else throw new TypeError(`Unexpected type '${typeof e}' in select operator, expected 'string' or 'function'`); 6599 return s.pipe(er()); 6600 }; 6601} 6602function VR() { 6603 try { 6604 return f(ui); 6605 } catch { 6606 return; 6607 } 6608} 6609function K1(e) { 6610 return e === void 0; 6611} 6612function q1(e) { 6613 return e === null; 6614} 6615function X1(e) { 6616 return Array.isArray(e); 6617} 6618function HR(e) { 6619 return typeof e == "string"; 6620} 6621function UR(e) { 6622 return typeof e == "boolean"; 6623} 6624function WR(e) { 6625 return typeof e == "number"; 6626} 6627function J1(e) { 6628 return typeof e == "object" && e !== null; 6629} 6630function jR(e) { 6631 return J1(e) && !X1(e); 6632} 6633function YR(e) { 6634 if (!jR(e)) return !1; 6635 let i = Object.getPrototypeOf(e); 6636 return i === Object.prototype || i === null; 6637} 6638function Bh(e) { 6639 return typeof e == "function"; 6640} 6641function KR(e) { 6642 return Bh(e) && e.hasOwnProperty("ɵcmp"); 6643} 6644function qR(e, i) { 6645 return Object.prototype.hasOwnProperty.call(e, i); 6646} 6647function XR() { 6648 return cE; 6649} 6650function Q1(e, i) { 6651 return e === i; 6652} 6653function JR(e, i, t) { 6654 for (let r = 0; r < e.length; r++) if (!t(e[r], i[r])) return !0; 6655 return !1; 6656} 6657function Z1(e, i = Q1, t = Q1) { 6658 let r = null, s = null, n; 6659 function a() { 6660 r = null, s = null; 6661 } 6662 function o(d = void 0) { 6663 n = { result: d }; 6664 } 6665 function l() { 6666 n = void 0; 6667 } 6668 function c() { 6669 if (n !== void 0) return n.result; 6670 if (!r) return s = e.apply(null, arguments), r = arguments, s; 6671 if (!JR(arguments, r, i)) return s; 6672 let d = e.apply(null, arguments); 6673 return r = arguments, t(s, d) ? s : (s = d, d); 6674 } 6675 return { 6676 memoized: c, 6677 reset: a, 6678 setResult: o, 6679 clearResult: l 6680 }; 6681} 6682function k(...e) { 6683 return ZR(Z1)(...e); 6684} 6685function QR(e, i, t, r) { 6686 if (t === void 0) { 6687 let n = i.map((a) => a(e)); 6688 return r.memoized.apply(null, n); 6689 } 6690 let s = i.map((n) => n(e, t)); 6691 return r.memoized.apply(null, [...s, t]); 6692} 6693function ZR(e, i = { stateFn: QR }) { 6694 return function(...t) { 6695 let r = t; 6696 if (Array.isArray(r[0])) { 6697 let [d, ...u] = r; 6698 r = [...d, ...u]; 6699 } else r.length === 1 && eL(r[0]) && (r = tL(r[0])); 6700 let s = r.slice(0, r.length - 1), n = r[r.length - 1], a = s.filter((d) => d.release && typeof d.release == "function"), o = e(function(...d) { 6701 return n.apply(null, d); 6702 }), l = Z1(function(d, u) { 6703 return i.stateFn.apply(null, [ 6704 d, 6705 s, 6706 u, 6707 o 6708 ]); 6709 }); 6710 function c() { 6711 l.reset(), o.reset(), a.forEach((d) =>
6711 d.release()); 6712 } 6713 return Object.assign(l.memoized, { 6714 release: c, 6715 projector: o.memoized, 6716 setResult: l.setResult, 6717 clearResult: l.clearResult 6718 }); 6719 }; 6720} 6721function _s(e) { 6722 return k((i) => { 6723 let t = i[e]; 6724 return !XR() && Uu() && !(e in i) && console.warn(`@ngrx/store: The feature name "${e}" does not exist in the state, therefore createFeatureSelector cannot access it. Be sure it is imported in a loaded module using StoreModule.forRoot('${e}', ...) or StoreModule.forFeature('${e}', ...). If the default state is intended to be undefined, as is the case with router state, this development-only warning message can be ignored.`), t; 6725 }, (i) => i); 6726} 6727function eL(e) { 6728 return !!e && typeof e == "object" && Object.values(e).every((i) => typeof i == "function"); 6729} 6730function tL(e) { 6731 let i = Object.values(e), t = Object.keys(e), r = (...s) => t.reduce((n, a, o) => J(C({}, n), { [a]: s[o] }), {}); 6732 return [...i, r]; 6733} 6734function iL(e) { 6735 return e instanceof Te ? f(e) : e; 6736} 6737function rL(e, i) { 6738 return i.map((t, r) => { 6739 if (e[r] instanceof Te) { 6740 let s = f(e[r]); 6741 return { 6742 key: t.key, 6743 reducerFactory: s.reducerFactory ? s.reducerFactory : hc, 6744 metaReducers: s.metaReducers ? s.metaReducers : [], 6745 initialState: s.initialState 6746 }; 6747 } 6748 return t; 6749 }); 6750} 6751function sL(e) { 6752 return e.map((i) => i instanceof Te ? f(i) : i); 6753} 6754function Dh(e) { 6755 return typeof e == "function" ? e() : e; 6756} 6757function nL(e, i) { 6758 return e.concat(i); 6759} 6760function aL() { 6761 if (f(da, { 6762 optional: !0, 6763 skipSelf: !0 6764 })) throw new TypeError("The root Store has been provided more than once. Feature modules should provide feature states instead."); 6765 return "guarded"; 6766} 6767function oL(e, i) { 6768 return function(t, r) { 6769 let s = e(t, i.action(r) ? Fh(r) : r); 6770 return i.state() ? Fh(s) : s; 6771 }; 6772} 6773function Fh(e) { 6774 Object.freeze(e); 6775 let i = Bh(e); 6776 return Object.getOwnPropertyNames(e).forEach((t) => { 6777 if (!t.startsWith("ɵ") && qR(e, t) && (!i || t !== "caller" && t !== "callee" && t !== "arguments")) { 6778 let r = e[t]; 6779 (J1(r) || Bh(r)) && !Object.isFrozen(r) && Fh(r); 6780 } 6781 }), e; 6782} 6783function lL(e, i) { 6784 return function(t, r) { 6785 i.action(r) && eE(zh(r), "action"); 6786 let s = e(t, r); 6787 return i.state() && eE(zh(s), "state"), s; 6788 }; 6789} 6790function zh(e, i = []) { 6791 return (K1(e) || q1(e)) && i.length === 0 ? { 6792 path: ["root"], 6793 value: e 6794 } : Object.keys(e).reduce((t, r) => { 6795 if (t) return t; 6796 let s = e[r]; 6797 return KR(s) ? t : K1(s) || q1(s) || WR(s) || UR(s) || HR(s) || X1(s) ? !1 : YR(s) ? zh(s, [...i, r]) : { 6798 path: [...i, r], 6799 value: s 6800 }; 6801 }, !1); 6802} 6803function eE(e, i) { 6804 if (e === !1) return; 6805 let t = e.path.join("."), r = /* @__PURE__ */ new Error(`Detected unserializable ${i} at "${t}". ${Nc}#strict${i}serializability`); 6806 throw r.value = e.value, r.unserializablePath = t, r; 6807} 6808function cL(e, i) { 6809 return function(t, r) { 6810 if (i.action(r) && !Ys.isInAngularZone()) throw new Error(`Action '${r.type}' running outside NgZone. ${Nc}#strictactionwithinngzone`); 6811 return e(t, r); 6812 }; 6813} 6814function dL(e) { 6815 return Uu() ? C({ 6816 strictStateSerializability: !1, 6817 strictActionSerializability: !1, 6818 strictStateImmutability: !0, 6819 strictActionImmutability: !0, 6820 strictActionWithinNgZone: !1, 6821 strictActionTypeUniqueness: !1 6822 }, e) : { 6823 strictStateSerializability: !1, 6824 strictActionSerializability: !1, 6825 strictStateImmutability: !1, 6826 strictActionImmutability: !1, 6827 strictActionWithinNgZone: !1, 6828 strictActionTypeUniqueness: !1 6829 }; 6830} 6831function uL({ strictActionSerializability: e, strictStateSerializability: i }) { 6832 return (t) => e || i ? lL(t, { 6833 action: (r) => e && !Gh(r), 6834 state: () => i 6835 }) : t; 6836} 6837function pL({ strictActionImmutability: e, strictStateImmutability: i }) { 6838 return (t) => e || i ? oL(t, { 6839 action: (r) => e && !Gh(r), 6840 state: () => i 6841 }) : t; 6842} 6843function Gh(e) { 6844 return e.type.startsWith("@ngrx"); 6845} 6846function hL({ strictActionWithinNgZone: e }) { 6847 return (i) => e ? cL(i, { action: (t) => e && !Gh(t) }) : i; 6848} 6849function mL(e) { 6850 return [ 6851 { 6852 provide: Zh, 6853 useValue: e 6854 }, 6855 { 6856 provide: Qh, 6857 useFactory: fL, 6858 deps: [Zh] 6859 }, 6860 { 6861 provide: na, 6862 deps: [Qh], 6863 useFactory: dL 6864 }, 6865 { 6866 provide: go, 6867 multi: !0, 6868 deps: [na], 6869 useFactory: pL 6870 }, 6871 { 6872 provide: go, 6873 multi: !0, 6874 deps: [na], 6875 useFactory: uL 6876 }, 6877 { 6878 provide: go, 6879 multi: !0, 6880 deps: [na], 6881 useFactory: hL 6882 } 6883 ]; 6884} 6885function tE() { 6886 return [{ 6887 provide: aa, 6888 multi: !0, 6889 deps: [na], 6890 useFactory: gL 6891 }]; 6892} 6893function fL(e) { 6894 return e; 6895} 6896function gL(e) { 6897 if (!e.strictActionTypeUniqueness) return; 6898 let i = Object.entries(mc).filter(([, t]) => t > 1).map(([t]) => t); 6899 if (i.length) throw new Error(`Action types are registered more than once, ${i.map((t) => `"${t}"`).join(", ")}. ${Nc}#strictactiontypeuniqueness`); 6900} 6901function vL(e, i, t = {}) { 6902 return Bb([...rE(e, i, t), uE]); 6903} 6904function iE(e = {}, i = {}) { 6905 return [ 6906 { 6907 provide: gc, 6908 useFactory: aL 6909 }, 6910 { 6911 provide: Vh, 6912 useValue: i.initialState 6913 }, 6914 { 6915 provide: fo, 6916 useFactory: Dh, 6917 deps: [Vh] 6918 }, 6919 { 6920 provide: vc, 6921 useValue: e 6922 }, 6923 { 6924 provide: Yh, 6925 useExisting: e instanceof Te ? e : vc 6926 }, 6927 { 6928 provide: Wh, 6929 deps: [vc, [new zb(Yh)]], 6930 useFactory: iL 6931 }, 6932 { 6933 provide: Xh, 6934 useValue: i.metaReducers ? i.metaReducers : [] 6935 }, 6936 { 6937 provide: Jh, 6938 deps: [go, Xh], 6939 useFactory: nL 6940 }, 6941 { 6942 provide: Uh, 6943 useValue: i.reducerFactory ? i.reducerFactory : hc 6944 }, 6945 { 6946 provide: Hh, 6947 deps: [Uh, Jh], 6948 useFactory: Y1 6949 }, 6950 sE,
6951 nE, 6952 aE, 6953 oE, 6954 lE, 6955 mL(i.runtimeChecks), 6956 tE() 6957 ]; 6958} 6959function SL() { 6960 f(as), f(oa), f(ca), f(da), f(gc, { optional: !0 }), f(aa, { optional: !0 }); 6961} 6962function bL(e, i) { 6963 return Bb([...iE(e, i), dE]); 6964} 6965function yL() { 6966 f(vo); 6967 let e = f(bc), i = f(yc), t = f(la); 6968 f(aa, { optional: !0 }); 6969 let r = e.map((s, n) => { 6970 let a = i.shift()[n]; 6971 return J(C({}, s), { 6972 reducers: a, 6973 initialState: Dh(s.initialState) 6974 }); 6975 }); 6976 t.addFeatures(r); 6977} 6978function rE(e, i, t = {}) { 6979 return [ 6980 { 6981 provide: Kh, 6982 multi: !0, 6983 useValue: e instanceof Object ? {} : t 6984 }, 6985 { 6986 provide: jh, 6987 multi: !0, 6988 useValue: { 6989 key: e instanceof Object ? e.name : e, 6990 reducerFactory: !(t instanceof Te) && t.reducerFactory ? t.reducerFactory : hc, 6991 metaReducers: !(t instanceof Te) && t.metaReducers ? t.metaReducers : [], 6992 initialState: !(t instanceof Te) && t.initialState ? t.initialState : void 0 6993 } 6994 }, 6995 { 6996 provide: bc, 6997 deps: [Kh, jh], 6998 useFactory: rL 6999 }, 7000 { 7001 provide: Sc, 7002 multi: !0, 7003 useValue: e instanceof Object ? e.reducer : i 7004 }, 7005 { 7006 provide: qh, 7007 multi: !0, 7008 useExisting: i instanceof Te ? i : Sc 7009 }, 7010 { 7011 provide: yc, 7012 multi: !0, 7013 deps: [Sc, [new zb(qh)]], 7014 useFactory: sL 7015 }, 7016 tE() 7017 ]; 7018} 7019function wL(...e) { 7020 return { 7021 reducer: e.pop(), 7022 types: e.map((i) => i.type) 7023 }; 7024} 7025function EL(e, ...i) { 7026 let t = /* @__PURE__ */ new Map(); 7027 for (let r of i) for (let s of r.types) { 7028 let n = t.get(s); 7029 if (n) { 7030 let a = (o, l) => r.reducer(n(o, l), l); 7031 t.set(s, a); 7032 } else t.set(s, r.reducer); 7033 } 7034 return function(r = e, s) { 7035 let n = t.get(s.type); 7036 return n ? n(r, s) : r; 7037 }; 7038} 7039var mc, fc, as, sE, gc, Vh, fo, Hh, Uh, Wh, vc, jh, Yh, Sc, Kh, bc, qh, yc, Xh, go, Jh, Qh, Zh, na, aa, vo, wc, oa, Ec, em, la, nE, ca, aE, Cc, tm, oE, da, lE, Nc, cE, dE, uE, Tc, im, pE; 7040function os() { 7041 return (os = Z((() => { 7042 Re(), de(), Et(), mc = {}, fc = "@ngrx/store/init", as = (() => { 7043 let e = class extends Gt { 7044 constructor() { 7045 super({ type: fc }); 7046 } 7047 next(t) { 7048 if (typeof t == "function") throw new TypeError(` 7049 Dispatch expected an object, instead it received a function. 7050 If you're using the createAction function, make sure to invoke the function 7051 before dispatching the action. For example, someAction should be someAction().`); 7052 if (typeof t > "u") throw new TypeError("Actions must be objects"); 7053 if (typeof t.type > "u") throw new TypeError("Actions must have a type property"); 7054 super.next(t); 7055 } 7056 complete() {} 7057 ngOnDestroy() { 7058 super.complete(); 7059 } 7060 }; 7061 return e.ɵfac = function(i) { 7062 return new (i || e)(); 7063 }, e.ɵprov = R({ 7064 token: e, 7065 factory: e.ɵfac 7066 }), e; 7067 })(), sE = [as], gc = new Te("@ngrx/store Internal Root Guard"), Vh = new Te("@ngrx/store Internal Initial State"), fo = new Te("@ngrx/store Initial State"), Hh = new Te("@ngrx/store Reducer Factory"), Uh = new Te("@ngrx/store Internal Reducer Factory Provider"), Wh = new Te("@ngrx/store Initial Reducers"), vc = new Te("@ngrx/store Internal Initial Reducers"), jh = new Te("@ngrx/store Store Features"), Yh = new Te("@ngrx/store Internal Store Reducers"), Sc = new Te("@ngrx/store Internal Feature Reducers"), Kh = new Te("@ngrx/store Internal Feature Configs"), bc = new Te("@ngrx/store Internal Store Features"), qh = new Te("@ngrx/store Internal Feature Reducers Token"), yc = new Te("@ngrx/store Feature Reducers"), Xh = new Te("@ngrx/store User Provided Meta Reducers"), go = new Te("@ngrx/store Meta Reducers"), Jh = new Te("@ngrx/store Internal Resolved Meta Reducers"), Qh = new Te("@ngrx/store User Runtime Checks Config"), Zh = new Te("@ngrx/store Internal User Runtime Checks Config"), na = new Te("@ngrx/store Internal Runtime Checks"), aa = new Te("@ngrx/store Check if Action types are unique"), vo = new Te("@ngrx/store Root Store Provider"), wc = new Te("@ngrx/store Feature State Provider"), oa = class extends Rn {}, Ec = class extends as {}, em = "@ngrx/store/update-reducers", la = (() => { 7068 let e = class extends Gt { 7069 get currentReducers() { 7070 return this.reducers; 7071 } 7072 constructor(t, r, s, n) { 7073 super(n(s, r)), this.dispatcher = t, this.initialState = r, this.reducers = s, this.reducerFactory = n; 7074 } 7075 addFeature(t) { 7076 this.addFeatures([t]); 7077 } 7078 addFeatures(t) { 7079 let r = t.reduce((s, { reducers: n, reducerFactory: a, metaReducers: o, initialState: l, key: c }) => (s[c] = typeof n == "function" ? FR(o)(n, l) : Y1(a, o)(n, l), s), {}); 7080 this.addReducers(r); 7081 }
7082 removeFeature(t) { 7083 this.removeFeatures([t]); 7084 } 7085 removeFeatures(t) { 7086 this.removeReducers(t.map((r) => r.key)); 7087 } 7088 addReducer(t, r) { 7089 this.addReducers({ [t]: r }); 7090 } 7091 addReducers(t) { 7092 this.reducers = C(C({}, this.reducers), t), this.updateReducers(Object.keys(t)); 7093 } 7094 removeReducer(t) { 7095 this.removeReducers([t]); 7096 } 7097 removeReducers(t) { 7098 t.forEach((r) => { 7099 this.reducers = DR(this.reducers, r); 7100 }), this.updateReducers(t); 7101 } 7102 updateReducers(t) { 7103 this.next(this.reducerFactory(this.reducers, this.initialState)), this.dispatcher.next({ 7104 type: em, 7105 features: t 7106 }); 7107 } 7108 ngOnDestroy() { 7109 this.complete(); 7110 } 7111 }; 7112 return e.ɵfac = function(i) { 7113 return new (i || e)(ve(Ec), ve(fo), ve(Wh), ve(Hh)); 7114 }, e.ɵprov = R({ 7115 token: e, 7116 factory: e.ɵfac 7117 }), e; 7118 })(), nE = [ 7119 la, 7120 { 7121 provide: oa, 7122 useExisting: la 7123 }, 7124 { 7125 provide: Ec, 7126 useExisting: as 7127 } 7128 ], ca = (() => { 7129 let e = class extends Xe { 7130 ngOnDestroy() { 7131 this.complete(); 7132 } 7133 }; 7134 return e.ɵfac = (() => { 7135 let i; 7136 return function(t) { 7137 return (i || (i = Fe(e)))(t || e); 7138 }; 7139 })(), e.ɵprov = R({ 7140 token: e, 7141 factory: e.ɵfac 7142 }), e; 7143 })(), aE = [ca], Cc = class extends Rn {}, tm = (() => { 7144 let e = class extends Gt { 7145 constructor(t, r, s, n) { 7146 super(n); 7147 let a = t.pipe(UA(WA)).pipe(Du(r)), o = { state: n }, l = a.pipe(Db(zR, o)); 7148 this.stateSubscription = l.subscribe(({ state: c, action: d }) => { 7149 this.next(c), s.next(d); 7150 }), this.state = wr(this, { 7151 manualCleanup: !0, 7152 requireSync: !0 7153 }); 7154 } 7155 ngOnDestroy() { 7156 this.stateSubscription.unsubscribe(), this.complete(); 7157 } 7158 }; 7159 return e.INIT = fc, e.ɵfac = function(i) { 7160 return new (i || e)(ve(as), ve(oa), ve(ca), ve(fo)); 7161 }, e.ɵprov = R({ 7162 token: e, 7163 factory: e.ɵfac 7164 }), e; 7165 })(), oE = [tm, { 7166 provide: Cc, 7167 useExisting: tm 7168 }], da = (() => { 7169 let e = class PA extends Rn { 7170 constructor(t, r, s, n) { 7171 super(), this.actionsObserver = r, this.reducerManager = s, this.injector = n, this.source = t, this.state = t.state; 7172 } 7173 select(t, ...r) { 7174 return GR.call(null, t, ...r)(this); 7175 } 7176 selectSignal(t, r) { 7177 return ne(() => t(this.state()), r); 7178 } 7179 lift(t) { 7180 let r = new PA(this, this.actionsObserver, this.reducerManager); 7181 return r.operator = t, r; 7182 } 7183 dispatch(t, r) { 7184 if (typeof t == "function") return this.processDispatchFn(t, r); 7185 this.actionsObserver.next(t); 7186 } 7187 next(t) { 7188 this.actionsObserver.next(t); 7189 } 7190 error(t) { 7191 this.actionsObserver.error(t); 7192 } 7193 complete() { 7194 this.actionsObserver.complete(); 7195 } 7196 addReducer(t, r) { 7197 this.reducerManager.addReducer(t, r); 7198 } 7199 removeReducer(t) { 7200 this.reducerManager.removeReducer(t); 7201 } 7202 processDispatchFn(t, r) { 7203 return BR(this.injector, "Store Injector"), zi(() => { 7204 let s = t(); 7205 Hu(() => this.dispatch(s)); 7206 }, { injector: r?.injector ?? VR() ?? this.injector }); 7207 } 7208 }; 7209 return e.ɵfac = function(i) { 7210 return new (i || e)(ve(Cc), ve(as), ve(la), ve(ui)); 7211 }, e.ɵprov = R({ 7212 token: e, 7213 factory: e.ɵfac 7214 }), e; 7215 })(), lE = [da], Nc = "https://ngrx.io/guide/store/configuration/runtime-checks", cE = !1, dE = [{ 7216 provide: vo, 7217 useFactory: SL 7218 }, Hb(() => f(vo))], uE = [{ 7219 provide: wc, 7220 useFactory: yL 7221 }, Hb(() => f(wc))], Tc = (() => { 7222 let e = class { 7223 constructor(t, r, s, n, a, o) {} 7224 }; 7225 return e.ɵfac = function(i) { 7226 return new (i || e)(ve(as), ve(oa), ve(ca), ve(da), ve(gc, 8), ve(aa, 8)); 7227 }, e.ɵmod = zn({ type: e }), e.ɵinj = Ln({}), e; 7228 })(), im = (() => { 7229 let e = class { 7230 constructor(t, r, s, n, a) { 7231 this.features = t, this.featureReducers = r, this.reducerManager = s; 7232 let o = t.map((l, c) => { 7233 let d = r.shift()[c]; 7234 return J(C({}, l), { 7235 reducers: d, 7236 initialState: Dh(l.initialState) 7237 }); 7238 }); 7239 s.addFeatures(o); 7240 } 7241 ngOnDestroy() { 7242 this.reducerManager.removeFeatures(this.features); 7243 } 7244 }; 7245 return e.ɵfac = function(i) { 7246 return new (i || e)(ve(bc), ve(yc), ve(la), ve(Tc), ve(aa, 8)); 7247 }, e.ɵmod = zn({ type: e }), e.ɵinj = Ln({}), e; 7248 })(), pE = (() => { 7249 let e = class { 7250 static forRoot(t, r) { 7251 return { 7252 ngModule: Tc, 7253 providers: [...iE(t, r)] 7254 }; 7255 }
7256 static forFeature(t, r, s = {}) { 7257 return { 7258 ngModule: im, 7259 providers: [...rE(t, r, s)] 7260 }; 7261 } 7262 }; 7263 return e.ɵfac = function(i) { 7264 return new (i || e)(); 7265 }, e.ɵmod = zn({ type: e }), e.ɵinj = Ln({}), e; 7266 })(); 7267 })))(); 7268} 7269function hE(e) { 7270 return e ? St.create({ 7271 odds: e.european, 7272 numerator: e.britishNumerator, 7273 denominator: e.britishDenominator, 7274 americanOdds: e.american 7275 }) : _i; 7276} 7277function CL(e, i) { 7278 if (e.type === xt.Fixed && St.isValid(e.nativeOdds)) { 7279 let t = new At(i.numerator, i.denominator); 7280 return { 7281 decimals: Ci.decimalToEachWay(new _e(e.nativeOdds.decimals), t), 7282 fractional: Ci.fractionToEachWay(At.fromJSON(e.nativeOdds.fractional), t), 7283 moneyline: Ci.usToEachWay(new _e(e.nativeOdds.moneyline), t) 7284 }; 7285 } 7286 return Ei; 7287} 7288function NL(e) { 7289 let i = r0(e); 7290 return i ? { placeTerms: i } : null; 7291} 7292function TL(e) { 7293 if (e.oddsState !== bt.Open) return null; 7294 let i = e.currentPrice; 7295 if (i) { 7296 let { type: t, nativeOdds: r } = i; 7297 return { 7298 type: t, 7299 nativeOdds: C({}, r) 7300 }; 7301 } 7302 return null; 7303} 7304function kL(e, i) { 7305 if (e.oddsState !== bt.Open) return null; 7306 let t = Kt.isPick(e) ? e.getPriceExcludingSeparatedLegs(i) : e.currentPrice; 7307 if (t) { 7308 let { type: r, nativeOdds: s } = t; 7309 return { 7310 type: r, 7311 nativeOdds: C({}, s) 7312 }; 7313 } 7314 return null; 7315} 7316function xL(e) { 7317 if (dn.isPick(e) && e.participants.length > 1) return e.prices.map((t) => t.id); 7318 let i = e.currentPrice; 7319 return i ? [i.id] : []; 7320} 7321function IL(e) { 7322 if (e instanceof cc) { 7323 let i = e; 7324 return [ 7325 i.sportId, 7326 i.leagueId, 7327 i.fixture.fixtureId, 7328 i.option.id 7329 ].join("-"); 7330 } 7331 if (e instanceof ns) { 7332 let i = e; 7333 return [ 7334 i.sportId, 7335 i.league.id, 7336 i.event.id, 7337 i.option.id 7338 ].join("-"); 7339 } 7340 if (e instanceof ar) { 7341 let i = e; 7342 return [ 7343 i.sportId, 7344 i.leagueId, 7345 i.eventId, 7346 i.option.id 7347 ].join("-"); 7348 } 7349 if (e instanceof dn) { 7350 let i = e; 7351 return [ 7352 i.sportId, 7353 i.fixture.league ? i.leagueId : 0, 7354 i.fixture.fixtureId, 7355 i.participants && i.participants.map((t) => t.fixtureParticipantId).join("_") || i.id 7356 ].join("-"); 7357 } 7358 return "-"; 7359} 7360function OL(e) { 7361 return ar.isPick(e) ? !1 : $s.isPick(e) ? !mE(e) : !0; 7362} 7363function mE(e) { 7364 return e.fixture.sportId === ee.Horses || e.fixture.sportId === ee.Greyhounds; 7365} 7366function PL(e) { 7367 return e.fixture.sportId === ee.Horses && e instanceof dn || e instanceof sa && e.pickType === Ue.Win && (e.isStartingPriceAvailable() || e.isFixedPriceAvailable()) || e.fixture.sportId === ee.Greyhounds; 7368} 7369function AL(e) { 7370 return ra.isPick(e) || oc.isPick(e); 7371} 7372function $L(e) { 7373 return (e instanceof ho || e instanceof Ni) && e.currentPrice?.type === xt.StartingPrice; 7374} 7375function fE(e, i) { 7376 return ns.isPick(e) ? i.marketTemplateIds.some((t) => t === e.market?.templateId) : i.marketTypes.some((t) => t === e.market?.marketType); 7377} 7378function gE(e, i) { 7379 return i ? e.replace(`(${i})`, "").replace(i, "").trim() : e; 7380} 7381function _L(e, i, t) { 7382 return fE(e, t) && e.optionShortName?.name || i; 7383} 7384function ML(e, i, t) { 7385 let r = t ?? e.optionName.name; 7386 if (!(ns.isPick(e) || Ni.isPick(e)) || !fE(e, i)) return r; 7387 let s = e.option.attr ?? "", n = e.optionShortName?.name; 7388 if (n && s) { 7389 let a = gE(e.optionName.name, s); 7390 return r.replace(a, n); 7391 } 7392 return r; 7393} 7394function rm(e) { 7395 let i = e.match(/[-+]?\d+(?:[.,]\d+)?/g); 7396 return i?.[i.length - 1] ?? ""; 7397} 7398function RL(e, i, t) { 7399 return e && rm(t) || i; 7400} 7401function LL(e) { 7402 let i = rm(e); 7403 return i ? e.replace(i, "").trim() : e; 7404} 7405function vE(e, i, t) { 7406 return i.filter((r) => { 7407 let s = e[r.id.toString()]; 7408 if (!s) return !1; 7409 let n = t.isLocked == null ? !0 : s.isLocked === t.isLocked, a = t.isSelected == null ? !0 : s.isSelected === t.isSelected; 7410 return n && a; 7411 }); 7412} 7413function BL(e) { 7414 let i = Object.values(e).filter((t) => t.isSelected).map((t) => t.stake); 7415 return new Set(i).size === 1; 7416} 7417function Ir(e) { 7418 return !!e && e.rewardTokenType === $i.AccaInsurance; 7419} 7420function DL(e, i) { 7421 return !e.isEnabled || !i.isVisible ? void 0 : { 7422 title: i.isUnderMinLegs ? `${i.currentSelectedLegs}/${i.minimumLegs}` : `${i.minimumLegs}+`, 7423 showInactiveStyle: !i.isEligible 7424 }; 7425} 7426function Or(e) { 7427 return class extends e { 7428 constructor(...i) { 7429 super(...i), this.origin = Rs.BetSlip, this.cleanStrategy = ma.Always, this.hasClientValidation = !0; 7430 } 7431 }; 7432} 7433function FL(e) { 7434 let i = e.type; 7435 if (i instanceof $m) return G.Single; 7436 if (i instanceof _m) return G.Combo; 7437 if (i instanceof Lc) return G.System; 7438} 7439function SE() { 7440 return "editbet"; 7441} 7442function sm() { 7443 return Ms.Combo; 7444} 7445function nm(e) { 7446 return am(e.key); 7447} 7448function am(e) { 7449 return `${Zc}${e}`; 7450} 7451function om(e) { 7452 return e.startsWith(Zc); 7453} 7454function zL(e) { 7455 if (om(e)) return e.substring(Zc.length); 7456} 7457function bE(e) { 7458 return e === sm(); 7459} 7460function yE(e) { 7461 return e ? lm(e.toString()) : ""; 7462} 7463function lm(e) { 7464 return `${Ef}${e}`; 7465} 7466function wE(e) { 7467 return cm(e.toString()); 7468} 7469function cm(e) { 7470 return `${ed}${e}`; 7471} 7472function EE(e) { 7473 return e.startsWith(Ef); 7474} 7475function dm() { 7476 return "teaser"; 7477} 7478function CE(e) { 7479 return e === dm(); 7480} 7481function NE(e) { 7482 return e.startsWith(ed); 7483} 7484function GL(e) { 7485 return e.slice(ed.length); 7486} 7487function VL(e) { 7488 return EE(e) ? G.Single : bE(e) ? G.Combo : CE(e) ? G.Teaser : NE(e) ? G.BetBuilder : om(e) ? G.System : null; 7489} 7490function HL(e, i, t, r, s) { 7491 let n = !1, a = C({}, t), o = C({}, t); 7492 for (let l of r) { 7493 let c = e[l], d = [], u = []; 7494 for (let h of c) { 7495 if (h.hasClientValidation) { 7496 d.push(h), n = n || !s.includes(l); 7497 continue; 7498 } 7499 u.push(h); 7500 } 7501 d.length && (o[l] = d), u.length && (a[l] = u); 7502 } 7503 for (let l of s) { 7504 let c = o[l], d = i[l], u = a[l]; 7505 if (!d.length) { 7506 a[l] = u || [], n = n || !r.includes(l) || !!c?.length; 7507 continue; 7508 } 7509 if (!c || !c.length) { 7510 a[l] = u ? [...u, ...d] : d, n = !0; 7511 continue; 7512 } 7513 let h = Cf(c, d); 7514 a[l] = u ? [...u, ...h] : h, n = n || h !== c; 7515 } 7516 return { 7517 errors: a, 7518 hasChanged: n 7519 }; 7520} 7521function UL(e, i) { 7522 let t = { 7523 SINGLE: C({}, e[G.Single]), 7524 COMBO: C({}, e[G.Combo]), 7525 SYSTEM: C({}, e[G.System]), 7526 TEASER: C({}, e[G.Teaser]), 7527 EDIT_MY_BET: C({}, e[G.EditBet]), 7528 BET_BUILDER: C({}, e[G.BetBuilder]) 7529 }, r = Uc(); 7530 for (let s of [ 7531 G.Single, 7532 G.Combo, 7533 G.System, 7534 G.Teaser, 7535 G.EditBet, 7536 G.BetBuilder 7537 ]) { 7538 let n = i[s], a = t[s]; 7539 for (let o of n) { 7540 if (o instanceof Ls && o.pickId) { 7541 a[o.pickId] = a[o.pickId] || [], a[o.pickId].push(o); 7542 continue; 7543 } 7544 r[s].push(o); 7545 } 7546 } 7547 return [t, r]; 7548} 7549function So(e, i, t, r = !1) { 7550 switch (e) { 7551 case G.Combo: return i[sm()] ?? []; 7552 case G.Teaser: return i[dm()] ?? []; 7553 case G.System: return r ? t.systemBet.systemInfo ? i[nm(t.systemBet.systemInfo)] ?? [] : [] : Object.values(t.systemBet.linearTypeStakes).flatMap((s) => i[nm(s.slipType)] ?? []); 7554 case G.Single: return Object.keys(t.singleBet.picks).flatMap((s) => i[lm(s)] ?? []); 7555 case G.EditBet: return i[SE()] ?? []; 7556 case G.BetBuilder: return Object.keys(t.betBuilder.picks).flatMap((s) => i[cm(s)] ?? []); 7557 } 7558} 7559function WL(e, i) { 7560 return i.some((t) => { 7561 if (lc.isPick(t)) return !1; 7562 let r = e.singleBet.picks[t.id.toString()], s = e.comboBet.picks[t.id.toString()], n = e.systemBet.picks[t.id.toString()]; 7563 if (!r || !s || !n) return !1; 7564 switch (t.oddsState) { 7565 case bt.Closed: return !0; 7566 case bt.Open: return r.isLocked || s.isLocked || n.isLocked; 7567 case bt.Locked: return !r.isLocked || !s.isLocked || !n.isLocked; 7568 } 7569 }); 7570} 7571function jL(e) { 7572 let i = Object.values(e.slipErrors).flatMap((r) => r).find((r) => kc(r)), t = Object.values(e.pickErrors).flatMap((r) => Object.values(r)).flatMap((r) => r).filter((r) => kc(r)); 7573 return !i && t.length === 0 ? { 7574 betslipStakeHintInfo: null, 7575 pickStakeHintInfos: [] 7576 } : i ? { 7577 betslipStakeHintInfo: { 7578 newStakeHint: i.newStakeHint, 7579 type: i.type 7580 }, 7581 pickStakeHintInfos: [] 7582 } : { 7583 betslipStakeHintInfo: null, 7584 pickStakeHintInfos: t.map((r) => ({ 7585 type: r.type, 7586 pickId: r.pickId, 7587 newStakeHint: r.newStakeHint 7588 })) 7589 }; 7590} 7591function YL(e) { 7592 return { 7593 slipStakeHintInfos: Object.entries(e.slipErrors).flatMap(([i, t]) => t.filter(kc).map((r) => ({ 7594 newStakeHint: r.newStakeHint, 7595 slipId: i, 7596 type: r.type 7597 }))), 7598 pickStakeHintInfos: Object.entries(e.pickErrors[G.Single]).flatMap(([i, t]) => t.filter((r) => kc(r)).map((r) => ({ 7599 pickId: i, 7600 error: r 7601 }))).map(({ pickId: i, error: t }) => ({ 7602 type: t.type, 7603 pickId: i, 7604 newStakeHint: t.newStakeHint 7605 })) 7606 }; 7607} 7608function kc(e) { 7609 return xc(e) && !iC.includes(e.type); 7610} 7611function xc(e) { 7612 return typeof e.newStakeHint == "number" && e.newStakeHint > 0; 7613} 7614function KL(e) { 7615 return typeof e.newStakeHint == "number" && e.newStakeHint === 0; 7616} 7617function qL(e) { 7618 return JL(e)[0] || null; 7619} 7620function XL(e, i, t) { 7621 let r = Object.values(i).flatMap((n) => Object.values(n).flatMap((a) => a)), s = Object.values(t).flatMap((n) => n); 7622 return qL([ 7623 ...e, 7624 ...r, 7625 ...s 7626 ]); 7627} 7628function JL(e) { 7629 return Xu(e.filter((i) => !i.isHidden && i.origin === Rs.BetPlacement), (i) => i.priority); 7630} 7631function QL(e) { 7632 return !!e && NC.includes(e.type); 7633} 7634function ZL(e) { 7635 return e.code === "COS" || e.code === "CODR"; 7636} 7637function eB(e, i) { 7638 return i !== G.Single && e.every((t) => ld(t)); 7639} 7640function tB(e, i, t) { 7641 return t.some((r) => sd(r) || ad(r)) || WL(i, e); 7642} 7643function TE(e) { 7644 return e instanceof To; 7645} 7646function iB(e) { 7647 return e instanceof af; 7648} 7649function rB(e) { 7650 return e instanceof Ls && TE(e); 7651} 7652function sB(e) { 7653 return e.type !== "TechnicalError" && e.type !== "OverAskOfferError" && e.type !== "InsufficientMoney" && e.type !== "DoubleBetPrevention" && !xc(e) && !xf(e) && !If(e); 7654} 7655function nB(e, i) { 7656 return e.filter(Kt.isPick).filter((t) => t.oddsState === bt.Open).map((t) => i[t.id.toString()]?.find((r) => r instanceof Yc)).filter(Is).flatMap((t) => t.legIds); 7657} 7658function aB(e, i) { 7659 return e.filter(Kt.isPick).filter((t) => t.oddsState === bt.Open).map((t) => i[t.id.toString()]?.find((r) => r instanceof To)).filter(Is).flatMap((t) => t.legIds); 7660} 7661function um(e) { 7662 return e instanceof To || e instanceof Yc; 7663} 7664function kE(e) { 7665 return !e.isHidden && !(e.type === "ComboPrevention" || e.type === "CutOffDateReached" || e.type === "OptionInvisible" || e.type === "OddsChanged" || e instanceof Qc); 7666} 7667function oB(e) { 7668 return e instanceof ls || e instanceof cs; 7669} 7670function xE(e) { 7671 return e instanceof cf || e instanceof nf; 7672} 7673function Ic(e) { 7674 return e instanceof of; 7675} 7676function lB(e) { 7677 return Ic(e) || xE(e) || IE(e); 7678} 7679function IE(e) { 7680 return e instanceof df; 7681} 7682function cB(e) { 7683 return xE(e) || IE(e); 7684} 7685function pm(e) { 7686 return e instanceof lf; 7687} 7688function hm(e, i) {
7689 return e.stake !== null || OE(e.rewardTokenId, i); 7690} 7691function mm(e, i) { 7692 return e.stake !== null || OE(e.rewardTokenId, i); 7693} 7694function OE(e, i) { 7695 return !!e && ua(i[e]); 7696} 7697function fm({ isEachWay: e, stake: i }) { 7698 return i ? e ? i * 2 : i : null; 7699} 7700function dB(e) { 7701 let i = e.filter((t) => !!t.stake || !!t.freeBetAmount); 7702 return i.length === 1 && !!i[0]?.freeBetAmount; 7703} 7704function uB(e, i, t) { 7705 let { currentSelectedType: r } = e.base; 7706 switch (r) { 7707 case G.Single: return PE(e.singleBet, i, !1, t); 7708 case G.Combo: return AE(e.comboBet, i); 7709 case G.System: return fB(e.systemBet); 7710 default: return []; 7711 } 7712} 7713function PE(e, i, t = !1, r) { 7714 return Object.entries(e.picks).filter(([s, n]) => n.isSelected && (!n.isLocked || !t) && (!r || r.has(s))).map(([s, n]) => ({ 7715 stake: fm(n), 7716 freeBetAmount: Oc(n.rewardTokenId, i) 7717 })); 7718} 7719function AE(e, i) { 7720 return [{ 7721 stake: fm(e), 7722 freeBetAmount: Oc(e.rewardTokenId, i) 7723 }]; 7724} 7725function pB(e, i) { 7726 return [{ 7727 stake: e.stake, 7728 freeBetAmount: Oc(e.rewardTokenId, i) 7729 }]; 7730} 7731function hB(e, i) { 7732 return Object.values(e.picks).filter((t) => t.isSelected).map((t) => ({ 7733 stake: t.stake, 7734 freeBetAmount: Oc(t.rewardTokenId, i) 7735 })); 7736} 7737function Oc(e, i) { 7738 let t = e ? i.tokens[e] : null; 7739 return ua(t) ? t.amount : null; 7740} 7741function mB(e) { 7742 return e.reduce((i, t) => ({ 7743 freeBetAmount: t.freeBetAmount === null ? i.freeBetAmount : (i.freeBetAmount ?? 0) + t.freeBetAmount, 7744 stake: t.stake === null || t.freeBetAmount ? i.stake : (i.stake ?? 0) + t.stake 7745 }), { 7746 freeBetAmount: null, 7747 stake: null 7748 }); 7749} 7750function fB(e) { 7751 let i = e.systemInfo?.key; 7752 if (!i) return []; 7753 let t = e.stake, r = i === Co.BankerSingles ? Object.values(e.picks).filter((s) => s.isSelected && !s.isBanker).length : Fm.find((s) => s.id === i.toLowerCase())?.bets ?? null; 7754 return [{ 7755 stake: fm({ 7756 isEachWay: e.isEachWay, 7757 stake: r && t ? t * r : null 7758 }), 7759 freeBetAmount: null 7760 }]; 7761} 7762function gB(e, i) { 7763 let t = e.base.linearTypes, r = []; 7764 return t[G.Single] && vB(e.singleBet, i) && r.push(G.Single), t[G.BetBuilder] && SB(e.betBuilder, i) && r.push(G.BetBuilder), t[G.Combo] && $E(e.comboBet, i) && r.push(G.Combo), t[G.System] && RE(e.systemBet) && r.push(G.System), t[G.Teaser] && _E(e.teaserBet, i) && r.push(G.Teaser), r; 7765} 7766function vB(e, i) { 7767 return Object.values(e.picks).some((t) => hm(t, i)); 7768} 7769function $E(e, i) { 7770 return e.stake !== null || ME(e.rewardTokenId, i); 7771} 7772function SB(e, i) { 7773 return Object.values(e.picks).some((t) => mm(t, i)); 7774} 7775function _E(e, i) { 7776 return e.stake != null || ME(e.rewardTokenId, i); 7777} 7778function ME(e, i) { 7779 return !!e && ua(i[e]); 7780} 7781function RE(e) { 7782 return Object.values(e.linearTypeStakes).some((i) => i.stake !== null); 7783} 7784function bB(e, i, t) { 7785 let r = e.base.linearTypes, s = r[G.Single] ? PE(e.singleBet, i, !0, t) : [], n = r[G.Combo] ? AE(e.comboBet, i) : [], a = r[G.System] ? yB(e.systemBet) : [], o = r[G.Teaser] ? pB(e.teaserBet, i) : [], l = r[G.BetBuilder] ? hB(e.betBuilder, i) : []; 7786 return [ 7787 ...s, 7788 ...n, 7789 ...a, 7790 ...o, 7791 ...l 7792 ]; 7793} 7794function yB(e) { 7795 return Object.values(e.linearTypeStakes).map((i) => { 7796 let t = i.stake && i.stake * i.betCount; 7797 return { 7798 stake: i.isEachWay && t ? t * 2 : t, 7799 freeBetAmount: null 7800 }; 7801 }); 7802} 7803function wB(e, i, t) { 7804 let r = [], s = e.singleBet, n = e.comboBet, a = e.systemBet, o = e.teaserBet, l = e.betBuilder; 7805 r = [...an(i).filter((d) => { 7806 let u = s.picks[d.id.toString()]; 7807 return u && hm(u, t) && u.isSelected; 7808 })]; 7809 let c = i.filter((d) => { 7810 let u = l.picks[d.id.toString()]; 7811 return u && mm(u, t) && u.isSelected; 7812 }); 7813 if (r = [...r, ...c], $E(e.comboBet, t)) { 7814 let d = i.filter((u) => n.picks[u.id.toString()].isSelected && r.every((h) => !h.id.isEqual(u.id))); 7815 r = [...r, ...d]; 7816 } 7817 if (RE(e.systemBet)) { 7818 let d = an(i).filter((u) => { 7819 let h = a.picks[u.id.toString()]; 7820 return h && h.isSelected && r.every((g) => !g.id.isEqual(u.id)); 7821 }); 7822 r = [...r, ...d]; 7823 } 7824 if (_E(e.teaserBet, t)) { 7825 let d = an(i).filter((u) => o.picks[u.id.toString()]?.isSelected && r.every((h) => !h.id.isEqual(u.id))); 7826 r = [...r, ...d]; 7827 } 7828 return an(r); 7829} 7830function EB(e, i, t) { 7831 let r = an(i).reduce((a, o) => (a[o.id.toString()] = o, a), {}), s = {}, n = (a) => { 7832 Object.entries(a).filter(([, o]) =>
7832 o.isSelected && o.isLocked === t).forEach(([o]) => { 7833 s[o] = r[o]; 7834 }); 7835 }; 7836 return n(e.singleBet.picks), n(e.comboBet.picks), n(e.systemBet.picks), n(e.betBuilder.picks), n(e.teaserBet.picks), Object.values(s).filter(Is); 7837} 7838function gm(e, i, t, r) { 7839 let s; 7840 switch (i) { 7841 case G.Combo: 7842 s = e.comboBet.picks; 7843 break; 7844 case G.System: 7845 s = e.systemBet.picks; 7846 break; 7847 case G.Teaser: 7848 s = e.teaserBet.picks; 7849 break; 7850 case G.BetBuilder: 7851 s = e.betBuilder.picks; 7852 break; 7853 default: s = e.singleBet.picks; 7854 } 7855 return vE(s, t, r); 7856} 7857function CB(e, i) { 7858 return i.singleBet.picks[e.toString()]?.isLocked || i.comboBet.picks[e.toString()]?.isLocked || i.systemBet.picks[e.toString()]?.isLocked || i.teaserBet.picks[e.toString()]?.isLocked; 7859} 7860function ua(e) { 7861 return !!e && e.rewardTokenType === $i.FreeBet; 7862} 7863function vm(e) { 7864 return !!e && e.rewardTokenType === $i.OddsBoost; 7865} 7866function LE(e) { 7867 return !!e && e.rewardTokenType === $i.RiskFreeBet; 7868} 7869function BE(e) { 7870 return !!e && e.rewardTokenType === $i.BetAndGet; 7871} 7872function Pr(e) { 7873 return !!e && e.rewardTokenType === $i.AccaBoost; 7874} 7875function DE(e) { 7876 return !!e && e.rewardTokenType === $i.DepositAndGet; 7877} 7878function bo(e) { 7879 return e.find((i) => Pf(i)); 7880} 7881function NB(e) { 7882 if (!e.payoutExpiry) return "1"; 7883 let i = e.payoutExpiry / 24; 7884 return (i <= 1 ? 1 : Math.round(i)).toString(); 7885} 7886function FE(e) { 7887 return e.every((i) => ua(i)) ? lr.FreeBet : e.every((i) => vm(i)) ? lr.OddsBoost : e.every((i) => LE(i)) ? lr.RiskFreeBet : e.every((i) => Pr(i)) ? lr.AccaBoost : e.every((i) => Ir(i)) ? lr.AccaInsurance : e.every((i) => BE(i)) ? lr.BetAndGet : e.every((i) => DE(i)) ? lr.DepositAndGet : lr.MultipleRewards; 7888} 7889function TB(e) { 7890 return FE(e); 7891} 7892function Pc(e) { 7893 return e.filter((i) => !Pr(i) && !Ir(i)); 7894} 7895function kB(e, i) { 7896 return Xu(Pc(e), [ 7897 (t) => t.rewardTargetType !== "WelcomeOffer", 7898 (t) => i ? !t.isVipExclusive && t.expiryDate : !1, 7899 (t) => t.expiryDate 7900 ]); 7901} 7902function xB(e) { 7903 return Xu(Pc(e), (i) => Pf(i), "desc"); 7904} 7905function IB(e, i) { 7906 return e.boostLadder.reduce((t, r) => r.numberOfLegs <= i ? r : t); 7907} 7908function OB(e, i) { 7909 return new _e(IB(e, i).ratio); 7910} 7911function PB(e, i) { 7912 return Object.values(i).filter(Pr).sort(xo).filter((t) => { 7913 let r = e.comboBet.find((s) => s.tokenId === t.userTokenId); 7914 return !!r && r.invalidHardCriteria === ai.MinimumLegs; 7915 }); 7916} 7917function AB(e, i) { 7918 return Object.values(i).filter(Pr).sort(xo).find((t) => { 7919 let r = e.comboBet.find((s) => s.tokenId === t.userTokenId); 7920 return !!r && r.invalidHardCriteria === ai.MinOdds; 7921 }); 7922} 7923function $B(e, i, t) { 7924 let r = t.base.currentSelectedType, s = r === G.Combo && !t.comboBet.isEachWay || r === G.Single; 7925 if (!r || !s) return !1; 7926 let n = gm(t, r, i, { 7927 isLocked: !1, 7928 isSelected: !0 7929 }); 7930 if (n.length < 2 || !n.every(({ oddsState: o }) => o === bt.Open)) return !1; 7931 let a = e[r]; 7932 return !Object.values(a).flatMap((o) => o).some((o) => Sn(o)); 7933} 7934function _B(e, i = !1) { 7935 return e.reduce((t, r) => (St.isEmpty(t), !r.currentPrice || r.priceType !== xt.Fixed || St.isEmpty(r.currentPrice.nativeOdds) ? t = Ei : t = St.multiply([t, St.toCalculatedOdds(r.currentPrice.nativeOdds)], i), t), St.fromDecimal(new _e(1))); 7936} 7937function MB(e, i = !1) { 7938 let t = e.filter((r) => r.currentPrice?.nativeOdds).map((r) => St.toCalculatedOdds(r.currentPrice.nativeOdds)); 7939 return St.multiply(t, i); 7940} 7941function RB(e) { 7942 let i = e.rewardTokenModifications?.oddsBoost?.boostedWinnings, t = e.possibleWinnings; 7943 return i && t ? i.minus(t) : new _e(0); 7944} 7945function zE(e) { 7946 let i = e.fixture; 7947 return { 7948 startDate: e.fixture.eventDate.toISOString(), 7949 fixtureType: e.fixture.fixtureType, 7950 sport: { id: i.sportId }, 7951 meeting: $l(i.league) ? { id: i.league.id } : void 0, 7952 region: $l(i.region) ? { id: i.region.id } : void 0, 7953 competition: $l(i.league) ? { id: i.league.id } : void 0, 7954 addons: { 7955 pricingState: "None", 7956 isRaceOff: i.isRaceOff, 7957 bestOddsGuarantee: i.bestOddsGuarantee && e.currentPrice?.type !== xt.StartingPrice && !ra.isPick(e) 7958 } 7959 }; 7960} 7961function LB(e, i) { 7962 let t = []; 7963 return Object.values(e.singleBet).flatMap((r) => r).forEach((r) => { 7964 !r.isEligible || t.includes(r.tokenId) || t.push(r.tokenId); 7965 }), Object.values(e.betBuilder).flatMap((r) => r).forEach((r) => { 7966 !r.isEligible || t.includes(r.tokenId) || t.push(r.tokenId); 7967 }), e.comboBet.forEach((r) => { 7968 !r.isEligible || t.includes(r.tokenId) || t.push(r.tokenId); 7969 }), e.teaserBet.forEach((r) => { 7970 !r.isEligible || t.includes(r.tokenId) || t.push(r.tokenId); 7971 }), t.map((r) => i[r]).filter(Is); 7972} 7973function BB(e) { 7974 return e.isBetBuilder && !e.filter.betSlipType && !e.isSingleAndComboSelected || "buildABet" in e && e.buildABet === "Yes"; 7975} 7976function DB(e) { 7977 return e.isBetBuilder || "buildABet" in e && e?.buildABet !== "No"; 7978} 7979function FB(e) { 7980 return hE(e); 7981} 7982function zB(e) { 7983 return e.customMarketTypes ? e.customMarketTypes.split(",") ?? [] : e.filter.marketParameters.map((i) => i.marketType); 7984} 7985function GE(e, i) { 7986 return e.payoutType === jl.FreeBet && !!e.isIncrementalPayout && (!!e.incrementalBetAmount || e.incrementalBetAmount === 0) && !!e.incrementalPayoutNoOfTimes && !!i && i >= e.incrementalBetAmount && e.incrementalPayoutNoOfTimes > 1; 7987} 7988function GB(e) { 7989 return e?.length === 1 && e[0].tokenType === "BetAndGet"; 7990} 7991function VE(e, i) { 7992 return e.isEligible && !!Object.values(e.softCriteriasValidity).every(Boolean) && i === e.tokenId; 7993} 7994function VB(e, i, t) { 7995 if (!(i <= 0 || !GE(e, t))) return { 7996 slabAmount: qu(i / e.incrementalPayoutNoOfTimes, 2), 7997 noOfSlabs: e.incrementalPayoutNoOfTimes 7998 }; 7999} 8000function hn(e) { 8001 return e === ai.TotalOdds || e === ai.MinimumStake || e === ai.MaximumStake; 8002} 8003function mn(e, i) { 8004 return i?.rewardTokenId ? e[i.rewardTokenId] ?? null : null; 8005} 8006function Ac(e, i) { 8007 return i?.accaInsuranceId ? e[i.accaInsuranceId] ?? null : null; 8008} 8009function HB(e, i, t) { 8010 if (!t) return null; 8011 let r = i?.picks[t]; 8012 return r?.accaInsuranceId ? e[r.accaInsuranceId] ?? null : null; 8013} 8014function yo(e, i, t) { 8015 switch (e.betslipType) { 8016 case G.Single: return qE(e.pickId, i, t.singleBet.picks); 8017 case G.Combo: return mn(i, t.comboBet); 8018 case G.Teaser: return mn(i, t.teaserBet); 8019 case G.BetBuilder: return qE(e.pickId, i, t.betBuilder.picks); 8020 default: return null; 8021 } 8022} 8023function UB(e, i, t) { 8024 return e.betslipType === G.Combo ? Ac(i, t.comboBet) : e.betslipType === G.BetBuilder ? HB(i, t.betBuilder, e.pickId?.toString()) : null; 8025} 8026function HE(e, i, t, r) { 8027 switch (e.betslipType) { 8028 case G.Single: return XE(e.pickId, t, r.singleBet.picks, i.singleBet); 8029 case G.Combo: return bm(t, r.comboBet, i.comboBet); 8030 case G.Teaser: return bm(t, r.teaserBet, i.teaserBet); 8031 case G.BetBuilder: return XE(e.pickId, t, r.betBuilder.picks, i.betBuilder); 8032 default: return [null, null]; 8033 } 8034} 8035function UE(e, i) { 8036 return JE(e, i, !1); 8037} 8038function WE(e, i) { 8039 return JE(e, i, !0); 8040} 8041function jE(e, i) { 8042 if (i.comboBet.rewardTokenId === e) return { betslipType: G.Combo }; 8043 if (i.teaserBet.rewardTokenId === e) return { betslipType: G.Teaser }; 8044 let t = QE(e, i.singleBet.picks); 8045 if (t) return { 8046 pickId: t, 8047 betslipType: G.Single 8048 }; 8049 let r = QE(e, i.betBuilder.picks); 8050 if (r) return { 8051 pickId: r, 8052 betslipType: G.BetBuilder 8053 }; 8054} 8055function WB(e, i, t) { 8056 return { 8057 tokenId: e, 8058 token: i[e] ?? null, 8059 tokenEligibility: (t ?? []).find((r) => e && r.tokenId === e) ?? null 8060 }; 8061} 8062function Sm(e, i) { 8063 switch (e.betslipType) { 8064 case G.Single: return e.pickId ? i.singleBet[e.pickId.toString()] ?? [] : []; 8065 case G.Combo: return i.comboBet; 8066 case G.Teaser: return i.teaserBet; 8067 case G.BetBuilder: return e.pickId ? i.betBuilder[e.pickId.toString()] ?? [] : []; 8068 default: return []; 8069 } 8070} 8071function jB(e, i, t) { 8072 let r = yo({ betslipType: G.Combo }, i, t); 8073 return Pr(r) && e.comboBet.find((s) => s.tokenId === r.userTokenId)?.isEligible ? r : null; 8074} 8075function YB(e, i, t) { 8076 let r = Ac(i, t.comboBet); 8077 return r && e.comboBet.find((s) => s.tokenId === r.userTokenId)?.isEligible ? r : null; 8078} 8079function KB(e, i) { 8080 return e.comboBet.filter((t) => t.isEligible).map((t) =>
8080 i[t.tokenId]).filter(Pr).sort(xo)[0] ?? null; 8081} 8082function qB(e, i) { 8083 return e.comboBet.filter((t) => t.isEligible || t.invalidHardCriteria === ai.MinimumLegs || hn(t.invalidHardCriteria)).map((t) => i[t.tokenId]).find((t) => Ir(t)) || Object.values(e.betBuilder ?? {}).flat().filter((t) => t.isEligible || t.invalidHardCriteria === ai.MinimumLegs || hn(t.invalidHardCriteria)).map((t) => i[t.tokenId]).find((t) => Ir(t)); 8084} 8085function XB(e) { 8086 return Object.values(e).find(Ir) ?? null; 8087} 8088function YE(e, i, t, r, s) { 8089 let n = { 8090 isEligible: !1, 8091 isVisible: !1, 8092 isUnderMinLegs: !1, 8093 isBadgeMuted: !1, 8094 minimumLegs: 0, 8095 currentSelectedLegs: s 8096 }; 8097 if (!t.comboBet?.accaInsuranceId) return n; 8098 if (r) return { 8099 isEligible: !0, 8100 isVisible: !0, 8101 isUnderMinLegs: !1, 8102 isBadgeMuted: !1, 8103 minimumLegs: r?.minimumLegs ?? 0, 8104 currentSelectedLegs: s 8105 }; 8106 let a = e.comboBet.find((o) => { 8107 let l = i[o.tokenId]; 8108 return l && Ir(l); 8109 }); 8110 if (a?.invalidHardCriteria === ai.MinimumLegs) { 8111 let o = i[a.tokenId]?.minimumLegs ?? 0; 8112 return { 8113 isEligible: !1, 8114 isVisible: !0, 8115 isUnderMinLegs: !0, 8116 isBadgeMuted: !1, 8117 minimumLegs: o, 8118 currentSelectedLegs: Math.min(s, o - 1) 8119 }; 8120 } 8121 return a && hn(a.invalidHardCriteria) ? { 8122 isEligible: !1, 8123 isVisible: !0, 8124 isUnderMinLegs: !1, 8125 isBadgeMuted: !0, 8126 minimumLegs: i[a.tokenId]?.minimumLegs ?? 0, 8127 currentSelectedLegs: s 8128 } : n; 8129} 8130function JB(e, i, t, r, s, n) { 8131 let a = YE(e, i, t, r, s); 8132 if (a.isVisible) return a; 8133 let o = Object.keys(t.betBuilder?.picks ?? {}); 8134 for (let l of o) { 8135 let c = KE(e, i, t, l, n); 8136 if (c.isVisible) return c; 8137 } 8138 return a; 8139} 8140function KE(e, i, t, r, s) { 8141 let n = s.find((d) => d.id.toString() === r), a = n ? sc([n]) : 0, o = { 8142 isEligible: !1, 8143 isVisible: !1, 8144 isUnderMinLegs: !1, 8145 isBadgeMuted: !1, 8146 minimumLegs: 0, 8147 currentSelectedLegs: a 8148 }, l = t.betBuilder?.picks[r]; 8149 if (l?.rewardTokenId && !Pr(i[l.rewardTokenId])) return o; 8150 let c = (e.betBuilder[r] ?? []).find((d) => Ir(i[d.tokenId])); 8151 if (!c) return o; 8152 if (c.isEligible) return { 8153 isEligible: !0, 8154 isVisible: !0, 8155 isUnderMinLegs: !1, 8156 isBadgeMuted: !1, 8157 minimumLegs: i[c.tokenId]?.minimumLegs ?? 0, 8158 currentSelectedLegs: a 8159 }; 8160 if (c.invalidHardCriteria === ai.MinimumLegs) { 8161 let d = i[c.tokenId]?.minimumLegs ?? 0; 8162 return { 8163 isEligible: !1, 8164 isVisible: !0, 8165 isUnderMinLegs: !0, 8166 isBadgeMuted: !1, 8167 minimumLegs: d, 8168 currentSelectedLegs: Math.min(a, d - 1) 8169 }; 8170 } 8171 return hn(c.invalidHardCriteria) ? { 8172 isEligible: !1, 8173 isVisible: !0, 8174 isUnderMinLegs: !1, 8175 isBadgeMuted: !0, 8176 minimumLegs: i[c.tokenId]?.minimumLegs ?? 0, 8177 currentSelectedLegs: a 8178 } : o; 8179} 8180function QB(e, i, t) { 8181 let r = t.comboBet.find((d) => Ir(e[d.tokenId])), s = r ? e[r.tokenId] : void 0; 8182 if (!s) return { 8183 accaInsuranceId: null, 8184 shouldDispatch: !1 8185 }; 8186 let n = Ac(e, i.comboBet), a = eD(e, i), o = r?.isEligible ?? !1, l = r?.invalidHardCriteria === ai.MinimumLegs, c = hn(r?.invali
8186dHardCriteria); 8187 return n && (a || !o && !l && !c) ? { 8188 accaInsuranceId: null, 8189 shouldDispatch: !0 8190 } : !n && !a && (o || l || c) ? { 8191 accaInsuranceId: s.userTokenId, 8192 shouldDispatch: !0 8193 } : { 8194 accaInsuranceId: null, 8195 shouldDispatch: !1 8196 }; 8197} 8198function ZB(e, i, t) { 8199 let r = Object.keys(i.betBuilder.picks), s = []; 8200 for (let n of r) { 8201 let a = (t.betBuilder[n] ?? []).find((p) => Ir(e[p.tokenId])), o = a ? e[a.tokenId] : void 0; 8202 if (!o) { 8203 i.betBuilder.picks[n]?.accaInsuranceId && s.push({ 8204 pickId: n, 8205 accaInsuranceId: null, 8206 shouldDispatch: !0 8207 }); 8208 continue; 8209 } 8210 let l = i.betBuilder.picks[n], c = !!l?.accaInsuranceId, d = !!l?.rewardTokenId && !Pr(e[l.rewardTokenId]), u = a?.isEligible ?? !1, h = a?.invalidHardCriteria === ai.MinimumLegs, g = hn(a?.invalidHardCriteria); 8211 if (c && (d || !u && !h && !g)) { 8212 s.push({ 8213 pickId: n, 8214 accaInsuranceId: null, 8215 shouldDispatch: !0 8216 }); 8217 continue; 8218 } 8219 if (!c && !d && (u || h || g)) { 8220 s.push({ 8221 pickId: n, 8222 accaInsuranceId: o.userTokenId, 8223 shouldDispatch: !0 8224 }); 8225 continue; 8226 } 8227 } 8228 return s; 8229} 8230function qE(e, i, t) { 8231 if (!e) return null; 8232 let r = t[e.toString()]; 8233 return mn(i, r); 8234} 8235function XE(e, i, t, r) { 8236 if (!e) return [null, null]; 8237 let s = t[e.toString()]; 8238 return bm(i, s, r[e.toString()] ?? []); 8239} 8240function bm(e, i, t) { 8241 let r = mn(e, i); 8242 return [r, r ? t.find((s) => s.tokenId === r.userTokenId) ?? null : null]; 8243} 8244function JE(e, i, t = !1) { 8245 let r = Object.values(i.singleBet.picks), s = Object.values(i.betBuilder.picks), n = [...r, ...s], a = (t ? n.filter((l) => l.isSelected) : n).map((l) => l.rewardTokenId), o = s.map((l) => l.accaInsuranceId); 8246 return [ 8247 ...a, 8248 ...o, 8249 i.comboBet.rewardTokenId, 8250 i.comboBet.accaInsuranceId, 8251 i.teaserBet.rewardTokenId 8252 ].filter((l) => !!l).map((l) => e[l]).filter((l) => !!l); 8253} 8254function QE(e, i) { 8255 let t = Object.entries(i).find(([, r]) => r.rewardTokenId === e); 8256 return t ? ta(t[0]) : void 0; 8257} 8258function eD(e, i) { 8259 let t = mn(e, i.comboBet), r = t !== null && !Pr(t), s = Object.values(i.singleBet.picks), n = s.length === 1 && !!mn(e, s[0]); 8260 return r || n; 8261} 8262function ym(e) { 8263 return !!e && e.rewardTokenType === $i.BetStationFreebet; 8264} 8265function ZE(e) { 8266 return !!e && e.rewardTokenType === $i.BestOddsGuaranteed; 8267} 8268function tD(e) { 8269 return !!e && e.rewardTokenType === $i.Eds; 8270} 8271function iD(e) { 8272 let i = Object.values(e.tokens).find(ZE); 8273 return { 8274 valid: !!e.betstationTokens.bogTokenState.eligibility?.isEligible, 8275 token: i 8276 }; 8277} 8278function rD(e) { 8279 return e.allPicks.map((i) => sa.isPick(i) && i.pickType === Ue.Win && (i.isStartingPriceAvailable() || i.isFixedPriceAvailable()) || ho.isPick(i) || ra.isPick(i) ? J(C({}, zE(i)), { pickId: i.id.toString() }) : null); 8280} 8281function sD(e, i) { 8282 let t = e.selectedTokenId ? i[e.selectedTokenId] : null; 8283 return ZE(t) ? t : null; 8284} 8285function e0(e, i) { 8286 let t = e.betStationFreeBet.selectedTokenId; 8287 if (!t) return null; 8288 let r = i[t]; 8289 return ym(r) ? r : null; 8290} 8291function nD(e, i, t, r) { 8292 let s = t.betStationFreeBet.selectedTokenId; 8293 if (s) { 8294 let n = r[s]; 8295 return ym(n) ? n : null; 8296 } 8297 return yo(e, r, i); 8298} 8299function aD(e, i) { 8300 return e === G.Combo ? i : Ih(i); 8301} 8302var wm, t0, i0, Em, $c, r0, pa, ni, fn, s0, _c, n0, a0, o0, l0, c0, ha, d0, tt, wo, u0, Mc, Cm, Nm, Tm, km, xm, Im, p0, Ar, h0, Om, Pm, Eo, m0, f0, g0, Am, Ms, Rc, $m, _m, Lc, Mm, Co, Rm, Lm, v0, Ti, S0, b0, y0, w0, E0, C0, N0, Bm, Dm, Fm, zm, T0, k0, Gm, pt, x0, I0, Bc, O0, Dc, P0, Vm, Hm, Fc, Um, zc, Gc, Wm, jm, Ym, A0, Km, $0, Vc, _0, M0, R0, L0, No, gn, qm, B0, D0, F0, z0, lr, ai, G0, Xm, Jm, Qm, V0, Zm, H0, Hc, Uc, ef, qt, Rs, ma, Xt, vn, hi, Ls, Wc, jc, tf, rf, sf, ls, cs, U0, W0, j0, Y0, K0, nf, af, of, q0, lf, Yc, To, cf, df, uf, pf, Kc, hf, mf, ff, qc, Xc, gf, vf, Jc, Sf, X0, bf, yf, Qc, wf, Zc, ed, Ef, Cf, td, Nf, J0, Q0, Z0, eC, tC, iC, id, rd, sd, nd, ad, rC, sC, od, nC, aC, Tf, oC, kf, lC, cC, Sn, ld, dC, uC, pC, hC, mC, fC, gC, vC, SC, bC, yC, xf, If, ko, wC, EC, CC, NC, Of, Pf, xo, Af, TC, kC, Bs, ds, us, ps, Io, $f, Oo, _f, xC, Mf, IC, OC, fa, Rf, PC, AC, Lf, ga, $C, _C, MC, cd, Bf, Df, RC, dd, LC, Po, BC, DC, FC, zC, GC, VC, HC, UC, WC, jC, YC, ud, KC, qC, Ff, XC, JC, QC, ZC, eN, tN, iN, rN, zf, Gf, sN, nN, aN, oN, hs, pd, lN, $r, bn, Ds, Vf, yn, cN, Hf, dN, Uf, hd, uN, pN, md, hN, fd, Wf, mN, fN, gN, vN, SN, bN, jf, Yf, yN, gd, wN, EN, Ao, vd, CN, Kf, NN, TN, kN, xN, IN, ON, PN, AN, $N, qf, _N, MN; 8303function Sd() { 8304 return (Sd = Z((() => { 8305 Re(), Ye(), Wl(), wh(), tc(), rc(), mo(), os(), Ua(), Kn(), wm = Object.freeze({ 8306 pickId: void 0, 8307 hasError: !1, 8308 previousHadError: !1 8309 }), t0 = { 8310 pickList: [], 8311 ui: {}, 8312 lastPickError: wm, 8313 uuid: void 0, 8314 betTypeInit: void 0 8315 }, i0 = Object.freeze({ 8316 highlightPick: !1, 8317 expandLegs: !1 8318 }), Em = "betslip-picks", $c = function(e) { 8319 return (un.isPick(e) || Ni.isPick(e)) && e.isEachWay; 8320 }, r0 = function(e) { 8321 return $c(e) ? e.market.placeTerms : null; 8322 }, pa = _s(Em), ni = k(pa, (e) => e.pickList), fn = k(ni, (e) => an(e)), s0 = k(fn, (e) => e.map((i) => i.id)), _c = k(ni, (e) => D1(e)), n0 = k(ni, (e) => sc(e)), a0 = k(pa, (e) => e.pickList.flatMap((i) => i.id)), k(pa, (e) => e.ui), o0 = k(pa, (e) => e.lastPickError), k(ni, (e) => !e.length), l0 = k(ni, (e) => e.some($c)), c0 = k(ni, _c, (e, i) => { 8323 let t = e.filter((r) => rs.isId(r.id)); 8324 return { 8325 hasOnlyBetBuilderPicks: i === t.length, 8326 betBuilderPicksCount: t.length, 8327 nonBetBuilderPicksCount: i - t.length, 8328 picks: t 8329 }; 8330 }), k(ni, _c, (e, i) => { 8331 let t = e.filter((r) => rs.isId(r.id)); 8332 return { 8333 hasOnlyBetBuilderPicks: i === t.length, 8334 betBuilderPicksCount: t.length, 8335 nonBetBuilderPicksCount: i - t.length 8336 }; 8337 }), ha = k(fn, (e) => e.filter((i) => !F1(i))), d0 = k(ha, (e) => e.length), tt = class {}, tt.ACTION_SCHEMA = "@betslip", tt.SET_STATE = `${tt.ACTION_SCHEMA}/SET_STATE`, tt.EVENT_UPDATE = `${tt.ACTION_SCHEMA}/EVENT_UPDATE`, tt.FIXTURE_UPDATE = `${tt.ACTION_SCHEMA}/FIXTURE_UPDATE`, tt.LINEAR_USER_EXPANDED_SECTIONS_UPDATE = `${tt.ACTION_SCHEMA}/LINEAR_USER_EXPANDED_SECTIONS_UPDATE`, tt.SET_LINEAR_USER_EXPANDED_SECTION = `${tt.ACTION_SCHEMA}/SET_LINEAR_USER_EXPANDED_SECTION`, tt.CLEAR_LINEAR_USER_EXPANDED_SECTIONS = `${tt.ACTION_SCHEMA}/CLEAR_LINEAR_USER_EXPANDED_SECTIONS`, tt.setState = ae(tt.SET_STATE, ut()), tt.eventUpdate = ae(tt.EVENT_UPDATE, ut()), tt.fixtureUpdate = ae(tt.FIXTURE_UPDATE, ut()), tt.betBuilderGroupUpdate = ae(`${tt.ACTION_SCHEMA}/BETBUILDER_GROUP_UPDATE`, ut()), tt.linearUserExpandedSectionsUpdate = ae(tt.LINEAR_USER_EXPANDED_SECTIONS_UPDATE, ut()), tt.setLinearUserExpandedSection = ae(tt.SET_LINEAR_USER_EXPANDED_SECTION, ut()), tt.clearLinearUserExpandedSections = ae(tt.CLEAR_LINEAR_USER_EXPANDED_SECTIONS), wo = tt, u0 = `${wo.ACTION_SCHEMA}/types`, Mc = "betslip-types", Cm = Object.freeze({ picks: {} }), Nm = { 8338 picks: {}, 8339 isEachWay: !1, 8340 stake: null, 8341 rewardTokenId: "", 8342 actualStake: null, 8343 accaInsuranceId: null 8344 }, Tm = Object.freeze({ 8345 picks: { 8346 pickList: [], 8347 pickState: {} 8348 }, 8349 originalPicks: [], 8350 acceptedEarlyPayoutStake: null, 8351 earlyPayoutStake: null, 8352 isEarlyPayoutStakeLoading: !1, 8353 addedStake: 0, 8354 confirmedStake: null, 8355 addPicksState: { 8356 isVisible: !1, 8357 isExpanded: !1, 8358 pickList: [] 8359 }, 8360 swapPickState: { 8361 oldPick: null, 8362 newPick: null 8363 }, 8364 betslipId: "" 8365 }), km = Object.freeze({ picks: {} }), xm = _s(Mc), Im = k(xm, (e) => e.singleBet), p0 = k(xm, (e) => e.base.currentSelectedType === G.Single), Ar = k(Im, (e) => e.picks), h0 = k(Ar, (e) => Object.values(e).filter((i) => i.isSelected).length > 1), Om = (e) => k(Ar, (i) => i[e.toString()]), Pm = (e) => k(Om(e), (i) => i ? { 8366 actualStake: i.actualStake, 8367 stake: i.stake 8368 } : null), Eo = k(Ar, (e) => Zb(e, (i) => i.isSelected)), m0 = k(Ar, (e) => { 8369 let i = Object.values(e); 8370 if (i.length < 1) return null; 8371 let t = i[0], r = t.stake; 8372 return i.every((s) => s.stake === r) ? { 8373 stake: r, 8374 actualStake: t.actualStake 8375 } : { 8376 stake: null, 8377 actualStake: null 8378 }; 8379 }), f0 = k(p0, Ar, (e, i) => e && BL(i)), k(Eo, (e) => { 8380 let i = Object.values(e); 8381 return i.length === 1 ? i[0] : null; 8382 }), g0 = k(Eo, (e) => { 8383 let i = Object.keys(e); 8384 return i.length === 1 ? i[0] : null; 8385 }), Am = { 8386 picks: {}, 8387 isEachWay: !1, 8388 systemInfo: null, 8389 stake: 0, 8390 isBankerActive: !1, 8391 isBankerEnabled: !1, 8392 actualStake: "0", 8393 linearTypeStakes: {}, 8394 isLinearExpanded: !1 8395 }, Ms = (function(e) { 8396 return e.Single = "single", e.Combo = "combo", e.BetBuilder = "betbuilder", e; 8397 })(Ms || {}), Rc = class AA { 8398 _key; 8399 _name; 8400 _basis; 8401 constructor(i, t, r) { 8402 this._key = i, this._name = t, this._basis = r; 8403 } 8404 get key() { 8405 return this._key; 8406 } 8407 get name() { 8408 return this._name; 8409 } 8410 get basis() { 8411 return this._basis; 8412 } 8413 equals(i) { 8414 return i ? this.key === i.key && AA.isBasisEqual(this.basis, i.basis) : !1; 8415 } 8416 toJSON() { 8417 return { 8418 key: this.key, 8419 name: this.name, 8420 basis: this.basis 8421 }; 8422 } 8423 static isBasisEqual(i, t) { 8424 if (i.length !== t.length) return !1; 8425 for (let r = 0; r < i.length; r++) if (i[r] !== t[r]) return !1; 8426 return !0; 8427 } 8428 }, $m = class extends Rc { 8429 constructor() { 8430 super(Ms.Single, "", [1]); 8431 } 8432 }, _m = class extends Rc { 8433 constructor() { 8434 super(Ms.Combo, "", [-1]); 8435 } 8436 }, Lc = class extends Rc {}, Mm = Object.freeze({ 8437 activeTypes: [], 8438 currentSelectedType: null, 8439 selectedByUser: !1, 8440 linearTypes: { 8441 [G.Single]: !1, 8442 [G.Combo]: !1, 8443 [G.System]: !1, 8444 [G.Teaser]: !1, 8445 [G.BetBuilder]: !1 8446 }, 8447 original: { 8448 activeTypes: [], 8449 currentSelectedType: null, 8450 selectedByUser: !1 8451 } 8452 }), Co = (function(e) { 8453 return e.Patent = "patent", e.Lucky15 = "lucky15", e.Lucky31 = "lucky31", e.Lucky63 = "lucky63", e.Trixie = "trixie", e.Yankee = "yankee", e.Canadian = "canadian", e.Heinz = "heinz", e.SuperHeinz = "superheinz", e.Goliath = "goliath", e.MOfN = "mofn", e.BankerSingles = "systembankersingles", e; 8454 })(Co || {}), Rm = (function(e) { 8455 return e.System2of3 = "system2of3", e.System2of4 = "system2of4", e.System2of5 = "system2of5", e.System2of6 = "system2of6", e.System2of7 = "system2of7", e.System2of8 = "system2of8", e.System3of4 = "system3of4", e.System3of5 = "system3of5", e.System3of6 = "system3of6", e.System3of7 = "system3of7", e.System3of8 = "system3of8", e.System4of5 = "system4of5", e.System4of6 = "system4of6", e.System4of7 = "system4of7", e.System4of8 = "system4of8", e.System5of6 = "system5of6", e.System5of7 = "system5of7", e.System5of8 = "system5of8", e.System6of7 = "system6of7", e.System6of8 = "system6of8", e.System7of8 = "system7of8", e; 8456 })(Rm || {}), Lm = (function(e) { 8457 return e.SystemBetPositionEvent = "Sytem bet expand/collapse", e.HidePickListEventDetails = "Collapse system bet", e.ViewPickListEventDetails = "Expand system bet", e.SystemBetPosition = "system bet", e; 8458 })(Lm || {}), v0 = class extends Lc { 8459 constructor() { 8460 super(Co.BankerSingles, "", [1]); 8461 } 8462 }, Ti = k(_s(Mc), (e) => e.systemBet), S0 = k(Ti, ha, (e, i) => i.filter((t) => e.picks[t.id.toString()])), k(Ti, (e) => e.picks), b0 = k(Ti, (e) => e.systemInfo), y0 = k(Ti, (e) => e.isBankerActive), w0 = k(Ti, (e) => ({ 8463 isBankerActive: e.isBankerActive, 8464 hasBanker: Object.values(e.picks).some((i) => i.isBanker) 8465 })), E0 = k(Ti, (e) => e.isBankerActive ? Object.values(e.picks).filter((i) => i.isSelected && !i.isLocked && i.isBanker).length : 0), k(Ti, (e) => ({ 8466 isBankerActive: e.isBankerActive, 8467 selectedSlipType: e.systemInfo?.key 8468 })), C0 = (e) => k(Ti, (i) => (i.linearTypeStakes ?? {})[e] ?? null), N0 = k(Ti, (e) => Object.values(e.linearTypeStakes).map((i) => i)), Bm = k(Ti, S0, (e, i) => { 8469 let t = {};
8470 return i.forEach((r) => { 8471 t[r.id.toString()] = J(C({}, e.picks[r.id.toString()]), { isOpen: r.oddsState === bt.Open }); 8472 }), t; 8473 }), k(Ti, Bm, (e, i) => J(C({}, e), { picks: i })), Dm = k(Ti, (e) => e.isLinearExpanded), Fm = [ 8474 { 8475 id: "systembankersingles", 8476 picks: -1, 8477 bets: -1, 8478 group: 1, 8479 basis: [1] 8480 }, 8481 { 8482 id: "system2of3", 8483 picks: 3, 8484 bets: 3, 8485 group: 2, 8486 basis: [2] 8487 }, 8488 { 8489 id: "patent", 8490 picks: 3, 8491 bets: 7, 8492 group: 9, 8493 basis: [ 8494 1, 8495 2, 8496 3 8497 ] 8498 }, 8499 { 8500 id: "trixie", 8501 picks: 3, 8502 bets: 4, 8503 group: 8, 8504 basis: [2, 3] 8505 }, 8506 { 8507 id: "system3of4", 8508 picks: 4, 8509 bets: 4, 8510 group: 3, 8511 basis: [3] 8512 }, 8513 { 8514 id: "system2of4", 8515 picks: 4, 8516 bets: 6, 8517 group: 2, 8518 basis: [2] 8519 }, 8520 { 8521 id: "lucky15", 8522 picks: 4, 8523 bets: 15, 8524 group: 9, 8525 basis: [ 8526 1, 8527 2, 8528 3, 8529 4 8530 ] 8531 }, 8532 { 8533 id: "yankee", 8534 picks: 4, 8535 bets: 11, 8536 group: 8, 8537 basis: [ 8538 2, 8539 3, 8540 4 8541 ] 8542 }, 8543 { 8544 id: "system4of5", 8545 picks: 5, 8546 bets: 5, 8547 group: 4, 8548 basis: [4] 8549 }, 8550 { 8551 id: "system3of5", 8552 picks: 5, 8553 bets: 10, 8554 group: 3, 8555 basis: [3] 8556 }, 8557 { 8558 id: "system2of5", 8559 picks: 5, 8560 bets: 10, 8561 group: 2, 8562 basis: [2] 8563 }, 8564 { 8565 id: "lucky31", 8566 picks: 5, 8567 bets: 31, 8568 group: 9, 8569 basis: [ 8570 1, 8571 2, 8572 3, 8573 4, 8574 5 8575 ] 8576 }, 8577 { 8578 id: "canadian", 8579 picks: 5, 8580 bets: 26, 8581 group: 8, 8582 basis: [ 8583 2, 8584 3, 8585 4, 8586 5 8587 ] 8588 }, 8589 { 8590 id: "system5of6", 8591 picks: 6, 8592 bets: 6, 8593 group: 5, 8594 basis: [5] 8595 }, 8596 { 8597 id: "system4of6", 8598 picks: 6, 8599 bets: 15, 8600 group: 4, 8601 basis: [4] 8602 }, 8603 { 8604 id: "system3of6", 8605 picks: 6, 8606 bets: 20, 8607 group: 3, 8608 basis: [3] 8609 }, 8610 { 8611 id: "system2of6", 8612 picks: 6, 8613 bets: 15, 8614 group: 2, 8615 basis: [2] 8616 }, 8617 { 8618 id: "lucky63", 8619 picks: 6, 8620 bets: 63, 8621 group: 9, 8622 basis: [ 8623 1, 8624 2, 8625 3, 8626 4, 8627 5, 8628 6 8629 ] 8630 }, 8631 { 8632 id: "heinz", 8633 picks: 6, 8634 bets: 57, 8635 group: 8, 8636 basis: [ 8637 2, 8638 3, 8639 4, 8640 5, 8641 6 8642 ] 8643 }, 8644 { 8645 id: "system6of7", 8646 picks: 7, 8647 bets: 7, 8648 group: 6, 8649 basis: [6] 8650 }, 8651 { 8652 id: "system5of7", 8653 picks: 7, 8654 bets: 21, 8655 group: 5, 8656 basis: [5] 8657 }, 8658 { 8659 id: "system4of7", 8660 picks: 7, 8661 bets: 35, 8662 group: 4, 8663 basis: [4] 8664 }, 8665 { 8666 id: "system3of7", 8667 picks: 7, 8668 bets: 35, 8669 group: 3, 8670 basis: [3] 8671 }, 8672 { 8673 id: "system2of7", 8674 picks: 7, 8675 bets: 21, 8676 group: 2, 8677 basis: [2] 8678 }, 8679 { 8680 id: "superheinz", 8681 picks: 7, 8682 bets: 120, 8683 group: 8, 8684 basis: [ 8685 2, 8686 3, 8687 4, 8688 5, 8689 6, 8690 7 8691 ] 8692 }, 8693 { 8694 id: "system7of8", 8695 picks: 8, 8696 bets: 8, 8697 group: 7, 8698 basis: [7] 8699 }, 8700 { 8701 id: "system6of8", 8702 picks: 8, 8703 bets: 28, 8704 group: 6, 8705 basis: [6] 8706 }, 8707 { 8708 id: "system5of8", 8709 picks: 8, 8710 bets: 56, 8711 group: 5, 8712 basis: [5] 8713 }, 8714 { 8715 id: "system4of8", 8716 picks: 8, 8717 bets: 70, 8718 group: 4, 8719 basis: [4] 8720 }, 8721 { 8722 id: "system3of8", 8723 picks: 8, 8724 bets: 56, 8725 group: 3, 8726 basis: [3] 8727 }, 8728 { 8729 id: "system2of8", 8730 picks: 8, 8731 bets: 28, 8732 group: 2, 8733 basis: [2] 8734 }, 8735 { 8736 id: "goliath", 8737 picks: 8, 8738 bets: 247, 8739 group: 8, 8740 basis: [ 8741 2, 8742 3, 8743 4, 8744 5, 8745 6, 8746 7, 8747 8 8748 ] 8749 } 8750 ], zm = { 8751 picks: {}, 8752 selectedPoints: 0, 8753 stake: 0, 8754 placeBlocking: !1, 8755 actualStake: "0", 8756 teaserPrice: _i, 8757 priceVersionId: 0, 8758 rewardTokenId: "" 8759 }, T0 = { 8760 id: "", 8761 isSelected: !0, 8762 isLocked: !1, 8763 selectedOption: void 0, 8764 eventId: void 0, 8765 oldPoints: 0, 8766 newPoints: 0, 8767 order: 0 8768 }, k0 = { 8769 base: Mm, 8770 singleBet: km, 8771 comboBet: Nm, 8772 systemBet: Am, 8773 teaserBet: zm, 8774 editBet: Tm, 8775 betBuilder: Cm 8776 }, Gm = Mc, pt = _s(Gm), x0 = k(pt, (e) => e.betBuilder), I0 = k(pt, (e) => e.editBet), Bc = k(pt, (e) => e.editBet.picks.pickList), O0 = k(pt, (e) => e.editBet.picks.pickState), Dc = k(pt, (e) => e.editBet.addPicksState.pickList), P0 = (e) => k(Bc, Dc, (i, t) => [...i, ...t].find((r) => r.id.id.toString() === e.toString())), Vm = k(pt, (e) => e.base.currentSelectedType), Hm = k(Vm, (e) => e === G.Single), Fc = k(pt, (e) => e.singleBet), Um = k(pt, (e) => e.comboBet), zc = k(pt, (e) => e.systemBet), Gc = k(pt, (e) => e.betBuilder), Wm = k(pt, (e) => e.teaserBet), jm = k(Fc, ha, (e, i) => i.filter((t) => e.picks[t.id.toString()])), Ym = k(zc, ha, (e, i) => i.filter((t) => e.picks[t.id.toString()])), A0 = k(jm, (e) => e.length), Km = k(Um, (e) => Object.keys(e.picks).length), $0 = k(Ym, (e) => e.length), Vc = k(Gc, (e) => Object.keys(e.picks).length), _0 = k(A0, Km, $0, Vc, k(Wm, (e) => Object.keys(e.picks).length), (e, i, t, r, s) => ({ 8777 singlePicksCount: e, 8778 comboPicksCount: i, 8779 systemPicksCount: t, 8780 betBuilderPicksCount: r, 8781 teaserPicksCount: s 8782 })), M0 = k(Vc, (e) => e > 0), R0 = k(Fc, fn, (e, i) => i.filter((t) => e.picks[t.id.toString()])), L0 = k(zc, fn, (e, i) => i.filter((t) => e.picks[t.id.toString()])), No = k(pt, (e) => e.base), gn = k(No, (e) => e.currentSelectedType), k(No, (e) => e.activeTypes), qm = k(No, (e) => e.linearTypes), B0 = k(qm, (e) => !e[G.Combo] && e[G.BetBuilder]), D0 = "tokenChipClick", F0 = "betnow-clicked", z0 = "deposit-clicked", lr = (function(e) { 8783 return e.FreeBet = "FreeBet", e.RiskFreeBet = "RiskFreeBet", e.OddsBoost = "OddsBoost", e.BetAndGet = "BetAndGet", e.AccaBoost = "AccaBoost", e.AccaInsurance = "AccaInsurance", e.DepositAndGet = "DepositAndGet", e.MultipleRewards = "MultipleRewards", e; 8784 })(lr || {}), ai = (function(e) { 8785 return e.Sports = "Sports", e.Competitions = "Competitions", e.Meetings = "Meetings", e.Fixtures = "Fixtures", e.GameType = "GameType", e.OptionId = "OptionId", e.TemplateId = "TemplateId", e.MarketParameter = "MarketParameter", e.MarketId = "MarketId", e.Forbidden = "Forbidden", e.EachWaySelected = "EachWaySelected", e.StartDate = "StartDate", e.ExpiryDate = "ExpiryDate", e.ParticipantBetSelected = "ParticipantBetSelected", e.BetBuilderBetSelected = "BetBuilderBetSelected", e.MinOdds = "MinOdds", e.MaxOdds = "MaxOdds", e.SelectionMaxOdds = "SelectionMaxOdds", e.Market = "Market", e.SlipType = "SlipType", e.MinimumLegs = "MinimumLegs", e.MaximumStake = "MaximumStake", e.MinimumStake = "MinimumStake", e.DayOfWeek = "DayOfWeek", e.TimeOfDay = "TimeOfDay", e.BestOddsFlag = "BestOddsFlag", e.MultiSingleBet = "MultiSingleBet", e.SelectionOdds = "SelectionOdds", e.TotalOdds = "TotalOdds", e.SelectionsCount = "SelectionsCount", e.Stake = "Stake", e.Currency = "Currency", e.BetBuilder = "BetBuilder", e.SystemBet = "SystemBet", e.TeaserReward = "TeaserReward", e.EachWay = "EachWay", e.ComboPrevention = "ComboPrevention", e.BetBuilderNonCombinableLegs = "BetBuilderNonCombinableLegs", e.Sportcast = "Sportcast", e.PriceBoostFreeBet = "PriceBoostFreeBet", e.PriceBoost = "PriceBoost", e; 8786 })(ai || {}), G0 = { 8787 load: "load", 8788 expand: "expand", 8789 collapse: "collapse", 8790 click: "click", 8791 betRewardsBanner: "bet rewards banner", 8792 rewardsBanner: "rewards banner",
8793 rewardDetails: "reward details", 8794 promoHub: "promo hub" 8795 }, Xm = (function(e) { 8796 return e.BoostPercentage = "boostPercentage", e.MaxTokenStake = "maxTokenStake", e.MaxWinningsBoost = "maxWinningsBoost", e.UserExpectedWinningsBoost = "userExpectedWinningsBoost", e.RiskFreeMaxCompensation = "riskFreeMaxCompensation", e.RiskFreePercentage = "riskFreePercentage", e.AccaBoostRatio = "accaBoostRatio", e.AccaBoostFormulaType = "formulaType", e.EdsCampaignPromotionType = "edsCampaignPromotionType", e.BetIndex = "betIndex", e.IsDigitalV2 = "isDigitalV2", e.OddsBoostFormulaType = "oddsBoostFormula", e.PlaceBetSignPostingData = "placeBetSignPostingData", e.PlaceBetSignPostingVersion = "placeBetSignPostingVersion", e; 8797 })(Xm || {}), Jm = (function(e) { 8798 return e.BannerTooltip = "BannerTooltip", e.AutoApplyTooltip = "AutoApplyTooltip", e.AutoApply = "AutoApply", e.DeselectedByUser = "DeselectedByUser", e.AddWelcomeOffer = "AddWelcomeOffer", e; 8799 })(Jm || {}), Qm = (function(e) { 8800 return e.V1 = "V1", e.V2 = "V2", e; 8801 })(Qm || {}), V0 = { 8802 tokens: {}, 8803 eligibilityState: { 8804 singleBet: {}, 8805 comboBet: [], 8806 teaserBet: [], 8807 betBuilder: {} 8808 }, 8809 betstationTokens: { 8810 betStationFreeBet: { 8811 selectedTokenId: null, 8812 eligibility: null 8813 }, 8814 bogTokenState: { 8815 selectedTokenId: null, 8816 eligibility: null 8817 }, 8818 edsState: { 8819 selectedTokenIds: [], 8820 eligibilities: [] 8821 } 8822 }, 8823 onboardingState: { 8824 visible: !1, 8825 acquisitionHidden: !1 8826 }, 8827 tokenRecoveryState: [], 8828 deselectedToken: void 0 8829 }, Zm = "betslip-reward-tokens", H0 = { 8830 pickErrors: { 8831 SINGLE: {}, 8832 COMBO: {}, 8833 SYSTEM: {}, 8834 TEASER: {}, 8835 EDIT_MY_BET: {}, 8836 BET_BUILDER: {} 8837 }, 8838 slipErrors: {}, 8839 betslipTypeErrors: { 8840 SINGLE: [], 8841 COMBO: [], 8842 SYSTEM: [], 8843 TEASER: [], 8844 EDIT_MY_BET: [], 8845 BET_BUILDER: [] 8846 }, 8847 betslipErrors: [] 8848 }, Hc = () => ({ 8849 SINGLE: {}, 8850 COMBO: {}, 8851 SYSTEM: {}, 8852 TEASER: {}, 8853 EDIT_MY_BET: {}, 8854 BET_BUILDER: {} 8855 }), Uc = () => ({ 8856 SINGLE: [], 8857 COMBO: [], 8858 SYSTEM: [], 8859 TEASER: [], 8860 EDIT_MY_BET: [], 8861 BET_BUILDER: [] 8862 }), ef = "betslip-validation-error", qt = (function(e) { 8863 return e[e.Warning = 0] = "Warning", e[e.Error = 1] = "Error", e; 8864 })(qt || {}), Rs = (function(e) { 8865 return e.BetPlacement = "BetPlacement", e.BetSlip = "BetSlip", e; 8866 })(Rs || {}), ma = (function(e) { 8867 return e.Always = "Always", e.Manually = "Manually", e; 8868 })(ma || {}), Xt = class { 8869 constructor() { 8870 this.icon = qt.Error, this.priority = 0, this.origin = Rs.BetSlip, this.cleanStrategy = ma.Always, this.hasClientValidation = !1, this.isHidden = !1; 8871 } 8872 equals(e) { 8873 return !1; 8874 } 8875 copy() { 8876 return Object.assign(Object.create(Object.getPrototypeOf(this)), this); 8877 } 8878 }, vn = class extends Xt {}, hi = (function(e) { 8879 return e.NotLoggedInError = "NotLoggedInError", e.UndoCashOutFailedError = "UndoCashOutFailedError", e.RewardTokensMaxStakeError = "RewardTokensMaxStakeError", e.RewardTokensMinLegsError = "RewardTokensMinLegsError", e.RewardTokensTradingEntityMismatchError = "RewardTokensTradingEntityMismatchError", e.RewardTokensForbiddenError = "RewardTokensForbiddenError", e.RewardTokensGameTypeError = "RewardTokensGameTypeError", e.RewardTokensSlipTypeError = "RewardTokensSlipTypeError", e.RewardTokensMinStakeError = "RewardTokensMinStakeError", e.RewardTokensTotalOddsError = "RewardTokensTotalOddsError", e.RewardTokensSelectionLevelOddsError = "RewardTokensSelectionLevelOddsError", e.RewardTokensBetBuilderError = "RewardTokensBetBuilderError", e.BetBuilderMaxSelectionsPerPickError = "BetBuilderMaxSelectionsPerPickError", e.RewardTokensMaxTotalOddsError = "RewardTokensMaxTotalOddsError", e.RewardTokensSelectionMaxOddsError = "RewardTokensSelectionMaxOddsError", e; 8880 })(hi || {}), Ls = class extends vn { 8881 constructor(e) { 8882 super(), this.pickId = e; 8883 } 8884 }, Wc = class extends Xt { 8885 constructor(e) { 8886 super(), this.icon = qt.Error, this.type = hi.RewardTokensBetBuilderError, this.hasClientValidation = !0, this.token = e; 8887 } 8888 }, jc = class extends Xt { 8889 constructor(e) { 8890 super(), this.icon = qt.Error, this.type = hi.RewardTokensMinStakeError, this.hasClientValidation = !0, this.minimumStake = e; 8891 } 8892 }, tf = class extends Xt { 8893 constructor(e) { 8894 super(), this.icon = qt.Error, this.type = hi.RewardTokensSelectionLevelOddsError, this.hasClientValidation = !0, this.selectionLevelMinimumOdds = e; 8895 } 8896 }, rf = class extends Xt { 8897 constructor(e) { 8898 super(), this.icon = qt.Error, this.type = hi.RewardTokensTotalOddsError, this.hasClientValidation = !0, this.minimumOdds = e; 8899 } 8900 }, sf = (function(e) { 8901 return e[e.MinComboBetsCount = 0] = "MinComboBetsCount", e[e.MinSystemBetsCount = 1] = "MinSystemBetsCount", e[e.MinTeaserBetsCount = 2] = "MinTeaserBetsCount", e[e.PicksMaximum = 3] = "PicksMaximum", e[e.SelectMaxComboBets = 4] = "SelectMaxComboBets", e[e.SelectMaxRaceComboBets = 5] = "SelectMaxRaceComboBets", e[e.SelectMaxSystemBets = 6] = "SelectMaxSystemBets", e[e.SelectMinComboBets = 7] = "SelectMinComboBets", e[e.SelectMinSingleBets = 8] = "SelectMinSingleBets", e[e.SelectMinSystemBets = 9] = "SelectMinSystemBets", e[e.SelectMaxSystemBetsBanker = 10] = "SelectMaxSystemBetsBanker", e[e.SelectMinSystemBetsBanker = 11] = "SelectMinSystemBetsBanker", e[e.SelectMinTeaserBets = 12] = "SelectMinTeaserBets", e[e.SelectMaxTeaserBets = 13] = "SelectMaxTeaserBets", e[e.ForecastSystemBet = 14] = "ForecastSystemBet", e; 8902 })(sf || {}), ls = class extends Xt { 8903 constructor() { 8904 super(), this.hasClientValidation = !0; 8905 } 8906 }, cs = class extends Or(Ls) {}, U0 = class extends ls { 8907 constructor() { 8908 super(); 8909 } 8910 }, W0 = class extends ls { 8911 constructor() { 8912 super(), this.type = hi.BetBuilderMaxSelectionsPerPickError; 8913 } 8914 }, j0 = class extends cs {}, Y0 = class extends cs {}, K0 = class extends cs {}, nf = class extends cs {}, af = class extends cs { 8915 constructor(e) { 8916 super(e), this.isHidden = !0; 8917 } 8918 }, of = class extends ls { 8919 constructor(e, i, t, r = !1, s = !1) { 8920 super(), this.legIds = e, this.invalidPickIds = i, this.uncombinableLegCount = t, this.hasInsufficientLegs = r, this.isSeparatedLeg = s; 8921 } 8922 }, q0 = class extends cs {}, lf = class extends ls { 8923 constructor(e, i, t, r = !1) { 8924 super(), this.legIds = e, this.invalidPickIds = i, this.redundantLegCount = t, this.hasInsufficientLegs = r; 8925 } 8926 }, Yc = class extends Ls { 8927 constructor(e, i) { 8928 super(e), this.pickId = e, this.legIds = i, this.hasClientValidation = !0, this.isHidden = !0; 8929 } 8930 }, To = class extends Ls { 8931 constructor(e, i) { 8932 super(e), this.pickId = e, this.legIds = i, this.hasClientValidation = !0; 8933 } 8934 }, cf = class extends ls { 8935 constructor(e) { 8936 super(), this.invalidPickIds = e, this.isHidden = !0; 8937 } 8938 }, df = class extends ls { 8939 constructor(e) { 8940 super(), this.invalidPickIds = e; 8941 } 8942 }, uf = class extends vn { 8943 constructor(e, i) { 8944 super(), this.expectedBetCount = e === void 0 ? null : e, this.receivedBetCount = i === void 0 ? null : i, this.hasClientValidation = !0, this.type = "IncorrectOptionCount"; 8945 } 8946 }, pf = class extends Xt { 8947 constructor() { 8948 super(), this.hasClientValidation = !0; 8949 } 8950 }, Kc = class extends vn { 8951 constructor() { 8952 super(), this.type = "UserError"; 8953 } 8954 }, hf = class extends Kc {}, mf = class extends Or(Xt) { 8955 constructor() { 8956 super(), this.icon = qt.Error, this.type = hi.RewardTokensForbiddenError, this.hasClientValidation = !0; 8957 } 8958 }, ff = class extends Or(Xt) { 8959 constructor(e) { 8960 super(), this.icon = qt.Error, this.type = hi.RewardTokensGameTypeError, this.hasClientValidation = !0, this.gameType = e; 8961 } 8962 }, qc = class extends Or(Xt) { 8963 constructor(e) { 8964 super(), this.icon = qt.Error, this.type = hi.RewardTokensMaxStakeError, this.hasClientValidation = !0, this.maximumStake = e; 8965 } 8966 }, Xc = class extends Xt { 8967 constructor(e) { 8968 super(), this.icon = qt.Error, this.type = hi.RewardTokensMaxTotalOddsError, this.hasClientValidation = !0, this.maxOdds = e; 8969 } 8970 }, gf = class extends Or(Xt) { 8971 constructor(e) { 8972 super(), this.icon = qt.Error, this.type = hi.RewardTokensMinLegsError, this.hasClientValidation = !0, this.minimumLegs = e; 8973 } 8974 }, vf = class extends Xt { 8975 constructor(e) { 8976 super(), this.icon = qt.Error, this.type = hi.RewardTokensSelectionMaxOddsError, this.hasClientValidation = !0, this.selectionLevelMaxOdds = e; 8977 } 8978 }, Jc = class extends Or(Xt) { 8979 constructor(e) { 8980 super(), this.icon = qt.Error, this.type = hi.RewardTokensSlipTypeError, this.hasClientValidation = !0, this.slipType = e; 8981 } 8982 }, Sf = class extends vn { 8983 constructor() { 8984 super(), this.cleanStrategy = ma.Manually, this.type = "TechnicalError"; 8985 } 8986 }, X0 = class extends Or(uf) { 8987 constructor(e, i, t) { 8988 super(e, i), this.errorDetails = t; 8989 } 8990 }, bf = class extends hf { 8991 constructor(e, i) { 8992 super(), this.userMoney = e, this.stake = i, this.icon = qt.Warning, this.priority = 1e3, this.type = "InsufficientMoney"; 8993 } 8994 }, yf = class extends Or(Xt) { 8995 constructor() { 8996 super(), this.type = "NoBetbuilderSystemAllowed"; 8997 } 8998 }, Qc = class extends Or(Ls) {}, wf = class extends Kc { 8999 constructor(e, i) { 9000 super(), this.comboWin = e ?? null, this.maxComboWin = i ?? null, this.icon = qt.Warning, this.type = "OverallMaxWinPerUserExceeded"; 9001 } 9002 }, Zc = "system__", ed = `${Ms.BetBuilder}__`, Ef = `${Ms.Single}__`, Cf = (e, i) => { 9003 let t = [], r = []; 9004 for (let n of e) n.hasClientValidation ? r.push(n) : t.push(n); 9005 let s = !1; 9006 for (let n of i) { 9007 let a = r.find((o) => o.equals(n)); 9008 if (a) { 9009 let o = a.copy(); 9010 o.origin = Rs.BetSlip, t.push(o); 9011 } else s = !0, t.push(n); 9012 } 9013 return t.length === e.length && !s ? e : t; 9014 }, td = function(e) { 9015 return Object.entries(e).map(([i, t]) => [i, t]); 9016 }, Nf = function(e) { 9017 return Object.entries(e).map(([i, t]) => [i, t]); 9018 }, J0 = (e, i, t, r, s) => { 9019 let n = e.betslipErrors.filter(i), a = Hc(), o = Uc(), l = {}; 9020 for (let [c, d] of td(e.pickErrors)) { 9021 let u = Object.keys(d); 9022 for (let h of u) a[c][h] = d[h].filter(s); 9023 } 9024 for (let [c, d] of Nf(e.betslipTypeErrors)) o[c] = d.filter(t); 9025 for (let [c, d] of Object.entries(e.slipErrors)) l[c] = d.filter(r); 9026 return { 9027 pickErrors: a, 9028 betslipTypeErrors: o, 9029 betslipErrors: n, 9030 slipErrors: l 9031 }; 9032 }, Q0 = (e, i, t, r, s) => { 9033 let n = e.betslipErrors.map(i), a = n.some(([u, h]) => h), o = n.map(([u]) => u), l = Hc(), c = Uc(), d = {}; 9034 for (let [u, h] of td(e.pickErrors)) { 9035 let g = Object.keys(h); 9036 for (let p of g) { 9037 let m = h[p].map(s); 9038 a = a || m.some(([S, b]) => b), l[u][p] = m.map(([S]) => S); 9039 } 9040 } 9041 for (let [u, h] of Nf(e.betslipTypeErrors)) { 9042 let g = h.map(t); 9043 a = a || g.some(([p, m]) => m), c[u] = g.map(([p]) => p); 9044 } 9045 for (let [u, h] of Object.entries(e.slipErrors)) { 9046 let g = h.map(r); 9047 a = a || g.some(([p, m]) => m), d[u] = g.map(([p]) => p); 9048 } 9049 return { 9050 pickErrors: l, 9051 betslipTypeErrors: c, 9052 betslipErrors: o, 9053 slipErrors: d, 9054 isModified: a 9055 }; 9056 }, Z0 = function(e) { 9057 let i = Object.values(e).flatMap((t) => Object.values(t).flatMap((r) => r.map((s) => s.type))); 9058 return new Set(i); 9059 }, eC = function(e) { 9060 return e.betslipErrors.length > 0 || Object.values(e.slipErrors).some((i) => i.length > 0) || Object.values(e.betslipTypeErrors).some((i) => i.length > 0) || Object.values(e.pickErrors).some((i) => Object.values(i).some((t) => t.length > 0)); 9061 }, tC = function(e) { 9062 return Object.values(e).reduce((i, t) => { 9063 let r = Object.entries(t); 9064 for (let [s, n] of r) i[s] = i[s] ? [...i[s], ...n] : [...n]; 9065 return i; 9066 }, {}); 9067 }, iC = ["UnderMinimumOddsBoostReward", "UnderMinimumRiskFreeCompensation"], id = function(e) { 9068 return e.type === "OptionInvisible" || e.type === "ChangedOptionStatus" || e.type === "CutOffDateReached" || e.type === "InvalidOption" || e.type === "MissingInfo" || e.type === "NotPlayable" || e.type === "OpenDateNotReached" || e.type === "OptionError"; 9069 }, rd = function(e) { 9070 return e.type === "CutOffDateReached" || e.type === "OpenDateNotReached"; 9071 }, sd = function(e) { 9072 return e.type === "OddsChanged"; 9073 }, nd = function(e) { 9074 return id(e) || rd(e) || sd(e) || um(e) || ad(e); 9075 }, ad = function(e) { 9076 return e instanceof Qc; 9077 }, rC = function(e) { 9078 return id(e) || rd(e) || um(e); 9079 }, sC = function(e) { 9080 return !(nd(e) || Sn(e)); 9081 }, od = function(e) { 9082 return e.type === "InsufficientMoney"; 9083 }, nC = function(e) { 9084 return "userHasBeenNotified" in e; 9085 }, aC = function(e) { 9086 return Sn(e) || e.type === "BlockedAsInsider" || e.type === "IncorrectOptionCount" || e.type === "IncorrectBankerCount" || e.type === "UnderMinimumCompulsoryOdds" ||
9086kf(e); 9087 }, Tf = (e) => e.type === "StakeBelowMinimumLimit", oC = (e) => e.type === "UnderMinimumWinnings", kf = (e) => e.type === "NotWholeStake", lC = function(e) { 9088 return e.type === "OddsChanged"; 9089 }, cC = function(e) { 9090 return e instanceof yf; 9091 }, Sn = function(e) { 9092 return e.type === "ComboPrevention" || e.type === "MinimumCombo"; 9093 }, ld = function(e) { 9094 return e.type === "StakeBelowMinimumLimit" || e.type === "UnderMinimumWinnings" || e.type === "OverMaxBetLimit" || e.type === "NotWholeStake" || e.type === "InsufficientMoney"; 9095 }, dC = (e) => e.type === "TechnicalError", uC = (e) => e instanceof Jc, pC = (e) => e instanceof Xc, hC = (e) => e instanceof qc, mC = (e) => e instanceof jc, fC = (e) => e instanceof Wc, gC = (e) => [ 9096 Jc, 9097 qc, 9098 jc, 9099 gf, 9100 tf, 9101 ff, 9102 mf, 9103 rf, 9104 Wc, 9105 Xc, 9106 vf 9107 ].some((i) => e instanceof i), vC = (e, i) => { 9108 if (e instanceof wf) switch (i) { 9109 case "Any": return !0; 9110 case "WithHint": return !!e.newStakeHint && e.newStakeHint > 0; 9111 case "WithoutHint": return e.newStakeHint === 0; 9112 } 9113 return !1; 9114 }, SC = (e, i) => e.betslipErrors.some(ko) || e.betslipTypeErrors[i].some(ko), bC = (e, i, t) => So(i, e.slipErrors, t).some(ko), yC = (e, i) => (e.slipErrors[i] ?? []).some(ko), xf = (e) => pm(e) && !e.hasInsufficientLegs, If = (e) => Ic(e) && e.isSeparatedLeg && !e.hasInsufficientLegs, ko = (e) => !(e.type === "OverAskOfferError" && KL(e)) && !ld(e) && e.type !== "NoMultiSinglesAllowed" && !(e instanceof vn && xc(e)) && !(e instanceof Sf) && !xf(e) && !If(e), wC = (e) => e.some(od), EC = (e) => Object.entries(e).flatMap(([i, t]) => t.filter((r) => Tf(r)).map((r) => ({ 9115 error: r, 9116 slipId: i 9117 }))), CC = (e, i) => e.some((t) => i.equals(t)) ? e : e.filter((t) => t.constructor !== i.constructor).concat(i), NC = [ 9118 "InvalidFreeBet", 9119 "FreeBetExpired", 9120 "FreeBetNotActive" 9121 ], Of = (e) => e instanceof bf, Pf = (e) => e.rewardTargetType === "WelcomeOffer", xo = (e, i) => e.priority - i.priority, Af = k(Gc, (e) => e.picks), TC = k(Af, ni, (e, i) => i.filter((t) => !!e[t.id.toString()])), kC = (e, i) => k(pt, (t) => { 9122 switch (i) { 9123 case G.Combo: return t.comboBet.actualStake; 9124 case G.Teaser: return t.teaserBet.actualStake; 9125 case G.Single: { 9126 let r = Object.entries(t.singleBet.picks).find(([n]) => lm(n) === e); 9127 if (!r) return null; 9128 let [, s] = r; 9129 return s.actualStake ?? null; 9130 } 9131 case G.System: { 9132 let r = Object.keys(t.systemBet.linearTypeStakes).find((s) => am(s) === e); 9133 return r ? t.systemBet.linearTypeStakes[r]?.actualStake ?? null : null; 9134 } 9135 case G.EditBet: return t.editBet.addedStake.toString(); 9136 case G.BetBuilder: { 9137 let r = Object.entries(t.betBuilder.picks).find(([n]) => cm(n) === e); 9138 if (!r) return null; 9139 let [, s] = r; 9140 return s.actualStake ?? null; 9141 } 9142 } 9143 }), Bs = _s(ef), ds = k(Bs, (e) => e.betslipErrors), us = k(Bs, (e) => e.pickErrors), ps = k(Bs, (e) => e.slipErrors), Io = k(Bs, (e) => e.betslipTypeErrors), $f = (e) => k(ps, (i) => i[e]), Oo = (e, i = !1) => k(ps, pt, (t, r) => So(e, t, r, i)), _f = (e) => k(ps, pt, (i, t) => { 9144 let r = t.base.currentSelectedType; 9145 return r ? So(r, i, t, e) : []; 9146 }), _f(!1), xC = (e) => k(ps, (i) => i[yE(e)] ?? []), Mf = (e) => k(ps, (i) => i[wE(e)] ?? []), IC = (e) => k(Mf(e), (i) => i.some((t) => (pm(t) || Ic(t) && t.isSeparatedLeg) && t.hasInsufficientLegs)), OC = k(ps, (e) => Object.values(e).some((i) => i.length > 0)), fa = (e) => k(Io, (i) => i[e] ?? []), Rf = k(Io, gn, (e, i) => i ? e[i] : []), PC = k(Io, (e) => Object.values(e).some((i) => i.length > 0)), AC = (e) => k(ds, fa(e), Oo(e), (i, t, r) => [ 9147 ...i, 9148 ...t, 9149 ...r 9150 ]), Lf = (e) => k(ds, Rf, _f(e), (i, t, r) => [ 9151 ...i, 9152 ...t, 9153 ...r 9154 ]), ga = Lf(!1), $C = Lf(!0), _C = k(ds, Oo(G.BetBuilder), fa(G.BetBuilder), (e, i, t) => [ 9155 ...e, 9156 ...i, 9157 ...t 9158 ]), MC = k(ds, (e) => e.length > 0), cd = (e) => k(Bs, (i) => i.pickErrors[e] ?? {}), Bf = (e) => k(cd(e), (i) => Object.values(i).flatMap((t) => t) ?? []), Df = k(us, (e) => Object.values(e).flatMap((i) => Object.values(i).flatMap((t) => t))), RC = k(Bs, (e) => e.pickErrors), dd = (e, i) => k(us, (t) => t[i][e.toString()] ?? []), LC = (e) => k(us, (i) => { 9159 let t = e.toString(); 9160 return Object.values(i).flatMap((r) => r[t] ?? []); 9161 }), Po = k(us, gn, (e, i) => i ? e[i] : {}), BC = k(Po, (e) => Object.values(e).flatMap((i) => i)), DC = k(Po, (e) => Object.values(e).flatMap((i) => i)), FC = k(us, (e) => Object.values(e).some((i) => Object.values(i).some((t) => t.length > 0))), zC = k(ni, Po, (e, i) => e.map((t) => ({ 9162 pick: t, 9163 errors: i[t.id.toString()] || [] 9164 }))), GC = k(fn, us, (e, i) => e.map((t) => ({ 9165 pick: t, 9166 errors: Object.values(i).flatMap((r) => r[t.id.toString()] ?? []) 9167 }))), VC = k(Bc, Dc, cd(G.EditBet), (e, i, t) => [...e, ...i].map((r) => ({ 9168 pick: r, 9169 errors: t[r.id.toString()] || [] 9170 }))), HC = k(AC(G.Single), (e) => e), UC = k(ga, BC, (e, i) => [...e, ...i]), WC = k(ds, (e) => e.find(Of)), jC = k(ga, (e) => e.filter((i) => !i.isHidden).sort((i, t) => t.priority - i.priority)), YC = k(DC, (e) => e.some(Sn)), ud = (e) => k(Bf(e), (i) => i.some(Sn)), KC = k(ds, (e) => e.some(od)), qC = k(k(MC, PC, OC, (e, i, t) => e || i || t), FC, (e, i) => e || i), Ff = k(ds, (e) => e.some((i) => i instanceof pf)), XC = k(ga, Hm, f0, (e, i, t) => i && !t ? e.find((r) => r.type === "InsufficientMoney") : e.find(ld)), k(ga, gn, (e, i) => eB(e, i)), JC = k(Df, ni, pt, (e, i, t) => tB(i, t, e)), QC = k(Df, (e) => e.some((i) => nd(i) && i.origin === Rs.BetPlacement)), ZC = (e, i) => k(dd(e, i), (t) => t.filter((r) => kE(r))), k(ps, pt, (e, i) => { 9171 let t = i.base.currentSelectedType; 9172 return !t || t === G.Single ? [] : So(t, e, i); 9173 }), eN = (e) => k(dd(e, G.Single), xC(e), (i, t) => [...i, ...t]), tN = (e) => k(eN(e), Pm(e), (i, t) => ({ 9174 errors: i, 9175 stake: t 9176 })), iN = (e) => k(ZC(e, G.BetBuilder), Mf(e), (i, t) => [...i, ...t]), rN = (e, i) => k($f(e), kC(e, i), ud(i), (t, r, s) => ({ 9177 errors: s ? [] : t, 9178 stake: r 9179 })), zf = (e) => k(Bf(e), (i) => i.filter(kE)), Gf = (e) => k(fa(e), Oo(e), zf(e), (i, t, r) => [ 9180 ...i, 9181 ...t, 9182 ...r 9183 ]), sN = k(fa(G.System), zf(G.System), (e, i) => [...e, ...i]), nN = (e) => k(sN, Gf(e), (i, t) => e === G.System ? i : t), aN = k(Gf(G.Combo), (e) => e), oN = (e) => k(us, Dm, (i, t) => { 9184 let r = e.toString(), s = J(C({}, i), { SYSTEM: t ? i.SYSTEM : {} }); 9185 return Object.values(s).flatMap((n) => n[r] ?? []); 9186 }), hs = _s(Zm), pd = k(hs, (e) => e.onboardingState), lN = (e) => k(ni, pt, (i, t) => e ? gm(t, e, i, { isSelected: !0 }) : []), $r = k(hs, (e) => e.tokens), bn = k($r, (e) => Object.values(e)), Ds = k(hs, (e) => e.eligibilityState), Vf = k(ni, (e) => e.some((i) => i.isNewCustomerOfferPick)), yn = k(Ds, $r, pt, (e, i, t) => ({ 9187 eligibilityState: e, 9188 tokens: i, 9189 types: t 9190 })), cN = k(Ds, $r, (e, i) => LB(e, i)), k(bn, (e) => Pc(e)), Hf = (e) => k(yn, ({ tokens: i, types: t }) => yo(e, i, t)), dN = (e) => k(yn, ({ tokens: i, types: t }) => UB(e, i, t)), Uf = (e) => k(yn, ({ tokens: i, eligibilityState: t, types: r }) => HE(e, t, i, r)), hd = (e) => k(Uf(e), ([i, t]) => t?.isEligible ? i : null), uN = (e) => k(hd(e), (i) => ua(i) ? i : null), pN = (e) => k(hd(e), (i) => vm(i) ? i : null), md = k(yn, ({ tokens: e, types: i }) => WE(e, i)), hN = k(yn, ({ tokens: e, types: i }) => UE(e, i)), fd = (e) => k(Ds, (i) => Sm(e, i)), Wf = (e) => k($r, fd(e), (i, t) => ({ 9191 tokens: i, 9192 eligibilityState: t 9193 })), mN = (e) => k(Wf(e), ({ tokens: i, eligibilityState: t }) => (t ?? []).filter((r) => r.isEligible && r.softCriteriasValidity[ai.MinimumLegs] && r.softCriteriasValidity[ai.MaxOdds]).map((r) => i[r.tokenId])), fN = (e) => k($r, pt, (i, t) => yo(e, i, t)), gN = (e) => k(md, Hf(e), fd(e), (i, t, r) => r.some((s) => t?.userTokenId === s.tokenId || s.isEligible && i.every((n) => n.userTokenId !== s.tokenId))), vN = k(Ar, bn, (e, i) => { 9194 let t = bo(i); 9195 if (!t) return; 9196 let r = Object.entries(e).filter(([, s]) => !s.isSelected && s.rewardTokenId === t.userTokenId).map(([s]) => s); 9197 return r.length > 0 ? { pickId: r[0] } : void 0; 9198 }), SN = k(Eo, bn, Ds, md, Ff, (e, i, t, r, s) => { 9199 let n = bo(i), a = r.some((l) => l.rewardTargetType === "WelcomeOffer"); 9200 if (!n || a || s) return; 9201 let o = Object.entries(t.singleBet).filter(([l, c]) => e[l] && !e[l].rewardTokenId && c.some((d) => VE(d, n.userTokenId))).map(([l]) => l); 9202 return o.length > 0 ? { 9203 pickId: o[0], 9204 tokenId: n.userTokenId 9205 } : void 0; 9206 }), bN = k(Ar, (e) => { 9207 let i = Object.entries(e).filter(([, t]) => t.isSelected).map(([t]) => t); 9208 return i.length > 0 ? { 9209 betslipType: G.Single, 9210 pickId: ta(i[0]) 9211 } : void 0; 9212 }), jf = k(ni, pt, (e, { base: i, singleBet: t, comboBet: r, systemBet: s }) => { 9213 if (!e.some((n) => Ni.isPick(n) || un.isPick(n))) return !1; 9214 switch (i.currentSelectedType) { 9215 case G.Single: return e.filter((n) => Ni.isPick(n) || un.isPick(n)).some((n) => { 9216 let a = t.picks[n.id.toString()]; 9217 return !!a && a.isEachWay && a.isSelected; 9218 }); 9219 case G.Combo: return r.isEachWay; 9220 case G.System: return s.isEachWay; 9221 default: return !1; 9222 } 9223 }), Yf = k(k(Ds, k(bN, (e) => e), (e, i) => i ? Sm(i, e) : []), $r, (e, i) => e.filter((t) => t.isEligible).map((t) => i[t.tokenId])), yN = k(bn, (e) => bo(e)), gd = k(jf, Vf, Yf, (e, i, t) => !e && !i && t.length > 0), k(pd, Yf, gd, yN, (e, i, t, r) => ({ 9224 isVisible: e.visible && t && !r, 9225 tokens: i 9226 })), wN = k(pd, gd, (e, i) => ({ acquisitionHidden: e.acquisitionHidden && i })), EN = (e) => k(fN(e), wN, (i, t) => i?.rewardTargetType === "WelcomeOffer" && !t.acquisitionHidden), Ao = k(hs, (e) => e.betstationTokens), vd = k(Ao, (e) => e.edsState), CN = k(vd, (e) => e.selectedTokenIds), Kf = k(Ao, (e) => e.bogTokenState), k(Kf, $r, (e, i) =>
9226 sD(e, i)), NN = k(Kf, (e) => !!e.selectedTokenId), TN = k(hs, (e) => iD(e)), kN = k(Ao, (e) => !!e.betStationFreeBet.selectedTokenId), xN = k(vd, (e) => e.selectedTokenIds.length > 0), IN = k(Ao, $r, (e, i) => e0(e, i)), ON = (e) => k(ud(e.betslipType), (i) => i && e.betslipType !== G.Single), k(gn, Ar, (e, i) => { 9227 if (e !== G.Single) return; 9228 let t = Object.entries(i).filter(([r, s]) => s.isSelected).filter(([, r]) => !!r.rewardTokenId); 9229 return t.length === 1 ? { 9230 betslipType: G.Single, 9231 pickId: ta(t[0][0]) 9232 } : void 0; 9233 }), k(hs, (e) => e.tokenRecoveryState), PN = k(Ds, gn, g0, (e, i, t) => { 9234 switch (i) { 9235 case G.Single: return t ? e.singleBet[t] ?? [] : []; 9236 case G.Combo: return e.comboBet; 9237 case G.Teaser: return e.teaserBet; 9238 default: return []; 9239 } 9240 }), AN = k(pt, bn, (e, i) => { 9241 let t = bo(i); 9242 if (!t) return; 9243 let r = jE(t.userTokenId, e); 9244 return C({ userTokenId: t.userTokenId }, r); 9245 }), $N = (e) => k(ni, pt, (i, { singleBet: t, comboBet: r, systemBet: s }) => { 9246 if (!i.some(Ni.isPick)) return !1; 9247 switch (e.betslipType) { 9248 case G.Single: 9249 let n = e.pickId?.toString(); 9250 if (!n) return !1; 9251 let a = i.find((l) => l.id.toString() === n), o = t.picks[n]; 9252 return !a || !o ? !1 : a && o && Ni.isPick(a) && o.isEachWay && o.isSelected; 9253 case G.Combo: return r.isEachWay; 9254 case G.System: return s.isEachWay; 9255 default: return !1; 9256 } 9257 }), qf = (e) => k($N(e), Vf, gN(e), ON(e), (i, t, r, s) => r && !t && !i && !s), _N = (e) => k(qf(e), Uf(e), EN(e), (i, [t, r], s) => ({ 9258 isVisible: i, 9259 selectedToken: t, 9260 isTokenInvalid: !r || !!r.invalidHardCriteria || !!Object.values(r.softCriteriasValidity).some((n) => n === !1), 9261 hasAcquisitionOnboarding: s 9262 })), MN = k(hs, (e) => e.deselectedToken); 9263 })))(); 9264} 9265function oD(e, i) { 9266 return i.type === e.type; 9267} 9268var RN, nt, $o, LN; 9269function bd() { 9270 return (bd = Z((() => { 9271 de(), os(), RN = { type: "NOOP_ACTION" }, nt = () => ut(), $o = () => (e = {}) => e, LN = function(e) { 9272 let i; 9273 return e.pipe(Ot(1)).subscribe((t) => i = t), i; 9274 }; 9275 })))(); 9276} 9277var E, BN; 9278function DN() { 9279 return (DN = Z((() => { 9280 os(), Sd(), bd(), E = class {}, E.ACTION_SCHEMA = `${wo.ACTION_SCHEMA}/reward-tokens`, E.SET_TOKENS = `${E.ACTION_SCHEMA}/SET_TOKENS`, E.SET_TOKEN = `${E.ACTION_SCHEMA}/SET_TOKEN`, E.ADD_TOKENS = `${E.ACTION_SCHEMA}/ADD_TOKENS`, E.REMOVE_TOKENS_BY_ID = `${E.ACTION_SCHEMA}/REMOVE_TOKENS_BY_ID`, E.REMOVE_SELECTED_TOKENS = `${E.ACTION_SCHEMA}/REMOVE_SELECTED_TOKENS`, E.REMOVE_TOKENS_OF_TYPE = `${E.ACTION_SCHEMA}/REMOVE_TOKENS_OF_TYPE`, E.SET_COMBO_BET_ELIGIBILITY = `${E.ACTION_SCHEMA}/SET_COMBO_BET_ELIGIBILITY`, E.CHECK_ACCA_BOOST_ELIGIBILITY = `${E.ACTION_SCHEMA}/CHECK_ACCA_BOOST_ELIGIBILITY`, E.CHECK_ACCA_INSURANCE_ELIGIBILITY = `${E.ACTION_SCHEMA}/CHECK_ACCA_INSURANCE_ELIGIBILITY`, E.SET_TEASER_BET_ELIGIBILITY = `${E.ACTION_SCHEMA}/SET_TEASER_BET_ELIGIBILITY`, E.SET_SINGLE_BET_ELIGIBILITIES = `${E.ACTION_SCHEMA}/SET_SINGLE_BET_ELIGIBILITIES`, E.SET_BET_BETBUILDER_ELIGIBILITIES = `${E.ACTION_SCHEMA}/SET_BET_BETBUILDER_ELIGIBILITIES`, E.NOTIFY_ELIGIBILITY_UPDATED = `${E.ACTION_SCHEMA}/NOTIFY_ELIGIBILITY_UPDATED`, E.SET_BOG_ELIGIBILITY = `${E.ACTION_SCHEMA}/SET_BOG_ELIGIBILITY`, E.CLEAR_BOG_TOKENS = `${E.ACTION_SCHEMA}/CLEAR_BOG_TOKENS`, E.CLEAR_EDS_TOKENS = `${E.ACTION_SCHEMA}/CLEAR_EDS_TOKENS`, E.CLEAR_ACCA_BOOST_TOKENS = `${E.ACTION_SCHEMA}/CLEAR_ACCA_BOOST_TOKENS`, E.SELECT_BOG_TOKEN = `${E.ACTION_SCHEMA}/SELECT_BOG_TOKEN`, E.SET_BETSTATION_FREEBET_ELIGIBILITY = `${E.ACTION_SCHEMA}/SET_BETSTATION_FREEBET_ELIGIBILITY`, E.SELECT_BETSTATION_FREEBET_TOKEN = `${E.ACTION_SCHEMA}/SELECT_BETSTATION_FREEBET_TOKEN`, E.CHECK_ELIGIBILITY = `${E.ACTION_SCHEMA}/CHECK_ELIGIBILITY`, E.SET_EDS_ELIGIBILITY = `${E.ACTION_SCHEMA}/SET_EDS_ELIGIBILITY`, E.SELECT_EDS_TOKENS = `${E.ACTION_SCHEMA}/SELECT_EDS_TOKENS`, E.SELECT_TOKEN = `${E.ACTION_SCHEMA}/SELECT_TOKEN`, E.TOGGLE_TOKEN = `${E.ACTION_SCHEMA}/TOGGLE_TOKEN`, E.SELECT_SINGLE_TOKEN = `${E.ACTION_SCHEMA}/SELECT_SINGLE_TOKEN`, E.DESELECT_TOKEN = `${E.ACTION_SCHEMA}/DESELECT_TOKEN`, E.SET_DESELECTED_TOKEN = `${E.ACTION_SCHEMA}/SET_DESELECTED_TOKEN`, E.DESELECT_ALL_TOKEN = `${E.ACTION_SCHEMA}/DESELECT_ALL_TOKEN`, E.DESELECT_ACCA_BOOST_TOKEN = `${E.ACTION_SCHEMA}/DESELECT_ACCA_BOOST_TOKEN`, E.DESELECT_EDS_TOKENS = `${E.ACTION_SCHEMA}/DESELECT_EDS_TOKENS`, E.OPEN_DIALOG = `${E.ACTION_SCHEMA}/OPEN_DIALOG`, E.CLOSE_DIALOG = `${E.ACTION_SCHEMA}/CLOSE_DIALOG`, E.CLEAR_STATE = `${E.ACTION_SCHEMA}/CLEAR_STATE`, E.SET_BETSTATION_FREEBET_TOKEN = `${E.ACTION_SCHEMA}/SET_BETSTATION_FREEBET_TOKEN`, E.REMOVE_BETSTATION_FREEBET_TOKEN = `${E.ACTION_SCHEMA}/REMOVE_BETSTATION_FREEBET_TOKEN`, E.SHOW_ONBOARDING = `${E.ACTION_SCHEMA}
9280/SHOW_ONBOARDING`, E.HIDE_ONBOARDING = `${E.ACTION_SCHEMA}/HIDE_ONBOARDING`, E.HIDE_ACQUISITION_ONBOARDING = `${E.ACTION_SCHEMA}/HIDE_ACQUISITION_ONBOARDING`, E.SHOW_OVERLAY_INFO = `${E.ACTION_SCHEMA}/SHOW_OVERLAY_INFO`, E.OVERLAY_TAB_CLICKED = `${E.ACTION_SCHEMA}/OVERLAY_INFO_TAB_CLICKED`, E.HIDE_OVERLAY_INFO = `${E.ACTION_SCHEMA}/HIDE_OVERLAY_INFO`, E.BANNER_CLICK = `${E.ACTION_SCHEMA}/BANNER_CLICK`, E.REFRESH = `${E.ACTION_SCHEMA}/REFRESH`, E.REFRESH_POST_PLACEMENT = `${E.ACTION_SCHEMA}/REFRESH_POST_PLACEMENT`, E.BET_STATION_CLEAR_STORAGE = `${E.ACTION_SCHEMA}/BET_STATION_CLEAR_STORAGE`, E.DESELECT_NON_REUSABLE_TOKENS = `${E.ACTION_SCHEMA}/DESELECT_NON_REUSABLE_TOKENS`, E.DESELECT_TOKEN_FOR_CONTEXT = `${E.ACTION_SCHEMA}/DESELECT_TOKEN_FOR_CONTEXT`, E.DESELECT_TOKENS_FROM_TAB_SWITCH = `${E.ACTION_SCHEMA}/DESELECT_TOKENS_FROM_TAB_SWITCH`, E.STORE_RECOVERABLE_TOKENS = `${E.ACTION_SCHEMA}/STORE_RECOVERABLE_TOKENS`, E.RECOVER_TOKEN = `${E.ACTION_SCHEMA}/RECOVER_TOKEN`, E.REMOVE_RECOVERABLE_TOKEN_FOR_CONTEXT = `${E.ACTION_SCHEMA}/REMOVE_RECOVERABLE_TOKEN_FOR_CONTEXT`, E.CLEAR_RECOVERABLE_TOKENS = `${E.ACTION_SCHEMA}/CLEAR_RECOVERABLE_TOKENS`, E.CHECK_HAS_ACQUISITION_REWARD_TOKEN = `${E.ACTION_SCHEMA}/CHECK_HAS_ACQUISITION_REWARD_TOKEN`, E.AUTO_APPLY_ACQUISITION_REWARD_TOKEN = `${E.ACTION_SCHEMA}/AUTO_APPLY_ACQUISITION_REWARD_TOKEN`, E.TRIGGER_ACCABOOST_REFRESH = `${E.ACTION_SCHEMA}/TRIGGER_ACCABOOST_REFRESH`, E.TRIGGER_LOYALTY_REFRESH_AFTER_DELAY = `${E.ACTION_SCHEMA}/TRIGGER_LOYALTY_REFRESH_AFTER_DELAY`, E.setTokens = ae(E.SET_TOKENS, nt()), E.setToken = ae(E.SET_TOKEN, nt()), E.addTokens = ae(E.ADD_TOKENS, nt()), E.removeTokensById = ae(E.REMOVE_TOKENS_BY_ID, ut()), E.removeSelectedTokens = ae(E.REMOVE_SELECTED_TOKENS), E.removeTokensByType = ae(E.REMOVE_TOKENS_OF_TYPE, nt()), E.notifyEligibilityUpdated = ae(E.NOTIFY_ELIGIBILITY_UPDATED), E.clearBogTokens = ae(E.CLEAR_BOG_TOKENS), E.clearEdsTokens = ae(E.CLEAR_EDS_TOKENS), E.clearAccaBoostTokens = ae(E.CLEAR_ACCA_BOOST_TOKENS), E.setBogEligibility = ae(E.SET_BOG_ELIGIBILITY, nt()), E.selectBogToken = ae(E.SELECT_BOG_TOKEN, nt()), E.setBetstationFreeBetToken = ae(E.SET_BETSTATION_FREEBET_TOKEN, nt()), E.removeBetstationFreeBetToken = ae(E.REMOVE_BETSTATION_FREEBET_TOKEN), E.setBetStationFreeBetEligibility = ae(E.SET_BETSTATION_FREEBET_ELIGIBILITY, nt()), E.deselectAccaBoostToken = ae(E.DESELECT_ACCA_BOOST_TOKEN), E.deselectEdsTokens = ae(E.DESELECT_EDS_TOKENS), E.selectBetStationFreeBetToken = ae(E.SELECT_BETSTATION_FREEBET_TOKEN, nt()), E.selectEdsTokens = ae(E.SELECT_EDS_TOKENS, nt()), E.setEdsEligibility = ae(E.SET_EDS_ELIGIBILITY, nt()), E.checkEligibility = ae(E.CHECK_ELIGIBILITY), E.setComboBetEligibility = ae(E.SET_COMBO_BET_ELIGIBILITY, nt()), E.checkAccaBoostEligibility = ae(E.CHECK_ACCA_BOOST_ELIGIBILITY), E.checkAccaInsuranceEligibility = ae(E.CHECK_ACCA_INSURANCE_ELIGIBILITY), E.setTeaserBetEligibility = ae(E.SET_TEASER_BET_ELIGIBILITY, nt()), E.setSingleBetEligibilies = ae(E.SET_SINGLE_BET_ELIGIBILITIES, nt()), E.setBetBuilderEligibilities = ae(E.SET_BET_BETBUILDER_ELIGIBILITIES, nt()), E.storeRecoverableTokens = ae(E.STORE_RECOVERABLE_TOKENS, nt()), E.selectToken = ae(E.SELECT_TOKEN, nt()), E.toggleToken = ae(E.TOGGLE_TOKEN, nt()), E.selectSingleToken = ae(E.SELECT_SINGLE_TOKEN, nt()), E.deselectToken = ae(E.DESELECT_TOKEN, nt()), E.setDeselectedToken = ae(E.SET_DESELECTED_TOKEN, nt()), E.deselectTokenForContext = ae(E.DESELECT_TOKEN_FOR_CONTEXT, nt()), E.deselectAllToken = ae(E.DESELECT_ALL_TOKEN, $o()), E.deselectTokensFromTabSwitch = ae(E.DESELECT_TOKENS_FROM_TAB_SWITCH, nt()), E.openDialog = ae(E.OPEN_DIALOG, ut()), E.closeDialog = ae(E.CLOSE_DIALOG, $o()), E.clearState = ae(E.CLEAR_STATE), E.showOnboarding = ae(E.SHOW_ONBOARDING), E.hideOnboarding = ae(E.HIDE_ONBOARDING), E.hideAcquisitionOnboarding = ae(E.HIDE_ACQUISITION_ONBOARDING), E.showOverlayInfo = ae(E.SHOW_OVERLAY_INFO, ut()), E.overlayTabClicked = ae(E.OVERLAY_TAB_CLICKED, nt()), E.hideOverlayInfo = ae(E.HIDE_OVERLAY_INFO, $o()), E.bannerClick = ae(E.BANNER_CLICK, ut()), E.refresh = ae(E.REFRESH), E.refreshPostPlacement = ae(E.REFRESH_POST_PLACEMENT), E.betStationClearStorage = ae(E.BET_STATION_CLEAR_STORAGE), E.deselectNonReusableTokens = ae(E.DESELECT_NON_REUSABLE_TOKENS), E.recoverToken = ae(E.RECOVER_TOKEN, ut()), E.removeRecoverableTokenForContext = ae(E.REMOVE_RECOVERABLE_TOKEN_FOR_CONTEXT, ut()), E.clearRecoverableTokens = ae(E.CLEAR_RECOVERABLE_TOKENS), E.checkHasAcquisitionRewardToken = ae(E.CHECK_HAS_ACQUISITION_REWARD_TOKEN), E.autoApplyAcquisitionRewardToken = ae(E.AUTO_APPLY_ACQUISITION_REWARD_TOKEN), E.triggerAccaBoostRefresh = ae(E.TRIGGER_ACCABOOST_REFRESH), E.triggerLoyaltyRefreshAfterDelay = ae(E.TRIGGER_LOYALTY_REFRESH_AFTER_DELAY), BN = E; 9281 })))(); 9282} 9283var ue, FN; 9284function zN() { 9285 return (zN = Z((() => { 9286 mo(), os(), bd(), ue = class {}, ue.ACTION_SCHEMA = "PICKS", ue.ADD_GROUP_PICK = `${ue.ACTION_SCHEMA}/ADD_GROUP_PICK`, ue.ADD_MULTIPLE_PICKS = `${ue.ACTION_SCHEMA}/ADD_MULTIPLE_PICKS`, ue.ADD_BET_BUILDER_PICK = `${ue.ACTION_SCHEMA}/ADD_BET_BUILDER_PICK`, ue.ADD_ENTAIN_UI_BET_BUILDER_PICK = `${ue.ACTION_SCHEMA}
9286/ADD_ENTAIN_UI_BET_BUILDER_PICK`, ue.REMOVE_ENTAIN_UI_BET_BUILDER_PICK = `${ue.ACTION_SCHEMA}/REMOVE_ENTAIN_UI_BET_BUILDER_PICK`, ue.CHECK_PRECREATED_BAB_CONVERSION = `${ue.ACTION_SCHEMA}/CHECK_PRECREATED_BAB_CONVERSION`, ue.REMOVE_MULTIPLE_PICKS = `${ue.ACTION_SCHEMA}/REMOVE_MULTIPLE_PICKS`, ue.REMOVE_PICKS_FROM_GROUP = `${ue.ACTION_SCHEMA}/REMOVE_PICKS_FROM_GROUP`, ue.REQUEST_ADD_AFFILIATE_PICKS = `${ue.ACTION_SCHEMA}/REQUEST_ADD_AFFILIATE_PICKS`, ue.SHARE_AFFILIATE_PICKS = `${ue.ACTION_SCHEMA}/SHARE_AFFILIATE_PICKS`, ue.START_EDIT_MY_BET = `${ue.ACTION_SCHEMA}/START_EDIT_MY_BET`, ue.ADD_WEB_APP_PICK = `${ue.ACTION_SCHEMA}/ADD_WEB_APP_PICK`, ue.REMOVE_WEB_APP_PICK = `${ue.ACTION_SCHEMA}/REMOVE_WEB_APP_PICK`, ue.SET_REWARD_TOKEN = `${ue.ACTION_SCHEMA}/SET_REWARD_TOKEN`, ue.TOGGLE_WIN_PICK = `${ue.ACTION_SCHEMA}/TOGGLE_WIN_PICK`, ue.REBET_CLOSE_RESULT = `${ue.ACTION_SCHEMA}/REBET_CLOSE_RESULT`, ue.addGroupPick = ae(ue.ADD_GROUP_PICK, (e, i) => ({ 9287 picks: e.picks, 9288 headerTemplate: e.headerTemplate, 9289 source: i ?? pn.Local 9290 })), ue.addMultiplePicks = ae(ue.ADD_MULTIPLE_PICKS, ut()), ue.addBetBuilderPick = ae(ue.ADD_BET_BUILDER_PICK, (e, i) => ({ 9291 pickId: e.pickId, 9292 tracking: e.tracking, 9293 eventData: e.eventData, 9294 additionalInfo: e.additionalInfo, 9295 source: i ?? pn.Local, 9296 clientData: e.clientData 9297 })), ue.addEntainUiBetBuilderPick = ae(ue.ADD_ENTAIN_UI_BET_BUILDER_PICK, ut()), ue.removeEntainUiBetBuilderPick = ae(ue.REMOVE_ENTAIN_UI_BET_BUILDER_PICK, ut()), ue.rebetCloseResult = ae(ue.REBET_CLOSE_RESULT), ue.checkPrecreatedBABConversion = ae(ue.CHECK_PRECREATED_BAB_CONVERSION, ut()), ue.removeMultiplePicks = ae(ue.REMOVE_MULTIPLE_PICKS, ut()), ue.removePicksFromGroup = ae(ue.REMOVE_PICKS_FROM_GROUP, (e, i) => ({ 9298 pickIds: e.pickIds, 9299 source: i ?? pn.Local 9300 })), ue.requestAddAffiliatePicks = ae(ue.REQUEST_ADD_AFFILIATE_PICKS, ut()), ue.shareBet = ae(ue.SHARE_AFFILIATE_PICKS), ue.startEditMyBet = ae(ue.START_EDIT_MY_BET, ut()), ue.addWebAppPick = ae(ue.ADD_WEB_APP_PICK, ut()), ue.removeWebAppPick = ae(ue.REMOVE_WEB_APP_PICK, ut()), ue.setBetstationFreeBetToken = ae(ue.SET_REWARD_TOKEN, nt()), ue.toggleWinPick = ae(ue.TOGGLE_WIN_PICK, ut()), FN = ue; 9301 })))(); 9302} 9303var _o; 9304function yd() { 9305 return (yd = Z((() => { 9306 _o = (function(e) { 9307 return e.Edit = "Edit", e.Placing = "Placing", e.Result = "Result", e; 9308 })(_o || {}); 9309 })))(); 9310} 9311var Xf, GN, Jf; 9312function Qf() { 9313 return (Qf = Z((() => { 9314 Wl(), yd(), Xf = { 9315 [G.Single]: !1, 9316 [G.Combo]: !1, 9317 [G.System]: !1, 9318 [G.BetBuilder]: !1, 9319 [G.Teaser]: !1 9320 }, GN = { 9321 state: _o.Edit, 9322 isBetslipKeypadOpened: !1, 9323 linearModeCheckboxesEnabled: !0, 9324 isSportcastAsComboEnabled: !1, 9325 linearUserExpandedSections: Xf 9326 }, Jf = "betslip"; 9327 })))(); 9328} 9329var wn, Zf, VN, HN, UN, WN; 9330function jN() { 9331 return (jN = Z((() => { 9332 os(), yd(), Qf(), wn = _s(Jf), Zf = k(wn, (e) => e.base), VN = k(wn, (e) => e.base.state), HN = k(wn, (e) => e.base.linearModeCheckboxesEnabled), UN = k(wn, (e) => e.base.linearUserExpandedSections), k(wn, (e) => e.base.state === _o.Placing), WN = k(Zf, (e) => e.state); 9333 })))(); 9334} 9335var YN; 9336function KN() { 9337 return (KN = Z((() => { 9338 de(), YN = (() => { 9339 class e { 9340 _componentRegistered = new Gt(void 0); 9341 slotRegistered$ = this._componentRegistered.asObservable(); 9342 setSlot(t) { 9343 this._componentRegistered.next(t); 9344 } 9345 clearSlot() { 9346 this._componentRegistered.next(void 0); 9347 } 9348 get registeredComponent() { 9349 return this._componentRegistered.getValue(); 9350 } 9351 static ɵfac = function(t) { 9352 return new (t || e)(); 9353 }; 9354 static ɵprov = R({ 9355 token: e, 9356 factory: e.ɵfac, 9357 providedIn: "root" 9358 }); 9359 } 9360 return e; 9361 })(); 9362 })))(); 9363} 9364var wd; 9365function eg() { 9366 return (eg = Z((() => { 9367 wd = (function(e) { 9368 return e.AntepostFixture = "AntepostFixture", e.Competition = "Competition", e.CouponDetails = "CouponDetails", e.Coupons = "Coupons", e.EventDetails = "EventDetails", e.Featured = "Featured", e.HorseRaceDetails = "HorseRaceDetails", e.GreyhoundRaceDetails = "GreyhoundRaceDetails", e.Horses = "Horses", e.RacingFuture = "RacingFuture", e.RacingToday = "RacingToday", e.RacingTomorrow = "RacingTomorrow", e.RacingDayAfterTomorrow = "RacingDayAfterTomorrow", e.RacingAntepostSpecials = "RacingAntepostSpecials", e.RacingTodayResults = "RacingTodayResults", e.RacingRaces = "RacingRaces", e.Live = "Live", e.LiveCasino = "LiveCasino", e.LiveAll = "LiveAll", e.LiveEsports = "LiveEsports", e.LiveHighlights = "LiveHighlights", e.LiveRegion = "LiveRegion", e.LiveSport = "LiveSport", e.LiveVideo = "LiveVideo", e.LiveLeague = "LiveLeague", e.LiveConference = "LiveConference", e.Lobby = "Lobby", e.MultiBuilder = "MultiBuilder", e.MyBets = "MyBets", e.Settings = "Settings", e.SportList = "SportList", e.SportLobby = "SportLobby", e.VirtualFixture = "VirtualFixture", e.MyTeams = "MyTeams", e.TeamPages = "TeamPages", e.HorsesBetFilterResults = "HorsesBetFilterResults", e.EarlyPayoutSettings = "EarlyPayoutSettings", e.GeneralBetslipSett
9368ings = "GeneralBetslipSettings", e.WorldCupHub = "WorldCupHub", e.EsportsLobby = "EsportsLobby", e.TopScreenLobby = "TopScreenLobby", e.MultiSportsLobby = "MultiSportsLobby", e.BetBuilderPlusLobby = "BetBuilderPlusLobby", e.Lotto = "Lotto", e.VirtualSportsLobby = "VirtualSportsLobby", e; 9369 })(wd || {}); 9370 })))(); 9371} 9372function lD(e, i, t) { 9373 return e && i && t && typeof t == "object" && typeof i == "object" ? Array.isArray(i) && Array.isArray(t) ? [...i, ...t] : C(C({}, i), t) : t; 9374} 9375var Ed; 9376function Cd() { 9377 return (Cd = Z((() => { 9378 Re(), de(), Fy(), Ed = (() => { 9379 let e = class { 9380 constructor() { 9381 this.productService = f(zy); 9382 } 9383 fromSportsLeave() { 9384 return this.productService.isSportsProductActive$.pipe(Fb(1), er(), We((t) => !t)); 9385 } 9386 fromSportsEnter() { 9387 return this.productService.isSportsProductActive$.pipe(Fb(1), er(), We((t) => t)); 9388 } 9389 filterSports() { 9390 return (t) => t.pipe(Du(this.productService.isSportsProductActive$), We(([r, s]) => s), xe(([r]) => r)); 9391 } 9392 filterSportsEmitLast(t = !1) { 9393 let r = null; 9394 return (s) => new Rn((n) => { 9395 let a = this.productService.isSportsProductActive$.pipe(We((l) => l)).subscribe(() => { 9396 r && (n.next(r), r = null); 9397 }), o = s.pipe(Du(this.productService.isSportsProductActive$), Hr(([l, c]) => { 9398 if (c) { 9399 r = null; 9400 return; 9401 } 9402 r = lD(t, r, l); 9403 }), We(([l, c]) => c), xe(([l]) => l)).subscribe({ 9404 next: (l) => { 9405 n.next(l); 9406 }, 9407 error: (l) => { 9408 n.error(l); 9409 }, 9410 complete: () => { 9411 n.complete(); 9412 } 9413 }); 9414 return () => { 9415 a.unsubscribe(), o.unsubscribe(); 9416 }; 9417 }); 9418 } 9419 }; 9420 return e.ɵfac = function(i) { 9421 return new (i || e)(); 9422 }, e.ɵprov = R({ 9423 token: e, 9424 factory: e.ɵfac, 9425 providedIn: "root" 9426 }), e; 9427 })(); 9428 })))(); 9429} 9430function cD(e, i) { 9431 return e.filter((t) => t.order !== void 0).sort((t, r) => t.order - r.order).slice(0, i ?? e.length); 9432} 9433function dD(e, i) { 9434 if (!e?.counts) return 0; 9435 if (i) return e.counts.preMatch + e.counts.live; 9436 let t = e.counts.preMatch + e.counts.live, r = e.counts.gridable + e.counts.nonGridable + e.counts.other; 9437 return (Math.min(t, r) ?? 0) + e.counts.specials + e.counts.outrights; 9438} 9439function qN(e, i) { 9440 return !!e && e.type === i; 9441} 9442function uD(e) { 9443 return e === ee.Tennis ? Mt.Tournament : Mt.Region; 9444} 9445function pD(e, i) { 9446 let t = Array.isArray(e) ? e : [e]; 9447 for (; t.length > 0 && t.every((r) => r.type !== i);) t = t.flatMap((r) => r.children); 9448 return t.filter((r) => r.type === i); 9449} 9450function hD(e) { 9451 return e.type === Mt.VirtualCompetitionGroup; 9452} 9453function mD(e, i) { 9454 return !qN(e, Mt.Competition) || i === void 0 ? !1 : e.id === i ? !0 : e.realCompetitionId === i || (e.siblings?.includes(i) ?? !1); 9455} 9456function fD(e) { 9457 return e.type === Mt.Competition && !e.isVirtual; 9458} 9459function gD(e) { 9460 return e.type === Mt.Competition && e.isVirtual; 9461} 9462function vD(e) { 9463 return e.counts.antepost !== 0 && e.counts.antepost === e.counts.live + e.counts.preMatch; 9464} 9465function SD(e) { 9466 let i = [["Sport", "VirtualSport"]]; 9467 return e === ee.Tennis ? i.push(["Tournament"]) : i.push(["Region"]), i.push(["Competition", "VirtualCompetition"], ["Conference", "VirtualCompetitionGroup"]), i; 9468} 9469function XN(e, i, t, r) { 9470 let s = e[e.findIndex((n) => n.includes(i.type.toString())) + 1]; 9471 s && (i.children = s.flatMap((n) => { 9472 if (!n || !r[n]) return []; 9473 let a; 9474 if (i.type === Mt.Region || i.type === Mt.Tournament) a = r[n][`${i.id}:${t.tag.parentId}`] ?? []; 9475 else { 9476 let o = QN(t.tag) ? t.tag.virtualCompetitionId ?? t.tag.compoundId : i.id; 9477 a = r[n][o] ?? []; 9478 } 9479 return a.map((o) => { 9480 let l = tg(o); 9481 return XN(e, l, o, r), l; 9482 }); 9483 })); 9484} 9485function tg(e) { 9486 let i = (/* @__PURE__ */ new Map([ 9487 ["Sport", Mt.Sport], 9488 ["Region", Mt.Region], 9489 ["Tournament", Mt.Tournament], 9490 ["Competition", Mt.Competition], 9491 ["VirtualSport", Mt.Sport], 9492 ["VirtualCompetition", Mt.Competition], 9493 ["VirtualCompetitionGroup", Mt.VirtualCompetitionGroup], 9494 ["Conference", Mt.Conference] 9495 ])).get(e.tag.type); 9496 if (!i) throw new Error(`Unhandled tag type ${e.tag.type}`); 9497 let t = { 9498 id: e.tag.id, 9499 name: e.tag.name.value, 9500 type: i, 9501 counts: kD(e), 9502 meta: TD(e), 9503 order: e.rank, 9504 children: [] 9505 }; 9506 switch (e.tag.type) { 9507 case "Sport": return bD(e.tag, t);
9508 case "Region": return yD(e.tag, t); 9509 case "Competition": return wD(e.tag, t); 9510 case "VirtualSport": return ED(e.tag, t); 9511 case "VirtualCompetition": return CD(e.tag, t); 9512 case "VirtualCompetitionGroup": return ND(e.tag, t); 9513 default: return t; 9514 } 9515} 9516function bD(e, i) { 9517 return J(C({}, i), { isEsport: e.isEsport }); 9518} 9519function yD(e, i) { 9520 return J(C({}, i), { code: e.code }); 9521} 9522function wD(e, i) { 9523 let t = e.parentLeagueId ?? e.id, r = []; 9524 return e.parentLeagueId && r.push(e.parentLeagueId), e.parentLeagueId !== e.id && r.push(e.id), e.virtualCompetitionId ? J(C({}, i), { 9525 id: e.virtualCompetitionId, 9526 prefix: "0:", 9527 siblings: r, 9528 standings: !!e.statistics, 9529 isVirtual: !0, 9530 parentId: e.parentId, 9531 displayMode: ig.get(e.displayMode), 9532 realCompetitionId: t, 9533 imageProfile: e.imageProfile 9534 }) : J(C({}, i), { 9535 id: t, 9536 siblings: r, 9537 standings: !!e.statistics, 9538 isVirtual: !1, 9539 parentId: e.parentId, 9540 compoundId: e.compoundId, 9541 imageProfile: e.imageProfile 9542 }); 9543} 9544function ED(e, i) { 9545 return J(C({}, i), { isVirtual: !0 }); 9546} 9547function CD(e, i) { 9548 return J(C({}, i), { 9549 id: e.id, 9550 prefix: "0:", 9551 siblings: e.competitionIds, 9552 standings: !!e.statistics, 9553 icon: "theme-competitions", 9554 isVirtual: !0, 9555 parentId: e.parentId, 9556 imageType: ID(e.imageType), 9557 displayMode: ig.get(e.displayMode) 9558 }); 9559} 9560function ND(e, i) { 9561 return J(C({}, i), { 9562 id: e.id, 9563 siblings: e.competitionIds, 9564 standings: !!e.statistics, 9565 isVirtual: !0, 9566 participants: xD(e.participants), 9567 groupOrder: e.order, 9568 groupIds: e.groupIds, 9569 stageIds: e.stageIds, 9570 parentId: e.parentId 9571 }); 9572} 9573function TD(e) { 9574 let i = e.extended ?? {}; 9575 return { 9576 calendar: e.preMatch > 0, 9577 coupons: i.coupons, 9578 betBuilder: i.betBuilder 9579 }; 9580} 9581function kD(e) { 9582 let i = e.extended ?? {}; 9583 return { 9584 live: e.live ?? 0, 9585 preMatch: e.preMatch ?? 0, 9586 gridable: i.gridable ?? 0, 9587 nonGridable: i.nonGridable ?? 0, 9588 outrights: i.outrights ?? 0, 9589 outrightsByGroups: i.outrightsByGroup ?? {}, 9590 specials: i.specials ?? 0, 9591 specialsByGroups: i.specialsByGroup ?? {}, 9592 other: i.other ?? 0, 9593 antepost: e.antepost ?? 0, 9594 liveStreaming: e.liveStreaming ?? 0, 9595 priceBoost: i.priceBoost ?? 0, 9596 dynamicCategories: e.dynamicCategories ?? {} 9597 }; 9598} 9599function xD(e) { 9600 return e ? e.map((i) => ({ 9601 code: i.code, 9602 participantId: i.participantId 9603 })) : []; 9604} 9605function ID(e) { 9606 return e === "Flags" ? Ro.Flags : Ro.Default; 9607} 9608function JN(e) { 9609 return e.forEach((i) => { 9610 i.children && i.children.length > 0 && (i.children = JN(i.children)); 9611 }), c$(e, [ 9612 "groupOrder", 9613 "order", 9614 "name" 9615 ]); 9616} 9617function OD(e) { 9618 return e.type === "VirtualCompetition"; 9619} 9620function QN(e) { 9621 return e.type === "Competition"; 9622} 9623function PD(e) { 9624 return e.type === "Conference"; 9625} 9626var Mt, Mo, Ro, ig, ZN, rg; 9627function sg() { 9628 return (sg = Z((() => { 9629 Re(), Ye(), Ua(), Mt = (function(e) { 9630 return e.Sport = "Sport", e.Region = "Region", e.Tournament = "Tournament", e.Competition = "Competition", e.VirtualCompetitionGroup = "VirtualCompetitionGroup", e.Conference = "Conference", e.Meeting = "Meeting", e; 9631 })(Mt || {}), Mo = (function(e) { 9632 return e.Pills = "Pills", e.Cards = "Cards", e; 9633 })(Mo || {}), Ro = (function(e) { 9634 return e.Default = "Default", e.Flags = "Flags", e; 9635 })(Ro || {}), ig = /* @__PURE__ */ new Map([["Pills", Mo.Pills], ["Cards", Mo.Cards]]), ZN = (e) => { 9636 let i = [], t = Jb(e ?? [], (n) => n.tag.type), r = {}, s = []; 9637 for (let n of ["Sport", "VirtualSport"]) t[n] && s.push(...t[n]); 9638 if (!t || s.length === 0) return i; 9639 for (let [n, a] of Object.entries(t)) r[n] = Jb(a, (o) => { 9640 if (QN(o.tag)) { 9641 let l = o.tag, c = l.sportId; 9642 return `${c === ee.Tennis ? l.parentTournamentId ?? o.tag.parentId : o.tag.parentId}:${c}`; 9643 } else if (OD(o.tag)) { 9644 let l = o.tag; 9645 return `${l.tournamentId ?? l.parentId ?? o.tag.parentId}:${l.sportId}`; 9646 } else if (PD(o.tag)) return `${o.tag.competitionId}`; 9647 return `${o.tag.parentId}`; 9648 }); 9649 return s.forEach((n) => { 9650 let a = tg(n); 9651 XN(SD(a.id), a, n, r), i.push(a); 9652 }), JN(i); 9653 }, rg = { fromTag: ZN }; 9654 })))(); 9655} 9656var ng; 9657function ag() { 9658 return (ag = Z((() => { 9659 de(), rr(), ng = class { 9660 constructor(e) { 9661 if (this.cacheInternal = /* @__PURE__ */ new Map(), this.isServer = ju(f(_a)), !e) throw new Error("Cache time should be defined"); 9662 this.time = this.isServer ? 1e3 : e * 1e3; 9663 } 9664 getOrCreate(e, i) { 9665 return this.validateCache(), this.cacheInternal.has(e) ? this.getInternal(e) : this.create(e, i); 9666 } 9667 get(e) { 9668 return this.validateCache(), this.cacheInternal.has(e) ? this.getInternal(e) : je(void 0); 9669 } 9670 create(e, i) { 9671 let t = i.pipe(ei((r) => (this.cacheInternal.delete(e), e$(r))), Vb({ 9672 connector: () => new ws(1), 9673 resetOnComplete: () => Rb(this.time), 9674 resetOnRefCountZero: () => Rb(this.time) 9675 })); 9676 return this.cacheInternal.set(e, { 9677 source: t, 9678 expiration: this.time + Date.now() 9679 }), this.getInternal(e); 9680 } 9681 has(e) { 9682 return this.validateCache(), this.cacheInternal.has(e); 9683 } 9684 remove(e) { 9685 return this.cacheInternal.delete(e); 9686 } 9687 clear() { 9688 this.cacheInternal.clear(); 9689 } 9690 validateCache() { 9691 this.cacheInternal.forEach((e, i) => { 9692 e.expiration < Date.now() && this.cacheInternal.delete(i); 9693 }); 9694 } 9695 getInternal(e) { 9696 return this.cacheInternal.get(e).source; 9697 } 9698 }; 9699 })))(); 9700} 9701function AD(e, i, t) { 9702 return wr(e.whenReady.pipe(xe(() => i(e)), ei(() => je(t)), Ot(1)), { initialValue: t }); 9703} 9704function eT(e, i, t) { 9705 return Gi(e.whenReady, e.whenRefreshed).pipe(xe(() => i(e)), ei(() => je(t))); 9706} 9707function $D(e, i, t) { 9708 return e.whenReady.pipe(xe(() => i(e)), ei(() => je(t)), Ot(1), DA(t)); 9709} 9710function og() { 9711 return (og = Z((() => { 9712 de(), Et(); 9713 })))(); 9714} 9715var lg; 9716function cg() { 9717 return (cg = Z((() => { 9718 de(), Et(), yi(), lg = (() => { 9719 let e = class { 9720 constructor() { 9721 this.vUser = f(ii), this.accountCategoryKey = "http://api.bwin.com/v3/user/accountcategoryId", this.pgAccountIdKey = "http://api.bwin.com/v3/user/pg/nameidentifier", this.onUserLogin$ = this.vUser.events.pipe(We((t) => t instanceof ep)), this.onUserLogInWithSettings$ = this.vUser.events.pipe(We((t) => t instanceof Ga)), this.onUserLogout$ = this.vUser.events.pipe(We((t) => t instanceof Va)), this.onAuthenticationChange$ = this.vUser.events.pipe(We((t) => t instanceof Ga || t instanceof Va || t instanceof Y$ || t instanceof U$ || t instanceof j$)), this.authState$ = this.onAuthenticationChange$.pipe(xe(() => this.isAuthenticated), Gu(this.isAuthenticated)), this.authState = wr(this.authState$, { initialValue: this.isAuthenticated }); 9722 } 9723 get events() { 9724 return this.vUser.events; 9725 } 9726 get isAuthenticated() { 9727 return this.vUser.isAuthenticated; 9728 } 9729 get currency() { 9730 return this.vUser.currency; 9731 } 9732 get ssoToken() { 9733 return this.vUser.ssoToken; 9734 } 9735 get geoCountry() { 9736 return this.vUser.geoCountry || ""; 9737 } 9738 get country() { 9739 return this.vUser.country || ""; 9740 } 9741 get username() { 9742 return this.vUser.username; 9743 } 9744 get workflowType() { 9745 return this.vUser.workflowType; 9746 } 9747 get id() { 9748 return this.vUser.id; 9749 } 9750 get accountId() { 9751 return this.vUser.accountId; 9752 } 9753 get displayName() { 9754 return this.vUser.displayName; 9755 } 9756 get isAnonymous() { 9757 let t = this.vUser.claims.get("accbusinessphase"); 9758 return !t || t === "anonymous"; 9759 } 9760 accountCategoryId() { 9761 return this.vUser.claims.get(this.accountCategoryKey); 9762 } 9763 getStateOrProvince() { 9764 return this.vUser.claims.get("stateorprovince"); 9765 } 9766 getIsStakeLimitSet() { 9767 return this.vUser.claims.get("isSportsLimitSet")?.toLowerCase() === "true"; 9768 } 9769 getUserMobileNumber() { 9770 return this.vUser.claims.get("mobilephone"); 9771 } 9772 getPGAccountId() { 9773 return this.vUser.claims.get(this.pgAccountIdKey); 9774 } 9775 }; 9776 return e.ɵfac = function(i) { 9777 return new (i || e)(); 9778 }, e.ɵprov = R({ 9779 token: e, 9780 factory: e.ɵfac, 9781 providedIn: "root" 9782 }), e; 9783 })(); 9784 })))(); 9785} 9786var dg; 9787function ug() { 9788 return (ug = Z((() => { 9789 Re(), de(), Et(), Ns(), Yn(), og(), cg(), dg = (() => { 9790 let e = class { 9791 constructor() { 9792 this.mocksConfig = f(z_), this.m2User = f(lg), this.connectionConfig = f(By), this.geolocationService = f(q$), this.newCustomerBettingOfferConfig = f(M_), this.mediaConfig = f(F_), this.geolocationConfig = f(R_), this.sportsUserConfig = f(__), this.destroyRef = f(ze), this.isEligibleForNewCustomerOffer = !1, eT(this.sportsUserConfig, (t) => t.isEligibleForNewCustomerOffer, !1).pipe(he(this.destroyRef)).subscribe((t) => { 9793 this.isEligibleForNewCustomerOffer = t; 9794 }); 9795 } 9796 getSettings() { 9797 let t = { 9798 accessId: this.connectionConfig.publicAccessId || this.connectionConfig.pushAccessId, 9799 lang: this.connectionConfig.culture, 9800 country: this.getCountry(), 9801 userCountry: this.m2User.country, 9802 restrictedCompetitionId: this.getRestrictedCompetitionId(), 9803 shopTier: this.connectionConfig.shopTier 9804 }; 9805 if (this.mediaConfig.subdivisionRestrictedCountries.includes(this.m2User.country)) { 9806 let r = this.m2User.getStateOrProvince(); 9807 r && (t.subdivision = `${this.m2User.country}-${r}`); 9808 } 9809 return this.connectionConfig.marketGroupingVariant && (t.marketGroupingVariant = this.connectionConfig.marketGroupingVariant), t; 9810 } 9811 getSettingsWithGeolocation() { 9812 return this.geolocationConfig.isGeolocationEnabled ? this.geolocationService.whenReady.pipe(Ot(1), xe(() => { 9813 let t = this.geolocationService.currentPosition?.mappedLocation?.locationId || ""; 9814 return J(C({}
9814, this.getSettings()), { userLocation: t }); 9815 })) : je(this.getSettings()); 9816 } 9817 getCountry() { 9818 return this.mocksConfig.isMockLiveStreamGeoCountryEnabled && this.mocksConfig.liveStreamGeoCountry ? this.mocksConfig.liveStreamGeoCountry : this.m2User.geoCountry?.toUpperCase() || this.m2User.country?.toString(); 9819 } 9820 getRestrictedCompetitionId() { 9821 return this.isEligibleForNewCustomerOffer ? this.newCustomerBettingOfferConfig.competitionId : void 0; 9822 } 9823 }; 9824 return e.ɵfac = function(i) { 9825 return new (i || e)(); 9826 }, e.ɵprov = R({ 9827 token: e, 9828 factory: e.ɵfac, 9829 providedIn: "root" 9830 }), e; 9831 })(); 9832 })))(); 9833} 9834function tT(e, i) { 9835 return e.createForProduct(iT, { 9836 product: it.SPORTS, 9837 area: "sports", 9838 forwardProductApiRequestHeader: i 9839 }); 9840} 9841var iT, rT, sT, pg, hg, nT; 9842function mg() { 9843 return (mg = Z((() => { 9844 Re(), de(), Ye(), Ju(), Hn(), iT = class extends ty {}, rT = new Te("sports-api", { 9845 providedIn: "root", 9846 factory: () => { 9847 let e = f(Zu), i = f(Qu).getMetadata(it.SPORTS).isEnabled; 9848 return tT(e, i); 9849 } 9850 }), sT = new Te("sports-api-ext", { 9851 providedIn: "root", 9852 factory: () => tT(f(Zu), !1) 9853 }), pg = class { 9854 get(e, i, t) { 9855 let r = t ?? { 9856 showSpinner: !1, 9857 withCredentials: !0 9858 }; 9859 return r.withCredentials = r.withCredentials !== !1, this.api.get(e, i || {}, { 9860 showSpinner: r.showSpinner, 9861 withCredentials: r.withCredentials, 9862 retryCount: r.retryCount, 9863 retryDelay: r.retryDelay, 9864 retryOnStatus: r.retryOnStatus, 9865 headers: r.headers, 9866 responseType: r.responseType, 9867 resolveWithFullResponse: r.resolveWithFullResponse, 9868 transferCache: r.transferCache 9869 }); 9870 } 9871 post(e, i, t) { 9872 let r = {}, s = t ?? { 9873 showSpinner: !1, 9874 resolveWithFullResponse: !1, 9875 transferCache: !1 9876 }; 9877 s.cache || (r = { "cache-control": "no-cache" }), r = C(C({}, r), s.headers); 9878 let n = s.withCredentials === void 0 ? {} : { withCredentials: s.withCredentials }; 9879 return this.api.post(e, i, C({ 9880 headers: r, 9881 showSpinner: s.showSpinner, 9882 retryCount: s.retryCount, 9883 retryDelay: s.retryDelay, 9884 responseType: s.responseType, 9885 resolveWithFullResponse: s.resolveWithFullResponse, 9886 params: s.params, 9887 transferCache: s.transferCache 9888 }, n)); 9889 } 9890 }, hg = (() => { 9891 let e = class extends pg { 9892 constructor() { 9893 super(...arguments), this.api = f(sT); 9894 } 9895 }; 9896 return e.ɵfac = (() => { 9897 let i; 9898 return function(t) { 9899 return (i || (i = Fe(e)))(t || e); 9900 }; 9901 })(), e.ɵprov = R({ 9902 token: e, 9903 factory: e.ɵfac, 9904 providedIn: "root" 9905 }), e; 9906 })(), nT = (() => { 9907 let e = class extends pg { 9908 constructor() { 9909 super(...arguments), this.api = f(rT); 9910 } 9911 }; 9912 return e.ɵfac = (() => { 9913 let i; 9914 return function(t) { 9915 return (i || (i = Fe(e)))(t || e); 9916 }; 9917 })(), e.ɵprov = R({ 9918 token: e, 9919 factory: e.ɵfac, 9920 providedIn: "root" 9921 }), e; 9922 })(); 9923 })))(); 9924} 9925var fg, aT, Nd; 9926function Td() { 9927 return (Td = Z((() => { 9928 de(), st(), Yn(), fg = class { 9929 constructor(e, i) {
9930 if (this.vanillaLogger = i, this.MS2_LOGGER_TOKEN = "ms2logger", !e || !/^[a-zA-Z\d]+$/g.test(e)) throw new Error("Logger name should be alphanumeric for easy elasticsearch lookup"); 9931 this.loggerName = e; 9932 } 9933 error(e, i) { 9934 if (!e) return; 9935 let t = e; 9936 typeof e == "string" && (t = new Error(e)), t.description = this.MS2_LOGGER_TOKEN, t.fileName = this.loggerName, this.vanillaLogger.logError(t, i); 9937 } 9938 info(e) { 9939 if (!e) return; 9940 let i = [ 9941 this.MS2_LOGGER_TOKEN, 9942 this.loggerName, 9943 e 9944 ].filter(Boolean).join(" "); 9945 this.vanillaLogger.log(i, iy.Info); 9946 } 9947 warning(e) { 9948 if (!e) return; 9949 let i = [ 9950 this.MS2_LOGGER_TOKEN, 9951 this.loggerName, 9952 e 9953 ].filter(Boolean).join(" "); 9954 this.vanillaLogger.log(i, iy.Warning); 9955 } 9956 }, aT = class { 9957 constructor(e, i, t) { 9958 this.internalFeaturesConfig = t, this.sportsLogger = new fg(e, i); 9959 } 9960 error(e, i) { 9961 this.internalFeaturesConfig.isBetplacementLoggingEnabled && this.sportsLogger.error(e, i); 9962 } 9963 warning(e, i = !1) { 9964 if (this.internalFeaturesConfig.isBetplacementLoggingEnabled) { 9965 let t = i ? ` 9966 ${(/* @__PURE__ */ new Error()).stack}` : ""; 9967 this.sportsLogger.warning(`${e}${t}`); 9968 } 9969 } 9970 }, Nd = (() => { 9971 let e = class { 9972 constructor() { 9973 this.vanillaLogger = f(k$), this.internalFeatures = f(D_); 9974 } 9975 getLogger(t) { 9976 return new fg(t, this.vanillaLogger); 9977 } 9978 getDebugLogger(t) { 9979 return new aT(`Debug${t}`, this.vanillaLogger, this.internalFeatures); 9980 } 9981 }; 9982 return e.ɵfac = function(i) { 9983 return new (i || e)(); 9984 }, e.ɵprov = R({ 9985 token: e, 9986 factory: e.ɵfac, 9987 providedIn: "root" 9988 }), e; 9989 })(); 9990 })))(); 9991} 9992function oT(...e) { 9993 let i = arguments; 9994 return typeof arguments[0] == "object" && (i = arguments[0]), MD([].slice.call(i, 0).join("/")); 9995} 9996function _D(e) { 9997 if (!e) return null; 9998 let i = gg(e); 9999 return i ? i.filter((t) => t).join("&") : null; 10000} 10001function MD(e) { 10002 return e = e.replace(/:\//g, "://"), e = e.replace(/([^:\s])\/+/g, "$1/"), e = e.replace(/\/(\?|&|#[^!])/g, "$1"), e = e.replace(/(\?.+)\?/g, "$1&"), e; 10003} 10004function gg(e) { 10005 if (Array.isArray(e)) return e.length === 0 ? null : e.map((i, t) => { 10006 let r = gg(i); 10007 return Array.isArray(r) ? r.map((s) => `[${t}].${s}`) : [`[${t}]=${i}`]; 10008 }).reduce((i, t) => i.concat(t)); 10009 if (e instanceof Object) { 10010 let i = Object.keys(e), t = (n) => { 10011 let a = e[n]; 10012 return a != null && (Array.isArray(a) ? a.length !== 0 : a !== ""); 10013 }, r = (n) => { 10014 let a = e[n], o = gg(a), l = Array.isArray(a) ? "" : "."; 10015 return o ? o.map((c) => `${n}${l}${c}`) : [`${n}=${encodeURIComponent(a)}`]; 10016 }, s = i.filter(t).map(r).reduce((n, a) => n.concat(a), []); 10017 if (s.length) return s; 10018 } 10019 return null; 10020} 10021function lT(e, i = 1700, t) { 10022 let r = [], s = []; 10023 for (let n of e) { 10024 let a = [...s, n], o = `batch=${encodeURIComponent(JSON.stringify(a))}`.length > i && s.length > 0, l = t && a.length > t; 10025 o || l ? (r.push(s), s = [n]) : s = a; 10026 } 10027 return s.length > 0 && r.push(s), r; 10028} 10029var cT, dT, vg; 10030function Sg() { 10031 return (Sg = Z((() => { 10032 Re(), de(), wl(), Ye(), Cs(), Yn(), Kn(), ug(), mg(), Td(), cT = (() => { 10033 let e = class { 10034 constructor() { 10035 this.apiServiceExternal = f(hg), this.apiBaseSettings = f(dg), this.page = f(jr), this.configured = !1, this.cdsApiHeader = "x-bwin-cds-api", this._doc = f(vi); 10036 let t = f(Nd), r = f(By); 10037 this.frontendUrl = r.cdsFrontendUrl ?? r.cdsUrlBase, this.apiUrl = r.cdsApiUrl, this.options = {}, this.logger = t.getLogger("BaseCdsApi"); 10038 } 10039 configure(t) { 10040 return this.configured = !0, this.options = C(C({}, this.options), t), this; 10041 } 10042 post(t, r, s) { 10043 return this.configured ? this.prepareRequestUrl(t, s).pipe(Cb((n) => this.apiServiceExternal.post(n, r, { 10044 cache: !1, 10045 resolveWithFullResponse: !0, 10046 headers: this.getCdsApiHeader() 10047 }).pipe(xe((a) => a.body), ei((a) => (a instanceof Yb && a.status > 0 && this.logger.error(a, `Post call to CDS endpoint: ${this.getUrl(t)} failed`), je(void 0)))))) : je(void 0); 10048 } 10049 get(t, r, s) { 10050 return this.configured ? this.prepareRequestUrl(t, s).pipe(Cb((n) => this.apiServiceExternal.get(n, r, { 10051 resolveWithFullResponse: !0, 10052 transferCache: s?.transferCache ?? !0, 10053 headers: C(C({}, this.getCdsApiHeader()), s?.disableCache && { "cache-control": "no-cache" }) 10054 }).pipe(xe((a) => a.body), ei((a) => (a instanceof Yb && a.status > 0 && this.logger.error(a, `Get call to CDS endpoint: ${this.getUrl(t)}
10054 failed`), je(void 0)))))) : je(void 0); 10055 } 10056 getBatch(t, r, s = 1700, n) { 10057 let a = lT(t, s, n); 10058 return a.length === 0 ? je(void 0) : Ru(a.map((o) => { 10059 let l = `request=${encodeURIComponent(JSON.stringify(o))}`; 10060 return this.get(`${r}?${l}`).pipe(xe((c) => c)); 10061 })).pipe(ei((o) => (this.logger.error(o, `Failed calling batch endpoint ${this.getUrl(r)}. Request: ${JSON.stringify(t)}`), je([]))), xe((o) => El({}, ...o.filter(Is)))); 10062 } 10063 prepareRequestUrl(t, r) { 10064 return this.getDefault(r).pipe(xe((s) => { 10065 let n = this.getUrl(t); 10066 return n += n.includes("?") ? "&" : "?", n + _D(s); 10067 })); 10068 } 10069 getDefault(t) { 10070 return this.apiBaseSettings.getSettingsWithGeolocation().pipe(xe((r) => { 10071 let s = r, { accessId: n, userLocation: a } = s, o = Eb(s, ["accessId", "userLocation"]), l = J(C({ "x-bwin-accessid": n }, o), { userLocation: a || "" }); 10072 return t?.restrictedCompetitionId && (l.restrictedCompetitionId = t.restrictedCompetitionId), l; 10073 })); 10074 } 10075 getCdsApiHeader() { 10076 return this.apiUrl && !this.page.isProduction ? { [this.cdsApiHeader]: this.apiUrl } : {}; 10077 } 10078 getUrl(t) { 10079 let r = oT(this.frontendUrl, this.options.endpoint, t); 10080 return r.startsWith("/") ? oT(`${this._doc.location.protocol}//${this._doc.location.host}`, r) : r; 10081 } 10082 }; 10083 return e.ɵfac = function(i) { 10084 return new (i || e)(); 10085 }, e.ɵprov = R({ 10086 token: e, 10087 factory: e.ɵfac, 10088 providedIn: "root" 10089 }), e; 10090 })(), dT = () => (e) => new cT().configure(e), vg = new Te("CDS_API_FACTORY", { 10091 providedIn: "root", 10092 factory: () => dT() 10093 }); 10094 })))(); 10095} 10096var bg; 10097function yg() { 10098 return (yg = Z((() => { 10099 Re(), de(), Ye(), Cs(), Yn(), so(), Ua(), Kn(), ag(), Td(), Sg(), bg = (() => { 10100 let e = class { 10101 constructor() { 10102 this.cdsConfig = f(P_), this.sportConfig = f(Ly), this.baseTranslationConfig = f(B_), this.page = f(jr), this.marketGroupingConfig = f(I_), this.bettingOfferConfig = f(L_); 10103 let t = f(vg), r = f(Nd); 10104 this.cdsApi = t({ endpoint: "/bettingoffer" }), this.pickCache = new ng(.5), this.logger = r.getLogger("BettingOfferApi"); 10105 } 10106 getFixtureView(t) { 10107 let { id: r, statsMode: s, excludeMarkets: n = !1, includePrecreated: a = !1, isBettingInsightsEnabled: o = !1, gridGroupIds: l, useRegionalisedConfiguration: c = this.marketGroupingConfig.regionalisedGroupingEnabled, gameIds: d, optionMarketIds: u, marketGroupIds: h, includeRelatedFixtures: g = this.bettingOfferConfig.includeLinkedFixtures && !$1(r), marketGroupItemIds: p, participantMapping: m, dynamicOfferCategories: S, state: b, firstMarketGroupOnly: v, excludeMarketGroupIds: y, fixtureForm: w } = t, T = n ? "None" : l || d || u || h || p || S || y || v ? "Filtered" : "All"; 10108 return Vt(this.cdsApi.get("/fixture-view", { 10109 offerMapping: T, 10110 gridGroupIds: l, 10111 gameIds: d, 10112 optionMarketIds: u, 10113 scoreboardMode: "Full", 10114 fixtureIds: r, 10115 state: b ?? "Latest", 10116 includePrecreatedBetBuilder: a, 10117 supportVirtual: this.sportConfig.isVirtualSportsEnabled, 10118 isBettingInsightsEnabled: o, 10119 useRegionalisedConfiguration: c, 10120 includeRelatedFixtures: g, 10121 statisticsModes: s, 10122 marketGroupIds: h, 10123 marketGroupItemIds: p, 10124 participantMapping: m, 10125 dynamicOfferCategories: S, 10126 firstMarketGroupOnly: v, 10127 excludeMarketGroupIds: y, 10128 fixtureForm: w 10129 })); 10130 } 10131 getVirtualFixtureView(t, r, s) { 10132 return this.cdsApi.get("/virtual/fixture-view", { 10133 offerMapping: "All", 10134 sportIds: t.toString(), 10135 competitionIds: r.toString(), 10136 fixtureIds: s, 10137 scheduleSize: this.sportConfig.upcomingVirtualEventCount 10138 }); 10139 } 10140 getPicks(t, r) { 10141 let s = this.buildPicksRequestKey("picks", t); 10142 this.useBaseTranslation() && (t.alternateLanguage = this.baseTranslationConfig.defaultLanguage); 10143 let n = this.cdsApi.post("/picks", t, r).pipe(xe((a) => a?.fixturePage)); 10144 return this.pickCache.getOrCreate(s, n); 10145 } 10146 getReBetPicksView(t, r) { 10147 return this.useBaseTranslation() && (t.alternateLanguage = this.baseTranslationConfig.defaultLanguage), this.cdsApi.post("/picks/re-bet", t, r); 10148 } 10149 getPicksViewCache(t, r) {
10150 let s = this.buildPicksRequestKey("picks-view", t); 10151 this.useBaseTranslation() && (t.alternateLanguage = this.baseTranslationConfig.defaultLanguage); 10152 let n = this.cdsApi.post("/picks", t, r).pipe(xe((a) => a)); 10153 return this.pickCache.getOrCreate(s, n); 10154 } 10155 getPicksWithFallback(t) { 10156 return this.useBaseTranslation() && (t.alternateLanguage = this.baseTranslationConfig.defaultLanguage), this.cdsApi.post("/picks-with-fallback", t); 10157 } 10158 getCounts(t, r) { 10159 return this.cdsApi.get("/counts", t, r); 10160 } 10161 getSportList(t, r) { 10162 return this.cdsApi.get("/counts", C({ 10163 state: "Latest", 10164 tagTypes: "Sport", 10165 extendedTags: "Sport", 10166 sortBy: "Tags", 10167 supportVirtual: this.sportConfig.isVirtualSportsEnabled, 10168 sportIds: r?.join(",") 10169 }, t)); 10170 } 10171 getVirtualSportList() { 10172 return this.cdsApi.get("/virtual/sports", { scheduleSize: this.sportConfig.upcomingVirtualEventCount }); 10173 } 10174 getLiveSportList() { 10175 let t = [ 10176 "Sport", 10177 "Region", 10178 "Tournament", 10179 "Competition", 10180 "VirtualCompetition" 10181 ].join(","), r = this.bettingOfferConfig.liveFixtureTypes?.length > 0 ? this.bettingOfferConfig.liveFixtureTypes.join(",") : void 0; 10182 return this.cdsApi.get("/counts", C({ 10183 state: "Live", 10184 tagTypes: t, 10185 extendedTags: t, 10186 sortBy: "Tags" 10187 }, r && { fixtureTypes: r })); 10188 } 10189 getPrematchEventTree(t, r) { 10190 let s = { 10191 state: "Latest", 10192 tagTypes: [ 10193 "Sport", 10194 "Region", 10195 "Tournament", 10196 "Competition" 10197 ].join(","), 10198 extendedTags: [ 10199 "Sport", 10200 "Region", 10201 "Tournament", 10202 "Competition" 10203 ].join(","), 10204 sortBy: "Tags", 10205 sportIds: r.toString() 10206 }; 10207 return r === ee.Tennis ? s.tournamentIds = t.toString() : s.regionIds = t.toString(), this.cdsApi.get("/counts", s); 10208 } 10209 getSport(t, r, s) { 10210 return this.cdsApi.get("/counts", J(C({ 10211 state: "Latest", 10212 tagTypes: [ 10213 "Sport", 10214 "Region", 10215 "Tournament", 10216 "Competition", 10217 "VirtualCompetition", 10218 "VirtualCompetitionGroup" 10219 ].join(","), 10220 extendedTags: [ 10221 "Sport", 10222 "Region", 10223 "Tournament", 10224 "Competition", 10225 "VirtualCompetition", 10226 "VirtualCompetitionGroup" 10227 ].join(","), 10228 sportIds: t, 10229 sortBy: "Tags" 10230 }, s), { 10231 participantMapping: "All", 10232 includeDynamicCategories: !!r 10233 })); 10234 } 10235 getCountsPerSport(t, r) { 10236 return this.cdsApi.get("/counts", { 10237 state: "Latest", 10238 tagTypes: r, 10239 sportIds: t 10240 }); 10241 } 10242 getCountsForConference(t, r, s, n) { 10243 return this.cdsApi.get("/counts", C({ 10244 tagTypes: "Conference", 10245 extendedTags: "", 10246 conferenceIds: t?.toString(), 10247 competitionIds: r?.toString(), 10248 includeDynamicCategories: !!n 10249 }, s)); 10250 } 10251 getFixtureList(t, r) { 10252 return this.cdsApi.get("/fixtures", t, r); 10253 } 10254 getLotteryCompetitionsList(t) { 10255 return this.cdsApi.get("/lottery/competitions", void 0, t); 10256 } 10257 getCountsFixtures(t) { 10258 let r = `request=${encodeURIComponent(JSON.stringify(t))}`; 10259 return this.cdsApi.get(`/counts-fixtures-v2?${r}`); 10260 } 10261 getBatchFixtureList(t) { 10262 return Ru(Xb(t, this.cdsConfig.maxFixtureBatchSize).map((r) => this.cdsApi.post("/fixtures-batch", r))).pipe(ei((r) => (this.logger.error(r, `Failed calling fixture-batch endpoint. Request: ${JSON.stringify(t)}`), [])), xe((r) => El({}, ...r.filter(Is)))); 10263 } 10264 getFixtureOffers(t) { 10265 return this.cdsApi.get("/fixture-offers", t); 10266 } 10267 getFixtureListBatch(t) { 10268 return Ru(Xb(t, this.cdsConfig.maxFixtureBatchSize).map((r) => this.cdsApi.post("/fixtures-merged-batches", r))).pipe(ei((r) => (this.logger.error(r, `Failed calling fixtures-merged-batches endpoint. Request: ${JSON.stringify(t)}`), [])), xe((r) => El({}, ...r.filter(Is)))); 10269 } 10270 getBatchCounts(t) { 10271 return this.cdsApi.getBatch(t, "/counts-batch-v2", this.cdsConfig.maxBatchUrlLength, this.cdsConfig.maxFixtureBatchSize); 10272 } 10273 getLiveHighlights(t) { 10274 return this.cdsApi.get("/live/highlights", t); 10275 } 10276 getLiveEsports(t) { 10277 return this.cdsApi.get("/live/esports", t); 10278 } 10279 getLiveStreams(t) { 10280 return this.cdsApi.get("/live/streams", t); 10281 } 10282 useBaseTranslation() { 10283 return this.baseTranslationConfig.isEnabled && this.baseTranslationConfig.defaultLanguage.toUpperCase() !== this.page.lang.toUpperCase(); 10284 }
10285 buildPicksRequestKey(t, r) { 10286 return r.tv1Picks.map((s) => this.buildPickV1Key(t, s)).concat(r.tv2Picks.map((s) => this.buildPickV2Key(t, s))).join("|"); 10287 } 10288 buildPickV1Key(t, r) { 10289 return `${t}-${r.fixtureId}-${r.gameId}-${r.resultId}-${r.useLiveFallback || !1}`; 10290 } 10291 buildPickV2Key(t, r) { 10292 return `${t}-${r.fixtureId}-${r.optionMarketId}-${r.participantId}-${r.isClassicBetBuilder}`; 10293 } 10294 }; 10295 return e.ɵfac = function(i) { 10296 return new (i || e)(); 10297 }, e.ɵprov = R({ 10298 token: e, 10299 factory: e.ɵfac, 10300 providedIn: "root" 10301 }), e; 10302 })(); 10303 })))(); 10304} 10305var ms, va; 10306function wg() { 10307 return (wg = Z((() => { 10308 ms = (function(e) { 10309 return e.Sunday = "Sunday", e.Monday = "Monday", e.Tuesday = "Tuesday", e.Wednesday = "Wednesday", e.Thursday = "Thursday", e.Friday = "Friday", e.Saturday = "Saturday", e; 10310 })(ms || {}), va = class Fi { 10311 static getNow() { 10312 return /* @__PURE__ */ new Date(); 10313 } 10314 static getDate(i) { 10315 return i === void 0 ? Fi.getNow() : new Date(i); 10316 } 10317 static buildDate(i, t, r, s, n, a, o) { 10318 let l = arguments.length; 10319 switch (l) { 10320 case 2: return new Date(i, t); 10321 case 3: return new Date(i, t, r); 10322 case 4: return new Date(i, t, r, s); 10323 case 5: return new Date(i, t, r, s, n); 10324 case 6: return new Date(i, t, r, s, n, a); 10325 } 10326 if (l >= 7) return new Date(i, t, r, s, n, a, o); 10327 throw new Error("Wrong number of arguments passed"); 10328 } 10329 static getStartOfDay(i) { 10330 return new Date(i.getFullYear(), i.getMonth(), i.getDate(), 0, 0, 0, 0); 10331 } 10332 static getStartOfMinute(i) { 10333 return new Date(i.getFullYear(), i.getMonth(), i.getDate(), i.getHours(), i.getMinutes(), 0, 0); 10334 } 10335 static getEndOfDay(i, t = 0) { 10336 let r = new Date(i); 10337 return r.setDate(i.getDate() + t), new Date(r.getFullYear(), r.getMonth(), r.getDate(), 23, 59, 59, 999); 10338 } 10339 static addHours(i, t = 0) { 10340 return Fi.getDate(i.setHours(i.getHours() + t)); 10341 } 10342 static subtractHours(i, t = 0) { 10343 return Fi.getDate(i.setHours(i.getHours() - t)); 10344 } 10345 static now() { 10346 return Fi.getNow().valueOf(); 10347 } 10348 static getEndOfMonth(i) { 10349 let t = i ?? Fi.getNow(); 10350 return new Date(t.getFullYear(), t.getMonth() + 1, 0); 10351 } 10352 static getDaysTo(i) { 10353 let t = i.getTime() - Fi.getNow().getTime(); 10354 return Math.ceil(t / 864e5); 10355 } 10356 static getTimeDifference(i, t) { 10357 let r = i.valueOf() - Fi.now(); 10358 return t ? Math.floor(r / 1e3) : r; 10359 } 10360 static checkTimer(i, t) { 10361 return Fi.getTimeDifference(i, !0) <= t; 10362 } 10363 static getDayOfWeek() { 10364 let i = Fi.getDate(); 10365 return Fi.toDayOfWeek(i.getDay()); 10366 } 10367 static toDayOfWeek(i) { 10368 switch (i) { 10369 case 0: return ms.Sunday; 10370 case 1: return ms.Monday; 10371 case 2: return ms.Tuesday; 10372 case 3: return ms.Wednesday; 10373 case 4: return ms.Thursday; 10374 case 5: return ms.Friday; 10375 case 6: return ms.Saturday; 10376 default: throw new Error(`Invalid day index: ${i}`); 10377 } 10378 } 10379 static daysFromNow(i) { 10380 let t = Fi.getDate(); 10381 return Fi.buildDate(t.getFullYear(), t.getMonth(), t.getDate() + i); 10382 } 10383 }; 10384 })))(); 10385} 10386var uT, pT, hT, kd; 10387function Eg() { 10388 return (Eg = Z((() => { 10389 uT = (e, i = !1) => { 10390 let t = e.split(":"); 10391 return (parseInt(t[0], 10) * 3600 + parseInt(t[1], 10) * 60 + parseInt(t[2], 10)) * 1e3 + (i ? pT(e) : 0); 10392 }, pT = (e) => { 10393 let i = e.split(".")[1]; 10394 return i ? hT(i) : 0; 10395 }, hT = (e) => { 10396 let i = e.slice(0, 3); 10397 return parseInt(i.padEnd(3, "0"), 10); 10398 }, kd = (e, i) => { 10399 let t = new Date(e); 10400 return t.setMinutes(t.getMinutes() + (i ?? 0)), t; 10401 }; 10402 })))(); 10403} 10404var mT; 10405function fT() { 10406 return (fT = Z((() => { 10407 Re(), de(), Ye(), Yn(), sg(), Eg(), yg(), wg(), mT = (() => { 10408 class e { 10409 bettingService = f(bg); 10410 urlConfig = f(Ry); 10411 sitecore = f(Dy); 10412 intervalStartOfDay(t, r, s, n, a, o) { 10413 let l = va.getDate(), c = va.getStartOfDay(l), d = o, u = this.buildInterval(t, c, r, s, n, a); 10414 return u.trackingSource = d, u; 10415 } 10416 intervalStartingNow(t, r, s, n, a, o) { 10417 let l = va.getDate(), c = va.getStartOfMinute(l), d = o, u = this.buildInterval(t, c, r, s, n, a); 10418 return u.trackingSource = d, u; 10419 } 10420 getCounts(t) { 10421 return this.getCountsForSport(t).pipe(xe((r) => r.intervals)); 10422 } 10423 getCountsForSport(t, r) { 10424 let s = t.all && t.live; 10425 s && delete t.live; 10426 let n = this.buildRequestParameters(t, r); 10427 return this.bettingService.getBatchCounts(n).pipe(xe((a) => { 10428 if (!a) return { 10429 intervals: {}, 10430 sport: void 0 10431 }; 10432 let o = m$(a, (l, c) => J(C({}, t[c]), { count: qb(l, (d) => d.live + (c === "live" ? 0 : d.preMatch)) })); 10433 return s && (o.live = { 10434 name: this.urlConfig.translations.live, 10435 title: this.sitecore.globalMessages.NavLive, 10436 live: !0, 10437 count: qb(a.all, (l) => l.live), 10438 key: "live" 10439 }), { 10440 intervals: Zb(o, (l) => l.count > 0),
10441 sport: r ? this.getSportItem(+r, a) : void 0 10442 }; 10443 })); 10444 } 10445 buildRequestParameters(t, r) { 10446 return Object.keys(t).map((s) => ({ 10447 batchId: s, 10448 request: { 10449 fixtureTypes: "Standard", 10450 state: "Latest", 10451 tagTypes: "Sport", 10452 extendedTags: "Sport", 10453 from: t[s].from?.toISOString(), 10454 to: t[s].to?.toISOString(), 10455 sportIds: s === "all" ? void 0 : r 10456 } 10457 })); 10458 } 10459 buildInterval(t, r, s, n, a, o) { 10460 return { 10461 name: t, 10462 from: kd(r, s), 10463 to: kd(r, n), 10464 title: a, 10465 key: o 10466 }; 10467 } 10468 getSportItem(t, r) { 10469 let s = Object.values(r).at(0)?.filter((n) => n.tag.id === t); 10470 return rg.fromTag(s).at(0); 10471 } 10472 static ɵfac = function(t) { 10473 return new (t || e)(); 10474 }; 10475 static ɵprov = R({ 10476 token: e, 10477 factory: e.ɵfac, 10478 providedIn: "root" 10479 }); 10480 } 10481 return e; 10482 })(); 10483 })))(); 10484} 10485var Cg; 10486function gT() { 10487 return (gT = Z((() => { 10488 Cg = (function(e) { 10489 return e.Sgp = "SGP", e.Popular = "Popular", e; 10490 })(Cg || {}); 10491 })))(); 10492} 10493var Ng, Tg, kg, xg, Ig, Og, Pg; 10494function vT() { 10495 return (vT = Z((() => { 10496 Ng = (function(e) { 10497 return e.MarketType = "MarketType", e.Happening = "Happening", e.Outcome = "Outcome", e.Period = "Period", e.FixtureParticipant = "FixtureParticipant", e.Handicap = "Handicap", e.DecimalHandicap = "DecimalHandicap", e.Places = "Places", e.Position = "Position", e.IntegerValue = "IntegerValue", e.DecimalValue = "DecimalValue", e.RangeValue = "RangeValue", e.TemplateId = "TemplateId", e.CategoryId = "CategoryId", e.SubPeriodNumber = "SubPeriodNumber", e.FixtureParticipantList = "FixtureParticipantList", e.Lengths = "Lengths", e.MarketSubType = "MarketSubType", e.SubPeriod = "SubPeriod", e; 10498 })(Ng || {}), Tg = (function(e) { 10499 return e.HeadToHead = "HeadToHead", e.TwoWayHandicap = "2wayHandicap", e.Scorer = "Scorer", e.MultiFPOverUnder = "MultiFPOver/Under", e.HappeningToOccurV2 = "HappeningToOccurV2", e.HappeningToOccurAndTeamToWin = "HappeningToOccurAndTeamToWin", e.DynamicCorrectScore = "DynamicCorrectScore", e.Spread = "SPREAD", e.CorrectScore = "CORRECT_SCORE", e.BetBuilder = "BetBuilder", e.OverUnder = "OVER_UNDER", e.TotalsOverUnder = "TOTALS_OVER_UNDER", e.AutomatedPriceBoost = "AutomatedPriceBoost", e.ThreeWay = "3way", e.TwoWay = "2way", e.BTTS = "BTTS", e.OverUnderMarket = "Over/Under", e; 10500 })(Tg || {}), kg = (function(e) { 10501 return e.PassingYards = "PassingYards", e.TouchdownPass = "TouchdownPass", e.Points = "Points", e.FantasyPoints = "FantasyPoints", e; 10502 })(kg || {}), xg = (function(e) { 10503 return e.ThreeWay = "ThreeWay", e.ThreeWayWithNumber = "3way", e.OverUnder = "OverUnder", e.DoubleChance = "DoubleChance", e.DrawNoBet = "DrawNoBet", e.Handicap = "Handicap", e.CorrectScore = "CorrectScore", e.DynamicCorrectScore = "DynamicCorrectScore", e.GoalBand = "GoalBand", e.GoalMethod = "GoalMethod", e.OddEven = "OddEven", e.HomeAwayNoBet = "HomeAwayNoBet", e.WinningDifference = "WinningDifference", e.XthHappening = "XthHappening", e.Scorer = "Scorer", e.ScorerWithAnyOther = "ScorerWithAnyOther", e.ScorerWithoutNoScoreOption = "ScorerWithoutNoScoreOption", e.OverAndUnder = "Over/Under", e.RaceWinningDistanceX = "RaceWinningDistanceX", e; 10504 })(xg || {}), Ig = (function(e) { 10505 return e.RegularTime = "RegularTime", e.FirstHalf = "FirstHalf", e.SecondHalf = "SecondHalf", e.ExtraTime = "ExtraTime", e; 10506 })(Ig || {}), Og = (function(e) { 10507 return e.Goal = "Goal", e.NonOwnGoal = "NonOwnGoal", e.Foul = "Foul", e.FreeKick = "FreeKick", e.Corner = "Corner", e.ThrowIn = "ThrowIn", e.GoalKick = "GoalKick", e.Penalty = "Penalty", e.Offside = "Offside", e.Kickoff = "Kickoff", e.YellowCard = "YellowCard", e.RedCard = "RedCard", e.Substitution = "Substitution", e.PassingYards = "PassingYards", e.RushingYards = "RushingYards", e.ReceivingYards = "ReceivingYards", e.RushingReceivingYards = "RushingReceivingYards", e; 10508 })(Og || {}), Pg = (function(e) { 10509 return e.TwoUp3wayPricing = "2Up3wayPricing", e.YesNo = "YesNo", e; 10510 })(Pg || {}); 10511 })))(); 10512} 10513var Ag, $g, _g; 10514function ST() { 10515 return (ST = Z((() => { 10516 Ag = (function(e) { 10517 return e[e.All = -1] = "All", e[e.BetBuilder = -2] = "BetBuilder", e[e.MyBets = -3] = "MyBets", e[e.MyMarkets = -4] = "MyMarkets", e[e.Sgp = -5] = "Sgp", e[e.Other = 1e4] = "Other", e; 10518 })(Ag || {}), $g = (function(e) { 10519 return e.PriceBoost = "PriceBoost", e.PreCreatedBab = "PreCreatedBAB", e; 10520 })($g || {}), _g = (function(e) { 10521 return e.Ascending = "asc", e.Descending = "desc", e; 10522 })(_g || {}); 10523 })))(); 10524} 10525function Fs(e, i, t = 0) { 10526 let r = e ?? t, s = i ?? t; 10527 return r || s ? [r, s] : Lg; 10528} 10529function RD(e) { 10530 if (!e) return; 10531 let i = e.split(":"); 10532 return [parseInt(i[0], 10), parseInt(i[1], 10)]; 10533} 10534function LD(e) { 10535 let i = Math.floor(e / 60), t = e % 60; 10536 return `${i < 10 ? `0${i.toString()}` : i}:${t < 10 ? `0${t.toString()}` : t}`; 10537} 10538function Mg(e, i) { 10539 let t = { 10540 participant1: { 10541 periods: [], 10542 total: 0 10543 }, 10544 participant2: { 10545 periods: [], 10546 total: 0 10547 }, 10548 matchType: -1 10549 }; 10550 if (!e.score) return t;
10551 let { scorePeriods: r, overtimePeriod: s } = i, n = e.score.split(":").map((l) => parseInt(l, 10)), a = (l, c, d) => ({ 10552 points: e.totalPoints[`player${l}`][c] ?? "-", 10553 current: d === c 10554 }), o = (l, c) => ({ 10555 periods: e.totalPoints ? r.map((d) => a(l, d, c)) : [], 10556 overTimeScore: e.totalPoints ? e.totalPoints[`player${l}`][s] : void 0, 10557 total: n[l - 1] 10558 }); 10559 return J(C({}, t), { 10560 participant1: o(1, e.periodId), 10561 participant2: o(2, e.periodId), 10562 turn: e.turn 10563 }); 10564} 10565function bT(e, i) { 10566 let t = e?.find((r) => r.teamOrder === i); 10567 return t ? { 10568 firstHalf: t.firstHalf, 10569 overtime: t.overtime, 10570 secondHalf: t.secondHalf 10571 } : wT; 10572} 10573function En(e) { 10574 if (e?.player1) return Fs(e.player1[Jt.Finished], e.player2[Jt.Finished]); 10575} 10576function BD({ activeDown: e, yardsDistance: i, yardsToNextDown: t }, r, s) { 10577 if (!e || i === 0 || t === 0 || r === Jt.Halftime || r === Jt.RegularTimeOver) return; 10578 let n = `${e} & ${t}`; 10579 return i === 50 ? `${n}, ${s.on} ${i}` : i > 50 && i <= 100 ? `${n}, ${s.own} ${100 - i}` : i < 50 ? `${n}, ${s.opp} ${i}` : n; 10580} 10581function DD({ turnovers: e, penalties: i, touchdowns: t, fieldGoals: r, safeties: s, onePointConversions: n, twoPointsConversions: a, activeDown: o, yardsDistance: l, yardsToNextDown: c, timeoutsLeft: d, timeValue: u }) { 10582 return { 10583 turnovers: En(e), 10584 penalties: En(i), 10585 touchdowns: En(t), 10586 fieldGoals: En(r), 10587 safeties: En(s), 10588 onePointConversions: En(n), 10589 twoPointsConversions: En(a), 10590 activeDown: o, 10591 yardsDistance: l, 10592 yardsToNextDown: c, 10593 timeoutsLeft: d && [bT(d, "Team01"), bT(d, "Team02")], 10594 timeValue: u 10595 }; 10596} 10597function FD(e) { 10598 return { 10599 score: Mg(e, { 10600 scorePeriods: [ 10601 Jt.FirstQuarter, 10602 Jt.SecondQuarter, 10603 Jt.ThirdQuarter, 10604 Jt.FourthQuarter 10605 ], 10606 overtimePeriod: Jt.Overtime 10607 }), 10608 statistics: "messages" in e ? DD(e) : void 0 10609 }; 10610} 10611function Rg(e, i) { 10612 return e === 0 || i === 0 ? 0 : +(e / i * 100).toFixed(); 10613} 10614function _r(e, i) { 10615 if (!(!i || i < 1 || !e?.player1)) return C(C(C({ 10616 firstQuarter: Fs(e.player1[Ze.FirstQuarter], e.player2[Ze.FirstQuarter]), 10617 regularTime: Fs(e.player1[Ze.Finished], e.player2[Ze.Finished]) 10618 }, i >= Ze.SecondQuarter && { secondQuarter: Fs(e.player1[Ze.SecondQuarter], e.player2[Ze.SecondQuarter]) }), i >= Ze.ThirdQuarter && { thirdQuarter: Fs(e.player1[Ze.ThirdQuarter], e.player2[Ze.ThirdQuarter]) }), i >= Ze.ForthQuarter && { fourthQuarter: Fs(e.player1[Ze.ForthQuarter], e.player2[Ze.ForthQuarter]) }); 10619} 10620function zD(e, i, t) { 10621 if (!e && !i) return; 10622 let r = _r(e, t), s = _r(i, t); 10623 return C({ 10624 scored: r, 10625 total: s 10626 }, r?.regularTime && s?.regularTime && { overall: Fs(Rg(r.regularTime[0], s.regularTime[0]), Rg(r.regularTime[1], s.regularTime[1])) }); 10627} 10628function GD({ periodId: e, threePointers: i, twoPointers: t, freeThrowsScored: r, freeThrowsTotals: s, fouls: n, rebounds: a, assists: o, totalPoints: l, raceTo10: c, raceTo20: d }) { 10629 return { 10630 threePointers: _r(i, e), 10631 twoPointers: _r(t, e), 10632 freeThrows: zD(r, s, e), 10633 fouls: _r(n, e), 10634 rebounds: _r(a, e), 10635 assists: _r(o, e), 10636 points: _r(l, e), 10637 raceTo10: _r(c, e), 10638 raceTo20: _r(d, e) 10639 }; 10640} 10641function VD(e) { 10642 let i = Mg(e, { 10643 scorePeriods: e.matchType === 1 ? [Ze.FirstHalf, Ze.SecondHalf] : [ 10644 Ze.FirstQuarter, 10645 Ze.SecondQuarter, 10646 Ze.ThirdQuarter, 10647 Ze.ForthQuarter 10648 ], 10649 overtimePeriod: Ze.Overtime 10650 }), t = "messages" in e ? GD(e) : void 0; 10651 if (!e.score) return { 10652 score: i, 10653 statistics: t 10654 }; 10655 let r = J(C({}, i), { matchType: e.matchType }); 10656 return "playerInfo" in e && (r.playerInfo = e.playerInfo), { 10657 score: r, 10658 statistics: t 10659 }; 10660} 10661function yT(e) { 10662 return CT.get(e) ?? ct.PairGame; 10663} 10664function HD(e, i) { 10665 if (i) return ct.TournamentGame; 10666 let t = yT(e); 10667 return t === ct.TournamentGame ? ct.PairGame : t; 10668} 10669function UD(e, i) { 10670 let t = [ 10671 ee.Cricket, 10672 ee.Boxing, 10673 ee.Rugby, 10674 ee.RugbyLeague, 10675 ee.RugbyUnion, 10676 ee.Soccer, 10677 ee.Baseball 10678 ], r = [ 10679 ee.Volleyball, 10680 ee.TableTennis, 10681 ee.Tennis 10682 ]; 10683 if (t.includes(e) && i === 256 || r.includes(e) && i === 6) return !0; 10684 if (i) { 10685 if (e === ee.Basketball) return Dg.has(i); 10686 if (e === ee.AmericanFootball) return Bg.has(i); 10687 } 10688} 10689function WD(e) { 10690 return TT.has(e) ? Lo.CountDown : Lo.CountUp; 10691} 10692function jD(e) { 10693 if (!(e.playerInfo && e.playerInfo.colorsAvailable && e.playerInfo.players)) return; 10694 let i = Object.keys(e.playerInfo.players).map((t) => e.playerInfo.players[t]?.shirtColor).filter(Is); 10695 if (i.length > 0) return i; 10696} 10697var Lg, Jt, Bg, wT, Ze, Dg, ct, Lo, ET, CT, NT, TT; 10698function Fg() { 10699 return (Fg = Z((() => { 10700 Re(), Ua(), Kn(), Lg = [0, 0], Jt = (function(e) { 10701 return e[e.FirstQuarter = 1] = "FirstQuarter", e[e.FirstIntermission = 2] = "FirstIntermission", e[e.SecondQuarter = 3] = "SecondQuarter", e[e.Halftime = 4] = "Halftime", e[e.ThirdQuarter = 5] = "ThirdQuarter", e[e.ThirdIntermission = 6] = "ThirdIntermission", e[e.FourthQuarter = 7] = "FourthQuarter", e[e.RegularTimeOver = 8] = "RegularTimeOver", e[e.Overtime = 9] = "Overtime", e[e.Finished = 255] = "Finished", e; 10702 })(Jt || {}), Bg = /* @__PURE__ */ new Set([ 10703 Jt.FirstIntermission, 10704 Jt.Halftime, 10705 Jt.ThirdIntermission, 10706 Jt.RegularTimeOver, 10707 Jt.Finished 10708 ]), wT = { 10709 firstHalf: 0, 10710 overtime: 0, 10711 secondHalf: 0 10712 }, Ze = (function(e) { 10713 return e[e.FirstQuarter = 1] = "FirstQuarter", e[e.FirstHalf = 1] = "FirstHalf", e[e.FirstIntermission = 2] = "FirstIntermission", e[e.SecondQuarter = 3] = "SecondQuarter", e[e.SecondHalf = 3] = "SecondHalf", e[e.SecondIntermission = 4] = "SecondIntermission", e[e.ThirdQuarter = 5] = "ThirdQuarter", e[e.ThirdIntermission = 6] = "ThirdIntermission", e[e.ForthQuarter = 7] = "ForthQuarter", e[e.ForthIntermission = 8] = "ForthIntermission", e[e.RegularTimeOver = 9] = "RegularTimeOver", e[e.Overtime = 10] = "Overtime", e[e.OverTimeIntermission = 11] = "OverTimeIntermission", e[e.Finished = 255] = "Finished", e; 10714 })(Ze || {}), Dg = /* @__PURE__ */ new Set([ 10715 Ze.FirstIntermission, 10716 Ze.SecondIntermission, 10717 Ze.ThirdIntermission, 10718 Ze.ForthIntermission, 10719 Ze.RegularTimeOver, 10720 Ze.OverTimeIntermission,
10721 Ze.Finished 10722 ]), ct = (function(e) { 10723 return e.AmericanFootball = "AmericanFootball", e.Baseball = "Baseball", e.Basketball = "Basketball", e.Cricket = "Cricket", e.Darts = "Darts", e.Football = "Football", e.Formula1 = "Formula1", e.Icehockey = "Icehockey", e.Snooker = "Snooker", e.Tennis = "Tennis", e.PairGame = "PairGame", e.SetGame = "SetGame", e.SpecialGame = "SpecialGame", e.TournamentGame = "TournamentGame", e; 10724 })(ct || {}), Lo = (function(e) { 10725 return e.CountUp = "CountUp", e.CountDown = "CountDown", e; 10726 })(Lo || {}), ET = /* @__PURE__ */ new Map([ 10727 [ct.Football, [ee.Soccer, ee.Futsal]], 10728 [ct.Tennis, [ee.Tennis, ee.Padel]], 10729 [ct.SetGame, [ 10730 ee.Volleyball, 10731 ee.Badminton, 10732 ee.Squash, 10733 ee.TableTennis, 10734 ee.Beachvolleyball 10735 ]], 10736 [ct.Basketball, [ee.Basketball]], 10737 [ct.AmericanFootball, [ee.AmericanFootball]], 10738 [ct.Icehockey, [ee.Icehockey]], 10739 [ct.Baseball, [ee.Baseball]], 10740 [ct.Snooker, [ee.Snooker]], 10741 [ct.Darts, [ee.Darts]], 10742 [ct.Cricket, [ee.Cricket]], 10743 [ct.Formula1, [ee.Formula1]], 10744 [ct.TournamentGame, [ 10745 ee.Athletics, 10746 ee.Biathlon, 10747 ee.Bobsleigh, 10748 ee.Canoeing, 10749 ee.CrossCountrySkiing, 10750 ee.Cycling, 10751 ee.Diving, 10752 ee.Entertainment, 10753 ee.Equestrian, 10754 ee.Esports, 10755 ee.FigureSkating, 10756 ee.Financials, 10757 ee.FreestyleSkiing, 10758 ee.GaelicSports, 10759 ee.Golf, 10760 ee.Greyhounds, 10761 ee.Gymnastics, 10762 ee.Horses, 10763 ee.Luge, 10764 ee.Motocross, 10765 ee.Motorbikes, 10766 ee.MotorRacing, 10767 ee.Motorsport, 10768 ee.Nascar, 10769 ee.NordicCombined, 10770 ee.OlympicsSpecials, 10771 ee.Poker, 10772 ee.Politics, 10773 ee.Rally, 10774 ee.Rowing, 10775 ee.Sailing, 10776 ee.Schwingen, 10777 ee.Shooting, 10778 ee.ShowJumping, 10779 ee.Skeleton, 10780 ee.Skialpine, 10781 ee.SkiJumping, 10782 ee.Skinordic, 10783 ee.Snowboarding, 10784 ee.SpeedSkating, 10785 ee.Speedway, 10786 ee.Swimming, 10787 ee.Triathlon, 10788 ee.Trotting, 10789 ee.WeightLifting 10790 ]], 10791 [ct.SpecialGame, [ee.Boxing]] 10792 ]), CT = new Map(Array.from(ET.entries()).flatMap(([e, i]) => i.map((t) => [t, e]))), NT = /* @__PURE__ */ new Set([ 10793 ee.Boxing, 10794 ee.Cricket, 10795 ee.IndoorSoccer, 10796 ee.Pool, 10797 ee.Soccer 10798 ]), TT = /* @__PURE__ */ new Set([ee.Basketball, ee.AmericanFootball]); 10799 })))(); 10800} 10801function YD(e) { 10802 if (e) { 10803 if (e.playtech) return { 10804 id: e.playtech, 10805 type: Bo.Playtech 10806 }; 10807 if (e.inspired) return { 10808 id: e.inspired, 10809 type: Bo.Inspired 10810 }; 10811 } 10812} 10813function KD(e, i) { 10814 return e.parameters?.find((t) => t.key === i)?.value; 10815} 10816function qD(e, i) { 10817 if (i === mi.Home) return e.rank?.homeTeam; 10818 if (i === mi.Away) return e.rank?.awayTeam; 10819} 10820function XD(e, i) { 10821 let t, r; 10822 return e.startingPitcher?.homeTeam && i === mi.Home && (t = { 10823 firstName: e.startingPitcher?.homeTeam?.firstName, 10824 lastName: e.startingPitcher?.homeTeam?.lastName, 10825 preferredName: e.startingPitcher?.homeTeam?.preferredName 10826 }), e.startingPitcher?.awayTeam && i === mi.Away && (t = { 10827 firstName: e.startingPitcher?.awayTeam?.firstName, 10828 lastName: e.startingPitcher?.awayTeam?.lastName, 10829 preferredName: e.startingPitcher?.awayTeam?.preferredName 10830 }), t && (r = `${t.preferredName?.charAt(0) ?? t.firstName?.charAt(0)}. ${t.lastName}`), r; 10831} 10832function JD(e, i, t) { 10833 let r, s; 10834 if (i === mi.Home && e.seasonStandings?.homeTeam && (r = { 10835 wonMatches: e.seasonStandings?.homeTeam?.wonEvents, 10836 lossMatches: e.seasonStandings?.homeTeam?.lostEvents, 10837 drawMatches: e.seasonStandings?.homeTeam?.drawEvents, 10838 lostEventsOvertime: e.seasonStandings?.homeTeam?.lostEventsOvertime 10839 }), i === mi.Away && e.seasonStandings?.awayTeam && (r = { 10840 wonMatches: e.seasonStandings?.awayTeam?.wonEvents, 10841 lossMatches: e.seasonStandings?.awayTeam?.lostEvents, 10842 drawMatches: e.seasonStandings?.awayTeam?.drawEvents, 10843 lostEventsOvertime: e.seasonStandings?.awayTeam?.lostEventsOvertime 10844 }), r) { 10845 let n = t.competitionOverrides && t.competitionOverrides[e.league.id]; 10846 n || (n = t.default), s = n.replace("{{WW}}", r.wonMatches ? r.wonMatches.toString() : "0").replace("{{LL}}", r.lossMatches ? r.lossMatches.toString() : "0").replace("-{{DD}}", r.drawMatches ? `-${r.drawMatches.toString()}` : "").replace("-{{LOT}}", r.lostEventsOvertime ? `-${r.lostEventsOvertime.toString()}` : ""); 10847 } 10848 return s; 10849} 10850function kT(e) { 10851 if (e.homeTeamHomeForm) return mi.Home; 10852 if (e.awayTeamAwayForm) return mi.Away; 10853 if (e.overallHomeTeamForm || e.overallAwayTeamForm) return (e.overallHomeTeamForm?.winCount || 0) >= (e.overallAwayTeamForm?.winCount || 0) ? mi.Home : mi.Away; 10854} 10855function QD(e, i, t, r) { 10856 let s = t.overridenName; 10857 return !!(r.winning && s !== "X" && s === ((n) => n === void 0 ? !1 : i === "American" ? n === mi.Home ? "2" : "1" : n === mi.Home ? "1" : "2")(kT(e))); 10858} 10859function ZD(e) { 10860 switch (e) { 10861 case "Alphabet": return Sa.Alphabet; 10862 case "Default": return Sa.Default; 10863 case "Odds": return Sa.Odds; 10864 } 10865} 10866var mi, Bo, xT, zg, IT, Gg, Vg, OT, Hg, PT, Sa, AT, $T, Ug, Wg; 10867function _T() { 10868 return (_T = Z((() => { 10869 Ye(), so(), Fg(), mi = (function(e) { 10870 return e[e.Away = 0] = "Away", e[e.Home = 1] = "Home", e; 10871 })(mi || {}), Bo = (function(e) { 10872 return e.Inspired = "inspired", e.Playtech = "playtech", e; 10873 })(Bo || {}), xT = 255, zg = (function(e) { 10874 return e.BetBuilder = "BetBuilder", e.BetBuilderStandard = "BetBuilderStandard", e.BetBuilderSixPack = "BetBuilderSixPack", e.BetBuilderOverUnder = "BetBuilderOverUnder", e.BetBuilderCorrectScore = "BetBuilderCorrectScore", e.BetBuilderSpread = "BetBuilderSpread", e.BetBuilderRaceTo = "BetBuilderRaceTo", e.BetBuilderYesNo = "BetBuilderYesNo", e.BetBuilderGoalScorer = "BetBuilderGoalScorer", e.BetBuilderPlayerProps = "BetBuilderPlayerProps", e.BetBuilderAngstrom = "BetbuilderAngstrom", e.AutomatedPriceBoost = "AutomatedPriceBoost", e.PlayerPropsPills = "PlayerPropsPills", e; 10875 })(zg || {}), IT = class {}, Gg = (function(e) { 10876 return e[e.Combo2 = 2] = "Combo2", e[e.Combo3 = 3] = "Combo3", e[e.Combo4 = 4] = "Combo4", e[e.Combo5 = 5] = "Combo5", e[e.Combo6 = 6] = "Combo6", e[e.Single = 1] = "Single", e; 10877 })(Gg || {}), Vg = (function(e) { 10878 return e[e.AllCombo = 1] = "AllCombo", e[e.AllLiveEvents = 8] = "AllLiveEvents", e[e.N
10878oCombo = 2] = "NoCombo", e[e.NoCompetitionCombo = 10] = "NoCompetitionCombo", e[e.NoEventCombo = 6] = "NoEventCombo", e[e.NoEventSameLeagueCombo = 7] = "NoEventSameLeagueCombo", e[e.NoFixtureCombo = 11] = "NoFixtureCombo", e[e.NoGroupCombo = 12] = "NoGroupCombo", e[e.NoLeagueCombo = 4] = "NoLeagueCombo", e[e.NoSportCombo = 3] = "NoSportCombo", e[e.OtherLiveEvents = 9] = "OtherLiveEvents", e; 10879 })(Vg || {}), OT = class {}, Hg = (function(e) { 10880 return e.Regular = "Regular", e.Period = "Period", e.MarketTab = "MarketTab", e.DynamicMarket = "DynamicMarket", e.SixPack = "SixPack", e.Pill = "Pill", e; 10881 })(Hg || {}), PT = class { 10882 hasSubGroups(e) { 10883 return this.subGroups ? this.subGroups.some((i) => i.type === e) : !1; 10884 } 10885 getSubGroups(e) { 10886 return this.subGroups ? this.subGroups.filter((i) => i.type === e) : []; 10887 } 10888 hasGroup(e) { 10889 return this.gridGroups?.includes(e.toString()) ?? !1; 10890 } 10891 hasAnyGroup() { 10892 return !f$(this.gridGroups); 10893 } 10894 get isBetBuilder() { 10895 return this.options.some((e) => e.isBetBuilder); 10896 } 10897 }, Sa = (function(e) { 10898 return e.Alphabet = "Alphabet", e.Default = "Default", e.Odds = "Odds", e.Order = "Order", e; 10899 })(Sa || {}), AT = class {}, $T = class { 10900 constructor() { 10901 this.optionGroups = [], this.optionSets = [], this.participants = [], this.players = [], this.scoreboard = { 10902 id: "", 10903 type: ct.PairGame, 10904 started: !1, 10905 score: void 0, 10906 timerVisible: !1, 10907 timerRunning: !1, 10908 bestOf: 0 10909 }, this.published = !0, this.marketsDictionary = {}; 10910 } 10911 isSetGame() { 10912 return this.isGameOfType(ct.SetGame) || this.isGameOfType(ct.Tennis); 10913 } 10914 isTournamentGame() { 10915 return this.isGameOfType(ct.TournamentGame) || this.fixtureType === "Tournament"; 10916 } 10917 isBaseballGame() { 10918 return this.isGameOfType(ct.Baseball); 10919 } 10920 isLeaderboardGame() { 10921 return this.isGameOfType(ct.Formula1); 10922 } 10923 isFinished() { 10924 return !!this.scoreboard.period && this.scoreboard.period.id === xT; 10925 } 10926 getBestPerformingParticipant() { 10927 if (this.fixtureForm) return kT(this.fixtureForm); 10928 } 10929 isBestPerformingOption(e, i) {
10930 return this.fixtureForm ? QD(this.fixtureForm, this.viewType, e, i) : !1; 10931 } 10932 getBetBuilderConsumerFixtureId() { 10933 return this.betBuilderFixtureId || A1(this.betBuilderTradingV2FixtureId ?? ""); 10934 } 10935 getBetBuilderIdByStage(e, i) { 10936 let t = e.includes(this.league.realCompetitionId ?? this.league.id) || i.includes(this.sport.id); 10937 return (!this.live || this.live && t) && this.betBuilderInfo?.betBuilderId && this.betBuilderInfo?.betBuilderProvider !== "Default" ? this.betBuilderInfo?.betBuilderId : void 0; 10938 } 10939 isGameOfType(e) { 10940 return this.scoreboard.type === e; 10941 } 10942 }, Ug = (function(e) { 10943 return e.NotExists = "NotExists", e.Equals = "Equals", e.ToHappen = "ToHappen", e.NotToHappen = "NotToHappen", e.Max = "Max", e.Over = "Over", e.Under = "Under", e.Draw = "Draw", e.EqualsOrOver = "EqualsOrOver", e; 10944 })(Ug || {}), Wg = (function(e) { 10945 return e.Twitch = "Twitch", e.Beter = "Beter", e.IGameMedia = "IGameMedia", e; 10946 })(Wg || {}); 10947 })))(); 10948} 10949var jg, MT, RT; 10950function LT() { 10951 return (LT = Z((() => { 10952 Re(), mo(), os(), jg = (function(e) { 10953 return e.Digital = "Digital", e.BetStation = "BetStation", e; 10954 })(jg || {}), MT = ae("PICKS/ADD_PICK", (e, i) => J(C({}, e), { source: i ?? pn.Local })), RT = ae("PICKS/REMOVE_PICK", ut()); 10955 })))(); 10956} 10957var Cn, BT; 10958function DT() { 10959 return (DT = Z((() => { 10960 os(), Sd(), Cn = class {}, Cn.ACTION_SCHEMA = `${wo.ACTION_SCHEMA}/edit-bet`, Cn.REQUEST_DISCARD = `${Cn.ACTION_SCHEMA}/REQUEST_DISCARD`, Cn.requestDiscard = ae(Cn.REQUEST_DISCARD), BT = Cn; 10961 })))(); 10962} 10963var FT; 10964function zT() { 10965 return (zT = Z((() => { 10966 de(), st(), Ht(), FT = (() => { 10967 class e { 10968 session = f(N$); 10969 local = f(sp); 10970 nativeAppService = f(Yr); 10971 STORE_KEY = "redux-store-v3"; 10972 save(t) { 10973 if (!this.nativeAppService.isTerminal) { 10974 this.local.set(this.STORE_KEY, t); 10975 return; 10976 } 10977 this.session.set(this.STORE_KEY, t); 10978 } 10979 load() { 10980 return (this.nativeAppService.isTerminal ? this.session.get(this.STORE_KEY) : this.local.get(this.STORE_KEY)) || void 0; 10981 } 10982 static ɵfac = function(t) { 10983 return new (t || e)(); 10984 }; 10985 static ɵprov = R({ 10986 token: e, 10987 factory: e.ɵfac, 10988 providedIn: "root" 10989 }); 10990 } 10991 return e; 10992 })(); 10993 })))(); 10994} 10995var GT, ki, xd, Yg, Kg, VT, HT, qg, UT; 10996function WT() { 10997 return (WT = Z((() => { 10998 Re(), de(), Ye(), Cd(), GT = class { 10999 constructor() { 11000 this.tasks = []; 11001 } 11002 schedule(e) { 11003 this.tasks.push(e); 11004 } 11005 flush() { 11006 requestAnimationFrame(() => { 11007 this.tasks.forEach((e) => e()), this.tasks = []; 11008 }); 11009 } 11010 }, ki = (function(e) { 11011 return e.Left = "Left", e.Center = "Center", e.Right = "Right", e; 11012 })(ki || {}), xd = (function(e) { 11013 return e.Default = "default", e.Small = "sm", e.Large = "lg", e.ExtraLarge = "xl", e; 11014 })(xd || {}), Yg = (function(e) { 11015 return e[e.Default = 0] = "Default", e[e.Large = 1] = "Large", e[e.ExtraLarge = 2] = "ExtraLarge", e; 11016 })(Yg || {}), Kg = class { 11017 constructor(e, i) { 11018 this.availableColumns = [...this.orderedColumns], this.contentColumns = [], this._registeredComponents = /* @__PURE__ */ new Map(), this.refreshLayout(e), i && i.forEach((t) => this.registerComponent(t)); 11019 } 11020 get orderedColumns() { 11021 return []; 11022 } 11023 get isLeftVisible() { 11024 return this.columnVisible(ki.Left); 11025 } 11026 get isRightVisible() { 11027 return this.columnAvailable(ki.Right); 11028 } 11029 get shouldHaveLeftColumn() { 11030 return this.columnAvailable(ki.Left); 11031 } 11032 get shouldHaveRightColumn() { 11033 return this.columnAvailable(ki.Right); 11034 } 11035 get shouldHaveThreeColumns() { 11036 return this.shouldHaveLeftColumn && this.shouldHaveRightColumn; 11037 } 11038 get maxColumnCount() { 11039 return this.availableColumns.length; 11040 } 11041 get visibleColumns() { 11042 let e = [ki.Center]; 11043 return this.isLeftVisible && e.push(ki.Left), this.isRightVisible && e.push(ki.Right), e; 11044 } 11045 columnVisible(e) { 11046 return this.columnAvailable(e) && this.contentColumns.includes(e); 11047 } 11048 registeredComponents() { 11049 return [...this._registeredComponents.values()]; 11050 } 11051 registerComponent(e) { 11052 return this._registeredComponents.has(e.component) ? !1 : (this._registeredComponents.set(e.component, C({}, e)), this.checkColumnsForComponents(), !0); 11053 } 11054 removeComponent(e) { 11055 this._registeredComponents.delete(e), this.checkColumnsForComponents(); 11056 } 11057 refreshLayout(e) { 11058 let i = this.availableColumns.length !== e; 11059 return this.availableColumns = this.orderedColumns.slice(0, e), i; 11060 } 11061 columnAvailable(e) { 11062 return this.availableColumns.includes(e); 11063 } 11064 checkColumnsForComponents() { 11065 let e = this.registeredComponents().map((i) => i.location); 11066 this.contentColumns = p$(e); 11067 } 11068 }, VT = class extends Kg { 11069 get orderedColumns() { 11070 return [ki.Center]; 11071 } 11072 }, HT = class extends Kg { 11073 get orderedColumns() { 11074 return [ 11075 ki.Center, 11076 ki.Left, 11077 ki.Right 11078 ]; 11079 } 11080 }, qg = class { 11081 constructor(e) { 11082 this.flags = e; 11083 } 11084 get htmlClasses() { 11085 let e = []; 11086 return this.flags.htmlClass && e.push(this.flags.htmlClass), this.flags.cardContent && e.push("card-content"), this.flags.fixedContent && e.push("fixed-content"), this.flags.subN
11086avigation && e.push("header-sub-navigation"), this.flags.stickyHeader && e.push("header-sticky"), e; 11087 } 11088 get cardContent() { 11089 return this.flags.cardContent; 11090 } 11091 get columns() { 11092 return this.flags.fixedContent ? 1 : this.flags.columns || 1; 11093 } 11094 get headerNavigation() { 11095 return this.flags.headerNavigation && (!this.flags.breadcrumbNavigation || this.flags.columns === 3); 11096 } 11097 get headerSubNavigation() { 11098 return this.flags.headerSubNavigation; 11099 } 11100 get headerSubNavigationHidden() { 11101 return !this.flags.subNavigation || this.flags.shouldHideSubNavigation && this.flags.subNavigationHiddenOnSmallScreen; 11102 } 11103 get headerTopNavigationHidden() { 11104 return !this.flags.headerNavigation || this.flags.topNavigationHiddenOnSmallScreen && this.bottomNavigation; 11105 } 11106 get headerTabNavigation() { 11107 return this.flags.headerTabNavigation; 11108 } 11109 get breadcrumbNavigation() { 11110 return this.flags.breadcrumbNavigation; 11111 } 11112 get bottomNavigation() { 11113 return !!this.flags && !!this.flags.columns && this.flags.columns < 3 && !!this.flags.bottomNavigation; 11114 } 11115 get hasRightColumn() { 11116 return this.columns === 3; 11117 } 11118 get quickBetActive() { 11119 return !!this.flags.quickBetActive && this.quickBetCanBeShown; 11120 } 11121 get quickBetBuilderActive() { 11122 return !!this.flags.quickBetBuilderActive; 11123 } 11124 get quickBetCanBeShown() { 11125 return this.columns < 3 || !!this.flags.quickBetBuilderActive; 11126 } 11127 get primaryModularHeader() { 11128 return this.flags.primaryModularHeader ?? !1; 11129 } 11130 get rightColumnSize() { 11131 return this.flags.rightColumnSize || xd.Default; 11132 } 11133 get showDesktopAZSports() { 11134 return this.columns > 2; 11135 } 11136 }, UT = (() => { 11137 let e = class { 11138 constructor() { 11139 this.productUtils = f(Ed), this.state = new qg({}), this.stateChange = new Gt(this.state), this.providerListChange = new Xe(), this.currentProviders = [], this.stateChange$ = this.stateChange.asObservable(); 11140 } 11141 get current() { 11142 return this.state; 11143 } 11144 register(...t) { 11145 this.currentProviders.push(...t), this.providerListChange.next(), Gi(...this.currentProviders.map((r) => r.asObservable())).pipe(this.productUtils.filterSportsEmitLast(!0), bi(this.providerListChange)).subscribe((r) => { 11146 if (d$(this.state.flags, r)) return; 11147 let s = g$({}, this.state.flags, r); 11148 this.state = new qg(s), this.stateChange.next(u$(this.state)); 11149 }); 11150 } 11151 }; 11152 return e.ɵfac = function(i) { 11153 return new (i || e)(); 11154 }, e.ɵprov = R({ 11155 token: e, 11156 factory: e.ɵfac, 11157 providedIn: "root" 11158 }), e; 11159 })(); 11160 })))(); 11161} 11162var Xg, jT; 11163function YT() { 11164 return (YT = Z((() => { 11165 Xg = (function(e) { 11166 return e.ExampleFlag = "ldx-example-for-non-breaking-unit-testing", e.ExampleMasterFlag = "ldx-example-for-non-breaking-master-unit-testing", e.BannerGamesDisplayType = "ld16-gyml_row_display_type", e.BetslipMode = "ld18-betslip_test_spain_bab", e.DefaultStreamingTab = "ld_13-edp_streaming_tab", e.DisplayMode = "DisplayMode", e.EnableLiveAlerts = "EnableLiveAlerts", e.IsFavouritesEllipsisEnabled = "ld24-favourites_ellipsis_enabled", e.FavouritesNavigationMenuPosition = "ld11-sports_top_navigation_bar_favourites_position", e.PlayerStatsTracking = "ld15-player_stats_bet_tracking", e.ReuseSelections = "MyBetsReuseSelections", e.SportsHomeScreenYourFavouritesWidget = "ld12-sports_homescreen_your_favourites_widget2", e.TennisBetTracking = "ld17-tennis_market_bet_tracking", e.SportsQuickLinkMode = "sports_quick_links_mode", e.EnableTabbedMultiPod = "sports_enable_popular_picks", e.EnableBRP = "sports_enable_brp", e.EnableAlternateLineBetSlip = "sports_enable_alternate_line_betslip", e.CashoutIndicator = "ld19_cashout_value_indicator", e.MyBetsUpsellModuleDisplay = "ld20_upsell_post_cashout", e.GtgPlayerStatisticsTracking = "ld21_gtg_player_statistics_tracking", e.IsEllipsisMenuTooltipEnabled = "ellipsis-menu-tooltip-enabled", e.EnableLogPlaceBetTracking = "tech_flag_log_place_bet_tracking", e.EnableFavouritesReDesignMasterFlag = "ld27-favourite-redesign", e.EnableAltLineSliderTracking = "ld24_alt_line_slider_tracking", e.QuickBetEdp = "ld28-Betbar_vs_Quickbet_Performance_EDP", e.defaultExpandedMarketsEDP = "ld21-default_expanded_markets_edp", e.DynamicCategoryWidget = "ld26-Competition_Lobby_BB_Tab", e.EnableHeadsh
11166otPlayerImagery = "ld25_headshot_player_imagery", e.RebetButton = "ld23-rebet_button_copy", e.OptimisticPickRendering = "ld32-Optimistic_Pick_Rendering", e.RollingLinesBetslipQuickbet = "ld36-Rolling_Lines_Betslip_Quickbet", e.UpsellExperiment = "ld34-OptiX_Upsell", e.EnableFootballLandingPage = "ld38-football_SLP_redesign", e.EnableMyMarkets = "ld33-EDP_My_Markets", e.SportsBetBuilderRedundantLegs = "sports_betbuilder_redundant_legs", e.BettingInsightsSurfacing = "ld46-betting_insights_surfacing", e.GymlNewToCasino = "ld42-GYML-New_to_Casino", e.UserProfileQuickLinks = "ld49-Homepage-Shortcuts", e.PrecreatedBetBuilderExperiment = "ld56-pbb_edit_journey_swap_selections", e.PBBWidgetFallbackCountMultiplier = "PBB-widget-fallback-count-multiplier", e.MarqueeVsScoreboardCarousel = "ld44-marquee_vs_scoreboard_carousel", e.MarketSearchEnabled = "sports_market_search_enabled", e.HomepageModulePositionOrdering = "ld64-homepage_module_position_ordering", e.EnableOptixSearch = "sports_search_optix", e.PrematchPlayerStatistics = "ld67-prematch_player_statistics", e; 11167 })(Xg || {}), jT = "LdFeatureFlags"; 11168 })))(); 11169} 11170function Do(e) { 11171 return e.short || e.value; 11172} 11173function e2(e) { 11174 let i = e.properties?.cloth, t = e.properties?.raceCardNumber; 11175 return i || (t != null ? String(t) : void 0); 11176} 11177var Jg, Qg, Zg, KT, ev, tv, qT, iv, rv, XT, Yi, sv, Ki, ba, nv, av, Fo, ov, lv, cv, dv, uv, JT; 11178function QT() { 11179 return (QT = Z((() => { 11180 Re(), de(), rr(), Ye(), Cs(), Hn(), Cr(), Yn(), Ua(), Kn(), Fy(), Jg = class { 11181 constructor(e, i = !1) { 11182 this.urlConfig = e, this.caseSensitive = i; 11183 } 11184 normalize(e) { 11185 if (!e) return ""; 11186 let i, t = () => i.toString(); 11187 typeof e == "string" || typeof e == "number" ? i = e : (i = e.name, t = () => [i, `${e.prefix || ""}${e.id}`].filter($l).join("-").replace("--", "-")); 11188 let r = "gim"; 11189 "unicode" in RegExp.prototype && (r += "u"); 11190 let s = new RegExp(this.urlConfig.tokenSanitizer, r), n = new RegExp(" ", r); 11191 return i = i.toString().replace(s, " ").trim().replace(n, "-").slice(0, Math.max(0, this.urlConfig.maxTokenLength)), this.caseSensitive || (i = i.toLocaleLowerCase()), t(); 11192 } 11193 }, Qg = class { 11194 constructor(e) { 11195 this.normalizer = e, this.params = [], this.query = {}; 11196 } 11197 appendIf(e) { 11198 return e ? this.append(e) : this; 11199 } 11200 append(e) { 11201 return this.params.push(this.normalizer.normalize(e)), this; 11202 } 11203 appendQuery(e) { 11204 return this.query = El(this.query, e || {}), this; 11205 } 11206 toString() { 11207 let e = Object.keys(this.query).filter((i) => this.query[i] !== null && this.query[i] !== void 0).map((i) => `${i}=${this.query[i]}`).join("&"); 11208 return e && (e = `?${e}`), `/${this.params.join("/")}${e}`; 11209 } 11210 }, Zg = (function(e) { 11211 return e.Notavailable = "N/A", e; 11212 })(Zg || {}), KT = class { 11213 constructor(e, i, t, r) { 11214 this.participant = e, this.showForecastOption = i, this.showTricastOption = t, this.first = !1, this.second = !1, this.third = !1, this.fourth = !1, this.fifth = !1, this.anyForecast = !1, this.anyTricast = !1, this.checkboxId = { 11215 first: "", 11216 second: "", 11217 third: "", 11218 fourth: "", 11219 fifth: "", 11220 anyForecast: "", 11221 anyTricast: "" 11222 }, this.checkboxId = { 11223 first: `cb-${r}-${e.id}-first`, 11224 second: `cb-${r}-${e.id}-second`, 11225 third: `cb-${r}-${e.id}-third`, 11226 fourth: `cb-${r}-${e.id}-fourth`, 11227 fifth: `cb-${r}-${e.id}-fifth`, 11228 anyForecast: `cb-${r}-${e.id}-any-forecast`, 11229 anyTricast: `cb-${r}-${e.id}-any-tricast` 11230 }; 11231 } 11232 }, ev = (function(e) { 11233 return e.Favourite = "Favourite", e.FavouriteCo = "FavouriteCo", e.FavouriteJoint = "FavouriteJoint", e; 11234 })(ev || {}), tv = (function(e) { 11235 return e.BeatenFavourite = "beatenFavourite", e.CourseWins = "courseWins", e.DistanceWins = "distanceWins", e.CourseAndDistanceWins = "courseAndDistanceWins", e; 11236 })(tv || {}), qT = "fiveStar", iv = (function(e) { 11237 return e.HrHelp = "hr-help-overlay", e.HrInfo = "hr-info-overlay", e.GhHelp = "gr-help-overlay", e.GhInfo = "gr-info-overlay", e; 11238 })(iv || {}), rv = (function(e) { 11239 return e.HrHelp = "hr-help", e.HrInfo = "hr-info", e.GhHelp = "gh-help", e.GhInfo = "gh-info", e; 11240 })(rv || {}), XT = { 11241 RACING_POST: "racing post", 11242 RACING_RATINGS_INFO: "ratings info popup", 11243 RACING_CARD_PAGE: "race card page", 11244 RACING_RATINGS_INFO_ICON: "ratings info icon" 11245 }, Yi = (function(e) { 11246 return e.Today = "today", e.Tomorrow = "tomorrow", e.DayAfterTomorrow = "dayAfterTomorrow", e.Future = "future", e.TodaysResults = "todays-results", e.NextRaces = "nextRaces", e; 11247 })(Yi || {}), sv = (function(e) { 11248 return e.Racewinner = "Race Winner", e.Forecast = "ForeCast", e.Tricast = "TriCast", e.CombinationForecast = "Comb
11248inationForecast", e.CombinationtTricast = "CombinationtTricast", e; 11249 })(sv || {}), Ki = (function(e) { 11250 return e[e.Highlights = 0] = "Highlights", e[e.SportList = -1] = "SportList", e[e.Video = -2] = "Video", e[e.Favourites = -3] = "Favourites", e[e.Sport = 1] = "Sport", e[e.Esports = -4] = "Esports", e[e.LiveCasino = -5] = "LiveCasino", e; 11251 })(Ki || {}), ba = (function(e) { 11252 return e.Competitions = "competitions", e.Calendar = "calendar", e.Today = "today", e.Betting = "betting", e.Antepost = "antepost", e.Featured = "featured", e.TeamPages = "teamPages", e.WorldCupHub = "worldCupHub", e; 11253 })(ba || {}), nv = (function(e) { 11254 return e.Betslip = "betslip", e.QuickBet = "quickBet", e.EarlyPayout = "earlyPayout", e.OddsDisplay = "oddsDisplay", e.StakeChanges = "stakeChanges", e; 11255 })(nv || {}), av = (function(e) { 11256 return e.MyBets = "my-bets", e.Betslip = "betslip", e.BetModal = "bet-modal", e.BetBuilderPlus = "betbuilderplus", e; 11257 })(av || {}), Fo = (function(e) { 11258 return e.In30minutes = "in30minutes", e.In60minutes = "in60minutes", e.In180minutes = "in180minutes", e.Today = "today", e.Tomorrow = "tomorrow", e.After2days = "after2days", e.After3days = "after3days", e.Next2days = "next2days", e.Next3days = "next3days", e.Next5days = "next5days", e.MidWeek = "midWeek", e.ThisWeekend = "thisWeekend", e; 11259 })(Fo || {}), ov = (function(e) { 11260 return e.Live = "live", e.Open = "open", e.Settled = "settled", e; 11261 })(ov || {}), lv = (function(e) { 11262 return e.MyBets = "my-bets", e.BetBuilder = "bet-builder", e.Sgp = "SGP", e; 11263 })(lv || {}), cv = (function(e) { 11264 return e.NonGridable = "non-gridable", e.Gridable = "matches", e.Outrights = "outrights", e.Specials = "specials", e.Standings = "standings", e.Teams = "teams", e.PriceBoost = "priceboost", e; 11265 })(cv || {}), dv = (function(e) { 11266 return e.Upcoming = "upcoming", e.Competitions = "competitions", e.Players = "players", e.Events = "events", e; 11267 })(dv || {}), uv = class { 11268 constructor() { 11269 this.page = f(jr), this.location = f(a$), this.urlService = f(Wn), this.urlConfig = f(Ry), this.sportConfig = f(Ly), this.sitecore = f(Dy), this.device = f(nr), this.seoConfig = f($_), this.azSportsData = f(A_), this.liveConfig = f(O_), this.sportsProductService = f(zy); 11270 } 11271 getUrl(e) { 11272 if (!e) return "#"; 11273 if (e.startsWith("http")) return e; 11274 let i = e.charAt(0), t = this.location.path(), r = e; 11275 return r === "/" ? r = this.prependPrefix("") : i === "/" ? r = this.prependPrefix(e) : i === "?" ? r = `${t}${e}` : r = `${t}/${e}`, r.replace(/\/$/, ""); 11276 } 11277 getHomeUrl() { 11278 return this.prefix; 11279 } 11280 getMultiSportsHubUrl() { 11281 return `${this.prefix}/${this.urlConfig.translations.multiSports}/${this.urlConfig.translations.multiSportsHubName}`; 11282 } 11283 getESportsUrl() { 11284 return `/${this.page.lang}/${this.productPath}/${this.urlConfig.translations.esports}`; 11285 } 11286 getSearchUrl() { 11287 return `${this.prefix}?popup=betfinder`; 11288 } 11289 getFindMenuUrl() { 11290 return `${this.prefix}/find`; 11291 } 11292 getFindMenuSearchUrl() { 11293 return `${this.prefix}/find/search`; 11294 } 11295 getMyBetPopupUrl() { 11296 return `${this.prefix}?popup=my-bets`; 11297 } 11298 getBetModalUrl() { 11299 return `${this.prefix}?popup=bet-modal`; 11300 } 11301 getAtoZUrl() { 11302 return `/${this.page.lang}/product-menu`; 11303 } 11304 getCalendarUrl(e) { 11305 if (!e) return this.getBuilder(this.urlConfig.translations.calendar).toString(); 11306 let i = C({}, this.urlConfig.translations), t = Object.values(Fo), r = t.map((s) => i[s]); 11307 if (e in Fo && i[e]) return this.getBuilder(i[e]).toString(); 11308 if (t.includes(e) && i[e]) return this.getBuilder(i[e]).toString(); 11309 if (r.includes(e)) return this.getBuilder(e).toString(); 11310 throw new Error("Wrong calendar interval"); 11311 } 11312 getLiveUrl(e = Ki.Highlights, i) { 11313 let t = { 11314 [Ki.Video]: this.urlConfig.translations.video, 11315 [Ki.SportList]: this.urlConfig.translations.all, 11316 [Ki.Highlights]: this.urlConfig.translations.betting, 11317 [Ki.Favourites]: this.urlConfig.translations.favourites, 11318 [Ki.Esports]: this.urlConfig.translations.esports, 11319 [Ki.LiveCasino]: this.urlConfig.translations.liveCasino 11320 }[e], r = this.getBuilder(this.urlConfig.translations.live, t); 11321 return i && r.appendQuery({ trid: i }), r.toString(); 11322 } 11323 getPriceBoostUrl() { 11324 return this.getBuilder().toString(); 11325 } 11326 getLiveSportUrl({ sport: e, region: i, league: t, isEsport: r, conference: s }) { 11327 if (r && !this.liveConfig.allowedEsportsOnLiveNavigation?.includes(Number(e.id))) return this.getLiveUrl(Ki.Esports); 11328 let n = this.getBuilder(this.urlConfig.translations.live, e); 11329 return i && (i === Ki.Sport ? n.appendQuery({ fallback: !1 }) : n.append(i)), t && n.append(t), s && n.append(s), n.toString(); 11330 } 11331 getVirtualSportUrl(e, i, t) { 11332 let r = this.getBuilder(this.urlConfig.translations.virtual); 11333 return e && r.append(e), i && (r.append(i), t && r.appendQuery({ tab: t })), r.toString(); 11334 } 11335 getTournamentUrl(e, i, t) { 11336 let r = this.getBuilder(e, this.urlConfig.translations.tournaments, i); 11337 return t && r.append(t), r.toString(); 11338 } 11339 getEventUrl(e, i) { 11340 let t = this.getBuilder(this.urlConfig.translations.events); 11341 return e ? t.append(e).appendQuery({ market: i }).toString() : t.toString(); 11342 } 11343 getFixtureUrl(e, i, t) { 11344 return t ? this.getBuilder(t, e, this.urlConfig.translations.fixtures, i).toString() : this.getBuilder(e, this.urlConfig.translations.fixtures, i).toString(); 11345 } 11346 getFixtureUrlByFixture(e, i) { 11347 let t = { 11348 id: e.id, 11349 name: Do(e.name) 11350 }, r = { 11351 id: e.sport.id, 11352 name: Do(e.sport.name) 11353 }; 11354 switch (e.fixtureType) { 11355 case "Antepost": return i ? this.getBuilder(i, r, this.urlConfig.translations.fixtures, t).toString() : this.getBuilder(r, this.urlConfig.translations.fixtures, t).toString(); 11356 case "DayOfRace": 11357 let s = e; 11358 return this.getRacingUrlByFixture(e.sport.id, s); 11359 default: return ""; 11360 } 11361 } 11362 getCouponUrl(e, i) { 11363 let t = this.getBuilder(e, this.urlConfig.translations.coupons); 11364 return i && t.append(i), t.toString(); 11365 } 11366 getCompetitionCouponUrl(e, i, t, r) { 11367 let s = this.getBuilder(e, this.urlConfig.translations.coupons); 11368 return t && s.append(t), r && s.append(r), i && s.append(i), s.toString(); 11369 } 11370 getMultiBuilderUrl(e) { 11371 let i = this.getBuilder(this.urlConfig.translations.multiBuilder); 11372 return e && i.append(e), i.toString(); 11373 } 11374 getBetsUrl({ sport: e, region: i, league: t, conference: r, category: s, subCategory: n, dynamicCategory: a }) { 11375 let o = this.getBuilder(this.urlConfig.translations.bets).append(e).appendIf(i).appendIf(t).appendIf(r); 11376 return s && o.appendQuery({ category: s }), (n?.outrightCategory || n?.specialCategory) && o.appendQuery(n), a && o.appendQuery({ dynamicCategory: a }), o.toString(); 11377 } 11378 getBettingUrl({ sport: e, region: i, league: t, conference: r }) { 11379 let s = this.getBuilder(e); 11380 return i && s.append(this.urlConfig.translations.betting).append(i).appendIf(t).appendIf(r), s.toString(); 11381 } 11382 getStandingsUrl(e, i, t, r) { 11383 let s = this.getBuilder(this.urlConfig.translations.standings); 11384 return s.append(e), i && s.append(i), t && s.append(t), r && s.append(r), s.toString(); 11385 } 11386 getTeamPagesUrl(e, i, t) { 11387 let r = this.getBuilder(e, this.urlConfig.translations.teamPages); 11388 return r.append(t || this.urlConfig.translations.myTeams), i && r.append(i), r.toString(); 11389 } 11390 getTeamPagesSearchUrl(e, i) { 11391 return `${e}&teamId=${i}`; 11392 } 11393 getSettingsUrl(e) { 11394 return this.getBuilder(this.urlConfig.translations.settings, this.urlConfig.translations[e]).toString(); 11395 } 11396 getMyBetsUrl(e, i) { 11397 let t = this.getMyBetsUrlBuilder(e); 11398 return i && t.appendQuery(i), t.toString(); 11399 } 11400 getPrintUrlBuilder() { 11401 let e = this.getMyBetsUrlBuilder(); 11402 return e.append("print"), e; 11403 } 11404 shouldRemoveHref() { 11405 return this.seoConfig.removeHrefToEventForRobot && this.device.isRobot; 11406 } 11407 getMyBetsUrlBuilder(e) { 11408 let i = this.getBuilder(this.urlConfig.translations.myBets); 11409 return e && i.append(this.urlConfig.translations[e]), i; 11410 } 11411 getSportUrl(e, i, t, r, s, n, a = !0) { 11412 if (!e) return this.getBuilder(this.urlConfig.translations.all).toString();
11413 let o = this.getSportBuilder(e); 11414 if (i === ba.Featured || !i && this.device.isRobot) return o.toString(); 11415 if (!i) { 11416 let c = a && this.sportConfig.competitionLandingPage.includes(Wr(e.id)); 11417 if (this.azSportsData.azSports.some((d) => d.activeName === e.name)) { 11418 if (this.azSportsData.azSports.length > 0) return this.azSportsData.azSports.find((d) => d.activeName === e.name).link; 11419 } else return o.appendQuery({ fallback: c || void 0 }).toString(); 11420 } 11421 let l = () => { 11422 if (i) { 11423 let c = Object.entries(this.urlConfig.translations).find(([d, u]) => u === i || d === i); 11424 if (c) o.append(c[1]); 11425 else throw new Error("Context is not valid value"); 11426 } 11427 return o; 11428 }; 11429 if (t === ba.Competitions) l().append(this.urlConfig.translations.competitions); 11430 else { 11431 if (e.id === ee.Horses || e.id === ee.Greyhounds) throw new Error(`Context is not valid for ${e.id === ee.Horses ? "horse" : "greyhounds"} racing`); 11432 if (i === ba.Antepost) return o.append(this.urlConfig.translations.eachWay).toString(); 11433 l(), t && (o.append(t), r && (o.append(r), s && o.append(s))); 11434 } 11435 return n && o.appendQuery({ tab: n }), o.toString(); 11436 } 11437 getPopupUrl(e) { 11438 let i = this.urlService.current(); 11439 return i.search.set("popup", e), i.url(); 11440 } 11441 getFavouriteUrl(e) { 11442 let i = this.getBuilder(this.urlConfig.translations.favourites); 11443 return e && i.append(e), i.toString(); 11444 } 11445 getFavouriteUrlByUrlParam(e) { 11446 let i = this.getBuilder(this.urlConfig.translations.favourites), t = this.urlConfig.translations[e]; 11447 return t && i.append(t), i.toString(); 11448 } 11449 getRaceUrl(e, i, t, r) { 11450 let s = { 11451 id: e, 11452 name: e === ee.Horses ? this.sitecore.horseRacing.common.HorsesLinkText : this.sitecore.horseRacing.common.GreyhoundRacing 11453 }, n = this.getSportBuilder(s); 11454 return i === Yi.Future || i === Yi.Today || i === Yi.DayAfterTomorrow || i === Yi.Tomorrow || i === Yi.NextRaces ? n.append(this.urlConfig.translations[i]).toString() : this.getRacingUrl(i, n, t, r); 11455 } 11456 getMyStableUrl() { 11457 let e = { 11458 id: ee.Horses, 11459 name: this.sitecore.horseRacing.common.HorsesLinkText 11460 }; 11461 return this.getSportBuilder(e).append(this.urlConfig.translations.myStable).toString(); 11462 } 11463 getRacingUrl(e, i, t, r) { 11464 if (typeof e == "object") { 11465 i.append(e); 11466 let s = t || Yi.Today, n = [ 11467 Yi.Today, 11468 Yi.Tomorrow, 11469 Yi.DayAfterTomorrow 11470 ]; 11471 for (let a of n) { 11472 let o = Object.entries(this.urlConfig.translations).find(([l, c]) => l === a); 11473 (s === a || s === o?.[1]) && i.append(o?.[1]); 11474 } 11475 return typeof t == "object" && i.append(t), r && i.appendQuery({ market: r }), i.toString(); 11476 } 11477 throw new Error("Param is not valid for horse racing"); 11478 } 11479 getAllRacingUrlByMeeting(e, i, t) { 11480 let r = { 11481 id: i.meeting.id, 11482 name: Do(i.meeting.name) 11483 }, s = t.concat("/all"), n = { 11484 id: s, 11485 name: s 11486 }; 11487 return this.getRaceUrl(e, r, n); 11488 } 11489 getRacingUrlByFixture(e, i) { 11490 let t = { 11491 id: i.meeting.id, 11492 name: Do(i.meeting.name) 11493 }; 11494 return this.getRaceUrl(e, t, { 11495 id: i.id, 11496 name: "" 11497 }); 11498 } 11499 getBuilder(...e) { 11500 return this.getBuilderInternal(e); 11501 } 11502 getBuilderInternal(e, i = !1) { 11503 let t = new Qg(new Jg(this.urlConfig, i)); 11504 return t.append(this.page.lang).append(this.productPath), e.forEach((r) => t.append(r)), t; 11505 } 11506 getSportBuilder(...e) { 11507 return this.getBuilder(...e); 11508 } 11509 getAbsolute(e = "") { 11510 let i = this.urlService.current(), t = `${i.protocol}://${i.hostname}`; 11511 return e || (t += this.prefix), t += e, t; 11512 } 11513 getLastSegment(e) { 11514 let i = this.urlService.parse(e); 11515 return i.pathname.split("/").pop() || i.pathname; 11516 } 11517 getQueryParams(e) { 11518 if (e) return this.urlService.parse(e).search; 11519 } 11520 prependPrefix(e) { 11521 return !e.includes(this.prefix) && !e.startsWith(this.culturePrefix) ? this.prefix + e : e; 11522 } 11523 get prefix() { 11524 return `${this.culturePrefix}${this.productPath}`; 11525 } 11526 get culturePrefix() { 11527 return `/${this.page.lang}/`; 11528 } 11529 get productPath() { 11530 return this.sportsProductService.isSingleDomain ? this.sportsProductService.sportsProductName : this.page.product; 11531 } 11532 }, JT = (() => { 11533 let e = class extends uv {}; 11534 return e.ɵfac = (() => { 11535 let i; 11536 return function(t) { 11537 return (i || (i = Fe(e)))(t || e); 11538 }; 11539 })(), e.ɵprov = R({ 11540 token: e, 11541 factory: e.ɵfac, 11542 providedIn: "root" 11543 }), e; 11544 })(); 11545 })))(); 11546} 11547var ZT; 11548function ek() { 11549 return (ek = Z((() => { 11550 de(), ZT = (() => { 11551 let e = class { 11552 constructor() { 11553 this.listeners = /* @__PURE__ */ new Map(), this.subject = new Xe(); 11554 } 11555 dispatch(t, r) { 11556 let s = this.getKey(t); 11557 this.listeners.get(s) && this.subject.next({ 11558 event: s, 11559 data: r 11560 }); 11561 } 11562 on(t) { 11563 return this.getOrCreateSubscription(t).observable; 11564 } 11565 ngOnDestroy() { 11566 this.subject.complete(); 11567 } 11568 getKey(t) { 11569 return this.isDomainEvent(t) ? t.key : t; 11570 } 11571 getOrCreateSubscription(t) { 11572 let r = this.getKey(t); 11573 return this.listeners.has(r) || this.listeners.set(r, { observable: this.subject.asObservable().pipe(We((s) => s.event === r), xe((s) => s.data), Vb()) }), this.listeners.get(r); 11574 } 11575 isDomainEvent(t) { 11576 return !!t.key; 11577 } 11578 }; 11579 return e.ɵfac = function(i) { 11580 return new (i || e)(); 11581 }, e.ɵprov = R({ 11582 token: e, 11583 factory: e.ɵfac, 11584 providedIn: "root" 11585 }), e; 11586 })(); 11587 })))(); 11588} 11589var Id, pv, tk; 11590function hv() { 11591 return (hv = Z((() => { 11592 de(), Id = new Te("DYNAMIC_INJECTOR_PROVIDER_TOKEN"), pv = (e) => new Te(`DynamicRootFor_${e instanceof Te ? e.toString() : e.name}`, { 11593 providedIn: "root", 11594 factory: () => f(Id).getDynamicInjector().get(e) 11595 }), tk = (e) => new Te(`OptionalDynamicRootFor_${e instanceof Te ? e.toString() : e.name}`, { 11596 providedIn: "root", 11597 factory: () => f(Id).getDynamicInjector().get(e, null, { optional: !0 }) 11598 }); 11599 })))(); 11600} 11601function t2(e) { 11602 return e.get(Ad); 11603} 11604function zs(e) { 11605 function i(t, r) { 11606 Error.captureStackTrace && Error.captureStackTrace(this, this.constructor), this.message = t, this.code = r; 11607 } 11608 return i.prototype = /* @__PURE__ */ new Error(), i.prototype.name = e, i.prototype.constructor = i, i; 11609} 11610function ik(e) { 11611 var i = e.length; 11612 if (i % 4 > 0) throw new Error("Invalid string. Length must be a multiple of 4"); 11613 var t = e.indexOf("="); 11614 return t === -1 && (t = i), [t, t === i ? 0 : 4 - t % 4]; 11615} 11616function i2(e) { 11617 return cr[e >> 18 & 63] + cr[e >> 12 & 63] + cr[e >> 6 & 63] + cr[63 & e]; 11618} 11619function r2(e, i, t) { 11620 for (var r, s = [], n = i; n < t; n += 3) r = (e[n] << 16 & 16711680) + (e[n + 1] << 8 & 65280) + (255 & e[n + 2]), s.push(i2(r)); 11621 return s.join(""); 11622} 11623function rk(e) { 11624 let i = unescape(encodeURIComponent(e)); 11625 return xk.fromByteArray((function(t) { 11626 let r = []; 11627 for (let s = 0; s < t.length;
11627 s++) r.push(t.charCodeAt(s)); 11628 return r; 11629 })(i)); 11630} 11631function mv(e, i) { 11632 return Object.prototype.hasOwnProperty.call(e, i); 11633} 11634function ya(e, i) { 11635 let t = ""; 11636 for (let r = i.start; r <= i.end; r += 1) t += e[r].toString(16).padStart(2, "0"); 11637 return t; 11638} 11639function sk(e) { 11640 return e[_d.start] = 191 & e[_d.start] | 128, e[$d.start] = 15 & e[$d.start] | 64, `${ya(e, Ak)}-${ya(e, $k)}-${ya(e, $d)}-${ya(e, _d)}${ya(e, _k)}-${ya(e, Mk)}`; 11641} 11642function nk() { 11643 return sk((function() { 11644 if (typeof crypto < "u" && crypto.getRandomValues) { 11645 let i = /* @__PURE__ */ new Uint8Array(16); 11646 return crypto.getRandomValues(i), [...i.values()]; 11647 } 11648 let e = []; 11649 for (let i = 0; i < 16; i += 1) e.push(Math.floor(256 * Math.random())); 11650 return e; 11651 })()); 11652} 11653function Od(e) { 11654 return e && e.message ? e.message : typeof e == "string" || e instanceof String ? e : JSON.stringify(e); 11655} 11656function fv(e) { 11657 return e && e.replace(/\/+$/, ""); 11658} 11659function ak(e, i, t) { 11660 if (typeof i == "string" && i.match(Lk)) { 11661 if (!(i.length > 64)) return i; 11662 t.warn(Se.tagValueTooLong(e)); 11663 } else t.warn(Se.invalidTagValue(e)); 11664} 11665function ok(e) { 11666 return typeof e == "string" && e !== "kind" && e.match(/^(\w|\.|-)+$/); 11667} 11668function lk(e) { 11669 return e.includes("%") || e.includes(":") ? e.replace(/%/g, "%25").replace(/:/g, "%3A") : e; 11670} 11671function ck(e) { 11672 return e.replace(/~/g, "~0").replace(/\//g, "~1"); 11673} 11674function dk(e) { 11675 return (e.startsWith("/") ? e.substring(1) : e).split("/").map((i) => i.indexOf("~") >= 0 ? i.replace(/~1/g, "/").replace(/~0/g, "~") : i); 11676} 11677function uk(e) { 11678 return !e.startsWith("/"); 11679} 11680function pk(e, i) { 11681 let t = uk(e), r = uk(i); 11682 if (t && r) return e === i; 11683 if (t) { 11684 let s = dk(i); 11685 return s.length === 1 && e === s[0]; 11686 } 11687 if (r) { 11688 let s = dk(e); 11689 return s.length === 1 && i === s[0]; 11690 } 11691 return e === i; 11692} 11693function hk(e) { 11694 return `/${ck(e)}`; 11695} 11696function zo(e, i, t, r, s) { 11697 try { 11698 return r(); 11699 } catch (n) { 11700 return e?.error(`An error was encountered in "${i}" of the "${t}" hook: ${n}`), s; 11701 } 11702} 11703function Go(e, i) { 11704 try { 11705 return i.getMetadata().name || Nv; 11706 } catch { 11707 return e.error("Exception thrown getting metadata for hook. Unable to get hook name."), Nv; 11708 } 11709} 11710function Pd(e, i) { 11711 try { 11712 return i.getMetadata().name || Tv; 11713 } catch { 11714 return e.error("Exception thrown getting metadata for plugin. Unable to get plugin name."), Tv; 11715 } 11716} 11717function s2(e, i, t) { 11718 return (i = (function(r) { 11719 var s = (function(n, a) { 11720 if (typeof n != "object" || !n) return n; 11721 var o = n[Symbol.toPrimitive]; 11722 if (o !== void 0) { 11723 var l = o.call(n, a || "default"); 11724 if (typeof l != "object") return l; 11725 throw new TypeError("@@toPrimitive must return a primitive value."); 11726 } 11727 return (a === "string" ? String : Number)(n); 11728 })(r, "string"); 11729 return typeof s == "symbol" ? s : s + ""; 11730 })(i)) in e ? Object.defineProperty(e, i, { 11731 value: t, 11732 enumerable: !0, 11733 configurable: !0, 11734 writable: !0 11735 }) : e[i] = t, e; 11736} 11737function mk(e, i) { 11738 var t = Object.keys(e); 11739 if (Object.getOwnPropertySymbols) { 11740 var r = Object.getOwnPropertySymbols(e); 11741 i && (r = r.filter(function(s) { 11742 return Object.getOwnPropertyDescriptor(e, s).enumerable; 11743 })), t.push.apply(t, r); 11744 } 11745 return t; 11746} 11747function gv(e) { 11748 for (var i = 1; i < arguments.length; i++) { 11749 var t = arguments[i] != null ? arguments[i] : {}; 11750 i % 2 ? mk(Object(t), !0).forEach(function(r) { 11751 s2(e, r, t[r]); 11752 }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : mk(Object(t)).forEach(function(r) { 11753 Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); 11754 }); 11755 } 11756 return e; 11757} 11758function n2(e, i, t, r, s) { 11759 if (s && !(function() { 11760 var l = window.navigator && window.navigator.userAgent; 11761 if (l) { 11762 var c = l.match(/Chrom(e|ium)\/([0-9]+)\./); 11763 if (c) return parseInt(c[2], 10) < 73; 11764 } 11765 return !0; 11766 })()) return Iv; 11767 var n = new window.XMLHttpRequest(); 11768 for (var a in n.open(e, i, !s), t || {}) Object.prototype.hasOwnProperty.call(t, a) && n.setRequestHeader(a, t[a]); 11769 if (s) { 11770 try { 11771 n.send(r); 11772 } catch {} 11773 return Iv; 11774 } 11775 var o; 11776 return { 11777 promise: new Promise(function(l, c) { 11778 n.addEventListener("load", function() { 11779 o || l({ 11780 status: n.status, 11781 header: function(d) { 11782 return n.getResponseHeader(d); 11783 }, 11784 body: n.responseText 11785 }); 11786 }), n.addEventListener("error", function() { 11787 o || c(/* @__PURE__ */ new Error()); 11788 }), n.send(r); 11789 }), 11790 cancel: function() { 11791 o = !0, n.abort(); 11792 } 11793 }; 11794} 11795function a2(e, i, t, r) { 11796 var s, n, a = ((e.kind === "substring" || e.kind === "regex") && r.includes("/") ? i : i.replace(r, "")).replace(t, ""); 11797 switch (e.kind) { 11798 case "exact": 11799 n = i, s = new RegExp("^" + Hd(e.url) + "/?$"); 11800 break; 11801 case "canonical": 11802 n = a, s = new RegExp("^" + Hd(e.url) + "/?$"); 11803 break; 11804 case "substring": 11805 n = a, s = new RegExp(".*" + Hd(e.substring) + ".*$"); 11806 break; 11807 case "regex": 11808 n = a, s = new RegExp(e.pattern); 11809 break; 11810 default: return !1; 11811 } 11812 return s.test(n); 11813} 11814function fk(e, i) { 11815 for (var t = {}, r = null, s = [], n = 0; n < e.length; n++) for (var a = e[n], o = a.urls || [], l = 0; l < o.length; l++) if (a2(o[l], window.location.href, window.location.search, window.location.hash)) { 11816 a.kind === "pageview" ? i("pageview", a) : (s.push(a), i("click_pageview", a)); 11817 break; 11818 } 11819 return s.length > 0 && (r = function(c) { 11820 for (var d = (function(h, g) { 11821 for (var p = [], m = 0; m < g.length; m++) for (var S = h.target, b = g[m], v = b.selector, y = document.querySelectorAll(v); S && y.length > 0;) { 11822 for (var w = 0; w < y.length; w++) S === y[w] && p.push(b); 11823 S = S.parentNode; 11824 } 11825 return p; 11826 })(c, s), u = 0; u < d.length; u++) i("click", d[u]); 11827 }, document.addEventListener("click", r)), t.dispose = function() { 11828 document.removeEventListener("click", r); 11829 }, t; 11830} 11831function o2(e, i, t) { 11832 var r, s; 11833 function n() { 11834 s && s.dispose(), r && r.length && (s = fk(r, a)); 11835 } 11836 function a(o, l) { 11837 var c = e.ident.getContext(), d = { 11838 kind: o, 11839 key: l.key, 11840 data: null, 11841 url: i.getCurrentUrl(), 11842 creationDate: (/* @__PURE__ */ new Date()).getTime(), 11843 context: c 11844 }; 11845 return o === "click" && (d.selector = l.selector), e.enqueueEvent(d); 11846 } 11847 return e.requestor.fetchJSON("/sdk/goals/" + e.getEnvironmentId()).then(function(o) { 11848 o && o.length > 0 && (s = fk(r = o, a), (function(l, c) { 11849 var d, u = window.location.href; 11850 function h() { 11851 (d = window.location.href) !== u && (u = d, c()); 11852 } 11853 (function g(p, m) { 11854 p(), setTimeout(function() { 11855 g(p, m); 11856 }, m); 11857 })(h, l), window.history && window.history.pushState ? window.addEventListener("popstate", h) : window.addEventListener("hashchange", h); 11858 })(300, n)), t(); 11859 }).catch(function(o) { 11860 e.emitter.maybeReportError(new Px.LDUnexpectedResponseError((o && o.message, o.message))), t(); 11861 }), {}; 11862} 11863function gk(e, i) { 11864 var t = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {}, r = (function(d) { 11865 var u, h = { 11866 userAgentHeaderName: "X-LaunchDarkly-User-Agent", 11867 synchronousFlush: !1 11868 }; 11869 if (window.XMLHttpRequest) { 11870 var g = d && d.disableSyncEventPost; 11871 h.httpRequest = function(b, v, y, w) { 11872 var T = h.synchronousFlush & !g; 11873 return h.synchronousFlush = !1, n2(b, v, y, w, T); 11874 }; 11875 } 11876 h.httpAllowsPost = function() { 11877 return u === void 0 && (u = !!window.XMLHttpRequest && "withCredentials" in new window.XMLHttpRequest()), u; 11878 }, h.httpFallbackPing = function(b) { 11879 new window.Image().src = b; 11880 }; 11881 var p, m = d && d.eventUrlTransformer; 11882 h.getCurrentUrl = function() { 11883 return m ? m(window.location.href) : window.location.href; 11884 }, h.isDoNotTrack = function() { 11885 var b; 11886 return (b = window.navigator && window.navigator.doNotTrack !== void 0 ? window.navigator.doNotTrack : window.navigator && window.navigator.msDoNotTrack !== void 0 ? window.navigator.msDoNotTrack : window.doNotTrack) === 1 || b === !0 || b === "1" || b === "yes"; 11887 }; 11888 try { 11889 window.localStorage && (h.localStorage = { 11890 get: function(b) { 11891 return new Promise(function(v) { 11892 v(window.localStorage.getItem(b)); 11893 }); 11894 }, 11895 set: function(b, v) { 11896 return new Promise(function(y) { 11897 window.localStorage.setItem(b, v), y(); 11898 }); 11899 }, 11900 clear: function(b) { 11901 return new Promise(function(v) { 11902 window.localStorage.removeItem(b), v(); 11903 }); 11904 } 11905 }); 11906 } catch { 11907 h.localStorage = null; 11908 } 11909 if (d && d.useReport && typeof window.EventSourcePolyfill == "function" && window.EventSourcePolyfill.supp
11909ortedOptions && window.EventSourcePolyfill.supportedOptions.method ? (h.eventSourceAllowsReport = !0, p = window.EventSourcePolyfill) : (h.eventSourceAllowsReport = !1, p = window.EventSource), window.EventSource) { 11910 var S = 3e5; 11911 h.eventSourceFactory = function(b, v) { 11912 var y = gv(gv({}, { 11913 heartbeatTimeout: S, 11914 silentTimeout: S, 11915 skipDefaultHeaders: !0 11916 }), v); 11917 return new p(b, y); 11918 }, h.eventSourceIsActive = function(b) { 11919 return b.readyState === window.EventSource.OPEN || b.readyState === window.EventSource.CONNECTING; 11920 }; 11921 } 11922 return h.userAgent = "JSClient", h.version = "3.9.3", h.diagnosticSdkData = { 11923 name: "js-client-sdk", 11924 version: "3.9.3" 11925 }, h.diagnosticPlatformData = { name: "JS" }, h.diagnosticUseCombinedEvent = !0, h; 11926 })(t), s = Ox(e, i, t, r, _x), n = s.client, a = s.options, o = s.emitter, l = new Promise(function(d) { 11927 var u = o.on(Ko, function() { 11928 o.off(Ko, u), d(); 11929 }); 11930 }); 11931 n.waitUntilGoalsReady = function() { 11932 return l; 11933 }, a.fetchGoals ? o2(s, r, function() { 11934 return o.emit(Ko); 11935 }) : o.emit(Ko), document.readyState !== "complete" ? window.addEventListener("load", s.start) : s.start(); 11936 var c = function() { 11937 r.synchronousFlush = !0, n.flush().catch(function() {}), r.synchronousFlush = !1; 11938 }; 11939 return document.addEventListener("visibilitychange", function() { 11940 document.visibilityState === "hidden" && c(); 11941 }), window.addEventListener("pagehide", c), n; 11942} 11943function l2() { 11944 return [Al(Rx)]; 11945} 11946var Ad, vk, Sk, bk, yk, wk, Ek, yt, Ck, Nk, Tk, cr, Mi, kk, vv, Nn, xk, Sv, bv, Ik, Ok, Pk, ke, Ak, $k, $d, _d, _k, Mk, Md, wa, Rd, Tn, Se, Rk, yv, Lk, Ld, Bk, Bd, Dk, Fk, zk, wv, Gk, Vk, Vo, Hk, Uk, Wk, Dd, jk, Yk, Kk, qk, Ho, Fd, zd, Xk, Jk, Qk, Ev, Zk, ex, tx, ix, rx, sx, nx, ax, ox, Cv, lx, cx, dx, ux, px, hx, Gd, mx, Vd, fx, Uo, fi, gx, vx, Sx, Nv, bx, yx, Tv, wx, kv, Ex, Cx, Wo, Nx, Tx, kx, xx, Ix, jo, xv, Yo, Ox, Px, Ax, $x, Iv, Hd, Ko, _x, Mx, Ov, Rx; 11947function Lx() { 11948 return (Lx = Z((() => { 11949 for (Re(), de(), rr(), Ye(), yi(), st(), Ns(), Ts(), xs(), Ht(), ht(), Ad = (() => { 11950 var e = class extends ri {}; 11951 let i = (e.ɵfac = (() => { 11952 let t; 11953 return function(r) { 11954 return (t || (t = Fe(e)))(r || e); 11955 }; 11956 })(), e.ɵprov = R({ 11957 token: e, 11958 factory: function(t) { 11959 let r = null; 11960 return t ? r = new t() : r = t2(ve(Wt)), r; 11961 }, 11962 providedIn: "root" 11963 }), e); 11964 return i = mt([Ut({ 11965 key: "vnLaunchDarkly", 11966 product: it.SF 11967 })], i), i; 11968 })(), vk = zs("LaunchDarklyUnexpectedResponseError"), Sk = zs("LaunchDarklyInvalidEnvironmentIdError"), bk = zs("LaunchDarklyInvalidUserError"), yk = zs("LaunchDarklyInvalidEventKeyError"), wk = zs("LaunchDarklyInvalidArgumentError"), Ek = zs("LaunchDarklyFlagFetchError"), yt = { 11969 LDUnexpectedResponseError: vk, 11970 LDInvalidEnvironmentIdError: Sk, 11971 LDInvalidUserError: bk, 11972 LDInvalidEventKeyError: yk, 11973 LDInvalidArgumentError: wk, 11974 LDInvalidDataError: zs("LaunchDarklyInvalidDataError"), 11975 LDFlagFetchError: Ek, 11976 LDTimeoutError: zs("LaunchDarklyTimeoutError"), 11977 isHttpErrorRecoverable: function(e) { 11978 return !(e >= 400 && e < 500) || e === 400 || e === 408 || e === 429; 11979 } 11980 }, Ck = function(e) { 11981 var i = ik(e), t = i[0], r = i[1]; 11982 return 3 * (t + r) / 4 - r; 11983 }, Nk = function(e) { 11984 var i, t, r = ik(e), s = r[0], n = r[1], a = new kk((function(c, d, u) { 11985 return 3 * (d + u) / 4 - u; 11986 })(0, s, n)), o = 0, l = n > 0 ? s - 4 : s; 11987 for (t = 0; t < l; t += 4) i = Mi[e.charCodeAt(t)] << 18 | Mi[e.charCodeAt(t + 1)] << 12 | Mi[e.charCodeAt(t + 2)] << 6 | Mi[e.charCodeAt(t + 3)], a[o++] = i >> 16 & 255, a[o++] = i >> 8 & 255, a[o++] = 255 & i; 11988 return n === 2 && (i = Mi[e.charCodeAt(t)] << 2 | Mi[e.charCodeAt(t + 1)] >> 4, a[o++] = 255 & i), n === 1 && (i = Mi[e.charCodeAt(t)] << 10 | Mi[e.charCodeAt(t + 1)] << 4 | Mi[e.charCodeAt(t + 2)] >> 2, a[o++] = i >> 8 & 255, a[o++] = 255 & i), a; 11989 }, Tk = function(e) { 11990 for (var i, t = e.length, r = t % 3, s = [], n = 16383, a = 0, o = t - r; a < o; a += n) s.push(r2(e, a, a + n > o ? o : a + n)); 11991 return r === 1 ? (i = e[t - 1], s.push(cr[i >> 2] + cr[i << 4 & 63] + "==")) : r === 2 && (i = (e[t - 2] << 8) + e[t - 1], s.push(cr[i >> 10] + cr[i >> 4 & 63] + cr[i << 2 & 63] + "=")), s.join(""); 11992 }, cr = [], Mi = [], kk = typeof Uint8Array < "u" ? Uint8Array : Array, vv = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789
11992+/", Nn = 0; Nn < 64; ++Nn) cr[Nn] = vv[Nn], Mi[vv.charCodeAt(Nn)] = Nn; 11993 Mi[45] = 62, Mi[95] = 63, xk = { 11994 byteLength: Ck, 11995 toByteArray: Nk, 11996 fromByteArray: Tk 11997 }, Sv = Array.isArray, bv = Object.keys, Ik = Object.prototype.hasOwnProperty, Ok = function e(i, t) { 11998 if (i === t) return !0; 11999 if (i && t && typeof i == "object" && typeof t == "object") { 12000 var r, s, n, a = Sv(i), o = Sv(t); 12001 if (a && o) { 12002 if ((s = i.length) != t.length) return !1; 12003 for (r = s; r-- !== 0;) if (!e(i[r], t[r])) return !1; 12004 return !0; 12005 } 12006 if (a != o) return !1; 12007 var l = i instanceof Date, c = t instanceof Date; 12008 if (l != c) return !1; 12009 if (l && c) return i.getTime() == t.getTime(); 12010 var d = i instanceof RegExp, u = t instanceof RegExp; 12011 if (d != u) return !1; 12012 if (d && u) return i.toString() == t.toString(); 12013 var h = bv(i); 12014 if ((s = h.length) !== bv(t).length) return !1; 12015 for (r = s; r-- !== 0;) if (!Ik.call(t, h[r])) return !1; 12016 for (r = s; r-- !== 0;) if (!e(i[n = h[r]], t[n])) return !1; 12017 return !0; 12018 } 12019 return i != i && t != t; 12020 }, Pk = [ 12021 "key", 12022 "ip", 12023 "country", 12024 "email", 12025 "firstName", 12026 "lastName", 12027 "avatar", 12028 "name" 12029 ], ke = { 12030 appendUrlPath: function(e, i) { 12031 return (e.endsWith("/") ? e.substring(0, e.length - 1) : e) + (i.startsWith("/") ? "" : "/") + i; 12032 }, 12033 base64URLEncode: function(e) { 12034 return rk(e).replace(/=/g, "").replace(/\+/g, "-").replace(/\//g, "_"); 12035 }, 12036 btoa: rk, 12037 clone: function(e) { 12038 return JSON.parse(JSON.stringify(e)); 12039 }, 12040 deepEquals: function(e, i) { 12041 return Ok(e, i); 12042 }, 12043 extend: function(...e) { 12044 return e.reduce((i, t) => C(C({}, i), t), {}); 12045 }, 12046 getLDUserAgentString: function(e) { 12047 let i = e.version || "?"; 12048 return e.userAgent + "/" + i; 12049 }, 12050 objectHasOwnProperty: mv, 12051 onNextTick: function(e) { 12052 setTimeout(e, 0); 12053 }, 12054 sanitizeContext: function(e) { 12055 if (!e) return e; 12056 let i; 12057 return e.kind !== null && e.kind !== void 0 || Pk.forEach((t) => { 12058 let r = e[t]; 12059 r !== void 0 && typeof r != "string" && (i = i || C({}, e), i[t] = String(r)); 12060 }), i || e; 12061 }, 12062 transformValuesToVersionedValues: function(e) { 12063 let i = {}; 12064 for (let t in e) mv(e, t) && (i[t] = { 12065 value: e[t], 12066 version: 0 12067 }); 12068 return i; 12069 }, 12070 transformVersionedValuesToValues: function(e) { 12071 let i = {}; 12072 for (let t in e) mv(e, t) && (i[t] = e[t].value); 12073 return i; 12074 }, 12075 wrapPromiseCallback: function(e, i) { 12076 let t = e.then((r) => (i && setTimeout(() => { 12077 i(null, r); 12078 }, 0), r), (r) => { 12079 if (!i) return Promise.reject(r); 12080 setTimeout(() => { 12081 i(r, null); 12082 }, 0); 12083 }); 12084 return i ? void 0 : t; 12085 }, 12086 once: function(e) { 12087 let i, t = !1; 12088 return function(...r) { 12089 return t || (t = !0, i = e.apply(this, r)), i; 12090 }; 12091 } 12092 }, Ak = { 12093 start: 0, 12094 end: 3 12095 }, $k = { 12096 start: 4, 12097 end: 5 12098 }, $d = { 12099 start: 6, 12100 end: 7 12101 }, _d = { 12102 start: 8, 12103 end: 8 12104 }, _k = { 12105 start: 9, 12106 end: 9 12107 }, Mk = { 12108 start: 10, 12109 end: 15 12110 }, Md = { 12111 randomUuidV4: function() { 12112 return typeof crypto < "u" && typeof crypto.randomUUID == "function" ? crypto.randomUUID() : nk(); 12113 }, 12114 fallbackUuidV4: nk, 12115 formatDataAsUuidV4: sk 12116 }, wa = [ 12117 "debug", 12118 "info", 12119 "warn", 12120 "error", 12121 "none" 12122 ], Rd = { 12123 commonBasicLogger: function(e, i) { 12124 if (e && e.destination && typeof e.destination != "function") throw new Error("destination for basicLogger was set to a non-function"); 12125 function t(c) { 12126 return function(d) { 12127 console && console[c] && console[c].call(console, d); 12128 }; 12129 } 12130 let r = e && e.destination ? [ 12131 e.destination, 12132 e.destination, 12133 e.destination, 12134 e.destination 12135 ] : [ 12136 t("log"), 12137 t("info"), 12138 t("warn"), 12139 t("error") 12140 ], s = !(!e || !e.destination), n = e && e.prefix !== void 0 && e.prefix !== null ? e.prefix : "[LaunchDarkly] ", a = 1; 12141 if (e && e.level) for (let c = 0; c < wa.length; c++) wa[c] === e.level && (a = c); 12142 function o(c, d, u) { 12143 if (u.length < 1) return; 12144 let h, g = s ? d + ": " + n : n; 12145 if (u.length !== 1 && i) { 12146 let p = [...u]; 12147 p[0] = g + p[0], h = i(...p); 12148 } else h = g + u[0]; 12149 try { 12150 r[c](h); 12151 } catch (p) { 12152 console && console.log && console.log("[LaunchDarkly] Configured logger's " + d + " method threw an exception: " + p); 12153 } 12154 } 12155 let l = {}; 12156 for (let c = 0; c < wa.length; c++) { 12157 let d = wa[c]; 12158 if (d !== "none") if (c < a) l[d] = () => {}; 12159 else { 12160 let u = c; 12161 l[d] = function() { 12162 o(u, d, arguments); 12163 }; 12164 } 12165 } 12166 return l; 12167 }, 12168 validateLogger: function(e) {
vendor: 4,478 bytes, lines 12169-12270
12169 wa.forEach((i) => { 12170 if (i !== "none" && (!e[i] || typeof e[i] != "function")) throw new Error("Provided logger instance must support logger." + i + "(...) method"); 12171 }); 12172 } 12173 }, Tn = " Please see https://docs.launchdarkly.com/sdk/client-side/javascript#initialize-the-client for instructions on SDK initialization.", Se = { 12174 bootstrapInvalid: function() { 12175 return "LaunchDarkly bootstrap data is not available because the back end could not read the flags."; 12176 }, 12177 bootstrapOldFormat: function() { 12178 return "LaunchDarkly client was initialized with bootstrap data that did not include flag metadata. Events may not be sent correctly." + Tn; 12179 }, 12180 clientInitialized: function() { 12181 return "LaunchDarkly client initialized"; 12182 }, 12183 clientNotReady: function() { 12184 return "LaunchDarkly client is not ready"; 12185 }, 12186 debugEnqueueingEvent: function(e) { 12187 return "enqueueing \"" + e + "\" event"; 12188 }, 12189 debugPostingDiagnosticEvent: function(e) { 12190 return "sending diagnostic event (" + e.kind + ")"; 12191 }, 12192 debugPostingEvents: function(e) { 12193 return "sending " + e + " events"; 12194 }, 12195 debugStreamDelete: function(e) { 12196 return "received streaming deletion for flag \"" + e + "\""; 12197 }, 12198 debugStreamDeleteIgnored: function(e) { 12199 return "received streaming deletion for flag \"" + e + "\" but ignored due to version check"; 12200 }, 12201 debugStreamPatch: function(e) { 12202 return "received streaming update for flag \"" + e + "\""; 12203 }, 12204 debugStreamPatchIgnored: function(e) { 12205 return "received streaming update for flag \"" + e + "\" but ignored due to version check"; 12206 }, 12207 debugStreamPing: function() { 12208 return "received ping message from stream"; 12209 }, 12210 debugPolling: function(e) { 12211 return "polling for feature flags at " + e; 12212 }, 12213 debugStreamPut: function() { 12214 return "received streaming update for all flags"; 12215 }, 12216 deprecated: function(e, i) { 12217 return i ? "\"" + e + "\" is deprecated, please use \"" + i + "\"" : "\"" + e + "\" is deprecated"; 12218 }, 12219 environmentNotFound: function() { 12220 return "Environment not found. Double check that you specified a valid environment/client-side ID." + Tn; 12221 }, 12222 environmentNotSpecified: function() { 12223 return "No environment/client-side ID was specified." + Tn; 12224 }, 12225 errorFetchingFlags: function(e) { 12226 return "Error fetching flag settings: " + Od(e); 12227 }, 12228 eventCapacityExceeded: function() { 12229 return "Exceeded event queue capacity. Increase capacity to avoid dropping events."; 12230 }, 12231 eventWithoutContext: function() { 12232 return "Be sure to call `identify` in the LaunchDarkly client: https://docs.launchdarkly.com/sdk/features/identify#javascript"; 12233 }, 12234 httpErrorMessage: function(e, i, t) { 12235 return "Received error " + e + (e === 401 ? " (invalid SDK key)" : "") + " for " + i + " - " + (yt.isHttpErrorRecoverable(e) ? t : "giving up permanently"); 12236 }, 12237 httpUnavailable: function() { 12238 return "Cannot make HTTP requests in this environment." + Tn; 12239 }, 12240 identifyDisabled: function() { 12241 return "identify() has no effect here; it must be called on the main client instance"; 12242 }, 12243 inspectorMethodError: (e, i) => `an inspector: "${i}" of type: "${e}" generated an exception`, 12244 invalidContentType: function(e) { 12245 return "Expected application/json content type but got \"" + e + "\""; 12246 }, 12247 invalidData: function() { 12248 return "Invalid data received from LaunchDarkly; connection may have been interrupted"; 12249 }, 12250 invalidInspector: (e, i) => `an inspector: "${i}" of an invalid type (${e}) was configured`, 12251 invalidKey: function() { 12252 return "Event key must be a string"; 12253 }, 12254 invalidMetricValue: (e) => `The track function was called with a non-numeric "metricValue" (${e}), only numeric metric values are supported.`, 12255 invalidContext: function() { 12256 return "Invalid context specified." + Tn; 12257 }, 12258 invalidTagValue: (e) => `Config option "${e}" must only contain letters, numbers, ., _ or -.`, 12259 localStorageUnavailable: function(e) { 12260 return "local storage is unavailable: " + Od(e); 12261 }, 12262 networkError: (e) => "network error" + (e ? " (" + e + ")" : ""), 12263 optionBelowMinimum: (e, i, t) => "Config option \"" + e + "\" was set to " + i + ", changing to minimum value of " + t, 12264 streamClosing: function() { 12265 return "Closing stream connection"; 12266 }, 12267 streamConnecting: function(e) { 12268 return "Opening stream connection to " + e; 12269 }, 12270 streamError: function(e, i) {
12271 return "Error on stream connection: " + Od(e) + ", will continue retrying after " + i + " milliseconds."; 12272 }, 12273 tagValueTooLong: (e) => `Value of "${e}" was longer than 64 characters and was discarded.`, 12274 unknownCustomEventKey: function(e) { 12275 return "Custom event \"" + e + "\" does not exist"; 12276 }, 12277 unknownOption: (e) => "Ignoring unknown config option \"" + e + "\"", 12278 contextNotSpecified: function() { 12279 return "No context specified." + Tn; 12280 }, 12281 unrecoverableStreamError: (e) => `Error on stream connection ${Od(e)}, giving up permanently`, 12282 wrongOptionType: (e, i, t) => "Config option \"" + e + "\" should be of type " + i + ", got " + t + ", using default value", 12283 wrongOptionTypeBoolean: (e, i) => "Config option \"" + e + "\" should be a boolean, got " + i + ", converting to boolean" 12284 }, {validateLogger: Rk} = Rd, yv = { 12285 baseUrl: { default: "https://app.launchdarkly.com" }, 12286 streamUrl: { default: "https://clientstream.launchdarkly.com" }, 12287 eventsUrl: { default: "https://events.launchdarkly.com" }, 12288 sendEvents: { default: !0 }, 12289 streaming: { type: "boolean" }, 12290 sendLDHeaders: { default: !0 }, 12291 requestHeaderTransform: { type: "function" }, 12292 sendEventsOnlyForVariation: { default: !1 }, 12293 useReport: { default: !1 }, 12294 evaluationReasons: { default: !1 }, 12295 eventCapacity: { 12296 default: 100, 12297 minimum: 1 12298 }, 12299 flushInterval: { 12300 default: 2e3, 12301 minimum: 2e3 12302 }, 12303 samplingInterval: { 12304 default: 0, 12305 minimum: 0 12306 }, 12307 streamReconnectDelay: { 12308 default: 1e3, 12309 minimum: 0 12310 }, 12311 allAttributesPrivate: { default: !1 }, 12312 privateAttributes: { default: [] }, 12313 bootstrap: { type: "string|object" }, 12314 diagnosticRecordingInterval: { 12315 default: 9e5, 12316 minimum: 2e3 12317 }, 12318 diagnosticOptOut: { default: !1 }, 12319 wrapperName: { type: "string" }, 12320 wrapperVersion: { type: "string" }, 12321 stateProvider: { type: "object" }, 12322 application: { validator: function(e, i, t) { 12323 let r = {}; 12324 return i.id && (r.id = ak(`${e}.id`, i.id, t)), i.version && (r.version = ak(`${e}.version`, i.version, t)), r; 12325 } }, 12326 inspectors: { default: [] }, 12327 hooks: { default: [] }, 12328 plugins: { default: [] } 12329 }, Lk = /^(\w|\.|-)+$/, Ld = { 12330 baseOptionDefs: yv, 12331 validate: function(e, i, t, r) { 12332 let s = ke.extend({ logger: { default: r } }, yv, t), n = {}; 12333 function a(l) { 12334 ke.onNextTick(() => { 12335 i && i.maybeReportError(new yt.LDInvalidArgumentError(l)); 12336 }); 12337 } 12338 let o = ke.extend({}, e || {}); 12339 return (function(l) { 12340 let c = l; 12341 Object.keys(n).forEach((d) => { 12342 if (c[d] !== void 0) { 12343 let u = n[d]; 12344 r && r.warn(Se.deprecated(d, u)), u && (c[u] === void 0 && (c[u] = c[d]), delete c[d]); 12345 } 12346 }); 12347 })(o), o = (function(l) { 12348 let c = ke.extend({}, l); 12349 return Object.keys(s).forEach((d) => { 12350 c[d] !== void 0 && c[d] !== null || (c[d] = s[d] && s[d].default); 12351 }), c; 12352 })(o), o = (function(l) { 12353 let c = ke.extend({}, l), d = (u) => { 12354 if (u === null) return "any"; 12355 if (u === void 0) return; 12356 if (Array.isArray(u)) return "array"; 12357 let h = typeof u; 12358 return h === "boolean" || h === "string" || h === "number" || h === "function" ? h : "object"; 12359 }; 12360 return Object.keys(l).forEach((u) => { 12361 let h = l[u]; 12362 if (h != null) { 12363 let g = s[u]; 12364 if (g === void 0) a(Se.unknownOption(u)); 12365 else { 12366 let p = g.type || d(g.default), m = g.validator; 12367 if (m) { 12368 let S = m(u, l[u], r); 12369 S !== void 0 ? c[u] = S : delete c[u]; 12370 } else if (p !== "any") { 12371 let S = p.split("|"), b = d(h); 12372 S.indexOf(b) < 0 ? p === "boolean" ? (c[u] = !!h, a(Se.wrongOptionTypeBoolean(u, b))) : (a(Se.wrongOptionType(u, p, b)), c[u] = g.default) : b === "number" && g.minimum !== void 0 && h < g.minimum && (a(Se.optionBelowMinimum(u, h, g.minimum)), c[u] = g.minimum); 12373 } 12374 } 12375 } 12376 }), c.baseUrl = fv(c.baseUrl), c.streamUrl = fv(c.streamUrl), c.eventsUrl = fv(c.eventsUrl), c; 12377 })(o), Rk(o.logger), o; 12378 }, 12379 getTags: function(e) { 12380 let i = {}; 12381 return e && (e.application && e.application.id !== void 0 && e.application.id !== null && (i["application-id"] = [e.application.id]), e.application && e.application.version !== void 0 && e.application.id !== null && (i["application-version"] = [e.application.version]
12381)), i; 12382 } 12383 }, {getLDUserAgentString: Bk} = ke, Bd = { 12384 getLDHeaders: function(e, i) { 12385 if (i && !i.sendLDHeaders) return {}; 12386 let t = {}; 12387 t[e.userAgentHeaderName || "User-Agent"] = Bk(e), i && i.wrapperName && (t["X-LaunchDarkly-Wrapper"] = i.wrapperVersion ? i.wrapperName + "/" + i.wrapperVersion : i.wrapperName); 12388 let r = Ld.getTags(i), s = Object.keys(r); 12389 return s.length && (t["x-launchdarkly-tags"] = s.sort().map((n) => Array.isArray(r[n]) ? r[n].sort().map((a) => `${n}/${a}`) : [`${n}/${r[n]}`]).reduce((n, a) => n.concat(a), []).join(" ")), t; 12390 }, 12391 transformHeaders: function(e, i) { 12392 return i && i.requestHeaderTransform ? i.requestHeaderTransform(C({}, e)) : e; 12393 } 12394 }, {randomUuidV4: Dk} = Md, {getLDHeaders: Fk, transformHeaders: zk} = Bd, wv = function(e, i, t) { 12395 let r = ke.extend({ "Content-Type": "application/json" }, Fk(e, t)), s = {}; 12396 return s.sendEvents = (n, a, o) => { 12397 if (!e.httpRequest) return Promise.resolve(); 12398 let l = JSON.stringify(n), c = o ? null : Dk(); 12399 return (function d(u) { 12400 let h = o ? r : ke.extend({}, r, { 12401 "X-LaunchDarkly-Event-Schema": "4", 12402 "X-LaunchDarkly-Payload-ID": c 12403 }); 12404 return e.httpRequest("POST", a, zk(h, t), l).promise.then((g) => { 12405 if (g) return g.status >= 400 && yt.isHttpErrorRecoverable(g.status) && u ? d(!1) : (function(p) { 12406 let m = { status: p.status }, S = p.header("date"); 12407 if (S) { 12408 let b = Date.parse(S); 12409 b && (m.serverTime = b); 12410 } 12411 return m; 12412 })(g); 12413 }).catch(() => u ? d(!1) : Promise.reject()); 12414 })(!0).catch(() => {}); 12415 }, s; 12416 }, Gk = function e(i, t = []) { 12417 if (i === null || typeof i != "object") return JSON.stringify(i); 12418 if (t.includes(i)) throw new Error("Cycle detected"); 12419 return Array.isArray(i) ? `[${i.map((r) => e(r, [...t, i])).map((r) => r === void 0 ? "null" : r).join(",")}]` : `{${Object.keys(i).sort().map((r) => { 12420 let s = e(i[r], [...t, i]); 12421 if (s !== void 0) return `${JSON.stringify(r)}:${s}`; 12422 }).filter((r) => r !== void 0).join(",")}}`; 12423 }, {commonBasicLogger: Vk} = Rd, Vo = { 12424 checkContext: function(e, i) { 12425 if (e) { 12426 if (i && (e.kind === void 0 || e.kind === null)) return e.key !== void 0 && e.key !== null; 12427 let t = e.key, r = e.kind === void 0 ? "user" : e.kind, s = ok(r), n = r === "multi" || t != null && t !== ""; 12428 if (r === "multi") { 12429 let a = Object.keys(e).filter((o) => o !== "kind"); 12430 return n && a.every((o) => ok(o)) && a.every((o) => { 12431 let l = e[o].key; 12432 return l != null && l !== ""; 12433 }); 12434 } 12435 return n && s; 12436 } 12437 return !1; 12438 }, 12439 getContextKeys: function(e, i = Vk()) { 12440 if (!e) return; 12441 let t = {}, { kind: r, key: s } = e; 12442 switch (r) { 12443 case void 0: 12444 t.user = `${s}`; 12445 break; 12446 case "multi": 12447 Object.entries(e).filter(([n]) => n !== "kind").forEach(([n, a]) => { 12448 a && a.key && (t[n] = a.key); 12449 }); 12450 break; 12451 case null: 12452 i.warn(`null is not a valid context kind: ${e}`); 12453 break; 12454 case "": 12455 i.warn(`'' is not a valid context kind: ${e}`); 12456 break; 12457 default: t[r] = `${s}`; 12458 } 12459 return t; 12460 }, 12461 getContextKinds: function(e) { 12462 return e ? e.kind === null || e.kind === void 0 ? ["user"] : e.kind !== "multi" ? [e.kind] : Object.keys(e).filter((i) => i !== "kind") : []; 12463 }, 12464 getCanonicalKey: function(e) { 12465 if (e) { 12466 if ((e.kind === void 0 || e.kind === null || e.kind === "user") && e.key) return e.key; 12467 if (e.kind !== "multi" && e.key) return `${e.kind}
12467:${lk(e.key)}`; 12468 if (e.kind === "multi") return Object.keys(e).sort().filter((i) => i !== "kind").map((i) => `${i}:${lk(e[i].key)}`).join(":"); 12469 } 12470 } 12471 }, {getContextKinds: Hk} = Vo, Uk = function() { 12472 let e = {}, i = 0, t = 0, r = {}, s = {}; 12473 return e.summarizeEvent = (n) => { 12474 if (n.kind === "feature") { 12475 let a = n.key + ":" + (n.variation !== null && n.variation !== void 0 ? n.variation : "") + ":" + (n.version !== null && n.version !== void 0 ? n.version : ""), o = r[a], l = s[n.key]; 12476 l || (l = /* @__PURE__ */ new Set(), s[n.key] = l), (function(c) { 12477 return c.context ? Hk(c.context) : c.contextKeys ? Object.keys(c.contextKeys) : []; 12478 })(n).forEach((c) => l.add(c)), o ? o.count = o.count + 1 : r[a] = { 12479 count: 1, 12480 key: n.key, 12481 version: n.version, 12482 variation: n.variation, 12483 value: n.value, 12484 default: n.default 12485 }, (i === 0 || n.creationDate < i) && (i = n.creationDate), n.creationDate > t && (t = n.creationDate); 12486 } 12487 }, e.getSummary = () => { 12488 let n = {}, a = !0; 12489 for (let o of Object.values(r)) { 12490 let l = n[o.key]; 12491 l || (l = { 12492 default: o.default, 12493 counters: [], 12494 contextKinds: [...s[o.key]] 12495 }, n[o.key] = l);
12496 let c = { 12497 value: o.value, 12498 count: o.count 12499 }; 12500 o.variation !== void 0 && o.variation !== null && (c.variation = o.variation), o.version !== void 0 && o.version !== null ? c.version = o.version : c.unknown = !0, l.counters.push(c), a = !1; 12501 } 12502 return a ? null : { 12503 startDate: i, 12504 endDate: t, 12505 features: n, 12506 kind: "summary" 12507 }; 12508 }, e.clearSummary = () => { 12509 i = 0, t = 0, r = {}, s = {}; 12510 }, e; 12511 }, Wk = function(e) { 12512 let i = {}, t = {}; 12513 return { 12514 summarizeEvent: function(r) { 12515 if (r.kind === "feature") { 12516 let s = Gk(r.context); 12517 if (!s) return; 12518 let n = i[s]; 12519 n || (i[s] = Uk(), n = i[s], t[s] = r.context), n.summarizeEvent(r); 12520 } 12521 }, 12522 getSummaries: function() { 12523 let r = i, s = t; 12524 return i = {}, t = {}, Object.entries(r).map(([n, a]) => { 12525 let o = a.getSummary(); 12526 return o.context = e.filter(s[n]), o; 12527 }); 12528 } 12529 }; 12530 }, Dd = { 12531 cloneExcluding: function(e, i) { 12532 let t = [], r = {}, s = []; 12533 for (t.push(...Object.keys(e).map((n) => ({ 12534 key: n, 12535 ptr: hk(n), 12536 source: e, 12537 parent: r, 12538 visited: [e] 12539 }))); t.length;) { 12540 let n = t.pop(); 12541 if (i.some((a) => pk(a, n.ptr))) s.push(n.ptr); 12542 else { 12543 let a = n.source[n.key]; 12544 if (a === null) n.parent[n.key] = a; 12545 else if (Array.isArray(a)) n.parent[n.key] = [...a]; 12546 else if (typeof a == "object") { 12547 if (n.visited.includes(a)) continue; 12548 n.parent[n.key] = {}, t.push(...Object.keys(a).map((o) => { 12549 return { 12550 key: o, 12551 ptr: (l = n.ptr, c = ck(o), `${l}/${c}`), 12552 source: a, 12553 parent: n.parent[n.key], 12554 visited: [...n.visited, a] 12555 }; 12556 var l, c; 12557 })); 12558 } else n.parent[n.key] = a; 12559 } 12560 } 12561 return { 12562 cloned: r, 12563 excluded: s.sort() 12564 }; 12565 }, 12566 compare: pk, 12567 literalToReference: hk 12568 }, jk = function(e) { 12569 let i = {}, t = e.allAttributesPrivate, r = e.privateAttributes || [], s = [ 12570 "key", 12571 "kind", 12572 "_meta", 12573 "anonymous" 12574 ], n = [ 12575 "name", 12576 "ip", 12577 "firstName", 12578 "lastName", 12579 "email", 12580 "avatar", 12581 "country" 12582 ], a = (o, l) => { 12583 if (typeof o != "object" || o === null || Array.isArray(o)) return; 12584 let { cloned: c, excluded: d } = Dd.cloneExcluding(o, ((u, h) => (t || h && u.anonymous ? Object.keys(u) : [...r, ...u._meta && u._meta.privateAttributes || []]).filter((g) => !s.some((p) => Dd.compare(g, p))))(o, l)); 12585 return c.key = String(c.key), d.length && (c._meta || (c._meta = {}), c._meta.redactedAttributes = d), c._meta && (delete c._meta.privateAttributes, Object.keys(c._meta).length === 0 && delete c._meta), c.anonymous !== void 0 && (c.anonymous = !!c.anonymous), c; 12586 }; 12587 return i.filter = (o, l = !1) => o.kind === void 0 || o.kind === null ? a(((c) => { 12588 let d = J(C({}, c.custom || {}), { 12589 kind: "user", 12590 key: c.key 12591 }); 12592 c.anonymous !== void 0 && (d.anonymous = !!c.anonymous); 12593 for (let u of n) delete d[u], c[u] !== void 0 && c[u] !== null && (d[u] = String(c[u])); 12594 return c.privateAttributeNames !== void 0 && c.privateAttributeNames !== null && (d._meta = d._meta || {}, d._meta.privateAttributes = c.privateAttributeNames.map((u) => u.startsWith("/") ? Dd.literalToReference(u) : u)), d; 12595 })(o), l) : o.kind === "multi" ? ((c, d) => { 12596 let u = { kind: c.kind }, h = Object.keys(c); 12597 for (let g of h) if (g !== "kind") { 12598 let p = a(c[g], d); 12599 p && (u[g] = p); 12600 } 12601 return u; 12602 })(o, l) : a(o, l), i; 12603 }, {getContextKeys: Yk} = Vo, Kk = function(e, i, t, r = null, s = null, n = null) { 12604 let a = {}, o = n || wv(e, t, i), l = ke.appendUrlPath(i.eventsUrl, "/events/bulk/" + t), c = jk(i), d = Wk(c), u = i.samplingInterval, h = i.eventCapacity, g = i.flushInterval, p = i.logger, m, S = [], b = 0, v = !1, y = !1; 12605 function w() { 12606 return u === 0 || Math.floor(Math.random() * u) === 0; 12607 } 12608 function T(_) { 12609 let z = ke.extend({}, _); 12610 return _.kind === "identify" || _.kind === "feature" || _.kind === "custom" ? z.context = c.filter(_.context) : (z.contextKeys = Yk(_.context, p), delete z.context), _.kind === "feature" && (delete z.trackEvents, delete z.debugEventsUntilDate), z; 12611 } 12612 function O(_) { 12613 S.length < h ? (S.push(_), y = !1) : (y || (y = !0, p.warn(Se.eventCapacityExceeded())), r && r.incrementDroppedEvents()); 12614 } 12615 return a.enqueue = function(_) { 12616 if (v) return; 12617 let z = !1, V = !1; 12618 var x; 12619 if (d.summarizeEvent(_), _.kind === "feature" ? w() && (z = !!_.trackEvents, V = !!(x = _).debugEventsUntilDate && x.debugEventsUntilDate > b && x.debugEventsUntilDate > (/* @__PURE__ */ new Date()).getTime()) : z = w(), z && O(T(_)), V) { 12620 let $ = ke.extend({}, _, { kind: "debug" }); 12621 $.context = c.filter($.context), delete $.trackEvents, delete $.debugEventsUntilDate, O($); 12622 } 12623 }, a.flush = function() { 12624 return Oe(this, null, function* () { 12625 if (v) return Promise.resolve(); 12626 let _ = S;
12627 return d.getSummaries().forEach((z) => { 12628 Object.keys(z.features).length && _.push(z); 12629 }), r && r.setEventsInLastBatch(_.length), _.length === 0 ? Promise.resolve() : (S = [], p.debug(Se.debugPostingEvents(_.length)), o.sendEvents(_, l).then((z) => { 12630 z && (z.serverTime && (b = z.serverTime), yt.isHttpErrorRecoverable(z.status) || (v = !0), z.status >= 400 && ke.onNextTick(() => { 12631 s.maybeReportError(new yt.LDUnexpectedResponseError(Se.httpErrorMessage(z.status, "event posting", "some events were dropped"))); 12632 })); 12633 })); 12634 }); 12635 }, a.start = function() { 12636 let _ = () => { 12637 a.flush(), m = setTimeout(_, g); 12638 }; 12639 m = setTimeout(_, g); 12640 }, a.stop = function() { 12641 clearTimeout(m); 12642 }, a; 12643 }, qk = function(e) { 12644 let i = {}, t = {}; 12645 return i.on = function(r, s, n) { 12646 t[r] = t[r] || [], t[r] = t[r].concat({ 12647 handler: s, 12648 context: n 12649 }); 12650 }, i.off = function(r, s, n) { 12651 if (t[r]) for (let a = 0; a < t[r].length; a++) t[r][a].handler === s && t[r][a].context === n && (t[r] = t[r].slice(0, a).concat(t[r].slice(a + 1))); 12652 }, i.emit = function(r) { 12653 if (!t[r]) return; 12654 let s = t[r].slice(0); 12655 for (let n = 0; n < s.length; n++) s[n].handler.apply(s[n].context, Array.prototype.slice.call(arguments, 1)); 12656 }, i.getEvents = function() { 12657 return Object.keys(t); 12658 }, i.getEventListenerCount = function(r) { 12659 return t[r] ? t[r].length : 0; 12660 }, i.maybeReportError = function(r) { 12661 r && (t.error ? this.emit("error", r) : (e || console).error(r.message)); 12662 }, i; 12663 }, Ho = "ready", Fd = "initialized", zd = "failed", Xk = function(e) { 12664 let i = !1, t = !1, r = null, s = null, n = new Promise((a) => { 12665 let o = () => { 12666 e.off(Ho, o), a(); 12667 }; 12668 e.on(Ho, o); 12669 }).catch(() => {}); 12670 return { 12671 getInitializationPromise: () => s || (i ? Promise.resolve() : t ? Promise.reject(r) : (s = new Promise((a, o) => { 12672 let l = () => { 12673 e.off(Fd, l), a(); 12674 }, c = (d) => { 12675 e.off(zd, c), o(d); 12676 }; 12677 e.on(Fd, l), e.on(zd, c); 12678 }), s)), 12679 getReadyPromise: () => n, 12680 signalSuccess: () => { 12681 i || t || (i = !0, e.emit(Fd), e.emit(Ho)); 12682 }, 12683 signalFailure: (a) => { 12684 i || t || (t = !0, r = a, e.emit(zd, a), e.emit(Ho)), e.maybeReportError(a); 12685 } 12686 }; 12687 }, Jk = function(e, i, t, r) { 12688 let s = {}; 12689 function n() { 12690 let a = "", o = r.getContext(); 12691 return o && (a = t || ke.btoa(JSON.stringify(o))), "ld:" + i + ":" + a; 12692 } 12693 return s.loadFlags = () => e.get(n()).then((a) => { 12694 if (a == null) return null; 12695 try { 12696 let o = JSON.parse(a); 12697 if (o) { 12698 let l = o.$schema; 12699 l === void 0 || l < 1 ? o = ke.transformValuesToVersionedValues(o) : delete o.$schema; 12700 } 12701 return o; 12702 } catch { 12703 return s.clearFlags().then(() => null); 12704 } 12705 }), s.saveFlags = (a) => { 12706 let o = ke.extend({}, a, { $schema: 1 }); 12707 return e.set(n(), JSON.stringify(o)); 12708 }, s.clearFlags = () => e.clear(n()), s; 12709 }, Qk = function(e, i) { 12710 let t = {}, r = !1, s = (n) => { 12711 r || (r = !0, i.warn(Se.localStorageUnavailable(n))); 12712 }; 12713 return t.isEnabled = () => !!e, t.get = (n) => new Promise((a) => { 12714 e ? e.get(n).then(a).catch((o) => { 12715 s(o), a(void 0); 12716 }) : a(void 0); 12717 }), t.set = (n, a) => new Promise((o) => { 12718 e ? e.set(n, a).then(() => o(!0)).catch((l) => { 12719 s(l), o(!1); 12720 }) : o(!1); 12721 }), t.clear = (n) => new Promise((a) => { 12722 e ? e.clear(n).then(() => a(!0)).catch((o) => { 12723 s(o), a(!1); 12724 }) : a(!1); 12725 }), t; 12726 }, {appendUrlPath: Ev, base64URLEncode: Zk, objectHasOwnProperty: ex} = ke, {getLDHeaders: tx, transformHeaders: ix} = Bd, {isHttpErrorRecoverable: rx} = yt, sx = function(e, i, t, r) { 12727 let s = i.streamUrl, n = i.logger, a = {}, o = Ev(s, "/eval/" + t), l = i.useReport, c = i.evaluationReasons, d = i.streamReconnectDelay, u = tx(e, i), h, g = !1, p = null, m = null, S = null, b = null, v = null, y = 0; 12728 function w() { 12729 let x = ($ = (function() { 12730 let I = d * Math.pow(2, y); 12731 return I > 3e4 ? 3e4 : I; 12732 })(), $ - Math.trunc(.5 * Math.random() * $)); 12733 var $; 12734 return y += 1, x; 12735 } 12736 function T(x) { 12737 if (x.status && typeof x.status == "number" && !rx(x.status)) return z(), n.error(Se.unrecoverableStreamError(x)), void (m && (clearTimeout(m), m = null)); 12738 let $ = w(); 12739 g || (n.warn(Se.streamError(x, $)), g = !0), V(!1), z(), O($); 12740 } 12741 function O(x) { 12742 m || (x ? m = setTimeout(_, x) : _()); 12743 } 12744 function _() { 12745 let x; 12746 m = null; 12747 let $ = "", I = { 12748 headers: u, 12749 readTimeoutMillis: 3e5 12750 }; 12751 if (e.eventSourceFactory) { 12752 b != null && ($ = "h=" + b), l ? e.eventSourceAllowsReport ? (x = o, I.method = "REPORT", I.headers["Content-Type"] = "a
12752pplication/json", I.body = JSON.stringify(S)) : (x = Ev(s, "/ping/" + t), $ = "") : x = o + "/" + Zk(JSON.stringify(S)), I.headers = ix(I.headers, i), c && ($ = $ + ($ ? "&" : "") + "withReasons=true"), x = x + ($ ? "?" : "") + $, z(), n.info(Se.streamConnecting(x)), h = (/* @__PURE__ */ new Date()).getTime(), p = e.eventSourceFactory(x, I); 12753 for (let D in v) ex(v, D) && p.addEventListener(D, v[D]); 12754 p.onerror = T, p.onopen = () => { 12755 y = 0; 12756 }; 12757 } 12758 } 12759 function z() { 12760 p && (n.info(Se.streamClosing()), p.close(), p = null); 12761 } 12762 function V(x) { 12763 h && r && r.recordStreamInit(h, !x, (/* @__PURE__ */ new Date()).getTime() - h), h = null; 12764 } 12765 return a.connect = function(x, $, I) { 12766 S = x, b = $, v = {}; 12767 for (let D in I || {}) v[D] = function(H) { 12768 g = !1, V(!0), I[D] && I[D](H); 12769 }; 12770 O(); 12771 }, a.disconnect = function() { 12772 clearTimeout(m), m = null, z(); 12773 }, a.isConnected = function() { 12774 return !!(p && e.eventSourceIsActive && e.eventSourceIsActive(p)); 12775 }, a; 12776 }, nx = function(e) { 12777 let i, t, r, s, n = { addPromise: (a, o) => { 12778 i = a, t && t(), t = o, a.then((l) => { 12779 i === a && (r(l), e && e()); 12780 }, (l) => { 12781 i === a && (s(l), e && e()); 12782 }); 12783 } }; 12784 return n.resultPromise = new Promise((a, o) => { 12785 r = a, s = o; 12786 }), n; 12787 }, {transformHeaders: ax, getLDHeaders: ox} = Bd, Cv = "application/json", lx = function(e, i, t) { 12788 let r = i.baseUrl, s = i.useReport, n = i.evaluationReasons, a = i.logger, o = {}, l = {}; 12789 function c(d, u) { 12790 if (!e.httpRequest) return new Promise((b, v) => { 12791 v(new yt.LDFlagFetchError(Se.httpUnavailable())); 12792 }); 12793 let h = u ? "REPORT" : "GET", g = ox(e, i); 12794 u && (g["Content-Type"] = Cv); 12795 let p = l[d]; 12796 p || (p = nx(() => { 12797 delete l[d]; 12798 }), l[d] = p); 12799 let m = e.httpRequest(h, d, ax(g, i), u), S = m.promise.then((b) => { 12800 if (b.status === 200) { 12801 if (b.header("content-type") && b.header("content-type").substring(0, 16) === Cv) return JSON.parse(b.body); 12802 { 12803 let v = Se.invalidContentType(b.header("content-type") || ""); 12804 return Promise.reject(new yt.LDFlagFetchError(v)); 12805 } 12806 } 12807 return Promise.reject((function(v) { 12808 return v.status === 404 ? new yt.LDInvalidEnvironmentIdError(Se.environmentNotFound()) : new yt.LDFlagFetchError(Se.errorFetchingFlags(v.statusText || String(v.status))); 12809 })(b)); 12810 }, (b) => Promise.reject(new yt.LDFlagFetchError(Se.networkError(b)))); 12811 return p.addPromise(S, () => { 12812 m.cancel && m.cancel(); 12813 }), p.resultPromise; 12814 } 12815 return o.fetchJSON = function(d) { 12816 return c(ke.appendUrlPath(r, d), null); 12817 }, o.fetchFlagSettings = function(d, u) { 12818 let h, g, p, m = ""; 12819 return s ? (g = [ 12820 r, 12821 "/sdk/evalx/", 12822 t, 12823 "/context" 12824 ].join(""), p = JSON.stringify(d)) : (h = ke.base64URLEncode(JSON.stringify(d)), g = [ 12825 r, 12826 "/sdk/evalx/", 12827 t, 12828 "/contexts/", 12829 h 12830 ].join("")), u && (m = "h=" + u), n && (m = m + (m ? "&" : "") + "withReasons=true"), g = g + (m ? "?" : "") + m, a.debug(Se.debugPolling(g)), c(g, p); 12831 }, o; 12832 }, cx = function(e, i) { 12833 let t = {}, r; 12834 return t.setContext = function(s) { 12835 r = ke.sanitizeContext(s), r && i && i(ke.clone(r)); 12836 }, t.getContext = function() { 12837 return r ? ke.clone(r) : null; 12838 }, e && t.setContext(e), t; 12839 }, {randomUuidV4: dx} = Md, {getContextKinds: ux} = Vo, px = function(e) { 12840 function i(r) { 12841 return r == null || r === "user" ? "ld:$anonUserId" : `ld:$contextKey:${r}`; 12842 } 12843 function t(r, s) { 12844 return s.key !== null && s.key !== void 0 ? (s.key = s.key.toString(), Promise.resolve(s)) : s.anonymous ? (function(n) { 12845 return e.get(i(n)); 12846 })(r).then((n) => { 12847 if (n) return s.key = n, s; 12848 { 12849 let a = dx(); 12850 return s.key = a, (function(o, l) { 12851 return e.set(i(l), o); 12852 })(a, r).then(() => s); 12853 } 12854 }) : Promise.reject(new yt.LDInvalidUserError(Se.invalidContext())); 12855 } 12856 this.processContext = (r) => { 12857 if (!r) return Promise.reject(new yt.LDInvalidUserError(Se.contextNotSpecified())); 12858 let s = ke.clone(r); 12859 if (r.kind === "multi") { 12860 let n = ux(s); 12861 return Promise.all(n.map((a) => t(a, s[a]))).then(() => s); 12862 } 12863 return t(r.kind, s); 12864 }; 12865 }, {randomUuidV4: hx} = Md, {baseOptionDefs: Gd} = Ld, {appendUrlPath: mx} = ke, Vd = { 12866 DiagnosticId: function(e) { 12867 let i = { diagnosticId: hx() }; 12868 return e && (i.sdkKeySuffix = e.length > 6 ? e.substring(e.length - 6) : e), i; 12869 }, 12870 DiagnosticsAccumulator: function(e) { 12871 let i, t, r, s; 12872 function n(a) { 12873 i = a, t = 0, r = 0, s = []; 12874 } 12875 return n(e), { 12876 getProps: () => ({ 12877 dataSinceDate: i, 12878 droppedEvents: t, 12879 eventsInLastBatch: r, 12880 streamInits: s 12881 }), 12882 setProps: (a) => { 12883 i = a.dataSinceDate, t = a.droppedEvents || 0, r = a.eventsInLastBatch || 0, s = a.streamInits || []; 12884 }, 12885 incrementDroppedEvents: () => { 12886 t++; 12887 }, 12888 setEventsInLastBatch: (a) => { 12889 r = a; 12890 }, 12891 recordStreamInit: (a, o, l) => {
12892 let c = { 12893 timestamp: a, 12894 failed: o, 12895 durationMillis: l 12896 }; 12897 s.push(c); 12898 }, 12899 reset: n 12900 }; 12901 }, 12902 DiagnosticsManager: function(e, i, t, r, s, n, a) { 12903 let o = !!e.diagnosticUseCombinedEvent, l = "ld:" + s + ":$diagnostics", c = mx(n.eventsUrl, "/events/diagnostic/" + s), d = n.diagnosticRecordingInterval, u = t, h, g, p = !!n.streaming, m = {}; 12904 function S() { 12905 return { 12906 sdk: y(), 12907 configuration: w(), 12908 platform: e.diagnosticPlatformData 12909 }; 12910 } 12911 function b(T) { 12912 n.logger && n.logger.debug(Se.debugPostingDiagnosticEvent(T)), r.sendEvents(T, c, !0).then(() => {}).catch(() => {}); 12913 } 12914 function v() { 12915 b((function() { 12916 let T = (/* @__PURE__ */ new Date()).getTime(), O = C({ 12917 kind: o ? "diagnostic-combined" : "diagnostic", 12918 id: a, 12919 creationDate: T 12920 }, u.getProps()); 12921 return o && (O = C(C({}, O), S())), u.reset(T), O; 12922 })()), g = setTimeout(v, d), h = (/* @__PURE__ */ new Date()).getTime(), o && (function() { 12923 if (i.isEnabled()) { 12924 let T = C({}, u.getProps()); 12925 i.set(l, JSON.stringify(T)); 12926 } 12927 })(); 12928 } 12929 function y() { 12930 let T = C({}, e.diagnosticSdkData); 12931 return n.wrapperName && (T.wrapperName = n.wrapperName), n.wrapperVersion && (T.wrapperVersion = n.wrapperVersion), T; 12932 } 12933 function w() { 12934 return { 12935 customBaseURI: n.baseUrl !== Gd.baseUrl.default, 12936 customStreamURI: n.streamUrl !== Gd.streamUrl.default, 12937 customEventsURI: n.eventsUrl !== Gd.eventsUrl.default, 12938 eventsCapacity: n.eventCapacity, 12939 eventsFlushIntervalMillis: n.flushInterval, 12940 reconnectTimeMillis: n.streamReconnectDelay, 12941 streamingDisabled: !p, 12942 allAttributesPrivate: !!n.allAttributesPrivate, 12943 diagnosticRecordingIntervalMillis: n.diagnosticRecordingInterval, 12944 usingSecureMode: !!n.hash, 12945 bootstrapMode: !!n.bootstrap, 12946 fetchGoalsDisabled: !n.fetchGoals, 12947 sendEventsOnlyForVariation: !!n.sendEventsOnlyForVariation 12948 }; 12949 } 12950 return m.start = () => { 12951 o ? (function(T) { 12952 if (!i.isEnabled()) return T(!1); 12953 i.get(l).then((O) => { 12954 if (O) try { 12955 let _ = JSON.parse(O); 12956 u.setProps(_), h = _.dataSinceDate; 12957 } catch {} 12958 T(!0); 12959 }).catch(() => { 12960 T(!1); 12961 }); 12962 })((T) => { 12963 if (T) { 12964 let O = (h || 0) + d, _ = (/* @__PURE__ */ new Date()).getTime(); 12965 _ >= O ? v() : g = setTimeout(v, O - _); 12966 } else Math.floor(4 * Math.random()) === 0 ? v() : g = setTimeout(v, d); 12967 }) : (b(C({ 12968 kind: "diagnostic-init", 12969 id: a, 12970 creationDate: u.getProps().dataSinceDate 12971 }, S())), g = setTimeout(v, d)); 12972 }, m.stop = () => { 12973 g && clearTimeout(g); 12974 }, m.setStreaming = (T) => { 12975 p = T; 12976 }, m; 12977 } 12978 }, fx = function(e, i) { 12979 let t = !1, r = { 12980 type: e.type, 12981 name: e.name, 12982 synchronous: e.synchronous, 12983 method: (...s) => { 12984 try { 12985 e.method(...s); 12986 } catch { 12987 t || (t = !0, i.warn(Se.inspectorMethodError(r.type, r.name))); 12988 } 12989 } 12990 }; 12991 return r; 12992 }, {onNextTick: Uo} = ke, fi = { 12993 flagUsed: "flag-used", 12994 flagDetailsChanged: "flag-details-changed", 12995 flagDetailChanged: "flag-detail-changed", 12996 clientIdentityChanged: "client-identity-changed" 12997 }, Object.freeze(fi), gx = { 12998 InspectorTypes: fi, 12999 InspectorManager: function(e, i) { 13000 let t = {}, r = { 13001 [fi.flagUsed]: [], 13002 [fi.flagDetailsChanged]: [], 13003 [fi.flagDetailChanged]: [], 13004 [fi.clientIdentityChanged]: [] 13005 }, s = { 13006 [fi.flagUsed]: [], 13007 [fi.flagDetailsChanged]: [], 13008 [fi.flagDetailChanged]: [], 13009 [fi.clientIdentityChanged]: [] 13010 }, n = e && e.map((a) => fx(a, i)); 13011 return n && n.forEach((a) => { 13012 Object.prototype.hasOwnProperty.call(r, a.type) && !a.synchronous ? r[a.type].push(a) : Object.prototype.hasOwnProperty.call(s, a.type) && a.synchronous ? s[a.type].push(a) : i.warn(Se.invalidInspector(a.type, a.name)); 13013 }), t.hasListeners = (a) => r[a] && r[a].length || s[a] && s[a].length, t.onFlagUsed = (a, o, l) => {
13014 let c = fi.flagUsed; 13015 s[c].length && s[c].forEach((d) => d.method(a, o, l)), r[c].length && Uo(() => { 13016 r[c].forEach((d) => d.method(a, o, l)); 13017 }); 13018 }, t.onFlags = (a) => { 13019 let o = fi.flagDetailsChanged; 13020 s[o].length && s[o].forEach((l) => l.method(a)), r[o].length && Uo(() => { 13021 r[o].forEach((l) => l.method(a)); 13022 }); 13023 }, t.onFlagChanged = (a, o) => { 13024 let l = fi.flagDetailChanged; 13025 s[l].length && s[l].forEach((c) => c.method(a, o)), r[l].length && Uo(() => { 13026 r[l].forEach((c) => c.method(a, o)); 13027 }); 13028 }, t.onIdentityChanged = (a) => { 13029 let o = fi.clientIdentityChanged; 13030 s[o].length && s[o].forEach((l) => l.method(a)), r[o].length && Uo(() => { 13031 r[o].forEach((l) => l.method(a)); 13032 }); 13033 }, t; 13034 } 13035 }, {LDTimeoutError: vx} = yt, Sx = function(e, i) { 13036 return new Promise((t, r) => { 13037 setTimeout(() => { 13038 r(new vx(`${i} timed out after ${e} seconds.`)); 13039 }, 1e3 * e); 13040 }); 13041 }, Nv = "unknown hook", bx = function(e, i) { 13042 let t = i ? [...i] : []; 13043 return { 13044 withEvaluation: function(r, s, n, a) { 13045 if (t.length === 0) return a(); 13046 let o = [...t], l = { 13047 flagKey: r, 13048 context: s, 13049 defaultValue: n 13050 }, c = (function(u, h, g) { 13051 return h.map((p) => zo(u, "beforeEvaluation", Go(u, p), () => p?.beforeEvaluation?.(g, {}) ?? {}, {})); 13052 })(e, o, l), d = a(); 13053 return (function(u, h, g, p, m) { 13054 for (let S = h.length - 1; S >= 0; S -= 1) { 13055 let b = h[S], v = p[S]; 13056 zo(u, "afterEvaluation", Go(u, b), () => b?.afterEvaluation?.(g, v, m) ?? {}, {}); 13057 } 13058 })(e, o, l, c, d), d; 13059 }, 13060 identify: function(r, s) { 13061 let n = [...t], a = { 13062 context: r, 13063 timeout: s 13064 }, o = (function(l, c, d) { 13065 return c.map((u) => zo(l, "beforeIdentify", Go(l, u), () => u?.beforeIdentify?.(d, {}) ?? {}, {})); 13066 })(e, n, a); 13067 return (l) => { 13068 (function(c, d, u, h, g) { 13069 for (let p = d.length - 1; p >= 0; p -= 1) { 13070 let m = d[p], S = h[p]; 13071 zo(c, "afterIdentify", Go(c, m), () => m?.afterIdentify?.(u, S, g) ?? {}, {}); 13072 } 13073 })(e, n, a, o, l); 13074 }; 13075 }, 13076 addHook: function(r) { 13077 t.push(r); 13078 }, 13079 afterTrack: function(r) { 13080 t.length !== 0 && (function(s, n, a) { 13081 for (let o = n.length - 1; o >= 0; o -= 1) { 13082 let l = n[o]; 13083 zo(s, "afterTrack", Go(s, l), () => l?.afterTrack?.(a), void 0); 13084 } 13085 })(e, [...t], r); 13086 } 13087 }; 13088 }, yx = function() { 13089 let e, i = {}; 13090 function t(r) { 13091 return e && ke.objectHasOwnProperty(e, r) && e[r] ? e[r] : i && ke.objectHasOwnProperty(i, r) && i[r] && !i[r].deleted ? i[r] : null; 13092 } 13093 return { 13094 clearAllOverrides: function() { 13095 if (!e) return {}; 13096 let r = C({}, e); 13097 return e = void 0, r; 13098 }, 13099 get: t, 13100 getFlagOverrides: function() { 13101 return e || {}; 13102 }, 13103 getFlags: function() { 13104 return i; 13105 }, 13106 getFlagsWithOverrides: function() { 13107 let r = {}; 13108 for (let s in i) { 13109 let n = t(s); 13110 n && (r[s] = n); 13111 } 13112 if (e) for (let s in e) { 13113 let n = t(s); 13114 n && (r[s] = n); 13115 } 13116 return r; 13117 }, 13118 removeOverride: function(r) { 13119 e && e[r] && (delete e[r], Object.keys(e).length === 0 && (e = void 0)); 13120 }, 13121 setFlags: function(r) { 13122 i = C({}, r); 13123 }, 13124 setOverride: function(r, s) { 13125 e || (e = {}), e[r] = { value: s }; 13126 } 13127 }; 13128 }, Tv = "unknown plugin", wx = { 13129 getPluginHooks: function(e, i, t) { 13130 let r = []; 13131 return t.forEach((s) => { 13132 try { 13133 let n = s.getHooks?.(i); 13134 n === void 0 ? e.error(`Plugin ${Pd(e, s)} returned undefined from getHooks.`) : n && n.length > 0 && r.push(...n); 13135 } catch { 13136 e.error(`Exception thrown getting hooks for plugin ${Pd(e, s)}. Unable to get hooks.`); 13137 } 13138 }), r; 13139 }, 13140 registerPlugins: function(e, i, t, r) { 13141 r.forEach((s) => { 13142 try { 13143 s.register(t, i); 13144 } catch { 13145 e.error(`Exception thrown registering plugin ${Pd(e, s)}.`); 13146 } 13147 }); 13148 }, 13149 registerPluginsForDebugOverride: function(e, i, t) { 13150 t.forEach((r) => { 13151 try { 13152 r.registerDebug?.(i); 13153 } catch { 13154 e.error(`Exception thrown registering debug override with plugin ${Pd(e, r)}.`); 13155 } 13156 }); 13157 }, 13158 createPluginEnvironment: function(e, i, t) { 13159 let r = {}; 13160 e.userAgent && (r.name = e.userAgent), e.version && (r.version = e.version), t.wrapperName && (r.wrapperName = t.wrapperName), t.wrapperVersion && (r.wrapperVersion = t.wrapperVersion); 13161 let s = {}; 13162 t.application && (t.application.name && (s.name = t.application.name), t.application.version && (s.version = t.application.version)); 13163 let n = { 13164 sdk: r, 13165 clientSideId: i 13166 }; 13167 return Object.keys(s).length > 0 && (n.application = s), n; 13168 } 13169 }, {commonBasicLogger: kv} = Rd, {checkContext: Ex, getContextKeys: Cx} = Vo, {InspectorTypes: Wo, InspectorManager: Nx} = gx, {getPluginHooks: Tx, registerPlugins: kx, registerPluginsForDebugOverride: xx, createPluginEnvironment: Ix} = wx, jo = "change", xv = "internal-change", Yo = { 13170 initialize: function(e, i, t, r, s) { 13171 let n = (function() { 13172 return t && t.logger ? t.logger : s && s.logger && s.logger.default || kv("warn"); 13173 })(), a = qk(n), o = Xk(a), l = Ld.validate(t, a, s, n), c = Nx(l.inspectors, n), d = l.sendEvents, u = e, h = l.hash, g = [...l.plugins], p = Ix(r, e, l), m = Tx(n, p, g), S = bx(n, [...l.hooks, ...m]), b = Qk(r.localStorage, n), v = wv(r, u, l), y = l.sendEvents && !l.diagnosticOptOut, w = y ? Vd.DiagnosticId(u) : null, T = y ? Vd.DiagnosticsAccumulator((/* @__PURE__ */ new Date()).getTime()) : null, O = y ? Vd.DiagnosticsManager(r, b, T, v, u, l, w) : null, _ = sx(r, l, u, T), z = l.eventProcessor || Kk(r, l, u, T, a, v), V = lx(r, l, u), x = yx(), $, I, D, H = l.streaming, F = !1, K = !1, B = !0, L = l.stateProvider, X = cx(null, function(M) { 13174 (function(q) { 13175 L || q && Ct({ 13176 kind: "identify", 13177 context: q, 13178 creationDate: (/* @__PURE__ */ new Date()).getTime() 13179 }); 13180 })(M), c.hasListeners(Wo.clientIdentityChanged) && c.onIdentityChanged(X.getContext()); 13181 }), Ve = new px(b), at = b.isEnabled() ? Jk(b, u, h, X) : null; 13182 function Ct(M) { 13183 u && (L && L.enqueueEvent && L.enqueueEvent(M) || (M.context ? (B = !1, !d || K || r.isDoNotTrack() || (n.debug(Se.debugEnqueueingEvent(M.kind)), z.enqueue(M))) : B && (n.warn(Se.eventWithoutContext()), B = !1))); 13184 } 13185 function oi(M, q) { 13186 c.hasListeners(Wo.flagDetailChanged) && c.onFlagChanged(M.key, Me(q)); 13187 } 13188 function Ii() { 13189 c.hasListeners(Wo.flagDetailsChanged) && c.onFlags(Object.entries(x.getFlagsWithOverrides()).map(([M, q]) => ({ 13190 key: M, 13191 detail: Me(q) 13192 })).reduce((M, q) => (M[q.key] = q.detail, M), {})); 13193 } 13194 function se(M, q, Q, oe) { 13195 let Ee = X.getContext(), He = /* @__PURE__ */ new Date(), De = { 13196 kind: "feature", 13197 key: M, 13198 context: Ee, 13199 value: q ? q.value : null, 13200 variation: q ? q.variationIndex : null, 13201 default: Q, 13202 creationDate: He.getTime() 13203 }, et = x.getFlags()[M]; 13204 et && (De.version = et.flagVersion ? et.flagVersion : et.version, De.trackEvents = et.trackEvents, De.debugEventsUntilDate = et.debugEventsUntilDate), (oe || et && et.trackReason) && q && (De.reason = q.reason), Ct(De); 13205 } 13206 function Y(M) { 13207 return Ex(M, !1) ? Promise.resolve(M) : Promise.reject(new yt.LDInvalidUserError(Se.invalidContext())); 13208 } 13209 function re(M, q, Q, oe, Ee, He) { 13210 let De, et = x.get(M); 13211 return et ? (De = Me(et), et.value !== null && et.value !== void 0 || (De.value = q)) : De = { 13212 value: q, 13213 variationIndex: null, 13214 reason: { 13215 kind: "ERROR", 13216 errorKind: "FLAG_NOT_FOUND" 13217 } 13218 }, Q && (Ee || et?.prerequisites?.forEach((mr) => { 13219 re(mr, void 0, Q, !1, !1, !1); 13220 }), se(M, De, q, oe)), !Ee && He && (function(mr, vl) { 13221 c.hasListeners(Wo.flagUsed) && c.onFlagUsed(mr, vl, X.getContext()); 13222 })(M, De), De; 13223 } 13224 function Me(M) { 13225 return { 13226 value: M.value, 13227 variationIndex: M.variation === void 0 ? null : M.variation, 13228 reason: M.reason || null 13229 }; 13230 } 13231 function Lt() { 13232 if (I = !0, !X.getContext()) return; 13233 let M = (q) => { 13234 try { 13235 return JSON.parse(q); 13236 } catch { 13237 a.maybeReportError(new yt.LDInvalidDataError(Se.invalidData())); 13238 return; 13239 } 13240 }; 13241 _.connect(X.getContext(), h, { 13242 ping: function() { 13243 n.debug(Se.debugStreamPing()); 13244 let q = X.getContext(); 13245 V.fetchFlagSettings(q, h).then((Q) => { 13246 ke.deepEquals(q, X.getContext()) && Zt(Q || {}); 13247 }).catch((Q) => { 13248 a.maybeReportError(new yt.LDFlagFetchError(Se.errorFetchingFlags(Q))); 13249 }); 13250 }, 13251 put: function(q) { 13252 let Q = M(q.data); 13253 Q && (n.debug(Se.debugStreamPut()), Zt(Q)); 13254 }, 13255 patch: function(q) { 13256 let Q = M(q.data); 13257 if (!Q) return; 13258 let oe = x.getFlags(), Ee = oe[Q.key]; 13259 if (!Ee || !Ee.version || !Q.version || Ee.version < Q.version) { 13260 n.debug(Se.debugStreamPatch(Q.key)); 13261 let He = {}, De = ke.extend({}, Q); 13262 delete De.key, oe[Q.key] = De, x.setFlags(oe); 13263 let et = Me(De); 13264 He[Q.key] = Ee ? { 13265 previous: Ee.value, 13266 current: et 13267 } : { current: et }, oi(Q, De), li(He); 13268 } else n.debug(Se.debugStreamPatchIgnored(Q.key)); 13269 }, 13270 delete: function(q) { 13271 let Q = M(q.data); 13272 if (!Q) return; 13273 let oe = x.getFlags(); 13274 if (!oe[Q.key] || oe[Q.key].version < Q.version) { 13275 n.debug(Se.debugStreamDelete(Q.key)); 13276 let Ee = {}; 13277 oe[Q.key] && !oe[Q.key].deleted && (Ee[Q.key] = { previous: oe[Q.key].value }), oe[Q.key] = { 13278 version: Q.version, 13279 deleted: !0 13280 }, x.setFlags(oe), oi(Q, oe[Q.key]), li(Ee); 13281 } else n.debug(Se.debugStreamDeleteIgnored(Q.key)); 13282 } 13283 }); 13284 } 13285 function Oi() { 13286 I && (_.disconnect(), I = !1); 13287 } 13288 function Zt(M) { 13289 let q = {}; 13290 if (!M) return Promise.resolve(); 13291 let Q = x.getFlags(); 13292 for (let oe in Q) ke.objectHasOwnProperty(Q, oe) && Q[oe] && (M[oe] && !ke.deepEquals(M[oe].value, Q[oe].value) ? q[oe] = { 13293 previous: Q[oe].value, 13294 current: Me(M[oe]) 13295 } : M[oe] && !M[oe].deleted || (q[oe] = { previous: Q[oe].value })); 13296 for (let oe in M) ke.objectHasOwnProperty(M, oe) && M[oe] && (!Q[oe] || Q[oe].deleted) && (q[oe] = { current: Me(M[oe]) }); 13297 return x.setFlags(C({}, M)), Ii(), li(q).catch(() => {}); 13298 } 13299 function li(M) { 13300 let q = Object.keys(M); 13301 if (q.length > 0) { 13302 let Q = {}; 13303 q.forEach((oe) => { 13304 let Ee = M[oe].current, He = Ee ? Ee.value : void 0, De = M[oe].previous; 13305 a.emit(jo + ":" + oe, He, De), Q[oe] = Ee ? { 13306 current: He, 13307 previous: De 13308 } : { previous: De }; 13309 }), a.emit(jo, Q), a.emit(xv, x.getFlagsWithOverrides()), l.sendEventsOnlyForVariation || L || q.forEach((oe) => { 13310 se(oe, M[oe].current); 13311 }); 13312 } 13313 return $ && at ? at.saveFlags(x.getFlags()) : Promise.resolve(); 13314 } 13315 function hr() { 13316 let M = H || D && H === void 0; 13317 M && !I ? Lt() : !M && I && Oi(), O && O.setStreaming(M); 13318 } 13319 function Bt(M) { 13320 return M === jo || M.substr(0, 7) === jo + ":"; 13321 } 13322 if (typeof l.bootstrap == "string" && l.bootstrap.toUpperCase() === "LOCALSTORAGE" && (at ? $ = !0 : n.warn(Se.localStorageUnavailable())), typeof l.bootstrap == "object" && x.setFlags((function(M) { 13323 let q = Object.keys(M), Q = "$flagsState", oe = "$valid", Ee = M[Q]; 13324 !Ee && q.length && n.warn(Se.bootstrapOldFormat()), M[oe] === !1 && n.warn(Se.bootstrapInvalid()); 13325 let He = {}; 13326 return q.forEach((De) => { 13327 if (De !== Q && De !== oe) { 13328 let et = { value: M[De] }; 13329 Ee && Ee[De] ? et = ke.extend(et, Ee[De]) : et.version = 0, He[De] = et; 13330 } 13331 }), He; 13332 })(l.bootstrap)), L) { 13333 let M = L.getInitialState(); 13334 M ? gi(M) : L.on("init", gi), L.on("update", function(q) { 13335 q.context && X.setContext(q.context), q.flags && Zt(q.flags); 13336 }); 13337 } else (function() { 13338 if (!e) return Promise.reject(new yt.LDInvalidEnvironmentIdError(Se.environmentNotSpecified())); 13339 let M; 13340 return Ve.processContext(i).then(Y).then((q) => (M = ke.once(S.identify(q, void 0)), q)).then((q) => (M?.({ status: "completed" }), X.setContext(q), typeof l.bootstrap == "object" ? Ji() : $ ? at.loadFlags().then((Q) => Q == null ? (x.setFlags({}), V.fetchFlagSettings(X.getContext(), h).then((oe) => Zt(oe || {})).then(Ji).catch((oe) => { 13341 bs(new yt.LDFlagFetchError(Se.errorFetchingFlags(oe))); 13342 })) : (x.setFlags(Q), ke.onNextTick(Ji), V.fetchFlagSettings(X.getContext(), h).then((oe) => Zt(oe)).catch((oe) => a.maybeReportError(oe)))) : V.fetchFlagSettings(X.getContext(), h).then((Q) => { 13343 x.setFlags(Q || {}), Ii(), Ji(); 13344 }).catch((Q) => { 13345 x.setFlags({}), bs(Q); 13346 }
13346))).catch((q) => { 13347 throw M?.({ status: "error" }), q; 13348 }); 13349 })().catch(bs); 13350 function gi(M) { 13351 u = M.environment, X.setContext(M.context), x.setFlags(C({}, M.flags)), ke.onNextTick(Ji); 13352 } 13353 function Ji() { 13354 n.info(Se.clientInitialized()), F = !0, hr(), o.signalSuccess(); 13355 } 13356 function bs(M) { 13357 o.signalFailure(M); 13358 } 13359 let Vr = { 13360 waitForInitialization: function(M = void 0) { 13361 if (M != null) { 13362 if (typeof M == "number") return (function(q) { 13363 q > 5 && n.warn("The waitForInitialization function was called with a timeout greater than 5 seconds. We recommend a timeout of 5 seconds or less."); 13364 let Q = o.getInitializationPromise(), oe = Sx(q, "waitForInitialization"); 13365 return Promise.race([oe, Q]).catch((Ee) => { 13366 throw Ee instanceof yt.LDTimeoutError && n.error(`waitForInitialization error: ${Ee}`), Ee; 13367 }); 13368 })(M); 13369 n.warn("The waitForInitialization method was provided with a non-numeric timeout."); 13370 } 13371 return n.warn("The waitForInitialization function was called without a timeout specified. In a future version a default timeout will be applied."), o.getInitializationPromise(); 13372 }, 13373 waitUntilReady: () => o.getReadyPromise(), 13374 identify: function(M, q, Q) { 13375 if (K) return ke.wrapPromiseCallback(Promise.resolve({}), Q); 13376 if (L) return n.warn(Se.identifyDisabled()), ke.wrapPromiseCallback(Promise.resolve(ke.transformVersionedValuesToValues(x.getFlagsWithOverrides())), Q); 13377 let oe, Ee = $ && at ? at.clearFlags() : Promise.resolve(); 13378 return ke.wrapPromiseCallback(Ee.then(() => Ve.processContext(M)).then(Y).then((He) => (oe = ke.once(S.identify(He, void 0)), He)).then((He) => V.fetchFlagSettings(He, q).then((De) => { 13379 let et = ke.transformVersionedValuesToValues(De); 13380 return X.setContext(He), h = q, De ? Zt(De).then(() => et) : et; 13381 })).then((He) => (oe?.({ status: "completed" }), I && Lt(), He)).catch((He) => (oe?.({ status: "error" }), a.maybeReportError(He), Promise.reject(He))), Q); 13382 }, 13383 getContext: function() { 13384 return X.getContext(); 13385 }, 13386 variation: function(M, q) { 13387 let { value: Q } = S.withEvaluation(M, X.getContext(), q, () => re(M, q, !0, !1, !1, !0)); 13388 return Q; 13389 }, 13390 variationDetail: function(M, q) { 13391 return S.withEvaluation(M, X.getContext(), q, () => re(M, q, !0, !0, !1, !0)); 13392 }, 13393 track: function(M, q, Q) { 13394 if (typeof M != "string") return void a.maybeReportError(new yt.LDInvalidEventKeyError(Se.unknownCustomEventKey(M))); 13395 Q !== void 0 && typeof Q != "number" && n.warn(Se.invalidMetricValue(typeof Q)), r.customEventFilter && !r.customEventFilter(M) && n.warn(Se.unknownCustomEventKey(M)); 13396 let oe = X.getContext(), Ee = { 13397 kind: "custom", 13398 key: M, 13399 context: oe, 13400 url: r.getCurrentUrl(), 13401 creationDate: (/* @__PURE__ */ new Date()).getTime() 13402 }; 13403 oe && oe.anonymous && (Ee.contextKind = oe.anonymous ? "anonymousUser" : "user"), q != null && (Ee.data = q), Q != null && (Ee.metricValue = Q), Ct(Ee), S.afterTrack({ 13404 context: oe, 13405 key: M, 13406 data: q, 13407 metricValue: Q 13408 }); 13409 }, 13410 on: function(M, q, Q) { 13411 Bt(M) ? (D = !0, F && hr(), a.on(M, q, Q)) : a.on(...arguments); 13412 }, 13413 off: function(M) { 13414 if (a.off(...arguments), Bt(M)) { 13415 let q = !1; 13416 a.getEvents().forEach((Q) => { 13417 Bt(Q) && a.getEventListenerCount(Q) > 0 && (q = !0); 13418 }), q || (D = !1, I && H === void 0 && Oi()); 13419 } 13420 }, 13421 setStreaming: function(M) { 13422 let q = M === null ? void 0 : M; 13423 q !== H && (H = q, hr()); 13424 }, 13425 flush: function(M) { 13426 return ke.wrapPromiseCallback(d ? z.flush() : Promise.resolve(), M); 13427 }, 13428 allFlags: function() { 13429 let M = {}, q = x.getFlagsWithOverrides(); 13430 if (!q) return M; 13431 for (let Q in q) M[Q] = re(Q, null, !l.sendEventsOnlyForVariation, !1, !0, !1).value; 13432 return M; 13433 }, 13434 close: function(M) { 13435 if (K) return ke.wrapPromiseCallback(Promise.resolve(), M); 13436 let q = () => { 13437 K = !0, x.setFlags({}); 13438 }, Q = Promise.resolve().then(() => { 13439 if (Oi(), O && O.stop(), d) return z.stop(), z.flush(); 13440 }).then(q).catch(q); 13441 return ke.wrapPromiseCallback(Q, M); 13442 }, 13443 addHook: function(M) { 13444 S.addHook(M); 13445 } 13446 }; 13447 return kx(n, p, Vr, g), xx(n, { 13448 setOverride: function(M, q) { 13449 let Q = {}, oe = x.get(M), Ee = oe ? oe.value : null; 13450 if (Ee === q) return void n.debug(`setOverride: No change needed for ${M}, value already ${q}`); 13451 x.setOverride(M, q); 13452 let He = x.get(M); 13453 Q[M] = { 13454 previous: Ee, 13455 current: Me(He) 13456 }, oi({ key: M }, He), li(Q); 13457 }, 13458 removeOverride: function(M) { 13459 let q = x.getFlagOverrides(); 13460 if (!q[M]) return; 13461 let Q = {}, oe = q[M], Ee = x.getFlags()[M]; 13462 Q[M] = { 13463 previous: oe.value, 13464 current: Ee ? Me(Ee) : void 0 13465 }, x.removeOverride(M), oi({ key: M }, Ee), li(Q); 13466 }, 13467 clearAllOverrides: function() { 13468 let M = x.getFlagOverrides(); 13469 if (Object.keys(M).length === 0) return; 13470 let q = {}, Q = x.getFlags();
13471 Object.keys(M).forEach((oe) => { 13472 let Ee = M[oe], He = Q[oe]; 13473 q[oe] = { 13474 previous: Ee.value, 13475 current: He ? Me(He) : void 0 13476 }; 13477 }), x.clearAllOverrides(), Object.keys(q).length > 0 && li(q); 13478 }, 13479 getAllOverrides: function() { 13480 let M = x.getFlagOverrides(); 13481 if (!M) return {}; 13482 let q = {}; 13483 return Object.keys(M).forEach((Q) => { 13484 let oe = M[Q]; 13485 oe && (q[Q] = oe.value); 13486 }), q; 13487 } 13488 }, g), { 13489 client: Vr, 13490 options: l, 13491 emitter: a, 13492 ident: X, 13493 logger: n, 13494 requestor: V, 13495 start: function() { 13496 d && (O && O.start(), z.start()); 13497 }, 13498 enqueueEvent: Ct, 13499 getFlagsInternal: function() { 13500 return x.getFlagsWithOverrides(); 13501 }, 13502 getEnvironmentId: () => u, 13503 internalChangeEventName: xv 13504 }; 13505 }, 13506 commonBasicLogger: kv, 13507 errors: yt, 13508 messages: Se, 13509 utils: ke, 13510 getContextKeys: Cx 13511 }, Ox = Yo.initialize, Px = Yo.errors, Yo.messages, Ax = Yo.commonBasicLogger, $x = function(e) { 13512 return Ax(gv({ destination: console.log }, e)); 13513 }, Iv = { promise: Promise.resolve({ 13514 status: 200, 13515 header: function() { 13516 return null; 13517 }, 13518 body: null 13519 }) }, Hd = (e) => { 13520 if (typeof e != "string") throw new TypeError("Expected a string"); 13521 return e.replace(/[|\\{}()[\]^$+*?.]/g, "\\$&").replace(/-/g, "\\x2d"); 13522 }, Ko = "goalsReady", _x = { 13523 fetchGoals: { default: !0 }, 13524 hash: { type: "string" }, 13525 eventProcessor: { type: "object" }, 13526 eventUrlTransformer: { type: "function" }, 13527 disableSyncEventPost: { default: !1 } 13528 }, Mx = $x, Ov = (() => { 13529 let e = class { 13530 constructor() { 13531 this.userService = f(ii), this.contextProviderService = f(l_), this.config = f(Ad), this.trackingService = f(Kr), this.cookieService = f(yr), this.logger = f(lt), this.datadogRumService = f(A$), this.eventsService = f(Nl), this.defaultOptions = { inspectors: [{ 13532 type: "flag-used", 13533 name: "flag-used-inspector", 13534 method: (t, r) => this.trackFlagUsed(t, r) 13535 }] }, this.isServer = ju(f(_a)), this.flags = {}, this._featureFlags$ = new Gt({}), this.LD_FEATURE_NAME = "launch-darkly", this._clientInitialized$ = new ws(1); 13536 } 13537 get clientInitialized$() { 13538 return this._clientInitialized$.pipe(Ot(1)); 13539 } 13540 initialize(t) { 13541 return Oe(this, null, function* () { 13542 if (!this.client) { 13543 let r = Object.assign({}, this.defaultOptions, this.config.options), s = yield this.contextProviderService.getContext(); 13544 this.client = gk(t, s, r), this.client.waitForInitialization().then(() => { 13545 this.fetchLDFlags(), this._clientInitialized$.next(), this.contextProviderService.contextChanged.subscribe(() => { 13546 this.updateContext(); 13547 }), this.subscribeToUserAuthenticationEvents(); 13548 }).catch((n) => { 13549 this.logger.error("[LaunchDarkly] - Error while initializing SDK.", n); 13550 }), this.client.on("change", (n) => Oe(this, null, function* () { 13551 yield this.updateFlag(n), this.logger.info("[LaunchDarkly] - Flags changed", n); 13552 })), this.client.on("error", (n) => { 13553 this.logger.error("[LaunchDarkly] - General error.", n); 13554 }); 13555 } 13556 }); 13557 } 13558 getFeatureFlagValue$(t, r) { 13559 return this.isServer ? je(r) : this.ldFeatureReadyStatus().pipe(Si((s) => s ? this.clientInitialized$.pipe(Si(() => (this.flags[t] = this.client?.variation(t, r), this._featureFlags$.next(this.flags), this._featureFlags$.pipe(xe((n) => { 13560 let a = n[t]; 13561 return this.isFlagValueObjectValid(a) ? a.value : a; 13562 }))))) : je(r)), ei(() => je(r))); 13563 } 13564 getFeatureFlagValueWithEvaluationReasons$(t, r) { 13565 return this.isServer ? je(r) : this.ldFeatureReadyStatus().pipe(Si((s) => s ? this.clientInitialized$.pipe(xe(() => this.client?.variationDetail(t, r))) : je(r)), ei(() => je(r))); 13566 } 13567 getFlagOnly$(t, r) { 13568 return this.isServer ? je(r) : this.ldFeatureReadyStatus().pipe(Si((s) => s ? this.clientInitialized$.pipe(Si(() => this._featureFlags$.pipe(xe((n) => { 13569 let a = n[t]; 13570 return this.isFlagValueObjectValid(a) ? a.value : a; 13571 }
13571)))) : je(r)), ei(() => je(r))); 13572 } 13573 updateContext() { 13574 this.client?.identify(this.contextProviderService.context).then((t) => { 13575 Object.keys(t).forEach((r) => { 13576 this.flags[r] = t[r]; 13577 }), this._featureFlags$.next(this.flags); 13578 }); 13579 } 13580 ngOnDestroy() { 13581 return Oe(this, null, function* () { 13582 this.userAuthenticationSubscriber?.unsubscribe(), yield this.client?.close(); 13583 }); 13584 } 13585 ldFeatureReadyStatus() { 13586 return this.eventsService.allEvents.pipe(We((t) => t?.eventName === kl.FeatureEnabledStatus && t.data.id === this.LD_FEATURE_NAME), Ot(1), Si((t) => t.data.enabled ? this.config.whenReady.pipe(xe(() => !!this.config.clientId)) : je(!1))); 13587 } 13588 fetchLDFlags() { 13589 this.flags = this.client?.allFlags(), this._featureFlags$.next(this.flags); 13590 } 13591 subscribeToUserAuthenticationEvents() { 13592 this.userAuthenticationSubscriber = Gi(this.userService.events.pipe(Ws((t) => t instanceof Ga)), this.userService.events.pipe(Ws((t) => t instanceof Va)), this.userService.events.pipe(Ws((t) => t instanceof W$))).subscribe(() => this.contextProviderService.reloadContext().then(() => this.updateContext())); 13593 } 13594 updateFlag(t) { 13595 return Oe(this, null, function* () { 13596 Object.keys(t).forEach((r) => { 13597 this.flags[r] = t[r]?.current; 13598 }), this._featureFlags$.next(this.flags); 13599 }); 13600 } 13601 trackFlagUsed(t, r) { 13602 if (!r.reason?.inExperiment) return; 13603 let s, n = ""; 13604 if (this.datadogRumService.datadogRumSdk && this.datadogRumService.datadogRumSdk.addFeatureFlagEvaluation(t, r.value), this.isFlagValueObjectValid(r.value)) { 13605 let { variationName: l, trackingDetails: c } = r.value; 13606 if (l === "") { 13607 this.logger.error("[LaunchDarkly] - Unable to send tracking data: variationName is empty JSON-typed variant"); 13608 return; 13609 } 13610 s = l, n = c ?? ""; 13611 } else s = r.value; 13612 this.trackingService.triggerEvent(Pl.LdExperimentEvaluation, { 13613 "component.CategoryEvent": "ld_experiment_evaluation", 13614 "component.ActionEvent": "load experiment", 13615 "component.LabelEvent": s, 13616 "component.EventDetails": t + n 13617 }); 13618 let a = this.cookieService.get($e.LdExperiment), o = `${t}_${r.variationIndex}`; 13619 a ? a.includes(o) || (a += `|${o}`, this.cookieService.putRaw($e.LdExperiment, a)) : this.cookieService.putRaw($e.LdExperiment, o); 13620 } 13621 isFlagValueObjectValid(t) { 13622 return typeof t == "object" && t != null && "variationName" in t && "value" in t && typeof t.variationName == "string" && ("trackingDetails" in t ? typeof t.trackingDetails == "string" : !0); 13623 } 13624 }; 13625 return e.ɵfac = function(i) { 13626 return new (i || e)(); 13627 }, e.ɵprov = R({ 13628 token: e, 13629 factory: e.ɵfac, 13630 providedIn: "root" 13631 }), e; 13632 })(), Rx = (() => { 13633 let e = class { 13634 constructor() { 13635 this.launchDarklyService = f(Ov), this.config = f(Ad), this.log = f(lt), this.isServer = ju(f(_a)); 13636 } 13637 onFeatureInit() { 13638 return Oe(this, null, function* () { 13639 if (!this.isServer) if (yield Vt(this.config.whenReady), this.config.clientId) { 13640 yield this.launchDarklyService.initialize(this.config.clientId); 13641 for (let t of this.config.serverSideFlags ?? []) this.launchDarklyService.getFeatureFlagValue$(t).pipe(Ot(1)).subscribe(); 13642 } else this.log.warnRemote("[LaunchDarkly] - ClientId not configured in Dynacon."); 13643 }); 13644 } 13645 }; 13646 return e.ɵfac = function(i) { 13647 return new (i || e)(); 13648 }, e.ɵprov = R({ 13649 token: e, 13650 factory: e.ɵfac 13651 }), e; 13652 })(); 13653 })))(); 13654} 13655function c2(e) { 13656 return e.get(Wd); 13657} 13658function Bx(e) { 13659 return [{ 13660 provide: Pv, 13661 multi: !0, 13662 useValue: e 13663 }]; 13664} 13665function d2() { 13666 return [...Object.keys(Av).map((e) => Bx({ 13667 id: e, 13668 loaderFn: Av[e] 13669 })), e_(zx)]; 13670} 13671var Ud, Wd, Pv, Mr, xi, Dx, Fx, zx, Av; 13672function $v() { 13673 return ($v = Z((() => { 13674 Re(), de(), Ye(), Ju(), Cs(), Hn(), Et(), Un(), yi(), st(), Ts(), xs(), Ht(), Ud = (() => { 13675 let e = class { 13676 constructor() { 13677 this.manifestService = f(X$), this.page = f(jr), this.stylesService = f(my), this.contentService = f(Sy), this.htmlNode = f(ey); 13678 } 13679 loadStyles(t) { 13680 return Oe(this, null, function* () { 13681 if (t) try { 13682 for (var r = LA(t), s, n, a; s = !(n = yield r.next()).done; s = !1) { 13683 let o = n.value; 13684 switch (o.htmlCssClass && this.htmlNode.setCssClass(o.htmlCssClass, !0), o.type) { 13685 case "url": 13686 yield this.stylesService.loadStyle({ 13687 url: o.id, 13688 lazyLoad: 2 13689 }); 13690 break; 13691 case "theme": 13692 let l = this.getNewThemeFilename(o.id), c = this.manifestService.getEntry(l); 13693 c || (l = this.getThemeFileNameFallback(o.id), c = this.manifestService.getEntry(l)), c && (yield this.stylesService.loadStyle({ 13694 url: c, 13695 lazyLoad: 2 13696 })); 13697 break; 13698 case "content": 13699 let d = `App-v1.0/LazyStyles/${o.id}`, u = yield Vt(this.contentService.getJson(d, { product: it.SF })); 13700 yield this.stylesService.addStyle(o.id, u.content); 13701 } 13702 } 13703 } catch (o) { 13704 a = [o]; 13705 } finally { 13706 try {
13707 s && (n = r.return) && (yield n.call(r)); 13708 } finally { 13709 if (a) throw a[0]; 13710 } 13711 } 13712 }); 13713 } 13714 getNewThemeFilename(t) { 13715 return `${this.page.theme}/themes-${this.page.theme}-${t}.css`; 13716 } 13717 getThemeFileNameFallback(t) { 13718 return `themes-${this.page.theme}-${t}.css`; 13719 } 13720 }; 13721 return e.ɵfac = function(i) { 13722 return new (i || e)(); 13723 }, e.ɵprov = R({ 13724 token: e, 13725 factory: e.ɵfac, 13726 providedIn: "root" 13727 }), e; 13728 })(), ht(), Wd = (() => { 13729 var e = class extends ri {}; 13730 let i = (e.ɵfac = (() => { 13731 let t; 13732 return function(r) { 13733 return (t || (t = Fe(e)))(r || e); 13734 }; 13735 })(), e.ɵprov = R({ 13736 token: e, 13737 factory: function(t) { 13738 let r = null; 13739 return t ? r = new t() : r = c2(ve(Wt)), r; 13740 }, 13741 providedIn: "root" 13742 }), e); 13743 return i = mt([Ut({ 13744 key: "vnLazyFeatures", 13745 product: it.SF 13746 })], i), i; 13747 })(), Pv = new Te("vn-loader-fn"), Mr = (function(e) { 13748 return e.Created = "created", e.Scheduled = "scheduled", e.Enabled = "enabled", e.Loaded = "loaded", e; 13749 })(Mr || {}), xi = (function(e) { 13750 return e.Preload = "preload", e.JustLoggedIn = "just-loggedin", e.AlreadyLoggedIn = "already-loggedin", e.LoggedIn = "loggedin", e.Complete = "complete", e.Event = "event", e; 13751 })(xi || {}), Dx = (() => { 13752 let e = class { 13753 constructor() { 13754 this.dslEnvService = f(ry), this.log = f(lt), this.serverRenderErrorService = f(w$), this.isRouteExploration = f(v$), this.destroyRef = f(ze); 13755 } 13756 getProviders(t, r, s) { 13757 try { 13758 return t.get(r, s); 13759 } catch (n) { 13760 return this.log.info("getProviders<T> failed for injector with token", t, r, n), []; 13761 } 13762 } 13763 getProvider(t, r, s) { 13764 try { 13765 return t.get(r, s); 13766 } catch (n) { 13767 return this.log.info("getProvider failed with token", t, r, n), null; 13768 } 13769 } 13770 runBootstrappers(t) { 13771 if (!(this.isRouteExploration || this.destroyRef.destroyed)) try { 13772 let r = this.getProviders(t, m_, []); 13773 for (let s of r) s.onFeatureInit(); 13774 } catch (r) { 13775 this.serverRenderErrorService.reportCriticalError("runBootstrappers failed for injector"), this.log.error("runBootstrappers failed for injector", t, r); 13776 } 13777 } 13778 runEventProcessors(t, r) { 13779 try { 13780 let s = this.getProviders(t, f_, []); 13781 for (let n of s) n.process(r); 13782 } catch (s) { 13783 this.log.error("runEventHandlers failed with context", t, r, s); 13784 } 13785 } 13786 runDslProviders(t) { 13787 try { 13788 let r = this.getProvider(t, R$, null); 13789 r?.length && this.dslEnvService.addToContext([...r]); 13790 } catch (r) { 13791 this.log.error("runDslProviders failed", t, r); 13792 } 13793 } 13794 runLaunchDarklyContextProvider(t) { 13795 try { 13796 let r = this.getProvider(t, g_, null); 13797 r && r.reloadContext(); 13798 } catch (r) { 13799 this.log.error("runLaunchDarklyContextProvider failed", t, r); 13800 } 13801 } 13802 }; 13803 return e.ɵfac = function(i) { 13804 return new (i || e)(); 13805 }, e.ɵprov = R({ 13806 token: e, 13807 factory: e.ɵfac, 13808 providedIn: "root" 13809 }), e; 13810 })(), Fx = (() => { 13811 let e = class { 13812 constructor() { 13813 this.registeredLoaderFns = f(Pv), this.config = f(Wd), this.dslService = f(Js), this.dslEnvService = f(ry), this.user = f(ii), this.webWorkerService = f(ky), this.nativeAppService = f(Yr), this.logger = f(lt), this.rtmsService = f(o_), this.eventsService = f(Nl), this.moduleService = f(Dx), this.loadStylesService = f(Ud), this.productService = f(Qu), this.destroyRef = f(ze), this._doc = f(vi), this.platform = f(Fa), this.loadDispatcher$ = new Xe(), this.STYLES_LOADER_ID = "styles", this.allLoaders = [], this._usedLoaders = C$("usedLoaders", []); 13814 } 13815 init() { 13816 this.initLoaders(), this.loadDispatcher$.pipe(he(this.destroyRef)).subscribe((t) => this.load(t)), this.user.events.pipe(We((t) => t instanceof ep), Ot(1), he(this.destroyRef)).subscribe(() => { 13817 this.start(xi.JustLoggedIn), this.start(xi.LoggedIn); 13818 }), this.user.events.pipe(We((t) => t instanceof Va), Ot(1), he(this.destroyRef)).subscribe(() => { 13819 this.reset([xi.JustLoggedIn, xi.LoggedIn]); 13820 }), this.dslEnvService.change.pipe(Vu(100), he(this.destroyRef)).subscribe(() => { 13821 this.restart(); 13822 }), this.productService.productChanged.subscribe(() => { 13823 this.restart(); 13824 }), this.eventsService.events.pipe(he(this.destroyRef)).subscribe((t) => { 13825 let r = { 13826 name: t.eventName, 13827 type: np.Vanilla, 13828 data: t.data 13829 }; 13830 this.startEventStrategy(r); 13831 }), this.rtmsService.messages.subscribe((t) => { 13832 let r = { 13833 name: t.type, 13834 type: np.Rtms, 13835 data: t.payload 13836 }; 13837 this.startEventStrategy(r); 13838 }), this.nativeAppService.eventsFromNative.subscribe((t) => { 13839 let r = { 13840 name: t.eventName, 13841 type: np.Native, 13842 data: t.parameters 13843 }; 13844 this.startEventStrategy(r); 13845 }), this.start(xi.Preload), this.user.isAuthenticated && (this.start(xi.AlreadyLoggedIn), this.start(xi.LoggedIn)), this._doc.addEventListener(qr.ReadyStateChange, () => this.runOnlyCompleteStrategy()), this.runOnlyCompleteStrategy(); 13846 } 13847 loadFeature(t, r, s, n) { 13848 return Oe(this, null, function* () { 13849 let a = this.mergeStyles(s.styles, n); 13850 yield Promise.all([r.then((o) => { 13851 if (this.destroyRef.destroyed) return; 13852 let l = ui.create({ 13853 providers: o.provide(), 13854 parent: this.getInjector() 13855 }); 13856 this.moduleService.runBootstrappers(l), this.moduleService.runDslProviders(l), this.moduleService.runLaunchDarklyContextProvider(l), s.eventContext && this.moduleService.runEventProcessors(l, s.eventContext), this.nativeAppService.sendToNative({ 13857 eventName: za.FEATURE_LOADED, 13858 parameters: { featureId: t } 13859 }), this.registerLoaderUsage(t); 13860 }), this.loadStylesService.loadStyles(a)]); 13861 }); 13862 } 13863 runOnlyCompleteStrategy() { 13864 let t = this._doc.readyState; 13865 (t === xi.Complete || this.platform.isServer) && this.start(t); 13866 } 13867 start(t) { 13868 let r = this.allLoaders.filter((s) => s.options.strategy === t && s.state === Mr.Created); 13869 for (let s of r) s.state = Mr.Scheduled; 13870 r?.length > 0 && this.logger.info(`Scheduled ${r?.length} loader(s) with ${t} strategy.`), this.evaluate(r); 13871 } 13872 reset(t) { 13873 let r = this.allLoaders.filter((s) => t.includes(s.options.strategy)); 13874 for (let s of r) s.state = Mr.Created; 13875 r?.length > 0 && this.logger.info(`${r?.length} loader(s) resetted after logout for strategies ${t.join("|")}.`); 13876 } 13877 startEventStrategy(t) { 13878 let r = this.allLoaders.filter((s) => s.options.strategy == xi.Event && s.options.events?.[t.type]?.includes(t.name)); 13879 r?.length > 0 && this.logger.info(`Found ${r?.length} event handler(s) for event.`, r, t), r.forEach((s) => this.load(s, t)); 13880 } 13881 restart() { 13882 let t = this.allLoaders.filter((r) => r.state === Mr.Scheduled && ![xi.JustLoggedIn.toString(), xi.LoggedIn.toString()].includes(r.options.strategy)); 13883 this.evaluate(t); 13884 } 13885 initLoaders() { 13886 for (let t of Object.keys(this.config.rules)) { 13887 let r = this.config.rules[t]?.id ?? t, s = this.config.rules[t]; 13888 if (r === this.STYLES_LOADER_ID) { 13889 this.loadStylesService.loadStyles(s.styles).then(); 13890 continue; 13891 } 13892 let n = this.registeredLoaderFns.find((o) => o.id === r); 13893 if (!n) continue; 13894 let a = this.platform.isServerRendered && this._usedLoaders().includes(r) ? xi.Preload : s.strategy; 13895 this.allLoaders.push({ 13896 id: r, 13897 loaderFn: n.loaderFn, 13898 state: Mr.Created,
13899 options: J(C({}, s), { strategy: a }), 13900 additionalStylesFn: n.additionalStylesFn, 13901 product: n.product 13902 }); 13903 } 13904 } 13905 evaluate(t) { 13906 for (let r of t) this.dslService.evaluateExpression(r.options.enabled).pipe(Ot(1), xe((s) => s && this.checkLoaderEnabledForProduct(r)), he(this.destroyRef)).subscribe((s) => { 13907 s && r.state == Mr.Scheduled && (r.state = Mr.Enabled, this.loadDispatcher$.next(r)), this.eventsService.raise({ 13908 eventName: kl.FeatureEnabledStatus, 13909 data: { 13910 id: r.id, 13911 enabled: s 13912 } 13913 }); 13914 }); 13915 } 13916 checkLoaderEnabledForProduct(t) { 13917 return !this.productService.isSingleDomainApp || !t.product || t.product === this.productService.current.name; 13918 } 13919 load(t, r) { 13920 if (this.checkLoaderEnabledForProduct(t)) { 13921 try { 13922 let s = C({}, t.options); 13923 r && (s.eventContext = r), s.delay ? this.platform.isBrowser && this.webWorkerService.createWorker(t.id, { timeout: s.delay }, () => { 13924 this.runLoader(t, s), this.webWorkerService.removeWorker(t.id); 13925 }) : this.runLoader(t, s); 13926 } catch (s) { 13927 this.logger.errorRemote(`Failed to load ${t.id} feature`, s); 13928 } 13929 this.logger.info("Loaded:", t); 13930 } 13931 } 13932 runLoader(t, r) { 13933 if (t.loaderFn) { 13934 let s = this.getAdditionalStyles(t); 13935 this.loadFeature(t.id, t.loaderFn(this.getInjector()), r, s); 13936 }
13937 t.state = Mr.Loaded; 13938 } 13939 getAdditionalStyles(t) { 13940 if (!t.additionalStylesFn) return; 13941 let r = this.getInjector(); 13942 return t.additionalStylesFn(r); 13943 } 13944 mergeStyles(t, r) { 13945 return t && !r ? t : r && !t ? r : t && r ? [...t, ...r] : void 0; 13946 } 13947 getInjector() { 13948 return this.productService.current.injector; 13949 } 13950 registerLoaderUsage(t) { 13951 this.platform.isBrowser || this._usedLoaders.update((r) => r.includes(t) ? r : [...r, t]); 13952 } 13953 }; 13954 return e.ɵfac = function(i) { 13955 return new (i || e)(); 13956 }, e.ɵprov = R({ 13957 token: e, 13958 factory: e.ɵfac, 13959 providedIn: "root" 13960 }), e; 13961 })(), zx = (() => { 13962 let e = class { 13963 constructor() { 13964 this.config = f(Wd), this.loaderService = f(Fx); 13965 } 13966 onAppInit() { 13967 return Oe(this, null, function* () { 13968 yield Vt(this.config.whenReady), this.config?.rules && this.loaderService.init(); 13969 }); 13970 } 13971 }; 13972 return e.ɵfac = function(i) { 13973 return new (i || e)(); 13974 }, e.ɵprov = R({ 13975 token: e, 13976 factory: e.ɵfac 13977 }), e; 13978 })(), Av = { 13979 "abuser-information": () => import("./chunk-ci7dcurq.js"), 13980 "account-menu": () => import("./chunk-cdzbtzqg.js"), 13981 "activity-popup": () => import("./chunk-khxax2t5.js"), 13982 affordability: () => import("./chunk-no853wmj.js"), 13983 "balance-breakdown": () => import("./chunk-Blwi60nj8.js"), 13984 "balance-properties": () => import("./chunk-sgp3hn1z.js"), 13985 "balance-refresh": () => import("./chunk-lxfi635o.js"), 13986 "balance-transfer": () => import("./chunk-ooubnmjd5.js"), 13987 "barcode-scanner": () => import("./chunk-Cncxi9yni.js"), 13988 "betstation-hardware-fault": () => import("./chunk-oucawhpa.js"), 13989 "betstation-balance-transfer": () => import("./chunk-lbbh5it5.js"), 13990 "betting-status": () => import("./chunk-ctd82ytc.js"), 13991 "bonus-award": () => import("./chunk-jtpzebkw.js"), 13992 "bonus-balance": () => import("./chunk-n86kkoyl.js"), 13993 "bottom-nav": () => import("./chunk-korb74oa.js"), 13994 "bottom-sheet": () => import("./chunk-Mll22e8xk.js"), 13995 cashier: () => import("./chunk-jrv8rsl9.js"), 13996 clock: () => import("./chunk-nr9ckawp.js"), 13997 "connected-accounts": () => import("./chunk-f51s3uwn.js"), 13998 content: () => import("./chunk-bmzv8rvr.js"), 13999 "content-block": () => import("./chunk-gcduvvq3.js"), 14000 "content-messages": () => import("./chunk-nvmvubls.js"), 14001 "cookie-banner": () => import("./chunk-h9xw1i1i.js"), 14002 "cookie-consent": () => import("./chunk-Bnfhf34o3.js"), 14003 "cookie-injector": () => import("./chunk-h2d6jji9.js"), 14004 "css-overrides": () => import("./chunk-Dfzrkdwef.js"), 14005 "curfew-status": () => import("./chunk-oosbnsuc.js"), 14006 "debounce-buttons": () => import("./chunk-ez5ymnvd.js"), 14007 "deposit-limit-exceeded": () => import("./chunk-Ucgd2340y.js"), 14008 "deposit-limits": () => import("./chunk-mgylgytxe.js"), 14009 "deposit-prompt": () => import("./chunk-ivyjlzwc.js"), 14010 "deposit-session": () => import("./chunk-obfx1tdh.js"), 14011 dialog: () => import("./chunk-Dvh1g8pyz.js"), 14012 "document-upload-status": () => import("./chunk-Cmsqq449j.js"), 14013 "domain-specific-actions": () => import("./chunk-evvwf5ru.js"), 14014 "dropdown-header": () => import("./chunk-ifbsj25h.js"), 14015 footer: () => import("./chunk-Dh7tve7i0.js"), 14016 gamification: () => import("./chunk-Wge68zyqs.js"), 14017 geolocation: () => import("./chunk-fkgkc82z.js"), 14018 "geo-coordinator": () => import("./chunk-vitb88bji.js"), 14019 "global-search": () => import("./chunk-omrm3tmz.js").then((e) => (e.n(), e.t)), 14020 "google-analytics": () => import("./chunk-t1f3xauf.js"), 14021 "haptic-feedback": () => import("./chunk-g6a0ebct.js"), 14022 header: () => import("./chunk-Bb16lobeu.js"), 14023 "header-bar": () => import("./chunk-Cev9qr1t1.js"), 14024 hint: () => import("./chunk-Bdmu5fen3.js"), 14025 html: () => import("./chunk-gg2dc349y.js"), 14026 icons: () => import("./chunk-mgfxpgsv.js"), 14027 inactive: () => import("./chunk-igzhabci.js"), 14028 "inactivity-screen": () => import("./chunk-Cenp8sj7i.js"), 14029 inbox: () => import("./chunk-Bh6c4jeyy.js"), 14030 "jackpot-winner": () => import("./chunk-Cnffp83f5.js"), 14031 kyc: () => import("./chunk-n7tprrhi.js"),
14032 "label-switcher": () => import("./chunk-Cfb60j021.js"), 14033 "language-switcher": () => import("./chunk-Dfdvmspx1.js"), 14034 "last-session-info": () => import("./chunk-kj1dhfgg.js"), 14035 "launch-darkly": () => import("./chunk-kzqw931n.js"), 14036 "license-info": () => import("./chunk-Khoz2h4he.js"), 14037 "live-person": () => import("./chunk-Df1938bki.js"), 14038 login: () => import("./chunk-Clp1tv7b5.js"), 14039 "login-duration": () => import("./chunk-Cmj3mgv2l.js"), 14040 "login-new": () => import("./chunk-1okhh793.js"), 14041 logout: () => import("./chunk-Xmgfk32wo.js"), 14042 "loss-limits": () => import("./chunk-Dif77ki9u.js"), 14043 "loyality-profile": () => import("./chunk-Belq5d97i.js"), 14044 "loyalty-login": () => import("./chunk-fn9rmgsq.js"), 14045 "master-account": () => import("./chunk-dzw2ci9j.js"), 14046 "meta-tags": () => import("./chunk-7f9iubvf2.js"), 14047 "moh-details": () => import("./chunk-Bo3k9gzxd.js"), 14048 "native-app": () => import("./chunk-Cd5uuho6x.js"), 14049 "navigation-layout": () => import("./chunk-gk2rlfbj.js"), 14050 "offer-button": () => import("./chunk-Dfs2bssk8.js"), 14051 "offer-dsl": () => import("./chunk-jhzwxnle.js"), 14052 offers: () => import("./chunk-Ceb8zies7.js"), 14053 offline: () => import("./chunk-wyzzukbb.js"), 14054 "offline-page": () => import("./chunk-Sm0nwo3nu.js"), 14055 optimove: () => import("./chunk-jzgidfoq.js"), 14056 overlay: () => import("./chunk-Bio71b2oo.js"), 14057 "overlay-messages": () => import("./chunk-Dird8008i.js"), 14058 "play-break": () => import("./chunk-Bmiuce93d.js"), 14059 "player-active-wager": () => import("./chunk-lr35bw6b.js"), 14060 "player-attributes": () => import("./chunk-Cjgjyzter.js"), 14061 "player-gaming-declaration": () => import("./chunk-Defatd7ak.js"), 14062 "player-limits": () => import("./chunk-cliwscph.js"), 14063 prerender: () => import("./chunk-j5l8de0l.js"), 14064 "product-menu": () => import("./chunk-3fp9ivdn.js"), 14065 "product-switch-cool-off": () => import("./chunk-Tiz7sankn.js"), 14066 "promo-eds-dsl": () => import("./chunk-hsj25tj0.js"), 14067 "range-datepicker": () => import("./chunk-fywfo59k.js"), 14068 "re-captcha": () => import("./chunk-lut2lqkd.js"), 14069 "redirect-message": () => import("./chunk-hxxq8q6h.js"), 14070 "referred-friends": () => import("./chunk-nbhx7o8r.js"), 14071 "remember-me-logout-prompt": () => import("./chunk-eodugy0w.js"), 14072 "rtms-events": () => import("./chunk-Blc64wp0q.js"), 14073 "rtms-layer": () => import("./chunk-Cnvn59tsn.js"), 14074 "rtms-overlay": () => import("./chunk-bqv84nvl.js"), 14075 "screen-time": () => import("./chunk-h32wyhec.js"), 14076 "self-exclusion": () => import("./chunk-h2a7md8y.js"), 14077 "session-fund-summary": () => import("./chunk-Di92tlq3w.js"), 14078 "session-info": () => import("./chunk-Beu9ucc16.js"), 14079 "session-lifetime-check": () => import("./chunk-nunllj3q.js"), 14080 "session-limits": () => import("./chunk-kii4i7pk.js"), 14081 "session-limits-logout-popup": () => import("./chunk-kxdc8x6c.js"), 14082 "single-sign-on": () => import("./chunk-Bigx5ckwl.js"), 14083 "smart-banner": () => import("./chunk-gbnuya92.js"), 14084 "sof-status-details": () => import("./chunk-ips9l0uf.js"), 14085 speculation: () => import("./chunk-c9n0imyg.js"), 14086 "terminal-session": () => import("./chunk-Ccck1l9j6.js"),
14087 "third-party-tracker": () => import("./chunk-kzerjgin.js"), 14088 "top-messages": () => import("./chunk-ebqohjwc.js"), 14089 "tourney-token-balance": () => import("./chunk-ggkjxtvm.js"), 14090 tracing: () => import("./chunk-Bgqq591vx.js"), 14091 tracking: () => import("./chunk-n7m5fefv.js"), 14092 "untested-browser": () => import("./chunk-edbr23q0.js"), 14093 "user-documents": () => import("./chunk-H8p0vvg9z.js"), 14094 "user-flags": () => import("./chunk-fbzs9ga6.js"), 14095 "user-scrub": () => import("./chunk-Hckbc564o.js"), 14096 "user-summary": () => import("./chunk-Bjkximuc8.js"), 14097 "value-ticket": () => import("./chunk-lso09rbb.js"), 14098 zendesk: () => import("./chunk-k9w9rng1.js") 14099 }; 14100 })))(); 14101} 14102var Gx; 14103function Vx() { 14104 return (Vx = Z((() => { 14105 Re(), de(), $v(), Gx = (() => { 14106 let e = class { 14107 constructor() { 14108 this.loaderCache = /* @__PURE__ */ new Map(), this.stylesLoader = f(Ud); 14109 } 14110 loadFeature(t, r) { 14111 return Oe(this, null, function* () { 14112 let s = this.loaderCache.get(t); 14113 if (s) return Promise.resolve(s); 14114 let n = t(), a = r ? this.stylesLoader.loadStyles(r) : Promise.resolve(); 14115 return yield Promise.all([n, a]).then(([o]) => (this.loaderCache.set(t, o), o)); 14116 }); 14117 } 14118 loadStyles(t) { 14119 return Oe(this, null, function* () { 14120 yield this.stylesLoader.loadStyles(t); 14121 }); 14122 } 14123 setCachedFeature(t, r) { 14124 this.loaderCache.has(t) || this.loaderCache.set(t, r); 14125 } 14126 getCachedFeature(t) { 14127 return this.loaderCache.get(t) || void 0; 14128 } 14129 }; 14130 return e.ɵfac = function(i) { 14131 return new (i || e)(); 14132 }, e.ɵprov = R({ 14133 token: e, 14134 factory: e.ɵfac, 14135 providedIn: "root" 14136 }), e; 14137 })(); 14138 })))(); 14139} 14140var jd; 14141function _v() { 14142 return (_v = Z((() => { 14143 jd = class { 14144 constructor(e) { 14145 this.key = e; 14146 } 14147 }; 14148 })))(); 14149} 14150var Mv, Hx; 14151function Ux() { 14152 return (Ux = Z((() => { 14153 _v(), Mv = (function(e) { 14154 return e.Default = "Default", e.TurnoverTax = "TurnoverTax", e; 14155 })(Mv || {}), Hx = { 14156 ClaimsChanged: "CLAIMS_CHANGED", 14157 M2UserClaimsChanged: "m2-user-claimsChanged", 14158 UserSettingsChanged: new jd("USER_SETTINGS_CHANGED"), 14159 ClientConfigRefreshed: new jd("CLIENT_CONFIG_REFRESHED") 14160 }; 14161 })))(); 14162} 14163var Yd, Wx, jx; 14164function Yx() { 14165 return (Yx = Z((() => { 14166 de(), Ye(), Yd = class { 14167 get subject() { 14168 return this._subject$ ? this._subject$ : (this.setup(), this._subject$); 14169 } 14170 constructor(e, i, t) { 14171 this.zone = e, this.target = i, this.event = t, this._eventAuditTime = 150; 14172 } 14173 subscribe(e, i, t) { 14174 return this.subject.subscribe({ 14175 next: e, 14176 error: i, 14177 complete: t 14178 }); 14179 } 14180 asObservable() { 14181 return this.subject.asObservable(); 14182 } 14183 listener() { 14184 this.zone.run(() => { 14185 !this._subject$ || !this._subject$.observed ? (this.subscription?.unsubscribe(), this._subject$ = void 0) : this._subject$.next(this.target); 14186 }); 14187 } 14188 setup() { 14189 this._subject$ = new Xe(), this.zone.runOutsideAngular(() => { 14190 this.subscription = Bn(this.target, this.event).pipe(zA(this._eventAuditTime)).subscribe(() => { 14191 this.listener(); 14192 }); 14193 }); 14194 } 14195 }, Wx = (() => { 14196 let e = class { 14197 constructor() { 14198 this.zone = f(Ys), this._window = f(dt), this.scroll = new Yd(this.zone, this._window, "scroll"), this.resize = new Yd(this.zone, this._window, "resize"); 14199 } 14200 }; 14201 return e.ɵfac = function(i) { 14202 return new (i || e)(); 14203 }, e.ɵprov = R({ 14204 token: e, 14205 factory: e.ɵfac, 14206 providedIn: "root" 14207 }), e; 14208 })(), jx = (() => { 14209 let e = class { 14210 constructor() { 14211 this.zone = f(Ys), this.scrollSubject = new Xe(), this._window = f(dt), this._doc = f(vi), this.setTarget(this._doc.scrollingElement || this._window, this._window); 14212 } 14213 get scroll() { 14214 return this.scrollSubject.asObservable(); 14215 } 14216 get scrollTop() { 14217 return this.target.scrollY || this.target.scrollTop || 0; 14218 } 14219 get height() { 14220 return this.target.innerHeight || this.target.clientHeight; 14221 } 14222 get container() { 14223 return this.target.document || this.target; 14224 } 14225 get scrollHeight() { 14226 return this.target.scrollHeight; 14227 } 14228 scrollTo(t, r) { 14229 requestAnimationFrame(() => { 14230 let s = this.target; 14231 t !== void 0 && (s.scrollLeft = -t), r !== void 0 && (s.scrollTop = -r); 14232 }); 14233 } 14234 scrollToDelta(t, r) { 14235 requestAnimationFrame(() => { 14236 let s = this.target; 14237 t !== void 0 && (s.scrollLeft = s.scrollLeft + t), r !== void 0 && (s.scrollTop = s.scrollTop + r); 14238 }); 14239 } 14240 setTarget(t, r) { 14241 this.scrollSubscription && this.scrollSubscription.unsubscribe(), this.eventTarget = r || t; 14242 let s = new Yd(this.zone, this.eventTarget, "scroll"); 14243 this.target = t, this.scrollSubscription = s.subscribe(() => { 14244 this.scrollSubject.next(t); 14245 }); 14246 } 14247 }; 14248 return e.ɵfac = function(i) { 14249 return new (i || e)(); 14250 }, e.ɵprov = R({ 14251 token: e, 14252 factory: e.ɵfac, 14253 providedIn: "root" 14254 }), e; 14255 })(); 14256 })))(); 14257} 14258var Rv, Kx, qx; 14259function Xx() { 14260 return (Xx = Z((() => { 14261 de(), hv(), Rv = new Te("MODAL_WINDOW_STACK_TOKEN"), Kx = (() => { 14262 let e = class { 14263 constructor() { 14264 this.modalWindowStackService = f(pv(Rv)); 14265 } 14266 open(t, r, s) { 14267 return this.modalWindowStackService.openModalWindow(t, r, s); 14268 } 14269 }; 14270 return e.ɵfac = function(i) { 14271 return new (i || e)(); 14272 }, e.ɵprov = R({ 14273 token: e, 14274 factory: e.ɵfac, 14275 providedIn: "root" 14276 }), e; 14277 })(), qx = (() => { 14278 let e = class { 14279 constructor() { 14280 this._injector = f(ui), this._modalStack = f(Kx); 14281 } 14282 open(t, r = {}) { 14283 return this._modalStack.open(this._injector, t, r); 14284 } 14285 }; 14286 return e.ɵfac = function(i) { 14287 return new (i || e)(); 14288 }, e.ɵprov = R({ 14289 token: e, 14290 factory: e.ɵfac, 14291 providedIn: "root" 14292 }), e; 14293 })(); 14294 })))(); 14295} 14296var dr, Jx; 14297function Qx() { 14298 return (Qx = Z((() => { 14299 de(), Ye(), jn(), Et(), Cr(), dh(), eg(), Cd(), dr = (function(e) { 14300 return e[e.All = 0] = "All", e[e.Page = 1] = "Page", e[e.CustomScrollbar = 2] = "CustomScrollbar", e[e.None = 3] = "None", e; 14301 })(dr || {}), Jx = (() => { 14302 let e = class { 14303 constructor() {
14304 this.router = f(Il), this._freezeCountPage = le(0), this._freezeCountPs = le(0), this.currentRouteTag$ = new Gt(void 0), this._window = f(dt), this._doc = f(vi), this.deviceService = f(nr), this.scrollTopBeforeFreeze = 0, this._forceScroll = le(null), Ib({ write: () => { 14305 let s = this.scrollTopBeforeFreeze; 14306 if (this.isScrollFrozen) this.bodyStyle.setProperty("top", `-${s}px`), this.bodyElement.classList.add("noscroll"); 14307 else { 14308 if (this.bodyStyle.removeProperty("top"), this.bodyElement.classList.remove("noscroll"), this.shouldSkipResetScroll) return; 14309 s >= 0 && (this.deviceService.scrollingElement.scrollTop = s); 14310 } 14311 } }), Ib({ write: () => { 14312 let s = this._forceScroll(); 14313 if (s) { 14314 let { x: n, y: a } = s; 14315 Hu(() => { 14316 this.isScrollFrozen ? this.bodyStyle.setProperty("top", `${-1 * (a ?? 0)}px`) : this._window.scroll({ 14317 top: a, 14318 left: n 14319 }); 14320 }); 14321 } 14322 } }); 14323 let t = f(ch), r = f(Ed); 14324 t.currentActivationEnd.pipe(r.filterSports(), xe((s) => s?.snapshot?.data?.tag), he()).subscribe(this.currentRouteTag$); 14325 } 14326 freezeScroll(t) { 14327 if (t !== dr.None) switch (t) { 14328 case dr.CustomScrollbar: 14329 this.freezeCountPs++; 14330 break; 14331 case dr.All: 14332 this.freezeCountPs++, this.freezePage(); 14333 break; 14334 case dr.Page: 14335 default: this.freezePage(); 14336 } 14337 } 14338 freezePage() { 14339 this.freezeCountPage++, !(this.freezeCountPage > 1) && (this.scrollTopBeforeFreeze = this.deviceService.scrollTop(), this.urlWhenScreenWasFrozen = this.router.url); 14340 } 14341 forceScroll(t, r) { 14342 this._forceScroll.set({ 14343 x: t, 14344 y: r 14345 }); 14346 } 14347 releaseScroll(t) { 14348 if (t !== dr.None) switch (t) { 14349 case dr.CustomScrollbar: 14350 this.freezeCountPs--; 14351 break; 14352 case dr.All: 14353 this.freezeCountPs--, this.releaseScrollPage(); 14354 break; 14355 case dr.Page: 14356 default: this.releaseScrollPage(); 14357 } 14358 } 14359 releaseScrollPage() { 14360 this.freezeCountPage--, this.freezeCountPage; 14361 } 14362 get shouldSkipResetScroll() { 14363 if (this.currentRouteTag$.value !== wd.EventDetails) return this.isUrlHasChanged(); 14364 let t = this.router.parseUrl(this.router.url); 14365 return delete t.queryParams?.popup, this.isUrlHasChanged(t.toString()); 14366 } 14367 get isScrollFrozen() { 14368 return this.freezeCountPs > 0 || this.freezeCountPage > 0; 14369 } 14370 get bodyElement() { 14371 return this._doc.body; 14372 } 14373 get bodyStyle() { 14374 return this.bodyElement.style; 14375 } 14376 get freezeCountPage() { 14377 return this._freezeCountPage(); 14378 } 14379 set freezeCountPage(t) { 14380 this._freezeCountPage.set(Math.max(t, 0)); 14381 } 14382 get freezeCountPs() { 14383 return this._freezeCountPs(); 14384 } 14385 set freezeCountPs(t) { 14386 this._freezeCountPs.set(Math.max(t, 0)); 14387 } 14388 isUrlHasChanged(t) { 14389 return (t ?? this.router.url) !== this.urlWhenScreenWasFrozen; 14390 } 14391 }; 14392 return e.ɵfac = function(i) { 14393 return new (i || e)(); 14394 }, e.ɵprov = R({ 14395 token: e, 14396 factory: e.ɵfac, 14397 providedIn: "root" 14398 }), e; 14399 })(); 14400 })))(); 14401} 14402var Zx, eI, tI, iI, rI, sI, nI, Lv, Bv, Dv, Fv, zv, aI, oI; 14403function lI() { 14404 return (lI = Z((() => { 14405 Re(), de(), Ns(), Ht(), Zx = { 14406 EVENT_PAGE_VIEW: "pageView", 14407 EVENT_CART_CHECKOUT: "Cart.checkout", 14408 EVENT_PURCHASE: "purchase", 14409 EVENT_CHECKOUT: "checkout", 14410 EVENT_CART_PURCHASE: "Cart.purchase", 14411 EVENT_CART_ADD: "Cart.betAdded", 14412 EVENT_CART_REMOVE: "Cart.betRemove", 14413 EVENT_CLICKS: "Event.Clicks", 14414 EVENT_BETSLIP_ERROR: "Betslip_Error", 14415 EVENT_EARLYPAYOUT: "event.earlyPayout", 14416 EVENT_EDIT_BET: "Event.Functionality.EditMyBet", 14417 EVENT_EDIT_FAVOURITES: "Event.Functionality.EditMyFavourites", 14418 EVENT_LINE_SWITCHER: "Event.LineSwitcher", 14419 EVENT_MEDIA: "Event.SiteElement.Interactions", 14420 EVENT_FUNC_MARKET_SWITCH: "Event.Functionality.MarketSwitch", 14421 EVENT_FUNC_BETS: "Event.Functionality.Bets", 14422 EVENT_FUNC_SHOWHIDE_BETS: "Event.Functionality.ShowHideBets", 14423 EVENT_INIT_QUICKBET: "Event.InitiateQB", 14424 EVENT_NAVIGATION_MENUS: "Event.NavigationMenus", 14425 EVENT_AUTO_EARLYPAYOUT_SET: "event.AutoearlyPayoutSet", 14426 EVENT_VIDEO_INTERACTIONS: "Event.VideoInteractions", 14427 EVENT_FAVOURITES: "event.favourites", 14428 EVENT_GAME_OPEN: "gameOpen", 14429 EVENT_VIRTUAL_OPEN: "virtualOpen", 14430 EVENT_MINI_GAME_OPEN: "miniGameOpen", 14431 EVENT_RELOAD_HIDDEN: "reloadHidden", 14432 EVENT_RELOAD_OFFLINE: "reloadOffline", 14433 EVENT_PREF_NAV: "perfNav", 14434 EVENT_PERF_APP_LOAD: "perfAppLoad", 14435 EVENT_TRACKING: "Event.Tracking", 14436 EVENT_PODVIEW: "Event.podView", 14437 EVENT_AZSPORTS: "Event.NavigationMenus", 14438 EVENT_ALERT_ENABLED: "Alert Enabled", 14439 EVENT_MARKET_SWITCH: "Event.MarketSwitch", 14440 EVENT_GEOLOCATION_ERROR: "GEOLocation.ERROR", 14441 EVENT_TRIGGER_GEO_FETCH: "GEOLocation.FETCH", 14442 EVENT_OVERASK: "Event.OverAsk", 14443 EVENT_CONTENT_VIEW: "contentView", 14444 EVENT_BETSBOOST: "Event.BetsBoost", 14445 EVENT_BET_STATUS: "Event.BetStatus", 14446 EVENT_CART_ADD_BALANCE: "cart.addBalance", 14447 MESSAGE_VIEW: "Message View", 14448 EVENT_CORE_NAVIGATION: "Event.CoreNavigation", 14449 EVENT_TEASER_BETS: "Event.TeaserBets", 14450 EVENT_NAME: "event.name", 14451 TRACKING_EVENT_NAME: "event_name", 14452 EVENT_CLICK: "click", 14453 SEE_ALL: "see all", 14454 SEE_ALL_OVERLAY: "see all overlay", 14455 LOAD: "load", 14456 CLOSE: "close", 14457 SPORTS_EVENT: "sports event", 14458 SCOREBOARD_EVENT: "scoreboard", 14459 EVENT_LIVE: "live events", 14460 EVENT_PRELIVE: "pre live events", 14461 PLAYER_STATS: "player stats", 14462 PLAYER_IS_ROOKIE: "player is rookie", 14463 STATS_NOT_LOADING: "stats are not loading", 14464 EVENT_GAME_IMPRESSIONS: "gameImpressions", 14465 EVENT_ALERTS_SUBMISSION: "Event.AlertsSubmission", 14466 GAME_STATS: "game stats", 14467 SIX_PACK: "six-pack", 14468 BETS_BOOST_DRAWER: "bets boost drawer", 14469 BETS_BOOST: "bets boost", 14470 SEE_DETAILS: "see details", 14471 CLICK: "click" 14472 }, eI = "not applicable", tI = "live|penalties|red cards", iI = "no game details available", rI = {
14473 BUTTON_CLICK_EVENT: "Event.buttonClick", 14474 CART_PURCHASE: "cart.purchase", 14475 CART_CHECKOUT: "cart.checkout", 14476 TRANSACTION_PRODUCT_ODDS: "transaction.Products.odds", 14477 COMPONENT_ACTION_EVENT: "component.ActionEvent", 14478 COMPONENT_AUTO_EARLYPAYOUT: "component.AutoEarlyPayout", 14479 COMPONENT_CATEGORY_EVENT: "component.CategoryEvent", 14480 COMPONENT_CATEGORY_SUB_TYPE: "component.categorySubType", 14481 COMPONENT_CATEGORY_TYPE: "component.categoryType", 14482 COMPONENT_EVENT_NAME: "component.EventName", 14483 COMPONENT_EVENT_DETAILS: "component.EventDetails", 14484 COMPONENT_FAVOURITES_ACTION: "component.favourites-action", 14485 COMPONENT_GAME_CONTAINER_DESCRIPTION: "component.gameContainerDescription", 14486 COMPONENT_GAME_CONTAINER_LOCATION: "component.gameContainerLocation", 14487 COMPONENT_GAME_DISPLAY_NAME: "component.gameDisplayName", 14488 COMPONENT_GAME_FAVOURITE: "component.gameFavourite", 14489 COMPONENT_GAME_GRID_POSITION: "component.Game.GridPosition", 14490 COMPONENT_GAME_NAME: "component.gameName", 14491 COMPONENT_GAME_ID: "component.gameId", 14492 COMPONENT_GAME_PLAYING_STATUS: "component.gamePlayingStatus", 14493 COMPONENT_GAME_POSITION: "component.Game.position", 14494 COMPONENT_GAME_SECTION: "component.Game.section", 14495 COMPONENT_GAME_STATUS: "component.gameStatus", 14496 COMPONENT_GAME_TYPE: "component.gameType", 14497 COMPONENT_LABEL_EVENT: "component.LabelEvent", 14498 COMPONENT_LEAGUE_ID: "component.LeagueId", 14499 COMPONENT_LOCATION_EVENT: "component.LocationEvent", 14500 COMPONENT_MODULE_NAME: "component.moduleName", 14501 COMPONENT_MARKET_ID: "component.MarketID", 14502 COMPONENT_POSITION_EVENT: "component.PositionEvent", 14503 COMPONENT_PAGE_LAYOUT: "component.pageLayout", 14504 COMPONENT_MODULE_POSITION: "component.modulePosition", 14505 COMPONENT_MODULE_CUSTOM_NAME: "component.moduleCustName", 14506 COMPONENT_REFERRED_BET: "component.referredBet", 14507 COMPONENT_SITE_ELEMENT_INTERCATIONS: "component.SiteElement.Interactions", 14508 COMPONENT_SLIP_ID: "component.SlipID", 14509 COMPONENT_SPORT_ID: "component.SportId", 14510 COMPONENT_URL_CLICKED: "component.URLClicked", 14511 COMPONENT_EVENT_POSITION: "component.EventPosition", 14512 CUSTOMER_ID: "customer.id", 14513 COMPONENT_CONTENT_POSITION: "component.ContentPosition", 14514 COMPONENT_MODULE_SOURCE: "component.moduleSource", 14515 COMPONENT_MODULE_TYPE: "component.moduleType", 14516 COMPONENT_BET_SOURCE: "component.betsource", 14517 COMPONENT_MODULE_AFFILIATION_CONFIG: "component.moduleAffiliationConfig", 14518 PAGE_BETSLIP_ERROR: "page.Betslip_Error", 14519 PAGE_DISPLAYED_ELEMENT: "page.displayed.element", 14520 PAGE_EDITBET_ERROR: "page.EditedBet_Error", 14521 PAGE_NAME: "page.name", 14522 PAGE_NAVIGATION_MENUS: "page.navigationMenus", 14523 PAGE_PROMOTION_ID: "page.promotionID", 14524 PAGE_REFERRING_ACTION: "page.referringAction", 14525 PAGE_RELOAD_AFTER_HIDDEN: "page.reloadAfterPageHidden", 14526 PAGE_RELOAD_AFTER_OFFLINE: "page.reloadAfterOffline", 14527 PAGE_SITE_SECTION: "page.siteSection", 14528 PAGE_URL: "page.url", 14529 MARQUEE_CONTENT_LOGIC: "marquee.contentLogic", 14530 PERFORMANCE_APP_COMPILAION: "performance.appCompilation", 14531 PERFORMANCE_APP_RUN: "performance.appRun", 14532 PERFORMANCE_ASSETS_FETCH: "performance.assetsFetch", 14533 PERFORMANCE_CDSAPI: "performance.cdsApi", 14534 PERFORMANCE_CLIENT_BOOTSTRAP: "performance.clientBootstrap", 14535 PERFORMANCE_DOM_LOADED: "performance.domContentLoaded", 14536 PERFORMANCE_INTERACTIVE: "performance.interactive", 14537 PERFORMANCE_LOAD: "performance.load", 14538 MARKET_ID: "marketID", 14539 Transaction_Product_Category: "transactionProducts.category", 14540 Bet_Type_Init: "bet_type_init", 14541 Betslip_Type_Init: "betslip_type_init", 14542 Prod_Betslip_Init_Id: "prod_betslip_init_id", 14543 Betslip_Init_Id: "betslip_init_id", 14544 Location_Event: "location_event", 14545 Transaction_Product_BetType: "transactionProducts.betType", 14546 PERFORMANCE_NAV: "performance.nav", 14547 PRODUCT_BET_SPORTS: "product.betSports", 14548 PRODUCT_PICK_DETAILS: "product.pickDetails", 14549 VIDEO_INTERNAL_EVENT_ID: "video.InternalEventID", 14550 VIDEO_PROVIDER_EVENT_ID: "video.ProviderEventID", 14551 INVOKE_PRODUCT: "invoker.product", 14552 INVOKE_INTERFACE: "invoker.interface", 14553 SPORT_EVENT_ID: "sportEventID", 14554 SPORT_LEAGUE_ID: "leagueID", 14555 EVENT_ID: "eventID", 14556 CATEGORY_ID: "categoryID", 14557 TYPE_ID: "typeID", 14558 GEOLOCATION_FETCH_TYPE: "geolocation.fetchType", 14559 GEOLOCATION_ERRORCODE: "geolocation.errorCode", 14560 GEOLOCATION_ERRORMESSAGE: "geolocation.errorMessage", 14561 SHOW_MODULE: "showmodule", 14562 BETS_BOOSTS: "betsBoost", 14563 BET_TICKET_ID: "betTicketID", 14564 COMPONENT_RESULT_ID: "component.ResultID", 14565 SPORT_ID: "sportID", 14566 RESULT_ID: "resultID", 14567 REGION_ID: "regionID", 14568 BET_TYPE: "betType", 14569 PROMO_ID: "promoID", 14570 MESSAGE_TYPE: "messageType", 14571 GAME_DETAILS: "gameDetails", 14572 COMPONENT_SITECORE_ID: "component.sitecoreID", 14573 COMPONENT_USER_SEGMENTS: "component.userSegment", 14574 MARQUEE_NAME: "marqueeName", 14575 SITECORE_TEMPLATE_ID: "page.sitecoretemplateid", 14576 MARQUEE_TYPE: "marqueeType", 14577 SHOW_MARQUEE: "showmarquee", 14578 MARQUEE_RECOMMENDATION_TYPE: "component.recommendationtype", 14579 BET_DETAILS: "bet_details", 14580 BET_CALENDER: "bet_calendar", 14581 QUICKBET: "quickbet", 14582 PlaceBetSuccess: { PAGE_NAME: "M2_slip_placed" }, 14583 PlaceBet: { PAGE_NAME: "M2_slip_action_PlaceBet" }, 14584 TOPEVENTS_POD_DATA: "podData", 14585 Event_ID: "eventId", 14586 SHOW_NEXTRACES: "shownextraces", 14587 SELECTIONS_IN_SLIP: "selectionsInSlip", 14588 VARIANT: "variant", 14589 EVENT_NAME: "event.name", 14590 BET_TRACKING_TYPE: "bet_tracking_type", 14591 BET_PICK_TYPE: "bet_type", 14592 BETTING: "betting", 14593 MYBETS: "my bets", 14594 COPY_BETSLIP_ID: "copy betslip id", 14595 BETSLIP_TYPE: "betslip_type", 14596 BETS: "bets", 14597 BETSLIP: "betslip", 14598 BETSLIP_ID: "betSlipID", 14599 BET_RECEIPT: "bet receipt", 14600 QUICKBET_RECEIPT: "quickbet receipt", 14601 REWARDS: "rewards", 14602 REWARD_BALANCE: "reward_balance", 14603 GAME_IMPRESSIONS: "game_impressions", 14604 GAME_LIST: "list", 14605 FIRST_BET: "first bet", 14606 OTHER_BET: "other bet", 14607 UNKNOWN_BET: "unknown bet", 14608 QUICKLINKS: "quicklinks", 14609 SPORT: "Sport", 14610 LOCATION_ID: "location_id", 14611 INTEGRATED_SHEETVIEW: "integrated sheetview", 14612 POPULARPICKS: "popular picks", 14613 BET_LOCATION: "bet_location", 14614 PROMOTION_ID: "promotion_id" 14615 }, sI = { LINE_SWITCHER_TRACKING: "BetslipLineSwitcher" }, nI = "pre-created sgp", Lv = (function(e) { 14616 return e.VideoStreaming = "Video Streaming", e.VideoInitiated = "Video-Initiated", e.NotApplicable = "not applicable", e.VideoStarted = "VideoStarted", e.VideoContent = "Video Content Not Available Message", e.UserNotLoggedIn = "Log In to watch video live", e.StreamingAvailableCta = "streaming available CTA", e; 14617 })(Lv || {}), Bv = (function(e) { 14618 return e.Esports = "esports", e.LivePage = "live page", e.LivePageShowMoreCta = "show more", e.BannerMessage = "esports welcome message", e; 14619 })(Bv || {}), Dv = C(C(C({}, Zx), rI), sI), Fv = (function(e) { 14620 return e[e.PageName = 0] = "PageName", e[e.Referring = 1] = "Referring", e[e.EventClick = 2] = "EventClick", e; 14621 })(Fv || {}), zv = (function(e) { 14622 return e.Wrapper = "sportsw", e.PokerNativeApp = "poker", e.PokerDesktopClient = "pokervc", e.PokerMac = "pokermc", e; 14623 })(zv || {}), aI = { 14624 single: "single", 14625 multi: "multi", 14626 betBuilder: "betbuilder", 14627 betBuilderPlus: "betbuilder+", 14628 singleInvalid: "single_invalid", 14629 multiInvalid: "multi_invalid", 14630 betBuilderInvalid: "betbuilder_invalid",
14631 betBuilderPlusInvalid: "betbuilder+_invalid", 14632 betBuilderRedundant: "betbuilder - redundant", 14633 betBuilderPlusRedundant: "betbuilder+ - redundant" 14634 }, oI = (() => { 14635 let e = class { 14636 constructor() { 14637 this.googleAnalyticsCoreService = f(Oy), this.vanillaTracking = f(Kr); 14638 } 14639 get whenReady() { 14640 return this.vanillaTracking.whenReady; 14641 } 14642 track(t, r, s) { 14643 this.vanillaTracking.triggerEvent(t, r, s), this.clean(); 14644 } 14645 trackGa4Event(t) { 14646 this.googleAnalyticsCoreService.track(t); 14647 } 14648 update(t) { 14649 this.vanillaTracking.updateDataLayer(t); 14650 } 14651 trackError(t) { 14652 this.vanillaTracking.reportError(t); 14653 } 14654 triggerEventWithCleaning(t, r, s) { 14655 this.vanillaTracking.triggerEvent(t || "pageView", r, s), this.clean(); 14656 } 14657 clean() { 14658 this.vanillaTracking.updateDataLayer({ [Dv.PAGE_REFERRING_ACTION]: "" }); 14659 } 14660 }; 14661 return e.ɵfac = function(i) { 14662 return new (i || e)(); 14663 }, e.ɵprov = R({ 14664 token: e, 14665 factory: e.ɵfac, 14666 providedIn: "root" 14667 }), e; 14668 })(); 14669 })))(); 14670} 14671var Gv, cI, dI, uI; 14672function pI() { 14673 return (pI = Z((() => { 14674 de(), Kn(), Gv = class { 14675 constructor() { 14676 this.promise = new Promise((e, i) => { 14677 this.resolve = e, this.reject = i; 14678 }); 14679 } 14680 }, cI = class { 14681 constructor(e, i, t) { 14682 this.nodes = e, this.viewRef = i, this.componentRef = t; 14683 } 14684 }, dI = class { 14685 close(e) {} 14686 dismiss(e) {} 14687 }, uI = (() => { 14688 let e = class wb { 14689 get componentInstance() { 14690 if (this._contentRef?.componentRef) return this._contentRef.componentRef.instance; 14691 } 14692 get componentRef() { 14693 if (this._contentRef?.componentRef) return this._contentRef.componentRef; 14694 } 14695 get windowRef() { 14696 return this._windowCmptRef ? this._windowCmptRef.location.nativeElement : null; 14697 } 14698 constructor(t, r, s, n, a) { 14699 this._windowCmptRef = t, this._contentRef = r, this._backdropCmptRef = s, this._coverCmptRef = n, this._beforeDismiss = a, this.updateData$ = new ws(1), this.newData$ = this.updateData$.asObservable(), t && t.instance.dismiss.subscribe(this.dismiss.bind(this)), this.deferred = new Gv(), this.deferred.promise.then(null, () => {}); 14700 } 14701 updateTitle(t) { 14702 let r = this._windowCmptRef?.instance; 14703 r && (r.title = t); 14704 } 14705 updateData(t) { 14706 this.updateData$.next(t); 14707 } 14708 get result() { 14709 return this.deferred.promise; 14710 } 14711 appendClass(t, r) { 14712 let s = t.split(wb.SPACE); 14713 return s.push(r), s.join(wb.SPACE); 14714 } 14715 addWindowClass(t) { 14716 let r = this._windowCmptRef?.instance; 14717 return r && (r.windowClass = this.appendClass(r.windowClass, t)), this; 14718 } 14719 addBackdropClass(t) { 14720 if (this._backdropCmptRef) { 14721 let r = this._backdropCmptRef.instance.backdropClass(); 14722 this._backdropCmptRef.setInput("backdropClass", this.appendClass(r, t)); 14723 } 14724 return this; 14725 } 14726 close(t) { 14727 this._windowCmptRef && (this.deferred.resolve(t), this._removeModalElements()); 14728 } 14729 _dismiss(t) { 14730 this.deferred.reject(t), this._removeModalElements(); 14731 } 14732 dismiss(t) { 14733 if (this._windowCmptRef) if (!this._beforeDismiss) this._dismiss(t); 14734 else { 14735 let r = this._beforeDismiss(); 14736 G_(r) ? r.then((s) => { 14737 s !== !1 && this._dismiss(t); 14738 }, () => {}) : r && this._dismiss(t); 14739 } 14740 } 14741 _removeModalElements() { 14742 (this._windowCmptRef?.location.nativeElement).remove(), this._windowCmptRef?.destroy(), this._backdropCmptRef && (this._backdropCmptRef.location.nativeElement.remove(), this._backdropCmptRef.destroy()), this._coverCmptRef && (this._coverCmptRef.location.nativeElement.remove(), this._coverCmptRef.destroy()), this._contentRef && this._contentRef.viewRef && this._contentRef.viewRef.destroy(), this._windowCmptRef = null, this._backdropCmptRef = null, this._contentRef = null, this._coverCmptRef = null; 14743 } 14744 }; 14745 return e.SPACE = " ", e; 14746 })(); 14747 })))(); 14748} 14749var hI; 14750function mI() { 14751 return (mI = Z((() => { 14752 Re(), de(), jn(), yi(), cp(), hI = (() => { 14753 let e = class { 14754 constructor() { 14755 this.geolocationConfig = f(lp), this.activatedRoute = f(cy), this.user = f(ii); 14756 } 14757 isActive() { 14758 return Oe(this, null, function* () { 14759 return yield Vt(this.geolocationConfig.whenReady), !this.isDisabledViaQueryParam() && this.isGeoLocationRestrictionEnabled(); 14760 }); 14761 } 14762 canSwitchOnLegacy() { 14763 return Oe(this, null, function* () { 14764 if (yield this.isActive()) { 14765 let t = "geoCoordination:switchOnLegacy", r = this.activatedRoute.snapshot.queryParamMap.has(t), s = this.activatedRoute.snapshot.queryParamMap.get(t); 14766 return r ? s?.toLowerCase() === "true" : this.geolocationConfig.switchOnLegacy; 14767 } 14768 throw new Error("canSwitchOnLegacy can be called only when GeoCoordination feature is enabled"); 14769 }); 14770 } 14771 isGeoLocationRestrictionEnabled() { 14772 return this.geolocationConfig.isEnabled && this.user.isAuthenticated; 14773 } 14774 isDisabledViaQueryParam() { 14775 return this.activatedRoute.snapshot.queryParamMap.get("_disableFeature")?.trim()?.split(",")?.some((t) => t?.toLowerCase() === "geolocation") ?? !1; 14776 } 14777 }; 14778 return e.ɵfac = function(i) { 14779 return new (i || e)(); 14780 }, e.ɵprov = R({ 14781 token: e, 14782 factory: e.ɵfac, 14783 providedIn: "root" 14784 }), e; 14785 })(); 14786 })))(); 14787} 14788var fI, gI; 14789function vI() { 14790 return (vI = Z((() => { 14791 de(), yi(), st(), cp(), fI = (() => { 14792 let e = class { 14793 constructor() { 14794 this.user = f(ii), this.apiService = f(xl), this.geolocationConfig = f(lp); 14795 } 14796 fetchLocationInfoStatusFromGDS() { 14797 this.geolocationConfig.locationInfoStatus.fetchUrl && this.apiService.post(`${this.geolocationConfig.locationInfoStatus.fetchUrl}ssoKey=${this.user.ssoToken}`).subscribe(); 14798 } 14799 }; 14800 return e.ɵfac = function(i) { 14801 return new (i || e)(); 14802 }, e.ɵprov = R({ 14803 token: e, 14804 factory: e.ɵfac, 14805 providedIn: "root" 14806 }), e; 14807 })(), gI = (() => { 14808 let e = class { 14809 constructor() { 14810 this.dismissedSubject = new Xe(), this.dismissed$ = this.dismissedSubject.asObservable(); 14811 } 14812 notifyDismissed(t) { 14813 this.dismissedSubject.next(t); 14814 } 14815 }; 14816 return e.ɵfac = function(i) { 14817 return new (i || e)(); 14818 }, e.ɵprov = R({ 14819 token: e, 14820 factory: e.ɵfac, 14821 providedIn: "root" 14822 }), e; 14823 })(); 14824 })))(); 14825} 14826var SI, Vv, Hv, Uv, bI, yI; 14827function wI() { 14828 return (wI = Z((() => { 14829 de(), SI = { 14830 EVENT_GEOLOCATION_ERROR: "GEOLocation.ERROR", 14831 GEOLOCATION_ERRORCODE: "geolocation.errorCode", 14832 GEOLOCATION_ERRORMESSAGE: "geolocation.errorMessage", 14833 EVENT_TRIGGER_GEO_FETCH: "", 14834 GEOLOCATION_FETCH_TYPE: "" 14835 }, Vv = (function(e) { 14836 return e[e.NonRetry = 0] = "NonRetry", e[e.Retry = 1] = "Retry", e; 14837 })(Vv || {}), Hv = (function(e) { 14838 return e.Error = "ERROR", e.Info = "INFO", e.Success = "SUCCESS", e; 14839 })(Hv || {}), Uv = (function(e) { 14840 return e.GeoComplyRegionCode = "geoComplyRegionCode", e.GeoComplyUuid = "geoComplyUUID", e.GeoComplySdkSolution = "geoComplySdkSolution", e.GeoComplyRegion = "geoComplyRegion", e.GeoComplyOs = "geoComplyOS", e; 14841 })(Uv || {}), bI = new Te("Geoguard:errorData"), yI = new Te("Geoguard:errorMessages"); 14842 })))(); 14843} 14844var EI; 14845function CI() { 14846 return (CI = Z((() => {
14847 Re(), de(), Ye(), yi(), st(), cp(), EI = (() => { 14848 var e; 14849 let i = class { 14850 constructor() { 14851 Qi(this, e), this.geolocationCoordinator = void 0, this.geolocationConfig = f(lp), this._initializePending = !1, this._uninitializePending = !1, this._coordinatorState = "NOTINITIALIZED", this.isSynchronizedUninit = !1, Zi(this, e, f(dt)), this.userService = f(ii), this.destroyRef = f(ze), this.logger = f(lt), this.onUnloadHandler = () => { 14852 this.uninitialize(); 14853 }, this.onAvailable = new ws(1), this.coordinationSynchronizer = (r) => { 14854 let s = this.geolocationConfig; 14855 s.isEnabled && s.synchronizationSettings.enabled && r && r.data && r.data.trim && s.synchronizationSettings.events.stop.includes(r.data.trim()) && (this.isSynchronizedUninit = !0, this.geolocationCoordinator?.uninitialize()); 14856 }, this.destroyRef.onDestroy(() => { 14857 $t(this, e).removeEventListener("unload", this.onUnloadHandler), $t(this, e).removeEventListener("message", this.coordinationSynchronizer); 14858 }), this.hookupCoordinator(), $t(this, e).addEventListener("geolocationcoordinator:bootstrapped", () => { 14859 this.hookupCoordinator(); 14860 }, { once: !0 }); 14861 } 14862 readLocationInfoStatus() { 14863 return this.geolocationCoordinator?.readLocationInfoStatus(); 14864 } 14865 get configuration() { 14866 return this.geolocationCoordinator?.configuration; 14867 } 14868 triggerFetchLocation(r) { 14869 this.geolocationCoordinator?.triggerFetchLocation(r); 14870 } 14871 get permissionsManager() { 14872 return this.geolocationCoordinator?.permissionsManager; 14873 } 14874 get coordinatorState() { 14875 return this._coordinatorState; 14876 } 14877 get isCoordinatorAvailable() { 14878 return !!this.geolocationCoordinator; 14879 } 14880 get appDownloadUrl() { 14881 return this.geolocationCoordinator?.appDownloadUrl || ""; 14882 } 14883 probe() { 14884 this.geolocationCoordinator?.probe(); 14885 } 14886 initialize(r) { 14887 this.isSynchronizedUninit = !1, this.geolocationCoordinator ? (this.logger.infoRemote("[GeoCoordination][GeoCoordinatorService][initialize] executing â coordinator available"), this.geolocationCoordinator.initialize({ 14888 session: r && r.session || this.userService && this.userService.ssoToken || "NotAvailable", 14889 channelId: r && r.channelId, 14890 plcIdentifier: r && r?.plcIdentifier, 14891 showPLCPopup: r && r.showPLCPopup, 14892 geolocationReason: r?.geolocationReason 14893 })) : (this.logger.infoRemote("[GeoCoordination][GeoCoordinatorService][initialize] queued â coordinator not yet available (script not bootstrapped)"), this._initializePending = !0, this._initializationInput = r); 14894 } 14895 uninitialize() { 14896 this.geolocationCoordinator ? this.geolocationCoordinator.uninitialize() : this._uninitializePending = !0; 14897 } 14898 locationInfoStatus(r) { 14899 this.geolocationCoordinator?.locationInfoStatus(r); 14900 } 14901 handleLocationInfoStatus(r, s, n) { 14902 this.geolocationCoordinator?.handleLocationInfoStatus(r, s, n); 14903 } 14904 set onInitialized(r) { 14905 this._onInitialized = r, this.geolocationCoordinator && (this.geolocationCoordinator.onInitialized = this._onInitialized); 14906 } 14907 set onUninitialized(r) { 14908 this._onUninitialized = r, this.geolocationCoordinator && (this.geolocationCoordinator.onUninitialized = r); 14909 } 14910 set onError(r) { 14911 this._onError = r, this.geolocationCoordinator && (this.geolocationCoordinator.onError = r); 14912 } 14913 set onProbed(r) { 14914 this._onProbed = r, this.geolocationCoordinator && (this.geolocationCoordinator.onProbed = r); 14915 } 14916 registerUnload() { 14917 $t(this, e).addEventListener("unload", this.onUnloadHandler), $t(this, e).removeEventListener("message", this.coordinationSynchronizer); 14918 } 14919 registerSynchronization() { 14920 let r = this.geolocationConfig; 14921 r.isEnabled && r.synchronizationSettings.enabled && $t(this, e).addEventListener("message", this.coordinationSynchronizer); 14922 } 14923 onGeolocationError(r) { 14924 this._coordinatorState = "ERROR", this.onError ? this.onError(r) : this._onError && this._onError(r); 14925 } 14926 onGeolocationInitialized(r, s) { 14927 this._coordinatorState = r ?? "NOTINITIALIZED", this.onInitialized ? this.onInitialized(r, s) : this._onInitialized && this._onInitialized(r, s); 14928 } 14929 onGeolocationUninitialized() { 14930 this._coordinatorState = "NOTINITIALIZED", this.onUninitialized ? this.onUninitialized() : this._onUninitialized && this._onUninitialized(); 14931 } 14932 onGeolocationProbed(r) { 14933 this.onProbed ? this.onProbed(r) : this._onProbed && this._onProbed(r); 14934 } 14935 hookupCoordinator() { 14936 let r = $t(this, e).geolocationCoordinator; 14937 if (r) { 14938 if (this.geolocationCoordinator = r, this.logger.infoRemote(`[GeoCoordination][GeoCoordinatorService][hookupCoordinator] coordinator available and hooked up \u2014 flushingPendingInitialize=${this._initializePending} flushingPendingUninitialize=${this._uninitializePending}`), this.geolocationCoordinator.onError = this.onGeolocationError.bind(this), this.geolocationCoordinator.onInitialized = this.onGeolocationInitialized.bind(this), this.geolocationCoordinator.onUninitialized = this.onGeolocationUninitialized.bind(this), this.geolocationCoordinator.onProbed = this.onGeolocationProbed.bind(this), this.geolocationCoordinator.diagnostics?.attach({ emit: (s) => { 14939 let n = `[GeoCoordinator][${s.name}]${s.data ? ` ${JSON.stringify(s.data)}` : ""}`; 14940 s.level === "Error" ? this.logger.errorRemote(n, s.data) : s.level === "Warn" ? this.logger.warnRemote(n) : this.logger.infoRemote(n); 14941 } }), this.onAvailable && this.onAvailable.next(this), this._initializePending) { 14942 this._initializePending = !1, this.initialize(this._initializationInput || void 0), this._initializationInput = null; 14943 return; 14944 } 14945 this._uninitializePending && (this._uninitializePending = !1, this.uninitialize()); 14946 } 14947 } 14948 }; 14949 return e = /* @__PURE__ */ new WeakMap(), i.ɵfac = function(t) { 14950 return new (t || i)(); 14951 }, i.ɵprov = R({ 14952 token: i, 14953 factory: i.ɵfac, 14954 providedIn: "root" 14955 }), i; 14956 })(); 14957 })))(); 14958} 14959function u2(e) { 14960 return e.get(Kd); 14961} 14962function Ea(e) { 14963 return e == null || e.length === 0; 14964} 14965function qo(e) { 14966 return typeof e == "string" ? new Date(e) : e; 14967} 14968function Xo(e) { 14969 let i = /* @__PURE__ */ new Date(); 14970 e = qo(e); 14971 let t = i.getFullYear() - e.getFullYear(), r = i.getMonth() - e.getMonth(); 14972 return (r < 0 || r === 0 && i.getDate() < e.getDate()) && t--, t; 14973} 14974var Kd, ur, Wv, NI; 14975function TI() { 14976 return (TI = Z((() => { 14977 de(), Ye(), Vy(), ht(), Kd = (() => { 14978 var e = class {}; 14979 let i = (e.ɵfac = function(t) { 14980 return new (t || e)(); 14981 }, e.ɵprov = R({ 14982 token: e, 14983 factory: function(t) { 14984 let r = null; 14985 return t ? r = new t() : r = u2(ve(sr)), r; 14986 }, 14987 providedIn: "root" 14988 }), e); 14989 return i = mt([Xs({ 14990 key: "vnValidation", 14991 product: it.SF 14992 })], i), i; 14993 })(), ur = class $A extends J_ { 14994 static minDate(i) { 14995 return i = qo(i), (t) => Ea(t.value) ? null : i && qo(t.value) < i ? { mindate: !0 } : null; 14996 } 14997 static maxDate(i) { 14998 return i = qo(i), (t) => Ea(t.value) ? null : i && qo(t.value) > i ? { maxdate: !0 } : null; 14999 } 15000 static youngerThan(i) { 15001 return (t) => Ea(t.value) ? null : Xo(t.value) < i ? { youngerthan: !0 } : null; 15002 } 15003 static youngerThanOrFutureDate(i) { 15004 return (t) => Ea(t.value) ? null : Xo(t.value) < i && Xo(t.value) > 0 ? { youngerthan: !0 } : Xo(t.value) < 0 ? { futuredate: !0 } : null; 15005 } 15006 static olderThan(i) { 15007 return (t) => Ea(t.value) ? null : Xo(t.value) >= i ? { olderthan: !0 } : null; 15008 } 15009 static customPattern(i, t) { 15010 if (!i) return $A.nullValidator; 15011 let r, s; 15012 return typeof i == "string" ? (s = `^${i}
15012$`, r = new RegExp(s)) : (s = i.toString(), r = i), (n) => { 15013 if (Ea(n.value)) return null; 15014 let a = n.value; 15015 if (r.test(a)) return null; 15016 { 15017 let o = {}; 15018 return o[t] = { 15019 requiredPattern: s, 15020 actualValue: a 15021 }, o; 15022 } 15023 }; 15024 } 15025 }, Wv = class extends Ml { 15026 getFlat(e) { 15027 return i(this); 15028 function i(t) { 15029 let r = t.get(e); 15030 if (r) return r; 15031 for (let s in t.controls) { 15032 let n = t.controls[s]; 15033 if (n instanceof Ml && (r = i(n), r)) return r; 15034 } 15035 return null; 15036 } 15037 } 15038 patchValueFlat(e, { onlySelf: i = !0, emitEvent: t, setTouchedOnPatchedValues: r, ignore: s } = {}) { 15039 let n = s || []; 15040 Object.keys(e).filter((a) => n.indexOf(a) === -1).forEach((a) => { 15041 let o = this.getFlat(a); 15042 o && (o.patchValue(e[a] ?? null, { 15043 onlySelf: i, 15044 emitEvent: t 15045 }), r && e[a] && o.markAsTouched()); 15046 }); 15047 } 15048 getValueFlat() { 15049 return e(this); 15050 function e(i, t = {}) { 15051 for (let r in i.controls) { 15052 let s = i.controls[r]; 15053 s instanceof Ml ? e(s, t) : t[r] = s.value; 15054 } 15055 return t; 15056 } 15057 } 15058 getValueFlatData(e) { 15059 return i(this, e); 15060 function i(t, r) { 15061 let s = {}; 15062 return Object.keys(t.controls).forEach((n) => { 15063 let a = t.get(n); 15064 if (a instanceof Ml) { 15065 let o = {}; 15066 Object.keys(a.controls).forEach((l) => { 15067 r.hasOwnProperty(l) && (o[l] = r[l]); 15068 }), s[n] = o; 15069 } 15070 }), s; 15071 } 15072 } 15073 }, NI = (() => { 15074 let e = class { 15075 constructor() { 15076 this.validationConfig = f(Kd), this.defaultValidatorFactories = { 15077 required: (t) => t ? ur.required : null, 15078 regex: (t) => ur.pattern(t), 15079 minLength: (t) => ur.minLength(t), 15080 maxLength: (t) => ur.maxLength(t), 15081 min: (t) => ur.min(t), 15082 max: (t) => ur.max(t) 15083 }; 15084 } 15085 createValidators(t, r) { 15086 r = r || {}; 15087 let s = r.overrides || {}, n = this.parseRules(r.baseOverrides || this.getRawRules(t) || {}), a = Object.assign({}, this.defaultValidatorFactories, r.validationFactoryOverrides); 15088 return [ 15089 this.createValidator(n.required, s.required, (o) => a.required(o)), 15090 this.createValidator(n.minLength, s.minLength, (o) => a.minLength(o)), 15091 this.createValidator(n.maxLength, s.maxLength, (o) => a.maxLength(o)), 15092 this.createValidator(n.min, s.min, (o) => a.min(o)), 15093 this.createValidator(n.max, s.max, (o) => a.max(o)), 15094 this.createValidator(n.regex, s.regex, (o) => a.regex(o)) 15095 ].filter((o) => o); 15096 } 15097 createPasswordValidators() { 15098 return [ 15099 ur.customPattern(new RegExp(this.validationConfig.regexList.containsDigits), "digit"), 15100 ur.customPattern(new RegExp(this.validationConfig.regexList.containsLetters), "letter"), 15101 ur.customPattern(new RegExp(this.validationConfig.regexList.specialCharacters), "specialcharacters") 15102 ]; 15103 } 15104 getRules(t) { 15105 let r = this.getRawRules(t); 15106 return r ? this.parseRules(r) : null; 15107 } 15108 getRawRules(t) { 15109 let r = Object.keys(this.validationConfig.rules).find((s) => s.toLowerCase() === t.toLowerCase()); 15110 return r ? this.validationConfig.rules[r] : null; 15111 } 15112 applyViolations(t, r) { 15113 if (!r) return []; 15114 let s = []; 15115 return r.filter((n) => n.fieldName).forEach((n) => { 15116 let a; 15117 if (t instanceof Wv ? a = t.getFlat(n.fieldName) : a = t.get(n.fieldName), a) { 15118 let o = n.validationError || "server-violation", l = {}; 15119 l[o] = !0, a.setErrors(l), s.push(n.fieldName); 15120 } 15121 }), s; 15122 } 15123 parseRules(t) { 15124 return { 15125 required: this.convertValidationProperty(t.required, Boolean), 15126 min: this.convertValidationProperty(t.min, Number), 15127 max: this.convertValidationProperty(t.max, Number), 15128 regex: this.convertValidationProperty(t.regex, String), 15129 minLength: this.convertValidationProperty(t.minLength, Number), 15130 maxLength: this.convertValidationProperty(t.maxLength, Number) 15131 }; 15132 } 15133 createValidator(t, r, s) { 15134 let n; 15135 return r !== void 0 ? n = r : n = t, n != null ? s(n) : null; 15136 } 15137 convertValidationProperty(t, r) { 15138 typeof t == "string" && (t = this.removeDynamicValidation(t)); 15139 let s; 15140 return r === Number ? s = parseInt(t) : r === Boolean ? s = t === !0 || typeof t == "string" && t.toLowerCase() === "true" : r === String && (s = t), s; 15141 } 15142 removeDynamicValidation(t) { 15143 let r = /\[DEFAULT\]=val\((.+?)\)/.exec(t); 15144 return r ? r[1] : t; 15145 } 15146 }; 15147 return e.ɵfac = function(i) { 15148 return new (i || e)(); 15149 }, e.ɵprov = R({ 15150 token: e, 15151 factory: e.ɵfac, 15152 providedIn: "root" 15153 }), e; 15154 })(); 15155 })))(); 15156} 15157function p2(e, i) { 15158 e & 1 && br(0, "div", 2), e & 2 && bl("innerHTML", N().svg(), Ba); 15159} 15160var kI, xI, II, OI, PI, AI, $I, _I; 15161function MI() { 15162 return (MI = Z((() => { 15163 de(), Ye(), oy(), Ha(), ks(), kI = [[[ 15164 "", 15165 "slot", 15166 "header" 15167 ]], "*"], xI = ["[slot=header]", "*"], II = [[[ 15168 "", 15169 "slot", 15170 "statusicon" 15171 ]], [[ 15172 "", 15173 "slot", 15174 "text" 15175 ]]], OI = ["[slot=statusIcon]", "[slot=text]"], PI = `.ds-help-text-group{--%NS%ds-help-text-radius-radius: var(--%NS%semantic-radius-squared);--%NS%ds-help-text-size-icon-container-height: var(--%NS%semantic-size-icon-medium);--%NS%ds-help-text-size-icon-container-width: var(--%NS%semantic-size-icon-medium);--%NS%ds-help-text-size-icon-height: var(--%NS%semantic-size-icon-small);--%NS%ds-help-text-size-icon-width: var(--%NS%semantic-size-icon-small);--%NS%ds-help-text-space-inline: var(--%NS%semantic-spacing-inline-xs);--%NS%ds-help-text-space-padding-bottom: var(--%NS%semantic-spacing-container-padding-xs);--%NS%ds-help-text-space-padding-left: var(--%NS%semantic-spacing-container-padding-xs);--%NS%ds-help-text-space-padding-right: var(--%NS%semantic-spacing-container-padding-xs);--%NS%ds-help-text-space-padding-top: var(--%NS%semantic-spacing-container-padding-xs);--%NS%ds-help-text-space-stack: var(--%NS%semantic-spacing-stack-sm);--%NS%ds-help-text-caution-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-caution-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-caution-icon: var(--%NS%semantic-color-caution-base);--%NS%ds-help-text-caution-text: var(--%NS%semantic-color-on-surface-base);--%NS%ds-help-text-error-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-error-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-error-icon: var(--%NS%semantic-color-negative-base);--%NS%ds-help-text-error-text: var(--%NS%semantic-color-on-surface-base);--%NS%ds-help-text-group-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-group-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-group-text: var(--%NS%semantic-color-on-surface-base);--%NS%ds-help-text-info-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-info-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-info-icon: var(--%NS%semantic-color-utility-base);--%NS%ds-help-text-info-text: var(--%NS%semantic-color-on-surface-base);--%NS%ds-help-text-success-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-success-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-success-icon: var(--%NS%semantic-color-positive-base);--%NS%ds-help-text-success-text: var(--%NS%semantic-color-on-surface-base);--%NS%ds-help-text-font-family: var(--%NS%semantic-typography-label-font-family, sans-serif);--%NS%ds-help-text-font-size: var(--%NS%semantic-typography-label-md-font-size);
15175--%NS%ds-help-text-font-weight: var(--%NS%semantic-typography-label-md-font-weight);--%NS%ds-help-text-line-height: var(--%NS%semantic-typography-label-md-line-height);font-family:var(--%NS%ds-help-text-font-family);font-size:var(--%NS%ds-help-text-font-size);font-weight:var(--%NS%ds-help-text-font-weight);line-height:var(--%NS%ds-help-text-line-height);display:flex;flex-direction:column;gap:var(--%NS%ds-help-text-space-stack);padding:var(--%NS%ds-help-text-space-padding-top) var(--%NS%ds-help-text-space-padding-right) var(--%NS%ds-help-text-space-padding-bottom) var(--%NS%ds-help-text-space-padding-left)}.ds-help-text-group.ds-help-text-group-inverse{--%NS%ds-help-text-caution-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-caution-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-caution-icon: var(--%NS%semantic-color-caution-base-inverse);--%NS%ds-help-text-caution-text: var(--%NS%semantic-color-on-surface-base-inverse);--%NS%ds-help-text-error-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-error-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-error-icon: var(--%NS%semantic-color-negative-base-inverse);--%NS%ds-help-text-error-text: var(--%NS%semantic-color-on-surface-base-inverse);--%NS%ds-help-text-group-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-group-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-group-text: var(--%NS%semantic-color-on-surface-base-inverse);--%NS%ds-help-text-info-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-info-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-info-icon: var(--%NS%semantic-color-utility-base-inverse);--%NS%ds-help-text-info-text: var(--%NS%semantic-color-on-surface-base-inverse);--%NS%ds-help-text-success-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-success-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-success-icon: var(--%NS%semantic-color-positive-base-inverse);--%NS%ds-help-text-success-text: var(--%NS%semantic-color-on-surface-base-inverse)}.ds-help-text-group.ds-help-text-group-right-aligned .ds-help-text-group-header{text-align:right}.ds-help-text-group .ds-help-text-group-header{font-family:var(--%NS%ds-help-text-font-family);font-size:var(--%NS%ds-help-text-font-size);font-weight:var(--%NS%ds-help-text-font-weight);line-height:var(--%NS%ds-help-text-line-height);--%NS%ds-help-text-font-family: var(--%NS%semantic-typography-label-font-family, sans-serif);--%NS%ds-help-text-font-size: var(--%NS%semantic-typography-label-md-strong-font-size);--%NS%ds-help-text-font-weight: var(--%NS%semantic-typography-label-md-strong-font-weight);--%NS%ds-help-text-line-height: var(--%NS%semantic-typography-label-md-strong-line-height);background-color:var(--%NS%ds-help-text-group-bg);border-color:var(--%NS%ds-help-text-group-border);color:var(--%NS%ds-help-text-group-text)}.ds-help-text-group .ds-help-text-group-content{font-family:var(--%NS%ds-help-text-font-family);font-size:var(--%NS%ds-help-text-font-size);font-weight:var(--%NS%ds-help-text-font-weight);line-height:var(--%NS%ds-help-text-line-height);--%NS%ds-help-text-font-family: var(--%NS%semantic-typography-label-font-family, sans-serif);--%NS%ds-help-text-font-size: var(--%NS%semantic-typography-label-md-font-size);--%NS%ds-help-text-font-weight: var(--%NS%semantic-typography-label-md-font-weight);--%NS%ds-help-text-line-height: var(--%NS%semantic-typography-label-md-line-height);display:flex;flex-direction:column;gap:var(--%NS%ds-help-text-space-stack)}.ds-help-item{--%NS%ds-help-text-radius-radius: var(--%NS%semantic-radius-squared);--%NS%ds-help-text-size-icon-container-height: var(--%NS%semantic-size-icon-medium);--%NS%ds-help-text-size-icon-container-width: var(--%NS%semantic-size-icon-medium);--%NS%ds-help-text-size-icon-height: var(--%NS%semantic-size-icon-small);--%NS%ds-help-text-size-icon-width: var(--%NS%semantic-size-icon-small);--%NS%ds-help-text-space-inline: var(--%NS%semantic-spacing-inline-xs);--%NS%ds-help-text-space-padding-bottom: var(--%NS%semantic-spacing-container-padding-xs);--%NS%ds-help-text-space-padding-left: var(--%NS%semantic-spacing-container-padding-xs);--%NS%ds-help-text-space-padding-right: var(--%NS%semantic-spacing-container-padding-xs);--%NS%ds-help-text-space-padding-top: var(--%NS%semantic-spacing-container-padding-xs);--%NS%ds-help-text-space-stack: var(--%NS%semantic-spacing-stack-sm);--%NS%ds-help-text-caution-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-caution-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-caution-icon: var(--%NS%semantic-color-caution-base);--%NS%ds-help-text-caution-text: var(--%NS%semantic-color-on-surface-base);--%NS%ds-help-text-error-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-error-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-error-icon: var(--%NS%semantic-color-negative-base);--%NS%ds-help-text-error-text: var(--%NS%semantic-color-on-surface-base);--%NS%ds-help-text-group-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-group-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-group-text: var(--%NS%semantic-color-on-surface-base);--%NS%ds-help-text-info-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-info-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-info-icon: var(--%NS%semantic-color-utility-base);--%NS%ds-help-text-info-text: var(--%NS%semantic-color-on-surface-base);--%NS%ds-help-text-success-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-success-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-success-icon: var(--%NS%semantic-color-positive-base);--%NS%ds-help-text-success-text: var(--%NS%semantic-color-on-surface-base);--%NS%ds-help-text-font-family: var(--%NS%semantic-typography-label-font-family, sans-serif);--%NS%ds-help-text-font-size: var(--%NS%semantic-typography-label-md-font-size);
15175--%NS%ds-help-text-font-weight: var(--%NS%semantic-typography-label-md-font-weight);--%NS%ds-help-text-line-height: var(--%NS%semantic-typography-label-md-line-height);font-family:var(--%NS%ds-help-text-font-family);font-size:var(--%NS%ds-help-text-font-size);font-weight:var(--%NS%ds-help-text-font-weight);line-height:var(--%NS%ds-help-text-line-height);--%NS%ds-help-text-local-right-alignment-width: max-content;--%NS%ds-help-text-local-right-alignment-min-width: 100%;align-items:center;display:flex;gap:var(--%NS%ds-help-text-space-inline)}.ds-help-item-success{background-color:var(--%NS%ds-help-text-success-bg);border-color:var(--%NS%ds-help-text-success-border);color:var(--%NS%ds-help-text-success-text)}.ds-help-item-success .ds-help-item-icon{color:var(--%NS%ds-help-text-success-icon)}.ds-help-item-caution{background-color:var(--%NS%ds-help-text-caution-bg);border-color:var(--%NS%ds-help-text-caution-border);color:var(--%NS%ds-help-text-caution-text)}.ds-help-item-caution .ds-help-item-icon{color:var(--%NS%ds-help-text-caution-icon)}.ds-help-item-error{background-color:var(--%NS%ds-help-text-error-bg);border-color:var(--%NS%ds-help-text-error-border);color:var(--%NS%ds-help-text-error-text)}.ds-help-item-error .ds-help-item-icon{color:var(--%NS%ds-help-text-error-icon)}.ds-help-item-info{background-color:var(--%NS%ds-help-text-info-bg);border-color:var(--%NS%ds-help-text-info-border);color:var(--%NS%ds-help-text-info-text)}.ds-help-item-info .ds-help-item-icon{color:var(--%NS%ds-help-text-info-icon)}.ds-help-item-right-alignment{align-items:end;align-self:end;display:flex;flex-direction:row;justify-content:end;min-width:var(--%NS%ds-help-text-local-right-alignment-width);text-align:end;width:var(--%NS%ds-help-text-local-right-alignment-min-width)}.ds-help-item-inverse{--%NS%ds-help-text-caution-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-caution-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-caution-icon: var(--%NS%semantic-color-caution-base-inverse);--%NS%ds-help-text-caution-text: var(--%NS%semantic-color-on-surface-base-inverse);--%NS%ds-help-text-error-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-error-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-error-icon: var(--%NS%semantic-color-negative-base-inverse);--%NS%ds-help-text-error-text: var(--%NS%semantic-color-on-surface-base-inverse);--%NS%ds-help-text-group-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-group-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-group-text: var(--%NS%semantic-color-on-surface-base-inverse);--%NS%ds-help-text-info-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-info-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-info-icon: var(--%NS%semantic-color-utility-base-inverse);--%NS%ds-help-text-info-text: var(--%NS%semantic-color-on-surface-base-inverse);--%NS%ds-help-text-success-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-success-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-success-icon: var(--%NS%semantic-color-positive-base-inverse);--%NS%ds-help-text-success-text: var(--%NS%semantic-color-on-surface-base-inverse)}.ds-help-item-icon{align-items:center;display:flex;flex-direction:column;height:var(--%NS%ds-help-text-size-icon-container-height);justify-content:center;min-width:var(--%NS%ds-help-text-size-icon-container-width);place-self:flex-start;width:var(--%NS%ds-help-text-size-icon-container-width)}.ds-help-item-svg{height:var(--%NS%ds-help-text-size-icon-width);width:var(--%NS%ds-help-text-size-icon-height)}.ds-help-item-default-icon{display:flex}.ds-help-item-text{overflow-wrap:break-word;word-wrap:break-word} 15176`, AI = { 15177 caution: `<svg class="ds-help-item-svg" viewBox="0 0 12 12" fill="currentColor" xmlns="http://www.w3.org/2000/svg"> 15178<path fill-rule="evenodd" clip-rule="evenodd" d="M7.37922 1.30559C6.77424 0.23147 5.22576 0.231469 4.62078 1.30559L0.205528 9.14479C-0.387832 10.1983 0.374452 11.5 1.58475 11.5H10.4153C11.6255 11.5 12.3878 10.1983 11.7945 9.14479L7.37922 1.30559ZM6 3.5C5.72386 3.5 5.5 3.72386 5.5 4V7C5.5 7.27614 5.72386 7.5 6 7.5C6.27614 7.5 6.5 7.27614 6.5 7V4C6.5 3.72386 6.27614 3.5 6 3.5ZM6 8.5C5.58579 8.5 5.25 8.83579 5.25 9.25C5.25 9.66421 5.58579 10 6 10C6.41421 10 6.75 9.66421 6.75 9.25C6.75 8.83579 6.41421 8.5 6 8.5Z" /> 15179</svg> 15180`, 15181 error: `<svg class="ds-help-item-svg" viewBox="0 0 12 12" fill="currentColor" xmlns="http://www.w3.org/2000/svg"> 15182<path fill-rule="evenodd" clip-rule="evenodd" d="M12 6C12 9.31371 9.31371 12 6 12C2.68629 12 0 9.31371 0 6C0 2.68629 2.68629 0 6 0C9.31371 0 12 2.68629 12 6ZM5.5 7.5V2.5H6.5V7.5H5.5ZM5.99994 9.76379C6.4218 9.76379 6.76379 9.42181 6.76379 8.99994C6.76379 8.57807 6.4218 8.23608 5.99994 8.23608C5.57807 8.23608 5.23608 8.57807 5.23608 8.99994C5.23608 9.42181 5.57807 9.76379 5.99994 9.76379Z" /> 15183</svg> 15184`, 15185 info: "<svg class=\"ds-help-item-svg\" viewBox=\"0 0 12 12\" fill=\"currentColor\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M6 12A6 6 0 1 0 6 0a6 6 0 0 0 0 12Zm0-9a.75.75 0 1 0 0 1.5A.75.75 0 0 0 6 3Zm.5 6a.25.25 0 0 0 .25-.25V5.5a.25.25 0 0 0-.25-.25h-1a.25.25 0 0 0-.25.25v3.25c0 .138.112.25.25.25h1Z\"/></svg>", 15186 success: `<svg class="ds-help-item-svg" viewBox="0 0 12 12" fill="currentColor" xmlns="http://www.w3.org/2000/svg"> 15187 <path fill-rule="evenodd" clip-rule="evenodd" 15188 d="M0.114286 4.8535C0.685714 2.06369 3.04762 0 5.98095 0C9.25714 0 12 2.71338 12 6C12 9.28662 9.29524 12 6.01905 12C3.9619 12 2.13333 10.9299 1.06667 9.36306C0.380952 8.40764 0 7.22293 0 6C0 5.61783 0.0380952 5.23567 0.114286 4.8535ZM5.60355 8.10355L9.10355 4.60355L8.39645 3.89645L5.25 7.04289L3.60355 5.39645L2.89645 6.10355L4.89645 8.10355C5.09171 8.29882 5.40829 8.29882 5.60355 8.10355Z" /> 15189</svg>` 15190 }, $I = (() => { 15191 let e = class { 15192 constructor() { 15193 this.inverse = Ne(!1), this.hostClass = ne(() => "ds-help-text-group"), $y().toggleClass((t) => !!t.nativeElement.querySelector(".ds-help-item-right-alignment"), "ds-help-text-group-right-aligned"); 15194 } 15195 getThemeableProperties() { 15196 return { inverse: this.inverse }; 15197 } 15198 }; 15199 return e.ɵfac = function(i) { 15200 return new (i || e)(); 15201 }, e.ɵcmp = ge({ 15202 type: e, 15203 selectors: [["ds-help-group"]], 15204 hostVars: 4, 15205 hostBindings: function(i, t) { 15206 i & 2 && (Le(t.hostClass()), wt("ds-help-text-group-inverse", t.inverse())); 15207 }, 15208 inputs: { inverse: [1, "inverse"] }, 15209 outputs: { inverse: "inverseChange" }, 15210 features: [Pi([{ 15211 provide: Nr, 15212 useExisting: e 15213 }])], 15214 ngContentSelectors: xI, 15215 decls: 4, 15216 vars: 0, 15217 consts: [[1, "ds-help-text-group-header"], [1, "ds-help-text-group-content"]], 15218 template: function(i, t) { 15219 i & 1 && (_t(kI), Nt(0, "div", 0), Ke(1), ft(), Nt(2, "div", 1), Ke(3, 1), ft()); 15220 }, 15221 styles: [`.ds-help-text-group{--%NS%ds-help-text-radius-radius: var(--%NS%semantic-radius-squared);--%NS%ds-help-text-size-icon-container-height: var(--%NS%semantic-size-icon-medium);--%NS%ds-help-text-size-icon-container-width: var(--%NS%semantic-size-icon-medium);--%NS%ds-help-text-size-icon-height: var(--%NS%semantic-size-icon-small);--%NS%ds-help-text-size-icon-width: var(--%NS%semantic-size-icon-small);--%NS%ds-help-text-space-inline: var(--%NS%semantic-spacing-inline-xs);--%NS%ds-help-text-space-padding-bottom: var(--%NS%semantic-spacing-container-padding-xs);--%NS%ds-help-text-space-padding-left: var(--%NS%semantic-spacing-container-padding-xs);--%NS%ds-help-text-space-padding-right: var(--%NS%semantic-spacing-container-padding-xs);--%NS%ds-help-text-space-padding-top: var(--%NS%semantic-spacing-container-padding-xs);--%NS%ds-help-text-space-stack: var(--%NS%semantic-spacing-stack-sm);--%NS%ds-help-text-caution-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-caution-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-caution-icon: var(--%NS%semantic-color-caution-base);--%NS%ds-help-text-caution-text: var(--%NS%semantic-color-on-surface-base);--%NS%ds-help-text-error-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-error-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-error-icon: var(--%NS%semantic-color-negative-base);--%NS%ds-help-text-error-text: var(--%NS%semantic-color-on-surface-base);--%NS%ds-help-text-group-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-group-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-group-text: var(--%NS%semantic-color-on-surface-base);--%NS%ds-help-text-info-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-info-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-info-icon: var(--%NS%semantic-color-utility-base);--%NS%ds-help-text-info-text: var(--%NS%semantic-color-on-surface-base);--%NS%ds-help-text-success-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-success-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-success-icon: var(--%NS%semantic-color-positive-base);--%NS%ds-help-text-success-text: var(--%NS%semantic-color-on-surface-base);--%NS%ds-help-text-font-family: var(--%NS%semantic-typography-label-font-family, sans-serif);--%NS%ds-help-text-font-size: var(--%NS%semantic-typography-label-md-font-size);
15221--%NS%ds-help-text-font-weight: var(--%NS%semantic-typography-label-md-font-weight);--%NS%ds-help-text-line-height: var(--%NS%semantic-typography-label-md-line-height);font-family:var(--%NS%ds-help-text-font-family);font-size:var(--%NS%ds-help-text-font-size);font-weight:var(--%NS%ds-help-text-font-weight);line-height:var(--%NS%ds-help-text-line-height);display:flex;flex-direction:column;gap:var(--%NS%ds-help-text-space-stack);padding:var(--%NS%ds-help-text-space-padding-top) var(--%NS%ds-help-text-space-padding-right) var(--%NS%ds-help-text-space-padding-bottom) var(--%NS%ds-help-text-space-padding-left)}.ds-help-text-group.ds-help-text-group-inverse{--%NS%ds-help-text-caution-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-caution-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-caution-icon: var(--%NS%semantic-color-caution-base-inverse);--%NS%ds-help-text-caution-text: var(--%NS%semantic-color-on-surface-base-inverse);--%NS%ds-help-text-error-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-error-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-error-icon: var(--%NS%semantic-color-negative-base-inverse);--%NS%ds-help-text-error-text: var(--%NS%semantic-color-on-surface-base-inverse);--%NS%ds-help-text-group-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-group-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-group-text: var(--%NS%semantic-color-on-surface-base-inverse);--%NS%ds-help-text-info-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-info-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-info-icon: var(--%NS%semantic-color-utility-base-inverse);--%NS%ds-help-text-info-text: var(--%NS%semantic-color-on-surface-base-inverse);--%NS%ds-help-text-success-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-success-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-success-icon: var(--%NS%semantic-color-positive-base-inverse);--%NS%ds-help-text-success-text: var(--%NS%semantic-color-on-surface-base-inverse)}.ds-help-text-group.ds-help-text-group-right-aligned .ds-help-text-group-header{text-align:right}.ds-help-text-group .ds-help-text-group-header{font-family:var(--%NS%ds-help-text-font-family);font-size:var(--%NS%ds-help-text-font-size);font-weight:var(--%NS%ds-help-text-font-weight);line-height:var(--%NS%ds-help-text-line-height);--%NS%ds-help-text-font-family: var(--%NS%semantic-typography-label-font-family, sans-serif);--%NS%ds-help-text-font-size: var(--%NS%semantic-typography-label-md-strong-font-size);--%NS%ds-help-text-font-weight: var(--%NS%semantic-typography-label-md-strong-font-weight);--%NS%ds-help-text-line-height: var(--%NS%semantic-typography-label-md-strong-line-height);background-color:var(--%NS%ds-help-text-group-bg);border-color:var(--%NS%ds-help-text-group-border);color:var(--%NS%ds-help-text-group-text)}.ds-help-text-group .ds-help-text-group-content{font-family:var(--%NS%ds-help-text-font-family);font-size:var(--%NS%ds-help-text-font-size);font-weight:var(--%NS%ds-help-text-font-weight);line-height:var(--%NS%ds-help-text-line-height);--%NS%ds-help-text-font-family: var(--%NS%semantic-typography-label-font-family, sans-serif);--%NS%ds-help-text-font-size: var(--%NS%semantic-typography-label-md-font-size);--%NS%ds-help-text-font-weight: var(--%NS%semantic-typography-label-md-font-weight);--%NS%ds-help-text-line-height: var(--%NS%semantic-typography-label-md-line-height);display:flex;flex-direction:column;gap:var(--%NS%ds-help-text-space-stack)}.ds-help-item{--%NS%ds-help-text-radius-radius: var(--%NS%semantic-radius-squared);--%NS%ds-help-text-size-icon-container-height: var(--%NS%semantic-size-icon-medium);--%NS%ds-help-text-size-icon-container-width: var(--%NS%semantic-size-icon-medium);--%NS%ds-help-text-size-icon-height: var(--%NS%semantic-size-icon-small);--%NS%ds-help-text-size-icon-width: var(--%NS%semantic-size-icon-small);--%NS%ds-help-text-space-inline: var(--%NS%semantic-spacing-inline-xs);--%NS%ds-help-text-space-padding-bottom: var(--%NS%semantic-spacing-container-padding-xs);--%NS%ds-help-text-space-padding-left: var(--%NS%semantic-spacing-container-padding-xs);--%NS%ds-help-text-space-padding-right: var(--%NS%semantic-spacing-container-padding-xs);--%NS%ds-help-text-space-padding-top: var(--%NS%semantic-spacing-container-padding-xs);--%NS%ds-help-text-space-stack: var(--%NS%semantic-spacing-stack-sm);--%NS%ds-help-text-caution-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-caution-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-caution-icon: var(--%NS%semantic-color-caution-base);--%NS%ds-help-text-caution-text: var(--%NS%semantic-color-on-surface-base);--%NS%ds-help-text-error-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-error-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-error-icon: var(--%NS%semantic-color-negative-base);--%NS%ds-help-text-error-text: var(--%NS%semantic-color-on-surface-base);--%NS%ds-help-text-group-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-group-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-group-text: var(--%NS%semantic-color-on-surface-base);--%NS%ds-help-text-info-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-info-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-info-icon: var(--%NS%semantic-color-utility-base);--%NS%ds-help-text-info-text: var(--%NS%semantic-color-on-surface-base);--%NS%ds-help-text-success-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-success-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-success-icon: var(--%NS%semantic-color-positive-base);--%NS%ds-help-text-success-text: var(--%NS%semantic-color-on-surface-base);--%NS%ds-help-text-font-family: var(--%NS%semantic-typography-label-font-family, sans-serif);--%NS%ds-help-text-font-size: var(--%NS%semantic-typography-label-md-font-size);
15221--%NS%ds-help-text-font-weight: var(--%NS%semantic-typography-label-md-font-weight);--%NS%ds-help-text-line-height: var(--%NS%semantic-typography-label-md-line-height);font-family:var(--%NS%ds-help-text-font-family);font-size:var(--%NS%ds-help-text-font-size);font-weight:var(--%NS%ds-help-text-font-weight);line-height:var(--%NS%ds-help-text-line-height);--%NS%ds-help-text-local-right-alignment-width: max-content;--%NS%ds-help-text-local-right-alignment-min-width: 100%;align-items:center;display:flex;gap:var(--%NS%ds-help-text-space-inline)}.ds-help-item-success{background-color:var(--%NS%ds-help-text-success-bg);border-color:var(--%NS%ds-help-text-success-border);color:var(--%NS%ds-help-text-success-text)}.ds-help-item-success .ds-help-item-icon{color:var(--%NS%ds-help-text-success-icon)}.ds-help-item-caution{background-color:var(--%NS%ds-help-text-caution-bg);border-color:var(--%NS%ds-help-text-caution-border);color:var(--%NS%ds-help-text-caution-text)}.ds-help-item-caution .ds-help-item-icon{color:var(--%NS%ds-help-text-caution-icon)}.ds-help-item-error{background-color:var(--%NS%ds-help-text-error-bg);border-color:var(--%NS%ds-help-text-error-border);color:var(--%NS%ds-help-text-error-text)}.ds-help-item-error .ds-help-item-icon{color:var(--%NS%ds-help-text-error-icon)}.ds-help-item-info{background-color:var(--%NS%ds-help-text-info-bg);border-color:var(--%NS%ds-help-text-info-border);color:var(--%NS%ds-help-text-info-text)}.ds-help-item-info .ds-help-item-icon{color:var(--%NS%ds-help-text-info-icon)}.ds-help-item-right-alignment{align-items:end;align-self:end;display:flex;flex-direction:row;justify-content:end;min-width:var(--%NS%ds-help-text-local-right-alignment-width);text-align:end;width:var(--%NS%ds-help-text-local-right-alignment-min-width)}.ds-help-item-inverse{--%NS%ds-help-text-caution-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-caution-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-caution-icon: var(--%NS%semantic-color-caution-base-inverse);--%NS%ds-help-text-caution-text: var(--%NS%semantic-color-on-surface-base-inverse);--%NS%ds-help-text-error-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-error-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-error-icon: var(--%NS%semantic-color-negative-base-inverse);--%NS%ds-help-text-error-text: var(--%NS%semantic-color-on-surface-base-inverse);--%NS%ds-help-text-group-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-group-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-group-text: var(--%NS%semantic-color-on-surface-base-inverse);--%NS%ds-help-text-info-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-info-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-info-icon: var(--%NS%semantic-color-utility-base-inverse);--%NS%ds-help-text-info-text: var(--%NS%semantic-color-on-surface-base-inverse);--%NS%ds-help-text-success-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-success-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-help-text-success-icon: var(--%NS%semantic-color-positive-base-inverse);--%NS%ds-help-text-success-text: var(--%NS%semantic-color-on-surface-base-inverse)}.ds-help-item-icon{align-items:center;display:flex;flex-direction:column;height:var(--%NS%ds-help-text-size-icon-container-height);justify-content:center;min-width:var(--%NS%ds-help-text-size-icon-container-width);place-self:flex-start;width:var(--%NS%ds-help-text-size-icon-container-width)}.ds-help-item-svg{height:var(--%NS%ds-help-text-size-icon-width);width:var(--%NS%ds-help-text-size-icon-height)}.ds-help-item-default-icon{display:flex}.ds-help-item-text{overflow-wrap:break-word;word-wrap:break-word} 15222`], 15223 encapsulation: 2 15224 }), e; 15225 })(), _I = (() => { 15226 let e = class { 15227 constructor() { 15228 this._sanitizer = f(ly), this._elementRef = f(di), this.svg = ne(() => { 15229 let t = AI[this.type()]; 15230 return t ? this._sanitizer.bypassSecurityTrustHtml(t) : ""; 15231 }), this.type = Ne("success"), this.isRightAligned = Ne(!1), this.inverse = Ne(!1), this.hostClass = ne(() => `ds-help-item ds-help-item-${this.type()} ${this.isRightAligned() ? "ds-help-item-right-alignment" : ""}`); 15232 } 15233 helpItemId() { 15234 if (this._id) return this._id; 15235 let t = this._elementRef.nativeElement.getAttribute("id"); 15236 return t?.trim() || (t = Qb("ds-help-item-")), this._id = t, t; 15237 } 15238 getThemeableProperties() { 15239 return { 15240 type: this.type, 15241 inverse: this.inverse 15242 }; 15243 } 15244 }; 15245 return e.ɵfac = function(i) { 15246 return new (i || e)(); 15247 }, e.ɵcmp = ge({ 15248 type: e, 15249 selectors: [["ds-help-item"]], 15250 hostAttrs: [ 15251 "aria-atomic", 15252 "true", 15253 "aria-live", 15254 "polite" 15255 ], 15256 hostVars: 5, 15257 hostBindings: function(i, t) { 15258 i & 2 && (Qe("id", t.helpItemId()), Le(t.hostClass()), wt("ds-help-item-inverse", t.inverse())); 15259 }, 15260 inputs: { 15261 type: [1, "type"], 15262 isRightAligned: [1, "isRightAligned"], 15263 inverse: [1, "inverse"] 15264 }, 15265 outputs: { 15266 type: "typeChange", 15267 isRightAligned: "isRightAlignedChange", 15268 inverse: "inverseChange" 15269 }, 15270 features: [Pi([{ 15271 provide: Nr, 15272 useExisting: e 15273 }])], 15274 ngContentSelectors: OI, 15275 decls: 5, 15276 vars: 0, 15277 consts: [ 15278 [1, "ds-help-item-icon"], 15279 [1, "ds-help-item-text"], 15280 [ 15281 1, 15282 "ds-help-item-default-icon", 15283 3, 15284 "innerHTML" 15285 ] 15286 ], 15287 template: function(i, t) {
15288 i & 1 && (_t(II), Nt(0, "div", 0), Ke(1, 0, null, p2, 1, 1), ft(), Nt(3, "div", 1), Ke(4, 1), ft()); 15289 }, 15290 styles: [PI], 15291 encapsulation: 2 15292 }), e; 15293 })(); 15294 })))(); 15295} 15296var RI; 15297function LI() { 15298 return (LI = Z((() => { 15299 de(), yi(), st(), RI = (() => { 15300 let e = class { 15301 constructor() { 15302 this.apiService = f(xl), this.user = f(ii), this.playerLimitsEvents = new Gt(null); 15303 } 15304 getLimits() { 15305 return this.playerLimitsEvents; 15306 } 15307 refresh() { 15308 this.loaded = !1, this.user.isAuthenticated && this.load(); 15309 } 15310 get() { 15311 return this.apiService.get("playerlimits"); 15312 } 15313 load() { 15314 this.user.isAuthenticated && !this.loaded && (this.loaded = !0, this.get().subscribe({ 15315 next: (t) => this.playerLimitsEvents.next(t.limits), 15316 error: () => this.playerLimitsEvents.next(null) 15317 })); 15318 } 15319 }; 15320 return e.ɵfac = function(i) { 15321 return new (i || e)(); 15322 }, e.ɵprov = R({ 15323 token: e, 15324 factory: e.ɵfac, 15325 providedIn: "root" 15326 }), e; 15327 })(); 15328 })))(); 15329} 15330function BI(e) { 15331 let i = f(Tb); 15332 return Bn(f(di).nativeElement, e).pipe(Vu(0), Hr(() => i.markForCheck()), he()); 15333} 15334function h2() { 15335 return Gi(BI("click"), BI("keyup").pipe(Si((e) => e.code === "Space" || e.code === "Enter" ? je(!0) : je(null)), We(Boolean))).pipe(Vu(0)); 15336} 15337function DI() { 15338 return (DI = Z((() => { 15339 de(), Et(); 15340 })))(); 15341} 15342function m2(e, i) { 15343 for (let t of i) t.value !== void 0 && (t.oldName, t.newName, t.migration); 15344} 15345function FI() { 15346 return (FI = Z((() => {})))(); 15347} 15348function f2() { 15349 return new qd(); 15350} 15351var zI, qd, jv, Yv, Kv; 15352function qv() { 15353 return (qv = Z((() => {
15354 Re(), de(), rr(), zI = ["streamEl"], qd = (() => { 15355 class e { 15356 get nativeDocument() { 15357 return document; 15358 } 15359 } 15360 return e.ɵfac = function(i) { 15361 return new (i || e)(); 15362 }, e.ɵprov = R({ 15363 token: e, 15364 factory: e.ɵfac 15365 }), e; 15366 })(), jv = [ 15367 "autoplay", 15368 "controls", 15369 "currentTime", 15370 "primaryColor", 15371 "muted", 15372 "loop", 15373 "volume", 15374 "preload", 15375 "defaultTextTrack" 15376 ], Yv = (() => { 15377 class e { 15378 constructor(t, r, s) { 15379 this.renderer2 = t, this.doc = r, this.platformId = s, this.abort = new ot(), this.canplay = new ot(), this.canplaythrough = new ot(), this.durationchange = new ot(), this.ended = new ot(), this.error = new ot(), this.loadeddata = new ot(), this.loadedmetadata = new ot(), this.loadstart = new ot(), this.pause = new ot(), this.play = new ot(), this.playing = new ot(), this.progress = new ot(), this.ratechange = new ot(), this.seeked = new ot(), this.seeking = new ot(), this.stalled = new ot(), this.suspend = new ot(), this.timeupdate = new ot(), this.volumechange = new ot(), this.waiting = new ot(), this.streamAdStart = new ot(), this.streamAdEnd = new ot(), this.streamAdTimeout = new ot(); 15380 } 15381 ngOnChanges(t) { 15382 this.streamEl && this.syncProperties(Object.keys(t).reduce((r, s) => J(C({}, r), { [s]: t[s].currentValue }), {})); 15383 } 15384 syncProperties(t) { 15385 jv.forEach((r) => { 15386 t.hasOwnProperty(r) && (this.streamEl.nativeElement[r] = t[r]); 15387 }); 15388 } 15389 ngAfterViewInit() { 15390 this.syncProperties(jv.reduce((t, r) => this[r] === void 0 ? t : J(C({}, t), { [r]: this[r] }), {})), this.loadStreamScript(); 15391 } 15392 get isBrowser() { 15393 return Wb(this.platformId); 15394 } 15395 loadStreamScript() { 15396 this.isBrowser && (this.streamScript = document.createElement("script"), this.streamScript.setAttribute("data-cfasync", "false"), this.streamScript.setAttribute("defer", "true"), this.streamScript.setAttribute("type", "text/javascript"), this.streamScript.setAttribute("src", "https://embed.cloudflarestream.com/embed/r4xu.fla9.latest.js"), this.renderer2.appendChild(this.doc.nativeDocument.head, this.streamScript)); 15397 } 15398 cleanUpStreamScript() { 15399 this.isBrowser && this.renderer2.removeChild(this.doc.nativeDocument.head, this.streamScript); 15400 } 15401 ngOnDestroy() { 15402 this.cleanUpStreamScript(); 15403 } 15404 } 15405 return e.ɵfac = function(i) { 15406 return new (i || e)(Bu(Ur), Bu(qd), Bu(_a)); 15407 }, e.ɵcmp = ge({ 15408 type: e, 15409 selectors: [["cloudflare-stream"]], 15410 viewQuery: function(i, t) { 15411 if (i & 1 && js(zI, 5), i & 2) { 15412 let r; 15413 Ks(r = Us()) && (t.streamEl = r.first); 15414 } 15415 }, 15416 inputs: { 15417 adUrl: "adUrl", 15418 autoplay: "autoplay", 15419 controls: "controls", 15420 currentTime: "currentTime", 15421 defaultTextTrack: "defaultTextTrack", 15422 height: "height", 15423 loop: "loop", 15424 muted: "muted", 15425 poster: "poster", 15426 preload: "preload", 15427 primaryColor: "primaryColor", 15428 src: "src", 15429 volume: "volume", 15430 width: "width" 15431 }, 15432 outputs: { 15433 abort: "abort", 15434 canplay: "canplay", 15435 canplaythrough: "canplaythrough", 15436 durationchange: "durationchange", 15437 ended: "ended", 15438 error: "error", 15439 loadeddata: "loadeddata", 15440 loadedmetadata: "loadedmetadata", 15441 loadstart: "loadstart", 15442 pause: "pause", 15443 play: "play", 15444 playing: "playing", 15445 progress: "progress", 15446 ratechange: "ratechange", 15447 seeked: "seeked", 15448 seeking: "seeking", 15449 stalled: "stalled", 15450 suspend: "suspend", 15451 timeupdate: "timeupdate", 15452 volumechange: "volumechange", 15453 waiting: "waiting", 15454 streamAdStart: "streamAdStart", 15455 streamAdEnd: "streamAdEnd", 15456 streamAdTimeout: "streamAdTimeout" 15457 }, 15458 standalone: !1, 15459 features: [Fn], 15460 decls: 2, 15461 vars: 12, 15462 consts: [["streamEl", ""], [ 15463 3, 15464 "play", 15465 "abort", 15466 "canplay", 15467 "canplaythrough", 15468 "durationchange", 15469 "ended", 15470 "error", 15471 "loadeddata", 15472 "loadedmetadata", 15473 "loadstart", 15474 "pause", 15475 "playing", 15476 "progress", 15477 "ratechange", 15478 "seeked", 15479 "seeking", 15480 "stalled", 15481 "suspend", 15482 "timeupdate", 15483 "volumechange", 15484 "waiting", 15485 "stream-adstart", 15486 "stream-adend", 15487 "stream-adtimeout" 15488 ]], 15489 template: function(i, t) {
15490 i & 1 && (ie(0, "stream", 1, 0), Ce("play", function(r) { 15491 return t.play.emit(r); 15492 })("abort", function(r) { 15493 return t.abort.emit(r); 15494 })("canplay", function(r) { 15495 return t.canplay.emit(r); 15496 })("canplaythrough", function(r) { 15497 return t.canplaythrough.emit(r); 15498 })("durationchange", function(r) { 15499 return t.durationchange.emit(r); 15500 })("ended", function(r) { 15501 return t.ended.emit(r); 15502 })("error", function(r) { 15503 return t.error.emit(r); 15504 })("loadeddata", function(r) { 15505 return t.loadeddata.emit(r); 15506 })("loadedmetadata", function(r) { 15507 return t.loadedmetadata.emit(r); 15508 })("loadstart", function(r) { 15509 return t.loadstart.emit(r); 15510 })("pause", function(r) { 15511 return t.pause.emit(r); 15512 })("play", function(r) { 15513 return t.play.emit(r); 15514 })("playing", function(r) { 15515 return t.playing.emit(r); 15516 })("progress", function(r) { 15517 return t.progress.emit(r); 15518 })("ratechange", function(r) { 15519 return t.ratechange.emit(r); 15520 })("seeked", function(r) { 15521 return t.seeked.emit(r); 15522 })("seeking", function(r) { 15523 return t.seeking.emit(r); 15524 })("stalled", function(r) { 15525 return t.stalled.emit(r); 15526 })("suspend", function(r) { 15527 return t.suspend.emit(r); 15528 })("timeupdate", function(r) { 15529 return t.timeupdate.emit(r); 15530 })("volumechange", function(r) { 15531 return t.volumechange.emit(r); 15532 })("waiting", function(r) { 15533 return t.waiting.emit(r); 15534 })("stream-adstart", function(r) { 15535 return t.streamAdStart.emit(r); 15536 })("stream-adend", function(r) { 15537 return t.streamAdEnd.emit(r); 15538 })("stream-adtimeout", function(r) { 15539 return t.streamAdTimeout.emit(r); 15540 }), te()), i & 2 && Qe("ad-url", t.adUrl)("src", t.src)("autoplay", t.autoplay)("controls", t.controls)("default-text-track", t.defaultTextTrack)("loop", t.loop)("preload", t.preload)("height", t.height)("width", t.width)("poster", t.poster)("primary-color", t.primaryColor)("muted", t.muted); 15541 }, 15542 encapsulation: 2, 15543 changeDetection: 1 15544 }), e; 15545 })(), Kv = (() => { 15546 class e {} 15547 return e.ɵfac = function(i) { 15548 return new (i || e)(); 15549 }, e.ɵmod = zn({ type: e }), e.ɵinj = Ln({ 15550 providers: [{ 15551 provide: qd, 15552 useFactory: f2 15553 }], 15554 imports: [[]] 15555 }), e; 15556 })(); 15557 })))(); 15558} 15559function GI(e) { 15560 return e !== null && typeof e == "object" && "constructor" in e && e.constructor === Object; 15561} 15562function Xv(e, i) { 15563 e === void 0 && (e = {}), i === void 0 && (i = {}); 15564 let t = [ 15565 "__proto__", 15566 "constructor", 15567 "prototype" 15568 ]; 15569 Object.keys(i).filter((r) => t.indexOf(r) < 0).forEach((r) => { 15570 typeof e[r] > "u" ? e[r] = i[r] : GI(i[r]) && GI(e[r]) && Object.keys(i[r]).length > 0 && Xv(e[r], i[r]); 15571 }); 15572} 15573function Ft() { 15574 let e = typeof document < "u" ? document : {}; 15575 return Xv(e, eS), e; 15576} 15577function vt() { 15578 let e = typeof window < "u" ? window : {}; 15579 return Xv(e, QI), e; 15580} 15581function Gs(e) { 15582 return e === void 0 && (e = ""), e.trim().split(" ").filter((i) => !!i.trim()); 15583} 15584function g2(e) { 15585 let i = e;
15586 Object.keys(i).forEach((t) => { 15587 try { 15588 i[t] = null; 15589 } catch {} 15590 try { 15591 delete i[t]; 15592 } catch {} 15593 }); 15594} 15595function Ca(e, i) { 15596 return i === void 0 && (i = 0), setTimeout(e, i); 15597} 15598function qi() { 15599 return Date.now(); 15600} 15601function v2(e) { 15602 let i = vt(), t; 15603 return i.getComputedStyle && (t = i.getComputedStyle(e, null)), !t && e.currentStyle && (t = e.currentStyle), t || (t = e.style), t; 15604} 15605function Jv(e, i) { 15606 i === void 0 && (i = "x"); 15607 let t = vt(), r, s, n, a = v2(e); 15608 return t.WebKitCSSMatrix ? (s = a.transform || a.webkitTransform, s.split(",").length > 6 && (s = s.split(", ").map((o) => o.replace(",", ".")).join(", ")), n = new t.WebKitCSSMatrix(s === "none" ? "" : s)) : (n = a.MozTransform || a.OTransform || a.MsTransform || a.msTransform || a.transform || a.getPropertyValue("transform").replace("translate(", "matrix(1, 0, 0, 1,"), r = n.toString().split(",")), i === "x" && (t.WebKitCSSMatrix ? s = n.m41 : r.length === 16 ? s = parseFloat(r[12]) : s = parseFloat(r[4])), i === "y" && (t.WebKitCSSMatrix ? s = n.m42 : r.length === 16 ? s = parseFloat(r[13]) : s = parseFloat(r[5])), s || 0; 15609} 15610function Jo(e) { 15611 return typeof e == "object" && e !== null && e.constructor && Object.prototype.toString.call(e).slice(8, -1) === "Object"; 15612} 15613function S2(e) { 15614 return typeof window < "u" && typeof window.HTMLElement < "u" ? e instanceof HTMLElement : e && (e.nodeType === 1 || e.nodeType === 11); 15615} 15616function Ri() { 15617 let e = Object(arguments.length <= 0 ? void 0 : arguments[0]), i = [ 15618 "__proto__", 15619 "constructor", 15620 "prototype" 15621 ]; 15622 for (let t = 1; t < arguments.length; t += 1) { 15623 let r = t < 0 || arguments.length <= t ? void 0 : arguments[t]; 15624 if (r != null && !S2(r)) { 15625 let s = Object.keys(Object(r)).filter((n) => i.indexOf(n) < 0); 15626 for (let n = 0, a = s.length; n < a; n += 1) { 15627 let o = s[n], l = Object.getOwnPropertyDescriptor(r, o); 15628 l !== void 0 && l.enumerable && (Jo(e[o]) && Jo(r[o]) ? r[o].__swiper__ ? e[o] = r[o] : Ri(e[o], r[o]) : !Jo(e[o]) && Jo(r[o]) ? (e[o] = {}, r[o].__swiper__ ? e[o] = r[o] : Ri(e[o], r[o])) : e[o] = r[o]); 15629 } 15630 } 15631 } 15632 return e; 15633} 15634function Qo(e, i, t) { 15635 e.style.setProperty(i, t); 15636} 15637function VI(e) { 15638 let { swiper: i, targetPosition: t, side: r } = e, s = vt(), n = -i.translate, a = null, o, l = i.params.speed; 15639 i.wrapperEl.style.scrollSnapType = "none", s.cancelAnimationFrame(i.cssModeFrameID); 15640 let c = t > n ? "next" : "prev", d = (h, g) => c === "next" && h >= g || c === "prev" && h <= g, u = () => { 15641 o = (/* @__PURE__ */ new Date()).getTime(), a === null && (a = o); 15642 let h = Math.max(Math.min((o - a) / l, 1), 0), g = .5 - Math.cos(h * Math.PI) / 2, p = n + g * (t - n); 15643 if (d(p, t) && (p = t), i.wrapperEl.scrollTo({ [r]: p }), d(p, t)) { 15644 i.wrapperEl.style.overflow = "hidden", i.wrapperEl.style.scrollSnapType = "", setTimeout(() => { 15645 i.wrapperEl.style.overflow = "", i.wrapperEl.scrollTo({ [r]: p }); 15646 }), s.cancelAnimationFrame(i.cssModeFrameID); 15647 return; 15648 } 15649 i.cssModeFrameID = s.requestAnimationFrame(u); 15650 }; 15651 u(); 15652} 15653function kn(e) { 15654 return e.querySelector(".swiper-slide-transform") || e.shadowRoot && e.shadowRoot.querySelector(".swiper-slide-transform") || e; 15655} 15656function Qt(e, i) { 15657 i === void 0 && (i = ""); 15658 let t = vt(), r = [...e.children]; 15659 return t.HTMLSlotElement && e instanceof HTMLSlotElement && r.push(...e.assignedElements()), i ? r.filter((s) => s.matches(i)) : r; 15660} 15661function b2(e, i) { 15662 let t = [i]; 15663 for (; t.length > 0;) { 15664 let r = t.shift(); 15665 if (e === r) return !0; 15666 t.push(...r.children, ...r.shadowRoot ? r.shadowRoot.children : [], ...r.assignedElements ? r.assignedElements() : []); 15667 } 15668} 15669function y2(e, i) { 15670 let t = vt(), r = i.contains(e); 15671 return !r && t.HTMLSlotElement && i instanceof HTMLSlotElement && (r = [...i.assignedElements()].includes(e), r || (r = b2(e, i))), r; 15672} 15673function Xd(e) { 15674 try { 15675 console.warn(e); 15676 return; 15677 } catch {} 15678} 15679function Li(e, i) { 15680 i === void 0 && (i = []); 15681 let t = document.createElement(e); 15682 return t.classList.add(...Array.isArray(i) ? i : Gs(i)), t; 15683} 15684function Jd(e) { 15685 let i = vt(), t = Ft(), r = e.getBoundingClientRect(), s = t.body, n = e.clientTop || s.clientTop || 0, a = e.clientLeft || s.clientLeft || 0, o = e === i ? i.scrollY : e.scrollTop, l = e === i ? i.scrollX : e.scrollLeft; 15686 return { 15687 top: r.top + o - n, 15688 left: r.left + l - a 15689 }; 15690} 15691function w2(e, i) { 15692 let t = []; 15693 for (; e.previousElementSibling;) { 15694 let r = e.previousElementSibling; 15695 i ? r.matches(i) && t.push(r) : t.push(r), e = r; 15696 } 15697 return t; 15698} 15699function E2(e, i) { 15700 let t = []; 15701 for (; e.nextElementSibling;) { 15702 let r = e.nextElementSibling; 15703 i ? r.matches(i) && t.push(r) : t.push(r), e = r; 15704 } 15705 return t; 15706} 15707function Vs(e, i) { 15708 return vt().getComputedStyle(e, null).getPropertyValue(i); 15709} 15710function Zo(e) { 15711 let i = e, t; 15712 if (i) { 15713 for (t = 0; (i = i.previousSibling) !== null;) i.nodeType === 1 && (t += 1); 15714 return t; 15715 } 15716} 15717function xn(e, i) { 15718 let t = [], r = e.parentElement; 15719 for (; r;) i ? r.matches(i) && t.push(r) : t.push(r), r = r.parentElement; 15720 return t; 15721} 15722function el(e, i) { 15723 function t(r) { 15724 r.target === e && (i.call(e, r), e.removeEventListener("transitionend", t)); 15725 } 15726 i && e.addEventListener("transitionend", t); 15727} 15728function Qv(e, i, t) { 15729 let r = vt(); 15730 return t ? e[i === "width" ? "offsetWidth" : "offsetHeight"] + parseFloat(r.getComputedStyle(e, null).getPropertyValue(i === "width" ? "margin-right" : "margin-top")) + parseFloat(r.getComputedStyle(e, null).getPropertyValue(i === "width" ? "margin-left" : "margin-bottom")) : e.offsetWidth; 15731} 15732function Be(e) { 15733 return (Array.isArray(e) ? e : [e]).filter((i) => !!i); 15734} 15735function Qd(e) { 15736 return (i) => Math.abs(i) > 0 && e.browser && e.browser.need3dFix && Math.abs(i) % 90 === 0 ? i + .001 : i; 15737} 15738function Rr(e, i) { 15739 i === void 0 && (i = ""), typeof trustedTypes < "u" ? e.innerHTML = trustedTypes.createPolicy("html", { createHTML: (t) => t }).createHTML(i) : e.innerHTML = i; 15740} 15741function C2(e) { 15742 let { swiper: i, extendParams: t, on: r, emit: s } = e; 15743 t({ virtual: { 15744 enabled: !1, 15745 slides: [], 15746 cache: !0, 15747 renderSlide: null, 15748 renderExternal: null, 15749 renderExternalUpdate: !0, 15750 addSlidesBefore: 0, 15751 addSlidesAfter: 0 15752 } }); 15753 let n, a = Ft(); 15754 i.virtual = { 15755 cache: {}, 15756 from: void 0, 15757 to: void 0, 15758 slides: [], 15759 offset: 0, 15760 slidesGrid: [] 15761 }; 15762 let o = a.createElement("div"); 15763 function l(p, m) { 15764 let S = i.params.virtual; 15765 if (S.cache && i.virtual.cache[m]) return i.virtual.cache[m]; 15766 let b; 15767 return S.renderSlide ? (b = S.renderSlide.call(i, p, m), typeof b == "string" && (Rr(o, b), b = o.children[0])) : i.isElement ? b = Li("swiper-slide") : b = Li("div", i.params.slideClass), b.setAttribute("data-swiper-slide-index", m), S.renderSlide || Rr(b, p), S.cache && (i.virtual.cache[m] = b), b; 15768 } 15769 function c(p, m, S) { 15770 let { slidesPerView: b, slidesPerGroup: v, centeredSlides: y, loop: w, initialSlide: T } = i.params; 15771 if (m && !w && T > 0) return; 15772 let { addSlidesBefore: O, addSlidesAfter: _ } = i.params.virtual, { from: z, to: V, slides: x, slidesGrid: $, offset: I } = i.virtual; 15773 i.params.cssMode || i.updateActiveIndex(); 15774 let D = typeof S > "u" ? i.activeIndex || 0 : S, H; 15775 i.rtlTranslate ? H = "right" : H = i.isHorizontal() ? "left" : "top"; 15776 let F, K; 15777 y ? (F = Math.floor(b / 2) + v + _, K = Math.floor(b / 2) + v + O) : (F = b + (v - 1) + _, K = (w ? b : v) + O); 15778 let B = D - K, L = D + F; 15779 w || (B = Math.max(B, 0), L = Math.min(L, x.length - 1)); 15780 let X = (i.slidesGrid[B] || 0) - (i.slidesGrid[0] || 0); 15781 w && D >= K ? (B -= K, y || (X += i.slidesGrid[0])) : w && D < K && (B = -K, y && (X += i.slidesGrid[0])), Object.assign(i.virtual, { 15782 from: B,
vendor: 6,329 bytes, lines 15783-15940
15783 to: L, 15784 offset: X, 15785 slidesGrid: i.slidesGrid, 15786 slidesBefore: K, 15787 slidesAfter: F 15788 }); 15789 function Ve() { 15790 i.updateSlides(), i.updateProgress(), i.updateSlidesClasses(), s("virtualUpdate"); 15791 } 15792 if (z === B && V === L && !p) { 15793 i.slidesGrid !== $ && X !== I && i.slides.forEach((Y) => { 15794 Y.style[H] = `${X - Math.abs(i.cssOverflowAdjustment())}px`; 15795 }), i.updateProgress(), s("virtualUpdate"); 15796 return; 15797 } 15798 if (i.params.virtual.renderExternal) { 15799 i.params.virtual.renderExternal.call(i, { 15800 offset: X, 15801 from: B, 15802 to: L, 15803 slides: (function() { 15804 let Y = []; 15805 for (let re = B; re <= L; re += 1) Y.push(x[re]); 15806 return Y; 15807 })() 15808 }), i.params.virtual.renderExternalUpdate ? Ve() : s("virtualUpdate"); 15809 return; 15810 } 15811 let at = [], Ct = [], oi = (Y) => { 15812 let re = Y; 15813 return Y < 0 ? re = x.length + Y : re >= x.length && (re = re - x.length), re; 15814 }; 15815 if (p) i.slides.filter((Y) => Y.matches(`.${i.params.slideClass}, swiper-slide`)).forEach((Y) => { 15816 Y.remove(); 15817 }); 15818 else for (let Y = z; Y <= V; Y += 1) if (Y < B || Y > L) { 15819 let re = oi(Y); 15820 i.slides.filter((Me) => Me.matches(`.${i.params.slideClass}[data-swiper-slide-index="${re}"], swiper-slide[data-swiper-slide-index="${re}"]`)).forEach((Me) => { 15821 Me.remove(); 15822 }); 15823 } 15824 let Ii = w ? -x.length : 0, se = w ? x.length * 2 : x.length; 15825 for (let Y = Ii; Y < se; Y += 1) if (Y >= B && Y <= L) { 15826 let re = oi(Y); 15827 typeof V > "u" || p ? Ct.push(re) : (Y > V && Ct.push(re), Y < z && at.push(re)); 15828 } 15829 if (Ct.forEach((Y) => { 15830 i.slidesEl.append(l(x[Y], Y)); 15831 }), w) for (let Y = at.length - 1; Y >= 0; Y -= 1) { 15832 let re = at[Y]; 15833 i.slidesEl.prepend(l(x[re], re)); 15834 } 15835 else at.sort((Y, re) => re - Y), at.forEach((Y) => { 15836 i.slidesEl.prepend(l(x[Y], Y)); 15837 }); 15838 Qt(i.slidesEl, ".swiper-slide, swiper-slide").forEach((Y) => { 15839 Y.style[H] = `${X - Math.abs(i.cssOverflowAdjustment())}px`; 15840 }), Ve(); 15841 } 15842 function d(p) { 15843 if (typeof p == "object" && "length" in p) for (let m = 0; m < p.length; m += 1) p[m] && i.virtual.slides.push(p[m]); 15844 else i.virtual.slides.push(p); 15845 c(!0); 15846 } 15847 function u(p) { 15848 let m = i.activeIndex, S = m + 1, b = 1; 15849 if (Array.isArray(p)) { 15850 for (let v = 0; v < p.length; v += 1) p[v] && i.virtual.slides.unshift(p[v]); 15851 S = m + p.length, b = p.length; 15852 } else i.virtual.slides.unshift(p); 15853 if (i.params.virtual.cache) { 15854 let v = i.virtual.cache, y = {}; 15855 Object.keys(v).forEach((w) => { 15856 let T = v[w], O = T.getAttribute("data-swiper-slide-index"); 15857 O && T.setAttribute("data-swiper-slide-index", parseInt(O, 10) + b), y[parseInt(w, 10) + b] = T; 15858 }), i.virtual.cache = y; 15859 } 15860 c(!0), i.slideTo(S, 0); 15861 } 15862 function h(p) { 15863 if (typeof p > "u" || p === null) return; 15864 let m = i.activeIndex; 15865 if (Array.isArray(p)) for (let S = p.length - 1; S >= 0; S -= 1) i.params.virtual.cache && (delete i.virtual.cache[p[S]], Object.keys(i.virtual.cache).forEach((b) => { 15866 b > p && (i.virtual.cache[b - 1] = i.virtual.cache[b], i.virtual.cache[b - 1].setAttribute("data-swiper-slide-index", b - 1), delete i.virtual.cache[b]); 15867 })), i.virtual.slides.splice(p[S], 1), p[S] < m && (m -= 1), m = Math.max(m, 0); 15868 else i.params.virtual.cache && (delete i.virtual.cache[p], Object.keys(i.virtual.cache).forEach((S) => { 15869 S > p && (i.virtual.cache[S - 1] = i.virtual.cache[S], i.virtual.cache[S - 1].setAttribute("data-swiper-slide-index", S - 1), delete i.virtual.cache[S]); 15870 })), i.virtual.slides.splice(p, 1), p < m && (m -= 1), m = Math.max(m, 0); 15871 c(!0), i.slideTo(m, 0); 15872 } 15873 function g() { 15874 i.virtual.slides = [], i.params.virtual.cache && (i.virtual.cache = {}), c(!0), i.slideTo(0, 0); 15875 } 15876 r("beforeInit", () => { 15877 if (!i.params.virtual.enabled) return; 15878 let p; 15879 if (typeof i.passedParams.virtual.slides > "u") { 15880 let m = [...i.slidesEl.children].filter((S) => S.matches(`.${i.params.slideClass}, swiper-slide`)); 15881 m && m.length && (i.virtual.slides = [...m], p = !0, m.forEach((S, b) => { 15882 S.setAttribute("data-swiper-slide-index", b), i.virtual.cache[b] = S, S.remove(); 15883 })); 15884 } 15885 p || (i.virtual.slides = i.params.virtual.slides), i.classNames.push(`${i.params.containerModifierClass}virtual`), i.params.watchSlidesProgress = !0, i.originalParams.watchSlidesProgress = !0, c(!1, !0); 15886 }), r("setTranslate", () => { 15887 i.params.virtual.enabled && (i.params.cssMode && !i._immediateVirtual ? (clearTimeout(n), n = setTimeout(() => { 15888 c(); 15889 }, 100)) : c()); 15890 }), r("init update resize", () => { 15891 i.params.virtual.enabled && i.params.cssMode && Qo(i.wrapperEl, "--swiper-virtual-size", `${i.virtualSize}px`); 15892 }), Object.assign(i.virtual, { 15893 appendSlide: d, 15894 prependSlide: u, 15895 removeSlide: h, 15896 removeAllSlides: g, 15897 update: c 15898 }); 15899} 15900function Zv(e, i, t, r) { 15901 return e.params.createElements && Object.keys(r).forEach((s) => { 15902 if (!t[s] && t.auto === !0) { 15903 let n = Qt(e.el, `.${r[s]}`)[0]; 15904 n || (n = Li("div", r[s]), n.className = r[s], e.el.append(n)), t[s] = n, i[s] = n; 15905 } 15906 }), t; 15907} 15908function HI(e) { 15909 let { swiper: i, extendParams: t, on: r, emit: s } = e; 15910 t({ navigation: { 15911 nextEl: null, 15912 prevEl: null, 15913 hideOnClick: !1, 15914 disabledClass: "swiper-button-disabled", 15915 hiddenClass: "swiper-button-hidden", 15916 lockClass: "swiper-button-lock", 15917 navigationDisabledClass: "swiper-navigation-disabled" 15918 } }), i.navigation = { 15919 nextEl: null, 15920 prevEl: null 15921 }; 15922 function n(p) { 15923 let m; 15924 return p && typeof p == "string" && i.isElement && (m = i.el.querySelector(p) || i.hostEl.querySelector(p), m) ? m : (p && (typeof p == "string" && (m = [...document.querySelectorAll(p)]), i.params.uniqueNavElements && typeof p == "string" && m && m.length > 1 && i.el.querySelectorAll(p).length === 1 ? m = i.el.querySelector(p) : m && m.length === 1 && (m = m[0])), p && !m ? p : m); 15925 } 15926 function a(p, m) { 15927 let S = i.params.navigation; 15928 p = Be(p), p.forEach((b) => { 15929 b && (b.classList[m ? "add" : "remove"](...S.disabledClass.split(" ")), b.tagName === "BUTTON" && (b.disabled = m), i.params.watchOverflow && i.enabled && b.classList[i.isLocked ? "add" : "remove"](S.lockClass)); 15930 }); 15931 } 15932 function o() { 15933 let { nextEl: p, prevEl: m } = i.navigation; 15934 if (i.params.loop) { 15935 a(m, !1), a(p, !1); 15936 return; 15937 } 15938 a(m, i.isBeginning && !i.params.rewind), a(p, i.isEnd && !i.params.rewind); 15939 } 15940 function l(p) {
15941 p.preventDefault(), (!i.isBeginning || i.params.loop || i.params.rewind) && (i.slidePrev(), s("navigationPrev")); 15942 } 15943 function c(p) { 15944 p.preventDefault(), (!i.isEnd || i.params.loop || i.params.rewind) && (i.slideNext(), s("navigationNext")); 15945 } 15946 function d() { 15947 let p = i.params.navigation; 15948 if (i.params.navigation = Zv(i, i.originalParams.navigation, i.params.navigation, { 15949 nextEl: "swiper-button-next", 15950 prevEl: "swiper-button-prev" 15951 }), !(p.nextEl || p.prevEl)) return; 15952 let m = n(p.nextEl), S = n(p.prevEl); 15953 Object.assign(i.navigation, { 15954 nextEl: m, 15955 prevEl: S 15956 }), m = Be(m), S = Be(S); 15957 let b = (v, y) => { 15958 v && v.addEventListener("click", y === "next" ? c : l), !i.enabled && v && v.classList.add(...p.lockClass.split(" ")); 15959 }; 15960 m.forEach((v) => b(v, "next")), S.forEach((v) => b(v, "prev")); 15961 } 15962 function u() { 15963 let { nextEl: p, prevEl: m } = i.navigation; 15964 p = Be(p), m = Be(m); 15965 let S = (b, v) => { 15966 b.removeEventListener("click", v === "next" ? c : l), b.classList.remove(...i.params.navigation.disabledClass.split(" ")); 15967 }; 15968 p.forEach((b) => S(b, "next")), m.forEach((b) => S(b, "prev")); 15969 } 15970 r("init", () => { 15971 i.params.navigation.enabled === !1 ? g() : (d(), o()); 15972 }), r("toEdge fromEdge lock unlock", () => { 15973 o(); 15974 }), r("destroy", () => { 15975 u(); 15976 }), r("enable disable", () => { 15977 let { nextEl: p, prevEl: m } = i.navigation; 15978 if (p = Be(p), m = Be(m), i.enabled) { 15979 o(); 15980 return; 15981 } 15982 [...p, ...m].filter((S) =>
15982 !!S).forEach((S) => S.classList.add(i.params.navigation.lockClass)); 15983 }), r("click", (p, m) => { 15984 let { nextEl: S, prevEl: b } = i.navigation; 15985 S = Be(S), b = Be(b); 15986 let v = m.target, y = b.includes(v) || S.includes(v); 15987 if (i.isElement && !y) { 15988 let w = m.path || m.composedPath && m.composedPath(); 15989 w && (y = w.find((T) => S.includes(T) || b.includes(T))); 15990 } 15991 if (i.params.navigation.hideOnClick && !y) { 15992 if (i.pagination && i.params.pagination && i.params.pagination.clickable && (i.pagination.el === v || i.pagination.el.contains(v))) return; 15993 let w; 15994 S.length ? w = S[0].classList.contains(i.params.navigation.hiddenClass) : b.length && (w = b[0].classList.contains(i.params.navigation.hiddenClass)), s(w === !0 ? "navigationShow" : "navigationHide"), [...S, ...b].filter((T) => !!T).forEach((T) => T.classList.toggle(i.params.navigation.hiddenClass)); 15995 } 15996 }); 15997 let h = () => { 15998 i.el.classList.remove(...i.params.navigation.navigationDisabledClass.split(" ")), d(), o(); 15999 }, g = () => { 16000 i.el.classList.add(...i.params.navigation.navigationDisabledClass.split(" ")), u(); 16001 }; 16002 Object.assign(i.navigation, { 16003 enable: h, 16004 disable: g, 16005 update: o, 16006 init: d, 16007 destroy: u 16008 }); 16009} 16010function fs(e) { 16011 return e === void 0 && (e = ""), `.${e.trim().replace(/([\.:!+\/()[\]])/g, "\\$1").replace(/ /g, ".")}`; 16012} 16013function UI(e) { 16014 let { swiper: i, extendParams: t, on: r, emit: s } = e, n = "swiper-pagination"; 16015 t({ pagination: { 16016 el: null, 16017 bulletElement: "span", 16018 clickable: !1, 16019 hideOnClick: !1, 16020 renderBullet: null, 16021 renderProgressbar: null, 16022 renderFraction: null, 16023 renderCustom: null, 16024 progressbarOpposite: !1, 16025 type: "bullets", 16026 dynamicBullets: !1, 16027 dynamicMainBullets: 1, 16028 formatFractionCurrent: (v) => v, 16029 formatFractionTotal: (v) => v, 16030 bulletClass: `${n}-bullet`, 16031 bulletActiveClass: `${n}-bullet-active`, 16032 modifierClass: `${n}-`, 16033 currentClass: `${n}-current`, 16034 totalClass: `${n}-total`, 16035 hiddenClass: `${n}-hidden`, 16036 progressbarFillClass: `${n}-progressbar-fill`, 16037 progressbarOppositeClass: `${n}-progressbar-opposite`, 16038 clickableClass: `${n}-clickable`, 16039 lockClass: `${n}-lock`, 16040 horizontalClass: `${n}-horizontal`, 16041 verticalClass: `${n}-vertical`, 16042 paginationDisabledClass: `${n}-disabled` 16043 } }), i.pagination = { 16044 el: null, 16045 bullets: [] 16046 }; 16047 let a, o = 0; 16048 function l() { 16049 return !i.params.pagination.el || !i.pagination.el || Array.isArray(i.pagination.el) && i.pagination.el.length === 0; 16050 } 16051 function c(v, y) { 16052 let { bulletActiveClass: w } = i.params.pagination; 16053 v && (v = v[`${y === "prev" ? "previous" : "next"}ElementSibling`], v && (v.classList.add(`${w}-${y}`), v = v[`${y === "prev" ? "previous" : "next"}ElementSibling`], v && v.classList.add(`${w}-${y}-${y}`))); 16054 } 16055 function d(v, y, w) { 16056 if (v = v % w, y = y % w, y === v + 1) return "next"; 16057 if (y === v - 1) return "previous"; 16058 } 16059 function u(v) { 16060 let y = v.target.closest(fs(i.params.pagination.bulletClass)); 16061 if (!y) return; 16062 v.preventDefault(); 16063 let w = Zo(y) * i.params.slidesPerGroup; 16064 if (i.params.loop) { 16065 if (i.realIndex === w) return; 16066 let T = d(i.realIndex, w, i.slides.length); 16067 T === "next" ? i.slideNext() : T === "previous" ? i.slidePrev() : i.slideToLoop(w); 16068 } else i.slideTo(w); 16069 } 16070 function h() { 16071 let v = i.rtl, y = i.params.pagination; 16072 if (l()) return; 16073 let w = i.pagination.el; 16074 w = Be(w); 16075 let T, O, _ = i.virtual && i.params.virtual.enabled ? i.virtual.slides.length : i.slides.length, z = i.params.loop ? Math.ceil(_ / i.params.slidesPerGroup) : i.snapGrid.length; 16076 if (i.params.loop ? (O = i.previousRealIndex || 0, T = i.params.slidesPerGroup > 1 ? Math.floor(i.realIndex / i.params.slidesPerGroup) : i.realIndex) : typeof i.snapIndex < "u" ? (T = i.snapIndex, O = i.previousSnapIndex) : (O = i.previousIndex || 0, T = i.activeIndex || 0), y.type === "bullets" && i.pagination.bullets && i.pagination.bullets.length > 0) { 16077 let V = i.pagination.bullets, x, $, I; 16078 if (y.dynamicBullets && (a = Qv(V[0], i.isHorizontal() ? "width" : "height", !0), w.forEach((D) => { 16079 D.style[i.isHorizontal() ? "width" : "height"] = `${a * (y.dynamicMainBullets + 4)}px`; 16080 }), y.dynamicMainBullets > 1 && O !== void 0 && (o += T - (O || 0), o > y.dynamicMainBullets - 1 ? o = y.dynamicMainBullets - 1 : o < 0 && (o = 0)), x = Math.max(T - o, 0), $ = x + (Math.min(V.length, y.dynamicMainBullets) - 1), I = ($ + x) / 2), V.forEac
16080h((D) => { 16081 let H = [...[ 16082 "", 16083 "-next", 16084 "-next-next", 16085 "-prev", 16086 "-prev-prev", 16087 "-main" 16088 ].map((F) => `${y.bulletActiveClass}${F}`)].map((F) => typeof F == "string" && F.includes(" ") ? F.split(" ") : F).flat(); 16089 D.classList.remove(...H); 16090 }), w.length > 1) V.forEach((D) => { 16091 let H = Zo(D); 16092 H === T ? D.classList.add(...y.bulletActiveClass.split(" ")) : i.isElement && D.setAttribute("part", "bullet"), y.dynamicBullets && (H >= x && H <= $ && D.classList.add(...`${y.bulletActiveClass}-main`.split(" ")), H === x && c(D, "prev"), H === $ && c(D, "next")); 16093 }); 16094 else { 16095 let D = V[T]; 16096 if (D && D.classList.add(...y.bulletActiveClass.split(" ")), i.isElement && V.forEach((H, F) => { 16097 H.setAttribute("part", F === T ? "bullet-active" : "bullet"); 16098 }), y.dynamicBullets) { 16099 let H = V[x], F = V[$]; 16100 for (let K = x; K <= $; K += 1) V[K] && V[K].classList.add(...`${y.bulletActiveClass}-main`.split(" ")); 16101 c(H, "prev"), c(F, "next"); 16102 } 16103 } 16104 if (y.dynamicBullets) { 16105 let D = Math.min(V.length, y.dynamicMainBullets + 4), H = (a * D - a) / 2 - I * a, F = v ? "right" : "left"; 16106 V.forEach((K) => { 16107 K.style[i.isHorizontal() ? F : "top"] = `${H}px`; 16108 }); 16109 } 16110 } 16111 w.forEach((V, x) => { 16112 if (y.type === "fraction" && (V.querySelectorAll(fs(y.currentClass)).forEach(($) => { 16113 $.textContent = y.formatFractionCurrent(T + 1); 16114 }), V.querySelectorAll(fs(y.totalClass)).forEach(($) => { 16115 $.textContent = y.formatFractionTotal(z); 16116 })), y.type === "progressbar") { 16117 let $; 16118 y.progressbarOpposite ? $ = i.isHorizontal() ? "vertical" : "horizontal" : $ = i.isHorizontal() ? "horizontal" : "vertical"; 16119 let I = (T + 1) / z, D = 1, H = 1; 16120 $ === "horizontal" ? D = I : H = I, V.querySelectorAll(fs(y.progressbarFillClass)).forEach((F) => { 16121 F.style.transform = `translate3d(0,0,0) scaleX(${D}) scaleY(${H})`, F.style.transitionDuration = `${i.params.speed}ms`; 16122 }); 16123 } 16124 y.type === "custom" && y.renderCustom ? (Rr(V, y.renderCustom(i, T + 1, z)), x === 0 && s("paginationRender", V)) : (x === 0 && s("paginationRender", V), s("paginationUpdate", V)), i.params.watchOverflow && i.enabled && V.classList[i.isLocked ? "add" : "remove"](y.lockClass); 16125 }); 16126 } 16127 function g() { 16128 let v = i.params.pagination; 16129 if (l()) return; 16130 let y = i.virtual && i.params.virtual.enabled ? i.virtual.slides.length : i.grid && i.params.grid.rows > 1 ? i.slides.length / Math.ceil(i.params.grid.rows) : i.slides.length, w = i.pagination.el; 16131 w = Be(w); 16132 let T = ""; 16133 if (v.type === "bullets") { 16134 let O = i.params.loop ? Math.ceil(y / i.params.slidesPerGroup) : i.snapGrid.length; 16135 i.params.freeMode && i.params.freeMode.enabled && O > y && (O = y); 16136 for (let _ = 0; _ < O; _ += 1) v.renderBullet ? T += v.renderBullet.call(i, _, v.bulletClass) : T += `<${v.bulletElement} ${i.isElement ? "part=\"bullet\"" : ""} class="${v.bulletClass}"></${v.bulletElement}>`; 16137 } 16138 v.type === "fraction" && (v.renderFraction ? T = v.renderFraction.call(i, v.currentClass, v.totalClass) : T = `<span class="${v.currentClass}"></span> / <span class="${v.totalClass}"></span>`), v.type === "progressbar" && (v.renderProgressbar ? T = v.renderProgressbar.call(i, v.progressbarFillClass) : T = `<span class="${v.progressbarFillClass}"></span>`), i.pagination.bullets = [], w.forEach((O) => { 16139 v.type !== "custom" && Rr(O, T || ""), v.type === "bullets" && i.pagination.bullets.push(...O.querySelectorAll(fs(v.bulletClass))); 16140 }), v.type !== "custom" && s("paginationRender", w[0]); 16141 } 16142 function p() { 16143 i.params.pagination = Zv(i, i.originalParams.pagination, i.params.pagination, { el: "swiper-pagination" }); 16144 let v = i.params.pagination; 16145 if (!v.el) return; 16146 let y; 16147 typeof v.el == "string" && i.isElement && (y = i.el.querySelector(v.el)), !y && typeof v.el == "string" && (y = [...document.querySelectorAll(v.el)]), y || (y = v.el), y && y.length !== 0 && (i.params.uniqueNavElements && typeof v.el == "string" && Array.isArray(y) && y.length > 1 && (y = [...i.el.querySelectorAll(v.el)], y.length > 1 && (y = y.find((w) => xn(w, ".swiper")[0] === i.el))), Array.isArray(y) && y.length === 1 && (y = y[
vendor: 22,639 bytes, lines 16147-16605
161470]), Object.assign(i.pagination, { el: y }), y = Be(y), y.forEach((w) => { 16148 v.type === "bullets" && v.clickable && w.classList.add(...(v.clickableClass || "").split(" ")), w.classList.add(v.modifierClass + v.type), w.classList.add(i.isHorizontal() ? v.horizontalClass : v.verticalClass), v.type === "bullets" && v.dynamicBullets && (w.classList.add(`${v.modifierClass}${v.type}-dynamic`), o = 0, v.dynamicMainBullets < 1 && (v.dynamicMainBullets = 1)), v.type === "progressbar" && v.progressbarOpposite && w.classList.add(v.progressbarOppositeClass), v.clickable && w.addEventListener("click", u), i.enabled || w.classList.add(v.lockClass); 16149 })); 16150 } 16151 function m() { 16152 let v = i.params.pagination; 16153 if (l()) return; 16154 let y = i.pagination.el; 16155 y && (y = Be(y), y.forEach((w) => { 16156 w.classList.remove(v.hiddenClass), w.classList.remove(v.modifierClass + v.type), w.classList.remove(i.isHorizontal() ? v.horizontalClass : v.verticalClass), v.clickable && (w.classList.remove(...(v.clickableClass || "").split(" ")), w.removeEventListener("click", u)); 16157 })), i.pagination.bullets && i.pagination.bullets.forEach((w) => w.classList.remove(...v.bulletActiveClass.split(" "))); 16158 } 16159 r("changeDirection", () => { 16160 if (!i.pagination || !i.pagination.el) return; 16161 let v = i.params.pagination, { el: y } = i.pagination; 16162 y = Be(y), y.forEach((w) => { 16163 w.classList.remove(v.horizontalClass, v.verticalClass), w.classList.add(i.isHorizontal() ? v.horizontalClass : v.verticalClass); 16164 }); 16165 }), r("init", () => { 16166 i.params.pagination.enabled === !1 ? b() : (p(), g(), h()); 16167 }), r("activeIndexChange", () => { 16168 typeof i.snapIndex > "u" && h(); 16169 }), r("snapIndexChange", () => { 16170 h(); 16171 }), r("snapGridLengthChange", () => { 16172 g(), h(); 16173 }), r("destroy", () => { 16174 m(); 16175 }), r("enable disable", () => { 16176 let { el: v } = i.pagination; 16177 v && (v = Be(v), v.forEach((y) => y.classList[i.enabled ? "remove" : "add"](i.params.pagination.lockClass))); 16178 }), r("lock unlock", () => { 16179 h(); 16180 }), r("click", (v, y) => { 16181 let w = y.target, T = Be(i.pagination.el); 16182 if (i.params.pagination.el && i.params.pagination.hideOnClick && T && T.length > 0 && !w.classList.contains(i.params.pagination.bulletClass)) { 16183 if (i.navigation && (i.navigation.nextEl && w === i.navigation.nextEl || i.navigation.prevEl && w === i.navigation.prevEl)) return; 16184 let O = T[0].classList.contains(i.params.pagination.hiddenClass); 16185 s(O === !0 ? "paginationShow" : "paginationHide"), T.forEach((_) => _.classList.toggle(i.params.pagination.hiddenClass)); 16186 } 16187 }); 16188 let S = () => { 16189 i.el.classList.remove(i.params.pagination.paginationDisabledClass); 16190 let { el: v } = i.pagination; 16191 v && (v = Be(v), v.forEach((y) => y.classList.remove(i.params.pagination.paginationDisabledClass))), p(), g(), h(); 16192 }, b = () => { 16193 i.el.classList.add(i.params.pagination.paginationDisabledClass); 16194 let { el: v } = i.pagination; 16195 v && (v = Be(v), v.forEach((y) => y.classList.add(i.params.pagination.paginationDisabledClass))), m(); 16196 }; 16197 Object.assign(i.pagination, { 16198 enable: S, 16199 disable: b, 16200 render: g, 16201 update: h, 16202 init: p, 16203 destroy: m 16204 }); 16205} 16206function WI(e) { 16207 let { swiper: i, extendParams: t, on: r, emit: s, params: n } = e; 16208 i.autoplay = { 16209 running: !1, 16210 paused: !1, 16211 timeLeft: 0 16212 }, t({ autoplay: { 16213 enabled: !1, 16214 delay: 3e3, 16215 waitForTransition: !0, 16216 disableOnInteraction: !1, 16217 stopOnLastSlide: !1, 16218 reverseDirection: !1, 16219 pauseOnMouseEnter: !1 16220 } }); 16221 let a, o, l = n && n.autoplay ? n.autoplay.delay : 3e3, c = n && n.autoplay ? n.autoplay.delay : 3e3, d, u = (/* @__PURE__ */ new Date()).getTime(), h, g, p, m, S, b, v; 16222 function y(L) { 16223 !i || i.destroyed || !i.wrapperEl || L.target === i.wrapperEl && (i.wrapperEl.removeEventListener("transitionend", y), !(v || L.detail && L.detail.bySwiperTouchMove) && x()); 16224 } 16225 let w = () => { 16226 if (i.destroyed || !i.autoplay.running) return; 16227 i.autoplay.paused ? h = !0 : h && (c = d, h = !1); 16228 let L = i.autoplay.paused ? d : u + c - (/* @__PURE__ */ new Date()).getTime(); 16229 i.autoplay.timeLeft = L, s("autoplayTimeLeft", L, L / l), o = requestAnimationFrame(() => { 16230 w(); 16231 }); 16232 }, T = () => { 16233 let L; 16234 return i.virtual && i.params.virtual.enabled ? L = i.slides.find((X) => X.classList.contains("swiper-slide-active")) : L = i.slides[i.activeIndex], L ? parseInt(L.getAttribute("data-swiper-autoplay"), 10) : void 0; 16235 }, O = (L) => { 16236 if (i.destroyed || !i.autoplay.running) return; 16237 cancelAnimationFrame(o), w(); 16238 let X = typeof L > "u" ? i.params.autoplay.delay : L; 16239 l = i.params.autoplay.delay, c = i.params.autoplay.delay; 16240 let Ve = T(); 16241 !Number.isNaN(Ve) && Ve > 0 && typeof L > "u" && (X = Ve, l = Ve, c = Ve), d = X; 16242 let at = i.params.speed, Ct = () => { 16243 !i || i.destroyed || (i.params.autoplay.reverseDirection ? !i.isBeginning || i.params.loop || i.params.rewind ? (i.slidePrev(at, !0, !0), s("autoplay")) : i.params.autoplay.stopOnLastSlide || (i.slideTo(i.slides.length - 1, at, !0, !0), s("autoplay")) : !i.isEnd || i.params.loop || i.params.rewind ? (i.slideNext(at, !0, !0), s("autoplay")) : i.params.autoplay.stopOnLastSlide || (i.slideTo(0, at, !0, !0), s("autoplay")), i.params.cssMode && (u = (/* @__PURE__ */ new Date()).getTime(), requestAnimationFrame(() => { 16244 O(); 16245 }))); 16246 }; 16247 return X > 0 ? (clearTimeout(a), a = setTimeout(() => { 16248 Ct(); 16249 }, X)) : requestAnimationFrame(() => { 16250 Ct(); 16251 }), X; 16252 }, _ = () => { 16253 u = (/* @__PURE__ */ new Date()).getTime(), i.autoplay.running = !0, O(), s("autoplayStart"); 16254 }, z = () => { 16255 i.autoplay.running = !1, clearTimeout(a), cancelAnimationFrame(o), s("autoplayStop"); 16256 }, V = (L, X) => { 16257 if (i.destroyed || !i.autoplay.running) return; 16258 clearTimeout(a), L || (b = !0); 16259 let Ve = () => { 16260 s("autoplayPause"), i.params.autoplay.waitForTransition ? i.wrapperEl.addEventListener("transitionend", y) : x(); 16261 }; 16262 if (i.autoplay.paused = !0, X) { 16263 S && (d = i.params.autoplay.delay), S = !1, Ve(); 16264 return; 16265 } 16266 d = (d || i.params.autoplay.delay) - ((/* @__PURE__ */ new Date()).getTime() - u), !(i.isEnd && d < 0 && !i.params.loop) && (d < 0 && (d = 0), Ve()); 16267 }, x = () => { 16268 i.isEnd && d < 0 && !i.params.loop || i.destroyed || !i.autoplay.running || (u = (/* @__PURE__ */ new Date()).getTime(), b ? (b = !1, O(d)) : O(), i.autoplay.paused = !1, s("autoplayResume")); 16269 }, $ = () => { 16270 if (i.destroyed || !i.autoplay.running) return; 16271 let L = Ft(); 16272 L.visibilityState === "hidden" && (b = !0, V(!0)), L.visibilityState === "visible" && x(); 16273 }, I = (L) => { 16274 L.pointerType === "mouse" && (b = !0, v = !0, !(i.animating || i.autoplay.paused) && V(!0)); 16275 }, D = (L) => { 16276 L.pointerType === "mouse" && (v = !1, i.autoplay.paused && x()); 16277 }, H = () => { 16278 i.params.autoplay.pauseOnMouseEnter && (i.el.addEventListener("pointerenter", I), i.el.addEventListener("pointerleave", D)); 16279 }, F = () => { 16280 i.el && typeof i.el != "string" && (i.el.removeEventListener("pointerenter", I), i.el.removeEventListener("pointerleave", D)); 16281 }, K = () => { 16282 Ft().addEventListener("visibilitychange", $); 16283 }, B = () => { 16284 Ft().removeEventListener("visibilitychange", $); 16285 }; 16286 r("init", () => { 16287 i.params.autoplay.enabled && (H(), K(), _()); 16288 }), r("destroy", () => { 16289 F(), B(), i.autoplay.running && z(); 16290 }), r("_freeModeStaticRelease", () => { 16291 (p || b) && x(); 16292 }), r("_freeModeNoMomentumRelease", () => { 16293 i.params.autoplay.disableOnInteraction ? z() : V(!0, !0); 16294 }), r("beforeTransitionStart", (L, X, Ve) => { 16295 i.destroyed || !i.autoplay.running || (Ve || !i.params.autoplay.disableOnInteraction ? V(!0, !0) : z()); 16296 }), r("sliderFirstMove", () => { 16297 if (!(i.destroyed || !i.autoplay.running)) { 16298 if (i.params.autoplay.disableOnInteraction) { 16299 z(); 16300 return; 16301 } 16302 g = !0, p = !1, b = !1, m = setTimeout(() => { 16303 b = !0, p = !0, V(!0); 16304 }, 200); 16305 } 16306 }), r("touchEnd", () => { 16307 if (!(i.destroyed || !i.autoplay.running || !g)) { 16308 if (clearTimeout(m), clearTimeout(a), i.params.autoplay.disableOnInteraction) { 16309 p = !1, g = !1; 16310 return; 16311 } 16312 p && i.params.cssMode && x(), p = !1, g = !1; 16313 } 16314 }), r("slideChange", () => { 16315 i.destroyed || !i.autoplay.running || (S = !0); 16316 }), Object.assign(i.autoplay, { 16317 start: _, 16318 stop: z, 16319 pause: V, 16320 resume: x 16321 }); 16322} 16323function Na(e, i, t) { 16324 let r = `swiper-slide-shadow${t ? `-${t}` : ""}${e ? ` swiper-slide-shadow-${e}` : ""}`, s = kn(i), n = s.querySelector(`.${r.split(" ").join(".")}`); 16325 return n || (n = Li("div", r.split(" ")), s.append(n)), n; 16326} 16327function Ta(e) { 16328 let { effect: i, swiper: t, on: r, setTranslate: s, setTransition: n, overwriteParams: a, perspective: o, recreateShadows: l, getEffectParams: c } = e; 16329 r("beforeInit", () => { 16330 if (t.params.effect !== i) return; 16331 t.classNames.push(`${t.params.containerModifierClass}${i}`), o && o() && t.classNames.push(`${t.params.containerModifierClass}3d`); 16332 let u = a ? a() : {}; 16333 Object.assign(t.params, u), Object.assign(t.originalParams, u); 16334 }), r("setTranslate _virtualUpdated", () => { 16335 t.params.effect === i && s(); 16336 }), r("setTransition", (u, h) => { 16337 t.params.effect === i && n(h); 16338 }), r("transitionEnd", () => { 16339 if (t.params.effect === i && l) { 16340 if (!c || !c().slideShadows) return; 16341 t.slides.forEach((u) => { 16342 u.querySelectorAll(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").forEach((h) => h.remove()); 16343 }), l(); 16344 } 16345 }); 16346 let d; 16347 r("virtualUpdate", () => { 16348 t.params.effect === i && (t.slides.length || (d = !0), requestAnimationFrame(() => { 16349 d && t.slides && t.slides.length && (s(), d = !1); 16350 })); 16351 }); 16352} 16353function tl(e, i) { 16354 let t = kn(i); 16355 return t !== i && (t.style.backfaceVisibility = "hidden", t.style["-webkit-backface-visibility"] = "hidden"), t; 16356} 16357function N2(e) { 16358 let { swiper: i, extendParams: t, on: r } = e; 16359 t({ coverflowEffect: { 16360 rotate: 50, 16361 stretch: 0, 16362 depth: 100, 16363 scale: 1, 16364 modifier: 1, 16365 slideShadows: !0 16366 } }), Ta({ 16367 effect: "coverflow", 16368 swiper: i, 16369 on: r, 16370 setTranslate: () => { 16371 let { width: s, height: n, slides: a, slidesSizesGrid: o } = i, l = i.params.coverflowEffect, c = i.isHorizontal(), d = i.translate, u = c ? -d + s / 2 : -d + n / 2, h = c ? l.rotate : -l.rotate, g = l.depth, p = Qd(i); 16372 for (let m = 0, S = a.length; m < S; m += 1) { 16373 let b = a[m], v = o[m], y = (u - b.swiperSlideOffset - v / 2) / v, w = typeof l.modifier == "function" ? l.modifier(y) : y * l.modifier, T = c ? h * w : 0, O = c ? 0 : h * w, _ = -g * Math.abs(w), z = l.stretch; 16374 typeof z == "string" && z.indexOf("%") !== -1 && (z = parseFloat(l.stretch) / 100 * v); 16375 let V = c ? 0 : z * w, x = c ? z * w : 0, $ = 1 - (1 - l.scale) * Math.abs(w); 16376 Math.abs(x) < .001 && (x = 0), Math.abs(V) < .001 && (V = 0), Math.abs(_) < .001 && (_ = 0), Math.abs(T) < .001 && (T = 0), Math.abs(O) < .001 && (O = 0), Math.abs($) < .001 && ($ = 0); 16377 let I = `translate3d(${x}px,${V}px,${_}px) rotateX(${p(O)}deg) rotateY(${p(T)}deg) scale(${$})`, D = tl(l, b); 16378 if (D.style.transform = I, b.style.zIndex = -Math.abs(Math.round(w)) + 1, l.slideShadows) { 16379 let H = c ? b.querySelector(".swiper-slide-shadow-left") : b.querySelector(".swiper-slide-shadow-top"), F = c ? b.querySelector(".swiper-slide-shadow-right") : b.querySelector(".swiper-slide-shadow-bottom"); 16380 H || (H = Na("coverflow", b, c ? "left" : "top")), F || (F = Na("coverflow", b, c ? "right" : "bottom")), H && (H.style.opacity = w > 0 ? w : 0), F && (F.style.opacity = -w > 0 ? -w : 0); 16381 } 16382 } 16383 }, 16384 setTransition: (s) => { 16385 i.slides.map((n) => kn(n)).forEach((n) => { 16386 n.style.transitionDuration = `${s}ms`, n.querySelectorAll(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").forEach((a) => { 16387 a.style.transitionDuration = `${s}ms`; 16388 }); 16389 }); 16390 }, 16391 perspective: () => !0, 16392 overwriteParams: () => ({ watchSlidesProgress: !0 }) 16393 }); 16394} 16395function T2(e) { 16396 let { swiper: i, extendParams: t, on: r, emit: s } = e, n = Ft(), a = vt(); 16397 i.keyboard = { enabled: !1 }, t({ keyboard: { 16398 enabled: !1, 16399 onlyInViewport: !0, 16400 pageUpDown: !0 16401 } }); 16402 function o(d) { 16403 if (!i.enabled) return; 16404 let { rtlTranslate: u } = i, h = d; 16405 h.originalEvent && (h = h.originalEvent); 16406 let g = h.keyCode || h.charCode, p = i.params.keyboard.pageUpDown, m = p && g === 33, S = p && g === 34, b = g === 37, v = g === 39, y = g === 38, w = g === 40; 16407 if (!i.allowSlideNext && (i.isHorizontal() && v || i.isVertical() && w || S) || !i.allowSlidePrev && (i.isHorizontal() && b || i.isVertical() && y || m)) return !1; 16408 if (!(h.shiftKey || h.altKey || h.ctrlKey || h.metaKey) && !(n.activeElement && (n.activeElement.isContentEditable || n.activeElement.nodeName && (n.activeElement.nodeName.toLowerCase() === "input" || n.activeElement.nodeName.toLowerCase() === "textarea")))) { 16409 if (i.params.keyboard.onlyInViewport && (m || S || b || v || y || w)) { 16410 let T = !1; 16411 if (xn(i.el, `.${i.params.slideClass}, swiper-slide`).length > 0 && xn(i.el, `.${i.params.slideActiveClass}`).length === 0) return; 16412 let O = i.el, _ = O.clientWidth, z = O.clientHeight, V = a.innerWidth, x = a.innerHeight, $ = Jd(O); 16413 u && ($.left -= O.scrollLeft); 16414 let I = [ 16415 [$.left, $.top], 16416 [$.left + _, $.top], 16417 [$.left, $.top + z], 16418 [$.left + _, $.top + z] 16419 ]; 16420 for (let D = 0; D < I.length; D += 1) { 16421 let H = I[D]; 16422 if (H[0] >= 0 && H[0] <= V && H[1] >= 0 && H[1] <= x) { 16423 if (H[0] === 0 && H[1] === 0) continue; 16424 T = !0; 16425 } 16426 } 16427 if (!T) return; 16428 } 16429 i.isHorizontal() ? ((m || S || b || v) && (h.preventDefault ? h.preventDefault() : h.returnValue = !1), ((S || v) && !u || (m || b) && u) && i.slideNext(), ((m || b) && !u || (S || v) && u) && i.slidePrev()) : ((m || S || y || w) && (h.preventDefault ? h.preventDefault() : h.returnValue = !1), (S || w) && i.slideNext(), (m || y) && i.slidePrev()), s("keyPress", g); 16430 } 16431 } 16432 function l() { 16433 i.keyboard.enabled || (n.addEventListener("keydown", o), i.keyboard.enabled = !0); 16434 } 16435 function c() { 16436 i.keyboard.enabled && (n.removeEventListener("keydown", o), i.keyboard.enabled = !1); 16437 } 16438 r("init", () => { 16439 i.params.keyboard.enabled && l(); 16440 }), r("destroy", () => { 16441 i.keyboard.enabled && c(); 16442 }), Object.assign(i.keyboard, { 16443 enable: l, 16444 disable: c 16445 }); 16446} 16447function k2(e) { 16448 let { swiper: i, extendParams: t, on: r, emit: s } = e, n = vt(); 16449 t({ mousewheel: { 16450 enabled: !1, 16451 releaseOnEdges: !1, 16452 invert: !1, 16453 forceToAxis: !1, 16454 sensitivity: 1, 16455 eventsTarget: "container", 16456 thresholdDelta: null, 16457 thresholdTime: null, 16458 noMousewheelClass: "swiper-no-mousewheel" 16459 } }), i.mousewheel = { enabled: !1 }; 16460 let a, o = qi(), l, c = []; 16461 function d(y) { 16462 let w = 0, T = 0, O = 0, _ = 0; 16463 return "detail" in y && (T = y.detail), "wheelDelta" in y && (T = -y.wheelDelta / 120), "wheelDeltaY" in y && (T = -y.wheelDeltaY / 120), "wheelDeltaX" in y && (w = -y.wheelDeltaX / 120), "axis" in y && y.axis === y.HORIZONTAL_AXIS && (w = T, T = 0), O = w * 10, _ = T * 10, "deltaY" in y && (_ = y.deltaY), "deltaX" in y && (O = y.deltaX), y.shiftKey && !O && (O = _, _ = 0), (O || _) && y.deltaMode && (y.deltaMode === 1 ? (O *= 40, _ *= 40) : (O *= 800, _ *= 800)), O && !w && (w = O < 1 ? -1 : 1), _ && !T && (T = _ < 1 ? -1 : 1), { 16464 spinX: w, 16465 spinY: T, 16466 pixelX: O, 16467 pixelY: _ 16468 }; 16469 } 16470 function u() { 16471 i.enabled && (i.mouseEntered = !0); 16472 } 16473 function h() { 16474 i.enabled && (i.mouseEntered = !1); 16475 } 16476 function g(y) { 16477 return i.params.mousewheel.thresholdDelta && y.delta < i.params.mousewheel.thresholdDelta || i.params.mousewheel.thresholdTime && qi() - o < i.params.mousewheel.thresholdTime ? !1 : y.delta >= 6 && qi() - o < 60 ? !0 : (y.direction < 0 ? (!i.isEnd || i.params.loop) && !i.animating && (i.slideNext(), s("scroll", y.raw)) : (!i.isBeginning || i.params.loop) && !i.animating && (i.slidePrev(), s("scroll", y.raw)), o = new n.Date().getTime(), !1); 16478 } 16479 function p(y) { 16480 let w = i.params.mousewheel; 16481 if (y.direction < 0) { 16482 if (i.isEnd && !i.params.loop && w.releaseOnEdges) return !0; 16483 } else if (i.isBeginning && !i.params.loop && w.releaseOnEdges) return !0; 16484 return !1; 16485 } 16486 function m(y) { 16487 let w = y, T = !0; 16488 if (!i.enabled || y.target.closest(`.${i.params.mousewheel.noMousewheelClass}`)) return; 16489 let O = i.params.mousewheel; 16490 i.params.cssMode && w.preventDefault(); 16491 let _ = i.el; 16492 i.params.mousewheel.eventsTarget !== "container" && (_ = document.querySelector(i.params.mousewheel.eventsTarget)); 16493 let z = _ && _.contains(w.target); 16494 if (!i.mouseEntered && !z && !O.releaseOnEdges) return !0; 16495 w.originalEvent && (w = w.originalEvent); 16496 let V = 0, x = i.rtlTranslate ? -1 : 1, $ = d(w); 16497 if (O.forceToAxis) if (i.isHorizontal()) if (Math.abs($.pixelX) > Math.abs($.pixelY)) V = -$.pixelX * x; 16498 else return !0; 16499 else if (Math.abs($.pixelY) > Math.abs($.pixelX)) V = -$.pixelY; 16500 else return !0; 16501 else V = Math.abs($.pixelX) > Math.abs($.pixelY) ? -$.pixelX * x : -$.pixelY; 16502 if (V === 0) return !0; 16503 O.invert && (V = -V); 16504 let I = i.getTranslate() + V * O.sensitivity; 16505 if (I >= i.minTranslate() && (I = i.minTranslate()), I <= i.maxTranslate() && (I = i.maxTranslate()), T = i.params.loop ? !0 : !(I === i.minTranslate() || I === i.maxTranslate()), T && i.params.nested && w.stopPropagation(), !i.params.freeMode || !i.params.freeMode.enabled) { 16506 let D = { 16507 time: qi(), 16508 delta: Math.abs(V), 16509 direction: Math.sign(V), 16510 raw: y 16511 }; 16512 c.length >= 2 && c.shift(); 16513 let H = c.length ? c[c.length - 1] : void 0; 16514 if (c.push(D), H ? (D.direction !== H.direction || D.delta > H.delta || D.time > H.time + 150) && g(D) : g(D), p(D)) return !0; 16515 } else { 16516 let D = { 16517 time: qi(), 16518 delta: Math.abs(V), 16519 direction: Math.sign(V) 16520 }, H = l && D.time < l.time + 500 && D.delta <= l.delta && D.direction === l.direction; 16521 if (!H) { 16522 l = void 0; 16523 let F = i.getTranslate() + V * O.sensitivity, K = i.isBeginning, B = i.isEnd; 16524 if (F >= i.minTranslate() && (F = i.minTranslate()), F <= i.maxTranslate() && (F = i.maxTranslate()), i.setTransition(0), i.setTranslate(F), i.updateProgress(), i.updateActiveIndex(), i.updateSlidesClasses(), (!K && i.isBeginning || !B && i.isEnd) && i.updateSlidesClasses(), i.params.loop && i.loopFix({ 16525 direction: D.direction < 0 ? "next" : "prev", 16526 byMousewheel: !0 16527 }), i.params.freeMode.sticky) { 16528 clearTimeout(a), a = void 0, c.length >= 15 && c.shift(); 16529 let L = c.length ? c[c.length - 1] : void 0, X = c[0]; 16530 if (c.push(D), L && (D.delta > L.delta || D.direction !== L.direction)) c.splice(0); 16531 else if (c.length >= 15 && D.time - X.time < 500 && X.delta - D.delta >= 1 && D.delta <= 6) { 16532 let Ve = V > 0 ? .8 : .2; 16533 l = D, c.splice(0), a = Ca(() => { 16534 i.destroyed || !i.params || i.slideToClosest(i.params.speed, !0, void 0, Ve); 16535 }, 0); 16536 } 16537 a || (a = Ca(() => { 16538 i.destroyed || !i.params || (l = D, c.splice(0), i.slideToClosest(i.params.speed, !0, void 0, .5)); 16539 }, 500)); 16540 } 16541 if (H || s("scroll", w), i.params.autoplay && i.params.autoplay.disableOnInteraction && i.autoplay.stop(), O.releaseOnEdges && (F === i.minTranslate() || F === i.maxTranslate())) return !0; 16542 } 16543 } 16544 return w.preventDefault ? w.preventDefault() : w.returnValue = !1, !1; 16545 } 16546 function S(y) { 16547 let w = i.el; 16548 i.params.mousewheel.eventsTarget !== "container" && (w = document.querySelector(i.params.mousewheel.eventsTarget)), w[y]("mouseenter", u), w[y]("mouseleave", h), w[y]("wheel", m); 16549 } 16550 function b() { 16551 return i.params.cssMode ? (i.wrapperEl.removeEventListener("wheel", m), !0) : i.mousewheel.enabled ? !1 : (S("addEventListener"), i.mousewheel.enabled = !0, !0); 16552 } 16553 function v() { 16554 return i.params.cssMode ? (i.wrapperEl.addEventListener(event, m), !0) : i.mousewheel.enabled ? (S("removeEventListener"), i.mousewheel.enabled = !1, !0) : !1; 16555 } 16556 r("init", () => { 16557 !i.params.mousewheel.enabled && i.params.cssMode && v(), i.params.mousewheel.enabled && b(); 16558 }), r("destroy", () => { 16559 i.params.cssMode && b(), i.mousewheel.enabled && v(); 16560 }), Object.assign(i.mousewheel, { 16561 enable: b, 16562 disable: v 16563 }); 16564} 16565function x2(e) { 16566 let { swiper: i, extendParams: t, on: r, emit: s } = e, n = Ft(), a = !1, o = null, l = null, c, d, u, h; 16567 t({ scrollbar: { 16568 el: null, 16569 dragSize: "auto", 16570 hide: !1, 16571 draggable: !1, 16572 snapOnRelease: !0, 16573 lockClass: "swiper-scrollbar-lock", 16574 dragClass: "swiper-scrollbar-drag", 16575 scrollbarDisabledClass: "swiper-scrollbar-disabled", 16576 horizontalClass: "swiper-scrollbar-horizontal", 16577 verticalClass: "swiper-scrollbar-vertical" 16578 } }), i.scrollbar = { 16579 el: null, 16580 dragEl: null 16581 }; 16582 function g() { 16583 if (!i.params.scrollbar.el || !i.scrollbar.el) return; 16584 let { scrollbar: I, rtlTranslate: D } = i, { dragEl: H, el: F } = I, K = i.params.scrollbar, B = i.params.loop ? i.progressLoop : i.progress, L = d, X = (u - d) * B; 16585 D ? (X = -X, X > 0 ? (L = d - X, X = 0) : -X + d > u && (L = u + X)) : X < 0 ? (L = d + X, X = 0) : X + d > u && (L = u - X), i.isHorizontal() ? (H.style.transform = `translate3d(${X}px, 0, 0)`, H.style.width = `${L}px`) : (H.style.transform = `translate3d(0px, ${X}px, 0)`, H.style.height = `${L}px`), K.hide && (clearTimeout(o), F.style.opacity = 1, o = setTimeout(() => { 16586 F.style.opacity = 0, F.style.transitionDuration = "400ms"; 16587 }, 1e3)); 16588 } 16589 function p(I) { 16590 !i.params.scrollbar.el || !i.scrollbar.el || (i.scrollbar.dragEl.style.transitionDuration = `${I}ms`); 16591 } 16592 function m() { 16593 if (!i.params.scrollbar.el || !i.scrollbar.el) return; 16594 let { scrollbar: I } = i, { dragEl: D, el: H } = I; 16595 D.style.width = "", D.style.height = "", u = i.isHorizontal() ? H.offsetWidth : H.offsetHeight, h = i.size / (i.virtualSize + i.params.slidesOffsetBefore - (i.params.centeredSlides ? i.snapGrid[0] : 0)), i.params.scrollbar.dragSize === "auto" ? d = u * h : d = parseInt(i.params.scrollbar.dragSize, 10), i.isHorizontal() ? D.style.width = `${d}px` : D.style.height = `${d}px`, h >= 1 ? H.style.display = "none" : H.style.display = "", i.params.scrollbar.hide && (H.style.opacity = 0), i.params.watchOverflow && i.enabled && I.el.classList[i.isLocked ? "add" : "remove"](i.params.scrollbar.lockClass); 16596 } 16597 function S(I) { 16598 return i.isHorizontal() ? I.clientX : I.clientY; 16599 } 16600 function b(I) { 16601 let { scrollbar: D, rtlTranslate: H } = i, { el: F } = D, K; 16602 K = (S(I) - Jd(F)[i.isHorizontal() ? "left" : "top"] - (c !== null ? c : d / 2)) / (u - d), K = Math.max(Math.min(K, 1), 0), H && (K = 1 - K); 16603 let B = i.minTranslate() + (i.maxTranslate() - i.minTranslate()) * K; 16604 i.updateProgress(B), i.setTranslate(B), i.updateActiveIndex(), i.updateSlidesClasses(); 16605 }
16606 function v(I) { 16607 let D = i.params.scrollbar, { scrollbar: H, wrapperEl: F } = i, { el: K, dragEl: B } = H; 16608 a = !0, c = I.target === B ? S(I) - I.target.getBoundingClientRect()[i.isHorizontal() ? "left" : "top"] : null, I.preventDefault(), I.stopPropagation(), F.style.transitionDuration = "100ms", B.style.transitionDuration = "100ms", b(I), clearTimeout(l), K.style.transitionDuration = "0ms", D.hide && (K.style.opacity = 1), i.params.cssMode && (i.wrapperEl.style["scroll-snap-type"] = "none"), s("scrollbarDragStart", I); 16609 } 16610 function y(I) { 16611 let { scrollbar: D, wrapperEl: H } = i, { el: F, dragEl: K } = D; 16612 a && (I.preventDefault && I.cancelable ? I.preventDefault() : I.returnValue = !1, b(I), H.style.transitionDuration = "0ms", F.style.transitionDuration = "0ms", K.style.transitionDuration = "0ms", s("scrollbarDragMove", I)); 16613 } 16614 function w(I) { 16615 let D = i.params.scrollbar, { scrollbar: H, wrapperEl: F } = i, { el: K } = H; 16616 a && (a = !1, i.params.cssMode && (i.wrapperEl.style["scroll-snap-type"] = "", F.style.transitionDuration = ""), D.hide && (clearTimeout(l), l = Ca(() => { 16617 K.style.opacity = 0, K.style.transitionDuration = "400ms"; 16618 }, 1e3)), s("scrollbarDragEnd", I), D.snapOnRelease && i.slideToClosest()); 16619 } 16620 function T(I) { 16621 let { scrollbar: D, params: H } = i, F = D.el; 16622 if (!F) return; 16623 let K = F, B = H.passiveListeners ? { 16624 passive: !1, 16625 capture: !1 16626 } : !1, L = H.passiveListeners ? { 16627 passive: !0, 16628 capture: !1 16629 } : !1; 16630 if (!K) return; 16631 let X = I === "on" ? "addEventListener" : "removeEventListener"; 16632 K[X]("pointerdown", v, B), n[X]("pointermove", y, B), n[X]("pointerup", w, L); 16633 } 16634 function O() { 16635 !i.params.scrollbar.el || !i.scrollbar.el || T("on"); 16636 } 16637 function _() { 16638 !i.params.scrollbar.el || !i.scrollbar.el || T("off"); 16639 } 16640 function z() { 16641 let { scrollbar: I, el: D } = i; 16642 i.params.scrollbar = Zv(i, i.originalParams.scrollbar, i.params.scrollbar, { el: "swiper-scrollbar" }); 16643 let H = i.params.scrollbar; 16644 if (!H.el) return; 16645 let F; 16646 if (typeof H.el == "string" && i.isElement && (F = i.el.querySelector(H.el)), !F && typeof H.el == "string") { 16647 if (F = n.querySelectorAll(H.el), !F.length) return; 16648 } else F || (F = H.el); 16649 i.params.uniqueNavElements && typeof H.el == "string" && F.length > 1 && D.querySelectorAll(H.el).length === 1 && (F = D.querySelector(H.el)), F.length > 0 && (F = F[0]), F.classList.add(i.isHorizontal() ? H.horizontalClass : H.verticalClass); 16650 let K; 16651 F && (K = F.querySelector(fs(i.params.scrollbar.dragClass)), K || (K = Li("div", i.params.scrollbar.dragClass), F.append(K))), Object.assign(I, { 16652 el: F, 16653 dragEl: K 16654 }), H.draggable && O(), F && F.classList[i.enabled ? "remove" : "add"](...Gs(i.params.scrollbar.lockClass)); 16655 } 16656 function V() { 16657 let I = i.params.scrollbar, D = i.scrollbar.el; 16658 D && D.classList.remove(...Gs(i.isHorizontal() ? I.horizontalClass : I.verticalClass)), _(); 16659 } 16660 r("changeDirection", () => { 16661 if (!i.scrollbar || !i.scrollbar.el) return; 16662 let I = i.params.scrollbar, { el: D } = i.scrollbar; 16663 D = Be(D), D.forEach((H) => { 16664 H.classList.remove(I.horizontalClass, I.verticalClass), H.classList.add(i.isHorizontal() ? I.horizontalClass : I.verticalClass); 16665 }); 16666 }), r("init", () => { 16667 i.params.scrollbar.enabled === !1 ? $() : (z(), m(), g()); 16668 }), r("update resize observerUpdate lock unlock changeDirection", () => { 16669 m(); 16670 }), r("setTranslate", () => { 16671 g(); 16672 }), r("setTransition", (I, D) => { 16673 p(D); 16674 }), r("enable disable", () => { 16675 let { el: I } = i.scrollbar; 16676 I && I.classList[i.enabled ? "remove" : "add"](...Gs(i.params.scrollbar.lockClass)); 16677 }), r("destroy", () => { 16678 V(); 16679 }); 16680 let x = () => { 16681 i.el.classList.remove(...Gs(i.params.scrollbar.scrollbarDisabledClass)), i.scrollbar.el && i.scrollbar.el.classList.remove(...Gs(i.params.scrollbar.scrollbarDisabledClass)), z(), m(), g(); 16682 }, $ = () => { 16683 i.el.classList.add(...Gs(i.params.scrollbar.scrollbarDisabledClass)), i.scrollbar.el && i.scrollbar.el.classList.add(...Gs(i.params.scrollbar.scrollbarDisabledClass)), V(); 16684 }; 16685 Object.assign(i.scrollbar, { 16686 enable: x, 16687 disable: $, 16688 updateSize: m, 16689 setTranslate: g, 16690 init: z, 16691 destroy: V 16692 }); 16693} 16694function I2(e) { 16695 let { swiper: i, extendParams: t, on: r } = e; 16696 t({ parallax: { enabled: !1 } }); 16697 let s = "[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]", n = (l, c) => { 16698 let { rtl: d } = i, u = d ? -1 : 1, h = l.getAttribute("data-swiper-parallax") || "0", g = l.getAttribute("data-swiper-parallax-x"), p = l.getAttribute("data-swiper-parallax-y"), m = l.getAttribute("data-swiper-parallax-scale"), S = l.getAttribute("data-swiper-parallax-opacity"), b = l.getAttribute("data-swiper-parallax-rotate"); 16699 if (g || p ? (g = g || "0", p = p || "0") : i.isHorizontal() ? (g = h, p = "0") : (p = h, g = "0"), g.indexOf("%") >= 0 ? g = `${parseInt(g, 10) * c * u}%` : g = `${g * c * u}px`, p.indexOf("%") >= 0 ? p = `${parseInt(p, 10) * c}%` : p = `${p * c}px`, typeof S < "u" && S !== null) { 16700 let y = S - (S - 1) * (1 - Math.abs(c)); 16701 l.style.opacity = y; 16702 } 16703 let v = `translate3d(${g}, ${p}, 0px)`; 16704 if (typeof m < "u" && m !== null) { 16705 let y = m - (m - 1) * (1 - Math.abs(c)); 16706 v += ` scale(${y})`; 16707 } 16708 if (b && typeof b < "u" && b !== null) { 16709 let y = b * c * -1; 16710 v += ` rotate(${y}deg)`; 16711 } 16712 l.style.transform = v; 16713 }, a = () => { 16714 let { el: l, slides: c, progress: d, snapGrid: u, isElement: h } = i, g = Qt(l, s); 16715 i.isElement && g.push(...Qt(i.hostEl, s)), g.forEach((p) => { 16716 n(p, d); 16717 }
16717), c.forEach((p, m) => { 16718 let S = p.progress; 16719 i.params.slidesPerGroup > 1 && i.params.slidesPerView !== "auto" && (S += Math.ceil(m / 2) - d * (u.length - 1)), S = Math.min(Math.max(S, -1), 1), p.querySelectorAll(`${s}, [data-swiper-parallax-rotate]`).forEach((b) => { 16720 n(b, S); 16721 }); 16722 }); 16723 }, o = function(l) { 16724 l === void 0 && (l = i.params.speed); 16725 let { el: c, hostEl: d } = i, u = [...c.querySelectorAll(s)]; 16726 i.isElement && u.push(...d.querySelectorAll(s)), u.forEach((h) => { 16727 let g = parseInt(h.getAttribute("data-swiper-parallax-duration"), 10) || l; 16728 l === 0 && (g = 0), h.style.transitionDuration = `${g}ms`; 16729 }); 16730 }; 16731 r("beforeInit", () => { 16732 i.params.parallax.enabled && (i.params.watchSlidesProgress = !0, i.originalParams.watchSlidesProgress = !0); 16733 }), r("init", () => { 16734 i.params.parallax.enabled && a(); 16735 }), r("setTranslate", () => { 16736 i.params.parallax.enabled && a(); 16737 }), r("setTransition", (l, c) => { 16738 i.params.parallax.enabled && o(c); 16739 }); 16740} 16741function O2(e) { 16742 let { swiper: i, extendParams: t, on: r, emit: s } = e, n = vt(); 16743 t({ zoom: { 16744 enabled: !1, 16745 limitToOriginalSize: !1, 16746 maxRatio: 3, 16747 minRatio: 1, 16748 panOnMouseMove: !1, 16749 toggle: !0, 16750 containerClass: "swiper-zoom-container", 16751 zoomedSlideClass: "swiper-slide-zoomed" 16752 } }), i.zoom = { enabled: !1 }; 16753 let a = 1, o = !1, l = !1, c = { 16754 x: 0, 16755 y: 0 16756 }, d = -3, u, h, g = [], p = { 16757 originX: 0, 16758 originY: 0, 16759 slideEl: void 0, 16760 slideWidth: void 0, 16761 slideHeight: void 0, 16762 imageEl: void 0, 16763 imageWrapEl: void 0, 16764 maxRatio: 3 16765 }, m = { 16766 isTouched: void 0, 16767 isMoved: void 0, 16768 currentX: void 0, 16769 currentY: void 0, 16770 minX: void 0, 16771 minY: void 0, 16772 maxX: void 0, 16773 maxY: void 0, 16774 width: void 0, 16775 height: void 0, 16776 startX: void 0, 16777 startY: void 0, 16778 touchesStart: {}, 16779 touchesCurrent: {} 16780 }, S = { 16781 x: void 0, 16782 y: void 0, 16783 prevPositionX: void 0, 16784 prevPositionY: void 0, 16785 prevTime: void 0 16786 }, b = 1; 16787 Object.defineProperty(i.zoom, "scale", { 16788 get() { 16789 return b; 16790 }, 16791 set(se) { 16792 if (b !== se) { 16793 let Y = p.imageEl, re = p.slideEl; 16794 s("zoomChange", se, Y, re); 16795 } 16796 b = se; 16797 } 16798 }); 16799 function v() { 16800 if (g.length < 2) return 1; 16801 let se = g[0].pageX, Y = g[0].pageY, re = g[1].pageX, Me = g[1].pageY; 16802 return Math.sqrt((re - se) ** 2 + (Me - Y) ** 2); 16803 } 16804 function y() { 16805 let se = i.params.zoom, Y = p.imageWrapEl.getAttribute("data-swiper-zoom") || se.maxRatio; 16806 if (se.limitToOriginalSize && p.imageEl && p.imageEl.naturalWidth) { 16807 let re = p.imageEl.naturalWidth / p.imageEl.offsetWidth; 16808 return Math.min(re, Y); 16809 } 16810 return Y; 16811 } 16812 function w() { 16813 if (g.length < 2) return { 16814 x: null, 16815 y: null 16816 }; 16817 let se = p.imageEl.getBoundingClientRect(); 16818 return [(g[0].pageX + (g[1].pageX - g[0].pageX) / 2 - se.x - n.scrollX) / a, (g[0].pageY + (g[1].pageY - g[0].pageY) / 2 - se.y - n.scrollY) / a]; 16819 } 16820 function T() { 16821 return i.isElement ? "swiper-slide" : `.${i.params.slideClass}`; 16822 } 16823 function O(se) { 16824 let Y = T(); 16825 return !!(se.target.matches(Y) || i.slides.filter((re) => re.contains(se.target)).length > 0); 16826 } 16827 function _(se) { 16828 let Y = `.${i.params.zoom.containerClass}`; 16829 return !!(se.target.matches(Y) || [...i.hostEl.querySelectorAll(Y)].filter((re) => re.contains(se.target)).length > 0); 16830 } 16831 function z(se) { 16832 if (se.pointerType === "mouse" && g.splice(0, g.length), !O(se)) return; 16833 let Y = i.params.zoom; 16834 if (u = !1, h = !1, g.push(se), !(g.length < 2)) { 16835 if (u = !0, p.scaleStart = v(), !p.slideEl) { 16836 p.slideEl = se.target.closest(`.${i.params.slideClass}, swiper-slide`), p.slideEl || (p.slideEl = i.slides[i.activeIndex]); 16837 let re = p.slideEl.querySelector(`.${Y.containerClass}`); 16838 if (re && (re = re.querySelectorAll("picture, img, svg, canvas, .swiper-zoom-target")[0]), p.imageEl = re, re ? p.imageWrapEl = xn(p.imageEl, `.${Y.containerClass}`)[0] : p.imageWrapEl = void 0, !p.imageWrapEl) { 16839 p.imageEl = void 0; 16840 return; 16841 } 16842 p.maxRatio = y(); 16843 } 16844 if (p.imageEl) { 16845 let [re, Me] = w(); 16846 p.originX = re, p.originY = Me, p.imageEl.style.transitionDuration = "0ms"; 16847 } 16848 o = !0; 16849 } 16850 } 16851 function V(se) { 16852 if (!O(se)) return; 16853 let Y = i.params.zoom, re = i.zoom, Me = g.findIndex((Lt) => Lt.pointerId === se.pointerId); 16854 Me >= 0 && (g[Me] = se), !(g.length < 2) && (h = !0, p.scaleMove = v(), p.imageEl && (re.scale = p.scaleMove / p.scaleStart * a, re.scale > p.maxRatio && (re.scale = p.maxRatio - 1 + (re.scale - p.maxRatio + 1) ** .5), re.scale < Y.minRatio && (re.scale = Y.minRatio + 1 - (Y.minRatio - re.scale + 1) ** .5), p.imageEl.style.transform = `translate3d(0,
168540,0) scale(${re.scale})`)); 16855 } 16856 function x(se) { 16857 if (!O(se) || se.pointerType === "mouse" && se.type === "pointerout") return; 16858 let Y = i.params.zoom, re = i.zoom, Me = g.findIndex((Lt) => Lt.pointerId === se.pointerId); 16859 Me >= 0 && g.splice(Me, 1), u && h && (u = !1, h = !1, p.imageEl && (re.scale = Math.max(Math.min(re.scale, p.maxRatio), Y.minRatio), p.imageEl.style.transitionDuration = `${i.params.speed}ms`, p.imageEl.style.transform = `translate3d(0,0,0) scale(${re.scale})`, a = re.scale, o = !1, re.scale > 1 && p.slideEl ? p.slideEl.classList.add(`${Y.zoomedSlideClass}`) : re.scale <= 1 && p.slideEl && p.slideEl.classList.remove(`${Y.zoomedSlideClass}`), re.scale === 1 && (p.originX = 0, p.originY = 0, p.slideEl = void 0))); 16860 } 16861 let $; 16862 function I() { 16863 i.touchEventsData.preventTouchMoveFromPointerMove = !1; 16864 } 16865 function D() { 16866 clearTimeout($), i.touchEventsData.preventTouchMoveFromPointerMove = !0, $ = setTimeout(() => { 16867 i.destroyed || I(); 16868 }); 16869 } 16870 function H(se) { 16871 let Y = i.device; 16872 if (!p.imageEl || m.isTouched) return; 16873 Y.android && se.cancelable && se.preventDefault(), m.isTouched = !0; 16874 let re = g.length > 0 ? g[0] : se; 16875 m.touchesStart.x = re.pageX, m.touchesStart.y = re.pageY; 16876 } 16877 function F(se) { 16878 let Y = se.pointerType === "mouse" && i.params.zoom.panOnMouseMove; 16879 if (!O(se) || !_(se)) return; 16880 let re = i.zoom; 16881 if (!p.imageEl) return; 16882 if (!m.isTouched || !p.slideEl) { 16883 Y && L(se); 16884 return; 16885 } 16886 if (Y) { 16887 L(se); 16888 return; 16889 } 16890 m.isMoved || (m.width = p.imageEl.offsetWidth || p.imageEl.clientWidth, m.height = p.imageEl.offsetHeight || p.imageEl.clientHeight, m.startX = Jv(p.imageWrapEl, "x") || 0, m.startY = Jv(p.imageWrapEl, "y") || 0, p.slideWidth = p.slideEl.offsetWidth, p.slideHeight = p.slideEl.offsetHeight, p.imageWrapEl.style.transitionDuration = "0ms"); 16891 let Me = m.width * re.scale, Lt = m.height * re.scale; 16892 if (m.minX = Math.min(p.slideWidth / 2 - Me / 2, 0), m.maxX = -m.minX, m.minY = Math.min(p.slideHeight / 2 - Lt / 2, 0), m.maxY = -m.minY, m.touchesCurrent.x = g.length > 0 ? g[0].pageX : se.pageX, m.touchesCurrent.y = g.length > 0 ? g[0].pageY : se.pageY, Math.max(Math.abs(m.touchesCurrent.x - m.touchesStart.x), Math.abs(m.touchesCurrent.y - m.touchesStart.y)) > 5 && (i.allowClick = !1), !m.isMoved && !o) { 16893 if (i.isHorizontal() && (Math.floor(m.minX) === Math.floor(m.startX) && m.touchesCurrent.x < m.touchesStart.x || Math.floor(m.maxX) === Math.floor(m.startX) && m.touchesCurrent.x > m.touchesStart.x)) { 16894 m.isTouched = !1, I(); 16895 return; 16896 } 16897 if (!i.isHorizontal() && (Math.floor(m.minY) === Math.floor(m.startY) && m.touchesCurrent.y < m.touchesStart.y || Math.floor(m.maxY) === Math.floor(m.startY) && m.touchesCurrent.y > m.touchesStart.y)) { 16898 m.isTouched = !1, I(); 16899 return; 16900 } 16901 } 16902 se.cancelable && se.preventDefault(), se.stopPropagation(), D(), m.isMoved = !0; 16903 let Oi = (re.scale - a) / (p.maxRatio - i.params.zoom.minRatio), { originX: Zt, originY: li } = p; 16904 m.currentX = m.touchesCurrent.x - m.touchesStart.x + m.startX + Oi * (m.width - Zt * 2), m.currentY = m.touchesCurrent.y - m.touchesStart.y + m.startY + Oi * (m.height - li * 2), m.currentX < m.minX && (m.currentX = m.minX + 1 - (m.minX - m.currentX + 1) ** .8), m.currentX > m.maxX && (m.currentX = m.maxX - 1 + (m.currentX - m.maxX + 1) ** .8), m.currentY < m.minY && (m.currentY = m.minY + 1 - (m.minY - m.currentY + 1) ** .8), m.currentY > m.maxY && (m.currentY = m.maxY - 1 + (m.currentY - m.maxY + 1) ** .8), S.prevPositionX || (S.prevPositionX = m.touchesCurrent.x), S.prevPositionY || (S.prevPositionY = m.touchesCurrent.y), S.prevTime || (S.prevTime = Date.now()), S.x = (m.touchesCurrent.x - S.prevPositionX) / (Date.now() - S.prevTime) / 2, S.y = (m.touchesCurrent.y - S.prevPositionY) / (Date.now() - S.prevTime) / 2, Math.abs(m.touchesCurrent.x - S.prevPositionX) < 2 && (S.x = 0), Math.abs(m.touchesCurrent.y - S.prevPositionY) < 2 && (S.y = 0), S.prevPositionX = m.touchesCurrent.x, S.prevPositionY = m.touchesCurrent.y, S.prevTime = Date.now(), p.imageWrapEl.style.transform = `translate3d(${m.currentX}px, ${m.currentY}px,0)`; 16905 } 16906 function K() { 16907 let se = i.zoom; 16908 if (g.length = 0, !p.imageEl) return; 16909 if (!m.isTouched || !m.isMoved) { 16910 m.isTouched = !1, m.isMoved = !1; 16911 return; 16912 } 16913 m.isTouched = !1, m.isMoved = !1; 16914 let Y = 300, re = 300, Me = S.x * Y, Lt = m.currentX + Me, Oi = S.y * re, Zt = m.currentY + Oi; 16915 S.x !== 0 && (Y = Math.abs((Lt - m.currentX) / S.x)), S.y !== 0 && (re = Math.abs((Zt - m.currentY) / S.y)); 16916 let li = Math.max(Y, re); 16917 m.currentX = Lt, m.currentY = Zt; 16918 let hr = m.width * se.scale, Bt = m.height * se.scale; 16919 m.minX = Math.min(p.slideWidth / 2 - hr / 2, 0), m.maxX = -m.minX, m.minY = Math.min(p.slideHeight / 2 - Bt / 2, 0), m.maxY = -m.minY, m.currentX = Math.max(Math.min(m.currentX, m.maxX), m.minX), m.currentY = Math.max(Math.min(m.currentY, m.maxY), m.minY), p.imageWrapEl.style.transitionDuration = `${li}ms`, p.imageWrapEl.style.transform = `translate3d(${m.currentX}px, ${m.currentY}px,0)`; 16920 } 16921 function B() { 16922 let se = i.zoom; 16923 p.slideEl && i.activeIndex !== i.slides.indexOf(p.slideEl) && (p.imageEl && (p.imageEl.style.transform = "translate3d(0,
vendor: 4,377 bytes, lines 16923-16958
169230,0) scale(1)"), p.imageWrapEl && (p.imageWrapEl.style.transform = "translate3d(0,0,0)"), p.slideEl.classList.remove(`${i.params.zoom.zoomedSlideClass}`), se.scale = 1, a = 1, p.slideEl = void 0, p.imageEl = void 0, p.imageWrapEl = void 0, p.originX = 0, p.originY = 0); 16924 } 16925 function L(se) { 16926 if (a <= 1 || !p.imageWrapEl || !O(se) || !_(se)) return; 16927 let Y = n.getComputedStyle(p.imageWrapEl).transform, re = new n.DOMMatrix(Y); 16928 if (!l) { 16929 l = !0, c.x = se.clientX, c.y = se.clientY, m.startX = re.e, m.startY = re.f, m.width = p.imageEl.offsetWidth || p.imageEl.clientWidth, m.height = p.imageEl.offsetHeight || p.imageEl.clientHeight, p.slideWidth = p.slideEl.offsetWidth, p.slideHeight = p.slideEl.offsetHeight; 16930 return; 16931 } 16932 let Me = (se.clientX - c.x) * d, Lt = (se.clientY - c.y) * d, Oi = m.width * a, Zt = m.height * a, li = p.slideWidth, hr = p.slideHeight, Bt = Math.min(li / 2 - Oi / 2, 0), gi = -Bt, Ji = Math.min(hr / 2 - Zt / 2, 0), bs = -Ji, Vr = Math.max(Math.min(m.startX + Me, gi), Bt), M = Math.max(Math.min(m.startY + Lt, bs), Ji); 16933 p.imageWrapEl.style.transitionDuration = "0ms", p.imageWrapEl.style.transform = `translate3d(${Vr}px, ${M}px, 0)`, c.x = se.clientX, c.y = se.clientY, m.startX = Vr, m.startY = M, m.currentX = Vr, m.currentY = M; 16934 } 16935 function X(se) { 16936 let Y = i.zoom, re = i.params.zoom; 16937 if (!p.slideEl) { 16938 se && se.target && (p.slideEl = se.target.closest(`.${i.params.slideClass}, swiper-slide`)), p.slideEl || (i.params.virtual && i.params.virtual.enabled && i.virtual ? p.slideEl = Qt(i.slidesEl, `.${i.params.slideActiveClass}`)[0] : p.slideEl = i.slides[i.activeIndex]); 16939 let $a = p.slideEl.querySelector(`.${re.containerClass}`); 16940 $a && ($a = $a.querySelectorAll("picture, img, svg, canvas, .swiper-zoom-target")[0]), p.imageEl = $a, $a ? p.imageWrapEl = xn(p.imageEl, `.${re.containerClass}`)[0] : p.imageWrapEl = void 0; 16941 } 16942 if (!p.imageEl || !p.imageWrapEl) return; 16943 i.params.cssMode && (i.wrapperEl.style.overflow = "hidden", i.wrapperEl.style.touchAction = "none"), p.slideEl.classList.add(`${re.zoomedSlideClass}`); 16944 let Me, Lt, Oi, Zt, li, hr, Bt, gi, Ji, bs, Vr, M, q, Q, oe, Ee, He, De; 16945 typeof m.touchesStart.x > "u" && se ? (Me = se.pageX, Lt = se.pageY) : (Me = m.touchesStart.x, Lt = m.touchesStart.y); 16946 let et = a, mr = typeof se == "number" ? se : null; 16947 a === 1 && mr && (Me = void 0, Lt = void 0, m.touchesStart.x = void 0, m.touchesStart.y = void 0); 16948 let vl = y(); 16949 Y.scale = mr || vl, a = mr || vl, se && !(a === 1 && mr) ? (He = p.slideEl.offsetWidth, De = p.slideEl.offsetHeight, Oi = Jd(p.slideEl).left + n.scrollX, Zt = Jd(p.slideEl).top + n.scrollY, li = Oi + He / 2 - Me, hr = Zt + De / 2 - Lt, Ji = p.imageEl.offsetWidth || p.imageEl.clientWidth, bs = p.imageEl.offsetHeight || p.imageEl.clientHeight, Vr = Ji * Y.scale, M = bs * Y.scale, q = Math.min(He / 2 - Vr / 2, 0), Q = Math.min(De / 2 - M / 2, 0), oe = -q, Ee = -Q, et > 0 && mr && typeof m.currentX == "number" && typeof m.currentY == "number" ? (Bt = m.currentX * Y.scale / et, gi = m.currentY * Y.scale / et) : (Bt = li * Y.scale, gi = hr * Y.scale), Bt < q && (Bt = q), Bt > oe && (Bt = oe), gi < Q && (gi = Q), gi > Ee && (gi = Ee)) : (Bt = 0, gi = 0), mr && Y.scale === 1 && (p.originX = 0, p.originY = 0), m.currentX = Bt, m.currentY = gi, p.imageWrapEl.style.transitionDuration = "300ms", p.imageWrapEl.style.transform = `translate3d(${Bt}px, ${gi}px,0)`, p.imageEl.style.transitionDuration = "300ms", p.imageEl.style.transform = `translate3d(0,0,0) scale(${Y.scale})`; 16950 } 16951 function Ve() { 16952 let se = i.zoom, Y = i.params.zoom; 16953 if (!p.slideEl) { 16954 i.params.virtual && i.params.virtual.enabled && i.virtual ? p.slideEl = Qt(i.slidesEl, `.${i.params.slideActiveClass}`)[0] : p.slideEl = i.slides[i.activeIndex]; 16955 let re = p.slideEl.querySelector(`.${Y.containerClass}`); 16956 re && (re = re.querySelectorAll("picture, img, svg, canvas, .swiper-zoom-target")[0]), p.imageEl = re, re ? p.imageWrapEl = xn(p.imageEl, `.${Y.containerClass}`)[0] : p.imageWrapEl = void 0; 16957 } 16958 !p.imageEl || !p.imageWrapEl || (i.params.cssMode && (i.wrapperEl.style.overflow = "", i.wrapperEl.style.touchAction = ""), se.scale = 1, a = 1, m.currentX = void 0, m.currentY = void 0, m.touchesStart.x = void 0, m.touchesStart.y = void 0, p.imageWrapEl.style.transitionDuration = "300ms", p.imageWrapEl.style.transform = "translate3d(0,
169580,0)", p.imageEl.style.transitionDuration = "300ms", p.imageEl.style.transform = "translate3d(0,0,0) scale(1)", p.slideEl.classList.remove(`${Y.zoomedSlideClass}`), p.slideEl = void 0, p.originX = 0, p.originY = 0, i.params.zoom.panOnMouseMove && (c = { 16959 x: 0, 16960 y: 0 16961 }, l && (l = !1, m.startX = 0, m.startY = 0))); 16962 } 16963 function at(se) { 16964 let Y = i.zoom; 16965 Y.scale && Y.scale !== 1 ? Ve() : X(se); 16966 } 16967 function Ct() { 16968 return { 16969 passiveListener: i.params.passiveListeners ? { 16970 passive: !0, 16971 capture: !1 16972 } : !1, 16973 activeListenerWithCapture: i.params.passiveListeners ? { 16974 passive: !1, 16975 capture: !0 16976 } : !0 16977 }; 16978 } 16979 function oi() { 16980 let se = i.zoom; 16981 if (se.enabled) return; 16982 se.enabled = !0; 16983 let { passiveListener: Y, activeListenerWithCapture: re } = Ct(); 16984 i.wrapperEl.addEventListener("pointerdown", z, Y), i.wrapperEl.addEventListener("pointermove", V, re), [ 16985 "pointerup", 16986 "pointercancel", 16987 "pointerout" 16988 ].forEach((Me) => { 16989 i.wrapperEl.addEventListener(Me, x, Y); 16990 }), i.wrapperEl.addEventListener("pointermove", F, re); 16991 } 16992 function Ii() { 16993 let se = i.zoom; 16994 if (!se.enabled) return; 16995 se.enabled = !1; 16996 let { passiveListener: Y, activeListenerWithCapture: re } = Ct(); 16997 i.wrapperEl.removeEventListener("pointerdown", z, Y), i.wrapperEl.removeEventListener("pointermove", V, re), [ 16998 "pointerup", 16999 "pointercancel", 17000 "pointerout" 17001 ].forEach((Me) => { 17002 i.wrapperEl.removeEventListener(Me, x, Y); 17003 }), i.wrapperEl.removeEventListener("pointermove", F, re); 17004 } 17005 r("init", () => { 17006 i.params.zoom.enabled && oi(); 17007 }), r("destroy", () => { 17008 Ii(); 17009 }), r("touchStart", (se, Y) => { 17010 i.zoom.enabled && H(Y); 17011 }), r("touchEnd", (se, Y) => { 17012 i.zoom.enabled && K(); 17013 }), r("doubleTap", (se, Y) => { 17014 !i.animating && i.params.zoom.enabled && i.zoom.enabled && i.params.zoom.toggle && at(Y); 17015 }), r("transitionEnd", () => { 17016 i.zoom.enabled && i.params.zoom.enabled && B(); 17017 }), r("slideChange", () => { 17018 i.zoom.enabled && i.params.zoom.enabled && i.params.cssMode && B(); 17019 }), Object.assign(i.zoom, { 17020 enable: oi, 17021 disable: Ii, 17022 in: X, 17023 out: Ve, 17024 toggle: at 17025 }); 17026} 17027function P2(e) { 17028 let { swiper: i, extendParams: t, on: r } = e; 17029 t({ controller: { 17030 control: void 0, 17031 inverse: !1, 17032 by: "slide" 17033 } }), i.controller = { control: void 0 }; 17034 function s(c, d) { 17035 let u = (function() { 17036 let p, m, S; 17037 return (b, v) => { 17038 for (m = -1, p = b.length; p - m > 1;) S = p + m >> 1, b[S] <= v ? m = S : p = S; 17039 return p; 17040 }; 17041 })(); 17042 this.x = c, this.y = d, this.lastIndex = c.length - 1; 17043 let h, g; 17044 return this.interpolate = function(p) { 17045 return p ? (g = u(this.x, p), h = g - 1, (p - this.x[h]) * (this.y[g] - this.y[h]) / (this.x[g] - this.x[h]) + this.y[h]) : 0; 17046 }, this; 17047 } 17048 function n(c) { 17049 i.controller.spline = i.params.loop ? new s(i.slidesGrid, c.slidesGrid) : new s(i.snapGrid, c.snapGrid); 17050 } 17051 function a(c, d) { 17052 let u = i.controller.control, h, g, p = i.constructor; 17053 function m(S) { 17054 if (S.destroyed) return; 17055 let b = i.rtlTranslate ? -i.translate : i.translate; 17056 i.params.controller.by === "slide" && (n(S), g = -i.controller.spline.interpolate(-b)), (!g || i.params.controller.by === "container") && (h = (S.maxTranslate() - S.minTranslate()) / (i.maxTranslate() - i.minTranslate()), (Number.isNaN(h) || !Number.isFinite(h)) && (h = 1), g = (b - i.minTranslate()) * h + S.minTranslate()), i.params.controller.inverse && (g = S.maxTranslate() - g), S.updateProgress(g), S.setTranslate(g, i), S.updateActiveIndex(), S.updateSlidesClasses(); 17057 } 17058 if (Array.isArray(u)) for (let S = 0; S < u.length; S += 1) u[S] !== d && u[S] instanceof p && m(u[S]); 17059 else u instanceof p && d !== u && m(u); 17060 } 17061 function o(c, d) { 17062 let u = i.constructor, h = i.controller.control, g; 17063 function p(m) { 17064 m.destroyed || (m.setTransition(c, i), c !== 0 && (m.transitionStart(), m.params.autoHeight && Ca(() => { 17065 m.updateAutoHeight(); 17066 }), el(m.wrapperEl, () => { 17067 h && m.transitionEnd(); 17068 }))); 17069 } 17070 if (Array.isArray(h)) for (g = 0; g < h.length; g += 1) h[g] !== d && h[g] instanceof u && p(h[g]); 17071 else h instanceof u && d !== h && p(h); 17072 } 17073 function l() { 17074 i.controller.control && i.controller.spline && (i.controller.spline = void 0, delete i.controller.spline); 17075 } 17076 r("beforeInit", () => { 17077 if (typeof window < "u" && (typeof i.params.controller.control == "string" || i.params.controller.control instanceof HTMLElement)) { 17078 (typeof i.params.controller.control == "string" ? [...document.querySelectorAll(i.params.controller.control)] : [i.params.controller.control]).forEac
17078h((c) => { 17079 if (i.controller.control || (i.controller.control = []), c && c.swiper) i.controller.control.push(c.swiper); 17080 else if (c) { 17081 let d = `${i.params.eventsPrefix}init`, u = (h) => { 17082 i.controller.control.push(h.detail[0]), i.update(), c.removeEventListener(d, u); 17083 }; 17084 c.addEventListener(d, u); 17085 } 17086 }); 17087 return; 17088 } 17089 i.controller.control = i.params.controller.control; 17090 }), r("update", () => { 17091 l(); 17092 }), r("resize", () => { 17093 l(); 17094 }), r("observerUpdate", () => { 17095 l(); 17096 }), r("setTranslate", (c, d, u) => { 17097 !i.controller.control || i.controller.control.destroyed || i.controller.setTranslate(d, u); 17098 }), r("setTransition", (c, d, u) => { 17099 !i.controller.control || i.controller.control.destroyed || i.controller.setTransition(d, u); 17100 }), Object.assign(i.controller, { 17101 setTranslate: a, 17102 setTransition: o 17103 }); 17104} 17105function A2(e) { 17106 let { swiper: i, extendParams: t, on: r } = e; 17107 t({ a11y: { 17108 enabled: !0, 17109 notificationClass: "swiper-notification", 17110 prevSlideMessage: "Previous slide", 17111 nextSlideMessage: "Next slide", 17112 firstSlideMessage: "This is the first slide", 17113 lastSlideMessage: "This is the last slide", 17114 paginationBulletMessage: "Go to slide {{index}}", 17115 slideLabelMessage: "{{index}} / {{slidesLength}}", 17116 containerMessage: null, 17117 containerRoleDescriptionMessage: null, 17118 containerRole: null, 17119 itemRoleDescriptionMessage: null, 17120 slideRole: "group", 17121 id: null, 17122 scrollOnFocus: !0 17123 } }), i.a11y = { clicked: !1 }; 17124 let s = null, n, a, o = (/* @__PURE__ */ new Date()).getTime(); 17125 function l(B) { 17126 let L = s; 17127 L.length !== 0 && Rr(L, B); 17128 } 17129 function c(B) { 17130 B === void 0 && (B = 16); 17131 let L = () => Math.round(16 * Math.random()).toString(16); 17132 return "x".repeat(B).replace(/x/g, L); 17133 } 17134 function d(B) { 17135 B = Be(B), B.forEach((L) => { 17136 L.setAttribute("tabIndex", "0"); 17137 }); 17138 } 17139 function u(B) { 17140 B = Be(B), B.forEach((L) => { 17141 L.setAttribute("tabIndex", "-1"); 17142 }); 17143 } 17144 function h(B, L) { 17145 B = Be(B), B.forEach((X) => { 17146 X.setAttribute("role", L); 17147 }); 17148 } 17149 function g(B, L) { 17150 B = Be(B), B.forEach((X) => { 17151 X.setAttribute("aria-roledescription", L); 17152 }); 17153 } 17154 function p(B, L) { 17155 B = Be(B), B.forEach((X) => { 17156 X.setAttribute("aria-controls", L); 17157 }); 17158 } 17159 function m(B, L) { 17160 B = Be(B), B.forEach((X) => { 17161 X.setAttribute("aria-label", L); 17162 }); 17163 } 17164 function S(B, L) { 17165 B = Be(B), B.forEach((X) => { 17166 X.setAttribute("id", L); 17167 }); 17168 } 17169 function b(B, L) { 17170 B = Be(B), B.forEach((X) => { 17171 X.setAttribute("aria-live", L); 17172 }); 17173 } 17174 function v(B) { 17175 B = Be(B), B.forEach((L) => { 17176 L.setAttribute("aria-disabled", !0); 17177 }); 17178 } 17179 function y(B) { 17180 B = Be(B), B.forEach((L) => { 17181 L.setAttribute("aria-disabled", !1); 17182 }); 17183 } 17184 function w(B) { 17185 if (B.keyCode !== 13 && B.keyCode !== 32) return; 17186 let L = i.params.a11y, X = B.target; 17187 if (!(i.pagination && i.pagination.el && (X === i.pagination.el || i.pagination.el.contains(B.target)) && !B.target.matches(fs(i.params.pagination.bulletClass)))) { 17188 if (i.navigation && i.navigation.prevEl && i.navigation.nextEl) { 17189 let Ve = Be(i.navigation.prevEl); 17190 Be(i.navigation.nextEl).includes(X) && (i.isEnd && !i.params.loop || i.slideNext(), i.isEnd ? l(L.lastSlideMessage) : l(L.nextSlideMessage)), Ve.includes(X) && (i.isBeginning && !i.params.loop || i.slidePrev(), i.isBeginning ? l(L.firstSlideMessage) : l(L.prevSlideMessage)); 17191 } 17192 i.pagination && X.matches(fs(i.params.pagination.bulletClass)) && X.click(); 17193 } 17194 } 17195 function T() { 17196 if (i.params.loop || i.params.rewind || !i.navigation) return; 17197 let { nextEl: B, prevEl: L } = i.navigation; 17198 L && (i.isBeginning ? (v(L), u(L)) : (y(L), d(L))), B && (i.isEnd ? (v(B), u(B)) : (y(B), d(B))); 17199 } 17200 function O() { 17201 return i.pagination && i.pagination.bullets && i.pagination.bullets.length; 17202 } 17203 function _() { 17204 return O() && i.params.pagination.clickable; 17205 } 17206 function z() { 17207 let B = i.params.a11y; 17208 O() && i.pagination.bullets.forEach((L) => { 17209 i.params.pagination.clickable && (d(L), i.params.pagination.renderBullet || (h(L, "button"), m(L, B.paginationBulletMessage.replace(/\{\{index\}\}/, Zo(L) + 1)))), L.matches(fs(i.params.pagination.bulletActiveClass)) ? L.setAttribute("aria-current", "true") : L.removeAttribute("aria-current"); 17210 }); 17211 } 17212 let V = (B, L, X) => { 17213 d(B), B.tagName !== "BUTTON" && (h(B, "button"), B.addEventListener("keydown", w)), m(B, X), p(B, L); 17214 }, x = (B) => { 17215 a && a !== B.target && !a.contains(B.target) && (n = !0), i.a11y.clicked = !0; 17216 }, $ = () => { 17217 n = !1, requestAnimationFrame(() => { 17218 requestAnimationFrame(() => { 17219 i.destroyed || (i.a11y.clicked = !1); 17220 }); 17221 }); 17222 }, I = (B) => { 17223 o = (/* @__PURE__ */ new Date()).getTime(); 17224 }, D = (B) => { 17225 if (i.a11y.clicked || !i.params.a11y.scrollOnFocus || (/* @__PURE__ */ new Date()).getTime() - o < 100) return; 17226 let L = B.target.closest(`.${i.params.slideClass}, swiper-slide`); 17227 if (!L || !i.slides.includes(L)) return; 17228 a = L; 17229 let X = i.slides.indexOf(L) === i.activeIndex, Ve = i.params.watchSlidesProgress && i.visibleSlides && i.visibleSlides.includes(L); 17230 X || Ve || B.sourceCapabilities && B.sourceCapabilities.firesTouchEvents || (i.isHorizontal() ? i.el.scrollLeft = 0 : i.el.scrollTop = 0, requestAnimationFrame(() => {
17231 n || (i.params.loop ? i.slideToLoop(i.getSlideIndexWhenGrid(parseInt(L.getAttribute("data-swiper-slide-index"))), 0) : i.slideTo(i.getSlideIndexWhenGrid(i.slides.indexOf(L)), 0), n = !1); 17232 })); 17233 }, H = () => { 17234 let B = i.params.a11y; 17235 B.itemRoleDescriptionMessage && g(i.slides, B.itemRoleDescriptionMessage), B.slideRole && h(i.slides, B.slideRole); 17236 let L = i.slides.length; 17237 B.slideLabelMessage && i.slides.forEach((X, Ve) => { 17238 let at = i.params.loop ? parseInt(X.getAttribute("data-swiper-slide-index"), 10) : Ve; 17239 m(X, B.slideLabelMessage.replace(/\{\{index\}\}/, at + 1).replace(/\{\{slidesLength\}\}/, L)); 17240 }); 17241 }, F = () => { 17242 let B = i.params.a11y; 17243 i.el.append(s); 17244 let L = i.el; 17245 B.containerRoleDescriptionMessage && g(L, B.containerRoleDescriptionMessage), B.containerMessage && m(L, B.containerMessage), B.containerRole && h(L, B.containerRole); 17246 let X = i.wrapperEl, Ve = B.id || X.getAttribute("id") || `swiper-wrapper-${c(16)}`, at = i.params.autoplay && i.params.autoplay.enabled ? "off" : "polite"; 17247 S(X, Ve), b(X, at), H(); 17248 let { nextEl: Ct, prevEl: oi } = i.navigation ? i.navigation : {}; 17249 Ct = Be(Ct), oi = Be(oi), Ct && Ct.forEach((Ii) => V(Ii, Ve, B.nextSlideMessage)), oi && oi.forEach((Ii) => V(Ii, Ve, B.prevSlideMessage)), _() && Be(i.pagination.el).forEach((Ii) => { 17250 Ii.addEventListener("keydown", w); 17251 }), Ft().addEventListener("visibilitychange", I), i.el.addEventListener("focus", D, !0), i.el.addEventListener("focus", D, !0), i.el.addEventListener("pointerdown", x, !0), i.el.addEventListener("pointerup", $, !0); 17252 }; 17253 function K() { 17254 s && s.remove(); 17255 let { nextEl: B, prevEl: L } = i.navigation ? i.navigation : {}; 17256 B = Be(B), L = Be(L), B && B.forEach((X) => X.removeEventListener("keydown", w)), L && L.forEach((X) => X.removeEventListener("keydown", w)), _() && Be(i.pagination.el).forEach((X) => { 17257 X.removeEventListener("keydown", w); 17258 }), Ft().removeEventListener("visibilitychange", I), i.el && typeof i.el != "string" && (i.el.removeEventListener("focus", D, !0), i.el.removeEventListener("pointerdown", x, !0), i.el.removeEventListener("pointerup", $, !0)); 17259 } 17260 r("beforeInit", () => { 17261 s = Li("span", i.params.a11y.notificationClass), s.setAttribute("aria-live", "assertive"), s.setAttribute("aria-atomic", "true"); 17262 }), r("afterInit", () => { 17263 i.params.a11y.enabled && F(); 17264 }), r("slidesLengthChange snapGridLengthChange slidesGridLengthChange", () => { 17265 i.params.a11y.enabled && H(); 17266 }), r("fromEdge toEdge afterInit lock unlock", () => { 17267 i.params.a11y.enabled && T(); 17268 }), r("paginationUpdate", () => { 17269 i.params.a11y.enabled && z(); 17270 }), r("destroy", () => { 17271 i.params.a11y.enabled && K(); 17272 }); 17273} 17274function $2(e) { 17275 let { swiper: i, extendParams: t, on: r } = e; 17276 t({ history: { 17277 enabled: !1, 17278 root: "", 17279 replaceState: !1, 17280 key: "slides", 17281 keepQuery: !1 17282 } }); 17283 let s = !1, n = {}, a = (g) => g.toString().replace(/\s+/g, "-").replace(/[^\w-]+/g, "").replace(/--+/g, "-").replace(/^-+/, "").replace(/-+$/, ""), o = (g) => { 17284 let p = vt(), m; 17285 g ? m = new URL(g) : m = p.location; 17286 let S = m.pathname.slice(1).split("/").filter((v) => v !== ""), b = S.length; 17287 return { 17288 key: S[b - 2], 17289 value: S[b - 1] 17290 }; 17291 }, l = (g, p) => { 17292 let m = vt(); 17293 if (!s || !i.params.history.enabled) return; 17294 let S; 17295 i.params.url ? S = new URL(i.params.url) : S = m.location; 17296 let b = i.virtual && i.params.virtual.enabled ? i.slidesEl.querySelector(`[data-swiper-slide-index="${p}"]`) : i.slides[p], v = a(b.getAttribute("data-history")); 17297 if (i.params.history.root.length > 0) { 17298 let w = i.params.history.root; 17299 w[w.length - 1] === "/" && (w = w.slice(0, w.length - 1)), v = `${w}/${g ? `${g}/` : ""}${v}`; 17300 } else S.pathname.includes(g) || (v = `${g ? `${g}/` : ""}${v}`); 17301 i.params.history.keepQuery && (v += S.search); 17302 let y = m.history.state; 17303 y && y.value === v || (i.params.history.replaceState ? m.history.replaceState({ value: v }, null, v) : m.history.pushState({ value: v }, null, v)); 17304 }, c = (g, p, m) => { 17305 if (p) for (let S = 0, b = i.slides.length; S < b; S += 1) { 17306 let v = i.slides[S]; 17307 if (a(v.getAttribute("data-history")) === p) { 17308 let y = i.getSlideIndex(v); 17309 i.slideTo(y, g, m); 17310 } 17311 } 17312 else i.slideTo(0, g, m); 17313 }, d = () => { 17314 n = o(i.params.url), c(i.params.speed, n.value, !1); 17315 }, u = () => { 17316 let g = vt(); 17317 if (i.params.history) { 17318 if (!g.history || !g.history.pushState) { 17319 i.params.history.enabled = !1, i.params.hashNavigation.enabled = !0; 17320 return; 17321 } 17322 if (s = !0, n = o(i.params.url), !n.key && !n.value) { 17323 i.params.history.replaceState || g.addEventListener("popstate", d); 17324 return; 17325 } 17326 c(0, n.value, i.params.runCallbacksOnInit), i.params.history.replaceState || g.addEventListener("popstate", d); 17327 } 17328 }, h = () => { 17329 let g = vt(); 17330 i.params.history.replaceState || g.removeEventListener("popstate", d); 17331 }; 17332 r("init", () => { 17333 i.params.history.enabled && u(); 17334 }), r("destroy", () => { 17335 i.params.history.enabled && h(); 17336 }), r("transitionEnd _freeModeNoMomentumRelease", () => { 17337 s && l(i.params.history.key, i.activeIndex); 17338 }), r("slideChange", () => { 17339 s && i.params.cssMode && l(i.params.history.key, i.activeIndex); 17340 }); 17341} 17342function _2(e) { 17343 let { swiper: i, extendParams: t, emit: r, on: s } = e, n = !1, a = Ft(), o = vt(); 17344 t({ hashNavigation: { 17345 enabled: !1, 17346 replaceState: !1, 17347 watchState: !1,
17348 getSlideIndex(h, g) { 17349 if (i.virtual && i.params.virtual.enabled) { 17350 let p = i.slides.find((m) => m.getAttribute("data-hash") === g); 17351 return p ? parseInt(p.getAttribute("data-swiper-slide-index"), 10) : 0; 17352 } 17353 return i.getSlideIndex(Qt(i.slidesEl, `.${i.params.slideClass}[data-hash="${g}"], swiper-slide[data-hash="${g}"]`)[0]); 17354 } 17355 } }); 17356 let l = () => { 17357 r("hashChange"); 17358 let h = a.location.hash.replace("#", ""), g = i.virtual && i.params.virtual.enabled ? i.slidesEl.querySelector(`[data-swiper-slide-index="${i.activeIndex}"]`) : i.slides[i.activeIndex]; 17359 if (h !== (g ? g.getAttribute("data-hash") : "")) { 17360 let p = i.params.hashNavigation.getSlideIndex(i, h); 17361 if (typeof p > "u" || Number.isNaN(p)) return; 17362 i.slideTo(p); 17363 } 17364 }, c = () => { 17365 if (!n || !i.params.hashNavigation.enabled) return; 17366 let h = i.virtual && i.params.virtual.enabled ? i.slidesEl.querySelector(`[data-swiper-slide-index="${i.activeIndex}"]`) : i.slides[i.activeIndex], g = h ? h.getAttribute("data-hash") || h.getAttribute("data-history") : ""; 17367 i.params.hashNavigation.replaceState && o.history && o.history.replaceState ? (o.history.replaceState(null, null, `#${g}` || ""), r("hashSet")) : (a.location.hash = g || "", r("hashSet")); 17368 }, d = () => { 17369 if (!i.params.hashNavigation.enabled || i.params.history && i.params.history.enabled) return; 17370 n = !0; 17371 let h = a.location.hash.replace("#", ""); 17372 if (h) { 17373 let g = i.params.hashNavigation.getSlideIndex(i, h); 17374 i.slideTo(g || 0, 0, i.params.runCallbacksOnInit, !0); 17375 } 17376 i.params.hashNavigation.watchState && o.addEventListener("hashchange", l); 17377 }, u = () => { 17378 i.params.hashNavigation.watchState && o.removeEventListener("hashchange", l); 17379 }; 17380 s("init", () => { 17381 i.params.hashNavigation.enabled && d(); 17382 }), s("destroy", () => { 17383 i.params.hashNavigation.enabled && u(); 17384 }), s("transitionEnd _freeModeNoMomentumRelease", () => { 17385 n && c(); 17386 }), s("slideChange", () => { 17387 n && i.params.cssMode && c(); 17388 }); 17389} 17390function M2(e) { 17391 let { swiper: i, extendParams: t, on: r } = e; 17392 t({ thumbs: { 17393 swiper: null, 17394 multipleActiveThumbs: !0, 17395 autoScrollOffset: 0, 17396 slideThumbActiveClass: "swiper-slide-thumb-active", 17397 thumbsContainerClass: "swiper-thumbs" 17398 } }); 17399 let s = !1, n = !1; 17400 i.thumbs = { swiper: null }; 17401 function a() { 17402 let c = i.thumbs.swiper; 17403 if (!c || c.destroyed) return; 17404 let d = c.clickedIndex, u = c.clickedSlide; 17405 if (u && u.classList.contains(i.params.thumbs.slideThumbActiveClass) || typeof d > "u" || d === null) return; 17406 let h; 17407 c.params.loop ? h = parseInt(c.clickedSlide.getAttribute("data-swiper-slide-index"), 10) : h = d, i.params.loop ? i.slideToLoop(h) : i.slideTo(h); 17408 } 17409 function o() { 17410 let { thumbs: c } = i.params; 17411 if (s) return !1; 17412 s = !0; 17413 let d = i.constructor; 17414 if (c.swiper instanceof d) { 17415 if (c.swiper.destroyed) return s = !1, !1; 17416 i.thumbs.swiper = c.swiper, Object.assign(i.thumbs.swiper.originalParams, { 17417 watchSlidesProgress: !0, 17418 slideToClickedSlide: !1 17419 }), Object.assign(i.thumbs.swiper.params, { 17420 watchSlidesProgress: !0, 17421 slideToClickedSlide: !1 17422 }), i.thumbs.swiper.update(); 17423 } else if (Jo(c.swiper)) { 17424 let u = Object.assign({}, c.swiper); 17425 Object.assign(u, { 17426 watchSlidesProgress: !0, 17427 slideToClickedSlide: !1 17428 }), i.thumbs.swiper = new d(u), n = !0; 17429 } 17430 return i.thumbs.swiper.el.classList.add(i.params.thumbs.thumbsContainerClass), i.thumbs.swiper.on("tap", a), !0; 17431 } 17432 function l(c) { 17433 let d = i.thumbs.swiper; 17434 if (!d || d.destroyed) return; 17435 let u = d.params.slidesPerView === "auto" ? d.slidesPerViewDynamic() : d.params.slidesPerView, h = 1, g = i.params.thumbs.slideThumbActiveClass; 17436 if (i.params.slidesPerView > 1 && !i.params.centeredSlides && (h = i.params.slidesPerView), i.params.thumbs.multipleActiveThumbs || (h = 1), h = Math.floor(h), d.slides.forEach((S) => S.classList.remove(g)), d.params.loop || d.params.virtual && d.params.virtual.enabled) for (let S = 0; S < h; S += 1) Qt(d.slidesEl, `[data-swiper-slide-index="${i.realIndex + S}"]`).forEach((b) => { 17437 b.classList.add(g); 17438 }); 17439 else for (let S = 0; S < h; S += 1) d.slides[i.realIndex + S] && d.slides[i.realIndex + S].classList.add(g); 17440 let p = i.params.thumbs.autoScrollOffset, m = p && !d.params.loop; 17441 if (i.realIndex !== d.realIndex || m) { 17442 let S = d.activeIndex, b, v; 17443 if (d.params.loop) { 17444 let y = d.slides.find((w) => w.getAttribute("data-swiper-slide-index") === `${i.realIndex}`); 17445 b = d.slides.indexOf(y), v = i.activeIndex > i.previousIndex ? "next" : "prev"; 17446 } else b = i.realIndex, v = b > i.previousIndex ? "next" : "prev"; 17447 m && (b += v === "next" ? p : -1 * p), d.visibleSlidesIndexes && d.visibleSlidesIndexes.indexOf(b) < 0 && (d.params.centeredSlides ? b > S ? b = b - Math.floor(u / 2) + 1 : b = b + Math.floor(u / 2) - 1 : b > S && d.params.slidesPerGroup, d.slideTo(b, c ? 0 : void 0)); 17448 } 17449 } 17450 r("beforeInit", () => { 17451 let { thumbs: c } = i.params; 17452 if (!(!c || !c.swiper)) if (typeof c.swiper == "string" || c.swiper instanceof HTMLElement) { 17453 let d = Ft(), u = () => { 17454 let g = typeof c.swiper == "string" ? d.querySelector(c.swiper) : c.swiper; 17455 if (g && g.swiper) c.swiper = g.swiper, o(), l(!0); 17456 else if (g) { 17457 let p = `${i.params.eventsPrefix}init`, m = (S) => { 17458 c.swiper = S.detail[0], g.removeEventListener(p, m), o(), l(!0), c.swiper.update(
vendor: 5,358 bytes, lines 17458-17584
17458), i.update(); 17459 }; 17460 g.addEventListener(p, m); 17461 } 17462 return g; 17463 }, h = () => { 17464 i.destroyed || u() || requestAnimationFrame(h); 17465 }; 17466 requestAnimationFrame(h); 17467 } else o(), l(!0); 17468 }), r("slideChange update resize observerUpdate", () => { 17469 l(); 17470 }), r("setTransition", (c, d) => { 17471 let u = i.thumbs.swiper; 17472 !u || u.destroyed || u.setTransition(d); 17473 }), r("beforeDestroy", () => { 17474 let c = i.thumbs.swiper; 17475 !c || c.destroyed || n && c.destroy(); 17476 }), Object.assign(i.thumbs, { 17477 init: o, 17478 update: l 17479 }); 17480} 17481function R2(e) { 17482 let { swiper: i, extendParams: t, emit: r, once: s } = e; 17483 t({ freeMode: { 17484 enabled: !1, 17485 momentum: !0, 17486 momentumRatio: 1, 17487 momentumBounce: !0, 17488 momentumBounceRatio: 1, 17489 momentumVelocityRatio: 1, 17490 sticky: !1, 17491 minimumVelocity: .02 17492 } }); 17493 function n() { 17494 if (i.params.cssMode) return; 17495 let l = i.getTranslate(); 17496 i.setTranslate(l), i.setTransition(0), i.touchEventsData.velocities.length = 0, i.freeMode.onTouchEnd({ currentPos: i.rtl ? i.translate : -i.translate }); 17497 } 17498 function a() { 17499 if (i.params.cssMode) return; 17500 let { touchEventsData: l, touches: c } = i; 17501 l.velocities.length === 0 && l.velocities.push({ 17502 position: c[i.isHorizontal() ? "startX" : "startY"], 17503 time: l.touchStartTime 17504 }), l.velocities.push({ 17505 position: c[i.isHorizontal() ? "currentX" : "currentY"], 17506 time: qi() 17507 }); 17508 } 17509 function o(l) { 17510 let { currentPos: c } = l; 17511 if (i.params.cssMode) return; 17512 let { params: d, wrapperEl: u, rtlTranslate: h, snapGrid: g, touchEventsData: p } = i, m = qi() - p.touchStartTime; 17513 if (c < -i.minTranslate()) { 17514 i.slideTo(i.activeIndex); 17515 return; 17516 } 17517 if (c > -i.maxTranslate()) { 17518 i.slides.length < g.length ? i.slideTo(g.length - 1) : i.slideTo(i.slides.length - 1); 17519 return; 17520 } 17521 if (d.freeMode.momentum) { 17522 if (p.velocities.length > 1) { 17523 let _ = p.velocities.pop(), z = p.velocities.pop(), V = _.position - z.position, x = _.time - z.time; 17524 i.velocity = V / x, i.velocity /= 2, Math.abs(i.velocity) < d.freeMode.minimumVelocity && (i.velocity = 0), (x > 150 || qi() - _.time > 300) && (i.velocity = 0); 17525 } else i.velocity = 0; 17526 i.velocity *= d.freeMode.momentumVelocityRatio, p.velocities.length = 0; 17527 let S = 1e3 * d.freeMode.momentumRatio, b = i.velocity * S, v = i.translate + b; 17528 h && (v = -v); 17529 let y = !1, w, T = Math.abs(i.velocity) * 20 * d.freeMode.momentumBounceRatio, O; 17530 if (v < i.maxTranslate()) d.freeMode.momentumBounce ? (v + i.maxTranslate() < -T && (v = i.maxTranslate() - T), w = i.maxTranslate(), y = !0, p.allowMomentumBounce = !0) : v = i.maxTranslate(), d.loop && d.centeredSlides && (O = !0); 17531 else if (v > i.minTranslate()) d.freeMode.momentumBounce ? (v - i.minTranslate() > T && (v = i.minTranslate() + T), w = i.minTranslate(), y = !0, p.allowMomentumBounce = !0) : v = i.minTranslate(), d.loop && d.centeredSlides && (O = !0); 17532 else if (d.freeMode.sticky) { 17533 let _; 17534 for (let z = 0; z < g.length; z += 1) if (g[z] > -v) { 17535 _ = z; 17536 break; 17537 } 17538 Math.abs(g[_] - v) < Math.abs(g[_ - 1] - v) || i.swipeDirection === "next" ? v = g[_] : v = g[_ - 1], v = -v; 17539 } 17540 if (O && s("transitionEnd", () => { 17541 i.loopFix(); 17542 }), i.velocity !== 0) { 17543 if (h ? S = Math.abs((-v - i.translate) / i.velocity) : S = Math.abs((v - i.translate) / i.velocity), d.freeMode.sticky) { 17544 let _ = Math.abs((h ? -v : v) - i.translate), z = i.slidesSizesGrid[i.activeIndex]; 17545 _ < z ? S = d.speed : _ < 2 * z ? S = d.speed * 1.5 : S = d.speed * 2.5; 17546 } 17547 } else if (d.freeMode.sticky) { 17548 i.slideToClosest(); 17549 return; 17550 } 17551 d.freeMode.momentumBounce && y ? (i.updateProgress(w), i.setTransition(S), i.setTranslate(v), i.transitionStart(!0, i.swipeDirection), i.animating = !0, el(u, () => { 17552 !i || i.destroyed || !p.allowMomentumBounce || (r("momentumBounce"), i.setTransition(d.speed), setTimeout(() => { 17553 i.setTranslate(w), el(u, () => { 17554 !i || i.destroyed || i.transitionEnd(); 17555 }); 17556 }, 0)); 17557 })) : i.velocity ? (r("_freeModeNoMomentumRelease"), i.updateProgress(v), i.setTransition(S), i.setTranslate(v), i.transitionStart(!0, i.swipeDirection), i.animating || (i.animating = !0, el(u, () => { 17558 !i || i.destroyed || i.transitionEnd(); 17559 }))) : i.updateProgress(v), i.updateActiveIndex(), i.updateSlidesClasses(); 17560 } else if (d.freeMode.sticky) { 17561 i.slideToClosest(); 17562 return; 17563 } else d.freeMode && r("_freeModeNoMomentumRelease"); 17564 (!d.freeMode.momentum || m >= d.longSwipesMs) && (r("_freeModeStaticRelease"), i.updateProgress(), i.updateActiveIndex(), i.updateSlidesClasses()); 17565 } 17566 Object.assign(i, { freeMode: { 17567 onTouchStart: n, 17568 onTouchMove: a, 17569 onTouchEnd: o 17570 } }); 17571} 17572function L2(e) { 17573 let { swiper: i, extendParams: t, on: r } = e; 17574 t({ grid: { 17575 rows: 1, 17576 fill: "column" 17577 } }); 17578 let s, n, a, o, l = () => { 17579 let m = i.params.spaceBetween; 17580 return typeof m == "string" && m.indexOf("%") >= 0 ? m = parseFloat(m.replace("%", "")) / 100 * i.size : typeof m == "string" && (m = parseFloat(m)), m; 17581 }, c = (m) => { 17582 let { slidesPerView: S } = i.params, { rows: b, fill: v } = i.params.grid, y = i.virtual && i.params.virtual.enabled ? i.virtual.slides.length : m.length; 17583 a = Math.floor(y / b), Math.floor(y / b) === y / b ? s = y : s = Math.ceil(y / b) * b, S !== "auto" && v === "row" && (s = Math.max(s, S * b)), n = s / b; 17584 }, d = () => {
17585 i.slides && i.slides.forEach((m) => { 17586 m.swiperSlideGridSet && (m.style.height = "", m.style[i.getDirectionLabel("margin-top")] = ""); 17587 }); 17588 }, u = (m, S, b) => { 17589 let { slidesPerGroup: v } = i.params, y = l(), { rows: w, fill: T } = i.params.grid, O = i.virtual && i.params.virtual.enabled ? i.virtual.slides.length : b.length, _, z, V; 17590 if (T === "row" && v > 1) { 17591 let x = Math.floor(m / (v * w)), $ = m - w * v * x, I = x === 0 ? v : Math.min(Math.ceil((O - x * w * v) / w), v); 17592 V = Math.floor($ / I), z = $ - V * I + x * v, _ = z + V * s / w, S.style.order = _; 17593 } else T === "column" ? (z = Math.floor(m / w), V = m - z * w, (z > a || z === a && V === w - 1) && (V += 1, V >= w && (V = 0, z += 1))) : (V = Math.floor(m / n), z = m - V * n); 17594 S.row = V, S.column = z, S.style.height = `calc((100% - ${(w - 1) * y}px) / ${w})`, S.style[i.getDirectionLabel("margin-top")] = V !== 0 ? y && `${y}px` : "", S.swiperSlideGridSet = !0; 17595 }, h = (m, S) => { 17596 let { centeredSlides: b, roundLengths: v } = i.params, y = l(), { rows: w } = i.params.grid; 17597 if (i.virtualSize = (m + y) * s, i.virtualSize = Math.ceil(i.virtualSize / w) - y, i.params.cssMode || (i.wrapperEl.style[i.getDirectionLabel("width")] = `${i.virtualSize + y}px`), b) { 17598 let T = []; 17599 for (let O = 0; O < S.length; O += 1) { 17600 let _ = S[O]; 17601 v && (_ = Math.floor(_)), S[O] < i.virtualSize + S[0] && T.push(_); 17602 } 17603 S.splice(0, S.length), S.push(...T); 17604 } 17605 }, g = () => { 17606 o = i.params.grid && i.params.grid.rows > 1; 17607 }
17607, p = () => { 17608 let { params: m, el: S } = i, b = m.grid && m.grid.rows > 1; 17609 o && !b ? (S.classList.remove(`${m.containerModifierClass}grid`, `${m.containerModifierClass}grid-column`), a = 1, i.emitContainerClasses()) : !o && b && (S.classList.add(`${m.containerModifierClass}grid`), m.grid.fill === "column" && S.classList.add(`${m.containerModifierClass}grid-column`), i.emitContainerClasses()), o = b; 17610 }; 17611 r("init", g), r("update", p), i.grid = { 17612 initSlides: c, 17613 unsetSlides: d, 17614 updateSlide: u, 17615 updateWrapperSize: h 17616 }; 17617} 17618function B2(e) { 17619 let i = this, { params: t, slidesEl: r } = i; 17620 t.loop && i.loopDestroy(); 17621 let s = (n) => { 17622 if (typeof n == "string") { 17623 let a = document.createElement("div"); 17624 Rr(a, n), r.append(a.children[0]), Rr(a, ""); 17625 } else r.append(n); 17626 }; 17627 if (typeof e == "object" && "length" in e) for (let n = 0; n < e.length; n += 1) e[n] && s(e[n]); 17628 else s(e); 17629 i.recalcSlides(), t.loop && i.loopCreate(), (!t.observer || i.isElement) && i.update(); 17630} 17631function D2(e) { 17632 let i = this, { params: t, activeIndex: r, slidesEl: s } = i; 17633 t.loop && i.loopDestroy(); 17634 let n = r + 1, a = (o) => { 17635 if (typeof o == "string") { 17636 let l = document.createElement("div"); 17637 Rr(l, o), s.prepend(l.children[0]), Rr(l, ""); 17638 } else s.prepend(o); 17639 }; 17640 if (typeof e == "object" && "length" in e) { 17641 for (let o = 0; o < e.length; o += 1) e[o] && a(e[o]); 17642 n = r + e.length; 17643 } else a(e); 17644 i.recalcSlides(), t.loop && i.loopCreate(), (!t.observer || i.isElement) && i.update(), i.slideTo(n, 0, !1); 17645} 17646function F2(e, i) { 17647 let t = this, { params: r, activeIndex: s, slidesEl: n } = t, a = s; 17648 r.loop && (a -= t.loopedSlides, t.loopDestroy(), t.recalcSlides()); 17649 let o = t.slides.length; 17650 if (e <= 0) { 17651 t.prependSlide(i); 17652 return; 17653 } 17654 if (e >= o) { 17655 t.appendSlide(i); 17656 return; 17657 } 17658 let l = a > e ? a + 1 : a, c = []; 17659 for (let d = o - 1; d >= e; d -= 1) { 17660 let u = t.slides[d]; 17661 u.remove(), c.unshift(u); 17662 } 17663 if (typeof i == "object" && "length" in i) { 17664 for (let d = 0; d < i.length; d += 1) i[d] && n.append(i[d]); 17665 l = a > e ? a + i.length : a; 17666 } else n.append(i); 17667 for (let d = 0; d < c.length; d += 1) n.append(c[d]); 17668 t.recalcSlides(), r.loop && t.loopCreate(), (!r.observer || t.isElement) && t.update(), r.loop ? t.slideTo(l + t.loopedSlides, 0, !1) : t.slideTo(l, 0, !1); 17669} 17670function z2(e) { 17671 let i = this, { params: t, activeIndex: r } = i, s = r; 17672 t.loop && (s -= i.loopedSlides, i.loopDestroy()); 17673 let n = s, a; 17674 if (typeof e == "object" && "length" in e) { 17675 for (let o = 0; o < e.length; o += 1) a = e[o], i.slides[a] && i.slides[a].remove(), a < n && (n -= 1); 17676 n = Math.max(n, 0); 17677 } else a = e, i.slides[a] && i.slides[a].remove(), a < n && (n -= 1), n = Math.max(n, 0); 17678 i.recalcSlides(), t.loop && i.loopCreate(), (!t.observer || i.isElement) && i.update(), t.loop ? i.slideTo(n + i.loopedSlides, 0, !1) : i.slideTo(n, 0, !1); 17679} 17680function G2() { 17681 let e = this, i = []; 17682 for (let t = 0; t < e.slides.length; t += 1) i.push(t); 17683 e.removeSlide(i); 17684} 17685function V2(e) { 17686 let { swiper: i } = e; 17687 Object.assign(i, { 17688 appendSlide: B2.bind(i), 17689 prependSlide: D2.bind(i), 17690 addSlide: F2.bind(i), 17691 removeSlide: z2.bind(i), 17692 removeAllSlides: G2.bind(i) 17693 }); 17694} 17695function Zd(e) { 17696 let { swiper: i, duration: t, transformElements: r, allSlides: s } = e, { activeIndex: n } = i, a = (o) => o.parentElement ? o.parentElement : i.slides.find((l) => l.shadowRoot && l.shadowRoot === o.parentNode); 17697 if (i.params.virtualTranslate && t !== 0) { 17698 let o = !1, l; 17699 s ? l = r : l = r.filter((c) => { 17700 let d = c.classList.contains("swiper-slide-transform") ? a(c) : c; 17701 return i.getSlideIndex(d) === n; 17702 }), l.forEach((c) => { 17703 el(c, () => { 17704 if (o || !i || i.destroyed) return; 17705 o = !0, i.animating = !1; 17706 let d = new window.CustomEvent("transitionend", { 17707 bubbles: !0, 17708 cancelable: !0 17709 }); 17710 i.wrapperEl.dispatchEvent(d); 17711 }); 17712 }); 17713 } 17714} 17715function H2(e) { 17716 let { swiper: i, extendParams: t, on: r } = e; 17717 t({ fadeEffect: { crossFade: !1 } }), Ta({ 17718 effect: "fade", 17719 swiper: i, 17720 on: r, 17721 setTranslate: () => { 17722 let { slides: s } = i, n = i.params.fadeEffect; 17723 for (let a = 0; a < s.length; a += 1) { 17724 let o = i.slides[a], l = -o.swiperSlideOffset; 17725 i.params.virtualTranslate || (l -= i.translate); 17726 let c = 0; 17727 i.isHorizontal() || (c = l, l = 0); 17728 let d = i.params.fadeEffect.crossFade ? Math.max(1 - Math.abs(o.progress), 0) : 1 + Math.min(Math.max(o.progress, -1), 0), u = tl(n, o); 17729 u.style.opacity = d, u.style.transform = `translate3d(${l}px, ${c}px, 0px)`; 17730 } 17731 }, 17732 setTransition: (s) => { 17733 let n = i.slides.map((a) => kn(a));
vendor: 2,393 bytes, lines 17734-17780
17734 n.forEach((a) => { 17735 a.style.transitionDuration = `${s}ms`; 17736 }), Zd({ 17737 swiper: i, 17738 duration: s, 17739 transformElements: n, 17740 allSlides: !0 17741 }); 17742 }, 17743 overwriteParams: () => ({ 17744 slidesPerView: 1, 17745 slidesPerGroup: 1, 17746 watchSlidesProgress: !0, 17747 spaceBetween: 0, 17748 virtualTranslate: !i.params.cssMode 17749 }) 17750 }); 17751} 17752function U2(e) { 17753 let { swiper: i, extendParams: t, on: r } = e; 17754 t({ cubeEffect: { 17755 slideShadows: !0, 17756 shadow: !0, 17757 shadowOffset: 20, 17758 shadowScale: .94 17759 } }); 17760 let s = (n, a, o) => { 17761 let l = o ? n.querySelector(".swiper-slide-shadow-left") : n.querySelector(".swiper-slide-shadow-top"), c = o ? n.querySelector(".swiper-slide-shadow-right") : n.querySelector(".swiper-slide-shadow-bottom"); 17762 l || (l = Li("div", `swiper-slide-shadow-cube swiper-slide-shadow-${o ? "left" : "top"}`.split(" ")), n.append(l)), c || (c = Li("div", `swiper-slide-shadow-cube swiper-slide-shadow-${o ? "right" : "bottom"}`.split(" ")), n.append(c)), l && (l.style.opacity = Math.max(-a, 0)), c && (c.style.opacity = Math.max(a, 0)); 17763 }; 17764 Ta({ 17765 effect: "cube", 17766 swiper: i, 17767 on: r, 17768 setTranslate: () => { 17769 let { el: n, wrapperEl: a, slides: o, width: l, height: c, rtlTranslate: d, size: u, browser: h } = i, g = Qd(i), p = i.params.cubeEffect, m = i.isHorizontal(), S = i.virtual && i.params.virtual.enabled, b = 0, v; 17770 p.shadow && (m ? (v = i.wrapperEl.querySelector(".swiper-cube-shadow"), v || (v = Li("div", "swiper-cube-shadow"), i.wrapperEl.append(v)), v.style.height = `${l}px`) : (v = n.querySelector(".swiper-cube-shadow"), v || (v = Li("div", "swiper-cube-shadow"), n.append(v)))); 17771 for (let w = 0; w < o.length; w += 1) { 17772 let T = o[w], O = w; 17773 S && (O = parseInt(T.getAttribute("data-swiper-slide-index"), 10)); 17774 let _ = O * 90, z = Math.floor(_ / 360); 17775 d && (_ = -_, z = Math.floor(-_ / 360)); 17776 let V = Math.max(Math.min(T.progress, 1), -1), x = 0, $ = 0, I = 0; 17777 O % 4 === 0 ? (x = -z * 4 * u, I = 0) : (O - 1) % 4 === 0 ? (x = 0, I = -z * 4 * u) : (O - 2) % 4 === 0 ? (x = u + z * 4 * u, I = u) : (O - 3) % 4 === 0 && (x = -u, I = 3 * u + u * 4 * z), d && (x = -x), m || ($ = x, x = 0); 17778 let D = `rotateX(${g(m ? 0 : -_)}deg) rotateY(${g(m ? _ : 0)}deg) translate3d(${x}px, ${$}px, ${I}px)`; 17779 V <= 1 && V > -1 && (b = O * 90 + V * 90, d && (b = -O * 90 - V * 90)), T.style.transform = D, p.slideShadows && s(T, V, m); 17780 }
17781 if (a.style.transformOrigin = `50% 50% -${u / 2}px`, a.style["-webkit-transform-origin"] = `50% 50% -${u / 2}px`, p.shadow) if (m) v.style.transform = `translate3d(0px, ${l / 2 + p.shadowOffset}px, ${-l / 2}px) rotateX(89.99deg) rotateZ(0deg) scale(${p.shadowScale})`; 17782 else { 17783 let w = Math.abs(b) - Math.floor(Math.abs(b) / 90) * 90, T = 1.5 - (Math.sin(w * 2 * Math.PI / 360) / 2 + Math.cos(w * 2 * Math.PI / 360) / 2), O = p.shadowScale, _ = p.shadowScale / T, z = p.shadowOffset; 17784 v.style.transform = `scale3d(${O}, 1, ${_}) translate3d(0px, ${c / 2 + z}px, ${-c / 2 / _}px) rotateX(-89.99deg)`; 17785 } 17786 let y = (h.isSafari || h.isWebView) && h.needPerspectiveFix ? -u / 2 : 0; 17787 a.style.transform = `translate3d(0px,0,${y}px) rotateX(${g(i.isHorizontal() ? 0 : b)}deg) rotateY(${g(i.isHorizontal() ? -b : 0)}deg)`, a.style.setProperty("--swiper-cube-translate-z", `${y}px`); 17788 }, 17789 setTransition: (n) => { 17790 let { el: a, slides: o } = i; 17791 if (o.forEach((l) => { 17792 l.style.transitionDuration = `${n}ms`, l.querySelectorAll(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").forEach((c) => { 17793 c.style.transitionDuration = `${n}ms`; 17794 }); 17795 }), i.params.cubeEffect.shadow && !i.isHorizontal()) { 17796 let l = a.querySelector(".swiper-cube-shadow"); 17797 l && (l.style.transitionDuration = `${n}ms`); 17798 } 17799 }, 17800 recreateShadows: () => { 17801 let n = i.isHorizontal(); 17802 i.slides.forEach((a) => { 17803 let o = Math.max(Math.min(a.progress, 1), -1); 17804 s(a, o, n); 17805 }); 17806 }, 17807 getEffectParams: () => i.params.cubeEffect, 17808 perspective: () => !0, 17809 overwriteParams: () => ({ 17810 slidesPerView: 1, 17811 slidesPerGroup: 1, 17812 watchSlidesProgress: !0, 17813 resistanceRatio: 0, 17814 spaceBetween: 0, 17815 centeredSlides: !1, 17816 virtualTranslate: !0 17817 }) 17818 }); 17819} 17820function W2(e) { 17821 let { swiper: i, extendParams: t, on: r } = e; 17822 t({ flipEffect: { 17823 slideShadows: !0, 17824 limitRotation: !0 17825 } }); 17826 let s = (n, a) => { 17827 let o = i.isHorizontal() ? n.querySelector(".swiper-slide-shadow-left") : n.querySelector(".swiper-slide-shadow-top"), l = i.isHorizontal() ? n.querySelector(".swiper-slide-shadow-right") : n.querySelector(".swiper-slide-shadow-bottom"); 17828 o || (o = Na("flip", n, i.isHorizontal() ? "left" : "top")), l || (l = Na("flip", n, i.isHorizontal() ? "right" : "bottom")), o && (o.style.opacity = Math.max(-a, 0)), l && (l.style.opacity = Math.max(a, 0)); 17829 }; 17830 Ta({ 17831 effect: "flip", 17832 swiper: i, 17833 on: r, 17834 setTranslate: () => { 17835 let { slides: n, rtlTranslate: a } = i, o = i.params.flipEffect, l = Qd(i); 17836 for (let c = 0; c < n.length; c += 1) { 17837 let d = n[c], u = d.progress; 17838 i.params.flipEffect.limitRotation && (u = Math.max(Math.min(d.progress, 1), -1)); 17839 let h = d.swiperSlideOffset, g = -180 * u, p = 0, m = i.params.cssMode ? -h - i.translate : -h, S = 0; 17840 i.isHorizontal() ? a && (g = -g) : (S = m, m = 0, p = -g, g = 0), d.style.zIndex = -Math.abs(Math.round(u)) + n.length, o.slideShadows && s(d, u); 17841 let b = `translate3d(${m}px, ${S}px, 0px) rotateX(${l(p)}deg) rotateY(${l(g)}deg)`, v = tl(o, d); 17842 v.style.transform = b; 17843 } 17844 }, 17845 setTransition: (n) => { 17846 let a = i.slides.map((o) => kn(o)); 17847 a.forEach((o) => { 17848 o.style.transitionDuration = `${n}ms`, o.querySelectorAll(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").forEach((l) => { 17849 l.style.transitionDuration = `${n}ms`; 17850 }); 17851 }), Zd({ 17852 swiper: i, 17853 duration: n, 17854 transformElements: a 17855 }); 17856 }, 17857 recreateShadows: () => { 17858 i.params.flipEffect, i.slides.forEach((n) => { 17859 let a = n.progress; 17860 i.params.flipEffect.limitRotation && (a = Math.max(Math.min(n.progress, 1), -1)), s(n, a); 17861 }); 17862 }, 17863 getEffectParams: () => i.params.flipEffect, 17864 perspective: () => !0, 17865 overwriteParams: () => ({ 17866 slidesPerView: 1, 17867 slidesPerGroup: 1, 17868 watchSlidesProgress: !0, 17869 spaceBetween: 0, 17870 virtualTranslate: !i.params.cssMode 17871 }) 17872 }); 17873} 17874function j2(e) { 17875 let { swiper: i, extendParams: t, on: r } = e; 17876 t({ creativeEffect: { 17877 limitProgress: 1, 17878 shadowPerProgress: !1, 17879 progressMultiplier: 1, 17880 perspective: !0, 17881 prev: { 17882 translate: [ 17883 0, 17884 0, 17885 0 17886 ], 17887 rotate: [ 17888 0, 17889 0, 17890 0 17891 ], 17892 opacity: 1, 17893 scale: 1 17894 }, 17895 next: { 17896 translate: [ 17897 0, 17898 0, 17899 0 17900 ], 17901 rotate: [ 17902 0, 17903 0, 17904 0 17905 ], 17906 opacity: 1, 17907 scale: 1 17908 } 17909 } }); 17910 let s = (n) => typeof n == "string" ? n : `${n}px`; 17911 Ta({ 17912 effect: "creative", 17913 swiper: i, 17914 on: r, 17915 setTranslate: () => { 17916 let { slides: n, wrapperEl: a, slidesSizesGrid: o } = i, l = i.params.creativeEffect, { progressMultiplier: c } = l, d = i.params.centeredSlides, u = Qd(i); 17917 if (d) { 17918 let h = o[0] / 2 - i.params.slidesOffsetBefore || 0; 17919 a.style.transform = `translateX(calc(50% - ${h}px))`; 17920 } 17921 for (let h = 0; h < n.length; h += 1) { 17922 let g = n[h], p = g.progress, m = Math.min(Math.max(g.progress, -l.limitProgress), l.limitProgress), S = m; 17923 d || (S = Math.min(Math.max(g.originalProgress, -l.limitProgress), l.limitProgress)); 17924 let b = g.swiperSlideOffset, v = [ 17925 i.params.cssMode ? -b - i.translate : -b, 17926 0, 17927 0 17928 ], y = [ 17929 0, 17930 0, 17931 0 17932 ], w = !1; 17933 i.isHorizontal() || (v[1] = v[0], v[0] = 0); 17934 let T = { 17935 translate: [ 17936 0, 17937 0, 17938 0 17939 ], 17940 rotate: [ 17941 0, 17942 0, 17943 0 17944 ], 17945 scale: 1, 17946 opacity: 1 17947 }; 17948 m < 0 ? (T = l.next, w = !0) : m > 0 && (T = l.prev, w = !0), v.forEach((I, D) => { 17949 v[D] = `calc(${I}px + (${s(T.translate[D])} * ${Math.abs(m * c)}))`; 17950 }
17950), y.forEach((I, D) => { 17951 let H = T.rotate[D] * Math.abs(m * c); 17952 y[D] = H; 17953 }), g.style.zIndex = -Math.abs(Math.round(p)) + n.length; 17954 let O = v.join(", "), _ = `rotateX(${u(y[0])}deg) rotateY(${u(y[1])}deg) rotateZ(${u(y[2])}deg)`, z = S < 0 ? `scale(${1 + (1 - T.scale) * S * c})` : `scale(${1 - (1 - T.scale) * S * c})`, V = S < 0 ? 1 + (1 - T.opacity) * S * c : 1 - (1 - T.opacity) * S * c, x = `translate3d(${O}) ${_} ${z}`; 17955 if (w && T.shadow || !w) { 17956 let I = g.querySelector(".swiper-slide-shadow"); 17957 if (!I && T.shadow && (I = Na("creative", g)), I) { 17958 let D = l.shadowPerProgress ? m * (1 / l.limitProgress) : m; 17959 I.style.opacity = Math.min(Math.max(Math.abs(D), 0), 1); 17960 } 17961 } 17962 let $ = tl(l, g); 17963 $.style.transform = x, $.style.opacity = V, T.origin && ($.style.transformOrigin = T.origin); 17964 } 17965 }, 17966 setTransition: (n) => { 17967 let a = i.slides.map((o) => kn(o)); 17968 a.forEach((o) => { 17969 o.style.transitionDuration = `${n}ms`, o.querySelectorAll(".swiper-slide-shadow").forEach((l) => { 17970 l.style.transitionDuration = `${n}ms`; 17971 }); 17972 }), Zd({ 17973 swiper: i, 17974 duration: n, 17975 transformElements: a, 17976 allSlides: !0 17977 }); 17978 }, 17979 perspective: () => i.params.creativeEffect.perspective, 17980 overwriteParams: () => ({ 17981 watchSlidesProgress: !0, 17982 virtualTranslate: !i.params.cssMode 17983 }) 17984 }); 17985} 17986function Y2(e) { 17987 let { swiper: i, extendParams: t, on: r } = e; 17988 t({ cardsEffect: { 17989 slideShadows: !0, 17990 rotate: !0, 17991 perSlideRotate: 2, 17992 perSlideOffset: 8 17993 } }), Ta({ 17994 effect: "cards", 17995 swiper: i, 17996 on: r, 17997 setTranslate: () => { 17998 let { slides: s, activeIndex: n, rtlTranslate: a } = i, o = i.params.cardsEffect, { startTranslate: l, isTouched: c } = i.touchEventsData, d = a ? -i.translate : i.translate; 17999 for (let u = 0; u < s.length; u += 1) { 18000 let h = s[u], g = h.progress, p = Math.min(Math.max(g, -4), 4), m = h.swiperSlideOffset; 18001 i.params.centeredSlides && !i.params.cssMode && (i.wrapperEl.style.transform = `translateX(${i.minTranslate()}px)`), i.params.centeredSlides && i.params.cssMode && (m -= s[0].swiperSlideOffset); 18002 let S = i.params.cssMode ? -m - i.translate : -m, b = 0, v = -100 * Math.abs(p), y = 1, w = -o.perSlideRotate * p, T = o.perSlideOffset - Math.abs(p) * .75, O = i.virtual && i.params.virtual.enabled ? i.virtual.from + u : u, _ = (O === n || O === n - 1) && p > 0 && p < 1 && (c || i.params.cssMode) && d < l, z = (O === n || O === n + 1) && p < 0 && p > -1 && (c || i.params.cssMode) && d > l; 18003 if (_ || z) { 18004 let I = (1 - Math.abs((Math.abs(p) - .5) / .5)) ** .5; 18005 w += -28 * p * I, y += -.5 * I, T += 96 * I, b = `${-25 * I * Math.abs(p)}%`; 18006 } 18007 if (p < 0 ? S = `calc(${S}px ${a ? "-" : "+"} (${T * Math.abs(p)}%))` : p > 0 ? S = `calc(${S}px ${a ? "-" : "+"} (-${T * Math.abs(p)}%))` : S = `${S}px`, !i.isHorizontal()) { 18008 let I = b; 18009 b = S, S = I; 18010 } 18011 let V = p < 0 ? `${1 + (1 - y) * p}` : `${1 - (1 - y) * p}`, x = ` 18012 translate3d(${S}, ${b}, ${v}px) 18013 rotateZ(${o.rotate ? a ? -w : w : 0}deg) 18014 scale(${V}) 18015 `; 18016 if (o.slideShadows) { 18017 let I = h.querySelector(".swiper-slide-shadow"); 18018 I || (I = Na("cards", h)), I && (I.style.opacity = Math.min(Math.max((Math.abs(p) - .5) / .5, 0), 1)); 18019 } 18020 h.style.zIndex = -Math.abs(Math.round(g)) + s.length; 18021 let $ = tl(o, h); 18022 $.style.transform = x; 18023 } 18024 }, 18025 setTransition: (s) => { 18026 let n = i.slides.map((a) => kn(a)); 18027 n.forEach((a) => { 18028 a.style.transitionDuration = `${s}ms`, a.querySelectorAll(".swiper-slide-shadow").forEach((o) => { 18029 o.style.transitionDuration = `${s}ms`; 18030 }); 18031 }), Zd({ 18032 swiper: i, 18033 duration: s, 18034 transformElements: n 18035 }); 18036 }, 18037 perspective: () => !0, 18038 overwriteParams: () => ({ 18039 _loopSwapReset: !1, 18040 watchSlidesProgress: !0, 18041 loopAdditionalSlides: i.params.cardsEffect.rotate ? 3 : 2, 18042 centeredSlides: !0, 18043 virtualTranslate: !i.params.cssMode 18044 }) 18045 }); 18046} 18047function K2() { 18048 let e = vt(), i = Ft(); 18049 return { 18050 smoothScroll: i.documentElement && i.documentElement.style && "scrollBehavior" in i.documentElement.style, 18051 touch: !!("ontouchstart" in e || e.DocumentTouch && i instanceof e.DocumentTouch) 18052 }; 18053} 18054function jI() { 18055 return tS || (tS = K2()), tS; 18056} 18057function q2(e) { 18058 let { userAgent: i } = e === void 0 ? {}
18058 : e, t = jI(), r = vt(), s = r.navigator.platform, n = i || r.navigator.userAgent, a = { 18059 ios: !1, 18060 android: !1 18061 }, o = r.screen.width, l = r.screen.height, c = n.match(/(Android);?[\s\/]+([\d.]+)?/), d = n.match(/(iPad).*OS\s([\d_]+)/), u = n.match(/(iPod)(.*OS\s([\d_]+))?/), h = !d && n.match(/(iPhone\sOS|iOS)\s([\d_]+)/), g = s === "Win32", p = s === "MacIntel"; 18062 return !d && p && t.touch && [ 18063 "1024x1366", 18064 "1366x1024", 18065 "834x1194", 18066 "1194x834", 18067 "834x1112", 18068 "1112x834", 18069 "768x1024", 18070 "1024x768", 18071 "820x1180", 18072 "1180x820", 18073 "810x1080", 18074 "1080x810" 18075 ].indexOf(`${o}x${l}`) >= 0 && (d = n.match(/(Version)\/([\d.]+)/), d || (d = [ 18076 0, 18077 1, 18078 "13_0_0" 18079 ]), p = !1), c && !g && (a.os = "android", a.android = !0), (d || h || u) && (a.os = "ios", a.ios = !0), a; 18080} 18081function YI(e) { 18082 return e === void 0 && (e = {}), iS || (iS = q2(e)), iS; 18083} 18084function X2() { 18085 let e = vt(), i = YI(), t = !1; 18086 function r() { 18087 let o = e.navigator.userAgent.toLowerCase(); 18088 return o.indexOf("safari") >= 0 && o.indexOf("chrome") < 0 && o.indexOf("android") < 0; 18089 } 18090 if (r()) { 18091 let o = String(e.navigator.userAgent); 18092 if (o.includes("Version/")) { 18093 let [l, c] = o.split("Version/")[1].split(" ")[0].split(".").map((d) => Number(d)); 18094 t = l < 16 || l === 16 && c < 2; 18095 } 18096 } 18097 let s = /(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(e.navigator.userAgent), n = r(), a = n || s && i.ios; 18098 return { 18099 isSafari: t || n, 18100 needPerspectiveFix: t, 18101 need3dFix: a, 18102 isWebView: s 18103 }; 18104} 18105function KI() { 18106 return rS || (rS = X2()), rS; 18107} 18108function J2(e) { 18109 let { swiper: i, on: t, emit: r } = e, s = vt(), n = null, a = null, o = () => { 18110 !i || i.destroyed || !i.initialized || (r("beforeResize"), r("resize")); 18111 }, l = () => { 18112 !i || i.destroyed || !i.initialized || (n = new ResizeObserver((u) => { 18113 a = s.requestAnimationFrame(() => { 18114 let { width: h, height: g } = i, p = h, m = g; 18115 u.forEach((S) => { 18116 let { contentBoxSize: b, contentRect: v, target: y } = S; 18117 y && y !== i.el || (p = v ? v.width : (b[0] || b).inlineSize, m = v ? v.height : (b[0] || b).blockSize); 18118 }), (p !== h || m !== g) && o(); 18119 }); 18120 }), n.observe(i.el)); 18121 }, c = () => { 18122 a && s.cancelAnimationFrame(a), n && n.unobserve && i.el && (n.unobserve(i.el), n = null); 18123 }, d = () => { 18124 !i || i.destroyed || !i.initialized || r("orientationchange"); 18125 }; 18126 t("init", () => { 18127 if (i.params.resizeObserver && typeof s.ResizeObserver < "u") { 18128 l(); 18129 return; 18130 } 18131 s.addEventListener("resize", o), s.addEventListener("orientationchange", d); 18132 }), t("destroy", () => { 18133 c(), s.removeEventListener("resize", o), s.removeEventListener("orientationchange", d); 18134 }); 18135} 18136function Q2(e) { 18137 let { swiper: i, extendParams: t, on: r, emit: s } = e, n = [], a = vt(), o = function(d, u) { 18138 u === void 0 && (u = {}); 18139 let h = new (a.MutationObserver || a.WebkitMutationObserver)((g) => { 18140 if (i.__preventObserver__) return; 18141 if (g.length === 1) { 18142 s("observerUpdate", g[0]); 18143 return; 18144 } 18145 let p = function() { 18146 s("observerUpdate", g[0]); 18147 }; 18148 a.requestAnimationFrame ? a.requestAnimationFrame(p) : a.setTimeout(p, 0); 18149 }); 18150 h.observe(d, { 18151 attributes: typeof u.attributes > "u" ? !0 : u.attributes, 18152 childList: i.isElement || (typeof u.childList > "u" ? !0 : u).childList, 18153 characterData: typeof u.characterData > "u" ? !0 : u.characterData 18154 }), n.push(h); 18155 }, l = () => { 18156 if (i.params.observer) { 18157 if (i.params.observeParents) { 18158 let d = xn(i.hostEl); 18159 for (let u = 0; u < d.length; u += 1) o(d[u]); 18160 } 18161 o(i.hostEl, { childList: i.params.observeSlideChildren }), o(i.wrapperEl, { attributes: !1 }); 18162 } 18163 }, c = () => { 18164 n.forEach((d) => { 18165 d.disconnect(); 18166 }), n.splice(0, n.length); 18167 }; 18168 t({ 18169 observer: !1, 18170 observeParents: !1, 18171 observeSlideChildren: !1 18172 }), r("init", l), r("destroy", c); 18173} 18174function Z2() { 18175 let e = this, i, t, r = e.el; 18176 typeof e.params.width < "u" && e.params.width !== null ? i = e.params.width : i = r.clientWidth, typeof e.params.height < "u" && e.params.height !== null ? t = e.params.height : t = r.clientHeight, !(i === 0 && e.isHorizontal() || t === 0 && e.isVertical()) && (i = i - parseInt(Vs(r, "padding-left") || 0, 10) - parseInt(Vs(r, "padding-right") || 0, 10), t = t - parseInt(Vs(r, "padding-top") || 0, 10) - parseInt(Vs(r, "padding-bottom") || 0, 10), Number.isNaN(i) && (i = 0), Number.isNaN(t) && (t = 0), Object.assign(e, { 18177 width: i, 18178 height: t, 18179 size: e.isHorizontal() ? i : t 18180 })); 18181} 18182function eF() { 18183 let e = this; 18184 function i(x, $) { 18185 return parseFloat(x.getPropertyValue(e.getDirectionLabel($)) || 0); 18186 } 18187 let t = e.params, { wrapperEl: r, slidesEl: s, size: n, rtlTranslate: a, wrongRTL: o } = e, l = e.virtual && t.virtual.enabled, c = l ? e.virtual.slides.length : e.slides.length, d = Qt(s, `.${e.params.slideClass}, swiper-slide`), u = l ? e.virtual.slides.length : d.length, h
18187= [], g = [], p = [], m = t.slidesOffsetBefore; 18188 typeof m == "function" && (m = t.slidesOffsetBefore.call(e)); 18189 let S = t.slidesOffsetAfter; 18190 typeof S == "function" && (S = t.slidesOffsetAfter.call(e)); 18191 let b = e.snapGrid.length, v = e.slidesGrid.length, y = t.spaceBetween, w = -m, T = 0, O = 0; 18192 if (typeof n > "u") return; 18193 typeof y == "string" && y.indexOf("%") >= 0 ? y = parseFloat(y.replace("%", "")) / 100 * n : typeof y == "string" && (y = parseFloat(y)), e.virtualSize = -y, d.forEach((x) => { 18194 a ? x.style.marginLeft = "" : x.style.marginRight = "", x.style.marginBottom = "", x.style.marginTop = ""; 18195 }), t.centeredSlides && t.cssMode && (Qo(r, "--swiper-centered-offset-before", ""), Qo(r, "--swiper-centered-offset-after", "")); 18196 let _ = t.grid && t.grid.rows > 1 && e.grid; 18197 _ ? e.grid.initSlides(d) : e.grid && e.grid.unsetSlides(); 18198 let z, V = t.slidesPerView === "auto" && t.breakpoints && Object.keys(t.breakpoints).filter((x) => typeof t.breakpoints[x].slidesPerView < "u").length > 0; 18199 for (let x = 0; x < u; x += 1) { 18200 z = 0; 18201 let $; 18202 if (d[x] && ($ = d[x]), _ && e.grid.updateSlide(x, $, d), !(d[x] && Vs($, "display") === "none")) { 18203 if (t.slidesPerView === "auto") { 18204 V && (d[x].style[e.getDirectionLabel("width")] = ""); 18205 let I = getComputedStyle($), D = $.style.transform, H = $.style.webkitTransform; 18206 if (D && ($.style.transform = "none"), H && ($.style.webkitTransform = "none"), t.roundLengths) z = e.isHorizontal() ? Qv($, "width", !0) : Qv($, "height", !0); 18207 else { 18208 let F = i(I, "width"), K = i(I, "padding-left"), B = i(I, "padding-right"), L = i(I, "margin-left"), X = i(I, "margin-right"), Ve = I.getPropertyValue("box-sizing"); 18209 if (Ve && Ve === "border-box") z = F + L + X; 18210 else { 18211 let { clientWidth: at, offsetWidth: Ct } = $; 18212 z = F + K + B + L + X + (Ct - at); 18213 } 18214 } 18215 D && ($.style.transform = D), H && ($.style.webkitTransform = H), t.roundLengths && (z = Math.floor(z)); 18216 } else z = (n - (t.slidesPerView - 1) * y) / t.slidesPerView, t.roundLengths && (z = Math.floor(z)), d[x] && (d[x].style[e.getDirectionLabel("width")] = `${z}px`); 18217 d[x] && (d[x].swiperSlideSize = z), p.push(z), t.centeredSlides ? (w = w + z / 2 + T / 2 + y, T === 0 && x !== 0 && (w = w - n / 2 - y), x === 0 && (w = w - n / 2 - y), Math.abs(w) < 1 / 1e3 && (w = 0), t.roundLengths && (w = Math.floor(w)), O % t.slidesPerGroup === 0 && h.push(w), g.push(w)) : (t.roundLengths && (w = Math.floor(w)), (O - Math.min(e.params.slidesPerGroupSkip, O)) % e.params.slidesPerGroup === 0 && h.push(w), g.push(w), w = w + z + y), e.virtualSize += z + y, T = z, O += 1; 18218 } 18219 } 18220 if (e.virtualSize = Math.max(e.virtualSize, n) + S, a && o && (t.effect === "slide" || t.effect === "coverflow") && (r.style.width = `${e.virtualSize + y}px`), t.setWrapperSize && (r.style[e.getDirectionLabel("width")] = `${e.virtualSize + y}px`), _ && e.grid.updateWrapperSize(z, h), !t.centeredSlides) { 18221 let x = []; 18222 for (let $ = 0; $ < h.length; $ += 1) { 18223 let I = h[$]; 18224 t.roundLengths && (I = Math.floor(I)), h[$] <= e.virtualSize - n && x.push(I); 18225 } 18226 h = x, Math.floor(e.virtualSize - n) - Math.floor(h[h.length - 1]) > 1 && h.push(e.virtualSize - n); 18227 } 18228 if (l && t.loop) { 18229 let x = p[0] + y; 18230 if (t.slidesPerGroup > 1) { 18231 let $ = Math.ceil((e.virtual.slidesBefore + e.virtual.slidesAfter) / t.slidesPerGroup), I = x * t.slidesPerGroup; 18232 for (let D = 0; D < $; D += 1) h.push(h[h.length - 1] + I); 18233 } 18234 for (let $ = 0; $ < e.virtual.slidesBefore + e.virtual.slidesAfter; $ += 1) t.slidesPerGroup === 1 && h.push(h[h.length - 1] + x), g.push(g[g.length - 1] + x), e.virtualSize += x; 18235 } 18236 if (h.length === 0 && (h = [0]), y !== 0) { 18237 let x = e.isHorizontal() && a ? "marginLeft" : e.getDirectionLabel("marginRight"); 18238 d.filter(($, I) => !t.cssMode || t.loop ? !0 : I !== d.length - 1).forEach(($) => { 18239 $.style[x] = `${y}px`; 18240 }); 18241 } 18242 if (t.centeredSlides && t.centeredSlidesBounds) { 18243 let x = 0; 18244 p.forEach((I) => { 18245 x += I + (y || 0); 18246 }), x -= y; 18247 let $ = x > n ? x - n : 0; 18248 h = h.map((I) => I <= 0 ? -m : I > $ ? $ + S : I); 18249 } 18250 if (t.centerInsufficientSlides) { 18251 let x = 0; 18252 p.forEach((I) => { 18253 x += I + (y || 0); 18254 }), x -= y;
18255 let $ = (t.slidesOffsetBefore || 0) + (t.slidesOffsetAfter || 0); 18256 if (x + $ < n) { 18257 let I = (n - x - $) / 2; 18258 h.forEach((D, H) => { 18259 h[H] = D - I; 18260 }), g.forEach((D, H) => { 18261 g[H] = D + I; 18262 }); 18263 } 18264 } 18265 if (Object.assign(e, { 18266 slides: d, 18267 snapGrid: h, 18268 slidesGrid: g, 18269 slidesSizesGrid: p 18270 }), t.centeredSlides && t.cssMode && !t.centeredSlidesBounds) { 18271 Qo(r, "--swiper-centered-offset-before", `${-h[0]}px`), Qo(r, "--swiper-centered-offset-after", `${e.size / 2 - p[p.length - 1] / 2}px`); 18272 let x = -e.snapGrid[0], $ = -e.slidesGrid[0]; 18273 e.snapGrid = e.snapGrid.map((I) => I + x), e.slidesGrid = e.slidesGrid.map((I) => I + $); 18274 } 18275 if (u !== c && e.emit("slidesLengthChange"), h.length !== b && (e.params.watchOverflow && e.checkOverflow(), e.emit("snapGridLengthChange")), g.length !== v && e.emit("slidesGridLengthChange"), t.watchSlidesProgress && e.updateSlidesOffset(), e.emit("slidesUpdated"), !l && !t.cssMode && (t.effect === "slide" || t.effect === "fade")) { 18276 let x = `${t.containerModifierClass}backface-hidden`, $ = e.el.classList.contains(x); 18277 u <= t.maxBackfaceHiddenSlides ? $ || e.el.classList.add(x) : $ && e.el.classList.remove(x); 18278 } 18279} 18280function tF(e) { 18281 let i = this, t = [], r = i.virtual && i.params.virtual.enabled, s = 0, n; 18282 typeof e == "number" ? i.setTransition(e) : e === !0 && i.setTransition(i.params.speed); 18283 let a = (o) => r ? i.slides[i.getSlideIndexByData(o)] : i.slides[o]; 18284 if (i.params.slidesPerView !== "auto" && i.params.slidesPerView > 1) if (i.params.centeredSlides) (i.visibleSlides || []).forEach((o) => { 18285 t.push(o); 18286 }); 18287 else for (n = 0;
18287 n < Math.ceil(i.params.slidesPerView); n += 1) { 18288 let o = i.activeIndex + n; 18289 if (o > i.slides.length && !r) break; 18290 t.push(a(o)); 18291 } 18292 else t.push(a(i.activeIndex)); 18293 for (n = 0; n < t.length; n += 1) if (typeof t[n] < "u") { 18294 let o = t[n].offsetHeight; 18295 s = o > s ? o : s; 18296 } 18297 (s || s === 0) && (i.wrapperEl.style.height = `${s}px`); 18298} 18299function iF() { 18300 let e = this, i = e.slides, t = e.isElement ? e.isHorizontal() ? e.wrapperEl.offsetLeft : e.wrapperEl.offsetTop : 0; 18301 for (let r = 0; r < i.length; r += 1) i[r].swiperSlideOffset = (e.isHorizontal() ? i[r].offsetLeft : i[r].offsetTop) - t - e.cssOverflowAdjustment(); 18302} 18303function rF(e) { 18304 e === void 0 && (e = this && this.translate || 0); 18305 let i = this, t = i.params, { slides: r, rtlTranslate: s, snapGrid: n } = i; 18306 if (r.length === 0) return; 18307 typeof r[0].swiperSlideOffset > "u" && i.updateSlidesOffset(); 18308 let a = -e; 18309 s && (a = e), i.visibleSlidesIndexes = [], i.visibleSlides = []; 18310 let o = t.spaceBetween; 18311 typeof o == "string" && o.indexOf("%") >= 0 ? o = parseFloat(o.replace("%", "")) / 100 * i.size : typeof o == "string" && (o = parseFloat(o)); 18312 for (let l = 0; l < r.length; l += 1) { 18313 let c = r[l], d = c.swiperSlideOffset; 18314 t.cssMode && t.centeredSlides && (d -= r[0].swiperSlideOffset); 18315 let u = (a + (t.centeredSlides ? i.minTranslate() : 0) - d) / (c.swiperSlideSize + o), h = (a - n[0] + (t.centeredSlides ? i.minTranslate() : 0) - d) / (c.swiperSlideSize + o), g = -(a - d), p = g + i.slidesSizesGrid[l], m = g >= 0 && g <= i.size - i.slidesSizesGrid[l], S = g >= 0 && g < i.size - 1 || p > 1 && p <= i.size || g <= 0 && p >= i.size; 18316 S && (i.visibleSlides.push(c), i.visibleSlidesIndexes.push(l)), sS(c, S, t.slideVisibleClass), sS(c, m, t.slideFullyVisibleClass), c.progress = s ? -u : u, c.originalProgress = s ? -h : h; 18317 } 18318} 18319function sF(e) { 18320 let i = this; 18321 if (typeof e > "u") { 18322 let d = i.rtlTranslate ? -1 : 1; 18323 e = i && i.translate && i.translate * d || 0; 18324 } 18325 let t = i.params, r = i.maxTranslate() - i.minTranslate(), { progress: s, isBeginning: n, isEnd: a, progressLoop: o } = i, l = n, c = a; 18326 if (r === 0) s = 0, n = !0, a = !0; 18327 else { 18328 s = (e - i.minTranslate()) / r; 18329 let d = Math.abs(e - i.minTranslate()) < 1, u = Math.abs(e - i.maxTranslate()) < 1; 18330 n = d || s <= 0, a = u || s >= 1, d && (s = 0), u && (s = 1); 18331 } 18332 if (t.loop) { 18333 let d = i.getSlideIndexByData(0), u = i.getSlideIndexByData(i.slides.length - 1), h = i.slidesGrid[d], g = i.slidesGrid[u], p = i.slidesGrid[i.slidesGrid.length - 1], m = Math.abs(e); 18334 m >= h ? o = (m - h) / p : o = (m + p - g) / p, o > 1 && (o -= 1); 18335 } 18336 Object.assign(i, { 18337 progress: s, 18338 progressLoop: o, 18339 isBeginning: n, 18340 isEnd: a 18341 }), (t.watchSlidesProgress || t.centeredSlides && t.autoHeight) && i.updateSlidesProgress(e), n && !l && i.emit("reachBeginning toEdge"), a && !c && i.emit("reachEnd toEdge"), (l && !n || c && !a) && i.emit("fromEdge"), i.emit("progress", s); 18342} 18343function nF() { 18344 let e = this, { slides: i, params: t, slidesEl: r, activeIndex: s } = e, n = e.virtual && t.virtual.enabled, a = e.grid && t.grid && t.grid.rows > 1, o = (u) => Qt(r, `.${t.slideClass}${u}, swiper-slide${u}`)[0], l, c, d; 18345 if (n) if (t.loop) { 18346 let u = s - e.virtual.slidesBefore; 18347 u < 0 && (u = e.virtual.slides.length + u), u >= e.virtual.slides.length && (u -= e.virtual.slides.length), l = o(`[data-swiper-slide-index="${u}"]`); 18348 } else l = o(`[data-swiper-slide-index="${s}"]`); 18349 else a ? (l = i.find((u) => u.column === s), d = i.find((u) => u.column === s + 1), c = i.find((u) => u.column === s - 1)) : l = i[s]; 18350 l && (a || (d = E2(l, `.${t.slideClass}, swiper-slide`)[0], t.loop && !d && (d = i[0]), c = w2(l, `.${t.slideClass}, swiper-slide`)[0], t.loop)), i.forEach((u) => { 18351 eu(u, u === l, t.slideActiveClass), eu(u, u === d, t.slideNextClass), eu(u, u === c, t.slidePrevClass); 18352 }), e.emitSlidesClasses(); 18353} 18354function aF(e) { 18355 let { slidesGrid: i, params: t } = e, r = e.rtlTranslate ? e.translate : -e.translate, s; 18356 for (let n = 0; n < i.length; n += 1) typeof i[n + 1] < "u" ? r >= i[n] && r < i[n + 1] - (i[n + 1] - i[n]) / 2 ? s = n : r >= i[n] && r < i[n + 1] && (s = n + 1) : r >= i[n] && (s = n); 18357 return t.normalizeSlideIndex && (s < 0 || typeof s > "u") && (s = 0), s; 18358} 18359function oF(e) { 18360 let i = this, t = i.rtlTranslate ? i.translate : -i.translate, { snapGrid: r, params: s, activeIndex: n, realIndex: a, snapIndex: o } = i, l = e, c, d = (g) => { 18361 let p = g - i.virtual.slidesBefore; 18362 return p < 0 && (p = i.virtual.slides.length + p), p >= i.virtual.slides.length && (p -= i.virtual.slides.length), p; 18363 }; 18364 if (typeof l > "u" && (l = aF(i)), r.indexOf(t) >= 0) c = r.indexOf(t); 18365 else { 18366 let g = Math.min(s.slidesPerGroupSkip, l); 18367 c = g + Math.floor((l - g) / s.slidesPerGroup); 18368 } 18369 if (c >= r.length && (c = r.length - 1), l === n && !i.params.loop) { 18370 c !== o && (i.snapIndex = c, i.emit("snapIndexChange")); 18371 return; 18372 } 18373 if (l === n && i.params.loop && i.virtual && i.params.virtual.enabled) { 18374 i.realIndex = d(l); 18375 return; 18376 } 18377 let u = i.grid && s.grid && s.grid.rows > 1, h; 18378 if (i.virtual && s.virtual.enabled && s.loop) h = d(l); 18379 else if (u) { 18380 let g = i.slides.find((m) =>
18380 m.column === l), p = parseInt(g.getAttribute("data-swiper-slide-index"), 10); 18381 Number.isNaN(p) && (p = Math.max(i.slides.indexOf(g), 0)), h = Math.floor(p / s.grid.rows); 18382 } else if (i.slides[l]) { 18383 let g = i.slides[l].getAttribute("data-swiper-slide-index"); 18384 g ? h = parseInt(g, 10) : h = l; 18385 } else h = l; 18386 Object.assign(i, { 18387 previousSnapIndex: o, 18388 snapIndex: c, 18389 previousRealIndex: a, 18390 realIndex: h, 18391 previousIndex: n, 18392 activeIndex: l 18393 }), i.initialized && iu(i), i.emit("activeIndexChange"), i.emit("snapIndexChange"), (i.initialized || i.params.runCallbacksOnInit) && (a !== h && i.emit("realIndexChange"), i.emit("slideChange")); 18394} 18395function lF(e, i) { 18396 let t = this, r = t.params, s = e.closest(`.${r.slideClass}, swiper-slide`); 18397 !s && t.isElement && i && i.length > 1 && i.includes(e) && [...i.slice(i.indexOf(e) + 1, i.length)].forEach((o) => { 18398 !s && o.matches && o.matches(`.${r.slideClass}, swiper-slide`) && (s = o); 18399 }); 18400 let n = !1, a; 18401 if (s) { 18402 for (let o = 0; o < t.slides.length; o += 1) if (t.slides[o] === s) { 18403 n = !0, a = o; 18404 break; 18405 } 18406 } 18407 if (s && n) t.clickedSlide = s, t.virtual && t.params.virtual.enabled ? t.clickedIndex = parseInt(s.getAttribute("data-swiper-slide-index"), 10) : t.clickedIndex = a; 18408 else { 18409 t.clickedSlide = void 0, t.clickedIndex = void 0; 18410 return; 18411 } 18412 r.slideToClickedSlide && t.clickedIndex !== void 0 && t.clickedIndex !== t.activeIndex && t.slideToClickedSlide(); 18413} 18414function cF(e) { 18415 e === void 0 && (e = this.isHorizontal() ? "x" : "y"); 18416 let i = this, { params: t, rtlTranslate: r, translate: s, wrapperEl: n } = i; 18417 if (t.virtualTranslate) return r ? -s : s; 18418 if (t.cssMode) return s; 18419 let a = Jv(n, e); 18420 return a += i.cssOverflowAdjustment(), r && (a = -a), a || 0; 18421} 18422function dF(e, i) { 18423 let t = this, { rtlTranslate: r, params: s, wrapperEl: n, progress: a } = t, o = 0, l = 0, c = 0; 18424 t.isHorizontal() ? o = r ? -e : e : l = e, s.roundLengths && (o = Math.floor(o), l = Math.floor(l)), t.previousTranslate = t.translate, t.translate = t.isHorizontal() ? o : l, s.cssMode ? n[t.isHorizontal() ? "scrollLeft" : "scrollTop"] = t.isHorizontal() ? -o : -l : s.virtualTranslate || (t.isHorizontal() ? o -= t.cssOverflowAdjustment() : l -= t.cssOverflowAdjustment(), n.style.transform = `translate3d(${o}px, ${l}px, ${c}px)`); 18425 let d, u = t.maxTranslate() - t.minTranslate(); 18426 u === 0 ? d = 0 : d = (e - t.minTranslate()) / u, d !== a && t.updateProgress(e), t.emit("setTranslate", t.translate, i); 18427} 18428function uF() { 18429 return -this.snapGrid[0]; 18430} 18431function pF() { 18432 return -this.snapGrid[this.snapGrid.length - 1]; 18433} 18434function hF(e, i, t, r, s) { 18435 e === void 0 && (e = 0), i === void 0 && (i = this.params.speed), t === void 0 && (t = !0), r === void 0 && (r = !0); 18436 let n = this, { params: a, wrapperEl: o } = n; 18437 if (n.animating && a.preventInteractionOnTransition) return !1; 18438 let l = n.minTranslate(), c = n.maxTranslate(), d; 18439 if (r && e > l ? d = l : r && e < c ? d = c : d = e, n.updateProgress(d), a.cssMode) { 18440 let u = n.isHorizontal(); 18441 if (i === 0) o[u ? "scrollLeft" : "scrollTop"] = -d; 18442 else { 18443 if (!n.support.smoothScroll) return VI({ 18444 swiper: n, 18445 targetPosition: -d, 18446 side: u ? "left" : "top" 18447 }), !0; 18448 o.scrollTo({ 18449 [u ? "left" : "top"]: -d, 18450 behavior: "smooth" 18451 }); 18452 } 18453 return !0; 18454 } 18455 return i === 0 ? (n.setTransition(0), n.setTranslate(d), t && (n.emit("beforeTransitionStart", i, s), n.emit("transitionEnd"))) : (n.setTransition(i), n.setTranslate(d), t && (n.emit("beforeTransitionStart", i, s), n.emit("transitionStart")), n.animating || (n.animating = !0, n.onTranslateToWrapperTransitionEnd || (n.onTranslateToWrapperTransitionEnd = function(u) { 18456 !n || n.destroyed || u.target === this && (n.wrapperEl.removeEventListener("transitionend", n.onTranslateToWrapperTransitionEnd), n.onTranslateToWrapperTransitionEnd = null, delete n.onTranslateToWrapperTransitionEnd, n.animating = !1, t && n.emit("transitionEnd")); 18457 }), n.wrapperEl.addEventListener("transitionend", n.onTranslateToWrapperTransitionEnd))), !0; 18458} 18459function mF(e, i) { 18460 let t = this; 18461 t.params.cssMode || (t.wrapperEl.style.transitionDuration = `${e}ms`, t.wrapperEl.style.transitionDelay = e === 0 ? "0ms" : ""), t.emit("setTransition", e, i); 18462} 18463function qI(e) { 18464 let { swiper: i, runCallbacks: t, direction: r, step: s } = e, { activeIndex: n, previousIndex: a } = i, o = r; 18465 o || (n > a ? o = "next" : n < a ? o = "prev" : o = "reset"), i.emit(`transition${s}`), t && o === "reset" ? i.emit(`slideResetTransition${s}`) : t && n !== a && (i.emit(`slideChangeTransition${s}`), o === "next" ? i.emit(`slideNextTransition${s}`) : i.emit(`slidePrevTransition${s}`)); 18466} 18467function fF(e, i) { 18468 e === void 0 && (e = !0); 18469 let t = this, { params: r } = t; 18470 r.cssMode || (r.autoHeight && t.updateAutoHeight(), qI({ 18471 swiper: t, 18472 runCallbacks: e, 18473 direction: i, 18474 step: "Start" 18475 })); 18476} 18477function gF(e, i) { 18478 e === void 0 && (e = !0); 18479 let t = this, { params: r } = t; 18480 t.animating = !1, !r.cssMode && (t.setTransition(0), qI({ 18481 swiper: t, 18482 runCallbacks: e, 18483 direction: i, 18484 step: "End" 18485 })); 18486} 18487function vF(e, i, t, r, s) { 18488 e === void 0 && (e = 0), t === void 0 && (t = !0), typeof e == "string" && (e = parseInt(e, 10)); 18489 let n = this, a = e; 18490 a < 0 && (a = 0); 18491 let { params: o, snapGrid: l, slidesGrid: c, previousIndex: d, activeIndex: u, rtlTranslate: h, wrapperEl: g, enabled: p } = n; 18492 if (!p && !r && !s || n.destroyed || n.animating && o.preventInteractionOnTransition) return !1; 18493 typeof i > "u" && (i = n.params.speed); 18494 let m = Math.min(n.params.slidesPerGroupSkip, a), S = m + Math.floor((a - m) / n.params.slidesPerGroup); 18495 S >= l.length && (S = l.length - 1); 18496 let b = -l[S]; 18497 if (o.normalizeSlideIndex) for (let T = 0; T < c.length; T += 1) { 18498 let O = -Math.floor(b * 100), _ = Math.floor(c[T] * 100), z = Math.floor(c[T + 1] * 100); 18499 typeof c[T + 1] < "u" ? O >= _ && O < z - (z - _) / 2 ? a = T : O >= _ && O < z && (a = T + 1) : O >= _ && (a = T); 18500 } 18501 if (n.initialized && a !== u && (!n.allowSlideNext && (h ? b > n.translate && b > n.minTranslate() : b < n.translate && b < n.minTranslate()) || !n.allowSlidePrev && b > n.translate && b > n.maxTranslate() && (u || 0) !== a)) return !1; 18502 a !== (d || 0) && t && n.emit("beforeSlideChangeStart"), n.updateProgress(b); 18503 let v; 18504 a > u ? v = "next" : a < u ? v = "prev" : v = "reset"; 18505 let y = n.virtual && n.params.virtual.enabled; 18506 if (!(y && s) && (h && -b === n.translate || !h && b === n.translate)) return n.updateActiveIndex(a), o.autoHeight && n.updateAutoHeight(), n.updateSlidesClasses(), o.effect !== "slide" && n.setTranslate(b), v !== "reset" && (n.transitionStart(t, v), n.transitionEnd(t, v)), !1; 18507 if (o.cssMode) { 18508 let T = n.isHorizontal(), O = h ? b : -b; 18509 if (i === 0) y && (n.wrapperEl.style.scrollSnapType = "none", n._immediateVirtual = !0), y && !n._cssModeVirtualInitialSet && n.params.initialSlide > 0 ? (n._cssModeVirtualInitialSet = !0, requestAnimationFrame(() => { 18510 g[T ? "scrollLeft" : "scrollTop"] = O; 18511 })) : g[T ? "scrollLeft" : "scrollTop"] = O, y && requestAnimationFrame(() => { 18512 n.wrapperEl.style.scrollSnapType = "", n._immediateVirtual = !1; 18513 }); 18514 else { 18515 if (!n.support.smoothScroll) return VI({ 18516 swiper: n, 18517 targetPosition: O, 18518 side: T ? "left" : "top" 18519 }), !0; 18520 g.scrollTo({ 18521 [T ? "left" : "top"]: O, 18522 behavior: "smooth" 18523 }); 18524 } 18525 return !0; 18526 } 18527 let w = KI().isSafari; 18528 return y && !s && w && n.isElement && n.virtual.update(!1, !1, a), n.setTransition(i), n.setTranslate(b), n.updateActiveIndex(a), n.updateSlidesClasses(), n.emit("beforeTransitionStart", i, r), n.transitionStart(t, v), i === 0 ? n.transitionEnd(t, v) : n.animating || (n.animating = !0, n.onSlideToWrapperTransitionEnd || (n.onSlideToWrapperTransitionEnd = function(T) { 18529 !n || n.destroyed || T.target === this && (n.wrapperEl.removeEventListener("transitionend", n.onSlideToWrapperTransitionEnd), n.onSlideToWrapperTransitionEnd = null, delete n.onSlideToWrapperTransitionEnd, n.transitionEnd(t, v)); 18530 }), n.wrapperEl.addEventListener("transitionend", n.onSlideToWrapperTransitionEnd)), !0; 18531} 18532function SF(e, i, t, r) { 18533 e === void 0 && (e = 0), t === void 0 && (t = !0), typeof e == "string" && (e = parseInt(e, 10)); 18534 let s = this; 18535 if (s.destroyed) return; 18536 typeof i > "u" && (i = s.params.speed); 18537 let n = s.grid && s.params.grid && s.params.grid.rows > 1, a = e; 18538 if (s.params.loop) if (s.virtual && s.params.virtual.enabled) a = a + s.virtual.slidesBefore; 18539 else { 18540 let o; 18541 if (n) { 18542 let h = a * s.params.grid.rows; 18543 o = s.slides.find((g) => g.getAttribute("data-swiper-slide-index") * 1 === h).column; 18544 } else o = s.getSlideIndexByData(a);
18545 let l = n ? Math.ceil(s.slides.length / s.params.grid.rows) : s.slides.length, { centeredSlides: c } = s.params, d = s.params.slidesPerView; 18546 d === "auto" ? d = s.slidesPerViewDynamic() : (d = Math.ceil(parseFloat(s.params.slidesPerView, 10)), c && d % 2 === 0 && (d = d + 1)); 18547 let u = l - o < d; 18548 if (c && (u = u || o < Math.ceil(d / 2)), r && c && s.params.slidesPerView !== "auto" && !n && (u = !1), u) { 18549 let h = c ? o < s.activeIndex ? "prev" : "next" : o - s.activeIndex - 1 < s.params.slidesPerView ? "next" : "prev"; 18550 s.loopFix({ 18551 direction: h, 18552 slideTo: !0, 18553 activeSlideIndex: h === "next" ? o + 1 : o - l + 1, 18554 slideRealIndex: h === "next" ? s.realIndex : void 0 18555 }); 18556 } 18557 if (n) { 18558 let h = a * s.params.grid.rows; 18559 a = s.slides.find((g) => g.getAttribute("data-swiper-slide-index") * 1 === h).column; 18560 } else a = s.getSlideIndexByData(a); 18561 } 18562 return requestAnimationFrame(() => { 18563 s.slideTo(a, i, t, r); 18564 }), s; 18565} 18566function bF(e, i, t) { 18567 i === void 0 && (i = !0); 18568 let r = this, { enabled: s, params: n, animating: a } = r; 18569 if (!s || r.destroyed) return r; 18570 typeof e > "u" && (e = r.params.speed); 18571 let o = n.slidesPerGroup; 18572 n.slidesPerView === "auto" && n.slidesPerGroup === 1 && n.slidesPerGroupAuto && (o = Math.max(r.slidesPerViewDynamic("current", !0), 1)); 18573 let l = r.activeIndex < n.slidesPerGroupSkip ? 1 : o, c = r.virtual && n.virtual.enabled; 18574 if (n.loop) { 18575 if (a && !c && n.loopPreventsSliding) return !1; 18576 if (r.loopFix({ direction: "next" }), r._clientLeft = r.wrapperEl.clientLeft, r.activeIndex === r.slides.length - 1 && n.cssMode) return requestAnimationFrame(() => { 18577 r.slideTo(r.activeIndex + l, e, i, t); 18578 }), !0; 18579 } 18580 return n.rewind && r.isEnd ? r.slideTo(0, e, i, t) : r.slideTo(r.activeIndex + l, e, i, t); 18581} 18582function yF(e, i, t) { 18583 i === void 0 && (i = !0); 18584 let r = this, { params: s, snapGrid: n, slidesGrid: a, rtlTranslate: o, enabled: l, animating: c } = r; 18585 if (!l || r.destroyed) return r; 18586 typeof e > "u" && (e = r.params.speed); 18587 let d = r.virtual && s.virtual.enabled; 18588 if (s.loop) { 18589 if (c && !d && s.loopPreventsSliding) return !1; 18590 r.loopFix({ direction: "prev" }), r._clientLeft = r.wrapperEl.clientLeft; 18591 } 18592 let u = o ? r.translate : -r.translate; 18593 function h(v) { 18594 return v < 0 ? -Math.floor(Math.abs(v)) : Math.floor(v); 18595 } 18596 let g = h(u), p = n.map((v) => h(v)), m = s.freeMode && s.freeMode.enabled, S = n[p.indexOf(g) - 1]; 18597 if (typeof S > "u" && (s.cssMode || m)) { 18598 let v; 18599 n.forEach((y, w) => { 18600 g >= y && (v = w); 18601 }), typeof v < "u" && (S = m ? n[v] : n[v > 0 ? v - 1 : v]); 18602 } 18603 let b = 0; 18604 if (typeof S < "u" && (b = a.indexOf(S), b < 0 && (b = r.activeIndex - 1), s.slidesPerView === "auto" && s.slidesPerGroup === 1 && s.slidesPerGroupAuto && (b = b - r.slidesPerViewDynamic("previous", !0) + 1, b = Math.max(b, 0))), s.rewind && r.isBeginning) { 18605 let v = r.params.virtual && r.params.virtual.enabled && r.virtual ? r.virtual.slides.length - 1 : r.slides.length - 1; 18606 return r.slideTo(v, e, i, t); 18607 } else if (s.loop && r.activeIndex === 0 && s.cssMode) return requestAnimationFrame(() => { 18608 r.slideTo(b, e, i, t); 18609 }), !0; 18610 return r.slideTo(b, e, i, t); 18611} 18612function wF(e, i, t) { 18613 i === void 0 && (i = !0); 18614 let r = this; 18615 if (!r.destroyed) return typeof e > "u" && (e = r.params.speed), r.slideTo(r.activeIndex, e, i, t); 18616} 18617function EF(e, i, t, r) { 18618 i === void 0 && (i = !0), r === void 0 && (r = .5); 18619 let s = this; 18620 if (s.destroyed) return; 18621 typeof e > "u" && (e = s.params.speed); 18622 let n = s.activeIndex, a = Math.min(s.params.slidesPerGroupSkip, n), o = a + Math.floor((n - a) / s.params.slidesPerGroup), l = s.rtlTranslate ? s.translate : -s.translate; 18623 if (l >= s.snapGrid[o]) { 18624 let c = s.snapGrid[o], d = s.snapGrid[o + 1]; 18625 l - c > (d - c) * r && (n += s.params.slidesPerGroup); 18626 } else { 18627 let c = s.snapGrid[o - 1], d = s.snapGrid[o]; 18628 l - c <= (d - c) * r && (n -= s.params.slidesPerGroup); 18629 } 18630 return n = Math.max(n, 0), n = Math.min(n, s.slidesGrid.length - 1), s.slideTo(n, e, i, t); 18631} 18632function CF() { 18633 let e = this; 18634 if (e.destroyed) return; 18635 let { params: i, slidesEl: t } = e, r = i.slidesPerView === "auto" ? e.slidesPerViewDynamic() : i.slidesPerView, s = e.getSlideIndexWhenGrid(e.clickedIndex), n, a = e.isElement ? "swiper-slide" : `.${i.slideClass}`, o = e.grid && e.params.grid && e.params.grid.rows > 1; 18636 if (i.loop) { 18637 if (e.animating) return; 18638 n = parseInt(e.clickedSlide.getAttribute("data-swiper-slide-index"), 10), i.centeredSlides ? e.slideToLoop(n) : s > (o ? (e.slides.length - r) / 2 - (e.params.grid.rows - 1) : e.slides.length - r) ? (e.loopFix(), s = e.getSlideIndex(Qt(t, `${a}[data-swiper-slide-index="${n}"]`)[0]), Ca(() => { 18639 e.slideTo(s); 18640 })) : e.slideTo(s); 18641 } else e.slideTo(s); 18642} 18643function NF(e, i) { 18644 let t = this, { params: r, slidesEl: s } = t; 18645 if (!r.loop || t.virtual && t.params.virtual.enabled) return; 18646 let n = () => { 18647 Qt(s, `.${r.slideClass}, swiper-slide`).forEach((h, g) => { 18648 h.setAttribute("data-swiper-slide-index", g); 18649 }); 18650 }, a = () => { 18651 let h = Qt(s, `.${r.slideBlankClass}`); 18652 h.forEach((g) => { 18653 g.remove(); 18654 }), h.length > 0 && (t.recalcSlides(), t.updateSlides()); 18655 }, o = t.grid && r.grid && r.grid.rows > 1; 18656 r.loopAddBlankSlides && (r.slidesPerGroup > 1 || o) && a(); 18657 let l = r.slidesPerGroup * (o ? r.grid.rows : 1), c = t.slides.length % l !== 0, d = o && t.slides.length % r.grid.rows !== 0, u = (h) => { 18658 for (let g = 0; g < h; g += 1) { 18659 let p = t.isElement ? Li("swiper-slide", [r.slideBlankClass]) : Li("div", [r.slideClass, r.slideBlankClass]); 18660 t.slidesEl.append(p); 18661 } 18662 }; 18663 c ? (r.loopAddBlankSlides ? (u(l - t.slides.length % l), t.recalcSlides(), t.updateSlides()) : Xd("Swiper Loop Warning: The number of slides is not even to slidesPerGroup, loop mode may
18663not function properly. You need to add more slides (or make duplicates, or empty slides)"), n()) : (d && (r.loopAddBlankSlides ? (u(r.grid.rows - t.slides.length % r.grid.rows), t.recalcSlides(), t.updateSlides()) : Xd("Swiper Loop Warning: The number of slides is not even to grid.rows, loop mode may not function properly. You need to add more slides (or make duplicates, or empty slides)")), n()), t.loopFix({ 18664 slideRealIndex: e, 18665 direction: r.centeredSlides ? void 0 : "next", 18666 initial: i 18667 }); 18668} 18669function TF(e) { 18670 let { slideRealIndex: i, slideTo: t = !0, direction: r, setTranslate: s, activeSlideIndex: n, initial: a, byController: o, byMousewheel: l } = e === void 0 ? {} : e, c = this; 18671 if (!c.params.loop) return; 18672 c.emit("beforeLoopFix"); 18673 let { slides: d, allowSlidePrev: u, allowSlideNext: h, slidesEl: g, params: p } = c, { centeredSlides: m, initialSlide: S } = p; 18674 if (c.allowSlidePrev = !0, c.allowSlideNext = !0, c.virtual && p.virtual.enabled) { 18675 t && (!p.centeredSlides && c.snapIndex === 0 ? c.slideTo(c.virtual.slides.length, 0, !1, !0) : p.centeredSlides && c.snapIndex < p.slidesPerView ? c.slideTo(c.virtual.slides.length + c.snapIndex, 0, !1, !0) : c.snapIndex === c.snapGrid.length - 1 && c.slideTo(c.virtual.slidesBefore, 0, !1, !0)), c.allowSlidePrev = u, c.allowSlideNext = h, c.emit("loopFix"); 18676 return; 18677 } 18678 let b = p.slidesPerView; 18679 b === "auto" ? b = c.slidesPerViewDynamic() : (b = Math.ceil(parseFloat(p.slidesPerView, 10)), m && b % 2 === 0 && (b = b + 1)); 18680 let v = p.slidesPerGroupAuto ? b : p.slidesPerGroup, y = m ? Math.max(v, Math.ceil(b / 2)) : v; 18681 y % v !== 0 && (y += v - y % v), y += p.loopAdditionalSlides, c.loopedSlides = y; 18682 let w = c.grid && p.grid && p.grid.rows > 1; 18683 d.length < b + y || c.params.effect === "cards" && d.length < b + y * 2 ? Xd("Swiper Loop Warning: The number of slides is not enough for loop mode, it will be disabled or not function properly. You need to add more slides (or make duplicates) or lower the values of slidesPerView and slidesPerGroup parameters") : w && p.grid.fill === "row" && Xd("Swiper Loop Warning: Loop mode is not compatible with grid.fill = `row`"); 18684 let T = [], O = [], _ = w ? Math.ceil(d.length / p.grid.rows) : d.length, z = a && _ - S < b && !m, V = z ? S : c.activeIndex; 18685 typeof n > "u" ? n = c.getSlideIndex(d.find((F) => F.classList.contains(p.slideActiveClass))) : V = n; 18686 let x = r === "next" || !r, $ = r === "prev" || !r, I = 0, D = 0, H = (w ? d[n].column : n) + (m && typeof s > "u" ? -b / 2 + .5 : 0); 18687 if (H < y) { 18688 I = Math.max(y - H, v); 18689 for (let F = 0; F < y - H; F += 1) { 18690 let K = F - Math.floor(F / _) * _; 18691 if (w) { 18692 let B = _ - K - 1; 18693 for (let L = d.length - 1; L >= 0; L -= 1) d[L].column === B && T.push(L); 18694 } else T.push(_ - K - 1); 18695 } 18696 } else if (H + b > _ - y) { 18697 D = Math.max(H - (_ - y * 2), v), z && (D = Math.max(D, b - _ + S + 1)); 18698 for (let F = 0; F < D; F += 1) { 18699 let K = F - Math.floor(F / _) * _; 18700 w ? d.forEach((B, L) => { 18701 B.column === K && O.push(L); 18702 }) : O.push(K); 18703 } 18704 } 18705 if (c.__preventObserver__ = !0, requestAnimationFrame(() => { 18706 c.__preventObserver__ = !1; 18707 }), c.params.effect === "cards" && d.length < b + y * 2 && (O.includes(n) && O.splice(O.indexOf(n), 1), T.includes(n) && T.splice(T.indexOf(n), 1)), $ && T.forEach((F) => { 18708 d[F].swiperLoopMoveDOM = !0, g.prepend(d[F]), d[F].swiperLoopMoveDOM = !1; 18709 }), x && O.forEach((F) => { 18710 d[F].swiperLoopMoveDOM = !0, g.append(d[F]), d[F].swiperLoopMoveDOM = !1; 18711 }), c.recalcSlides(), p.slidesPerView === "auto" ? c.updateSlides() : w && (T.length > 0 && $ || O.length > 0 && x) && c.slides.forEach((F, K) => { 18712 c.grid.updateSlide(K, F, c.slides); 18713 }), p.watchSlidesProgress && c.updateSlidesOffset(), t) { 18714 if (T.length > 0 && $) { 18715 if (typeof i > "u") { 18716 let F = c.slidesGrid[V], K = c.slidesGrid[V + I] - F; 18717 l ? c.setTranslate(c.translate - K) : (c.slideTo(V + Math.ceil(I), 0, !1, !0), s && (c.touchEventsData.startTranslate = c.touchEventsData.startTranslate - K, c.touchEventsData.currentTranslate = c.touchEventsData.currentTranslate - K)); 18718 } else if (s) { 18719 let F = w ? T.length / p.grid.rows : T.length; 18720 c.slideTo(c.activeIndex + F, 0, !1, !0), c.touchEventsData.currentTranslate = c.translate; 18721 } 18722 } else if (O.length > 0 && x) if (typeof i > "u") { 18723 let F = c.slidesGrid[V], K = c.slidesGrid[V - D] - F; 18724 l ? c.setTranslate(c.translate - K) : (c.slideTo(V - D, 0, !1, !0), s && (c.touchEventsData.startTranslate = c.touchEventsData.startTranslate - K, c.touchEventsData.currentTranslate = c.touchEventsData.currentTranslate - K)); 18725 } else { 18726 let F = w ? O.length / p.grid.rows : O.length; 18727 c.slideTo(c.activeIndex - F, 0, !1, !0); 18728 } 18729 } 18730 if (c.allowSlidePrev = u, c.allowSlideNext = h, c.controller && c.controller.control && !o) { 18731 let F = { 18732 slideRealIndex: i, 18733 direction: r, 18734 setTranslate: s, 18735 activeSlideIndex: n, 18736 byController: !0 18737 }; 18738 Array.isArray(c.controller.control) ? c.controller.control.forEach((K) => { 18739 !K.destroyed && K.params.loop && K.loopFix(J(C({}, F), { slideTo: K.params.slidesPerView === p.slidesPerView ? t : !1 })); 18740 }
18740) : c.controller.control instanceof c.constructor && c.controller.control.params.loop && c.controller.control.loopFix(J(C({}, F), { slideTo: c.controller.control.params.slidesPerView === p.slidesPerView ? t : !1 })); 18741 } 18742 c.emit("loopFix"); 18743} 18744function kF() { 18745 let e = this, { params: i, slidesEl: t } = e; 18746 if (!i.loop || !t || e.virtual && e.params.virtual.enabled) return; 18747 e.recalcSlides(); 18748 let r = []; 18749 e.slides.forEach((s) => { 18750 let n = typeof s.swiperSlideIndex > "u" ? s.getAttribute("data-swiper-slide-index") * 1 : s.swiperSlideIndex; 18751 r[n] = s; 18752 }), e.slides.forEach((s) => { 18753 s.removeAttribute("data-swiper-slide-index"); 18754 }), r.forEach((s) => { 18755 t.append(s); 18756 }), e.recalcSlides(), e.slideTo(e.realIndex, 0); 18757} 18758function xF(e) { 18759 let i = this; 18760 if (!i.params.simulateTouch || i.params.watchOverflow && i.isLocked || i.params.cssMode) return; 18761 let t = i.params.touchEventsTarget === "container" ? i.el : i.wrapperEl; 18762 i.isElement && (i.__preventObserver__ = !0), t.style.cursor = "move", t.style.cursor = e ? "grabbing" : "grab", i.isElement && requestAnimationFrame(() => { 18763 i.__preventObserver__ = !1; 18764 }); 18765} 18766function IF() { 18767 let e = this; 18768 e.params.watchOverflow && e.isLocked || e.params.cssMode || (e.isElement && (e.__preventObserver__ = !0), e[e.params.touchEventsTarget === "container" ? "el" : "wrapperEl"].style.cursor = "", e.isElement && requestAnimationFrame(() => { 18769 e.__preventObserver__ = !1; 18770 })); 18771} 18772function OF(e, i) { 18773 i === void 0 && (i = this); 18774 function t(r) { 18775 if (!r || r === Ft() || r === vt()) return null; 18776 r.assignedSlot && (r = r.assignedSlot); 18777 let s = r.closest(e); 18778 return !s && !r.getRootNode ? null : s || t(r.getRootNode().host); 18779 } 18780 return t(i); 18781} 18782function XI(e, i, t) { 18783 let r = vt(), { params: s } = e, n = s.edgeSwipeDetection, a = s.edgeSwipeThreshold; 18784 return n && (t <= a || t >= r.innerWidth - a) ? n === "prevent" ? (i.preventDefault(), !0) : !1 : !0; 18785} 18786function PF(e) { 18787 let i = this, t = Ft(), r = e; 18788 r.originalEvent && (r = r.originalEvent); 18789 let s = i.touchEventsData; 18790 if (r.type === "pointerdown") { 18791 if (s.pointerId !== null && s.pointerId !== r.pointerId) return; 18792 s.pointerId = r.pointerId; 18793 } else r.type === "touchstart" && r.targetTouches.length === 1 && (s.touchId = r.targetTouches[0].identifier); 18794 if (r.type === "touchstart") { 18795 XI(i, r, r.targetTouches[0].pageX); 18796 return; 18797 } 18798 let { params: n, touches: a, enabled: o } = i; 18799 if (!o || !n.simulateTouch && r.pointerType === "mouse" || i.animating && n.preventInteractionOnTransition) return; 18800 !i.animating && n.cssMode && n.loop && i.loopFix(); 18801 let l = r.target; 18802 if (n.touchEventsTarget === "wrapper" && !y2(l, i.wrapperEl) || "which" in r && r.which === 3 || "button" in r && r.button > 0 || s.isTouched && s.isMoved) return; 18803 let c = !!n.noSwipingClass && n.noSwipingClass !== "", d = r.composedPath ? r.composedPath() : r.path; 18804 c && r.target && r.target.shadowRoot && d && (l = d[0]); 18805 let u = n.noSwipingSelector ? n.noSwipingSelector : `.${n.noSwipingClass}`, h = !!(r.target && r.target.shadowRoot); 18806 if (n.noSwiping && (h ? OF(u, l) : l.closest(u))) { 18807 i.allowClick = !0; 18808 return; 18809 } 18810 if (n.swipeHandler && !l.closest(n.swipeHandler)) return; 18811 a.currentX = r.pageX, a.currentY = r.pageY; 18812 let g = a.currentX, p = a.currentY; 18813 if (!XI(i, r, g)) return; 18814 Object.assign(s, { 18815 isTouched: !0, 18816 isMoved: !1, 18817 allowTouchCallbacks: !0, 18818 isScrolling: void 0, 18819 startMoving: void 0 18820 }), a.startX = g, a.startY = p, s.touchStartTime = qi(), i.allowClick = !0, i.updateSize(), i.swipeDirection = void 0, n.threshold > 0 && (s.allowThresholdMove = !1); 18821 let m = !0; 18822 l.matches(s.focusableElements) && (m = !1, l.nodeName === "SELECT" && (s.isTouched = !1)), t.activeElement && t.activeElement.matches(s.focusableElements) && t.activeElement !== l && (r.pointerType === "mouse" || r.pointerType !== "mouse" && !l.matches(s.focusableElements)) && t.activeElement.blur(); 18823 let S = m && i.allowTouchMove && n.touchStartPreventDefault; 18824 (n.touchStartForcePreventDefault || S) && !l.isContentEditable && r.preventDefault(), n.freeMode && n.freeMode.enabled && i.freeMode && i.animating && !n.cssMode && i.freeMode.onTouchStart(), i.emit("touchStart", r); 18825} 18826function AF(e) { 18827 let i = Ft(), t = this, r = t.touchEventsData, { params: s, touches: n, rtlTranslate: a, enabled: o } = t; 18828 if (!o || !s.simulateTouch && e.pointerType === "mouse") return; 18829 let l = e; 18830 if (l.originalEvent && (l = l.originalEvent), l.type === "pointermove" && (r.touchId !== null || l.pointerId !== r.pointerId)) return; 18831 let c; 18832 if (l.type === "touchmove") { 18833 if (c = [...l.changedTouches].find((T) => T.identifier === r.touchId), !c || c.identifier !== r.touchId) return; 18834 } else c = l; 18835 if (!r.isTouched) { 18836 r.startMoving && r.isScrolling && t.emit("touchMoveOpposite", l); 18837 return; 18838 } 18839 let d = c.pageX, u = c.pageY; 18840 if (l.preventedByNestedSwiper) { 18841 n.startX = d, n.startY = u; 18842 return; 18843 } 18844 if (!t.allowTouchMove) { 18845 l.target.matches(r.focusableElements) || (t.allowClick = !1), r.isTouched && (Object.assign(n, { 18846 startX: d, 18847 startY: u, 18848 currentX: d, 18849 currentY: u 18850 }), r.touchStartTime = qi()); 18851 return; 18852 } 18853 if (s.touchReleaseOnEdges && !s.loop) { 18854 if (t.isVertical()) { 18855 if (u < n.startY && t.translate <= t.maxTranslate() || u > n.startY && t.translate >= t.minTranslate()) { 18856 r.isTouched = !1, r.isMoved = !1; 18857 return; 18858 } 18859 } else if (a && (d > n.startX && -t.translate <= t.maxTranslate() || d < n.startX && -t.translate >= t.minTranslate()) || !a && (d < n.startX && t.translate <= t.maxTranslate() || d > n.startX && t.translate >= t.minTranslate())) return; 18860 } 18861 if (i.activeElement && i.activeElement.matches(r.focusableElements) && i.activeElement !== l.target && l.pointerType !== "mouse" && i.activeElement.blur(), i.activeElement && l.target === i.activeElement && l.target.matches(r.focusableElements)) { 18862 r.isMoved = !0, t.allowClick = !1; 18863 return; 18864 } 18865 r.allowTouchCallbacks && t.emit("touchMove", l), n.previousX = n.currentX, n.previousY = n.currentY, n.currentX = d, n.currentY = u; 18866 let h = n.currentX - n.startX, g = n.currentY - n.startY; 18867 if (t.params.threshold && Math.sqrt(h ** 2 + g ** 2) < t.params.threshold) return; 18868 if (typeof r.isScrolling > "u") { 18869 let T; 18870 t.isHorizontal() && n.currentY === n.startY || t.isVertical() && n.currentX === n.startX ? r.isScrolling = !1 : h * h + g * g >= 25 && (T = Math.atan2(Math.abs(g), Math.abs(h)) * 180 / Math.PI, r.isScrolling = t.isHorizontal() ? T > s.touchAngle : 90 - T > s.touchAngle); 18871 } 18872 if (r.isScrolling && t.emit("touchMoveOpposite", l), typeof r.startMoving > "u" && (n.currentX !== n.startX || n.currentY !== n.startY) && (r.startMoving = !0), r.isScrolling || l.type === "touchmove" && r.preventTouchMoveFromPointerMove) { 18873 r.isTouched = !1; 18874 return; 18875 } 18876 if (!r.startMoving) return; 18877 t.allowClick = !1, !s.cssMode && l.cancelable && l.preventDefault(), s.touchMoveStopPropagation && !s.nested && l.stopPropagation(); 18878 let p = t.isHorizontal() ? h : g, m = t.isHorizontal() ? n.currentX - n.previousX : n.currentY - n.previousY; 18879 s.oneWayMovement && (p = Math.abs(p) * (a ? 1 : -1), m = Math.abs(m) * (a ? 1 : -1)), n.diff = p, p *= s.touchRatio, a && (p = -p, m = -m); 18880 let S = t.touchesDirection; 18881 t.swipeDirection = p > 0 ? "prev" : "next", t.touchesDirection = m > 0 ? "prev" : "next"; 18882 let b = t.params.loop && !s.cssMode, v = t.touchesDirection === "next" && t.allowSlideNext || t.touchesDirection === "prev" && t.allowSlidePrev; 18883 if (!r.isMoved) { 18884 if (b && v && t.loopFix({ direction: t.swipeDirection }), r.startTranslate = t.getTranslate(), t.setTransition(0), t.animating) { 18885 let T = new window.CustomEvent("transitionend", { 18886 bubbles: !0, 18887 cancelable: !0, 18888 detail: { bySwiperTouchMove: !0 } 18889 });
vendor: 4,376 bytes, lines 18890-18952
18890 t.wrapperEl.dispatchEvent(T); 18891 } 18892 r.allowMomentumBounce = !1, s.grabCursor && (t.allowSlideNext === !0 || t.allowSlidePrev === !0) && t.setGrabCursor(!0), t.emit("sliderFirstMove", l); 18893 } 18894 if ((/* @__PURE__ */ new Date()).getTime(), s._loopSwapReset !== !1 && r.isMoved && r.allowThresholdMove && S !== t.touchesDirection && b && v && Math.abs(p) >= 1) { 18895 Object.assign(n, { 18896 startX: d, 18897 startY: u, 18898 currentX: d, 18899 currentY: u, 18900 startTranslate: r.currentTranslate 18901 }), r.loopSwapReset = !0, r.startTranslate = r.currentTranslate; 18902 return; 18903 } 18904 t.emit("sliderMove", l), r.isMoved = !0, r.currentTranslate = p + r.startTranslate; 18905 let y = !0, w = s.resistanceRatio; 18906 if (s.touchReleaseOnEdges && (w = 0), p > 0 ? (b && v && r.allowThresholdMove && r.currentTranslate > (s.centeredSlides ? t.minTranslate() - t.slidesSizesGrid[t.activeIndex + 1] - (s.slidesPerView !== "auto" && t.slides.length - s.slidesPerView >= 2 ? t.slidesSizesGrid[t.activeIndex + 1] + t.params.spaceBetween : 0) - t.params.spaceBetween : t.minTranslate()) && t.loopFix({ 18907 direction: "prev", 18908 setTranslate: !0, 18909 activeSlideIndex: 0 18910 }), r.currentTranslate > t.minTranslate() && (y = !1, s.resistance && (r.currentTranslate = t.minTranslate() - 1 + (-t.minTranslate() + r.startTranslate + p) ** w))) : p < 0 && (b && v && r.allowThresholdMove && r.currentTranslate < (s.centeredSlides ? t.maxTranslate() + t.slidesSizesGrid[t.slidesSizesGrid.length - 1] + t.params.spaceBetween + (s.slidesPerView !== "auto" && t.slides.length - s.slidesPerView >= 2 ? t.slidesSizesGrid[t.slidesSizesGrid.length - 1] + t.params.spaceBetween : 0) : t.maxTranslate()) && t.loopFix({ 18911 direction: "next", 18912 setTranslate: !0, 18913 activeSlideIndex: t.slides.length - (s.slidesPerView === "auto" ? t.slidesPerViewDynamic() : Math.ceil(parseFloat(s.slidesPerView, 10))) 18914 }), r.currentTranslate < t.maxTranslate() && (y = !1, s.resistance && (r.currentTranslate = t.maxTranslate() + 1 - (t.maxTranslate() - r.startTranslate - p) ** w))), y && (l.preventedByNestedSwiper = !0), !t.allowSlideNext && t.swipeDirection === "next" && r.currentTranslate < r.startTranslate && (r.currentTranslate = r.startTranslate), !t.allowSlidePrev && t.swipeDirection === "prev" && r.currentTranslate > r.startTranslate && (r.currentTranslate = r.startTranslate), !t.allowSlidePrev && !t.allowSlideNext && (r.currentTranslate = r.startTranslate), s.threshold > 0) if (Math.abs(p) > s.threshold || r.allowThresholdMove) { 18915 if (!r.allowThresholdMove) { 18916 r.allowThresholdMove = !0, n.startX = n.currentX, n.startY = n.currentY, r.currentTranslate = r.startTranslate, n.diff = t.isHorizontal() ? n.currentX - n.startX : n.currentY - n.startY; 18917 return; 18918 } 18919 } else { 18920 r.currentTranslate = r.startTranslate; 18921 return; 18922 } 18923 !s.followFinger || s.cssMode || ((s.freeMode && s.freeMode.enabled && t.freeMode || s.watchSlidesProgress) && (t.updateActiveIndex(), t.updateSlidesClasses()), s.freeMode && s.freeMode.enabled && t.freeMode && t.freeMode.onTouchMove(), t.updateProgress(r.currentTranslate), t.setTranslate(r.currentTranslate)); 18924} 18925function $F(e) { 18926 let i = this, t = i.touchEventsData, r = e; 18927 r.originalEvent && (r = r.originalEvent); 18928 let s; 18929 if (r.type === "touchend" || r.type === "touchcancel") { 18930 if (s = [...r.changedTouches].find((w) => w.identifier === t.touchId), !s || s.identifier !== t.touchId) return; 18931 } else { 18932 if (t.touchId !== null || r.pointerId !== t.pointerId) return; 18933 s = r; 18934 } 18935 if ([ 18936 "pointercancel", 18937 "pointerout", 18938 "pointerleave", 18939 "contextmenu" 18940 ].includes(r.type) && !(["pointercancel", "contextmenu"].includes(r.type) && (i.browser.isSafari || i.browser.isWebView))) return; 18941 t.pointerId = null, t.touchId = null; 18942 let { params: n, touches: a, rtlTranslate: o, slidesGrid: l, enabled: c } = i; 18943 if (!c || !n.simulateTouch && r.pointerType === "mouse") return; 18944 if (t.allowTouchCallbacks && i.emit("touchEnd", r), t.allowTouchCallbacks = !1, !t.isTouched) { 18945 t.isMoved && n.grabCursor && i.setGrabCursor(!1), t.isMoved = !1, t.startMoving = !1; 18946 return; 18947 } 18948 n.grabCursor && t.isMoved && t.isTouched && (i.allowSlideNext === !0 || i.allowSlidePrev === !0) && i.setGrabCursor(!1); 18949 let d = qi(), u = d - t.touchStartTime; 18950 if (i.allowClick) { 18951 let w = r.path || r.composedPath && r.composedPath(); 18952 i.updateClickedSlide(w && w[0] || r.target, w), i.emit("tap click", r), u < 300 && d - t.last
18952ClickTime < 300 && i.emit("doubleTap doubleClick", r); 18953 } 18954 if (t.lastClickTime = qi(), Ca(() => { 18955 i.destroyed || (i.allowClick = !0); 18956 }), !t.isTouched || !t.isMoved || !i.swipeDirection || a.diff === 0 && !t.loopSwapReset || t.currentTranslate === t.startTranslate && !t.loopSwapReset) { 18957 t.isTouched = !1, t.isMoved = !1, t.startMoving = !1; 18958 return; 18959 } 18960 t.isTouched = !1, t.isMoved = !1, t.startMoving = !1; 18961 let h; 18962 if (n.followFinger ? h = o ? i.translate : -i.translate : h = -t.currentTranslate, n.cssMode) return; 18963 if (n.freeMode && n.freeMode.enabled) { 18964 i.freeMode.onTouchEnd({ currentPos: h }); 18965 return; 18966 } 18967 let g = h >= -i.maxTranslate() && !i.params.loop, p = 0, m = i.slidesSizesGrid[0]; 18968 for (let w = 0; w < l.length; w += w < n.slidesPerGroupSkip ? 1 : n.slidesPerGroup) { 18969 let T = w < n.slidesPerGroupSkip - 1 ? 1 : n.slidesPerGroup; 18970 typeof l[w + T] < "u" ? (g || h >= l[w] && h < l[w + T]) && (p = w, m = l[w + T] - l[w]) : (g || h >= l[w]) && (p = w, m = l[l.length - 1] - l[l.length - 2]); 18971 } 18972 let S = null, b = null; 18973 n.rewind && (i.isBeginning ? b = n.virtual && n.virtual.enabled && i.virtual ? i.virtual.slides.length - 1 : i.slides.length - 1 : i.isEnd && (S = 0)); 18974 let v = (h - l[p]) / m, y = p < n.slidesPerGroupSkip - 1 ? 1 : n.slidesPerGroup; 18975 if (u > n.longSwipesMs) { 18976 if (!n.longSwipes) { 18977 i.slideTo(i.activeIndex); 18978 return; 18979 } 18980 i.swipeDirection === "next" && (v >= n.longSwipesRatio ? i.slideTo(n.rewind && i.isEnd ? S : p + y) : i.slideTo(p)), i.swipeDirection === "prev" && (v > 1 - n.longSwipesRatio ? i.slideTo(p + y) : b !== null && v < 0 && Math.abs(v) > n.longSwipesRatio ? i.slideTo(b) : i.slideTo(p)); 18981 } else { 18982 if (!n.shortSwipes) { 18983 i.slideTo(i.activeIndex); 18984 return; 18985 } 18986 i.navigation && (r.target === i.navigation.nextEl || r.target === i.navigation.prevEl) ? r.target === i.navigation.nextEl ? i.slideTo(p + y) : i.slideTo(p) : (i.swipeDirection === "next" && i.slideTo(S !== null ? S : p + y), i.swipeDirection === "prev" && i.slideTo(b !== null ? b : p)); 18987 } 18988} 18989function JI() { 18990 let e = this, { params: i, el: t } = e; 18991 if (t && t.offsetWidth === 0) return; 18992 i.breakpoints && e.setBreakpoint(); 18993 let { allowSlideNext: r, allowSlidePrev: s, snapGrid: n } = e, a = e.virtual && e.params.virtual.enabled; 18994 e.allowSlideNext = !0, e.allowSlidePrev = !0, e.updateSize(), e.updateSlides(), e.updateSlidesClasses(); 18995 let o = a && i.loop; 18996 (i.slidesPerView === "auto" || i.slidesPerView > 1) && e.isEnd && !e.isBeginning && !e.params.centeredSlides && !o ? e.slideTo(e.slides.length - 1, 0, !1, !0) : e.params.loop && !a ? e.slideToLoop(e.realIndex, 0, !1, !0) : e.slideTo(e.activeIndex, 0, !1, !0), e.autoplay && e.autoplay.running && e.autoplay.paused && (clearTimeout(e.autoplay.resizeTimeout), e.autoplay.resizeTimeout = setTimeout(() => { 18997 e.autoplay && e.autoplay.running && e.autoplay.paused && e.autoplay.resume(); 18998 }, 500)), e.allowSlidePrev = s, e.allowSlideNext = r, e.params.watchOverflow && n !== e.snapGrid && e.checkOverflow(); 18999} 19000function _F(e) { 19001 let i = this; 19002 i.enabled && (i.allowClick || (i.params.preventClicks && e.preventDefault(), i.params.preventClicksPropagation && i.animating && (e.stopPropagation(), e.stopImmediatePropagation()))); 19003} 19004function MF() { 19005 let e = this, { wrapperEl: i, rtlTranslate: t, enabled: r } = e; 19006 if (!r) return; 19007 e.previousTranslate = e.translate, e.isHorizontal() ? e.translate = -i.scrollLeft : e.translate = -i.scrollTop, e.translate === 0 && (e.translate = 0), e.updateActiveIndex(), e.updateSlidesClasses(); 19008 let s, n = e.maxTranslate() - e.minTranslate(); 19009 n === 0 ? s = 0 : s = (e.translate - e.minTranslate()) / n, s !== e.progress && e.updateProgress(t ? -e.translate : e.translate), e.emit("setTranslate", e.translate, !1); 19010} 19011function RF(e) { 19012 let i = this; 19013 il(i, e.target), !(i.params.cssMode || i.params.slidesPerView !== "auto" && !i.params.autoHeight) && i.update(); 19014} 19015function LF() { 19016 let e = this; 19017 e.documentTouchHandlerProceeded || (e.documentTouchHandlerProceeded = !0, e.params.touchReleaseOnEdges && (e.el.style.touchAction = "auto")); 19018} 19019function BF() { 19020 let e = this, { params: i } = e; 19021 e.onTouchStart = PF.bind(e), e.onTouchMove = AF.bind(e), e.onTouchEnd = $F.bind(e), e.onDocumentTouchStart = LF.bind(e), i.cssMode && (e.onScroll = MF.bind(e)), e.onClick = _F.bind(e), e.onLoad = RF.bind(e), nS(e, "on"); 19022} 19023function DF() { 19024 nS(this, "off"); 19025} 19026function FF() { 19027 let e = this, { realIndex: i, initialized: t, params: r, el: s } = e, n = r.breakpoints; 19028 if (!n || n && Object.keys(n).length === 0) return; 19029 let a = Ft(), o = r.breakpointsBase === "window" || !r.breakpointsBase ? r.breakpointsBase : "container", l = ["window", "container"].includes(r.breakpointsBase) || !r.breakpointsBase ? e.el : a.querySelector(r.breakpointsBase), c = e.getBreakp
19029oint(n, o, l); 19030 if (!c || e.currentBreakpoint === c) return; 19031 let d = (c in n ? n[c] : void 0) || e.originalParams, u = aS(e, r), h = aS(e, d), g = e.params.grabCursor, p = d.grabCursor, m = r.enabled; 19032 u && !h ? (s.classList.remove(`${r.containerModifierClass}grid`, `${r.containerModifierClass}grid-column`), e.emitContainerClasses()) : !u && h && (s.classList.add(`${r.containerModifierClass}grid`), (d.grid.fill && d.grid.fill === "column" || !d.grid.fill && r.grid.fill === "column") && s.classList.add(`${r.containerModifierClass}grid-column`), e.emitContainerClasses()), g && !p ? e.unsetGrabCursor() : !g && p && e.setGrabCursor(), [ 19033 "navigation", 19034 "pagination", 19035 "scrollbar" 19036 ].forEach((T) => { 19037 if (typeof d[T] > "u") return; 19038 let O = r[T] && r[T].enabled, _ = d[T] && d[T].enabled; 19039 O && !_ && e[T].disable(), !O && _ && e[T].enable(); 19040 }); 19041 let S = d.direction && d.direction !== r.direction, b = r.loop && (d.slidesPerView !== r.slidesPerView || S), v = r.loop; 19042 S && t && e.changeDirection(), Ri(e.params, d); 19043 let y = e.params.enabled, w = e.params.loop; 19044 Object.assign(e, { 19045 allowTouchMove: e.params.allowTouchMove, 19046 allowSlideNext: e.params.allowSlideNext, 19047 allowSlidePrev: e.params.allowSlidePrev 19048 }), m && !y ? e.disable() : !m && y && e.enable(), e.currentBreakpoint = c, e.emit("_beforeBreakpoint", d), t && (b ? (e.loopDestroy(), e.loopCreate(i), e.updateSlides()) : !v && w ? (e.loopCreate(i), e.updateSlides()) : v && !w && e.loopDestroy()), e.emit("breakpoint", d); 19049} 19050function zF(e, i, t) { 19051 if (i === void 0 && (i = "window"), !e || i === "container" && !t) return; 19052 let r = !1, s = vt(), n = i === "window" ? s.innerHeight : t.clientHeight, a = Object.keys(e).map((o) => { 19053 if (typeof o == "string" && o.indexOf("@") === 0) { 19054 let l = parseFloat(o.substr(1)); 19055 return { 19056 value: n * l, 19057 point: o 19058 }; 19059 } 19060 return { 19061 value: o, 19062 point: o 19063 }; 19064 }); 19065 a.sort((o, l) => parseInt(o.value, 10) - parseInt(l.value, 10)); 19066 for (let o = 0; o < a.length; o += 1) { 19067 let { point: l, value: c } = a[o]; 19068 i === "window" ? s.matchMedia(`(min-width: ${c}px)`).matches && (r = l) : c <= t.clientWidth && (r = l); 19069 } 19070 return r || "max"; 19071} 19072function GF(e, i) { 19073 let t = []; 19074 return e.forEach((r) => { 19075 typeof r == "object" ? Object.keys(r).forEach((s) => { 19076 r[s] && t.push(i + s); 19077 }) : typeof r == "string" && t.push(i + r); 19078 }), t; 19079} 19080function VF() { 19081 let e = this, { classNames: i, params: t, rtl: r, el: s, device: n } = e, a = GF([ 19082 "initialized", 19083 t.direction, 19084 { "free-mode": e.params.freeMode && t.freeMode.enabled }, 19085 { autoheight: t.autoHeight }, 19086 { rtl: r }, 19087 { grid: t.grid && t.grid.rows > 1 }, 19088 { "grid-column": t.grid && t.grid.rows > 1 && t.grid.fill === "column" }, 19089 { android: n.android }, 19090 { ios: n.ios }, 19091 { "css-mode": t.cssMode }, 19092 { centered: t.cssMode && t.centeredSlides }, 19093 { "watch-progress": t.watchSlidesProgress } 19094 ], t.containerModifierClass); 19095 i.push(...a), s.classList.add(...i), e.emitContainerClasses(); 19096} 19097function HF() { 19098 let e = this, { el: i, classNames: t } = e; 19099 !i || typeof i == "string" || (i.classList.remove(...t), e.emitContainerClasses()); 19100} 19101function UF() { 19102 let e = this, { isLocked: i, params: t } = e, { slidesOffsetBefore: r } = t; 19103 if (r) { 19104 let s = e.slides.length - 1, n = e.slidesGrid[s] + e.slidesSizesGrid[s] + r * 2; 19105 e.isLocked = e.size > n; 19106 } else e.isLocked = e.snapGrid.length === 1; 19107 t.allowSlideNext === !0 && (e.allowSlideNext = !e.isLocked), t.allowSlidePrev === !0 && (e.allowSlidePrev = !e.isLocked), i && i !== e.isLocked && (e.isEnd = !1), i !== e.isLocked && e.emit(e.isLocked ? "lock" : "unlock"); 19108} 19109function WF(e, i) { 19110 return function(t) { 19111 t === void 0 && (t = {}); 19112 let r = Object.keys(t)[0], s = t[r]; 19113 if (typeof s != "object" || s === null) { 19114 Ri(i, t); 19115 return; 19116 } 19117 if (e[r] === !0 && (e[r] = { enabled: !0 }), r === "navigation" && e[r] && e[r].enabled && !e[r].prevEl && !e[r].nextEl && (e[r].auto = !0), ["pagination", "scrollbar"].indexOf(r) >= 0 && e[r] && e[r].enabled && !e[r].el && (e[r].auto = !0), !(r in e && "enabled" in s)) { 19118 Ri(i, t); 19119 return; 19120 } 19121 typeof e[r] == "object" && !("enabled" in e[r]) && (e[r].enabled = !0), e[r] || (e[r] = { enabled: !1 }), Ri(i, t); 19122 }; 19123} 19124var eS, QI, tS, iS, rS, ZI, sS, eu, il, tu, iu, eO, tO, iO, rO, sO, nO, nS, aO, aS, oO, lO, cO, ru, su, nu, ka; 19125function oS() { 19126 return (oS = Z((() => { 19127 Re(), eS = { 19128 body: {}, 19129 addEventListener() {}, 19130 removeEventListener() {}, 19131 activeElement: { 19132 blur() {}, 19133 nodeName: "" 19134 }, 19135 querySelector() { 19136 return null; 19137 }, 19138 querySelectorAll() { 19139 return []; 19140 }, 19141 getElementById() { 19142 return null; 19143 }, 19144 createEvent() { 19145 return { initEvent() {} }; 19146 }, 19147 createElement() { 19148 return { 19149 children: [], 19150 childNodes: [], 19151 style: {}, 19152 setAttribute() {}, 19153 getElementsByTagName() { 19154 return []; 19155 } 19156 }; 19157 }, 19158 createElementNS() { 19159 return {}; 19160 }, 19161 importNode() { 19162 return null; 19163 }, 19164 location: { 19165 hash: "", 19166 host: "", 19167 hostname: "", 19168 href: "", 19169 origin: "", 19170 pathname: "", 19171 protocol: "", 19172 search: "" 19173 } 19174 }, QI = { 19175 document: eS, 19176 navigator: { userAgent: "" }, 19177 location: { 19178 hash: "", 19179 host: "", 19180 hostname: "", 19181 href: "", 19182 origin: "", 19183 pathname: "", 19184 protocol: "", 19185 search: "" 19186 }, 19187 history: { 19188 replaceState() {}, 19189 pushState() {}, 19190 go() {}, 19191 back() {} 19192 }, 19193 CustomEvent: function() { 19194 return this; 19195 }, 19196 addEventListener() {}, 19197 removeEventListener() {}, 19198 getComputedStyle() { 19199 return { getPropertyValue() { 19200 return ""; 19201 } }; 19202 }, 19203 Image() {}, 19204 Date() {}, 19205 screen: {}, 19206 setTimeout() {}, 19207 clearTimeout() {}, 19208 matchMedia() { 19209 return {}; 19210 }, 19211 requestAnimationFrame(e) { 19212 return typeof setTimeout > "u" ? (e(), null) : setTimeout(e, 0); 19213 }, 19214 cancelAnimationFrame(e) { 19215 typeof setTimeout > "u" || clearTimeout(e); 19216 } 19217 }, ZI = { 19218 on(e, i, t) { 19219 let r = this; 19220 if (!r.eventsListeners || r.destroyed || typeof i != "function") return r; 19221 let s = t ? "unshift" : "push"; 19222 return e.split(" ").forEach((n) => { 19223 r.eventsListeners[n] || (r.eventsListeners[n] = []), r.eventsListeners[n][s](i); 19224 }), r; 19225 }, 19226 once(e, i, t) { 19227 let r = this; 19228 if (!r.eventsListeners || r.destroyed || typeof i != "function") return r; 19229 function s() { 19230 r.off(e, s), s.__emitterProxy && delete s.__emitterProxy; 19231 for (var n = arguments.length, a = new Array(n), o = 0; o < n; o++) a[o] = arguments[o]; 19232 i.apply(r, a); 19233 } 19234 return s.__emitterProxy = i, r.on(e, s, t); 19235 }, 19236 onAny(e, i) { 19237 let t = this; 19238 if (!t.eventsListeners || t.destroyed || typeof e != "function") return t; 19239 let r = i ? "unshift" : "push"; 19240 return t.eventsAnyListeners.indexOf(e) < 0 && t.eventsAnyListeners[r](e), t; 19241 }, 19242 offAny(e) { 19243 let i = this; 19244 if (!i.eventsListeners || i.destroyed || !i.eventsAnyListeners) return i; 19245 let t = i.eventsAnyListeners.indexOf(e); 19246 return t >= 0 && i.eventsAnyListeners.splice(t, 1), i; 19247 }, 19248 off(e, i) { 19249 let t = this; 19250 return !t.eventsListeners || t.destroyed || !t.eventsListeners || e.split(" ").forEach((r) => { 19251 typeof i > "u" ? t.eventsListeners[r] = [] : t.eventsListeners[r] && t.eventsListeners[r].forEach((s, n) => { 19252 (s === i || s.__emitterProxy && s.__emitterProxy === i) && t.eventsListeners[r].splice(n, 1); 19253 }); 19254 }), t; 19255 }, 19256 emit() { 19257 let e = this; 19258 if (!e.eventsListeners || e.destroyed || !e.eventsListeners) return e; 19259 let i, t, r; 19260 for (var s = arguments.length, n = new Array(s), a = 0; a < s; a++) n[a] = arguments[a]; 19261 return typeof n[0] == "string" || Array.isArray(n[0]) ? (i = n[0], t = n.slice(1, n.length), r = e) : (i = n[0].events, t = n[0].data, r = n[0].c
19261ontext || e), t.unshift(r), (Array.isArray(i) ? i : i.split(" ")).forEach((o) => { 19262 e.eventsAnyListeners && e.eventsAnyListeners.length && e.eventsAnyListeners.forEach((l) => { 19263 l.apply(r, [o, ...t]); 19264 }), e.eventsListeners && e.eventsListeners[o] && e.eventsListeners[o].forEach((l) => { 19265 l.apply(r, t); 19266 }); 19267 }), e; 19268 } 19269 }, sS = (e, i, t) => { 19270 i && !e.classList.contains(t) ? e.classList.add(t) : !i && e.classList.contains(t) && e.classList.remove(t); 19271 }, eu = (e, i, t) => { 19272 i && !e.classList.contains(t) ? e.classList.add(t) : !i && e.classList.contains(t) && e.classList.remove(t); 19273 }, il = (e, i) => { 19274 if (!e || e.destroyed || !e.params) return; 19275 let t = () => e.isElement ? "swiper-slide" : `.${e.params.slideClass}`, r = i.closest(t()); 19276 if (r) { 19277 let s = r.querySelector(`.${e.params.lazyPreloaderClass}`); 19278 !s && e.isElement && (r.shadowRoot ? s = r.shadowRoot.querySelector(`.${e.params.lazyPreloaderClass}`) : requestAnimationFrame(() => { 19279 r.shadowRoot && (s = r.shadowRoot.querySelector(`.${e.params.lazyPreloaderClass}`), s && s.remove()); 19280 })), s && s.remove(); 19281 } 19282 }, tu = (e, i) => { 19283 if (!e.slides[i]) return; 19284 let t = e.slides[i].querySelector("[loading=\"lazy\"]"); 19285 t && t.removeAttribute("loading"); 19286 }, iu = (e) => { 19287 if (!e || e.destroyed || !e.params) return; 19288 let i = e.params.lazyPreloadPrevNext, t = e.slides.length; 19289 if (!t || !i || i < 0) return; 19290 i = Math.min(i, t); 19291 let r = e.params.slidesPerView === "auto" ? e.slidesPerViewDynamic() : Math.ceil(e.params.slidesPerView), s = e.activeIndex; 19292 if (e.params.grid && e.params.grid.rows > 1) { 19293 let a = s, o = [a - i]; 19294 o.push(...Array.from({ length: i }).map((l, c) => a + r + c)), e.slides.forEach((l, c) => { 19295 o.includes(l.column) && tu(e, c); 19296 }); 19297 return; 19298 } 19299 let n = s + r - 1; 19300 if (e.params.rewind || e.params.loop) for (let a = s - i; a <= n + i; a += 1) { 19301 let o = (a % t + t) % t; 19302 (o < s || o > n) && tu(e, o); 19303 } 19304 else for (let a = Math.max(s - i, 0); a <= Math.min(n + i, t - 1); a += 1) a !== s && (a > n || a < s) && tu(e, a); 19305 }, eO = { 19306 updateSize: Z2, 19307 updateSlides: eF, 19308 updateAutoHeight: tF, 19309 updateSlidesOffset: iF, 19310 updateSlidesProgress: rF, 19311 updateProgress: sF, 19312 updateSlidesClasses: nF, 19313 updateActiveIndex: oF, 19314 updateClickedSlide: lF 19315 }, tO = { 19316 getTranslate: cF, 19317 setTranslate: dF, 19318 minTranslate: uF, 19319 maxTranslate: pF, 19320 translateTo: hF 19321 }, iO = { 19322 setTransition: mF, 19323 transitionStart: fF, 19324 transitionEnd: gF 19325 }, rO = { 19326 slideTo: vF, 19327 slideToLoop: SF, 19328 slideNext: bF, 19329 slidePrev: yF, 19330 slideReset: wF, 19331 slideToClosest: EF, 19332 slideToClickedSlide: CF 19333 }, sO = { 19334 loopCreate: NF, 19335 loopFix: TF, 19336 loopDestroy: kF 19337 }, nO = { 19338 setGrabCursor: xF, 19339 unsetGrabCursor: IF 19340 }, nS = (e, i) => { 19341 let t = Ft(), { params: r, el: s, wrapperEl: n, device: a } = e, o = !!r.nested, l = i === "on" ? "addEventListener" : "removeEventListener", c = i; 19342 !s || typeof s == "string" || (t[l]("touchstart", e.onDocumentTouchStart, { 19343 passive: !1, 19344 capture: o 19345 }), s[l]("touchstart", e.onTouchStart, { passive: !1 }), s[l]("pointerdown", e.onTouchStart, { passive: !1 }), t[l]("touchmove", e.onTouchMove, { 19346 passive: !1, 19347 capture: o 19348 }), t[l]("pointermove", e.onTouchMove, { 19349 passive: !1, 19350 capture: o 19351 }), t[l]("touchend", e.onTouchEnd, { passive: !0 }), t[l]("pointerup", e.onTouchEnd, { passive: !0 }), t[l]("pointercancel", e.onTouchEnd, { passive: !0 }), t[l]("touchcancel", e.onTouchEnd, { passive: !0 }), t[l]("pointerout", e.onTouchEnd, { passive: !0 }), t[l]("pointerleave", e.onTouchEnd, { passive: !0 }), t[l]("contextmenu", e.onTouchEnd, { passive: !0 }), (r.preventClicks || r.preventClicksPropagation) && s[l]("click", e.onClick, !0), r.cssMode && n[l]("scroll", e.onScroll), r.updateOnWindowResize ? e[c](a.ios || a.android ? "resize orientationchange observerUpdate" : "resize observerUpdate", JI, !0) : e[c]("observerUpdate", JI, !0), s[l]("load", e.onLoad, { capture: !0 })); 19352 }, aO = { 19353 attachEvents: BF, 19354 detachEvents: DF 19355 }, aS = (e, i) => e.grid && i.grid && i.grid.rows > 1, oO = { 19356 setBreakpoint: FF,
19357 getBreakpoint: zF 19358 }, lO = { 19359 addClasses: VF, 19360 removeClasses: HF 19361 }, cO = { checkOverflow: UF }, ru = { 19362 init: !0, 19363 direction: "horizontal", 19364 oneWayMovement: !1, 19365 swiperElementNodeName: "SWIPER-CONTAINER", 19366 touchEventsTarget: "wrapper", 19367 initialSlide: 0, 19368 speed: 300, 19369 cssMode: !1, 19370 updateOnWindowResize: !0, 19371 resizeObserver: !0, 19372 nested: !1, 19373 createElements: !1, 19374 eventsPrefix: "swiper", 19375 enabled: !0, 19376 focusableElements: "input, select, option, textarea, button, video, label", 19377 width: null, 19378 height: null, 19379 preventInteractionOnTransition: !1, 19380 userAgent: null, 19381 url: null, 19382 edgeSwipeDetection: !1, 19383 edgeSwipeThreshold: 20, 19384 autoHeight: !1, 19385 setWrapperSize: !1, 19386 virtualTranslate: !1, 19387 effect: "slide", 19388 breakpoints: void 0, 19389 breakpointsBase: "window", 19390 spaceBetween: 0, 19391 slidesPerView: 1, 19392 slidesPerGroup: 1, 19393 slidesPerGroupSkip: 0, 19394 slidesPerGroupAuto: !1, 19395 centeredSlides: !1, 19396 centeredSlidesBounds: !1, 19397 slidesOffsetBefore: 0, 19398 slidesOffsetAfter: 0, 19399 normalizeSlideIndex: !0, 19400 centerInsufficientSlides: !1, 19401 watchOverflow: !0, 19402 roundLengths: !1, 19403 touchRatio: 1, 19404 touchAngle: 45, 19405 simulateTouch: !0, 19406 shortSwipes: !0, 19407 longSwipes: !0, 19408 longSwipesRatio: .5, 19409 longSwipesMs: 300, 19410 followFinger: !0, 19411 allowTouchMove: !0, 19412 threshold: 5, 19413 touchMoveStopPropagation: !1, 19414 touchStartPreventDefault: !0, 19415 touchStartForcePreventDefault: !1, 19416 touchReleaseOnEdges: !1, 19417 uniqueNavElements: !0, 19418 resistance: !0, 19419 resistanceRatio: .85, 19420 watchSlidesProgress: !1, 19421 grabCursor: !1, 19422 preventClicks: !0, 19423 preventClicksPropagation: !0, 19424 slideToClickedSlide: !1, 19425 loop: !1, 19426 loopAddBlankSlides: !0, 19427 loopAdditionalSlides: 0, 19428 loopPreventsSliding: !0, 19429 rewind: !1, 19430 allowSlidePrev: !0, 19431 allowSlideNext: !0, 19432 swipeHandler: null, 19433 noSwiping: !0, 19434 noSwipingClass: "swiper-no-swiping", 19435 noSwipingSelector: null, 19436 passiveListeners: !0, 19437 maxBackfaceHiddenSlides: 10, 19438 containerModifierClass: "swiper-", 19439 slideClass: "swiper-slide", 19440 slideBlankClass: "swiper-slide-blank", 19441 slideActiveClass: "swiper-slide-active", 19442 slideVisibleClass: "swiper-slide-visible", 19443 slideFullyVisibleClass: "swiper-slide-fully-visible", 19444 slideNextClass: "swiper-slide-next", 19445 slidePrevClass: "swiper-slide-prev", 19446 wrapperClass: "swiper-wrapper", 19447 lazyPreloaderClass: "swiper-lazy-preloader", 19448 lazyPreloadPrevNext: 0, 19449 runCallbacksOnInit: !0, 19450 _emitClasses: !1 19451 }, su = { 19452 eventsEmitter: ZI, 19453 update: eO, 19454 translate: tO, 19455 transition: iO, 19456 slide: rO, 19457 loop: sO, 19458 grabCursor: nO, 19459 events: aO, 19460 breakpoints: oO, 19461 checkOverflow: cO, 19462 classes: lO 19463 }, nu = {}, ka = class Ss { 19464 constructor() { 19465 let i, t; 19466 for (var r = arguments.length, s = new Array(r), n = 0; n < r; n++) s[n] = arguments[n]; 19467 s.length === 1 && s[0].constructor && Object.prototype.toString.call(s[0]).slice(8, -1) === "Object" ? t = s[0] : [i, t] = s, t || (t = {}), t = Ri({}, t), i && !t.el && (t.el = i); 19468 let a = Ft(); 19469 if (t.el && typeof t.el == "string" && a.querySelectorAll(t.el).length > 1) { 19470 let c = []; 19471 return a.querySelectorAll(t.el).forEach((d) => { 19472 let u = Ri({}, t, { el: d }); 19473 c.push(new Ss(u)); 19474 }), c; 19475 } 19476 let o = this; 19477 o.__swiper__ = !0, o.support = jI(), o.device = YI({ userAgent: t.userAgent }), o.browser = KI(), o.eventsListeners = {}, o.eventsAnyListeners = [], o.modules = [...o.__modules__], t.modules && Array.isArray(t.modules) && o.modules.push(...t.modules); 19478 let l = {}; 19479 return o.modules.forEach((c) => { 19480 c({ 19481 params: t, 19482 swiper: o, 19483 extendParams: WF(t, l), 19484 on: o.on.bind(o), 19485 once: o.once.bind(o), 19486 off: o.off.bind(o), 19487 emit: o.emit.bind(o) 19488 }); 19489 }), o.params = Ri({}, Ri({}, ru, l), nu, t), o.originalParams = Ri({}, o.params), o.passedParams = Ri({}, t), o.params && o.params.on && Object.keys(o.params.on).forEac
19489h((c) => { 19490 o.on(c, o.params.on[c]); 19491 }), o.params && o.params.onAny && o.onAny(o.params.onAny), Object.assign(o, { 19492 enabled: o.params.enabled, 19493 el: i, 19494 classNames: [], 19495 slides: [], 19496 slidesGrid: [], 19497 snapGrid: [], 19498 slidesSizesGrid: [], 19499 isHorizontal() { 19500 return o.params.direction === "horizontal"; 19501 }, 19502 isVertical() { 19503 return o.params.direction === "vertical"; 19504 }, 19505 activeIndex: 0, 19506 realIndex: 0, 19507 isBeginning: !0, 19508 isEnd: !1, 19509 translate: 0, 19510 previousTranslate: 0, 19511 progress: 0, 19512 velocity: 0, 19513 animating: !1, 19514 cssOverflowAdjustment() { 19515 return Math.trunc(this.translate / 2 ** 23) * 2 ** 23; 19516 }, 19517 allowSlideNext: o.params.allowSlideNext, 19518 allowSlidePrev: o.params.allowSlidePrev, 19519 touchEventsData: { 19520 isTouched: void 0, 19521 isMoved: void 0, 19522 allowTouchCallbacks: void 0, 19523 touchStartTime: void 0, 19524 isScrolling: void 0, 19525 currentTranslate: void 0, 19526 startTranslate: void 0, 19527 allowThresholdMove: void 0, 19528 focusableElements: o.params.focusableElements, 19529 lastClickTime: 0, 19530 clickTimeout: void 0, 19531 velocities: [], 19532 allowMomentumBounce: void 0, 19533 startMoving: void 0, 19534 pointerId: null, 19535 touchId: null 19536 }, 19537 allowClick: !0, 19538 allowTouchMove: o.params.allowTouchMove, 19539 touches: { 19540 startX: 0, 19541 startY: 0, 19542 currentX: 0, 19543 currentY: 0, 19544 diff: 0 19545 }, 19546 imagesToLoad: [], 19547 imagesLoaded: 0 19548 }), o.emit("_swiper"), o.params.init && o.init(), o; 19549 } 19550 getDirectionLabel(i) { 19551 return this.isHorizontal() ? i : { 19552 width: "height", 19553 "margin-top": "margin-left", 19554 "margin-bottom ": "margin-right", 19555 "margin-left": "margin-top", 19556 "margin-right": "margin-bottom", 19557 "padding-left": "padding-top", 19558 "padding-right": "padding-bottom", 19559 marginRight: "marginBottom" 19560 }[i]; 19561 } 19562 getSlideIndex(i) { 19563 let { slidesEl: t, params: r } = this, s = Zo(Qt(t, `.${r.slideClass}, swiper-slide`)[0]); 19564 return Zo(i) - s; 19565 } 19566 getSlideIndexByData(i) { 19567 return this.getSlideIndex(this.slides.find((t) => t.getAttribute("data-swiper-slide-index") * 1 === i)); 19568 } 19569 getSlideIndexWhenGrid(i) { 19570 return this.grid && this.params.grid && this.params.grid.rows > 1 && (this.params.grid.fill === "column" ? i = Math.floor(i / this.params.grid.rows) : this.params.grid.fill === "row" && (i = i % Math.ceil(this.slides.length / this.params.grid.rows))), i; 19571 } 19572 recalcSlides() { 19573 let i = this, { slidesEl: t, params: r } = i; 19574 i.slides = Qt(t, `.${r.slideClass}, swiper-slide`); 19575 } 19576 enable() { 19577 let i = this; 19578 i.enabled || (i.enabled = !0, i.params.grabCursor && i.setGrabCursor(), i.emit("enable")); 19579 } 19580 disable() { 19581 let i = this; 19582 i.enabled && (i.enabled = !1, i.params.grabCursor && i.unsetGrabCursor(), i.emit("disable")); 19583 } 19584 setProgress(i, t) { 19585 let r = this; 19586 i = Math.min(Math.max(i, 0), 1); 19587 let s = r.minTranslate(), n = (r.maxTranslate() - s) * i + s; 19588 r.translateTo(n, typeof t > "u" ? 0 : t), r.updateActiveIndex(), r.updateSlidesClasses(); 19589 } 19590 emitContainerClasses() { 19591 let i = this; 19592 if (!i.params._emitClasses || !i.el) return; 19593 let t = i.el.className.split(" ").filter((r) => r.indexOf("swiper") === 0 || r.indexOf(i.params.containerModifierClass) === 0); 19594 i.emit("_containerClasses", t.join(" ")); 19595 } 19596 getSlideClasses(i) { 19597 let t = this; 19598 return t.destroyed ? "" : i.className.split(" ").filter((r) => r.indexOf("swiper-slide") === 0 || r.indexOf(t.params.slideClass) === 0).join(" "); 19599 } 19600 emitSlidesClasses() { 19601 let i = this; 19602 if (!i.params._emitClasses || !i.el) return; 19603 let t = []; 19604 i.slides.forEach((r) => { 19605 let s = i.getSlideClasses(r); 19606 t.push({ 19607 slideEl: r, 19608 classNames: s 19609 }), i.emit("_slideClass", r, s); 19610 }), i.emit("_slideClasses", t); 19611 } 19612 slidesPerViewDynamic(i, t) { 19613 i === void 0 && (i = "current"), t === void 0 && (t = !1); 19614 let { params: r, slides: s, slidesGrid: n, slidesSizesGrid: a, size: o, activeIndex: l } = this, c = 1; 19615 if (typeof r.slidesPerView == "number") return r.slidesPerView; 19616 if (r.centeredSlides) { 19617 let d = s[l] ? Math.ceil(s[l].swiperSlideSize) : 0, u; 19618 for (let h = l + 1; h < s.length; h += 1) s[h] && !u && (d += Math.ceil(s[h].swiperSlideSize), c += 1, d > o && (u = !0)); 19619 for (let h = l - 1; h >= 0; h -= 1) s[h] && !u && (d += s[h].swiperSlideSize, c += 1, d > o && (u = !0)); 19620 } else if (i === "current") for (let d = l + 1; d < s.length; d += 1) (t ? n[d] + a[d] - n[l] < o : n[d] - n[l] < o) && (c += 1); 19621 else for (let d = l - 1; d >= 0; d -= 1) n[l] - n[d] < o && (c += 1); 19622 return c; 19623 } 19624 update() { 19625 let i = this; 19626 if (!i || i.destroyed) return; 19627 let { snapGrid: t, params: r } = i; 19628 r.breakpoints && i.setBreakpoint(), [...i.el.querySelectorAll("[loading=\"lazy\"]")].forEac
19628h((a) => { 19629 a.complete && il(i, a); 19630 }), i.updateSize(), i.updateSlides(), i.updateProgress(), i.updateSlidesClasses(); 19631 function s() { 19632 let a = i.rtlTranslate ? i.translate * -1 : i.translate, o = Math.min(Math.max(a, i.maxTranslate()), i.minTranslate()); 19633 i.setTranslate(o), i.updateActiveIndex(), i.updateSlidesClasses(); 19634 } 19635 let n; 19636 if (r.freeMode && r.freeMode.enabled && !r.cssMode) s(), r.autoHeight && i.updateAutoHeight(); 19637 else { 19638 if ((r.slidesPerView === "auto" || r.slidesPerView > 1) && i.isEnd && !r.centeredSlides) { 19639 let a = i.virtual && r.virtual.enabled ? i.virtual.slides : i.slides; 19640 n = i.slideTo(a.length - 1, 0, !1, !0); 19641 } else n = i.slideTo(i.activeIndex, 0, !1, !0); 19642 n || s(); 19643 } 19644 r.watchOverflow && t !== i.snapGrid && i.checkOverflow(), i.emit("update"); 19645 } 19646 changeDirection(i, t) { 19647 t === void 0 && (t = !0); 19648 let r = this, s = r.params.direction; 19649 return i || (i = s === "horizontal" ? "vertical" : "horizontal"), i === s || i !== "horizontal" && i !== "vertical" || (r.el.classList.remove(`${r.params.containerModifierClass}${s}`), r.el.classList.add(`${r.params.containerModifierClass}${i}`), r.emitContainerClasses(), r.params.direction = i, r.slides.forEach((n) => { 19650 i === "vertical" ? n.style.width = "" : n.style.height = ""; 19651 }), r.emit("changeDirection"), t && r.update()), r; 19652 } 19653 changeLanguageDirection(i) { 19654 let t = this; 19655 t.rtl && i === "rtl" || !t.rtl && i === "ltr" || (t.rtl = i === "rtl", t.rtlTranslate = t.params.direction === "horizontal" && t.rtl, t.rtl ? (t.el.classList.add(`${t.params.containerModifierClass}rtl`), t.el.dir = "rtl") : (t.el.classList.remove(`${t.params.containerModifierClass}rtl`), t.el.dir = "ltr"), t.update()); 19656 } 19657 mount(i) { 19658 let t = this; 19659 if (t.mounted) return !0; 19660 let r = i || t.params.el; 19661 if (typeof r == "string" && (r = document.querySelector(r)), !r) return !1; 19662 r.swiper = t, r.parentNode && r.parentNode.host && r.parentNode.host.nodeName === t.params.swiperElementNodeName.toUpperCase() && (t.isElement = !0); 19663 let s = () => `.${(t.params.wrapperClass || "").trim().split(" ").join(".")}`, n = r && r.shadowRoot && r.shadowRoot.querySelector ? r.shadowRoot.querySelector(s()) : Qt(r, s())[0]; 19664 return !n && t.params.createElements && (n = Li("div", t.params.wrapperClass), r.append(n), Qt(r, `.${t.params.slideClass}`).forEach((a) => { 19665 n.append(a); 19666 })), Object.assign(t, { 19667 el: r, 19668 wrapperEl: n, 19669 slidesEl: t.isElement && !r.parentNode.host.slideSlots ? r.parentNode.host : n, 19670 hostEl: t.isElement ? r.parentNode.host : r, 19671 mounted: !0, 19672 rtl: r.dir.toLowerCase() === "rtl" || Vs(r, "direction") === "rtl", 19673 rtlTranslate: t.params.direction === "horizontal" && (r.dir.toLowerCase() === "rtl" || Vs(r, "direction") === "rtl"), 19674 wrongRTL: Vs(n, "display") === "-webkit-box" 19675 }), !0; 19676 } 19677 init(i) { 19678 let t = this; 19679 if (t.initialized || t.mount(i) === !1) return t; 19680 t.emit("beforeInit"), t.params.breakpoints && t.setBreakpoint(), t.addClasses(), t.updateSize(), t.updateSlides(), t.params.watchOverflow && t.checkOverflow(), t.params.grabCursor && t.enabled && t.setGrabCursor(), t.params.loop && t.virtual && t.params.virtual.enabled ? t.slideTo(t.params.initialSlide + t.virtual.slidesBefore, 0, t.params.runCallbacksOnInit, !1, !0) : t.slideTo(t.params.initialSlide, 0, t.params.runCallbacksOnInit, !1, !0), t.params.loop && t.loopCreate(void 0, !0), t.attachEvents(); 19681 let r = [...t.el.querySelectorAll("[loading=\"lazy\"]")]; 19682 return t.isElement && r.push(...t.hostEl.querySelectorAll("[loading=\"lazy\"]")), r.forEach((s) => { 19683 s.complete ? il(t, s) : s.addEventListener("load", (n) => { 19684 il(t, n.target); 19685 }); 19686 }), iu(t), t.initialized = !0, iu(t), t.emit("init"), t.emit("afterInit"), t; 19687 } 19688 destroy(i, t) { 19689 i === void 0 && (i = !0), t === void 0 && (t = !0); 19690 let r = this, { params: s, el: n, wrapperEl: a, slides: o } = r; 19691 return typeof r.params > "u" || r.destroyed || (r.emit("beforeDestroy"), r.initialized = !1, r.detachEvents(), s.loop && r.loopDestroy(), t && (r.removeClasses(), n && typeof n != "string" && n.removeAttribute("style"), a && a.removeAttribute("style"), o && o.length && o.forEach((l) => { 19692 l.classList.remove(s.slideVisibleClass, s.slideFullyVisibleClass, s.slideActiveClass, s.slideNextClass, s.slidePrevClass), l.removeAttribute("style"), l.removeAttribute("data-swiper-slide-index"); 19693 }
19693)), r.emit("destroy"), Object.keys(r.eventsListeners).forEach((l) => { 19694 r.off(l); 19695 }), i !== !1 && (r.el && typeof r.el != "string" && (r.el.swiper = null), g2(r)), r.destroyed = !0), null; 19696 } 19697 static extendDefaults(i) { 19698 Ri(nu, i); 19699 } 19700 static get extendedDefaults() { 19701 return nu; 19702 } 19703 static get defaults() { 19704 return ru; 19705 } 19706 static installModule(i) { 19707 Ss.prototype.__modules__ || (Ss.prototype.__modules__ = []); 19708 let t = Ss.prototype.__modules__; 19709 typeof i == "function" && t.indexOf(i) < 0 && t.push(i); 19710 } 19711 static use(i) { 19712 return Array.isArray(i) ? (i.forEach((t) => Ss.installModule(t)), Ss) : (Ss.installModule(i), Ss); 19713 } 19714 }, Object.keys(su).forEach((e) => { 19715 Object.keys(su[e]).forEach((i) => { 19716 ka.prototype[i] = su[e][i]; 19717 }); 19718 }), ka.use([J2, Q2]); 19719 })))(); 19720} 19721function jF(e, i) { 19722 e & 1 && (Ob(), Nt(0, "svg", 0), br(1, "path", 1), ft()); 19723} 19724var dO, au; 19725function lS() { 19726 return (lS = Z((() => { 19727 de(), ks(), dO = ["*"], au = (() => { 19728 let e = class { 19729 constructor() { 19730 this.size = Ne("large"), this.direction = Ne("left"), this.inverse = Ne(!1), this.variant = Ne("strong"), this.ariaLabel = ne(() => this.direction() === "right" ? "right arrow" : "left arrow"), this.hostClass = ne(() => `ds-arrow ${`ds-arrow-${this.size()}`} ${`ds-arrow-${this.variant()}`}`); 19731 } 19732 getThemeableProperties() { 19733 return { 19734 size: this.size, 19735 variant: this.variant, 19736 inverse: this.inverse 19737 }; 19738 } 19739 }; 19740 return e.ɵfac = function(i) { 19741 return new (i || e)(); 19742 }, e.ɵcmp = ge({ 19743 type: e, 19744 selectors: [["ds-arrow"]], 19745 hostAttrs: [ 19746 "tabIndex", 19747 "0", 19748 "role", 19749 "button" 19750 ], 19751 hostVars: 7, 19752 hostBindings: function(i, t) { 19753 i & 2 && (Qe("aria-label", t.ariaLabel()), Le(t.hostClass()), wt("ds-right-arrow", t.direction() === "right")("ds-arrow-inverse", t.inverse())); 19754 }, 19755 inputs: { 19756 size: [1, "size"], 19757 direction: [1, "direction"], 19758 inverse: [1, "inverse"], 19759 variant: [1, "variant"] 19760 }, 19761 outputs: { 19762 size: "sizeChange", 19763 direction: "directionChange", 19764 inverse: "inverseChange", 19765 variant: "variantChange" 19766 }, 19767 features: [Pi([{ 19768 provide: Nr, 19769 useExisting: e 19770 }])], 19771 ngContentSelectors: dO, 19772 decls: 2, 19773 vars: 0, 19774 consts: [[ 19775 "viewBox", 19776 "0 0 11 20", 19777 "fill", 19778 "currentColor", 19779 "xmlns", 19780 "http://www.w3.org/2000/svg", 19781 1, 19782 "ds-arrow-icon" 19783 ], [ 19784 "fill-rule", 19785 "evenodd", 19786 "clip-rule", 19787 "evenodd", 19788 "d", 19789 "M0.281018 10.3847L9.28102 19.695L10.719 18.305L2.41443 9.71403L10.6946 1.71939L9.30541 0.280582L0.305412 8.97024C0.114541 9.15453 0.00472972 9.40712 0.000154933 9.6724C-0.00441985 9.93768 0.0966153 10.1939 0.281018 10.3847Z" 19790 ]], 19791 template: function(i, t) { 19792 i & 1 && (_t(), Ke(0, 0, null, jF, 2, 0)); 19793 }, 19794 styles: [`.ds-arrow{--%NS%ds-carousel-arrow-radius-border: var(--%NS%semantic-radius-max);--%NS%ds-arrow-box-shadow: var(--%NS%semantic-elevation-raised-2-box-shadow);--%NS%ds-carousel-arrow-bg: transparent;--%NS%ds-carousel-arrow-border-color: transparent;--%NS%ds-carousel-arrow-border-radius: var(--%NS%ds-carousel-arrow-radius-border);--%NS%ds-carousel-arrow-color-icon: transparent;--%NS%ds-carousel-arrow-height: var(--%NS%ds-carousel-arrow-size-height);--%NS%ds-carousel-arrow-width: var(--%NS%ds-carousel-arrow-size-width);box-shadow:var(--%NS%ds-arrow-box-shadow);align-items:center;background-color:var(--%NS%ds-carousel-arrow-bg);border-color:var(--%NS%ds-carousel-arrow-border-color);border-radius:var(--%NS%ds-carousel-arrow-border-radius);box-sizing:border-box;color:var(--%NS%ds-carousel-arrow-color-icon);display:inline-flex;height:var(--%NS%ds-carousel-arrow-height);justify-content:center;-webkit-user-select:none;user-select:none;width:var(--%NS%ds-carousel-arrow-width)}.ds-arrow .ds-arrow-icon{--%NS%ds-carousel-arrow-icon-size: auto;color:var(--%NS%ds-carousel-arrow-color-icon);height:var(--%NS%ds-carousel-arrow-icon-size);width:var(--%NS%ds-carousel-arrow-icon-size)}.ds-arrow .vn-icon{--%NS%vn-icon-size: var(--%NS%ds-carousel-arrow-icon-size);color:var(--%NS%ds-carousel-arrow-color-icon)}.ds-arrow.ds-arrow-strong{--%NS%ds-carousel-arrow-active-color-bg: var(--%NS%semantic-color-surface-container-highest-active);--%NS%ds-carousel-arrow-active-color-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-carousel-arrow-active-color-icon: var(--%NS%semantic-color-on-surface-base);--%NS%ds-carousel-arrow-enabled-color-bg: var(--%NS%semantic-color-surface-container-highest-base);--%NS%ds-carousel-arrow-enabled-color-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-carousel-arrow-enabled-color-icon: var(--%NS%semantic-color-on-surface-base);--%NS%ds-carousel-arrow-hover-color-bg: var(--%NS%semantic-color-surface-container-highest-hover);--%NS%ds-carousel-arrow-hover-color-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-carousel-arrow-hover-color-icon: var(--%NS%semantic-color-on-surface-base)}.ds-arrow.ds-arrow-strong.ds-arrow-inverse{--%NS%ds-carousel-arrow-active-color-bg: var(--%NS%semantic-color-surface-container-highest-active-inverse);--%NS%ds-carousel-arrow-active-color-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-carousel-arrow-active-color-icon: var(--%NS%semantic-color-on-surface-base-inverse);--%NS%ds-carousel-arrow-enabled-color-bg: var(--%NS%semantic-color-surface-container-highest-base-inverse);--%NS%ds-carousel-arrow-enabled-color-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-carousel-arrow-enabled-color-icon: var(--%NS%semantic-color-on-surface-base-inverse);--%NS%ds-carousel-arrow-hover-color-bg: var(--%NS%semantic-color-surface-container-highest-hover-inverse);--%NS%ds-carousel-arrow-hover-color-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-carousel-arrow-hover-color-icon: var(--%NS%semantic-color-on-surface-base-inverse)}.ds-arrow.ds-arrow-strong{--%NS%ds-carousel-arrow-bg: var(--%NS%ds-carousel-arrow-enabled-color-bg);--%NS%ds-carousel-arrow-border-color: var(--%NS%ds-carousel-arrow-enabled-color-border);--%NS%ds-carousel-arrow-color-icon: var(--%NS%ds-carousel-arrow-enabled-color-icon)}@media(hover:hover){.ds-arrow.ds-arrow-strong:hover{--%NS%ds-carousel-arrow-bg: var(--%NS%ds-carousel-arrow-hover-color-bg);--%NS%ds-carousel-arrow-border-color: var(--%NS%ds-carousel-arrow-hover-color-border)}.ds-arrow.ds-arrow-strong:hover .ds-arrow-icon,.ds-arrow.ds-arrow-strong:hover .vn-icon{color:var(--%NS%ds-carousel-arrow-hover-color-icon)}}.ds-arrow.ds-arrow-strong:active{--%NS%ds-carousel-arrow-bg: var(--%NS%ds-carousel-arrow-active-color-bg);--%NS%ds-carousel-arrow-border-color: var(--%NS%ds-carousel-arrow-active-color-border)}.ds-arrow.ds-arrow-strong:active .ds-arrow-icon,.ds-arrow.ds-arrow-strong:active .vn-icon{color:var(--%NS%ds-carousel-arrow-active-color-icon)}.ds-arrow.ds-arrow-subtle{--%NS%ds-carousel-arrow-active-color-bg: var(--%NS%semantic-color-opacity-strong-active);--%NS%ds-carousel-arrow-active-color-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-carousel-arrow-active-color-icon: var(--%NS%semantic-color-on-surface-base-inverse);--%NS%ds-carousel-arrow-enabled-color-bg: var(--%NS%semantic-color-opacity-strong-base);--%NS%ds-carousel-arrow-enabled-color-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-carousel-arrow-enabled-color-icon: var(--%NS%semantic-color-on-surface-base-inverse);--%NS%ds-carousel-arrow-hover-color-bg: var(--%NS%semantic-color-opacity-strong-hover);--%NS%ds-carousel-arrow-hover-color-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-carousel-arrow-hover-color-icon: var(--%NS%semantic-color-on-surface-base-inverse)}.ds-arrow.ds-arrow-subtle.ds-arrow-inverse{--%NS%ds-carousel-arrow-active-color-bg: var(--%NS%semantic-color-opacity-strong-active-inverse);--%NS%ds-carousel-arrow-active-color-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-carousel-arrow-active-color-icon: var(--%NS%semantic-color-on-surface-base);--%NS%ds-carousel-arrow-enabled-color-bg: var(--%NS%semantic-color-opacity-strong-base-inverse);--%NS%ds-carousel-arrow-enabled-color-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-carousel-arrow-enabled-color-icon: var(--%NS%semantic-color-on-surface-base);--%NS%ds-carousel-arrow-hover-color-bg: var(--%NS%semantic-color-opacity-strong-hover-inverse);--%NS%ds-carousel-arrow-hover-color-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-carousel-arrow-hover-color-icon: var(--%NS%semantic-color-on-surface-base)}.ds-arrow.ds-arrow-subtle{--%NS%ds-carousel-arrow-bg: var(--%NS%ds-carousel-arrow-enabled-color-bg);--%NS%ds-carousel-arrow-border-color: var(--%NS%ds-carousel-arrow-enabled-color-border);--%NS%ds-carousel-arrow-color-icon: var(--%NS%ds-carousel-arrow-enabled-color-icon)}@media(hover:hover){.ds-arrow.ds-arrow-subtle:hover{--%NS%ds-carousel-arrow-bg: var(--%NS%ds-carousel-arrow-hover-color-bg);--%NS%ds-carousel-arrow-border-color: var(--%NS%ds-carousel-arrow-hover-color-border)}.ds-arrow.ds-arrow-subtle:hover .ds-arrow-icon,.ds-arrow.ds-arrow-subtle:hover .vn-icon{color:var(--%NS%ds-carousel-arrow-hover-color-icon)}}.ds-arrow.ds-arrow-subtle:active{--%NS%ds-carousel-arrow-bg: var(--%NS%ds-carousel-arrow-active-color-bg);--%NS%ds-carousel-arrow-border-color: var(--%NS%ds-carousel-arrow-active-color-border)}.ds-arrow.ds-arrow-subtle:active .ds-arrow-icon,.ds-arrow.ds-arrow-subtle:active .vn-icon{color:var(--%NS%ds-carousel-arrow-active-color-icon)}.ds-arrow.ds-right-arrow .ds-arrow-icon,.ds-arrow.ds-right-arrow .vn-icon{transform:rotate(180deg)}.ds-arrow.ds-arrow-large{--%NS%ds-carousel-arrow-size-height: var(--%NS%semantic-size-x11);--%NS%ds-carousel-arrow-size-icon: var(--%NS%semantic-size-icon-xlarge);--%NS%ds-carousel-arrow-size-width: var(--%NS%semantic-size-x11)}.ds-arrow.ds-arrow-medium{--%NS%ds-carousel-arrow-size-height: var(--%NS%semantic-size-x9);--%NS%ds-carousel-arrow-size-icon: var(--%NS%semantic-size-icon-large);--%NS%ds-carousel-arrow-size-width: var(--%NS%semantic-size-x9)}.ds-arrow.ds-arrow-small{--%NS%ds-carousel-arrow-size-height: var(--%NS%semantic-size-x6);--%NS%ds-carousel-arrow-size-icon: var(--%NS%semantic-size-icon-small);--%NS%ds-carousel-arrow-size-width: var(--%NS%semantic-size-x6)}.ds-arrow.ds-arrow-large .ds-arrow-icon,.ds-arrow.ds-arrow-large .vn-icon,.ds-arrow.ds-arrow-medium .ds-arrow-icon,.ds-arrow.ds-arrow-medium .vn-icon,.ds-arrow.ds-arrow-small .ds-arrow-icon,.ds-arrow.ds-arrow-small .vn-icon{--%NS%ds-carousel-arrow-icon-size: var(--%NS%ds-carousel-arrow-size-icon)} 19795`], 19796 encapsulation: 2 19797 }), e; 19798 })(); 19799 })))(); 19800} 19801function YF(e, i) { 19802 if (e & 1) { 19803 let t = qe(); 19804 ie(0, "ds-arrow", 4), Ce("click", function() { 19805 return Ae(t), Pe(N(2).prevClick.emit()); 19806 }), te(), ie(1, "ds-arrow", 5), Ce("click", function() { 19807 return Ae(t), Pe(N(2).nextClick.emit()); 19808 }), te(); 19809 } 19810 if (e & 2) { 19811 let t = N(2); 19812 Le("swiper-button-prev " + t.navPrevClass()), A("size", t.arrowSize())("variant", t.variant())("inverse", t.inverse()), P(), Le("swiper-button-next " + t.navNextClass()), A("size", t.arrowSize())("variant", t.variant())("inverse", t.inverse()); 19813 } 19814} 19815function KF(e, i) { 19816 e & 1 && U(0, YF, 2, 10), e & 2 && W(N().swiperOptions().navigation ? 0 : -1); 19817} 19818function qF(e, i) { 19819 e & 1 && pe(0, "div", 3); 19820} 19821function XF(e, i) { 19822 e & 1 && Ie(0); 19823} 19824function JF(e, i) { 19825 e & 1 && be(0, XF, 1, 0, "ng-container", 6), e & 2 && (N(), A("ngTemplateOutlet", Ge(1))); 19826} 19827function QF(e, i) { 19828 e & 1 && Ie(0); 19829} 19830function ZF(e, i) { 19831 e & 1 && be(0, QF, 1, 0, "ng-container", 6), e & 2 && (N(), A("ngTemplateOutlet", Ge(1))); 19832} 19833function uO(e, i) { 19834 return e == null ? 0 : typeof e == "string" ? parseFloat(e) / 100 * i : e; 19835} 19836function e3(e) { 19837 return e == null ? 1 : Math.max(0, Math.min(1, e)); 19838} 19839function pO(e, i) { 19840 return { 19841 rotate: e.rotate ?? -50, 19842 depth: e.depth ?? 300, 19843 scale: e3(e.scale), 19844 stretchPx: uO(e.stretch, i), 19845 modifier: e.modifier ?? 1, 19846 slideShadows: !!e.slideShadows,
19847 rawStretch: e.stretch 19848 }; 19849} 19850function hO(e) { 19851 if (!e) return {}; 19852 let i = {}; 19853 if (e.slidesPerView !== void 0 && (i.slidesPerView = e.slidesPerView), e.spaceBetween !== void 0 && (i.spaceBetween = e.spaceBetween), e.speed !== void 0 && (i.speed = e.speed), e.loop !== void 0 && (i.loop = e.loop), e.centeredSlides !== void 0 && (i.centeredSlides = e.centeredSlides), e.centerInsufficientSlides !== void 0 && (i.centerInsufficientSlides = e.centerInsufficientSlides), e.allowTouchMove !== void 0 && (i.allowTouchMove = e.allowTouchMove), e.autoHeight !== void 0 && (i.autoHeight = e.autoHeight), e.slidesPerGroup !== void 0 && (i.slidesPerGroup = e.slidesPerGroup), e.initialSlide !== void 0 && (i.initialSlide = e.initialSlide), e.watchOverflow !== void 0 && (i.watchOverflow = e.watchOverflow), e.simulateTouch !== void 0 && (i.simulateTouch = e.simulateTouch), e.touchRatio !== void 0 && (i.touchRatio = e.touchRatio), e.longSwipesRatio !== void 0 && (i.longSwipesRatio = e.longSwipesRatio), e.grabCursor !== void 0 && (i.grabCursor = e.grabCursor), e.slideActiveClass !== void 0 && (i.slideActiveClass = e.slideActiveClass), e.slideVisibleClass !== void 0 && (i.slideVisibleClass = e.slideVisibleClass), e.slidePrevClass !== void 0 && (i.slidePrevClass = e.slidePrevClass), e.slideNextClass !== void 0 && (i.slideNextClass = e.slideNextClass), e.navigation !== void 0 && (i.navigation = typeof e.navigation == "boolean" ? e.navigation : !!e.navigation), e.pagination !== void 0) { 19854 if (typeof e.pagination == "boolean") i.pagination = e.pagination; 19855 else if (e.pagination) { 19856 let t = e.pagination, r = {}; 19857 t.type === "bullets" && (r.type = "bullets"), t.clickable !== void 0 && (r.clickable = t.clickable), t.dynamicBullets !== void 0 && (r.dynamicBullets = t.dynamicBullets), t.dynamicMainBullets !== void 0 && (r.dynamicMainBullets = t.dynamicMainBullets), i.pagination = r; 19858 } 19859 } 19860 if (e.freeMode !== void 0 && (typeof e.freeMode == "boolean" ? i.freeMode = e.freeMode : e.freeMode && e.freeMode.sticky ? i.freeMode = !1 : e.freeMode && e.freeMode.enabled !== !1 ? i.freeMode = !0 : i.freeMode = !1), e.autoplay !== void 0 && (typeof e.autoplay == "boolean" ? i.autoplay = e.autoplay : e.autoplay && (i.autoplay = { 19861 delay: e.autoplay.delay, 19862 disableOnInteraction: e.autoplay.disableOnInteraction, 19863 pauseOnMouseEnter: e.autoplay.pauseOnMouseEnter, 19864 waitForTransition: e.autoplay.waitForTransition, 19865 stopOnLastSlide: e.autoplay.stopOnLastSlide 19866 })), e.effect !== void 0 && (i.effect = e.effect), e.coverflowEffect !== void 0 && (i.coverflowEffect = e.coverflowEffect), i.groupSnap = e.groupSnap === !0, e.breakpoints) { 19867 i.breakpoints = {}; 19868 for (let [t, r] of Object.entries(e.breakpoints)) i.breakpoints[Number(t)] = hO(r); 19869 } 19870 return i; 19871} 19872function ou(e, i, t) { 19873 let r = Math.max(1, Math.floor(t)); 19874 if (e <= i) return [0]; 19875 let s = e - i, n = []; 19876 for (let a = 0; a * r <= s; a++) n.push(a * r); 19877 return (n.length === 0 || n[n.length - 1] !== s) && n.push(s), n; 19878} 19879function t3(e, i) { 19880 if (e.size !== i.size) return !1; 19881 for (let t of e) if (!i.has(t)) return !1; 19882 return !0; 19883} 19884function i3(e, i) { 19885 if (e & 1) { 19886 let t = qe(); 19887 ie(0, "div", 3)(1, "ds-arrow", 7), Ce("click", function() { 19888 return Ae(t), Pe(N().onPrevArrowClick()); 19889 })("keydown.enter", function() { 19890 return Ae(t), Pe(N().onPrevArrowClick()); 19891 })("keydown.space", function(r) { 19892 return Ae(t), N().onPrevArrowClick(), Pe(r.preventDefault()); 19893 }), te()(); 19894 } 19895 if (e & 2) { 19896 let t = N(); 19897 A("ngClass", t.navPrevClass()), P(), A("size", t.arrowSize())("variant", t.variant())("inverse", t.inverse()), Qe("aria-label", "Previous slide"); 19898 } 19899} 19900function r3(e, i) { 19901 if (e & 1) { 19902 let t = qe(); 19903 ie(0, "div", 4)(1, "ds-arrow", 8), Ce("click", function() { 19904 return Ae(t), Pe(N().onNextArrowClick()); 19905 })("keydown.enter", function() { 19906 return Ae(t), Pe(N().onNextArrowClick()); 19907 })("keydown.space", function(r) { 19908 return Ae(t), N().onNextArrowClick(), Pe(r.preventDefault()); 19909 }), te()(); 19910 } 19911 if (e & 2) { 19912 let t = N(); 19913 A("ngClass", t.navNextClass()), P(), A("size", t.arrowSize())("variant", t.variant())("inverse", t.inverse()), Qe("aria-label", "Next slide"); 19914 } 19915} 19916function s3(e, i) { 19917 if (e & 1) { 19918 let t = qe(); 19919 ie(0, "button", 12), Ce("click", function() { 19920 let r = Ae(t).$implicit; 19921 return Pe(N(2).goToPage(r)); 19922 }), te(); 19923 } 19924 if (e & 2) { 19925 let t = i.$implicit, r = N(2); 19926 Hs("transform", r.isDynamicBullets() ? "scale(" + r.bulletScales().get(t)?.scale + ")" : null), wt("active", t === r.activePage())("dynamic-bullet", r.isDynamicBullets())("dynamic-bullet-hidden", r.isDynamicBullets() && !r.bulletScales().get(t)?.visible), Qe("aria-selected", t === r.activePage())("aria-label", "Go to slide " + (t + 1)); 19927 } 19928} 19929function n3(e, i) { 19930 if (e & 1 && (ie(0, "div", 9)(1, "div", 10), Sr(2, s3, 1, 10, "button", 11, i$), te()()), e & 2) { 19931 let t = N(); 19932 Hs("width", t.bulletWindowWidth()), wt("dynamic", t.isDynamicBullets()), P(), Hs("transform", t.bulletStripTransform()), P(), fr(t.pagesArray()); 19933 } 19934} 19935function a3(e, i) { 19936 e & 1 && Ke(0); 19937} 19938function o3(e, i) { 19939 e & 1 && Ie(0); 19940} 19941function l3(e, i) { 19942 if (e & 1) { 19943 let t = qe(); 19944 ie(0, "vn-native-swiper", 3), Ce("prevClick", function() { 19945 return Ae(t), Pe(N().prevClick.emit()); 19946 })("nextClick", function() { 19947 return Ae(t), Pe(N().nextClick.emit()); 19948 }), be(1, o3, 1, 0, "ng-container", 4), te(); 19949 } 19950 if (e & 2) { 19951 let t = N(), r = Ge(1); 19952 A("swiperOptions", t.effectiveNativeSwiperOptions())("showPagination", t.showPagination())("swiperClass", t.swiperClass())("inverse", t.inverse())("arrowSize", t.arrowSize())("variant", t.variant())("navPrevClass", t.navPrevClass())("navNextClass", t.navNextClass())("ariaLabel", t.ariaLabel()), P(), A("ngTemplateOutlet", r); 19953 } 19954} 19955function c3(e, i) { 19956 e & 1 && Ie(0); 19957} 19958function d3(e, i) { 19959 if (e & 1) { 19960 let t = qe(); 19961 ie(0, "vn-swiper", 5), Ce("prevClick", function() { 19962 return Ae(t), Pe(N().prevClick.emit()); 19963 })("nextClick", function() { 19964 return Ae(t), Pe(N().nextClick.emit()); 19965 }), be(1, c3, 1, 0, "ng-container", 4), te(); 19966 } 19967 if (e & 2) { 19968 let t = N(), r = Ge(1); 19969 A("swiperOptions", t.swiperOptions())("showPagination", t.showPagination())("swiperClass", t.swiperClass())("inverse", t.inverse())("arrowSize", t.arrowSize())("variant", t.variant())("navPrevClass", t.navPrevClass())("navNextClass", t.navNextClass())("navOutsideContainer", t.navOutsideContainer()), P(), A("ngTemplateOutlet", r); 19970 } 19971} 19972var mO, fO, xa, lu, rl, gO, vO, cS, SO, cu, dS, uS, pS, hS, mS, fS, gS, bO, yO, wO, EO, vS, SS, CO, NO, TO, sl, kO, xO; 19973function bS() { 19974 return (bS = Z((() => { 19975 Re(), de(), rr(), Ye(), Cs(), jn(), Et(), Un(), st(), Cr(), Ht(), U_(), oS(), lS(), mO = ["swiperContainer"], fO = ["*"], xa = (() => { 19976 let e = class { 19977 ngAfterViewInit() { 19978 this.platform.isServer || this.ngZone.runOutsideAngular(() => { 19979 this.swiper = new ka(this.swiperRef.nativeElement, this.scopeNavigationToHost(this.swiperOptions())); 19980 }); 19981 } 19982 constructor() { 19983 this.ngZone = f(Ys), this.strategy = f(W_), this.timer = f(Ui), this.platform = f(Fa), this.host = f(di), this.defaultOptions = { 19984 modules: [], 19985 navigation: { 19986 nextEl: ".swiper-button-next", 19987 prevEl: ".swiper-button-prev" 19988 }, 19989 pagination: { 19990 clickable: !0, 19991 el: ".swiper-pagination", 19992 type: "bullets" 19993 } 19994 }, this.inverse = ce(!0), this.showPagination = ce(!0), this.arrowSize = ce("large"), this.variant = ce("strong"), this.navOutsideContainer = ce(!1), this.navPrevClass = ce(""), this.navNextClass = ce(""), this.swiperOptions = ce(this.defaultOptions, { transform: (t) => this.sanitizeOptions(t) }), this.swiperClass = ce("", { transform: (t) => Array.isArray(t) ? t.filter((r) => r !== void 0) : t || "" }), this.prevClick = It(), this.nextClick = It(), zi(() => { 19995 let t = this.swiperOptions(); 19996 this.swiper && (this.swiper.params = this.syncedSwiperParams(t, this.swiper.params)); 19997 }); 19998 } 19999 sanitizeOptions(t) { 20000 let r = []; 20001 t.navigation === !0 && (t.navigation = this.defaultOptions.navigation, r.push(HI)), t.pagination === !0 && (t.pagination = this.defaultOptions.pagination, r.push(UI)), t.autoplay === !0 && r.push(WI); 20002 let s = ka.prototype.__modules__ ?? []; 20003 return t.modules = [.../* @__PURE__ */ new Set([...t.modules || [], ...r])].filter((n) => !s.includes(n)), t; 20004 } 20005 scopeNavigationToHost(t) { 20006 let r = t.navigation; 20007 if (!r || typeof r != "object") return t; 20008 let s = this.host.nativeElement, n = (a) => typeof a == "string" ? s.querySelector(a) ?? a : a; 20009 return J(C({}, t), { navigation: J(C({}, r), { 20010 nextEl: n(r.nextEl), 20011 prevEl: n(r.prevEl) 20012 }) }); 20013 } 20014 syncedSwiperParams(t, r) { 20015 return Object.entries(t).reduce((s, [n, a]) => { 20016 let o = n, l = r[o], c = typeof a == "object" && typeof l == "object"; 20017 return J(C({}
20017, s), { [o]: c ? C(C({}, l), a) : a }); 20018 }, C({}, r)); 20019 } 20020 forceUpdate() { 20021 this.platform.isServer || this.timer.setTimeoutOutsideAngularZone(() => { 20022 this.swiper.update(), this.swiper.pagination?.render(), this.swiper.pagination?.update(); 20023 }); 20024 } 20025 ngOnDestroy() { 20026 this.strategy.schedule(() => { 20027 this.swiper && !this.swiper.destroyed && this.swiper.destroy(!1, !1); 20028 }).subscribe(); 20029 } 20030 }; 20031 return e.ɵfac = function(i) { 20032 return new (i || e)(); 20033 }, e.ɵcmp = ge({ 20034 type: e, 20035 selectors: [["vn-swiper"]], 20036 viewQuery: function(i, t) { 20037 if (i & 1 && js(mO, 5), i & 2) { 20038 let r; 20039 Ks(r = Us()) && (t.swiperRef = r.first); 20040 } 20041 }, 20042 inputs: { 20043 inverse: [1, "inverse"], 20044 showPagination: [1, "showPagination"], 20045 arrowSize: [1, "arrowSize"], 20046 variant: [1, "variant"], 20047 navOutsideContainer: [1, "navOutsideContainer"], 20048 navPrevClass: [1, "navPrevClass"], 20049 navNextClass: [1, "navNextClass"], 20050 swiperOptions: [1, "swiperOptions"], 20051 swiperClass: [1, "swiperClass"] 20052 }, 20053 outputs: { 20054 prevClick: "prevClick", 20055 nextClick: "nextClick" 20056 }, 20057 ngContentSelectors: fO, 20058 decls: 9, 20059 vars: 5, 20060 consts: [ 20061 ["navigation", ""], 20062 ["swiperContainer", ""], 20063 [1, "swiper-wrapper"], 20064 [1, "swiper-pagination"], 20065 [ 20066 "direction", 20067 "left", 20068 3, 20069 "click", 20070 "size", 20071 "variant", 20072 "inverse" 20073 ], 20074 [ 20075 "direction", 20076 "right", 20077 3, 20078 "click", 20079 "size", 20080 "variant", 20081 "inverse" 20082 ], 20083 [4, "ngTemplateOutlet"] 20084 ], 20085 template: function(i, t) { 20086 i & 1 && (_t(), be(0, KF, 1, 1, "ng-template", null, 0, ti), ie(2, "div", null, 1)(4, "div", 2), Ke(5), te(), U(6, qF, 1, 0, "div", 3), U(7, JF, 1, 1, "ng-container"), te(), U(8, ZF, 1, 1, "ng-container")), i & 2 && (P(2), Le("swiper " + t.swiperClass()), P(4), W(t.showPagination() && t.swiperOptions().pagination ? 6 : -1), P(), W(t.navOutsideContainer() ? -1 : 7), P(), W(t.navOutsideContainer() ? 8 : -1)); 20087 }, 20088 dependencies: [qs, au], 20089 styles: [".swiper-button-prev[_ngcontent-%COMP%], .swiper-button-next[_ngcontent-%COMP%]{margin-top:0}[_ngcontent-%COMP%]:is(.swiper-button-prev,.swiper-button-next):after{content:\"\"}"], 20090 changeDetection: 1 20091 }), e; 20092 })(), lu = (() => { 20093 let e = class { 20094 constructor() { 20095 this.timerService = f(Ui), this.renderer = f(Ur), this.window = f(dt), this.destroyRef = f(ze), this.autoplayPaused = !1, this.delay = 5e3, this.config = {}, this.initialized = !1; 20096 } 20097 get isRunning() { 20098 return this.autoplayTimerId !== void 0 && !this.autoplayPaused; 20099 } 20100 init(t) { 20101 this.delay = t.delay, this.config = t.config, this.onTick = t.onTick, this.getActiveIndex = t.getActiveIndex, this.getSlideCount = t.getSlideCount, this.initialized = !0, this.startAutoplayTimer(), t.config.pauseOnMouseEnter && this.initPauseListeners(t.wrapper, t.scrollContainer), t.config.disableOnInteraction !== !1 && this.initDisableOnInteraction(t.scrollContainer), this.destroyRef.onDestroy(() => this.stop()); 20102 } 20103 start() { 20104 this.initialized && (this.autoplayPaused = !1, this.startAutoplayTimer()); 20105 } 20106 stop() { 20107 this.timerService.clearInterval(this.autoplayTimerId), this.autoplayTimerId = void 0, this.autoplayPaused = !1; 20108 } 20109 resetTimer() { 20110 this.autoplayTimerId === void 0 || this.autoplayPaused || (this.timerService.clearInterval(this.autoplayTimerId), this.startAutoplayTimer()); 20111 } 20112 startAutoplayTimer() { 20113 this.timerService.clearInterval(this.autoplayTimerId), this.autoplayTimerId = this.timerService.setIntervalOutsideAngularZone(() => { 20114 let t = this.getSlideCount?.() ?? 0, r = this.getActiveIndex?.() ?? 0; 20115 if (this.config.stopOnLastSlide && r >= t - 1) { 20116 this.stop(); 20117 return; 20118 } 20119 this.onTick?.(); 20120 }, this.delay); 20121 } 20122 pauseAutoplay() { 20123 this.autoplayPaused = !0, this.timerService.clearInterval(this.autoplayTimerId), this.autoplayTimerId = void 0; 20124 } 20125 resumeAutoplay() { 20126 this.autoplayPaused && (this.autoplayPaused = !1, this.startAutoplayTimer()); 20127 } 20128 initPauseListeners(t, r) { 20129 if (this.window.matchMedia?.("(hover: hover)")?.matches) { 20130 let o = this.renderer.listen(t, "mouseenter", () => this.pauseAutoplay()), l = this.renderer.listen(t, "mouseleave", () => this.resumeAutoplay()); 20131 this.destroyRef.onDestroy(() => { 20132 o(), l(); 20133 }); 20134 } 20135 let s, n = () => { 20136 this.timerService.clearTimeout(s), s = void 0, this.pauseAutoplay(); 20137 }, a = () => { 20138 s = this.timerService.setTimeoutOutsideAngularZone(() => { 20139 this.resumeAutoplay(), s = void 0; 20140 }, this.delay); 20141 }; 20142 r.addEventListener("touchstart", n, { passive: !0 }), r.addEventListener("touchend", a, { passive: !0 }), this.destroyRef.onDestroy(() => { 20143 r.removeEventListener("touchstart", n), r.removeEventListener("touchend", a), this.timerService.clearTimeout(s); 20144 }); 20145 } 20146 initDisableOnInteraction(t) { 20147 let r = this.renderer.listen(t, "pointerdown", () => { 20148 r(), this.stop(); 20149 }); 20150 this.destroyRef.onDestroy(r); 20151 } 20152 }; 20153 return e.ɵfac = function(i) { 20154 return new (i || e)(); 20155 }, e.ɵprov = R({ 20156 token: e, 20157 factory: e.ɵfac 20158 }), e; 20159 })(), rl = .001, gO = 150, vO = 350, cS = (() => { 20160 let e = class { 20161 get active() { 20162 return this.isActive; 20163 } 20164 constructor() { 20165 this.timerService = f(Ui), this.destroyRef = f(ze), this.injector = f(ui), this.mutationObserver = f(Iy), this.isActive = !1, this.container = null, this.slideWidth = 0, this.containerWidth = 0, this.resolvedOptions = C({}, SO), this.isSnapping = !1; 20166 let t = f(Ab); 20167 this.renderer = t.createRenderer(null, null), this.destroyRef.onDestroy(() => this.destroy()); 20168 } 20169 init(t) { 20170 this.container = t.container, this.slideWidth = t.slideWidth, this.containerWidth = t.containerWidth, this.resolvedOptions = pO(t.options, t.slideWidth), this.isActive = !0, this.applyCenteringPadding(); 20171 } 20172 update(t) { 20173 if (!this.isActive || !this.container) return; 20174 let { slideWidth: r, containerWidth: s } = this; 20175 if (r <= 0 || s <= 0) return; 20176 let n = t + this.container.clientWidth / 2, a = this.resolvedOptions.modifier, o = this.resolvedOptions.slideShadows, { rotate: l, depth: c, scale: d, stretchPx: u } = this.resolvedOptions, h = this.container.children; 20177 for (let g = 0; g < h.length; g++) { 20178 let p = h[g], m = (n - (p.offsetLeft + p.offsetWidth / 2)) / r, S; 20179 if (typeof a == "function") { 20180 let T = a(m); 20181 S = Number.isFinite(T) ? T : m; 20182 } else S = m * a; 20183 let b = l * S, v = -c * Math.abs(S), y = u * S, w = 1 - (1 - d) * Math.abs(S); 20184 if (Math.abs(y) < rl && (y = 0), Math.abs(v) < rl && (v = 0), Math.abs(b) < rl && (b = 0), Math.abs(w) < rl && (w = 0), this.renderer.setStyle(p, "transform", `translate3d(${y}px, 0px, ${v}px) rotateY(${b}deg) scale(${w})`), this.renderer.setStyle(p, "z-index", `${-Math.abs(Math.round(S)) + 1}`), o) { 20185 let T = p.querySelector(".coverflow-shadow-left"), O = p.querySelector(".coverflow-shadow-right"); 20186 T && this.renderer.setStyle(T, "opacity", `${Math.max(0, S)}`), O && this.renderer.setStyle(O, "opacity", `${Math.max(0, -S)}`); 20187 } 20188 } 20189 this.scheduleSnap(); 20190 } 20191 scheduleSnap() { 20192 this.isSnapping || (this.timerService.clearTimeout(this.snapTimeout), this.snapTimeout = this.timerService.setTimeout(() => this.snapToNearest(), gO)); 20193 } 20194 snapToNearest() { 20195 if (!this.container) return; 20196 let t = this.container.clientWidth, r = this.container.scrollLeft + t / 2, s = this.container.children, n = 1 / 0, a = this.container.scrollLeft; 20197 for (let o = 0; o < s.length; o++) { 20198 let l = s[o], c = l.offsetLeft + l.offsetWidth / 2, d = Math.abs(r - c); 20199 d < n && (n = d, a = c - t / 2); 20200 } 20201 Math.abs(this.container.scrollLeft - a) < 1 || (this.isSnapping = !0, this.container.scrollTo({ 20202 left: a, 20203 behavior: "smooth" 20204 }), this.snapAnimationTimeout = this.timerService.setTimeout(() => { 20205 this.isSnapping = !1; 20206 }, vO)); 20207 } 20208 setOptions(t) { 20209 this.resolvedOptions = pO(t, this.slideWidth); 20210 } 20211 setDimensions(t, r) { 20212 this.slideWidth = t, this.containerWidth = r, this.resolvedOptions.rawStretch != null && (this.resolvedOptions.stretchPx = uO(this.resolvedOptions.rawStretch, t)), this.applyCenteringPadding(); 20213 } 20214 destroy() { 20215 if (this.timerService.clearTimeout(this.snapTimeout), this.timerService.clearTimeout(this.snapAnimationTimeout), this.container) { 20216 let t = this.container.children; 20217 for (let r = 0; r < t.length; r++) { 20218 let s = t[r]; 20219 this.renderer.removeStyle(s, "transform"), this.renderer.removeStyle(s, "z-index"); 20220 } 20221 t.length > 0 && (this.renderer.removeStyle(t[0], "margin-left"), this.renderer.removeStyle(t[t.length - 1], "margin-right")); 20222 } 20223 this.container = null, this.isActive = !1; 20224 } 20225 initLifecycle(t) { 20226 let { container: r, hostRef: s, effectiveOptions: n, getSlideWidth: a, onChildrenChanged: o } = t; 20227 this.tryInit(r, n(), a), this.mutationObserver.observe(r, { 20228 childList: !0, 20229 subtree: !1 20230 }).pipe(he(this.destroyRef)).subscribe(() => { 20231 n().effect === "coverflow" && (o(), this.destroy(), this.tryInit(r, n(), a), this.isActive && this.update(r.scrollLeft)); 20232 }), Sl(this.injector, () => { 20233 zi(() => { 20234 let l = n(); 20235 l.effect === "coverflow" && this.setOptions(l.coverflowEffect ?? {}); 20236 }); 20237 }), this.isActive && (this.renderer.addClass(s.nativeElement, "coverflow-hydrating"), this.update(r.scrollLeft), this.timerService.setTimeout(() => { 20238 this.renderer.removeClass(s.nativeElement, "coverflow-hydrating"), this.renderer.addClass(s.nativeElement, "coverflow-hydrated"); 20239 }, 300)); 20240 } 20241 tryInit(t, r, s) { 20242 if (t.children.length === 0) return; 20243 let n = t.clientWidth; 20244 if (n <= 0) return; 20245 let a = r.slidesPerView === "auto" && t.children.length > 0 ? t.children[0].offsetWidth : s(r, n); 20246 a <= 0 || this.init({ 20247 container: t, 20248 options: r.coverflowEffect ?? {}, 20249 slideWidth: a, 20250 gap: r.spaceBetween ?? 0, 20251 containerWidth: n 20252 }); 20253 } 20254 applyCenteringPadding() { 20255 if (!this.container || this.slideWidth <= 0 || this.containerWidth <= 0) return; 20256 let t = (this.containerWidth - this.slideWidth) / 2, r = this.container.children; 20257 r.length > 0 && (this.renderer.setStyle(r[0], "margin-left", `${t}px`), this.renderer.setStyle(r[r.length - 1], "margin-right", `${t}px`)); 20258 } 20259 }; 20260 return e.ɵfac = function(i) { 20261 return new (i || e)(); 20262 }, e.ɵprov = R({ 20263 token: e, 20264 factory: e.ɵfac 20265 }), e; 20266 })(), SO = { 20267 rotate: -50, 20268 depth: 300, 20269 scale: 1, 20270 stretchPx: 0, 20271 modifier: 1, 20272 slideShadows: !1 20273 }, cu = (() => { 20274 let e = class { 20275 init(t, r, s) { 20276 this.ctx = t, this.autoplayService = r, this.eventBus = s; 20277 } 20278 slideTo(t) { 20279 let r = this.ctx.getContainer(); 20280 if (!r) return; 20281 let s = this.ctx.effectiveOptions(), n = t + this.ctx.prependedCloneCount(); 20282 if (this.usesChildBasedScroll(s)) {
20283 let c = r.children[n]; 20284 c && this.scrollChildIntoContainer(r, c, s, "smooth"), this.autoplayService.resetTimer(); 20285 return; 20286 } 20287 let a = this.getSlideWidth(s, this.ctx.containerWidth()), o = s.spaceBetween ?? 0, l = s.centeredSlides && !this.usesEdgePadding(s) ? (r.clientWidth - a) / 2 : 0; 20288 r.scrollTo({ 20289 left: n * (a + o) - l, 20290 behavior: "smooth" 20291 }), this.autoplayService.resetTimer(); 20292 } 20293 slideNext() { 20294 this.slideInDirection("next"); 20295 } 20296 slidePrev() { 20297 this.slideInDirection("prev"); 20298 } 20299 goToPage(t) { 20300 let r = this.ctx.effectiveOptions(); 20301 if (this.ctx.groupSnapActive()) { 20302 let n = Math.max(1, Math.floor(r.slidesPerGroup ?? 1)), a = typeof r.slidesPerView == "number" ? r.slidesPerView : 1, o = ou(this.ctx.slideElements().length, a, n).length, l = Math.min(Math.max(t, 0), o - 1); 20303 this.slideTo(l * n); 20304 return; 20305 } 20306 let s = typeof r.slidesPerView == "number" ? r.slidesPerView : 1; 20307 this.slideTo(t * s); 20308 } 20309 applyInitialSlide() { 20310 let t = this.ctx.getContainer(); 20311 if (!t) return; 20312 let r = this.ctx.effectiveOptions(), s = r.initialSlide ?? 0, n = this.ctx.prependedCloneCount() + s; 20313 if (this.usesChildBasedScroll(r)) { 20314 let d = t.children[n]; 20315 d && this.scrollChildIntoContainer(t, d, r, "instant"); 20316 return; 20317 } 20318 let a = this.getSlideWidth(r, t.clientWidth), o = r.spaceBetween ?? 0, l = r.centeredSlides && !this.usesEdgePadding(r) ? (t.clientWidth - a) / 2 : 0, c = n * (a + o) - l; 20319 t.scrollTo({ 20320 left: c, 20321 behavior: "instant" 20322 }); 20323 } 20324 getSlideWidth(t, r) { 20325 let s = typeof t.slidesPerView == "number" ? t.slidesPerView : 1; 20326 return (r - (t.spaceBetween ?? 0) * (s - 1)) / s; 20327 } 20328 usesChildBasedScroll(t) { 20329 return t.slidesPerView === "auto"; 20330 } 20331 usesEdgePadding(t) { 20332 return t.slidesPerView !== "auto" && !!t.centeredSlides && !t.loop && t.effect !== "coverflow"; 20333 } 20334 slideInDirection(t) { 20335 let r = this.ctx.getContainer(); 20336 if (!r) return; 20337 let s = this.ctx.effectiveOptions(); 20338 if (s.freeMode) { 20339 let h = t === "next" ? 1 : -1; 20340 r.scrollBy({ 20341 left: h * this.getFreeScrollAmount(s), 20342 behavior: "smooth" 20343 }), this.autoplayService.resetTimer(); 20344 return; 20345 } 20346 let n = t === "next" ? 1 : -1, a = this.ctx.slideElements().length, o = a > 0 ? ((this.ctx.activeIndex() + n) % a + a) % a : 0, l = { 20347 activeIndex: o, 20348 realIndex: o, 20349 slides: this.ctx.slideElements() 20350 }, c = t === "next" ? "slideNextTransitionStart" : "slidePrevTransitionStart", d = t === "next" ? this.ctx.swiperOptions().on?.slideNextTransitionStart : this.ctx.swiperOptions().on?.slidePrevTransitionStart; 20351 if (this.eventBus.fireEvent(c, l, d), this.usesChildBasedScroll(s)) { 20352 this.scrollToSiblingChild(r, n), this.autoplayService.resetTimer(); 20353 return; 20354 } 20355 if (this.ctx.groupSnapActive() && !s.loop && this.slideToAdjacentGroupSnap(r, s, n)) return; 20356 let u = this.getScrollAmount(s); 20357 r.scrollBy({ 20358 left: n * u, 20359 behavior: "smooth" 20360 }), this.autoplayService.resetTimer(); 20361 } 20362 slideToAdjacentGroupSnap(t, r, s) { 20363 let n = this.getSlideWidth(r, this.ctx.containerWidth()) + (r.spaceBetween ?? 0); 20364 if (n <= 0) return !1; 20365 let a = Math.max(1, Math.floor(r.slidesPerGroup ?? 1)), o = typeof r.slidesPerView == "number" ? r.slidesPerView : 1, l = ou(this.ctx.slideElements().length, o, a), c = this.nearestSnapPage(l, n, t.scrollLeft), d = l[Math.min(Math.max(c + s, 0), l.length - 1)]; 20366 return d === void 0 ? !1 : (this.slideTo(d), !0); 20367 } 20368 resolveGroupSnapDragTarget(t, r, s) { 20369 if (!this.ctx.groupSnapActive()) return; 20370 let n = this.ctx.effectiveOptions(); 20371 if (n.loop || n.freeMode) return; 20372 let a = this.getSlideWidth(n, this.ctx.containerWidth()) + (n.spaceBetween ?? 0); 20373 if (a <= 0) return; 20374 let o = Math.max(1, Math.floor(n.slidesPerGroup ?? 1)), l = typeof n.slidesPerView == "number" ? n.slidesPerView : 1, c = ou(this.ctx.slideElements().length, l, o), d = c.length - 1, u = this.nearestSnapPage(c, a, t), h = c[u]; 20375 if (h === void 0) return; 20376 let g = r - t; 20377 if (g === 0) return h; 20378 let p = g > 0 ? 1 : -1, m = Math.min(Math.max(u + p, 0), d), S = c[m]; 20379 if (m === u || S === void 0) return h; 20380 let b = Math.abs((S - h) * a) * s; 20381 if (Math.abs(g) < b) return h; 20382 let v = this.nearestSnapPage(c, a, r); 20383 return c[Math.min(Math.max(p > 0 ? Math.max(v, m) : Math.min(v, m), 0), d)] ?? h; 20384 } 20385 nearestSnapPage(t, r, s) { 20386 let n = 0, a = Number.POSITIVE_INFINITY; 20387 return t.forEach((o, l) => {
20388 let c = Math.abs(o * r - s); 20389 c < a && (a = c, n = l); 20390 }), n; 20391 } 20392 scrollToSiblingChild(t, r) { 20393 let s = t.children.length; 20394 if (s === 0) return; 20395 let n = this.ctx.activeChildIndex(), a = Math.min(Math.max((n < 0 ? 0 : n) + r, 0), s - 1), o = t.children[a]; 20396 if (!o) return; 20397 let l = this.ctx.effectiveOptions(); 20398 this.scrollChildIntoContainer(t, o, l, "smooth"); 20399 } 20400 scrollChildIntoContainer(t, r, s, n) { 20401 let a = s.centeredSlides ? r.offsetLeft - (t.clientWidth - r.offsetWidth) / 2 : r.offsetLeft; 20402 t.scrollTo({ 20403 left: a, 20404 behavior: n 20405 }); 20406 } 20407 getScrollAmount(t) { 20408 let r = t.slidesPerGroup ?? 1, s = t.spaceBetween ?? 0; 20409 return (this.getSlideWidth(t, this.ctx.containerWidth()) + s) * r; 20410 } 20411 getFreeScrollAmount(t) { 20412 let r = typeof t.freeMode == "object" ? t.freeMode : {}; 20413 return r.scrollAmount != null ? r.scrollAmount : r.scrollPercentage != null ? this.ctx.containerWidth() * r.scrollPercentage : this.getSlideWidth(t, this.ctx.containerWidth()); 20414 } 20415 }; 20416 return e.ɵfac = function(i) { 20417 return new (i || e)(); 20418 }, e.ɵprov = R({ 20419 token: e, 20420 factory: e.ɵfac 20421 }), e; 20422 })(), dS = (() => { 20423 let e = class gl { 20424 get isDragging() { 20425 return this._isDragging; 20426 } 20427 constructor() { 20428 this.renderer = f(Ur), this.timerService = f(Ui), this.destroyRef = f(ze), this.deviceService = f(nr), this.autoplay = f(lu), this.navigation = f(cu), this.unlistenFns = [], this.startX = 0, this.startScrollLeft = 0, this.pendingScrollLeft = 0, this.pressed = !1, this.dragging = !1, this.pointerId = 0, this.previousSnapType = "", this.previousScrollBehavior = "", this._isDragging = !1, this.touchRatio = 1, this.suppressNextClick = !1, this.destroyRef.onDestroy(() => this.destroy()); 20429 } 20430 shouldEnablePointerDrag(t) { 20431 return !(t.allowTouchMove === !1 || t.simulateTouch !== !0 || this.deviceService.isTouch); 20432 } 20433 init(t) { 20434 this.ctx = t; 20435 let r = t.getContainer(); 20436 if (!r) return; 20437 let s = t.effectiveOptions(); 20438 s.effect !== "coverflow" && (this.container = r, this.touchRatio = this.resolveTouchRatio(s.touchRatio), this.unlistenFns = [ 20439 this.renderer.listen(r, "pointerdown", (n) => this.onPointerDown(n)), 20440 this.renderer.listen(r, "pointermove", (n) => this.onPointerMove(n)), 20441 this.renderer.listen(r, "pointerup", (n) => this.onPointerUp(n)), 20442 this.renderer.listen(r, "pointercancel", (n) => this.onPointerUp(n)), 20443 this.renderer.listen(r, "lostpointercapture", (n) => this.onPointerUp(n)), 20444 this.renderer.listen(r, "dragstart", (n) => this.onDragStart(n)), 20445 this.renderer.listen(r, "click", (n) => this.onClickCapture(n), { capture: !0 }) 20446 ]); 20447 } 20448 resolveCommitRatio(t) { 20449 return typeof t != "number" || !isFinite(t) || t < 0 || t > 1 ? gl.DEFAULT_DRAG_COMMIT_RATIO : t; 20450 } 20451 resolveTouchRatio(t) { 20452 return typeof t != "number" || isNaN(t) || t < 0 || t > 10 ? 1 : t; 20453 } 20454 onPointerDown(t) { 20455 if (!this.container || t.pointerType !== "mouse" || t.button !== 0 || !t.isPrimary) return; 20456 let r = t.target; 20457 for (; r && r !== this.container;) { 20458 if (r.classList?.contains("swiper-no-swiping")) return; 20459 r = r.parentElement; 20460 } 20461 this.startX = t.clientX, this.startScrollLeft = this.container.scrollLeft, this.pointerId = t.pointerId, this.pressed = !0, this.dragging = !1, this.suppressNextClick = !1; 20462 } 20463 onPointerMove(t) { 20464 if (!this.pressed) return; 20465 let r = this.container; 20466 if (!r) return; 20467 let s = t.clientX - this.startX; 20468 !this.dragging && Math.abs(s) <= gl.DRAG_THRESHOLD_PX || (this.dragging || this.promoteToDrag(), t.preventDefault(), this.pendingScrollLeft = this.startScrollLeft - s * this.touchRatio, this.rafId === void 0 && (this.rafId = this.timerService.requestAnimationFrame(() => { 20469 r.scrollLeft = this.pendingScrollLeft, this.rafId = void 0; 20470 }))); 20471 } 20472 promoteToDrag() { 20473 let t = this.container, r = this.ctx; 20474 if (!(!t || !r)) { 20475 this.dragging = !0, this._isDragging = !0; 20476 try { 20477 t.setPointerCapture(this.pointerId); 20478 } catch {} 20479 this.snapRestoreTimerId !== void 0 ? this.cancelPendingSnapRestore() : this.previousSnapType = t.style.scrollSnapType || "", this.renderer.setStyle(t, "scroll-snap-type", "none"), this.previousScrollBehavior = t.style.scrollBehavior || "", this.renderer.setStyle(t, "scroll-behavior", "auto"), this.autoplay.stop(), r.effectiveOptions().grabCursor && this.renderer.setStyle(t, "cursor", "grabbing"), this.renderer.setStyle(t, "user-select", "none"), this.armClickSuppression(); 20480 } 20481 } 20482 armClickSuppression() { 20483 this.suppressNextClick = !0, this.clickSuppressTimerId !== void 0 && this.timerService.clearTimeout(this.clickSuppressTimerId), this.clickSuppressTimerId = this.timerService.setTimeoutOutsideAngularZone(() => { 20484 this.suppressNextClick = !1, this.clickSuppressTimerId = void 0; 20485 }, gl.CLICK_SUPPRESS_WINDOW_MS); 20486 } 20487 onPointerUp(t) { 20488 if (!this.pressed) return; 20489 let r = this.dragging, s = this.startScrollLeft, n = this.pendingScrollLeft; 20490 this.pressed = !1, this._isDragging = !1, this.dragging = !1, this.rafId !== void 0 && (this.timerService.cancelAnimationFrame(this.rafId), this.rafId = void 0); 20491 let a = this.container, o = this.ctx; 20492 if (r && a && o) { 20493 try { 20494 a.releasePointerCapture(this.pointerId); 20495 } catch {} 20496 this.renderer.removeStyle(a, "user-select"); 20497 let l = o.effectiveOptions();
20498 l.grabCursor && this.renderer.removeStyle(a, "cursor"), l.freeMode ? this.restoreScrollBehavior(a) : l.loop ? this.timerService.requestAnimationFrame(() => { 20499 this.restoreScrollBehavior(a), this.restoreSnapType(a); 20500 }) : this.commitGroupSnapPage(o, s, n) ? (this.restoreScrollBehavior(a), this.restoreSnapAfterSettle(a)) : (this.restoreScrollBehavior(a), this.restoreSnapType(a)), (typeof l.autoplay == "object" ? l.autoplay : void 0)?.disableOnInteraction === !1 && this.autoplay.start(); 20501 } 20502 this.startX = 0, this.startScrollLeft = 0, this.pendingScrollLeft = 0, this.pointerId = 0; 20503 } 20504 commitGroupSnapPage(t, r, s) { 20505 if (!t.groupSnapActive()) return !1; 20506 let n = this.resolveCommitRatio(t.effectiveOptions().longSwipesRatio), a = this.navigation.resolveGroupSnapDragTarget(r, s, n); 20507 return a === void 0 ? !1 : (this.navigation.slideTo(a), !0); 20508 } 20509 restoreSnapAfterSettle(t) { 20510 this.cancelPendingSnapRestore(); 20511 let r = () => { 20512 this.cancelPendingSnapRestore(), this.restoreSnapType(t); 20513 }; 20514 this.snapRestoreUnlisten = this.renderer.listen(t, "scrollend", r), this.snapRestoreTimerId = this.timerService.setTimeoutOutsideAngularZone(r, gl.SNAP_RESTORE_FALLBACK_MS); 20515 } 20516 cancelPendingSnapRestore() { 20517 this.snapRestoreUnlisten && (this.snapRestoreUnlisten(), this.snapRestoreUnlisten = void 0), this.snapRestoreTimerId !== void 0 && (this.timerService.clearTimeout(this.snapRestoreTimerId), this.snapRestoreTimerId = void 0); 20518 } 20519 restoreSnapType(t) { 20520 this.previousSnapType ? this.renderer.setStyle(t, "scroll-snap-type", this.previousSnapType) : this.renderer.removeStyle(t, "scroll-snap-type"); 20521 } 20522 restoreScrollBehavior(t) { 20523 this.previousScrollBehavior ? this.renderer.setStyle(t, "scroll-behavior", this.previousScrollBehavior) : this.renderer.removeStyle(t, "scroll-behavior"); 20524 } 20525 onClickCapture(t) { 20526 this.suppressNextClick && (t.preventDefault(), t.stopPropagation(), this.suppressNextClick = !1, this.clickSuppressTimerId !== void 0 && (this.timerService.clearTimeout(this.clickSuppressTimerId), this.clickSuppressTimerId = void 0)); 20527 } 20528 onDragStart(t) { 20529 this.pressed && t.preventDefault(); 20530 } 20531 destroy() { 20532 for (let t of this.unlistenFns) t(); 20533 if (this.unlistenFns = [], this.cancelPendingSnapRestore(), this.rafId !== void 0 && (this.timerService.cancelAnimationFrame(this.rafId), this.rafId = void 0), this.container && this._isDragging) try { 20534 this.container.releasePointerCapture(this.pointerId); 20535 } catch {} 20536 this.clickSuppressTimerId !== void 0 && (this.timerService.clearTimeout(this.clickSuppressTimerId), this.clickSuppressTimerId = void 0), this._isDragging = !1; 20537 } 20538 }; 20539 return e.DRAG_THRESHOLD_PX = 5, e.CLICK_SUPPRESS_WINDOW_MS = 300, e.DEFAULT_DRAG_COMMIT_RATIO = .2, e.SNAP_RESTORE_FALLBACK_MS = 700, e.ɵfac = function(i) { 20540 return new (i || e)(); 20541 }, e.ɵprov = R({ 20542 token: e, 20543 factory: e.ɵfac 20544 }), e; 20545 })(), uS = (() => { 20546 let e = class { 20547 constructor() { 20548 this.eventHandlers = /* @__PURE__ */ new Map(), this.lastFiredIndex = -1, this.enabled = !1, f(ze).onDestroy(() => this.eventHandlers.clear()); 20549 } 20550 enable() { 20551 this.enabled = !0; 20552 } 20553 on(t, r) { 20554 let s = this.eventHandlers.get(t) || []; 20555 s.push(r), this.eventHandlers.set(t, s); 20556 } 20557 fire(t, r) { 20558 if (!this.enabled) return; 20559 let s = this.eventHandlers.get(t) || []; 20560 for (let n of s) this.invokeConsumerCallback(t, n, r); 20561 } 20562 invokeConsumerCallback(t, r, s) { 20563 if (r) try { 20564 r(s); 20565 } catch (n) { 20566 Uu() && console.error(`[NativeSwiper] consumer callback for "${t}" threw`, n); 20567 } 20568 } 20569 fireInit(t, r) { 20570 this.enabled && (this.lastFiredIndex = t.activeIndex, this.invokeConsumerCallback("init", r?.init, t), this.fire("init", t), this.invokeConsumerCallback("afterInit", r?.afterInit, t), this.fire("afterInit", t)); 20571 } 20572 fireSlideChangeIfNeeded(t, r, s) { 20573 if (!this.enabled || t === this.lastFiredIndex) return; 20574 this.lastFiredIndex = t; 20575 let n = r(); 20576 this.invokeConsumerCallback("slideChange", s, n), this.fire("slideChange", n); 20577 } 20578 fireEvent(t, r, s) { 20579 this.enabled && (this.invokeConsumerCallback(t, s, r), this.fire(t, r)); 20580 } 20581 setLastFiredIndex(t) { 20582 this.lastFiredIndex = t; 20583 } 20584 }; 20585 return e.ɵfac = function(i) { 20586 return new (i || e)(); 20587 }, e.ɵprov = R({ 20588 token: e, 20589 factory: e.ɵfac 20590 }), e; 20591 })(), pS = (() => { 20592 let e = class _A { 20593 constructor() { 20594 this.injector = f(ui), this.destroyRef = f(ze), this.mutationObserver = f(Iy), this._activeChildIndex = le(-1), this._visibleChildIndices = le(/* @__PURE__ */ new Set()), this.activeChildIndex = this._activeChildIndex.asReadonly(), this.visibleChildIndices = this._visibleChildIndices.asReadonly(); 20595 } 20596 init(t, r) { 20597 let s = /* @__PURE__ */ new Map(), n = /* @__PURE__ */ new Map(), a; 20598 this.observer = y$((o) => { 20599 for (let u of o) { 20600 s.set(u.target, u.intersectionRatio); 20601 let h = u.boundingClientRect; 20602 n.set(u.target, h.left + h.width / 2), u.rootBounds && (a = u.rootBounds.left + u.rootBounds.width / 2); 20603 } 20604 let l = t.children, c = []; 20605 for (let u = 0; u < l.length; u++) { 20606 let h = l[u];
20607 h && (s.get(h) ?? 0) >= _A.VISIBILITY_THRESHOLD && c.push(u); 20608 } 20609 let d = new Set(c); 20610 if (t3(this._visibleChildIndices(), d) || this._visibleChildIndices.set(d), c.length > 0) { 20611 let u = r() ? this.pickCenteredActive(c, l, n, a) : c[0]; 20612 u !== void 0 && u !== this._activeChildIndex() && this._activeChildIndex.set(u); 20613 } 20614 }, { 20615 root: t, 20616 threshold: [ 20617 0, 20618 .25, 20619 .5, 20620 .75, 20621 1 20622 ] 20623 }, this.injector); 20624 for (let o of t.children) this.observer.observe(o); 20625 } 20626 pickCenteredActive(t, r, s, n) { 20627 let a = t[Math.floor((t.length - 1) / 2)]; 20628 if (n === void 0) return a; 20629 let o = -1, l = 1 / 0; 20630 for (let c of t) { 20631 let d = r[c], u = d ? s.get(d) : void 0; 20632 if (u === void 0) continue; 20633 let h = Math.abs(u - n); 20634 h < l && (l = h, o = c); 20635 } 20636 return o >= 0 ? o : a; 20637 } 20638 observeNewChildren(t) { 20639 if (this.observer) for (let r of t.children) this.observer.observe(r); 20640 } 20641 refresh(t) { 20642 if (this.observer) for (let r of t.children) this.observer.unobserve(r), this.observer.observe(r); 20643 } 20644 seedState(t, r) { 20645 this._activeChildIndex.set(t), this._visibleChildIndices.set(r); 20646 } 20647 resetActiveIndex() { 20648 this._activeChildIndex.set(-1); 20649 } 20650 watchChildren(t, r) { 20651 this.mutationObserver.observe(t, { 20652 childList: !0, 20653 subtree: !1 20654 }).pipe(he(this.destroyRef)).subscribe((s) => { 20655 s.every((n) => [...n.addedNodes, ...n.removedNodes].length > 0 && [...n.addedNodes, ...n.removedNodes].every((a) => a instanceof HTMLElement && a.hasAttribute("data-swiper-clone"))) || (this.resetActiveIndex(), this.observeNewChildren(t), r()); 20656 }); 20657 } 20658 }; 20659 return e.VISIBILITY_THRESHOLD = .5, e.ɵfac = function(i) { 20660 return new (i || e)(); 20661 }, e.ɵprov = R({ 20662 token: e, 20663 factory: e.ɵfac 20664 }), e; 20665 })(), hS = (() => { 20666 let e = class { 20667 get prependedCloneCount() { 20668 return this._prependedCloneCount; 20669 } 20670 get appendedCloneCount() { 20671 return this._appendedCloneCount; 20672 } 20673 constructor() { 20674 this.renderer = f(Ur), this.timerService = f(Ui), this.destroyRef = f(ze), this._prependedCloneCount = 0, this._appendedCloneCount = 0, this.destroyRef.onDestroy(() => { 20675 this.scrollEndTimerId !== void 0 && (this.timerService.clearTimeout(this.scrollEndTimerId), this.scrollEndTimerId = void 0), this.pendingSnapRestoreRafId !== void 0 && (this.timerService.cancelAnimationFrame(this.pendingSnapRestoreRafId), this.pendingSnapRestoreRafId = void 0); 20676 }); 20677 } 20678 setupClones(t, r) { 20679 if (!r.loop) return; 20680 let s = [...t.children]; 20681 if (s.length < 2) return; 20682 let n = typeof r.slidesPerView == "number" ? r.slidesPerView : 2, a = Math.min(Math.ceil(n) + 1, s.length, 3); 20683 for (let o = a - 1; o >= 0; o--) { 20684 let l = s[s.length - a + o]; 20685 if (l) { 20686 let c = this.createClone(l); 20687 this.renderer.insertBefore(t, c, t.firstChild); 20688 } 20689 } 20690 this._prependedCloneCount = a; 20691 for (let o = 0; o < a; o++) { 20692 let l = s[o]; 20693 if (l) { 20694 let c = this.createClone(l); 20695 this.renderer.appendChild(t, c); 20696 } 20697 } 20698 this._appendedCloneCount = a; 20699 } 20700 collectNonCloneSlides(t) { 20701 return [...t.children].filter((r) => !r.dataset.swiperClone); 20702 } 20703 scheduleBoundaryCheck(t) { 20704 !t.opts.loop || this._appendedCloneCount === 0 || (this.scrollEndTimerId !== void 0 && this.timerService.clearTimeout(this.scrollEndTimerId), this.scrollEndTimerId = this.timerService.setTimeoutOutsideAngularZone(() => { 20705 this.scrollEndTimerId = void 0, this.performLoopJump(t); 20706 }, 80)); 20707 } 20708 withSnapDisabled(t, r) { 20709 this.renderer.setStyle(t, "scroll-snap-type", "none"), r(), this.pendingSnapRestoreRafId !== void 0 && this.timerService.cancelAnimationFrame(this.pendingSnapRestoreRafId), this.pendingSnapRestoreRafId = this.timerService.requestAnimationFrame(() => { 20710 this.pendingSnapRestoreRafId = void 0, this.renderer.removeStyle(t, "scroll-snap-type"); 20711 }); 20712 } 20713 createClone(t) { 20714 let r = t.cloneNode(!0); 20715 this.renderer.setAttribute(r, "data-swiper-clone", "true"), this.renderer.setAttribute(r, "aria-hidden", "true"); 20716 let s = t.querySelectorAll("img"); 20717 return r.querySelectorAll("img").forEach((n, a) => { 20718 let o = s[a]; 20719 o && (o.currentSrc && this.renderer.setAttribute(n, "src", o.currentSrc), o.srcset && this.renderer.setAttribute(n, "srcset", o.srcset), o.sizes && this.renderer.setAttribute(n, "sizes", o.sizes)), this.renderer.removeAttribute(n, "loading"), this.renderer.removeAttribute(n, "fetchpriority"), this.renderer.removeStyle(n, "filter"), this.renderer.removeStyle(n, "background-size"), this.renderer.removeStyle(n, "background-image"); 20720 }), r; 20721 } 20722 performLoopJump(t) { 20723 let { container: r, opts: s, realSlideCount: n, activeChildIndex: a, onJump: o } = t; 20724 if (s.slidesPerView === "auto") { 20725 this.performAutoModeJump(r, s, n, a, o); 20726 return; 20727 } 20728 this.performNumericModeJump(t); 20729 } 20730 performAutoModeJump(t, r, s, n, a) { 20731 if (s === 0 || this._appendedCloneCount === 0 || n < 0) return; 20732 let o = this._prependedCloneCount, l = o + s - 1, c; 20733 if (n > l ? c = o + (n - l - 1) : n < o && (c = l - (o - n - 1)), c === void 0) return; 20734 let d = t.children[c]; 20735 if (!d) return; 20736 let u = c;
20737 this.withSnapDisabled(t, () => { 20738 let h = r.centeredSlides ? d.offsetLeft - (t.clientWidth - d.offsetWidth) / 2 : d.offsetLeft; 20739 t.scrollTo({ 20740 left: h, 20741 behavior: "instant" 20742 }), a?.(u); 20743 }); 20744 } 20745 performNumericModeJump(t) { 20746 let { container: r, opts: s, realSlideCount: n, containerWidth: a, onJump: o } = t; 20747 if (a <= 0 || n === 0) return; 20748 let l = typeof s.slidesPerView == "number" ? s.slidesPerView : 1, c = s.spaceBetween ?? 0, d = (a - c * (l - 1)) / l, u = d + c, h = s.centeredSlides ? (a - d) / 2 : 0, g = this._prependedCloneCount * u - h, p = g + n * u, m = r.scrollLeft, S, b; 20749 if (m >= p - u * .5 ? (S = g + (m - p), b = Math.round((S - g) / u)) : m < g - u * .5 && (S = p + (m - g), b = Math.round((S - g) / u)), S === void 0 || b === void 0) return; 20750 b = Math.max(0, Math.min(b, n - 1)); 20751 let v = this._prependedCloneCount + b, y = S; 20752 this.withSnapDisabled(r, () => { 20753 r.scrollTo({ 20754 left: y, 20755 behavior: "instant" 20756 }), o?.(v); 20757 }); 20758 } 20759 }; 20760 return e.ɵfac = function(i) { 20761 return new (i || e)(); 20762 }, e.ɵprov = R({ 20763 token: e, 20764 factory: e.ɵfac 20765 }), e; 20766 })(), mS = 4, fS = (() => { 20767 let e = class { 20768 constructor() { 20769 this.ctx = le(void 0), this.totalPages = ne(() => { 20770 let t = this.ctx(); 20771 if (!t) return 1; 20772 let r = t.effectiveOptions(), s = typeof r.slidesPerView == "number" ? r.slidesPerView : 1, n = t.slideElements().length; 20773 return n === 0 && (n = t.scrollContainer()?.nativeElement?.children?.length ?? 0), t.groupSnapActive() ? ou(n, s, r.slidesPerGroup ?? 1).length : Math.max(1, Math.ceil(n / s)); 20774 }), this.activePage = ne(() => { 20775 let t = this.ctx(); 20776 if (!t) return 0; 20777 let r = t.effectiveOptions(), s = typeof r.slidesPerView == "number" ? r.slidesPerView : 1, n = this.totalPages() - 1; 20778 if (n > 0 && t.isAtEnd()) return n; 20779 let a = t.groupSnapActive() ? Math.max(1, Math.floor(r.slidesPerGroup ?? 1)) : s; 20780 return Math.min(Math.floor(t.activeIndex() / a), Math.max(n, 0)); 20781 }), this.pagesArray = ne(() => Array.from({ length: this.totalPages() }, (t, r) => r)), this.showBullets = ne(() => { 20782 let t = this.ctx(); 20783 if (!t) return !1; 20784 let r = t.effectiveOptions(); 20785 return !r.pagination || !t.showPagination() ? !1 : r.effect === "coverflow" ? this.totalPages() > 1 : t.isScrollable(); 20786 }), this.isDynamicBullets = ne(() => { 20787 let t = this.ctx(); 20788 if (!t) return !1; 20789 let r = t.effectiveOptions(); 20790 return typeof r.pagination == "boolean" ? !1 : r.pagination?.dynamicBullets === !0; 20791 }), this.resolvedDynamicMainBullets = ne(() => { 20792 let t = this.ctx(); 20793 if (!t) return 1; 20794 let r = t.effectiveOptions(), s = typeof r.pagination != "boolean" && r.pagination?.dynamicMainBullets || 1; 20795 return Math.max(1, Math.min(s, this.totalPages())); 20796 }), this.maxVisibleBullets = ne(() => Math.min(this.resolvedDynamicMainBullets() + mS, this.totalPages())), this.bulletScales = ne(() => { 20797 let t = this.totalPages(), r = this.activePage(), s = this.maxVisibleBullets(), n = this.resolvedDynamicMainBullets(), a = /* @__PURE__ */ new Map(); 20798 if (t <= s) { 20799 for (let c = 0; c < t; c++) a.set(c, { 20800 scale: 1, 20801 visible: !0 20802 }); 20803 return a; 20804 } 20805 let o = Math.max(0, Math.min(r - (n - 1), t - n)), l = o + n - 1; 20806 for (let c = 0; c < t; c++) if (c >= o && c <= l) a.set(c, { 20807 scale: 1, 20808 visible: !0 20809 }); 20810 else { 20811 let d = c < o ? o - c : c - l; 20812 d === 1 ? a.set(c, { 20813 scale: .66, 20814 visible: !0 20815 }) : d === 2 ? a.set(c, { 20816 scale: .33, 20817 visible: !0 20818 }) : a.set(c, { 20819 scale: 0, 20820 visible: !1 20821 }); 20822 } 20823 return a; 20824 }), this.dynamicBulletOffsetUnits = le(0), this.dynamicBulletIndex = 0, this.bulletStripTransform = ne(() => this.isDynamicBullets() ? `translate3d(calc(${this.dynamicBulletOffsetUnits()} * (var(--vn-bullet-size) + var(--vn-bullet-gap))), 0, 0)` : null), this.bulletWindowWidth = ne(() => this.isDynamicBullets() ? `calc(${this.maxVisibleBullets()}
20824 * (var(--vn-bullet-size) + var(--vn-bullet-gap)))` : null), zi(() => { 20825 let t = this.activePage(); 20826 if (!this.isDynamicBullets()) { 20827 this.dynamicBulletIndex = 0, this.previousActivePage = void 0, this.dynamicBulletOffsetUnits.set(0); 20828 return; 20829 } 20830 let r = this.totalPages(), s = this.resolvedDynamicMainBullets(); 20831 s > 1 && this.previousActivePage !== void 0 && (this.dynamicBulletIndex += t - this.previousActivePage, this.dynamicBulletIndex = Math.max(0, Math.min(this.dynamicBulletIndex, s - 1))), this.previousActivePage = t; 20832 let n = Math.max(t - this.dynamicBulletIndex, 0), a = (n + (n + Math.min(r, s) - 1)) / 2, o = Math.min(r, s + mS); 20833 this.dynamicBulletOffsetUnits.set((o - 1) / 2 - a); 20834 }); 20835 } 20836 init(t) { 20837 this.ctx.set(t); 20838 } 20839 }; 20840 return e.ɵfac = function(i) { 20841 return new (i || e)(); 20842 }, e.ɵprov = R({ 20843 token: e, 20844 factory: e.ɵfac 20845 }), e; 20846 })(), gS = (() => { 20847 let e = class MA { 20848 constructor() { 20849 this.destroyRef = f(ze), this.resizeObserver = f(v_), this.timerService = f(Ui), this._scrollLeft = le(0), this._containerWidth = le(0), this._scrollWidth = le(0), this.scrollLeft = this._scrollLeft.asReadonly(), this.containerWidth = this._containerWidth.asReadonly(), this.scrollWidth = this._scrollWidth.asReadonly(); 20850 } 20851 init(t, r) { 20852 this.initScrollListener(t, r), this.initResizeObserver(t, r), this.initSwipeListener(t, r); 20853 } 20854 setContainerWidth(t) { 20855 this._containerWidth.set(t); 20856 } 20857 setScrollLeft(t) { 20858 this._scrollLeft.set(t); 20859 } 20860 syncMetricsFromDom(t) { 20861 this._scrollLeft.set(t.scrollLeft), this._scrollWidth.set(t.scrollWidth), this._containerWidth.set(t.clientWidth); 20862 } 20863 initScrollListener(t, r) { 20864 let s = () => { 20865 this.rafId === void 0 && (this.rafId = this.timerService.requestAnimationFrame(() => { 20866 this._scrollLeft.set(t.scrollLeft), this._scrollWidth.set(t.scrollWidth), r.onScroll(t.scrollLeft), this.rafId = void 0; 20867 })); 20868 }; 20869 t.addEventListener("scroll", s, { passive: !0 }), this.destroyRef.onDestroy(() => { 20870 t.removeEventListener("scroll", s), this.rafId !== void 0 && this.timerService.cancelAnimationFrame(this.rafId); 20871 }); 20872 } 20873 initResizeObserver(t, r) { 20874 this.resizeObserver.observe(t).pipe(he(this.destroyRef)).subscribe((s) => { 20875 let n = s.borderBoxSize?.[0] ?? s.contentBoxSize?.[0]; 20876 n && this._containerWidth.set(n.inlineSize), this._scrollWidth.set(t.scrollWidth), r.onResize(this._containerWidth(), t); 20877 }); 20878 } 20879 initSwipeListener(t, r) { 20880 let s = r.onSwipe; 20881 if (!s) return; 20882 let n = 0, a = 0, o = !1, l = (d) => { 20883 let u = d.touches[0]; 20884 u && (n = u.clientX, a = u.clientY, o = !1); 20885 }, c = (d) => { 20886 if (o) return; 20887 let u = d.touches[0]; 20888 if (!u) return; 20889 let h = u.clientX - n, g = u.clientY - a; 20890 Math.abs(h) < MA.SWIPE_THRESHOLD || Math.abs(h) <= Math.abs(g) || (o = !0, s(h < 0 ? "next" : "prev")); 20891 }; 20892 t.addEventListener("touchstart", l, { passive: !0 }), t.addEventListener("touchmove", c, { passive: !0 }), this.destroyRef.onDestroy(() => { 20893 t.removeEventListener("touchstart", l), t.removeEventListener("touchmove", c); 20894 }); 20895 } 20896 }; 20897 return e.SWIPE_THRESHOLD = 10, e.ɵfac = function(i) { 20898 return new (i || e)(); 20899 }, e.ɵprov = R({ 20900 token: e, 20901 factory: e.ɵfac 20902 }), e; 20903 })(), bO = "swiper-slide-active", yO = "swiper-slide-prev", wO = "swiper-slide-next", EO = "swiper-slide-visible", vS = (() => { 20904 let e = class { 20905 constructor() { 20906 this.renderer = f(Ur), this.destroyRef = f(ze), this.injector = f(ui), this.slideStateMap = /* @__PURE__ */ new WeakMap(), this.pendingSync = !1, this.destroyRef.onDestroy(() => { 20907 this.latestInput = void 0; 20908 }); 20909 } 20910 schedule(t) { 20911 this.latestInput = t, !this.pendingSync && (this.pendingSync = !0, Sl(this.injector, () => { 20912 Dn(() => { 20913 this.pendingSync = !1; 20914 let r = this.latestInput; 20915 r && this.syncSlideStateClasses(r); 20916 }); 20917 })); 20918 } 20919 applyNow(t) { 20920 this.latestInput = t, this.syncSlideStateClasses(t); 20921 } 20922 syncSlideStateClasses(t) { 20923 if (t.realSlideCount === 0) return; 20924 let { opts: r, children: s, activeChildIndex: n, visibleChildIndices: a } = t, o = n < 0 ? 0 : n, l = r.slideActiveClass || bO, c = r.slidePrevClass || yO, d = r.slideNextClass || wO, u = r.slideVisibleClass || EO; 20925 for (let h = 0; h < s.length; h++) { 20926 let g = s[h]; 20927 if (!g) continue; 20928 let p = h === o, m = h === o - 1, S = h === o + 1, b = a.size > 0 ? a.has(h) : p || m || S, v = (p ? 1 : 0) | (m ? 2 : 0) | (S ? 4 : 0) | (b ? 8 : 0); 20929 v !== (this.slideStateMap.get(g) ?? 0) && (this.slideStateMap.set(g, v), this.toggleClass(g, l, p), this.toggleClass(g, c, m), this.toggleClass(g, d, S), this.toggleClass(g, u, b)); 20930 } 20931 } 20932 toggleClass(t, r, s) { 20933 s ? this.renderer.addClass(t, r) : this.renderer.removeClass(t, r); 20934 } 20935 }; 20936 return e.ɵfac = function(i) { 20937 return new (i || e)(); 20938 }, e.ɵprov = R({ 20939 token: e, 20940 factory: e.ɵfac 20941 }), e; 20942 })(), SS = { 20943 slidesPerView: 1, 20944 spaceBetween: 0, 20945 speed: 300, 20946 loop: !1, 20947 centeredSlides: !1, 20948 direction: "horizontal", 20949 allowTouchMove: !0, 20950 autoHeight: !1, 20951 slidesPerGroup: 1, 20952 initialSlide: 0, 20953 watchOverflow: !0, 20954 simulateTouch: !1, 20955 touchRatio: 1, 20956 longSwipesRatio: .2, 20957 grabCursor: !1, 20958 groupSnap: !1, 20959 centerInsufficientSlides: !1 20960 }
20960, CO = ["scrollContainer"], NO = ["swiperWrapper"], TO = ["*"], sl = (() => { 20961 let e = class Gr { 20962 get isAutoplayRunning() { 20963 return this.autoplayService.isRunning; 20964 } 20965 constructor() { 20966 this.renderer = f(Ur), this.hostRef = f(di), this.destroyRef = f(ze), this.injector = f(ui), this.hydrationTracker = f(b$), this.activatedRoute = f(cy, { optional: !0 }), this.routeReuseLifecycleRegistry = f(u_, { optional: !0 }), this.deviceService = f(nr), this.eventBus = f(uS), this.autoplayService = f(lu), this.stateClassSync = f(vS), this.loopManager = f(hS), this.coverflowService = f(cS), this.scrollTracking = f(gS), this.intersectionService = f(pS), this.navigationService = f(cu), this.paginationService = f(fS), this.dragToScrollService = f(dS), this.postHydrationInitRan = !1, this.frozenLayoutSnapshot = le(void 0), this.swiperOptions = ce(SS, { transform: (t) => this.sanitizeOptions(t) }), this.showPagination = ce(!0), this.swiperClass = ce("", { transform: (t) => Array.isArray(t) ? t.filter(Boolean) : t || "" }), this.inverse = ce(!0), this.arrowSize = ce("large"), this.variant = ce("strong"), this.navPrevClass = ce(""), this.navNextClass = ce(""), this.ariaLabel = ce("Carousel"), this.prevClick = It(), this.nextClick = It(), this.consumerClasses = ne(() => { 20967 let t = this.swiperClass(); 20968 return Array.isArray(t) ? t.join(" ") : t; 20969 }), this.isInitialized = ne(() => this.hydrationTracker.isFullyHydrated()), this.scrollContainer = Ra("scrollContainer"), this.swiperWrapper = Ra("swiperWrapper"), this.scrollLeft = this.scrollTracking.scrollLeft, this.containerWidth = this.scrollTracking.containerWidth, this.scrollWidth = this.scrollTracking.scrollWidth, this.slideElements = le([]), this.activeChildIndex = this.intersectionService.activeChildIndex, this.visibleChildIndices = this.intersectionService.visibleChildIndices, this.isBrowserReady = le(!1), this.autoplay = { 20970 stop: () => this.autoplayService.stop(), 20971 start: () => { 20972 this.effectiveOptions().autoplay && this.autoplayService.start(); 20973 } 20974 }, this.matchedBreakpointKey = ne(() => { 20975 let t = this.swiperOptions().breakpoints; 20976 if (!t) return; 20977 let r = this.deviceService.windowWidth(), s = -1; 20978 for (let n in t) { 20979 if (!Object.prototype.hasOwnProperty.call(t, n)) continue; 20980 let a = +n; 20981 a <= r && a > s && (s = a); 20982 } 20983 return s === -1 ? void 0 : s; 20984 }), this.effectiveOptions = ne(() => { 20985 let t = this.swiperOptions(), r = this.matchedBreakpointKey(); 20986 return r === void 0 || !t.breakpoints ? t : C(C({}, t), t.breakpoints[r]); 20987 }), this.displayOptions = ne(() => { 20988 let t = this.effectiveOptions(); 20989 if (this.hydrationTracker.isFullyHydrated()) return t; 20990 let r = this.frozenLayoutSnapshot(); 20991 return r ? J(C({}, t), { slidesPerView: r.slidesPerView }) : t; 20992 }), this.groupSnapActive = ne(() => { 20993 let t = this.effectiveOptions(); 20994 if (!(t.groupSnap === !0 && typeof t.slidesPerView == "number" && !t.centeredSlides && !t.freeMode && t.effect !== "coverflow")) return !1; 20995 if (t.loop) { 20996 let r = this.slideElements().length, s = Math.max(1, Math.floor(t.slidesPerGroup ?? 1)); 20997 if (r < t.slidesPerView + s) return !1; 20998 } 20999 return !0; 21000 }), this.isScrollable = ne(() => this.effectiveOptions().watchOverflow === !1 ? !0 : this.scrollWidth() - this.containerWidth() > Gr.SCROLL_THRESHOLD), this.centerInsufficient = ne(() => { 21001 let t = this.effectiveOptions(); 21002 return !!t.centerInsufficientSlides && !t.centeredSlides && t.effect !== "coverflow"; 21003 }), this.canScrollPrev = ne(() => !this.hydrationTracker.isFullyHydrated() || !this.isScrollable() ? !1 : this.effectiveOptions().loop ? !0 : this.scrollLeft() > Gr.SCROLL_THRESHOLD), this.canScrollNext = ne(() => { 21004 if (!this.hydrationTracker.isFullyHydrated() || !this.isScrollable()) return !1; 21005 if (this.effectiveOptions().loop) return !0; 21006 let t = this.scrollWidth() - this.containerWidth(); 21007 return this.scrollLeft() < t - Gr.SCROLL_THRESHOLD; 21008 }), this.showPrevScrollButton = ne(() => !!this.effectiveOptions().navigation && this.canScrollPrev()), this.showNextScrollButton = ne(() => !!this.effectiveOptions().navigation && this.canScrollNext()), this.isAtEnd = ne(() => this.hydrationTracker.isFullyHydrated() && this.isScrollable() && !this.canScrollNext()), this.activeIndex = ne(() => { 21009 let t = this.slideElements().length; 21010 if (t === 0) return 0; 21011 let r = this.activeChildIndex(), s = (r < 0 ? this.loopManager.prependedCloneCount : r) - this.loopManager.prependedCloneCount; 21012 return this.effectiveOptions().loop ? (s % t + t) % t : Math.max(0, Math.min(s, t - 1)); 21013 }), this.showBullets = this.paginationService.showBullets, this.isDynamicBullets = this.paginationService.isDynamicBullets, this.totalPages = this.paginationService.totalPages, this.resolvedDynamicMainBullets = this.paginationService.resolvedDynamicMainBullets, this.bulletScales = this.paginationService.bulletScales, this.bulletStripTransform = this.paginationService.bulletStripTransform, this.bulletWindowWidth = this.paginationService.bulletWindowWidth, this.activePage = this.paginationService.activePage, this.pagesArray = this.paginationService.pagesArray, this.realIndex = ne(() => this.activeIndex()), this.leadPadding = le(0), this.trailPadding = le(0), this.leadPaddingCss = ne(() => `${this.leadPadding()}px`), this.trailPaddingCss = ne(() => `${this.trailPadding()}px`), this.isCoverflowActive = ne(() => this.effectiveOptions().effect === "coverflow"), this.slideShadows = ne(() => { 21014 let t = this.effectiveOptions(); 21015 return t.effect === "coverflow" && !!t.coverflowEffect?.slideShadows; 21016 }), this.coverflowRotate = ne(() => this.effectiveOptions().coverflowEffect?.rotate ?? -50), this.coverflowDepth = ne(() => this.effectiveOptions().coverflowEffect?.depth ?? 300), this.captureConstructorTimeSnapshot(), this.paginationService.init({ 21017 effectiveOptions: this.effectiveOptions, 21018 activeIndex: this.activeIndex, 21019 slideElements: this.slideElements, 21020 isScrollable: this.isScrollable, 21021 showPagination: this.showPagination, 21022 scrollContainer: this.scrollContainer, 21023 isAtEnd: this.isAtEnd, 21024 groupSnapActive: this.groupSnapActive 21025 }), Dn(() => { 21026 if (this.runPreHydrationInit(), this.hydrationTracker.isFullyHydrated()) { 21027 this.runPostHydrationInit(); 21028 return; 21029 } 21030 this.hydrationTracker.isFullyHydrated$.pipe(We((t) => t), Ot(1), he(this.destroyRef)).subscribe(() => this.runPostHydrationInit()); 21031 }), zi(() => { 21032 if (!this.isBrowserReady()) return; 21033 let t = this.slideElements(), r = this.effectiveOptions(), s = this.activeChildIndex(), n = this.visibleChildIndices(), a = this.scrollContainer()?.nativeElement; 21034 a && this.stateClassSync.schedule({ 21035 container: a, 21036 children: Array.from(a.children), 21037 realSlideCount: t.length, 21038 opts: r, 21039 activeChildIndex: s, 21040 visibleChildIndices: n 21041 }); 21042 }), zi(() => { 21043 this.isBrowserReady() && (this.effectiveOptions(), this.syncGroupLeaderClasses()); 21044 }), this.routeReuseLifecycleRegistry && this.activatedRoute && this.routeReuseLifecycleRegistry.register(this.activatedRoute).attached$.pipe(he(this.destroyRef)).subscribe(() => this.reinitializeAfterReattach()); 21045 } 21046 reinitializeAfterReattach() { 21047 let t = this.scrollContainer()?.nativeElement; 21048 if (!t) return; 21049 let r = this.effectiveOptions().initialSlide ?? 0, s = this.loopManager.prependedCloneCount + r, n = t.children.length, a = n > 0 ? Math.min(s, n - 1) : 0, o = /* @__PURE__ */ new Set(); 21050 n > 0 && (o.add(a), a - 1 >= 0 && o.add(a - 1), a + 1 < n && o.add(a + 1)), this.intersectionService.seedState(a, o), this.eventBus.setLastFiredIndex(a), t.scrollTo({ 21051 left: 0, 21052 behavior: "instant" 21053 }), this.scrollTracking.setScrollLeft(0), Sl(this.injector, () => { 21054 Dn(() => { 21055 let l = this.scrollContainer()?.nativeElement; 21056 l && (this.scrollTracking.setContainerWidth(l.clientWidth), this.updateCenteredEdgePadding(), this.syncGroupLeaderClasses(), this.loopManager.withSnapDisabled(l, () => { 21057 this.applyInitialSlide(); 21058 }), this.scrollTracking.syncMetricsFromDom(l), this.effectiveOptions().effect === "coverflow" && (this.coverflowService.destroy(), this.coverflowService.tryInit(l, this.effectiveOptions(), (c, d) =>
21058 this.getSlideWidth(c, d)))); 21059 }); 21060 }); 21061 } 21062 runPreHydrationInit() { 21063 let t = this.scrollContainer(); 21064 t && !this.effectiveOptions().freeMode && this.renderer.addClass(t.nativeElement, "snap-ready"), this.collectSlideElements(), this.initScrollTracking(), this.initIntersectionTracking(), this.initNavigationService(), this.dragToScrollService.shouldEnablePointerDrag(this.effectiveOptions()) && this.dragToScrollService.init({ 21065 getContainer: () => this.scrollContainer()?.nativeElement, 21066 effectiveOptions: () => this.effectiveOptions(), 21067 groupSnapActive: () => this.groupSnapActive() 21068 }), t && t.nativeElement.scrollTo({ 21069 left: 0, 21070 behavior: "instant" 21071 }); 21072 let r = this.scrollContainer()?.nativeElement; 21073 r && this.intersectionService.watchChildren(r, () => { 21074 this.collectSlideElements(), this.updateCenteredEdgePadding(), this.syncGroupLeaderClasses(), r.scrollTo({ 21075 left: 0, 21076 behavior: "instant" 21077 }); 21078 }), this.isBrowserReady.set(!0), this.initCoverflowEffect(), this.syncGroupLeaderClasses(); 21079 } 21080 captureConstructorTimeSnapshot() { 21081 let t = this.effectiveOptions(); 21082 this.frozenLayoutSnapshot.set({ slidesPerView: t.slidesPerView }); 21083 } 21084 runPostHydrationInit() { 21085 if (this.postHydrationInitRan) return; 21086 this.postHydrationInitRan = !0; 21087 let t = this.scrollContainer()?.nativeElement; 21088 t && this.loopManager.setupClones(t, this.effectiveOptions()), this.collectSlideElements(), this.observeCloneChildren(), this.intersectionService.resetActiveIndex(), this.updateCenteredEdgePadding(), this.syncGroupLeaderClasses(), this.eventBus.enable(); 21089 let r = this.swiperOptions(), s = { 21090 activeIndex: this.activeIndex(), 21091 realIndex: this.realIndex(), 21092 slides: this.slideElements() 21093 }; 21094 this.eventBus.fireInit(s, r.on), Sl(this.injector, () => { 21095 Dn(() => { 21096 this.applyInitialSlide(); 21097 let n = this.scrollContainer()?.nativeElement; 21098 n && this.scrollTracking.syncMetricsFromDom(n), this.initAutoplay(), this.refreshIntersectionObserver(); 21099 }); 21100 }); 21101 } 21102 slideTo(t, r) { 21103 this.navigationService.slideTo(t); 21104 } 21105 slideNext(t) { 21106 this.navigationService.slideNext(); 21107 } 21108 slidePrev(t) { 21109 this.navigationService.slidePrev(); 21110 } 21111 onNextArrowClick() { 21112 this.nextClick.emit(), this.slideNext(); 21113 } 21114 onPrevArrowClick() { 21115 this.prevClick.emit(), this.slidePrev(); 21116 } 21117 goToPage(t) { 21118 this.navigationService.goToPage(t); 21119 } 21120 slidePrevOnKey(t) { 21121 this.isScrollable() && (t.preventDefault(), this.slidePrev()); 21122 } 21123 slideNextOnKey(t) { 21124 this.isScrollable() && (t.preventDefault(), this.slideNext()); 21125 } 21126 slideToFirst(t) { 21127 this.isScrollable() && (t.preventDefault(), this.slideTo(0)); 21128 } 21129 slideToLast(t) { 21130 if (!this.isScrollable()) return; 21131 t.preventDefault(); 21132 let r = this.slideElements().length; 21133 r !== 0 && this.slideTo(r - 1); 21134 } 21135 update() {} 21136 forceUpdate() {} 21137 destroy(t, r) {} 21138 get slides() { 21139 return this.slideElements(); 21140 } 21141 get swiper() { 21142 return { 21143 slides: this.slideElements(), 21144 realIndex: this.realIndex(), 21145 params: { loop: !!this.effectiveOptions().loop }, 21146 slideTo: (t) => this.slideTo(t), 21147 slideToLoop: (t) => this.slideTo(t) 21148 }; 21149 } 21150 on(t, r) { 21151 this.eventBus.on(t, r); 21152 } 21153 sanitizeOptions(t) { 21154 let r = C(C({}, SS), t); 21155 return t.navigation === !0 && (r.navigation = {}), t.pagination === !0 && (r.pagination = { 21156 type: "bullets", 21157 clickable: !0 21158 }), t.autoplay === !0 && (r.autoplay = { delay: 5e3 }), t.freeMode === !0 && (r.freeMode = {}), r; 21159 } 21160 getSlideWidth(t, r) { 21161 return this.navigationService.getSlideWidth(t, r); 21162 } 21163 initNavigationService() { 21164 this.navigationService.init({ 21165 getContainer: () => this.scrollContainer()?.nativeElement, 21166 effectiveOptions: () => this.effectiveOptions(), 21167 swiperOptions: () => this.swiperOptions(), 21168 containerWidth: this.containerWidth, 21169 activeIndex: () => this.activeIndex(), 21170 activeChildIndex: this.activeChildIndex, 21171 slideElements: this.slideElements, 21172 prependedCloneCount: () => this.loopManager.prependedCloneCount, 21173 groupSnapActive: () => this.groupSnapActive() 21174 }, this.autoplayService, this.eventBus); 21175 } 21176 initScrollTracking() { 21177 let t = this.scrollContainer()?.nativeElement; 21178 t && this.scrollTracking.init(t, C({ 21179 onScroll: (r) => { 21180 this.effectiveOptions().effect === "coverflow" && this.coverflowService.update(r); 21181 let s = this.activeIndex(); 21182 this.eventBus.fireSlideChangeIfNeeded(s, () => ({ 21183 activeIndex: s, 21184 realIndex: this.realIndex(), 21185 slides: this.slideElements() 21186 }), this.swiperOptions().on?.slideChange), this.loopManager.scheduleBoundaryCheck({ 21187 container: t, 21188 opts: this.effectiveOptions(), 21189 realSlideCount: this.slideElements().length, 21190 containerWidth: this.scrollTracking.containerWidth(), 21191 activeChildIndex: this.activeChildIndex(), 21192 activeIndex: this.activeIndex(), 21193 onJump: (n) => { 21194 this.onLoopBoundaryJump(t, n); 21195 } 21196 }); 21197 }, 21198 onResize: (r, s) => { 21199 if (this.effectiveOptions().effect === "coverflow") { 21200 let n = this.effectiveOptions(), a = n.slidesPerView === "auto" && s.children.length >
21200 0 ? s.children[0].offsetWidth : this.getSlideWidth(n, r); 21201 this.coverflowService.setDimensions(a, r), this.coverflowService.update(s.scrollLeft); 21202 } 21203 this.updateCenteredEdgePadding(), this.syncGroupLeaderClasses(); 21204 } 21205 }, this.effectiveOptions().allowTouchMove === !1 ? {} : { onSwipe: (r) => { 21206 if (this.effectiveOptions().allowTouchMove === !1) return; 21207 let s = { 21208 activeIndex: this.activeIndex(), 21209 realIndex: this.realIndex(), 21210 slides: this.slideElements(), 21211 swipeDirection: r 21212 }; 21213 this.eventBus.fireEvent("sliderMove", s, this.swiperOptions().on?.sliderMove); 21214 } })); 21215 } 21216 onLoopBoundaryJump(t, r) { 21217 let s = t.children.length; 21218 if (s === 0) return; 21219 let n = Math.max(0, Math.min(r, s - 1)), a = /* @__PURE__ */ new Set([n]); 21220 n - 1 >= 0 && a.add(n - 1), n + 1 < s && a.add(n + 1); 21221 let o = this.slideElements().length, l = n - this.loopManager.prependedCloneCount, c = o === 0 ? 0 : this.effectiveOptions().loop ? (l % o + o) % o : Math.max(0, Math.min(l, o - 1)); 21222 this.intersectionService.seedState(n, a), this.eventBus.setLastFiredIndex(c), this.stateClassSync.applyNow({ 21223 container: t, 21224 children: Array.from(t.children), 21225 realSlideCount: o, 21226 opts: this.effectiveOptions(), 21227 activeChildIndex: n, 21228 visibleChildIndices: a 21229 }); 21230 } 21231 initIntersectionTracking() { 21232 let t = this.scrollContainer()?.nativeElement; 21233 t && this.intersectionService.init(t, () => !!this.effectiveOptions().centeredSlides); 21234 } 21235 observeCloneChildren() { 21236 let t = this.scrollContainer()?.nativeElement; 21237 t && this.intersectionService.observeNewChildren(t); 21238 } 21239 refreshIntersectionObserver() { 21240 let t = this.scrollContainer()?.nativeElement; 21241 t && this.intersectionService.refresh(t); 21242 } 21243 collectSlideElements() { 21244 let t = this.scrollContainer()?.nativeElement; 21245 t && this.slideElements.set(this.loopManager.collectNonCloneSlides(t)); 21246 } 21247 updateCenteredEdgePadding() { 21248 let t = this.effectiveOptions(); 21249 if (!(t.centeredSlides && !t.loop && t.effect !== "coverflow")) { 21250 this.leadPadding.set(0), this.trailPadding.set(0); 21251 return; 21252 } 21253 let r = this.hostRef.nativeElement.clientWidth, s = this.slideElements(); 21254 if (s.length === 0 || r === 0) { 21255 this.leadPadding.set(0), this.trailPadding.set(0); 21256 return; 21257 } 21258 let n = s[0], a = s[s.length - 1]; 21259 if (!n || !a) { 21260 this.leadPadding.set(0), this.trailPadding.set(0); 21261 return; 21262 } 21263 this.leadPadding.set(Math.max(0, (r - n.offsetWidth) / 2)), this.trailPadding.set(Math.max(0, (r - a.offsetWidth) / 2)); 21264 } 21265 syncGroupLeaderClasses() { 21266 let t = this.scrollContainer()?.nativeElement; 21267 if (!t) return; 21268 let r = Array.from(t.children); 21269 for (let u of r) this.renderer.removeClass(u, Gr.GROUP_LEADER_CLASS), this.renderer.removeClass(u, Gr.GROUP_TAIL_CLASS); 21270 if (!this.groupSnapActive()) return; 21271 let s = this.effectiveOptions(), n = this.hydrationTracker.isFullyHydrated() ? s.slidesPerView : this.displayOptions().slidesPerView, a = this.slideElements().length, o = Math.max(1, Math.floor(s.slidesPerGroup ?? 1)), l = typeof n == "number" && a > n, c = this.loopManager.prependedCloneCount, d = this.loopManager.appendedCloneCount; 21272 for (let u = 0; u < a; u++) { 21273 let h = r[u + c]; 21274 h && (u % o === 0 && this.renderer.addClass(h, Gr.GROUP_LEADER_CLASS), l && u === a - 1 && this.renderer.addClass(h, Gr.GROUP_TAIL_CLASS)); 21275 } 21276 for (let u = 0; u < c; u++) { 21277 let h = r[u]; 21278 if (!h) continue; 21279 let g = a - c + u; 21280 g >= 0 && g % o === 0 && this.renderer.addClass(h, Gr.GROUP_LEADER_CLASS); 21281 } 21282 for (let u = 0; u < d; u++) { 21283 let h = r[c + a + u]; 21284 h && u % o === 0 && this.renderer.addClass(h, Gr.GROUP_LEADER_CLASS); 21285 } 21286 } 21287 applyInitialSlide() { 21288 this.navigationService.applyInitialSlide(); 21289 } 21290 initCoverflowEffect() { 21291 if (this.effectiveOptions().effect !== "coverflow") return; 21292 let t = this.scrollContainer()?.nativeElement; 21293 t && this.coverflowService.initLifecycle({ 21294 container: t, 21295 hostRef: this.hostRef, 21296 effectiveOptions: this.effectiveOptions, 21297 getSlideWidth: (r, s) =>
21297 this.getSlideWidth(r, s), 21298 onChildrenChanged: () => { 21299 this.collectSlideElements(), this.intersectionService.resetActiveIndex(), this.refreshIntersectionObserver(); 21300 } 21301 }); 21302 } 21303 initAutoplay() { 21304 let t = this.effectiveOptions(); 21305 if (!t.autoplay) return; 21306 let r = typeof t.autoplay == "object" ? t.autoplay : {}, s = r.delay ?? 5e3, n = this.swiperWrapper()?.nativeElement, a = this.scrollContainer()?.nativeElement; 21307 !n || !a || this.autoplayService.init({ 21308 wrapper: n, 21309 scrollContainer: a, 21310 config: r, 21311 delay: s, 21312 onTick: () => this.slideNext(), 21313 getActiveIndex: () => this.activeIndex(), 21314 getSlideCount: () => this.slideElements().length 21315 }); 21316 } 21317 }; 21318 return e.SCROLL_THRESHOLD = 3, e.GROUP_LEADER_CLASS = "native-swiper-group-leader", e.GROUP_TAIL_CLASS = "native-swiper-group-tail", e.ɵfac = function(i) { 21319 return new (i || e)(); 21320 }, e.ɵcmp = ge({ 21321 type: e, 21322 selectors: [["vn-native-swiper"]], 21323 viewQuery: function(i, t) { 21324 i & 1 && Lu(t.scrollContainer, CO, 5)(t.swiperWrapper, NO, 5), i & 2 && La(2); 21325 }, 21326 hostVars: 2, 21327 hostBindings: function(i, t) { 21328 i & 2 && wt("coverflow-effect", t.effectiveOptions().effect === "coverflow"); 21329 }, 21330 inputs: { 21331 swiperOptions: [1, "swiperOptions"], 21332 showPagination: [1, "showPagination"], 21333 swiperClass: [1, "swiperClass"], 21334 inverse: [1, "inverse"], 21335 arrowSize: [1, "arrowSize"], 21336 variant: [1, "variant"], 21337 navPrevClass: [1, "navPrevClass"], 21338 navNextClass: [1, "navNextClass"], 21339 ariaLabel: [1, "ariaLabel"] 21340 }, 21341 outputs: { 21342 prevClick: "prevClick", 21343 nextClick: "nextClick" 21344 }, 21345 features: [Pi([ 21346 uS, 21347 lu, 21348 vS, 21349 hS, 21350 cS, 21351 gS, 21352 pS, 21353 cu, 21354 fS, 21355 dS 21356 ])], 21357 ngContentSelectors: TO, 21358 decls: 10, 21359 vars: 37, 21360 consts: [ 21361 ["swiperWrapper", ""], 21362 ["scrollContainer", ""], 21363 [ 21364 "role", 21365 "region", 21366 "aria-roledescription", 21367 "carousel", 21368 1, 21369 "native-swiper-scroll", 21370 "swiper-wrapper", 21371 3, 21372 "keydown.arrowLeft", 21373 "keydown.arrowRight", 21374 "keydown.home", 21375 "keydown.end" 21376 ], 21377 [ 21378 1, 21379 "native-swiper-nav", 21380 "native-swiper-nav-prev", 21381 3, 21382 "ngClass" 21383 ], 21384 [ 21385 1, 21386 "native-swiper-nav", 21387 "native-swiper-nav-next", 21388 3, 21389 "ngClass" 21390 ], 21391 [ 21392 1, 21393 "native-swiper-pagination", 21394 3, 21395 "dynamic", 21396 "width" 21397 ], 21398 [ 21399 "aria-live", 21400 "polite", 21401 "aria-atomic", 21402 "true", 21403 1, 21404 "native-swiper-live" 21405 ], 21406 [ 21407 "direction", 21408 "left", 21409 3, 21410 "click", 21411 "keydown.enter", 21412 "keydown.space", 21413 "size", 21414 "variant", 21415 "inverse" 21416 ], 21417 [ 21418 "direction", 21419 "right", 21420 3, 21421 "click", 21422 "keydown.enter", 21423 "keydown.space", 21424 "size", 21425 "variant", 21426 "inverse" 21427 ], 21428 [1, "native-swiper-pagination"], 21429 [ 21430 "role", 21431 "tablist", 21432 "aria-label", 21433 "Slide navigation", 21434 1, 21435 "native-swiper-pagination-strip" 21436 ], 21437 [ 21438 "role", 21439 "tab", 21440 1, 21441 "native-swiper-bullet", 21442 3, 21443 "active", 21444 "dynamic-bullet", 21445 "dynamic-bullet-hidden", 21446 "transform" 21447 ], 21448 [ 21449 "role", 21450 "tab", 21451 1, 21452 "native-swiper-bullet", 21453 3, 21454 "click" 21455 ] 21456 ], 21457 template: function(i, t) { 21458 if (i & 1 && (_t(), ie(0, "div", null, 0)(2, "div", 2, 1), Ce("keydown.arrowLeft", function(r) { 21459 return t.slidePrevOnKey(r); 21460 })("keydown.arrowRight", function(r) { 21461 return t.slideNextOnKey(r); 21462 })("keydown.home", function(r) { 21463 return t.slideToFirst(r); 21464 })("keydown.end", function(r) { 21465 return t.slideToLast(r); 21466 }), Ke(4), te(), U(5, i3, 2, 5, "div", 3), U(6, r3, 2, 5, "div", 4), U(7, n3, 4, 6, "div", 5), ie(8, "div", 6), Je(9), te()()), i & 2) { 21467 let r = t.displayOptions(); 21468 Le("native-swiper-container swiper " + t.consumerClasses()), wt("swiper-initialized", t.isInitialized()), P(2), Hs("--%NS%swiper-slides-per-view", r.slidesPerView === "auto" ? null : r.slidesPerView)("--%NS%swiper-gap", r.spaceBetween + "px")("--%NS%swiper-lead-padding", t.leadPaddingCss())("--%NS%swiper-trail-padding", t.trailPaddingCss())("perspective", t.isCoverflowActive() ? "1200px" : null)("--%NS%coverflow-rotate", t.isCoverflowActive() ? t.coverflowRotate() : null)("--%NS%coverflow-depth", t.isCoverflowActive() ? t.coverflowDepth() : null), wt("group-snap", t.groupSnapActive())("centered-slides", r.centeredSlides)("center-insufficient", t.centerInsufficient())("no-touch", r.allowTouchMove === !1)("auto-height", r.autoHeight)("slides-per-view-auto", r.slidesPerView === "auto"), Qe("aria-label", t.ariaLabel())("tabindex", t.isScrollable() ? 0 : -1), P(3), W(t.
21468showPrevScrollButton() ? 5 : -1), P(), W(t.showNextScrollButton() ? 6 : -1), P(), W(t.showBullets() ? 7 : -1), P(2), KA("Slide ", t.activeIndex() + 1, " of ", t.slideElements().length); 21469 } 21470 }, 21471 dependencies: [au, Vi], 21472 styles: ["[_nghost-%COMP%]{display:block;width:100%;container-type:inline-size;container-name:swiper}.native-swiper-container[_ngcontent-%COMP%]{position:relative;width:100%;overflow:visible}.native-swiper-scroll[_ngcontent-%COMP%]{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100cqw - (var(--%NS%swiper-slides-per-view, 1) - 1) * var(--%NS%swiper-gap, 0px)) / var(--%NS%swiper-slides-per-view, 1));gap:var(--%NS%swiper-gap, 0px);overflow-x:auto;overflow-y:hidden;scroll-snap-type:none;scroll-behavior:smooth;overflow-anchor:none;position:relative}.native-swiper-scroll[_ngcontent-%COMP%]:focus-visible{outline-offset:2px}.native-swiper-scroll.snap-ready[_ngcontent-%COMP%]{scroll-snap-type:x mandatory}.native-swiper-scroll[_ngcontent-%COMP%] > *{scroll-snap-align:start}.native-swiper-scroll.group-snap[_ngcontent-%COMP%] > *{scroll-snap-align:none}.native-swiper-scroll.group-snap[_ngcontent-%COMP%] > *.native-swiper-group-leader{scroll-snap-align:start}.native-swiper-scroll.group-snap[_ngcontent-%COMP%] > *.native-swiper-group-tail{scroll-snap-align:end}.native-swiper-scroll.slides-per-view-auto[_ngcontent-%COMP%]{display:flex}.native-swiper-scroll.centered-slides[_ngcontent-%COMP%] > *{scroll-snap-align:center}[_nghost-%COMP%]:not(.coverflow-effect) .native-swiper-scroll.centered-slides.slides-per-view-auto[_ngcontent-%COMP%]:before{content:\"\";flex-shrink:0;min-width:var(--%NS%swiper-lead-padding, 0px);margin-inline-end:calc(-1 * var(--%NS%swiper-gap, 0px))}[_nghost-%COMP%]:not(.coverflow-effect) .native-swiper-scroll.centered-slides.slides-per-view-auto[_ngcontent-%COMP%]:after{content:\"\";flex-shrink:0;min-width:var(--%NS%swiper-trail-padding, 0px);margin-inline-start:calc(-1 * var(--%NS%swiper-gap, 0px))}[_nghost-%COMP%]:not(.coverflow-effect) .native-swiper-scroll.centered-slides[_ngcontent-%COMP%]:not(.slides-per-view-auto){box-sizing:border-box;padding-inline-start:var(--%NS%swiper-lead-padding, 0px);padding-inline-end:var(--%NS%swiper-trail-padding, 0px)}.native-swiper-scroll.center-insufficient[_ngcontent-%COMP%]:not(.centered-slides){justify-content:safe center}.native-swiper-scroll.no-touch[_ngcontent-%COMP%]{overflow-x:hidden;touch-action:none}.native-swiper-scroll.auto-height[_ngcontent-%COMP%]{align-items:start}.native-swiper-scroll[_ngcontent-%COMP%]{scrollbar-width:none;-ms-overflow-style:none}.native-swiper-scroll[_ngcontent-%COMP%]::-webkit-scrollbar{display:none}.native-swiper-nav[_ngcontent-%COMP%]{position:absolute;top:50%;transform:translateY(-50%);z-index:1;transition:transform .2s ease,opacity .2s ease}.native-swiper-nav[_ngcontent-%COMP%]:hover, .native-swiper-nav[_ngcontent-%COMP%]:active{will-change:transform}.native-swiper-nav[_ngcontent-%COMP%]:not(:hover):not(:active){will-change:auto}.native-swiper-nav-prev[_ngcontent-%COMP%]{left:1.8%}.native-swiper-nav-next[_ngcontent-%COMP%]{right:1.8%}.native-swiper-pagination[_ngcontent-%COMP%]{--%NS%vn-bullet-size: 8px;--%NS%vn-bullet-gap: 4px;display:flex;justify-content:center;padding:var(--%NS%semantic-spacing-container-padding-lg) 0}.native-swiper-pagination.dynamic[_ngcontent-%COMP%]{justify-content:flex-start;margin-inline:auto;overflow:hidden}.native-swiper-pagination-strip[_ngcontent-%COMP%]{display:flex;flex:none;gap:var(--%NS%vn-bullet-gap)}.native-swiper-pagination.dynamic[_ngcontent-%COMP%] .native-swiper-pagination-strip[_ngcontent-%COMP%]{transition:transform .3s ease}.native-swiper-bullet[_ngcontent-%COMP%]{width:var(--%NS%vn-bullet-size);height:var(--%NS%vn-bullet-size);flex:none;border-radius:var(--%NS%semantic-radius-max);border:none;padding:0;cursor:pointer;transition:background .2s ease,transform .2s ease}.native-swiper-bullet[_ngcontent-%COMP%]:focus-visible{outline-offset:2px}.native-swiper-bullet.active[_ngcontent-%COMP%]{transform:scale(1.2)}.native-swiper-bullet.dynamic-bullet[_ngcontent-%COMP%]{transition:transform .2s ease}.native-swiper-bullet.dynamic-bullet.active[_ngcontent-%COMP%]{transform:scale(1)}.native-swiper-bullet.dynamic-bullet.dynamic-bullet-hidden[_ngcontent-%COMP%]{transition:transform .2s ease}
21472.native-swiper-live[_ngcontent-%COMP%]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.coverflow-effect[_nghost-%COMP%] .native-swiper-scroll[_ngcontent-%COMP%]{display:flex;transform-style:preserve-3d;scroll-snap-type:none!important;scroll-behavior:auto;overflow:hidden}.coverflow-effect[_nghost-%COMP%] .native-swiper-scroll[_ngcontent-%COMP%]:after{content:\"\";display:block;min-width:var(--%NS%coverflow-end-padding, 0px);min-height:1px;flex-shrink:0}.coverflow-effect[_nghost-%COMP%] .native-swiper-scroll>*{will-change:transform;transform-style:preserve-3d}.coverflow-effect[_nghost-%COMP%] .native-swiper-scroll.centered-slides>:nth-child(1){margin-left:50%;transform:translate3d(-50%,0,0) rotateY(0) scale(1);z-index:1}.coverflow-effect[_nghost-%COMP%] .native-swiper-scroll.centered-slides>:nth-child(2){transform:translate3d(-50%,0,calc(var(--%NS%coverflow-depth, 300) * -1px)) rotateY(calc(var(--%NS%coverflow-rotate, -50) * -1 * 1deg)) scale(1);z-index:0}.coverflow-effect[_nghost-%COMP%] .native-swiper-scroll.centered-slides>:nth-child(3){transform:translate3d(-50%,0,calc(var(--%NS%coverflow-depth, 300) * -2px)) rotateY(calc(var(--%NS%coverflow-rotate, -50) * -2 * 1deg)) scale(1);z-index:-1}.coverflow-effect[_nghost-%COMP%] .native-swiper-scroll.centered-slides>:nth-child(4){transform:translate3d(-50%,0,calc(var(--%NS%coverflow-depth, 300) * -3px)) rotateY(calc(var(--%NS%coverflow-rotate, -50) * -3 * 1deg)) scale(1);z-index:-2}.coverflow-effect[_nghost-%COMP%] .native-swiper-scroll.centered-slides>:nth-child(5){transform:translate3d(-50%,0,calc(var(--%NS%coverflow-depth, 300) * -4px)) rotateY(calc(var(--%NS%coverflow-rotate, -50) * -4 * 1deg)) scale(1);z-index:-3}.coverflow-effect[_nghost-%COMP%] .coverflow-shadow-left{position:absolute;inset:0;pointer-events:none;background:linear-gradient(to left,rgba(0,0,0,.5),transparent);opacity:0}.coverflow-effect[_nghost-%COMP%] .coverflow-shadow-right{position:absolute;inset:0;pointer-events:none;background:linear-gradient(to right,rgba(0,0,0,.5),transparent);opacity:0}.coverflow-effect.coverflow-hydrated[_nghost-%COMP%] .native-swiper-scroll>*{transition:transform .05s linear}.coverflow-effect.coverflow-hydrated[_nghost-%COMP%] .native-swiper-scroll[_ngcontent-%COMP%]{overflow-x:auto;scroll-behavior:smooth}.coverflow-effect[_nghost-%COMP%] .native-swiper-pagination[_ngcontent-%COMP%]{--%NS%vn-bullet-size: 12px;--%NS%vn-bullet-gap: var(--%NS%semantic-spacing-inline-md, 8px);position:absolute;bottom:0;left:50%;transform:translate(-50%);padding:0}.coverflow-effect[_nghost-%COMP%] .native-swiper-bullet[_ngcontent-%COMP%]{background:var(--%NS%semantic-color-on-disabled-base)}.coverflow-effect[_nghost-%COMP%] .native-swiper-bullet.active[_ngcontent-%COMP%]{background:var(--%NS%semantic-color-primary-base)}"] 21473 }), e; 21474 })(), kO = ["*"], xO = (() => { 21475 let e = class { 21476 constructor() { 21477 this.page = f(jr), this.dslService = f(Js), this.swiperOptions = ce(), this.nativeSwiperOptions = ce(), this.groupSnap = ce(), this.showPagination = ce(!0), this.swiperClass = ce(""), this.inverse = ce(!0), this.arrowSize = ce("large"), this.variant = ce("strong"), this.navPrevClass = ce(""), this.navNextClass = ce(""), this.ariaLabel = ce("Carousel"), this.navOutsideContainer = ce(!1), this.prevClick = It(), this.nextClick = It(), this.isNative = le(!1), this.initialSlideSeed = ne(() => this.swiperOptions()?.initialSlide ?? this.nativeSwiperOptions()?.initialSlide ?? 0), this.legacyRealIndex = zu(() => this.initialSlideSeed()), this.legacySnapIndex = le(0), this.legacySnapCount = le(1), this.effectiveNativeSwiperOptions = ne(() => { 21478 let s = this.nativeSwiperOptions() ?? hO(this.swiperOptions()), n = this.groupSnap(); 21479 if (n === void 0) return s; 21480 let a = J(C({}, s), { groupSnap: n }); 21481 if (s.breakpoints) { 21482 a.breakpoints = {}; 21483 for (let [o, l] of Object.entries(s.breakpoints)) a.breakpoints[Number(o)] = J(C({}, l), { groupSnap: n }); 21484 } 21485 return a; 21486 }), this.swiperRef = Ra(xa), this.nativeSwiperRef = Ra(sl), this.activeSwiper = ne(() => this.isNative() ? this.nativeSwiperRef() : this.swiperRef()), this.realIndex = ne(() => { 21487 if (this.isNative()) { 21488 let s = this.nativeSwiperRef(); 21489 return s && s.slideElements().length > 0 ? s.realIndex() : this.initialSlideSeed(); 21490 } 21491 return this.legacyRealIndex(); 21492 }), this.pageIndex = ne(() => this.isNative() ? this.nativeSwiperRef()?.activePage() ?? 0 : this.legacySnapIndex()), this.pageCount = ne(() => this.isNative() ? this.nativeSwiperRef()?.totalPages() ?? 1 : this.legacySnapCount()), this.isBeg
21492inning = ne(() => this.isNative() ? !(this.nativeSwiperRef()?.canScrollPrev() ?? !1) : this.swiperRef()?.swiper?.isBeginning ?? !0), this.isEnd = ne(() => this.isNative() ? !(this.nativeSwiperRef()?.canScrollNext() ?? !0) : this.swiperRef()?.swiper?.isEnd ?? !1), this.autoplay = { 21493 stop: () => { 21494 this.isNative() ? this.nativeSwiperRef()?.autoplay.stop() : this.swiperRef()?.swiper?.autoplay?.stop(); 21495 }, 21496 start: () => { 21497 this.isNative() ? this.nativeSwiperRef()?.autoplay.start() : this.swiperRef()?.swiper?.autoplay?.start(); 21498 } 21499 }, this.page.isNativeSwiperEnabled && this.dslService.evaluateExpression(this.page.isNativeSwiperEnabled).pipe(Ot(1), he()).subscribe({ 21500 next: (s) => this.isNative.set(s), 21501 error: () => this.isNative.set(!1) 21502 }); 21503 let t = zi(() => { 21504 let s = this.nativeSwiperRef(); 21505 s && (this.bridgeNativeSwiperEvents(s), t.destroy()); 21506 }), r = zi(() => { 21507 let s = this.swiperRef(); 21508 s?.swiper && !this.isNative() && (s.swiper.on("slideChange", (n) => { 21509 this.legacyRealIndex.set(n.realIndex); 21510 }), this.legacySnapIndex.set(s.swiper.snapIndex ?? 0), this.legacySnapCount.set(Math.max(1, s.swiper.snapGrid?.length ?? 1)), s.swiper.on("snapIndexChange", (n) => { 21511 this.legacySnapIndex.set(n.snapIndex); 21512 }), s.swiper.on("snapGridLengthChange", (n) => { 21513 this.legacySnapCount.set(Math.max(1, n.snapGrid?.length ?? 1)); 21514 }), r.destroy()); 21515 }); 21516 } 21517 bridgeNativeSwiperEvents(t) { 21518 let r = this.swiperOptions()?.on; 21519 if (!r) return; 21520 let s = (n) => ({ 21521 realIndex: n.realIndex, 21522 activeIndex: n.activeIndex, 21523 slides: n.slides, 21524 swipeDirection: n.swipeDirection, 21525 params: this.swiperOptions() ?? {}, 21526 update: () => t.update(), 21527 autoplay: { 21528 get running() { 21529 return t.isAutoplayRunning; 21530 }, 21531 stop: () => t.autoplay.stop(), 21532 start: () => t.autoplay.start() 21533 } 21534 }); 21535 for (let n of [ 21536 "init", 21537 "afterInit", 21538 "slideNextTransitionStart", 21539 "slidePrevTransitionStart", 21540 "slideChange", 21541 "sliderMove" 21542 ]) { 21543 let a = r[n]; 21544 typeof a == "function" && t.on(n, (o) => { 21545 a(s(o)); 21546 }); 21547 } 21548 } 21549 slideNext(t) { 21550 if (this.isNative()) this.nativeSwiperRef()?.slideNext(t); 21551 else { 21552 let r = this.swiperRef()?.swiper; 21553 r && (r.animating = !1, r.slideNext(t)); 21554 } 21555 } 21556 slidePrev(t) { 21557 this.isNative() ? this.nativeSwiperRef()?.slidePrev(t) : this.swiperRef()?.swiper?.slidePrev(t); 21558 } 21559 slideTo(t, r) { 21560 this.isNative() ? this.nativeSwiperRef()?.slideTo(t, r) : this.swiperRef()?.swiper?.slideTo(t, r); 21561 } 21562 destroy(t, r) { 21563 this.isNative() ? this.nativeSwiperRef()?.destroy(t, r) : this.swiperRef()?.swiper?.destroy(t, r); 21564 } 21565 update() { 21566 this.isNative() ? this.nativeSwiperRef()?.update() : this.swiperRef()?.swiper?.update(); 21567 } 21568 get swiper() { 21569 let t = this.activeSwiper(); 21570 if (t) return t.swiper; 21571 } 21572 }; 21573 return e.ɵfac = function(i) { 21574 return new (i || e)(); 21575 }, e.ɵcmp = ge({ 21576 type: e, 21577 selectors: [["vn-swiper-wrapper"]], 21578 viewQuery: function(i, t) { 21579 i & 1 && Lu(t.swiperRef, xa, 5)(t.nativeSwiperRef, sl, 5), i & 2 && La(2); 21580 }, 21581 hostAttrs: [ 21582 2, 21583 "display", 21584 "block", 21585 "width", 21586 "100%" 21587 ], 21588 inputs: { 21589 swiperOptions: [1, "swiperOptions"], 21590 nativeSwiperOptions: [1, "nativeSwiperOptions"], 21591 groupSnap: [1, "groupSnap"], 21592 showPagination: [1, "showPagination"], 21593 swiperClass: [1, "swiperClass"], 21594 inverse: [1, "inverse"], 21595 arrowSize: [1, "arrowSize"], 21596 variant: [1, "variant"], 21597 navPrevClass: [1, "navPrevClass"], 21598 navNextClass: [1, "navNextClass"], 21599 ariaLabel: [1, "ariaLabel"], 21600 navOutsideContainer: [1, "navOutsideContainer"] 21601 }, 21602 outputs: { 21603 prevClick: "prevClick", 21604 nextClick: "nextClick" 21605 }, 21606 ngContentSelectors: kO, 21607 decls: 4, 21608 vars: 1, 21609 consts: [ 21610 ["slidesTemplate", ""], 21611 [ 21612 3, 21613 "swiperOptions", 21614 "showPagination", 21615 "swiperClass", 21616 "inverse", 21617 "arrowSize", 21618 "variant", 21619 "navPrevClass", 21620 "navNextClass", 21621 "ariaLabel" 21622 ], 21623 [ 21624 3, 21625 "swiperOptions", 21626 "showPagination", 21627 "swiperClass", 21628 "inverse", 21629 "arrowSize", 21630 "variant", 21631 "navPrevClass", 21632 "navNextClass", 21633 "navOutsideContainer" 21634 ], 21635 [ 21636 3, 21637 "prevClick", 21638 "nextClick", 21639 "swiperOptions", 21640 "showPagination", 21641 "swiperClass", 21642 "inverse", 21643 "arrowSize", 21644 "variant", 21645 "navPrevClass", 21646 "navNextClass", 21647 "ariaLabel" 21648 ], 21649 [4, "ngTemplateOutlet"], 21650 [ 21651 3, 21652 "prevClick", 21653 "nextClick", 21654 "swiperOptions", 21655 "showPagination", 21656 "swiperClass", 21657 "inverse", 21658 "arrowSize", 21659 "variant", 21660 "navPrevClass", 21661 "navNextClass", 21662 "navOutsideContainer" 21663 ] 21664 ], 21665 template: function(i, t) { 21666 i & 1 && (_t(), be(0, a3, 1, 0, "ng-template", null, 0, ti), U(2, l3, 2, 10, "vn-native-swiper", 1)(3, d3, 2, 10, "vn-swiper", 2)), i & 2 && (P(2), W(t.isNative() ? 2 : 3)); 21667 }, 21668 dependencies: [ 21669 xa, 21670 sl, 21671 qs 21672 ], 21673 encapsulation: 2 21674 }), e; 21675 })(); 21676 })))(); 21677} 21678function u3(e, i) { 21679 e & 1 && br(0, "div", 0); 21680} 21681function p3(e, i) { 21682 e & 1 && Je(0), e & 2 && Ma(" ", N().label(), " "); 21683} 21684function h3(e, i) { 21685 e & 1 && Ke(0); 21686} 21687var IO, du; 21688function yS() { 21689 return (yS = Z((() => { 21690 de(), Ha(), ks(), IO = ["*"], du = (() => { 21691 let e = class { 21692 constructor() { 21693 this.label = Ne(""), this.size = Ne("medium"), this.variant = Ne("primary"), this.disabled = Ne(!1), this.inverse = Ne(!1), this.hostClass = ne(() => `ds-notification-bubble-${this.size()} ds-notification-bubble-${this.variant()}`); 21694 } 21695 getThemeableProperties() { 21696 return { 21697 size: this.size, 21698 variant: this.variant, 21699 inverse: this.inverse 21700 }; 21701 } 21702 }; 21703 return e.ɵfac = function(i) { 21704 return new (i || e)(); 21705 }, e.ɵcmp = ge({ 21706 type: e, 21707 selectors: [["ds-notification-bubble"]], 21708 hostAttrs: [1, "ds-notification-bubble"], 21709 hostVars: 6, 21710 hostBindings: function(i, t) { 21711 i & 2 && (Le(t.hostClass()), wt("ds-notification-bubble-disabled", t.disabled())("ds-notification-bubble-inverse", t.inverse())); 21712 }, 21713 inputs: { 21714 label: [1, "label"], 21715 size: [1, "size"], 21716 variant: [1, "variant"], 21717 disabled: [1, "disabled"], 21718 inverse: [1, "inverse"] 21719 }, 21720 outputs: { 21721 label: "labelChange", 21722 size: "sizeChange", 21723 variant: "variantChange", 21724 disabled: "disabledChange", 21725 inverse: "inverseChange" 21726 }, 21727 features: [Pi([{ 21728 provide: S_, 21729 useFactory: () => "ds-notification-bubble" 21730 }, { 21731 provide: Nr, 21732 useExisting: e 21733 }])], 21734 ngContentSelectors: IO, 21735 decls: 3, 21736 vars: 1,
21737 consts: [[1, "ds-notification-bubble-inside-dot"]], 21738 template: function(i, t) { 21739 i & 1 && (_t(), U(0, u3, 1, 0, "div", 0)(1, p3, 1, 1)(2, h3, 1, 0)), i & 2 && W(t.variant() === "live-dot" || t.variant() === "utility-dot" ? 0 : t.label() ? 1 : 2); 21740 }, 21741 styles: [`.ds-notification-bubble{--%NS%ds-notification-bubble-radius-border: var(--%NS%semantic-radius-max);--%NS%ds-notification-bubble-local-width: fit-content;--%NS%ds-notification-bubble-local-padding-zero: 0;--%NS%ds-notification-bubble-local-padding: 0 var(--%NS%ds-notification-bubble-space-padding-right, 0) 0 var(--%NS%ds-notification-bubble-space-padding-left, 0);--%NS%ds-notification-bubble-font-family: var(--%NS%semantic-typography-label-font-family, sans-serif);--%NS%ds-notification-bubble-font-size: var(--%NS%semantic-typography-label-sm-strong-font-size);--%NS%ds-notification-bubble-font-weight: var(--%NS%semantic-typography-label-sm-strong-font-weight);--%NS%ds-notification-bubble-line-height: var(--%NS%semantic-typography-label-sm-strong-line-height);font-family:var(--%NS%ds-notification-bubble-font-family);font-size:var(--%NS%ds-notification-bubble-font-size);font-weight:var(--%NS%ds-notification-bubble-font-weight);line-height:var(--%NS%ds-notification-bubble-line-height);align-items:center;background:var(--%NS%ds-notification-bubble-custom-color-bg, var(--%NS%ds-notification-bubble-color-bg));border-radius:var(--%NS%ds-notification-bubble-custom-radius-border, var(--%NS%ds-notification-bubble-radius-border));box-sizing:border-box;color:var(--%NS%ds-notification-bubble-custom-color-text, var(--%NS%ds-notification-bubble-color-text));display:inline-flex;height:var(--%NS%ds-notification-bubble-custom-size-height, var(--%NS%ds-notification-bubble-size-height));justify-content:center;min-width:var(--%NS%ds-notification-bubble-custom-size-min-width, var(--%NS%ds-notification-bubble-size-min-width));padding:var(--%NS%ds-notification-bubble-local-padding);width:var(--%NS%ds-notification-bubble-local-width)}.ds-notification-bubble.ds-notification-bubble-primary{--%NS%ds-notification-bubble-color-bg: var(--%NS%semantic-color-primary-base);--%NS%ds-notification-bubble-color-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-notification-bubble-color-text: var(--%NS%semantic-color-on-primary-base)}.ds-notification-bubble.ds-notification-bubble-live-dot,.ds-notification-bubble.ds-notification-bubble-utility-dot{--%NS%ds-notification-bubble-local-padding: var(--%NS%ds-notification-bubble-local-padding-zero)}.ds-notification-bubble.ds-notification-bubble-live-dot{--%NS%ds-notification-bubble-color-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-notification-bubble-color-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-notification-bubble-color-dot: var(--%NS%semantic-color-negative-base)}.ds-notification-bubble.ds-notification-bubble-utility-dot{--%NS%ds-notification-bubble-color-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-notification-bubble-color-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-notification-bubble-color-dot: var(--%NS%semantic-color-utility-base)}.ds-notification-bubble.ds-notification-bubble-live{--%NS%ds-notification-bubble-color-bg: var(--%NS%semantic-color-opacity-subtle-base);--%NS%ds-notification-bubble-color-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-notification-bubble-color-text: var(--%NS%semantic-color-negative-base)}.ds-notification-bubble.ds-notification-bubble-neutral{--%NS%ds-notification-bubble-color-bg: var(--%NS%semantic-color-opacity-subtle-base);--%NS%ds-notification-bubble-color-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-notification-bubble-color-text: var(--%NS%semantic-color-on-surface-base)}.ds-notification-bubble.ds-notification-bubble-utility{--%NS%ds-notification-bubble-color-bg: var(--%NS%semantic-color-opacity-subtle-base);--%NS%ds-notification-bubble-color-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-notification-bubble-color-text: var(--%NS%semantic-color-utility-base)}.ds-notification-bubble.ds-notification-bubble-disabled:not(.ds-notification-bubble-live-dot):not(.ds-notification-bubble-utility-dot){--%NS%ds-notification-bubble-color-bg: var(--%NS%semantic-color-disabled-base);--%NS%ds-notification-bubble-color-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-notification-bubble-color-text: var(--%NS%semantic-color-on-disabled-base)}.ds-notification-bubble.ds-notification-bubble-inverse.ds-notification-bubble-primary{--%NS%ds-notification-bubble-color-bg: var(--%NS%semantic-color-primary-base-inverse);--%NS%ds-notification-bubble-color-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-notification-bubble-color-text: var(--%NS%semantic-color-on-primary-base-inverse)}.ds-notification-bubble.ds-notification-bubble-inverse.ds-notification-bubble-live-dot{--%NS%ds-notification-bubble-color-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-notification-bubble-color-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-notification-bubble-color-dot: var(--%NS%semantic-color-negative-base-inverse)}.ds-notification-bubble.ds-notification-bubble-inverse.ds-notification-bubble-utility-dot{--%NS%ds-notification-bubble-color-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-notification-bubble-color-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-notification-bubble-color-dot: var(--%NS%semantic-color-utility-base-inverse)}.ds-notification-bubble.ds-notification-bubble-inverse.ds-notification-bubble-live{--%NS%ds-notification-bubble-color-bg: var(--%NS%semantic-color-opacity-subtle-base-inverse);--%NS%ds-notification-bubble-color-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-notification-bubble-color-text: var(--%NS%semantic-color-negative-base-inverse)}.ds-notification-bubble.ds-notification-bubble-inverse.ds-notification-bubble-neutral{--%NS%ds-notification-bubble-color-bg: var(--%NS%semantic-color-opacity-subtle-base-inverse);--%NS%ds-notification-bubble-color-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-notification-bubble-color-text: var(--%NS%semantic-color-on-surface-base-inverse)}.ds-notification-bubble.ds-notification-bubble-inverse.ds-notification-bubble-utility{--%NS%ds-notification-bubble-color-bg: var(--%NS%semantic-color-opacity-subtle-base-inverse);--%NS%ds-notification-bubble-color-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-notification-bubble-color-text: var(--%NS%semantic-color-utility-base-inverse)}.ds-notification-bubble.ds-notification-bubble-inverse.ds-notification-bubble-disabled:not(.ds-notification-bubble-live-dot):not(.ds-notification-bubble-utility-dot){--%NS%ds-notification-bubble-color-bg: var(--%NS%semantic-color-disabled-base-inverse);--%NS%ds-notification-bubble-color-border: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-notification-bubble-color-text: var(--%NS%semantic-color-on-disabled-base-inverse)}.ds-notification-bubble.ds-notification-bubble-large{--%NS%ds-notification-bubble-size-dot-height: var(--%NS%semantic-size-icon-medium);--%NS%ds-notification-bubble-size-dot-width: var(--%NS%semantic-size-icon-medium);--%NS%ds-notification-bubble-size-height: var(--%NS%semantic-size-x6);--%NS%ds-notification-bubble-size-min-width: var(--%NS%semantic-size-x6);--%NS%ds-notification-bubble-space-padding-left: var(--%NS%semantic-spacing-container-padding-sm);--%NS%ds-notification-bubble-space-padding-right: var(--%NS%semantic-spacing-container-padding-sm);--%NS%ds-notification-bubble-font-family: var(--%NS%semantic-typography-label-font-family, sans-serif);--%NS%ds-notification-bubble-font-size: var(--%NS%semantic-typography-label-lg-strong-font-size);
21741--%NS%ds-notification-bubble-font-weight: var(--%NS%semantic-typography-label-lg-strong-font-weight);--%NS%ds-notification-bubble-line-height: var(--%NS%semantic-typography-label-lg-strong-line-height)}.ds-notification-bubble.ds-notification-bubble-medium{--%NS%ds-notification-bubble-size-dot-height: var(--%NS%semantic-size-icon-small);--%NS%ds-notification-bubble-size-dot-width: var(--%NS%semantic-size-icon-small);--%NS%ds-notification-bubble-size-height: var(--%NS%semantic-size-x4);--%NS%ds-notification-bubble-size-min-width: var(--%NS%semantic-size-x4);--%NS%ds-notification-bubble-space-padding-left: var(--%NS%semantic-spacing-container-padding-sm);--%NS%ds-notification-bubble-space-padding-right: var(--%NS%semantic-spacing-container-padding-sm);--%NS%ds-notification-bubble-font-family: var(--%NS%semantic-typography-label-font-family, sans-serif);--%NS%ds-notification-bubble-font-size: var(--%NS%semantic-typography-label-sm-strong-font-size);--%NS%ds-notification-bubble-font-weight: var(--%NS%semantic-typography-label-sm-strong-font-weight);--%NS%ds-notification-bubble-line-height: var(--%NS%semantic-typography-label-sm-strong-line-height)}.ds-notification-bubble.ds-notification-bubble-small{--%NS%ds-notification-bubble-size-dot-height: var(--%NS%semantic-size-icon-xsmall);--%NS%ds-notification-bubble-size-dot-width: var(--%NS%semantic-size-icon-xsmall);--%NS%ds-notification-bubble-size-height: var(--%NS%semantic-size-x3);--%NS%ds-notification-bubble-size-min-width: var(--%NS%semantic-size-x3);--%NS%ds-notification-bubble-space-padding-left: var(--%NS%semantic-spacing-container-padding-xs);--%NS%ds-notification-bubble-space-padding-right: var(--%NS%semantic-spacing-container-padding-xs);--%NS%ds-notification-bubble-font-family: sans-serif;--%NS%ds-notification-bubble-font-size: var(--%NS%semantic-typography-label-xs-strong-font-size);--%NS%ds-notification-bubble-font-weight: var(--%NS%semantic-typography-label-xs-strong-font-weight);--%NS%ds-notification-bubble-line-height: var(--%NS%semantic-typography-label-xs-strong-line-height)}
21741.ds-notification-bubble .ds-notification-bubble-inside-dot{background:var(--%NS%ds-notification-bubble-color-dot);border-radius:var(--%NS%ds-notification-bubble-radius-border);height:var(--%NS%ds-notification-bubble-size-dot-height);width:var(--%NS%ds-notification-bubble-size-dot-width)} 21742`], 21743 encapsulation: 2 21744 }), e; 21745 })(); 21746 })))(); 21747} 21748function m3(e, i) { 21749 if (e & 1 && (Nt(0, "span", 3), Je(1), ft()), e & 2) { 21750 let t = N(2); 21751 P(), gt(t.subtitle()); 21752 } 21753} 21754function f3(e, i) { 21755 if (e & 1 && (Nt(0, "span", 4), Je(1), ft()), e & 2) { 21756 let t = N(2); 21757 P(), gt(t.subtext()); 21758 } 21759} 21760function g3(e, i) { 21761 if (e & 1 && (Nt(0, "div", 0)(1, "span", 2), Je(2), ft(), U(3, m3, 2, 1, "span", 3), U(4, f3, 2, 1, "span", 4), ft()), e & 2) { 21762 let t = N(); 21763 P(), wt("ds-list-title-strong", t.boldTitle()), P(), gt(t.title()), P(), W(t.subtitle() ? 3 : -1), P(), W(t.subtext() ? 4 : -1); 21764 } 21765} 21766var OO, Lr, PO, AO, $O, nl, wS; 21767function ES() { 21768 return (ES = Z((() => { 21769 de(), Et(), Un(), ks(), op(), OO = (() => { 21770 let e = class { 21771 constructor() { 21772 this.isIOS = le(!1), this.document = f(vi), Dn(() => { 21773 let t = this.document.defaultView; 21774 t && /iPad|iPhone|iPod/.test(t.navigator.userAgent) && !("MSStream" in t) && this.isIOS.set(!0); 21775 }); 21776 } 21777 }; 21778 return e.ɵfac = function(i) { 21779 return new (i || e)(); 21780 }, e.ɵdir = ci({ 21781 type: e, 21782 selectors: [[ 21783 "", 21784 "dsIosActive", 21785 "" 21786 ]], 21787 hostVars: 2, 21788 hostBindings: function(i, t) { 21789 i & 2 && wt("ds-ios-active-fix", t.isIOS()); 21790 } 21791 }), e; 21792 })(), Lr = { 21793 list: { 21794 parent: "list", 21795 child: "listitem", 21796 supportsInteraction: !1, 21797 supportsSelection: !1 21798 }, 21799 navigation: { 21800 parent: "navigation", 21801 child: "link", 21802 supportsInteraction: !1, 21803 supportsSelection: !1 21804 }, 21805 selection: { 21806 parent: "listbox", 21807 child: "option", 21808 supportsInteraction: !0, 21809 supportsSelection: !0 21810 } 21811 }, PO = [[[ 21812 "", 21813 "slot", 21814 "start" 21815 ]], [[ 21816 "", 21817 "slot", 21818 "end" 21819 ]]], AO = ["[slot=start]", "[slot=end]"], $O = ["*"], Object.keys(Lr), nl = (() => { 21820 let e = class { 21821 constructor() { 21822 this.title = ce.required(), this.subtitle = Ne(""), this.subtext = Ne(""), this.selected = Ne(!1), this.boldTitle = Ne(!0), this.showCenterSlot = Ne(!0), this.inverse = Ne(!1), this.size = Ne("large"), this.tagName = f(kb, { optional: !0 }), this.itemClick = It(), this.itemFocus = It(), this.itemClick$ = dy(this.itemClick), this.itemFocus$ = dy(this.itemFocus), this.elementRef = f(di), this.platform = f(Fa), this.listGroup = f(wS, { optional: !0 }), this.tabIndex = le(-1), this.role = ne(() => { 21823 let t = this.listGroup?.roleType(); 21824 return t && Lr[t] ? Lr[t].child : null; 21825 }); 21826 } 21827 isAnchor() { 21828 return this.tagName === "a"; 21829 } 21830 selectable() { 21831 if (!this.listGroup) return !1; 21832 let t = this.listGroup.roleType(); 21833 return t ? Lr[t].supportsSelection : !1; 21834 } 21835 interactive() { 21836 if (!this.listGroup) return !0; 21837 let t = this.listGroup.roleType(); 21838 return t ? Lr[t].supportsInteraction || this.isAnchor() : !1; 21839 } 21840 focus() { 21841 this.platform?.isBrowser && this.elementRef.nativeElement.focus(); 21842 } 21843 setTabIndex(t) { 21844 this.tabIndex.set(t); 21845 } 21846 handleClick(t) { 21847 let r = t.target; 21848 this.isAnchor() || r?.type === "checkbox" || this.itemClick.emit(this); 21849 } 21850 handleFocus() { 21851 this.interactive() && this.itemFocus.emit(this); 21852 } 21853 getThemeableProperties() { 21854 return { 21855 inverse: this.inverse, 21856 size: this.size 21857 }; 21858 } 21859 }; 21860 return e.ɵfac = function(i) { 21861 return new (i || e)(); 21862 }, e.ɵcmp = ge({ 21863 type: e, 21864 selectors: [["ds-list-item"], [ 21865 "a", 21866 "ds-list-item", 21867 "" 21868 ]], 21869 hostAttrs: [1, "ds-list-item"], 21870 hostVars: 11, 21871 hostBindings: function(i, t) { 21872 i & 1 && Ce("click", function(r) { 21873 return t.handleClick(r); 21874 })("focus", function() { 21875 return t.handleFocus(); 21876 }), i & 2 && (Qe("role", t.role())("aria-selected", t.selectable() ? t.selected() : null)("tabindex", t.interactive() && t.listGroup ? t.tabIndex() : null), Le("ds-list-item-" + t.size()), wt("ds-list-item-inverse", t.inverse())("ds-list-item-interactive", t.interactive())("ds-list-item-selected", t.selected())); 21877 }, 21878 inputs: { 21879 title: [1, "title"], 21880 subtitle: [1, "subtitle"], 21881 subtext: [1, "subtext"], 21882 selected: [1, "selected"], 21883 boldTitle: [1, "boldTitle"], 21884 showCenterSlot: [1, "showCenterSlot"], 21885 inverse: [1, "inverse"], 21886 size: [1, "size"] 21887 }, 21888 outputs: { 21889 subtitle: "subtitleChange", 21890 subtext: "subtextChange", 21891 selected: "selectedChange", 21892 boldTitle: "boldTitleChange", 21893 showCenterSlot: "showCenterSlotChange", 21894 inverse: "inverseChange", 21895 size: "sizeChange", 21896 itemClick: "itemClick", 21897 itemFocus: "itemFocus" 21898 }, 21899 features: [Pi([{ 21900 provide: Nr, 21901 useExisting: _b(() => e) 21902 }
21902]), QA([OO])], 21903 ngContentSelectors: AO, 21904 decls: 4, 21905 vars: 1, 21906 consts: [ 21907 [1, "ds-list-tile-text"], 21908 [1, "ds-list-end-slot"], 21909 [1, "ds-list-tile-title"], 21910 [1, "ds-list-tile-sub-title"], 21911 [1, "ds-list-tile-sub-text"] 21912 ], 21913 template: function(i, t) { 21914 i & 1 && (_t(PO), Ke(0), U(1, g3, 5, 5, "div", 0), Nt(2, "div", 1), Ke(3, 1), ft()), i & 2 && (P(), W(t.showCenterSlot() ? 1 : -1)); 21915 }, 21916 styles: [`.ds-list-item{--%NS%ds-list-item-size-min-height: var(--%NS%semantic-size-x11);--%NS%ds-list-item-space-inline: var(--%NS%semantic-spacing-inline-md);--%NS%ds-list-item-space-padding-bottom: var(--%NS%semantic-spacing-container-padding-lg);--%NS%ds-list-item-space-padding-left: var(--%NS%semantic-spacing-container-padding-sm);--%NS%ds-list-item-space-padding-right: var(--%NS%semantic-spacing-container-padding-sm);--%NS%ds-list-item-space-padding-top: var(--%NS%semantic-spacing-container-padding-lg);--%NS%ds-list-item-active-color-background: var(--%NS%semantic-color-opacity-subtle-active);--%NS%ds-list-item-active-color-icon: var(--%NS%semantic-color-tertiary-base);--%NS%ds-list-item-active-color-subtext: var(--%NS%semantic-color-on-surface-subtle);--%NS%ds-list-item-active-color-subtitle: var(--%NS%semantic-color-on-surface-subtle);--%NS%ds-list-item-active-color-title: var(--%NS%semantic-color-on-surface-base);--%NS%ds-list-item-enabled-color-background: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-list-item-enabled-color-icon: var(--%NS%semantic-color-tertiary-base);--%NS%ds-list-item-enabled-color-subtext: var(--%NS%semantic-color-on-surface-subtle);--%NS%ds-list-item-enabled-color-subtitle: var(--%NS%semantic-color-on-surface-subtle);--%NS%ds-list-item-enabled-color-title: var(--%NS%semantic-color-on-surface-base);--%NS%ds-list-item-hover-color-background: var(--%NS%semantic-color-opacity-subtle-hover);--%NS%ds-list-item-hover-color-icon: var(--%NS%semantic-color-tertiary-base);--%NS%ds-list-item-hover-color-subtext: var(--%NS%semantic-color-on-surface-subtle);--%NS%ds-list-item-hover-color-subtitle: var(--%NS%semantic-color-on-surface-subtle);--%NS%ds-list-item-hover-color-title: var(--%NS%semantic-color-on-surface-base);--%NS%ds-list-item-selected-color-background: var(--%NS%semantic-color-opacity-subtle-selected);--%NS%ds-list-item-selected-color-icon: var(--%NS%semantic-color-tertiary-base);--%NS%ds-list-item-selected-color-subtext: var(--%NS%semantic-color-on-surface-subtle);--%NS%ds-list-item-selected-color-subtitle: var(--%NS%semantic-color-on-surface-subtle);--%NS%ds-list-item-selected-color-title: var(--%NS%semantic-color-on-surface-base);--%NS%ds-list-item-width: 100%;--%NS%ds-list-item-bg: var(--%NS%ds-list-item-enabled-color-background);--%NS%ds-list-item-color: var(--%NS%ds-list-item-enabled-color-title);--%NS%ds-list-item-subtitle-color: var(--%NS%ds-list-item-enabled-color-subtitle);--%NS%ds-list-item-subtext-color: var(--%NS%ds-list-item-enabled-color-subtext);align-items:center;background:var(--%NS%ds-list-item-bg);box-sizing:border-box;display:inline-flex;gap:var(--%NS%ds-list-item-space-inline);min-height:var(--%NS%ds-list-item-size-min-height);padding:var(--%NS%ds-list-item-space-padding-top, 0) var(--%NS%ds-list-item-space-padding-right, 0) var(--%NS%ds-list-item-space-padding-bottom, 0) var(--%NS%ds-list-item-space-padding-left, 0);width:var(--%NS%ds-list-item-width);color:var(--%NS%ds-list-item-color)}.ds-list-item.ds-list-item-selected{--%NS%ds-list-item-bg: var(--%NS%ds-list-item-selected-color-background);--%NS%ds-list-item-color: var(--%NS%ds-list-item-selected-color-title);--%NS%ds-list-item-subtitle-color: var(--%NS%ds-list-item-selected-color-subtitle);--%NS%ds-list-item-subtext-color: var(--%NS%ds-list-item-selected-color-subtext)}.ds-list-item.ds-list-item-selected .ds-list-end-slot .vn-icon{color:var(--%NS%ds-list-item-custom-color-icon, var(--%NS%ds-list-item-selected-color-icon))}.ds-list-item [slot=start]{display:inline-flex}.ds-list-item .ds-list-end-slot{--%NS%ds-list-item-end-slot-margin-left: auto;align-items:center;display:inline-flex;gap:var(--%NS%ds-list-item-space-inline);margin-left:var(--%NS%ds-list-item-end-slot-margin-left)}.ds-list-item .ds-list-end-slot .vn-icon{color:var(--%NS%ds-list-item-custom-color-icon, var(--%NS%ds-list-item-enabled-color-icon))}.ds-list-item .ds-list-end-slot:hover .vn-icon{color:var(--%NS%ds-list-item-custom-color-icon, var(--%NS%ds-list-item-hover-color-icon))}.ds-list-item .ds-list-end-slot:active .vn-icon{color:var(--%NS%ds-list-item-custom-color-icon, var(--%NS%ds-list-item-active-color-icon))}.ds-list-item-medium{--%NS%ds-list-item-space-padding-bottom: var(--%NS%semantic-spacing-container-padding-sm);--%NS%ds-list-item-space-padding-left: var(--%NS%semantic-spacing-container-padding-sm);--%NS%ds-list-item-space-padding-right: var(--%NS%semantic-spacing-container-padding-sm);--%NS%ds-list-item-space-padding-top: var(--%NS%semantic-spacing-container-padding-sm);--%NS%ds-list-item-space-stack: var(--%NS%semantic-spacing-stack-none)}.ds-list-item-medium .ds-list-tile-title{--%NS%ds-list-item-font-family: var(--%NS%semantic-typography-label-font-family, sans-serif);--%NS%ds-list-item-font-size: var(--%NS%semantic-typography-label-md-font-size);
21916--%NS%ds-list-item-font-weight: var(--%NS%semantic-typography-label-md-font-weight);--%NS%ds-list-item-line-height: var(--%NS%semantic-typography-label-md-line-height)}.ds-list-item-medium .ds-list-tile-title.ds-list-title-strong{--%NS%ds-list-item-font-family: var(--%NS%semantic-typography-label-font-family, sans-serif);--%NS%ds-list-item-font-size: var(--%NS%semantic-typography-label-md-strong-font-size);--%NS%ds-list-item-font-weight: var(--%NS%semantic-typography-label-md-strong-font-weight);--%NS%ds-list-item-line-height: var(--%NS%semantic-typography-label-md-strong-line-height)}.ds-list-item-medium .ds-list-tile-sub-title{--%NS%ds-list-item-font-family: var(--%NS%semantic-typography-label-font-family, sans-serif);--%NS%ds-list-item-font-size: var(--%NS%semantic-typography-label-sm-font-size);--%NS%ds-list-item-font-weight: var(--%NS%semantic-typography-label-sm-font-weight);--%NS%ds-list-item-line-height: var(--%NS%semantic-typography-label-sm-line-height)}.ds-list-item-medium-condensed{--%NS%ds-list-item-space-padding-bottom: var(--%NS%semantic-spacing-container-padding-xs);--%NS%ds-list-item-space-padding-left: var(--%NS%semantic-spacing-container-padding-sm);--%NS%ds-list-item-space-padding-right: var(--%NS%semantic-spacing-container-padding-sm);--%NS%ds-list-item-space-padding-top: var(--%NS%semantic-spacing-container-padding-xs);--%NS%ds-list-item-space-stack: var(--%NS%semantic-spacing-stack-none)}.ds-list-item-medium-condensed .ds-list-tile-title{--%NS%ds-list-item-font-family: var(--%NS%semantic-typography-label-font-family, sans-serif);--%NS%ds-list-item-font-size: var(--%NS%semantic-typography-label-md-font-size);--%NS%ds-list-item-font-weight: var(--%NS%semantic-typography-label-md-font-weight);--%NS%ds-list-item-line-height: var(--%NS%semantic-typography-label-md-line-height)}.ds-list-item-medium-condensed .ds-list-tile-title.ds-list-title-strong{--%NS%ds-list-item-font-family: var(--%NS%semantic-typography-label-font-family, sans-serif);--%NS%ds-list-item-font-size: var(--%NS%semantic-typography-label-md-strong-font-size);--%NS%ds-list-item-font-weight: var(--%NS%semantic-typography-label-md-strong-font-weight);--%NS%ds-list-item-line-height: var(--%NS%semantic-typography-label-md-strong-line-height)}.ds-list-item-medium-condensed .ds-list-tile-sub-title{--%NS%ds-list-item-font-family: var(--%NS%semantic-typography-label-font-family, sans-serif);--%NS%ds-list-item-font-size: var(--%NS%semantic-typography-label-sm-font-size);--%NS%ds-list-item-font-weight: var(--%NS%semantic-typography-label-sm-font-weight);--%NS%ds-list-item-line-height: var(--%NS%semantic-typography-label-sm-line-height)}.ds-list-item-large{--%NS%ds-list-item-space-padding-bottom: var(--%NS%semantic-spacing-container-padding-lg);--%NS%ds-list-item-space-padding-left: var(--%NS%semantic-spacing-container-padding-sm);--%NS%ds-list-item-space-padding-right: var(--%NS%semantic-spacing-container-padding-sm);--%NS%ds-list-item-space-padding-top: var(--%NS%semantic-spacing-container-padding-lg);--%NS%ds-list-item-space-stack: var(--%NS%semantic-spacing-stack-xs)}.ds-list-item-large .ds-list-tile-title{--%NS%ds-list-item-font-family: var(--%NS%semantic-typography-label-font-family, sans-serif);--%NS%ds-list-item-font-size: var(--%NS%semantic-typography-label-lg-font-size);--%NS%ds-list-item-font-weight: var(--%NS%semantic-typography-label-lg-font-weight);--%NS%ds-list-item-line-height: var(--%NS%semantic-typography-label-lg-line-height)}.ds-list-item-large .ds-list-tile-title.ds-list-title-strong{--%NS%ds-list-item-font-family: var(--%NS%semantic-typography-label-font-family, sans-serif);--%NS%ds-list-item-font-size: var(--%NS%semantic-typography-label-lg-strong-font-size);--%NS%ds-list-item-font-weight: var(--%NS%semantic-typography-label-lg-strong-font-weight);--%NS%ds-list-item-line-height: var(--%NS%semantic-typography-label-lg-strong-line-height)}.ds-list-item-large .ds-list-tile-sub-title{--%NS%ds-list-item-font-family: var(--%NS%semantic-typography-label-font-family, sans-serif);--%NS%ds-list-item-font-size: var(--%NS%semantic-typography-label-md-font-size);
21916--%NS%ds-list-item-font-weight: var(--%NS%semantic-typography-label-md-font-weight);--%NS%ds-list-item-line-height: var(--%NS%semantic-typography-label-md-line-height)}.ds-list-item-large-condensed{--%NS%ds-list-item-space-padding-bottom: var(--%NS%semantic-spacing-container-padding-sm);--%NS%ds-list-item-space-padding-left: var(--%NS%semantic-spacing-container-padding-sm);--%NS%ds-list-item-space-padding-right: var(--%NS%semantic-spacing-container-padding-sm);--%NS%ds-list-item-space-padding-top: var(--%NS%semantic-spacing-container-padding-sm);--%NS%ds-list-item-space-stack: var(--%NS%semantic-spacing-stack-xs)}.ds-list-item-large-condensed .ds-list-tile-title{--%NS%ds-list-item-font-family: var(--%NS%semantic-typography-label-font-family, sans-serif);--%NS%ds-list-item-font-size: var(--%NS%semantic-typography-label-lg-font-size);--%NS%ds-list-item-font-weight: var(--%NS%semantic-typography-label-lg-font-weight);--%NS%ds-list-item-line-height: var(--%NS%semantic-typography-label-lg-line-height)}.ds-list-item-large-condensed .ds-list-tile-title.ds-list-title-strong{--%NS%ds-list-item-font-family: var(--%NS%semantic-typography-label-font-family, sans-serif);--%NS%ds-list-item-font-size: var(--%NS%semantic-typography-label-lg-strong-font-size);--%NS%ds-list-item-font-weight: var(--%NS%semantic-typography-label-lg-strong-font-weight);--%NS%ds-list-item-line-height: var(--%NS%semantic-typography-label-lg-strong-line-height)}.ds-list-item-large-condensed .ds-list-tile-sub-title{--%NS%ds-list-item-font-family: var(--%NS%semantic-typography-label-font-family, sans-serif);--%NS%ds-list-item-font-size: var(--%NS%semantic-typography-label-md-font-size);--%NS%ds-list-item-font-weight: var(--%NS%semantic-typography-label-md-font-weight);--%NS%ds-list-item-line-height: var(--%NS%semantic-typography-label-md-line-height)}.ds-list-item-inverse{--%NS%ds-list-item-active-color-background: var(--%NS%semantic-color-opacity-subtle-active-inverse);--%NS%ds-list-item-active-color-icon: var(--%NS%semantic-color-tertiary-base-inverse);--%NS%ds-list-item-active-color-subtext: var(--%NS%semantic-color-on-surface-subtle-inverse);--%NS%ds-list-item-active-color-subtitle: var(--%NS%semantic-color-on-surface-subtle-inverse);--%NS%ds-list-item-active-color-title: var(--%NS%semantic-color-on-surface-base-inverse);--%NS%ds-list-item-enabled-color-background: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-list-item-enabled-color-icon: var(--%NS%semantic-color-tertiary-base-inverse);--%NS%ds-list-item-enabled-color-subtext: var(--%NS%semantic-color-on-surface-subtle-inverse);--%NS%ds-list-item-enabled-color-subtitle: var(--%NS%semantic-color-on-surface-subtle-inverse);--%NS%ds-list-item-enabled-color-title: var(--%NS%semantic-color-on-surface-base-inverse);--%NS%ds-list-item-hover-color-background: var(--%NS%semantic-color-opacity-subtle-hover-inverse);--%NS%ds-list-item-hover-color-icon: var(--%NS%semantic-color-tertiary-base-inverse);--%NS%ds-list-item-hover-color-subtext: var(--%NS%semantic-color-on-surface-subtle-inverse);--%NS%ds-list-item-hover-color-subtitle: var(--%NS%semantic-color-on-surface-subtle-inverse);--%NS%ds-list-item-hover-color-title: var(--%NS%semantic-color-on-surface-base-inverse);--%NS%ds-list-item-selected-color-background: var(--%NS%semantic-color-opacity-subtle-selected-inverse);--%NS%ds-list-item-selected-color-icon: var(--%NS%semantic-color-tertiary-base-inverse);--%NS%ds-list-item-selected-color-subtext: var(--%NS%semantic-color-on-surface-subtle-inverse);--%NS%ds-list-item-selected-color-subtitle: var(--%NS%semantic-color-on-surface-subtle-inverse);--%NS%ds-list-item-selected-color-title: var(--%NS%semantic-color-on-surface-base-inverse);--%NS%ds-list-item-bg: var(--%NS%ds-list-item-enabled-color-background);--%NS%ds-list-item-color: var(--%NS%ds-list-item-enabled-color-title);--%NS%ds-list-item-subtitle-color: var(--%NS%ds-list-item-enabled-color-subtitle);--%NS%ds-list-item-subtext-color: var(--%NS%ds-list-item-enabled-color-subtext)}.ds-list-item-inverse.ds-list-item-selected{--%NS%ds-list-item-bg: var(--%NS%ds-list-item-selected-color-background);--%NS%ds-list-item-color: var(--%NS%ds-list-item-selected-color-title);--%NS%ds-list-item-subtitle-color: var(--%NS%ds-list-item-selected-color-subtitle);--%NS%ds-list-item-subtext-color: var(--%NS%ds-list-item-selected-color-subtext)}.ds-list-item-interactive{cursor:pointer}@media(hover:hover){.ds-list-item-interactive:hover{--%NS%ds-list-item-bg: var(--%NS%ds-list-item-hover-color-background);--%NS%ds-list-item-color: var(--%NS%ds-list-item-hover-color-title);--%NS%ds-list-item-subtitle-color: var(--%NS%ds-list-item-hover-color-subtitle);--%NS%ds-list-item-subtext-color: var(--%NS%ds-list-item-hover-color-subtext)}}@media(hover:hover)and (pointer:fine){.ds-list-item-interactive:active{--%NS%ds-list-item-bg: var(--%NS%ds-list-item-active-color-background);--%NS%ds-list-item-color: var(--%NS%ds-list-item-active-color-title);--%NS%ds-list-item-subtitle-color: var(--%NS%ds-list-item-active-color-subtitle);--%NS%ds-list-item-subtext-color: var(--%NS%ds-list-item-active-color-subtext)}}.ds-list-item-interactive.ds-ios-active-fix:active{--%NS%ds-list-item-bg: var(--%NS%ds-list-item-active-color-background);--%NS%ds-list-item-color: var(--%NS%ds-list-item-active-color-title);--%NS%ds-list-item-subtitle-color: var(--%NS%ds-list-item-active-color-subtitle);--%NS%ds-list-item-subtext-color: var(--%NS%ds-list-item-active-color-subtext)}@media(hover:hover){.ds-list-item-interactive.ds-list-item-inverse:hover{--%NS%ds-list-item-bg: var(--%NS%ds-list-item-hover-color-background);--%NS%ds-list-item-color: var(--%NS%ds-list-item-hover-color-title);--%NS%ds-list-item-subtitle-color: var(--%NS%ds-list-item-hover-color-subtitle);--%NS%ds-list-item-subtext-color: var(--%NS%ds-list-item-hover-color-subtext)}}@media(hover:hover)and (pointer:fine){.ds-list-item-interactive.ds-list-item-inverse:active{--%NS%ds-list-item-bg: var(--%NS%ds-list-item-active-color-background);--%NS%ds-list-item-color: var(--%NS%ds-list-item-active-color-title);--%NS%ds-list-item-subtitle-color: var(--%NS%ds-list-item-active-color-subtitle);--%NS%ds-list-item-subtext-color: var(--%NS%ds-list-item-active-color-subtext)}}.ds-list-item-interactive.ds-list-item-inverse.ds-ios-active-fix:active{--%NS%ds-list-item-bg: var(--%NS%ds-list-item-active-color-background);--%NS%ds-list-item-color: var(--%NS%ds-list-item-active-color-title);--%NS%ds-list-item-subtitle-color: var(--%NS%ds-list-item-active-color-subtitle);--%NS%ds-list-item-subtext-color: var(--%NS%ds-list-item-active-color-subtext)}.ds-list-tile-text{align-items:stretch;display:inline-flex;flex-direction:column;flex:1;gap:var(--%NS%ds-list-item-space-stack);text-align:left}.ds-list-tile-title{font-family:var(--%NS%ds-list-item-font-family);font-size:var(--%NS%ds-list-item-font-size);
21916font-weight:var(--%NS%ds-list-item-font-weight);line-height:var(--%NS%ds-list-item-line-height);--%NS%ds-list-item-local-title-line-height: 1.15;-webkit-box-orient:vertical;color:var(--%NS%ds-list-item-color);display:-webkit-box;-webkit-line-clamp:2;overflow:hidden;line-height:var(--%NS%ds-list-item-local-title-line-height);text-overflow:ellipsis;word-break:break-word}.ds-list-tile-sub-title{font-family:var(--%NS%ds-list-item-font-family);font-size:var(--%NS%ds-list-item-font-size);font-weight:var(--%NS%ds-list-item-font-weight);line-height:var(--%NS%ds-list-item-line-height);color:var(--%NS%ds-list-item-subtitle-color)}.ds-list-tile-sub-text{--%NS%ds-list-item-font-family: var(--%NS%semantic-typography-label-font-family, sans-serif);--%NS%ds-list-item-font-size: var(--%NS%semantic-typography-label-sm-font-size);--%NS%ds-list-item-font-weight: var(--%NS%semantic-typography-label-sm-font-weight);--%NS%ds-list-item-line-height: var(--%NS%semantic-typography-label-sm-line-height);font-family:var(--%NS%ds-list-item-font-family);font-size:var(--%NS%ds-list-item-font-size);font-weight:var(--%NS%ds-list-item-font-weight);line-height:var(--%NS%ds-list-item-line-height);color:var(--%NS%ds-list-item-subtext-color)}.ds-list-tile-sub-title,.ds-list-tile-sub-text{-webkit-box-orient:vertical;display:-webkit-box;-webkit-line-clamp:2;overflow:hidden;text-overflow:ellipsis;word-break:break-word}a[ds-list-item]{color:inherit;text-decoration:none} 21917`], 21918 encapsulation: 2 21919 }), e; 21920 })(), wS = (() => { 21921 let e = class { 21922 constructor() { 21923 this.destroyRef = f(ze), this.selectionMode = Ne("single"), this.roleType = Ne(null), this.selectedItems = le([]), this.items = Ub(nl, { descendants: !0 }), this.supportsSelection = ne(() => { 21924 let t = this.roleType(); 21925 return t ? Lr[t].supportsSelection : !1; 21926 }), this.supportsInteraction = ne(() => { 21927 let t = this.roleType(), r = this.items().some((s) => s.isAnchor()); 21928 return t ? Lr[t].supportsInteraction || r : !1; 21929 }), this.ariaMultiSelectable = ne(() => !this.supportsSelection() || this.items().length === 0 ? null : this.selectionMode() === "multiselect" ? "true" : "false"), this.role = ne(() => { 21930 let t = this.roleType(); 21931 return t && Lr[t] ? Lr[t].parent : null; 21932 }), this.itemsChanges$ = Ol(this.items), this.hasInitialized = Ne(!1); 21933 } 21934 ngAfterViewInit() { 21935 this.itemsChanges$.pipe(Gu(this.items()), Hr(() => this.setupKeyManager()), Si(() => this.setupEventListeners()), he(this.destroyRef)).subscribe(); 21936 } 21937 ngOnDestroy() { 21938 this.keyManager?.destroy(); 21939 } 21940 setupClickListeners() { 21941 return Gi(...this.items().map((t) => t.itemClick$.pipe(Hr((r) => { 21942 this.supportsSelection() && this.selectItem(r), this.supportsInteraction() && this.keyManager.setActiveItem(r); 21943 })))); 21944 } 21945 setupFocusListeners() { 21946 return Gi(...this.items().map((t) => t.itemFocus$.pipe(Hr((r) => { 21947 this.supportsInteraction() && this.keyManager.setActiveItem(r); 21948 })))); 21949 } 21950 setupEventListeners() { 21951 return Gi(this.setupClickListeners(), this.setupFocusListeners()); 21952 } 21953 setupKeyManager() { 21954 let t = this.items().filter((r) => r.interactive()); 21955 this.keyManager && this.keyManager.destroy(), this.keyManager = new x_(t).withVerticalOrientation().withWrap(), t.length > 0 && (t.forEach((r) => r.setTabIndex(-1)), t[0]?.setTabIndex(0), this.supportsSelection() && !this.hasInitialized() && (this.hasInitialized.set(!0), t.forEach((r) => { 21956 r.selected() && this.selectItem(r); 21957 })), this.keyManager.change.pipe(he(this.destroyRef)).subscribe((r) => { 21958 r !== -1 && t.forEach((s, n) => { 21959 s.setTabIndex(n === r ? 0 : -1); 21960 }); 21961 })); 21962 } 21963 handleKeydown(t) { 21964 if (this.supportsInteraction() && (this.keyManager.onKeydown(t), ["Enter", "Space"].includes(t.code))) { 21965 let r = this.keyManager.activeItem; 21966 this.supportsSelection() && r && (this.selectItem(r), t.preventDefault(), t.stopPropagation()); 21967 } 21968 } 21969 selectItem(t) { 21970 if (!this.supportsSelection()) return; 21971 let r = this.selectedItems(), s = r.includes(t); 21972 if (!(this.selectionMode() === "single" && s && r.length === 1)) if (this.selectionMode() === "single") r.forEach((n) => n.selected.set(!1)), t.selected.set(!0), this.selectedItems.set([t]); 21973 else { 21974 let n = s ? r.filter((a) => a !== t) : [...r, t]; 21975 t.selected.set(!s), this.selectedItems.set(n); 21976 } 21977 } 21978 }; 21979 return e.ɵfac = function(i) { 21980 return new (i || e)(); 21981 }, e.ɵcmp = ge({ 21982 type: e, 21983 selectors: [["ds-list-group"]], 21984 contentQueries: function(i, t, r) { 21985 i & 1 && Pb(r, t.items, nl, 5), i & 2 && La(); 21986 }, 21987 hostVars: 2, 21988 hostBindings: function(i, t) { 21989 i & 1 && Ce("keydown", function(r) { 21990 return t.handleKeydown(r); 21991 }), i & 2 && Qe("role", t.role())("aria-multiselectable", t.ariaMultiSelectable()); 21992 }, 21993 inputs: { 21994 selectionMode: [1, "selectionMode"], 21995 roleType: [1, "roleType"], 21996 hasInitialized: [1, "hasInitialized"] 21997 }, 21998 outputs: { 21999 selectionMode: "selectionModeChange", 22000 roleType: "roleTypeChange", 22001 hasInitialized: "hasInitializedChange" 22002 }, 22003 ngContentSelectors: $O, 22004 decls: 1, 22005 vars: 0, 22006 template: function(i, t) { 22007 i & 1 && (_t(), Ke(0)); 22008 }, 22009 encapsulation: 2 22010 }), e; 22011 })(); 22012 })))(); 22013} 22014var _O, CS; 22015function NS() { 22016 return (NS = Z((() => { 22017 de(), rr(), wl(), Et(), Un(), Ht(), _O = ["svg"], CS = (() => { 22018 let e = class { 22019 constructor() { 22020 this.httpClient = f(Yu), this.destroyRef = f(ze), this.renderer = f(Ur), this.platform = f(Fa), this.displayMode = "svg"; 22021 } 22022 ngOnInit() { 22023 this.httpClient.get(this.image.src, { 22024 responseType: "text", 22025 transferCache: !0, 22026 context: E$() 22027 }).pipe(he(this.destroyRef)).subscribe({ 22028 next: (t) => { 22029 if (this.platform.isBrowser) { 22030 let r = new DOMParser().parseFromString(t, "image/svg+xml").getElementsByTagName("svg")[0]; 22031 r && (!r.hasAttribute("viewBox") && this.viewBox && r.setAttribute("viewBox", this.viewBox), this.displayMode === "svg-icon" && (this.setClass(r), this.setStyle(r))), this.renderer.appendChild(this.svg.nativeElement, r); 22032 } 22033 }, 22034 error: () => {} 22035 }); 22036 } 22037 setClass(t) { 22038 switch (this.renderer.addClass(t, "th-icon"), this.cssClass && this.cssClass.split(",").forEach((r) => { 22039 this.renderer.addClass(t, r.trim()); 22040 }), this.iconType) { 22041 case "stroke": 22042 this.renderer.addClass(t, "th-icon--stk"), this.defaultAnimation && this.renderer.addClass(t, "th-icon-animate-draw"); 22043 break; 22044 case "stroke--bold": 22045 this.renderer.addClass(t, "th-icon-stk"), this.renderer.addClass(t, "th-icon-stk--bold"); 22046 break; 22047 case "stroke--thin": 22048 this.renderer.addClass(t, "th-icon-stk"), this.renderer.addClass(t, "th-icon-stk--thin"); 22049 break; 22050 case "filled": this.renderer.addClass(t, "th-icon--fill"), this.defaultAnimation && this.renderer.addClass(t, "th-icon-animate-fill"); 22051 } 22052 switch (this.size) { 22053 case "big": 22054 this.renderer.addClass(t, "th-icon--lg"); 22055 break; 22056 case "small": this.renderer.addClass(t, "th-icon--sm"); 22057 } 22058 } 22059 setStyle(t) { 22060 this.image.height && this.renderer.setStyle(t, "height", `${this.image.height}px`), this.image.width && this.renderer.setStyle(t, "width", `${this.image.width}px`), this.customAnimation && !this.defaultAnimation && this.customAnimation.split(";").forEach((r) => { 22061 let s = r.split(":"); 22062 s?.length > 0 && this.renderer.setStyle(t, s[0].trim(), s[1]); 22063 }); 22064 } 22065 animate() { 22066 if (this.animationClass) { 22067 let t = this.animationClass; 22068 this.renderer.addClass(this.svg.nativeElement, t), this.svg.nativeElement.addEventListener(qr.AnimationEnd, () => this.svg.nativeElement.classList.remove(t), { once: !0 }); 22069 } 22070 } 22071 }; 22072 return e.ɵfac = function(i) { 22073 return new (i || e)(); 22074 }, e.ɵcmp = ge({ 22075 type: e, 22076 selectors: [["vn-svg"]], 22077 viewQuery: function(i, t) { 22078 if (i & 1 && js(_O, 5), i & 2) { 22079 let r; 22080 Ks(r = Us()) && (t.svg = r.first); 22081 } 22082 }, 22083 inputs: { 22084 containerClass: "containerClass", 22085 displayMode: "displayMode", 22086 image: "image",
22087 viewBox: "viewBox", 22088 defaultAnimation: "defaultAnimation", 22089 customAnimation: "customAnimation", 22090 iconType: "iconType", 22091 size: "size", 22092 cssClass: "cssClass", 22093 animationClass: "animationClass" 22094 }, 22095 decls: 2, 22096 vars: 1, 22097 consts: [["svg", ""], [ 22098 "id", 22099 "svg", 22100 3, 22101 "click", 22102 "ngClass" 22103 ]], 22104 template: function(i, t) { 22105 i & 1 && (ie(0, "div", 1, 0), Ce("click", function() { 22106 return t.animate(); 22107 }), te()), i & 2 && A("ngClass", t.containerClass); 22108 }, 22109 dependencies: [Vi], 22110 encapsulation: 2, 22111 changeDetection: 1 22112 }), e; 22113 })(); 22114 })))(); 22115} 22116function v3(e, i) { 22117 if (e & 1) { 22118 let t = qe(); 22119 ie(0, "vn-icon", 5), Ce("click", function() { 22120 return Ae(t), Pe(N().close()); 22121 }), te(); 22122 } 22123} 22124function S3(e, i) { 22125 if (e & 1) { 22126 let t = qe(); 22127 ie(0, "div", 4)(1, "span", 6), Ce("click", function() { 22128 return Ae(t), Pe(N().close()); 22129 }), Je(2), te()(); 22130 } 22131 if (e & 2) { 22132 let t = N(); 22133 P(2), Ma(" ", t.closeLinkText || t.commonMessages?.PopoverCloseText, " "); 22134 } 22135} 22136var MO, RO, TS, uu; 22137function kS() { 22138 return (kS = Z((() => { 22139 de(), rr(), Ht(), _l(), MO = [[[ 22140 "", 22141 "content", 22142 "" 22143 ]], [[ 22144 "", 22145 "buttons", 22146 "" 22147 ]]], RO = ["[content]", "[buttons]"], TS = new Te("POPPER_CONTROL_TOKEN"), uu = (() => { 22148 let e = class { 22149 constructor() { 22150 this.commonMessages = f(Ey), this.closeType = "link", this.onCloseLinkClick = It(); 22151 } 22152 close(t = !1) { 22153 this.content.hide(), this.onCloseLinkClick.emit(t); 22154 } 22155 }; 22156 return e.ɵfac = function(i) { 22157 return new (i || e)(); 22158 }, e.ɵcmp = ge({ 22159 type: e, 22160 selectors: [["vn-popper-content"]], 22161 viewQuery: function(i, t) { 22162 if (i & 1 && js(fy, 7), i & 2) { 22163 let r; 22164 Ks(r = Us()) && (t.content = r.first); 22165 } 22166 }, 22167 inputs: { 22168 closeType: "closeType", 22169 closeLinkText: "closeLinkText", 22170 cssClass: "cssClass", 22171 cssTextClass: "cssTextClass" 22172 }, 22173 outputs: { onCloseLinkClick: "onCloseLinkClick" }, 22174 features: [Pi([{ 22175 provide: TS, 22176 useExisting: e 22177 }])], 22178 ngContentSelectors: RO, 22179 decls: 7, 22180 vars: 4, 22181 consts: [ 22182 [ 22183 1, 22184 "ngxp__tooltip", 22185 3, 22186 "ngClass" 22187 ], 22188 [ 22189 "name", 22190 "theme-ex", 22191 "extraClass", 22192 "ui-icon ui-close", 22193 "size", 22194 "12" 22195 ], 22196 [3, "ngClass"], 22197 [1, "popper-buttons"], 22198 [1, "ngxp__close-link"], 22199 [ 22200 "name", 22201 "theme-ex", 22202 "extraClass", 22203 "ui-icon ui-close", 22204 "size", 22205 "12", 22206 3, 22207 "click" 22208 ], 22209 [ 22210 1, 22211 "popper-close-link", 22212 "dh", 22213 3, 22214 "click" 22215 ] 22216 ], 22217 template: function(i, t) { 22218 i & 1 && (_t(MO), ie(0, "float-ui-content", 0), U(1, v3, 1, 0, "vn-icon", 1), ie(2, "div", 2), Ke(3), te(), ie(4, "div", 3), Ke(5, 1), U(6, S3, 3, 1, "div", 4), te()()), i & 2 && (A("ngClass", t.cssClass), P(), W(t.closeType === "button" ? 1 : -1), P(), A("ngClass", t.cssTextClass), P(4), W(t.closeType === "link" ? 6 : -1)); 22219 }, 22220 dependencies: [ 22221 Vn, 22222 Vi, 22223 Py, 22224 fy, 22225 Wi 22226 ], 22227 encapsulation: 2, 22228 changeDetection: 1 22229 }), e; 22230 })(); 22231 })))(); 22232} 22233function Br(e) { 22234 return e?.ownerDocument?.defaultView || window; 22235} 22236function xS(e) {
22237 return e.parent && Object.getPrototypeOf(e.parent) ? e.frameElement : null; 22238} 22239function IS(e) { 22240 return pu() ? e instanceof HTMLElement || e instanceof Br(e).HTMLElement : !1; 22241} 22242function pu() { 22243 return typeof window < "u"; 22244} 22245function LO(e) { 22246 let { overflow: i, overflowX: t, overflowY: r, display: s } = getComputedStyle(e); 22247 return /auto|scroll|overlay|hidden|clip/.test(i + r + t) && !WO.has(s); 22248} 22249function b3(e) { 22250 return UO.has(DO(e)); 22251} 22252function BO(e) { 22253 return pu() ? e instanceof Node || e instanceof Br(e).Node : !1; 22254} 22255function DO(e) { 22256 return BO(e) ? (e.nodeName || "").toLowerCase() : "#document"; 22257} 22258function FO(e) { 22259 return !pu() || typeof ShadowRoot > "u" ? !1 : e instanceof ShadowRoot || e instanceof Br(e).ShadowRoot; 22260} 22261function zO(e) { 22262 return ((BO(e) ? e.ownerDocument : e.document) || window.document)?.documentElement; 22263} 22264function y3(e) { 22265 if (DO(e) === "html") return e; 22266 let i = e.assignedSlot || e.parentNode || FO(e) && e.host || zO(e); 22267 return FO(i) ? i.host : i; 22268} 22269function GO(e) { 22270 let i = y3(e); 22271 return b3(i) ? e.ownerDocument ? e.ownerDocument.body : e.body : IS(i) && LO(i) ? i : GO(i); 22272} 22273function hu(e, i = [], t = !0) { 22274 let r = GO(e), s = r === e.ownerDocument?.body, n = Br(r); 22275 if (s) { 22276 let a = xS(n); 22277 return i.concat(n, n.visualViewport || [], LO(r) ? r : [], a && t ? hu(a) : []); 22278 } 22279 return i.concat(r, hu(r, [], t)); 22280} 22281function VO(e, i) { 22282 return e.x === i.x && e.y === i.y && e.width === i.width && e.height === i.height; 22283} 22284function OS(e) { 22285 return pu() ? e instanceof Element || e instanceof Br(e).Element : !1; 22286} 22287function PS(e) { 22288 return OS(e) ? e : e.contextElement; 22289} 22290function w3(e) { 22291 let i = getComputedStyle(e), t = parseFloat(i.width) || 0, r = parseFloat(i.height) || 0, s = IS(e), n = s ? e.offsetWidth : t, a = s ? e.offsetHeight : r, o = ll(t) !== n || ll(r) !== a; 22292 return o && (t = n, r = a), { 22293 width: t, 22294 height: r, 22295 $: o 22296 }; 22297} 22298function AS(e) { 22299 let i = PS(e); 22300 if (!IS(i)) return al(1); 22301 let t = i.getBoundingClientRect(), { width: r, height: s, $: n } = w3(i), a = (n ? ll(t.width) : t.width) / r, o = (n ? ll(t.height) : t.height) / s; 22302 return (!a || !Number.isFinite(a)) && (a = 1), (!o || !Number.isFinite(o)) && (o = 1), { 22303 x: a, 22304 y: o 22305 }; 22306} 22307function E3(e, i = !1, t) { 22308 return !t || i && t !== Br(e) ? !1 : i; 22309} 22310function C3() { 22311 return typeof CSS > "u" || !CSS.supports ? !1 : CSS.supports("-webkit-backdrop-filter", "none"); 22312} 22313function N3(e) { 22314 let i = Br(e); 22315 return !C3() || !i.visualViewport ? jO : { 22316 x: i.visualViewport.offsetLeft, 22317 y: i.visualViewport.offsetTop 22318 }; 22319} 22320function T3(e) { 22321 let { x: i, y: t, width: r, height: s } = e; 22322 return { 22323 width: r, 22324 height: s, 22325 top: t, 22326 left: i, 22327 right: i + r, 22328 bottom: t + s, 22329 x: i, 22330 y: t 22331 }; 22332} 22333function HO(e, i = !1, t = !1, r) { 22334 let s = e.getBoundingClientRect(), n = PS(e), a = al(1); 22335 i && (r ? OS(r) && (a = AS(r)) : a = AS(e)); 22336 let o = E3(n, t, r) ? N3(n) : al(0), l = (s.left + o.x) / a.x, c = (s.top + o.y) / a.y, d = s.width / a.x, u = s.height / a.y; 22337 if (n) { 22338 let h = Br(n), g = r && OS(r) ? Br(r) : r, p = h, m = xS(p); 22339 for (; m && r && g !== p;) { 22340 let S = AS(m), b = m.getBoundingClientRect(), v = getComputedStyle(m), y = b.left + (m.clientLeft + parseFloat(v.paddingLeft)) * S.x, w = b.top + (m.clientTop + parseFloat(v.paddingTop)) * S.y; 22341 l *= S.x, c *= S.y, d *= S.x, u *= S.y, l += y, c += w, p = Br(m), m = xS(p); 22342 } 22343 } 22344 return T3({ 22345 width: d, 22346 height: u, 22347 x: l, 22348 y: c 22349 }); 22350} 22351function k3(e, i) { 22352 let t = null, r, s = zO(e); 22353 function n() { 22354 clearTimeout(r), t?.disconnect(), t = null; 22355 } 22356 function a(o = !1, l = 1) { 22357 n();
22358 let c = e.getBoundingClientRect(), { left: d, top: u, width: h, height: g } = c; 22359 if (o || i(), !h || !g) return; 22360 let p = ol(u), m = ol(s.clientWidth - (d + h)), S = ol(s.clientHeight - (u + g)), b = ol(d), v = { 22361 rootMargin: `${-p}px ${-m}px ${-S}px ${-b}px`, 22362 threshold: YO(0, KO(1, l)) || 1 22363 }, y = !0; 22364 function w(T) { 22365 let O = T[0]?.intersectionRatio; 22366 if (O !== l) { 22367 if (!y) return a(); 22368 O ? a(!1, O) : r = setTimeout(() => { 22369 a(!1, 1e-7); 22370 }, 1e3); 22371 } 22372 O === 1 && !VO(c, e.getBoundingClientRect()) && a(), y = !1; 22373 } 22374 try { 22375 t = new IntersectionObserver(w, J(C({}, v), { root: s.ownerDocument })); 22376 } catch { 22377 t = new IntersectionObserver(w, v); 22378 } 22379 t.observe(e); 22380 } 22381 return a(!0), n; 22382} 22383function x3(e, i, t, r = {}) { 22384 let { ancestorScroll: s = !0, ancestorResize: n = !0, elementResize: a = typeof ResizeObserver == "function", layoutShift: o = typeof IntersectionObserver == "function", animationFrame: l = !1 } = r, c = PS(e), d = s || n ? [...c ? hu(c) : [], ...hu(i)] : []; 22385 d.forEach((b) => { 22386 s && b.addEventListener("scroll", t, { passive: !0 }), n && b.addEventListener("resize", t); 22387 }); 22388 let u = c && o ? k3(c, t) : null, h = -1, g = null; 22389 a && (g = new ResizeObserver(([b]) => { 22390 b && b.target === c && g && (g.unobserve(i), cancelAnimationFrame(h), h = requestAnimationFrame(() => { 22391 g?.observe(i); 22392 })), t(); 22393 }), c && !l && g.observe(c), g.observe(i)); 22394 let p, m = l ? HO(e) : null; 22395 l && S(); 22396 function S() { 22397 let b = HO(e); 22398 m && !VO(m, b) && t(), m = b, p = requestAnimationFrame(S); 22399 } 22400 return t(), () => { 22401 d.forEach((b) => { 22402 s && b.removeEventListener("scroll", t), n && b.removeEventListener("resize", t); 22403 }), u?.(), g?.disconnect(), g = null, l && cancelAnimationFrame(p); 22404 }; 22405} 22406function I3(e, i) { 22407 return MS[`${e}${i}`] ?? MS.topmiddle; 22408} 22409function O3(e, i) { 22410 if (e & 1 && (Nt(0, "span", 7), Je(1), ft()), e & 2) { 22411 let t = N(2); 22412 P(), gt(t.tooltipTitle()); 22413 } 22414} 22415function P3(e, i) { 22416 if (e & 1) { 22417 let t = qe(); 22418 Nt(0, "div", 3)(1, "div", 4)(2, "div", 5)(3, "div", 6), Ke(4), U(5, O3, 2, 1, "span", 7), ft(), Ke(6, 1), ft(), Nt(7, "div", 8), Lb("click", function(r) { 22419 return Ae(t), Pe(N().closeTooltip(r)); 22420 })("keydown", function(r) { 22421 return Ae(t), Pe(N().handleKeydown(r)); 22422 }), Ke(8, 2), ft()(), Ke(9, 3), ft(); 22423 } 22424 if (e & 2) { 22425 let t = N(); 22426 P(3), bl("id", t.tooltipId() + "-title"), P(2), W(t.tooltipTitle() ? 5 : -1); 22427 } 22428} 22429function A3(e, i) { 22430 e & 1 && Ke(0, 4); 22431} 22432var al, UO, WO, jO, ol, YO, KO, ll, qO, XO, $S, _S, JO, QO, ZO, mu, Bi, eP, Ia, Dr, MS, tP, iP, RS, rP, LS; 22433function BS() { 22434 return (BS = Z((() => { 22435 Re(), de(), Ye(), Et(), Un(), st(), ks(), op(), al = (e) => ({ 22436 x: e, 22437 y: e 22438 }), UO = /* @__PURE__ */ new Set([ 22439 "html", 22440 "body", 22441 "#document" 22442 ]), WO = /* @__PURE__ */ new Set(["inline", "contents"]), jO = al(0), ol = Math.floor, YO = Math.max, KO = Math.min, ll = Math.round, qO = class { 22443 constructor(e, i) { 22444 this._destroyed = new Xe(), this._intersectionSubject = new Xe(), this._elementObservables = /* @__PURE__ */ new Map(), i && (this._intersectionObserver = new i((t) => this._intersectionSubject.next(t), e)); 22445 } 22446 observe(e) { 22447 return this._elementObservables.has(e) || this._elementObservables.set(e, new Rn((i) => { 22448 let t = this._intersectionSubject.subscribe(i); 22449 return this._intersectionObserver?.observe(e), () => { 22450 this._intersectionObserver?.unobserve(e), t.unsubscribe(), this._elementObservables.delete(e); 22451 }; 22452 }).pipe(We((i) => i.some((t) => t.target === e)), r$({ 22453 bufferSize: 1, 22454 refCount: !0 22455 }), bi(this._destroyed))), this._elementObservables.get(e); 22456 } 22457 destroy() { 22458 this._destroyed.next(), this._destroyed.complete(), this._intersectionSubject.complete(), this._elementObservables.clear(); 22459 } 22460 }, XO = (() => { 22461 let e = class { 22462 constructor() { 22463 this._intersectionObserverCtor = f(S$), this._observers = /* @__PURE__ */ new Map(); 22464 } 22465 ngOnDestroy() { 22466 for (let [, t] of this._observers) t.destroy(); 22467 this._observers.clear(); 22468 } 22469 observe(t, r) { 22470 return this._observers.has(r) || this._observers.set(r, new qO(r, this._intersectionObserverCtor)), this._observers.get(r).observe(t); 22471 } 22472 }; 22473 return e.ɵfac = function(i) { 22474 return new (i || e)(); 22475 }, e.ɵprov = R({ 22476 token: e, 22477 factory: e.ɵfac, 22478 providedIn: "root" 22479 }), e; 22480 })(), $S = new Te("OverlayRef with data"), _S = 1e4, JO = 8, QO = 16, ZO = .5, mu = (() => { 22481 let e = class { 22482 set tooltipToggle(t) { 22483 this.tooltipToggleSignal.set(t), this.overlayRef && (t ? this.openTooltip() : this.closeTooltip()); 22484 } 22485 constructor() {
22486 this._overlay = f(w_), this._injector = f(ui), this._vcr = f(Fu), this._destroyRef = f(ze), this._sharedIntersectionObserver = f(XO), this._scrollDispatcher = f(N_), this._ariaDescriber = f(C_), this._focusMonitor = f(k_), this._tagName = f(kb, { optional: !0 }), this._timerService = f(Ui), this._document = f(vi), this.elementRef = f(di), this._isVisible = le(!1), this._isShown = le(!1), this.tooltipToggleSignal = le(!1), this._currentTooltipText = le(null), this.isKeyboardFocused = le(!1), this._isVisible$ = Ol(this._isVisible), this._positionUpdateCleanups = h$, this.closeOutsideViewport = ce(!1, { transform: gr }), this.autoOpen = ce(!1, { transform: gr }), this.fullWidth = ce(!1, { transform: gr }), this.position = ce("top"), this.arrowPosition = ce("start"), this.autoCloseTime = ce(_S), this.content = ce(void 0, { alias: "dsTooltipTriggerFor" }), this.closeOnScroll = ce(!1, { transform: gr }), this.hasBackdrop = ce(!1, { transform: gr }), this.closeOnInteraction = ce(!1, { transform: gr }), this.tooltipCustomClass = ce(""), this.interactive = ce(!1, { transform: gr }), this._position = ne(() => this.fullWidth() && this.position() !== "top" && this.position() !== "bottom" ? (console.warn("Invalid position for full width, defaulting to top"), "top") : this.position()), this.dsTooltipTriggerForContext = ce(null), this.tooltipToggleChange = It(), zi(() => { 22487 let t = this._isVisible(), r = this.autoOpen(), s = this._isShown(), n = this.tooltipToggleSignal(); 22488 t && (n || r && !s) && (n || this.tooltipToggleSignal.set(!0), s || Hu(() => this.initializeAutoOpen(r))); 22489 }); 22490 } 22491 ngOnInit() { 22492 this.overlayRef = this.createOverlay(), this._sharedIntersectionObserver.observe(this.elementRef.nativeElement, { threshold: 1 }).pipe(he(this._destroyRef)).subscribe((t) => { 22493 t?.[0] && this._isVisible.set(t[0].isIntersecting); 22494 }), this.listenToOverlayState(), this._focusMonitor.monitor(this.elementRef.nativeElement, !0).pipe(he(this._destroyRef)).subscribe((t) => { 22495 this.isKeyboardFocused.set(t === "keyboard"); 22496 }); 22497 } 22498 ngOnDestroy() { 22499 this._autoCloseTimeout && this._timerService.clearTimeout(this._autoCloseTimeout), this._timerService.clearTimeout(this._positionRecalcTimeout); 22500 try { 22501 this._positionUpdateCleanups(); 22502 } catch {} 22503 this.overlayRef?.dispose(); 22504 } 22505 isButton() { 22506 return this._tagName === "button"; 22507 } 22508 toggleTooltip() { 22509 this.overlayRef?.hasAttached() ? (this.tooltipToggleSignal.set(!1), this.closeTooltip()) : (this.tooltipToggleSignal.set(!0), this.openTooltip()); 22510 } 22511 createOverlay() { 22512 let t = this._scrollDispatcher.getAncestorScrollContainers(this.elementRef), r = I3(this._position(), this.arrowPosition()), s = this._overlay.position().flexibleConnectedTo(this.elementRef).withPositions([r]).withFlexibleDimensions(!1).withViewportMargin(JO).withPush(!0).withScrollableContainers(t), n = this.closeOnScroll() ? this._overlay.scrollStrategies.close() : this._overlay.scrollStrategies.reposition({ scrollThrottle: QO }), a = []; 22513 return this.fullWidth() && a.push("ds-tooltip-full-width", `ds-tooltip-${this._position()}`), this.tooltipCustomClass() && a.push(this.tooltipCustomClass()), this._overlay.create(J(C({ 22514 positionStrategy: s, 22515 scrollStrategy: n, 22516 hasBackdrop: this.hasBackdrop() 22517 }, this.hasBackdrop() && { backdropClass: "cdk-overlay-transparent-backdrop" }), { panelClass: a })); 22518 } 22519 initializeAutoOpen(t) { 22520 Dn(() => { 22521 this.overlayRef?.hasAttached() || (this.openTooltip(), this._timerService.clearTimeout(this._positionRecalcTimeout), this._positionRecalcTimeout = this._timerService.setTimeout(() => this.refreshPosition(), 0, { serverMode: "omit" })); 22522 }, { injector: this._injector }), t && this.scheduleAutoClose(this.autoCloseTime() ?? _S); 22523 } 22524 listenToOverlayState() { 22525 this.overlayRef && (this.overlayRef.attachments().pipe(he(this._destroyRef)).subscribe(() => { 22526 this.tooltipToggleChange.emit({ 22527 isTooltipOpen: !0, 22528 source: "overlayAttachment" 22529 }); 22530 }), this.overlayRef.detachments().pipe(he(this._destroyRef)).subscribe(() => { 22531 let t = this._currentTooltipText(); 22532 t && !this.interactive() && (this._ariaDescriber.removeDescription(this.elementRef.nativeElement, t), this._currentTooltipText.set(null)), this.tooltipToggleSignal.set(!1), this.tooltipToggleChange.emit({ 22533 isTooltipOpen: !1, 22534 source: "overlayDetachment" 22535 }); 22536 })); 22537 } 22538 getRequiredElements() { 22539 let t = this.overlayRef?.overlayElement; 22540 if (!t) return; 22541 let r = t.querySelector(".ds-tooltip-arrow"); 22542 if (!r) return; 22543 let s = t.querySelector("ds-tooltip-content")?.getBoundingClientRect(); 22544 if (s) return { 22545 arrowElement: r, 22546 tooltipContent: s, 22547 targetRect: this.elementRef.nativeElement.getBoundingClientRect(), 22548 arrowSize: r.getBoundingClientRect() 22549 }; 22550 } 22551 refreshPosition() { 22552 this.overlayRef?.hasAttached() && (this.overlayRef.updatePosition(), this.compensateBottomAnchorDrift(), this.adjustArrowPosition()); 22553 } 22554 compensateBottomAnchorDrift() { 22555 let t = this.overlayRef?.overlayElement, r = this.overlayRef?.hostElement; 22556 if (!t?.style.bottom || !r) return; 22557 let s = parseFloat(t.style.bottom); 22558 if (Number.isNaN(s)) return; 22559 let n = r.getBoundingClientRect().bottom - this._document.documentElement.clientHeight; 22560 Math.abs(n) < ZO || (t.style.bottom = `${s + n}px`); 22561 } 22562 adjustArrowPosition() { 22563 let t = this.getRequiredElements(); 22564 if (!t) return; 22565 let { arrowElement: r, tooltipContent: s, targetRect: n, arrowSize: a } = t, o = this._position(); 22566 if (r instanceof HTMLElement) { 22567 if (o === "top" || o === "bottom") { 22568 let l = n.left + n.width / 2 - s.left - a.width / 2, c = a.width + 2 * Ia; 22569 if (s.width < c) { 22570 let d = (s.width - a.width) / 2; 22571 r.style.left = `${Math.max(d, 0)}px`; 22572 } else l = Math.max(l, Ia), l = Math.min(l, s.width - Dr - Ia), r.style.left = `${l}px`; 22573 r.style.top = ""; 22574 } else if (o === "left" || o === "right") { 22575 let l = n.top + n.height / 2 - s.top - a.height / 2, c = a.height + 2 * Ia; 22576 if (s.height < c) { 22577 let d = (s.height - a.height) / 2; 22578 r.style.top = `${Math.max(d, 0)}px`; 22579 } else r.style.top = `${l}px`; 22580 r.style.left = ""; 22581 } 22582 } 22583 } 22584 scheduleAutoClose(t) { 22585 t !== 0 && (this._autoCloseTimeout = this._timerService.setTimeout(() => { 22586 this.overlayRef?.hasAttached() && this.closeTooltip(); 22587 }, t, { serverMode: "omit" })); 22588 } 22589 openTooltip() { 22590 let t = this.content(); 22591 if (this.overlayRef?.hasAttached() || !t || !this.overlayRef) return; 22592 let r = ui.create({ 22593 providers: [{ 22594 provide: $S, 22595 useValue: { 22596 ref: this.overlayRef, 22597 data: { 22598 position: this._position(), 22599 arrowPosition: this.arrowPosition() 22600 } 22601 } 22602 }], 22603 parent: this._injector 22604 }), s = new E_(t, this._vcr, this.dsTooltipTriggerForContext(), r); 22605 this.overlayRef?.attach(s); 22606 let n = this.overlayRef?.overlayElement.querySelector("ds-tooltip-content")?.querySelector(".ds-tooltip-title"); 22607 if (n && !this.interactive() && (this._ariaDescriber.describe(this.elementRef.nativeElement, n), this._currentTooltipText.set(n)), !this.overlayRef) return; 22608 let a = () =>
22608 bi(this.overlayRef.detachments()), o = Bn(window, "scroll", { 22609 passive: !0, 22610 capture: !0 22611 }), l = []; 22612 this.closeOnInteraction() && l.push(this.overlayRef.outsidePointerEvents()), this.hasBackdrop() && l.push(this.overlayRef.backdropClick()), this.closeOutsideViewport() && this._isVisible$.pipe(er(), a(), he(this._destroyRef)).subscribe((c) => { 22613 c || this.closeTooltip(); 22614 }), this.closeOnScroll() && l.push(o), Gi(...l).pipe(er(), a(), he(this._destroyRef)).subscribe(() => { 22615 this.closeTooltip(); 22616 }), this._positionUpdateCleanups = x3(this.elementRef.nativeElement, this.overlayRef.overlayElement, () => this.refreshPosition()), this._isShown() || this._isShown.set(!0), this.refreshPosition(); 22617 } 22618 closeTooltip() { 22619 this.overlayRef?.hasAttached() && this.overlayRef.detach(); 22620 try { 22621 this._positionUpdateCleanups(); 22622 } catch {} 22623 } 22624 }; 22625 return e.ɵfac = function(i) { 22626 return new (i || e)(); 22627 }, e.ɵdir = ci({ 22628 type: e, 22629 selectors: [[ 22630 "", 22631 "dsTooltipTriggerFor", 22632 "" 22633 ]], 22634 hostVars: 2, 22635 hostBindings: function(i, t) { 22636 i & 1 && Ce("click", function() { 22637 return t.toggleTooltip(); 22638 }), i & 2 && Qe("aria-haspopup", t.interactive() ? "dialog" : null)("aria-expanded", t.interactive() && t.isButton() ? t.tooltipToggleSignal() : null); 22639 }, 22640 inputs: { 22641 closeOutsideViewport: [1, "closeOutsideViewport"], 22642 autoOpen: [1, "autoOpen"], 22643 fullWidth: [1, "fullWidth"], 22644 position: [1, "position"], 22645 arrowPosition: [1, "arrowPosition"], 22646 autoCloseTime: [1, "autoCloseTime"], 22647 content: [ 22648 1, 22649 "dsTooltipTriggerFor", 22650 "content" 22651 ], 22652 closeOnScroll: [1, "closeOnScroll"], 22653 hasBackdrop: [1, "hasBackdrop"], 22654 closeOnInteraction: [1, "closeOnInteraction"], 22655 tooltipCustomClass: [1, "tooltipCustomClass"], 22656 interactive: [1, "interactive"], 22657 dsTooltipTriggerForContext: [1, "dsTooltipTriggerForContext"], 22658 tooltipToggle: "tooltipToggle" 22659 }, 22660 outputs: { tooltipToggleChange: "tooltipToggleChange" } 22661 }), e; 22662 })(), Bi = 11, eP = 20, Ia = 8, Dr = eP / 2 + Ia, MS = { 22663 bottomstart: { 22664 offsetY: Bi, 22665 offsetX: -Dr, 22666 originX: "center", 22667 originY: "bottom", 22668 overlayX: "start", 22669 overlayY: "top" 22670 }, 22671 bottomend: { 22672 offsetY: Bi, 22673 offsetX: Dr, 22674 originX: "center", 22675 originY: "bottom", 22676 overlayX: "end", 22677 overlayY: "top" 22678 }, 22679 bottommiddle: { 22680 offsetY: Bi, 22681 originX: "center", 22682 originY: "bottom", 22683 overlayX: "center", 22684 overlayY: "top" 22685 }, 22686 topstart: { 22687 offsetY: -Bi, 22688 offsetX: -Dr, 22689 originX: "center", 22690 originY: "top", 22691 overlayX: "start", 22692 overlayY: "bottom" 22693 }, 22694 topend: { 22695 offsetY: -Bi, 22696 offsetX: Dr, 22697 originX: "center", 22698 originY: "top", 22699 overlayX: "end", 22700 overlayY: "bottom" 22701 }, 22702 topmiddle: { 22703 offsetY: -Bi, 22704 originX: "center", 22705 originY: "top", 22706 overlayX: "center", 22707 overlayY: "bottom" 22708 }, 22709 leftstart: { 22710 offsetX: -Bi, 22711 offsetY: -Dr, 22712 originX: "start", 22713 originY: "center", 22714 overlayX: "end", 22715 overlayY: "top" 22716 }, 22717 leftend: { 22718 offsetX: -Bi, 22719 offsetY: Dr, 22720 originX: "start", 22721 originY: "center", 22722 overlayX: "end", 22723 overlayY: "bottom" 22724 }, 22725 leftmiddle: { 22726 offsetX: -Bi, 22727 originX: "start", 22728 originY: "center", 22729 overlayX: "end", 22730 overlayY: "center" 22731 }, 22732 rightstart: { 22733 offsetX: Bi, 22734 offsetY: -Dr, 22735 originX: "end", 22736 originY: "center", 22737 overlayX: "start", 22738 overlayY: "top" 22739 }, 22740 rightend: { 22741 offsetX: Bi, 22742 offsetY: Dr, 22743 originX: "end", 22744 originY: "center", 22745 overlayX: "start", 22746 overlayY: "bottom" 22747 }, 22748 rightmiddle: { 22749 offsetX: Bi, 22750 originX: "end", 22751 originY: "center", 22752 overlayX: "start", 22753 overlayY: "center" 22754 } 22755 }, tP = [ 22756 [[ 22757 "", 22758 "slot", 22759 "title" 22760 ]], 22761 [[ 22762 "", 22763 "slot", 22764 "description" 22765 ]], 22766 [[ 22767 "", 22768 "slot", 22769 "close" 22770 ]], 22771 [[ 22772 "", 22773 "slot", 22774 "action" 22775 ]], 22776 "*" 22777 ], iP = [ 22778 "[slot=title]", 22779 "[slot=description]", 22780 "[slot=close]", 22781 "[slot=action]", 22782 "*" 22783 ], RS = (() => { 22784 let e = class { 22785 constructor() { 22786 this._tooltipTrigger = f(mu), this._elementRef = f(di), this._destroyRef = f(ze), this._lastKeyWasTab = le(!1), this.id = Qb("ds-tooltip-"), this.overlay
22786= f($S), this.inverse = Ne(!1), this.variant = Ne("neutral"), this.fullWidth = ce(!1, { transform: gr }), this.fullWidthMode = ce("fullwidthMargin"), this.customTooltip = ce(!1, { transform: gr }), this.interactive = ne(() => this._tooltipTrigger.interactive()), this.tooltipTitle = ce(""), this.outerContainerClasses = ne(() => { 22787 let t = `ds-tooltip-${this.overlay.data.position}`, r = `ds-tooltip-arrow-${this.overlay.data.arrowPosition}`, s = this.inverse() ? "ds-tooltip-inverse" : "", n = this.fullWidthMode() === "fullwidthMargin" ? "ds-tooltip-fullwidth-margin" : "", a = this.overlay.data.position === "left" || this.overlay.data.position === "right" ? "ds-tooltip-arrow-middle" : r; 22788 return `ds-tooltip-outer-container ds-tooltip-${this.variant()} ${t} ${a} ${n} ${s}`; 22789 }), this.closed = It(), this.role = ne(() => this.interactive() ? "dialog" : "tooltip"); 22790 } 22791 ngAfterViewInit() { 22792 this.focusFirstElement(); 22793 } 22794 focusFirstElement() { 22795 if (this.interactive() && this._tooltipTrigger.isKeyboardFocused()) { 22796 let t = this._elementRef.nativeElement.querySelector("button:not([disabled]), a:not([tabindex=\"-1\"])"); 22797 t && setTimeout(() => { 22798 t.focus(); 22799 }, 0); 22800 } 22801 } 22802 handleFocusOut(t) { 22803 if (!this.interactive()) { 22804 this._lastKeyWasTab.set(!1); 22805 return; 22806 } 22807 let r = t.relatedTarget, s = !r || !this._elementRef.nativeElement.contains(r), n = r && this._tooltipTrigger.elementRef.nativeElement.contains(r); 22808 if (s && !n && this._lastKeyWasTab()) { 22809 let a = setTimeout(() => { 22810 this.closeTooltip(t); 22811 }, 0); 22812 this._destroyRef.onDestroy(() => clearTimeout(a)); 22813 } 22814 this._lastKeyWasTab.set(!1); 22815 } 22816 onActionClick(t) { 22817 t.target.closest("[dsTooltipClose]") && this.closeTooltip(t); 22818 } 22819 closeTooltip(t) { 22820 this.overlay && (t.stopPropagation(), this.closed.emit({ 22821 type: t.type, 22822 source: "close" 22823 }), this._tooltipTrigger.tooltipToggleChange.emit({ 22824 isTooltipOpen: !1, 22825 source: "close" 22826 }), this.interactive() && setTimeout(() => { 22827 this._tooltipTrigger.elementRef.nativeElement?.focus(); 22828 }, 0), this.overlay.ref.detach()); 22829 } 22830 handleKeydown(t) { 22831 if (this._lastKeyWasTab.set(t.key === "Tab"), t.key === "Escape") { 22832 t.preventDefault(), this.closeTooltip(t); 22833 return; 22834 } 22835 (t.key === "Enter" || t.key === " ") && t.target.closest("[dsTooltipClose]") && (t.preventDefault(), this.closeTooltip(t)); 22836 } 22837 tooltipId() { 22838 return this.id; 22839 } 22840 getThemeableProperties() { 22841 return { 22842 variant: this.variant, 22843 inverse: this.inverse 22844 }; 22845 } 22846 }; 22847 return e.ɵfac = function(i) { 22848 return new (i || e)(); 22849 }, e.ɵcmp = ge({ 22850 type: e, 22851 selectors: [["ds-tooltip-content"]], 22852 hostVars: 3, 22853 hostBindings: function(i, t) { 22854 i & 1 && Ce("click", function(r) { 22855 return t.onActionClick(r); 22856 })("keydown", function(r) { 22857 return t.handleKeydown(r); 22858 })("focusout", function(r) { 22859 return t.handleFocusOut(r); 22860 }), i & 2 && Qe("customTooltip", t.customTooltip())("role", t.role())("aria-labelledby", t.role() === "dialog" ? t.tooltipId() + "-title" : null); 22861 }, 22862 inputs: { 22863 inverse: [1, "inverse"], 22864 variant: [1, "variant"], 22865 fullWidth: [1, "fullWidth"], 22866 fullWidthMode: [1, "fullWidthMode"], 22867 customTooltip: [1, "customTooltip"], 22868 tooltipTitle: [1, "tooltipTitle"] 22869 }, 22870 outputs: { 22871 inverse: "inverseChange", 22872 variant: "variantChange", 22873 closed: "closed" 22874 }, 22875 features: [Pi([{ 22876 provide: Nr, 22877 useExisting: e 22878 }])], 22879 ngContentSelectors: iP, 22880 decls: 6, 22881 vars: 3, 22882 consts: [ 22883 [1, "ds-tooltip-arrow"], 22884 [ 22885 "xmlns", 22886 "http://www.w3.org/2000/svg", 22887 "width", 22888 "20", 22889 "height", 22890 "11", 22891 "viewBox", 22892 "0 0 20 11" 22893 ], 22894 [ 22895 "d", 22896 "M11.5364 10.1563C10.7369 11.1158 9.26315 11.1158 8.46356 10.1563L0 0L20 0L11.5364 10.1563Z", 22897 "fill", 22898 "currentColor" 22899 ], 22900 [1, "ds-tooltip-container"], 22901 [1, "ds-tooltip-text-container"], 22902 [1, "ds-tooltip-text"], 22903 [ 22904 1, 22905 "ds-tooltip-title", 22906 3, 22907 "id" 22908 ], 22909 [1, "sr-only"], 22910 [ 22911 1, 22912 "ds-tooltip-close-button", 22913 3, 22914 "click", 22915 "keydown" 22916 ] 22917 ], 22918 template: function(i, t) { 22919 i & 1 && (_t(tP), Nt(0, "div")(1, "span", 0), Ob(), Nt(2, "svg", 1), br(3, "path", 2), ft()(), U(4, P3, 10, 2, "div", 3)(5, A3, 1, 0), ft()), i & 2 && (Le(t.outerContainerClasses()), P(4), W(t.customTooltip() ? 5 : 4)); 22920 }, 22921 styles: [`.cdk-overlay-container,.cdk-global-overlay-wrapper{--%NS%ds-overlay-container-width: 100%;--%NS%ds-overlay-container-height: 100%;height:var(--%NS%ds-overlay-container-width);left:0;pointer-events:none;top:0;width:var(--%NS%ds-overlay-container-height)}.cdk-overlay-container{position:fixed;z-index:1052}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{--%NS%ds-overlay-pane-max-width: 100%;--%NS%ds-overlay-pane-max-height: 100%;box-sizing:border-box;display:flex;max-height:var(--%NS%ds-overlay-pane-max-height);max-width:var(--%NS%ds-overlay-pane-max-width);pointer-events:auto;position:absolute;z-index:1000}.cdk-overlay-connected-position-bounding-box{--%NS%ds-overlay-local-position-min-width: 1px;--%NS%ds-overlay-local-position-min-height: 1px;display:flex;flex-direction:column;min-height:var(--%NS%ds-overlay-local-position-min-height);min-width:var(--%NS%ds-overlay-local-position-min-width);position:absolute;z-index:1000}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0;visibility:visible}.cdk-overlay-backdrop{--%NS%highlight-color: rgb(0 0 0 / 0%);inset:0;opacity:0;pointer-events:auto;position:absolute;-webkit-tap-highlight-color:var(--%NS%highlight-color);transition:opacity .4s cubic-bezier(.25,.8,.25,1);z-index:1000}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{--%NS%ds-overlay-local-backdrop-background: #000000;background:var(--%NS%ds-overlay-local-backdrop-background);opacity:.3}.ds-tooltip-outer-container{--%NS%ds-tooltip-radius-border: var(--%NS%semantic-radius-semi-rounded-sm);--%NS%ds-tooltip-size-max-width: 300px;--%NS%ds-tooltip-space-margin: var(--%NS%semantic-spacing-container-padding-lg);--%NS%ds-tooltip-space-padding-bottom: var(--%NS%semantic-spacing-container-padding-lg);--%NS%ds-tooltip-space-padding-left: var(--%NS%semantic-spacing-container-padding-lg);--%NS%ds-tooltip-space-padding-right: var(--%NS%semantic-spacing-container-padding-lg);--%NS%ds-tooltip-space-padding-top: var(--%NS%semantic-spacing-container-padding-lg);--%NS%ds-tooltip-space-stack: var(--%NS%semantic-spacing-stack-sm);--%NS%ds-tooltip-font-family: var(--%NS%semantic-typography-label-font-family, sans-serif);--%NS%ds-tooltip-font-size: var(--%NS%semantic-typography-label-md-font-size);--%NS%ds-tooltip-font-weight: var(--%NS%semantic-typography-label-md-font-weight);--%NS%ds-tooltip-line-height: var(--%NS%semantic-typography-label-md-line-height);font-family:var(--%NS%ds-tooltip-font-family);font-size:var(--%NS%ds-tooltip-font-size);font-weight:var(--%NS%ds-tooltip-font-weight);line-height:var(--%NS%ds-tooltip-line-height);
22921--%NS%ds-tooltip-box-shadow: var(--%NS%semantic-elevation-raised-2-box-shadow);box-shadow:var(--%NS%ds-tooltip-box-shadow)}.ds-tooltip-outer-container.ds-tooltip-neutral{--%NS%ds-tooltip-color-background: var(--%NS%semantic-color-surface-container-lowest-base);--%NS%ds-tooltip-color-text: var(--%NS%semantic-color-on-surface-base);--%NS%ds-tooltip-color-title: var(--%NS%semantic-color-on-surface-base)}.ds-tooltip-outer-container.ds-tooltip-inverse{--%NS%ds-tooltip-color-background: var(--%NS%semantic-color-surface-container-lowest-base-inverse);--%NS%ds-tooltip-color-text: var(--%NS%semantic-color-on-surface-base-inverse);--%NS%ds-tooltip-color-title: var(--%NS%semantic-color-on-surface-base-inverse)}.ds-tooltip-outer-container.ds-tooltip-utility{--%NS%ds-tooltip-color-background: var(--%NS%semantic-color-utility-base);--%NS%ds-tooltip-color-text: var(--%NS%semantic-color-on-utility-base);--%NS%ds-tooltip-color-title: var(--%NS%semantic-color-on-utility-base)}.ds-tooltip-outer-container{background-color:var(--%NS%ds-tooltip-custom-color-background, var(--%NS%ds-tooltip-color-background));border-radius:var(--%NS%ds-tooltip-radius-border);color:var(--%NS%ds-tooltip-custom-color-text, var(--%NS%ds-tooltip-color-text));cursor:auto;max-width:var(--%NS%ds-tooltip-size-max-width);opacity:1;position:relative;transition:opacity .3s}.ds-tooltip-outer-container .ds-tooltip-container{display:flex;flex-direction:column;gap:var(--%NS%ds-tooltip-space-stack);padding:var(--%NS%ds-tooltip-space-padding-top, 0) var(--%NS%ds-tooltip-space-padding-right, 0) var(--%NS%ds-tooltip-space-padding-bottom, 0) var(--%NS%ds-tooltip-space-padding-left, 0);position:relative;text-align:left}.ds-tooltip-outer-container .ds-tooltip-container .ds-tooltip-text-container{display:flex}.ds-tooltip-outer-container .ds-tooltip-container .ds-tooltip-text-container .ds-tooltip-text{align-self:center}.ds-tooltip-outer-container .ds-tooltip-container .ds-tooltip-text-container .ds-tooltip-text [slot=title]{--%NS%ds-tooltip-font-family: var(--%NS%semantic-typography-body-font-family, sans-serif);--%NS%ds-tooltip-font-size: var(--%NS%semantic-typography-body-md-strong-font-size);--%NS%ds-tooltip-font-weight: var(--%NS%semantic-typography-body-md-strong-font-weight);--%NS%ds-tooltip-line-height: var(--%NS%semantic-typography-body-md-strong-line-height);font-family:var(--%NS%ds-tooltip-font-family);font-size:var(--%NS%ds-tooltip-font-size);font-weight:var(--%NS%ds-tooltip-font-weight);line-height:var(--%NS%ds-tooltip-line-height);color:var(--%NS%ds-tooltip-custom-color-title, var(--%NS%ds-tooltip-color-title));text-align:left}.ds-tooltip-outer-container .ds-tooltip-container .ds-tooltip-text-container .ds-tooltip-title:empty{display:none}.ds-tooltip-outer-container .ds-tooltip-container .ds-tooltip-text-container .ds-tooltip-close-button{--%NS%ds-tooltip-width-local: fit-content;--%NS%ds-tooltip-height-local: fit-content;cursor:pointer;display:flex;height:var(--%NS%ds-tooltip-height-local);width:var(--%NS%ds-tooltip-width-local)}.ds-tooltip-outer-container .ds-tooltip-container [slot=action]{display:flex;justify-content:end}.ds-tooltip-outer-container .ds-tooltip-arrow{color:var(--%NS%ds-tooltip-color-background);display:inline-flex;filter:drop-shadow(0 4px 8px rgba(0,0,0,.009));position:absolute}.ds-tooltip-outer-container.ds-tooltip-right .ds-tooltip-arrow{left:1px;top:0;transform:rotate(90deg);transform-origin:top left}.ds-tooltip-outer-container.ds-tooltip-left .ds-tooltip-arrow{right:1px;top:0;transform:rotate(270deg);transform-origin:top right}.ds-tooltip-outer-container.ds-tooltip-top .ds-tooltip-arrow{bottom:1px;left:0;transform:translateY(100%)}.ds-tooltip-outer-container.ds-tooltip-bottom .ds-tooltip-arrow{left:0;top:1px;transform:rotate(180deg);transform-origin:top center}.ds-tooltip-outer-container .sr-only{--%NS%ds-local-tooltip-sr-only-width: 1px;--%NS%ds-local-tooltip-sr-only-height: 1px;--%NS%ds-local-tooltip-sr-only-margin: -1px;position:absolute;width:var(--%NS%ds-local-tooltip-sr-only-width);height:var(--%NS%ds-local-tooltip-sr-only-height);padding:0;margin:var(--%NS%ds-local-tooltip-sr-only-margin);overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media screen and (max-width:600px){.ds-tooltip-full-width{--%NS%ds-tooltip-size-full-width: 100%;display:flex;flex-direction:row;justify-content:space-around;left:0!important;min-width:var(--%NS%ds-tooltip-size-full-width)}.ds-tooltip-full-width.ds-tooltip-top{--%NS%ds-tooltip-local-top-translate-y: -11px;transform:translateY(var(--%NS%ds-tooltip-local-top-translate-y))!important}.ds-tooltip-full-width.ds-tooltip-bottom{--%NS%ds-tooltip-local-bottom-translate-y: 11px;transform:translateY(var(--%NS%ds-tooltip-local-bottom-translate-y))!important}.ds-tooltip-full-width .ds-tooltip-outer-container{--%NS%ds-tooltip-local-fullwidth-max-width: 100vw;--%NS%ds-tooltip-size-max-width: var(--%NS%ds-tooltip-local-fullwidth-max-width)}.ds-tooltip-full-width .ds-tooltip-outer-container.ds-tooltip-fullwidth-margin{--%NS%ds-tooltip-fullwidth-margin: var(--%NS%ds-tooltip-space-margin);--%NS%ds-tooltip-size-max-width: calc(var(--%NS%ds-tooltip-local-fullwidth-max-width) - var(--%NS%ds-tooltip-fullwidth-margin))}} 22922`], 22923 encapsulation: 2 22924 }), e; 22925 })(), rP = (() => { 22926 let e = class { 22927 constructor() { 22928 this.tooltipTrigger = f(mu), this.elementRef = f(di), this.timerService = f(Ui), this.closeDelay = ce(200), this.hideTimeoutId = le(void 0), this.isMouseInside = le(!1), this.isKeyboardFocused = ne(() => this.tooltipTrigger.isKeyboardFocused() && !this.tooltipTrigger.interactive()), this.onTooltipMouseEnter = () => { 22929 this.isMouseInside.set(!0), this.hideTimeoutId() && (this.timerService.clearTimeout(this.hideTimeoutId()), this.hideTimeoutId.set(void 0)); 22930 }, this.onMouseEnter = () => { 22931 this.isMouseInside.set(!0), this.hideTimeoutId() && (this.timerService.clearTimeout(this.hideTimeoutId()), this.hideTimeoutId.set(void 0)); 22932 }, this.onMouseLeave = (t) => { 22933 this.isLeavingTooltip(t) || this.scheduleHide(); 22934 }, this.onTooltipMouseLeave = (t) => { 22935 this.isLeavingTooltip(t) || this.scheduleHide(); 22936 }, zi(() => { 22937 this.isMouseInside() || this.isKeyboardFocused() ? this.showTooltip() : this.hideTooltip(); 22938 }); 22939 } 22940 ngOnInit() { 22941 this.addTriggerListeners(); 22942 } 22943 addTriggerListeners() { 22944 let t = this.elementRef.nativeElement; 22945 t.addEventListener("mouseenter", this.onMouseEnter), t.addEventListener("mouseleave", this.onMouseLeave); 22946 } 22947 addTooltipListeners() { 22948 let t = this.tooltipTrigger.overlayRef?.overlayElement; 22949 !t || this._tooltipListenersElement === t || (this.removeTooltipListeners(), t.addEventListener("mouseenter", this.onTooltipMouseEnter), t.addEventListener("mouseleave", this.onTooltipMouseLeave), this._tooltipListenersElement = t); 22950 } 22951 removeTriggerListeners() { 22952 let t = this.elementRef.nativeElement; 22953 t.removeEventListener("mouseenter", this.onMouseEnter), t.removeEventListener("mouseleave", this.onMouseLeave); 22954 } 22955 removeTooltipListeners() { 22956 let t = this._tooltipListenersElement; 22957 t?.removeEventListener("mouseenter", this.onTooltipMouseEnter), t?.removeEventListener("mouseleave", this.onTooltipMouseLeave), this._tooltipListenersElement = void 0; 22958 } 22959 showTooltip() { 22960 this.tooltipTrigger.overlayRef?.hasAttached() || (this.tooltipTrigger.toggleTooltip(), this.addTooltipListeners(), this._positionRecalcTimeoutId = this.timerService.setTimeout(() => this.tooltipTrigger.refreshPosition(), 0, { serverMode: "omit" }), this._detachmentsSub?.unsubscribe(), this._detachmentsSub = this.tooltipTrigger.overlayRef?.detachments().subscribe(() => { 22961 this.removeTooltipListeners(), this.resetTooltipState(); 22962 })); 22963 } 22964 hideTooltip() { 22965 this.tooltipTrigger.overlayRef?.hasAttached() && this.tooltipTrigger.toggleTooltip(); 22966 } 22967 isLeavingTooltip(t) { 22968 let r = this.tooltipTrigger.overlayRef?.overlayElement; 22969 return !!r && (r.contains(t.relatedTarget) || t.currentTarget.contains(t.relatedTarget)); 22970 } 22971 scheduleHide() { 22972 this.hideTimeoutId.set(this.timerService.setTimeout(() => { 22973 this.isMouseInside.set(!1), this.resetTooltipState(); 22974 }, this.closeDelay(), { serverMode: "omit" })); 22975 } 22976 resetTooltipState() { 22977 this.isMouseInside.set(!1), this.hideTooltip(); 22978 } 22979 ngOnDestroy() { 22980 this._positionRecalcTimeoutId && this.timerService.clearTimeout(this._positionRecalcTimeoutId), this.hideTimeoutId() && this.timerService.clearTimeout(this.hideTimeoutId()), this.removeTriggerListeners(), this.removeTooltipListeners(), this._detachmentsSub?.unsubscribe(); 22981 } 22982 }; 22983 return e.ɵfac = function(i) { 22984 return new (i || e)(); 22985 }, e.ɵdir = ci({ 22986 type: e, 22987 selectors: [[ 22988 "", 22989 "dsTooltipOnFocus", 22990 "" 22991 ]], 22992 inputs: { closeDelay: [1, "closeDelay"] } 22993 }), e; 22994 })(), LS = (() => { 22995 let e = class {}; 22996 return e.ɵfac = function(i) { 22997 return new (i || e)(); 22998 }, e.ɵmod = zn({ type: e }), e.ɵinj = Ln({}), e; 22999 })(); 23000 })))(); 23001} 23002var Oa; 23003function fu() { 23004 return (fu = Z((() => { 23005 de(), Oa = (() => { 23006 let e = class { 23007 constructor() { 23008 let t = f(di); 23009 this.element = t.nativeElement; 23010 } 23011 ngOnChanges(t) { 23012 let r = t.vnHtmlAttrs; 23013 r && this.renderAttributes(r.currentValue, r.previousValue); 23014 } 23015 renderAttributes(t, r) {
23016 this.snapshot && (this.addedClasses.forEach((s) => this.element.classList.remove(s)), Object.keys(r || []).forEach((s) => { 23017 this.snapshot.has(s) ? r[s] === this.element.getAttribute(s) && this.element.setAttribute(s, this.snapshot.get(s)) : this.isClass(s) || this.element.removeAttribute(s); 23018 })), this.snapshot = /* @__PURE__ */ new Map(), this.addedClasses = [], Object.keys(t || []).forEach((s) => { 23019 let n = t[s]; 23020 if (this.isClass(s)) this.addedClasses.push(n), this.element.classList.add(n); 23021 else { 23022 let a = this.element.getAttribute(s); 23023 a && this.snapshot.set(s, a), this.element.setAttribute(s, n); 23024 } 23025 }); 23026 } 23027 isClass(t) { 23028 return t.toLowerCase() === "class"; 23029 } 23030 }; 23031 return e.ɵfac = function(i) { 23032 return new (i || e)(); 23033 }, e.ɵdir = ci({ 23034 type: e, 23035 selectors: [[ 23036 "", 23037 "vnHtmlAttrs", 23038 "" 23039 ]], 23040 inputs: { vnHtmlAttrs: "vnHtmlAttrs" }, 23041 features: [Fn] 23042 }), e; 23043 })(); 23044 })))(); 23045} 23046function $3(e, i) { 23047 if (e & 1 && (ie(0, "div", 5), pe(1, "div", 6), te()), e & 2) { 23048 let t = N(); 23049 P(), Hs("animation-duration", t.autoCloseMs(), "ms"); 23050 } 23051} 23052function _3(e) { 23053 return e.get(cl); 23054} 23055function M3(e) { 23056 let i = Number(e?.trim()); 23057 return Number.isFinite(i) && i >= 0 ? i * 1e3 : aP * 1e3; 23058} 23059function R3(e, i) { 23060 if (e & 1) { 23061 let t = qe(); 23062 ie(0, "span", 5), Ce("click", function() { 23063 Ae(t); 23064 let r = N(2); 23065 return Pe(r.previous(r.itemName)); 23066 }), Je(1), te(); 23067 } 23068 if (e & 2) { 23069 let t = N(2); 23070 P(), gt(t.commonMessages.PopoverPreviousText); 23071 } 23072} 23073function L3(e, i) { 23074 if (e & 1) { 23075 let t = qe(); 23076 ie(0, "span", 5), Ce("click", function() { 23077 Ae(t); 23078 let r = N(2); 23079 return Pe(r.next(r.itemName)); 23080 }), Je(1), te(); 23081 } 23082 if (e & 2) { 23083 let t = N(2); 23084 P(), gt(t.commonMessages.PopoverNextText); 23085 } 23086} 23087function B3(e, i) { 23088 if (e & 1) { 23089 let t = qe(); 23090 ie(0, "span", 5), Ce("click", function() { 23091 return Ae(t), Pe(N(2).tooltipsService.closeTooltip()); 23092 }), Je(1), te(); 23093 } 23094 if (e & 2) { 23095 let t = N(2); 23096 P(), gt(t.commonMessages.PopoverCloseText); 23097 } 23098} 23099function D3(e, i) { 23100 if (e & 1) { 23101 let t = qe(); 23102 ie(0, "div", 0)(1, "div", 1)(2, "vn-icon", 2), Ce("click", function() { 23103 return Ae(t), Pe(N().tooltipsService.closeTooltip()); 23104 }), te(), pe(3, "div", 3), ie(4, "div", 4), U(5, R3, 2, 1, "span"), U(6, L3, 2, 1, "span")(7, B3, 2, 1, "span"), te()()(); 23105 } 23106 if (e & 2) { 23107 let t, r = N(); 23108 Qe("data-testid", r.itemName), P(3), A("vnDynamicHtml", (t = r.tooltipsService.getTooltip(r.itemName)) == null ? null : t.text), P(2), W(r.tooltipsService.hasPrevious(r.itemName) ? 5 : -1), P(), W(r.tooltipsService.hasNext(r.itemName) ? 6 : 7); 23109 } 23110} 23111function F3(e, i) { 23112 if (e & 1 && (pe(0, "span", 2), Es(1, "trustAsHtml")), e & 2) { 23113 let t = N(); 23114 Le(t.cssClass), A("ngClass", t.additionalClass || void 0)("innerHtml", Gn(1, 4, t.text), Ba); 23115 } 23116} 23117function z3(e, i) { 23118 if (e & 1 && pe(0, "span", 3), e & 2) { 23119 let t = N(); 23120 Le(t.cssClass), A("ngClass", t.additionalClass || void 0)("innerText", t.text); 23121 } 23122} 23123function G3(e, i) { 23124 e & 1 && Ie(0); 23125} 23126function V3(e, i) { 23127 e & 1 && be(0, G3, 1, 0, "ng-container", 10), e & 2 && (N(), A("ngTemplateOutlet", Ge(20))); 23128} 23129function H3(e, i) { 23130 if (e & 1 && Ie(0, 16), e & 2) { 23131 let t = N(4); 23132 A("ngTemplateOutlet", Ge(3))("ngTemplateOutletContext", vr(2, gs, t.item)); 23133 } 23134} 23135function U3(e, i) { 23136 if (e & 1 && Ie(0, 16), e & 2) { 23137 let t = N(4); 23138 A("ngTemplateOutlet", Ge(5))("ngTemplateOutletContext", vr(2, gs, t.item)); 23139 } 23140} 23141function W3(e, i) { 23142 if (e & 1) { 23143 let t = qe(); 23144 ie(0, "a", 14), Ce("click", function(r) { 23145 return Ae(t), Pe(N(3).click(r)); 23146 }), tr(1, 15), U(2, H3, 1, 4, "ng-container", 16), ir(), Ie(3, 16), tr(4, 17), U(5, U3, 1, 4, "ng-container", 16), ir(), te(); 23147 } 23148 if (e & 2) { 23149 let t = N(3), r = Ge(7); 23150 A("ngClass", t.item.parameters == null ? null : t.item.parameters.dsButtonClass)("kind", t.buttonKind)("variant", t.buttonVariant)("inverse", t.buttonInverse)("size", t.buttonSize)("disabled", t.disabled)("vnSpeculativeLink", t.item.parameters?.useSpeculation ? t.item.url : ""), Qe("href", t.item.url, ys)("target", t.item.target)("rel", t.item.rel)("title", t.item.toolTip), P(2), W(t.useSlot === "start" ? 2 : -1), P(), A("ngTemplateOutlet", r)("ngTemplateOutletContext", vr(15, gs, t.item)), P(2), W(t.useSlot === "end" ? 5 : -1); 23151 } 23152} 23153function j3(e, i) { 23154 e & 1 && be(0, W3, 6, 17, "a", 13), e & 2 && A("vnAuthstate", N(2).item.authstate); 23155} 23156function Y3(e, i) { 23157 if (e & 1) { 23158 let t = qe(); 23159 ie(0, "button", 19), Ce("click", function(r) { 23160 return Ae(t), Pe(N(3).click(r)); 23161 }), Ie(1, 16), te(); 23162 } 23163 if (e & 2) { 23164 let t = N(3), r = Ge(7); 23165 A("ngClass", t.item.parameters == null ? null : t.item.parameters.dsButtonClass)("kind", t.buttonKindIconButton)("variant", t.buttonVariant)("inverse", t.buttonInverse)("size", t.buttonSize)("disabled", t.disabled), Qe("title", t.item.toolTip), P(), A("ngTemplateOutlet", r)("ngTemplateOutletContext", vr(9, gs, t.item)); 23166 } 23167} 23168function K3(e, i) { 23169 e & 1 && be(0, Y3, 2, 11, "button", 18), e & 2 && A("vnAuthstate", N(2).item.authstate); 23170} 23171function q3(e, i) { 23172 e & 1 && pe(0, "vn-icon", 24), e & 2 && A("name", N(5).iconName); 23173} 23174function X3(e, i) { 23175 e & 1 && pe(0, "vn-icon", 26), e & 2 && A("name", N(5).iconName2); 23176} 23177function J3(e, i) { 23178 if (e & 1) { 23179 let t = qe(); 23180 ie(0, "a", 23), Ce("click", function(r) { 23181 return Ae(t), Pe(N(4).click(r)); 23182 }), U(1, q3, 1, 1, "vn-icon", 24), tr(2, 25), Ie(3, 16), ir(), U(4, X3, 1, 1, "vn-icon", 26), te(); 23183 } 23184 if (e & 2) { 23185 let t = N(4), r = Ge(7); 23186 A("title", t.item.text || "")("subtitle", t.subtext ?? t.itemDescription)("boldTitle", !!t.item.parameters?.boldTitle)("vnSpeculativeLink", t.item.parameters?.useSpeculation ? t.item.url : ""), Qe("href", t.item.url, ys)("target", t.item.target), P(), W(t.iconName ? 1 : -1), P(2), A("ngTemplateOutlet", r)("ngTemplateOutletContext", vr(10, gs, t.item)), P(), W(t.iconName2 ? 4 : -1); 23187 } 23188} 23189function Q3(e, i) { 23190 e & 1 && be(0, J3, 5, 12, "a", 22), e & 2 && A("vnAuthstate", N(3).item.authstate); 23191} 23192function Z3(e, i) { 23193 if (e & 1) { 23194 let t = qe(); 23195 ie(0, "a", 28), Es(1, "async"), Ce("click", function(r) { 23196 return Ae(t), Pe(N(4).click(r)); 23197 }), Ie(2, 16), te(); 23198 } 23199 if (e & 2) { 23200 let t = N(4), r = Ge(7); 23201 wt("active", Gn(1, 11, t.isActive$)), A("vnHtmlAttrs", t.htmlAttributes)("ngClass", t.linkClasses)("vnSpeculativeLink", t.item.parameters?.useSpeculation ? t.item.url : ""), Qe("href", t.item.url, ys)("target", t.item.target)("rel", t.item.rel)("title", t.item.toolTip), P(2), A("ngTemplateOutlet", r)("ngTemplateOutletContext", vr(13, gs, t.item)); 23202 } 23203} 23204function ez(e, i) { 23205 e & 1 && be(0, Z3, 3, 15, "a", 27), e & 2 && A("vnAuthstate", N(3).item.authstate); 23206} 23207function tz(e, i) { 23208 e & 1 && U(0, Q3, 1, 1, "a", 20)(1, ez, 1, 1, "a", 21), e & 2 && W(N(2).useListSlots ? 0 : 1); 23209} 23210function iz(e, i) { 23211 if (e & 1 && (pe(0, "span", 29), ie(1, "vn-popper-content", 30, 9), tr(3, 31), pe(4, "div", 32), ir(), te()), e & 2) {
23212 let t = Ge(2), r = N(2); 23213 A("floatUi", t?.content || ""), P(), A("cssClass", r.tooltipClass), P(3), A("vnDynamicHtml", r.tooltipText); 23214 } 23215} 23216function rz(e, i) { 23217 if (e & 1 && (U(0, j3, 1, 1, "a", 11)(1, K3, 1, 1, "button", 12)(2, tz, 2, 1), U(3, iz, 5, 3)), e & 2) { 23218 let t = N(); 23219 W(t.item.parameters?.kind && !t.item.parameters?.useDsIconButton ? 0 : t.item.parameters?.kind && t.item.parameters?.useDsIconButton ? 1 : 2), P(3), W(t.tooltipText ? 3 : -1); 23220 } 23221} 23222function sz(e, i) { 23223 if (e & 1 && Ie(0, 16), e & 2) { 23224 let t = N().item; 23225 N(), A("ngTemplateOutlet", Ge(16))("ngTemplateOutletContext", vr(2, gs, t)); 23226 } 23227} 23228function nz(e, i) { 23229 e & 1 && pe(0, "vn-icon", 34), e & 2 && A("name", N(2).iconName); 23230} 23231function az(e, i) { 23232 if (e & 1 && (tr(0, 33), U(1, sz, 1, 4, "ng-container", 16)(2, nz, 1, 1, "vn-icon", 34), ir()), e & 2) { 23233 let t = i.item, r = N(); 23234 P(), W(r.displayMode !== r.DisplayMode.Icon && t.image ? 1 : r.displayMode === r.DisplayMode.FastIcon && r.iconName ? 2 : -1); 23235 } 23236} 23237function oz(e, i) { 23238 if (e & 1 && Ie(0, 16), e & 2) { 23239 let t = N().item; 23240 N(), A("ngTemplateOutlet", Ge(16))("ngTemplateOutletContext", vr(2, gs, t)); 23241 } 23242} 23243function lz(e, i) { 23244 e & 1 && pe(0, "vn-icon", 26), e & 2 && A("name", N(2).iconName2); 23245} 23246function cz(e, i) { 23247 if (e & 1 && (tr(0, 35), U(1, oz, 1, 4, "ng-container", 16)(2, lz, 1, 1, "vn-icon", 26), ir()), e & 2) { 23248 let t = i.item, r = N(); 23249 P(), W(r.displayMode !== r.DisplayMode.Icon && t.image ? 1 : r.displayMode === r.DisplayMode.FastIcon && r.iconName2 ? 2 : -1); 23250 } 23251} 23252function dz(e, i) { 23253 e & 1 && Ie(0); 23254} 23255function uz(e, i) { 23256 e & 1 && Ie(0); 23257} 23258function pz(e, i) { 23259 e & 1 && be(0, uz, 1, 0, "ng-container", 10), e & 2 && (N(4), A("ngTemplateOutlet", Ge(18))); 23260} 23261function hz(e, i) { 23262 if (e & 1 && (ie(0, "div", 38), be(1, dz, 1, 0, "ng-container", 10), U(2, pz, 1, 1, "ng-container"), te()), e & 2) { 23263 let t = N(3), r = Ge(16); 23264 P(), A("ngTemplateOutlet", r), P(), W(t.badgePosition === "icon" ? 2 : -1); 23265 } 23266} 23267function mz(e, i) { 23268 e & 1 && Ie(0); 23269} 23270function fz(e, i) { 23271 e & 1 && be(0, mz, 1, 0, "ng-container", 10), e & 2 && (N(5), A("ngTemplateOutlet", Ge(18))); 23272} 23273function gz(e, i) { 23274 if (e & 1 && (ie(0, "i", 40), U(1, fz, 1, 1, "ng-container"), te()), e & 2) { 23275 let t = N(3).item, r = N(); 23276 Le(t.class), A("ngClass", r.iconClass), P(), W(r.badgePosition === "icon" ? 1 : -1); 23277 } 23278} 23279function vz(e, i) { 23280 if (e & 1 && U(0, gz, 2, 4, "i", 39), e & 2) { 23281 let t = N(2).item; 23282 W(t.class ? 0 : -1); 23283 } 23284} 23285function Sz(e, i) { 23286 if (e & 1 && U(0, hz, 3, 2, "div", 38)(1, vz, 1, 1), e & 2) { 23287 let t = N().item; 23288 W(t.image ? 0 : 1); 23289 } 23290} 23291function bz(e, i) { 23292 if (e & 1 && (tr(0, 15), pe(1, "vn-icon", 34), ir()), e & 2) { 23293 let t = N(3); 23294 P(), A("name", t.iconName); 23295 } 23296} 23297function yz(e, i) { 23298 e & 1 && U(0, bz, 2, 1, "ng-container", 15), e & 2 && W(N(2).iconName ? 0 : -1); 23299} 23300function wz(e, i) { 23301 e & 1 && Ie(0); 23302} 23303function Ez(e, i) { 23304 e & 1 && be(0, wz, 1, 0, "ng-container", 10), e & 2 && (N(2), A("ngTemplateOutlet", Ge(12))); 23305} 23306function Cz(e, i) { 23307 e & 1 && Ie(0); 23308} 23309function Nz(e, i) { 23310 e & 1 && be(0, Cz, 1, 0, "ng-container", 10), e & 2 && (N(2), A("ngTemplateOutlet", Ge(18))); 23311} 23312function Tz(e, i) { 23313 e & 1 && Ie(0); 23314} 23315function kz(e, i) { 23316 if (e & 1 && pe(0, "vn-menu-item-text-content", 36), e & 2) { 23317 let t = N().item, r = N(); 23318 A("text", r.itemDescription)("cssClass", r.descriptionCssClass || "menu-item-sub")("renderHtmlText", r.renderHtmlText), Qe("data-testid", t.name); 23319 } 23320} 23321function xz(e, i) { 23322 e & 1 && Ie(0); 23323} 23324function Iz(e, i) { 23325 e & 1 && be(0, xz, 1, 0, "ng-container", 10), e & 2 && (N(2), A("ngTemplateOutlet", Ge(16))); 23326} 23327function Oz(e, i) { 23328 e & 1 && Ie(0); 23329} 23330function Pz(e, i) { 23331 e & 1 && be(0, Oz, 1, 0, "ng-container", 10), e & 2 && (N(2), A("ngTemplateOutlet", Ge(18))); 23332} 23333function Az(e, i) { 23334 if (e & 1 && pe(0, "span", 41), e & 2) { 23335 let t = N(2).item; 23336 A("ngClass", N().additionalIcon || t.parameters["additional-class"]); 23337 } 23338} 23339function $z(e, i) { 23340 if (e & 1 && U(0, Az, 1, 1, "span", 41), e & 2) { 23341 let t = N(2); 23342 W(t.displayMode === t.DisplayMode.Icon ? 0 : -1); 23343 } 23344} 23345function _z(e, i) { 23346 if (e & 1 && (pe(0, "span", 37), Es(1, "trustAsHtml")), e & 2) { 23347 let t = N().item; 23348 A("ngClass", t.parameters.badgeTextClass || t.parameters["badge-text-class"] + " ml-2 badge badge-pill")("innerHtml", Gn(1, 2, t.parameters["badge-text"]), Ba); 23349 } 23350} 23351function Mz(e, i) { 23352 if (e & 1 && (tr(0, 17), pe(1, "vn-icon", 26), ir()), e & 2) { 23353 let t = N(2); 23354 P(), A("name", t.iconName2); 23355 } 23356} 23357function Rz(e, i) { 23358 e & 1 && Ie(0); 23359} 23360function Lz(e, i) { 23361 e & 1 && be(0, Rz, 1, 0, "ng-container", 10), e & 2 && (N(2), A("ngTemplateOutlet", Ge(18))); 23362} 23363function Bz(e, i) { 23364 if (e & 1 && (U(0, Sz, 2, 1), U(1, yz, 1, 1), U(2, Ez, 1, 1, "ng-container"), U(3, Nz, 1, 1, "ng-container"), be(4, Tz, 1, 0, "ng-container", 10), U(5, kz, 1, 4, "vn-menu-item-text-content", 36), U(6, Iz, 1, 1, "ng-container"), U(7, Pz, 1, 1, "ng-container"), U(8, $z, 1, 1), U(9, _z, 2, 4, "span", 37), U(10, Mz, 2, 1, "ng-container", 17), U(11, Lz, 1, 1, "ng-container")), e & 2) { 23365 let t = i.item, r = N(), s = Ge(20); 23366 W(r.displayMode === r.DisplayMode.Icon && !r.useSlot ? 0 : -1), P(), W(r.displayMode === r.DisplayMode.FastIcon && !r.useSlot ? 1 : -1), P(), W(r.displayMode === r.DisplayMode.SvgIcon && t.svgImage && !r.useSlot ? 2 : -1), P(), W(r.badgePosition === "beforeText" ? 3 : -1), P(), A("ngTemplateOutlet", s), P(), W(r.itemDescription ? 5 : -1), P(), W(r.displayMode !== r.DisplayMode.Icon && t.image && !r.useSlot ? 6 : -1), P(), W(r.badgePosition === "afterText" ? 7 : -1), P(), W(r.additionalIcon || t.parameters["additional-class"] ? 8 : -1), P(), W(t.parameters["badge-text"] ? 9 : -1), P(), W(r.displayMode === r.DisplayMode.FastIcon && !r.useSlot && r.iconName2 ? 10 : -1), P(), W(r.displayMode === r.DisplayMode.FastIcon && !r.useSlot && r.badgePosition === "FastIcon" ? 11 : -1); 23367 } 23368} 23369function Dz(e, i) { 23370 if (e & 1 && (pe(0, "span", 37), Es(1, "trustAsHtml")), e & 2) { 23371 let t = N(2); 23372 A("ngClass", t.item.parameters.tooltipClass)("innerHtml", Gn(1, 2, t.item.toolTip), Ba); 23373 } 23374} 23375function Fz(e, i) { 23376 e & 1 && U(0, Dz, 2, 4, "span", 37), e & 2 && W(N().item.toolTip ? 0 : -1); 23377} 23378function zz(e, i) { 23379 e & 1 && Ie(0); 23380} 23381function Gz(e, i) { 23382 e & 1 && be(0, zz, 1, 0, "ng-container", 10), e & 2 && (N(3), A("ngTemplateOutlet", Ge(18))); 23383} 23384function Vz(e, i) { 23385 if (e & 1 && (ie(0, "i", 40), U(1, Gz, 1, 1, "ng-container"), te()), e & 2) { 23386 let t = N(2); 23387 Le(t.item.class), A("ngClass", t.iconClass), P(), W(t.badgePosition === "icon" ? 1 : -1); 23388 } 23389} 23390function Hz(e, i) { 23391 e & 1 && U(0, Vz, 2, 4, "i", 39), e & 2 && W(N().item.class ? 0 : -1); 23392} 23393function Uz(e, i) { 23394 if (e & 1 && pe(0, "vn-svg", 42), e & 2) { 23395 let t = N(); 23396 A("containerClass", t.item.parameters.containerClass)("cssClass", t.item.cssClass)("customAnimation", t.item.customAnimation)("defaultAnimation", t.item.defaultAnimation)("displayMode", t.DisplayMode.SvgIcon)("iconType", t.item.iconType)("image", t.item.svgImage)("size", t.item.size)("viewBox", t.item.viewBox); 23397 } 23398} 23399function Wz(e, i) { 23400 if (e & 1 && (tr(0, 15), pe(1, "vn-icon", 34), ir()), e & 2) { 23401 let t = N(2); 23402 P(), A("name", t.iconName); 23403 } 23404} 23405function jz(e, i) { 23406 if (e & 1 && (tr(0, 17), pe(1, "vn-icon", 26), ir()), e & 2) { 23407 let t = N(2); 23408 P(), A("name", t.iconName2); 23409 } 23410} 23411function Yz(e, i) { 23412 e & 1 && Ie(0); 23413} 23414function Kz(e, i) { 23415 e & 1 && be(0, Yz, 1, 0, "ng-container", 10), e & 2 && (N(2), A("ngTemplateOutlet", Ge(18))); 23416} 23417function qz(e, i) { 23418 if (e & 1 && (U(0, Wz, 2, 1, "ng-container", 15), U(1, jz, 2, 1, "ng-container", 17), U(2, Kz, 1, 1, "ng-container")), e & 2) { 23419 let t = N(); 23420 W(t.iconName ? 0 : -1), P(), W(t.iconName2 ? 1 : -1), P(), W(t.badgePosition === "FastIcon" ? 2 : -1); 23421 } 23422} 23423function Xz(e, i) { 23424 if (e & 1 && pe(0, "vn-image", 43), e & 2) { 23425 let t = N(); 23426 A("alt", t.item.image.alt)("height", t.item.image.height)("imageClass", "menu-item-img" + (t.imageClass ? " " + t.imageClass : ""))("priority", !t.lazyLoad)("src", t.item.image.src)("width", t.item.image.width); 23427 } 23428} 23429function Jz(e, i) { 23430 if (e & 1 && (ie(0, "span", 45), Je(1), te()), e & 2) { 23431 let t = N(2); 23432 P(), gt(t.badgeText); 23433 } 23434} 23435function Qz(e, i) { 23436 if (e & 1 && (pe(0, "ds-notification-bubble", 44), U(1, Jz, 2, 1, "span", 45)), e & 2) { 23437 let t = N(); 23438 A("badgeType", t.item.parameters == null ? null : t.item.parameters.badgeType)("badgeClass", t.badgeClass)("item", t.item.name)("section", t.section)("variant", t.badgeVariant)("size", t.badgeSize)("inverse", t.badgeInverse), P(), W(t.badgeText ? 1 : -1); 23439 } 23440} 23441function Zz(e, i) { 23442 if (e & 1 && pe(0, "vn-menu-item-text-content", 46), e & 2) { 23443 let t = N(2); 23444 A("text", t.text || t.item.text)("additionalClass", t.textClass)("renderHtmlText", t.renderHtmlText), Qe("data-testid", t.item.name); 23445 } 23446} 23447function eG(e, i) { 23448 if (e & 1 && U(0, Zz, 1, 4, "vn-menu-item-text-content", 46), e & 2) { 23449 let t = N(); 23450 W(t.text || t.item.text ? 0 : -1); 23451 } 23452} 23453function tG(e) { 23454 return e || rp.Icon; 23455} 23456var In, DS, sP, FS, cl, nP, aP, zS, oP, lP, cP, GS, dP, uP, dl, VS, gs, HS, pP, hP, mP; 23457function US() { 23458 return (US = Z((() => { 23459 Re(), de(), rr(), Ye(), Et(), yi(), st(), Ns(), xy(), Cr(), Ts(), Ha(), _y(), xs(), Ht(), V_(), _l(), Gy(), Q_(), Uy(), yS(), ES(), NS(), kS(), BS(), fu(), In = (function(e) { 23460 return e.Counter = "counter", e.Icon = "icon", e; 23461 })(In || {}), DS = (() => { 23462 let e = class { 23463 constructor() { 23464 this.menuItemsService = f(ip), this.section = ce(), this.item = ce(), this.badgeClass = ce(), this.badgeType = ce(), this.notificationBubble = f(du), this.counter = ne(() => { 23465 let t = this.section(), r = this.item(); 23466 if (t && r) { 23467 let s = this.menuItemsService.getCounter(t, r); 23468 return s ? C({}, s) : null; 23469 } 23470 return null; 23471 }), this.hidden = ne(() => { 23472 let t = this.counter(); 23473 return ((t?.type || this.badgeType() || In.Counter) === In.Icon ? !t?.cssClass : !t?.count) || null; 23474 }), this.label = ne(() => { 23475 let t = this.counter(), r = this.badgeClass(); 23476 return (t?.type || this.badgeType() || In.Counter) === In.Counter ? r?.includes("theme-spot-filled") || t?.count === void 0 ? "" : t?.count : ""; 23477 }), zi(() => { 23478 this.notificationBubble.label.set(this.label()); 23479 }); 23480 } 23481 }; 23482 return e.ɵfac = function(i) { 23483 return new (i || e)(); 23484 }, e.ɵdir = ci({ 23485 type: e, 23486 selectors: [[ 23487 "ds-notification-bubble", 23488 "vnMenuItemBadge", 23489 "" 23490 ]], 23491 hostVars: 1, 23492 hostBindings: function(i, t) { 23493 i & 2 && Qe("hidden", t.hidden()); 23494 }, 23495 inputs: { 23496 section: [1, "section"], 23497 item: [1, "item"], 23498 badgeClass: [1, "badgeClass"], 23499 badgeType: [1, "badgeType"] 23500 } 23501 }), e; 23502 })(), sP = (() => { 23503 let e = class { 23504 constructor() { 23505 this.text = ce(""), this.tooltipTitle = ce("Notification"), this.autoCloseMs = ce(6e3), this.showProgress = ce(!1), this.closeAriaLabel = ce(), this.closed = It(), this.closeLabel = ne(() => this.closeAriaLabel() || "Close"); 23506 } 23507 }; 23508 return e.ɵfac = function(i) { 23509 return new (i || e)(); 23510 }, e.ɵcmp = ge({ 23511 type: e, 23512 selectors: [["vn-tooltip-content"]], 23513 inputs: { 23514 text: [1, "text"], 23515 tooltipTitle: [1, "tooltipTitle"], 23516 autoCloseMs: [1, "autoCloseMs"], 23517 showProgress: [1, "showProgress"], 23518 closeAriaLabel: [1, "closeAriaLabel"] 23519 }, 23520 outputs: { closed: "closed" }, 23521 decls: 6, 23522 vars: 4, 23523 consts: [ 23524 [ 23525 "variant", 23526 "neutral", 23527 3, 23528 "tooltipTitle" 23529 ], 23530 [ 23531 "slot", 23532 "close", 23533 "ds-button-icon", 23534 "", 23535 "variant", 23536 "flat", 23537 "kind", 23538 "primary", 23539 "size", 23540 "small", 23541 3, 23542 "click" 23543 ], 23544 ["name", "theme-ex"], 23545 ["slot", "description"], 23546 [3, "vnDynamicHtml"], 23547 [1, "vn-tooltip-progress"], 23548 [1, "vn-tooltip-progress__bar"] 23549 ], 23550 template: function(i, t) { 23551 i & 1 && (ie(0, "ds-tooltip-content", 0)(1, "button", 1), Ce("click", function() {
23552 return t.closed.emit(); 23553 }), pe(2, "vn-icon", 2), te(), ie(3, "div", 3), pe(4, "div", 4), U(5, $3, 2, 2, "div", 5), te()()), i & 2 && (A("tooltipTitle", t.tooltipTitle()), P(), Qe("aria-label", t.closeLabel()), P(3), A("vnDynamicHtml", t.text()), P(), W(t.showProgress() ? 5 : -1)); 23554 }, 23555 dependencies: [ 23556 LS, 23557 RS, 23558 dp, 23559 Wi, 23560 Er 23561 ], 23562 styles: [`@charset "UTF-8";.cdk-overlay-pane.vn-tooltip .ds-tooltip-container{padding-bottom:var(--%NS%semantic-spacing-container-padding-xl);position:static}.cdk-overlay-pane.vn-tooltip .ds-tooltip-outer-container{clip-path:inset(-32px 0 0 0 round 0 0 var(--%NS%semantic-radius-semi-rounded-sm) var(--%NS%semantic-radius-semi-rounded-sm))}.cdk-overlay-pane.vn-tooltip .vn-tooltip-progress{bottom:0;left:0;position:absolute;right:0}.vn-tooltip-progress{height:var(--%NS%semantic-size-x1);pointer-events:none}.vn-tooltip-progress__bar{animation-fill-mode:forwards;animation-name:vn-tooltip-countdown;animation-timing-function:linear;background-color:var(--%NS%semantic-color-utility-base);border-radius:var(--%NS%semantic-radius-max);height:var(--%NS%semantic-size-x1);transform-origin:left center;width:100%}@keyframes vn-tooltip-countdown{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@media(prefers-reduced-motion:reduce){.vn-tooltip-progress__bar{animation:none}} 23563`], 23564 encapsulation: 2 23565 }), e; 23566 })(), ht(), FS = "vnTooltips", cl = (() => { 23567 var e = class extends ri {}; 23568 let i = (e.ɵfac = (() => { 23569 let t; 23570 return function(r) { 23571 return (t || (t = Fe(e)))(r || e); 23572 }; 23573 })(), e.ɵprov = R({ 23574 token: e, 23575 factory: function(t) { 23576 let r = null; 23577 return t ? r = new t() : r = _3(ve(Wt)), r; 23578 }, 23579 providedIn: "root" 23580 }), e); 23581 return i = mt([Ut({ 23582 key: FS, 23583 product: it.SF 23584 })], i), i; 23585 })(), nP = "Notification", aP = 6, zS = "vn-tooltip-dismissed-", oP = 10, lP = "vn-tooltip", cP = (() => { 23586 let e = class { 23587 constructor() { 23588 this.tooltipsConfig = f(cl), this.clientConfigService = f(sr), this.dslService = f(Js), this.cookieService = f(yr), this.type = le(void 0), this.autoCloseSeconds = le(void 0), this.cookies = wr(this.cookieService.getCookieUpdates(), { initialValue: "" }), this.dismissed = zu({ 23589 source: this.cookies, 23590 computation: () => this.hasDismissalCookie(this.type()) 23591 }
23591), this.configVersion = wr(Ol(this.type).pipe(We((t) => !!t), Ot(1), Si(() => Gi(this.tooltipsConfig.whenReady, this.clientConfigService.updates.pipe(We((t) => t.has(FS))))), Db((t) => t + 1, 0), ei(() => je(0))), { initialValue: 0 }), this.contentItem = ne(() => { 23592 let t = this.type(); 23593 if (!t || !this.configVersion() || this.dismissed()) return; 23594 let r = this.tooltipsConfig.onboardings?.[t]; 23595 return r?.text ? r : void 0; 23596 }), this.item = wr(Ol(this.contentItem).pipe(Si((t) => t ? this.dslService.evaluateContent(t).pipe(ei(() => $b)) : $b), We((t) => !!t?.text), Ot(1))), this.panelClass = lP, this.showTooltip = zu({ 23597 source: this.item, 23598 computation: (t) => !!t 23599 }), this.tooltipText = ne(() => this.item()?.text ?? ""), this.tooltipTitle = ne(() => { 23600 let t = this.item(); 23601 return t?.title || t?.messages?.tooltipAriaLabel || nP; 23602 }), this.closeAriaLabel = ne(() => this.item()?.messages?.closeAriaLabel), this.autoCloseMs = ne(() => M3(this.autoCloseSeconds())); 23603 } 23604 watch(t, r) { 23605 this.type() || (this.type.set(t), this.autoCloseSeconds.set(r)); 23606 } 23607 close() { 23608 this.showTooltip.set(!1); 23609 } 23610 acknowledge() { 23611 this.close(); 23612 let t = this.type(); 23613 t && this.markDismissed(t); 23614 } 23615 onToggleChange({ isTooltipOpen: t }) { 23616 t || this.close(); 23617 } 23618 markDismissed(t) { 23619 let r = /* @__PURE__ */ new Date(); 23620 r.setFullYear(r.getFullYear() + oP), this.cookieService.put(`${zS}${t}`, "1", { expires: r }), t === this.type() && this.dismissed.set(!0); 23621 } 23622 hasDismissalCookie(t) { 23623 return !!t && !!this.cookieService.get(`${zS}${t}`); 23624 } 23625 }; 23626 return e.ɵfac = function(i) { 23627 return new (i || e)(); 23628 }, e.ɵprov = R({ 23629 token: e, 23630 factory: e.ɵfac 23631 }), e; 23632 })(), GS = (() => { 23633 let e = class { 23634 constructor() { 23635 this.activeTooltip = new Gt(null), this.tooltips = {}, this.tooltipNames = [], this.clearTooltips = () => this.tooltipNames.forEach((t) => this.tooltips[t].isActive = !1); 23636 } 23637 addTooltip(t, r) { 23638 t && !this.tooltips[t] && r[t] && (this.tooltips[t] = { 23639 isActive: !1, 23640 name: t, 23641 text: r[t].text 23642 }, this.tooltipNames.push(t)); 23643 } 23644 getTooltip(t) { 23645 return this.tooltips[t]; 23646 } 23647 nextTooltip(t) { 23648 let r = this.tooltips[this.tooltipNames[this.tooltipNames.indexOf(t) + 1]]; 23649 r && this.showTooltip(r); 23650 } 23651 previousTooltip(t) { 23652 let r = this.tooltipNames[this.tooltipNames.indexOf(t) - 1]; 23653 r && this.showTooltip(this.tooltips[r]); 23654 } 23655 hasNext(t) { 23656 let r = this.tooltipNames[this.tooltipNames.indexOf(t) + 1]; 23657 return !!(r && this.tooltips[r]); 23658 } 23659 hasPrevious(t) { 23660 let r = this.tooltipNames[this.tooltipNames.indexOf(t) - 1]; 23661 return !!(r && this.tooltips[r]); 23662 } 23663 removeTooltip(t) { 23664 t && this.tooltips[t] && (delete this.tooltips[t], this.tooltipNames.splice(this.tooltipNames.indexOf(t), 1)); 23665 } 23666 closeTooltip() { 23667 this.clearTooltips(), this.activeTooltip.next(null); 23668 } 23669 show() { 23670 let t = this.tooltipNames[0]; 23671 t && this.showTooltip(this.tooltips[t]); 23672 } 23673 showTooltip(t) { 23674 t && (this.clearTooltips(), t.isActive = !0, this.activeTooltip.next(t)); 23675 } 23676 }; 23677 return e.ɵfac = function(i) { 23678 return new (i || e)(); 23679 }, e.ɵprov = R({ 23680 token: e, 23681 factory: e.ɵfac, 23682 providedIn: "root" 23683 }), e; 23684 })(), dP = (() => { 23685 var e; 23686 let i = class { 23687 constructor() { 23688 Qi(this, e), this.tooltipsService = f(GS), this.commonMessages = f(Ey), this.element = f(di), this.window = f(dt), this.onNextClick = It(), this.onPreviousClick = It(), Zi(this, e, f(ze)); 23689 } 23690 ngOnInit() { 23691 this.tooltips && this.tooltipItem && (this.tooltipsService.addTooltip(this.tooltipItem, this.tooltips), this.tooltipsService.activeTooltip.pipe(BA(0), he($t(this, e))).subscribe(() => { 23692 let r = this.element?.nativeElement; 23693 if (!r) return; 23694 let s = r.offsetParent?.offsetTop + r.offsetHeight; 23695 isNaN(s) || this.window.scrollTo({ 23696 top: s, 23697 behavior: "smooth" 23698 }); 23699 })); 23700 } 23701 next(r) { 23702 this.tooltipsService.nextTooltip(r), this.onNextClick.emit(); 23703 } 23704 previous(r) { 23705 this.tooltipsService.previousTooltip(r), this.onPreviousClick.emit(); 23706 } 23707 }; 23708 return e = /* @__PURE__ */ new WeakMap(), i.ɵfac = function(t) { 23709 return new (t || i)(); 23710 }, i.ɵcmp = ge({ 23711 type: i, 23712 selectors: [["vn-tooltips"]], 23713 inputs: { 23714 itemName: "itemName", 23715 tooltipItem: "tooltipItem", 23716 tooltips: "tooltips" 23717 }, 23718 outputs: { 23719 onNextClick: "onNextClick", 23720 onPreviousClick: "onPreviousClick" 23721 }, 23722 decls: 1, 23723 vars: 1, 23724 consts: [ 23725 [ 23726 1, 23727 "ngxp__tooltip", 23728 "tooltip-info" 23729 ], 23730 [ 23731 1, 23732 "float-ui-container", 23733 "ngxp__animation", 23734 "ngxp__inner" 23735 ], 23736 [ 23737 "name", 23738 "theme-ex", 23739 "extraClass", 23740 "ui-icon ui-close", 23741 "size", 23742 "10", 23743 3, 23744 "click" 23745 ], 23746 [3, "vnDynamicHtml"], 23747 [1, "tooltips-nav"], 23748 [3, "click"] 23749 ], 23750 template: function(t, r) { 23751 t & 1 && U(0, D3, 8, 4, "div", 0), t & 2 && W(r.tooltipsService.getTooltip(r.itemName)?.isActive ? 0 : -1); 23752 }, 23753 dependencies: [Er, Wi], 23754 styles: [".float-ui-container[_ngcontent-%COMP%]{display:block;opacity:1;border:0}.tooltips-nav[_ngcontent-%COMP%], .ui-close[_ngcontent-%COMP%]{float:right;font-weight:700}.tooltips-nav[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{margin-left:15px;cursor:pointer}"], 23755 changeDetection: 1 23756 }), i; 23757 })(), uP = (() => { 23758 let e = class { 23759 constructor() { 23760 this.renderer = f(Ur), this.template = f(jA), this.user = f(ii), this.viewContainer = f(Fu), this.hasView = !1, this.disabled = !1, this.unsubscribe = new Xe(); 23761 } 23762 set vnAuthstate(t) { 23763 this.states = t, this.updateView(); 23764 } 23765 ngOnInit() { 23766 this.user.events.pipe(We((t) => t instanceof uy), bi(this.unsubscribe)).subscribe(() => this.onUserstateChange()); 23767 } 23768 ngOnDestroy() { 23769 this.unsubscribe.next(), this.unsubscribe.complete(); 23770 } 23771 toggle(t) { 23772 if (t && !this.hasView) { 23773 this.hasView = !0; 23774 let r = this.viewContainer.createEmbeddedView(this.template); 23775 this.element = r.rootNodes[0]; 23776 } else !t && this.hasView && (this.hasView = !1, this.viewContainer.clear()); 23777 } 23778 onUserstateChange() { 23779 this.updateView(); 23780 } 23781 updateView() { 23782 let t = this.user.workflowType > 0 ? "workflow" : this.user.isAuthenticated ? "authenticated" : "unauthenticated", r = this.states ? this.states[t] : "show"; 23783 this.toggle(r !== "hide"), r === "disabled" ? (this.disabled = !0, this.renderer.addClass(this.element, "disabled")) : this.disabled && (this.disabled = !1, this.renderer.removeClass(this.element, "disabled")); 23784 } 23785 }; 23786 return e.ɵfac = function(i) { 23787 return new (i || e)(); 23788 }, e.ɵdir = ci({ 23789 type: e, 23790 selectors: [[ 23791 "", 23792 "vnAuthstate", 23793 "" 23794 ]], 23795 inputs: { vnAuthstate: "vnAuthstate" } 23796 }), e; 23797 })(), dl = (() => { 23798 let e = class { 23799 constructor() { 23800 this.menuActionsService = f(Ny), this.log = f(lt); 23801 } 23802 handleMenuTrack(t) { 23803 return Oe(this, null, function* () { 23804 yield this.menuActionsService.trackClick(t, !0).catch((r) => { 23805 this.log.error("Error while tracking menu item click.", r); 23806 }); 23807 }); 23808 } 23809 handleMenuAction(t, r, s, n) { 23810 return Oe(this, null, function* () { 23811 n !== !1 && (yield this.menuActionsService.processClick(t, r, s, !1).catch((a) => { 23812 this.log.error("Error while tracking menu item click.", a); 23813 })); 23814 }); 23815 } 23816 }; 23817 return e.ɵfac = function(i) { 23818 return new (i || e)(); 23819 }, e.ɵprov = R({ 23820 token: e, 23821 factory: e.ɵfac, 23822 providedIn: "root" 23823 }), e; 23824 })(), VS = (() => { 23825 let e = class {}; 23826 return e.ɵfac = function(i) { 23827 return new (i || e)(); 23828 }, e.ɵcmp = ge({ 23829 type: e, 23830 selectors: [["vn-menu-item-text-content"]], 23831 inputs: { 23832 text: "text", 23833 cssClass: "cssClass", 23834 additionalClass: "additionalClass", 23835 renderHtmlText: "renderHtmlText" 23836 }, 23837 decls: 2, 23838 vars: 2, 23839 consts: [ 23840 [ 23841 3, 23842 "class", 23843 "ngClass", 23844 "innerHtml" 23845 ], 23846 [ 23847 3, 23848 "class", 23849 "ngClass", 23850 "innerText" 23851 ], 23852 [ 23853 3, 23854 "ngClass", 23855 "innerHtml" 23856 ], 23857 [ 23858 3, 23859 "ngClass", 23860 "innerText" 23861 ] 23862 ], 23863 template: function(i, t) { 23864 i & 1 && (U(0, F3, 2, 6, "span", 0), U(1, z3, 1, 4, "span", 1)), i & 2 && (W(t.renderHtmlText ? 0 : -1), P(), W(t.renderHtmlText ? -1 : 1)); 23865 }, 23866 dependencies: [ 23867 Vn, 23868 Vi, 23869 Hy 23870 ], 23871 encapsulation: 2, 23872 changeDetection: 1 23873 }), e; 23874 })(), gs = (e) => ({ item: e }), HS = (() => { 23875 var e; 23876 let i = class { 23877 constructor() { 23878 Qi(this, e), this.menuItemsService = f(ip), this.deviceService = f(nr), this.tooltipsConfig = f(cl), this.cookieService = f(yr), this.changeDetectorRef = f(Tb), this.dslService = f(Js
23878), this.timerService = f(Ui), this.menuItemClickHandler = f(dl), this.trackingService = f(Kr), this.destroyRef = f(ze), this.variant = "primary", this.addItemClassToLinkClasses = !0, this.onClick = It(), this.noClass = !1, this.useListSlots = !1, this.disabled = !1, this.DisplayMode = rp, this.tooltipClass = "tooltip-info", Zi(this, e, f(dt)), this.isBrowser = Wb(f(_a)); 23879 } 23880 get class() { 23881 return this.item?.parameters?.["menu-item-additional-class"] || ""; 23882 } 23883 get useSlot() { 23884 return this.item.parameters?.useSlot; 23885 } 23886 get isActive$() { 23887 return this.menuItemsService.isActive(this.section, this.item.name) ? je(!0) : this.item.parameters?.highlighted ? this.dslService.evaluateExpression(this.item.parameters.highlighted) : je(!1); 23888 } 23889 get isActive() { 23890 return this.menuItemsService.isActive(this.section, this.item.name); 23891 } 23892 get buttonKind() { 23893 return this.item.parameters?.kind || "primary"; 23894 } 23895 get buttonKindIconButton() { 23896 return this.item.parameters?.kind || "primary"; 23897 } 23898 get buttonVariant() { 23899 return this.item.parameters?.variant || "filled"; 23900 } 23901 get buttonInverse() { 23902 return Hi(this.item.parameters?.inverse) || !1; 23903 } 23904 get buttonSize() { 23905 return this.item.parameters?.size || "large"; 23906 } 23907 get itemDescription() { 23908 return this.menuItemsService.getDescription(this.section, this.item.name) || this.description || this.item.resources.description || this.item.resources.subtitle || ""; 23909 } 23910 get descriptionCssClass() { 23911 return this.menuItemsService.getDescriptionCssClass(this.section, this.item.name); 23912 } 23913 get badgeSize() { 23914 return this.item.parameters?.badgeSize ? this.item.parameters.badgeSize : this.badgeClass?.includes("badge-size-xs") ? "small" : "medium"; 23915 } 23916 get badgeVariant() { 23917 return this.item.parameters?.badgeVariant || this.variant; 23918 } 23919 get badgeInverse() { 23920 return this.item.parameters?.badgeInverse !== void 0 ? this.item.parameters.badgeInverse === "true" : !0; 23921 } 23922 click(r) { 23923 this.menuItemClickHandler.handleMenuTrack(this.item), this.menuItemClickHandler.handleMenuAction(r, this.item, this.section, this.processClick), Hi(this.item.parameters["save-url"]) && this.cookieService.put($e.PreviousPageUrl, $t(this, e).location.href), Hi(this.item.parameters["disable-on-click"]) && (this.linkClasses.disabled = "true"); 23924 let s = this.item.parameters["text-on-click"]; 23925 s && (this.text = s), this.onClick.emit(r); 23926 } 23927 ngOnInit() { 23928 this.lazyLoad = !this.deviceService.isRobot && !!this.lazyLoadImage, this.renderHtmlText = Hi(this.item.parameters["render-html"]), this.linkClasses = {}, this.badgePosition !== "FastIcon" && this.displayMode !== rp.Icon && this.addItemClassToLinkClasses && this.item.class && (this.noClass || (this.linkClasses[this.item.class] = "true")), this.linkClass && (Array.isArray(this.linkClass) ? this.linkClass.slice(0) : [this.linkClass]).reduce((s, n) => (s[n] = "true", s), this.linkClasses); 23929 let r = this.item.parameters["link-class"]; 23930 r && (this.linkClasses[r] = "true"), this.extraClass && (Array.isArray(this.extraClass) ? this.extraClass : [this.extraClass]).forEach((s) => this.linkClasses[s] = "true"), this.imageClass = this.imageClass ?? this.item.parameters["image-class"], this.iconName = this.item.parameters.iconName, this.trackingService.trackEvents(this.item, vy.load), this.iconName2 = this.item.parameters.iconName2; 23931 } 23932 ngAfterViewInit() { 23933 return Oe(this, null, function* () { 23934 yield Vt(this.tooltipsConfig.whenReady), this.htmlAttributes = Object.fromEntries(Object.entries(this.item.parameters).filter(([r]) => r.startsWith("attr.")).map(([r, s]) => [r.replace("attr.", ""), s])), this.tooltipsConfig.isOnboardingTooltipsEnabled && this.isBrowser && this.timerService.setTimeout(() => { 23935 this.showOnboardingTooltips(); 23936 }, 500); 23937 }); 23938 } 23939 showOnboardingTooltips() { 23940 this.tooltipClass = this.item.parameters["tooltip-class"] || this.tooltipClass; 23941 let r = this.item.parameters.tooltip; 23942 if (!r) return; 23943 let s = this.cookieService.get($e.OnBtt) || "", n = this.tooltipsConfig.onboardings[r]; 23944 s.indexOf(r) > -1 || !n || this.dslService.evaluateContent(n).pipe(xe((a) => a?.text), We((a) => !!a), Ot(1), he(this.destroyRef)).subscribe((a) => { 23945 this.tooltipText = a, this.changeDetectorRef.detectChanges(), this.popperContent?.content.show(); 23946 let o = s.split(","); 23947 o.push(r); 23948 let l = /* @__PURE__ */ new Date(); 23949 l.setFullYear(l.getFullYear() + 1), this.cookieService.put($e.OnBtt, o.join(), { expires: l }); 23950 }); 23951 } 23952 }; 23953 return e = /* @__PURE__ */ new WeakMap(), i.ɵfac = function(t) { 23954 return new (t || i)(); 23955 }, i.ɵcmp = ge({ 23956 type: i, 23957 selectors: [["vn-menu-item"]], 23958 viewQuery: function(t, r) { 23959 if (t & 1 && js(uu, 5), t & 2) { 23960 let s;
23961 Ks(s = Us()) && (r.popperContent = s.first); 23962 } 23963 }, 23964 hostVars: 4, 23965 hostBindings: function(t, r) { 23966 t & 2 && (Le(r.class), wt("menu-item", !0)); 23967 }, 23968 inputs: { 23969 item: "item", 23970 section: "section", 23971 displayMode: [ 23972 2, 23973 "displayMode", 23974 "displayMode", 23975 tG 23976 ], 23977 badgePosition: "badgePosition", 23978 badgeText: "badgeText", 23979 variant: "variant", 23980 linkClass: "linkClass", 23981 textClass: "textClass", 23982 iconClass: "iconClass", 23983 badgeClass: "badgeClass", 23984 imageClass: "imageClass", 23985 additionalIcon: "additionalIcon", 23986 processClick: "processClick", 23987 text: "text", 23988 description: "description", 23989 lazyLoadImage: "lazyLoadImage", 23990 addItemClassToLinkClasses: "addItemClassToLinkClasses", 23991 noClass: "noClass", 23992 extraClass: "extraClass", 23993 useListSlots: "useListSlots", 23994 subtext: "subtext", 23995 disabled: [ 23996 2, 23997 "disabled", 23998 "disabled", 23999 gr 24000 ] 24001 }, 24002 outputs: { onClick: "onClick" }, 24003 decls: 21, 24004 vars: 2, 24005 consts: [ 24006 ["slotStart", ""], 24007 ["slotEnd", ""], 24008 ["btnContent", ""], 24009 ["icon", ""], 24010 ["svg", ""], 24011 ["vnicon", ""], 24012 ["image", ""], 24013 ["badge", ""], 24014 ["plainText", ""], 24015 ["popper", ""], 24016 [4, "ngTemplateOutlet"], 24017 [ 24018 "ds-button", 24019 "", 24020 "dsTouchClick", 24021 "", 24022 3, 24023 "ngClass", 24024 "kind", 24025 "variant", 24026 "inverse", 24027 "size", 24028 "disabled", 24029 "vnSpeculativeLink" 24030 ], 24031 [ 24032 "ds-button-icon", 24033 "", 24034 "dsTouchClick", 24035 "", 24036 3, 24037 "ngClass", 24038 "kind", 24039 "variant", 24040 "inverse", 24041 "size", 24042 "disabled" 24043 ], 24044 [ 24045 "ds-button", 24046 "", 24047 "dsTouchClick", 24048 "", 24049 3, 24050 "ngClass", 24051 "kind", 24052 "variant", 24053 "inverse", 24054 "size", 24055 "disabled", 24056 "vnSpeculativeLink", 24057 "click", 24058 4, 24059 "vnAuthstate" 24060 ], 24061 [ 24062 "ds-button", 24063 "", 24064 "dsTouchClick", 24065 "", 24066 3, 24067 "click", 24068 "ngClass", 24069 "kind", 24070 "variant", 24071 "inverse", 24072 "size", 24073 "disabled", 24074 "vnSpeculativeLink" 24075 ], 24076 [ 24077 "ngProjectAs", 24078 "[slot=start]", 24079 5, 24080 [ 24081 "", 24082 "slot", 24083 "start" 24084 ] 24085 ], 24086 [ 24087 3, 24088 "ngTemplateOutlet", 24089 "ngTemplateOutletContext" 24090 ], 24091 [ 24092 "ngProjectAs", 24093 "[slot=end]", 24094 5, 24095 [ 24096 "", 24097 "slot", 24098 "end" 24099 ] 24100 ], 24101 [ 24102 "ds-button-icon", 24103 "", 24104 "dsTouchClick", 24105 "", 24106 3, 24107 "ngClass", 24108 "kind", 24109 "variant", 24110 "inverse", 24111 "size", 24112 "disabled", 24113 "click", 24114 4, 24115 "vnAuthstate" 24116 ], 24117 [ 24118 "ds-button-icon", 24119 "", 24120 "dsTouchClick", 24121 "", 24122 3, 24123 "click", 24124 "ngClass", 24125 "kind", 24126 "variant", 24127 "inverse", 24128 "size", 24129 "disabled" 24130 ], 24131 [ 24132 "ds-list-item", 24133 "", 24134 1, 24135 "am-list-item", 24136 3, 24137 "title", 24138 "subtitle", 24139 "boldTitle", 24140 "vnSpeculativeLink" 24141 ], 24142 [ 24143 "dsTouchClick", 24144 "", 24145 1, 24146 "menu-item-link", 24147 3, 24148 "vnHtmlAttrs", 24149 "active", 24150 "ngClass", 24151 "vnSpeculativeLink" 24152 ], 24153 [ 24154 "ds-list-item", 24155 "", 24156 "class", 24157 "am-list-item", 24158 3, 24159 "title", 24160 "subtitle", 24161 "boldTitle", 24162 "vnSpeculativeLink", 24163 "click", 24164 4, 24165 "vnAuthstate" 24166 ], 24167 [ 24168 "ds-list-item", 24169 "", 24170 1, 24171 "am-list-item", 24172 3, 24173 "click", 24174 "title", 24175 "subtitle", 24176 "boldTitle", 24177 "vnSpeculativeLink" 24178 ], 24179 [ 24180 "slot", 24181 "start", 24182 1, 24183 "am-list-item__icon-left", 24184 3, 24185 "name" 24186 ], 24187 ["slot", "center"], 24188 [ 24189 "slot", 24190 "end", 24191 1, 24192 "additional-icon", 24193 3, 24194 "name" 24195 ], 24196 [ 24197 "class", 24198 "menu-item-link", 24199 "dsTouchClick", 24200 "", 24201 3, 24202 "vnHtmlAttrs", 24203 "active", 24204 "ngClass", 24205 "vnSpeculativeLink", 24206 "click", 24207 4, 24208 "vnAuthstate" 24209 ], 24210 [ 24211 "dsTouchClick", 24212 "", 24213 1, 24214 "menu-item-link", 24215 3, 24216 "click", 24217 "vnHtmlAttrs", 24218 "ngClass", 24219 "vnSpeculativeLink" 24220 ], 24221 [ 24222 "popperTrigger", 24223 "none", 24224 3, 24225 "floatUi" 24226 ], 24227 [ 24228 "showCloseLink", 24229 "false", 24230 "closeType", 24231 "button", 24232 3, 24233 "cssClass" 24234 ], 24235 ["content", ""], 24236 [3, "vnDynamicHtml"], 24237 ["slot", "start"], 24238 [ 24239 "slot", 24240 "start", 24241 3, 24242 "name" 24243 ], 24244 ["slot", "end"], 24245 [ 24246 3, 24247 "text", 24248 "cssClass", 24249 "renderHtmlText" 24250 ], 24251 [ 24252 3, 24253 "ngClass", 24254 "innerHtml" 24255 ], 24256 [1, "image-icon"], 24257 [ 24258 3, 24259 "class", 24260 "ngClass" 24261 ], 24262 [3, "ngClass"], 24263 [ 24264 1, 24265 "ui-icon", 24266 "ui-icon-size-sm", 24267 "ml-auto", 24268 "additional-icon", 24269 3, 24270 "ngClass" 24271 ], 24272 [ 24273 3, 24274 "containerClass", 24275 "cssClass", 24276 "customAnimation", 24277 "defaultAnimation", 24278 "displayMode", 24279 "iconType", 24280 "image", 24281 "size", 24282 "viewBox" 24283 ], 24284 [ 24285 3, 24286 "alt", 24287 "height", 24288 "imageClass", 24289 "priority", 24290 "src", 24291 "width" 24292 ], 24293 [ 24294 "vnMenuItemBadge", 24295 "", 24296 3, 24297 "badgeType", 24298 "badgeClass", 24299 "item", 24300 "section", 24301 "variant", 24302 "size", 24303 "inverse" 24304 ], 24305 [1, "badge-text"], 24306 [ 24307 "cssClass", 24308 "menu-item-txt", 24309 3, 24310 "text", 24311 "additionalClass", 24312 "renderHtmlText" 24313 ] 24314 ], 24315 template: function(t, r) { 24316 t & 1 && (U(0, V3, 1, 1, "ng-container")(1, rz, 4, 2), be(2, az, 3, 1, "ng-template", null, 0, ti)(4, cz, 3, 1, "ng-template", null, 1, ti)(6, Bz, 12, 12, "ng-template", null, 2, ti), U(8, Fz, 1, 1), be(9, Hz, 1, 1, "ng-template", null, 3, ti)(11, Uz, 1, 9, "ng-template", null, 4, ti)(13, qz, 3, 3, "ng-template", null, 5, ti)(15, Xz, 1, 6, "ng-template", null, 6, ti)(17, Qz, 2, 8, "ng-template", null, 7, ti)(19, eG, 1, 1, "ng-template", null, 8, ti)), t & 2 && (W(r.item.type === "text" ? 0 : 1), P(8), W(r.item.parameters.tooltip === "true" ? 8 : -1)); 24317 }, 24318 dependencies: [ 24319 uP, 24320 Vn, 24321 Vi, 24322 qs, 24323 Er, 24324 Oa, 24325 Wy, 24326 DS, 24327 VS, 24328 Py, 24329 Q$, 24330 uu, 24331 CS, 24332 Wi, 24333 du, 24334 ap, 24335 Ay, 24336 dp, 24337 nl, 24338 H_, 24339 o$, 24340 Hy 24341 ], 24342 encapsulation: 2, 24343 changeDetection: 1 24344 }), i; 24345 })(), pP = (() => { 24346 let e = class { 24347 constructor() { 24348 this.menuItemClickHandlerService = f(dl); 24349 } 24350 onClick(t) { 24351 return Oe(this, null, function* () { 24352 yield this.click(t); 24353 }); 24354 } 24355 click(t) { 24356 return Oe(this, null, function* () { 24357 yield this.menuItemClickHandlerService.handleMenuAction(t, this.item, this.origin, this.processClick); 24358 }); 24359 } 24360 }; 24361 return e.ɵfac = function(i) { 24362 return new (i || e)(); 24363 }, e.ɵdir = ci({ 24364 type: e, 24365 selectors: [[ 24366 "", 24367 "vnMenuItemAction", 24368 "" 24369 ]], 24370 hostBindings: function(i, t) { 24371 i & 1 && Ce("click", function(r) { 24372 return t.onClick(r); 24373 }); 24374 }, 24375 inputs: { 24376 item: "item", 24377 origin: "origin", 24378 processClick: "processClick" 24379 } 24380 }), e; 24381 })(), hP = (() => { 24382 let e = class { 24383 constructor() { 24384 this.trackingService = f(Kr), this.menuItemClickHandlerService = f(dl); 24385 } 24386 onClick() { 24387 return Oe(this, null, function* () { 24388 yield this.click(); 24389 }); 24390 } 24391 ngOnInit() { 24392 this.trackingService.trackEvents(this.item, vy.load); 24393 } 24394 click() { 24395 return Oe(this, null, function* () { 24396 yield this.menuItemClickHandlerService.handleMenuTrack(this.item); 24397 }); 24398 } 24399 }; 24400 return e.ɵfac = function(i) { 24401 return new (i || e)(); 24402 }, e.ɵdir = ci({ 24403 type: e, 24404 selectors: [[ 24405 "", 24406 "vnMenuItemTracking", 24407 "" 24408 ]], 24409 hostBindings: function(i, t) { 24410 i & 1 && Ce("click", function() { 24411 return t.onClick(); 24412 }); 24413 }, 24414 inputs: { item: "item" } 24415 }), e; 24416 })(), mP = (() => { 24417 let e = class { 24418 constructor() { 24419 this.api = f(xl); 24420 } 24421 getMenuItem(t, r) { 24422 return t ? this.api.get("menuItem", { 24423 path: t, 24424 evaluateFullOnServer: r 24425 }).pipe(xe((s) => s.menuItem)) : je(); 24426 } 24427 }; 24428 return e.ɵfac = function(i) { 24429 return new (i || e)(); 24430 }, e.ɵprov = R({ 24431 token: e, 24432 factory: e.ɵfac, 24433 providedIn: "root" 24434 }), e; 24435 })(); 24436 })))(); 24437} 24438function iG(e) { 24439 return e.get(ul); 24440} 24441function rG(e, i) { 24442 e & 1 && Ie(0); 24443} 24444function sG(e, i) { 24445 if (e & 1 && (ie(0, "div", 0), be(1, rG, 1, 0, "ng-container", 1), te()), e & 2) { 24446 let t = N(2); 24447 A("ngClass", n$(3, SP, t.version === 1, t.version > 1, t.version === 2, t.version === 3, t.version === 4, t.version === 5, t.version === 6, t.version === 3 || t.version === 5)), P(), A("vnDynamicComponent", t.getItemComponent(t.content.layout))("vnDynamicComponentAttr", GA(12, bP, t.content, t.mode)); 24448 } 24449} 24450function nG(e, i) { 24451 e & 1 && U(0, sG, 2, 15, "div", 0), e & 2 && W(N().content ? 0 : -1); 24452} 24453var ul, pl, fP, On, WS, jS, gP, vP, gu, SP, bP, yP; 24454function YS() { 24455 return (YS = Z((() => { 24456 de(), rr(), Ye(), jn(), Et(), yi(), st(), Cr(), Ts(), xs(), Ht(), ht(), ul = (() => { 24457 var e = class extends ri {}; 24458 let i = (e.ɵfac = (() => { 24459 let t; 24460 return function(r) { 24461 return (t || (t = Fe(e)))(r || e); 24462 }; 24463 })(), e.ɵprov = R({ 24464 token: e, 24465 factory: function(t) { 24466 let r = null; 24467 return t ? r = new t() : r = iG(ve(Wt)), r; 24468 }, 24469 providedIn: "root" 24470 }), e); 24471 return i = mt([Ut({ 24472 key: "vnAccountMenu", 24473 product: it.SF 24474 })], i), i; 24475 })(), pl = (() => { 24476 let e = class { 24477 constructor() {
24478 this.accountMenuConfig = f(ul), this.dslService = f(Js), this.user = f(ii), this.clientConfigService = f(sr), this.log = f(lt), this.deviceService = f(nr), this.cookieService = f(yr), this.mediaQueryService = f(wy), this.router = f(Il), this.resources = wr(this.accountMenuConfig.whenReady.pipe(xe(() => this.accountMenuConfig.account.version === 1 ? this.accountMenuConfig.resources : { messages: this.accountMenuConfig.account.root.resources }))), this.vipLevels = wr(this.accountMenuConfig.whenReady.pipe(xe(() => this.accountMenuConfig.vipLevels))), this.version = wr(this.accountMenuConfig.whenReady.pipe(xe(() => this.accountMenuConfig.account.version))), this.profilePageItemsPosition = wr(this.accountMenuConfig.whenReady.pipe(xe(() => this.accountMenuConfig.account.profilePageItemsPosition))), this.topItemsLoaded = new Gt([]), this.singlePageModeEnabled = !1, this.topItems = [], this.lookup = /* @__PURE__ */ new Map(), this.onWidgetUpdate = new Xe(), this.contentEvents = new Gt(null), this.unsubscribe = new Xe(), this.destroyRef = f(ze); 24479 } 24480 get widgetUpdate() { 24481 return this.onWidgetUpdate; 24482 } 24483 get isDesktop() { 24484 return this.mediaQueryService.isActive(P$.GtSm); 24485 } 24486 get routerMode() { 24487 return this.deviceService.isMobilePhone; 24488 } 24489 get isRoutableOverlay() { 24490 return this.router.url.includes(":menu"); 24491 } 24492 get routerModeReturnUrl() { 24493 return this.cookieService.get($e.VnMenuReturnUrl); 24494 } 24495 get hierarchy() { 24496 return this.itemHierarchy; 24497 } 24498 get content() { 24499 return this.contentEvents.pipe(We(Boolean), er((t, r) => JSON.stringify(t) === JSON.stringify(r))); 24500 } 24501 get topMenuItems() { 24502 return this.topItems; 24503 } 24504 get singlePageMode() { 24505 return this.singlePageModeEnabled; 24506 } 24507 set singlePageMode(t) { 24508 this.singlePageModeEnabled = t; 24509 } 24510 init() { 24511 this.dslService.evaluateContent(this.accountMenuConfig.account.root).pipe(bi(this.unsubscribe), he(this.destroyRef)).subscribe((t) => this.forceRefresh(t)), this.user.events.pipe(Ws((t) => t instanceof Ga), he(this.destroyRef)).subscribe(() => this.clientConfigService.reload([ul]).then(() => { 24512 this.unsubscribe.next(), this.unsubscribe.complete(), this.forceRefresh(this.accountMenuConfig.account.root), this.dslService.evaluateContent(this.accountMenuConfig.account.root).pipe(he(this.destroyRef)).subscribe((t) => this.forceRefresh(t)); 24513 })), this.topItemsLoaded.pipe(er((t, r) => JSON.stringify(t) === JSON.stringify(r)), Si((t) => (this.topItems = [], this.dslService.evaluateContent(t))), he(this.destroyRef)).subscribe((t) => { 24514 this.topItems = t; 24515 }); 24516 } 24517 refreshWidgets() { 24518 this.onWidgetUpdate.next(); 24519 } 24520 setReturnUrlCookie(t) { 24521 this.cookieService.put($e.VnMenuReturnUrl, t); 24522 } 24523 removeReturnUrlCookie() { 24524 this.cookieService.remove($e.VnMenuReturnUrl); 24525 } 24526 getItem(t) { 24527 return this.lookup.get(t) || null; 24528 } 24529 forceRefresh(t) { 24530 this.lookup.clear(), this.itemHierarchy = {}, this.initMenu(t, this.itemHierarchy), this.contentEvents.next(t); 24531 } 24532 initMenu(t, r) { 24533 if (this.lookup.has(t.name) && this.log.warn(`Menu contains multiple items with the same name: ${t.name}`), this.lookup.set(t.name, t), t.children) { 24534 let s = {}; 24535 t.children.forEach((n) => this.initMenu(n, s)), r[t.name] = s; 24536 } else r[t.name] = null; 24537 } 24538 }; 24539 return e.ɵfac = function(i) { 24540 return new (i || e)(); 24541 }, e.ɵprov = R({ 24542 token: e, 24543 factory: e.ɵfac, 24544 providedIn: "root" 24545 }), e; 24546 })(), fP = (() => { 24547 let e = class { 24548 constructor() { 24549 this.cookieService = f(yr), this.dateTimeService = f(Cy), this.user = f(ii), this.destroyRef = f(ze); 24550 } 24551 get enabled() { 24552 return this._enabled; 24553 } 24554 get isFirstLogin() { 24555 return this.enabled && this.loginCount === 1; 24556 } 24557 get oneYearFromNow() {
24558 let t = this.dateTimeService.now(); 24559 return t.setFullYear(t.getFullYear() + 1), t; 24560 } 24561 init(t) { 24562 if (!this._enabled) { 24563 if (this._enabled = t, this.loginCount = this.getLoginCount(), this.tourStartedLoginCount = this.getTourStartedLoginCount(), this.tourDismissed = this.getTourDismissed(), this.user.isAuthenticated && !this.cookieService.get($e.VnLogin)) { 24564 if (!this._enabled) return; 24565 this.incrementLoginCount(), this.incrementTourStartedLoginCount(), this.cookieService.put($e.VnLogin, "1"); 24566 } 24567 this.user.events.pipe(Ws((r) => r instanceof Ga), he(this.destroyRef)).subscribe(() => { 24568 this._enabled && (this.incrementLoginCount(), this.incrementTourStartedLoginCount(), this.cookieService.put($e.VnLogin, "1")); 24569 }), this.user.events.pipe(Ws((r) => r instanceof Va), he(this.destroyRef)).subscribe(() => { 24570 this.cookieService.remove($e.VnLogin); 24571 }); 24572 } 24573 } 24574 saveTourStartedLoginCount(t) { 24575 this.cookieService.put($e.VnOtslc, t.toString(), { expires: this.oneYearFromNow }), this.tourStartedLoginCount = t; 24576 } 24577 saveTourCompleted() { 24578 this.cookieService.put($e.VnOtc, "1", { expires: this.oneYearFromNow }); 24579 } 24580 saveTourDismissed() { 24581 this.cookieService.put($e.VnOtd, "1", { expires: this.oneYearFromNow }), this.tourDismissed = !0; 24582 } 24583 getLoginCount() { 24584 return Wr(this.cookieService.get($e.VnOlc) ?? "0"); 24585 } 24586 getTourStartedLoginCount() { 24587 let t = this.cookieService.get($e.VnOtslc); 24588 return t === void 0 ? void 0 : Wr(t); 24589 } 24590 getTourDismissed() { 24591 return this.cookieService.get($e.VnOtd) === "1"; 24592 } 24593 incrementLoginCount() { 24594 this.loginCount = this.getLoginCount(), this.loginCount++, this.cookieService.put($e.VnOlc, this.loginCount.toString(), { expires: this.oneYearFromNow }); 24595 } 24596 incrementTourStartedLoginCount() { 24597 this.tourStartedLoginCount = this.getTourStartedLoginCount(), this.tourStartedLoginCount != null && (this.saveTourStartedLoginCount(this.tourStartedLoginCount + 1), this.tourStartedLoginCount++); 24598 } 24599 }; 24600 return e.ɵfac = function(i) { 24601 return new (i || e)(); 24602 }, e.ɵprov = R({ 24603 token: e, 24604 factory: e.ɵfac, 24605 providedIn: "root" 24606 }), e; 24607 })(), On = (function(e) { 24608 return e.URGENT = "URGENT", e.PENDING = "PENDING", e; 24609 })(On || {}), WS = (function(e) { 24610 return e[e.Bottom = 0] = "Bottom", e[e.Middle = 1] = "Middle", e; 24611 })(WS || {}), jS = (function(e) { 24612 return e.Poker = "poker", e.Casino = "casino", e.Coral = "coral", e; 24613 })(jS || {}), gP = (() => { 24614 let e = class { 24615 constructor() { 24616 this.displayItems = new ws(), this.items = [], this.accountMenuDataService = f(pl), this.cookieDBService = f(n_), this.destroyRef = f(ze), this.db = this.cookieDBService.createList($e.AmHiddenTasks), this.accountMenuDataService.content.pipe(he(this.destroyRef)).subscribe(() => { 24617 let t = this.accountMenuDataService.getItem("tasks"); 24618 t?.children && (this.items = [...this.items.filter((r) => t.children.some((s) => s.name === r.name)), ...t.children.filter((r) => !this.items.some((s) => s.name === r.name))], this.refreshItems()); 24619 }); 24620 } 24621 get totalCount() { 24622 return this.items.length; 24623 } 24624 get totalUrgentCount() { 24625 return this.items.filter((t) => t.parameters.status === On.URGENT).length; 24626 } 24627 hide(t) { 24628 t.forEach((r) => this.db.insert(r.name)), this.refreshItems(); 24629 } 24630 showAllHidden() { 24631 this.db.deleteAll(), this.refreshItems(); 24632 } 24633 hasHidden() { 24634 return this.db.getAll().length > 0; 24635 } 24636 update(t) { 24637 this.items[this.items.indexOf(t)] = t, this.refreshItems(); 24638 } 24639 isUrgent(t) { 24640 return t.parameters.status === On.URGENT; 24641 } 24642 refreshItems() { 24643 this.displayItems.next(this.items.filter((t) => !this.db.getAll().includes(t.name)).sort((t, r) => this.getItemOrder(t) - this.getItemOrder(r))); 24644 } 24645 getItemOrder(t) { 24646 return Wr(t.parameters.order ?? "10") * ((t.parameters.status ?? On.PENDING) === On.URGENT ? 1 : 100); 24647 } 24648 }; 24649 return e.ɵfac = function(i) { 24650 return new (i || e)(); 24651 }, e.ɵprov = R({ 24652 token: e, 24653 factory: e.ɵfac, 24654 providedIn: "root" 24655 }), e; 24656 })(), vP = class { 24657 constructor(e) { 24658 this.item = e, this.children = /* @__PURE__ */ new Map(), this.parent = null; 24659 } 24660 }, gu = (() => { 24661 let e = class { 24662 get currentRoute() { 24663 return this.routeEvents; 24664 } 24665 get routerInitialized() { 24666 return this.initRouterEvents; 24667 } 24668 constructor() { 24669 this.accountMenuDataService = f(pl), this.navigationService = f(Ai), this.log = f(lt), this.destroyRef = f(ze), this.menuRouteTree = /* @__PURE__ */ new Map(), this.routeEvents = new Gt(null), this.initRouterEvents = new Gt(!1), this.accountMenuDataService.content.pipe(he(this.destroyRef)).subscribe((t) => { 24670 this.menuRouteTree.clear(), this.initRouter(t), this.initRouterEvents.next(!0); 24671 let r = this.routeEvents.value; 24672 if (r) { 24673 let s = this.lookupRoute(r.item.menuRoute); 24674 s ? this.routeEvents.next(s) : this.routeEvents.next(this.menuRouteTree.get("menu") || null); 24675 } 24676 }); 24677 } 24678 navigateToRoute(t, r = !1, s = null) { 24679 this.accountMenuDataService.routerMode ? s ? this.navigate(`/${s}`, r) : this.navigate(`/menu/${t}`, r) : this.setRoute(t); 24680 } 24681 setRoute(t) { 24682 let r = this.lookupRoute(decodeURIComponent(t)); 24683 r ? this.routeEvents.next(r) : this.log.warn(`Tried to navigate to non existent route ${t}`); 24684 } 24685 navigate(t, r) { 24686 this.accountMenuDataService.isRoutableOverlay ? this.navigationService.goToOverlayOutlet(t, { isBackNavigation: r }) : this.navigationService.goTo(t, { isBackNavigation: r }); 24687 } 24688 initRouter(t) { 24689 if (t.menuRoute) { 24690 let r = new vP(t), s = t.menuRoute.toLowerCase().split("/"), n = this.lookupRoute(s.slice(0, -1)); 24691 if (n) { 24692 r.parent = n; 24693 let a = s[s.length - 1]; 24694 a && n.children.set(a, r); 24695 } else s.length !== 1 && this.log.warn(`Detected menu root route ${t.menuRoute} with multiple fragments`), s[0] && this.menuRouteTree.set(s[0], r); 24696 }
24697 t.children && t.children.forEach((r) => this.initRouter(r)); 24698 } 24699 lookupRoute(t) { 24700 typeof t == "string" && (t = t.split("/")); 24701 let r = this.menuRouteTree, s; 24702 for (let n of t) { 24703 if (s = r.get(n), !s) return; 24704 r = s.children; 24705 } 24706 return s; 24707 } 24708 }; 24709 return e.ɵfac = function(i) { 24710 return new (i || e)(); 24711 }, e.ɵprov = R({ 24712 token: e, 24713 factory: e.ɵfac 24714 }), e; 24715 })(), SP = (e, i, t, r, s, n, a, o) => ({ 24716 "menu-wrapper": e, 24717 "am-wrapper": i, 24718 "am-v2": t, 24719 "am-v3": r, 24720 "am-v4": s, 24721 "am-v5": n, 24722 "am-v6": a, 24723 ch: o 24724 }), bP = (e, i) => ({ 24725 item: e, 24726 mode: i 24727 }), yP = (() => { 24728 let e = class { 24729 constructor() { 24730 this.mode = "menu", this.accountMenuService = f(t_), this.accountMenuRouter = f(gu), this.destroyRef = f(ze), this.isAvailable = !1, this.unsubscribe = new Xe(); 24731 } 24732 get content() { 24733 return this.currentRoute?.item ?? null; 24734 } 24735 get version() { 24736 return this.accountMenuService.version; 24737 } 24738 ngOnInit() { 24739 this.accountMenuRouter.currentRoute.pipe(bi(this.unsubscribe), er((t, r) => JSON.stringify(t?.item) === JSON.stringify(r?.item))).subscribe((t) => this.currentRoute = t), this.accountMenuService.whenReady.pipe(bi(this.unsubscribe)).subscribe(() => this.isAvailable = !0); 24740 } 24741 ngOnChanges() { 24742 this.accountMenuRouter.routerInitialized.pipe(Ws((t) => t), he(this.destroyRef)).subscribe(() => this.accountMenuRouter.setRoute(this.route || "menu")); 24743 } 24744 ngOnDestroy() { 24745 this.unsubscribe.next(), this.unsubscribe.complete(); 24746 } 24747 getItemComponent(t) { 24748 return this.accountMenuService.getAccountMenuComponent(t); 24749 } 24750 }; 24751 return e.ɵfac = function(i) { 24752 return new (i || e)(); 24753 }, e.ɵcmp = ge({ 24754 type: e, 24755 selectors: [["vn-account-menu"]], 24756 inputs: { 24757 route: "route", 24758 mode: "mode" 24759 }, 24760 features: [Pi([gu]), Fn], 24761 decls: 1, 24762 vars: 1, 24763 consts: [[3, "ngClass"], [ 24764 4, 24765 "vnDynamicComponent", 24766 "vnDynamicComponentAttr" 24767 ]], 24768 template: function(i, t) { 24769 i & 1 && U(0, nG, 1, 1), i & 2 && W(t.isAvailable ? 0 : -1); 24770 }, 24771 dependencies: [ 24772 Vn, 24773 Vi, 24774 Ty 24775 ], 24776 encapsulation: 2, 24777 changeDetection: 1 24778 }), e; 24779 })(); 24780 })))(); 24781} 24782var wP, vu, KS, EP, qS, CP, NP, XS, TP; 24783function JS() { 24784 return (JS = Z((() => { 24785 de(), ks(), wP = ["*"], vu = class { 24786 constructor() { 24787 this.inverse = le(!1); 24788 } 24789 }, KS = (() => { 24790 let e = class { 24791 constructor() { 24792 this.inverse = Ne(!1), this.bottomSheet = Ne(!1), this.radius = Ne(!0), this.variant = Ne("surface"), this.backgroundImage = Ne(), this.context = f(vu), this.hostClass = ne(() => `ds-modal-${this.variant()}`), this._backgroundImageUrl = ne(() => { 24793 let t = this.backgroundImage(); 24794 return t ? `url('${t}')` : null; 24795 }), this.context.inverse = ne(() => this.inverse()); 24796 } 24797 backgroundImageUrl() { 24798 return this._backgroundImageUrl(); 24799 } 24800 getThemeableProperties() { 24801 return { 24802 variant: this.variant, 24803 inverse: this.inverse 24804 }; 24805 } 24806 }; 24807 return e.ɵfac = function(i) { 24808 return new (i || e)(); 24809 }, e.ɵcmp = ge({ 24810 type: e, 24811 selectors: [["ds-modal"]], 24812 hostAttrs: [1, "ds-modal"], 24813 hostVars: 12, 24814 hostBindings: function(i, t) { 24815 i & 2 && (Le(t.hostClass()), Hs("--%NS%bg-image", t.backgroundImageUrl()), wt("ds-modal-inverse", t.inverse())("ds-modal-no-radius", !t.radius())("ds-modal-bottom-sheet", t.bottomSheet())("ds-modal-with-bg", t.backgroundImage())); 24816 }, 24817 inputs: { 24818 inverse: [1, "inverse"], 24819 bottomSheet: [1, "bottomSheet"], 24820 radius: [1, "radius"], 24821 variant: [1, "variant"], 24822 backgroundImage: [1, "backgroundImage"] 24823 }, 24824 outputs: { 24825 inverse: "inverseChange", 24826 bottomSheet: "bottomSheetChange", 24827 radius: "radiusChange", 24828 variant: "variantChange", 24829 backgroundImage: "backgroundImageChange" 24830 }, 24831 features: [Pi([vu, { 24832 provide: Nr, 24833 useExisting: e 24834 }])], 24835 ngContentSelectors: wP, 24836 decls: 1, 24837 vars: 0, 24838 template: function(i, t) { 24839 i & 1 && (_t(), Ke(0)); 24840 }, 24841 styles: [`.ds-modal{--%NS%ds-modal-dialog-color-border: var(--%NS%semantic-color-surface-outline-low-base);--%NS%ds-modal-dialog-color-border-inverse: var(--%NS%semantic-color-surface-outline-low-base-inverse);--%NS%ds-modal-dialog-color-overlay: var(--%NS%semantic-color-opacity-static-black-overlay);--%NS%ds-modal-dialog-color-overlay-inverse: var(--%NS%semantic-color-opacity-static-black-overlay);--%NS%ds-modal-dialog-radius-border: var(--%NS%semantic-radius-semi-rounded-md);--%NS%ds-modal-dialog-size-border: var(--%NS%semantic-size-xquarter);--%NS%ds-modal-dialog-size-min-width: var(--%NS%semantic-size-x80);--%NS%ds-modal-dialog-space-padding-bottom: var(--%NS%semantic-spacing-container-padding-xl);--%NS%ds-modal-dialog-space-padding-left: var(--%NS%semantic-spacing-container-padding-xl);--%NS%ds-modal-dialog-space-padding-right: var(--%NS%semantic-spacing-container-padding-xl);--%NS%ds-modal-dialog-space-padding-top: var(--%NS%semantic-spacing-container-padding-xl);--%NS%ds-modal-bottom-sheet-color-overlay: var(--%NS%semantic-color-opacity-static-black-overlay);--%NS%ds-modal-bottom-sheet-color-overlay-inverse: var(--%NS%semantic-color-opacity-static-black-overlay);--%NS%ds-modal-bottom-sheet-radius-border: var(--%NS%semantic-radius-semi-rounded-sm);--%NS%ds-modal-bottom-sheet-size-border: var(--%NS%semantic-size-xquarter);--%NS%ds-modal-bottom-sheet-space-padding-bottom: var(--%NS%semantic-spacing-container-padding-xl);--%NS%ds-modal-bottom-sheet-space-padding-left: var(--%NS%semantic-spacing-container-padding-xl);--%NS%ds-modal-bottom-sheet-space-padding-right: var(--%NS%semantic-spacing-container-padding-xl);--%NS%ds-modal-bottom-sheet-space-padding-top: var(--%NS%semantic-spacing-container-padding-xl);--%NS%ds-modal-dialog-box-shadow: var(--%NS%semantic-elevation-raised-4-box-shadow);box-shadow:var(--%NS%ds-modal-dialog-box-shadow);--%NS%ds-modal-local-dialog-max-height: 90vh;--%NS%ds-modal-dialog-border: var(--%NS%ds-modal-dialog-size-border) solid var(--%NS%ds-modal-dialog-color-border);background-color:var(--%NS%ds-modal-custom-color-bg, var(--%NS%ds-modal-dialog-color-background));border:var(--%NS%ds-modal-dialog-border);border-radius:var(--%NS%ds-modal-custom-dialog-radius-border, var(--%NS%ds-modal-dialog-radius-border));color:var(--%NS%ds-modal-custom-color-text, var(--%NS%ds-modal-dialog-color-text));display:flex;flex-direction:column;height:var(--%NS%ds-modal-custom-height, max-content);max-height:var(--%NS%ds-modal-custom-max-height, var(--%NS%ds-modal-local-dialog-max-height));min-width:var(--%NS%ds-modal-custom-min-width, var(--%NS%ds-modal-dialog-size-min-width));overflow:hidden;position:relative;width:var(--%NS%ds-modal-custom-width, auto)}.ds-modal.ds-modal-surface{--%NS%ds-modal-dialog-color-background: var(--%NS%semantic-color-surface-base);--%NS%ds-modal-dialog-color-text: var(--%NS%semantic-color-on-surface-base)}.ds-modal.ds-modal-surface-low{--%NS%ds-modal-dialog-color-background: var(--%NS%semantic-color-surface-container-low-base);--%NS%ds-modal-dialog-color-text: var(--%NS%semantic-color-on-surface-base)}.ds-modal.ds-modal-surface-lowest{--%NS%ds-modal-dialog-color-background: var(--%NS%semantic-color-surface-container-lowest-base);--%NS%ds-modal-dialog-color-text: var(--%NS%semantic-color-on-surface-base)}.ds-modal.ds-modal-inverse{--%NS%ds-modal-dialog-border: var(--%NS%ds-modal-dialog-size-border) solid var(--%NS%ds-modal-dialog-color-border-inverse)}.ds-modal.ds-modal-inverse.ds-modal-surface{--%NS%ds-modal-dialog-color-background: var(--%NS%semantic-color-surface-base-inverse);--%NS%ds-modal-dialog-color-text: var(--%NS%semantic-color-on-surface-base-inverse)}.ds-modal.ds-modal-inverse.ds-modal-surface-low{--%NS%ds-modal-dialog-color-background: var(--%NS%semantic-color-surface-container-low-base-inverse);--%NS%ds-modal-dialog-color-text: var(--%NS%semantic-color-on-surface-base-inverse)}.ds-modal.ds-modal-inverse.ds-modal-surface-lowest{--%NS%ds-modal-dialog-color-background: var(--%NS%semantic-color-surface-container-lowest-base-inverse);--%NS%ds-modal-dialog-color-text: var(--%NS%semantic-color-on-surface-base-inverse)}.ds-modal .ds-modal-content{display:block;overflow:auto;padding:var(--%NS%ds-modal-dialog-space-padding-top) var(--%NS%ds-modal-dialog-space-padding-right) var(--%NS%ds-modal-dialog-space-padding-bottom) var(--%NS%ds-modal-dialog-space-padding-left)}.ds-modal.ds-modal-bottom-sheet{border-bottom-left-radius:0;border-bottom-right-radius:0;background-color:var(--%NS%ds-modal-bottom-sheet-color-background);color:var(--%NS%ds-modal-bottom-sheet-color-text)}.ds-modal.ds-modal-bottom-sheet.ds-modal-surface{--%NS%ds-modal-bottom-sheet-color-background: var(--%NS%semantic-color-surface-base);--%NS%ds-modal-bottom-sheet-color-text: var(--%NS%semantic-color-on-surface-base)}.ds-modal.ds-modal-bottom-sheet.ds-modal-surface-low{--%NS%ds-modal-bottom-sheet-color-background: var(--%NS%semantic-color-surface-container-low-base);--%NS%ds-modal-bottom-sheet-color-text: var(--%NS%semantic-color-on-surface-base)}.ds-modal.ds-modal-bottom-sheet.ds-modal-surface-lowest{--%NS%ds-modal-bottom-sheet-color-background: var(--%NS%semantic-color-surface-container-lowest-base);--%NS%ds-modal-bottom-sheet-color-text: var(--%NS%semantic-color-on-surface-base)}.ds-modal.ds-modal-bottom-sheet.ds-modal-inverse.ds-modal-surface{--%NS%ds-modal-bottom-sheet-color-background: var(--%NS%semantic-color-surface-base-inverse);--%NS%ds-modal-bottom-sheet-color-text: var(--%NS%semantic-color-on-surface-base-inverse)}.ds-modal.ds-modal-bottom-sheet.ds-modal-inverse.ds-modal-surface-low{--%NS%ds-modal-bottom-sheet-color-background: var(--%NS%semantic-color-surface-container-low-base-inverse);--%NS%ds-modal-bottom-sheet-color-text: var(--%NS%semantic-color-on-surface-base-inverse)}.ds-modal.ds-modal-bottom-sheet.ds-modal-inverse.ds-modal-surface-lowest{--%NS%ds-modal-bottom-sheet-color-background: var(--%NS%semantic-color-surface-container-lowest-base-inverse);--%NS%ds-modal-bottom-sheet-color-text: var(--%NS%semantic-color-on-surface-base-inverse)}.ds-modal.ds-modal-bottom-sheet .ds-modal-content{padding:var(--%NS%ds-modal-bottom-sheet-space-padding-top) var(--%NS%ds-modal-bottom-sheet-space-padding-right) var(--%NS%ds-modal-bottom-sheet-space-padding-bottom) var(--%NS%ds-modal-bottom-sheet-space-padding-left)}.ds-modal.ds-modal-with-bg{background-image:var(--%NS%bg-image);background-size:cover;background-repeat:no-repeat}.ds-modal.ds-modal-with-bg .ds-modal-header{--%NS%ds-modal-header-color-background: transparent}.mat-mdc-dialog-container:has(.ds-modal){--%NS%mat-dialog-container-color: transparent}.mat-bottom-sheet-container:has(.ds-modal){--%NS%mat-bottom-sheet-container-background-color: transparent;padding:0;box-shadow:none;overflow:hidden;max-height:100%}.cdk-overlay-container:has(.cdk-global-overlay-wrapper .ds-modal)>.cdk-overlay-dark-backdrop{--%NS%ds-modal-dialog-color-border: var(--%NS%semantic-color-surface-outline-low-base);--%NS%ds-modal-dialog-color-border-inverse: var(--%NS%semantic-color-surface-outline-low-base-inverse);--%NS%ds-modal-dialog-color-overlay: var(--%NS%semantic-color-opacity-static-black-overlay);--%NS%ds-modal-dialog-color-overlay-inverse: var(--%NS%semantic-color-opacity-static-black-overlay);--%NS%ds-modal-dialog-radius-border: var(--%NS%semantic-radius-semi-rounded-md);--%NS%ds-modal-dialog-size-border: var(--%NS%semantic-size-xquarter);--%NS%ds-modal-dialog-size-min-width: var(--%NS%semantic-size-x80);--%NS%ds-modal-dialog-space-padding-bottom: var(--%NS%semantic-spacing-container-padding-xl);--%NS%ds-modal-dialog-space-padding-left: var(--%NS%semantic-spacing-container-padding-xl);--%NS%ds-modal-dialog-space-padding-right: var(--%NS%semantic-spacing-container-padding-xl);--%NS%ds-modal-dialog-space-padding-top: var(--%NS%semantic-spacing-container-padding-xl);background-color:var(--%NS%ds-modal-dialog-color-overlay)}.cdk-overlay-container:has(.cdk-global-overlay-wrapper .ds-modal.ds-modal-inverse)>.cdk-overlay-dark-backdrop{--%NS%ds-modal-dialog-color-border: var(--%NS%semantic-color-surface-outline-low-base);--%NS%ds-modal-dialog-color-border-inverse: var(--%NS%semantic-color-surface-outline-low-base-inverse);--%NS%ds-modal-dialog-color-overlay: var(--%NS%semantic-color-opacity-static-black-overlay);--%NS%ds-modal-dialog-color-overlay-inverse: var(--%NS%semantic-color-opacity-static-black-overlay);--%NS%ds-modal-dialog-radius-border: var(--%NS%semantic-radius-semi-rounded-md);--%NS%ds-modal-dialog-size-border: var(--%NS%semantic-size-xquarter);--%NS%ds-modal-dialog-size-min-width: var(--%NS%semantic-size-x80);--%NS%ds-modal-dialog-space-padding-bottom: var(--%NS%semantic-spacing-container-padding-xl);--%NS%ds-modal-dialog-space-padding-left: var(--%NS%semantic-spacing-container-padding-xl);--%NS%ds-modal-dialog-space-padding-right: var(--%NS%semantic-spacing-container-padding-xl);--%NS%ds-modal-dialog-space-padding-top: var(--%NS%semantic-spacing-container-padding-xl);background-color:var(--%NS%ds-modal-dialog-color-overlay-inverse)}.cdk-overlay-container:has(.cdk-global-overlay-wrapper .ds-modal.ds-modal-bottom-sheet)>.cdk-overlay-dark-backdrop{--%NS%ds-modal-bottom-sheet-color-overlay: var(--%NS%semantic-color-opacity-static-black-overlay);--%NS%ds-modal-bottom-sheet-color-overlay-inverse: var(--%NS%semantic-color-opacity-static-black-overlay);--%NS%ds-modal-bottom-sheet-radius-border: var(--%NS%semantic-radius-semi-rounded-sm);--%NS%ds-modal-bottom-sheet-size-border: var(--%NS%semantic-size-xquarter);--%NS%ds-modal-bottom-sheet-space-padding-bottom: var(--%NS%semantic-spacing-container-padding-xl);--%NS%ds-modal-bottom-sheet-space-padding-left: var(--%NS%semantic-spacing-container-padding-xl);--%NS%ds-modal-bottom-sheet-space-padding-right: var(--%NS%semantic-spacing-container-padding-xl);--%NS%ds-modal-bottom-sheet-space-padding-top: var(--%NS%semantic-spacing-container-padding-xl);background-color:var(--%NS%ds-modal-bottom-sheet-color-overlay)}.cdk-overlay-container:has(.cdk-global-overlay-wrapper .ds-modal.ds-modal-bottom-sheet.ds-modal-inverse)>.cdk-overlay-dark-backdrop{--%NS%ds-modal-bottom-sheet-color-overlay: var(--%NS%semantic-color-opacity-static-black-overlay);--%NS%ds-modal-bottom-sheet-color-overlay-inverse: var(--%NS%semantic-color-opacity-static-black-overlay);--%NS%ds-modal-bottom-sheet-radius-border: var(--%NS%semantic-radius-semi-rounded-sm);--%NS%ds-modal-bottom-sheet-size-border: var(--%NS%semantic-size-xquarter);--%NS%ds-modal-bottom-sheet-space-padding-bottom: var(--%NS%semantic-spacing-container-padding-xl);--%NS%ds-modal-bottom-sheet-space-padding-left: var(--%NS%semantic-spacing-container-padding-xl);--%NS%ds-modal-bottom-sheet-space-padding-right: var(--%NS%semantic-spacing-container-padding-xl);--%NS%ds-modal-bottom-sheet-space-padding-top: var(--%NS%semantic-spacing-container-padding-xl);background-color:var(--%NS%ds-modal-bottom-sheet-color-overlay-inverse)}@media screen and (max-width:600px){.ds-modal{--%NS%ds-modal-local-dialog-max-height: 100vh;--%NS%ds-modal-local-dialog-max-width: 100vw;width:var(--%NS%ds-modal-custom-width-mobile, auto);height:var(--%NS%ds-modal-custom-height-mobile, max-content);max-height:var(--%NS%ds-modal-custom-max-height-mobile, var(--%NS%ds-modal-local-dialog-max-height));max-width:var(--%NS%ds-modal-custom-max-width-mobile, var(--%NS%ds-modal-local-dialog-max-width))}.ds-modal.ds-modal-bottom-sheet{width:100%}.ds-modal.ds-modal-no-radius{--%NS%ds-modal-dialog-radius-border: 0}@supports (height: 100dvh){.ds-modal{--%NS%ds-modal-local-dialog-max-height: 100dvh}}}.cdk-dialog-container .ds-modal.ds-modal-bottom-sheet{animation:ds-modal-bottom-sheet-enter 195ms cubic-bezier(0,0,.2,1) forwards}@keyframes ds-modal-bottom-sheet-enter{0%{transform:translateY(100%)}to{transform:none}} 24842`], 24843 encapsulation: 2 24844 }), e; 24845 })(), EP = ["*"], qS = (() => { 24846 let e = class {}; 24847 return e.ɵfac = function(i) { 24848 return new (i || e)(); 24849 }, e.ɵcmp = ge({ 24850 type: e, 24851 selectors: [["ds-modal-content"]], 24852 hostAttrs: [1, "ds-modal-content"], 24853 ngContentSelectors: EP, 24854 decls: 1, 24855 vars: 0, 24856 template: function(i, t) { 24857 i & 1 && (_t(), Ke(0)); 24858 }, 24859 encapsulation: 2 24860 }), e; 24861 })(), CP = [ 24862 [[ 24863 "
24863", 24864 "slot", 24865 "start" 24866 ]], 24867 [[ 24868 "", 24869 "slot", 24870 "center" 24871 ]], 24872 [["ds-modal-header-drag"], [ 24873 "", 24874 "modal-header-image", 24875 "" 24876 ]], 24877 [[ 24878 "", 24879 "slot", 24880 "end" 24881 ]] 24882 ], NP = [ 24883 "[slot=start]", 24884 "[slot=center]", 24885 "ds-modal-header-drag, [modal-header-image]", 24886 "[slot=end]" 24887 ], XS = (() => { 24888 let e = class { 24889 constructor() { 24890 this.variant = Ne("surface"), this.context = f(vu), this.hostClass = ne(() => `ds-modal-header-${this.variant()}`); 24891 } 24892 }; 24893 return e.ɵfac = function(i) { 24894 return new (i || e)(); 24895 }, e.ɵcmp = ge({ 24896 type: e, 24897 selectors: [["ds-modal-header"]], 24898 hostAttrs: [1, "ds-modal-header"], 24899 hostVars: 4, 24900 hostBindings: function(i, t) { 24901 i & 2 && (Le(t.hostClass()), wt("ds-modal-header-inverse", t.context.inverse())); 24902 }, 24903 inputs: { variant: [1, "variant"] }, 24904 outputs: { variant: "variantChange" }, 24905 ngContentSelectors: NP, 24906 decls: 8, 24907 vars: 0, 24908 consts: [ 24909 [1, "ds-modal-header-container"], 24910 [1, "ds-modal-header-start"], 24911 [1, "ds-modal-header-center"], 24912 [1, "ds-modal-header-end"] 24913 ], 24914 template: function(i, t) { 24915 i & 1 && (_t(CP), Nt(0, "div", 0)(1, "div", 1), Ke(2), ft(), Nt(3, "div", 2), Ke(4, 1), Ke(5, 2), ft(), Nt(6, "div", 3), Ke(7, 3), ft()()); 24916 }, 24917 styles: [`.ds-modal-header{--%NS%ds-modal-header-radius-border: var(--%NS%semantic-radius-semi-rounded-md);--%NS%ds-modal-header-size-min-height: var(--%NS%semantic-size-x6);--%NS%ds-modal-header-size-stroke: var(--%NS%semantic-size-xquarter);--%NS%ds-modal-header-space-inline: var(--%NS%semantic-spacing-inline-md);--%NS%ds-modal-header-space-padding-bottom: var(--%NS%semantic-spacing-container-padding-sm);--%NS%ds-modal-header-space-padding-left: var(--%NS%semantic-spacing-container-padding-xl);--%NS%ds-modal-header-space-padding-right: var(--%NS%semantic-spacing-container-padding-xl);--%NS%ds-modal-header-space-padding-top: var(--%NS%semantic-spacing-container-padding-sm);display:grid;align-items:center;background:var(--%NS%ds-modal-header-color-background);padding:var(--%NS%ds-modal-header-space-padding-top) var(--%NS%ds-modal-header-space-padding-right) var(--%NS%ds-modal-header-space-padding-bottom) var(--%NS%ds-modal-header-space-padding-left);min-height:var(--%NS%ds-modal-header-size-min-height);flex:0 0 auto}.ds-modal-header .ds-modal-header-container{display:grid;grid-template-columns:auto 1fr auto;grid-column-gap:var(--%NS%ds-modal-header-space-inline)}.ds-modal-header .ds-modal-header-container:has(.ds-modal-header-start:empty){grid-template-columns:1fr auto 1fr}.ds-modal-header .ds-modal-header-container:has(.ds-modal-header-start:empty):has(.ds-modal-header-end:empty){gap:0}.ds-modal-header .ds-modal-header-container .ds-modal-header-center{display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;gap:var(--%NS%ds-modal-header-space-inline)}.ds-modal-header .ds-modal-header-container .ds-modal-header-start{display:flex;align-items:center;justify-content:flex-start;gap:var(--%NS%ds-modal-header-space-inline)}.ds-modal-header .ds-modal-header-container .ds-modal-header-end{display:flex;align-items:center;justify-content:flex-end;gap:var(--%NS%ds-modal-header-space-inline)}.ds-modal-header .ds-modal-header-container [slot=title]{--%NS%ds-modal-header-font-family: var(--%NS%semantic-typography-title-font-family, sans-serif);--%NS%ds-modal-header-font-size: var(--%NS%semantic-typography-title-md-strong-font-size);--%NS%ds-modal-header-font-weight: var(--%NS%semantic-typography-title-md-strong-font-weight);--%NS%ds-modal-header-line-height: var(--%NS%semantic-typography-title-md-strong-line-height);font-family:var(--%NS%ds-modal-header-font-family);font-size:var(--%NS%ds-modal-header-font-size);font-weight:var(--%NS%ds-modal-header-font-weight);line-height:var(--%NS%ds-modal-header-line-height);color:var(--%NS%ds-modal-header-color-title);display:flex;align-items:center;gap:var(--%NS%ds-modal-header-space-inline)}.ds-modal-header .ds-modal-header-container [slot=subtitle]{--%NS%ds-modal-header-font-family: var(--%NS%semantic-typography-label-font-family, sans-serif);--%NS%ds-modal-header-font-size: var(--%NS%semantic-typography-label-md-font-size);
24917--%NS%ds-modal-header-font-weight: var(--%NS%semantic-typography-label-md-font-weight);--%NS%ds-modal-header-line-height: var(--%NS%semantic-typography-label-md-line-height);font-family:var(--%NS%ds-modal-header-font-family);font-size:var(--%NS%ds-modal-header-font-size);font-weight:var(--%NS%ds-modal-header-font-weight);line-height:var(--%NS%ds-modal-header-line-height);color:var(--%NS%ds-modal-header-color-subtitle)}.ds-modal-header.ds-modal-header-surface{--%NS%ds-modal-header-color-background: var(--%NS%semantic-color-surface-base);--%NS%ds-modal-header-color-dragger: var(--%NS%semantic-color-on-surface-subtle);--%NS%ds-modal-header-color-subtitle: var(--%NS%semantic-color-on-surface-subtle);--%NS%ds-modal-header-color-title: var(--%NS%semantic-color-on-surface-base)}.ds-modal-header.ds-modal-header-surface-high{--%NS%ds-modal-header-color-background: var(--%NS%semantic-color-surface-container-high-base);--%NS%ds-modal-header-color-dragger: var(--%NS%semantic-color-on-surface-subtle);--%NS%ds-modal-header-color-subtitle: var(--%NS%semantic-color-on-surface-subtle);--%NS%ds-modal-header-color-title: var(--%NS%semantic-color-on-surface-base)}.ds-modal-header.ds-modal-header-surface-low{--%NS%ds-modal-header-color-background: var(--%NS%semantic-color-surface-container-low-base);--%NS%ds-modal-header-color-dragger: var(--%NS%semantic-color-on-surface-subtle);--%NS%ds-modal-header-color-subtitle: var(--%NS%semantic-color-on-surface-subtle);--%NS%ds-modal-header-color-title: var(--%NS%semantic-color-on-surface-base)}.ds-modal-header.ds-modal-header-surface-lowest{--%NS%ds-modal-header-color-background: var(--%NS%semantic-color-surface-container-lowest-base);--%NS%ds-modal-header-color-dragger: var(--%NS%semantic-color-on-surface-subtle);--%NS%ds-modal-header-color-subtitle: var(--%NS%semantic-color-on-surface-subtle);--%NS%ds-modal-header-color-title: var(--%NS%semantic-color-on-surface-base)}.ds-modal-header.ds-modal-header-nav-bg{--%NS%ds-modal-header-color-background: var(--%NS%semantic-color-l2-navigation-background-base);--%NS%ds-modal-header-color-dragger: var(--%NS%semantic-color-l2-navigation-on-background-subtle);--%NS%ds-modal-header-color-subtitle: var(--%NS%semantic-color-l2-navigation-on-background-subtle);--%NS%ds-modal-header-color-title: var(--%NS%semantic-color-l2-navigation-on-background-base)}.ds-modal-header.ds-modal-header-inverse.ds-modal-header-surface{--%NS%ds-modal-header-color-background: var(--%NS%semantic-color-surface-base-inverse);--%NS%ds-modal-header-color-dragger: var(--%NS%semantic-color-on-surface-subtle-inverse);--%NS%ds-modal-header-color-subtitle: var(--%NS%semantic-color-on-surface-subtle-inverse);--%NS%ds-modal-header-color-title: var(--%NS%semantic-color-on-surface-base-inverse)}.ds-modal-header.ds-modal-header-inverse.ds-modal-header-surface-high{--%NS%ds-modal-header-color-background: var(--%NS%semantic-color-surface-container-high-base-inverse);--%NS%ds-modal-header-color-dragger: var(--%NS%semantic-color-on-surface-subtle-inverse);--%NS%ds-modal-header-color-subtitle: var(--%NS%semantic-color-on-surface-subtle-inverse);--%NS%ds-modal-header-color-title: var(--%NS%semantic-color-on-surface-base-inverse)}.ds-modal-header.ds-modal-header-inverse.ds-modal-header-surface-low{--%NS%ds-modal-header-color-background: var(--%NS%semantic-color-surface-container-low-base-inverse);--%NS%ds-modal-header-color-dragger: var(--%NS%semantic-color-on-surface-subtle-inverse);--%NS%ds-modal-header-color-subtitle: var(--%NS%semantic-color-on-surface-subtle-inverse);--%NS%ds-modal-header-color-title: var(--%NS%semantic-color-on-surface-base-inverse)}.ds-modal-header.ds-modal-header-inverse.ds-modal-header-surface-lowest{--%NS%ds-modal-header-color-background: var(--%NS%semantic-color-surface-container-lowest-base-inverse);--%NS%ds-modal-header-color-dragger: var(--%NS%semantic-color-on-surface-subtle-inverse);--%NS%ds-modal-header-color-subtitle: var(--%NS%semantic-color-on-surface-subtle-inverse);--%NS%ds-modal-header-color-title: var(--%NS%semantic-color-on-surface-base-inverse)}.ds-modal-header.ds-modal-header-inverse.ds-modal-header-nav-bg{--%NS%ds-modal-header-color-background: var(--%NS%semantic-color-l2-navigation-background-base);--%NS%ds-modal-header-color-dragger: var(--%NS%semantic-color-l2-navigation-on-background-subtle);--%NS%ds-modal-header-color-subtitle: var(--%NS%semantic-color-l2-navigation-on-background-subtle);--%NS%ds-modal-header-color-title: var(--%NS%semantic-color-l2-navigation-on-background-base)} 24918`], 24919 encapsulation: 2 24920 }), e; 24921 })(), TP = (() => { 24922 let e = class {}; 24923 return e.ɵfac = function(i) { 24924 return new (i || e)(); 24925 }, e.ɵcmp = ge({ 24926 type: e, 24927 selectors: [["ds-modal-header-drag"]], 24928 hostAttrs: [ 24929 "aria-hidden", 24930 "true", 24931 1, 24932 "ds-modal-header-drag" 24933 ], 24934 decls: 1, 24935 vars: 0, 24936 consts: [[1, "ds-modal-header-drag-rectangle"]], 24937 template: function(i, t) { 24938 i & 1 && br(0, "span", 0); 24939 }, 24940 styles: [`.ds-modal-header-drag{--%NS%ds-modal-local-header-border-dragger-rectangle: 25px;--%NS%ds-modal-local-header-height-dragger-rectangle: 4px;--%NS%ds-modal-local-header-width-dragger-rectangle: 44px;align-items:center;cursor:grab;display:flex;justify-content:center}.ds-modal-header-drag .ds-modal-header-drag-rectangle{display:block;background-color:var(--%NS%ds-modal-header-color-dragger);border-radius:var(--%NS%ds-modal-local-header-border-dragger-rectangle);height:var(--%NS%ds-modal-local-header-height-dragger-rectangle);width:var(--%NS%ds-modal-local-header-width-dragger-rectangle)} 24941`], 24942 encapsulation: 2 24943 }), e; 24944 })(); 24945 })))(); 24946} 24947function aG(e) { 24948 return e.get(hl); 24949} 24950function oG() { 24951 return [Al(kP)]; 24952} 24953function lG(e) { 24954 return e.get(QS); 24955} 24956function cG(e, i) { 24957 if (e & 1) { 24958 let t = qe(); 24959 ie(0, "ds-modal")(1, "ds-modal-header")(2, "div", 0)(3, "div", 1), Je(4), te()(), ie(5, "button", 2), Ce("click", function() { 24960 return Ae(t), Pe(N().stay()); 24961 }), pe(6, "vn-icon", 3), te()(), ie(7, "ds-modal-content"), pe(8, "div", 4), ie(9, "div", 5)(10, "button", 6), Ce("click", function() { 24962 return Ae(t), Pe(N().leave()); 24963 }), Je(11), te(), ie(12, "button", 7), Ce("click", function() { 24964 return Ae(t), Pe(N().stay()); 24965 }), Je(13), te()()()(); 24966 } 24967 if (e & 2) { 24968 let t = i; 24969 P(4), gt(t.title), P(4), A("innerHTML", t.text, Ba), P(3), gt(t.leaveButton), P(2), gt(t.stayButton); 24970 } 24971} 24972function dG(e, i) { 24973 if (e & 1 && (ie(0, "span", 8), Je(1), te()), e & 2) { 24974 let t = N(3); 24975 P(), gt(t.backButtonText); 24976 } 24977} 24978function uG(e, i) { 24979 if (e & 1) { 24980 let t = qe(); 24981 ie(0, "span", 6), Ce("click", function() { 24982 return Ae(t), Pe(N(2).onBackClick()); 24983 }), pe(1, "vn-icon", 7), U(2, dG, 2, 1, "span", 8), te(); 24984 } 24985 if (e & 2) { 24986 let t = N(2); 24987 P(2), W(t.backButtonText ? 2 : -1); 24988 } 24989} 24990function pG(e, i) { 24991 e & 1 && Ke(0, 1); 24992} 24993function hG(e, i) { 24994 if (e & 1 && (ie(0, "div", 4), Je(1), te()), e & 2) { 24995 let t = N(2); 24996 A("ngClass", t.titleCssClass), P(), gt(t.title); 24997 } 24998} 24999function mG(e, i) { 25000 if (e & 1) { 25001 let t = qe(); 25002 ie(0, "vn-icon", 10), Ce("click", function() { 25003 return Ae(t), Pe(N(3).onCloseClick()); 25004 }), te(); 25005 } 25006} 25007function fG(e, i) { 25008 e & 1 && U(0, mG, 1, 0, "vn-icon", 9), e & 2 && W(N(2).showClose !== !1 ? 0 : -1); 25009} 25010function gG(e, i) { 25011 if (e & 1) { 25012 let t = qe(); 25013 ie(0, "button", 13), Ce("click", function() { 25014 return Ae(t), Pe(N(4).onCloseClick()); 25015 }), Je(1), te(); 25016 } 25017 if (e & 2) { 25018 let t = N(4); 25019 A("variant", t.closeDSButtonStyle.variant ?? "outline")("kind", t.closeDSButtonStyle.kind ?? "secondary")("size", t.closeDSButtonStyle.size ?? "medium")("inverse", t.closeDSButtonStyle.inverse ?? !1), P(), Ma(" ", t.closeButtonText, " "); 25020 } 25021} 25022function vG(e, i) { 25023 if (e & 1) { 25024 let t = qe(); 25025 ie(0, "span", 14), Ce("click", function() { 25026 return Ae(t), Pe(N(4).onCloseClick()); 25027 }), Je(1), te(); 25028 } 25029 if (e & 2) { 25030 let t = N(4); 25031 A("ngClass", t.closeButtonTextCssClass), P(), gt(t.closeButtonText); 25032 } 25033} 25034function SG(e, i) { 25035 if (e & 1 && U(0, gG, 2, 5, "button", 11)(1, vG, 2, 2, "span", 12), e & 2) { 25036 let t = N(3); 25037 W(t.useDSButton && t.closeDSButtonStyle !== void 0 ? 0 : 1); 25038 } 25039} 25040function bG(e, i) { 25041 e & 1 && U(0, SG, 2, 1), e & 2 && W(N(2).showClose !== !1 ? 0 : -1); 25042} 25043function yG(e, i) { 25044 if (e & 1 && (ie(0, "div", 0)(1, "div", 1)(2, "div", 2), U(3, uG, 3, 1, "span", 3), Ke(4), U(5, pG, 1, 0), te(), U(6, hG, 2, 2, "div", 4), ie(7, "div", 5), U(8, fG, 1, 1)(9, bG, 1, 1), te()()()), e & 2) { 25045 let t = N(); 25046 P(2), A("ngClass", t.leftContentClass), P(), W(t.showBack !== !1 ? 3 : -1), P(2), W(t.useLogoHeader ? 5 : -1), P(), W(!t.useLogoHeader && t.title ? 6 : -1), P(), A("ngClass", vr(6, AP, t.closeButtonText)), P(), W(t.closeButtonText ? 9 : 8); 25047 } 25048} 25049var hl, Pa, kP, QS, xP, IP, Aa, OP, PP, AP, ZS, $P, _P, Su; 25050function eb() { 25051 return (eb = Z((() => { 25052 Re(), de(), rr(), Ye(), Cs(), Hn(), Et(), yi(), st(), Ns(), Ts(), Ha(), _y(), xs(), op(), Ht(), _l(), Y_(), Gy(), K_(), YS(), JS(), ht(), hl = (() => { 25053 var e = class extends ri {}; 25054 let i = (e.ɵfac = (() => { 25055 let t; 25056 return function(r) { 25057 return (t || (t = Fe(e)))(r || e); 25058 }; 25059 })(), e.ɵprov = R({ 25060 token: e, 25061 factory: function(t) { 25062 let r = null; 25063 return t ? r = new t() : r = aG(ve(Wt)), r; 25064 }, 25065 providedIn: "root" 25066 }), e); 25067 return i = mt([Ut({ 25068 key: "vnHeaderBar", 25069 product: it.SF 25070 })], i), i; 25071 })(), Pa = (() => { 25072 var e; 25073 let i = class { 25074 constructor() { 25075 Qi(this, e), this.handlers = /* @__PURE__ */ new Map(), this.enabled$$ = new ws(1), this.disableClose$$ = new ws(1), this.showBackButton$$ = new ws(1), this.enabled$ = this.enabled$$.asObservable(), this.disableClose$ = this.disableClose$$.asObservable(), this.showBackButton$ = this.showBackButton$$.asObservable(), this._doc = f(vi), this.accountMenuService = f(pl), this.auth = f(K$), this.config = f(hl), this.dslService = f(Js
25075), this.logger = f(lt), this.nativeAppService = f(Yr), this.navigation = f(Ai), this.page = f(jr), this.urlService = f(Wn), this.user = f(ii), this.workflow = f(q_), Zi(this, e, f(dt)), this.destroyRef = f(ze), this.config.whenReady.pipe(Ot(1), he()).subscribe(() => { 25076 this.dslService.evaluateExpression(this.config.isEnabledCondition).pipe(he(this.destroyRef)).subscribe((r) => this.enabled$$.next(r)), this.dslService.evaluateExpression(this.config.disableCloseCondition).pipe(he(this.destroyRef)).subscribe((r) => this.disableClose$$.next(r)), this.dslService.evaluateExpression(this.config.showBackButtonCondition).pipe(he(this.destroyRef)).subscribe((r) => this.showBackButton$$.next(r)); 25077 }); 25078 } 25079 registerActions() { 25080 this.register("goToLastKnownProduct", () => this.navigation.goToLastKnownProduct()), this.register("logout", () => this.logout()), this.register("finalize", () => this.workflow.finalize()), this.register("skip", () => this.workflow.skip()), this.register("finalizeWorkflowWithData", (r) => this.workflow.finalizeWithData(r)); 25081 } 25082 close() { 25083 return Oe(this, null, function* () { 25084 if (this.accountMenuService.routerModeReturnUrl && this.user.workflowType === 0) { 25085 let s = this.urlService.parse(this.accountMenuService.routerModeReturnUrl); 25086 s.culture != this.page.lang && s.changeCulture(this.page.lang), this.navigation.goTo(s, { isBackNavigation: !0 }), this.accountMenuService.removeReturnUrlCookie(); 25087 return; 25088 } 25089 yield Vt(this.config.whenReady); 25090 let r = this.config.workflowCloseAction[this.user.workflowType]; 25091 if (r) { 25092 this.invoke(r.action, r.param ? [r.param] : []); 25093 return; 25094 } 25095 if (this.user.workflowType > 0) { 25096 this.logger.error(`Workflow Id ${this.user.workflowType} is not mapped in header-bar configuration.`), this.logout(); 25097 return; 25098 } 25099 this.navigation.goToLastKnownProduct(); 25100 }); 25101 } 25102 back() { 25103 this.accountMenuService.routerModeReturnUrl || this._doc.referrer ? $t(this, e).history.back() : this.navigation.goToLastKnownProduct(); 25104 } 25105 sendCloseCommand() { 25106 this.nativeAppService.isNativeApp && this.nativeAppService.htcmdSchemeEnabled && this.navigation.sendCloseCommand(); 25107 } 25108 sendCloseEvent() { 25109 this.nativeAppService.sendToNative({ 25110 eventName: za.PAGECLOSED, 25111 parameters: { product: this.page.product } 25112 }); 25113 } 25114 invoke(r, s) { 25115 s = s || []; 25116 let n; 25117 r && (n = this.handlers.get(r)); 25118 let [a, ...o] = s; 25119 if (n instanceof Function) { 25120 let l = n.apply(null, [a, o]); 25121 return l && typeof l.then == "function" ? l : Promise.resolve(); 25122 } 25123 return Promise.reject(`Handler for header bar action ${r} not found.`); 25124 } 25125 logout() { 25126 return this.auth.logout({ redirectAfterLogout: !1 }).then(() => this.navigation.goToLastKnownProduct({ forceReload: !0 })).catch(() => this.navigation.goToLastKnownProduct({ forceReload: !0 })); 25127 } 25128 register(r, s) { 25129 this.handlers.set(r, s); 25130 } 25131 }; 25132 return e = /* @__PURE__ */ new WeakMap(), i.ɵfac = function(t) { 25133 return new (t || i)(); 25134 }, i.ɵprov = R({ 25135 token: i, 25136 factory: i.ɵfac, 25137 providedIn: "root" 25138 }), i; 25139 })(), kP = (() => { 25140 let e = class { 25141 constructor() { 25142 this.headerBarService = f(Pa), this.config = f(hl); 25143 } 25144 onFeatureInit() { 25145 return Oe(this, null, function* () { 25146 yield Vt(this.config.whenReady), this.headerBarService.registerActions(); 25147 }); 25148 } 25149 }; 25150 return e.ɵfac = function(i) { 25151 return new (i || e)(); 25152 }, e.ɵprov = R({ 25153 token: e, 25154 factory: e.ɵfac 25155 }), e; 25156 })(), ht(), QS = (() => { 25157 var e = class extends ri {}; 25158 let i = (e.ɵfac = (() => { 25159 let t; 25160 return function(r) { 25161 return (t || (t = Fe(e)))(r || e); 25162 }; 25163 })(), e.ɵprov = R({ 25164 token: e, 25165 factory: function(t) { 25166 let r = null; 25167 return t ? r = new t() : r = lG(ve(Wt)), r; 25168 }, 25169 providedIn: "root" 25170 }), e); 25171 return i = mt([Ut({ 25172 key: "vnConfirmPopup", 25173 product: it.SF 25174 })], i), i; 25175 })(), xP = (() => { 25176 let e = class { 25177 constructor() { 25178 this.confirmPopupConfig = f(QS), this.eventsService = f(Nl), this.overlayRef = f(My), this.trackingService = f(Kr), this.options = ce(), this.messages = le(null), this.content = ne(() => this.options()?.content ?? this.messages()); 25179 } 25180 ngOnInit() { 25181 return Oe(this, null, function* () { 25182 this.triggerEvent(this.options()?.trackingDataLoad), !this.content() && (yield Vt(this.confirmPopupConfig.whenReady), this.messages.set(this.confirmPopupConfig.resources.messages)); 25183 }); 25184 } 25185 leave() { 25186 this.triggerEvent(this.options()?.trackingDataClick, this.content()?.leaveButton), this.eventsService.raise({ 25187 eventName: kl.ConfirmPopupLeaveButton, 25188 data: { action: this.options()?.action } 25189 }), this.close(); 25190 } 25191 stay() { 25192 this.triggerEvent(this.options()?.trackingDataClick, this.content()?.stayButton), this.close(); 25193 } 25194 triggerEvent(t, r) { 25195 t && (r && (t.data = J(C({}, t.data), { "component.EventDetails": r })), this.trackingService.triggerEvent(t.eventName, t.data)); 25196 } 25197 close() { 25198 this.overlayRef.detach(); 25199 } 25200 }; 25201 return e.ɵfac = function(i) { 25202 return new (i || e)(); 25203 }, e.ɵcmp = ge({ 25204 type: e, 25205 selectors: [["vn-confirm-popup"]], 25206 inputs: { options: [1, "options"] }, 25207 decls: 1, 25208 vars: 1, 25209 consts: [ 25210 ["slot", "start"], 25211 ["slot", "title"], 25212 [ 25213 "ds-button-icon", 25214 "", 25215 "kind", 25216 "tertiary", 25217 "variant", 25218 "flat", 25219 "size", 25220 "medium", 25221 "slot", 25222 "end", 25223 "aria-label", 25224 "Close", 25225 3, 25226 "click" 25227 ], 25228 ["name", "theme-ex"], 25229 [3, "innerHTML"], 25230 [1, "generic-modal-actions"], 25231 [ 25232 "ds-button", 25233 "", 25234 "kind", 25235 "secondary", 25236 "variant", 25237 "outline", 25238 "size", 25239 "large", 25240 3, 25241 "click" 25242 ], 25243 [ 25244 "ds-button", 25245 "", 25246 "kind", 25247 "primary", 25248 "variant", 25249 "filled", 25250 "size", 25251 "large", 25252 3, 25253 "click" 25254 ] 25255 ], 25256 template: function(i, t) { 25257 if (i & 1 && U(0, cG, 14, 4, "ds-modal"), i & 2) { 25258 let r; 25259 W((r = t.content()) ? 0 : -1, r); 25260 } 25261 }, 25262 dependencies: [ 25263 Wi, 25264 KS, 25265 qS, 25266 XS, 25267 ap, 25268 dp 25269 ], 25270 encapsulation: 2 25271 }), e; 25272 })(), IP = (() => { 25273 let e = class { 25274 constructor() {
25275 this.injector = f(ui), this.overlay = f(j_), this.destroyRef = f(ze); 25276 } 25277 show(t) { 25278 if (this.currentRef) return; 25279 let r = this.overlay.create({ 25280 backdropClass: "vn-backdrop", 25281 panelClass: ["vn-confirm-popup-container", "generic-modal-popup"] 25282 }); 25283 r.detachments().pipe(he(this.destroyRef)).subscribe(() => { 25284 this.overlay.dispose(r), this.currentRef = null; 25285 }); 25286 let s = new T_(xP, null, ui.create({ 25287 providers: [{ 25288 provide: My, 25289 useValue: r 25290 }], 25291 parent: this.injector 25292 })); 25293 r.attach(s).setInput("options", t), this.currentRef = r; 25294 } 25295 }; 25296 return e.ɵfac = function(i) { 25297 return new (i || e)(); 25298 }, e.ɵprov = R({ 25299 token: e, 25300 factory: e.ɵfac, 25301 providedIn: "root" 25302 }), e; 25303 })(), Aa = (function(e) { 25304 return e.Close = "close", e.Back = "back", e; 25305 })(Aa || {}), OP = [[[ 25306 "", 25307 "left", 25308 "" 25309 ]], [[ 25310 "", 25311 "header-bar-logo-slot", 25312 "" 25313 ]]], PP = ["[left]", "[header-bar-logo-slot]"], AP = (e) => ({ "header-ctrl-r__btn": e }), ZS = (() => { 25314 let e = class { 25315 constructor() { 25316 this.showConfirmPopup = ce(!1), this.confirmPopupTrackLoad = ce(), this.confirmPopupTrackClick = ce(), this.trackBackClickEvent = ce(), this.trackCloseClickEvent = ce(), this.onBack = It(), this.onClose = It(), this.headerBarService = f(Pa), this.confirmPopupService = f(IP), this.eventsService = f(Nl), this.trackingService = f(Kr), this.destroyRef = f(ze); 25317 } 25318 ngOnInit() { 25319 this.enabled === void 0 && this.headerBarService.enabled$.pipe(he(this.destroyRef)).subscribe((t) => { 25320 this.enabled = t; 25321 }), this.eventsService.newEvents.pipe(he(this.destroyRef), We((t) => t.eventName === kl.ConfirmPopupLeaveButton)).subscribe((t) => { 25322 switch (t.data?.action) { 25323 case Aa.Close: 25324 this.onClose.emit(); 25325 break; 25326 case Aa.Back: this.onBack.emit(); 25327 } 25328 }); 25329 } 25330 onBackClick() { 25331 this.triggerEvent(this.trackBackClickEvent()), this.showPopupOrEmit(this.onBack, Aa.Back); 25332 } 25333 onCloseClick() { 25334 this.triggerEvent(this.trackCloseClickEvent()), this.showPopupOrEmit(this.onClose, Aa.Close); 25335 } 25336 showPopupOrEmit(t, r) { 25337 if (this.showConfirmPopup()) { 25338 let s = { 25339 action: r, 25340 trackingDataLoad: this.confirmPopupTrackLoad(), 25341 trackingDataClick: this.confirmPopupTrackClick() 25342 }; 25343 this.confirmPopupService.show(s); 25344 } else this.headerBarService.sendCloseEvent(), t.emit(); 25345 } 25346 triggerEvent(t) { 25347 t && this.trackingService.triggerEvent(t.eventName, t.data); 25348 } 25349 }; 25350 return e.ɵfac = function(i) { 25351 return new (i || e)(); 25352 }, e.ɵcmp = ge({ 25353 type: e, 25354 selectors: [["vn-header-bar"]], 25355 inputs: { 25356 title: "title", 25357 titleCssClass: "titleCssClass", 25358 showBack: "showBack", 25359 showClose: "showClose", 25360 enabled: "enabled", 25361 backButtonText: "backButtonText", 25362 closeButtonText: "closeButtonText", 25363 leftContentClass: "leftContentClass", 25364 closeButtonTextCssClass: "closeButtonTextCssClass", 25365 useLogoHeader: "useLogoHeader", 25366 closeDSButtonStyle: "closeDSButtonStyle", 25367 useDSButton: "useDSButton", 25368 showConfirmPopup: [1, "showConfirmPopup"], 25369 confirmPopupTrackLoad: [1, "confirmPopupTrackLoad"], 25370 confirmPopupTrackClick: [1, "confirmPopupTrackClick"], 25371 trackBackClickEvent: [1, "trackBackClickEvent"], 25372 trackCloseClickEvent: [1, "trackCloseClickEvent"] 25373 }, 25374 outputs: { 25375 onBack: "onBack", 25376 onClose: "onClose" 25377 }, 25378 ngContentSelectors: PP, 25379 decls: 1, 25380 vars: 1, 25381 consts: [ 25382 [1, "header-ctrl-wrapper"], 25383 [ 25384 1, 25385 "header-ctrl", 25386 "d-flex", 25387 "justify-content-between", 25388 "align-items-center" 25389 ], 25390 [ 25391 1, 25392 "header-ctrl-l", 25393 3, 25394 "ngClass" 25395 ], 25396 [ 25397 "dsTouchClick", 25398 "", 25399 1, 25400 "ui-icon", 25401 "ui-icon-size-lg", 25402 "ui-back", 25403 "d-flex", 25404 "align-items-center" 25405 ], 25406 [ 25407 1, 25408 "header-ctrl-txt", 25409 3, 25410 "ngClass" 25411 ], 25412 [ 25413 1, 25414 "header-ctrl-r", 25415 3, 25416 "ngClass" 25417 ], 25418 [ 25419 "dsTouchClick", 25420 "", 25421 1, 25422 "ui-icon", 25423 "ui-icon-size-lg", 25424 "ui-back", 25425 "d-flex", 25426 "align-items-center", 25427 3, 25428 "click" 25429 ], 25430 ["name", "theme-left"], 25431 [ 25432 1, 25433 "txt-xs", 25434 "text-nowrap", 25435 "ml-2", 25436 "back-button-text", 25437 "m-0" 25438 ], 25439 [ 25440 "dsTouchClick", 25441 "", 25442 "name", 25443 "theme-ex", 25444 1, 25445 "vn-icon-ui-close" 25446 ], 25447 [ 25448 "dsTouchClick", 25449 "", 25450 "name", 25451 "theme-ex", 25452 1, 25453 "vn-icon-ui-close", 25454 3, 25455 "click" 25456 ], 25457 [ 25458 "dsTouchClick", 25459 "", 25460 "ds-button", 25461 "", 25462 3, 25463 "variant", 25464 "kind", 25465 "size", 25466 "inverse" 25467 ], 25468 [ 25469 "dsTouchClick", 25470 "", 25471 1, 25472 "close-text", 25473 "btn", 25474 "btn-md", 25475 3, 25476 "ngClass" 25477 ], 25478 [ 25479 "dsTouchClick", 25480 "", 25481 "ds-button", 25482 "", 25483 3, 25484 "click", 25485 "variant", 25486 "kind", 25487 "size", 25488 "inverse" 25489 ], 25490 [ 25491 "dsTouchClick", 25492 "", 25493 1, 25494 "close-text", 25495 "btn", 25496 "btn-md", 25497 3, 25498 "click", 25499 "ngClass" 25500 ] 25501 ], 25502 template: function(i, t) { 25503 i & 1 && (_t(OP), U(0, yG, 10, 8, "div", 0)), i & 2 && W(t.enabled ? 0 : -1); 25504 }, 25505 dependencies: [ 25506 Vn, 25507 Vi, 25508 Wi, 25509 ap, 25510 Ay 25511 ], 25512 encapsulation: 2, 25513 changeDetection: 1 25514 }), e; 25515 })(), $P = [[[ 25516 "", 25517 "left", 25518 "" 25519 ]]], _P = ["[left]"], Su = (() => { 25520 let e = class { 25521 constructor() { 25522 this.showConfirmPopup = ce(!1), this.confirmPopupTrackLoad = ce(), this.confirmPopupTrackClick = ce(), this.trackBackClickEvent = ce(), this.trackCloseClickEvent = ce(), this.onClose = new ot(), this.onBack = new ot(), this.unsubscribe = new Xe(), this.headerBarService = f(Pa); 25523 } 25524 ngOnInit() { 25525 this.disableClose === void 0 && this.headerBarService.disableClose$.pipe(bi(this.unsubscribe)).subscribe((t) => { 25526 this.disableClose = t; 25527 }), this.showBackButton === void 0 && this.headerBarService.showBackButton$.pipe(bi(this.unsubscribe)).subscribe((t) => { 25528 this.showBackButton = t; 25529 }); 25530 } 25531 ngOnDestroy() { 25532 this.unsubscribe.next(), this.unsubscribe.complete(); 25533 } 25534 close() { 25535 return Oe(this, null, function* () { 25536 this.headerBarService.sendCloseCommand(), this.onClose.observers.length > 0 ? this.onClose.emit() : yield this.headerBarService.close(); 25537 }); 25538 } 25539 back() { 25540 this.onBack.observers.length > 0 ? this.onBack.emit() : this.headerBarService.back(); 25541 } 25542 }; 25543 return e.ɵfac = function(i) { 25544 return new (i || e)(); 25545 }, e.ɵcmp = ge({ 25546 type: e, 25547 selectors: [["lh-header-bar"]], 25548 inputs: { 25549 enabled: "enabled", 25550 showBackButton: "showBackButton", 25551 disableClose: "disableClose", 25552 content: "content", 25553 titleCssClass: "titleCssClass", 25554 headerCssClass: "headerCssClass", 25555 backButtonText: "backButtonText", 25556 closeButtonText: "closeButtonText", 25557 closeButtonTextCssClass: "closeButtonTextCssClass", 25558 leftContentClass: "leftContentClass", 25559 showConfirmPopup: [1, "showConfirmPopup"], 25560 confirmPopupTrackLoad: [1, "confirmPopupTrackLoad"], 25561 confirmPopupTrackClick: [1, "confirmPopupTrackClick"], 25562 trackBackClickEvent: [1, "trackBackClickEvent"],
25563 trackCloseClickEvent: [1, "trackCloseClickEvent"] 25564 }, 25565 outputs: { 25566 onClose: "onClose", 25567 onBack: "onBack" 25568 }, 25569 ngContentSelectors: _P, 25570 decls: 3, 25571 vars: 16, 25572 consts: [[ 25573 3, 25574 "onBack", 25575 "onClose", 25576 "enabled", 25577 "title", 25578 "titleCssClass", 25579 "showBack", 25580 "showClose", 25581 "backButtonText", 25582 "closeButtonText", 25583 "closeButtonTextCssClass", 25584 "leftContentClass", 25585 "showConfirmPopup", 25586 "confirmPopupTrackLoad", 25587 "confirmPopupTrackClick", 25588 "trackBackClickEvent", 25589 "trackCloseClickEvent" 25590 ], ["left", ""]], 25591 template: function(i, t) { 25592 i & 1 && (_t($P), ie(0, "vn-header-bar", 0), Ce("onBack", function() { 25593 return t.back(); 25594 })("onClose", function() { 25595 return t.close(); 25596 }), tr(1, 1), Ke(2), ir(), te()), i & 2 && (Le(t.headerCssClass), A("enabled", t.enabled)("title", t.content)("titleCssClass", t.titleCssClass)("showBack", t.showBackButton)("showClose", !t.disableClose)("backButtonText", t.backButtonText)("closeButtonText", t.closeButtonText)("closeButtonTextCssClass", t.closeButtonTextCssClass)("leftContentClass", t.leftContentClass)("showConfirmPopup", t.showConfirmPopup())("confirmPopupTrackLoad", t.confirmPopupTrackLoad())("confirmPopupTrackClick", t.confirmPopupTrackClick())("trackBackClickEvent", t.trackBackClickEvent())("trackCloseClickEvent", t.trackCloseClickEvent())); 25597 }, 25598 dependencies: [ZS], 25599 encapsulation: 2, 25600 changeDetection: 1 25601 }), e; 25602 })(); 25603 })))(); 25604} 25605function wG(e, i) { 25606 if (e & 1 && br(0, "source"), e & 2) { 25607 let t = i.$implicit; 25608 Qe("media", t.media)("srcset", t.srcset); 25609 } 25610} 25611function EG(e, i) { 25612 if (e & 1 && (ie(0, "a", 2), Je(1), te()), e & 2) { 25613 let t = N(2); 25614 A("href", t.item.titleLink.url, ys)("vnHtmlAttrs", t.item.titleLink.attributes), P(), gt(t.title); 25615 } 25616} 25617function CG(e, i) { 25618 e & 1 && Je(0), e & 2 && Ma(" ", N(2).title, " "); 25619} 25620function NG(e, i) { 25621 if (e & 1 && (U(0, EG, 2, 3, "a", 2), U(1, CG, 1, 1)), e & 2) { 25622 let t = N(); 25623 W(t.item.titleLink ? 0 : -1), P(), W(t.item.titleLink ? -1 : 1); 25624 } 25625} 25626function TG(e, i) { 25627 e & 1 && Ie(0); 25628} 25629function kG(e, i) { 25630 if (e & 1 && (ie(0, "h1", 1), be(1, TG, 1, 0, "ng-container", 3), te()), e & 2) { 25631 let t = N(), r = Ge(1); 25632 A("id", t.item.name)("ngClass", t.titleClass), P(), A("ngTemplateOutlet", r); 25633 } 25634} 25635function xG(e, i) { 25636 e & 1 && Ie(0); 25637} 25638function IG(e, i) { 25639 if (e & 1 && (ie(0, "h2", 1), be(1, xG, 1, 0, "ng-container", 3), te()), e & 2) { 25640 let t = N(), r = Ge(1); 25641 A("id", t.item.name)("ngClass", t.titleClass), P(), A("ngTemplateOutlet", r); 25642 } 25643} 25644function OG(e, i) { 25645 e & 1 && Ie(0); 25646} 25647function PG(e, i) { 25648 if (e & 1 && (ie(0, "h3", 1), be(1, OG, 1, 0, "ng-container", 3), te()), e & 2) { 25649 let t = N(), r = Ge(1); 25650 A("id", t.item.name)("ngClass", t.titleClass), P(), A("ngTemplateOutlet", r); 25651 } 25652} 25653function AG(e, i) { 25654 e & 1 && Ie(0); 25655} 25656function $G(e, i) { 25657 if (e & 1 && (ie(0, "h4", 1), be(1, AG, 1, 0, "ng-container", 3), te()), e & 2) { 25658 let t = N(), r = Ge(1); 25659 A("id", t.item.name)("ngClass", t.titleClass), P(), A("ngTemplateOutlet", r); 25660 } 25661} 25662function _G(e, i) { 25663 e & 1 && Ie(0); 25664} 25665function MG(e, i) { 25666 if (e & 1 && (ie(0, "h5", 1), be(1, _G, 1, 0, "ng-container", 3), te()), e & 2) { 25667 let t = N(), r = Ge(1); 25668 A("id", t.item.name)("ngClass", t.titleClass), P(), A("ngTemplateOutlet", r); 25669 } 25670} 25671function RG(e, i) { 25672 e & 1 && Ie(0); 25673} 25674function LG(e, i) { 25675 if (e & 1 && (ie(0, "h6", 1), be(1, RG, 1, 0, "ng-container", 3), te()), e & 2) { 25676 let t = N(), r = Ge(1); 25677 A("id", t.item.name)("ngClass", t.titleClass), P(), A("ngTemplateOutlet", r); 25678 } 25679} 25680function BG(e, i) { 25681 if (e & 1) { 25682 let t = qe(); 25683 ie(0, "vn-icon", 6), Ce("click", function() { 25684 Ae(t); 25685 let r = N(2); 25686 return Pe(r.item.expanded = !r.item.expanded); 25687 }), te(); 25688 } 25689} 25690function DG(e, i) { 25691 if (e & 1) { 25692 let t = qe(); 25693 ie(0, "vn-icon", 7), Ce("click", function() { 25694 Ae(t); 25695 let r = N(2); 25696 return Pe(r.item.expanded = !r.item.expanded); 25697 }), te(); 25698 } 25699} 25700function FG(e, i) { 25701 if (e & 1 && (ie(0, "div", 2), U(1, BG, 1, 0, "vn-icon", 4)(2, DG, 1, 0, "vn-icon", 5), te()), e & 2) { 25702 let t = N(); 25703 P(), W(t.item.expanded ? 2 : 1); 25704 } 25705} 25706function zG(e, i) { 25707 e & 1 && Ie(0); 25708} 25709function GG(e, i) { 25710 if (e & 1 && be(0, zG, 1, 0, "ng-container", 8), e & 2) { 25711 let t = i.$implicit, r = N(2); 25712 A("vnDynamicComponent", r.type)("vnDynamicComponentAttr", Wu(2, LP, t, r.section, r.level + 1)); 25713 } 25714} 25715function VG(e, i) { 25716 if (e & 1 && (ie(0, "div"), Sr(1, GG, 1, 6, "ng-container", null, Gb().trackByText, !0), te()), e & 2) { 25717 let t = N(); 25718 Le(FA("pc-menu-submenu pc-menu-level-", t.level)), wt("collapsed", !t.item.expanded), P(), fr(t.item.children); 25719 } 25720} 25721function HG(e, i) { 25722 e & 1 && Ie(0); 25723} 25724function UG(e, i) { 25725 if (e & 1 && be(0, HG, 1, 0, "ng-container", 0), e & 2) { 25726 let t = i.$implicit; 25727 A("vnPageMatrix", t); 25728 } 25729} 25730function WG(e, i) { 25731 e & 1 && pe(0, "vn-pc-component-header-v2", 0), e & 2 && A("item", N().item); 25732} 25733function jG(e, i) { 25734 if (e & 1) { 25735 let t = qe(); 25736 ie(0, "lh-header-bar", 4), Ce("onClose", function() { 25737 return Ae(t), Pe(N().close()); 25738 }), te(); 25739 } 25740 e & 2 && A("content", N().item.title); 25741} 25742function YG(e, i) { 25743 if (e & 1 && (ie(0, "div", 7), Je(1), te()), e & 2) { 25744 let t = N(2); 25745 P(), gt(t.item.title); 25746 } 25747} 25748function KG(e, i) { 25749 if (e & 1) { 25750 let t = qe(); 25751 ie(0, "div", 1)(1, "div", 5)(2, "vn-icon", 6), Ce("click", function() { 25752 return Ae(t), Pe(N().onBackClick()); 25753 }), te()(), U(3, YG, 2, 1, "div", 7), te(); 25754 } 25755 if (e & 2) { 25756 let t = N(); 25757 A("ngClass", t.customHeaderClass), P(3), W(t.item.title ? 3 : -1); 25758 } 25759} 25760function qG(e, i) { 25761 if (e & 1) { 25762 let t = qe(); 25763 ie(0, "lh-header-bar", 4), Ce("onClose", function() { 25764 return Ae(t), Pe(N().onHistoryBack()); 25765 }), te(); 25766 } 25767 e & 2 && A("content", N().item.title); 25768}
25769function XG(e, i) { 25770 if (e & 1 && (ie(0, "div", 7), Je(1), te()), e & 2) { 25771 let t = N(2); 25772 P(), gt(t.item.title); 25773 } 25774} 25775function JG(e, i) { 25776 if (e & 1) { 25777 let t = qe(); 25778 ie(0, "div", 1)(1, "div", 5)(2, "vn-icon", 6), Ce("click", function() { 25779 return Ae(t), Pe(N().onHistoryBack()); 25780 }), te()(), U(3, XG, 2, 1, "div", 7), te(); 25781 } 25782 if (e & 2) { 25783 let t = N(); 25784 A("ngClass", t.customHeaderClass), P(3), W(t.item.title ? 3 : -1); 25785 } 25786} 25787function QG(e, i) { 25788 if (e & 1 && (pe(0, "input", 0), ie(1, "label", 1), Je(2), pe(3, "vn-icon", 2)(4, "vn-icon", 3), te(), pe(5, "div", 4)), e & 2) { 25789 let t = N(); 25790 Qe("id", t.id), P(), Qe("for", t.id), P(), Ma("", t.item.title, " "), P(3), A("vnDynamicHtml", t.item.text); 25791 } 25792} 25793function ZG(e, i) { 25794 e & 1 && pe(0, "vn-pc-component-header-v2", 1), e & 2 && A("item", N().item); 25795} 25796function eV(e, i) { 25797 if (e & 1 && pe(0, "vn-picture", 3), e & 2) { 25798 let t = N(2); 25799 A("src", t.item.image.src)("width", t.item.image.width)("alt", t.item.image.alt ?? ""); 25800 } 25801} 25802function tV(e, i) { 25803 e & 1 && U(0, eV, 1, 3, "vn-picture", 3), e & 2 && W(N().item.image ? 0 : -1); 25804} 25805function iV(e, i) { 25806 e & 1 && pe(0, "vn-icon", 2), e & 2 && A("name", N().item.iconName); 25807} 25808function rV(e, i) { 25809 e & 1 && Ie(0); 25810} 25811function sV(e, i) { 25812 if (e & 1 && (ie(0, "a", 4), be(1, rV, 1, 0, "ng-container", 5), te()), e & 2) { 25813 let t = N(2), r = Ge(2); 25814 A("href", t.item.imageLink.url, ys)("vnHtmlAttrs", t.item.imageLink.attributes), P(), A("ngTemplateOutlet", r); 25815 } 25816} 25817function nV(e, i) { 25818 if (e & 1 && pe(0, "vn-picture", 3), e & 2) { 25819 let t = N(3); 25820 A("src", t.item.image.src)("width", t.item.image.width)("alt", t.item.image.alt ?? ""); 25821 } 25822} 25823function aV(e, i) { 25824 e & 1 && U(0, nV, 1, 3, "vn-picture", 3), e & 2 && W(N(2).item.image ? 0 : -1); 25825} 25826function oV(e, i) { 25827 e & 1 && U(0, sV, 2, 3, "a", 4)(1, aV, 1, 1), e & 2 && W(N().item.imageLink ? 0 : 1); 25828} 25829function lV(e, i) { 25830 e & 1 && pe(0, "vn-pc-component-header-v2", 1), e & 2 && A("item", N().item); 25831} 25832function cV(e, i) { 25833 if (e & 1 && pe(0, "vn-picture", 4), e & 2) { 25834 let t = N(3); 25835 A("src", t.item.image.src)("width", t.item.image.width)("alt", t.item.image.alt ?? ""); 25836 } 25837} 25838function dV(e, i) { 25839 e & 1 && U(0, cV, 1, 3, "vn-picture", 4), e & 2 && W(N(2).item.image ? 0 : -1); 25840} 25841function uV(e, i) { 25842 e & 1 && Ie(0); 25843} 25844function pV(e, i) { 25845 if (e & 1 && (ie(0, "a", 3), be(1, uV, 1, 0, "ng-container", 5), te()), e & 2) { 25846 N(); 25847 let t = Ge(1), r = N(); 25848 A("href", r.item.imageLink.url, ys)("vnHtmlAttrs", r.item.imageLink.attributes), P(), A("ngTemplateOutlet", t); 25849 } 25850} 25851function hV(e, i) { 25852 if (e & 1 && pe(0, "vn-picture", 4), e & 2) { 25853 let t = N(3); 25854 A("src", t.item.image.src)("width", t.item.image.width)("alt", t.item.image.alt ?? ""); 25855 } 25856} 25857function mV(e, i) { 25858 e & 1 && U(0, hV, 1, 3, "vn-picture", 4), e & 2 && W(N(2).item.image ? 0 : -1); 25859} 25860function fV(e, i) { 25861 if (e & 1 && (be(0, dV, 1, 1, "ng-template", null, 0, ti), U(2, pV, 2, 3, "a", 3)(3, mV, 1, 1)), e & 2) { 25862 let t = N(); 25863 P(2), W(t.item.imageLink ? 2 : 3); 25864 } 25865} 25866function gV(e, i) { 25867 e & 1 && pe(0, "div", 2), e & 2 && A("vnDynamicHtml", N().item.text); 25868} 25869function vV(e, i) { 25870 e & 1 && pe(0, "vn-pc-component-header-v2", 0), e & 2 && A("item", N().item); 25871} 25872function SV(e, i) { 25873 if (e & 1) { 25874 let t = qe(); 25875 ie(0, "div", 1)(1, "cloudflare-stream", 2), Ce("play", function(r) { 25876 return Ae(t), Pe(N().onPlay(r)); 25877 })("pause", function() { 25878 return Ae(t), Pe(N().onPause()); 25879 })("ended", function() { 25880 return Ae(t), Pe(N().onEnd()); 25881 }), te()(); 25882 } 25883 if (e & 2) { 25884 let t = N(); 25885 P(), A("controls", !!t.item.controls)("autoplay", t.settings.autoplay)("loop", t.settings.loop)("muted", t.settings.muted)("preload", t.settings.preload)("poster", t.settings.poster)("src", i); 25886 } 25887} 25888function bV(e, i) { 25889 if (e & 1 && pe(0, "vn-picture", 10), e & 2) { 25890 let t = N(3); 25891 A("src", t.item.image.src)("width", t.item.image.width)("profileSet", t.imageProfilesSet)("alt", t.item.image.alt ?? ""); 25892 } 25893} 25894function yV(e, i) { 25895 e & 1 && U(0, bV, 1, 4, "vn-picture", 10), e & 2 && W(N(2).item.image ? 0 : -1); 25896} 25897function wV(e, i) { 25898 e & 1 && Ie(0); 25899} 25900function EV(e, i) { 25901 if (e & 1 && (ie(0, "a", 9), be(1, wV, 1, 0, "ng-container", 11), te()), e & 2) { 25902 N();
25903 let t = Ge(2), r = N(); 25904 A("href", r.item.imageLink.url, ys)("vnHtmlAttrs", r.item.imageLink.attributes), P(), A("ngTemplateOutlet", t); 25905 } 25906} 25907function CV(e, i) { 25908 if (e & 1 && pe(0, "vn-picture", 10), e & 2) { 25909 let t = N(3); 25910 A("src", t.item.image.src)("width", t.item.image.width)("profileSet", t.imageProfilesSet)("alt", t.item.image.alt ?? ""); 25911 } 25912} 25913function NV(e, i) { 25914 e & 1 && U(0, CV, 1, 4, "vn-picture", 10), e & 2 && W(N(2).item.image ? 0 : -1); 25915} 25916function TV(e, i) { 25917 if (e & 1 && (ie(0, "div", 3), be(1, yV, 1, 1, "ng-template", null, 1, ti), U(3, EV, 2, 3, "a", 9)(4, NV, 1, 1), te()), e & 2) { 25918 let t = N(); 25919 P(3), W(t.item.imageLink ? 3 : 4); 25920 } 25921} 25922function kV(e, i) { 25923 if (e & 1 && (ie(0, "div", 4), pe(1, "vn-picture", 12), te()), e & 2) { 25924 let t = N(); 25925 P(), A("src", t.item.imageOverlay.src)("width", t.item.imageOverlay.width)("profileSet", t.overlayImageProfilesSet)("alt", t.item.imageOverlay.alt ?? "")("imgClass", t.item.imageOverlayClass ?? ""); 25926 } 25927} 25928function xV(e, i) { 25929 e & 1 && Ie(0); 25930} 25931function IV(e, i) { 25932 e & 1 && Ie(0); 25933} 25934function OV(e, i) { 25935 e & 1 && pe(0, "div", 7), e & 2 && A("vnDynamicHtml", N().item.text); 25936} 25937function PV(e, i) { 25938 e & 1 && pe(0, "div", 8), e & 2 && A("vnDynamicHtml", N().item.optionalText); 25939} 25940function AV(e, i) { 25941 if (e & 1 && (ie(0, "h1", 13), Je(1), te()), e & 2) { 25942 let t = N(2), r = t.text, s = t.class; 25943 A("ngClass", s), P(), gt(r); 25944 } 25945} 25946function $V(e, i) { 25947 if (e & 1 && (ie(0, "h2", 13), Je(1), te()), e & 2) { 25948 let t = N(2), r = t.text, s = t.class; 25949 A("ngClass", s), P(), gt(r); 25950 } 25951} 25952function _V(e, i) { 25953 if (e & 1 && (ie(0, "h3", 13), Je(1), te()), e & 2) { 25954 let t = N(2), r = t.text, s = t.class; 25955 A("ngClass", s), P(), gt(r); 25956 } 25957} 25958function MV(e, i) { 25959 if (e & 1 && (ie(0, "h4", 13), Je(1), te()), e & 2) { 25960 let t = N(2), r = t.text, s = t.class; 25961 A("ngClass", s), P(), gt(r); 25962 } 25963} 25964function RV(e, i) { 25965 if (e & 1 && (ie(0, "h5", 13), Je(1), te()), e & 2) { 25966 let t = N(2), r = t.text, s = t.class; 25967 A("ngClass", s), P(), gt(r); 25968 } 25969} 25970function LV(e, i) { 25971 if (e & 1 && (ie(0, "h6", 13), Je(1), te()), e & 2) { 25972 let t = N(2), r = t.text, s = t.class; 25973 A("ngClass", s), P(), gt(r); 25974 } 25975} 25976function BV(e, i) { 25977 if (e & 1 && U(0, AV, 2, 2, "h1", 13)(1, $V, 2, 2, "h2", 13)(2, _V, 2, 2, "h3", 13)(3, MV, 2, 2, "h4", 13)(4, RV, 2, 2, "h5", 13)(5, LV, 2, 2, "h6", 13), e & 2) { 25978 let t, r = N().tag; 25979 W((t = r) === "h1" ? 0 : t === "h2" ? 1 : t === "h3" ? 2 : t === "h4" ? 3 : t === "h5" ? 4 : t === "h6" ? 5 : -1); 25980 } 25981} 25982function DV(e, i) { 25983 if (e & 1 && U(0, BV, 6, 1), e & 2) { 25984 let t = i.text; 25985 W(t ? 0 : -1); 25986 } 25987} 25988function FV(e, i) { 25989 e & 1 && pe(0, "vn-pc-component-header-v2", 0), e & 2 && A("item", N().item); 25990} 25991function zV(e, i) { 25992 e & 1 && Ie(0); 25993} 25994function GV(e, i) { 25995 if (e & 1 && be(0, zV, 1, 0, "ng-container", 1), e & 2) { 25996 let t = i.$implicit; 25997 A("vnPageMatrix", t); 25998 } 25999} 26000function VV(e, i) { 26001 return this.trackByName; 26002} 26003function HV(e, i) { 26004 e & 1 && pe(0, "vn-pc-component-header-v2", 0), e & 2 && A("item", N().item); 26005} 26006function UV(e, i) { 26007 e & 1 && Ie(0); 26008} 26009function WV(e, i) { 26010 if (e & 1 && be(0, UV, 1, 0, "ng-container", 1), e & 2) { 26011 let t = i.$implicit; 26012 A("vnPageMatrix", t); 26013 } 26014} 26015function jV(e, i) { 26016 e & 1 && pe(0, "vn-pc-component-header-v2", 0), e & 2 && A("item", N().item); 26017} 26018function YV(e, i) { 26019 if (e & 1 && pe(0, "vn-pc-menu-item", 2), e & 2) { 26020 let t = i.$implicit, r = N(2); 26021 A("item", t)("section", r.section)("id", t.name); 26022 } 26023} 26024function KV(e, i) { 26025 if (e & 1 && (ie(0, "div", 1), Sr(1, YV, 1, 3, "vn-pc-menu-item", 2, Gb().trackByText, !0), te()), e & 2) { 26026 let t = N(); 26027 P(), fr(t.items); 26028 } 26029} 26030function qV(e, i) { 26031 e & 1 && pe(0, "vn-pc-component-header-v2", 0), e & 2 && A("item", N().item); 26032} 26033function XV(e, i) { 26034 e & 1 && Ie(0); 26035} 26036function JV(e, i) { 26037 if (e & 1 && pe(0, "vn-image", 0), e & 2) { 26038 let t = N(); 26039 A("src", t.item.image.src)("alt", t.item.image.alt)("width", t.item.image.width)("height", t.item.image.height); 26040 } 26041} 26042function QV(e, i) { 26043 e & 1 && Ie(0); 26044} 26045function ZV(e, i) { 26046 if (e & 1 && (ie(0, "div", 1), be(1, QV, 1, 0, "ng-container", 2), te()), e & 2) { 26047 let t = i.$implicit; 26048 P(), A("vnPageMatrix", t); 26049 } 26050} 26051function eH(e, i) { 26052 if (e & 1) { 26053 let t = qe(); 26054 ie(0, "div", 4), Ce("click", function() { 26055 let r = Ae(t).$implicit; 26056 return Pe(N().scrollTo(r.name)); 26057 }), ie(1, "span", 5), Je(2), te(), ie(3, "div", 6), pe(4, "span", 7), te()(); 26058 } 26059 if (e & 2) { 26060 let t = i.$implicit; 26061 A("ngClass", vr(2, BP, N().currentItem === t.name)), P(2), gt(t.title); 26062 } 26063} 26064function tH(e, i) { 26065 e & 1 && Ie(0); 26066} 26067function iH(e, i) { 26068 if (e & 1 && be(0, tH, 1, 0, "ng-container", 8), e & 2) { 26069 let t = i.$implicit; 26070 A("vnPageMatrix", t); 26071 } 26072} 26073function rH() { 26074 return [Al(ab)]; 26075} 26076function sH(e, i) { 26077 e & 1 && Ie(0); 26078} 26079var bu, vs, Rt, MP, tb, RP, ml, pr, LP, ib, rb, BP, DP, FP, zP, GP, sb, VP, HP, UP, nb, WP, jP, YP, KP, qP, XP, JP, QP, ZP, eA, tA, iA, ab, rA, sA, nA; 26080function aA() { 26081 return (aA = Z((() => { 26082 Re(), de(), rr(), Ye(), Cs(), Hn(), Et(), Un(), st(), Ns(), xy(), Cr(), Ht(), _l(), Uy(), qv(), bS(), fu(), US(), eb(), bu = (() => { 26083 let e = class { 26084 constructor() { 26085 this.dynamicComponentsRegistry = f(i_); 26086 } 26087 registerComponent(t, r) { 26088 this.dynamicComponentsRegistry.registerComponent(hy.PageMatrix, t.toLowerCase(), r); 26089 } 26090 getComponent(t) { 26091 return this.dynamicComponentsRegistry.get(hy.PageMatrix, t.toLowerCase()); 26092 } 26093 }; 26094 return e.ɵfac = function(i) { 26095 return new (i || e)(); 26096 }, e.ɵprov = R({ 26097 token: e, 26098 factory: e.ɵfac, 26099 providedIn: "root" 26100 }), e; 26101 })(), vs = (() => { 26102 let e = class { 26103 constructor() { 26104 this.viewContainerRef = f(Fu), this.pageMatrixService = f(bu), this.corePageMatrixService = f(gy), this.log = f(lt), this.templatesRegistered = !1, this.unsubscribe = new Xe(); 26105 } 26106 ngOnInit() { 26107 this.corePageMatrixService.whenReady.pipe(bi(this.unsubscribe)).subscribe(() => { 26108 this.templatesRegistered = !0, this.renderComponent(); 26109 }); 26110 } 26111 ngOnChanges() { 26112 this.renderComponent(); 26113 } 26114 ngOnDestroy() { 26115 this.unsubscribe.next(), this.unsubscribe.complete(), this.viewContainerRef.clear(), this.componentRef = void 0; 26116 } 26117 renderComponent() { 26118 if (this.templatesRegistered && (this.viewContainerRef.clear(), this.vnPageMatrix)) { 26119 let t = this.resolveTemplate(this.vnPageMatrix); 26120 t && (this.componentRef = this.viewContainerRef.createComponent(t), this.componentRef.setInput("item", this.vnPageMatrix), this.componentRef.changeDetectorRef.detectChanges()); 26121 } 26122 } 26123 resolveTemplate(t) { 26124 let r; 26125 return t?.parameters && (r = t.parameters.render || t.parameters.template), r = r || t.templateName, r ? this.pageMatrixService.getComponent(r) || (this.log.warn(`No component is registered to render template '${r}'`), null) : (this.log.warn("templateName is not specified for c
26125ontent ", t), null); 26126 } 26127 }; 26128 return e.ɵfac = function(i) { 26129 return new (i || e)(); 26130 }, e.ɵdir = ci({ 26131 type: e, 26132 selectors: [[ 26133 "", 26134 "vnPageMatrix", 26135 "" 26136 ]], 26137 inputs: { vnPageMatrix: "vnPageMatrix" }, 26138 features: [Fn] 26139 }), e; 26140 })(), Rt = (() => { 26141 let e = class { 26142 constructor() { 26143 this.trackByName = tp("name"), this.trackByText = tp("text"); 26144 } 26145 createClass(t) { 26146 let r = `pc-component ${t}`, s = this.item?.class; 26147 return s && (r += ` ${s}`), r; 26148 } 26149 }; 26150 return e.ɵfac = function(i) { 26151 return new (i || e)(); 26152 }, e.ɵdir = ci({ 26153 type: e, 26154 inputs: { item: "item" } 26155 }), e; 26156 })(), MP = (() => { 26157 let e = class { 26158 constructor() { 26159 this.elementRef = f(di), this.timerService = f(Ui), this.menuTimeOut = 0, this.sectionChange = It(), this.scrollStop = It(), this._doc = f(vi), this.scrollEventHandler = () => { 26160 this.onScroll(), this.timerService.clearTimeout(this.timeoutId), this.timeoutId = this.timerService.setTimeout(() => { 26161 this.currentSection = "", this.scrollStop.emit(); 26162 }, this.menuTimeOut); 26163 }; 26164 } 26165 ngOnInit() { 26166 this._doc.addEventListener(qr.Scroll, this.scrollEventHandler, !1); 26167 } 26168 ngOnDestroy() { 26169 this._doc.removeEventListener(qr.Scroll, this.scrollEventHandler, !1), this.timerService.clearTimeout(this.timeoutId); 26170 } 26171 onScroll() { 26172 let t = "", r = this.elementRef.nativeElement.getElementsByClassName("menu-element"); 26173 for (let s = 0; s < r.length; s++) { 26174 let n = r[s]; 26175 n.getBoundingClientRect().top <= (this.navBarTopHeight || 114) && (t = n.id); 26176 } 26177 t !== this.currentSection && (this.currentSection = t, this.sectionChange.emit(this.currentSection)); 26178 } 26179 }; 26180 return e.ɵfac = function(i) { 26181 return new (i || e)(); 26182 }, e.ɵdir = ci({ 26183 type: e, 26184 selectors: [[ 26185 "", 26186 "vnScrollMenu", 26187 "" 26188 ]], 26189 inputs: { 26190 menuTimeOut: "menuTimeOut", 26191 navBarTopHeight: "navBarTopHeight" 26192 }, 26193 outputs: { 26194 sectionChange: "sectionChange", 26195 scrollStop: "scrollStop" 26196 } 26197 }), e; 26198 })(), tb = (() => { 26199 let e = class extends Rt { 26200 constructor() { 26201 super(), this.metaTagsService = f(d_), this.htmlNode = f(ey), this.destroyRef = f(ze); 26202 } 26203 ngOnInit() { 26204 this.setHtmlClass(!0), this.writePageMetadata(); 26205 } 26206 ngOnDestroy() { 26207 this.setHtmlClass(!1), this.metaTagsService.whenReady.subscribe(() => this.metaTagsService.clearPageTags()); 26208 } 26209 writePageMetadata() { 26210 let t = {}; 26211 this.item.pageDescription && (t.description = this.item.pageDescription), this.item.pageMetaTags && Object.assign(t, this.item.pageMetaTags), this.metaTagsService.whenReady.pipe(he(this.destroyRef)).subscribe(() => this.metaTagsService.setPageTags(this.item.pageTitle, t)); 26212 } 26213 setHtmlClass(t) { 26214 this.item.parameters?.htmlClass && this.htmlNode.setCssClass(this.item.parameters.htmlClass, t); 26215 } 26216 }; 26217 return e.ɵfac = function(i) { 26218 return new (i || e)(); 26219 }, e.ɵdir = ci({ 26220 type: e, 26221 features: [Dt] 26222 }), e; 26223 })(), RP = (e, i) => i.media, ml = (() => { 26224 let e = class { 26225 constructor() { 26226 this.src = ce.required(), this.alt = ce(""), this.width = ce(void 0), this.profileSet = ce(void 0), this.imgClass = ce(""), this.page = f(jr), this.urlService = f(Wn), this.log = f(lt), this.sources = ne(() => this.computeSources()); 26227 } 26228 computeSources() { 26229 let t = this.src(); 26230 if (!t) return []; 26231 let r = this.profileSet() || "default", s = this.page.imageProfiles[r]; 26232 if (s || (this.log.warn(`Image profile set ${r} is not defined, using default.`), s = this.page.imageProfiles.default), !s?.widthBreakpoints?.length) return []; 26233 let n = this.width(); 26234 return s.widthBreakpoints.filter((a) => this.shouldIncludeWidth(a, n)).map((a) => { 26235 let o = this.urlService.parse(t); 26236 return o.search.set("p", `${s.prefix}${a}`), { 26237 media: `(max-width: ${a}px)`, 26238 srcset: o.absUrl() 26239 }; 26240 }); 26241 } 26242 shouldIncludeWidth(t, r) { 26243 return r ? r > t : !0; 26244 } 26245 }; 26246 return e.ɵfac = function(i) { 26247 return new (i || e)(); 26248 }, e.ɵcmp = ge({ 26249 type: e, 26250 selectors: [["vn-picture"]], 26251 inputs: { 26252 src: [1, "src"], 26253 alt: [1, "alt"], 26254 width: [1, "width"], 26255 profileSet: [1, "profileSet"], 26256 imgClass: [1, "imgClass"] 26257 }, 26258 decls: 4, 26259 vars: 5, 26260 consts: [[ 26261 3, 26262 "src", 26263 "alt" 26264 ]], 26265 template: function(i, t) { 26266 i & 1 && (Nt(0, "picture"), Sr(1, wG, 1, 2, "source", null, RP), br(3, "img", 0), ft()), i & 2 && (P(), fr(t.
26266sources()), P(2), Le(t.imgClass()), bl("src", t.src(), ys)("alt", t.alt()), Qe("width", t.width())); 26267 }, 26268 styles: ["[_nghost-%COMP%]{display:contents}picture[_ngcontent-%COMP%]{display:contents}"] 26269 }), e; 26270 })(), pr = (() => { 26271 let e = class { 26272 ngOnInit() { 26273 if (this.title = this.item.title, !this.title && this.item.titleLink && (this.title = this.item.titleLink.text), this.tag = "h3", this.item.parameters) { 26274 let t = this.item.parameters["title-tag"]; 26275 t && /^h[1-6]$/.test(t) && (this.tag = t), this.titleClass = this.item.parameters["title-class"]; 26276 } 26277 } 26278 }; 26279 return e.ɵfac = function(i) { 26280 return new (i || e)(); 26281 }, e.ɵcmp = ge({ 26282 type: e, 26283 selectors: [["vn-pc-component-header-v2"]], 26284 hostVars: 2, 26285 hostBindings: function(i, t) { 26286 i & 2 && wt("pc-header", !0); 26287 }, 26288 inputs: { item: "item" }, 26289 decls: 8, 26290 vars: 1, 26291 consts: [ 26292 ["content", ""], 26293 [ 26294 1, 26295 "pc-h", 26296 3, 26297 "id", 26298 "ngClass" 26299 ], 26300 [ 26301 1, 26302 "pc-h-a", 26303 3, 26304 "href", 26305 "vnHtmlAttrs" 26306 ], 26307 [4, "ngTemplateOutlet"] 26308 ], 26309 template: function(i, t) { 26310 if (i & 1 && (be(0, NG, 2, 2, "ng-template", null, 0, ti), U(2, kG, 2, 3, "h1", 1)(3, IG, 2, 3, "h2", 1)(4, PG, 2, 3, "h3", 1)(5, $G, 2, 3, "h4", 1)(6, MG, 2, 3, "h5", 1)(7, LG, 2, 3, "h6", 1)), i & 2) { 26311 let r; 26312 P(2), W((r = t.tag) === "h1" ? 2 : r === "h2" ? 3 : r === "h3" ? 4 : r === "h4" ? 5 : r === "h5" ? 6 : r === "h6" ? 7 : -1); 26313 } 26314 }, 26315 dependencies: [ 26316 Vn, 26317 Vi, 26318 qs, 26319 Oa 26320 ], 26321 encapsulation: 2, 26322 changeDetection: 1 26323 }), e; 26324 })(), LP = (e, i, t) => ({ 26325 item: e, 26326 section: i, 26327 level: t 26328 }), ib = (() => { 26329 let e = class RA { 26330 constructor() { 26331 this.menuActionService = f(Ny), this.level = 1, this.type = RA, this.trackByText = tp("text"); 26332 } 26333 onClick(t) { 26334 let r = this.findFirstNonEmpty(this.item); 26335 r && r !== this.item && this.menuActionService.processClick(t, r, this.section); 26336 } 26337 findFirstNonEmpty(t) { 26338 if (t.url || t.clickAction) return t; 26339 if (t.children) for (let r of t.children) { 26340 let s = this.findFirstNonEmpty(r); 26341 if (s) return s; 26342 } 26343 } 26344 }; 26345 return e.ɵfac = function(i) { 26346 return new (i || e)(); 26347 }, e.ɵcmp = ge({ 26348 type: e, 26349 selectors: [["vn-pc-menu-item"]], 26350 inputs: { 26351 item: "item", 26352 section: "section", 26353 level: "level" 26354 }, 26355 decls: 4, 26356 vars: 4, 26357 consts: [ 26358 [1, "pc-menu-item-container"], 26359 [ 26360 "linkClass", 26361 "pc-menu-link", 26362 1, 26363 "pc-menu-item", 26364 3, 26365 "onClick", 26366 "item", 26367 "section" 26368 ], 26369 [1, "pc-menu-item-indicator"], 26370 [ 26371 3, 26372 "class", 26373 "collapsed" 26374 ], 26375 [ 26376 "name", 26377 "theme-plus", 26378 "extraClass", 26379 "ui-icon ui-icon-size-sm" 26380 ], 26381 [ 26382 "name", 26383 "theme-minus", 26384 "extraClass", 26385 "ui-icon ui-icon-size-sm" 26386 ], 26387 [ 26388 "name", 26389 "theme-plus", 26390 "extraClass", 26391 "ui-icon ui-icon-size-sm", 26392 3, 26393 "click" 26394 ], 26395 [ 26396 "name", 26397 "theme-minus", 26398 "extraClass", 26399 "ui-icon ui-icon-size-sm", 26400 3, 26401 "click" 26402 ], 26403 [ 26404 4, 26405 "vnDynamicComponent", 26406 "vnDynamicComponentAttr" 26407 ] 26408 ], 26409 template: function(i, t) { 26410 i & 1 && (ie(0, "div", 0)(1, "vn-menu-item", 1), Ce("onClick", function(r) { 26411 return t.onClick(r); 26412 }), te(), U(2, FG, 3, 1, "div", 2), te(), U(3, VG, 3, 5, "div", 3)), i & 2 && (P(), A("item", t.item)("section", t.section), P(), W(t.item.children && t.item.children.length ? 2 : -1), P(), W(t.item.children ? 3 : -1)); 26413 }, 26414 dependencies: [ 26415 HS, 26416 Ty, 26417 Wi 26418 ], 26419 encapsulation: 2, 26420 changeDetection: 1 26421 }), e; 26422 })(), rb = (e, i, t) => ({ 26423 text: e, 26424 tag: i, 26425 class: t 26426 }), BP = (e) => ({ "pc-navscroll--active": e }), DP = (() => { 26427 let e = class extends tb { 26428 constructor() { 26429 super(); 26430 } 26431 get class() { 26432 return [ 26433 "pm-page", 26434 "pm-1col", 26435 "pm-simple-layout", 26436 this.item.pageClass
26437 ].filter(Boolean).join(" "); 26438 } 26439 get id() { 26440 return this.item.pageId; 26441 } 26442 }; 26443 return e.ɵfac = function(i) { 26444 return new (i || e)(); 26445 }, e.ɵcmp = ge({ 26446 type: e, 26447 selectors: [["vn-pm-1col-page"]], 26448 hostVars: 3, 26449 hostBindings: function(i, t) { 26450 i & 2 && (Qe("id", t.id), Le(t.class)); 26451 }, 26452 features: [Dt], 26453 decls: 2, 26454 vars: 0, 26455 consts: [[4, "vnPageMatrix"]], 26456 template: function(i, t) { 26457 i & 1 && Sr(0, UG, 1, 1, "ng-container", null, t.trackByName, !0), i & 2 && fr(t.item.content); 26458 }, 26459 dependencies: [vs], 26460 encapsulation: 2, 26461 changeDetection: 1 26462 }), e; 26463 })(), FP = (() => { 26464 let e = class extends Rt { 26465 get class() { 26466 return this.createClass("pc-text"); 26467 } 26468 }; 26469 return e.ɵfac = (() => { 26470 let i; 26471 return function(t) { 26472 return (i || (i = Fe(e)))(t || e); 26473 }; 26474 })(), e.ɵcmp = ge({ 26475 type: e, 26476 selectors: [["vn-pc-text"]], 26477 hostVars: 2, 26478 hostBindings: function(i, t) { 26479 i & 2 && Le(t.class); 26480 }, 26481 features: [Dt], 26482 decls: 2, 26483 vars: 2, 26484 consts: [[3, "item"], [ 26485 1, 26486 "pc-txt", 26487 3, 26488 "vnDynamicHtml" 26489 ]], 26490 template: function(i, t) { 26491 i & 1 && (U(0, WG, 1, 1, "vn-pc-component-header-v2", 0), pe(1, "div", 1)), i & 2 && (W(t.item.title ? 0 : -1), P(), A("vnDynamicHtml", t.item.text)); 26492 }, 26493 dependencies: [Er, pr], 26494 encapsulation: 2, 26495 changeDetection: 1 26496 }), e; 26497 })(), zP = (() => { 26498 var e; 26499 let i = class extends Rt { 26500 constructor() { 26501 super(...arguments), Qi(this, e), this.navigation = f(Ai), this.media = f(wy), this.headerBarService = f(Pa), this.customHeaderClass = "", Zi(this, e, f(dt)), this._doc = f(vi); 26502 } 26503 ngOnInit() { 26504 this.item.parameters && (this.item.parameters["custom-header-media-query"] && (this.showCustomHeaderTemplate = this.media.isActive(this.item.parameters["custom-header-media-query"])), this.item.parameters["custom-header-class"] && (this.customHeaderClass = this.item.parameters["custom-header-class"])); 26505 } 26506 onBackClick() { 26507 this._doc.referrer ? $t(this, e).history.back() : this.navigation.goToLastKnownProduct(); 26508 } 26509 close() { 26510 let r = this.item.parameters?.["welcome-overlay-url"]; 26511 r && this.navigation?.previousUrl?.includes(r) ? $t(this, e).history.back() : this.headerBarService.close(); 26512 } 26513 }; 26514 return e = /* @__PURE__ */ new WeakMap(), i.ɵfac = (() => { 26515 let t; 26516 return function(r) { 26517 return (t || (t = Fe(i)))(r || i); 26518 }; 26519 })(), i.ɵcmp = ge({ 26520 type: i, 26521 selectors: [["vn-pc-text-with-header-bar"]], 26522 features: [Dt], 26523 decls: 4, 26524 vars: 3, 26525 consts: [ 26526 [3, "content"], 26527 [ 26528 1, 26529 "custom-header", 26530 3, 26531 "ngClass" 26532 ], 26533 [ 26534 1, 26535 "pc-text", 26536 "pc-component", 26537 3, 26538 "ngClass" 26539 ], 26540 [ 26541 1, 26542 "pc-txt", 26543 3, 26544 "vnDynamicHtml" 26545 ], 26546 [ 26547 3, 26548 "onClose", 26549 "content" 26550 ], 26551 [1, "header-ctrl-l"], 26552 [ 26553 "name", 26554 "theme-arrow-left", 26555 "extraClass", 26556 "ui-icon ui-icon-size-lg ui-back d-flex align-items-center", 26557 3, 26558 "click" 26559 ], 26560 [1, "header-ctrl-txt"] 26561 ], 26562 template: function(t, r) { 26563 t & 1 && (U(0, jG, 1, 1, "lh-header-bar", 0)(1, KG, 4, 2, "div", 1), ie(2, "div", 2), pe(3, "div", 3), te()), t & 2 && (W(r.showCustomHeaderTemplate ? 1 : 0), P(2), A("ngClass", r.item.class), P(), A("vnDynamicHtml", r.item.text)); 26564 }, 26565 dependencies: [ 26566 Er, 26567 Su, 26568 Wi, 26569 Vi 26570 ], 26571 encapsulation: 2, 26572 changeDetection: 1 26573 }), i; 26574 })(), GP = (() => { 26575 var e; 26576 let i = class extends Rt { 26577 constructor() { 26578 super(...arguments), Qi(this, e), this.navigation = f(Ai), this.productHomepages = f(p_), this.deviceService = f(nr), this.customHeaderClass = "", Zi(this, e, f(dt)), this._doc = f(vi); 26579 } 26580 ngOnInit() { 26581 this.item.parameters?.["custom-header-class"] && (this.customHeaderClass = this.item.parameters["custom-header-class"]); 26582 } 26583 onHistoryBack() { 26584 this._doc.referrer ? $t(this, e).history.back() : this.productHomepages.promo ? this.navigation.goTo(this.productHomepages.promo, { isBackNavigation: !0 }) : this.navigation.goToLastKnownProduct(); 26585 } 26586 }; 26587 return e = /* @__PURE__ */ new WeakMap(), i.ɵfac = (() => { 26588 let t; 26589 return function(r) { 26590 return (t || (t = Fe(i)))(r || i); 26591 }; 26592 })(), i.ɵcmp = ge({ 26593 type: i, 26594 selectors: [["vn-pc-header-for-mpp-page"]], 26595 features: [Dt], 26596 decls: 4, 26597 vars: 3, 26598 consts: [ 26599 [3, "content"], 26600 [ 26601 1, 26602 "custom-header", 26603 3, 26604 "ngClass" 26605 ], 26606 [ 26607 1, 26608 "pc-text", 26609 "pc-component", 26610 3, 26611 "ngClass" 26612 ], 26613 [ 26614 1, 26615 "pc-txt", 26616 3, 26617 "vnDynamicHtml" 26618 ], 26619 [ 26620 3, 26621 "onClose", 26622 "content" 26623 ], 26624 [1, "header-ctrl-l"], 26625 [ 26626 "name", 26627 "theme-arrow-left", 26628 "extraClass", 26629 "ui-icon ui-icon-size-lg ui-back d-flex align-items-center", 26630 3, 26631 "click" 26632 ], 26633 [1, "header-ctrl-txt"] 26634 ], 26635 template: function(t, r) { 26636 t & 1 && (U(0, qG, 1, 1, "lh-header-bar", 0)(1, JG, 4, 2, "div", 1), ie(2, "div", 2), pe(3, "div", 3), te()), t & 2 && (W(r.deviceService.isMobilePhone ? 0 : 1), P(2), A("ngClass", r.item.class), P(), A("vnDynamicHtml", r.item.text)); 26637 }, 26638 dependencies: [ 26639 Er, 26640 Su, 26641 Wi, 26642 Vi 26643 ], 26644 encapsulation: 2, 26645 changeDetection: 1 26646 }), i; 26647 })(), sb = 0, VP = (() => { 26648 let e = class extends Rt { 26649 get class() { 26650 return this.createClass("pc-toggle"); 26651 } 26652 ngOnInit() { 26653 this.id = `pctoggle_chbx_${sb}`, sb++; 26654 } 26655 }; 26656 return e.ɵfac = (() => { 26657 let i; 26658 return function(t) { 26659 return (i || (i = Fe(e)))(t || e); 26660 }; 26661 })(), e.ɵcmp = ge({ 26662 type: e, 26663 selectors: [["vn-pc-toggle"]], 26664 hostVars: 2, 26665 hostBindings: function(i, t) { 26666 i & 2 && Le(t.class); 26667 }, 26668 features: [Dt], 26669 decls: 1, 26670 vars: 1, 26671 consts: [ 26672 [ 26673 "type", 26674 "checkbox", 26675 1, 26676 "pc-toggle-checker" 26677 ], 26678 [1, "pc-toggle-label"], 26679 [ 26680 "name", 26681 "theme-up", 26682 "extraClass", 26683 "pc-toggle__icon-up" 26684 ], 26685 [ 26686 "name", 26687 "theme-down", 26688 "extraClass", 26689 "pc-toggle__icon-down" 26690 ], 26691 [ 26692 1, 26693 "pc-txt", 26694 "pc-toggle-txt", 26695 3, 26696 "vnDynamicHtml" 26697 ] 26698 ], 26699 template: function(i, t) { 26700 i & 1 && U(0, QG, 6, 4), i & 2 && W(t.item.text ? 0 : -1); 26701 }, 26702 dependencies: [Er, Wi], 26703 encapsulation: 2, 26704 changeDetection: 1 26705 }), e; 26706 })(), HP = (() => { 26707 let e = class extends Rt { 26708 get class() { 26709 return this.createClass("pc-image"); 26710 } 26711 }; 26712 return e.ɵfac = (() => { 26713 let i; 26714 return function(t) { 26715 return (i || (i = Fe(e)))(t || e); 26716 }; 26717 })(), e.ɵcmp = ge({ 26718 type: e, 26719 selectors: [["vn-pc-image"]], 26720 hostVars: 2, 26721 hostBindings: function(i, t) { 26722 i & 2 && Le(t.class); 26723 }, 26724 features: [Dt], 26725 decls: 5, 26726 vars: 2, 26727 consts: [ 26728 ["pic", ""], 26729 [3, "item"], 26730 [3, "name"], 26731 [ 26732 "imgClass", 26733 "pc-img", 26734 3, 26735 "src", 26736 "width", 26737 "alt" 26738 ], 26739 [ 26740 1, 26741 "pc-img-a", 26742 3, 26743 "href", 26744 "vnHtmlAttrs" 26745 ], 26746 [4, "ngTemplateOutlet"] 26747 ], 26748 template: function(i, t) { 26749 i & 1 && (U(0, ZG, 1, 1, "vn-pc-component-header-v2", 1), be(1, tV, 1, 1, "ng-template", null, 0, ti), U(3, iV, 1, 1, "vn-icon", 2)(4, oV, 2, 1)), i & 2 && (W(t.item.title ? 0 : -1), P(3), W(t.item.iconName ? 3 : 4)); 26750 }, 26751 dependencies: [ 26752 qs, 26753 Oa, 26754 ml, 26755 pr, 26756 Wi 26757 ], 26758 encapsulation: 2, 26759 changeDetection: 1 26760 }), e; 26761 })(), UP = (() => { 26762 let e = class extends Rt { 26763 get class() { 26764 return this.createClass("pc-image-text"); 26765 } 26766 }; 26767 return e.ɵfac = (() => { 26768 let i; 26769 return function(t) { 26770 return (i || (i = Fe(e)))(t || e); 26771 }; 26772 })(), e.ɵcmp = ge({ 26773 type: e, 26774 selectors: [["vn-pc-image-text"]], 26775 hostVars: 2, 26776 hostBindings: function(i, t) { 26777 i & 2 && Le(t.class); 26778 }, 26779 features: [Dt], 26780 decls: 3, 26781 vars: 3, 26782 consts: [ 26783 ["pic", ""], 26784 [3, "item"], 26785 [ 26786 1, 26787 "pc-txt", 26788 3, 26789 "vnDynamicHtml" 26790 ], 26791 [ 26792 1, 26793 "pc-img-a", 26794 3, 26795 "href", 26796 "vnHtmlAttrs" 26797 ], 26798 [ 26799 "imgClass", 26800 "pc-img", 26801 3, 26802 "src", 26803 "width", 26804 "alt" 26805 ], 26806 [4, "ngTemplateOutlet"] 26807 ], 26808 template: function(i, t) { 26809 i & 1 && (U(0, lV, 1, 1, "vn-pc-component-header-v2", 1), U(1, fV, 4, 1), U(2, gV, 1, 1, "div", 2)), i & 2 && (W(t.item.title ? 0 : -1), P(), W(t.item.image ? 1 : -1), P(), W(t.item.text ? 2 : -1)); 26810 }, 26811 dependencies: [ 26812 qs, 26813 ml, 26814 Oa, 26815 pr, 26816 Er 26817 ], 26818 encapsulation: 2, 26819 changeDetection: 1 26820 }), e; 26821 })(), nb = (() => { 26822 let e = class extends Rt { 26823 constructor() { 26824 super(...arguments), this.trackingService = f(Kr), this.urlService = f(Wn), this.settings = { 26825 autoplay: !1, 26826 loop: !1, 26827 muted: !1, 26828 preload: "auto", 26829 poster: "" 26830 }, this.playing = !1, this.videoEnded = It(); 26831 } 26832 get class() { 26833 return this.createClass("pc-video"); 26834 } 26835 get style() { 26836 return { 26837 width: this.item.video?.width ? `${this.item.video.width}px` : null, 26838 height: this.item.video?.height ? `${this.item.video.height}px` : null 26839 }; 26840 } 26841 ngOnInit() { 26842 let t = this.item?.video?.src; 26843 if (!t) return; 26844 let r = this.urlService.parse(t).search;
26845 r.keys().forEach((s) => { 26846 let n = r.get(s)?.toLowerCase(); 26847 this.settings[s] = Hi(n) || n || this.settings[s]; 26848 }), this.settings.autoplay && (this.settings.muted = !0), this.settings.poster = this.item.parameters?.poster; 26849 } 26850 onPlay(t) { 26851 t.type === "play" && !this.playing && (this.playing = !0, this.trackingService.triggerEvent(Pl.Event, { 26852 "component.CategoryEvent": "pc video", 26853 "component.LabelEvent": "pc video", 26854 "component.ActionEvent": "click", 26855 "component.PositionEvent": "not applicable", 26856 "component.LocationEvent": "public page", 26857 "component.EventDetails": "pc video play", 26858 "component.URLClicked": "not applicable" 26859 })); 26860 } 26861 onPause() { 26862 this.playing = !1, this.trackingService.triggerEvent(Pl.Event, { 26863 "component.CategoryEvent": "pc video", 26864 "component.LabelEvent": "pc video", 26865 "component.ActionEvent": "click", 26866 "component.PositionEvent": "not applicable", 26867 "component.LocationEvent": "public page", 26868 "component.EventDetails": "pc video pause", 26869 "component.URLClicked": "not applicable" 26870 }); 26871 } 26872 onEnd() { 26873 this.playing = !1, this.videoEnded.emit(!0); 26874 } 26875 }; 26876 return e.ɵfac = (() => { 26877 let i; 26878 return function(t) { 26879 return (i || (i = Fe(e)))(t || e); 26880 }; 26881 })(), e.ɵcmp = ge({ 26882 type: e, 26883 selectors: [["vn-pc-video"]], 26884 hostVars: 4, 26885 hostBindings: function(i, t) { 26886 i & 2 && (XA(t.style), Le(t.class)); 26887 }, 26888 outputs: { videoEnded: "videoEnded" }, 26889 features: [Dt], 26890 decls: 2, 26891 vars: 2, 26892 consts: [ 26893 [3, "item"], 26894 [1, "pc-video-wrapper"], 26895 [ 26896 3, 26897 "play", 26898 "pause", 26899 "ended", 26900 "controls", 26901 "autoplay", 26902 "loop", 26903 "muted", 26904 "preload", 26905 "poster", 26906 "src" 26907 ] 26908 ], 26909 template: function(i, t) { 26910 if (i & 1 && (U(0, vV, 1, 1, "vn-pc-component-header-v2", 0), U(1, SV, 2, 7, "div", 1)), i & 2) { 26911 let r; 26912 W(t.item.title ? 0 : -1), P(), W((r = t.item.video?.id) ? 1 : -1, r); 26913 } 26914 }, 26915 dependencies: [ 26916 Kv, 26917 Yv, 26918 pr 26919 ], 26920 encapsulation: 2, 26921 changeDetection: 1 26922 }), e; 26923 })(), WP = (() => { 26924 let e = class extends Rt { 26925 constructor() { 26926 super(...arguments), this.subtitleTag = "h4", this.summaryTag = "h5"; 26927 } 26928 get class() { 26929 return this.createClass("pc-teaser"); 26930 } 26931 ngOnInit() { 26932 let t = ["pc-t-h-cont-sub"], r = ["pc-t-h-cont-sum"]; 26933 if (this.item.parameters) { 26934 this.imageProfilesSet = this.item.parameters["image-profiles-set"], this.overlayImageProfilesSet = this.item.parameters["overlay-image-profiles-set"]; 26935 let s = this.item.parameters["subtitle-class"], n = this.item.parameters["summary-class"], a = this.item.parameters["subtitle-tag"], o = this.item.parameters["summary-tag"]; 26936 s && t.push(s), n && r.push(n), a && (this.subtitleTag = a), o && (this.summaryTag = o); 26937 } 26938 this.subtitleClass = t.join(" "), this.summaryClass = r.join(" "); 26939 } 26940 }; 26941 return e.ɵfac = (() => { 26942 let i; 26943 return function(t) { 26944 return (i || (i = Fe(e)))(t || e); 26945 }; 26946 })(), e.ɵcmp = ge({ 26947 type: e, 26948 selectors: [["vn-pc-teaser"]], 26949 hostVars: 2, 26950 hostBindings: function(i, t) { 26951 i & 2 && Le(t.class); 26952 }, 26953 features: [Dt], 26954 decls: 10, 26955 vars: 17, 26956 consts: [ 26957 ["title", ""], 26958 ["pic", ""], 26959 [3, "item"], 26960 [1, "pc-t-img-cont"], 26961 [1, "pc-t-img-opt"], 26962 [1, "pc-t-h-cont"], 26963 [ 26964 4, 26965 "ngTemplateOutlet", 26966 "ngTemplateOutletContext" 26967 ], 26968 [ 26969 1, 26970 "pc-t-txt", 26971 3, 26972 "vnDynamicHtml" 26973 ], 26974 [ 26975 1, 26976 "pc-t-txt-opt", 26977 3, 26978 "vnDynamicHtml" 26979 ], 26980 [ 26981 1, 26982 "pc-img-a", 26983 3, 26984 "href", 26985 "vnHtmlAttrs" 26986 ], 26987 [ 26988 "imgClass", 26989 "pc-img", 26990 3, 26991 "src", 26992 "width", 26993 "profileSet", 26994 "alt" 26995 ], 26996 [4, "ngTemplateOutlet"], 26997 [ 26998 3, 26999 "src", 27000 "width", 27001 "profileSet", 27002 "alt", 27003 "imgClass" 27004 ], 27005 [ 27006 1, 27007 "pc-h", 27008 3, 27009 "ngClass" 27010 ] 27011 ], 27012 template: function(i, t) { 27013 if (i & 1 && (pe(0, "vn-pc-component-header-v2", 2), U(1, TV, 5, 1, "div", 3), U(2, kV, 2, 5, "div", 4), ie(3, "div", 5), be(4, xV, 1, 0, "ng-container", 6)(5, IV, 1, 0, "ng-container", 6), te(), U(6, OV, 1, 1, "div", 7), U(7, PV, 1, 1, "div", 8), be(8, DV, 1, 1, "ng-template", null, 0, ti)), i & 2) { 27014 let r = Ge(9); 27015 A("item", t.item), P(), W(t.item.image ? 1 : -1), P(), W(t.item.imageOverlay ? 2 : -1), P(2), A("ngTemplateOutlet", r)("ngTemplateOutletContext", Wu(9, rb, t.item.subtitle, t.subtitleTag, t.subtitleClass)), P(), A("ngTemplateOutlet", r)("ngTemplateOutletContext", Wu(13, rb, t.item.summary, t.summaryTag, t.summaryClass)), P(), W(t.item.text ? 6 : -1), P(), W(t.item.optionalText ? 7 : -1); 27016 } 27017 }, 27018 dependencies: [ 27019 qs, 27020 Er, 27021 Oa, 27022 Vi, 27023 ml, 27024 pr 27025 ], 27026 encapsulation: 2, 27027 changeDetection: 1 27028 }), e; 27029 })(), jP = (() => { 27030 let e = class extends Rt { 27031 get class() { 27032 return this.createClass("pc-container"); 27033 } 27034 }; 27035 return e.ɵfac = (() => { 27036 let i; 27037 return function(t) { 27038 return (i || (i = Fe(e)))(t || e); 27039 }; 27040 })(), e.ɵcmp = ge({ 27041 type: e, 27042 selectors: [["vn-pc-container"]], 27043 hostVars: 2, 27044 hostBindings: function(i, t) { 27045 i & 2 && Le(t.class); 27046 }, 27047 features: [Dt], 27048 decls: 3, 27049 vars: 1, 27050 consts: [[3, "item"], [4, "vnPageMatrix"]], 27051 template: function(i, t) { 27052 i & 1 && (U(0, FV, 1, 1, "vn-pc-component-header-v2", 0), Sr(1, GV, 1, 1, "ng-container", null, t.trackByName, !0)), i & 2 && (W(t.item.title ? 0 : -1), P(), fr(t.item.items)); 27053 }, 27054 dependencies: [pr, vs], 27055 encapsulation: 2, 27056 changeDetection: 1 27057 }), e; 27058 })(), YP = (() => { 27059 let e = class extends Rt { 27060 get class() { 27061 return this.createClass("pc-folder"); 27062 } 27063 }; 27064 return e.ɵfac = (() => { 27065 let i; 27066 return function(t) { 27067 return (i || (i = Fe(e)))(t || e); 27068 }; 27069 })(), e.ɵcmp = ge({ 27070 type: e, 27071 selectors: [["vn-pc-component-folder"]], 27072 hostVars: 2, 27073 hostBindings: function(i, t) { 27074 i & 2 && Le(t.class); 27075 }, 27076 features: [Dt], 27077 decls: 4, 27078 vars: 5, 27079 consts: [[3, "item"], [4, "vnPageMatrix"]], 27080 template: function(i, t) { 27081 i & 1 && (U(0, HV, 1, 1, "vn-pc-component-header-v2", 0), Sr(1, WV, 1, 1, "ng-container", null, VV, !0), Es(3, "slice")), i & 2 && (W(t.item.title ? 0 : -1), P(), fr(Mb(3, 1, t.item.items, 0, t.item.maxItems))); 27082 }, 27083 dependencies: [ 27084 pr, 27085 vs, 27086 jb 27087 ], 27088 encapsulation: 2, 27089 changeDetection: 1 27090 }), e; 27091 })(), KP = (() => { 27092 let e = class extends Rt { 27093 constructor() { 27094 super(...arguments), this.urlService = f(Wn), this.navigationService = f(Ai), this.menuItemsService = f(ip), this.elementRef = f(di), this.destroySubject = new Xe(); 27095 } 27096 get class() { 27097 return this.createClass("pc-menu"); 27098 } 27099 ngOnInit() { 27100 this.section = `${c_.PageMatrix}_${this.item.name}`, this.currentUrl = this.navigationService.location.baseUrl() + this.navigationService.location.path(); 27101 } 27102 ngAfterViewInit() { 27103 if (this.item.menu) { 27104 this.items = Da(this.item.menu.children); 27105 let t = this.findActiveChain(this.items, []); 27106 if (t.length > 0) { 27107 t.forEach((s) => s.expanded = !0); 27108 let r = t.at(-1); 27109 r?.name && this.menuItemsService.setActive(this.section, r.name), this.item.menu.parameters && this.pcMenuItems.changes.pipe(bi(this.destroySubject)).subscribe(() => { 27110 let s = this.pcMenuItems.find((o) => o.nativeElement.id === r?.name)?.nativeElement.getBoundingClientRect(), n = Hi(this.item.menu?.parameters["active-scroll-horizontal"]) ? s.x : 0, a = Hi(this.item.menu?.parameters["active-scroll-vertical"]) ? s.y : 0; 27111 (n || a) && this.elementRef.nativeElement.querySelectorAll(".pc-menu-items")[0]?.scrollBy({ 27112 left: n, 27113 top: a, 27114 behavior: "smooth" 27115 }); 27116 }); 27117 } 27118 } 27119 } 27120 ngOnDestroy() { 27121 this.destroySubject.next(null), this.destroySubject.complete(); 27122 } 27123 findActiveChain(t, r) { 27124 for (let s of t) { 27125 if (s.url) { 27126 let n = this.urlService.parse(s.url); 27127 if (this.currentUrl === n.baseUrl() + n.path()) return [...r, s]; 27128 } 27129 if (s.children) { 27130 let n = this.findActiveChain(s.children, [...r, s]); 27131 if (n.length > 0) return n; 27132 } 27133 } 27134 return []; 27135 } 27136 }; 27137 return e.ɵfac = (() => { 27138 let i; 27139 return function(t) { 27140 return (i || (i = Fe(e)))(t || e); 27141 }; 27142 })(), e.ɵcmp = ge({ 27143 type: e, 27144 selectors: [["vn-pc-menu"]], 27145 viewQuery: function(i, t) { 27146 if (i & 1 && js(ib, 5, di), i & 2) { 27147 let r; 27148 Ks(r = Us()) && (t.pcMenuItems = r); 27149 } 27150 }, 27151 hostVars: 2, 27152 hostBindings: function(i, t) { 27153 i & 2 && Le(t.class); 27154 }, 27155 features: [Dt], 27156 decls: 2, 27157 vars: 2, 27158 consts: [ 27159 [3, "item"], 27160 [1, "pc-menu-items"], 27161 [ 27162 3, 27163 "item", 27164 "section", 27165 "id" 27166 ] 27167 ], 27168 template: function(i, t) { 27169 i & 1 && (U(0, jV, 1, 1, "vn-pc-component-header-v2", 0), U(1, KV, 3, 0, "div", 1)), i & 2 && (W(t.item.title ? 0 : -1), P(), W(t.item.menu ? 1 : -1)); 27170 }, 27171 dependencies: [ib, pr], 27172 encapsulation: 2, 27173 changeDetection: 1 27174 }), e; 27175 })(), qP = (() => { 27176 let e = class extends Rt { 27177 get class() { 27178 return this.createClass("pc-regional"); 27179 } 27180 }; 27181 return e.ɵfac = (() => { 27182 let i; 27183 return function(t) { 27184 return (i || (i = Fe(e)))(t || e); 27185 }; 27186 })(), e.ɵcmp = ge({ 27187 type: e, 27188 selectors: [["vn-pc-regional-component"]], 27189 hostVars: 2, 27190 hostBindings: function(i, t) { 27191 i & 2 && Le(t.class); 27192 }, 27193 features: [Dt], 27194 decls: 2, 27195 vars: 2, 27196 consts: [[3, "item"], [4, "vnPageMatrix"]], 27197 template: function(i, t) { 27198 i & 1 && (U(0, qV, 1, 1, "vn-pc-component-header-v2", 0), be(1, XV, 1, 0, "ng-container", 1)), i & 2 && (W(t.item.title ? 0 : -1), P(), A("vnPageMatrix", t.item.item)); 27199 }, 27200 dependencies: [pr, vs], 27201 encapsulation: 2, 27202 changeDetection: 1 27203 }), e; 27204 })(), XP = (() => { 27205 let e = class extends Rt { 27206 get class() { 27207 return this.item.class; 27208 } 27209 }; 27210 return e.ɵfac = (() => { 27211 let i; 27212 return function(t) { 27213 return (i || (i = Fe(e)))(t || e); 27214 }; 27215 })(), e.ɵcmp = ge({ 27216 type: e, 27217 selectors: [["vn-pc-raw-text"]], 27218 hostVars: 1, 27219 hostBindings: function(i, t) { 27220 i & 2 && Qe("class", t.class); 27221 }, 27222 features: [Dt], 27223 decls: 1, 27224 vars: 1, 27225 consts: [[3, "vnDynamicHtml"]], 27226 template: function(i, t) { 27227 i & 1 && pe(0, "div", 0), i & 2 && A("vnDynamicHtml", t.item.text); 27228 }, 27229 dependencies: [Er], 27230 encapsulation: 2, 27231 changeDetection: 1 27232 }), e; 27233 })(), JP = (() => { 27234 let e = class extends Rt { 27235 get class() { 27236 return this.item.class; 27237 } 27238 }; 27239 return e.ɵfac = (() => { 27240 let i; 27241 return function(t) { 27242 return (i || (i = Fe(e)))(t || e); 27243 }; 27244 })(), e.ɵcmp = ge({ 27245 type: e, 27246 selectors: [["vn-pc-raw-image"]], 27247 hostVars: 1, 27248 hostBindings: function(i, t) { 27249 i & 2 && Qe("class", t.class); 27250 }, 27251 features: [Dt], 27252 decls: 1, 27253 vars: 1, 27254 consts: [[ 27255 3, 27256 "src", 27257 "alt", 27258 "width", 27259 "height" 27260 ]], 27261 template: function(i, t) { 27262 i & 1 && U(0, JV, 1, 4, "vn-image", 0), i & 2 && W(t.item.image ? 0 : -1); 27263 }, 27264 dependencies: [Wy], 27265 encapsulation: 2, 27266 changeDetection: 1 27267 }), e; 27268 })(), QP = (() => { 27269 let e = class extends Rt { 27270 constructor() { 27271 super(...arguments), this.swiperOptions = { 27272 pagination: !1, 27273 centeredSlides: !0 27274 }; 27275 } 27276 get class() { 27277 return this.createClass("pc-carousel"); 27278 } 27279 ngOnInit() { 27280 this.item.parameters && (this.swiperOptions.loop = !!Hi(this.item.parameters.loop), this.swiperOptions.autoplay = Hi(this.item.parameters.autoplay) ? { 27281 delay: Wr(this.item.parameters.interval || 3e3), 27282 disableOnInteraction: !1, 27283 stopOnLastSlide: !0, 27284 pauseOnMouseEnter: !!Hi(this.item.parameters.pauseOnHover) 27285 } : !1, this.swiperOptions.navigation = !!Hi(this.item.parameters.arrows), this.swiperOptions.pagination = !!Hi(this.item.parameters.dots), this.swiperOptions.slidesPerView = Wr(this.item.parameters.slidesPerView || 1
27285), this.swiperOptions.slidesPerGroup = this.slidesPerGroup(Number(this.item.parameters?.slidesPerGroup), this.item.items?.length || 0, this.swiperOptions.loop)), this.item.class && (this.swiperClass = `${this.item.class}`); 27286 } 27287 slidesPerGroup(t, r, s) { 27288 let n = Wr(t || 1); 27289 if (s) for (; r % n;) n--; 27290 return n; 27291 } 27292 }; 27293 return e.ɵfac = (() => { 27294 let i; 27295 return function(t) { 27296 return (i || (i = Fe(e)))(t || e); 27297 }; 27298 })(), e.ɵcmp = ge({ 27299 type: e, 27300 selectors: [["vn-pc-carousel"]], 27301 hostVars: 2, 27302 hostBindings: function(i, t) { 27303 i & 2 && Le(t.class); 27304 }, 27305 features: [Dt], 27306 decls: 4, 27307 vars: 6, 27308 consts: [ 27309 [ 27310 3, 27311 "swiperOptions", 27312 "swiperClass" 27313 ], 27314 [1, "swiper-slide"], 27315 [4, "vnPageMatrix"] 27316 ], 27317 template: function(i, t) { 27318 i & 1 && (ie(0, "vn-swiper", 0), Sr(1, ZV, 2, 1, "div", 1, YA), Es(3, "slice"), te()), i & 2 && (A("swiperOptions", t.swiperOptions)("swiperClass", t.swiperClass), P(), fr(Mb(3, 2, t.item.items, 0, t.item.maxItems))); 27319 }, 27320 dependencies: [ 27321 vs, 27322 xa, 27323 jb 27324 ], 27325 encapsulation: 2, 27326 changeDetection: 1 27327 }), e; 27328 })(), ZP = 3e3, eA = (() => { 27329 let e = class extends Rt { 27330 constructor() { 27331 super(), this._doc = f(vi); 27332 } 27333 get class() { 27334 return this.createClass("pc-scrollmenu"); 27335 } 27336 ngOnInit() { 27337 let t = this.item.parameters?.navBarTopHeight, r = this.item.parameters?.menuTimeOut || ZP; 27338 this.navBarTopHeight = Wr(t), this.menuTimeOut = Wr(r); 27339 } 27340 sectionChanged(t) { 27341 this.currentItem = t; 27342 } 27343 scrollStop() { 27344 this.currentItem = ""; 27345 } 27346 scrollTo(t) { 27347 this._doc.getElementById(t).scrollIntoView({ behavior: "smooth" }); 27348 } 27349 }; 27350 return e.ɵfac = function(i) { 27351 return new (i || e)(); 27352 }, e.ɵcmp = ge({ 27353 type: e, 27354 selectors: [["vn-pc-scrollmenu"]], 27355 hostVars: 2, 27356 hostBindings: function(i, t) { 27357 i & 2 && Le(t.class); 27358 }, 27359 features: [Dt], 27360 decls: 7, 27361 vars: 4, 27362 consts: [ 27363 [1, "pc-navscroll-menu"], 27364 [ 27365 "id", 27366 "pc-navscroll-menu-inner", 27367 1, 27368 "pc-navscroll-menu__inner" 27369 ], 27370 [ 27371 1, 27372 "pc-navscroll-menu__item", 27373 3, 27374 "ngClass" 27375 ], 27376 [ 27377 "vnScrollMenu", 27378 "", 27379 "id", 27380 "pc-scroll-menu-content", 27381 1, 27382 "pc-scroll-menu__content", 27383 3, 27384 "sectionChange", 27385 "scrollStop", 27386 "navBarTopHeight", 27387 "menuTimeOut" 27388 ], 27389 [ 27390 1, 27391 "pc-navscroll-menu__item", 27392 3, 27393 "click", 27394 "ngClass" 27395 ], 27396 [1, "pc-navscroll-menu__item-text"], 27397 [1, "pc-navscroll-menu__dot-wrapper"], 27398 [1, "pc-navscroll-menu__dot"], 27399 [4, "vnPageMatrix"] 27400 ], 27401 template: function(i, t) { 27402 i & 1 && (ie(0, "div", 0)(1, "div", 1), Sr(2, eH, 5, 4, "div", 2, t.trackByName, !0), te()(), ie(4, "div", 3), Ce("sectionChange", function(r) { 27403 return t.sectionChanged(r); 27404 })("scrollStop", function() { 27405 return t.scrollStop(); 27406 }), Sr(5, iH, 1, 1, "ng-container", null, t.trackByName, !0), te()), i & 2 && (Hs("visibility", t.currentItem ? "visible" : "hidden"), P(2), fr(t.item.menuItems), P(2), A("navBarTopHeight", t.navBarTopHeight)("menuTimeOut", t.menuTimeOut), P(), fr(t.item.items)); 27407 }, 27408 dependencies: [ 27409 MP, 27410 Vi, 27411 vs 27412 ], 27413 encapsulation: 2, 27414 changeDetection: 1 27415 }), e; 27416 })(), tA = ["*"], iA = (() => { 27417 let e = class { 27418 constructor() { 27419 this.elementRef = f(di), this.dslService = f(Js), this.embeddableComponentsService = f(py), this.injector = f(ui), this.unsubscribe = new Xe(); 27420 } 27421 ngOnInit() { 27422 let t = this.elementRef.nativeElement, r = t.originalAttributes.get("data-content-filter"), s = t.originalAttributes.get("style") || "", n = t.originalHtmlString; 27423 this.elementRef.nativeElement.setAttribute("data-content-filter", r), this.dslService.evaluateExpression(r).pipe(bi(this.unsubscribe)).subscribe((a) => { 27424 this.dynamicHtml && this.dynamicHtml.destroy(), a ? (this.elementRef.nativeElement.setAttribute("style", s), this.dynamicHtml = this.embeddableComponentsService.createDynamicHtml(this.elementRef.nativeElement, this.injector, n)) : (this.elementRef.nativeElement.setAttribute("style", "display: none"), this.dynamicHtml = this.embeddableComponentsService.createDynamicHtml(this.elementRef.nativeElement, this.injector, "")); 27425 }); 27426 } 27427 ngDoCheck() { 27428 this.dynamicHtml && this.dynamicHtml.detectChanges(); 27429 } 27430 ngOnDestroy() { 27431 this.unsubscribe.next(), this.unsubscribe.complete(), this.dynamicHtml && this.dynamicHtml.destroy(); 27432 } 27433 }; 27434 return e.ɵfac = function(i) { 27435 return new (i || e)(); 27436 }, e.ɵcmp = ge({ 27437 type: e, 27438 selectors: [[ 27439 "", 27440 "data-content-filter", 27441 "" 27442 ]], 27443 ngContentSelectors: tA, 27444 decls: 1, 27445 vars: 0, 27446 template: function(i, t) { 27447 i & 1 && (_t(), Ke(0)); 27448 }, 27449 encapsulation: 2, 27450 changeDetection: 1 27451 }), e; 27452 })(), ab = (() => { 27453 let e = class { 27454 constructor() { 27455 this.pageMatrixService = f(bu), this.corePageMatrixService = f(gy), this.embeddableComponentsService = f(py); 27456 } 27457 onFeatureInit() { 27458 this.embeddableComponentsService.registerEmbeddableComponent(Wi, 100), this.embeddableComponentsService.registerEmbeddableComponent(iA, 100), this.pageMatrixService.registerComponent("pm1colpage", DP), this.pageMatrixService.registerComponent("pctext", FP), this.pageMatrixService.registerComponent("pc-text-with-header-bar", zP), this.pageMatrixService.registerComponent("pc-header-for-mpp-page", GP), this.pageMatrixService.registerComponent("pcimage", HP), this.pageMatrixService.registerComponent("pcimagetext", UP), this.pageMatrixService.registerComponent("pc teaser", WP), this.pageMatrixService.registerComponent("pccomponentfolder", YP), this.pageMatrixService.registerComponent("pcregionalcomponent", qP), this.pageMatrixService.registerComponent("pccontainer", jP), this.pageMatrixService.registerComponent("pc-toggle", VP), this.pageMatrixService.registerComponent("pc menu", KP), this.pageMatrixService.registerComponent("rawimage", JP), this.pageMatrixService.registerComponent("rawtext", XP), this.pageMatrixService.registerComponent("pccarousel", QP), this.pageMatrixService.registerComponent("pcvideo", nb), this.pageMatrixService.registerComponent("pcscrollmenu", eA), this.corePageMatrixService.set(this.pageMatrixService); 27459 } 27460 }; 27461 return e.ɵfac = function(i) { 27462 return new (i || e)(); 27463 }, e.ɵprov = R({ 27464 token: e, 27465 factory: e.ɵfac 27466 }), e; 27467 })(), rA = class { 27468 constructor(e, i) { 27469 this.mql = e, this.src = i; 27470 } 27471 unsubscribe() { 27472 this.mql.removeEventListener(qr.Change, this.listener); 27473 } 27474 subscribe(e) { 27475 this.listener = e, this.mql.addEventListener(qr.Change, e); 27476 } 27477 }, sA = (() => { 27478 var e; 27479 let i = class { 27480 constructor() { 27481 Qi(this, e), this.zone = f(Ys), this.elementRef = f(di), this.renderer = f(Ur), this.page = f(jr), this.log = f(lt), this.urlService = f(Wn), this.platform = f(Fa), Zi(this, e, f(dt)); 27482 } 27483 ngOnInit() { 27484 this.init(); 27485 } 27486 ngOnChanges() { 27487 this.handlers && (this.unsubscribe(), this.init()); 27488 } 27489 ngOnDestroy() { 27490 this.unsubscribe(); 27491 } 27492 shouldIncludeWidth(r) { 27493 return this.vnProfilesWidth ? this.vnProfilesWidth > r : !0; 27494 } 27495 init() { 27496 if (this.handlers = [], !this.platform.isBrowser) { 27497 this.renderer.setAttribute(this.elementRef.nativeElement, "src", this.vnProfilesSrc); 27498 return; 27499 } 27500 let r = this.vnProfilesSet || "default", s = this.page.imageProfiles[r]; 27501 s || (this.log.warn(`Image profile set ${r} is not defined, using default.`), s = this.page.imageProfiles.default); 27502 let n = s?.widthBreakpoints.filter((a) => this.shouldIncludeWidth(a)).map((a) => { 27503 let o = this.urlService.parse(this.vnProfilesSrc); 27504 return o.search.set("p", `${s?.prefix}${a}`), {
27505 media: `(max-width: ${a}px)`, 27506 src: `${o.absUrl()}` 27507 }; 27508 }); 27509 if (this.handlers = [], n) { 27510 for (let a of n) { 27511 let o = new rA($t(this, e).matchMedia(a.media), a.src); 27512 o.subscribe(() => this.zone.run(() => this.setImage())), this.handlers.push(o); 27513 } 27514 this.setImage(); 27515 } 27516 } 27517 setImage() { 27518 let r = this.handlers.find((s) => s.mql.matches); 27519 r ? this.renderer.setAttribute(this.elementRef.nativeElement, "src", r.src) : this.renderer.setAttribute(this.elementRef.nativeElement, "src", this.vnProfilesSrc), this.vnProfilesWidth && this.renderer.setAttribute(this.elementRef.nativeElement, "width", `${this.vnProfilesWidth}`); 27520 } 27521 unsubscribe() { 27522 for (let r of this.handlers) r.unsubscribe(); 27523 this.handlers = []; 27524 } 27525 }; 27526 return e = /* @__PURE__ */ new WeakMap(), i.ɵfac = function(t) { 27527 return new (t || i)(); 27528 }, i.ɵdir = ci({ 27529 type: i, 27530 selectors: [[ 27531 "", 27532 "vnProfilesSrc", 27533 "" 27534 ]], 27535 inputs: { 27536 vnProfilesSrc: "vnProfilesSrc", 27537 vnProfilesWidth: "vnProfilesWidth", 27538 vnProfilesSet: "vnProfilesSet" 27539 }, 27540 features: [Fn] 27541 }), i; 27542 })(), nA = (() => { 27543 let e = class { 27544 constructor() { 27545 this.contentService = f(Sy), this.unsubscribe = new Xe(); 27546 } 27547 ngOnChanges() { 27548 this.setContent(); 27549 } 27550 ngOnDestroy() { 27551 this.unsubscribe.next(), this.unsubscribe.complete(); 27552 } 27553 setContent() { 27554 !this.content && !this.path || (this.content ? this.contentItem = this.content : this.path && this.contentService.getJsonFiltered(this.path, this.product).pipe(bi(this.unsubscribe)).subscribe((t) => { 27555 this.contentItem = t; 27556 let r = t.text?.replace(/\\+n/g, ""); 27557 r && (this.contentItem.text = r); 27558 })); 27559 } 27560 }; 27561 return e.ɵfac = function(i) { 27562 return new (i || e)(); 27563 }, e.ɵcmp = ge({ 27564 type: e, 27565 selectors: [["vn-page-matrix"]], 27566 hostVars: 2, 27567 hostBindings: function(i, t) { 27568 i & 2 && wt("page-matrix", !0); 27569 }, 27570 inputs: { 27571 path: "path", 27572 content: "content", 27573 product: "product" 27574 }, 27575 features: [Fn], 27576 decls: 1, 27577 vars: 1, 27578 consts: [[4, "vnPageMatrix"]], 27579 template: function(i, t) { 27580 i & 1 && be(0, sH, 1, 0, "ng-container", 0), i & 2 && A("vnPageMatrix", t.contentItem); 27581 }, 27582 dependencies: [vs], 27583 encapsulation: 2, 27584 changeDetection: 1 27585 }), e; 27586 })(); 27587 })))(); 27588} 27589var oA; 27590function lA() { 27591 return (lA = Z((() => { 27592 de(), ks(), oA = (() => { 27593 let e = class { 27594 constructor() { 27595 this.vertical = Ne(!1), this.variant = Ne("on-surface-lowest"), this.inverse = Ne(!1), this.hostClass = ne(() => `ds-divider-${this.variant()}`); 27596 } 27597 getThemeableProperties() { 27598 return { 27599 variant: this.variant, 27600 inverse: this.inverse 27601 }; 27602 } 27603 }; 27604 return e.ɵfac = function(i) { 27605 return new (i || e)(); 27606 }, e.ɵcmp = ge({ 27607 type: e, 27608 selectors: [["ds-divider"]], 27609 hostAttrs: [1, "ds-divider"], 27610 hostVars: 6, 27611 hostBindings: function(i, t) { 27612 i & 2 && (Le(t.hostClass()), wt("ds-divider-vertical", t.vertical())("ds-divider-inverse", t.inverse())); 27613 }, 27614 inputs: { 27615 vertical: [1, "vertical"], 27616 variant: [1, "variant"], 27617 inverse: [1, "inverse"] 27618 }, 27619 outputs: { 27620 vertical: "verticalChange", 27621 variant: "variantChange", 27622 inverse: "inverseChange" 27623 }, 27624 features: [Pi([{ 27625 provide: Nr, 27626 useExisting: e 27627 }])], 27628 decls: 0, 27629 vars: 0, 27630 template: function(i, t) {}, 27631 styles: [`.ds-divider{--%NS%ds-divider-on-surface-color-border: var(--%NS%semantic-color-on-surface-divider);--%NS%ds-divider-on-surface-high-color-border: var(--%NS%semantic-color-on-surface-container-high-divider);--%NS%ds-divider-on-surface-highest-color-border: var(--%NS%semantic-color-on-surface-container-highest-divider);--%NS%ds-divider-on-surface-low-color-border: var(--%NS%semantic-color-on-surface-container-low-divider);--%NS%ds-divider-on-surface-lowest-color-border: var(--%NS%semantic-color-on-surface-container-lowest-divider);--%NS%ds-divider-size-border: var(--%NS%semantic-size-xquarter);--%NS%divider-height: 0;--%NS%divider-width: 100%;box-sizing:border-box;display:flex;height:var(--%NS%divider-height);width:var(--%NS%divider-width)}.ds-divider.ds-divider-on-surface{border-top:var(--%NS%ds-divider-size-border) solid var(--%NS%ds-divider-on-surface-color-border)}.ds-divider.ds-divider-on-surface-lowest{border-top:var(--%NS%ds-divider-size-border) solid var(--%NS%ds-divider-custom-color-border, var(--%NS%ds-divider-on-surface-lowest-color-border))}.ds-divider.ds-divider-on-surface-high{border-top:var(--%NS%ds-divider-size-border) solid var(--%NS%ds-divider-on-surface-high-color-border)}.ds-divider.ds-divider-on-surface-low{border-top:var(--%NS%ds-divider-size-border) solid var(--%NS%ds-divider-on-surface-low-color-border)}.ds-divider.ds-divider-on-surface-highest{border-top:var(--%NS%ds-divider-size-border) solid var(--%NS%ds-divider-on-surface-highest-color-border)}.ds-divider.ds-divider-vertical{--%NS%divider-height: 100%;--%NS%divider-width: 0;border-top:none}.ds-divider.ds-divider-vertical.ds-divider-on-surface{border-left:var(--%NS%ds-divider-size-border) solid var(--%NS%ds-divider-on-surface-color-border)}.ds-divider.ds-divider-vertical.ds-divider-on-surface-lowest{border-left:var(--%NS%ds-divider-size-border) solid var(--%NS%ds-divider-custom-color-border, var(--%NS%ds-divider-on-surface-lowest-color-border))}.ds-divider.ds-divider-vertical.ds-divider-on-surface-high{border-left:var(--%NS%ds-divider-size-border) solid var(--%NS%ds-divider-on-surface-high-color-border)}.ds-divider.ds-divider-vertical.ds-divider-on-surface-low{border-left:var(--%NS%ds-divider-size-border) solid var(--%NS%ds-divider-on-surface-low-color-border)}.ds-divider.ds-divider-vertical.ds-divider-on-surface-highest{border-left:var(--%NS%ds-divider-size-border) solid var(--%NS%ds-divider-on-surface-highest-color-border)}.ds-divider.ds-divider-inverse{--%NS%ds-divider-on-surface-color-border: var(--%NS%semantic-color-on-surface-divider-inverse);--%NS%ds-divider-on-surface-high-color-border: var(--%NS%semantic-color-on-surface-container-high-divider-inverse);--%NS%ds-divider-on-surface-highest-color-border: var(--%NS%semantic-color-on-surface-container-highest-divider-inverse);--%NS%ds-divider-on-surface-low-color-border: var(--%NS%semantic-color-on-surface-container-low-divider-inverse);--%NS%ds-divider-on-surface-lowest-color-border: var(--%NS%semantic-color-on-surface-container-lowest-divider-inverse)} 27632`], 27633 encapsulation: 2 27634 }), e; 27635 })(); 27636 })))(); 27637} 27638var cA, ob, lb, yu, dA, uA; 27639function pA() { 27640 return (pA = Z((() => { 27641 de(), Ha(), ks(), Vy(), cA = ["labelContent"], ob = ["*"], lb = `.ds-radio-button{--%NS%ds-radio-radius-border: var(--%NS%semantic-radius-max);--%NS%ds-radio-size-min-tap-target: var(--%NS%semantic-size-x6);--%NS%ds-radio-space-inline: var(--%NS%semantic-spacing-inline-md);--%NS%ds-radio-active-color-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-radio-active-color-border: var(--%NS%semantic-color-utility-active);--%NS%ds-radio-active-color-label: var(--%NS%semantic-color-on-surface-base);--%NS%ds-radio-active-color-selected-indicator: var(--%NS%semantic-color-utility-active);--%NS%ds-radio-active-color-subtext: var(--%NS%semantic-color-on-surface-subtle);--%NS%ds-radio-disabled-color-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-radio-disabled-color-border: var(--%NS%semantic-color-disabled-base);--%NS%ds-radio-disabled-color-label: var(--%NS%semantic-color-disabled-base);--%NS%ds-radio-disabled-color-selected-indicator: var(--%NS%semantic-color-disabled-base);--%NS%ds-radio-disabled-color-subtext: var(--%NS%semantic-color-disabled-base);--%NS%ds-radio-enabled-color-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-radio-enabled-color-border: var(--%NS%semantic-color-utility-base);--%NS%ds-radio-enabled-color-label: var(--%NS%semantic-color-on-surface-base);--%NS%ds-radio-enabled-color-selected-indicator: var(--%NS%semantic-color-utility-base);--%NS%ds-radio-enabled-color-subtext: var(--%NS%semantic-color-on-surface-subtle);--%NS%ds-radio-hover-color-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-radio-hover-color-border: var(--%NS%semantic-color-utility-hover);--%NS%ds-radio-hover-color-label: var(--%NS%semantic-color-on-surface-base);--%NS%ds-radio-hover-color-selected-indicator: var(--%NS%semantic-color-utility-hover);--%NS%ds-radio-hover-color-subtext: var(--%NS%semantic-color-on-surface-subtle);--%NS%ds-radio-size-select-border-width: var(--%NS%semantic-size-xquarter);--%NS%ds-radio-size-select-min-height: var(--%NS%semantic-size-x4);--%NS%ds-radio-size-select-min-width: var(--%NS%semantic-size-x4);--%NS%ds-radio-size-selected-indicator: var(--%NS%semantic-size-x2);--%NS%ds-radio-space-inline: var(--%NS%semantic-spacing-inline-xs);--%NS%ds-radio-space-padding-bottom: var(--%NS%semantic-spacing-container-padding-sm);--%NS%ds-radio-space-padding-left: var(--%NS%semantic-spacing-container-padding-xs);--%NS%ds-radio-space-padding-right: var(--%NS%semantic-spacing-container-padding-xs);--%NS%ds-radio-space-padding-top: var(--%NS%semantic-spacing-container-padding-sm);--%NS%ds-radio-space-stack: var(--%NS%semantic-spacing-stack-none);--%NS%ds-radio-border-radius: 50%;box-sizing:border-box;display:block;padding:var(--%NS%ds-radio-space-padding-top) var(--%NS%ds-radio-space-padding-right) var(--%NS%ds-radio-space-padding-bottom) var(--%NS%ds-radio-space-padding-left)}.ds-radio-button .ds-radio-button-input{--%NS%ds-local-radio-input-height: 1px;--%NS%ds-local-radio-input-width: 1px;border:0;clip:rect(0 0 0 0);clip-path:inset(100%);height:var(--%NS%ds-local-radio-input-height);margin:0;opacity:0;overflow:hidden;padding:0;pointer-events:none;position:absolute;white-space:nowrap;width:var(--%NS%ds-local-radio-input-width)}.ds-radio-button .ds-radio-button-input:focus-visible+.ds-radio-button-lever-wrapper .ds-radio-button-lever{--%NS%ds-radio-local-focus-outline-width: 2px;--%NS%ds-radio-local-focus-outline-style: solid;--%NS%ds-radio-local-focus-outline-color: #000000;--%NS%ds-radio-local-focus-shadow-width: 4px;--%NS%ds-radio-local-focus-shadow-color: #ffffff;--%NS%ds-radio-local-focus-outline-offset: 1px;outline:var(--%NS%ds-radio-local-focus-outline-width) var(--%NS%ds-radio-local-focus-outline-style) var(--%NS%ds-radio-local-focus-outline-color);outline-offset:var(--%NS%ds-radio-local-focus-outline-offset);box-shadow:0 0 0 var(--%NS%ds-radio-local-focus-shadow-width) var(--%NS%ds-radio-local-focus-shadow-color)}.ds-radio-button .ds-radio-button-lever-wrapper{align-items:center;display:flex;height:var(--%NS%ds-radio-size-min-tap-target);justify-content:center;width:var(--%NS%ds-radio-size-min-tap-target)}.ds-radio-button .ds-radio-button-lever{border:var(--%NS%ds-radio-size-select-border-width) solid var(--%NS%ds-radio-custom-color-border, var(--%NS%ds-radio-enabled-color-border));border-radius:var(--%NS%ds-radio-border-radius);box-sizing:border-box;height:var(--%NS%ds-radio-custom-size-select-min-height, var(--%NS%ds-radio-size-select-min-height));position:relative;transition:border-color .3s;width:var(--%NS%ds-radio-custom-size-select-min-width, var(--%NS%ds-radio-size-select-min-width))}@media(hover:hover){.ds-radio-button .ds-radio-button-lever:hover{border-color:var(--%NS%ds-radio-custom-hover-color-border, var(--%NS%ds-radio-hover-color-border))}}.ds-radio-button .ds-radio-button-lever:active{border-color:var(--%NS%ds-radio-custom-active-color-border, var(--%NS%ds-radio-active-color-border))}.ds-radio-button.ds-radio-no-label{--%NS%ds-radio-spacing-helper: 0;padding:var(--%NS%ds-radio-spacing-helper)}.ds-radio-button.ds-radio-no-label .ds-radio-button-wrapper{gap:var(--%NS%ds-radio-spacing-helper)}.ds-radio-button.ds-radio-selected .ds-radio-button-lever:after{background-color:var(--%NS%ds-radio-custom-color-selected-indicator, var(--%NS%ds-radio-enabled-color-selected-indicator));border-radius:var(--%NS%ds-radio-border-radius);box-sizing:unset;content:"";display:block;height:var(--%NS%ds-radio-custom-size-selected-indicator, var(--%NS%ds-radio-size-selected-indicator));left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:var(--%NS%ds-radio-custom-size-selected-indicator, var(--%NS%ds-radio-size-selected-indicator))}@media(hover:hover){.ds-radio-button.ds-radio-selected .ds-radio-button-lever:hover:after{background-color:var(--%NS%ds-radio-custom-hover-color-selected-indicator, var(--%NS%ds-radio-hover-color-selected-indicator))}}.ds-radio-button.ds-radio-selected .ds-radio-button-lever:active:after{background-color:var(--%NS%ds-radio-custom-active-color-selected-indicator, var(--%NS%ds-radio-active-color-selected-indicator))}.ds-radio-button .ds-radio-button-wrapper{align-items:center;color:var(--%NS%ds-radio-enabled-color-label);cursor:pointer;display:flex;gap:var(--%NS%ds-radio-space-inline);margin-bottom:0;-webkit-user-select:none;user-select:none}@media(hover:hover){.ds-radio-button .ds-radio-button-wrapper:hover{color:var(--%NS%ds-radio-custom-hover-color-label, var(--%NS%ds-radio-hover-color-label))}}.ds-radio-button .ds-radio-button-wrapper:active{color:var(--%NS%ds-radio-custom-active-color-label, var(--%NS%ds-radio-active-color-label))}.ds-radio-button.ds-radio-label-left .ds-radio-button-wrapper{flex-direction:row-reverse;justify-content:space-between}.ds-radio-button.ds-radio-align-top .ds-radio-button-wrapper{align-items:flex-start}.ds-radio-button.ds-radio-disabled .ds-radio-button-input{background-color:var(--%NS%ds-radio-disabled-color-bg)}.ds-radio-button.ds-radio-disabled .ds-radio-button-lever{border-color:var(--%NS%ds-radio-custom-disabled-color-border, var(--%NS%ds-radio-disabled-color-border))}.ds-radio-button.ds-radio-disabled .ds-radio-button-wrapper{color:var(--%NS%ds-radio-disabled-color-label)}.ds-radio-button.ds-radio-disabled.ds-radio-selected .ds-radio-button-lever:after{background-color:var(--%NS%ds-radio-custom-disabled-color-selected-indicator, var(--%NS%ds-radio-disabled-color-selected-indicator))}.ds-radio-button.ds-radio-disabled.ds-radio-selected .ds-radio-button-wrapper{color:var(--%NS%ds-radio-disabled-color-label)}.ds-radio-button.ds-radio-unselected{--%NS%ds-radio-active-color-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-radio-active-color-border: var(--%NS%semantic-color-utility-active);--%NS%ds-radio-active-color-label: var(--%NS%semantic-color-on-surface-base);--%NS%ds-radio-active-color-subtext: var(--%NS%semantic-color-on-surface-subtle);--%NS%ds-radio-disabled-color-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-radio-disabled-color-border: var(--%NS%semantic-color-disabled-base);--%NS%ds-radio-disabled-color-label: var(--%NS%semantic-color-disabled-base);--%NS%ds-radio-disabled-color-subtext: var(--%NS%semantic-color-disabled-base);--%NS%ds-radio-enabled-color-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-radio-enabled-color-border: var(--%NS%semantic-color-utility-base);--%NS%ds-radio-enabled-color-label: var(--%NS%semantic-color-on-surface-base);--%NS%ds-radio-enabled-color-subtext: var(--%NS%semantic-color-on-surface-subtle);--%NS%ds-radio-hover-color-bg: var(--%NS%semantic-color-opacity-subtle-transparent);--%NS%ds-radio-hover-color-border: var(--%NS%semantic-color-utility-hover);--%NS%ds-radio-hover-color-label: var(--%NS%semantic-color-on-surface-base);--%NS%ds-radio-hover-color-subtext: var(--%NS%semantic-color-on-surface-subtle)}.ds-radio-button.ds-radio-large{--%NS%ds-radio-size-select-border-width: var(--%NS%semantic-size-xhalf);--%NS%ds-radio-size-select-min-height: var(--%NS%semantic-size-x6);--%NS%ds-radio-size-select-min-width: var(--%NS%semantic-size-x6);--%NS%ds-radio-size-selected-indicator: var(--%NS%semantic-size-x3);--%NS%ds-radio-space-inline: var(--%NS%semantic-spacing-inline-md);--%NS%ds-radio-space-padding-bottom: var(--%NS%semantic-spacing-container-padding-lg);--%NS%ds-radio-space-padding-left: var(--%NS%semantic-spacing-container-padding-xs);--%NS%ds-radio-space-padding-right: var(--%NS%semantic-spacing-container-padding-xs);--%NS%ds-radio-space-padding-top: var(--%NS%semantic-spacing-container-padding-lg);--%NS%ds-radio-space-stack: var(--%NS%semantic-spacing-stack-xs);--%NS%ds-radio-fon
27641t-family: var(--%NS%semantic-typography-label-font-family, sans-serif);--%NS%ds-radio-font-size: var(--%NS%semantic-typography-label-lg-font-size);--%NS%ds-radio-font-weight: var(--%NS%semantic-typography-label-lg-font-weight);--%NS%ds-radio-line-height: var(--%NS%semantic-typography-label-lg-line-height);font-family:var(--%NS%ds-radio-font-family);font-size:var(--%NS%ds-radio-font-size);font-weight:var(--%NS%ds-radio-font-weight);line-height:var(--%NS%ds-radio-line-height)}.ds-radio-button.ds-radio-medium{--%NS%ds-radio-size-select-border-width: var(--%NS%semantic-size-xquarter);--%NS%ds-radio-size-select-min-height: var(--%NS%semantic-size-x4);--%NS%ds-radio-size-select-min-width: var(--%NS%semantic-size-x4);--%NS%ds-radio-size-selected-indicator: var(--%NS%semantic-size-x2);--%NS%ds-radio-space-inline: var(--%NS%semantic-spacing-inline-xs);--%NS%ds-radio-space-padding-bottom: var(--%NS%semantic-spacing-container-padding-sm);--%NS%ds-radio-space-padding-left: var(--%NS%semantic-spacing-container-padding-xs);--%NS%ds-radio-space-padding-right: var(--%NS%semantic-spacing-container-padding-xs);--%NS%ds-radio-space-padding-top: var(--%NS%semantic-spacing-container-padding-sm);--%NS%ds-radio-space-stack: var(--%NS%semantic-spacing-stack-none);--%NS%ds-radio-font-family: var(--%NS%semantic-typography-label-font-family, sans-serif);--%NS%ds-radio-font-size: var(--%NS%semantic-typography-label-md-font-size);--%NS%ds-radio-font-weight: var(--%NS%semantic-typography-label-md-font-weight);--%NS%ds-radio-line-height: var(--%NS%semantic-typography-label-md-line-height);font-family:var(--%NS%ds-radio-font-family);font-size:var(--%NS%ds-radio-font-size);font-weight:var(--%NS%ds-radio-font-weight);line-height:var(--%NS%ds-radio-line-height)} 27642`, yu = (() => { 27643 let e = class { 27644 constructor() { 27645 this.labelContent = Ra("labelContent"), this.value = Ne(""), this.name = ce.required(), this.disabled = Ne(!1), this.size = Ne("large"), this.labelPosition = Ne("right"), this.alignment = Ne("center"), this.checked = Ne(!1), this.interactive = Ne(!0), this.id = ce(null), this.ariaLabel = ce(null), this.ariaLabelledby = ce(null), this.ariaDescribedby = ce(null), this.hostClass = ne(() => `ds-radio-button ${this.size() === "large" ? "ds-radio-large" : "ds-radio-medium"} ${this.labelPosition() === "left" ? "ds-radio-label-left" : ""} ${this.alignment() === "top" ? "ds-radio-align-top" : ""}`), $y().toggleClass(() => !this.labelContent()?.nativeElement?.textContent?.trim(), "ds-radio-no-label"); 27646 } 27647 onInputChange() { 27648 !this.checked() && !this.disabled() && this.checked.set(!0); 27649 } 27650 registerOnInputChange(t) { 27651 this.onInputChange = t; 27652 } 27653 getThemeableProperties() { 27654 return { size: this.size }; 27655 } 27656 }; 27657 return e.ɵfac = function(i) { 27658 return new (i || e)(); 27659 }, e.ɵcmp = ge({ 27660 type: e, 27661 selectors: [["ds-radio-button"]], 27662 viewQuery: function(i, t) { 27663 i & 1 && Lu(t.labelContent, cA, 5), i & 2 && La(); 27664 }, 27665 hostAttrs: [1, "ds-radio-button"], 27666 hostVars: 8, 27667 hostBindings: function(i, t) { 27668 i & 2 && (Le(t.hostClass()), wt("ds-radio-selected", t.checked())("ds-radio-unselected", !t.checked())("ds-radio-disabled", t.disabled())); 27669 }, 27670 inputs: { 27671 value: [1, "value"], 27672 name: [1, "name"], 27673 disabled: [1, "disabled"], 27674 size: [1, "size"], 27675 labelPosition: [1, "labelPosition"], 27676 alignment: [1, "alignment"], 27677 checked: [1, "checked"], 27678 interactive: [1, "interactive"], 27679 id: [1, "id"], 27680 ariaLabel: [1, "ariaLabel"], 27681 ariaLabelledby: [1, "ariaLabelledby"], 27682 ariaDescribedby: [1, "ariaDescribedby"] 27683 }, 27684 outputs: { 27685 value: "valueChange", 27686 disabled: "disabledChange", 27687 size: "sizeChange", 27688 labelPosition: "labelPositionChange", 27689 alignment: "alignmentChange", 27690 checked: "checkedChange", 27691 interactive: "interactiveChange" 27692 }, 27693 features: [Pi([{ 27694 provide: Nr, 27695 useExisting: e 27696 }])], 27697 ngContentSelectors: ob, 27698 decls: 9, 27699 vars: 9, 27700 consts: [ 27701 ["input", ""], 27702 ["labelContent", ""], 27703 [1, "ds-radio-button-wrapper"], 27704 [ 27705 "type", 27706 "radio", 27707 1, 27708 "ds-radio-button-input", 27709 3, 27710 "change", 27711 "name", 27712 "value" 27713 ], 27714 [1, "ds-radio-button-lever-wrapper"], 27715 [1, "ds-radio-button-lever"], 27716 [1, "ds-radio-button-text-wrapper"], 27717 [1, "ds-radio-button-label-text"] 27718 ], 27719 template: function(i, t) { 27720 i & 1 && (_t(), Nt(0, "label", 2)(1, "input", 3, 0), Lb("change", function() { 27721 return t.onInputChange(); 27722 }), ft(), Nt(3, "div", 4), br(4, "span", 5), ft(), Nt(5, "div", 6)(6, "span", 7, 1), Ke(8), ft()()()), i & 2 && (P(), bl("name", t.name())("value", t.value()), Qe("id", t.id() || null)("checked", t.checked() ? "" : null)("disabled", t.disabled() ? "" : null)("inert", t.interactive() ? null : "")("aria-label", t.ariaLabel() || null)("aria-labelledby", t.ariaLabelledby() || null)("aria-describedby", t.ariaDescribedby() || null)); 27723 }, 27724 styles: [lb], 27725 encapsulation: 2 27726 }), e; 27727 })(), dA = (() => { 27728 let e = class { 27729 constructor() { 27730 this.disabled = Ne(!1), this.value = Ne(""), this.size = Ne(null), this.labelPosition = Ne(null), this.alignment = Ne(null), this.radioButtons = Ub(yu, { descendants: !0 }), this.onChange = () => {}, this.onTouched = () => {}, zi(() => { 27731 this.radioButtons() && this.syncButtons(); 27732 }); 27733 } 27734 syncButtons() { 27735 let t = this.radioButtons(); 27736 if (!t) return; 27737 let r = this.size(), s = this.labelPosition(), n = this.alignment(), a = this.value(), o = this.disabled(); 27738 t.forEach((l) => { 27739 r != null && l.size.set(r), s != null && l.labelPosition.set(s), n != null && l.alignment.
27739set(n), l.checked.set(l.value() === a), l.disabled.set(o || l.disabled()); 27740 }); 27741 } 27742 selectButton(t) { 27743 !this.disabled() && !t.disabled() && this.radioButtons() && (this.radioButtons().forEach((r) => { 27744 r.checked.set(r === t); 27745 }), this.value.set(t.value()), this.onChange(this.value()), this.onTouched()); 27746 } 27747 ngAfterContentInit() { 27748 this.radioButtons() && (this.syncButtons(), this.radioButtons().forEach((t) => { 27749 t.registerOnInputChange(() => { 27750 this.selectButton(t); 27751 }); 27752 })); 27753 } 27754 writeValue(t) { 27755 this.value.set(t); 27756 } 27757 registerOnChange(t) { 27758 this.onChange = t; 27759 } 27760 registerOnTouched(t) { 27761 this.onTouched = t; 27762 } 27763 setDisabledState(t) { 27764 this.disabled.set(t); 27765 } 27766 getThemeableProperties() { 27767 return { size: this.size }; 27768 } 27769 }; 27770 return e.ɵfac = function(i) { 27771 return new (i || e)(); 27772 }, e.ɵcmp = ge({ 27773 type: e, 27774 selectors: [["ds-radio-group"]], 27775 contentQueries: function(i, t, r) { 27776 i & 1 && Pb(r, t.radioButtons, yu, 5), i & 2 && La(); 27777 }, 27778 hostAttrs: ["role", "radiogroup"], 27779 inputs: { 27780 disabled: [1, "disabled"], 27781 value: [1, "value"], 27782 size: [1, "size"], 27783 labelPosition: [1, "labelPosition"], 27784 alignment: [1, "alignment"] 27785 }, 27786 outputs: { 27787 disabled: "disabledChange", 27788 value: "valueChange", 27789 size: "sizeChange", 27790 labelPosition: "labelPositionChange", 27791 alignment: "alignmentChange" 27792 }, 27793 features: [Pi([{ 27794 provide: X_, 27795 useExisting: _b(() => e), 27796 multi: !0 27797 }, { 27798 provide: Nr, 27799 useExisting: e 27800 }])], 27801 ngContentSelectors: ob, 27802 decls: 1, 27803 vars: 0, 27804 template: function(i, t) { 27805 i & 1 && (_t(), Ke(0)); 27806 }, 27807 styles: [lb], 27808 encapsulation: 2 27809 }), e; 27810 })(), uA = (() => { 27811 let e = class {}; 27812 return e.ɵfac = function(i) { 27813 return new (i || e)(); 27814 }, e.ɵmod = zn({ type: e }), e.ɵinj = Ln({}), e; 27815 })(); 27816 })))(); 27817} 27818var cb; 27819function db() { 27820 return (db = Z((() => { 27821 de(), oy(), cb = (() => { 27822 let e = class { 27823 constructor() { 27824 this.sanitizer = f(ly); 27825 } 27826 transform(t) { 27827 return this.sanitizer.bypassSecurityTrustResourceUrl(t); 27828 } 27829 }; 27830 return e.ɵfac = function(i) { 27831 return new (i || e)(); 27832 }, e.ɵpipe = yl({ 27833 name: "trustAsResourceUrl", 27834 type: e, 27835 pure: !0 27836 }), e; 27837 })(); 27838 })))(); 27839} 27840function nH(e, i) { 27841 if (e & 1 && (br(0, "iframe", null, 0), Es(2, "trustAsResourceUrl")), e & 2) { 27842 let t = N(); 27843 Le(t.class), Qe("src", Gn(2, 3, t.url), Nb); 27844 } 27845} 27846function aH(e, i) { 27847 if (e & 1 && (br(0, "iframe", 3, 0), Es(2, "trustAsResourceUrl")), e & 2) { 27848 let t = N(); 27849 Le(t.class), Qe("src", Gn(2, 3, t.url), Nb); 27850 } 27851} 27852var hA, mA, fA, gA, vA, SA, bA; 27853function yA() { 27854 return (yA = Z((() => { 27855 Re(), de(), Ye(), sy(), st(), db(), hA = "vn-glow-acknowledged-", mA = 10, fA = (() => { 27856 let e = class { 27857 constructor() { 27858 this.cookieService = f(yr), this.acknowledged = le(!1), this.isAcknowledged = this.acknowledged.asReadonly(); 27859 } 27860 watch(t) { 27861 this.type ??= t, this.acknowledged.set(!!this.cookieService.get(this.cookie)); 27862 } 27863 acknowledge() { 27864 if (!this.type || this.acknowledged()) return; 27865 let t = /* @__PURE__ */ new Date(); 27866 t.setFullYear(t.getFullYear() + mA), this.acknowledged.set(!0), this.cookieService.put(this.cookie, "1", { expires: t }); 27867 } 27868 get cookie() { 27869 return `${hA}${this.type}`; 27870 } 27871 }; 27872 return e.ɵfac = function(i) { 27873 return new (i || e)(); 27874 }, e.ɵprov = R({ 27875 token: e, 27876 factory: e.ɵfac 27877 }), e; 27878 })(), gA = (() => { 27879 let e = class { 27880 constructor() { 27881 this.vnGlow = ce(!1), this.vnGlowEnabled = ce(!0), this.active = ne(() => this.vnGlowEnabled() && this.vnGlow()); 27882 } 27883 }; 27884 return e.ɵfac = function(i) { 27885 return new (i || e)(); 27886 }, e.ɵdir = ci({ 27887 type: e, 27888 selectors: [[ 27889 "", 27890 "vnGlow", 27891 "" 27892 ]], 27893 hostVars: 2, 27894 hostBindings: function(i, t) { 27895 i & 2 && wt("vn-glow-active", t.active()); 27896 }, 27897 inputs: { 27898 vnGlow: [1, "vnGlow"], 27899 vnGlowEnabled: [1, "vnGlowEnabled"] 27900 } 27901 }), e; 27902 })(), vA = ["iframe"], SA = (() => { 27903 var e; 27904 let i = class { 27905 constructor() { 27906 Qi(this, e), this.zone = f(Ys), this.unsubscribe = new Xe(), this.iframeEvents = new Xe(), Zi(this, e, f(dt)); 27907 } 27908 get events() { 27909 return this.iframeEvents; 27910 } 27911 ngAfterViewInit() { 27912 this.zone.runOutsideAngular(() => Bn($t(this, e), "message").pipe(bi(this.unsubscribe)).subscribe((r) => { 27913 !r || !r.data || !r.origin || !this.origin?.startsWith(r.origin) || this.iframeEvents.next(r.data); 27914 })); 27915 } 27916 ngOnDestroy() { 27917 this.unsubscribe.next(), this.unsubscribe.complete(); 27918 } 27919 post(r) { 27920 this.iframe.nativeElement.contentWindow?.postMessage(r, this.origin); 27921 } 27922 }; 27923 return e = /* @__PURE__ */ new WeakMap(), i.ɵfac = function(t) { 27924 return new (t || i)(); 27925 }, i.ɵcmp = ge({ 27926 type: i, 27927 selectors: [["vn-iframe"]], 27928 viewQuery: function(t, r) { 27929 if (t & 1 && js(vA, 5), t & 2) { 27930 let s;
27931 Ks(s = Us()) && (r.iframe = s.first); 27932 } 27933 }, 27934 inputs: { 27935 url: "url", 27936 origin: "origin", 27937 class: "class", 27938 allowPaymentAttr: "allowPaymentAttr" 27939 }, 27940 decls: 2, 27941 vars: 2, 27942 consts: [ 27943 ["iframe", ""], 27944 [3, "class"], 27945 [ 27946 "allow", 27947 "payment", 27948 3, 27949 "class" 27950 ], 27951 ["allow", "payment"] 27952 ], 27953 template: function(t, r) { 27954 t & 1 && (U(0, nH, 3, 5, "iframe", 1), U(1, aH, 3, 5, "iframe", 2)), t & 2 && (W(r.allowPaymentAttr ? -1 : 0), P(), W(r.allowPaymentAttr ? 1 : -1)); 27955 }, 27956 dependencies: [cb], 27957 encapsulation: 2, 27958 changeDetection: 1 27959 }), i; 27960 })(), bA = (() => { 27961 let e = class { 27962 constructor() { 27963 this.util = f(ny); 27964 } 27965 transform(t, ...r) { 27966 return this.util.format(t, ...r); 27967 } 27968 }; 27969 return e.ɵfac = function(i) { 27970 return new (i || e)(); 27971 }, e.ɵpipe = yl({ 27972 name: "format", 27973 type: e, 27974 pure: !0 27975 }), e; 27976 })(); 27977 })))(); 27978} 27979var wA; 27980function EA() { 27981 return (EA = Z((() => { 27982 Re(), de(), Ye(), Cs(), wA = (() => { 27983 var e; 27984 let i = class { 27985 constructor() { 27986 Qi(this, e), this.page = f(jr), Zi(this, e, f(dt)), this.init(this.page.idleModeCaptureEnabled); 27987 } 27988 get activity() { 27989 return this.activityEvents; 27990 } 27991 init(r) { 27992 this.activityEvents || (this.activityEvents = Gi(Bn($t(this, e), "click", { capture: r }), Bn($t(this, e), "keypress", { capture: r }))); 27993 } 27994 whenIdle(r, s) { 27995 let n = new Xe(); 27996 return new Rn((a) => { 27997 let o = new Xe(), l = s?.additionalActivityEvent ? Gi(this.activityEvents, s.additionalActivityEvent, o) : Gi(this.activityEvents, o); 27998 a.add(l.pipe(Si(() => qA(r))).subscribe(() => a.next())), s?.watchForIdleAfterFirstActivity || o.next(); 27999 }).pipe(HA(n), VA()); 28000 } 28001 }; 28002 return e = /* @__PURE__ */ new WeakMap(), i.ɵfac = function(t) { 28003 return new (t || i)(); 28004 }, i.ɵprov = R({ 28005 token: i, 28006 factory: i.ɵfac, 28007 providedIn: "root" 28008 }), i; 28009 })(); 28010 })))(); 28011} 28012export { In as $, hp as $_, hD as $a, rm as $c, FE as $d, us as $f, yw as $g, ch as $h, Fg as $i, Mm as $l, xR as $m, dr as $n, _c as $o, hc as $p, qT as $r, rB as $s, oS as $t, rC as $u, eb as A, Xy as A_, yg as Aa, AB as Ac, vm as Ad, Ms as Af, Ww as Ag, St as Ah, OT as Ai, Rm as Al, AR as Am, gI as An, _o as Ao, m0 as Ap, Qg as Ar, Qc as As, lS as At, y0 as Au, gP as B, up as B_, dg as Ba, zB as Bc, Dc as Bd, CL as Bf, Za as Bg, yh as Bh, Gg as Bi, Hc as Bl, ia as Bm, Bv as Bn, $o as Bo, dm as Bp, ov as Br, t0 as Bs, I2 as Bt, aD as Bu, aA as C, Op as C_, fT as Ca, bo as Cc, hE as Cd, _L as Cf, kM as Cg, so as Ch, Hg as Ci, iB as Cl, on as Cm, yI as Cn, wn as Co, Km as Cp, tk as Cr, cB as Cs, du as Ct, DB as Cu, Rt as D, Xa as D_, uT as Da, QL as Dc, xL as Dd, id as Df, ih as Dg, _1 as Dh, KD as Di, lC as Dl, pi as Dm, Hv as Dn, Jf as Do, Rf as Dp, ek as Dr, Ti as Ds, bS as Dt, UE as Du, bu as E, Zy as E_, Eg as Ea, km as Ec, ha as Ed, Po as Ef, Xn as Eg, $1 as Eh, Wg as Ei, wf as El, Oh as Em, wI as En, GN as Eo, hi as Ep, Id as Er, pC as Es, sl as Et, KC as Eu, XS as F, pw as F_, Nd as Fa, VC as Fc, FB as Fd, iN as Ff, Jp as Fg, P1 as Fh, Bo as Fi, M0 as Fl, W1 as Fm, uI as Fn, LN as Fo, _m as Fp, ev as Fr, GC as Fs, WI as Ft, mf as Fu, On as G, Ky as G_, AD as Ga, jE as Gc, Af as Gd, of as Gf, EM as Gg, wh as Gh, RD as Gi, qf as Gl, si as Gm, nI as Gn, zc as Go, ca as Gp, QT as Gr, x0 as Gs, x2 as Gt, wE as Gu, fP as H, tn as H_, lg as Ha, Jm as Hc, Xt as Hd, e0 as Hf, qp as Hg, $i as Hh, Dg as Hi, Q0 as Hl, no as Hm, Dv as Hn, $m as Ho, wc as Hp, Zg as Hr, tN as Hs, T2 as Ht, DL as Hu, qS as I, bp as I_, Td as Ia, Nm as Ic, kN as Id, Gm as If, Ow as Ig, _e as Ih, zg as Ii, VB as Il, Ph as Im, dI as In, RN as Io, kf as Ip, Jg as Ir, Cm as Is, U2 as It, Or as Iu, WS as J, qa as J_, ag as Ja, kB as Jc, yf as Jd, tD as Jf, Vl as Jg, jl as Jh, yT as Ji, HL as Jl, F1 as Jm, lI as Jn, OB as Jo, em as Jp, Yi as Jr, u0 as Js, V2 as Jt, wB as Ju, jS as K, kp as K_, og as Ka, Gc as Kc, wm as Kd, gB as Kf, wM as Kg, hh as Kh, Mg as Ki, EE as Kl, MR as Km, Lv as Kn, dd as Ko, fc as Kp, KT as Kr, BB as Ks, HI as Kt, pf as Ku, JS as L, rw as L_, nT as La, VE as Lc, Xm as Ld, cd as Lf, Zp as Lg, tc as Lh, XD as Li, sf as Ll, ar as Lm, pI as Ln, oD as Lo, oN as Lp, lv as Lr, EC as Ls, L2 as Lt, um as Lu, ZS as M, cM as M_, lT as Ma, c0 as Mc, uf as Md, _N as Mf, Hw as Mg, Ei as Mh, IT as Mi, fC as Ml, ao as Mm, fI as Mn, zN as Mo, mC as Mp, nv as Mr, l0 as Ms, A2 as Mt, PL as Mu, oG as N, en as N_, vg as Na, Wf as Nc, Pr as Nd, i0 as Nf, Qp as Ng, At as Nh, _T as Ni, Ar as Nl, ts as Nm, hI as Nn, BN as No, B0 as Np, dv as Nr, Hf as Ns, k2 as Nt, TC as Nu, hl as O, Np as O_, wg as Oa, vn as Oc, Sd as Od, vf as Of, th as Og, _i as Oh, ZD as Oi, ni as Ol, RR as Om, Vv as On, Xf as Oo, Of as Op, ZT as Or, k0 as Os, xa as Ot, Bc as Ou, TP as P, Qs as P_, Sg as Pa, jm as Pc, O0 as Pd, NE as Pf, Uw as Pg, Ci as Ph, Sa as Pi, UL as Pl, z1 as Pm, mI as Pn, DN as Po, jB as Pp, rv as Pr, Wm as Ps, _2 as Pt, Sm as Pu, GS as Q, ew as Q_, pD as Qa, RC as Qc, OL as Qd, lf as Qf, Gp as Qg, G as Qh, Ze as Qi, Qm as Ql, ta as Qm, Qx as Qn, zC as Qo, Ec as Qp, Ki as Qr, wo as Qs, ru as Qt, gf as Qu, KS as R, lw as R_, hg as Ra, CC as Rc, qC as Rd, sm as Rf, Xp as Rg, Sh as Rh, mi as Ri, JC as Rl, ER as Rm, Gv as Rn, bd as Ro, Vc as Rp, tv as Rr, Z0 as Rs, O2 as Rt, Ic as Ru, ml as S, Xr as S_, Cg as Sa, _B as Sc, $C as Sd, So as Sf, Xw as Sg, Mh as Sh, YD as Si, $c as Sl, $s as Sm, CI as Sn, jN as So, CN as Sp, Lx as Sr, X0 as Ss, wS as St, I0 as Su, nA as T, Ya as T_, kd as Ta, UC as Tc, vC as Td, vd as Tf, rh as Tg, yR as Th, qD as Ti, $f as Tl, an as Tm, bI as Tn, Qf as To, ZL as Tp, pv as Tr, Im as Ts, xO as Tt, qm as Tu, gu as U, gp as U_, cg as Ua, XC as Uc, yo as Ud, ZB as Uf, Tw as Ug, vh as Uh, Lg as Ui, L0 as Ul, V1 as Um, eI as Un, Tf as Uo, ae as Up, Fo as Ur, zm as Us, H2 as Ut, DE as Uu, ul as V, dw as V_, ug as Va, xN as Vc, nB as Vd, V0 as Vf, Kp as Vg, ph as Vh, LD as Vi, lB as Vl, ea as Vm, aI as Vn, WB as Vo, dB as Vp, sv as Vr, CE as Vs, ka as Vt, IL as Vu, pl as W, Ka as W_, $D as Wa, Am as Wc, LL as Wd, K0 as Wf, Wp as Wg, gh as Wh, BD as Wi, PN as Wl, $h as Wm, tI as Wn, aN as Wo, Cc as Wp, Do as Wr, ls as Ws, $2 as Wt, md as Wu, mP as X, tw as X_, Mo as Xa, uN as Xc, b0 as Xd, pd as Xf, CM as Xg, uh as Xh, Jt as Xi, GB as Xl, ra as Xm, zv as Xn, hN as Xo, EL as Xp, JT as Xr, Pm as Xs, j2 as Xt, $L as Xu, VS as Y, fp as Y_, ng as Ya, qc as Yc, oC as Yd, NL as Yf, Hp as Yg, bh as Yh, FD as Yi, _0 as Yl, R1 as Ym, iI as Yn, Jc as Yo, vL as Yp, ba as Yr, YC as Ys, W2 as Yt, Kc as Yu, sP as Z, mp as Z_, qN as Za, Bm as Zc, Lc as Zd, q0 as Zf, Cw as Zg, Wl as Zh, HD as Zi, IN as Zl, IR as Zm, Fv as Zn, Um as Zo, vo as Zp, XT as Zr, HE as Zs, C2 as Zt, Oo as Zu, sA as _, Ll as __, Pg as _a, TE as _c, xc as _d, TL as _f, i1 as _g, ho as _h, jg as _i, RB as _l, Ih as _m, TI as _n, KN as _o, XL as _p, $v as _r, J0 as _s, kS as _t, KB as _u, Tp as _v, gA as a, Nw as a_, WD as aa, Pc as ac, YL as ad, mn as af, lh as ag, PR as ah, HT as ai, s0 as al, _s as am, Yv as an, rg as ao, AL as ap, Yx as ar, mE as as, HS as at, am as au, Rl as av, pr as b, Ep as b_, Og as ba, Ir as bc, jc as bd, cf as bf, a1 as bg, ss as bh, PT as bi, jC as bl, Ni as bm, Wv as bn, WN as bo, MB as bp, Ov as br, QC as bs, nl as bt, mB as bu, Yy as bv, cb as c, Lp as c_, VD as ca, Co as cc, hn as cd, bf as cf, u1 as cg, B1 as ch, WT as ci, Em as cl, da as cm, m2 as cn, Mt as co, Io as cp, Ux as cr, Xc as cs, cP as ct, pa as cu, aw as cv, uA as d, Mp as d_, ST as da, uB as dc, ud as dd, kL as df, s1 as dg, _h as dh, ki as di, F0 as dl, oa as dm, RI as dn, uD as do, zL as dp, jd as dr, Vm as ds, RS as dt, Cf as du, ja as dv, ww as e_, UD as ea, TB as ec, ds as ed, fd as ef, dh as eg, L1 as eh, e2 as ei, xo as el, pE as em, R2 as en, mD as eo, QB as ep, Jx as er, zE as es, dl as et, No as eu, uM as ev, pA as f, _p as f_, $g as fa, Sn as fc, rd as fd, BE as ff, Zw as fg, Rh as fh, zT as fi, qB as fl, rs as fm, LI as f
28012n, Cd as fo, $B as fp, Gx as fr, LC as fs, rP as ft, rN as fu, qy as fv, ab as g, mw as g_, vT as ga, rf as gc, gE as gd, rD as gf, e1 as gg, cc as gh, RT as gi, Rs as gl, xr as gm, NI as gn, YN as go, Tm as gp, Bx as gr, ua as gs, uu as gt, D0 as gu, yp as gv, lA as h, hw as h_, Ng as ha, XB as hc, pt as hd, bB as hf, Qw as hg, lc as hh, DT as hi, ym as hl, sc as hm, MI as hn, eg as ho, HC as hp, Ud as hr, yC as hs, TS as ht, fn as hu, qn as hv, fA as i, Sw as i_, NT as ia, _C as ic, nf as id, N0 as if, Ul as ig, sa as ih, Yg as ii, cN as il, fo as im, Kv as in, vD as io, To as ip, jx as ir, Ds as is, US as it, Fc as iu, vp as iv, Su as j, Ip as j_, bg as ja, vN as jc, om as jd, eC as jf, $w as jg, rc as jh, AT as ji, mm as jl, uc as jm, vI as jn, FN as jo, hm as jp, iv as jr, mN as js, M2 as jt, ma as ju, Pa as k, cw as k_, va as ka, FL as kc, hd as kd, sC as kf, jw as kg, bR as kh, Vg as ki, lN as kl, Kt as km, Uv as kn, yd as ko, uC as kp, uv as kr, PB as ks, au as kt, sB as ku, db as l, rn as l_, _g as la, Zm as lc, ML as ld, aC as lf, oh as lg, xt as lh, GT as li, gC as ll, k as lm, h2 as ln, sg as lo, ff as lp, Mv as lr, pN as ls, fu as lt, MN as lu, pp as lv, oA as m, Pp as m_, Ig as ma, z0 as mc, nC as md, df as mf, r1 as mg, un as mh, BT as mi, U0 as ml, ns as mm, _I as mn, wd as mo, Ym as mp, d2 as mr, fa as ms, LS as mt, nm as mu, ow as mv, wA as n, Ew as n_, ct as na, dN as nc, JB as nd, td as nf, Hl as ng, mo as nh, YT as ni, ai as nl, wL as nm, UI as nn, fD as no, af as np, qx as nr, wC as ns, cl as nt, Eo as nu, zl as nv, yA as o, Vp as o_, Lo as oa, SC as oc, C0 as od, RL as of, l1 as og, dc as oh, VT as oi, Lm as ol, im as om, qv as on, cD as oo, GE as op, Wx as or, cC as os, pP as ot, $r as ou, Qy as ov, yu as p, $p as p_, kg as pa, jL as pc, Sf as pd, SE as pf, t1 as pg, pc as ph, FT as pi, tf as pl, G1 as pm, $I as pn, Ed as po, SN as pp, Vx as pr, vE as ps, BS as pt, Hm as pu, Dl as pv, YS as q, Wa as q_, eT as qa, aB as qc, ad as qd, hs as qf, Jr as qg, mh as qh, Bg as qi, Fm as ql, Ue as qm, oI as qn, yE as qo, ut as qp, cv as qr, NN as qs, N2 as qt, E0 as qu, bA as r, vw as r_, jD as ra, a0 as rc, j0 as rd, hf as rf, m1 as rg, oc as rh, jT as ri, Wc as rl, bL as rm, P2 as rn, gD as ro, w0 as rp, Rv as rr, qt as rs, hP as rt, nN as ru, Os as rv, SA as s, gw as s_, Rg as sa, YB as sc, CB as sd, sd as
28012sf, ah as sg, OR as sh, UT as si, IC as sl, os as sm, FI as sn, Ro as so, gd as sp, Hx as sr, xB as ss, DS as st, tC as su, Zs as sv, EA as t, fw as t_, Fs as ta, Yc as tc, G0 as td, Ac as tf, OM as tg, kR as th, Xg as ti, bC as tl, as as tm, Y2 as tn, tg as to, Y0 as tp, Xx as tr, ga as ts, dP as tt, oB as tu, Bl as tv, dA as u, Rp as u_, Ag as ua, nd as uc, KE as ud, nD as uf, d1 as ug, D1 as uh, xd as ui, gn as ul, Tc as um, DI as un, dD as uo, Ls as up, _v as ur, o0 as us, mu as ut, h0 as uu, pM as uv, rH as v, xp as v_, Tg as va, W0 as vc, dC as vd, H0 as vf, o1 as vg, TR as vh, LT as vi, yn as vl, is as vm, Kd as vn, HN as vo, lr as vp, l2 as vr, R0 as vs, CS as vt, ef as vu, sw as vv, vs as w, uw as w_, mT as wa, d0 as wc, gm as wd, YE as wf, sh as wg, A1 as wh, Ug as wi, Bs as wl, bt as wm, SI as wn, UN as wo, WC as wp, hv as wr, T0 as ws, yS as wt, TN as wu, nb as x, nw as x_, gT as xa, GL as xc, n0 as xd, EB as xf, Jw as xg, pn as xh, JD as xi, Om as xl, LR as xm, EI as xn, VN as xo, bn as xp, gk as xr, Dm as xs, ES as xt, cs as xu, tb as y, lM as y_, xg as ya, pm as yc, NB as yd, LE as yf, n1 as yg, nc as yh, MT as yi, jf as yl, ln as ym, ur as yn, Zf as yo, VL as yp, Mx as yr, bE as ys, NS as yt, od as yu, jy as yv, yP as z, dM as z_, mg as za, P0 as zc, WE as zd, ps as zf, Qa as zg, fh as zh, $T as zi, v0 as zl, dn as zm, cI as zn, nt as zo, Ff as zp, av as zr, AN as zs, Rr as zt, hC as zu }; 28013 28014//# sourceMappingURL=chunk-jrsxruoz.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.