UNPKG

@divkitframework/divkit

Version:
1,316 lines 404 kB
var Wl = Object.defineProperty; var Gl = (r, t, e) => t in r ? Wl(r, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : r[t] = e; var jr = (r, t, e) => Gl(r, typeof t != "symbol" ? t + "" : t, e); /*! DivKit v32.51.0 https://github.com/divkit/divkit @licence Apache-2.0 */ function A() { } const ql = (r) => r; function Jl(r) { return r(); } function Yl() { return /* @__PURE__ */ Object.create(null); } function cs(r) { r.forEach(Jl); } function Kl(r) { return typeof r == "function"; } function Xl(r, t) { return r != r ? t == t : r !== t || r && typeof r == "object" || typeof r == "function"; } function y(r, ...t) { if (r == null) { for (const i of t) i(void 0); return A; } const e = r.subscribe(...t); return e.unsubscribe ? () => e.unsubscribe() : e; } function Lo(r) { let t; return y(r, (e) => t = e)(), t; } function Zl(r, t, { bubbles: e = !1, cancelable: i = !1 } = {}) { return new CustomEvent(r, { detail: t, bubbles: e, cancelable: i }); } let Fn; function Vn(r) { Fn = r; } function wo() { if (!Fn) throw new Error("Function called outside component initialization"); return Fn; } function Jr(r) { wo().$$.on_destroy.push(r); } function Ql() { const r = wo(); return (t, e, { cancelable: i = !1 } = {}) => { const n = r.$$.callbacks[t]; if (n) { const o = Zl( /** @type {string} */ t, e, { cancelable: i } ); return n.slice().forEach((l) => { l.call(r, o); }), !o.defaultPrevented; } return !0; }; } function Mi(r, t) { return wo().$$.context.set(r, t), t; } function wr(r) { return wo().$$.context.get(r); } const En = [], zs = []; let Yn = []; const Rs = [], il = /* @__PURE__ */ Promise.resolve(); let Ho = !1; function ec() { Ho || (Ho = !0, il.then(rc)); } function ji() { return ec(), il; } function tc(r) { Yn.push(r); } const So = /* @__PURE__ */ new Set(); let rn = 0; function rc() { if (rn !== 0) return; const r = Fn; do { try { for (; rn < En.length; ) { const t = En[rn]; rn++, Vn(t), ic(t.$$); } } catch (t) { throw En.length = 0, rn = 0, t; } for (Vn(null), En.length = 0, rn = 0; zs.length; ) zs.pop()(); for (let t = 0; t < Yn.length; t += 1) { const e = Yn[t]; So.has(e) || (So.add(e), e()); } Yn.length = 0; } while (En.length); for (; Rs.length; ) Rs.pop()(); Ho = !1, So.clear(), Vn(r); } function ic(r) { if (r.fragment !== null) { r.update(), cs(r.before_update); const t = r.dirty; r.dirty = [-1], r.fragment && r.fragment.p(r.ctx, t), r.after_update.forEach(tc); } } function nc(r) { return (r == null ? void 0 : r.length) !== void 0 ? r : Array.from(r); } const oc = ( /** @type {const} */ [ "allowfullscreen", "allowpaymentrequest", "async", "autofocus", "autoplay", "checked", "controls", "default", "defer", "disabled", "formnovalidate", "hidden", "inert", "ismap", "loop", "multiple", "muted", "nomodule", "novalidate", "open", "playsinline", "readonly", "required", "reversed", "selected" ] ), sc = /* @__PURE__ */ new Set([...oc]), ac = /[&"<]/g, lc = /[&<]/g; function dt(r, t = !1) { const e = String(r), i = t ? ac : lc; i.lastIndex = 0; let n = "", o = 0; for (; i.test(e); ) { const l = i.lastIndex - 1, c = e[l]; n += e.substring(o, l) + (c === "&" ? "&amp;" : c === '"' ? "&quot;" : "&lt;"), o = l + 1; } return n + e.substring(o); } const cc = /^(?:area|base|br|col|command|embed|hr|img|input|keygen|link|meta|param|source|track|wbr)$/; function Bs(r) { return cc.test(r) || r.toLowerCase() === "!doctype"; } const uc = /[\s'">/=\u{FDD0}-\u{FDEF}\u{FFFE}\u{FFFF}\u{1FFFE}\u{1FFFF}\u{2FFFE}\u{2FFFF}\u{3FFFE}\u{3FFFF}\u{4FFFE}\u{4FFFF}\u{5FFFE}\u{5FFFF}\u{6FFFE}\u{6FFFF}\u{7FFFE}\u{7FFFF}\u{8FFFE}\u{8FFFF}\u{9FFFE}\u{9FFFF}\u{AFFFE}\u{AFFFF}\u{BFFFE}\u{BFFFF}\u{CFFFE}\u{CFFFF}\u{DFFFE}\u{DFFFF}\u{EFFFE}\u{EFFFF}\u{FFFFE}\u{FFFFF}\u{10FFFE}\u{10FFFF}]/u; function fn(r, t) { const e = Object.assign({}, ...r); if (t) { const n = t.classes, o = t.styles; n && (e.class == null ? e.class = n : e.class += " " + n), o && (e.style == null ? e.style = Uo(o) : e.style = Uo( dc(e.style, o) )); } let i = ""; return Object.keys(e).forEach((n) => { if (uc.test(n)) return; const o = e[n]; o === !0 ? i += " " + n : sc.has(n.toLowerCase()) ? o && (i += " " + n) : o != null && (i += ` ${n}="${o}"`); }), i; } function dc(r, t) { const e = {}; for (const i of r.split(";")) { const n = i.indexOf(":"), o = i.slice(0, n).trim(), l = i.slice(n + 1).trim(); o && (e[o] = l); } for (const i in t) { const n = t[i]; n ? e[i] = n : delete e[i]; } return e; } function Gr(r) { return typeof r == "string" || r && typeof r == "object" ? dt(r, !0) : r; } function gn(r) { const t = {}; for (const e in r) t[e] = Gr(r[e]); return t; } function Ir(r, t) { r = nc(r); let e = ""; for (let i = 0; i < r.length; i += 1) e += t(r[i], i); return e; } const fc = { $$render: () => "" }; function qt(r, t) { if (!r || !r.$$render) throw t === "svelte:component" && (t += " this={...}"), new Error( `<${t}> is not a valid SSR component. You may need to review your build config to ensure that dependencies are compiled, rather than imported as pre-compiled modules. Otherwise you may need to fix a <${t}>.` ); return r; } let Vo; function Er(r) { function t(e, i, n, o, l) { const c = Fn, f = { on_destroy: Vo, context: new Map(l || (c ? c.$$.context : [])), // these will be immediately discarded on_mount: [], before_update: [], after_update: [], callbacks: Yl() }; Vn({ $$: f }); const d = r(e, i, n, o); return Vn(c), d; } return { render: (e = {}, { $$slots: i = {}, context: n = /* @__PURE__ */ new Map() } = {}) => { Vo = []; const o = { title: "", head: "", css: /* @__PURE__ */ new Set() }, l = t(o, e, {}, i, n); return cs(Vo), { html: l, css: { code: Array.from(o.css).map((c) => c.code).join(` `), map: null // TODO }, head: o.title + o.head }; }, $$render: t }; } function j(r, t, e) { if (t == null || e) return ""; const i = `="${dt(t, !0)}"`; return ` ${r}${i}`; } function Uo(r) { return Object.keys(r).filter((t) => r[t] != null && r[t] !== "").map((t) => `${t}: ${Gr(r[t])};`).join(" "); } function qr(r) { const t = Uo(r); return t ? ` style="${t}"` : ""; } const nn = []; function gc(r, t) { return { subscribe: ki(r, t).subscribe }; } function ki(r, t = A) { let e; const i = /* @__PURE__ */ new Set(); function n(c) { if (Xl(r, c) && (r = c, e)) { const f = !nn.length; for (const d of i) d[1](), nn.push(d, r); if (f) { for (let d = 0; d < nn.length; d += 2) nn[d][0](nn[d + 1]); nn.length = 0; } } } function o(c) { n(c(r)); } function l(c, f = A) { const d = [c, f]; return i.add(d), i.size === 1 && (e = t(n, o) || A), c(r), () => { i.delete(d), i.size === 0 && e && (e(), e = null); }; } return { set: n, update: o, subscribe: l }; } function bn(r, t, e) { const i = !Array.isArray(r), n = i ? [r] : r; if (!n.every(Boolean)) throw new Error("derived() expects stores as input, got a falsy value"); const o = t.length < 2; return gc(e, (l, c) => { let f = !1; const d = []; let v = 0, S = A; const M = () => { if (v) return; S(); const P = t(i ? d[0] : d, l, c); o ? l(P) : S = Kl(P) ? P : A; }, O = n.map( (P, J) => y( P, (I) => { d[J] = I, v &= ~(1 << J), f && M(); }, () => { v |= 1 << J; } ) ); return f = !0, M(), function() { cs(O), S(), f = !1; }; }); } const hc = "divkit-6d515", vc = "divkit-27458", pc = "divkit-82db1", mc = "divkit-be734", _c = "divkit-9a652", Nr = { root_platform_desktop: hc, root__clickable: vc, "root__clickable-no-transition": "divkit-3bb57", "root__any-actions": "divkit-ba614", root: pc, root__selectable: mc, root__unselectable: _c, "root__only-desktop": "divkit-316e7", "root_restrict-scroll": "divkit-0a135", "root_disabled-context-menu": "divkit-f5cb3" }, zr = Symbol("root"); function k(r, t = {}) { const e = r; return e.level = t.level || "error", t.additional && (e.additional = t.additional), e; } const bc = "divkit-bf0ea", yc = "divkit-bab07", wc = "divkit-07f20", $c = "divkit-27458", kc = "divkit-90c49", jc = "divkit-b33bc", Ec = "divkit-f6ff9", Wo = { outer: bc, outer_width_content: yc, outer_height_content: wc, root__clickable: $c, "root__clickable-no-transition": "divkit-3bb57", "outer_hide-on-transition-in": "divkit-c5f24", "outer_halign-self_start": "divkit-002ec", "outer_halign-self_center": "divkit-204f8", "outer_halign-self_end": "divkit-bd7ba", "outer_halign-self_stretch": "divkit-02d12", "outer_valign-self_start": "divkit-fd8aa", "outer_valign-self_center": "divkit-62df2", "outer_valign-self_end": "divkit-819a0", "outer_valign-self_stretch": "divkit-8a331", "outer_parent-flex_vertical": "divkit-46b27", "outer_parent-flex_horizontal": "divkit-be075", "outer_valign-self_baseline": "divkit-2b876", "outer_width-constrained": "divkit-5bdb7", "outer_parent-grid": "divkit-47ef2", "outer_height-constrained": "divkit-351c8", "outer_parent-overlap": "divkit-747b0", "outer_scroll-snap_start": "divkit-91fd4", "outer_scroll-snap_center": "divkit-c525d", "outer_scroll-snap_end": "divkit-67470", outer__border: kc, outer_visibility_invisible: jc, outer_visibility_gone: Ec, "outer_has-action-animation": "divkit-4d4f3", "outer_has-custom-focus": "divkit-b630e" }; function yr(r) { if (!r) return; let t = ""; for (const e in r) if (r.hasOwnProperty(e)) { if (!r[e] && r[e] !== 0) continue; t && (t += ";"), t += e + ":" + String(r[e]); } return t || void 0; } function De(r) { if (typeof r != "number" && typeof r != "string" || !r) return "0"; const t = Number(r); return Number.isNaN(t) ? "0" : Math.ceil(t * 1e3) / 1e4 + "em"; } function Tr(r) { let t = De(r); return t === "0" && (t += "em"), t; } function nl(r, t) { for (; r.length < t; ) r = "0" + r; return r; } function gr(r, t = 1, e = "transparent") { if (r = (typeof r == "string" && r || "").toLowerCase(), r.charAt(0) !== "#") return e; const i = yi(r); return i ? (i.a *= t, us(i)) : e; } function Ac(r, t, e = "transparent") { if (r = (typeof r == "string" && r || "").toLowerCase(), r.charAt(0) !== "#") return e; const i = yi(r); return i ? (i.a = t, us(i)) : e; } function us(r) { return r.a === 255 ? `#${[r.r, r.g, r.b].map((t) => nl(Math.round(t).toString(16), 2)).join("")}` : `rgba(${r.r},${r.g},${r.b},${(r.a / 255).toFixed(2)})`; } function yi(r) { const t = ( // #AARRGGBB r.match(/^#([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})$/i) || // #ARGB r.match(/^#([0-9a-f])([0-9a-f])([0-9a-f])([0-9a-f])$/i) || // #RRGGBB r.match(/^#([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})$/i) || // #RGB r.match(/^#([0-9a-f])([0-9a-f])([0-9a-f])$/i) ); if (t) { if (t.length === 5) { const [d, v, S, M, O] = t, P = S.length === 2 ? S : S + S, J = M.length === 2 ? M : M + M, I = O.length === 2 ? O : O + O, V = v.length === 2 ? v : v + v; return { a: parseInt(V, 16), r: parseInt(P, 16), g: parseInt(J, 16), b: parseInt(I, 16) }; } const [e, i, n, o] = t, l = i.length === 2 ? i : i + i, c = n.length === 2 ? n : n + n, f = o.length === 2 ? o : o + o; return { a: 255, r: parseInt(l, 16), g: parseInt(c, 16), b: parseInt(f, 16) }; } return null; } function Go(r) { let t = String(r); return t.indexOf("&") > -1 && (t = t.replace(/&/g, "&amp;")), t.indexOf("<") > -1 && (t = t.replace(/</g, "&lt;")), t.indexOf(">") > -1 && (t = t.replace(/>/g, "&gt;")), t.indexOf('"') > -1 && (t = t.replace(/"/g, "&quot;")), t; } const Si = Boolean; function $o(r, t) { if (r.length === 1 && r[0].type === "solid") return Cc({ bg: r[0] }); const e = r.map((i) => { if (i.type === "solid") return xc({ bg: i }); if (i.type === "gradient") return Sc({ bg: i }); if (i.type === "image") return Ic({ bg: i, direction: t }); if (i.type === "radial_gradient") return Fc({ bg: i }); }).filter(Si).reverse().reduce(function(i, n) { return i.image.push(n.image), i.size.push(n.size || "auto"), i.position.push(n.pos || "50% 50%"), i; }, { image: [], size: [], position: [] }); return { image: e.image.join(","), size: e.size.join(","), position: e.position.join(",") }; } function xc(r) { const t = gr(r.bg.color || "transparent"); return { size: void 0, pos: void 0, image: `linear-gradient(to bottom,${t},${t})` }; } function Cc(r) { return { color: gr(r.bg.color || "transparent"), size: "auto", position: "50% 50%" }; } function ol(r) { return r.every((i) => i.color && typeof i.position == "number" && i.position >= 0 && i.position <= 1) ? r.sort((i, n) => Math.abs(i.position - n.position) < 1e-6 ? 0 : i.position - n.position).map((i) => `${gr(i.color)} ${(i.position * 100).toFixed(2)}%`).join(",") : void 0; } function Sc(r) { var i, n, o, l; if (!Array.isArray((i = r.bg) == null ? void 0 : i.colors) && !Array.isArray((n = r.bg) == null ? void 0 : n.color_map)) return; const t = (o = r.bg.colors) == null ? void 0 : o.filter(Si); if (!(t != null && t.length) && !((l = r.bg) != null && l.color_map)) return; let e; if (r.bg.color_map) { const c = ol(r.bg.color_map); if (!c) return; e = "linear-gradient(" + (90 - Number(r.bg.angle || 0) + "deg") + "," + c + ")"; } else { if (!t) return; e = "linear-gradient(" + (90 - Number(r.bg.angle || 0) + "deg") + "," + t.map((c) => gr(c)).join(",") + ")"; } return { size: void 0, pos: void 0, image: e }; } const Vc = { nearest_corner: "closest-corner", farthest_corner: "farthest-corner", nearest_side: "closest-side", farthest_side: "farthest-side" }; function Ls(r) { if (r && typeof r == "object" && "type" in r && r.value !== void 0) { if (r.type === "fixed") return Tr(r.value); if (r.type === "relative") return `${Number(r.value) * 100}%`; } return "50%"; } function Fc(r) { var c, f, d, v; if (!Array.isArray((c = r.bg) == null ? void 0 : c.colors) && !Array.isArray((f = r.bg) == null ? void 0 : f.color_map)) return; const t = (d = r.bg.colors) == null ? void 0 : d.filter(Si); if (!(t != null && t.length) && !((v = r.bg) != null && v.color_map)) return; let e; if (r.bg.color_map ? e = ol(r.bg.color_map) : t && (e = t.map((S) => gr(S)).join(",")), !e) return; const i = r.bg.radius; let n; i && typeof i == "object" && "type" in i && i.value !== void 0 && (i.type === "fixed" ? n = Tr(i.value) : i.type === "relative" && (n = Vc[i.value])); const o = Ls(r.bg.center_x), l = Ls(r.bg.center_y); return { size: void 0, pos: void 0, image: `radial-gradient(circle ${n || "farthest-corner"} at ${o} ${l},` + e + ")" }; } function Ic(r) { var e; const t = (e = r.bg) == null ? void 0 : e.image_url; if (t) return { size: sl(r.bg.scale), pos: al(r.bg, r.direction), image: 'url("' + Go(t) + '")' }; } function sl(r) { return r === "fit" ? "contain" : r === "stretch" ? "fill" : r === "no_scale" ? "none" : "cover"; } function Dc(r) { return r === "none" ? "auto" : r === "fill" ? "100% 100%" : r; } function al(r, t) { let e, i; return r.content_alignment_horizontal === "left" || t === "ltr" && r.content_alignment_horizontal === "start" || t === "rtl" && r.content_alignment_horizontal === "end" ? e = "0%" : r.content_alignment_horizontal === "right" || t === "ltr" && r.content_alignment_horizontal === "end" || t === "rtl" && r.content_alignment_horizontal === "start" ? e = "100%" : e = "50%", r.content_alignment_vertical === "top" ? i = "0%" : r.content_alignment_vertical === "bottom" ? i = "100%" : i = "50%", e + " " + i; } function Ar(r, t) { const e = Number(r); return Number.isNaN(e) || e < 0 ? t : e; } function Hs(r, t, e) { return typeof t == "number" && (r && t > 0 && t <= 100 || !r && t >= 0 && t < 100) ? t : e; } function Tc(r) { return r.is_enabled !== 0 && r.is_enabled !== !1 && r.index !== void 0; } function Mc(r, { visibilityActions: t, disappearActions: e, rootCtx: i, componentContext: n }) { const o = []; t && t.forEach((O) => { o.push({ type: "visibility", index: o.length, action: O, visible: !1, count: 0, finished: !1 }); }), e && e.forEach((O) => { o.push({ type: "disappear", index: o.length, action: O, // false, so disappear only works after the element becomes visible visible: !1, count: 0, finished: !1 }); }); const l = o.map((O, P) => { const J = O.type === "visibility"; return n.getDerivedFromVars({ index: P, visibility_percentage: O.action.visibility_percentage, visibility_duration: J ? O.action.visibility_duration : O.action.disappear_duration, log_limit: O.action.log_limit, is_enabled: O.action.is_enabled }, void 0, !0); }); let c; const f = () => { c && c.disconnect(), o.forEach((O) => { O.timer && clearTimeout(O.timer); }); }, d = bn(l, (O) => O); let v; const S = (O) => { const P = O.type === "visibility"; n.execAnyActions([O.action], { logType: P ? "visible" : "disappear", node: r, processUrls: !1 }); }, M = d.subscribe((O) => { v = O.filter(Tc); const P = {}; v.forEach((V) => { P[V.index] = V; }), f(); const J = [...new Set(v.map((V) => { const $e = o[V.index].type === "visibility"; return Hs( $e, V.visibility_percentage, $e ? 50 : 0 ) / 100; }))]; if (!J.length) return; const I = (V) => { V.forEach(($e) => { v.forEach((Y) => { const se = o[Y.index], re = se.type === "visibility", ne = Hs( re, Y.visibility_percentage, re ? 50 : 0 ); let me; ne === 0 ? me = $e.intersectionRatio >= 1e-12 : me = $e.intersectionRatio >= ne / 100, (re ? !se.visible && me : se.visible && !me) ? se.finished || (se.timer = setTimeout(() => { ++se.count; const ae = Y.log_limit === 0 ? 1 / 0 : Y.log_limit || 1; se.count >= ae && (se.finished = !0), S(se); }, Ar(Y.visibility_duration, 800))) : (re ? !me : me) && se.timer && clearTimeout(se.timer), se.visible = me; }); }); }; c = new IntersectionObserver(I, { threshold: J }), c.observe(r); }); return { destroy() { v == null || v.forEach((O) => { const P = o[O.index]; !P || P.type !== "disappear" || !P.visible || P.finished || i.registerTimeout(window.setTimeout(() => { S(P); }, O.visibility_duration)); }), f(), M(); } }; } function Us(r, t) { t && r.push(t); } function nr(r, t, e) { const i = []; Us(i, t[r]); for (const n in e) if (e.hasOwnProperty(n)) { const o = e[n]; if (o) { const l = `${r}_${n}` + (typeof o == "string" ? `_${o}` : ""); Us(i, t[l]); } } return i.join(" "); } const ds = Symbol("state"); function Ci(r, t) { var l, c; const e = r.top || 0, i = ((l = t === "ltr" ? r.end : r.start) != null ? l : r.right) || 0, n = r.bottom || 0, o = ((c = t === "ltr" ? r.start : r.end) != null ? c : r.left) || 0; return e === 0 && i === 0 && n === 0 && o === 0 ? "" : De(e) + " " + De(i) + " " + De(n) + " " + De(o); } function yn(r) { if (typeof r != "number" && typeof r != "string") return !1; const t = Number(r); return !Number.isNaN(t); } function ci(r) { return yn(r) && r >= 0; } function go(r, t, e) { var n, o; if (!r) return e; const i = [ r.top, (n = t === "ltr" ? r.end : r.start) != null ? n : r.right, r.bottom, (o = t === "ltr" ? r.start : r.end) != null ? o : r.left ]; for (let l = 0; l < i.length; ++l) if (i[l] && !ci(i[l])) return e; return Ci(r, t); } function Pc(r, t) { return !ci(r) || r === void 0 || r > 1 ? t : Number(r); } const Oc = Object.prototype.hasOwnProperty; function wn(r, t) { if (Object.is(r, t)) return !0; if (typeof r != "object" || r === null || typeof t != "object" || t === null) return Object.is(r, t); const e = Object.keys(r), i = Object.keys(t); if (e.length !== i.length) return !1; for (let n = 0; n < e.length; n++) { const o = e[n]; if (!Oc.call(t, o) || !wn(r[o], t[o])) return !1; } return !0; } function Ri(r, t) { return wn(r, t) ? t : r; } function Nc(r, t) { return r === "visible" || r === "invisible" || r === "gone" ? r : t; } function ll(r, t) { return r === "linear" || r === "ease" || r === "ease_in_out" || r === "ease_in" || r === "ease_out" ? r : t; } function ho(r, t) { const e = Number(r); return Number.isNaN(e) ? t : e; } function vo(r) { const t = []; return r.name === "set" ? (r.items || []).forEach((e) => { t.push(...vo(e)); }) : t.push(r), t; } function $n(r, t) { if (!r || typeof r != "object") return t; const e = [ "top", "right", "bottom", "left" ]; for (let i = 0; i < e.length; ++i) if (r[e[i]] && !ci(r[e[i]])) return t; return r; } function zc(r, t) { if (!r && !t) return {}; if (!t) return r; if (!r) return t; const e = {}; return [ "top", "right", "bottom", "left", "start", "end" ].forEach((i) => { const n = r[i]; n && (e[i] = n); const o = t[i]; o && (e[i] = (e[i] || 0) + o); }), e; } function Rc(r, t) { const e = [ r["top-left"], r["top-right"], r["bottom-right"], r["bottom-left"] ]; for (let i = 0; i < e.length; ++i) if (e[i] && !ci(e[i])) return t; return r; } function Kn(r, t = 0, e = 10) { return [ r["top-left"], r["top-right"], r["bottom-right"], r["bottom-left"] ].map((i) => De((i || t) / e * 10)).join(" "); } function Bc(r) { var t, e, i, n, o, l; return De(((e = (t = r.offset) == null ? void 0 : t.x) == null ? void 0 : e.value) || 0) + " " + De(((n = (i = r.offset) == null ? void 0 : i.y) == null ? void 0 : n.value) || 0) + " " + De((o = r.blur) != null ? o : 2) + " " + gr(r.color || "#000000", (l = r.alpha) != null ? l : 0.19); } function Lc(r, t) { var e, i, n, o, l, c; return "drop-shadow(" + gr(r.color || "#000000", (e = r.alpha) != null ? e : 0.19) + " " + De((((n = (i = r.offset) == null ? void 0 : i.x) == null ? void 0 : n.value) || 0) * 10 / t) + " " + De((((l = (o = r.offset) == null ? void 0 : o.y) == null ? void 0 : l.value) || 0) * 10 / t) + " " + De(((c = r.blur) != null ? c : 2) * 10 / t) + ")"; } let Fo; function qo() { return typeof matchMedia > "u" ? !1 : (Fo || (Fo = window.matchMedia("(prefers-reduced-motion)")), Fo.matches); } const Hc = 8, Uc = (r, t, e, i) => { let n; return (e || i) && typeof ResizeObserver < "u" && (n = new ResizeObserver(async () => { let o = 0; const l = {}, c = (d, v) => { if (d) { const S = t.getVariable(d, "integer"); if (S) { if (v = Math.round(v), l[d] || (l[d] = /* @__PURE__ */ new Set()), !l[d].has(v)) return S.setValue(v), l[d].add(v), !0; } else { const M = new Error("Missing variable"); M.level = "error", M.additional = { variableName: d }, t.logError(M); } } return !1; }, f = () => { if (!r) return !1; const d = r.getBoundingClientRect(), v = c(e, d.width), S = c(i, d.height); return v || S; }; for (; f(); ) { if (++o > Hc) { const d = new Error("Recursive layout in size_provider"); d.level = "warn", d.additional = { widthVariableName: e, heightVariableName: i }, t.logError(d); break; } await ji(); } }), n.observe(r)), n; }, fs = Symbol("enabled"); function ni(r, t) { return r === 1 || r === 0 || r === !1 || r === !0 ? !!r : t; } function hn(r) { return [ r.state_description, r.description, r.hint ].filter(Boolean).join(", "); } const vn = 2; function Ws(r, t = 1) { if (!(!r || typeof r.value != "number")) { if (r.type === "translation-fixed") return De(r.value * t); if (r.type === "translation-percentage") return `${r.value * t}%`; } } function Mn(r, t = 1) { if (!(!r || typeof r.value != "number")) { if (r.type === "pivot-fixed") return De(r.value * t); if (r.type === "pivot-percentage") return `${r.value * t}%`; } } function Wc(r) { return r.map((t) => { if (t.type === "rotation") { if (typeof t.angle == "number") { const e = Mn(t.pivot_x) || "50%", i = Mn(t.pivot_y) || "50%", n = Mn(t.pivot_x, -1) || "-50%", o = Mn(t.pivot_y, -1) || "-50%"; return `translate(${e}, ${i}) rotate(${t.angle}deg) translate(${n}, ${o})`; } } else if (t.type === "translation") { const e = Ws(t.x) || 0, i = Ws(t.y) || 0; return `translate(${e}, ${i})`; } }).filter(Boolean).join(" "); } const Jo = Symbol("visibility"), Gc = "divkit-ee5cc", qc = { actionable__button: Gc }; function Jc() { } const Xi = Symbol("action"); function cl(r) { if (r.startsWith("tel:")) return "tel"; if (r.startsWith("/")) return "https"; const t = /^([^/]+):\/\//.exec(r); return t && t[1] || ""; } function ul(r, t) { return t.has(r); } const Yc = /* @__PURE__ */ new Set(["button", "image", "checkbox", "radio", "header"]), ko = Er((r, t, e, i) => { let n, o, l = A, c = () => (l(), l = y(n, (de) => o = de), n), { componentContext: f } = t, { id: d = "" } = t, { actions: v = void 0 } = t, { doubleTapActions: S = void 0 } = t, { longTapActions: M = void 0 } = t, { pressStartActions: O = void 0 } = t, { pressEndActions: P = void 0 } = t, { hoverStartActions: J = void 0 } = t, { hoverEndActions: I = void 0 } = t, { cls: V = "" } = t, { style: $e = null } = t, { attrs: Y = void 0 } = t, { use: se = Jc } = t, { customAction: re = null } = t, { isNativeActionAnimation: ne = !0 } = t, { hasInnerFocusable: me = !1 } = t, { customAccessibility: Se = void 0 } = t, { captureFocusOnAction: Z = !0 } = t; const ae = wr(zr), he = wr(Xi); Mi(Xi, { hasAction() { return !!(he.hasAction() || v != null && v.length || (Se == null ? void 0 : Se.mode) === "exclude"); } }); let ve, _e = "", Re, it = null, Pe = !1, qe, ze, et = !1; function be(de) { } function Q(de) { he.hasAction(); } Jr(() => { typeof window < "u" && (window.removeEventListener("pointermove", be), window.removeEventListener("pointerup", Q), window.removeEventListener("pointercancel", Q)), d && !me && ae.unregisterFocusable(d); }), t.componentContext === void 0 && e.componentContext && f !== void 0 && e.componentContext(f), t.id === void 0 && e.id && d !== void 0 && e.id(d), t.actions === void 0 && e.actions && v !== void 0 && e.actions(v), t.doubleTapActions === void 0 && e.doubleTapActions && S !== void 0 && e.doubleTapActions(S), t.longTapActions === void 0 && e.longTapActions && M !== void 0 && e.longTapActions(M), t.pressStartActions === void 0 && e.pressStartActions && O !== void 0 && e.pressStartActions(O), t.pressEndActions === void 0 && e.pressEndActions && P !== void 0 && e.pressEndActions(P), t.hoverStartActions === void 0 && e.hoverStartActions && J !== void 0 && e.hoverStartActions(J), t.hoverEndActions === void 0 && e.hoverEndActions && I !== void 0 && e.hoverEndActions(I), t.cls === void 0 && e.cls && V !== void 0 && e.cls(V), t.style === void 0 && e.style && $e !== void 0 && e.style($e), t.attrs === void 0 && e.attrs && Y !== void 0 && e.attrs(Y), t.use === void 0 && e.use && se !== void 0 && e.use(se), t.customAction === void 0 && e.customAction && re !== void 0 && e.customAction(re), t.isNativeActionAnimation === void 0 && e.isNativeActionAnimation && ne !== void 0 && e.isNativeActionAnimation(ne), t.hasInnerFocusable === void 0 && e.hasInnerFocusable && me !== void 0 && e.hasInnerFocusable(me), t.customAccessibility === void 0 && e.customAccessibility && Se !== void 0 && e.customAccessibility(Se), t.captureFocusOnAction === void 0 && e.captureFocusOnAction && Z !== void 0 && e.captureFocusOnAction(Z), et = (Se == null ? void 0 : Se.mode) === "exclude", c(n = f.getDerivedFromVars(v, void 0, !0)); { if (Array.isArray(o) && (o != null && o.length)) for (let de = 0; de < o.length; ++de) { const te = o[de].url; if (te) { _e = te, Re = o[de].target || void 0; break; } } Pe = !!re, (_e || Array.isArray(o) && (o != null && o.length)) && (he.hasAction() || et) ? (_e = "", f.logError(k(new Error("Actionable element is forbidden inside other actionable element or inside accessibility mode=exlucde"), { level: "warn", additional: { actions: o } }))) : _e && !ul(cl(_e), ae.getBuiltinProtocols()) ? (_e = "", Pe = !0) : !_e && Array.isArray(o) && (o != null && o.length) && (Pe = !0, o.some((de) => de.url || de.typed || de.menu_items) || f.logError(k(new Error("The component has a list of actions, but does not have a real action"), { level: "warn", additional: { actions: o } }))); } return Se != null && Se.type && Yc.has(Se.type) ? Se.type === "header" ? qe = "heading" : Se.type === "image" ? qe = "img" : qe = Se.type : _e ? qe = void 0 : Pe && (qe = "button"), (qe === "checkbox" || qe === "radio") && typeof (Se == null ? void 0 : Se.is_checked) == "boolean" ? ze = Se.is_checked : ze = void 0, l(), `${_e ? `<a${fn( [ { href: Gr(_e) }, { target: Gr(Re) }, { style: Gr($e) }, { role: Gr(qe) }, { "aria-checked": Gr(ze) }, { class: dt(V, !0) + " " + dt(Nr["root__any-actions"], !0) + " " + dt( ne ? Nr.root__clickable : Nr["root__clickable-no-transition"], !0 ) + " " + dt( M != null && M.length ? Nr["root_disabled-context-menu"] : "", !0 ) }, { tabindex: Gr(f.fakeElement === vn ? -1 : null) }, gn(Y) ], {} )}${j("this", ve, 0)}>${i.default ? i.default({}) : ""}</a>` : `${Pe ? `<button${fn( [ { class: dt(V, !0) + " " + dt(qc.actionable__button, !0) + " " + dt(Nr["root__any-actions"], !0) + dt( ` ${ne ? Nr.root__clickable : Nr["root__clickable-no-transition"]} ${Nr.root__unselectable}`, !0 ) + " " + dt( M != null && M.length ? Nr["root_disabled-context-menu"] : "", !0 ) }, { style: Gr($e) }, { role: Gr(qe) }, { "aria-checked": Gr(ze) }, { type: "button" }, { tabindex: Gr(f.fakeElement === vn ? -1 : null) }, gn(Y) ], {} )}${j("this", ve, 0)}>${i.default ? i.default({}) : ""}</button>` : `<span${fn( [ { class: dt(V, !0) + " " + dt( M != null && M.length ? Nr["root_disabled-context-menu"] : "", !0 ) + " " + dt("", !0) }, { style: Gr($e) }, { role: Gr(qe) }, { "aria-checked": Gr(ze) }, { "aria-hidden": Gr(et || void 0) }, gn(Y) ], {} )}${j("this", ve, 0)}>${i.default ? i.default({}) : ""}</span>`}`}`; }), Pn = { "outer-background": "divkit-7b038", "outer-background_clip": "divkit-8fdbd", "outer-background__item": "divkit-f9881", "outer-background__item_hidden": "divkit-ea047" }; function fi(r) { return yn(r) && r > 0; } function dl(r, t) { return r.map((e) => { if (!e) { t(k(new Error("Incorrect filter"), { level: "warn" })); return; } if (e.type === "blur") { if (fi(e.radius)) return `blur(${Tr(e.radius / 2)})`; } else { if (e.type === "rtl_mirror") return; t(k(new Error("Unknown filter"), { level: "warn", additional: { filter: e.type } })); } }).filter(Boolean).join(" "); } const Kc = Er((r, t, e, i) => { let n, { direction: o } = t, { componentContext: l } = t, { background: c = [] } = t, { radius: f = "" } = t; return t.direction === void 0 && e.direction && o !== void 0 && e.direction(o), t.componentContext === void 0 && e.componentContext && l !== void 0 && e.componentContext(l), t.background === void 0 && e.background && c !== void 0 && e.background(c), t.radius === void 0 && e.radius && f !== void 0 && e.radius(f), n = c.map((d) => { const v = {}, S = { style: v }; if (d.type === "nine_patch_image" && d.insets) v["border-image"] = `url("${d.image_url}") ${d.insets.top || 0} ${d.insets.right || 0} ${d.insets.bottom || 0} ${d.insets.left || 0} fill`, v["border-image-width"] = "auto"; else { const M = $o([d], o); d.type === "solid" && (v["background-color"] = M.color), d.type === "gradient" && (v["background-image"] = M.image), d.type === "image" && (v.opacity = Number(d.alpha), S.image_url = d.image_url, v["object-fit"] = M.size, v["object-position"] = M.position, Array.isArray(d.filters) && d.filters.length && (v.filter = dl(d.filters, l.logError), o === "rtl" && d.filters.some((O) => O.type === "rtl_mirror") && (v.transform = "scale(-1,1)"))); } return S; }), `<span${j("class", Pn["outer-background"] + (f ? " " + Pn["outer-background_clip"] : ""), 0)}${qr({ "border-radius": f })}>${Ir(n, (d) => `${d.image_url ? `<img${j("src", d.image_url, 0)} alt="" aria-hidden="true" loading="lazy" decoding="async"${j("class", Pn["outer-background__item"], 0)}${j("style", yr(d.style), 0)}>` : `<span${j("class", Pn["outer-background__item"], 0)}${j("style", yr(d.style), 0)}></span>`}`)}</span>`; }), Xc = { left: "start", center: "center", right: "end", start: "start", end: "end" }, Zc = { left: "end", center: "center", right: "start", start: "start", end: "end" }, Qc = { top: "start", center: "center", bottom: "end", baseline: "baseline" }, Io = (r) => `The component id with the "${r}" property for state change is missing. Either specify the id, or specify the "transition_trigger" property without "state_change" value.`; function eu(r) { return r.some((t) => t.name === "native"); } const ui = Er((r, t, e, i) => { var Cs, Ss, Vs, Fs, Is, Ds, Ts, Ms, Ps, Os, Ns; let n, o, l, c, f, d, v, S, M, O, P, J, I, V, $e, Y, se, re, ne, me, Se, Z, ae, he, ve, _e = A, Re = () => (_e(), _e = y($e, (q) => ve = q), $e), it, Pe = A, qe = () => (Pe(), Pe = y(Y, (q) => it = q), Y), ze, et, be, Q = A, de = () => (Q(), Q = y(V, (q) => be = q), V), te, oe = A, Ye = () => (oe(), oe = y(se, (q) => te = q), se), tt, yt = A, ft = () => (yt(), yt = y(I, (q) => tt = q), I), Je, H, nt, ke = A, It = () => (ke(), ke = y(J, (q) => nt = q), J), He, ye = A, ot = () => (ye(), ye = y(o, (q) => He = q), o), _t, lt = A, Dt = () => (lt(), lt = y(P, (q) => _t = q), P), we, Be = A, st = () => (Be(), Be = y(O, (q) => we = q), O), kt, U = A, Pt = () => (U(), U = y(M, (q) => kt = q), M), wt, gt = A, Me = () => (gt(), gt = y(S, (q) => wt = q), S), Fe, Ie = A, Jt = () => (Ie(), Ie = y(f, (q) => Fe = q), f), St, Tt = A, Yt = () => (Tt(), Tt = y(v, (q) => St = q), v), D, Et = A, ut = () => (Et(), Et = y(d, (q) => D = q), d), Mt, Ee = A, Le = () => (Ee(), Ee = y(c, (q) => Mt = q), c), Ot, ce = A, Vt = () => (ce(), ce = y(l, (q) => Ot = q), l), ee, je, { componentContext: x } = t, { cls: $t = "" } = t, { style: ct = void 0 } = t, { layoutParams: xe = {} } = t, { customDescription: Nt = !1 } = t, { customPaddings: Ce = !1 } = t, { customActions: bt = "" } = t, { additionalPaddings: Rt = null } = t, { heightByAspect: Ft = !1 } = t, { parentOf: Ut = void 0 } = t, { parentOfSimpleMode: Xt = void 0 } = t, { replaceItems: Wt = void 0 } = t, { hasInnerFocusable: cr = !1 } = t, { alwaysCustomFocus: Lt = !1 } = t, { devapi: Kt = void 0 } = t; const ht = wr(zr), K = wr(ds), { isEnabled: at } = wr(fs); je = y(at, (q) => ee = q); const or = wr(Jo), Bt = ht.direction; H = y(Bt, (q) => Je = q); let z, L, le = null, Ze = [], Ue = {}, E = {}, Ve = !1, Te = 1, We = "transparent", Oe = 0, fe = { "top-left": 0, "top-right": 0, "bottom-right": 0, "bottom-left": 0 }, b = "", ge = null, ie = "", Qe = {}, sr, mr, Rr, a = 0, X = 0, Cr = 0, vr = !1, Zt = !1, T = {}, _r, ir, zt, Vr = 0, Yr = 0, ti = 0, tr = !1, Br = !1, Mr = 1, R, Zr, Pr, Fr, Qr = [], $r = !1, ri = !1, Or, Lr, Hr, u = [], g = [], p = [], F = [], w = [], ue = [], W = [], rt = [], Ke = [], vt = [], pt = "", At, ar, Xe, rr, mt = !1, Ae = "visible", s, h, $ = !1, m = !0, N, C, Ge, Ne, Gt; function ur() { ge = null, ie = "", Mr = 1, mt = !1, Ae = "visible", s = void 0, m = !0, Qr = x.fakeElement ? [] : x.json.transition_triggers || ["state_change", "visibility_change"], $r = Qr.indexOf("state_change") !== -1, ri = Qr.indexOf("visibility_change") !== -1, z && xs(z), C == null || C(), ee && (C = ht.processVariableTriggers(x, x.json.variable_triggers)); } function br(q, jt) { if (!Array.isArray(Ut) || !Wt || Xt && (Array.isArray(jt) ? jt.length : 0) !== 1) return; const Qt = Ut.findIndex((Ht) => (Ht == null ? void 0 : Ht.id) === q), hr = Ut.slice(); hr.splice(Qt, 1, ...(jt || []).map((Ht) => ({ json: Ht, id: Ht == null ? void 0 : Ht.id }))), Ut = hr, Wt(hr.map((Ht) => Ht == null ? void 0 : Ht.json)); } function qi(q) { const jt = ho(q.start_value, 1), Qt = ho(q.end_value, 1), hr = Ar(q.start_delay, 0), Ht = qo() ? 0 : Ar(q.duration, 300), dr = ll(q.interpolator, "ease_in_out").replace(/_/g, "-"); switch (q.name) { case "fade": return At = jt, ar = Qt, `opacity ${Ht}ms ${dr} ${hr}ms`; case "scale": return Xe = jt, rr = Qt, `transform ${Ht}ms ${dr} ${hr}ms`; case "native": case "no_animation": return ""; default: return x.logError(k(new Error("Unknown action_animation name"), { additional: { animation: q.name } })), ""; } } const Oi = or.visible; et = y(Oi, (q) => ze = q); const Ji = ki(Se); Mi(Jo, { visible: Ji }); async function Ei(q) { Ae = q; const jt = q === "visible" ? "in" : "out", Qt = jt === "in" ? x.json.transition_in : x.json.transition_out; if (ri && Qt) { let hr; q === "gone" && (hr = z.getBoundingClientRect()), await ji(), jt === "in" && (Lr = !0), K.runVisibilityTransition( { ...x.json, visibility: "visible" }, x, Qt, z, jt, hr ).then(() => { jt === "in" && (Lr = !1); }).catch((Ht) => { throw jt === "in" && (Lr = !1), Ht; }); } } function As() { if (le && z) { const q = ht.getExtensionContext(x); le.forEach((jt) => { var Qt; (Qt = jt.unmountView) == null || Qt.call(jt, z, q); }), le = null; } } function xs(q) { var Qt, hr, Ht; Ge == null || Ge.destroy(), z = q, $r && x.json.transition_in && (x.id ? K.registerChildWithTransitionIn(x.json, x, x.json.transition_in, q).then(() => { Or = !1; }).catch((dr) => { throw Or = !1, dr; }) : x.logError(k(new Error(Io("transition_in")), { level: "warn" }))), $r && x.json.transition_out && (x.id ? K.registerChildWithTransitionOut(x.json, x, x.json.transition_out, q) : x.logError(k(new Error(Io("transition_out")), { level: "warn" }))), x.fakeElement || (x.json.transition_change && !x.id && x.logError(k(new Error(Io("transition_change")), { level: "warn" })), K.registerChildWithTransitionChange(x.json, x, x.json.transition_change, q).then(() => { Hr = !1; }).catch((dr) => { throw Hr = !1, dr; })); const jt = x.id; return jt && (Ne == null || Ne(), Ne = ht.registerId(jt, { context: () => x, node: () => z }), K.registerChild(jt)), (Qt = x.json.tooltips) == null || Qt.forEach((dr) => { ht.registerTooltip(q, dr); }), h && (h.disconnect(), h = void 0), h = Uc(z, x, (hr = x.json.layout_provider) == null ? void 0 : hr.width_variable_name, (Ht = x.json.layout_provider) == null ? void 0 : Ht.height_variable_name), Ge = { destroy() { Ne && (Ne(), Ne = void 0), jt && K.unregisterChild(jt), Gt && Gt.destroy(); } }, Ge; } function Ll() { Gt == null || Gt.destroy(); const q = !x.fakeElement || x.fakeElement === vn, jt = q ? x.json.visibility_actions || x.json.visibility_action && [x.json.visibility_action] : [], Qt = q ? x.json.disappear_actions : []; Array.isArray(jt) && jt.length || Array.isArray(Qt) && Qt.length ? Gt = Mc(z, { visibilityActions: jt, disappearActions: Qt, rootCtx: ht, componentContext: x }) : Gt = void 0; } function Hl() { x.json.focus && ((Lt || !Lo(ht.isPointerFocus)) && ($ = !0), x.execAnyActions(F)); } function Ul() { x.json.focus && ($ = !1, x.execAnyActions(w)); } Jr(() => { var q; Ze.forEach((jt) => { ht.unregisterParentOf(jt); }), Ze = [], h && (h.disconnect(), h = void 0), (q = x.json.tooltips) == null || q.forEach((jt) => { ht.unregisterTooltip(jt); }), C == null || C(), As(); }), t.componentContext === void 0 && e.componentContext && x !== void 0 && e.componentContext(x), t.cls === void 0 && e.cls && $t !== void 0 && e.cls($t), t.style === void 0 && e.style && ct !== void 0 && e.style(ct), t.layoutParams === void 0 && e.layoutParams && xe !== void 0 && e.layoutParams(xe), t.customDescription === void 0 && e.customDescription && Nt !== void 0 && e.customDescription(Nt), t.customPaddings === void 0 && e.customPaddings && Ce !== void 0 && e.customPaddings(Ce), t.customActions === void 0 && e.customActions && bt !== void 0 && e.customActions(bt), t.additionalPaddings === void 0 && e.additionalPaddings && Rt !== void 0 && e.additionalPaddings(Rt), t.heightByAspect === void 0 && e.heightByAspect && Ft !== void 0 && e.heightByAspect(Ft), t.parentOf === void 0 && e.parentOf && Ut !== void 0 && e.parentOf(Ut), t.parentOfSimpleMode === void 0 && e.parentOfSimpleMode && Xt !== void 0 && e.parentOfSimpleMode(Xt), t.replaceItems === void 0 && e.replaceItems && Wt !== void 0 && e.replaceItems(Wt), t.hasInnerFocusable === void 0 && e.hasInnerFocusable && cr !== void 0 && e.hasInnerFocusable(cr), t.alwaysCustomFocus === void 0 && e.alwaysCustomFocus && Lt !== void 0 && e.alwaysCustomFocus(Lt), t.devapi === void 0 && e.devapi && Kt !== void 0 && e.devapi(Kt), n = x.origJson, n && ur(), ee ? (C == null || C(), C = ht.processVariableTriggers(x, x.json.variable_triggers)) : C == null || C(), ot(o = x.getDerivedFromVars(x.json.focus)), Vt(l = x.getDerivedFromVars(x.json.border)), Le(c = x.getDerivedFromVars(x.json.paddings)), Jt(f = x.getDerivedFromVars(x.json.margins)), ut(d = x.getDerivedFromVars(x.json.width)), Yt(v = x.getDerivedFromVars(x.json.alignment_horizontal)), Me(S = x.getDerivedFromVars(x.json.height)), Pt(M = x.getDerivedFromVars(x.json.alignment_vertical)), st(O = x.getDerivedFromVars(x.json.alpha)), Dt(P = x.getDerivedFromVars(x.json.accessibility)), It(J = x.getDerivedFromVars(x.json.background)), ft(I = x.getDerivedFromVars(x.json.action_animation)), de(V = x.getDerivedFromVars(x.json.visibility)), Re($e = x.getDerivedFromVars(x.json.transform)), qe(Y = x.getDerivedFromVars(x.json.transformations)), Ye(se = x.getDerivedFromVars(x.json.capture_focus_on_action)), Ze.forEach((q) => { ht.unregisterParentOf(q); }), Ze = [], Ut && Ut.forEach((q) => { q != null && q.id && (Ze.push(q.id), ht.registerParentOf(q.id, { replaceWith: br, isSingleMode: !!Xt })); }); { const q = $ && (He != null && He.border) ? He.border : Ot; let jt = {}, Qt = {}, hr = !1, Ht = ""; if (q) { if (ni(q.has_shadow, !1)) { const dr = q.shadow; dr ? jt["box-shadow"] = Bc(dr) : jt["box-shadow"] = "0 1px 2px 0 rgba(0,0,0,.18), 0 0 0 1px rgba(0,0,0,.07)"; } if (q.stroke) { hr = !0, Te = Ar(q.stroke.width, Te), We = gr(q.stroke.color, 1, We); const dr = ((Cs = q.stroke.style) == null ? void 0 : Cs.type) === "dashed" ? "dashed" : "solid"; Qt["--divkit-border"] = `${De(Te + 1)} ${dr} ${We}`; } if (q.corners_radius && typeof q.corners_radius == "object") { fe = Rc(q.corners_radius, fe), jt["border-radius"] = Kn(fe); const dr = {}; ["top-left", "top-right", "bottom-right", "bottom-left"].forEach((di) => { dr[di] = (fe[di] || 0) + 1; }), Qt["--divkit-border-radius"] = Kn(dr); } else q.corner_radius && (Oe = Ar(q.corner_radius, Oe), fe = { "top-left": Oe, "top-right": Oe, "bottom-right": Oe, "bottom-left": Oe }, jt["border-radius"] = De(Oe), Qt["--divkit-border-radius"] = De(Oe + 1)); if (hr && Te && (q.corners_radius || q.corner_radius)) { let dr = { ...fe }; ["top-left", "top-right", "bottom-right", "bottom-left"].forEach((di) => { dr[di] = (dr[di] || 0) + Te / 2; }), Ht = Kn(dr); } } Ue = Ri(jt, Ue), E = Ri(Qt, E), Ve = hr, b = Ht; } ge = $n( Mt && !Ce ? Mt : void 0, ge ), re = Ci(zc(ge, Rt), Je), ie = go(Fe, Je, ie); { let q, jt, Qt, hr, Ht = {}, dr = 0, di = 0, Vi = !1, Fi = !1; const Dr = (Ss = x.json.width) == null ? void 0 : Ss.type; if (Dr === "fixed") a = Ar(D == null ? void 0 : D.value, a), jt = De(a); else if (Dr === "wrap_content" || (Dr === "match_parent" || !Dr) && xe.parentHorizontalWrapContent) q = "content", (Dr === "wrap_content" && (D != null && D.constrained) || (Dr === "match_parent" || !Dr) && xe.parentHorizontalWrapContent) && (Ht["width-constrained"] = !0, xe.parentContainerOrientation === "horizontal" && (di = 1)), (Dr === "match_parent" || !Dr) && x.logError(k(new Error("Incorrect child size. Container with wrap_content size contains child with match_parent size along the main axis"), { level: "warn" })); else if (q = "parent", xe.parentContainerOrientation === "vertical" && xe.parentContainerWrap && (Fi = !0, x.logError(k(new Error("Cannot place a match_parent items on the cross-axis of wrap"), { level: "error" }))), xe.parentContainerOrientation === "vertical" && xe.parentContainerKnownWidth || xe.stretchWidth || xe.parentContainerOrientation === "horizontal" && xe.treatMatchParentAs100) { const pr = (Fs = (Vs = Je === "ltr" ? Fe == null ? void 0 : Fe.start : Fe == null ? void 0 : Fe.end) != null ? Vs : Fe == null ? void 0 : Fe.left) != null ? Fs : 0, ei = (Ds = (Is = Je === "ltr" ? Fe == null ? void 0 : Fe.end : Fe == null ? void 0 : Fe.start) != null ? Is : Fe == null ? void 0 : Fe.right) != null ? Ds : 0, Ur = `calc(100% - ${Tr(pr + ei)})`; xe.stretchWidth ? (jt = "0", Qt = Ur) : jt = Ur; } else xe.parentContainerOrientation === "horizontal" && (dr = (D && "weight" in D && D.weight || 1) * (xe.multiplyGrow || 1), xe.parentContainerWrap && (Vi = !0)); if (Dr === "wrap_content" || Dr === "match_parent") { const pr = D; let ei, Ur; pr.min_size && ci(pr.min_size.value) && (ei = pr.min_size.value), pr.max_size && ci(pr.max_size.value) && (Ur = pr.max_size.value), ei !== void 0 && Ur !== void 0 && ei > Ur && (x.logError(k(new Error("Element has incorrect width constraints (min size is bigger than max size)."), { additional: { id: x.json.id, minSize: ei + "dp", maxSize: Ur + "dp" } })), ei = Ur = void 0), ei !== void 0 && (Qt = De(ei)), Ur !== void 0 && (hr = De(Ur)); } if (q === "parent") Ht["halign-self"] = "stretch"; else { const pr = St; pr === "left" || pr === "center" || pr === "right" || pr === "start" || pr === "end" ? Ht["halign-self"] = (Je === "ltr" ? Xc : Zc)[pr] : Ht["halign-self"] = xe.parentHAlign || "start"; } q && (Ht.width = q), sr = jt, mr = Qt, Rr = hr, X = dr, Cr = di, Qe = Ri(Ht, Qe), vr = Vi, Zt = Fi; } { let q, jt, Qt, hr, Ht = {}, dr = 0, di = 0, Vi = !1, Fi = !1; const Dr = (Ts = x.json.height) == null ? void 0 : Ts.type; if (!Ft) if (Dr === "fixed") Vr = Ar(wt == null ? void 0 : wt.value, Vr), jt = De(Vr); else if (Dr === "match_parent" && !xe.parentVerticalWrapContent) if (q = "parent", xe.parentContainerOrientation === "horizontal" && xe.parentContainerWrap && (Fi = !0, x.logError(k(new Error("Cannot place a match_parent items on the cross-axis of wrap"), { level: "error" }))), xe.parentContainerOrientation === "horizontal" && xe.parentContainerKnownHeight || xe.stretchHeight || xe.parentContainerOrientation === "vertical" && xe.treatMatchParentAs100) { const pr = (Ms = Fe == null ? void 0 : Fe.top) != null ? Ms : 0, ei = (Ps = Fe == null ? void 0 : Fe.bottom) != null ? Ps : 0, Ur = `calc(100% - ${Tr(pr + ei)})`; xe.stretchHeight ? (jt = "0", Qt = Ur) : jt = Ur; } else xe.parentContainerOrientation === "vertical" && (dr = ((wt == null ? void 0 : wt.weight) || 1) * (xe.multiplyGrow || 1), xe.parentContainerWrap && (Vi = !0)); else q = "content", (Dr === "wrap_content" && (wt != null && wt.constrained) || Dr === "match_parent" &