456 lines
437 KiB
JavaScript
456 lines
437 KiB
JavaScript
/* Chartist.js 0.11.4
|
|
* Copyright © 2019 Gion Kunz
|
|
* Free to use under either the WTFPL license or the MIT license.
|
|
* https://raw.githubusercontent.com/gionkunz/chartist-js/master/LICENSE-WTFPL
|
|
* https://raw.githubusercontent.com/gionkunz/chartist-js/master/LICENSE-MIT
|
|
*/
|
|
|
|
!function (e, t) { "function" == typeof define && define.amd ? define("Chartist", [], (function () { return e.Chartist = t() })) : "object" == typeof module && module.exports ? module.exports = t() : e.Chartist = t() }(this, (function () { var e = { version: "0.11.4" }; return function (e, t) { "use strict"; var i = e.window, n = e.document; t.namespaces = { svg: "http://www.w3.org/2000/svg", xmlns: "http://www.w3.org/2000/xmlns/", xhtml: "http://www.w3.org/1999/xhtml", xlink: "http://www.w3.org/1999/xlink", ct: "http://gionkunz.github.com/chartist-js/ct" }, t.noop = function (e) { return e }, t.alphaNumerate = function (e) { return String.fromCharCode(97 + e % 26) }, t.extend = function (e) { var i, n, s, r; for (e = e || {}, i = 1; i < arguments.length; i++)for (var a in n = arguments[i], r = Object.getPrototypeOf(e), n) "__proto__" === a || "constructor" === a || null !== r && a in r || (s = n[a], e[a] = "object" != typeof s || null === s || s instanceof Array ? s : t.extend(e[a], s)); return e }, t.replaceAll = function (e, t, i) { return e.replace(new RegExp(t, "g"), i) }, t.ensureUnit = function (e, t) { return "number" == typeof e && (e += t), e }, t.quantity = function (e) { if ("string" == typeof e) { var t = /^(\d+)\s*(.*)$/g.exec(e); return { value: +t[1], unit: t[2] || void 0 } } return { value: e } }, t.querySelector = function (e) { return e instanceof Node ? e : n.querySelector(e) }, t.times = function (e) { return Array.apply(null, new Array(e)) }, t.sum = function (e, t) { return e + (t || 0) }, t.mapMultiply = function (e) { return function (t) { return t * e } }, t.mapAdd = function (e) { return function (t) { return t + e } }, t.serialMap = function (e, i) { var n = [], s = Math.max.apply(null, e.map((function (e) { return e.length }))); return t.times(s).forEach((function (t, s) { var r = e.map((function (e) { return e[s] })); n[s] = i.apply(null, r) })), n }, t.roundWithPrecision = function (e, i) { var n = Math.pow(10, i || t.precision); return Math.round(e * n) / n }, t.precision = 8, t.escapingMap = { "&": "&", "<": "<", ">": ">", '"': """, "'": "'" }, t.serialize = function (e) { return null == e ? e : ("number" == typeof e ? e = "" + e : "object" == typeof e && (e = JSON.stringify({ data: e })), Object.keys(t.escapingMap).reduce((function (e, i) { return t.replaceAll(e, i, t.escapingMap[i]) }), e)) }, t.deserialize = function (e) { if ("string" != typeof e) return e; e = Object.keys(t.escapingMap).reduce((function (e, i) { return t.replaceAll(e, t.escapingMap[i], i) }), e); try { e = void 0 !== (e = JSON.parse(e)).data ? e.data : e } catch (e) { } return e }, t.createSvg = function (e, i, n, s) { var r; return i = i || "100%", n = n || "100%", Array.prototype.slice.call(e.querySelectorAll("svg")).filter((function (e) { return e.getAttributeNS(t.namespaces.xmlns, "ct") })).forEach((function (t) { e.removeChild(t) })), (r = new t.Svg("svg").attr({ width: i, height: n }).addClass(s))._node.style.width = i, r._node.style.height = n, e.appendChild(r._node), r }, t.normalizeData = function (e, i, n) { var s, r = { raw: e, normalized: {} }; return r.normalized.series = t.getDataArray({ series: e.series || [] }, i, n), s = r.normalized.series.every((function (e) { return e instanceof Array })) ? Math.max.apply(null, r.normalized.series.map((function (e) { return e.length }))) : r.normalized.series.length, r.normalized.labels = (e.labels || []).slice(), Array.prototype.push.apply(r.normalized.labels, t.times(Math.max(0, s - r.normalized.labels.length)).map((function () { return "" }))), i && t.reverseData(r.normalized), r }, t.safeHasProperty = function (e, t) { return null !== e && "object" == typeof e && e.hasOwnProperty(t) }, t.isDataHoleValue = function (e) { return null == e || "number" == typeof e && isNaN(e) }, t.reverseData = function (e) { e.labels.reverse(), e.series.reverse(); for (var t = 0; t < e.series.length; t++)"object" == typeof e.series[t] && void 0 !== e.series[t].data ? e.series[t].data.reverse() : e.series[t] instanceof Array && e.series[t].reverse() }, t.getDataArray = function (e, i, n) { return e.series.map((function e(i) { if (t.safeHasProperty(i, "value")) return e(i.value); if (t.safeHasProperty(i, "data")) return e(i.data); if (i instanceof Array) return i.map(e); if (!t.isDataHoleValue(i)) { if (n) { var s = {}; return "string" == typeof n ? s[n] = t.getNumberOrUndefined(i) : s.y = t.getNumberOrUndefined(i), s.x = i.hasOwnProperty("x") ? t.getNumberOrUndefined(i.x) : s.x, s.y = i.hasOwnProperty("y") ? t.getNumberOrUndefined(i.y) : s.y, s } return t.getNumberOrUndefined(i) } })) }, t.normalizePadding = function (e, t) { return t = t || 0, "number" == typeof e ? { top: e, right: e, bottom: e, left: e } : { top: "number" == typeof e.top ? e.top : t, right: "number" == typeof e.right ? e.right : t, bottom: "number" == typeof e.bottom ? e.bottom : t, left: "number" == typeof e.left ? e.left : t } }, t.getMetaData = function (e, t) { var i = e.data ? e.data[t] : e[t]; return i ? i.meta : void 0 }, t.orderOfMagnitude = function (e) { return Math.floor(Math.log(Math.abs(e)) / Math.LN10) }, t.projectLength = function (e, t, i) { return t / i.range * e }, t.getAvailableHeight = function (e, i) { return Math.max((t.quantity(i.height).value || e.height()) - (i.chartPadding.top + i.chartPadding.bottom) - i.axisX.offset, 0) }, t.getHighLow = function (e, i, n) { var s = { high: void 0 === (i = t.extend({}, i, n ? i["axis" + n.toUpperCase()] : {})).high ? -Number.MAX_VALUE : +i.high, low: void 0 === i.low ? Number.MAX_VALUE : +i.low }, r = void 0 === i.high, a = void 0 === i.low; return (r || a) && function e(t) { if (void 0 !== t) if (t instanceof Array) for (var i = 0; i < t.length; i++)e(t[i]); else { var o = n ? +t[n] : +t; r && o > s.high && (s.high = o), a && o < s.low && (s.low = o) } }(e), (i.referenceValue || 0 === i.referenceValue) && (s.high = Math.max(i.referenceValue, s.high), s.low = Math.min(i.referenceValue, s.low)), s.high <= s.low && (0 === s.low ? s.high = 1 : s.low < 0 ? s.high = 0 : (s.high > 0 || (s.high = 1), s.low = 0)), s }, t.isNumeric = function (e) { return null !== e && isFinite(e) }, t.isFalseyButZero = function (e) { return !e && 0 !== e }, t.getNumberOrUndefined = function (e) { return t.isNumeric(e) ? +e : void 0 }, t.isMultiValue = function (e) { return "object" == typeof e && ("x" in e || "y" in e) }, t.getMultiValue = function (e, i) { return t.isMultiValue(e) ? t.getNumberOrUndefined(e[i || "y"]) : t.getNumberOrUndefined(e) }, t.rho = function (e) { if (1 === e) return e; function t(e, i) { return e % i == 0 ? i : t(i, e % i) } function i(e) { return e * e + 1 } var n, s = 2, r = 2; if (e % 2 == 0) return 2; do { s = i(s) % e, r = i(i(r)) % e, n = t(Math.abs(s - r), e) } while (1 === n); return n }, t.getBounds = function (e, i, n, s) { var r, a, o, l = 0, h = { high: i.high, low: i.low }; h.valueRange = h.high - h.low, h.oom = t.orderOfMagnitude(h.valueRange), h.step = Math.pow(10, h.oom), h.min = Math.floor(h.low / h.step) * h.step, h.max = Math.ceil(h.high / h.step) * h.step, h.range = h.max - h.min, h.numberOfSteps = Math.round(h.range / h.step); var u = t.projectLength(e, h.step, h) < n, c = s ? t.rho(h.range) : 0; if (s && t.projectLength(e, 1, h) >= n) h.step = 1; else if (s && c < h.step && t.projectLength(e, c, h) >= n) h.step = c; else for (; ;) { if (u && t.projectLength(e, h.step, h) <= n) h.step *= 2; else { if (u || !(t.projectLength(e, h.step / 2, h) >= n)) break; if (h.step /= 2, s && h.step % 1 != 0) { h.step *= 2; break } } if (l++ > 1e3) throw new Error("Exceeded maximum number of iterations while optimizing scale step!") } var d = 2221e-19; function p(e, t) { return e === (e += t) && (e *= 1 + (t > 0 ? d : -d)), e } for (h.step = Math.max(h.step, d), a = h.min, o = h.max; a + h.step <= h.low;)a = p(a, h.step); for (; o - h.step >= h.high;)o = p(o, -h.step); h.min = a, h.max = o, h.range = h.max - h.min; var f = []; for (r = h.min; r <= h.max; r = p(r, h.step)) { var m = t.roundWithPrecision(r); m !== f[f.length - 1] && f.push(m) } return h.values = f, h }, t.polarToCartesian = function (e, t, i, n) { var s = (n - 90) * Math.PI / 180; return { x: e + i * Math.cos(s), y: t + i * Math.sin(s) } }, t.createChartRect = function (e, i, n) { var s = !(!i.axisX && !i.axisY), r = s ? i.axisY.offset : 0, a = s ? i.axisX.offset : 0, o = e.width() || t.quantity(i.width).value || 0, l = e.height() || t.quantity(i.height).value || 0, h = t.normalizePadding(i.chartPadding, n); o = Math.max(o, r + h.left + h.right), l = Math.max(l, a + h.top + h.bottom); var u = { padding: h, width: function () { return this.x2 - this.x1 }, height: function () { return this.y1 - this.y2 } }; return s ? ("start" === i.axisX.position ? (u.y2 = h.top + a, u.y1 = Math.max(l - h.bottom, u.y2 + 1)) : (u.y2 = h.top, u.y1 = Math.max(l - h.bottom - a, u.y2 + 1)), "start" === i.axisY.position ? (u.x1 = h.left + r, u.x2 = Math.max(o - h.right, u.x1 + 1)) : (u.x1 = h.left, u.x2 = Math.max(o - h.right - r, u.x1 + 1))) : (u.x1 = h.left, u.x2 = Math.max(o - h.right, u.x1 + 1), u.y2 = h.top, u.y1 = Math.max(l - h.bottom, u.y2 + 1)), u }, t.createGrid = function (e, i, n, s, r, a, o, l) { var h = {}; h[n.units.pos + "1"] = e, h[n.units.pos + "2"] = e, h[n.counterUnits.pos + "1"] = s, h[n.counterUnits.pos + "2"] = s + r; var u = a.elem("line", h, o.join(" ")); l.emit("draw", t.extend({ type: "grid", axis: n, index: i, group: a, element: u }, h)) }, t.createGridBackground = function (e, t, i, n) { var s = e.elem("rect", { x: t.x1, y: t.y2, width: t.width(), height: t.height() }, i, !0); n.emit("draw", { type: "gridBackground", group: e, element: s }) }, t.createLabel = function (e, i, s, r, a, o, l, h, u, c, d) { var p, f = {}; if (f[a.units.pos] = e + l[a.units.pos], f[a.counterUnits.pos] = l[a.counterUnits.pos], f[a.units.len] = i, f[a.counterUnits.len] = Math.max(0, o - 10), c) { var m = n.createElement("span"); m.className = u.join(" "), m.setAttribute("xmlns", t.namespaces.xhtml), m.innerText = r[s], m.style[a.units.len] = Math.round(f[a.units.len]) + "px", m.style[a.counterUnits.len] = Math.round(f[a.counterUnits.len]) + "px", p = h.foreignObject(m, t.extend({ style: "overflow: visible;" }, f)) } else p = h.elem("text", f, u.join(" ")).text(r[s]); d.emit("draw", t.extend({ type: "label", axis: a, index: s, group: h, element: p, text: r[s] }, f)) }, t.getSeriesOption = function (e, t, i) { if (e.name && t.series && t.series[e.name]) { var n = t.series[e.name]; return n.hasOwnProperty(i) ? n[i] : t[i] } return t[i] }, t.optionsProvider = function (e, n, s) { var r, a, o = t.extend({}, e), l = []; function h(e) { var l = r; if (r = t.extend({}, o), n) for (a = 0; a < n.length; a++) { i.matchMedia(n[a][0]).matches && (r = t.extend(r, n[a][1])) } s && e && s.emit("optionsChanged", { previousOptions: l, currentOptions: r }) } if (!i.matchMedia) throw "window.matchMedia not found! Make sure you're using a polyfill."; if (n) for (a = 0; a < n.length; a++) { var u = i.matchMedia(n[a][0]); u.addListener(h), l.push(u) } return h(), { removeMediaQueryListeners: function () { l.forEach((function (e) { e.removeListener(h) })) }, getCurrentOptions: function () { return t.extend({}, r) } } }, t.splitIntoSegments = function (e, i, n) { n = t.extend({}, { increasingX: !1, fillHoles: !1 }, n); for (var s = [], r = !0, a = 0; a < e.length; a += 2)void 0 === t.getMultiValue(i[a / 2].value) ? n.fillHoles || (r = !0) : (n.increasingX && a >= 2 && e[a] <= e[a - 2] && (r = !0), r && (s.push({ pathCoordinates: [], valueData: [] }), r = !1), s[s.length - 1].pathCoordinates.push(e[a], e[a + 1]), s[s.length - 1].valueData.push(i[a / 2])); return s } }(this || global, e), function (e, t) { "use strict"; t.Interpolation = {}, t.Interpolation.none = function (e) { return e = t.extend({}, { fillHoles: !1 }, e), function (i, n) { for (var s = new t.Svg.Path, r = !0, a = 0; a < i.length; a += 2) { var o = i[a], l = i[a + 1], h = n[a / 2]; void 0 !== t.getMultiValue(h.value) ? (r ? s.move(o, l, !1, h) : s.line(o, l, !1, h), r = !1) : e.fillHoles || (r = !0) } return s } }, t.Interpolation.simple = function (e) { e = t.extend({}, { divisor: 2, fillHoles: !1 }, e); var i = 1 / Math.max(1, e.divisor); return function (n, s) { for (var r, a, o, l = new t.Svg.Path, h = 0; h < n.length; h += 2) { var u = n[h], c = n[h + 1], d = (u - r) * i, p = s[h / 2]; void 0 !== p.value ? (void 0 === o ? l.move(u, c, !1, p) : l.curve(r + d, a, u - d, c, u, c, !1, p), r = u, a = c, o = p) : e.fillHoles || (r = u = o = void 0) } return l } }, t.Interpolation.cardinal = function (e) { e = t.extend({}, { tension: 1, fillHoles: !1 }, e); var i = Math.min(1, Math.max(0, e.tension)), n = 1 - i; return function s(r, a) { var o = t.splitIntoSegments(r, a, { fillHoles: e.fillHoles }); if (o.length) { if (o.length > 1) { var l = []; return o.forEach((function (e) { l.push(s(e.pathCoordinates, e.valueData)) })), t.Svg.Path.join(l) } if (r = o[0].pathCoordinates, a = o[0].valueData, r.length <= 4) return t.Interpolation.none()(r, a); for (var h = (new t.Svg.Path).move(r[0], r[1], !1, a[0]), u = 0, c = r.length; c - 2 > u; u += 2) { var d = [{ x: +r[u - 2], y: +r[u - 1] }, { x: +r[u], y: +r[u + 1] }, { x: +r[u + 2], y: +r[u + 3] }, { x: +r[u + 4], y: +r[u + 5] }]; c - 4 === u ? d[3] = d[2] : u || (d[0] = { x: +r[u], y: +r[u + 1] }), h.curve(i * (-d[0].x + 6 * d[1].x + d[2].x) / 6 + n * d[2].x, i * (-d[0].y + 6 * d[1].y + d[2].y) / 6 + n * d[2].y, i * (d[1].x + 6 * d[2].x - d[3].x) / 6 + n * d[2].x, i * (d[1].y + 6 * d[2].y - d[3].y) / 6 + n * d[2].y, d[2].x, d[2].y, !1, a[(u + 2) / 2]) } return h } return t.Interpolation.none()([]) } }, t.Interpolation.monotoneCubic = function (e) { return e = t.extend({}, { fillHoles: !1 }, e), function i(n, s) { var r = t.splitIntoSegments(n, s, { fillHoles: e.fillHoles, increasingX: !0 }); if (r.length) { if (r.length > 1) { var a = []; return r.forEach((function (e) { a.push(i(e.pathCoordinates, e.valueData)) })), t.Svg.Path.join(a) } if (n = r[0].pathCoordinates, s = r[0].valueData, n.length <= 4) return t.Interpolation.none()(n, s); var o, l, h = [], u = [], c = n.length / 2, d = [], p = [], f = [], m = []; for (o = 0; o < c; o++)h[o] = n[2 * o], u[o] = n[2 * o + 1]; for (o = 0; o < c - 1; o++)f[o] = u[o + 1] - u[o], m[o] = h[o + 1] - h[o], p[o] = f[o] / m[o]; for (d[0] = p[0], d[c - 1] = p[c - 2], o = 1; o < c - 1; o++)0 === p[o] || 0 === p[o - 1] || p[o - 1] > 0 != p[o] > 0 ? d[o] = 0 : (d[o] = 3 * (m[o - 1] + m[o]) / ((2 * m[o] + m[o - 1]) / p[o - 1] + (m[o] + 2 * m[o - 1]) / p[o]), isFinite(d[o]) || (d[o] = 0)); for (l = (new t.Svg.Path).move(h[0], u[0], !1, s[0]), o = 0; o < c - 1; o++)l.curve(h[o] + m[o] / 3, u[o] + d[o] * m[o] / 3, h[o + 1] - m[o] / 3, u[o + 1] - d[o + 1] * m[o] / 3, h[o + 1], u[o + 1], !1, s[o + 1]); return l } return t.Interpolation.none()([]) } }, t.Interpolation.step = function (e) { return e = t.extend({}, { postpone: !0, fillHoles: !1 }, e), function (i, n) { for (var s, r, a, o = new t.Svg.Path, l = 0; l < i.length; l += 2) { var h = i[l], u = i[l + 1], c = n[l / 2]; void 0 !== c.value ? (void 0 === a ? o.move(h, u, !1, c) : (e.postpone ? o.line(h, r, !1, a) : o.line(s, u, !1, c), o.line(h, u, !1, c)), s = h, r = u, a = c) : e.fillHoles || (s = r = a = void 0) } return o } } }(this || global, e), function (e, t) { "use strict"; t.EventEmitter = function () { var e = []; return { addEventHandler: function (t, i) { e[t] = e[t] || [], e[t].push(i) }, removeEventHandler: function (t, i) { e[t] && (i ? (e[t].splice(e[t].indexOf(i), 1), 0 === e[t].length && delete e[t]) : delete e[t]) }, emit: function (t, i) { e[t] && e[t].forEach((function (e) { e(i) })), e["*"] && e["*"].forEach((function (e) { e(t, i) })) } } } }(this || global, e), function (e, t) { "use strict"; t.Class = { extend: function (e, i) { var n = i || this.prototype || t.Class, s = Object.create(n); t.Class.cloneDefinitions(s, e); var r = function () { var e, i = s.constructor || function () { }; return e = this === t ? Object.create(s) : this, i.apply(e, Array.prototype.slice.call(arguments, 0)), e }; return r.prototype = s, r.super = n, r.extend = this.extend, r }, cloneDefinitions: function () { var e = function (e) { var t = []; if (e.length) for (var i = 0; i < e.length; i++)t.push(e[i]); return t }(arguments), t = e[0]; return e.splice(1, e.length - 1).forEach((function (e) { Object.getOwnPropertyNames(e).forEach((function (i) { delete t[i], Object.defineProperty(t, i, Object.getOwnPropertyDescriptor(e, i)) })) })), t } } }(this || global, e), function (e, t) { "use strict"; var i = e.window; function n() { i.addEventListener("resize", this.resizeListener), this.optionsProvider = t.optionsProvider(this.options, this.responsiveOptions, this.eventEmitter), this.eventEmitter.addEventHandler("optionsChanged", function () { this.update() }.bind(this)), this.options.plugins && this.options.plugins.forEach(function (e) { e instanceof Array ? e[0](this, e[1]) : e(this) }.bind(this)), this.eventEmitter.emit("data", { type: "initial", data: this.data }), this.createChart(this.optionsProvider.getCurrentOptions()), this.initializeTimeoutId = void 0 } t.Base = t.Class.extend({ constructor: function (e, i, s, r, a) { this.container = t.querySelector(e), this.data = i || {}, this.data.labels = this.data.labels || [], this.data.series = this.data.series || [], this.defaultOptions = s, this.options = r, this.responsiveOptions = a, this.eventEmitter = t.EventEmitter(), this.supportsForeignObject = t.Svg.isSupported("Extensibility"), this.supportsAnimations = t.Svg.isSupported("AnimationEventsAttribute"), this.resizeListener = function () { this.update() }.bind(this), this.container && (this.container.__chartist__ && this.container.__chartist__.detach(), this.container.__chartist__ = this), this.initializeTimeoutId = setTimeout(n.bind(this), 0) }, optionsProvider: void 0, container: void 0, svg: void 0, eventEmitter: void 0, createChart: function () { throw new Error("Base chart type can't be instantiated!") }, update: function (e, i, n) { return e && (this.data = e || {}, this.data.labels = this.data.labels || [], this.data.series = this.data.series || [], this.eventEmitter.emit("data", { type: "update", data: this.data })), i && (this.options = t.extend({}, n ? this.options : this.defaultOptions, i), this.initializeTimeoutId || (this.optionsProvider.removeMediaQueryListeners(), this.optionsProvider = t.optionsProvider(this.options, this.responsiveOptions, this.eventEmitter))), this.initializeTimeoutId || this.createChart(this.optionsProvider.getCurrentOptions()), this }, detach: function () { return this.initializeTimeoutId ? i.clearTimeout(this.initializeTimeoutId) : (i.removeEventListener("resize", this.resizeListener), this.optionsProvider.removeMediaQueryListeners()), this }, on: function (e, t) { return this.eventEmitter.addEventHandler(e, t), this }, off: function (e, t) { return this.eventEmitter.removeEventHandler(e, t), this }, version: t.version, supportsForeignObject: !1 }) }(this || global, e), function (e, t) { "use strict"; var i = e.document; t.Svg = t.Class.extend({ constructor: function (e, n, s, r, a) { e instanceof Element ? this._node = e : (this._node = i.createElementNS(t.namespaces.svg, e), "svg" === e && this.attr({ "xmlns:ct": t.namespaces.ct })), n && this.attr(n), s && this.addClass(s), r && (a && r._node.firstChild ? r._node.insertBefore(this._node, r._node.firstChild) : r._node.appendChild(this._node)) }, attr: function (e, i) { return "string" == typeof e ? i ? this._node.getAttributeNS(i, e) : this._node.getAttribute(e) : (Object.keys(e).forEach(function (i) { if (void 0 !== e[i]) if (-1 !== i.indexOf(":")) { var n = i.split(":"); this._node.setAttributeNS(t.namespaces[n[0]], i, e[i]) } else this._node.setAttribute(i, e[i]) }.bind(this)), this) }, elem: function (e, i, n, s) { return new t.Svg(e, i, n, this, s) }, parent: function () { return this._node.parentNode instanceof SVGElement ? new t.Svg(this._node.parentNode) : null }, root: function () { for (var e = this._node; "svg" !== e.nodeName;)e = e.parentNode; return new t.Svg(e) }, querySelector: function (e) { var i = this._node.querySelector(e); return i ? new t.Svg(i) : null }, querySelectorAll: function (e) { var i = this._node.querySelectorAll(e); return i.length ? new t.Svg.List(i) : null }, getNode: function () { return this._node }, foreignObject: function (e, n, s, r) { if ("string" == typeof e) { var a = i.createElement("div"); a.innerHTML = e, e = a.firstChild } e.setAttribute("xmlns", t.namespaces.xmlns); var o = this.elem("foreignObject", n, s, r); return o._node.appendChild(e), o }, text: function (e) { return this._node.appendChild(i.createTextNode(e)), this }, empty: function () { for (; this._node.firstChild;)this._node.removeChild(this._node.firstChild); return this }, remove: function () { return this._node.parentNode.removeChild(this._node), this.parent() }, replace: function (e) { return this._node.parentNode.replaceChild(e._node, this._node), e }, append: function (e, t) { return t && this._node.firstChild ? this._node.insertBefore(e._node, this._node.firstChild) : this._node.appendChild(e._node), this }, classes: function () { return this._node.getAttribute("class") ? this._node.getAttribute("class").trim().split(/\s+/) : [] }, addClass: function (e) { return this._node.setAttribute("class", this.classes(this._node).concat(e.trim().split(/\s+/)).filter((function (e, t, i) { return i.indexOf(e) === t })).join(" ")), this }, removeClass: function (e) { var t = e.trim().split(/\s+/); return this._node.setAttribute("class", this.classes(this._node).filter((function (e) { return -1 === t.indexOf(e) })).join(" ")), this }, removeAllClasses: function () { return this._node.setAttribute("class", ""), this }, height: function () { return this._node.getBoundingClientRect().height }, width: function () { return this._node.getBoundingClientRect().width }, animate: function (e, i, n) { return void 0 === i && (i = !0), Object.keys(e).forEach(function (s) { function r(e, i) { var r, a, o, l = {}; e.easing && (o = e.easing instanceof Array ? e.easing : t.Svg.Easing[e.easing], delete e.easing), e.begin = t.ensureUnit(e.begin, "ms"), e.dur = t.ensureUnit(e.dur, "ms"), o && (e.calcMode = "spline", e.keySplines = o.join(" "), e.keyTimes = "0;1"), i && (e.fill = "freeze", l[s] = e.from, this.attr(l), a = t.quantity(e.begin || 0).value, e.begin = "indefinite"), r = this.elem("animate", t.extend({ attributeName: s }, e)), i && setTimeout(function () { try { r._node.beginElement() } catch (t) { l[s] = e.to, this.attr(l), r.remove() } }.bind(this), a), n && r._node.addEventListener("beginEvent", function () { n.emit("animationBegin", { element: this, animate: r._node, params: e }) }.bind(this)), r._node.addEventListener("endEvent", function () { n && n.emit("animationEnd", { element: this, animate: r._node, params: e }), i && (l[s] = e.to, this.attr(l), r.remove()) }.bind(this)) } e[s] instanceof Array ? e[s].forEach(function (e) { r.bind(this)(e, !1) }.bind(this)) : r.bind(this)(e[s], i) }.bind(this)), this } }), t.Svg.isSupported = function (e) { return i.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#" + e, "1.1") }; t.Svg.Easing = { easeInSine: [.47, 0, .745, .715], easeOutSine: [.39, .575, .565, 1], easeInOutSine: [.445, .05, .55, .95], easeInQuad: [.55, .085, .68, .53], easeOutQuad: [.25, .46, .45, .94], easeInOutQuad: [.455, .03, .515, .955], easeInCubic: [.55, .055, .675, .19], easeOutCubic: [.215, .61, .355, 1], easeInOutCubic: [.645, .045, .355, 1], easeInQuart: [.895, .03, .685, .22], easeOutQuart: [.165, .84, .44, 1], easeInOutQuart: [.77, 0, .175, 1], easeInQuint: [.755, .05, .855, .06], easeOutQuint: [.23, 1, .32, 1], easeInOutQuint: [.86, 0, .07, 1], easeInExpo: [.95, .05, .795, .035], easeOutExpo: [.19, 1, .22, 1], easeInOutExpo: [1, 0, 0, 1], easeInCirc: [.6, .04, .98, .335], easeOutCirc: [.075, .82, .165, 1], easeInOutCirc: [.785, .135, .15, .86], easeInBack: [.6, -.28, .735, .045], easeOutBack: [.175, .885, .32, 1.275], easeInOutBack: [.68, -.55, .265, 1.55] }, t.Svg.List = t.Class.extend({ constructor: function (e) { var i = this; this.svgElements = []; for (var n = 0; n < e.length; n++)this.svgElements.push(new t.Svg(e[n])); Object.keys(t.Svg.prototype).filter((function (e) { return -1 === ["constructor", "parent", "querySelector", "querySelectorAll", "replace", "append", "classes", "height", "width"].indexOf(e) })).forEach((function (e) { i[e] = function () { var n = Array.prototype.slice.call(arguments, 0); return i.svgElements.forEach((function (i) { t.Svg.prototype[e].apply(i, n) })), i } })) } }) }(this || global, e), function (e, t) { "use strict"; var i = { m: ["x", "y"], l: ["x", "y"], c: ["x1", "y1", "x2", "y2", "x", "y"], a: ["rx", "ry", "xAr", "lAf", "sf", "x", "y"] }, n = { accuracy: 3 }; function s(e, i, n, s, r, a) { var o = t.extend({ command: r ? e.toLowerCase() : e.toUpperCase() }, i, a ? { data: a } : {}); n.splice(s, 0, o) } function r(e, t) { e.forEach((function (n, s) { i[n.command.toLowerCase()].forEach((function (i, r) { t(n, i, s, r, e) })) })) } t.Svg.Path = t.Class.extend({ constructor: function (e, i) { this.pathElements = [], this.pos = 0, this.close = e, this.options = t.extend({}, n, i) }, position: function (e) { return void 0 !== e ? (this.pos = Math.max(0, Math.min(this.pathElements.length, e)), this) : this.pos }, remove: function (e) { return this.pathElements.splice(this.pos, e), this }, move: function (e, t, i, n) { return s("M", { x: +e, y: +t }, this.pathElements, this.pos++, i, n), this }, line: function (e, t, i, n) { return s("L", { x: +e, y: +t }, this.pathElements, this.pos++, i, n), this }, curve: function (e, t, i, n, r, a, o, l) { return s("C", { x1: +e, y1: +t, x2: +i, y2: +n, x: +r, y: +a }, this.pathElements, this.pos++, o, l), this }, arc: function (e, t, i, n, r, a, o, l, h) { return s("A", { rx: +e, ry: +t, xAr: +i, lAf: +n, sf: +r, x: +a, y: +o }, this.pathElements, this.pos++, l, h), this }, scale: function (e, t) { return r(this.pathElements, (function (i, n) { i[n] *= "x" === n[0] ? e : t })), this }, translate: function (e, t) { return r(this.pathElements, (function (i, n) { i[n] += "x" === n[0] ? e : t })), this }, transform: function (e) { return r(this.pathElements, (function (t, i, n, s, r) { var a = e(t, i, n, s, r); (a || 0 === a) && (t[i] = a) })), this }, parse: function (e) { var n = e.replace(/([A-Za-z])([0-9])/g, "$1 $2").replace(/([0-9])([A-Za-z])/g, "$1 $2").split(/[\s,]+/).reduce((function (e, t) { return t.match(/[A-Za-z]/) && e.push([]), e[e.length - 1].push(t), e }), []); "Z" === n[n.length - 1][0].toUpperCase() && n.pop(); var s = n.map((function (e) { var n = e.shift(), s = i[n.toLowerCase()]; return t.extend({ command: n }, s.reduce((function (t, i, n) { return t[i] = +e[n], t }), {})) })), r = [this.pos, 0]; return Array.prototype.push.apply(r, s), Array.prototype.splice.apply(this.pathElements, r), this.pos += s.length, this }, stringify: function () { var e = Math.pow(10, this.options.accuracy); return this.pathElements.reduce(function (t, n) { var s = i[n.command.toLowerCase()].map(function (t) { return this.options.accuracy ? Math.round(n[t] * e) / e : n[t] }.bind(this)); return t + n.command + s.join(",") }.bind(this), "") + (this.close ? "Z" : "") }, clone: function (e) { var i = new t.Svg.Path(e || this.close); return i.pos = this.pos, i.pathElements = this.pathElements.slice().map((function (e) { return t.extend({}, e) })), i.options = t.extend({}, this.options), i }, splitByCommand: function (e) { var i = [new t.Svg.Path]; return this.pathElements.forEach((function (n) { n.command === e.toUpperCase() && 0 !== i[i.length - 1].pathElements.length && i.push(new t.Svg.Path), i[i.length - 1].pathElements.push(n) })), i } }), t.Svg.Path.elementDescriptions = i, t.Svg.Path.join = function (e, i, n) { for (var s = new t.Svg.Path(i, n), r = 0; r < e.length; r++)for (var a = e[r], o = 0; o < a.pathElements.length; o++)s.pathElements.push(a.pathElements[o]); return s } }(this || global, e), function (e, t) { "use strict"; e.window, e.document; var i = { x: { pos: "x", len: "width", dir: "horizontal", rectStart: "x1", rectEnd: "x2", rectOffset: "y2" }, y: { pos: "y", len: "height", dir: "vertical", rectStart: "y2", rectEnd: "y1", rectOffset: "x1" } }; t.Axis = t.Class.extend({ constructor: function (e, t, n, s) { this.units = e, this.counterUnits = e === i.x ? i.y : i.x, this.chartRect = t, this.axisLength = t[e.rectEnd] - t[e.rectStart], this.gridOffset = t[e.rectOffset], this.ticks = n, this.options = s }, createGridAndLabels: function (e, i, n, s, r) { var a = s["axis" + this.units.pos.toUpperCase()], o = this.ticks.map(this.projectValue.bind(this)), l = this.ticks.map(a.labelInterpolationFnc); o.forEach(function (h, u) { var c, d = { x: 0, y: 0 }; c = o[u + 1] ? o[u + 1] - h : Math.max(this.axisLength - h, 30), t.isFalseyButZero(l[u]) && "" !== l[u] || ("x" === this.units.pos ? (h = this.chartRect.x1 + h, d.x = s.axisX.labelOffset.x, "start" === s.axisX.position ? d.y = this.chartRect.padding.top + s.axisX.labelOffset.y + (n ? 5 : 20) : d.y = this.chartRect.y1 + s.axisX.labelOffset.y + (n ? 5 : 20)) : (h = this.chartRect.y1 - h, d.y = s.axisY.labelOffset.y - (n ? c : 0), "start" === s.axisY.position ? d.x = n ? this.chartRect.padding.left + s.axisY.labelOffset.x : this.chartRect.x1 - 10 : d.x = this.chartRect.x2 + s.axisY.labelOffset.x + 10), a.showGrid && t.createGrid(h, u, this, this.gridOffset, this.chartRect[this.counterUnits.len](), e, [s.classNames.grid, s.classNames[this.units.dir]], r), a.showLabel && t.createLabel(h, c, u, l, this, a.offset, d, i, [s.classNames.label, s.classNames[this.units.dir], "start" === a.position ? s.classNames[a.position] : s.classNames.end], n, r)) }.bind(this)) }, projectValue: function (e, t, i) { throw new Error("Base axis can't be instantiated!") } }), t.Axis.units = i }(this || global, e), function (e, t) { "use strict"; e.window, e.document; t.AutoScaleAxis = t.Axis.extend({ constructor: function (e, i, n, s) { var r = s.highLow || t.getHighLow(i, s, e.pos); this.bounds = t.getBounds(n[e.rectEnd] - n[e.rectStart], r, s.scaleMinSpace || 20, s.onlyInteger), this.range = { min: this.bounds.min, max: this.bounds.max }, t.AutoScaleAxis.super.constructor.call(this, e, n, this.bounds.values, s) }, projectValue: function (e) { return this.axisLength * (+t.getMultiValue(e, this.units.pos) - this.bounds.min) / this.bounds.range } }) }(this || global, e), function (e, t) { "use strict"; e.window, e.document; t.FixedScaleAxis = t.Axis.extend({ constructor: function (e, i, n, s) { var r = s.highLow || t.getHighLow(i, s, e.pos); this.divisor = s.divisor || 1, this.ticks = s.ticks || t.times(this.divisor).map(function (e, t) { return r.low + (r.high - r.low) / this.divisor * t }.bind(this)), this.ticks.sort((function (e, t) { return e - t })), this.range = { min: r.low, max: r.high }, t.FixedScaleAxis.super.constructor.call(this, e, n, this.ticks, s), this.stepLength = this.axisLength / this.divisor }, projectValue: function (e) { return this.axisLength * (+t.getMultiValue(e, this.units.pos) - this.range.min) / (this.range.max - this.range.min) } }) }(this || global, e), function (e, t) { "use strict"; e.window, e.document; t.StepAxis = t.Axis.extend({ constructor: function (e, i, n, s) { t.StepAxis.super.constructor.call(this, e, n, s.ticks, s); var r = Math.max(1, s.ticks.length - (s.stretch ? 1 : 0)); this.stepLength = this.axisLength / r }, projectValue: function (e, t) { return this.stepLength * t } }) }(this || global, e), function (e, t) { "use strict"; e.window, e.document; var i = { axisX: { offset: 30, position: "end", labelOffset: { x: 0, y: 0 }, showLabel: !0, showGrid: !0, labelInterpolationFnc: t.noop, type: void 0 }, axisY: { offset: 40, position: "start", labelOffset: { x: 0, y: 0 }, showLabel: !0, showGrid: !0, labelInterpolationFnc: t.noop, type: void 0, scaleMinSpace: 20, onlyInteger: !1 }, width: void 0, height: void 0, showLine: !0, showPoint: !0, showArea: !1, areaBase: 0, lineSmooth: !0, showGridBackground: !1, low: void 0, high: void 0, chartPadding: { top: 15, right: 15, bottom: 5, left: 10 }, fullWidth: !1, reverseData: !1, classNames: { chart: "ct-chart-line", label: "ct-label", labelGroup: "ct-labels", series: "ct-series", line: "ct-line", point: "ct-point", area: "ct-area", grid: "ct-grid", gridGroup: "ct-grids", gridBackground: "ct-grid-background", vertical: "ct-vertical", horizontal: "ct-horizontal", start: "ct-start", end: "ct-end" } }; t.Line = t.Base.extend({ constructor: function (e, n, s, r) { t.Line.super.constructor.call(this, e, n, i, t.extend({}, i, s), r) }, createChart: function (e) { var n = t.normalizeData(this.data, e.reverseData, !0); this.svg = t.createSvg(this.container, e.width, e.height, e.classNames.chart); var s, r, a = this.svg.elem("g").addClass(e.classNames.gridGroup), o = this.svg.elem("g"), l = this.svg.elem("g").addClass(e.classNames.labelGroup), h = t.createChartRect(this.svg, e, i.padding); s = void 0 === e.axisX.type ? new t.StepAxis(t.Axis.units.x, n.normalized.series, h, t.extend({}, e.axisX, { ticks: n.normalized.labels, stretch: e.fullWidth })) : e.axisX.type.call(t, t.Axis.units.x, n.normalized.series, h, e.axisX), r = void 0 === e.axisY.type ? new t.AutoScaleAxis(t.Axis.units.y, n.normalized.series, h, t.extend({}, e.axisY, { high: t.isNumeric(e.high) ? e.high : e.axisY.high, low: t.isNumeric(e.low) ? e.low : e.axisY.low })) : e.axisY.type.call(t, t.Axis.units.y, n.normalized.series, h, e.axisY), s.createGridAndLabels(a, l, this.supportsForeignObject, e, this.eventEmitter), r.createGridAndLabels(a, l, this.supportsForeignObject, e, this.eventEmitter), e.showGridBackground && t.createGridBackground(a, h, e.classNames.gridBackground, this.eventEmitter), n.raw.series.forEach(function (i, a) { var l = o.elem("g"); l.attr({ "ct:series-name": i.name, "ct:meta": t.serialize(i.meta) }), l.addClass([e.classNames.series, i.className || e.classNames.series + "-" + t.alphaNumerate(a)].join(" ")); var u = [], c = []; n.normalized.series[a].forEach(function (e, o) { var l = { x: h.x1 + s.projectValue(e, o, n.normalized.series[a]), y: h.y1 - r.projectValue(e, o, n.normalized.series[a]) }; u.push(l.x, l.y), c.push({ value: e, valueIndex: o, meta: t.getMetaData(i, o) }) }.bind(this)); var d = { lineSmooth: t.getSeriesOption(i, e, "lineSmooth"), showPoint: t.getSeriesOption(i, e, "showPoint"), showLine: t.getSeriesOption(i, e, "showLine"), showArea: t.getSeriesOption(i, e, "showArea"), areaBase: t.getSeriesOption(i, e, "areaBase") }, p = ("function" == typeof d.lineSmooth ? d.lineSmooth : d.lineSmooth ? t.Interpolation.monotoneCubic() : t.Interpolation.none())(u, c); if (d.showPoint && p.pathElements.forEach(function (n) { var o = l.elem("line", { x1: n.x, y1: n.y, x2: n.x + .01, y2: n.y }, e.classNames.point).attr({ "ct:value": [n.data.value.x, n.data.value.y].filter(t.isNumeric).join(","), "ct:meta": t.serialize(n.data.meta) }); this.eventEmitter.emit("draw", { type: "point", value: n.data.value, index: n.data.valueIndex, meta: n.data.meta, series: i, seriesIndex: a, axisX: s, axisY: r, group: l, element: o, x: n.x, y: n.y }) }.bind(this)), d.showLine) { var f = l.elem("path", { d: p.stringify() }, e.classNames.line, !0); this.eventEmitter.emit("draw", { type: "line", values: n.normalized.series[a], path: p.clone(), chartRect: h, index: a, series: i, seriesIndex: a, seriesMeta: i.meta, axisX: s, axisY: r, group: l, element: f }) } if (d.showArea && r.range) { var m = Math.max(Math.min(d.areaBase, r.range.max), r.range.min), g = h.y1 - r.projectValue(m); p.splitByCommand("M").filter((function (e) { return e.pathElements.length > 1 })).map((function (e) { var t = e.pathElements[0], i = e.pathElements[e.pathElements.length - 1]; return e.clone(!0).position(0).remove(1).move(t.x, g).line(t.x, t.y).position(e.pathElements.length + 1).line(i.x, g) })).forEach(function (t) { var o = l.elem("path", { d: t.stringify() }, e.classNames.area, !0); this.eventEmitter.emit("draw", { type: "area", values: n.normalized.series[a], path: t.clone(), series: i, seriesIndex: a, axisX: s, axisY: r, chartRect: h, index: a, group: l, element: o }) }.bind(this)) } }.bind(this)), this.eventEmitter.emit("created", { bounds: r.bounds, chartRect: h, axisX: s, axisY: r, svg: this.svg, options: e }) } }) }(this || global, e), function (e, t) { "use strict"; e.window, e.document; var i = { axisX: { offset: 30, position: "end", labelOffset: { x: 0, y: 0 }, showLabel: !0, showGrid: !0, labelInterpolationFnc: t.noop, scaleMinSpace: 30, onlyInteger: !1 }, axisY: { offset: 40, position: "start", labelOffset: { x: 0, y: 0 }, showLabel: !0, showGrid: !0, labelInterpolationFnc: t.noop, scaleMinSpace: 20, onlyInteger: !1 }, width: void 0, height: void 0, high: void 0, low: void 0, referenceValue: 0, chartPadding: { top: 15, right: 15, bottom: 5, left: 10 }, seriesBarDistance: 15, stackBars: !1, stackMode: "accumulate", horizontalBars: !1, distributeSeries: !1, reverseData: !1, showGridBackground: !1, classNames: { chart: "ct-chart-bar", horizontalBars: "ct-horizontal-bars", label: "ct-label", labelGroup: "ct-labels", series: "ct-series", bar: "ct-bar", grid: "ct-grid", gridGroup: "ct-grids", gridBackground: "ct-grid-background", vertical: "ct-vertical", horizontal: "ct-horizontal", start: "ct-start", end: "ct-end" } }; t.Bar = t.Base.extend({ constructor: function (e, n, s, r) { t.Bar.super.constructor.call(this, e, n, i, t.extend({}, i, s), r) }, createChart: function (e) { var n, s; e.distributeSeries ? (n = t.normalizeData(this.data, e.reverseData, e.horizontalBars ? "x" : "y")).normalized.series = n.normalized.series.map((function (e) { return [e] })) : n = t.normalizeData(this.data, e.reverseData, e.horizontalBars ? "x" : "y"), this.svg = t.createSvg(this.container, e.width, e.height, e.classNames.chart + (e.horizontalBars ? " " + e.classNames.horizontalBars : "")); var r = this.svg.elem("g").addClass(e.classNames.gridGroup), a = this.svg.elem("g"), o = this.svg.elem("g").addClass(e.classNames.labelGroup); if (e.stackBars && 0 !== n.normalized.series.length) { var l = t.serialMap(n.normalized.series, (function () { return Array.prototype.slice.call(arguments).map((function (e) { return e })).reduce((function (e, t) { return { x: e.x + (t && t.x) || 0, y: e.y + (t && t.y) || 0 } }), { x: 0, y: 0 }) })); s = t.getHighLow([l], e, e.horizontalBars ? "x" : "y") } else s = t.getHighLow(n.normalized.series, e, e.horizontalBars ? "x" : "y"); s.high = +e.high || (0 === e.high ? 0 : s.high), s.low = +e.low || (0 === e.low ? 0 : s.low); var h, u, c, d, p, f = t.createChartRect(this.svg, e, i.padding); u = e.distributeSeries && e.stackBars ? n.normalized.labels.slice(0, 1) : n.normalized.labels, e.horizontalBars ? (h = d = void 0 === e.axisX.type ? new t.AutoScaleAxis(t.Axis.units.x, n.normalized.series, f, t.extend({}, e.axisX, { highLow: s, referenceValue: 0 })) : e.axisX.type.call(t, t.Axis.units.x, n.normalized.series, f, t.extend({}, e.axisX, { highLow: s, referenceValue: 0 })), c = p = void 0 === e.axisY.type ? new t.StepAxis(t.Axis.units.y, n.normalized.series, f, { ticks: u }) : e.axisY.type.call(t, t.Axis.units.y, n.normalized.series, f, e.axisY)) : (c = d = void 0 === e.axisX.type ? new t.StepAxis(t.Axis.units.x, n.normalized.series, f, { ticks: u }) : e.axisX.type.call(t, t.Axis.units.x, n.normalized.series, f, e.axisX), h = p = void 0 === e.axisY.type ? new t.AutoScaleAxis(t.Axis.units.y, n.normalized.series, f, t.extend({}, e.axisY, { highLow: s, referenceValue: 0 })) : e.axisY.type.call(t, t.Axis.units.y, n.normalized.series, f, t.extend({}, e.axisY, { highLow: s, referenceValue: 0 }))); var m = e.horizontalBars ? f.x1 + h.projectValue(0) : f.y1 - h.projectValue(0), g = []; c.createGridAndLabels(r, o, this.supportsForeignObject, e, this.eventEmitter), h.createGridAndLabels(r, o, this.supportsForeignObject, e, this.eventEmitter), e.showGridBackground && t.createGridBackground(r, f, e.classNames.gridBackground, this.eventEmitter), n.raw.series.forEach(function (i, s) { var r, o, l = s - (n.raw.series.length - 1) / 2; r = e.distributeSeries && !e.stackBars ? c.axisLength / n.normalized.series.length / 2 : e.distributeSeries && e.stackBars ? c.axisLength / 2 : c.axisLength / n.normalized.series[s].length / 2, (o = a.elem("g")).attr({ "ct:series-name": i.name, "ct:meta": t.serialize(i.meta) }), o.addClass([e.classNames.series, i.className || e.classNames.series + "-" + t.alphaNumerate(s)].join(" ")), n.normalized.series[s].forEach(function (a, u) { var v, x, y, b; if (b = e.distributeSeries && !e.stackBars ? s : e.distributeSeries && e.stackBars ? 0 : u, v = e.horizontalBars ? { x: f.x1 + h.projectValue(a && a.x ? a.x : 0, u, n.normalized.series[s]), y: f.y1 - c.projectValue(a && a.y ? a.y : 0, b, n.normalized.series[s]) } : { x: f.x1 + c.projectValue(a && a.x ? a.x : 0, b, n.normalized.series[s]), y: f.y1 - h.projectValue(a && a.y ? a.y : 0, u, n.normalized.series[s]) }, c instanceof t.StepAxis && (c.options.stretch || (v[c.units.pos] += r * (e.horizontalBars ? -1 : 1)), v[c.units.pos] += e.stackBars || e.distributeSeries ? 0 : l * e.seriesBarDistance * (e.horizontalBars ? -1 : 1)), y = g[u] || m, g[u] = y - (m - v[c.counterUnits.pos]), void 0 !== a) { var w = {}; w[c.units.pos + "1"] = v[c.units.pos], w[c.units.pos + "2"] = v[c.units.pos], !e.stackBars || "accumulate" !== e.stackMode && e.stackMode ? (w[c.counterUnits.pos + "1"] = m, w[c.counterUnits.pos + "2"] = v[c.counterUnits.pos]) : (w[c.counterUnits.pos + "1"] = y, w[c.counterUnits.pos + "2"] = g[u]), w.x1 = Math.min(Math.max(w.x1, f.x1), f.x2), w.x2 = Math.min(Math.max(w.x2, f.x1), f.x2), w.y1 = Math.min(Math.max(w.y1, f.y2), f.y1), w.y2 = Math.min(Math.max(w.y2, f.y2), f.y1); var E = t.getMetaData(i, u); x = o.elem("line", w, e.classNames.bar).attr({ "ct:value": [a.x, a.y].filter(t.isNumeric).join(","), "ct:meta": t.serialize(E) }), this.eventEmitter.emit("draw", t.extend({ type: "bar", value: a, index: u, meta: E, series: i, seriesIndex: s, axisX: d, axisY: p, chartRect: f, group: o, element: x }, w)) } }.bind(this)) }.bind(this)), this.eventEmitter.emit("created", { bounds: h.bounds, chartRect: f, axisX: d, axisY: p, svg: this.svg, options: e }) } }) }(this || global, e), function (e, t) { "use strict"; e.window, e.document; var i = { width: void 0, height: void 0, chartPadding: 5, classNames: { chartPie: "ct-chart-pie", chartDonut: "ct-chart-donut", series: "ct-series", slicePie: "ct-slice-pie", sliceDonut: "ct-slice-donut", sliceDonutSolid: "ct-slice-donut-solid", label: "ct-label" }, startAngle: 0, total: void 0, donut: !1, donutSolid: !1, donutWidth: 60, showLabel: !0, labelOffset: 0, labelPosition: "inside", labelInterpolationFnc: t.noop, labelDirection: "neutral", reverseData: !1, ignoreEmptyValues: !1 }; function n(e, t, i) { var n = t.x > e.x; return n && "explode" === i || !n && "implode" === i ? "start" : n && "implode" === i || !n && "explode" === i ? "end" : "middle" } t.Pie = t.Base.extend({ constructor: function (e, n, s, r) { t.Pie.super.constructor.call(this, e, n, i, t.extend({}, i, s), r) }, createChart: function (e) { var s, r, a, o, l, h = t.normalizeData(this.data), u = [], c = e.startAngle; this.svg = t.createSvg(this.container, e.width, e.height, e.donut ? e.classNames.chartDonut : e.classNames.chartPie), r = t.createChartRect(this.svg, e, i.padding), a = Math.min(r.width() / 2, r.height() / 2), l = e.total || h.normalized.series.reduce((function (e, t) { return e + t }), 0); var d = t.quantity(e.donutWidth); "%" === d.unit && (d.value *= a / 100), a -= e.donut && !e.donutSolid ? d.value / 2 : 0, o = "outside" === e.labelPosition || e.donut && !e.donutSolid ? a : "center" === e.labelPosition ? 0 : e.donutSolid ? a - d.value / 2 : a / 2, o += e.labelOffset; var p = { x: r.x1 + r.width() / 2, y: r.y2 + r.height() / 2 }, f = 1 === h.raw.series.filter((function (e) { return e.hasOwnProperty("value") ? 0 !== e.value : 0 !== e })).length; h.raw.series.forEach(function (e, t) { u[t] = this.svg.elem("g", null, null) }.bind(this)), e.showLabel && (s = this.svg.elem("g", null, null)), h.raw.series.forEach(function (i, r) { if (0 !== h.normalized.series[r] || !e.ignoreEmptyValues) { u[r].attr({ "ct:series-name": i.name }), u[r].addClass([e.classNames.series, i.className || e.classNames.series + "-" + t.alphaNumerate(r)].join(" ")); var m = l > 0 ? c + h.normalized.series[r] / l * 360 : 0, g = Math.max(0, c - (0 === r || f ? 0 : .2)); m - g >= 359.99 && (m = g + 359.99); var v, x, y, b = t.polarToCartesian(p.x, p.y, a, g), w = t.polarToCartesian(p.x, p.y, a, m), E = new t.Svg.Path(!e.donut || e.donutSolid).move(w.x, w.y).arc(a, a, 0, m - c > 180, 0, b.x, b.y); e.donut ? e.donutSolid && (y = a - d.value, v = t.polarToCartesian(p.x, p.y, y, c - (0 === r || f ? 0 : .2)), x = t.polarToCartesian(p.x, p.y, y, m), E.line(v.x, v.y), E.arc(y, y, 0, m - c > 180, 1, x.x, x.y)) : E.line(p.x, p.y); var S = e.classNames.slicePie; e.donut && (S = e.classNames.sliceDonut, e.donutSolid && (S = e.classNames.sliceDonutSolid)); var A = u[r].elem("path", { d: E.stringify() }, S); if (A.attr({ "ct:value": h.normalized.series[r], "ct:meta": t.serialize(i.meta) }), e.donut && !e.donutSolid && (A._node.style.strokeWidth = d.value + "px"), this.eventEmitter.emit("draw", { type: "slice", value: h.normalized.series[r], totalDataSum: l, index: r, meta: i.meta, series: i, group: u[r], element: A, path: E.clone(), center: p, radius: a, startAngle: c, endAngle: m }), e.showLabel) { var z, M; z = 1 === h.raw.series.length ? { x: p.x, y: p.y } : t.polarToCartesian(p.x, p.y, o, c + (m - c) / 2), M = h.normalized.labels && !t.isFalseyButZero(h.normalized.labels[r]) ? h.normalized.labels[r] : h.normalized.series[r]; var O = e.labelInterpolationFnc(M, r); if (O || 0 === O) { var C = s.elem("text", { dx: z.x, dy: z.y, "text-anchor": n(p, z, e.labelDirection) }, e.classNames.label).text("" + O); this.eventEmitter.emit("draw", { type: "label", index: r, group: s, element: C, text: "" + O, x: z.x, y: z.y }) } } c = m } }.bind(this)), this.eventEmitter.emit("created", { chartRect: r, svg: this.svg, options: e }) }, determineAnchorPosition: n }) }(this || global, e), e }));
|
|
|
|
var i, l, selectedLine = null;
|
|
|
|
/* Navigate to hash without browser history entry */
|
|
var navigateToHash = function () {
|
|
if (window.history !== undefined && window.history.replaceState !== undefined) {
|
|
window.history.replaceState(undefined, undefined, this.getAttribute("href"));
|
|
}
|
|
};
|
|
|
|
var hashLinks = document.getElementsByClassName('navigatetohash');
|
|
for (i = 0, l = hashLinks.length; i < l; i++) {
|
|
hashLinks[i].addEventListener('click', navigateToHash);
|
|
}
|
|
|
|
/* Switch test method */
|
|
var switchTestMethod = function () {
|
|
var method = this.getAttribute("value");
|
|
console.log("Selected test method: " + method);
|
|
|
|
var lines, i, l, coverageData, lineAnalysis, cells;
|
|
|
|
lines = document.querySelectorAll('.lineAnalysis tr');
|
|
|
|
for (i = 1, l = lines.length; i < l; i++) {
|
|
coverageData = JSON.parse(lines[i].getAttribute('data-coverage').replace(/'/g, '"'));
|
|
lineAnalysis = coverageData[method];
|
|
cells = lines[i].querySelectorAll('td');
|
|
if (lineAnalysis === undefined) {
|
|
lineAnalysis = coverageData.AllTestMethods;
|
|
if (lineAnalysis.LVS !== 'gray') {
|
|
cells[0].setAttribute('class', 'red');
|
|
cells[1].innerText = cells[1].textContent = '0';
|
|
cells[4].setAttribute('class', 'lightred');
|
|
}
|
|
} else {
|
|
cells[0].setAttribute('class', lineAnalysis.LVS);
|
|
cells[1].innerText = cells[1].textContent = lineAnalysis.VC;
|
|
cells[4].setAttribute('class', 'light' + lineAnalysis.LVS);
|
|
}
|
|
}
|
|
};
|
|
|
|
var testMethods = document.getElementsByClassName('switchtestmethod');
|
|
for (i = 0, l = testMethods.length; i < l; i++) {
|
|
testMethods[i].addEventListener('change', switchTestMethod);
|
|
}
|
|
|
|
/* Highlight test method by line */
|
|
var toggleLine = function () {
|
|
if (selectedLine === this) {
|
|
selectedLine = null;
|
|
} else {
|
|
selectedLine = null;
|
|
unhighlightTestMethods();
|
|
highlightTestMethods.call(this);
|
|
selectedLine = this;
|
|
}
|
|
|
|
};
|
|
var highlightTestMethods = function () {
|
|
if (selectedLine !== null) {
|
|
return;
|
|
}
|
|
|
|
var lineAnalysis;
|
|
var coverageData = JSON.parse(this.getAttribute('data-coverage').replace(/'/g, '"'));
|
|
var testMethods = document.getElementsByClassName('testmethod');
|
|
|
|
for (i = 0, l = testMethods.length; i < l; i++) {
|
|
lineAnalysis = coverageData[testMethods[i].id];
|
|
if (lineAnalysis === undefined) {
|
|
testMethods[i].className = testMethods[i].className.replace(/\s*light.+/g, "");
|
|
} else {
|
|
testMethods[i].className += ' light' + lineAnalysis.LVS;
|
|
}
|
|
}
|
|
};
|
|
var unhighlightTestMethods = function () {
|
|
if (selectedLine !== null) {
|
|
return;
|
|
}
|
|
|
|
var testMethods = document.getElementsByClassName('testmethod');
|
|
for (i = 0, l = testMethods.length; i < l; i++) {
|
|
testMethods[i].className = testMethods[i].className.replace(/\s*light.+/g, "");
|
|
}
|
|
};
|
|
var coverableLines = document.getElementsByClassName('coverableline');
|
|
for (i = 0, l = coverableLines.length; i < l; i++) {
|
|
coverableLines[i].addEventListener('click', toggleLine);
|
|
coverableLines[i].addEventListener('mouseenter', highlightTestMethods);
|
|
coverableLines[i].addEventListener('mouseleave', unhighlightTestMethods);
|
|
}
|
|
|
|
/* History charts */
|
|
var renderChart = function (chart) {
|
|
// Remove current children (e.g. PNG placeholder)
|
|
while (chart.firstChild) {
|
|
chart.firstChild.remove();
|
|
}
|
|
|
|
var chartData = window[chart.getAttribute('data-data')];
|
|
var options = {
|
|
axisY: {
|
|
type: undefined,
|
|
onlyInteger: true
|
|
},
|
|
lineSmooth: false,
|
|
low: 0,
|
|
high: 100,
|
|
scaleMinSpace: 20,
|
|
onlyInteger: true,
|
|
fullWidth: true
|
|
};
|
|
var lineChart = new Chartist.Line(chart, {
|
|
labels: [],
|
|
series: chartData.series
|
|
}, options);
|
|
|
|
/* Zoom */
|
|
var zoomButtonDiv = document.createElement("div");
|
|
zoomButtonDiv.className = "toggleZoom";
|
|
var zoomButtonLink = document.createElement("a");
|
|
zoomButtonLink.setAttribute("href", "");
|
|
var zoomButtonText = document.createElement("i");
|
|
zoomButtonText.className = "icon-search-plus";
|
|
|
|
zoomButtonLink.appendChild(zoomButtonText);
|
|
zoomButtonDiv.appendChild(zoomButtonLink);
|
|
|
|
chart.appendChild(zoomButtonDiv);
|
|
|
|
zoomButtonDiv.addEventListener('click', function (event) {
|
|
event.preventDefault();
|
|
|
|
if (options.axisY.type === undefined) {
|
|
options.axisY.type = Chartist.AutoScaleAxis;
|
|
zoomButtonText.className = "icon-search-minus";
|
|
} else {
|
|
options.axisY.type = undefined;
|
|
zoomButtonText.className = "icon-search-plus";
|
|
}
|
|
|
|
lineChart.update(null, options);
|
|
});
|
|
|
|
var tooltip = document.createElement("div");
|
|
tooltip.className = "tooltip";
|
|
|
|
chart.appendChild(tooltip);
|
|
|
|
/* Tooltips */
|
|
var showToolTip = function () {
|
|
var index = this.getAttribute('ct:meta');
|
|
|
|
tooltip.innerHTML = chartData.tooltips[index];
|
|
tooltip.style.display = 'block';
|
|
};
|
|
|
|
var moveToolTip = function (event) {
|
|
var box = chart.getBoundingClientRect();
|
|
var left = event.pageX - box.left - window.pageXOffset;
|
|
var top = event.pageY - box.top - window.pageYOffset;
|
|
|
|
left = left + 20;
|
|
top = top - tooltip.offsetHeight / 2;
|
|
|
|
if (left + tooltip.offsetWidth > box.width) {
|
|
left -= tooltip.offsetWidth + 40;
|
|
}
|
|
|
|
if (top < 0) {
|
|
top = 0;
|
|
}
|
|
|
|
if (top + tooltip.offsetHeight > box.height) {
|
|
top = box.height - tooltip.offsetHeight;
|
|
}
|
|
|
|
tooltip.style.left = left + 'px';
|
|
tooltip.style.top = top + 'px';
|
|
};
|
|
|
|
var hideToolTip = function () {
|
|
tooltip.style.display = 'none';
|
|
};
|
|
chart.addEventListener('mousemove', moveToolTip);
|
|
|
|
lineChart.on('created', function () {
|
|
var chartPoints = chart.getElementsByClassName('ct-point');
|
|
for (i = 0, l = chartPoints.length; i < l; i++) {
|
|
chartPoints[i].addEventListener('mousemove', showToolTip);
|
|
chartPoints[i].addEventListener('mouseout', hideToolTip);
|
|
}
|
|
});
|
|
};
|
|
|
|
var charts = document.getElementsByClassName('historychart');
|
|
for (i = 0, l = charts.length; i < l; i++) {
|
|
renderChart(charts[i]);
|
|
}
|
|
|
|
/* History diff charts */
|
|
var renderDiffChart = function (chart) {
|
|
// Remove current children (e.g. PNG placeholder)
|
|
while (chart.firstChild) {
|
|
chart.firstChild.remove();
|
|
}
|
|
|
|
var chartData = window[chart.getAttribute('data-data')];
|
|
var options = {
|
|
low: -chartData.minMaxValue,
|
|
high: chartData.minMaxValue,
|
|
axisY: {
|
|
onlyInteger: true
|
|
}
|
|
};
|
|
var barChart = new Chartist.Bar(chart, {
|
|
series: chartData.series
|
|
}, options);
|
|
|
|
var tooltip = document.createElement("div");
|
|
tooltip.className = "tooltip";
|
|
tooltip.innerHTML = chartData.tooltip;
|
|
|
|
chart.appendChild(tooltip);
|
|
|
|
/* Tooltips */
|
|
/* Tooltips */
|
|
var showToolTip = function () {
|
|
var index = this.getAttribute('ct:meta');
|
|
|
|
tooltip.innerHTML = chartData.tooltips[index];
|
|
tooltip.style.display = 'block';
|
|
};
|
|
|
|
var moveToolTip = function (event) {
|
|
var box = chart.getBoundingClientRect();
|
|
var left = event.pageX - box.left - window.pageXOffset;
|
|
var top = event.pageY - box.top - window.pageYOffset;
|
|
|
|
left = left + 20;
|
|
top = top - tooltip.offsetHeight / 2;
|
|
|
|
if (left + tooltip.offsetWidth > box.width) {
|
|
left -= tooltip.offsetWidth + 40;
|
|
}
|
|
|
|
if (top < 0) {
|
|
top = 0;
|
|
}
|
|
|
|
if (top + tooltip.offsetHeight > box.height) {
|
|
top = box.height - tooltip.offsetHeight;
|
|
}
|
|
|
|
tooltip.style.left = left + 'px';
|
|
tooltip.style.top = top + 'px';
|
|
};
|
|
|
|
var hideToolTip = function () {
|
|
tooltip.style.display = 'none';
|
|
};
|
|
chart.addEventListener('mousemove', moveToolTip);
|
|
|
|
barChart.on('created', function () {
|
|
var chartBars = chart.getElementsByClassName('ct-bar');
|
|
for (i = 0, l = chartBars.length; i < l; i++) {
|
|
chartBars[i].addEventListener('mousemove', showToolTip);
|
|
chartBars[i].addEventListener('mouseout', hideToolTip);
|
|
}
|
|
});
|
|
};
|
|
|
|
var charts = document.getElementsByClassName('historydiffchart');
|
|
for (i = 0, l = charts.length; i < l; i++) {
|
|
renderDiffChart(charts[i]);
|
|
}
|
|
|
|
var assemblies = [
|
|
{
|
|
"name": "CounterDrone.Core",
|
|
"classes": [
|
|
{ "name": "CounterDrone.Core.Algorithms.ActiveFuelDamageModel", "rp": "CounterDrone.Core_ActiveFuelDamageModel.html", "cl": 8, "ucl": 6, "cal": 14, "tl": 37, "cb": 3, "tb": 12, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Algorithms.ActiveMaterialDamageModel", "rp": "CounterDrone.Core_ActiveMaterialDamageModel.html", "cl": 10, "ucl": 6, "cal": 16, "tl": 39, "cb": 5, "tb": 14, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Algorithms.AlgorithmFactory", "rp": "CounterDrone.Core_AlgorithmFactory.html", "cl": 12, "ucl": 2, "cal": 14, "tl": 28, "cb": 1, "tb": 2, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Algorithms.DamageModelRouter", "rp": "CounterDrone.Core_DamageModelRouter.html", "cl": 17, "ucl": 1, "cal": 18, "tl": 32, "cb": 9, "tb": 10, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Algorithms.DefaultDefenseAdvisor", "rp": "CounterDrone.Core_DefaultDefenseAdvisor.html", "cl": 132, "ucl": 7, "cal": 139, "tl": 187, "cb": 20, "tb": 24, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Algorithms.DefenseRecommendation", "rp": "CounterDrone.Core_DefenseRecommendation.html", "cl": 2, "ucl": 0, "cal": 2, "tl": 78, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Algorithms.DefenseSolution", "rp": "CounterDrone.Core_DefenseSolution.html", "cl": 8, "ucl": 0, "cal": 8, "tl": 78, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Algorithms.GaussianPuffDispersion", "rp": "CounterDrone.Core_GaussianPuffDispersion.html", "cl": 38, "ucl": 0, "cal": 38, "tl": 73, "cb": 8, "tb": 8, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Algorithms.InertGasDamageModel", "rp": "CounterDrone.Core_InertGasDamageModel.html", "cl": 12, "ucl": 0, "cal": 12, "tl": 31, "cb": 11, "tb": 12, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Algorithms.Kinematics", "rp": "CounterDrone.Core_Kinematics.html", "cl": 47, "ucl": 17, "cal": 64, "tl": 105, "cb": 12, "tb": 21, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Algorithms.ParticleParams", "rp": "CounterDrone.Core_ParticleParams.html", "cl": 4, "ucl": 0, "cal": 4, "tl": 78, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Algorithms.RecommendedDetection", "rp": "CounterDrone.Core_RecommendedDetection.html", "cl": 3, "ucl": 0, "cal": 3, "tl": 78, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Algorithms.RecommendedPlatform", "rp": "CounterDrone.Core_RecommendedPlatform.html", "cl": 7, "ucl": 0, "cal": 7, "tl": 78, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Algorithms.ThreatProfile", "rp": "CounterDrone.Core_ThreatProfile.html", "cl": 5, "ucl": 0, "cal": 5, "tl": 78, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Algorithms.Vector3", "rp": "CounterDrone.Core_Vector3.html", "cl": 6, "ucl": 0, "cal": 6, "tl": 78, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.DatabaseManager", "rp": "CounterDrone.Core_DatabaseManager.html", "cl": 44, "ucl": 0, "cal": 44, "tl": 69, "cb": 2, "tb": 2, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Models.AmmunitionSpec", "rp": "CounterDrone.Core_AmmunitionSpec.html", "cl": 14, "ucl": 0, "cal": 14, "tl": 42, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Models.CloudDispersal", "rp": "CounterDrone.Core_CloudDispersal.html", "cl": 23, "ucl": 0, "cal": 23, "tl": 49, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Models.CombatScene", "rp": "CounterDrone.Core_CombatScene.html", "cl": 13, "ucl": 0, "cal": 13, "tl": 36, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Models.ControlZone", "rp": "CounterDrone.Core_ControlZone.html", "cl": 7, "ucl": 0, "cal": 7, "tl": 28, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Models.EquipmentDeployment", "rp": "CounterDrone.Core_EquipmentDeployment.html", "cl": 16, "ucl": 0, "cal": 16, "tl": 44, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Models.Group", "rp": "CounterDrone.Core_Group.html", "cl": 5, "ucl": 0, "cal": 5, "tl": 22, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Models.ModelInfo", "rp": "CounterDrone.Core_ModelInfo.html", "cl": 8, "ucl": 0, "cal": 8, "tl": 28, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Models.PagedResult\u003CT\u003E", "rp": "CounterDrone.Core_PagedResult_1.html", "cl": 5, "ucl": 0, "cal": 5, "tl": 27, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Models.RoutePlan", "rp": "CounterDrone.Core_RoutePlan.html", "cl": 5, "ucl": 0, "cal": 5, "tl": 20, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Models.SimEvent", "rp": "CounterDrone.Core_SimEvent.html", "cl": 0, "ucl": 8, "cal": 8, "tl": 28, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Models.SimFrameRecord", "rp": "CounterDrone.Core_SimFrameRecord.html", "cl": 13, "ucl": 0, "cal": 13, "tl": 34, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Models.SimTask", "rp": "CounterDrone.Core_SimTask.html", "cl": 8, "ucl": 0, "cal": 8, "tl": 29, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Models.SimulationReport", "rp": "CounterDrone.Core_SimulationReport.html", "cl": 9, "ucl": 0, "cal": 9, "tl": 31, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Models.TargetConfig", "rp": "CounterDrone.Core_TargetConfig.html", "cl": 9, "ucl": 0, "cal": 9, "tl": 30, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Models.TaskFullConfig", "rp": "CounterDrone.Core_TaskFullConfig.html", "cl": 8, "ucl": 0, "cal": 8, "tl": 27, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Models.Waypoint", "rp": "CounterDrone.Core_Waypoint.html", "cl": 8, "ucl": 0, "cal": 8, "tl": 27, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Repository.AmmunitionSpecRepository", "rp": "CounterDrone.Core_AmmunitionSpecRepository.html", "cl": 6, "ucl": 0, "cal": 6, "tl": 19, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Repository.BaseRepository\u003CT\u003E", "rp": "CounterDrone.Core_BaseRepository_1.html", "cl": 22, "ucl": 0, "cal": 22, "tl": 46, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Repository.CloudDispersalRepository", "rp": "CounterDrone.Core_CloudDispersalRepository.html", "cl": 1, "ucl": 0, "cal": 1, "tl": 10, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Repository.CombatSceneRepository", "rp": "CounterDrone.Core_CombatSceneRepository.html", "cl": 1, "ucl": 0, "cal": 1, "tl": 10, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Repository.ControlZoneRepository", "rp": "CounterDrone.Core_ControlZoneRepository.html", "cl": 12, "ucl": 0, "cal": 12, "tl": 27, "cb": 2, "tb": 2, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Repository.EquipmentDeploymentRepository", "rp": "CounterDrone.Core_EquipmentDeploymentRepository.html", "cl": 8, "ucl": 1, "cal": 9, "tl": 24, "cb": 1, "tb": 2, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Repository.GroupRepository", "rp": "CounterDrone.Core_GroupRepository.html", "cl": 6, "ucl": 0, "cal": 6, "tl": 19, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Repository.ModelRepository", "rp": "CounterDrone.Core_ModelRepository.html", "cl": 1, "ucl": 0, "cal": 1, "tl": 10, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Repository.RoutePlanRepository", "rp": "CounterDrone.Core_RoutePlanRepository.html", "cl": 1, "ucl": 0, "cal": 1, "tl": 10, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Repository.SimTaskRepository", "rp": "CounterDrone.Core_SimTaskRepository.html", "cl": 15, "ucl": 0, "cal": 15, "tl": 34, "cb": 6, "tb": 6, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Repository.TargetConfigRepository", "rp": "CounterDrone.Core_TargetConfigRepository.html", "cl": 4, "ucl": 5, "cal": 9, "tl": 24, "cb": 0, "tb": 2, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Repository.WaypointRepository", "rp": "CounterDrone.Core_WaypointRepository.html", "cl": 11, "ucl": 1, "cal": 12, "tl": 27, "cb": 1, "tb": 2, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Services.GroupService", "rp": "CounterDrone.Core_GroupService.html", "cl": 27, "ucl": 0, "cal": 27, "tl": 50, "cb": 4, "tb": 4, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Services.ModelService", "rp": "CounterDrone.Core_ModelService.html", "cl": 31, "ucl": 1, "cal": 32, "tl": 59, "cb": 13, "tb": 14, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Services.ReportGenerator", "rp": "CounterDrone.Core_ReportGenerator.html", "cl": 62, "ucl": 2, "cal": 64, "tl": 96, "cb": 9, "tb": 12, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Services.ReportService", "rp": "CounterDrone.Core_ReportService.html", "cl": 58, "ucl": 2, "cal": 60, "tl": 94, "cb": 7, "tb": 12, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Services.ScenarioService", "rp": "CounterDrone.Core_ScenarioService.html", "cl": 148, "ucl": 6, "cal": 154, "tl": 224, "cb": 38, "tb": 46, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Simulation.CloudEntity", "rp": "CounterDrone.Core_CloudEntity.html", "cl": 22, "ucl": 1, "cal": 23, "tl": 38, "cb": 1, "tb": 2, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Simulation.ControlZoneEntity", "rp": "CounterDrone.Core_ControlZoneEntity.html", "cl": 21, "ucl": 0, "cal": 21, "tl": 38, "cb": 6, "tb": 8, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Simulation.DetectionEntity", "rp": "CounterDrone.Core_DetectionEntity.html", "cl": 0, "ucl": 20, "cal": 20, "tl": 32, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Simulation.DroneEntity", "rp": "CounterDrone.Core_DroneEntity.html", "cl": 81, "ucl": 9, "cal": 90, "tl": 125, "cb": 21, "tb": 24, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Simulation.EntitySnapshot", "rp": "CounterDrone.Core_EntitySnapshot.html", "cl": 9, "ucl": 0, "cal": 9, "tl": 56, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Simulation.EventQueue", "rp": "CounterDrone.Core_EventQueue.html", "cl": 0, "ucl": 6, "cal": 6, "tl": 56, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Simulation.FrameDataStore", "rp": "CounterDrone.Core_FrameDataStore.html", "cl": 48, "ucl": 10, "cal": 58, "tl": 88, "cb": 7, "tb": 10, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Simulation.MunitionEntity", "rp": "CounterDrone.Core_MunitionEntity.html", "cl": 47, "ucl": 10, "cal": 57, "tl": 87, "cb": 10, "tb": 14, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Simulation.PlatformEntity", "rp": "CounterDrone.Core_PlatformEntity.html", "cl": 30, "ucl": 1, "cal": 31, "tl": 44, "cb": 5, "tb": 8, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Simulation.SimEvent", "rp": "CounterDrone.Core_SimEvent.2.html", "cl": 6, "ucl": 0, "cal": 6, "tl": 56, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Simulation.SimulationEngine", "rp": "CounterDrone.Core_SimulationEngine.html", "cl": 215, "ucl": 1, "cal": 216, "tl": 298, "cb": 63, "tb": 70, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.Simulation.SimulationFrameResult", "rp": "CounterDrone.Core_SimulationFrameResult.html", "cl": 5, "ucl": 0, "cal": 5, "tl": 56, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
{ "name": "CounterDrone.Core.TestPathProvider", "rp": "CounterDrone.Core_TestPathProvider.html", "cl": 11, "ucl": 6, "cal": 17, "tl": 35, "cb": 0, "tb": 0, "cm": 0, "fcm": 0, "tm": 0, "lch": [], "bch": [], "mch": [], "mfch": [], "hc": [], "metrics": { } },
|
|
]},
|
|
];
|
|
|
|
var metrics = [{ "name": "Crap Score", "abbreviation": "crp", "explanationUrl": "https://googletesting.blogspot.de/2011/02/this-code-is-crap.html" }, { "name": "Cyclomatic complexity", "abbreviation": "cc", "explanationUrl": "https://en.wikipedia.org/wiki/Cyclomatic_complexity" }, { "name": "Line coverage", "abbreviation": "cov", "explanationUrl": "https://en.wikipedia.org/wiki/Code_coverage" }, { "name": "Branch coverage", "abbreviation": "bcov", "explanationUrl": "https://en.wikipedia.org/wiki/Code_coverage" }];
|
|
|
|
var historicCoverageExecutionTimes = [];
|
|
|
|
var riskHotspotMetrics = [
|
|
{ "name": "Crap Score", "explanationUrl": "https://googletesting.blogspot.de/2011/02/this-code-is-crap.html" },
|
|
{ "name": "Cyclomatic complexity", "explanationUrl": "https://en.wikipedia.org/wiki/Cyclomatic_complexity" },
|
|
];
|
|
|
|
var riskHotspots = [
|
|
{
|
|
"assembly": "CounterDrone.Core", "class": "CounterDrone.Core.Simulation.SimulationEngine", "reportPath": "CounterDrone.Core_SimulationEngine.html", "methodName": "Tick(System.Single)", "methodShortName": "Tick(...)", "fileIndex": 0, "line": 135,
|
|
"metrics": [
|
|
{ "value": 44, "exceeded": true },
|
|
{ "value": 44, "exceeded": true },
|
|
]},
|
|
{
|
|
"assembly": "CounterDrone.Core", "class": "CounterDrone.Core.Algorithms.ActiveFuelDamageModel", "reportPath": "CounterDrone.Core_ActiveFuelDamageModel.html", "methodName": "GetDamageStage(System.Single)", "methodShortName": "GetDamageStage(...)", "fileIndex": 0, "line": 30,
|
|
"metrics": [
|
|
{ "value": 42, "exceeded": true },
|
|
{ "value": 6, "exceeded": false },
|
|
]},
|
|
{
|
|
"assembly": "CounterDrone.Core", "class": "CounterDrone.Core.Algorithms.ActiveMaterialDamageModel", "reportPath": "CounterDrone.Core_ActiveMaterialDamageModel.html", "methodName": "GetDamageStage(System.Single)", "methodShortName": "GetDamageStage(...)", "fileIndex": 0, "line": 32,
|
|
"metrics": [
|
|
{ "value": 42, "exceeded": true },
|
|
{ "value": 6, "exceeded": false },
|
|
]},
|
|
{
|
|
"assembly": "CounterDrone.Core", "class": "CounterDrone.Core.Algorithms.DefaultDefenseAdvisor", "reportPath": "CounterDrone.Core_DefaultDefenseAdvisor.html", "methodName": "Recommend(CounterDrone.Core.Algorithms.ThreatProfile)", "methodShortName": "Recommend(...)", "fileIndex": 0, "line": 25,
|
|
"metrics": [
|
|
{ "value": 22, "exceeded": false },
|
|
{ "value": 22, "exceeded": true },
|
|
]},
|
|
{
|
|
"assembly": "CounterDrone.Core", "class": "CounterDrone.Core.Simulation.SimulationEngine", "reportPath": "CounterDrone.Core_SimulationEngine.html", "methodName": "Initialize(System.String)", "methodShortName": "Initialize(...)", "fileIndex": 0, "line": 78,
|
|
"metrics": [
|
|
{ "value": 16, "exceeded": false },
|
|
{ "value": 16, "exceeded": true },
|
|
]},
|
|
];
|
|
|
|
var branchCoverageAvailable = true;
|
|
var methodCoverageAvailable = false;
|
|
var applyQueryStringToAllLinks = false;
|
|
var applyMaximumGroupingLevel = false;
|
|
var maximumDecimalPlacesForCoverageQuotas = 1;
|
|
|
|
|
|
var translations = {
|
|
'top': 'Top:',
|
|
'all': 'All',
|
|
'assembly': 'Assembly',
|
|
'class': 'Class',
|
|
'method': 'Method',
|
|
'lineCoverage': 'Line coverage',
|
|
'noGrouping': 'No grouping',
|
|
'byAssembly': 'By assembly',
|
|
'byNamespace': 'By namespace, Level:',
|
|
'all': 'All',
|
|
'collapseAll': 'Collapse all',
|
|
'expandAll': 'Expand all',
|
|
'grouping': 'Grouping:',
|
|
'filter': 'Filter:',
|
|
'name': 'Name',
|
|
'covered': 'Covered',
|
|
'uncovered': 'Uncovered',
|
|
'coverable': 'Coverable',
|
|
'total': 'Total',
|
|
'coverage': 'Line coverage',
|
|
'branchCoverage': 'Branch coverage',
|
|
'methodCoverage': 'Method coverage',
|
|
'fullMethodCoverage': 'Full method coverage',
|
|
'percentage': 'Percentage',
|
|
'history': 'Coverage history',
|
|
'compareHistory': 'Compare with:',
|
|
'date': 'Date',
|
|
'allChanges': 'All changes',
|
|
'selectCoverageTypes': 'Select coverage types',
|
|
'selectCoverageTypesAndMetrics': 'Select coverage types & metrics',
|
|
'coverageTypes': 'Coverage types',
|
|
'metrics': 'Metrics',
|
|
'methodCoverageProVersion': 'Feature is only available for sponsors',
|
|
'lineCoverageIncreaseOnly': 'Line coverage: Increase only',
|
|
'lineCoverageDecreaseOnly': 'Line coverage: Decrease only',
|
|
'branchCoverageIncreaseOnly': 'Branch coverage: Increase only',
|
|
'branchCoverageDecreaseOnly': 'Branch coverage: Decrease only',
|
|
'methodCoverageIncreaseOnly': 'Method coverage: Increase only',
|
|
'methodCoverageDecreaseOnly': 'Method coverage: Decrease only',
|
|
'fullMethodCoverageIncreaseOnly': 'Full method coverage: Increase only',
|
|
'fullMethodCoverageDecreaseOnly': 'Full method coverage: Decrease only'
|
|
};
|
|
|
|
|
|
(()=>{"use strict";var e,_={},p={};function n(e){var a=p[e];if(void 0!==a)return a.exports;var r=p[e]={exports:{}};return _[e](r,r.exports,n),r.exports}n.m=_,e=[],n.O=(a,r,u,l)=>{if(!r){var o=1/0;for(f=0;f<e.length;f++){for(var[r,u,l]=e[f],v=!0,t=0;t<r.length;t++)(!1&l||o>=l)&&Object.keys(n.O).every(h=>n.O[h](r[t]))?r.splice(t--,1):(v=!1,l<o&&(o=l));if(v){e.splice(f--,1);var c=u();void 0!==c&&(a=c)}}return a}l=l||0;for(var f=e.length;f>0&&e[f-1][2]>l;f--)e[f]=e[f-1];e[f]=[r,u,l]},n.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return n.d(a,{a}),a},n.d=(e,a)=>{for(var r in a)n.o(a,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:a[r]})},n.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),(()=>{var e={121:0};n.O.j=u=>0===e[u];var a=(u,l)=>{var t,c,[f,o,v]=l,s=0;if(f.some(d=>0!==e[d])){for(t in o)n.o(o,t)&&(n.m[t]=o[t]);if(v)var b=v(n)}for(u&&u(l);s<f.length;s++)n.o(e,c=f[s])&&e[c]&&e[c][0](),e[c]=0;return n.O(b)},r=self.webpackChunkcoverage_app=self.webpackChunkcoverage_app||[];r.forEach(a.bind(null,0)),r.push=a.bind(null,r.push.bind(r))})()})();
|
|
|
|
"use strict";(self.webpackChunkcoverage_app=self.webpackChunkcoverage_app||[]).push([[461],{50(te,Q,ve){ve(935)},935(){const te=globalThis;function Q(e){return(te.__Zone_symbol_prefix||"__zone_symbol__")+e}const Te=Object.getOwnPropertyDescriptor,Le=Object.defineProperty,Ie=Object.getPrototypeOf,_t=Object.create,Et=Array.prototype.slice,Me="addEventListener",Ze="removeEventListener",Ae=Q(Me),je=Q(Ze),ae="true",le="false",Pe=Q("");function He(e,r){return Zone.current.wrap(e,r)}function xe(e,r,c,t,i){return Zone.current.scheduleMacroTask(e,r,c,t,i)}const j=Q,Ce=typeof window<"u",ge=Ce?window:void 0,$=Ce&&ge||globalThis;function Ve(e,r){for(let c=e.length-1;c>=0;c--)"function"==typeof e[c]&&(e[c]=He(e[c],r+"_"+c));return e}function We(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&typeof e.set>"u")}const qe=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope,De=!("nw"in $)&&typeof $.process<"u"&&"[object process]"===$.process.toString(),Ge=!De&&!qe&&!(!Ce||!ge.HTMLElement),Xe=typeof $.process<"u"&&"[object process]"===$.process.toString()&&!qe&&!(!Ce||!ge.HTMLElement),Se={},pt=j("enable_beforeunload"),Ye=function(e){if(!(e=e||$.event))return;let r=Se[e.type];r||(r=Se[e.type]=j("ON_PROPERTY"+e.type));const c=this||e.target||$,t=c[r];let i;return Ge&&c===ge&&"error"===e.type?(i=t&&t.call(this,e.message,e.filename,e.lineno,e.colno,e.error),!0===i&&e.preventDefault()):(i=t&&t.apply(this,arguments),"beforeunload"===e.type&&$[pt]&&"string"==typeof i?e.returnValue=i:null!=i&&!i&&e.preventDefault()),i};function $e(e,r,c){let t=Te(e,r);if(!t&&c&&Te(c,r)&&(t={enumerable:!0,configurable:!0}),!t||!t.configurable)return;const i=j("on"+r+"patched");if(e.hasOwnProperty(i)&&e[i])return;delete t.writable,delete t.value;const u=t.get,E=t.set,T=r.slice(2);let y=Se[T];y||(y=Se[T]=j("ON_PROPERTY"+T)),t.set=function(D){let d=this;!d&&e===$&&(d=$),d&&("function"==typeof d[y]&&d.removeEventListener(T,Ye),E&&E.call(d,null),d[y]=D,"function"==typeof D&&d.addEventListener(T,Ye,!1))},t.get=function(){let D=this;if(!D&&e===$&&(D=$),!D)return null;const d=D[y];if(d)return d;if(u){let w=u.call(this);if(w)return t.set.call(this,w),"function"==typeof D.removeAttribute&&D.removeAttribute(r),w}return null},Le(e,r,t),e[i]=!0}function Ke(e,r,c){if(r)for(let t=0;t<r.length;t++)$e(e,"on"+r[t],c);else{const t=[];for(const i in e)"on"==i.slice(0,2)&&t.push(i);for(let i=0;i<t.length;i++)$e(e,t[i],c)}}const re=j("originalInstance");function we(e){const r=$[e];if(!r)return;$[j(e)]=r,$[e]=function(){const i=Ve(arguments,e);switch(i.length){case 0:this[re]=new r;break;case 1:this[re]=new r(i[0]);break;case 2:this[re]=new r(i[0],i[1]);break;case 3:this[re]=new r(i[0],i[1],i[2]);break;case 4:this[re]=new r(i[0],i[1],i[2],i[3]);break;default:throw new Error("Arg list too long.")}},fe($[e],r);const c=new r(function(){});let t;for(t in c)"XMLHttpRequest"===e&&"responseBlob"===t||function(i){"function"==typeof c[i]?$[e].prototype[i]=function(){return this[re][i].apply(this[re],arguments)}:Le($[e].prototype,i,{set:function(u){"function"==typeof u?(this[re][i]=He(u,e+"."+i),fe(this[re][i],u)):this[re][i]=u},get:function(){return this[re][i]}})}(t);for(t in r)"prototype"!==t&&r.hasOwnProperty(t)&&($[e][t]=r[t])}function ue(e,r,c){let t=e;for(;t&&!t.hasOwnProperty(r);)t=Ie(t);!t&&e[r]&&(t=e);const i=j(r);let u=null;if(t&&(!(u=t[i])||!t.hasOwnProperty(i))&&(u=t[i]=t[r],We(t&&Te(t,r)))){const T=c(u,i,r);t[r]=function(){return T(this,arguments)},fe(t[r],u)}return u}function yt(e,r,c){let t=null;function i(u){const E=u.data;return E.args[E.cbIdx]=function(){u.invoke.apply(this,arguments)},t.apply(E.target,E.args),u}t=ue(e,r,u=>function(E,T){const y=c(E,T);return y.cbIdx>=0&&"function"==typeof T[y.cbIdx]?xe(y.name,T[y.cbIdx],y,i):u.apply(E,T)})}function fe(e,r){e[j("OriginalDelegate")]=r}let Je=!1,Be=!1;function kt(){if(Je)return Be;Je=!0;try{const e=ge.navigator.userAgent;(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/")||-1!==e.indexOf("Edge/"))&&(Be=!0)}catch{}return Be}function Qe(e){return"function"==typeof e}function et(e){return"number"==typeof e}let pe=!1;if(typeof window<"u")try{const e=Object.defineProperty({},"passive",{get:function(){pe=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch{pe=!1}const vt={useG:!0},ne={},tt={},nt=new RegExp("^"+Pe+"(\\w+)(true|false)$"),rt=j("propagationStopped");function ot(e,r){const c=(r?r(e):e)+le,t=(r?r(e):e)+ae,i=Pe+c,u=Pe+t;ne[e]={},ne[e][le]=i,ne[e][ae]=u}function bt(e,r,c,t){const i=t&&t.add||Me,u=t&&t.rm||Ze,E=t&&t.listeners||"eventListeners",T=t&&t.rmAll||"removeAllListeners",y=j(i),D="."+i+":",d="prependListener",w="."+d+":",Z=function(k,h,H){if(k.isRemoved)return;const V=k.callback;let Y;"object"==typeof V&&V.handleEvent&&(k.callback=g=>V.handleEvent(g),k.originalDelegate=V);try{k.invoke(k,h,[H])}catch(g){Y=g}const G=k.options;return G&&"object"==typeof G&&G.once&&h[u].call(h,H.type,k.originalDelegate?k.originalDelegate:k.callback,G),Y};function x(k,h,H){if(!(h=h||e.event))return;const V=k||h.target||e,Y=V[ne[h.type][H?ae:le]];if(Y){const G=[];if(1===Y.length){const g=Z(Y[0],V,h);g&&G.push(g)}else{const g=Y.slice();for(let z=0;z<g.length&&(!h||!0!==h[rt]);z++){const O=Z(g[z],V,h);O&&G.push(O)}}if(1===G.length)throw G[0];for(let g=0;g<G.length;g++){const z=G[g];r.nativeScheduleMicroTask(()=>{throw z})}}}const U=function(k){return x(this,k,!1)},K=function(k){return x(this,k,!0)};function J(k,h){if(!k)return!1;let H=!0;h&&void 0!==h.useG&&(H=h.useG);const V=h&&h.vh;let Y=!0;h&&void 0!==h.chkDup&&(Y=h.chkDup);let G=!1;h&&void 0!==h.rt&&(G=h.rt);let g=k;for(;g&&!g.hasOwnProperty(i);)g=Ie(g);if(!g&&k[i]&&(g=k),!g||g[y])return!1;const z=h&&h.eventNameToString,O={},R=g[y]=g[i],b=g[j(u)]=g[u],S=g[j(E)]=g[E],ee=g[j(T)]=g[T];let W;h&&h.prepend&&(W=g[j(h.prepend)]=g[h.prepend]);const q=H?function(s){if(!O.isExisting)return R.call(O.target,O.eventName,O.capture?K:U,O.options)}:function(s){return R.call(O.target,O.eventName,s.invoke,O.options)},A=H?function(s){if(!s.isRemoved){const l=ne[s.eventName];let v;l&&(v=l[s.capture?ae:le]);const C=v&&s.target[v];if(C)for(let p=0;p<C.length;p++)if(C[p]===s){C.splice(p,1),s.isRemoved=!0,s.removeAbortListener&&(s.removeAbortListener(),s.removeAbortListener=null),0===C.length&&(s.allRemoved=!0,s.target[v]=null);break}}if(s.allRemoved)return b.call(s.target,s.eventName,s.capture?K:U,s.options)}:function(s){return b.call(s.target,s.eventName,s.invoke,s.options)},he=h&&h.diff?h.diff:function(s,l){const v=typeof l;return"function"===v&&s.callback===l||"object"===v&&s.originalDelegate===l},de=Zone[j("UNPATCHED_EVENTS")],oe=e[j("PASSIVE_EVENTS")],a=function(s,l,v,C,p=!1,L=!1){return function(){const I=this||e;let M=arguments[0];h&&h.transferEventName&&(M=h.transferEventName(M));let B=arguments[1];if(!B)return s.apply(this,arguments);if(De&&"uncaughtException"===M)return s.apply(this,arguments);let F=!1;if("function"!=typeof B){if(!B.handleEvent)return s.apply(this,arguments);F=!0}if(V&&!V(s,B,I,arguments))return;const Ee=pe&&!!oe&&-1!==oe.indexOf(M),ie=function f(s){if("object"==typeof s&&null!==s){const l={...s};return s.signal&&(l.signal=s.signal),l}return s}(function N(s,l){return!pe&&"object"==typeof s&&s?!!s.capture:pe&&l?"boolean"==typeof s?{capture:s,passive:!0}:s?"object"==typeof s&&!1!==s.passive?{...s,passive:!0}:s:{passive:!0}:s}(arguments[2],Ee)),me=ie?.signal;if(me?.aborted)return;if(de)for(let ce=0;ce<de.length;ce++)if(M===de[ce])return Ee?s.call(I,M,B,ie):s.apply(this,arguments);const Ue=!!ie&&("boolean"==typeof ie||ie.capture),lt=!(!ie||"object"!=typeof ie)&&ie.once,At=Zone.current;let ze=ne[M];ze||(ot(M,z),ze=ne[M]);const ut=ze[Ue?ae:le];let Ne,ke=I[ut],ft=!1;if(ke){if(ft=!0,Y)for(let ce=0;ce<ke.length;ce++)if(he(ke[ce],B))return}else ke=I[ut]=[];const ht=I.constructor.name,dt=tt[ht];dt&&(Ne=dt[M]),Ne||(Ne=ht+l+(z?z(M):M)),O.options=ie,lt&&(O.options.once=!1),O.target=I,O.capture=Ue,O.eventName=M,O.isExisting=ft;const Re=H?vt:void 0;Re&&(Re.taskData=O),me&&(O.options.signal=void 0);const se=At.scheduleEventTask(Ne,B,Re,v,C);if(me){O.options.signal=me;const ce=()=>se.zone.cancelTask(se);s.call(me,"abort",ce,{once:!0}),se.removeAbortListener=()=>me.removeEventListener("abort",ce)}return O.target=null,Re&&(Re.taskData=null),lt&&(O.options.once=!0),!pe&&"boolean"==typeof se.options||(se.options=ie),se.target=I,se.capture=Ue,se.eventName=M,F&&(se.originalDelegate=B),L?ke.unshift(se):ke.push(se),p?I:void 0}};return g[i]=a(R,D,q,A,G),W&&(g[d]=a(W,w,function(s){return W.call(O.target,O.eventName,s.invoke,O.options)},A,G,!0)),g[u]=function(){const s=this||e;let l=arguments[0];h&&h.transferEventName&&(l=h.transferEventName(l));const v=arguments[2],C=!!v&&("boolean"==typeof v||v.capture),p=arguments[1];if(!p)return b.apply(this,arguments);if(V&&!V(b,p,s,arguments))return;const L=ne[l];let I;L&&(I=L[C?ae:le]);const M=I&&s[I];if(M)for(let B=0;B<M.length;B++){const F=M[B];if(he(F,p))return M.splice(B,1),F.isRemoved=!0,0!==M.length||(F.allRemoved=!0,s[I]=null,C||"string"!=typeof l)||(s[Pe+"ON_PROPERTY"+l]=null),F.zone.cancelTask(F),G?s:void 0}return b.apply(this,arguments)},g[E]=function(){const s=this||e;let l=arguments[0];h&&h.transferEventName&&(l=h.transferEventName(l));const v=[],C=st(s,z?z(l):l);for(let p=0;p<C.length;p++){const L=C[p];v.push(L.originalDelegate?L.originalDelegate:L.callback)}return v},g[T]=function(){const s=this||e;let l=arguments[0];if(l){h&&h.transferEventName&&(l=h.transferEventName(l));const v=ne[l];if(v){const L=s[v[le]],I=s[v[ae]];if(L){const M=L.slice();for(let B=0;B<M.length;B++){const F=M[B];this[u].call(this,l,F.originalDelegate?F.originalDelegate:F.callback,F.options)}}if(I){const M=I.slice();for(let B=0;B<M.length;B++){const F=M[B];this[u].call(this,l,F.originalDelegate?F.originalDelegate:F.callback,F.options)}}}}else{const v=Object.keys(s);for(let C=0;C<v.length;C++){const L=nt.exec(v[C]);let I=L&&L[1];I&&"removeListener"!==I&&this[T].call(this,I)}this[T].call(this,"removeListener")}if(G)return this},fe(g[i],R),fe(g[u],b),ee&&fe(g[T],ee),S&&fe(g[E],S),!0}let X=[];for(let k=0;k<c.length;k++)X[k]=J(c[k],t);return X}function st(e,r){if(!r){const u=[];for(let E in e){const T=nt.exec(E);let y=T&&T[1];if(y&&(!r||y===r)){const D=e[E];if(D)for(let d=0;d<D.length;d++)u.push(D[d])}}return u}let c=ne[r];c||(ot(r),c=ne[r]);const t=e[c[le]],i=e[c[ae]];return t?i?t.concat(i):t.slice():i?i.slice():[]}function Pt(e,r){const c=e.Event;c&&c.prototype&&r.patchMethod(c.prototype,"stopImmediatePropagation",t=>function(i,u){i[rt]=!0,t&&t.apply(i,u)})}const Oe=j("zoneTask");function ye(e,r,c,t){let i=null,u=null;c+=t;const E={};function T(D){const d=D.data;d.args[0]=function(){return D.invoke.apply(this,arguments)};const w=i.apply(e,d.args);return et(w)?d.handleId=w:(d.handle=w,d.isRefreshable=Qe(w.refresh)),D}function y(D){const{handle:d,handleId:w}=D.data;return u.call(e,d??w)}i=ue(e,r+=t,D=>function(d,w){if(Qe(w[0])){const Z={isRefreshable:!1,isPeriodic:"Interval"===t,delay:"Timeout"===t||"Interval"===t?w[1]||0:void 0,args:w},x=w[0];w[0]=function(){try{return x.apply(this,arguments)}finally{const{handle:H,handleId:V,isPeriodic:Y,isRefreshable:G}=Z;!Y&&!G&&(V?delete E[V]:H&&(H[Oe]=null))}};const U=xe(r,w[0],Z,T,y);if(!U)return U;const{handleId:K,handle:J,isRefreshable:X,isPeriodic:k}=U.data;if(K)E[K]=U;else if(J&&(J[Oe]=U,X&&!k)){const h=J.refresh;J.refresh=function(){const{zone:H,state:V}=U;return"notScheduled"===V?(U._state="scheduled",H._updateTaskCount(U,1)):"running"===V&&(U._state="scheduling"),h.call(this)}}return J??K??U}return D.apply(e,w)}),u=ue(e,c,D=>function(d,w){const Z=w[0];let x;et(Z)?(x=E[Z],delete E[Z]):(x=Z?.[Oe],x?Z[Oe]=null:x=Z),x?.type?x.cancelFn&&x.zone.cancelTask(x):D.apply(e,w)})}function it(e,r,c){if(!c||0===c.length)return r;const t=c.filter(u=>u.target===e);if(!t||0===t.length)return r;const i=t[0].ignoreProperties;return r.filter(u=>-1===i.indexOf(u))}function ct(e,r,c,t){e&&Ke(e,it(e,r,c),t)}function Fe(e){return Object.getOwnPropertyNames(e).filter(r=>r.startsWith("on")&&r.length>2).map(r=>r.substring(2))}function It(e,r,c,t,i){const u=Zone.__symbol__(t);if(r[u])return;const E=r[u]=r[t];r[t]=function(T,y,D){return y&&y.prototype&&i.forEach(function(d){const w=`${c}.${t}::`+d,Z=y.prototype;try{if(Z.hasOwnProperty(d)){const x=e.ObjectGetOwnPropertyDescriptor(Z,d);x&&x.value?(x.value=e.wrapWithCurrentZone(x.value,w),e._redefineProperty(y.prototype,d,x)):Z[d]&&(Z[d]=e.wrapWithCurrentZone(Z[d],w))}else Z[d]&&(Z[d]=e.wrapWithCurrentZone(Z[d],w))}catch{}}),E.call(r,T,y,D)},e.attachOriginToPatched(r[t],E)}const at=function be(){const e=globalThis,r=!0===e[Q("forceDuplicateZoneCheck")];if(e.Zone&&(r||"function"!=typeof e.Zone.__symbol__))throw new Error("Zone already loaded.");return e.Zone??=function ve(){const e=te.performance;function r(N){e&&e.mark&&e.mark(N)}function c(N,_){e&&e.measure&&e.measure(N,_)}r("Zone");let t=(()=>{class N{static{this.__symbol__=Q}static assertZonePatched(){if(te.Promise!==O.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let n=N.current;for(;n.parent;)n=n.parent;return n}static get current(){return b.zone}static get currentTask(){return S}static __load_patch(n,o,m=!1){if(O.hasOwnProperty(n)){const P=!0===te[Q("forceDuplicateZoneCheck")];if(!m&&P)throw Error("Already loaded patch: "+n)}else if(!te["__Zone_disable_"+n]){const P="Zone:"+n;r(P),O[n]=o(te,N,R),c(P,P)}}get parent(){return this._parent}get name(){return this._name}constructor(n,o){this._parent=n,this._name=o?o.name||"unnamed":"<root>",this._properties=o&&o.properties||{},this._zoneDelegate=new u(this,this._parent&&this._parent._zoneDelegate,o)}get(n){const o=this.getZoneWith(n);if(o)return o._properties[n]}getZoneWith(n){let o=this;for(;o;){if(o._properties.hasOwnProperty(n))return o;o=o._parent}return null}fork(n){if(!n)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,n)}wrap(n,o){if("function"!=typeof n)throw new Error("Expecting function got: "+n);const m=this._zoneDelegate.intercept(this,n,o),P=this;return function(){return P.runGuarded(m,this,arguments,o)}}run(n,o,m,P){b={parent:b,zone:this};try{return this._zoneDelegate.invoke(this,n,o,m,P)}finally{b=b.parent}}runGuarded(n,o=null,m,P){b={parent:b,zone:this};try{try{return this._zoneDelegate.invoke(this,n,o,m,P)}catch(q){if(this._zoneDelegate.handleError(this,q))throw q}}finally{b=b.parent}}runTask(n,o,m){if(n.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(n.zone||J).name+"; Execution: "+this.name+")");const P=n,{type:q,data:{isPeriodic:A=!1,isRefreshable:_e=!1}={}}=n;if(n.state===X&&(q===z||q===g))return;const he=n.state!=H;he&&P._transitionTo(H,h);const de=S;S=P,b={parent:b,zone:this};try{q==g&&n.data&&!A&&!_e&&(n.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,P,o,m)}catch(oe){if(this._zoneDelegate.handleError(this,oe))throw oe}}finally{const oe=n.state;if(oe!==X&&oe!==Y)if(q==z||A||_e&&oe===k)he&&P._transitionTo(h,H,k);else{const f=P._zoneDelegates;this._updateTaskCount(P,-1),he&&P._transitionTo(X,H,X),_e&&(P._zoneDelegates=f)}b=b.parent,S=de}}scheduleTask(n){if(n.zone&&n.zone!==this){let m=this;for(;m;){if(m===n.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${n.zone.name}`);m=m.parent}}n._transitionTo(k,X);const o=[];n._zoneDelegates=o,n._zone=this;try{n=this._zoneDelegate.scheduleTask(this,n)}catch(m){throw n._transitionTo(Y,k,X),this._zoneDelegate.handleError(this,m),m}return n._zoneDelegates===o&&this._updateTaskCount(n,1),n.state==k&&n._transitionTo(h,k),n}scheduleMicroTask(n,o,m,P){return this.scheduleTask(new E(G,n,o,m,P,void 0))}scheduleMacroTask(n,o,m,P,q){return this.scheduleTask(new E(g,n,o,m,P,q))}scheduleEventTask(n,o,m,P,q){return this.scheduleTask(new E(z,n,o,m,P,q))}cancelTask(n){if(n.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(n.zone||J).name+"; Execution: "+this.name+")");if(n.state===h||n.state===H){n._transitionTo(V,h,H);try{this._zoneDelegate.cancelTask(this,n)}catch(o){throw n._transitionTo(Y,V),this._zoneDelegate.handleError(this,o),o}return this._updateTaskCount(n,-1),n._transitionTo(X,V),n.runCount=-1,n}}_updateTaskCount(n,o){const m=n._zoneDelegates;-1==o&&(n._zoneDelegates=null);for(let P=0;P<m.length;P++)m[P]._updateTaskCount(n.type,o)}}return N})();const i={name:"",onHasTask:(N,_,n,o)=>N.hasTask(n,o),onScheduleTask:(N,_,n,o)=>N.scheduleTask(n,o),onInvokeTask:(N,_,n,o,m,P)=>N.invokeTask(n,o,m,P),onCancelTask:(N,_,n,o)=>N.cancelTask(n,o)};class u{get zone(){return this._zone}constructor(_,n,o){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this._zone=_,this._parentDelegate=n,this._forkZS=o&&(o&&o.onFork?o:n._forkZS),this._forkDlgt=o&&(o.onFork?n:n._forkDlgt),this._forkCurrZone=o&&(o.onFork?this._zone:n._forkCurrZone),this._interceptZS=o&&(o.onIntercept?o:n._interceptZS),this._interceptDlgt=o&&(o.onIntercept?n:n._interceptDlgt),this._interceptCurrZone=o&&(o.onIntercept?this._zone:n._interceptCurrZone),this._invokeZS=o&&(o.onInvoke?o:n._invokeZS),this._invokeDlgt=o&&(o.onInvoke?n:n._invokeDlgt),this._invokeCurrZone=o&&(o.onInvoke?this._zone:n._invokeCurrZone),this._handleErrorZS=o&&(o.onHandleError?o:n._handleErrorZS),this._handleErrorDlgt=o&&(o.onHandleError?n:n._handleErrorDlgt),this._handleErrorCurrZone=o&&(o.onHandleError?this._zone:n._handleErrorCurrZone),this._scheduleTaskZS=o&&(o.onScheduleTask?o:n._scheduleTaskZS),this._scheduleTaskDlgt=o&&(o.onScheduleTask?n:n._scheduleTaskDlgt),this._scheduleTaskCurrZone=o&&(o.onScheduleTask?this._zone:n._scheduleTaskCurrZone),this._invokeTaskZS=o&&(o.onInvokeTask?o:n._invokeTaskZS),this._invokeTaskDlgt=o&&(o.onInvokeTask?n:n._invokeTaskDlgt),this._invokeTaskCurrZone=o&&(o.onInvokeTask?this._zone:n._invokeTaskCurrZone),this._cancelTaskZS=o&&(o.onCancelTask?o:n._cancelTaskZS),this._cancelTaskDlgt=o&&(o.onCancelTask?n:n._cancelTaskDlgt),this._cancelTaskCurrZone=o&&(o.onCancelTask?this._zone:n._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const m=o&&o.onHasTask;(m||n&&n._hasTaskZS)&&(this._hasTaskZS=m?o:i,this._hasTaskDlgt=n,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=this._zone,o.onScheduleTask||(this._scheduleTaskZS=i,this._scheduleTaskDlgt=n,this._scheduleTaskCurrZone=this._zone),o.onInvokeTask||(this._invokeTaskZS=i,this._invokeTaskDlgt=n,this._invokeTaskCurrZone=this._zone),o.onCancelTask||(this._cancelTaskZS=i,this._cancelTaskDlgt=n,this._cancelTaskCurrZone=this._zone))}fork(_,n){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,_,n):new t(_,n)}intercept(_,n,o){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,_,n,o):n}invoke(_,n,o,m,P){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,_,n,o,m,P):n.apply(o,m)}handleError(_,n){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,_,n)}scheduleTask(_,n){let o=n;if(this._scheduleTaskZS)this._hasTaskZS&&o._zoneDelegates.push(this._hasTaskDlgtOwner),o=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,_,n),o||(o=n);else if(n.scheduleFn)n.scheduleFn(n);else{if(n.type!=G)throw new Error("Task is missing scheduleFn.");U(n)}return o}invokeTask(_,n,o,m){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,_,n,o,m):n.callback.apply(o,m)}cancelTask(_,n){let o;if(this._cancelTaskZS)o=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,_,n);else{if(!n.cancelFn)throw Error("Task is not cancelable");o=n.cancelFn(n)}return o}hasTask(_,n){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,_,n)}catch(o){this.handleError(_,o)}}_updateTaskCount(_,n){const o=this._taskCounts,m=o[_],P=o[_]=m+n;if(P<0)throw new Error("More tasks executed then were scheduled.");0!=m&&0!=P||this.hasTask(this._zone,{microTask:o.microTask>0,macroTask:o.macroTask>0,eventTask:o.eventTask>0,change:_})}}class E{constructor(_,n,o,m,P,q){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=_,this.source=n,this.data=m,this.scheduleFn=P,this.cancelFn=q,!o)throw new Error("callback is not defined");this.callback=o;const A=this;this.invoke=_===z&&m&&m.useG?E.invokeTask:function(){return E.invokeTask.call(te,A,this,arguments)}}static invokeTask(_,n,o){_||(_=this),ee++;try{return _.runCount++,_.zone.runTask(_,n,o)}finally{1==ee&&K(),ee--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(X,k)}_transitionTo(_,n,o){if(this._state!==n&&this._state!==o)throw new Error(`${this.type} '${this.source}': can not transition to '${_}', expecting state '${n}'${o?" or '"+o+"'":""}, was '${this._state}'.`);this._state=_,_==X&&(this._zoneDelegates=null)}toString(){return this.data&&typeof this.data.handleId<"u"?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const T=Q("setTimeout"),y=Q("Promise"),D=Q("then");let Z,d=[],w=!1;function x(N){if(Z||te[y]&&(Z=te[y].resolve(0)),Z){let _=Z[D];_||(_=Z.then),_.call(Z,N)}else te[T](N,0)}function U(N){0===ee&&0===d.length&&x(K),N&&d.push(N)}function K(){if(!w){for(w=!0;d.length;){const N=d;d=[];for(let _=0;_<N.length;_++){const n=N[_];try{n.zone.runTask(n,null,null)}catch(o){R.onUnhandledError(o)}}}R.microtaskDrainDone(),w=!1}}const J={name:"NO ZONE"},X="notScheduled",k="scheduling",h="scheduled",H="running",V="canceling",Y="unknown",G="microTask",g="macroTask",z="eventTask",O={},R={symbol:Q,currentZoneFrame:()=>b,onUnhandledError:W,microtaskDrainDone:W,scheduleMicroTask:U,showUncaughtError:()=>!t[Q("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:W,patchMethod:()=>W,bindArguments:()=>[],patchThen:()=>W,patchMacroTask:()=>W,patchEventPrototype:()=>W,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>W,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>W,wrapWithCurrentZone:()=>W,filterProperties:()=>[],attachOriginToPatched:()=>W,_redefineProperty:()=>W,patchCallbacks:()=>W,nativeScheduleMicroTask:x};let b={parent:null,zone:new t(null,null)},S=null,ee=0;function W(){}return c("Zone","Zone"),t}(),e.Zone}();(function Zt(e){(function Nt(e){e.__load_patch("ZoneAwarePromise",(r,c,t)=>{const i=Object.getOwnPropertyDescriptor,u=Object.defineProperty,T=t.symbol,y=[],D=!1!==r[T("DISABLE_WRAPPING_UNCAUGHT_PROMISE_REJECTION")],d=T("Promise"),w=T("then");t.onUnhandledError=f=>{if(t.showUncaughtError()){const a=f&&f.rejection;a?console.error("Unhandled Promise rejection:",a instanceof Error?a.message:a,"; Zone:",f.zone.name,"; Task:",f.task&&f.task.source,"; Value:",a,a instanceof Error?a.stack:void 0):console.error(f)}},t.microtaskDrainDone=()=>{for(;y.length;){const f=y.shift();try{f.zone.runGuarded(()=>{throw f.throwOriginal?f.rejection:f})}catch(a){U(a)}}};const x=T("unhandledPromiseRejectionHandler");function U(f){t.onUnhandledError(f);try{const a=c[x];"function"==typeof a&&a.call(this,f)}catch{}}function K(f){return f&&f.then}function J(f){return f}function X(f){return A.reject(f)}const k=T("state"),h=T("value"),H=T("finally"),V=T("parentPromiseValue"),Y=T("parentPromiseState"),g=null,z=!0,O=!1;function b(f,a){return s=>{try{N(f,a,s)}catch(l){N(f,!1,l)}}}const S=function(){let f=!1;return function(s){return function(){f||(f=!0,s.apply(null,arguments))}}},ee="Promise resolved with itself",W=T("currentTaskTrace");function N(f,a,s){const l=S();if(f===s)throw new TypeError(ee);if(f[k]===g){let v=null;try{("object"==typeof s||"function"==typeof s)&&(v=s&&s.then)}catch(C){return l(()=>{N(f,!1,C)})(),f}if(a!==O&&s instanceof A&&s.hasOwnProperty(k)&&s.hasOwnProperty(h)&&s[k]!==g)n(s),N(f,s[k],s[h]);else if(a!==O&&"function"==typeof v)try{v.call(s,l(b(f,a)),l(b(f,!1)))}catch(C){l(()=>{N(f,!1,C)})()}else{f[k]=a;const C=f[h];if(f[h]=s,f[H]===H&&a===z&&(f[k]=f[Y],f[h]=f[V]),a===O&&s instanceof Error){const p=c.currentTask&&c.currentTask.data&&c.currentTask.data.__creationTrace__;p&&u(s,W,{configurable:!0,enumerable:!1,writable:!0,value:p})}for(let p=0;p<C.length;)o(f,C[p++],C[p++],C[p++],C[p++]);if(0==C.length&&a==O){f[k]=0;let p=s;try{throw new Error("Uncaught (in promise): "+function E(f){return f&&f.toString===Object.prototype.toString?(f.constructor&&f.constructor.name||"")+": "+JSON.stringify(f):f?f.toString():Object.prototype.toString.call(f)}(s)+(s&&s.stack?"\n"+s.stack:""))}catch(L){p=L}D&&(p.throwOriginal=!0),p.rejection=s,p.promise=f,p.zone=c.current,p.task=c.currentTask,y.push(p),t.scheduleMicroTask()}}}return f}const _=T("rejectionHandledHandler");function n(f){if(0===f[k]){try{const a=c[_];a&&"function"==typeof a&&a.call(this,{rejection:f[h],promise:f})}catch{}f[k]=O;for(let a=0;a<y.length;a++)f===y[a].promise&&y.splice(a,1)}}function o(f,a,s,l,v){n(f);const C=f[k],p=C?"function"==typeof l?l:J:"function"==typeof v?v:X;a.scheduleMicroTask("Promise.then",()=>{try{const L=f[h],I=!!s&&H===s[H];I&&(s[V]=L,s[Y]=C);const M=a.run(p,void 0,I&&p!==X&&p!==J?[]:[L]);N(s,!0,M)}catch(L){N(s,!1,L)}},s)}const P=function(){},q=r.AggregateError;class A{static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(a){return a instanceof A?a:N(new this(null),z,a)}static reject(a){return N(new this(null),O,a)}static withResolvers(){const a={};return a.promise=new A((s,l)=>{a.resolve=s,a.reject=l}),a}static any(a){if(!a||"function"!=typeof a[Symbol.iterator])return Promise.reject(new q([],"All promises were rejected"));const s=[];let l=0;try{for(let p of a)l++,s.push(A.resolve(p))}catch{return Promise.reject(new q([],"All promises were rejected"))}if(0===l)return Promise.reject(new q([],"All promises were rejected"));let v=!1;const C=[];return new A((p,L)=>{for(let I=0;I<s.length;I++)s[I].then(M=>{v||(v=!0,p(M))},M=>{C.push(M),l--,0===l&&(v=!0,L(new q(C,"All promises were rejected")))})})}static race(a){let s,l,v=new this((L,I)=>{s=L,l=I});function C(L){s(L)}function p(L){l(L)}for(let L of a)K(L)||(L=this.resolve(L)),L.then(C,p);return v}static all(a){return A.allWithCallback(a)}static allSettled(a){return(this&&this.prototype instanceof A?this:A).allWithCallback(a,{thenCallback:l=>({status:"fulfilled",value:l}),errorCallback:l=>({status:"rejected",reason:l})})}static allWithCallback(a,s){let l,v,C=new this((M,B)=>{l=M,v=B}),p=2,L=0;const I=[];for(let M of a){K(M)||(M=this.resolve(M));const B=L;try{M.then(F=>{I[B]=s?s.thenCallback(F):F,p--,0===p&&l(I)},F=>{s?(I[B]=s.errorCallback(F),p--,0===p&&l(I)):v(F)})}catch(F){v(F)}p++,L++}return p-=2,0===p&&l(I),C}constructor(a){const s=this;if(!(s instanceof A))throw new Error("Must be an instanceof Promise.");s[k]=g,s[h]=[];try{const l=S();a&&a(l(b(s,z)),l(b(s,O)))}catch(l){N(s,!1,l)}}get[Symbol.toStringTag](){return"Promise"}get[Symbol.species](){return A}then(a,s){let l=this.constructor?.[Symbol.species];(!l||"function"!=typeof l)&&(l=this.constructor||A);const v=new l(P),C=c.current;return this[k]==g?this[h].push(C,v,a,s):o(this,C,v,a,s),v}catch(a){return this.then(null,a)}finally(a){let s=this.constructor?.[Symbol.species];(!s||"function"!=typeof s)&&(s=A);const l=new s(P);l[H]=H;const v=c.current;return this[k]==g?this[h].push(v,l,a,a):o(this,v,l,a,a),l}}A.resolve=A.resolve,A.reject=A.reject,A.race=A.race,A.all=A.all;const _e=r[d]=r.Promise;r.Promise=A;const he=T("thenPatched");function de(f){const a=f.prototype,s=i(a,"then");if(s&&(!1===s.writable||!s.configurable))return;const l=a.then;a[w]=l,f.prototype.then=function(v,C){return new A((L,I)=>{l.call(this,L,I)}).then(v,C)},f[he]=!0}return t.patchThen=de,_e&&(de(_e),ue(r,"fetch",f=>function oe(f){return function(a,s){let l=f.apply(a,s);if(l instanceof A)return l;let v=l.constructor;return v[he]||de(v),l}}(f))),Promise[c.__symbol__("uncaughtPromiseErrors")]=y,A})})(e),function Lt(e){e.__load_patch("toString",r=>{const c=Function.prototype.toString,t=j("OriginalDelegate"),i=j("Promise"),u=j("Error"),E=function(){if("function"==typeof this){const d=this[t];if(d)return"function"==typeof d?c.call(d):Object.prototype.toString.call(d);if(this===Promise){const w=r[i];if(w)return c.call(w)}if(this===Error){const w=r[u];if(w)return c.call(w)}}return c.call(this)};E[t]=c,Function.prototype.toString=E;const T=Object.prototype.toString;Object.prototype.toString=function(){return"function"==typeof Promise&&this instanceof Promise?"[object Promise]":T.call(this)}})}(e),function Mt(e){e.__load_patch("util",(r,c,t)=>{const i=Fe(r);t.patchOnProperties=Ke,t.patchMethod=ue,t.bindArguments=Ve,t.patchMacroTask=yt;const u=c.__symbol__("BLACK_LISTED_EVENTS"),E=c.__symbol__("UNPATCHED_EVENTS");r[E]&&(r[u]=r[E]),r[u]&&(c[u]=c[E]=r[u]),t.patchEventPrototype=Pt,t.patchEventTarget=bt,t.isIEOrEdge=kt,t.ObjectDefineProperty=Le,t.ObjectGetOwnPropertyDescriptor=Te,t.ObjectCreate=_t,t.ArraySlice=Et,t.patchClass=we,t.wrapWithCurrentZone=He,t.filterProperties=it,t.attachOriginToPatched=fe,t._redefineProperty=Object.defineProperty,t.patchCallbacks=It,t.getGlobalObjects=()=>({globalSources:tt,zoneSymbolEventNames:ne,eventNames:i,isBrowser:Ge,isMix:Xe,isNode:De,TRUE_STR:ae,FALSE_STR:le,ZONE_SYMBOL_PREFIX:Pe,ADD_EVENT_LISTENER_STR:Me,REMOVE_EVENT_LISTENER_STR:Ze})})}(e)})(at),function Ot(e){e.__load_patch("legacy",r=>{const c=r[e.__symbol__("legacyPatch")];c&&c()}),e.__load_patch("timers",r=>{const t="clear";ye(r,"set",t,"Timeout"),ye(r,"set",t,"Interval"),ye(r,"set",t,"Immediate")}),e.__load_patch("requestAnimationFrame",r=>{ye(r,"request","cancel","AnimationFrame"),ye(r,"mozRequest","mozCancel","AnimationFrame"),ye(r,"webkitRequest","webkitCancel","AnimationFrame")}),e.__load_patch("blocking",(r,c)=>{const t=["alert","prompt","confirm"];for(let i=0;i<t.length;i++)ue(r,t[i],(E,T,y)=>function(D,d){return c.current.run(E,r,d,y)})}),e.__load_patch("EventTarget",(r,c,t)=>{(function Dt(e,r){r.patchEventPrototype(e,r)})(r,t),function Ct(e,r){if(Zone[r.symbol("patchEventTarget")])return;const{eventNames:c,zoneSymbolEventNames:t,TRUE_STR:i,FALSE_STR:u,ZONE_SYMBOL_PREFIX:E}=r.getGlobalObjects();for(let y=0;y<c.length;y++){const D=c[y],Z=E+(D+u),x=E+(D+i);t[D]={},t[D][u]=Z,t[D][i]=x}const T=e.EventTarget;T&&T.prototype&&r.patchEventTarget(e,r,[T&&T.prototype])}(r,t);const i=r.XMLHttpRequestEventTarget;i&&i.prototype&&t.patchEventTarget(r,t,[i.prototype])}),e.__load_patch("MutationObserver",(r,c,t)=>{we("MutationObserver"),we("WebKitMutationObserver")}),e.__load_patch("IntersectionObserver",(r,c,t)=>{we("IntersectionObserver")}),e.__load_patch("FileReader",(r,c,t)=>{we("FileReader")}),e.__load_patch("on_property",(r,c,t)=>{!function St(e,r){if(De&&!Xe||Zone[e.symbol("patchEvents")])return;const c=r.__Zone_ignore_on_properties;let t=[];if(Ge){const i=window;t=t.concat(["Document","SVGElement","Element","HTMLElement","HTMLBodyElement","HTMLMediaElement","HTMLFrameSetElement","HTMLFrameElement","HTMLIFrameElement","HTMLMarqueeElement","Worker"]);const u=function mt(){try{const e=ge.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch{}return!1}()?[{target:i,ignoreProperties:["error"]}]:[];ct(i,Fe(i),c&&c.concat(u),Ie(i))}t=t.concat(["XMLHttpRequest","XMLHttpRequestEventTarget","IDBIndex","IDBRequest","IDBOpenDBRequest","IDBDatabase","IDBTransaction","IDBCursor","WebSocket"]);for(let i=0;i<t.length;i++){const u=r[t[i]];u&&u.prototype&&ct(u.prototype,Fe(u.prototype),c)}}(t,r)}),e.__load_patch("customElements",(r,c,t)=>{!function Rt(e,r){const{isBrowser:c,isMix:t}=r.getGlobalObjects();(c||t)&&e.customElements&&"customElements"in e&&r.patchCallbacks(r,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback","formAssociatedCallback","formDisabledCallback","formResetCallback","formStateRestoreCallback"])}(r,t)}),e.__load_patch("XHR",(r,c)=>{!function D(d){const w=d.XMLHttpRequest;if(!w)return;const Z=w.prototype;let U=Z[Ae],K=Z[je];if(!U){const R=d.XMLHttpRequestEventTarget;if(R){const b=R.prototype;U=b[Ae],K=b[je]}}const J="readystatechange",X="scheduled";function k(R){const b=R.data,S=b.target;S[E]=!1,S[y]=!1;const ee=S[u];U||(U=S[Ae],K=S[je]),ee&&K.call(S,J,ee);const W=S[u]=()=>{if(S.readyState===S.DONE)if(!b.aborted&&S[E]&&R.state===X){const _=S[c.__symbol__("loadfalse")];if(0!==S.status&&_&&_.length>0){const n=R.invoke;R.invoke=function(){const o=S[c.__symbol__("loadfalse")];for(let m=0;m<o.length;m++)o[m]===R&&o.splice(m,1);!b.aborted&&R.state===X&&n.call(R)},_.push(R)}else R.invoke()}else!b.aborted&&!1===S[E]&&(S[y]=!0)};return U.call(S,J,W),S[t]||(S[t]=R),z.apply(S,b.args),S[E]=!0,R}function h(){}function H(R){const b=R.data;return b.aborted=!0,O.apply(b.target,b.args)}const V=ue(Z,"open",()=>function(R,b){return R[i]=0==b[2],R[T]=b[1],V.apply(R,b)}),G=j("fetchTaskAborting"),g=j("fetchTaskScheduling"),z=ue(Z,"send",()=>function(R,b){if(!0===c.current[g]||R[i])return z.apply(R,b);{const S={target:R,url:R[T],isPeriodic:!1,args:b,aborted:!1},ee=xe("XMLHttpRequest.send",h,S,k,H);R&&!0===R[y]&&!S.aborted&&ee.state===X&&ee.invoke()}}),O=ue(Z,"abort",()=>function(R,b){const S=function x(R){return R[t]}(R);if(S&&"string"==typeof S.type){if(null==S.cancelFn||S.data&&S.data.aborted)return;S.zone.cancelTask(S)}else if(!0===c.current[G])return O.apply(R,b)})}(r);const t=j("xhrTask"),i=j("xhrSync"),u=j("xhrListener"),E=j("xhrScheduled"),T=j("xhrURL"),y=j("xhrErrorBeforeScheduled")}),e.__load_patch("geolocation",r=>{r.navigator&&r.navigator.geolocation&&function gt(e,r){const c=e.constructor.name;for(let t=0;t<r.length;t++){const i=r[t],u=e[i];if(u){if(!We(Te(e,i)))continue;e[i]=(T=>{const y=function(){return T.apply(this,Ve(arguments,c+"."+i))};return fe(y,T),y})(u)}}}(r.navigator.geolocation,["getCurrentPosition","watchPosition"])}),e.__load_patch("PromiseRejectionEvent",(r,c)=>{function t(i){return function(u){st(r,i).forEach(T=>{const y=r.PromiseRejectionEvent;if(y){const D=new y(i,{promise:u.promise,reason:u.rejection});T.invoke(D)}})}}r.PromiseRejectionEvent&&(c[j("unhandledPromiseRejectionHandler")]=t("unhandledrejection"),c[j("rejectionHandledHandler")]=t("rejectionhandled"))}),e.__load_patch("queueMicrotask",(r,c,t)=>{!function wt(e,r){r.patchMethod(e,"queueMicrotask",c=>function(t,i){Zone.current.scheduleMicroTask("queueMicrotask",i[0])})}(r,t)})}(at)}},te=>{te(te.s=50)}]);
|
|
|
|
"use strict";(self.webpackChunkcoverage_app=self.webpackChunkcoverage_app||[]).push([[792],{241(){let Ge=null,bi=!1,ua=1;const Ze=Symbol("SIGNAL");function B(e){const n=Ge;return Ge=e,n}const go={version:0,lastCleanEpoch:0,dirty:!1,producers:void 0,producersTail:void 0,consumers:void 0,consumersTail:void 0,recomputing:!1,consumerAllowSignalWrites:!1,consumerIsAlwaysLive:!1,kind:"unknown",producerMustRecompute:()=>!1,producerRecomputeValue:()=>{},consumerMarkedDirty:()=>{},consumerOnSignalRead:()=>{}};function da(e){if(bi)throw new Error("");if(null===Ge)return;Ge.consumerOnSignalRead(e);const n=Ge.producersTail;if(void 0!==n&&n.producer===e)return;let t;const i=Ge.recomputing;if(i&&(t=void 0!==n?n.nextProducer:Ge.producers,void 0!==t&&t.producer===e))return Ge.producersTail=t,void(t.lastReadVersion=e.version);const o=e.consumersTail;if(void 0!==o&&o.consumer===Ge&&(!i||function VS(e,n){const t=n.producersTail;if(void 0!==t){let i=n.producers;do{if(i===e)return!0;if(i===t)break;i=i.nextProducer}while(void 0!==i)}return!1}(o,Ge)))return;const r=mo(Ge),s={producer:e,consumer:Ge,nextProducer:t,prevConsumer:o,lastReadVersion:e.version,nextConsumer:void 0};Ge.producersTail=s,void 0!==n?n.nextProducer=s:Ge.producers=s,r&&em(e,s)}function Or(e){if((!mo(e)||e.dirty)&&(e.dirty||e.lastCleanEpoch!==ua)){if(!e.producerMustRecompute(e)&&!ha(e))return void fa(e);e.producerRecomputeValue(e),fa(e)}}function Jp(e){if(void 0===e.consumers)return;const n=bi;bi=!0;try{for(let t=e.consumers;void 0!==t;t=t.nextConsumer){const i=t.consumer;i.dirty||FS(i)}}finally{bi=n}}function Xp(){return!1!==Ge?.consumerAllowSignalWrites}function FS(e){e.dirty=!0,Jp(e),e.consumerMarkedDirty?.(e)}function fa(e){e.dirty=!1,e.lastCleanEpoch=ua}function po(e){return e&&function LS(e){e.producersTail=void 0,e.recomputing=!0}(e),B(e)}function kr(e,n){B(n),e&&function PS(e){e.recomputing=!1;const n=e.producersTail;let t=void 0!==n?n.nextProducer:e.producers;if(void 0!==t){if(mo(e))do{t=Cu(t)}while(void 0!==t);void 0!==n?n.nextProducer=void 0:e.producers=void 0}}(e)}function ha(e){for(let n=e.producers;void 0!==n;n=n.nextProducer){const t=n.producer,i=n.lastReadVersion;if(i!==t.version||(Or(t),i!==t.version))return!0}return!1}function Rr(e){if(mo(e)){let n=e.producers;for(;void 0!==n;)n=Cu(n)}e.producers=void 0,e.producersTail=void 0,e.consumers=void 0,e.consumersTail=void 0}function em(e,n){const t=e.consumersTail,i=mo(e);if(void 0!==t?(n.nextConsumer=t.nextConsumer,t.nextConsumer=n):(n.nextConsumer=void 0,e.consumers=n),n.prevConsumer=t,e.consumersTail=n,!i)for(let o=e.producers;void 0!==o;o=o.nextProducer)em(o.producer,o)}function Cu(e){const n=e.producer,t=e.nextProducer,i=e.nextConsumer,o=e.prevConsumer;if(e.nextConsumer=void 0,e.prevConsumer=void 0,void 0!==i?i.prevConsumer=o:n.consumersTail=o,void 0!==o)o.nextConsumer=i;else if(n.consumers=i,!mo(n)){let r=n.producers;for(;void 0!==r;)r=Cu(r)}return t}function mo(e){return e.consumerIsAlwaysLive||void 0!==e.consumers}function Du(e,n){return Object.is(e,n)}const vo=Symbol("UNSET"),_o=Symbol("COMPUTING"),yn=Symbol("ERRORED"),BS={...go,value:vo,dirty:!0,error:null,equal:Du,kind:"computed",producerMustRecompute:e=>e.value===vo||e.value===_o,producerRecomputeValue(e){if(e.value===_o)throw new Error("");const n=e.value;e.value=_o;const t=po(e);let i,o=!1;try{i=e.computation(),B(null),o=n!==vo&&n!==yn&&i!==yn&&e.equal(n,i)}catch(r){i=yn,e.error=r}finally{kr(e,t)}o?e.value=n:(e.value=i,e.version++)}};let tm=function jS(){throw new Error};function nm(e){tm(e)}function $S(e,n){const t=Object.create(om);t.value=e,void 0!==n&&(t.equal=n);const i=()=>function zS(e){return da(e),e.value}(t);return i[Ze]=t,[i,s=>wu(t,s),s=>function im(e,n){Xp()||nm(e),wu(e,n(e.value))}(t,s)]}function wu(e,n){Xp()||nm(e),e.equal(e.value,n)||(e.value=n,function GS(e){e.version++,function RS(){ua++}(),Jp(e)}(e))}const om={...go,equal:Du,value:void 0,kind:"signal"},WS={...go,consumerIsAlwaysLive:!0,consumerAllowSignalWrites:!0,dirty:!0,kind:"effect"};function Be(e){return"function"==typeof e}function rm(e){const t=e(i=>{Error.call(i),i.stack=(new Error).stack});return t.prototype=Object.create(Error.prototype),t.prototype.constructor=t,t}const Eu=rm(e=>function(t){e(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((i,o)=>`${o+1}) ${i.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t});function pa(e,n){if(e){const t=e.indexOf(n);0<=t&&e.splice(t,1)}}class Nt{constructor(n){this.initialTeardown=n,this.closed=!1,this._parentage=null,this._finalizers=null}unsubscribe(){let n;if(!this.closed){this.closed=!0;const{_parentage:t}=this;if(t)if(this._parentage=null,Array.isArray(t))for(const r of t)r.remove(this);else t.remove(this);const{initialTeardown:i}=this;if(Be(i))try{i()}catch(r){n=r instanceof Eu?r.errors:[r]}const{_finalizers:o}=this;if(o){this._finalizers=null;for(const r of o)try{lm(r)}catch(s){n=n??[],s instanceof Eu?n=[...n,...s.errors]:n.push(s)}}if(n)throw new Eu(n)}}add(n){var t;if(n&&n!==this)if(this.closed)lm(n);else{if(n instanceof Nt){if(n.closed||n._hasParent(this))return;n._addParent(this)}(this._finalizers=null!==(t=this._finalizers)&&void 0!==t?t:[]).push(n)}}_hasParent(n){const{_parentage:t}=this;return t===n||Array.isArray(t)&&t.includes(n)}_addParent(n){const{_parentage:t}=this;this._parentage=Array.isArray(t)?(t.push(n),t):t?[t,n]:n}_removeParent(n){const{_parentage:t}=this;t===n?this._parentage=null:Array.isArray(t)&&pa(t,n)}remove(n){const{_finalizers:t}=this;t&&pa(t,n),n instanceof Nt&&n._removeParent(this)}}Nt.EMPTY=(()=>{const e=new Nt;return e.closed=!0,e})();const sm=Nt.EMPTY;function am(e){return e instanceof Nt||e&&"closed"in e&&Be(e.remove)&&Be(e.add)&&Be(e.unsubscribe)}function lm(e){Be(e)?e():e.unsubscribe()}const Di={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},ma={setTimeout(e,n,...t){const{delegate:i}=ma;return i?.setTimeout?i.setTimeout(e,n,...t):setTimeout(e,n,...t)},clearTimeout(e){const{delegate:n}=ma;return(n?.clearTimeout||clearTimeout)(e)},delegate:void 0};function cm(e){ma.setTimeout(()=>{const{onUnhandledError:n}=Di;if(!n)throw e;n(e)})}function um(){}const ZS=Mu("C",void 0,void 0);function Mu(e,n,t){return{kind:e,value:n,error:t}}let wi=null;function va(e){if(Di.useDeprecatedSynchronousErrorHandling){const n=!wi;if(n&&(wi={errorThrown:!1,error:null}),e(),n){const{errorThrown:t,error:i}=wi;if(wi=null,t)throw i}}else e()}class Iu extends Nt{constructor(n){super(),this.isStopped=!1,n?(this.destination=n,am(n)&&n.add(this)):this.destination=tT}static create(n,t,i){return new Tu(n,t,i)}next(n){this.isStopped?Au(function YS(e){return Mu("N",e,void 0)}(n),this):this._next(n)}error(n){this.isStopped?Au(function QS(e){return Mu("E",void 0,e)}(n),this):(this.isStopped=!0,this._error(n))}complete(){this.isStopped?Au(ZS,this):(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe(),this.destination=null)}_next(n){this.destination.next(n)}_error(n){try{this.destination.error(n)}finally{this.unsubscribe()}}_complete(){try{this.destination.complete()}finally{this.unsubscribe()}}}const JS=Function.prototype.bind;function Su(e,n){return JS.call(e,n)}class XS{constructor(n){this.partialObserver=n}next(n){const{partialObserver:t}=this;if(t.next)try{t.next(n)}catch(i){_a(i)}}error(n){const{partialObserver:t}=this;if(t.error)try{t.error(n)}catch(i){_a(i)}else _a(n)}complete(){const{partialObserver:n}=this;if(n.complete)try{n.complete()}catch(t){_a(t)}}}class Tu extends Iu{constructor(n,t,i){let o;if(super(),Be(n)||!n)o={next:n??void 0,error:t??void 0,complete:i??void 0};else{let r;this&&Di.useDeprecatedNextContext?(r=Object.create(n),r.unsubscribe=()=>this.unsubscribe(),o={next:n.next&&Su(n.next,r),error:n.error&&Su(n.error,r),complete:n.complete&&Su(n.complete,r)}):o=n}this.destination=new XS(o)}}function _a(e){Di.useDeprecatedSynchronousErrorHandling?function KS(e){Di.useDeprecatedSynchronousErrorHandling&&wi&&(wi.errorThrown=!0,wi.error=e)}(e):cm(e)}function Au(e,n){const{onStoppedNotification:t}=Di;t&&ma.setTimeout(()=>t(e,n))}const tT={closed:!0,next:um,error:function eT(e){throw e},complete:um},Nu="function"==typeof Symbol&&Symbol.observable||"@@observable";function xu(e){return e}let _t=(()=>{class e{constructor(t){t&&(this._subscribe=t)}lift(t){const i=new e;return i.source=this,i.operator=t,i}subscribe(t,i,o){const r=function iT(e){return e&&e instanceof Iu||function nT(e){return e&&Be(e.next)&&Be(e.error)&&Be(e.complete)}(e)&&am(e)}(t)?t:new Tu(t,i,o);return va(()=>{const{operator:s,source:a}=this;r.add(s?s.call(r,a):a?this._subscribe(r):this._trySubscribe(r))}),r}_trySubscribe(t){try{return this._subscribe(t)}catch(i){t.error(i)}}forEach(t,i){return new(i=fm(i))((o,r)=>{const s=new Tu({next:a=>{try{t(a)}catch(l){r(l),s.unsubscribe()}},error:r,complete:o});this.subscribe(s)})}_subscribe(t){var i;return null===(i=this.source)||void 0===i?void 0:i.subscribe(t)}[Nu](){return this}pipe(...t){return function dm(e){return 0===e.length?xu:1===e.length?e[0]:function(t){return e.reduce((i,o)=>o(i),t)}}(t)(this)}toPromise(t){return new(t=fm(t))((i,o)=>{let r;this.subscribe(s=>r=s,s=>o(s),()=>i(r))})}}return e.create=n=>new e(n),e})();function fm(e){var n;return null!==(n=e??Di.Promise)&&void 0!==n?n:Promise}const oT=rm(e=>function(){e(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"});let Ou,ln=(()=>{class e extends _t{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(t){const i=new hm(this,this);return i.operator=t,i}_throwIfClosed(){if(this.closed)throw new oT}next(t){va(()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(const i of this.currentObservers)i.next(t)}})}error(t){va(()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=t;const{observers:i}=this;for(;i.length;)i.shift().error(t)}})}complete(){va(()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;const{observers:t}=this;for(;t.length;)t.shift().complete()}})}unsubscribe(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null}get observed(){var t;return(null===(t=this.observers)||void 0===t?void 0:t.length)>0}_trySubscribe(t){return this._throwIfClosed(),super._trySubscribe(t)}_subscribe(t){return this._throwIfClosed(),this._checkFinalizedStatuses(t),this._innerSubscribe(t)}_innerSubscribe(t){const{hasError:i,isStopped:o,observers:r}=this;return i||o?sm:(this.currentObservers=null,r.push(t),new Nt(()=>{this.currentObservers=null,pa(r,t)}))}_checkFinalizedStatuses(t){const{hasError:i,thrownError:o,isStopped:r}=this;i?t.error(o):r&&t.complete()}asObservable(){const t=new _t;return t.source=this,t}}return e.create=(n,t)=>new hm(n,t),e})();class hm extends ln{constructor(n,t){super(),this.destination=n,this.source=t}next(n){var t,i;null===(i=null===(t=this.destination)||void 0===t?void 0:t.next)||void 0===i||i.call(t,n)}error(n){var t,i;null===(i=null===(t=this.destination)||void 0===t?void 0:t.error)||void 0===i||i.call(t,n)}complete(){var n,t;null===(t=null===(n=this.destination)||void 0===n?void 0:n.complete)||void 0===t||t.call(n)}_subscribe(n){var t,i;return null!==(i=null===(t=this.source)||void 0===t?void 0:t.subscribe(n))&&void 0!==i?i:sm}}class rT extends ln{constructor(n){super(),this._value=n}get value(){return this.getValue()}_subscribe(n){const t=super._subscribe(n);return!t.closed&&n.next(this._value),t}getValue(){const{hasError:n,thrownError:t,_value:i}=this;if(n)throw t;return this._throwIfClosed(),i}next(n){super.next(this._value=n)}}function ku(){return Ou}function Un(e){const n=Ou;return Ou=e,n}const sT=Symbol("NotFound");function Ru(e){return e===sT||"\u0275NotFound"===e?.name}Error;const vm="https://angular.dev/best-practices/security#preventing-cross-site-scripting-xss";class M extends Error{code;constructor(n,t){super(function cn(e,n){return`${function aT(e){return`NG0${Math.abs(e)}`}(e)}${n?": "+n:""}`}(n,t)),this.code=n}}const Te=globalThis;function ae(e){for(let n in e)if(e[n]===ae)return n;throw Error("")}function lT(e,n){for(const t in n)n.hasOwnProperty(t)&&!e.hasOwnProperty(t)&&(e[t]=n[t])}function $n(e){if("string"==typeof e)return e;if(Array.isArray(e))return`[${e.map($n).join(", ")}]`;if(null==e)return""+e;const n=e.overriddenName||e.name;if(n)return`${n}`;const t=e.toString();if(null==t)return""+t;const i=t.indexOf("\n");return i>=0?t.slice(0,i):t}function Lu(e,n){return e?n?`${e} ${n}`:e:n||""}const cT=ae({__forward_ref__:ae});function he(e){return e.__forward_ref__=he,e}function X(e){return ya(e)?e():e}function ya(e){return"function"==typeof e&&e.hasOwnProperty(cT)&&e.__forward_ref__===he}function ee(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function Cn(e){return{providers:e.providers||[],imports:e.imports||[]}}function Ca(e){return function pT(e,n){return e.hasOwnProperty(n)&&e[n]||null}(e,Da)}function ba(e){return e&&e.hasOwnProperty(Pu)?e[Pu]:null}const Da=ae({\u0275prov:ae}),Pu=ae({\u0275inj:ae});class R{_desc;ngMetadataName="InjectionToken";\u0275prov;constructor(n,t){this._desc=n,this.\u0275prov=void 0,"number"==typeof t?this.__NG_ELEMENT_ID__=t:void 0!==t&&(this.\u0275prov=ee({token:this,providedIn:t.providedIn||"root",factory:t.factory}))}get multi(){return this}toString(){return`InjectionToken ${this._desc}`}}function Hu(e){return e&&!!e.\u0275providers}const _m=ae({\u0275cmp:ae}),bT=ae({\u0275dir:ae}),DT=ae({\u0275pipe:ae}),ym=ae({\u0275mod:ae}),Ii=ae({\u0275fac:ae}),Fr=ae({__NG_ELEMENT_ID__:ae}),Cm=ae({__NG_ENV_ID__:ae});function le(e){return Ea(e),e[_m]||null}function ft(e){return Ea(e),e[bT]||null}function Yt(e){return Ea(e),e[DT]||null}function Ea(e,n){if(null==e)throw new M(-919,!1)}function Q(e){return"string"==typeof e?e:null==e?"":String(e)}const ju=ae({ngErrorCode:ae}),bm=ae({ngErrorMessage:ae}),Pr=ae({ngTokenPath:ae});function Uu(e,n){return Dm("",-200,n)}function $u(e,n){throw new M(-201,!1)}function Dm(e,n,t){const i=new M(n,e);return i[ju]=n,i[bm]=e,t&&(i[Pr]=t),i}let zu;function wm(){return zu}function yt(e){const n=zu;return zu=e,n}function Em(e,n,t){const i=Ca(e);return i&&"root"==i.providedIn?void 0===i.value?i.value=i.factory():i.value:8&t?null:void 0!==n?n:void $u()}const Si={};class TT{injector;constructor(n){this.injector=n}retrieve(n,t){const i=Vr(t)||0;try{return this.injector.get(n,8&i?null:Si,i)}catch(o){if(Ru(o))return o;throw o}}}function AT(e,n=0){const t=ku();if(void 0===t)throw new M(-203,!1);if(null===t)return Em(e,void 0,n);{const i=function NT(e){return{optional:!!(8&e),host:!!(1&e),self:!!(2&e),skipSelf:!!(4&e)}}(n),o=t.retrieve(e,i);if(Ru(o)){if(i.optional)return null;throw o}return o}}function re(e,n=0){return(wm()||AT)(X(e),n)}function k(e,n){return re(e,Vr(n))}function Vr(e){return typeof e>"u"||"number"==typeof e?e:0|(e.optional&&8)|(e.host&&1)|(e.self&&2)|(e.skipSelf&&4)}function Wu(e){const n=[];for(let t=0;t<e.length;t++){const i=X(e[t]);if(Array.isArray(i)){if(0===i.length)throw new M(900,!1);let o,r=0;for(let s=0;s<i.length;s++){const a=i[s],l=xT(a);"number"==typeof l?-1===l?o=a.token:r|=l:o=a}n.push(re(o,r))}else n.push(re(i))}return n}function xT(e){return e.__NG_DI_FLAG__}function Ti(e,n){return e.hasOwnProperty(Ii)?e[Ii]:null}function bo(e,n){e.forEach(t=>Array.isArray(t)?bo(t,n):n(t))}function Im(e,n,t){n>=e.length?e.push(t):e.splice(n,0,t)}function Ma(e,n){return n>=e.length-1?e.pop():e.splice(n,1)[0]}function Sa(e,n,t){let i=Br(e,n);return i>=0?e[1|i]=t:(i=~i,function Tm(e,n,t,i){let o=e.length;if(o==n)e.push(t,i);else if(1===o)e.push(i,e[0]),e[0]=t;else{for(o--,e.push(e[o-1],e[o]);o>n;)e[o]=e[o-2],o--;e[n]=t,e[n+1]=i}}(e,i,n,t)),i}function qu(e,n){const t=Br(e,n);if(t>=0)return e[1|t]}function Br(e,n){return function kT(e,n,t){let i=0,o=e.length>>t;for(;o!==i;){const r=i+(o-i>>1),s=e[r<<t];if(n===s)return r<<t;s>n?o=r:i=r+1}return~(o<<t)}(e,n,1)}const dn={},ye=[],zn=new R(""),Am=new R("",-1),Zu=new R("");class Ta{get(n,t=Si){if(t===Si){const o=Dm("",-201);throw o.name="\u0275NotFound",o}return t}}function FT(...e){return{\u0275providers:Yu(0,e),\u0275fromNgModule:!0}}function Yu(e,...n){const t=[],i=new Set;let o;const r=s=>{t.push(s)};return bo(n,s=>{const a=s;Aa(a,r,[],i)&&(o||=[],o.push(a))}),void 0!==o&&Nm(o,r),t}function Nm(e,n){for(let t=0;t<e.length;t++){const{ngModule:i,providers:o}=e[t];Ku(o,r=>{n(r,i)})}}function Aa(e,n,t,i){if(!(e=X(e)))return!1;let o=null,r=ba(e);const s=!r&&le(e);if(r||s){if(s&&!s.standalone)return!1;o=e}else{const l=e.ngModule;if(r=ba(l),!r)return!1;o=l}const a=i.has(o);if(s){if(a)return!1;if(i.add(o),s.dependencies){const l="function"==typeof s.dependencies?s.dependencies():s.dependencies;for(const c of l)Aa(c,n,t,i)}}else{if(!r)return!1;{if(null!=r.imports&&!a){let c;i.add(o),bo(r.imports,u=>{Aa(u,n,t,i)&&(c||=[],c.push(u))}),void 0!==c&&Nm(c,n)}if(!a){const c=Ti(o)||(()=>new o);n({provide:o,useFactory:c,deps:ye},o),n({provide:Zu,useValue:o,multi:!0},o),n({provide:zn,useValue:()=>re(o),multi:!0},o)}const l=r.providers;if(null!=l&&!a){const c=e;Ku(l,u=>{n(u,c)})}}}return o!==e&&void 0!==e.providers}function Ku(e,n){for(let t of e)Hu(t)&&(t=t.\u0275providers),Array.isArray(t)?Ku(t,n):n(t)}const LT=ae({provide:String,useValue:ae});function Ju(e){return null!==e&&"object"==typeof e&< in e}function bn(e){return"function"==typeof e}const Xu=new R(""),Na={},Rm={};let ed;function td(){return void 0===ed&&(ed=new Ta),ed}class jt{}class Ai extends jt{parent;source;scopes;records=new Map;_ngOnDestroyHooks=new Set;_onDestroyHooks=[];get destroyed(){return this._destroyed}_destroyed=!1;injectorDefTypes;constructor(n,t,i,o){super(),this.parent=t,this.source=i,this.scopes=o,id(n,s=>this.processProvider(s)),this.records.set(Am,Do(void 0,this)),o.has("environment")&&this.records.set(jt,Do(void 0,this));const r=this.records.get(Xu);null!=r&&"string"==typeof r.value&&this.scopes.add(r.value),this.injectorDefTypes=new Set(this.get(Zu,ye,{self:!0}))}retrieve(n,t){const i=Vr(t)||0;try{return this.get(n,Si,i)}catch(o){if(Ru(o))return o;throw o}}destroy(){jr(this),this._destroyed=!0;const n=B(null);try{for(const i of this._ngOnDestroyHooks)i.ngOnDestroy();const t=this._onDestroyHooks;this._onDestroyHooks=[];for(const i of t)i()}finally{this.records.clear(),this._ngOnDestroyHooks.clear(),this.injectorDefTypes.clear(),B(n)}}onDestroy(n){return jr(this),this._onDestroyHooks.push(n),()=>this.removeOnDestroy(n)}runInContext(n){jr(this);const t=Un(this),i=yt(void 0);try{return n()}finally{Un(t),yt(i)}}get(n,t=Si,i){if(jr(this),n.hasOwnProperty(Cm))return n[Cm](this);const o=Vr(i),s=Un(this),a=yt(void 0);try{if(!(4&o)){let c=this.records.get(n);if(void 0===c){const u=function jT(e){return"function"==typeof e||"object"==typeof e&&"InjectionToken"===e.ngMetadataName}(n)&&Ca(n);c=u&&this.injectableDefInScope(u)?Do(nd(n),Na):null,this.records.set(n,c)}if(null!=c)return this.hydrate(n,c,o)}return(2&o?td():this.parent).get(n,t=8&o&&t===Si?null:t)}catch(l){const c=function IT(e){return e[ju]}(l);throw-200===c||-201===c?new M(c,null):l}finally{yt(a),Un(s)}}resolveInjectorInitializers(){const n=B(null),t=Un(this),i=yt(void 0);try{const r=this.get(zn,ye,{self:!0});for(const s of r)s()}finally{Un(t),yt(i),B(n)}}toString(){return"R3Injector[...]"}processProvider(n){let t=bn(n=X(n))?n:X(n&&n.provide);const i=function VT(e){return Ju(e)?Do(void 0,e.useValue):Do(Fm(e),Na)}(n);if(!bn(n)&&!0===n.multi){let o=this.records.get(t);o||(o=Do(void 0,Na,!0),o.factory=()=>Wu(o.multi),this.records.set(t,o)),t=n,o.multi.push(n)}this.records.set(t,i)}hydrate(n,t,i){const o=B(null);try{if(t.value===Rm)throw Uu();return t.value===Na&&(t.value=Rm,t.value=t.factory(void 0,i)),"object"==typeof t.value&&t.value&&function BT(e){return null!==e&&"object"==typeof e&&"function"==typeof e.ngOnDestroy}(t.value)&&this._ngOnDestroyHooks.add(t.value),t.value}finally{B(o)}}injectableDefInScope(n){if(!n.providedIn)return!1;const t=X(n.providedIn);return"string"==typeof t?"any"===t||this.scopes.has(t):this.injectorDefTypes.has(t)}removeOnDestroy(n){const t=this._onDestroyHooks.indexOf(n);-1!==t&&this._onDestroyHooks.splice(t,1)}}function nd(e){const n=Ca(e),t=null!==n?n.factory:Ti(e);if(null!==t)return t;if(e instanceof R)throw new M(-204,!1);if(e instanceof Function)return function PT(e){if(e.length>0)throw new M(-204,!1);const t=function mT(e){return(e?.[Da]??null)||null}(e);return null!==t?()=>t.factory(e):()=>new e}(e);throw new M(-204,!1)}function Fm(e,n,t){let i;if(bn(e)){const o=X(e);return Ti(o)||nd(o)}if(Ju(e))i=()=>X(e.useValue);else if(function Om(e){return!(!e||!e.useFactory)}(e))i=()=>e.useFactory(...Wu(e.deps||[]));else if(function xm(e){return!(!e||!e.useExisting)}(e))i=(o,r)=>re(X(e.useExisting),void 0!==r&&8&r?8:void 0);else{const o=X(e&&(e.useClass||e.provide));if(!function HT(e){return!!e.deps}(e))return Ti(o)||nd(o);i=()=>new o(...Wu(e.deps))}return i}function jr(e){if(e.destroyed)throw new M(-205,!1)}function Do(e,n,t=!1){return{factory:e,value:n,multi:t?[]:void 0}}function id(e,n){for(const t of e)Array.isArray(t)?id(t,n):t&&Hu(t)?id(t.\u0275providers,n):n(t)}function Lm(e,n){let t;e instanceof Ai?(jr(e),t=e):t=new TT(e);const o=Un(t),r=yt(void 0);try{return n()}finally{Un(o),yt(r)}}function od(){return void 0!==wm()||null!=ku()}const Y=11,j=27;function Se(e){return Array.isArray(e)&&"object"==typeof e[1]}function ht(e){return Array.isArray(e)&&!0===e[1]}function Vm(e){return!!(4&e.flags)}function fn(e){return e.componentOffset>-1}function So(e){return!(1&~e.flags)}function Jt(e){return!!e.template}function qn(e){return!!(512&e[2])}function Mn(e){return!(256&~e[2])}function Ye(e){for(;Array.isArray(e);)e=e[0];return e}function To(e,n){return Ye(n[e])}function Pe(e,n){return Ye(n[e.index])}function Ao(e,n){return e.data[n]}function gt(e,n){const t=n[e];return Se(t)?t:t[0]}function ld(e){return!(128&~e[2])}function at(e,n){return null==n?null:e[n]}function zm(e){e[17]=0}function Gm(e){1024&e[2]||(e[2]|=1024,ld(e)&&No(e))}function Ra(e){return!!(9216&e[2]||e[24]?.dirty)}function cd(e){e[10].changeDetectionScheduler?.notify(8),64&e[2]&&(e[2]|=1024),Ra(e)&&No(e)}function No(e){e[10].changeDetectionScheduler?.notify(0);let n=In(e);for(;null!==n&&!(8192&n[2])&&(n[2]|=8192,ld(n));)n=In(n)}function Fa(e,n){if(Mn(e))throw new M(911,!1);null===e[21]&&(e[21]=[]),e[21].push(n)}function In(e){const n=e[3];return ht(n)?n[3]:n}function qm(e){return e[7]??=[]}function Zm(e){return e.cleanup??=[]}const q={lFrame:cv(null),bindingsEnabled:!0,skipHydrationRootTNode:null};let fd=!1;function hd(){return q.bindingsEnabled}function w(){return q.lFrame.lView}function K(){return q.lFrame.tView}function U(e){return q.lFrame.contextLView=e,e[8]}function $(e){return q.lFrame.contextLView=null,e}function Z(){let e=Xm();for(;null!==e&&64===e.type;)e=e.parent;return e}function Xm(){return q.lFrame.currentTNode}function Sn(e,n){const t=q.lFrame;t.currentTNode=e,t.isParent=n}function ev(){return q.lFrame.isParent}function ov(){return fd}function La(e){const n=fd;return fd=e,n}function lt(){const e=q.lFrame;let n=e.bindingRootIndex;return-1===n&&(n=e.bindingRootIndex=e.tView.bindingStartIndex),n}function Ct(){return q.lFrame.bindingIndex++}function An(e){const n=q.lFrame,t=n.bindingIndex;return n.bindingIndex=n.bindingIndex+e,t}function e1(e,n){const t=q.lFrame;t.bindingIndex=t.bindingRootIndex=e,gd(n)}function gd(e){q.lFrame.currentDirectiveIndex=e}function md(){return q.lFrame.currentQueryIndex}function Pa(e){q.lFrame.currentQueryIndex=e}function n1(e){const n=e[1];return 2===n.type?n.declTNode:1===n.type?e[5]:null}function av(e,n,t){if(4&t){let o=n,r=e;for(;!(o=o.parent,null!==o||1&t||(o=n1(r),null===o||(r=r[14],10&o.type))););if(null===o)return!1;n=o,e=r}const i=q.lFrame=lv();return i.currentTNode=n,i.lView=e,!0}function vd(e){const n=lv(),t=e[1];q.lFrame=n,n.currentTNode=t.firstChild,n.lView=e,n.tView=t,n.contextLView=e,n.bindingIndex=t.bindingStartIndex,n.inI18n=!1}function lv(){const e=q.lFrame,n=null===e?null:e.child;return null===n?cv(e):n}function cv(e){const n={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null,inI18n:!1};return null!==e&&(e.child=n),n}function uv(){const e=q.lFrame;return q.lFrame=e.parent,e.currentTNode=null,e.lView=null,e}const dv=uv;function _d(){const e=uv();e.isParent=!0,e.tView=null,e.selectedIndex=-1,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function Je(){return q.lFrame.selectedIndex}function Fi(e){q.lFrame.selectedIndex=e}function Xt(){const e=q.lFrame;return Ao(e.tView,e.selectedIndex)}let hv=!0;function Va(){return hv}function zr(e){hv=e}function gv(e,n=null,t=null,i){const o=pv(e,n,t);return o.resolveInjectorInitializers(),o}function pv(e,n=null,t=null,i,o=new Set){const r=[t||ye,FT(e)];return new Ai(r,n||td(),null,o)}class Rt{static THROW_IF_NOT_FOUND=Si;static NULL=new Ta;static create(n,t){if(Array.isArray(n))return gv({name:""},t,n);{const i=n.name??"";return gv({name:i},n.parent,n.providers)}}static \u0275prov=ee({token:Rt,providedIn:"any",factory:()=>re(Am)});static __NG_ELEMENT_ID__=-1}const en=new R("");let Nn=(()=>class e{static __NG_ELEMENT_ID__=l1;static __NG_ENV_ID__=t=>t})();class mv extends Nn{_lView;constructor(n){super(),this._lView=n}get destroyed(){return Mn(this._lView)}onDestroy(n){const t=this._lView;return Fa(t,n),()=>function ud(e,n){if(null===e[21])return;const t=e[21].indexOf(n);-1!==t&&e[21].splice(t,1)}(t,n)}}function l1(){return new mv(w())}const vv=!1,c1=new R("");let Li=(()=>{class e{taskId=0;pendingTasks=new Set;destroyed=!1;pendingTask=new rT(!1);debugTaskTracker=k(c1,{optional:!0});get hasPendingTasks(){return!this.destroyed&&this.pendingTask.value}get hasPendingTasksObservable(){return this.destroyed?new _t(t=>{t.next(!1),t.complete()}):this.pendingTask}add(){!this.hasPendingTasks&&!this.destroyed&&this.pendingTask.next(!0);const t=this.taskId++;return this.pendingTasks.add(t),this.debugTaskTracker?.add(t),t}has(t){return this.pendingTasks.has(t)}remove(t){this.pendingTasks.delete(t),this.debugTaskTracker?.remove(t),0===this.pendingTasks.size&&this.hasPendingTasks&&this.pendingTask.next(!1)}ngOnDestroy(){this.pendingTasks.clear(),this.hasPendingTasks&&this.pendingTask.next(!1),this.destroyed=!0,this.pendingTask.unsubscribe()}static \u0275prov=ee({token:e,providedIn:"root",factory:()=>new e})}return e})();const ve=class u1 extends ln{__isAsync;destroyRef=void 0;pendingTasks=void 0;constructor(n=!1){super(),this.__isAsync=n,od()&&(this.destroyRef=k(Nn,{optional:!0})??void 0,this.pendingTasks=k(Li,{optional:!0})??void 0)}emit(n){const t=B(null);try{super.next(n)}finally{B(t)}}subscribe(n,t,i){let o=n,r=t||(()=>null),s=i;if(n&&"object"==typeof n){const l=n;o=l.next?.bind(l),r=l.error?.bind(l),s=l.complete?.bind(l)}this.__isAsync&&(r=this.wrapInTimeout(r),o&&(o=this.wrapInTimeout(o)),s&&(s=this.wrapInTimeout(s)));const a=super.subscribe({next:o,error:r,complete:s});return n instanceof Nt&&n.add(a),a}wrapInTimeout(n){return t=>{const i=this.pendingTasks?.add();setTimeout(()=>{try{n(t)}finally{void 0!==i&&this.pendingTasks?.remove(i)}})}}};function Ha(...e){}function _v(e){let n,t;function i(){e=Ha;try{void 0!==t&&"function"==typeof cancelAnimationFrame&&cancelAnimationFrame(t),void 0!==n&&clearTimeout(n)}catch{}}return n=setTimeout(()=>{e(),i()}),"function"==typeof requestAnimationFrame&&(t=requestAnimationFrame(()=>{e(),i()})),()=>i()}function d1(e){return queueMicrotask(()=>e()),()=>{e=Ha}}const yd="isAngularZone",Ba=yd+"_ID";let f1=0;class ue{hasPendingMacrotasks=!1;hasPendingMicrotasks=!1;isStable=!0;onUnstable=new ve(!1);onMicrotaskEmpty=new ve(!1);onStable=new ve(!1);onError=new ve(!1);constructor(n){const{enableLongStackTrace:t=!1,shouldCoalesceEventChangeDetection:i=!1,shouldCoalesceRunChangeDetection:o=!1,scheduleInRootZone:r=vv}=n;if(typeof Zone>"u")throw new M(908,!1);Zone.assertZonePatched();const s=this;s._nesting=0,s._outer=s._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(s._inner=s._inner.fork(new Zone.TaskTrackingZoneSpec)),t&&Zone.longStackTraceZoneSpec&&(s._inner=s._inner.fork(Zone.longStackTraceZoneSpec)),s.shouldCoalesceEventChangeDetection=!o&&i,s.shouldCoalesceRunChangeDetection=o,s.callbackScheduled=!1,s.scheduleInRootZone=r,function p1(e){const n=()=>{!function g1(e){function n(){_v(()=>{e.callbackScheduled=!1,bd(e),e.isCheckStableRunning=!0,Cd(e),e.isCheckStableRunning=!1})}e.isCheckStableRunning||e.callbackScheduled||(e.callbackScheduled=!0,e.scheduleInRootZone?Zone.root.run(()=>{n()}):e._outer.run(()=>{n()}),bd(e))}(e)},t=f1++;e._inner=e._inner.fork({name:"angular",properties:{[yd]:!0,[Ba]:t,[Ba+t]:!0},onInvokeTask:(i,o,r,s,a,l)=>{if(function v1(e){return bv(e,"__ignore_ng_zone__")}(l))return i.invokeTask(r,s,a,l);try{return yv(e),i.invokeTask(r,s,a,l)}finally{(e.shouldCoalesceEventChangeDetection&&"eventTask"===s.type||e.shouldCoalesceRunChangeDetection)&&n(),Cv(e)}},onInvoke:(i,o,r,s,a,l,c)=>{try{return yv(e),i.invoke(r,s,a,l,c)}finally{e.shouldCoalesceRunChangeDetection&&!e.callbackScheduled&&!function _1(e){return bv(e,"__scheduler_tick__")}(l)&&n(),Cv(e)}},onHasTask:(i,o,r,s)=>{i.hasTask(r,s),o===r&&("microTask"==s.change?(e._hasPendingMicrotasks=s.microTask,bd(e),Cd(e)):"macroTask"==s.change&&(e.hasPendingMacrotasks=s.macroTask))},onHandleError:(i,o,r,s)=>(i.handleError(r,s),e.runOutsideAngular(()=>e.onError.emit(s)),!1)})}(s)}static isInAngularZone(){return typeof Zone<"u"&&!0===Zone.current.get(yd)}static assertInAngularZone(){if(!ue.isInAngularZone())throw new M(909,!1)}static assertNotInAngularZone(){if(ue.isInAngularZone())throw new M(909,!1)}run(n,t,i){return this._inner.run(n,t,i)}runTask(n,t,i,o){const r=this._inner,s=r.scheduleEventTask("NgZoneEvent: "+o,n,h1,Ha,Ha);try{return r.runTask(s,t,i)}finally{r.cancelTask(s)}}runGuarded(n,t,i){return this._inner.runGuarded(n,t,i)}runOutsideAngular(n){return this._outer.run(n)}}const h1={};function Cd(e){if(0==e._nesting&&!e.hasPendingMicrotasks&&!e.isStable)try{e._nesting++,e.onMicrotaskEmpty.emit(null)}finally{if(e._nesting--,!e.hasPendingMicrotasks)try{e.runOutsideAngular(()=>e.onStable.emit(null))}finally{e.isStable=!0}}}function bd(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||(e.shouldCoalesceEventChangeDetection||e.shouldCoalesceRunChangeDetection)&&!0===e.callbackScheduled)}function yv(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function Cv(e){e._nesting--,Cd(e)}class m1{hasPendingMicrotasks=!1;hasPendingMacrotasks=!1;isStable=!0;onUnstable=new ve;onMicrotaskEmpty=new ve;onStable=new ve;onError=new ve;run(n,t,i){return n.apply(t,i)}runGuarded(n,t,i){return n.apply(t,i)}runOutsideAngular(n){return n()}runTask(n,t,i,o){return n.apply(t,i)}}function bv(e,n){return!(!Array.isArray(e)||1!==e.length)&&!0===e[0]?.data?.[n]}class Gr{_console=console;handleError(n){this._console.error("ERROR",n)}}const Zn=new R("",{factory:()=>{const e=k(ue),n=k(jt);let t;return i=>{e.runOutsideAngular(()=>{n.destroyed&&!t?setTimeout(()=>{throw i}):(t??=n.get(Gr),t.handleError(i))})}}}),y1={provide:zn,useValue:()=>{k(Gr,{optional:!0})},multi:!0};function Qn(e,n){const[t,i,o]=$S(e,n?.equal),r=t;return r.set=i,r.update=o,r.asReadonly=Dd.bind(r),r}function Dd(){const e=this[Ze];if(void 0===e.readonlyFn){const n=()=>this();n[Ze]=e,e.readonlyFn=n}return e.readonlyFn}let wd=(()=>class e{view;node;constructor(t,i){this.view=t,this.node=i}static __NG_ELEMENT_ID__=b1})();function b1(){return new wd(w(),Z())}class Oo{}const ja=new R("",{factory:()=>!0}),Dv=new R("");let Ev=(()=>{class e{static \u0275prov=ee({token:e,providedIn:"root",factory:()=>new D1})}return e})();class D1{dirtyEffectCount=0;queues=new Map;add(n){this.enqueue(n),this.schedule(n)}schedule(n){n.dirty&&this.dirtyEffectCount++}remove(n){const i=this.queues.get(n.zone);i.has(n)&&(i.delete(n),n.dirty&&this.dirtyEffectCount--)}enqueue(n){const t=n.zone;this.queues.has(t)||this.queues.set(t,new Set);const i=this.queues.get(t);i.has(n)||i.add(n)}flush(){for(;this.dirtyEffectCount>0;){let n=!1;for(const[t,i]of this.queues)n||=null===t?this.flushQueue(i):t.run(()=>this.flushQueue(i));n||(this.dirtyEffectCount=0)}}flushQueue(n){let t=!1;for(const i of n)i.dirty&&(this.dirtyEffectCount--,t=!0,i.run());return t}}let Sv=null;function Wr(){return Sv}class A1{}function Pi(e){return n=>{if(function fA(e){return Be(e?.lift)}(n))return n.lift(function(t){try{return e(t,this)}catch(i){this.error(i)}});throw new TypeError("Unable to lift unknown Observable type")}}function Kn(e,n,t,i,o){return new hA(e,n,t,i,o)}class hA extends Iu{constructor(n,t,i,o,r,s){super(n),this.onFinalize=r,this.shouldUnsubscribe=s,this._next=t?function(a){try{t(a)}catch(l){n.error(l)}}:super._next,this._error=o?function(a){try{o(a)}catch(l){n.error(l)}finally{this.unsubscribe()}}:super._error,this._complete=i?function(){try{i()}catch(a){n.error(a)}finally{this.unsubscribe()}}:super._complete}unsubscribe(){var n;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){const{closed:t}=this;super.unsubscribe(),!t&&(null===(n=this.onFinalize)||void 0===n||n.call(this))}}}function Td(e,n){return Pi((t,i)=>{let o=0;t.subscribe(Kn(i,r=>{i.next(e.call(n,r,o++))}))})}function xn(e){return{toString:e}.toString()}function Jv(e,n,t,i){null!==n?n.applyValueToInputSignal(n,i):e[t]=i}class qA{previousValue;currentValue;firstChange;constructor(n,t,i){this.previousValue=n,this.currentValue=t,this.firstChange=i}isFirstChange(){return this.firstChange}}const On=(()=>{const e=()=>Xv;return e.ngInherit=!0,e})();function Xv(e){return e.type.prototype.ngOnChanges&&(e.setInput=QA),ZA}function ZA(){const e=t_(this),n=e?.current;if(n){const t=e.previous;if(t===dn)e.previous=n;else for(let i in n)t[i]=n[i];e.current=null,this.ngOnChanges(n)}}function QA(e,n,t,i,o){const r=this.declaredInputs[i],s=t_(e)||function YA(e,n){return e[e_]=n}(e,{previous:dn,current:null}),a=s.current||(s.current={}),l=s.previous,c=l[r];a[r]=new qA(c&&c.currentValue,t,l===dn),Jv(e,n,o,t)}const e_="__ngSimpleChanges__";function t_(e){return e[e_]||null}const Hi=[],de=function(e,n=null,t){for(let i=0;i<Hi.length;i++)(0,Hi[i])(e,n,t)};var F=function(e){return e[e.TemplateCreateStart=0]="TemplateCreateStart",e[e.TemplateCreateEnd=1]="TemplateCreateEnd",e[e.TemplateUpdateStart=2]="TemplateUpdateStart",e[e.TemplateUpdateEnd=3]="TemplateUpdateEnd",e[e.LifecycleHookStart=4]="LifecycleHookStart",e[e.LifecycleHookEnd=5]="LifecycleHookEnd",e[e.OutputStart=6]="OutputStart",e[e.OutputEnd=7]="OutputEnd",e[e.BootstrapApplicationStart=8]="BootstrapApplicationStart",e[e.BootstrapApplicationEnd=9]="BootstrapApplicationEnd",e[e.BootstrapComponentStart=10]="BootstrapComponentStart",e[e.BootstrapComponentEnd=11]="BootstrapComponentEnd",e[e.ChangeDetectionStart=12]="ChangeDetectionStart",e[e.ChangeDetectionEnd=13]="ChangeDetectionEnd",e[e.ChangeDetectionSyncStart=14]="ChangeDetectionSyncStart",e[e.ChangeDetectionSyncEnd=15]="ChangeDetectionSyncEnd",e[e.AfterRenderHooksStart=16]="AfterRenderHooksStart",e[e.AfterRenderHooksEnd=17]="AfterRenderHooksEnd",e[e.ComponentStart=18]="ComponentStart",e[e.ComponentEnd=19]="ComponentEnd",e[e.DeferBlockStateStart=20]="DeferBlockStateStart",e[e.DeferBlockStateEnd=21]="DeferBlockStateEnd",e[e.DynamicComponentStart=22]="DynamicComponentStart",e[e.DynamicComponentEnd=23]="DynamicComponentEnd",e[e.HostBindingsUpdateStart=24]="HostBindingsUpdateStart",e[e.HostBindingsUpdateEnd=25]="HostBindingsUpdateEnd",e}(F||{});function n_(e,n){for(let t=n.directiveStart,i=n.directiveEnd;t<i;t++){const r=e.data[t].type.prototype,{ngAfterContentInit:s,ngAfterContentChecked:a,ngAfterViewInit:l,ngAfterViewChecked:c,ngOnDestroy:u}=r;s&&(e.contentHooks??=[]).push(-t,s),a&&((e.contentHooks??=[]).push(t,a),(e.contentCheckHooks??=[]).push(t,a)),l&&(e.viewHooks??=[]).push(-t,l),c&&((e.viewHooks??=[]).push(t,c),(e.viewCheckHooks??=[]).push(t,c)),null!=u&&(e.destroyHooks??=[]).push(t,u)}}function Ka(e,n,t){i_(e,n,3,t)}function Ja(e,n,t,i){(3&e[2])===t&&i_(e,n,t,i)}function Pd(e,n){let t=e[2];(3&t)===n&&(t&=16383,t+=1,e[2]=t)}function i_(e,n,t,i){const r=i??-1,s=n.length-1;let a=0;for(let l=void 0!==i?65535&e[17]:0;l<s;l++)if("number"==typeof n[l+1]){if(a=n[l],null!=i&&a>=i)break}else n[l]<0&&(e[17]+=65536),(a<r||-1==r)&&(tN(e,t,n,l),e[17]=(4294901760&e[17])+l+2),l++}function o_(e,n){de(F.LifecycleHookStart,e,n);const t=B(null);try{n.call(e)}finally{B(t),de(F.LifecycleHookEnd,e,n)}}function tN(e,n,t,i){const o=t[i]<0,r=t[i+1],a=e[o?-t[i]:t[i]];o?e[2]>>14<e[17]>>16&&(3&e[2])===n&&(e[2]+=16384,o_(a,r)):o_(a,r)}class Xr{factory;name;injectImpl;resolving=!1;canSeeViewProviders;multi;componentProviders;index;providerFactory;constructor(n,t,i,o){this.factory=n,this.name=o,this.canSeeViewProviders=t,this.injectImpl=i}}function s_(e){return 3===e||4===e||6===e}function a_(e){return 64===e.charCodeAt(0)}function Bo(e,n){if(null!==n&&0!==n.length)if(null===e||0===e.length)e=n.slice();else{let t=-1;for(let i=0;i<n.length;i++){const o=n[i];"number"==typeof o?t=o:0===t||l_(e,t,o,0,-1===t||2===t?n[++i]:null)}}return e}function l_(e,n,t,i,o){let r=0,s=e.length;if(-1===n)s=-1;else for(;r<e.length;){const a=e[r++];if("number"==typeof a){if(a===n){s=-1;break}if(a>n){s=r-1;break}}}for(;r<e.length;){const a=e[r];if("number"==typeof a)break;if(a===t)return void(null!==o&&(e[r+1]=o));r++,null!==o&&r++}-1!==s&&(e.splice(s,0,n),r=s+1),e.splice(r++,0,t),null!==o&&e.splice(r++,0,o)}function Hd(e){return-1!==e}function es(e){return 32767&e}function ts(e,n){let t=function rN(e){return e>>16}(e),i=n;for(;t>0;)i=i[14],t--;return i}let Bd=!0;function Xa(e){const n=Bd;return Bd=e,n}let sN=0;const gn={};function el(e,n){const t=d_(e,n);if(-1!==t)return t;const i=n[1];i.firstCreatePass&&(e.injectorIndex=n.length,jd(i.data,e),jd(n,null),jd(i.blueprint,null));const o=tl(e,n),r=e.injectorIndex;if(Hd(o)){const s=es(o),a=ts(o,n),l=a[1].data;for(let c=0;c<8;c++)n[r+c]=a[s+c]|l[s+c]}return n[r+8]=o,r}function jd(e,n){e.push(0,0,0,0,0,0,0,0,n)}function d_(e,n){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null===n[e.injectorIndex+8]?-1:e.injectorIndex}function tl(e,n){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let t=0,i=null,o=n;for(;null!==o;){if(i=__(o),null===i)return-1;if(t++,o=o[14],-1!==i.injectorIndex)return i.injectorIndex|t<<16}return-1}function Ud(e,n,t){!function aN(e,n,t){let i;"string"==typeof t?i=t.charCodeAt(0)||0:t.hasOwnProperty(Fr)&&(i=t[Fr]),null==i&&(i=t[Fr]=sN++);const o=255&i;n.data[e+(o>>5)]|=1<<o}(e,n,t)}function f_(e,n,t){if(8&t||void 0!==e)return e;$u()}function h_(e,n,t,i){if(8&t&&void 0===i&&(i=null),!(3&t)){const o=e[9],r=yt(void 0);try{return o?o.get(n,i,8&t):Em(n,i,8&t)}finally{yt(r)}}return f_(i,0,t)}function g_(e,n,t,i=0,o){if(null!==e){if(2048&n[2]&&!(2&i)){const s=function fN(e,n,t,i,o){let r=e,s=n;for(;null!==r&&null!==s&&2048&s[2]&&!qn(s);){const a=p_(r,s,t,2|i,gn);if(a!==gn)return a;let l=r.parent;if(!l){const c=s[20];if(c){const u=c.get(t,gn,-5&i);if(u!==gn)return u}l=__(s),s=s[14]}r=l}return o}(e,n,t,i,gn);if(s!==gn)return s}const r=p_(e,n,t,i,gn);if(r!==gn)return r}return h_(n,t,i,o)}function p_(e,n,t,i,o){const r=function uN(e){if("string"==typeof e)return e.charCodeAt(0)||0;const n=e.hasOwnProperty(Fr)?e[Fr]:void 0;return"number"==typeof n?n>=0?255&n:dN:n}(t);if("function"==typeof r){if(!av(n,e,i))return 1&i?f_(o,0,i):h_(n,t,i,o);try{let s;if(s=r(i),null!=s||8&i)return s;$u()}finally{dv()}}else if("number"==typeof r){let s=null,a=d_(e,n),l=-1,c=1&i?n[15][5]:null;for((-1===a||4&i)&&(l=-1===a?tl(e,n):n[a+8],-1!==l&&v_(i,!1)?(s=n[1],a=es(l),n=ts(l,n)):a=-1);-1!==a;){const u=n[1];if(m_(r,a,u.data)){const d=cN(a,n,t,s,i,c);if(d!==gn)return d}l=n[a+8],-1!==l&&v_(i,n[1].data[a+8]===c)&&m_(r,a,n)?(s=u,a=es(l),n=ts(l,n)):a=-1}}return o}function cN(e,n,t,i,o,r){const s=n[1],a=s.data[e+8],u=nl(a,s,t,null==i?fn(a)&&Bd:i!=s&&!!(3&a.type),1&o&&r===a);return null!==u?ns(n,s,u,a,o):gn}function nl(e,n,t,i,o){const r=e.providerIndexes,s=n.data,a=1048575&r,l=e.directiveStart,u=r>>20,h=o?a+u:e.directiveEnd;for(let g=i?a:a+u;g<h;g++){const p=s[g];if(g<l&&t===p||g>=l&&p.type===t)return g}if(o){const g=s[l];if(g&&Jt(g)&&g.type===t)return l}return null}function ns(e,n,t,i,o){let r=e[t];const s=n.data;if(r instanceof Xr){const a=r;if(a.resolving)throw Uu();const l=Xa(a.canSeeViewProviders);a.resolving=!0;const d=a.injectImpl?yt(a.injectImpl):null;av(e,i,0);try{r=e[t]=a.factory(void 0,o,s,e,i),n.firstCreatePass&&t>=i.directiveStart&&function eN(e,n,t){const{ngOnChanges:i,ngOnInit:o,ngDoCheck:r}=n.type.prototype;if(i){const s=Xv(n);(t.preOrderHooks??=[]).push(e,s),(t.preOrderCheckHooks??=[]).push(e,s)}o&&(t.preOrderHooks??=[]).push(0-e,o),r&&((t.preOrderHooks??=[]).push(e,r),(t.preOrderCheckHooks??=[]).push(e,r))}(t,s[t],n)}finally{null!==d&&yt(d),Xa(l),a.resolving=!1,dv()}}return r}function m_(e,n,t){return!!(t[n+(e>>5)]&1<<e)}function v_(e,n){return!(2&e||1&e&&n)}class xe{_tNode;_lView;constructor(n,t){this._tNode=n,this._lView=t}get(n,t,i){return g_(this._tNode,this._lView,n,Vr(i),t)}}function dN(){return new xe(Z(),w())}function je(e){return xn(()=>{const n=e.prototype.constructor,t=n[Ii]||$d(n),i=Object.prototype;let o=Object.getPrototypeOf(e.prototype).constructor;for(;o&&o!==i;){const r=o[Ii]||$d(o);if(r&&r!==t)return r;o=Object.getPrototypeOf(o)}return r=>new r})}function $d(e){return ya(e)?()=>{const n=$d(X(e));return n&&n()}:Ti(e)}function __(e){const n=e[1],t=n.type;return 2===t?n.declTNode:1===t?e[5]:null}function CN(){return jo(Z(),w())}function jo(e,n){return new Lt(Pe(e,n))}let Lt=(()=>class e{nativeElement;constructor(t){this.nativeElement=t}static __NG_ELEMENT_ID__=CN})();function w_(e){return e instanceof Lt?e.nativeElement:e}function bN(){return this._results[Symbol.iterator]()}class DN{_emitDistinctChangesOnly;dirty=!0;_onDirty=void 0;_results=[];_changesDetected=!1;_changes=void 0;length=0;first=void 0;last=void 0;get changes(){return this._changes??=new ln}constructor(n=!1){this._emitDistinctChangesOnly=n}get(n){return this._results[n]}map(n){return this._results.map(n)}filter(n){return this._results.filter(n)}find(n){return this._results.find(n)}reduce(n,t){return this._results.reduce(n,t)}forEach(n){this._results.forEach(n)}some(n){return this._results.some(n)}toArray(){return this._results.slice()}toString(){return this._results.toString()}reset(n,t){this.dirty=!1;const i=function Bt(e){return e.flat(Number.POSITIVE_INFINITY)}(n);(this._changesDetected=!function OT(e,n,t){if(e.length!==n.length)return!1;for(let i=0;i<e.length;i++){let o=e[i],r=n[i];if(t&&(o=t(o),r=t(r)),r!==o)return!1}return!0}(this._results,i,t))&&(this._results=i,this.length=i.length,this.last=i[this.length-1],this.first=i[0])}notifyOnChanges(){void 0!==this._changes&&(this._changesDetected||!this._emitDistinctChangesOnly)&&this._changes.next(this)}onDirty(n){this._onDirty=n}setDirty(){this.dirty=!0,this._onDirty?.()}destroy(){void 0!==this._changes&&(this._changes.complete(),this._changes.unsubscribe())}[Symbol.iterator]=bN}function is(e){return!(128&~e.flags)}var ol=function(e){return e[e.OnPush=0]="OnPush",e[e.Eager=1]="Eager",e[e.Default=1]="Default",e}(ol||{});const rl=new Map;let MN=0;function qd(e){rl.delete(e[19])}const Qd="__ngContext__";function Dt(e,n){Se(n)?(e[Qd]=n[19],function SN(e){rl.set(e[19],e)}(n)):e[Qd]=n}function k_(e){return F_(e[12])}function R_(e){return F_(e[4])}function F_(e){for(;null!==e&&!ht(e);)e=e[4];return e}let Kd;const $o=new R("",{factory:()=>ZN}),ZN="ng",U_=new R(""),$_=new R("",{providedIn:"platform",factory:()=>"unknown"}),z_=new R("",{factory:()=>k(en).body?.querySelector("[ngCspNonce]")?.getAttribute("ngCspNonce")||null}),tx=new R("",{factory:()=>!1}),sf=new WeakMap;function dl(e){return!(32&~e.flags)}function _y(e,n){const t=e.contentQueries;if(null!==t){const i=B(null);try{for(let o=0;o<t.length;o+=2){const s=t[o+1];if(-1!==s){const a=e.data[s];Pa(t[o]),a.contentQueries(2,n[s],s)}}}finally{B(i)}}}function gf(e,n,t){Pa(0);const i=B(null);try{n(e,t)}finally{B(i)}}function pf(e,n,t){if(Vm(n)){const i=B(null);try{const r=n.directiveEnd;for(let s=n.directiveStart;s<r;s++){const a=e.data[s];a.contentQueries&&a.contentQueries(1,t[s],s)}}finally{B(i)}}}var $t=function(e){return e[e.Emulated=0]="Emulated",e[e.None=2]="None",e[e.ShadowDom=3]="ShadowDom",e[e.ExperimentalIsolatedShadowDom=4]="ExperimentalIsolatedShadowDom",e}($t||{});let _l,yl;function Go(e){return function Dy(){if(void 0===_l&&(_l=null,Te.trustedTypes))try{_l=Te.trustedTypes.createPolicy("angular",{createHTML:e=>e,createScript:e=>e,createScriptURL:e=>e})}catch{}return _l}()?.createHTML(e)||e}function wy(e){return function _f(){if(void 0===yl&&(yl=null,Te.trustedTypes))try{yl=Te.trustedTypes.createPolicy("angular#unsafe-bypass",{createHTML:e=>e,createScript:e=>e,createScriptURL:e=>e})}catch{}return yl}()?.createHTML(e)||e}class Iy{changingThisBreaksApplicationSecurity;constructor(n){this.changingThisBreaksApplicationSecurity=n}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity} (see ${vm})`}}function ii(e){return e instanceof Iy?e.changingThisBreaksApplicationSecurity:e}function ls(e,n){const t=function Bx(e){return e instanceof Iy&&e.getTypeName()||null}(e);if(null!=t&&t!==n){if("ResourceURL"===t&&"URL"===n)return!0;throw new Error(`Required a safe ${n}, got a ${t} (see ${vm})`)}return t===n}class jx{inertDocumentHelper;constructor(n){this.inertDocumentHelper=n}getInertBodyElement(n){n="<body><remove></remove>"+n;try{const t=(new window.DOMParser).parseFromString(Go(n),"text/html").body;return null===t?this.inertDocumentHelper.getInertBodyElement(n):(t.firstChild?.remove(),t)}catch{return null}}}class Ux{defaultDoc;inertDocument;constructor(n){this.defaultDoc=n,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert")}getInertBodyElement(n){const t=this.inertDocument.createElement("template");return t.innerHTML=Go(n),t}}const zx=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:\/?#]*(?:[\/?#]|$))/i;function yf(e){return(e=String(e)).match(zx)?e:"unsafe:"+e}function pn(e){const n={};for(const t of e.split(","))n[t]=!0;return n}function Wo(...e){const n={};for(const t of e)for(const i in t)t.hasOwnProperty(i)&&(n[i]=!0);return n}const Ty=pn("area,br,col,hr,img,wbr"),Ay=pn("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),Ny=pn("rp,rt"),Cf=Wo(Ty,Wo(Ay,pn("address,article,aside,blockquote,caption,center,del,details,dialog,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,main,map,menu,nav,ol,pre,section,summary,table,ul")),Wo(Ny,pn("a,abbr,acronym,audio,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,picture,q,ruby,rp,rt,s,samp,small,source,span,strike,strong,sub,sup,time,track,tt,u,var,video")),Wo(Ny,Ay)),bf=pn("background,cite,href,itemtype,longdesc,poster,src,xlink:href"),Df=Wo(bf,pn("abbr,accesskey,align,alt,autoplay,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,controls,coords,datetime,default,dir,download,face,headers,height,hidden,hreflang,hspace,ismap,itemscope,itemprop,kind,label,lang,language,loop,media,muted,nohref,nowrap,open,preload,rel,rev,role,rows,rowspan,rules,scope,scrolling,shape,size,sizes,span,srclang,srcset,start,summary,tabindex,target,title,translate,type,usemap,valign,value,vspace,width"),pn("aria-activedescendant,aria-atomic,aria-autocomplete,aria-busy,aria-checked,aria-colcount,aria-colindex,aria-colspan,aria-controls,aria-current,aria-describedby,aria-details,aria-disabled,aria-dropeffect,aria-errormessage,aria-expanded,aria-flowto,aria-grabbed,aria-haspopup,aria-hidden,aria-invalid,aria-keyshortcuts,aria-label,aria-labelledby,aria-level,aria-live,aria-modal,aria-multiline,aria-multiselectable,aria-orientation,aria-owns,aria-placeholder,aria-posinset,aria-pressed,aria-readonly,aria-relevant,aria-required,aria-roledescription,aria-rowcount,aria-rowindex,aria-rowspan,aria-selected,aria-setsize,aria-sort,aria-valuemax,aria-valuemin,aria-valuenow,aria-valuetext")),Gx=pn("script,style,template");class Wx{sanitizedSomething=!1;buf=[];sanitizeChildren(n){let t=n.firstChild,i=!0,o=[];for(;t;)if(t.nodeType===Node.ELEMENT_NODE?i=this.startElement(t):t.nodeType===Node.TEXT_NODE?this.chars(t.nodeValue):this.sanitizedSomething=!0,i&&t.firstChild)o.push(t),t=Qx(t);else for(;t;){t.nodeType===Node.ELEMENT_NODE&&this.endElement(t);let r=Zx(t);if(r){t=r;break}t=o.pop()}return this.buf.join("")}startElement(n){const t=Oy(n).toLowerCase();if(!Cf.hasOwnProperty(t))return this.sanitizedSomething=!0,!Gx.hasOwnProperty(t);this.buf.push("<"),this.buf.push(t);const i=n.attributes;for(let o=0;o<i.length;o++){const r=i.item(o),s=r.name,a=s.toLowerCase();if(!Df.hasOwnProperty(a)){this.sanitizedSomething=!0;continue}let l=r.value;bf[a]&&(l=yf(l)),this.buf.push(" ",s,'="',Ry(l),'"')}return this.buf.push(">"),!0}endElement(n){const t=Oy(n).toLowerCase();Cf.hasOwnProperty(t)&&!Ty.hasOwnProperty(t)&&(this.buf.push("</"),this.buf.push(t),this.buf.push(">"))}chars(n){this.buf.push(Ry(n))}}function Zx(e){const n=e.nextSibling;if(n&&e!==n.previousSibling)throw ky(n);return n}function Qx(e){const n=e.firstChild;if(n&&function qx(e,n){return(e.compareDocumentPosition(n)&Node.DOCUMENT_POSITION_CONTAINED_BY)!==Node.DOCUMENT_POSITION_CONTAINED_BY}(e,n))throw ky(n);return n}function Oy(e){const n=e.nodeName;return"string"==typeof n?n:"FORM"}function ky(e){return new Error(`Failed to sanitize html because the element is clobbered: ${e.outerHTML}`)}const Yx=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Kx=/([^\#-~ |!])/g;function Ry(e){return e.replace(/&/g,"&").replace(Yx,function(n){return"&#"+(1024*(n.charCodeAt(0)-55296)+(n.charCodeAt(1)-56320)+65536)+";"}).replace(Kx,function(n){return"&#"+n.charCodeAt(0)+";"}).replace(/</g,"<").replace(/>/g,">")}let Cl;function wf(e){return"content"in e&&function Xx(e){return e.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===e.nodeName}(e)?e.content:null}function bl(e,n,t){return e.createElement(n,t)}function ji(e,n,t,i,o){e.insertBefore(n,t,i,o)}function Py(e,n,t){e.appendChild(n,t)}function Vy(e,n,t,i,o){null!==i?ji(e,n,t,i,o):Py(e,n,t)}function cs(e,n,t,i){e.removeChild(null,n,t,i)}function By(e,n,t){const{mergedAttrs:i,classes:o,styles:r}=t;null!==i&&function oN(e,n,t){let i=0;for(;i<t.length;){const o=t[i];if("number"==typeof o){if(0!==o)break;i++;const r=t[i++],s=t[i++],a=t[i++];e.setAttribute(n,s,a,r)}else{const r=o,s=t[++i];a_(r)?e.setProperty(n,r,s):e.setAttribute(n,r,s),i++}}}(e,n,i),null!==o&&function oO(e,n,t){""===t?e.removeAttribute(n,"class"):e.setAttribute(n,"class",t)}(e,n,o),null!==r&&function iO(e,n,t){e.setAttribute(n,"style",t)}(e,n,r)}var qo=function(e){return e[e.NONE=0]="NONE",e[e.HTML=1]="HTML",e[e.STYLE=2]="STYLE",e[e.SCRIPT=3]="SCRIPT",e[e.URL=4]="URL",e[e.RESOURCE_URL=5]="RESOURCE_URL",e}(qo||{});function jy(e){const n=us();return n?wy(n.sanitize(qo.HTML,e)||""):ls(e,"HTML")?wy(ii(e)):function Jx(e,n){let t=null;try{Cl=Cl||function Sy(e){const n=new Ux(e);return function $x(){try{return!!(new window.DOMParser).parseFromString(Go(""),"text/html")}catch{return!1}}()?new jx(n):n}(e);let i=n?String(n):"";t=Cl.getInertBodyElement(i);let o=5,r=i;do{if(0===o)throw new Error("Failed to sanitize html because the input is unstable");o--,i=r,r=t.innerHTML,t=Cl.getInertBodyElement(i)}while(i!==r);return Go((new Wx).sanitizeChildren(wf(t)||t))}finally{if(t){const i=wf(t)||t;for(;i.firstChild;)i.firstChild.remove()}}}(function os(){if(void 0!==Kd)return Kd;if(typeof document<"u")return document;throw new M(210,!1)}(),Q(e))}function oi(e){const n=us();return n?n.sanitize(qo.URL,e)||"":ls(e,"URL")?ii(e):yf(Q(e))}function us(){const e=w();return e&&e[10].sanitizer}const Dl=new Set(["href","xlink:href"]),$y={iframe:{sandbox:!0,allow:!0,allowfullscreen:!0,referrerpolicy:!0,csp:!0,fetchpriority:!0},animate:{attributename:!0,to:Dl,values:Dl,from:Dl},set:{attributename:!0,to:Dl},animatemotion:{attributename:!0},animatetransform:{attributename:!0}};function wl(e){return e.ownerDocument.defaultView}function CO(e,n,t){let i=e.length;for(;;){const o=e.indexOf(n,t);if(-1===o)return o;if(0===o||e.charCodeAt(o-1)<=32){const r=n.length;if(o+r===i||e.charCodeAt(o+r)<=32)return o}t=o+1}}const Qy="ng-template";function bO(e,n,t,i){let o=0;if(i){for(;o<n.length&&"string"==typeof n[o];o+=2)if("class"===n[o]&&-1!==CO(n[o+1].toLowerCase(),t,0))return!0}else if(If(e))return!1;if(o=n.indexOf(1,o),o>-1){let r;for(;++o<n.length&&"string"==typeof(r=n[o]);)if(r.toLowerCase()===t)return!0}return!1}function If(e){return 4===e.type&&e.value!==Qy}function DO(e,n,t){return n===(4!==e.type||t?e.value:Qy)}function wO(e,n,t){let i=4;const o=e.attrs,r=null!==o?function IO(e){for(let n=0;n<e.length;n++)if(s_(e[n]))return n;return e.length}(o):0;let s=!1;for(let a=0;a<n.length;a++){const l=n[a];if("number"!=typeof l){if(!s)if(4&i){if(i=2|1&i,""!==l&&!DO(e,l,t)||""===l&&1===n.length){if(tn(i))return!1;s=!0}}else if(8&i){if(null===o||!bO(e,o,l,t)){if(tn(i))return!1;s=!0}}else{const c=n[++a],u=EO(l,o,If(e),t);if(-1===u){if(tn(i))return!1;s=!0;continue}if(""!==c){let d;if(d=u>r?"":o[u+1].toLowerCase(),2&i&&c!==d){if(tn(i))return!1;s=!0}}}}else{if(!s&&!tn(i)&&!tn(l))return!1;if(s&&tn(l))continue;s=!1,i=l|1&i}}return tn(i)||s}function tn(e){return!(1&e)}function EO(e,n,t,i){if(null===n)return-1;let o=0;if(i||!t){let r=!1;for(;o<n.length;){const s=n[o];if(s===e)return o;if(3===s||6===s)r=!0;else{if(1===s||2===s){let a=n[++o];for(;"string"==typeof a;)a=n[++o];continue}if(4===s)break;if(0===s){o+=4;continue}}o+=r?1:2}return-1}return function SO(e,n){let t=e.indexOf(4);if(t>-1)for(t++;t<e.length;){const i=e[t];if("number"==typeof i)return-1;if(i===n)return t;t++}return-1}(n,e)}function Yy(e,n,t=!1){for(let i=0;i<n.length;i++)if(wO(e,n[i],t))return!0;return!1}function Ky(e,n){return e?":not("+n.trim()+")":n}function AO(e){let n=e[0],t=1,i=2,o="",r=!1;for(;t<e.length;){let s=e[t];if("string"==typeof s)if(2&i){const a=e[++t];o+="["+s+(a.length>0?'="'+a+'"':"")+"]"}else 8&i?o+="."+s:4&i&&(o+=" "+s);else""!==o&&!tn(s)&&(n+=Ky(r,o),o=""),i=s,r=r||!tn(i);t++}return""!==o&&(n+=Ky(r,o)),n}const ce={};function Sf(e,n,t,i,o,r,s,a,l,c,u){const d=j+i,h=d+o,g=function OO(e,n){const t=[];for(let i=0;i<n;i++)t.push(i<e?null:ce);return t}(d,h),p="function"==typeof c?c():c;return g[1]={type:e,blueprint:g,template:t,queries:null,viewQuery:a,declTNode:n,data:g.slice().fill(null,d),bindingStartIndex:d,expandoStartIndex:h,hostBindingOpCodes:null,firstCreatePass:!0,firstUpdatePass:!0,staticViewQueries:!1,staticContentQueries:!1,preOrderHooks:null,preOrderCheckHooks:null,contentHooks:null,contentCheckHooks:null,viewHooks:null,viewCheckHooks:null,destroyHooks:null,cleanup:null,contentQueries:null,components:null,directiveRegistry:"function"==typeof r?r():r,pipeRegistry:"function"==typeof s?s():s,firstChild:null,schemas:l,consts:p,incompleteFirstPass:!1,ssrId:u}}function El(e,n,t,i,o,r,s,a,l,c,u){const d=n.blueprint.slice();return d[0]=o,d[2]=1228|i,(null!==c||e&&2048&e[2])&&(d[2]|=2048),zm(d),d[3]=d[14]=e,d[8]=t,d[10]=s||e&&e[10],d[Y]=a||e&&e[Y],d[9]=l||e&&e[9]||null,d[5]=r,d[19]=function IN(){return MN++}(),d[6]=u,d[20]=c,d[15]=2==n.type?e[15]:d,d}function Tf(e){let n=16;return e.signals?n=4096:e.onPush&&(n=64),n}function ds(e,n,t,i){if(0===t)return-1;const o=n.length;for(let r=0;r<t;r++)n.push(i),e.blueprint.push(i),e.data.push(null);return o}function Af(e,n){return e[12]?e[13][4]=n:e[12]=n,e[13]=n,n}function f(e=1){Xy(K(),w(),Je()+e,!1)}function Xy(e,n,t,i){if(!i)if(3&~n[2]){const r=e.preOrderHooks;null!==r&&Ja(n,r,0,t)}else{const r=e.preOrderCheckHooks;null!==r&&Ka(n,r,t)}Fi(t)}var Ml=function(e){return e[e.None=0]="None",e[e.SignalBased=1]="SignalBased",e[e.HasDecoratorInputTransform=2]="HasDecoratorInputTransform",e}(Ml||{});function ri(e,n,t,i){const o=B(null);try{const[r,s,a]=e.inputs[t];let l=null;0!==(s&Ml.SignalBased)&&(l=n[r][Ze]),null!==l&&void 0!==l.transformFn?i=l.transformFn(i):null!==a&&(i=a.call(n,i)),null!==e.setInput?e.setInput(n,l,i,t,r):Jv(n,l,r,i)}finally{B(o)}}var si=function(e){return e[e.Important=1]="Important",e[e.DashCase=2]="DashCase",e}(si||{});function xf(e,n){return(void 0)(e,n)}typeof document<"u"&&document;const fs=new WeakMap,hs=new WeakSet;const Wi=new Set;var Vf=function(e){return e[e.CHANGE_DETECTION=0]="CHANGE_DETECTION",e[e.AFTER_NEXT_RENDER=1]="AFTER_NEXT_RENDER",e}(Vf||{});const Yo=new R(""),oC=new Set;function et(e){oC.has(e)||(oC.add(e),performance?.mark?.("mark_feature_usage",{detail:{feature:e}}))}let rC=(()=>{class e{impl=null;execute(){this.impl?.execute()}static \u0275prov=ee({token:e,providedIn:"root",factory:()=>new e})}return e})();const sC=[0,1,2,3];let ZO=(()=>{class e{ngZone=k(ue);scheduler=k(Oo);errorHandler=k(Gr,{optional:!0});sequences=new Set;deferredRegistrations=new Set;executing=!1;constructor(){k(Yo,{optional:!0})}execute(){const t=this.sequences.size>0;t&&de(F.AfterRenderHooksStart),this.executing=!0;for(const i of sC)for(const o of this.sequences)if(!o.erroredOrDestroyed&&o.hooks[i])try{o.pipelinedValue=this.ngZone.runOutsideAngular(()=>this.maybeTrace(()=>(0,o.hooks[i])(o.pipelinedValue),o.snapshot))}catch(r){o.erroredOrDestroyed=!0,this.errorHandler?.handleError(r)}this.executing=!1;for(const i of this.sequences)i.afterRun(),i.once&&(this.sequences.delete(i),i.destroy());for(const i of this.deferredRegistrations)this.sequences.add(i);this.deferredRegistrations.size>0&&this.scheduler.notify(7),this.deferredRegistrations.clear(),t&&de(F.AfterRenderHooksEnd)}register(t){const{view:i}=t;void 0!==i?((i[25]??=[]).push(t),No(i),i[2]|=8192):this.executing?this.deferredRegistrations.add(t):this.addSequence(t)}addSequence(t){this.sequences.add(t),this.scheduler.notify(7)}unregister(t){this.executing&&this.sequences.has(t)?(t.erroredOrDestroyed=!0,t.pipelinedValue=void 0,t.once=!0):(this.sequences.delete(t),this.deferredRegistrations.delete(t))}maybeTrace(t,i){return i?i.run(Vf.AFTER_NEXT_RENDER,t):t()}static \u0275prov=ee({token:e,providedIn:"root",factory:()=>new e})}return e})();class aC{impl;hooks;view;once;snapshot;erroredOrDestroyed=!1;pipelinedValue=void 0;unregisterOnDestroy;constructor(n,t,i,o,r,s=null){this.impl=n,this.hooks=t,this.view=i,this.once=o,this.snapshot=s,this.unregisterOnDestroy=r?.onDestroy(()=>this.destroy())}afterRun(){this.erroredOrDestroyed=!1,this.pipelinedValue=void 0,this.snapshot?.dispose(),this.snapshot=null}destroy(){this.impl.unregister(this),this.unregisterOnDestroy?.();const n=this.view?.[25];n&&(this.view[25]=n.filter(t=>t!==this))}}function Hf(e,n){const t=n?.injector??k(Rt);return et("NgAfterNextRender"),function lC(e,n,t,i){const o=n.get(rC);o.impl??=n.get(ZO);const r=n.get(Yo,null,{optional:!0}),s=!0!==t?.manualCleanup?n.get(Nn):null,a=n.get(wd,null,{optional:!0}),l=new aC(o.impl,function YO(e){return e instanceof Function?[void 0,void 0,e,void 0]:[e.earlyRead,e.write,e.mixedReadWrite,e.read]}(e),a?.view,i,s,r?.snapshot(null));return o.impl.register(l),l}(e,t,n,!0)}const xl=new R("",{factory:()=>({queue:new Set,isScheduled:!1,scheduler:null,injector:k(jt)})});function cC(e,n,t){const i=e.get(xl);if(Array.isArray(n))for(const o of n)i.queue.add(o),t?.detachedLeaveAnimationFns?.push(o);else i.queue.add(n),t?.detachedLeaveAnimationFns?.push(n);i.scheduler&&i.scheduler(e)}function uC(e,n,t,i){const o=e?.[26]?.enter;null!==n&&o&&o.has(t.index)&&function Bf(e,n){for(const[t,i]of n)cC(e,i.animateFns)}(i,o)}function Ko(e,n,t,i,o,r,s,a){if(null!=o){let l,c=!1;ht(o)?l=o:Se(o)&&(c=!0,o=o[0]);const u=Ye(o);0===e&&null!==i?(uC(a,i,r,t),null==s?Py(n,i,u):ji(n,i,u,s||null,!0)):1===e&&null!==i?(uC(a,i,r,t),ji(n,i,u,s||null,!0),function jO(e,n){const t=fs.get(e);if(!t||0===t.length)return;const i=n.parentNode,o=n.previousSibling;for(let r=t.length-1;r>=0;r--){const s=t[r],a=s.parentNode;s===n?(t.splice(r,1),hs.add(s),s.dispatchEvent(new CustomEvent("animationend",{detail:{cancel:!0}}))):(o&&s===o||a&&i&&a!==i)&&(t.splice(r,1),s.dispatchEvent(new CustomEvent("animationend",{detail:{cancel:!0}})),s.parentNode?.removeChild(s))}}(r,u)):2===e?(a?.[26]?.leave?.has(r.index)&&function Rf(e,n){const t=fs.get(e);t?t.includes(n)||t.push(n):fs.set(e,[n])}(r,u),hs.delete(u),hC(a,r,t,d=>{hs.has(u)?hs.delete(u):cs(n,u,c,d)})):3===e&&(hs.delete(u),hC(a,r,t,()=>{n.destroyNode(u)})),null!=l&&function rk(e,n,t,i,o,r,s){const a=i[7];a!==Ye(i)&&Ko(n,e,t,r,a,o,s);for(let c=10;c<i.length;c++){const u=i[c];kl(u[1],u,e,n,r,a)}}(n,e,t,l,r,i,s)}}function fC(e,n){n[10].changeDetectionScheduler?.notify(9),kl(e,n,n[Y],2,null,null)}function jf(e,n){const t=e[9],i=t.indexOf(n);t.splice(i,1)}function ps(e,n){if(Mn(n))return;const t=n[Y];t.destroyNode&&kl(e,n,t,3,null,null),function ek(e){let n=e[12];if(!n)return Uf(e[1],e);for(;n;){let t=null;if(Se(n))t=n[12];else{const i=n[10];i&&(t=i)}if(!t){for(;n&&!n[4]&&n!==e;)Se(n)&&Uf(n[1],n),n=n[3];null===n&&(n=e),Se(n)&&Uf(n[1],n),t=n&&n[4]}n=t}}(n)}function Uf(e,n){if(Mn(n))return;const t=B(null);try{n[2]&=-129,n[2]|=256,n[24]&&Rr(n[24]),function ik(e,n){let t;if(null!=e&&null!=(t=e.destroyHooks))for(let i=0;i<t.length;i+=2){const o=n[t[i]];if(!(o instanceof Xr)){const r=t[i+1];if(Array.isArray(r))for(let s=0;s<r.length;s+=2){const a=o[r[s]],l=r[s+1];de(F.LifecycleHookStart,a,l);try{l.call(a)}finally{de(F.LifecycleHookEnd,a,l)}}else{de(F.LifecycleHookStart,o,r);try{r.call(o)}finally{de(F.LifecycleHookEnd,o,r)}}}}}(e,n),function nk(e,n){const t=e.cleanup,i=n[7];if(null!==t)for(let s=0;s<t.length-1;s+=2)if("string"==typeof t[s]){const a=t[s+3];a>=0?i[a]():i[-a].unsubscribe(),s+=2}else t[s].call(i[t[s+1]]);null!==i&&(n[7]=null);const o=n[21];if(null!==o){n[21]=null;for(let s=0;s<o.length;s++)(0,o[s])()}const r=n[23];if(null!==r){n[23]=null;for(const s of r)s.destroy()}}(e,n),1===n[1].type&&n[Y].destroy();const i=n[16];if(null!==i&&ht(n[3])){i!==n[3]&&jf(i,n);const o=n[18];null!==o&&o.detachView(e)}qd(n)}finally{B(t)}}function hC(e,n,t,i){const o=e?.[26];if(null==o||null==o.leave||!o.leave.has(n.index))return i(!1);e&&Wi.add(e[19]),cC(t,()=>{if(o.leave&&o.leave.has(n.index)){const s=o.leave.get(n.index),a=[];if(s){for(let l=0;l<s.animateFns.length;l++){const c=s.animateFns[l],{promise:u}=c();a.push(u)}o.detachedLeaveAnimationFns=void 0}o.running=Promise.allSettled(a),function tk(e,n){const t=e[26]?.running;t?t.then(()=>{e[26].running=void 0,Wi.delete(e[19]),n(!0)}):n(!1)}(e,i)}else e&&Wi.delete(e[19]),i(!1)},o)}function $f(e,n,t){return function gC(e,n,t){let i=n;for(;null!==i&&168&i.type;)i=(n=i).parent;if(null===i)return t[0];if(fn(i)){const{encapsulation:o}=e.data[i.directiveStart+i.componentOffset];if(o===$t.None||o===$t.Emulated)return null}return Pe(i,t)}(e,n.parent,t)}let vC=function mC(e,n,t){return 40&e.type?Pe(e,t):null};function Gf(e,n,t,i){const o=$f(e,i,n),r=n[Y],a=function pC(e,n,t){return vC(e,n,t)}(i.parent||n[5],i,n);if(null!=o)if(Array.isArray(t))for(let l=0;l<t.length;l++)Vy(r,o,t[l],a,!1);else Vy(r,o,t,a,!1)}function qi(e,n){if(null!==n){const t=n.type;if(3&t)return Pe(n,e);if(4&t)return Wf(-1,e[n.index]);if(8&t){const i=n.child;if(null!==i)return qi(e,i);{const o=e[n.index];return ht(o)?Wf(-1,o):Ye(o)}}if(128&t)return qi(e,n.next);if(32&t)return xf(n,e)()||Ye(e[n.index]);{const i=yC(e,n);return null!==i?Array.isArray(i)?i[0]:qi(In(e[15]),i):qi(e,n.next)}}return null}function yC(e,n){return null!==n?e[15][5].projection[n.projection]:null}function Wf(e,n){const t=10+e+1;if(t<n.length){const i=n[t],o=i[1].firstChild;if(null!==o)return qi(i,o)}return n[7]}function qf(e,n,t,i,o,r,s){for(;null!=t;){const a=i[9];if(128===t.type){t=t.next;continue}const l=i[t.index],c=t.type;if(s&&0===n&&(l&&Dt(Ye(l),i),t.flags|=2),!dl(t))if(8&c)qf(e,n,t.child,i,o,r,!1),Ko(n,e,a,o,l,t,r,i);else if(32&c){const u=xf(t,i);let d;for(;d=u();)Ko(n,e,a,o,d,t,r,i);Ko(n,e,a,o,l,t,r,i)}else 16&c?CC(e,n,i,t,o,r):Ko(n,e,a,o,l,t,r,i);t=s?t.projectionNext:t.next}}function kl(e,n,t,i,o,r){qf(t,i,e.firstChild,n,o,r,!1)}function CC(e,n,t,i,o,r){const s=t[15],l=s[5].projection[i.projection];if(Array.isArray(l))for(let c=0;c<l.length;c++)Ko(n,e,t[9],o,l[c],i,r,t);else{let c=l;const u=s[3];is(i)&&(c.flags|=128),qf(e,n,c,u,o,r,!0)}}function bC(e,n,t,i,o){const r=Je(),s=2&i;try{Fi(-1),s&&n.length>j&&Xy(e,n,j,!1),de(s?F.TemplateUpdateStart:F.TemplateCreateStart,o,t),t(i,o)}finally{Fi(r),de(s?F.TemplateUpdateEnd:F.TemplateCreateEnd,o,t)}}function Rl(e,n,t){(function dk(e,n,t){const i=t.directiveStart,o=t.directiveEnd;fn(t)&&function kO(e,n,t){const i=Pe(n,e),o=function Jy(e){const n=e.tView;return null===n||n.incompleteFirstPass?e.tView=Sf(1,null,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts,e.id):n}(t),r=e[10].rendererFactory,s=Af(e,El(e,o,null,Tf(t),i,n,null,r.createRenderer(i,t),null,null,null));e[n.index]=s}(n,t,e.data[i+t.componentOffset]),e.firstCreatePass||el(t,n);const r=t.initialInputs;for(let s=i;s<o;s++){const a=e.data[s],l=ns(n,e,s,t);Dt(l,n),null!==r&&pk(0,s-i,l,a,0,r),Jt(a)&&(gt(t.index,n)[8]=ns(n,e,s,t))}})(e,n,t),!(64&~t.flags)&&function fk(e,n,t){const i=t.directiveStart,o=t.directiveEnd,r=t.index,s=function t1(){return q.lFrame.currentDirectiveIndex}();try{Fi(r);for(let a=i;a<o;a++){const l=e.data[a],c=n[a];gd(a),(null!==l.hostBindings||0!==l.hostVars||null!==l.hostAttrs)&&hk(l,c)}}finally{Fi(-1),gd(s)}}(e,n,t)}function Jo(e,n,t=Pe){const i=n.localNames;if(null!==i){let o=n.index+1;for(let r=0;r<i.length;r+=2){const s=i[r+1],a=-1===s?t(n,e):e[s];e[o++]=a}}}let DC=()=>null;function Zf(e,n,t,i,o,r){Vl(e,n[1],n,t,i)?fn(e)&&function wC(e,n){const t=gt(n,e);16&t[2]||(t[2]|=64)}(n,e.index):(3&e.type&&(t=function uk(e){return"class"===e?"className":"for"===e?"htmlFor":"formaction"===e?"formAction":"innerHtml"===e?"innerHTML":"readonly"===e?"readOnly":"tabindex"===e?"tabIndex":e}(t)),function Qf(e,n,t,i,o,r){if(3&e.type){const s=Pe(e,n);i=null!=r?r(i,e.value||"",t):i,o.setProperty(s,t,i)}}(e,n,t,i,o,r))}function hk(e,n){null!==e.hostBindings&&e.hostBindings(1,n)}function Yf(e,n){const t=e.directiveRegistry;let i=null;if(t)for(let o=0;o<t.length;o++){const r=t[o];Yy(n,r.selectors,!1)&&(i??=[],Jt(r)?i.unshift(r):i.push(r))}return i}function pk(e,n,t,i,o,r){const s=r[n];if(null!==s)for(let a=0;a<s.length;a+=2)ri(i,t,s[a],s[a+1])}function Pl(e){let n=e;return ev()?function tv(){q.lFrame.isParent=!1}():(n=n.parent,Sn(n,!1)),n}function Vl(e,n,t,i,o){const r=e.inputs?.[i],s=e.hostDirectiveInputs?.[i];let a=!1;if(s)for(let l=0;l<s.length;l+=2){const c=s[l];ri(n.data[c],t[c],s[l+1],o),a=!0}if(r)for(const l of r)ri(n.data[l],t[l],i,o),a=!0;return a}function vk(e,n){const t=gt(n,e),i=t[1];!function _k(e,n){for(let t=n.length;t<e.blueprint.length;t++)n.push(e.blueprint[t])}(i,t);const o=t[0];null!==o&&null===t[6]&&(t[6]=null),de(F.ComponentStart);try{Hl(i,t,t[8])}finally{de(F.ComponentEnd,t[8])}}function Hl(e,n,t){vd(n);try{const i=e.viewQuery;null!==i&&gf(1,i,t);const o=e.template;null!==o&&bC(e,n,o,1,t),e.firstCreatePass&&(e.firstCreatePass=!1),n[18]?.finishViewCreation(e),e.staticContentQueries&&_y(e,n),e.staticViewQueries&&gf(2,e.viewQuery,t);const r=e.components;null!==r&&function yk(e,n){for(let t=0;t<n.length;t++)vk(e,n[t])}(n,r)}catch(i){throw e.firstCreatePass&&(e.incompleteFirstPass=!0,e.firstCreatePass=!1),i}finally{n[2]&=-5,_d()}}function Xo(e,n,t,i){const o=B(null);try{const r=n.tView,l=El(e,r,t,4096&e[2]?4096:16,null,n,null,null,i?.injector??null,i?.embeddedViewInjector??null,i?.dehydratedView??null);l[16]=e[n.index];const u=e[18];return null!==u&&(l[18]=u.createEmbeddedView(r)),Hl(r,l,t),l}finally{B(o)}}function Zi(e,n){return!n||null===n.firstChild||is(e)}function ms(e,n,t,i,o=!1){for(;null!==t;){if(128===t.type){t=o?t.projectionNext:t.next;continue}const r=n[t.index];null!==r&&i.push(Ye(r)),ht(r)&&Ck(r,i);const s=t.type;if(8&s)ms(e,n,t.child,i);else if(32&s){const a=xf(t,n);let l;for(;l=a();)i.push(l)}else if(16&s){const a=yC(n,t);if(Array.isArray(a))i.push(...a);else{const l=In(n[15]);ms(l[1],l,a,i,!0)}}t=o?t.projectionNext:t.next}return i}function Ck(e,n){for(let t=10;t<e.length;t++){const i=e[t],o=i[1].firstChild;null!==o&&ms(i[1],i,o,n)}e[7]!==e[0]&&n.push(e[7])}function IC(e){if(null!==e[25]){for(const n of e[25])n.impl.addSequence(n);e[25].length=0}}let SC=[];const Ek={...go,consumerIsAlwaysLive:!0,kind:"template",consumerMarkedDirty:e=>{No(e.lView)},consumerOnSignalRead(){this.lView[24]=this}},Ik={...go,consumerIsAlwaysLive:!0,kind:"template",consumerMarkedDirty:e=>{let n=In(e.lView);for(;n&&!TC(n[1]);)n=In(n);n&&Gm(n)},consumerOnSignalRead(){this.lView[24]=this}};function TC(e){return 2!==e.type}function AC(e){if(null===e[23])return;let n=!0;for(;n;){let t=!1;for(const i of e[23])i.dirty&&(t=!0,null===i.zone||Zone.current===i.zone?i.run():i.zone.run(()=>i.run()));n=t&&!!(8192&e[2])}}function Bl(e,n=0){const i=e[10].rendererFactory;i.begin?.();try{!function Tk(e,n){const t=ov();try{La(!0),Jf(e,n);let i=0;for(;Ra(e);){if(100===i)throw new M(103,!1);i++,Jf(e,1)}}finally{La(t)}}(e,n)}finally{i.end?.()}}function NC(e,n,t,i){if(Mn(n))return;const o=n[2];vd(n);let a=!0,l=null,c=null;TC(e)?(c=function bk(e){return e[24]??function Dk(e){const n=SC.pop()??Object.create(Ek);return n.lView=e,n}(e)}(n),l=po(c)):null===function yu(){return Ge}()?(a=!1,c=function Mk(e){const n=e[24]??Object.create(Ik);return n.lView=e,n}(n),l=po(c)):n[24]&&(Rr(n[24]),n[24]=null);try{zm(n),function rv(e){return q.lFrame.bindingIndex=e}(e.bindingStartIndex),null!==t&&bC(e,n,t,2,i);const u=!(3&~o);if(u){const g=e.preOrderCheckHooks;null!==g&&Ka(n,g,null)}else{const g=e.preOrderHooks;null!==g&&Ja(n,g,0,null),Pd(n,0)}if(function Ak(e){for(let n=k_(e);null!==n;n=R_(n)){if(!(2&n[2]))continue;const t=n[9];for(let i=0;i<t.length;i++)Gm(t[i])}}(n),AC(n),xC(n,0),null!==e.contentQueries&&_y(e,n),u){const g=e.contentCheckHooks;null!==g&&Ka(n,g)}else{const g=e.contentHooks;null!==g&&Ja(n,g,1),Pd(n,1)}!function xk(e,n){const t=e.hostBindingOpCodes;if(null!==t)try{for(let i=0;i<t.length;i++){const o=t[i];if(o<0)Fi(~o);else{const r=o,s=t[++i],a=t[++i];e1(s,r);const l=n[r];de(F.HostBindingsUpdateStart,l);try{a(2,l)}finally{de(F.HostBindingsUpdateEnd,l)}}}}finally{Fi(-1)}}(e,n);const d=e.components;null!==d&&kC(n,d,0);const h=e.viewQuery;if(null!==h&&gf(2,h,i),u){const g=e.viewCheckHooks;null!==g&&Ka(n,g)}else{const g=e.viewHooks;null!==g&&Ja(n,g,2),Pd(n,2)}if(!0===e.firstUpdatePass&&(e.firstUpdatePass=!1),n[22]){for(const g of n[22])g();n[22]=null}IC(n),n[2]&=-73}catch(u){throw No(n),u}finally{null!==c&&(kr(c,l),a&&function wk(e){e.lView[24]!==e&&(e.lView=null,SC.push(e))}(c)),_d()}}function xC(e,n){for(let t=k_(e);null!==t;t=R_(t))for(let i=10;i<t.length;i++)OC(t[i],n)}function Nk(e,n,t){de(F.ComponentStart);const i=gt(n,e);try{OC(i,t)}finally{de(F.ComponentEnd,i[8])}}function OC(e,n){ld(e)&&Jf(e,n)}function Jf(e,n){const i=e[1],o=e[2],r=e[24];let s=!!(0===n&&16&o);if(s||=!!(64&o&&0===n),s||=!!(1024&o),s||=!(!r?.dirty||!ha(r)),s||=!1,r&&(r.dirty=!1),e[2]&=-9217,s)NC(i,e,i.template,e[8]);else if(8192&o){const a=B(null);try{AC(e),xC(e,1);const l=i.components;null!==l&&kC(e,l,1),IC(e)}finally{B(a)}}}function kC(e,n,t){for(let i=0;i<n.length;i++)Nk(e,n[i],t)}function er(e,n){const t=ov()?64:1088;for(e[10].changeDetectionScheduler?.notify(n);e;){e[2]|=t;const i=In(e);if(qn(e)&&!i)return e;e=i}return null}function RC(e,n,t,i){return[e,!0,0,n,null,i,null,t,null,null]}function FC(e,n){const t=10+n;if(t<e.length)return e[t]}function tr(e,n,t,i=!0){const o=n[1];if(function Ok(e,n,t,i){const o=10+i,r=t.length;i>0&&(t[o-1][4]=n),i<r-10?(n[4]=t[o],Im(t,10+i,n)):(t.push(n),n[4]=null),n[3]=t;const s=n[16];null!==s&&t!==s&&LC(s,n);const a=n[18];null!==a&&a.insertView(e),cd(n),n[2]|=128}(o,n,e,t),i){const s=Wf(t,e),a=n[Y],l=a.parentNode(e[7]);null!==l&&function XO(e,n,t,i,o,r){i[0]=o,i[5]=n,kl(e,i,t,1,o,r)}(o,e[5],a,n,l,s)}const r=n[6];null!==r&&null!==r.firstChild&&(r.firstChild=null)}function Xf(e,n){const t=vs(e,n);return void 0!==t&&ps(t[1],t),t}function vs(e,n){if(e.length<=10)return;const t=10+n,i=e[t];if(i){const o=i[16];null!==o&&o!==e&&jf(o,i),n>0&&(e[t-1][4]=i[4]);const r=Ma(e,10+n);!function dC(e,n){fC(e,n),n[0]=null,n[5]=null}(i[1],i);const s=r[18];null!==s&&s.detachView(r[1]),i[3]=null,i[4]=null,i[2]&=-129}return i}function LC(e,n){const t=e[9],i=n[3];(Se(i)||n[15]!==i[3][15])&&(e[2]|=2),null===t?e[9]=[n]:t.push(n)}class _s{_lView;_cdRefInjectingView;_appRef=null;_attachedToViewContainer=!1;exhaustive;get rootNodes(){const n=this._lView,t=n[1];return ms(t,n,t.firstChild,[])}constructor(n,t){this._lView=n,this._cdRefInjectingView=t}get context(){return this._lView[8]}set context(n){this._lView[8]=n}get destroyed(){return Mn(this._lView)}destroy(){if(this._appRef)this._appRef.detachView(this);else if(this._attachedToViewContainer){const n=this._lView[3];if(ht(n)){const t=n[8],i=t?t.indexOf(this):-1;i>-1&&(vs(n,i),Ma(t,i))}this._attachedToViewContainer=!1}ps(this._lView[1],this._lView)}onDestroy(n){Fa(this._lView,n)}markForCheck(){er(this._cdRefInjectingView||this._lView,4)}detach(){this._lView[2]&=-129}reattach(){cd(this._lView),this._lView[2]|=128}detectChanges(){this._lView[2]|=1024,Bl(this._lView)}checkNoChanges(){}attachToViewContainerRef(){if(this._appRef)throw new M(902,!1);this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null;const n=qn(this._lView),t=this._lView[16];null!==t&&!n&&jf(t,this._lView),fC(this._lView[1],this._lView)}attachToAppRef(n){if(this._attachedToViewContainer)throw new M(902,!1);this._appRef=n;const t=qn(this._lView),i=this._lView[16];null!==i&&!t&&LC(i,this._lView),cd(this._lView)}}let kn=(()=>class e{_declarationLView;_declarationTContainer;elementRef;static __NG_ELEMENT_ID__=kk;constructor(t,i,o){this._declarationLView=t,this._declarationTContainer=i,this.elementRef=o}get ssrId(){return this._declarationTContainer.tView?.ssrId||null}createEmbeddedView(t,i){return this.createEmbeddedViewImpl(t,i)}createEmbeddedViewImpl(t,i,o){const r=Xo(this._declarationLView,this._declarationTContainer,t,{embeddedViewInjector:i,dehydratedView:o});return new _s(r)}})();function kk(){return jl(Z(),w())}function jl(e,n){return 4&e.type?new kn(n,e,jo(e,n)):null}function Qi(e,n,t,i,o){let r=e.data[n];if(null===r)r=function ih(e,n,t,i,o){const r=Xm(),s=ev(),l=e.data[n]=function zk(e,n,t,i,o,r){let s=n?n.injectorIndex:-1,a=0;return function Ym(){return null!==q.skipHydrationRootTNode}()&&(a|=128),{type:t,index:i,insertBeforeIndex:null,injectorIndex:s,directiveStart:-1,directiveEnd:-1,directiveStylingLast:-1,componentOffset:-1,controlDirectiveIndex:-1,customControlIndex:-1,propertyBindings:null,flags:a,providerIndexes:0,value:o,attrs:r,mergedAttrs:null,localNames:null,initialInputs:null,inputs:null,hostDirectiveInputs:null,outputs:null,hostDirectiveOutputs:null,directiveToIndex:null,tView:null,next:null,prev:null,projectionNext:null,child:null,parent:n,projection:null,styles:null,stylesWithoutHost:null,residualStyles:void 0,classes:null,classesWithoutHost:null,residualClasses:void 0,classBindings:0,styleBindings:0}}(0,s?r:r&&r.parent,t,n,i,o);return function $k(e,n,t,i){null===e.firstChild&&(e.firstChild=n),null!==t&&(i?null==t.child&&null!==n.parent&&(t.child=n):null===t.next&&(t.next=n,n.prev=t))}(e,l,r,s),l}(e,n,t,i,o),function XT(){return q.lFrame.inI18n}()&&(r.flags|=32);else if(64&r.type){r.type=t,r.value=i,r.attrs=o;const s=function $r(){const e=q.lFrame,n=e.currentTNode;return e.isParent?n:n.parent}();r.injectorIndex=null===s?-1:s.injectorIndex}return Sn(r,!0),r}function tb(e,n){let t=0,i=e.firstChild;if(i){const o=e.data.r;for(;t<o;){const r=i.nextSibling;cs(n,i,!1),i=r,t++}}}let IR=class{},ab=class{};class SR{resolveComponentFactory(n){throw new M(917,!1)}}let Zl=class{static NULL=new SR};class uh{}let Rn=(()=>class e{destroyNode=null;static __NG_ELEMENT_ID__=()=>function TR(){const e=w(),t=gt(Z().index,e);return(Se(t)?t:e)[Y]}()})(),AR=(()=>{class e{static \u0275prov=ee({token:e,providedIn:"root",factory:()=>null})}return e})();const fh={};class or{injector;parentInjector;constructor(n,t){this.injector=n,this.parentInjector=t}get(n,t,i){const o=this.injector.get(n,fh,i);return o!==fh||t===fh?o:this.parentInjector.get(n,t,i)}}function Yl(e,n,t){let i=t?e.styles:null,o=t?e.classes:null,r=0;if(null!==n)for(let s=0;s<n.length;s++){const a=n[s];"number"==typeof a?r=a:1==r?o=Lu(o,a):2==r&&(i=Lu(i,a+": "+n[++s]+";"))}t?e.styles=i:e.stylesWithoutHost=i,t?e.classes=o:e.classesWithoutHost=o}function N(e,n=0){const t=w();return null===t?re(e,n):g_(Z(),t,X(e),n)}function cb(e,n,t,i,o){const r=null===i?null:{"":-1},s=o(e,t);if(null!==s){let a=s,l=null,c=null;for(const u of s)if(null!==u.resolveHostDirectives){[a,l,c]=u.resolveHostDirectives(s);break}!function LR(e,n,t,i,o,r,s){const a=i.length;let l=null;for(let h=0;h<a;h++){const g=i[h];null===l&&Jt(g)&&(l=g,FR(e,t,h)),Ud(el(t,n),e,g.type)}(function UR(e,n,t){e.flags|=1,e.directiveStart=n,e.directiveEnd=n+t,e.providerIndexes=n})(t,e.data.length,a),l?.viewProvidersResolver&&l.viewProvidersResolver(l);for(let h=0;h<a;h++){const g=i[h];g.providersResolver&&g.providersResolver(g)}let c=!1,u=!1,d=ds(e,n,a,null);a>0&&(t.directiveToIndex=new Map);for(let h=0;h<a;h++){const g=i[h];if(t.mergedAttrs=Bo(t.mergedAttrs,g.hostAttrs),VR(e,t,n,d,g),jR(d,g,o),null!==s&&s.has(g)){const[b,S]=s.get(g);t.directiveToIndex.set(g.type,[d,b+t.directiveStart,S+t.directiveStart])}else(null===r||!r.has(g))&&t.directiveToIndex.set(g.type,d);null!==g.contentQueries&&(t.flags|=4),(null!==g.hostBindings||null!==g.hostAttrs||0!==g.hostVars)&&(t.flags|=64);const p=g.type.prototype;!c&&(p.ngOnChanges||p.ngOnInit||p.ngDoCheck)&&((e.preOrderHooks??=[]).push(t.index),c=!0),!u&&(p.ngOnChanges||p.ngDoCheck)&&((e.preOrderCheckHooks??=[]).push(t.index),u=!0),d++}!function PR(e,n,t){for(let i=n.directiveStart;i<n.directiveEnd;i++){const o=e.data[i];if(null!==t&&t.has(o)){const r=t.get(o);db(0,n,r,i),db(1,n,r,i),hb(n,i,!0)}else ub(0,n,o,i),ub(1,n,o,i),hb(n,i,!1)}}(e,t,r)}(e,n,t,a,r,l,c)}null!==r&&null!==i&&function RR(e,n,t){const i=e.localNames=[];for(let o=0;o<n.length;o+=2){const r=t[n[o+1]];if(null==r)throw new M(-301,!1);i.push(n[o],r)}}(t,i,r)}function FR(e,n,t){n.componentOffset=t,(e.components??=[]).push(n.index)}function ub(e,n,t,i){const o=0===e?t.inputs:t.outputs;for(const r in o)if(o.hasOwnProperty(r)){let s;s=0===e?n.inputs??={}:n.outputs??={},s[r]??=[],s[r].push(i),fb(n,r)}}function db(e,n,t,i){const o=0===e?t.inputs:t.outputs;for(const r in o)if(o.hasOwnProperty(r)){const s=o[r];let a;a=0===e?n.hostDirectiveInputs??={}:n.hostDirectiveOutputs??={},a[s]??=[],a[s].push(i,r),fb(n,s)}}function fb(e,n){"class"===n?e.flags|=8:"style"===n&&(e.flags|=16)}function hb(e,n,t){const{attrs:i,inputs:o,hostDirectiveInputs:r}=e;if(null===i||!t&&null===o||t&&null===r||If(e))return e.initialInputs??=[],void e.initialInputs.push(null);let s=null,a=0;for(;a<i.length;){const l=i[a];if(0!==l)if(5!==l){if("number"==typeof l)break;if(!t&&o.hasOwnProperty(l)){const c=o[l];for(const u of c)if(u===n){s??=[],s.push(l,i[a+1]);break}}else if(t&&r.hasOwnProperty(l)){const c=r[l];for(let u=0;u<c.length;u+=2)if(c[u]===n){s??=[],s.push(c[u+1],i[a+1]);break}}a+=2}else a+=2;else a+=4}e.initialInputs??=[],e.initialInputs.push(s)}function VR(e,n,t,i,o){e.data[i]=o;const r=o.factory||(o.factory=Ti(o.type)),s=new Xr(r,Jt(o),N,null);e.blueprint[i]=s,t[i]=s,function HR(e,n,t,i,o){const r=o.hostBindings;if(r){let s=e.hostBindingOpCodes;null===s&&(s=e.hostBindingOpCodes=[]);const a=~n.index;(function BR(e){let n=e.length;for(;n>0;){const t=e[--n];if("number"==typeof t&&t<0)return t}return 0})(s)!=a&&s.push(a),s.push(t,i,r)}}(e,n,i,ds(e,t,o.hostVars,ce),o)}function jR(e,n,t){if(t){if(n.exportAs)for(let i=0;i<n.exportAs.length;i++)t[n.exportAs[i]]=e;Jt(n)&&(t[""]=e)}}function hh(e,n,t,i,o,r,s,a){const l=n[1],c=l.consts,d=Qi(l,e,t,i,at(c,s));return r&&cb(l,n,d,at(c,a),o),d.mergedAttrs=Bo(d.mergedAttrs,d.attrs),null!==d.attrs&&Yl(d,d.attrs,!1),null!==d.mergedAttrs&&Yl(d,d.mergedAttrs,!0),null!==l.queries&&l.queries.elementStart(l,d),d}function gh(e,n){n_(e,n),Vm(n)&&e.queries.elementEnd(n)}function ph(e){return null!==e&&("function"==typeof e||"object"==typeof e)}function nn(e,n,t){return e[n]=t}function Ee(e,n,t){return t!==ce&&(!Object.is(e[n],t)&&(e[n]=t,!0))}function Ki(e,n,t,i){const o=Ee(e,n,t);return Ee(e,n+1,i)||o}function li(e,n,t){return function i(o){const r=i.__ngNativeEl__;void 0!==r&&function cx(e,n){if(null==e||"object"!=typeof e)return;let t=sf.get(e);t||(t=new WeakSet,sf.set(e,t)),t.add(n)}(o,r),er(fn(e)?gt(e.index,n):n,5);const a=n[8];let l=pb(n,a,t,o),c=i.__ngNextListenerFn__;for(;c;)l=pb(n,a,c,o)&&l,c=c.__ngNextListenerFn__;return l}}function pb(e,n,t,i){const o=B(null);try{return de(F.OutputStart,n,t),!1!==t(i)}catch(r){return function Kf(e,n){const t=e[9];if(!t)return;let i;try{i=t.get(Zn,null)}catch{i=null}i?.(n)}(e,r),!1}finally{de(F.OutputEnd,n,t),B(o)}}function mb(e,n,t,i,o,r,s){const a=n.firstCreatePass?Zm(n):null,l=qm(t),c=l.length;l.push(o,r),a&&a.push(i,e,c,(c+1)*(s?-1:1))}function sr(e,n,t,i,o,r){const a=n[1],d=n[t][a.data[t].outputs[i]].subscribe(r);mb(e.index,a,n,o,r,d,!0)}const Fn=Symbol("BINDING");function vh(e){return e.debugInfo?.className||e.type.name||null}class Eb extends Zl{ngModule;constructor(n){super(),this.ngModule=n}resolveComponentFactory(n){const t=le(n);return new _h(t,this.ngModule)}}class _h extends ab{componentDef;ngModule;selector;componentType;ngContentSelectors;isBoundToModule;cachedInputs=null;cachedOutputs=null;get inputs(){return this.cachedInputs??=function oF(e){return Object.keys(e).map(n=>{const[t,i,o]=e[n],r={propName:t,templateName:n,isSignal:0!==(i&Ml.SignalBased)};return o&&(r.transform=o),r})}(this.componentDef.inputs),this.cachedInputs}get outputs(){return this.cachedOutputs??=function rF(e){return Object.keys(e).map(n=>({propName:e[n],templateName:n}))}(this.componentDef.outputs),this.cachedOutputs}constructor(n,t){super(),this.componentDef=n,this.ngModule=t,this.componentType=n.type,this.selector=function NO(e){return e.map(AO).join(",")}(n.selectors),this.ngContentSelectors=n.ngContentSelectors??[],this.isBoundToModule=!!t}create(n,t,i,o,r,s){de(F.DynamicComponentStart);const a=B(null);try{const l=this.componentDef,c=function sF(e,n,t){let i=n instanceof jt?n:n?.injector;return i&&null!==e.getStandaloneInjector&&(i=e.getStandaloneInjector(i)||i),i?new or(t,i):t}(l,o||this.ngModule,n),u=function aF(e){const n=e.get(uh,null);if(null===n)throw new M(407,!1);return{rendererFactory:n,sanitizer:e.get(AR,null),changeDetectionScheduler:e.get(Oo,null),ngReflect:!1,tracingService:e.get(Yo,null,{optional:!0})}}(c),d=u.tracingService;return d&&d.componentCreate?d.componentCreate(vh(l),()=>this.createComponentRef(u,c,t,i,r,s)):this.createComponentRef(u,c,t,i,r,s)}finally{B(a)}}createComponentRef(n,t,i,o,r,s){const a=this.componentDef,l=function uF(e,n,t,i){const o=e?["ng-version","21.2.12"]:function xO(e){const n=[],t=[];let i=1,o=2;for(;i<e.length;){let r=e[i];if("string"==typeof r)2===o?""!==r&&n.push(r,e[++i]):8===o&&t.push(r);else{if(!tn(o))break;o=r}i++}return t.length&&n.push(1,...t),n}(n.selectors[0]);let r=null,s=null,a=0;if(t)for(const u of t)a+=u[Fn].requiredVars,u.create&&(u.targetIdx=0,(r??=[]).push(u)),u.update&&(u.targetIdx=0,(s??=[]).push(u));if(i)for(let u=0;u<i.length;u++){const d=i[u];if("function"!=typeof d)for(const h of d.bindings){a+=h[Fn].requiredVars;const g=u+1;h.create&&(h.targetIdx=g,(r??=[]).push(h)),h.update&&(h.targetIdx=g,(s??=[]).push(h))}}const l=[n];if(i)for(const u of i){const h=ft("function"==typeof u?u:u.type);l.push(h)}return Sf(0,null,function dF(e,n){return e||n?t=>{if(1&t&&e)for(const i of e)i.create();if(2&t&&n)for(const i of n)i.update()}:null}(r,s),1,a,l,null,null,null,[o],null)}(o,a,s,r),c=n.rendererFactory.createRenderer(null,a),u=o?function ak(e,n,t,i){const r=i.get(tx,!1)||t===$t.ShadowDom||t===$t.ExperimentalIsolatedShadowDom,s=e.selectRootElement(n,r);return function lk(e){DC(e)}(s),s}(c,o,a.encapsulation,t):function lF(e,n){const t=function cF(e){return(e.selectors[0][0]||"div").toLowerCase()}(e);return bl(n,t,"svg"===t?"svg":"math"===t?"math":null)}(a,c),d=s?.some(Mb)||r?.some(p=>"function"!=typeof p&&p.bindings.some(Mb)),h=El(null,l,null,512|Tf(a),null,null,n,c,t,null,null);h[j]=u,vd(h);let g=null;try{const p=hh(j,h,2,"#host",()=>l.directiveRegistry,!0,0);By(c,u,p),Dt(u,h),Rl(l,h,p),pf(l,p,h),gh(l,p),void 0!==i&&function hF(e,n,t){const i=e.projection=[];for(let o=0;o<n.length;o++){const r=t[o];i.push(null!=r&&r.length?Array.from(r):null)}}(p,this.ngContentSelectors,i),g=gt(p.index,h),h[8]=g[8],Hl(l,h,null)}catch(p){throw null!==g&&qd(g),qd(h),p}finally{de(F.DynamicComponentEnd),_d()}return new fF(this.componentType,h,!!d)}}function Mb(e){const n=e[Fn].kind;return"input"===n||"twoWay"===n}class fF extends IR{_rootLView;_hasInputBindings;instance;hostView;changeDetectorRef;componentType;location;previousInputValues=null;_tNode;constructor(n,t,i){super(),this._rootLView=t,this._hasInputBindings=i,this._tNode=Ao(t[1],j),this.location=jo(this._tNode,t),this.instance=gt(this._tNode.index,t)[8],this.hostView=this.changeDetectorRef=new _s(t,void 0),this.componentType=n}setInput(n,t){const i=this._tNode;if(this.previousInputValues??=new Map,this.previousInputValues.has(n)&&Object.is(this.previousInputValues.get(n),t))return;const o=this._rootLView;Vl(i,o[1],o,n,t),this.previousInputValues.set(n,t),er(gt(i.index,o),1)}get injector(){return new xe(this._tNode,this._rootLView)}destroy(){this.hostView.destroy()}onDestroy(n){this.hostView.onDestroy(n)}}let vn=(()=>class e{static __NG_ELEMENT_ID__=gF})();function gF(){return Sb(Z(),w())}class yh extends vn{_lContainer;_hostTNode;_hostLView;constructor(n,t,i){super(),this._lContainer=n,this._hostTNode=t,this._hostLView=i}get element(){return jo(this._hostTNode,this._hostLView)}get injector(){return new xe(this._hostTNode,this._hostLView)}get parentInjector(){const n=tl(this._hostTNode,this._hostLView);if(Hd(n)){const t=ts(n,this._hostLView),i=es(n);return new xe(t[1].data[i+8],t)}return new xe(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(n){const t=Ib(this._lContainer);return null!==t&&t[n]||null}get length(){return this._lContainer.length-10}createEmbeddedView(n,t,i){let o,r;"number"==typeof i?o=i:null!=i&&(o=i.index,r=i.injector);const a=n.createEmbeddedViewImpl(t||{},r,null);return this.insertImpl(a,o,Zi(this._hostTNode,null)),a}createComponent(n,t,i,o,r,s,a){const l=n&&!function Jr(e){return"function"==typeof e}(n);let c;if(l)c=t;else{const S=t||{};c=S.index,i=S.injector,o=S.projectableNodes,r=S.environmentInjector||S.ngModuleRef,s=S.directives,a=S.bindings}const u=l?n:new _h(le(n)),d=i||this.parentInjector;if(!r&&null==u.ngModule){const O=(l?d:this.parentInjector).get(jt,null);O&&(r=O)}le(u.componentType??{});const b=u.create(d,o,null,r,s,a);return this.insertImpl(b.hostView,c,Zi(this._hostTNode,null)),b}insert(n,t){return this.insertImpl(n,t,!0)}insertImpl(n,t,i){const o=n._lView;if(function qT(e){return ht(e[3])}(o)){const a=this.indexOf(n);if(-1!==a)this.detach(a);else{const l=o[3],c=new yh(l,l[5],l[3]);c.detach(c.indexOf(n))}}const r=this._adjustIndex(t),s=this._lContainer;return tr(s,o,r,i),n.attachToViewContainerRef(),Im(Ch(s),r,n),n}move(n,t){return this.insert(n,t)}indexOf(n){const t=Ib(this._lContainer);return null!==t?t.indexOf(n):-1}remove(n){const t=this._adjustIndex(n,-1),i=vs(this._lContainer,t);i&&(Ma(Ch(this._lContainer),t),ps(i[1],i))}detach(n){const t=this._adjustIndex(n,-1),i=vs(this._lContainer,t);return i&&null!=Ma(Ch(this._lContainer),t)?new _s(i):null}_adjustIndex(n,t=0){return n??this.length+t}}function Ib(e){return e[8]}function Ch(e){return e[8]||(e[8]=[])}function Sb(e,n){let t;const i=n[e.index];return ht(i)?t=i:(t=RC(i,n,null,e),n[e.index]=t,Af(n,t)),Tb(t,n,e,i),new yh(t,e,n)}let Tb=function Nb(e,n,t,i){if(e[7])return;let o;o=8&t.type?Ye(i):function pF(e,n){const t=e[Y],i=t.createComment(""),o=Pe(n,e),r=t.parentNode(o);return ji(t,r,i,t.nextSibling(o),!1),i}(n,t),e[7]=o};class Dh{queryList;matches=null;constructor(n){this.queryList=n}clone(){return new Dh(this.queryList)}setDirty(){this.queryList.setDirty()}}class wh{queries;constructor(n=[]){this.queries=n}createEmbeddedView(n){const t=n.queries;if(null!==t){const i=null!==n.contentQueries?n.contentQueries[0]:t.length,o=[];for(let r=0;r<i;r++){const s=t.getByIndex(r);o.push(this.queries[s.indexInDeclarationView].clone())}return new wh(o)}return null}insertView(n){this.dirtyQueriesWithMatches(n)}detachView(n){this.dirtyQueriesWithMatches(n)}finishViewCreation(n){this.dirtyQueriesWithMatches(n)}dirtyQueriesWithMatches(n){for(let t=0;t<this.queries.length;t++)null!==Th(n,t).matches&&this.queries[t].setDirty()}}class xb{flags;read;predicate;constructor(n,t,i=null){this.flags=t,this.read=i,this.predicate="string"==typeof n?function DF(e){return e.split(",").map(n=>n.trim())}(n):n}}class Eh{queries;constructor(n=[]){this.queries=n}elementStart(n,t){for(let i=0;i<this.queries.length;i++)this.queries[i].elementStart(n,t)}elementEnd(n){for(let t=0;t<this.queries.length;t++)this.queries[t].elementEnd(n)}embeddedTView(n){let t=null;for(let i=0;i<this.length;i++){const o=null!==t?t.length:0,r=this.getByIndex(i).embeddedTView(n,o);r&&(r.indexInDeclarationView=i,null!==t?t.push(r):t=[r])}return null!==t?new Eh(t):null}template(n,t){for(let i=0;i<this.queries.length;i++)this.queries[i].template(n,t)}getByIndex(n){return this.queries[n]}get length(){return this.queries.length}track(n){this.queries.push(n)}}class Mh{metadata;matches=null;indexInDeclarationView=-1;crossesNgTemplate=!1;_declarationNodeIndex;_appliesToNextNode=!0;constructor(n,t=-1){this.metadata=n,this._declarationNodeIndex=t}elementStart(n,t){this.isApplyingToNode(t)&&this.matchTNode(n,t)}elementEnd(n){this._declarationNodeIndex===n.index&&(this._appliesToNextNode=!1)}template(n,t){this.elementStart(n,t)}embeddedTView(n,t){return this.isApplyingToNode(n)?(this.crossesNgTemplate=!0,this.addMatch(-n.index,t),new Mh(this.metadata)):null}isApplyingToNode(n){if(this._appliesToNextNode&&1&~this.metadata.flags){const t=this._declarationNodeIndex;let i=n.parent;for(;null!==i&&8&i.type&&i.index!==t;)i=i.parent;return t===(null!==i?i.index:-1)}return this._appliesToNextNode}matchTNode(n,t){const i=this.metadata.predicate;if(Array.isArray(i))for(let o=0;o<i.length;o++){const r=i[o];this.matchTNodeWithReadOption(n,t,_F(t,r)),this.matchTNodeWithReadOption(n,t,nl(t,n,r,!1,!1))}else i===kn?4&t.type&&this.matchTNodeWithReadOption(n,t,-1):this.matchTNodeWithReadOption(n,t,nl(t,n,i,!1,!1))}matchTNodeWithReadOption(n,t,i){if(null!==i){const o=this.metadata.read;if(null!==o)if(o===Lt||o===vn||o===kn&&4&t.type)this.addMatch(t.index,-2);else{const r=nl(t,n,o,!1,!1);null!==r&&this.addMatch(t.index,r)}else this.addMatch(t.index,i)}}addMatch(n,t){null===this.matches?this.matches=[n,t]:this.matches.push(n,t)}}function _F(e,n){const t=e.localNames;if(null!==t)for(let i=0;i<t.length;i+=2)if(t[i]===n)return t[i+1];return null}function CF(e,n,t,i){return-1===t?function yF(e,n){return 11&e.type?jo(e,n):4&e.type?jl(e,n):null}(n,e):-2===t?function bF(e,n,t){return t===Lt?jo(n,e):t===kn?jl(n,e):t===vn?Sb(n,e):void 0}(e,n,i):ns(e,e[1],t,n)}function Ob(e,n,t,i){const o=n[18].queries[i];if(null===o.matches){const r=e.data,s=t.matches,a=[];for(let l=0;null!==s&&l<s.length;l+=2){const c=s[l];a.push(c<0?null:CF(n,r[c],s[l+1],t.metadata.read))}o.matches=a}return o.matches}function Ih(e,n,t,i){const o=e.queries.getByIndex(t),r=o.matches;if(null!==r){const s=Ob(e,n,o,t);for(let a=0;a<r.length;a+=2){const l=r[a];if(l>0)i.push(s[a/2]);else{const c=r[a+1],u=n[-l];for(let d=10;d<u.length;d++){const h=u[d];h[16]===h[3]&&Ih(h[1],h,c,i)}if(null!==u[9]){const d=u[9];for(let h=0;h<d.length;h++){const g=d[h];Ih(g[1],g,c,i)}}}}}return i}function kb(e,n,t){const i=new DN(!(4&~t));return function ZT(e,n,t,i){const o=qm(n);o.push(t),e.firstCreatePass&&Zm(e).push(i,o.length-1)}(e,n,i,i.destroy),(n[18]??=new wh).queries.push(new Dh(i))-1}function Lb(e,n,t){null===e.queries&&(e.queries=new Eh),e.queries.track(new Mh(n,t))}function Th(e,n){return e.queries.getByIndex(n)}function Pb(e,n){const t=e[1],i=Th(t,n);return i.crossesNgTemplate?Ih(t,e,n,[]):Ob(t,e,i,n)}let Xi=class{},NF=class{};class kh extends Xi{ngModuleType;_parent;_bootstrapComponents=[];_r3Injector;instance;destroyCbs=[];componentFactoryResolver=new Eb(this);constructor(n,t,i,o=!0){super(),this.ngModuleType=n,this._parent=t;const r=function un(e){return Ea(e),e[ym]||null}(n);this._bootstrapComponents=function mn(e){return e instanceof Function?e():e}(r.bootstrap),this._r3Injector=pv(n,t,[{provide:Xi,useValue:this},{provide:Zl,useValue:this.componentFactoryResolver},...i],$n(n),new Set(["environment"])),o&&this.resolveInjectorInitializers()}resolveInjectorInitializers(){this._r3Injector.resolveInjectorInitializers(),this.instance=this._r3Injector.get(this.ngModuleType)}get injector(){return this._r3Injector}destroy(){const n=this._r3Injector;!n.destroyed&&n.destroy(),this.destroyCbs.forEach(t=>t()),this.destroyCbs=null}onDestroy(n){this.destroyCbs.push(n)}}class Ub extends NF{moduleType;constructor(n){super(),this.moduleType=n}create(n){return new kh(this.moduleType,n,[])}}class kF extends Xi{injector;componentFactoryResolver=new Eb(this);instance=null;constructor(n){super();const t=new Ai([...n.providers,{provide:Xi,useValue:this},{provide:Zl,useValue:this.componentFactoryResolver}],n.parent||td(),n.debugName,new Set(["environment"]));this.injector=t,n.runEnvironmentInitializers&&t.resolveInjectorInitializers()}destroy(){this.injector.destroy()}onDestroy(n){this.injector.onDestroy(n)}}let RF=(()=>{class e{_injector;cachedInjectors=new Map;constructor(t){this._injector=t}getOrCreateStandaloneInjector(t){if(!t.standalone)return null;if(!this.cachedInjectors.has(t)){const i=Yu(0,t.type),o=i.length>0?function $b(e,n,t=null){return new kF({providers:e,parent:n,debugName:t,runEnvironmentInitializers:!0}).injector}([i],this._injector,""):null;this.cachedInjectors.set(t,o)}return this.cachedInjectors.get(t)}ngOnDestroy(){try{for(const t of this.cachedInjectors.values())null!==t&&t.destroy()}finally{this.cachedInjectors.clear()}}static \u0275prov=ee({token:e,providedIn:"environment",factory:()=>new e(re(jt))})}return e})();function on(e){return xn(()=>{const n=Gb(e),t={...n,decls:e.decls,vars:e.vars,template:e.template,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,onPush:e.changeDetection===ol.OnPush,directiveDefs:null,pipeDefs:null,dependencies:n.standalone&&e.dependencies||null,getStandaloneInjector:n.standalone?o=>o.get(RF).getOrCreateStandaloneInjector(t):null,getExternalStyles:null,signals:e.signals??!1,data:e.data||{},encapsulation:e.encapsulation||$t.Emulated,styles:e.styles||ye,_:null,schemas:e.schemas||null,tView:null,id:""};n.standalone&&et("NgStandalone"),Wb(t);const i=e.dependencies;return t.directiveDefs=Xl(i,zb),t.pipeDefs=Xl(i,Yt),t.id=function VF(e){let n=0;const i=[e.selectors,e.ngContentSelectors,e.hostVars,e.hostAttrs,"function"==typeof e.consts?"":e.consts,e.vars,e.decls,e.encapsulation,e.standalone,e.signals,e.exportAs,JSON.stringify(e.inputs),JSON.stringify(e.outputs),Object.getOwnPropertyNames(e.type.prototype),!!e.contentQueries,!!e.viewQuery];for(const r of i.join("|"))n=Math.imul(31,n)+r.charCodeAt(0)|0;return n+=2147483648,"c"+n}(t),t})}function zb(e){return le(e)||ft(e)}function ci(e){return xn(()=>({type:e.type,bootstrap:e.bootstrap||ye,declarations:e.declarations||ye,imports:e.imports||ye,exports:e.exports||ye,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null}))}function FF(e,n){if(null==e)return dn;const t={};for(const i in e)if(e.hasOwnProperty(i)){const o=e[i];let r,s,a,l;Array.isArray(o)?(a=o[0],r=o[1],s=o[2]??r,l=o[3]||null):(r=o,s=o,a=Ml.None,l=null),t[r]=[i,a,l],n[r]=s}return t}function LF(e){if(null==e)return dn;const n={};for(const t in e)e.hasOwnProperty(t)&&(n[e[t]]=t);return n}function W(e){return xn(()=>{const n=Gb(e);return Wb(n),n})}function wt(e){return{type:e.type,name:e.name,factory:null,pure:!1!==e.pure,standalone:e.standalone??!0,onDestroy:e.type.prototype.ngOnDestroy||null}}function Gb(e){const n={};return{type:e.type,providersResolver:null,viewProvidersResolver:null,factory:null,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:n,inputConfig:e.inputs||dn,exportAs:e.exportAs||null,standalone:e.standalone??!0,signals:!0===e.signals,selectors:e.selectors||ye,viewQuery:e.viewQuery||null,features:e.features||null,setInput:null,resolveHostDirectives:null,hostDirectives:null,controlDef:null,inputs:FF(e.inputs,n),outputs:LF(e.outputs),debugInfo:null}}function Wb(e){e.features?.forEach(n=>n(e))}function Xl(e,n){return e?()=>{const t="function"==typeof e?e():e,i=[];for(const o of t){const r=n(o);null!==r&&i.push(r)}return i}:null}function ie(e){let n=function $F(e){return Object.getPrototypeOf(e.prototype).constructor}(e.type),t=!0;const i=[e];for(;n;){let o;if(Jt(e))o=n.\u0275cmp||n.\u0275dir;else{if(n.\u0275cmp)throw new M(903,!1);o=n.\u0275dir}if(o){if(t){i.push(o);const s=e;s.inputs=Fh(e.inputs),s.declaredInputs=Fh(e.declaredInputs),s.outputs=Fh(e.outputs);const a=o.hostBindings;a&&ZF(e,a);const l=o.viewQuery,c=o.contentQueries;if(l&&WF(e,l),c&&qF(e,c),zF(e,o),lT(e.outputs,o.outputs),Jt(o)&&o.data.animation){const u=e.data;u.animation=(u.animation||[]).concat(o.data.animation)}}const r=o.features;if(r)for(let s=0;s<r.length;s++){const a=r[s];a&&a.ngInherit&&a(e),a===ie&&(t=!1)}}n=Object.getPrototypeOf(n)}!function GF(e){let n=0,t=null;for(let i=e.length-1;i>=0;i--){const o=e[i];o.hostVars=n+=o.hostVars,o.hostAttrs=Bo(o.hostAttrs,t=Bo(t,o.hostAttrs))}}(i)}function zF(e,n){for(const t in n.inputs){if(!n.inputs.hasOwnProperty(t)||e.inputs.hasOwnProperty(t))continue;const i=n.inputs[t];void 0!==i&&(e.inputs[t]=i,e.declaredInputs[t]=n.declaredInputs[t])}}function Fh(e){return e===dn?{}:e===ye?[]:e}function WF(e,n){const t=e.viewQuery;e.viewQuery=t?(i,o)=>{n(i,o),t(i,o)}:n}function qF(e,n){const t=e.contentQueries;e.contentQueries=t?(i,o,r)=>{n(i,o,r),t(i,o,r)}:n}function ZF(e,n){const t=e.hostBindings;e.hostBindings=t?(i,o)=>{n(i,o),t(i,o)}:n}function Kb(e,n,t,i,o,r,s,a){if(t.firstCreatePass){e.mergedAttrs=Bo(e.mergedAttrs,e.attrs);const u=e.tView=Sf(2,e,o,r,s,t.directiveRegistry,t.pipeRegistry,null,t.schemas,t.consts,null);null!==t.queries&&(t.queries.template(t,e),u.queries=t.queries.embeddedTView(e))}a&&(e.flags|=a),Sn(e,!1);const l=Xb(t,n,e,i);Va()&&Gf(t,n,l,e),Dt(l,n);const c=RC(l,n,l,e);n[i+j]=c,Af(n,c)}function eo(e,n,t,i,o,r,s,a,l,c,u){const d=t+j;let h;if(n.firstCreatePass){if(h=Qi(n,d,4,s||null,a||null),null!=c){const g=at(n.consts,c);h.localNames=[];for(let p=0;p<g.length;p+=2)h.localNames.push(g[p],-1)}}else h=n.data[d];return Kb(h,e,n,t,i,o,r,l),null!=c&&Jo(e,h,u),h}function ec(e,n,t,i,o,r,s,a){const l=w(),c=K();return function QF(e,n,t,i,o,r,s,a,l,c,u){const d=t+j;let h;n.firstCreatePass?(h=Qi(n,d,4,s||null,a||null),hd()&&cb(n,e,h,at(n.consts,c),Yf),n_(n,h)):h=n.data[d],Kb(h,e,n,t,i,o,r,l),So(h)&&Rl(n,e,h),null!=c&&Jo(e,h,u)}(l,c,e,n,t,i,o,at(c.consts,r),void 0,s,a),ec}let Xb=function eD(e,n,t,i){return zr(!0),n[Y].createComment("")};function gD(e){return function jh(e){return"function"==typeof e&&void 0!==e[Ze]}(e)&&"function"==typeof e.set}const AD=new R(""),ND=new R("");let zh,$h=(()=>{class e{_ngZone;registry;_isZoneStable=!0;_callbacks=[];_taskTrackingZone=null;_destroyRef;constructor(t,i,o){this._ngZone=t,this.registry=i,od()&&(this._destroyRef=k(Nn,{optional:!0})??void 0),zh||(function oP(e){zh=e}(o),o.addToWindow(i)),this._watchAngularEvents(),t.run(()=>{this._taskTrackingZone=typeof Zone>"u"?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){const t=this._ngZone.onUnstable.subscribe({next:()=>{this._isZoneStable=!1}}),i=this._ngZone.runOutsideAngular(()=>this._ngZone.onStable.subscribe({next:()=>{ue.assertNotInAngularZone(),queueMicrotask(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}}));this._destroyRef?.onDestroy(()=>{t.unsubscribe(),i.unsubscribe()})}isStable(){return this._isZoneStable&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())queueMicrotask(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb()}});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(i=>!i.updateCb||!i.updateCb(t)||(clearTimeout(i.timeoutId),!1))}}getPendingTasks(){return this._taskTrackingZone?this._taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,i,o){let r=-1;i&&i>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(s=>s.timeoutId!==r),t()},i)),this._callbacks.push({doneCb:t,timeoutId:r,updateCb:o})}whenStable(t,i,o){if(o&&!this._taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/plugins/task-tracking" loaded?');this.addCallback(t,i,o),this._runCallbacksIfReady()}registerApplication(t){this.registry.registerApplication(t,this)}unregisterApplication(t){this.registry.unregisterApplication(t)}findProviders(t,i,o){return[]}static \u0275fac=function(i){return new(i||e)(re(ue),re(iP),re(ND))};static \u0275prov=ee({token:e,factory:e.\u0275fac})}return e})(),iP=(()=>{class e{_applications=new Map;registerApplication(t,i){this._applications.set(t,i)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,i=!0){return zh?.findTestabilityInTree(this,t,i)??null}static \u0275fac=function(i){return new(i||e)};static \u0275prov=ee({token:e,factory:e.\u0275fac,providedIn:"platform"})}return e})();function lc(e){return!!e&&"function"==typeof e.then}function xD(e){return!!e&&"function"==typeof e.subscribe}const OD=new R("");let kD=(()=>{class e{resolve;reject;initialized=!1;done=!1;donePromise=new Promise((t,i)=>{this.resolve=t,this.reject=i});appInits=k(OD,{optional:!0})??[];injector=k(Rt);constructor(){}runInitializers(){if(this.initialized)return;const t=[];for(const o of this.appInits){const r=Lm(this.injector,o);if(lc(r))t.push(r);else if(xD(r)){const s=new Promise((a,l)=>{r.subscribe({complete:a,error:l})});t.push(s)}}const i=()=>{this.done=!0,this.resolve()};Promise.all(t).then(()=>{i()}).catch(o=>{this.reject(o)}),0===t.length&&i(),this.initialized=!0}static \u0275fac=function(i){return new(i||e)};static \u0275prov=ee({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();const rP=new R("");function RD(e,n){return Array.isArray(n)?n.reduce(RD,e):{...e,...n}}let di=(()=>{class e{_runningTick=!1;_destroyed=!1;_destroyListeners=[];_views=[];internalErrorHandler=k(Zn);afterRenderManager=k(rC);zonelessEnabled=k(ja);rootEffectScheduler=k(Ev);dirtyFlags=0;tracingSnapshot=null;allTestViews=new Set;autoDetectTestViews=new Set;includeAllTestViews=!1;afterTick=new ln;get allViews(){return[...(this.includeAllTestViews?this.allTestViews:this.autoDetectTestViews).keys(),...this._views]}get destroyed(){return this._destroyed}componentTypes=[];components=[];internalPendingTask=k(Li);get isStable(){return this.internalPendingTask.hasPendingTasksObservable.pipe(Td(t=>!t))}constructor(){k(Yo,{optional:!0})}whenStable(){let t;return new Promise(i=>{t=this.isStable.subscribe({next:o=>{o&&i()}})}).finally(()=>{t.unsubscribe()})}_injector=k(jt);_rendererFactory=null;get injector(){return this._injector}bootstrap(t,i){return this.bootstrapImpl(t,i)}bootstrapImpl(t,i,o=Rt.NULL){return this._injector.get(ue).run(()=>{de(F.BootstrapComponentStart);const s=t instanceof ab;if(!this._injector.get(kD).done)throw new M(405,"");let l;l=s?t:this._injector.get(Zl).resolveComponentFactory(t),this.componentTypes.push(l.componentType);const c=function aP(e){return e.isBoundToModule}(l)?void 0:this._injector.get(Xi),d=l.create(o,[],i||l.selector,c),h=d.location.nativeElement,g=d.injector.get(AD,null);return g?.registerApplication(h),d.onDestroy(()=>{this.detachView(d.hostView),cc(this.components,d),g?.unregisterApplication(h)}),this._loadComponent(d),de(F.BootstrapComponentEnd,d),d})}tick(){this.zonelessEnabled||(this.dirtyFlags|=1),this._tick()}_tick(){de(F.ChangeDetectionStart),null!==this.tracingSnapshot?this.tracingSnapshot.run(Vf.CHANGE_DETECTION,this.tickImpl):this.tickImpl()}tickImpl=()=>{if(this._runningTick)throw de(F.ChangeDetectionEnd),new M(101,!1);const t=B(null);try{this._runningTick=!0,this.synchronize()}finally{this._runningTick=!1,this.tracingSnapshot?.dispose(),this.tracingSnapshot=null,B(t),this.afterTick.next(),de(F.ChangeDetectionEnd)}};synchronize(){null===this._rendererFactory&&!this._injector.destroyed&&(this._rendererFactory=this._injector.get(uh,null,{optional:!0}));let t=0;for(;0!==this.dirtyFlags&&t++<10;){de(F.ChangeDetectionSyncStart);try{this.synchronizeOnce()}finally{de(F.ChangeDetectionSyncEnd)}}}synchronizeOnce(){16&this.dirtyFlags&&(this.dirtyFlags&=-17,this.rootEffectScheduler.flush());let t=!1;if(7&this.dirtyFlags){const i=!!(1&this.dirtyFlags);this.dirtyFlags&=-8,this.dirtyFlags|=8;for(let{_lView:o}of this.allViews)(i||Ra(o))&&(Bl(o,i&&!this.zonelessEnabled?0:1),t=!0);if(this.dirtyFlags&=-5,this.syncDirtyFlagsWithViews(),23&this.dirtyFlags)return}t||(this._rendererFactory?.begin?.(),this._rendererFactory?.end?.()),8&this.dirtyFlags&&(this.dirtyFlags&=-9,this.afterRenderManager.execute()),this.syncDirtyFlagsWithViews()}syncDirtyFlagsWithViews(){this.allViews.some(({_lView:t})=>Ra(t))?this.dirtyFlags|=2:this.dirtyFlags&=-8}attachView(t){const i=t;this._views.push(i),i.attachToAppRef(this)}detachView(t){const i=t;cc(this._views,i),i.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView);try{this.tick()}catch(o){this.internalErrorHandler(o)}this.components.push(t),this._injector.get(rP,[]).forEach(o=>o(t))}ngOnDestroy(){if(!this._destroyed)try{this._destroyListeners.forEach(t=>t()),this._views.slice().forEach(t=>t.destroy())}finally{this._destroyed=!0,this._views=[],this._destroyListeners=[]}}onDestroy(t){return this._destroyListeners.push(t),()=>cc(this._destroyListeners,t)}destroy(){if(this._destroyed)throw new M(406,!1);const t=this._injector;t.destroy&&!t.destroyed&&t.destroy()}get viewCount(){return this._views.length}static \u0275fac=function(i){return new(i||e)};static \u0275prov=ee({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();function cc(e,n){const t=e.indexOf(n);t>-1&&e.splice(t,1)}function pt(e,n,t,i){const o=w();return Ee(o,Ct(),n)&&(K(),function gk(e,n,t,i,o,r){const s=Pe(e,n);!function Fl(e,n,t,i,o,r,s){if(null==r)e.removeAttribute(n,o,t);else{const a=null==s?Q(r):s(r,i||"",o);e.setAttribute(n,o,a,t)}}(n[Y],s,r,e.value,t,i,o)}(Xt(),o,e,n,t,i)),pt}class YP{destroy(n){}updateValue(n,t){}swap(n,t){const i=Math.min(n,t),o=Math.max(n,t),r=this.detach(o);if(o-i>1){const s=this.detach(i);this.attach(i,r),this.attach(o,s)}else this.attach(i,r)}move(n,t){this.attach(t,this.detach(n))}}function Kh(e,n,t,i,o){return e===t&&Object.is(n,i)?1:Object.is(o(e,n),o(t,i))?-1:0}function Jh(e,n,t,i){return!(void 0===n||!n.has(i)||(e.attach(t,n.get(i)),n.delete(i),0))}function zD(e,n,t,i,o){if(Jh(e,n,i,t(i,o)))e.updateValue(i,o);else{const r=e.create(i,o);e.attach(i,r)}}function GD(e,n,t,i){const o=new Set;for(let r=n;r<=t;r++)o.add(i(r,e.at(r)));return o}class WD{kvMap=new Map;_vMap=void 0;has(n){return this.kvMap.has(n)}delete(n){if(!this.has(n))return!1;const t=this.kvMap.get(n);return void 0!==this._vMap&&this._vMap.has(t)?(this.kvMap.set(n,this._vMap.get(t)),this._vMap.delete(t)):this.kvMap.delete(n),!0}get(n){return this.kvMap.get(n)}set(n,t){if(this.kvMap.has(n)){let i=this.kvMap.get(n);void 0===this._vMap&&(this._vMap=new Map);const o=this._vMap;for(;o.has(i);)i=o.get(i);o.set(i,t)}else this.kvMap.set(n,t)}forEach(n){for(let[t,i]of this.kvMap)if(n(i,t),void 0!==this._vMap){const o=this._vMap;for(;o.has(i);)i=o.get(i),n(i,t)}}}function y(e,n,t,i,o,r,s,a){et("NgControlFlow");const l=w(),c=K();return eo(l,c,e,n,t,i,o,at(c.consts,r),256,s,a),Xh}function Xh(e,n,t,i,o,r,s,a){et("NgControlFlow");const l=w(),c=K();return eo(l,c,e,n,t,i,o,at(c.consts,r),512,s,a),Xh}function C(e,n){et("NgControlFlow");const t=w(),i=Ct(),o=t[i]!==ce?t[i]:-1,r=-1!==o?hc(t,j+o):void 0;if(Ee(t,i,e)){const a=B(null);try{if(void 0!==r&&Xf(r,0),-1!==e){const l=j+e,c=hc(t,l),u=eg(t[1],l),d=null;tr(c,Xo(t,u,n,{dehydratedView:d}),0,Zi(u,d))}}finally{B(a)}}else if(void 0!==r){const a=FC(r,0);void 0!==a&&(a[8]=n)}}class JP{lContainer;$implicit;$index;constructor(n,t,i){this.lContainer=n,this.$implicit=t,this.$index=i}get $count(){return this.lContainer.length-10}}function nt(e,n){return n}class e2{hasEmptyBlock;trackByFn;liveCollection;constructor(n,t,i){this.hasEmptyBlock=n,this.trackByFn=t,this.liveCollection=i}}function it(e,n,t,i,o,r,s,a,l,c,u,d,h){et("NgControlFlow");const g=w(),p=K(),b=void 0!==l,S=w(),O=a?s.bind(S[15][8]):s,E=new e2(b,O);S[j+e]=E,eo(g,p,e+1,n,t,i,o,at(p.consts,r),256),b&&eo(g,p,e+2,l,c,u,d,at(p.consts,h),512)}class t2 extends YP{lContainer;hostLView;templateTNode;operationsCounter=void 0;needsIndexUpdate=!1;constructor(n,t,i){super(),this.lContainer=n,this.hostLView=t,this.templateTNode=i}get length(){return this.lContainer.length-10}at(n){return this.getLView(n)[8].$implicit}attach(n,t){const i=t[6];this.needsIndexUpdate||=n!==this.length,tr(this.lContainer,t,n,Zi(this.templateTNode,i)),function n2(e,n){if(e.length<=10)return;const i=e[10+n],o=i?i[26]:void 0;i&&o&&o.detachedLeaveAnimationFns&&o.detachedLeaveAnimationFns.length>0&&(function KO(e,n){const t=e.get(xl);if(n.detachedLeaveAnimationFns){for(const i of n.detachedLeaveAnimationFns)t.queue.delete(i);n.detachedLeaveAnimationFns=void 0}}(i[9],o),Wi.delete(i[19]),o.detachedLeaveAnimationFns=void 0)}(this.lContainer,n)}detach(n){return this.needsIndexUpdate||=n!==this.length-1,function i2(e,n){if(e.length<=10)return;const i=e[10+n],o=i?i[26]:void 0;o&&o.leave&&o.leave.size>0&&(o.detachedLeaveAnimationFns=[])}(this.lContainer,n),function o2(e,n){return vs(e,n)}(this.lContainer,n)}create(n,t){return Xo(this.hostLView,this.templateTNode,new JP(this.lContainer,t,n),{dehydratedView:null})}destroy(n){ps(n[1],n)}updateValue(n,t){this.getLView(n)[8].$implicit=t}reset(){this.needsIndexUpdate=!1}updateIndexes(){if(this.needsIndexUpdate)for(let n=0;n<this.length;n++)this.getLView(n)[8].$index=n}getLView(n){return function r2(e,n){return FC(e,n)}(this.lContainer,n)}}function ot(e){const n=B(null),t=Je();try{const i=w(),o=i[1],r=i[t],s=t+1,a=hc(i,s);if(void 0===r.liveCollection){const c=eg(o,s);r.liveCollection=new t2(a,i,c)}else r.liveCollection.reset();const l=r.liveCollection;if(function KP(e,n,t,i){let o,r,s=0,a=e.length-1;if(Array.isArray(n)){B(i);let c=n.length-1;for(B(null);s<=a&&s<=c;){const u=e.at(s),d=n[s],h=Kh(s,u,s,d,t);if(0!==h){h<0&&e.updateValue(s,d),s++;continue}const g=e.at(a),p=n[c],b=Kh(a,g,c,p,t);if(0!==b){b<0&&e.updateValue(a,p),a--,c--;continue}const S=t(s,u),O=t(a,g),E=t(s,d);if(Object.is(E,O)){const J=t(c,p);Object.is(J,S)?(e.swap(s,a),e.updateValue(a,p),c--,a--):e.move(a,s),e.updateValue(s,d),s++;continue}if(o??=new WD,r??=GD(e,s,a,t),Jh(e,o,s,E))e.updateValue(s,d),s++,a++;else if(r.has(E))o.set(S,e.detach(s)),a--;else{const J=e.create(s,n[s]);e.attach(s,J),s++,a++}}for(;s<=c;)zD(e,o,t,s,n[s]),s++}else if(null!=n){B(i);const c=n[Symbol.iterator]();B(null);let u=c.next();for(;!u.done&&s<=a;){const d=e.at(s),h=u.value,g=Kh(s,d,s,h,t);if(0!==g)g<0&&e.updateValue(s,h),s++,u=c.next();else{o??=new WD,r??=GD(e,s,a,t);const p=t(s,h);if(Jh(e,o,s,p))e.updateValue(s,h),s++,a++,u=c.next();else if(r.has(p)){const b=t(s,d);o.set(b,e.detach(s)),a--}else e.attach(s,e.create(s,h)),s++,a++,u=c.next()}}for(;!u.done;)zD(e,o,t,e.length,u.value),u=c.next()}for(;s<=a;)e.destroy(e.detach(a--));o?.forEach(c=>{e.destroy(c)})}(l,e,r.trackByFn,n),l.updateIndexes(),r.hasEmptyBlock){const c=Ct(),u=0===l.length;if(Ee(i,c,u)){const d=t+2,h=hc(i,d);if(u){const g=eg(o,d),p=null;tr(h,Xo(i,g,void 0,{dehydratedView:p}),0,Zi(g,p))}else o.firstUpdatePass&&function Wl(e){const n=e[6]??[],i=e[3][Y],o=[];for(const r of n)void 0!==r.data.di?o.push(r):tb(r,i);e[6]=o}(h),Xf(h,0)}}}finally{B(n)}}function hc(e,n){return e[n]}function eg(e,n){return Ao(e,n)}function A(e,n,t){const i=w();return Ee(i,Ct(),n)&&(K(),Zf(Xt(),i,e,n,i[Y],t)),A}function tg(e,n,t,i,o){Vl(n,e,t,o?"class":"style",i)}function _(e,n,t,i){const o=w(),r=o[1],s=e+j,a=r.firstCreatePass?hh(s,o,2,n,Yf,hd(),t,i):r.data[s];if(fn(a)){const l=o[10].tracingService;if(l&&l.componentCreate)return l.componentCreate(vh(r.data[a.directiveStart+a.componentOffset]),()=>(qD(e,n,o,a,i),_))}return qD(e,n,o,a,i),_}function qD(e,n,t,i,o){if(function Ll(e,n,t,i,o){const r=j+t,s=n[1],a=o(s,n,e,i,t);n[r]=a,Sn(e,!0);const l=2===e.type;return l?(By(n[Y],a,e),(0===function QT(){return q.lFrame.elementDepthCount}()||So(e))&&Dt(a,n),function YT(){q.lFrame.elementDepthCount++}()):Dt(a,n),Va()&&(!l||!dl(e))&&Gf(s,n,a,e),e}(i,t,e,n,og),So(i)){const r=t[1];Rl(r,t,i),pf(r,i,t)}null!=o&&Jo(t,i)}function v(){const e=K(),t=Pl(Z());return e.firstCreatePass&&gh(e,t),function Km(e){return q.skipHydrationRootTNode===e}(t)&&function Jm(){q.skipHydrationRootTNode=null}(),function Qm(){q.lFrame.elementDepthCount--}(),null!=t.classesWithoutHost&&function nN(e){return!!(8&e.flags)}(t)&&tg(e,t,w(),t.classesWithoutHost,!0),null!=t.stylesWithoutHost&&function iN(e){return!!(16&e.flags)}(t)&&tg(e,t,w(),t.stylesWithoutHost,!1),v}function x(e,n,t,i){return _(e,n,t,i),v(),x}let og=(e,n,t,i,o)=>(zr(!0),bl(n[Y],i,function a1(){return q.lFrame.currentNamespace}()));function fe(){return w()}const pc="en-US";let nw=pc;function z(e,n,t){const i=w(),o=K(),r=Z();return ug(o,i,i[Y],r,e,n,t),z}function ug(e,n,t,i,o,r,s){let a=!0,l=null;if((3&i.type||s)&&(l??=li(i,n,r),function mh(e,n,t,i,o,r,s,a){const l=So(e);let c=!1,u=null;if(!i&&l&&(u=function qR(e,n,t,i){const o=e.cleanup;if(null!=o)for(let r=0;r<o.length-1;r+=2){const s=o[r];if(s===t&&o[r+1]===i){const a=n[7],l=o[r+2];return a&&a.length>l?a[l]:null}"string"==typeof s&&(r+=2)}return null}(n,t,r,e.index)),null!==u)(u.__ngLastListenerFn__||u).__ngNextListenerFn__=s,u.__ngLastListenerFn__=s,c=!0;else{const d=Pe(e,t),h=i?i(d):d;i||(a.__ngNativeEl__=d);const g=o.listen(h,r,a);(function WR(e){return e.startsWith("animation")||e.startsWith("transition")})(r)||mb(i?b=>i(Ye(b[e.index])):e.index,n,t,r,a,g,!1)}return c}(i,e,n,s,t,o,r,l)&&(a=!1)),a){const c=i.outputs?.[o],u=i.hostDirectiveOutputs?.[o];if(u&&u.length)for(let d=0;d<u.length;d+=2){const h=u[d],g=u[d+1];l??=li(i,n,r),sr(i,n,h,g,o,l)}if(c&&c.length)for(const d of c)l??=li(i,n,r),sr(i,n,d,o,o,l)}}function m(e=1){return function i1(e){return(q.lFrame.contextLView=function Wm(e,n){for(;e>0;)n=n[14],e--;return n}(e,q.lFrame.contextLView))[8]}(e)}function dg(e,n,t,i){return function Fb(e,n,t,i){const o=K();if(o.firstCreatePass){const r=Z();Lb(o,new xb(n,t,i),r.index),function wF(e,n){const t=e.contentQueries||(e.contentQueries=[]);n!==(t.length?t[t.length-1]:-1)&&t.push(e.queries.length-1,n)}(o,e),!(2&~t)&&(o.staticContentQueries=!0)}return kb(o,w(),t)}(e,n,t,i),dg}function fg(e,n,t){return function Rb(e,n,t){const i=K();return i.firstCreatePass&&(Lb(i,new xb(e,n,t),-1),!(2&~n)&&(i.staticViewQueries=!0)),kb(i,w(),n)}(e,n,t),fg}function St(e){const n=w(),t=K(),i=md();Pa(i+1);const o=Th(t,i);if(e.dirty&&function WT(e){return!(4&~e[2])}(n)===!(2&~o.metadata.flags)){if(null===o.matches)e.reset([]);else{const r=Pb(n,i);e.reset(r,w_),e.notifyOnChanges()}return!0}return!1}function Tt(){return function Sh(e,n){return e[18].queries[n].queryList}(w(),md())}function Cc(e,n){return e<<17|n<<2}function ro(e){return e>>17&32767}function hg(e){return 2|e}function gr(e){return(131068&e)>>2}function gg(e,n){return-131069&e|n<<2}function pg(e){return 1|e}function Iw(e,n,t,i){const o=e[t+1],r=null===n;let s=i?ro(o):gr(o),a=!1;for(;0!==s&&(!1===a||r);){const c=e[s+1];lV(e[s],n)&&(a=!0,e[s+1]=i?pg(c):hg(c)),s=i?ro(c):gr(c)}a&&(e[t+1]=i?hg(o):pg(o))}function lV(e,n){return null===e||null==n||(Array.isArray(e)?e[1]:e)===n||!(!Array.isArray(e)||"string"!=typeof n)&&Br(e,n)>=0}new Set(Object.values($y).flatMap(e=>e?Object.keys(e):[]));const We={textEnd:0,key:0,keyEnd:0,value:0,valueEnd:0};function Sw(e){return e.substring(We.key,We.keyEnd)}function Tw(e,n){const t=We.textEnd;return t===n?-1:(n=We.keyEnd=function fV(e,n,t){for(;n<t&&e.charCodeAt(n)>32;)n++;return n}(e,We.key=n,t),pr(e,n,t))}function pr(e,n,t){for(;n<t&&e.charCodeAt(n)<=32;)n++;return n}function bc(e,n,t){return kw(e,n,t,!1),bc}function Ln(e,n){return kw(e,n,null,!0),Ln}function Gt(e){!function Rw(e,n,t,i){const o=K(),r=An(2);o.firstUpdatePass&&Lw(o,null,r,i);const s=w();if(t!==ce&&Ee(s,r,t)){const a=o.data[Je()];if(Bw(a,i)&&!Fw(o,r)){let l=i?a.classesWithoutHost:a.stylesWithoutHost;null!==l&&(t=Lu(l,t||"")),tg(o,a,s,t,i)}else!function EV(e,n,t,i,o,r,s,a){o===ce&&(o=ye);let l=0,c=0,u=0<o.length?o[0]:null,d=0<r.length?r[0]:null;for(;null!==u||null!==d;){const h=l<o.length?o[l+1]:void 0,g=c<r.length?r[c+1]:void 0;let b,p=null;u===d?(l+=2,c+=2,h!==g&&(p=d,b=g)):null===d||null!==u&&u<d?(l+=2,p=u):(c+=2,p=d,b=g),null!==p&&Vw(e,n,t,i,p,b,s,a),u=l<o.length?o[l]:null,d=c<r.length?r[c]:null}}(o,a,s,s[Y],s[r+1],s[r+1]=function DV(e,n,t){if(null==t||""===t)return ye;const i=[],o=ii(t);if(Array.isArray(o))for(let r=0;r<o.length;r++)e(i,o[r],!0);else if(o instanceof Set)for(const r of o)e(i,r,!0);else if("object"==typeof o)for(const r in o)o.hasOwnProperty(r)&&e(i,r,o[r]);else"string"==typeof o&&n(i,o);return i}(e,n,t),i,r)}}(wV,vV,e,!0)}function vV(e,n){for(let t=function uV(e){return function Nw(e){We.key=0,We.keyEnd=0,We.value=0,We.valueEnd=0,We.textEnd=e.length}(e),Tw(e,pr(e,0,We.textEnd))}(n);t>=0;t=Tw(n,t))Sa(e,Sw(n),!0)}function kw(e,n,t,i){const o=w(),r=K(),s=An(2);r.firstUpdatePass&&Lw(r,e,s,i),n!==ce&&Ee(o,s,n)&&Vw(r,r.data[Je()],o,o[Y],e,o[s+1]=function MV(e,n){return null==e||""===e||("string"==typeof n?e+=n:"object"==typeof e&&(e=$n(ii(e)))),e}(n,t),i,s)}function Fw(e,n){return n>=e.expandoStartIndex}function Lw(e,n,t,i){const o=e.data;if(null===o[t+1]){const r=o[Je()],s=Fw(e,t);Bw(r,i)&&null===n&&!s&&(n=!1),n=function _V(e,n,t,i){const o=function pd(e){const n=q.lFrame.currentDirectiveIndex;return-1===n?null:e[n]}(e);let r=i?n.residualClasses:n.residualStyles;if(null===o)0===(i?n.classBindings:n.styleBindings)&&(t=Bs(t=mg(null,e,n,t,i),n.attrs,i),r=null);else{const s=n.directiveStylingLast;if(-1===s||e[s]!==o)if(t=mg(o,e,n,t,i),null===r){let l=function yV(e,n,t){const i=t?n.classBindings:n.styleBindings;if(0!==gr(i))return e[ro(i)]}(e,n,i);void 0!==l&&Array.isArray(l)&&(l=mg(null,e,n,l[1],i),l=Bs(l,n.attrs,i),function CV(e,n,t,i){e[ro(t?n.classBindings:n.styleBindings)]=i}(e,n,i,l))}else r=function bV(e,n,t){let i;const o=n.directiveEnd;for(let r=1+n.directiveStylingLast;r<o;r++)i=Bs(i,e[r].hostAttrs,t);return Bs(i,n.attrs,t)}(e,n,i)}return void 0!==r&&(i?n.residualClasses=r:n.residualStyles=r),t}(o,r,n,i),function sV(e,n,t,i,o,r){let s=r?n.classBindings:n.styleBindings,a=ro(s),l=gr(s);e[i]=t;let u,c=!1;if(Array.isArray(t)?(u=t[1],(null===u||Br(t,u)>0)&&(c=!0)):u=t,o)if(0!==l){const h=ro(e[a+1]);e[i+1]=Cc(h,a),0!==h&&(e[h+1]=gg(e[h+1],i)),e[a+1]=function oV(e,n){return 131071&e|n<<17}(e[a+1],i)}else e[i+1]=Cc(a,0),0!==a&&(e[a+1]=gg(e[a+1],i)),a=i;else e[i+1]=Cc(l,0),0===a?a=i:e[l+1]=gg(e[l+1],i),l=i;c&&(e[i+1]=hg(e[i+1])),Iw(e,u,i,!0),Iw(e,u,i,!1),function aV(e,n,t,i,o){const r=o?e.residualClasses:e.residualStyles;null!=r&&"string"==typeof n&&Br(r,n)>=0&&(t[i+1]=pg(t[i+1]))}(n,u,e,i,r),s=Cc(a,l),r?n.classBindings=s:n.styleBindings=s}(o,r,n,t,s,i)}}function mg(e,n,t,i,o){let r=null;const s=t.directiveEnd;let a=t.directiveStylingLast;for(-1===a?a=t.directiveStart:a++;a<s&&(r=n[a],i=Bs(i,r.hostAttrs,o),r!==e);)a++;return null!==e&&(t.directiveStylingLast=a),i}function Bs(e,n,t){const i=t?1:2;let o=-1;if(null!==n)for(let r=0;r<n.length;r++){const s=n[r];"number"==typeof s?o=s:o===i&&(Array.isArray(e)||(e=void 0===e?[]:["",e]),Sa(e,s,!!t||n[++r]))}return void 0===e?null:e}function wV(e,n,t){const i=String(n);""!==i&&!i.includes(" ")&&Sa(e,i,t)}function Vw(e,n,t,i,o,r,s,a){if(!(3&n.type))return;const l=e.data,c=l[a+1],u=function rV(e){return!(1&~e)}(c)?Hw(l,n,t,o,gr(c),s):void 0;Dc(u)||(Dc(r)||function iV(e){return!(2&~e)}(c)&&(r=Hw(l,null,t,o,a,s)),function sk(e,n,t,i,o){if(n)o?e.addClass(t,i):e.removeClass(t,i);else{let r=-1===i.indexOf("-")?void 0:si.DashCase;null==o?e.removeStyle(t,i,r):("string"==typeof o&&o.endsWith("!important")&&(o=o.slice(0,-10),r|=si.Important),e.setStyle(t,i,o,r))}}(i,s,To(Je(),t),o,r))}function Hw(e,n,t,i,o,r){const s=null===n;let a;for(;o>0;){const l=e[o],c=Array.isArray(l),u=c?l[1]:l,d=null===u;let h=t[o+1];h===ce&&(h=d?ye:void 0);let g=d?qu(h,i):u===i?h:void 0;if(c&&!Dc(g)&&(g=qu(l,i)),Dc(g)&&(a=g,s))return a;const p=e[o+1];o=s?ro(p):gr(p)}if(null!==n){let l=r?n.residualClasses:n.residualStyles;null!=l&&(a=qu(l,i))}return a}function Dc(e){return void 0!==e}function Bw(e,n){return!!(e.flags&(n?8:16))}function D(e,n=""){const t=w(),i=K(),o=e+j,r=i.firstCreatePass?Qi(i,o,1,n,null):i.data[o],s=jw(i,t,r,n);t[o]=s,Va()&&Gf(i,t,s,r),Sn(r,!1)}let jw=(e,n,t,i)=>(zr(!0),function Ef(e,n){return e.createText(n)}(n[Y],i));function $w(e,n,t,i=""){return Ee(e,Ct(),t)?n+Q(t)+i:ce}function L(e){return H("",e),L}function H(e,n,t){const i=w(),o=$w(i,e,n,t);return o!==ce&&function Pn(e,n,t){const i=To(n,e);!function Ly(e,n,t){e.setValue(n,t)}(e[Y],i,t)}(i,Je(),o),H}function qe(e,n,t){gD(n)&&(n=n());const i=w();return Ee(i,Ct(),n)&&(K(),Zf(Xt(),i,e,n,i[Y],t)),qe}function Ce(e,n){const t=gD(e);return t&&e.set(n),t}function Ke(e,n){const t=w(),i=K(),o=Z();return ug(i,t,t[Y],o,e,n),Ke}function Vn(e){return Ee(w(),Ct(),e)?Q(e):ce}function Wt(e,n,t=""){return $w(w(),e,n,t)}function aE(e,n,t){const i=K();i.firstCreatePass&&lE(n,i.data,i.blueprint,Jt(e),t)}function lE(e,n,t,i,o){if(e=X(e),Array.isArray(e))for(let r=0;r<e.length;r++)lE(e[r],n,t,i,o);else{const r=K(),s=w(),a=Z();let l=bn(e)?e:X(e.provide);const c=Fm(e),u=1048575&a.providerIndexes,d=a.directiveStart,h=a.providerIndexes>>20;if(bn(e)||!e.multi){const g=new Xr(c,o,N,null),p=_g(l,n,o?u:u+h,d);-1===p?(Ud(el(a,s),r,l),vg(r,e,n.length),n.push(l),a.directiveStart++,a.directiveEnd++,o&&(a.providerIndexes+=1048576),t.push(g),s.push(g)):(t[p]=g,s[p]=g)}else{const g=_g(l,n,u+h,d),p=_g(l,n,u,u+h),S=p>=0&&t[p];if(o&&!S||!o&&!(g>=0&&t[g])){Ud(el(a,s),r,l);const O=function jV(e,n,t,i,o){const s=new Xr(e,t,N,null);return s.multi=[],s.index=n,s.componentProviders=0,cE(s,o,i&&!t),s}(o?BV:HV,t.length,o,i,c);!o&&S&&(t[p].providerFactory=O),vg(r,e,n.length,0),n.push(l),a.directiveStart++,a.directiveEnd++,o&&(a.providerIndexes+=1048576),t.push(O),s.push(O)}else vg(r,e,g>-1?g:p,cE(t[o?p:g],c,!o&&i));!o&&i&&S&&t[p].componentProviders++}}}function vg(e,n,t,i){const o=bn(n),r=function km(e){return!!e.useClass}(n);if(o||r){const l=(r?X(n.useClass):n).prototype.ngOnDestroy;if(l){const c=e.destroyHooks||(e.destroyHooks=[]);if(!o&&n.multi){const u=c.indexOf(t);-1===u?c.push(t,[i,l]):c[u+1].push(i,l)}else c.push(t,l)}}}function cE(e,n,t){return t&&e.componentProviders++,e.multi.push(n)-1}function _g(e,n,t,i){for(let o=t;o<i;o++)if(n[o]===e)return o;return-1}function HV(e,n,t,i,o){return yg(this.multi,[])}function BV(e,n,t,i,o){const r=this.multi;let s;if(this.providerFactory){const a=this.providerFactory.componentProviders,l=ns(i,i[1],this.providerFactory.index,o);s=l.slice(0,a),yg(r,s);for(let c=a;c<l.length;c++)s.push(l[c])}else s=[],yg(r,s);return s}function yg(e,n){for(let t=0;t<e.length;t++)n.push((0,e[t])());return n}function be(e,n){return t=>{t.providersResolver=(i,o)=>aE(i,o?o(e):e,!1),n&&(t.viewProvidersResolver=(i,o)=>aE(i,o?o(n):n,!0))}}function mr(e,n,t){return function dE(e,n,t,i,o,r){const s=n+t;return Ee(e,s,o)?nn(e,s+1,r?i.call(r,o):i(o)):js(e,s+1)}(w(),lt(),e,n,t)}function Cg(e,n,t,i){return function fE(e,n,t,i,o,r,s){const a=n+t;return Ki(e,a,o,r)?nn(e,a+2,s?i.call(s,o,r):i(o,r)):js(e,a+2)}(w(),lt(),e,n,t,i)}function ke(e,n,t,i,o){return hE(w(),lt(),e,n,t,i,o)}function js(e,n){const t=e[n];return t===ce?void 0:t}function hE(e,n,t,i,o,r,s,a){const l=n+t;return function Jl(e,n,t,i,o){const r=Ki(e,n,t,i);return Ee(e,n+2,o)||r}(e,l,o,r,s)?nn(e,l+3,a?i.call(a,o,r,s):i(o,r,s)):js(e,l+3)}let kH=(()=>{class e{applicationErrorHandler=k(Zn);appRef=k(di);taskService=k(Li);ngZone=k(ue);zonelessEnabled=k(ja);tracing=k(Yo,{optional:!0});zoneIsDefined=typeof Zone<"u"&&!!Zone.root.run;schedulerTickApplyArgs=[{data:{__scheduler_tick__:!0}}];subscriptions=new Nt;angularZoneId=this.zoneIsDefined?this.ngZone._inner?.get(Ba):null;scheduleInRootZone=!this.zonelessEnabled&&this.zoneIsDefined&&(k(Dv,{optional:!0})??!1);cancelScheduledCallback=null;useMicrotaskScheduler=!1;runningTick=!1;pendingRenderTaskId=null;constructor(){this.subscriptions.add(this.appRef.afterTick.subscribe(()=>{const t=this.taskService.add();this.runningTick||(this.cleanup(),this.zonelessEnabled&&!this.appRef.includeAllTestViews)?(this.switchToMicrotaskScheduler(),this.taskService.remove(t)):this.taskService.remove(t)})),this.subscriptions.add(this.ngZone.onUnstable.subscribe(()=>{this.runningTick||this.cleanup()}))}switchToMicrotaskScheduler(){this.ngZone.runOutsideAngular(()=>{const t=this.taskService.add();this.useMicrotaskScheduler=!0,queueMicrotask(()=>{this.useMicrotaskScheduler=!1,this.taskService.remove(t)})})}notify(t){if(!this.zonelessEnabled&&5===t)return;switch(t){case 0:case 6:case 13:this.appRef.dirtyFlags|=2;break;case 3:case 2:case 4:case 5:case 1:this.appRef.dirtyFlags|=4;break;case 12:this.appRef.dirtyFlags|=16;break;case 11:break;default:this.appRef.dirtyFlags|=8}if(this.appRef.tracingSnapshot=this.tracing?.snapshot(this.appRef.tracingSnapshot)??null,!this.shouldScheduleTick())return;const i=this.useMicrotaskScheduler?d1:_v;this.pendingRenderTaskId=this.taskService.add(),this.cancelScheduledCallback=this.scheduleInRootZone?Zone.root.run(()=>i(()=>this.tick())):this.ngZone.runOutsideAngular(()=>i(()=>this.tick()))}shouldScheduleTick(){return!(this.appRef.destroyed||null!==this.pendingRenderTaskId||this.runningTick||this.appRef._runningTick||!this.zonelessEnabled&&this.zoneIsDefined&&Zone.current.get(Ba+this.angularZoneId))}tick(){if(this.runningTick||this.appRef.destroyed)return;if(0===this.appRef.dirtyFlags)return void this.cleanup();!this.zonelessEnabled&&7&this.appRef.dirtyFlags&&(this.appRef.dirtyFlags|=1);const t=this.taskService.add();try{this.ngZone.run(()=>{this.runningTick=!0,this.appRef._tick()},void 0,this.schedulerTickApplyArgs)}catch(i){this.applicationErrorHandler(i)}finally{this.taskService.remove(t),this.cleanup()}}ngOnDestroy(){this.subscriptions.unsubscribe(),this.cleanup()}cleanup(){if(this.runningTick=!1,this.cancelScheduledCallback?.(),this.cancelScheduledCallback=null,null!==this.pendingRenderTaskId){const t=this.pendingRenderTaskId;this.pendingRenderTaskId=null,this.taskService.remove(t)}}static \u0275fac=function(i){return new(i||e)};static \u0275prov=ee({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();const gi=new R("",{factory:()=>k(gi,{optional:!0,skipSelf:!0})||function RH(){return typeof $localize<"u"&&$localize.locale||pc}()});let Aj=(()=>{class e{zone=k(ue);changeDetectionScheduler=k(Oo);applicationRef=k(di);applicationErrorHandler=k(Zn);_onMicrotaskEmptySubscription;initialize(){this._onMicrotaskEmptySubscription||(this._onMicrotaskEmptySubscription=this.zone.onMicrotaskEmpty.subscribe({next:()=>{this.changeDetectionScheduler.runningTick||this.zone.run(()=>{try{this.applicationRef.dirtyFlags|=1,this.applicationRef._tick()}catch(t){this.applicationErrorHandler(t)}})}}))}ngOnDestroy(){this._onMicrotaskEmptySubscription?.unsubscribe()}static \u0275fac=function(i){return new(i||e)};static \u0275prov=ee({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();const Nj=new R("",{factory:()=>!1});function xM(e){return{enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:e?.eventCoalescing??!1,shouldCoalesceRunChangeDetection:e?.runCoalescing??!1}}let kj=(()=>{class e{subscription=new Nt;initialized=!1;zone=k(ue);pendingTasks=k(Li);initialize(){if(this.initialized)return;this.initialized=!0;let t=null;!this.zone.isStable&&!this.zone.hasPendingMacrotasks&&!this.zone.hasPendingMicrotasks&&(t=this.pendingTasks.add()),this.zone.runOutsideAngular(()=>{this.subscription.add(this.zone.onStable.subscribe(()=>{ue.assertNotInAngularZone(),queueMicrotask(()=>{null!==t&&!this.zone.hasPendingMacrotasks&&!this.zone.hasPendingMicrotasks&&(this.pendingTasks.remove(t),t=null)})}))}),this.subscription.add(this.zone.onUnstable.subscribe(()=>{ue.assertInAngularZone(),t??=this.pendingTasks.add()}))}ngOnDestroy(){this.subscription.unsubscribe()}static \u0275fac=function(i){return new(i||e)};static \u0275prov=ee({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();const kc=new R(""),Pj=new R("");function qs(e){return!e.moduleRef}let RM;function FM(){RM=Vj}function Vj(e,n){const t=e.injector.get(di);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(i=>t.bootstrap(i));else{if(!e.instance.ngDoBootstrap)throw new M(-403,!1);e.instance.ngDoBootstrap(t)}n.push(e)}let LM=(()=>{class e{_injector;_modules=[];_destroyListeners=[];_destroyed=!1;constructor(t){this._injector=t}bootstrapModuleFactory(t,i){const o=[[{provide:Oo,useExisting:kH},{provide:ue,useClass:m1},{provide:ja,useValue:!0}],...i?.applicationProviders??[],y1],r=function OF(e,n,t){return new kh(e,n,t,!1)}(t.moduleType,this.injector,o);return FM(),function kM(e){const n=qs(e)?e.r3Injector:e.moduleRef.injector,t=n.get(ue);return t.run(()=>{qs(e)?e.r3Injector.resolveInjectorInitializers():e.moduleRef.resolveInjectorInitializers();const i=n.get(Zn);let o;if(t.runOutsideAngular(()=>{o=t.onError.subscribe({next:i})}),qs(e)){const r=()=>n.destroy(),s=e.platformInjector.get(kc);s.add(r),n.onDestroy(()=>{o.unsubscribe(),s.delete(r)})}else{const r=()=>e.moduleRef.destroy(),s=e.platformInjector.get(kc);s.add(r),e.moduleRef.onDestroy(()=>{cc(e.allPlatformModules,e.moduleRef),o.unsubscribe(),s.delete(r)})}return function Hj(e,n,t){try{const i=t();return lc(i)?i.catch(o=>{throw n.runOutsideAngular(()=>e(o)),o}):i}catch(i){throw n.runOutsideAngular(()=>e(i)),i}}(i,t,()=>{const r=n.get(Li),s=r.add(),a=n.get(kD);return a.runInitializers(),a.donePromise.then(()=>{if(function g2(e){"string"==typeof e&&(nw=e.toLowerCase().replace(/_/g,"-"))}(n.get(gi,pc)||pc),!n.get(Pj,!0))return qs(e)?n.get(di):(e.allPlatformModules.push(e.moduleRef),e.moduleRef);if(qs(e)){const u=n.get(di);return void 0!==e.rootComponent&&u.bootstrap(e.rootComponent),u}return RM?.(e.moduleRef,e.allPlatformModules),e.moduleRef}).finally(()=>{r.remove(s)})})})}({moduleRef:r,allPlatformModules:this._modules,platformInjector:this.injector})}bootstrapModule(t,i=[]){const o=RD({},i);return FM(),function Tj(e,n,t){const i=new Ub(t);return Promise.resolve(i)}(0,0,t).then(r=>this.bootstrapModuleFactory(r,o))}onDestroy(t){this._destroyListeners.push(t)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new M(404,!1);this._modules.slice().forEach(i=>i.destroy()),this._destroyListeners.forEach(i=>i());const t=this._injector.get(kc,null);t&&(t.forEach(i=>i()),t.clear()),this._destroyed=!0}get destroyed(){return this._destroyed}static \u0275fac=function(i){return new(i||e)(re(Rt))};static \u0275prov=ee({token:e,factory:e.\u0275fac,providedIn:"platform"})}return e})(),wr=null;function PM(e,n,t=[]){const i=`Platform: ${n}`,o=new R(i);return(r=[])=>{let s=Rc();if(!s){const a=[...t,...r,{provide:o,useValue:!0}];s=e?.(a)??function Bj(e){if(Rc())throw new M(400,!1);(function sP(){!function US(e){tm=e}(()=>{throw new M(600,"")})})(),wr=e;const n=e.get(LM);return function HM(e){const n=e.get(U_,null);Lm(e,()=>{n?.forEach(t=>t())})}(e),n}(function VM(e=[],n){return Rt.create({name:n,providers:[{provide:Xu,useValue:"platform"},{provide:kc,useValue:new Set([()=>wr=null])},...e]})}(a,i))}return function jj(){const n=Rc();if(!n)throw new M(-401,!1);return n}()}}function Rc(){return wr?.get(LM)??null}let Zs=(()=>class e{static __NG_ELEMENT_ID__=nU})();function nU(e){return function iU(e,n,t){if(fn(e)&&!t){const i=gt(e.index,n);return new _s(i,i)}return 175&e.type?new _s(n[15],n):null}(Z(),w(),!(16&~e))}class YM{supports(n){return n instanceof Map||ph(n)}create(){return new lU}}class lU{_records=new Map;_mapHead=null;_appendAfter=null;_previousMapHead=null;_changesHead=null;_changesTail=null;_additionsHead=null;_additionsTail=null;_removalsHead=null;get isDirty(){return null!==this._additionsHead||null!==this._changesHead||null!==this._removalsHead}forEachItem(n){let t;for(t=this._mapHead;null!==t;t=t._next)n(t)}forEachPreviousItem(n){let t;for(t=this._previousMapHead;null!==t;t=t._nextPrevious)n(t)}forEachChangedItem(n){let t;for(t=this._changesHead;null!==t;t=t._nextChanged)n(t)}forEachAddedItem(n){let t;for(t=this._additionsHead;null!==t;t=t._nextAdded)n(t)}forEachRemovedItem(n){let t;for(t=this._removalsHead;null!==t;t=t._nextRemoved)n(t)}diff(n){if(n){if(!(n instanceof Map||ph(n)))throw new M(900,!1)}else n=new Map;return this.check(n)?this:null}check(n){this._reset();let t=this._mapHead;if(this._appendAfter=null,this._forEach(n,(i,o)=>{if(t&&t.key===o)this._maybeAddToChanges(t,i),this._appendAfter=t,t=t._next;else{const r=this._getOrCreateRecordForKey(o,i);t=this._insertBeforeOrAppend(t,r)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(let i=t;null!==i;i=i._nextRemoved)i===this._mapHead&&(this._mapHead=null),this._records.delete(i.key),i._nextRemoved=i._next,i.previousValue=i.currentValue,i.currentValue=null,i._prev=null,i._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(n,t){if(n){const i=n._prev;return t._next=n,t._prev=i,n._prev=t,i&&(i._next=t),n===this._mapHead&&(this._mapHead=t),this._appendAfter=n,n}return this._appendAfter?(this._appendAfter._next=t,t._prev=this._appendAfter):this._mapHead=t,this._appendAfter=t,null}_getOrCreateRecordForKey(n,t){if(this._records.has(n)){const o=this._records.get(n);this._maybeAddToChanges(o,t);const r=o._prev,s=o._next;return r&&(r._next=s),s&&(s._prev=r),o._next=null,o._prev=null,o}const i=new cU(n);return this._records.set(n,i),i.currentValue=t,this._addToAdditions(i),i}_reset(){if(this.isDirty){let n;for(this._previousMapHead=this._mapHead,n=this._previousMapHead;null!==n;n=n._next)n._nextPrevious=n._next;for(n=this._changesHead;null!==n;n=n._nextChanged)n.previousValue=n.currentValue;for(n=this._additionsHead;null!=n;n=n._nextAdded)n.previousValue=n.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(n,t){Object.is(t,n.currentValue)||(n.previousValue=n.currentValue,n.currentValue=t,this._addToChanges(n))}_addToAdditions(n){null===this._additionsHead?this._additionsHead=this._additionsTail=n:(this._additionsTail._nextAdded=n,this._additionsTail=n)}_addToChanges(n){null===this._changesHead?this._changesHead=this._changesTail=n:(this._changesTail._nextChanged=n,this._changesTail=n)}_forEach(n,t){n instanceof Map?n.forEach(t):Object.keys(n).forEach(i=>t(n[i],i))}}class cU{key;previousValue=null;currentValue=null;_nextPrevious=null;_next=null;_prev=null;_nextAdded=null;_nextRemoved=null;_nextChanged=null;constructor(n){this.key=n}}function JM(){return new Lc([new YM])}let Lc=(()=>{class e{static \u0275prov=ee({token:e,providedIn:"root",factory:JM});factories;constructor(t){this.factories=t}static create(t,i){if(i){const o=i.factories.slice();t=t.concat(o)}return new e(t)}static extend(t){return{provide:e,useFactory:()=>{const i=k(e,{optional:!0,skipSelf:!0});return e.create(t,i||JM())}}}find(t){const i=this.factories.find(o=>o.supports(t));if(i)return i;throw new M(901,!1)}}return e})();const fU=PM(null,"core",[]);let hU=(()=>{class e{constructor(t){}static \u0275fac=function(i){return new(i||e)(re(di))};static \u0275mod=ci({type:e});static \u0275inj=Cn({})}return e})();function Ue(e){return function kU(e){const n=B(null);try{return e()}finally{B(n)}}(e)}function qt(e,n){return function HS(e,n){const t=Object.create(BS);t.computation=e,void 0!==n&&(t.equal=n);const i=()=>{if(Or(t),da(t),t.value===yn)throw t.error;return t.value};return i[Ze]=t,i}(e,n?.equal)}Error,Error;const Xg=/\s+/,wI=[];let Mr=(()=>{class e{_ngEl;_renderer;initialClasses=wI;rawClass;stateMap=new Map;constructor(t,i){this._ngEl=t,this._renderer=i}set klass(t){this.initialClasses=null!=t?t.trim().split(Xg):wI}set ngClass(t){this.rawClass="string"==typeof t?t.trim().split(Xg):t}ngDoCheck(){for(const i of this.initialClasses)this._updateState(i,!0);const t=this.rawClass;if(Array.isArray(t)||t instanceof Set)for(const i of t)this._updateState(i,!0);else if(null!=t)for(const i of Object.keys(t))this._updateState(i,!!t[i]);this._applyStateDiff()}_updateState(t,i){const o=this.stateMap.get(t);void 0!==o?(o.enabled!==i&&(o.changed=!0,o.enabled=i),o.touched=!0):this.stateMap.set(t,{enabled:i,changed:!0,touched:!0})}_applyStateDiff(){for(const t of this.stateMap){const i=t[0],o=t[1];o.changed?(this._toggleClass(i,o.enabled),o.changed=!1):o.touched||(o.enabled&&this._toggleClass(i,!1),this.stateMap.delete(i)),o.touched=!1}}_toggleClass(t,i){(t=t.trim()).length>0&&t.split(Xg).forEach(o=>{i?this._renderer.addClass(this._ngEl.nativeElement,o):this._renderer.removeClass(this._ngEl.nativeElement,o)})}static \u0275fac=function(i){return new(i||e)(N(Lt),N(Rn))};static \u0275dir=W({type:e,selectors:[["","ngClass",""]],inputs:{klass:[0,"class","klass"],ngClass:"ngClass"}})}return e})(),SI=(()=>{class e{_ngEl;_differs;_renderer;_ngStyle=null;_differ=null;constructor(t,i,o){this._ngEl=t,this._differs=i,this._renderer=o}set ngStyle(t){this._ngStyle=t,!this._differ&&t&&(this._differ=this._differs.find(t).create())}ngDoCheck(){if(this._differ){const t=this._differ.diff(this._ngStyle);t&&this._applyChanges(t)}}_setStyle(t,i){const[o,r]=t.split("."),s=-1===o.indexOf("-")?void 0:si.DashCase;null!=i?this._renderer.setStyle(this._ngEl.nativeElement,o,r?`${i}${r}`:i,s):this._renderer.removeStyle(this._ngEl.nativeElement,o,s)}_applyChanges(t){t.forEachRemovedItem(i=>this._setStyle(i.key,null)),t.forEachAddedItem(i=>this._setStyle(i.key,i.currentValue)),t.forEachChangedItem(i=>this._setStyle(i.key,i.currentValue))}static \u0275fac=function(i){return new(i||e)(N(Lt),N(Lc),N(Rn))};static \u0275dir=W({type:e,selectors:[["","ngStyle",""]],inputs:{ngStyle:"ngStyle"}})}return e})(),TI=(()=>{class e{_viewContainerRef;_viewRef=null;ngTemplateOutletContext=null;ngTemplateOutlet=null;ngTemplateOutletInjector=null;injector=k(Rt);constructor(t){this._viewContainerRef=t}ngOnChanges(t){if(this._shouldRecreateView(t)){const i=this._viewContainerRef;if(this._viewRef&&i.remove(i.indexOf(this._viewRef)),!this.ngTemplateOutlet)return void(this._viewRef=null);const o=this._createContextForwardProxy();this._viewRef=i.createEmbeddedView(this.ngTemplateOutlet,o,{injector:this._getInjector()})}}_getInjector(){return"outlet"===this.ngTemplateOutletInjector?this.injector:this.ngTemplateOutletInjector??void 0}_shouldRecreateView(t){return!!t.ngTemplateOutlet||!!t.ngTemplateOutletInjector}_createContextForwardProxy(){return new Proxy({},{set:(t,i,o)=>!!this.ngTemplateOutletContext&&Reflect.set(this.ngTemplateOutletContext,i,o),get:(t,i,o)=>{if(this.ngTemplateOutletContext)return Reflect.get(this.ngTemplateOutletContext,i,o)}})}static \u0275fac=function(i){return new(i||e)(N(vn))};static \u0275dir=W({type:e,selectors:[["","ngTemplateOutlet",""]],inputs:{ngTemplateOutletContext:"ngTemplateOutletContext",ngTemplateOutlet:"ngTemplateOutlet",ngTemplateOutletInjector:"ngTemplateOutletInjector"},features:[On]})}return e})();let NI=(()=>{class e{transform(t,i,o){if(null==t)return null;if("string"!=typeof t&&!Array.isArray(t))throw function jn(e,n){return new M(2100,!1)}();return t.slice(i,o)}static \u0275fac=function(i){return new(i||e)};static \u0275pipe=wt({name:"slice",type:e,pure:!1})}return e})(),xI=(()=>{class e{static \u0275fac=function(i){return new(i||e)};static \u0275mod=ci({type:e});static \u0275inj=Cn({})}return e})();class OI{_doc;constructor(n){this._doc=n}manager}let rp=(()=>{class e extends OI{constructor(t){super(t)}supports(t){return!0}addEventListener(t,i,o,r){return t.addEventListener(i,o,r),()=>this.removeEventListener(t,i,o,r)}removeEventListener(t,i,o,r){return t.removeEventListener(i,o,r)}static \u0275fac=function(i){return new(i||e)(re(en))};static \u0275prov=ee({token:e,factory:e.\u0275fac})}return e})();const sp=new R("");let kI=(()=>{class e{_zone;_plugins;_eventNameToPlugin=new Map;constructor(t,i){this._zone=i,t.forEach(s=>{s.manager=this});const o=t.filter(s=>!(s instanceof rp));this._plugins=o.slice().reverse();const r=t.find(s=>s instanceof rp);r&&this._plugins.push(r)}addEventListener(t,i,o,r){return this._findPluginFor(i).addEventListener(t,i,o,r)}getZone(){return this._zone}_findPluginFor(t){let i=this._eventNameToPlugin.get(t);if(i)return i;if(i=this._plugins.find(r=>r.supports(t)),!i)throw new M(5101,!1);return this._eventNameToPlugin.set(t,i),i}static \u0275fac=function(i){return new(i||e)(re(sp),re(ue))};static \u0275prov=ee({token:e,factory:e.\u0275fac})}return e})();const ap="ng-app-id";function RI(e){for(const n of e)n.remove()}function FI(e,n){const t=n.createElement("style");return t.textContent=e,t}function lp(e,n){const t=n.createElement("link");return t.setAttribute("rel","stylesheet"),t.setAttribute("href",e),t}let LI=(()=>{class e{doc;appId;nonce;inline=new Map;external=new Map;hosts=new Set;constructor(t,i,o,r={}){this.doc=t,this.appId=i,this.nonce=o,function u$(e,n,t,i){const o=e.head?.querySelectorAll(`style[${ap}="${n}"],link[${ap}="${n}"]`);if(o)for(const r of o)r.removeAttribute(ap),r instanceof HTMLLinkElement?i.set(r.href.slice(r.href.lastIndexOf("/")+1),{usage:0,elements:[r]}):r.textContent&&t.set(r.textContent,{usage:0,elements:[r]})}(t,i,this.inline,this.external),this.hosts.add(t.head)}addStyles(t,i){for(const o of t)this.addUsage(o,this.inline,FI);i?.forEach(o=>this.addUsage(o,this.external,lp))}removeStyles(t,i){for(const o of t)this.removeUsage(o,this.inline);i?.forEach(o=>this.removeUsage(o,this.external))}addUsage(t,i,o){const r=i.get(t);r?r.usage++:i.set(t,{usage:1,elements:[...this.hosts].map(s=>this.addElement(s,o(t,this.doc)))})}removeUsage(t,i){const o=i.get(t);o&&(o.usage--,o.usage<=0&&(RI(o.elements),i.delete(t)))}ngOnDestroy(){for(const[,{elements:t}]of[...this.inline,...this.external])RI(t);this.hosts.clear()}addHost(t){this.hosts.add(t);for(const[i,{elements:o}]of this.inline)o.push(this.addElement(t,FI(i,this.doc)));for(const[i,{elements:o}]of this.external)o.push(this.addElement(t,lp(i,this.doc)))}removeHost(t){this.hosts.delete(t)}addElement(t,i){return this.nonce&&i.setAttribute("nonce",this.nonce),t.appendChild(i)}static \u0275fac=function(i){return new(i||e)(re(en),re($o),re(z_,8),re($_))};static \u0275prov=ee({token:e,factory:e.\u0275fac})}return e})();const cp={svg:"http://www.w3.org/2000/svg",xhtml:"http://www.w3.org/1999/xhtml",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/",math:"http://www.w3.org/1998/Math/MathML"},up=/%COMP%/g,m$=new R("",{factory:()=>!0});function VI(e,n){return n.map(t=>t.replace(up,e))}let HI=(()=>{class e{eventManager;sharedStylesHost;appId;removeStylesOnCompDestroy;doc;ngZone;nonce;tracingService;rendererByCompId=new Map;defaultRenderer;constructor(t,i,o,r,s,a,l=null,c=null){this.eventManager=t,this.sharedStylesHost=i,this.appId=o,this.removeStylesOnCompDestroy=r,this.doc=s,this.ngZone=a,this.nonce=l,this.tracingService=c,this.defaultRenderer=new dp(t,s,a,this.tracingService)}createRenderer(t,i){if(!t||!i)return this.defaultRenderer;const o=this.getOrCreateRenderer(t,i);return o instanceof UI?o.applyToHost(t):o instanceof fp&&o.applyStyles(),o}getOrCreateRenderer(t,i){const o=this.rendererByCompId;let r=o.get(i.id);if(!r){const s=this.doc,a=this.ngZone,l=this.eventManager,c=this.sharedStylesHost,u=this.removeStylesOnCompDestroy,d=this.tracingService;switch(i.encapsulation){case $t.Emulated:r=new UI(l,c,i,this.appId,u,s,a,d);break;case $t.ShadowDom:return new jI(l,t,i,s,a,this.nonce,d,c);case $t.ExperimentalIsolatedShadowDom:return new jI(l,t,i,s,a,this.nonce,d);default:r=new fp(l,c,i,u,s,a,d)}o.set(i.id,r)}return r}ngOnDestroy(){this.rendererByCompId.clear()}componentReplaced(t){this.rendererByCompId.delete(t)}static \u0275fac=function(i){return new(i||e)(re(kI),re(LI),re($o),re(m$),re(en),re(ue),re(z_),re(Yo,8))};static \u0275prov=ee({token:e,factory:e.\u0275fac})}return e})();class dp{eventManager;doc;ngZone;tracingService;data=Object.create(null);throwOnSyntheticProps=!0;constructor(n,t,i,o){this.eventManager=n,this.doc=t,this.ngZone=i,this.tracingService=o}destroy(){}destroyNode=null;createElement(n,t){return t?this.doc.createElementNS(cp[t]||t,n):this.doc.createElement(n)}createComment(n){return this.doc.createComment(n)}createText(n){return this.doc.createTextNode(n)}appendChild(n,t){(BI(n)?n.content:n).appendChild(t)}insertBefore(n,t,i){n&&(BI(n)?n.content:n).insertBefore(t,i)}removeChild(n,t){t.remove()}selectRootElement(n,t){let i="string"==typeof n?this.doc.querySelector(n):n;if(!i)throw new M(-5104,!1);return t||(i.textContent=""),i}parentNode(n){return n.parentNode}nextSibling(n){return n.nextSibling}setAttribute(n,t,i,o){if(o){t=o+":"+t;const r=cp[o];r?n.setAttributeNS(r,t,i):n.setAttribute(t,i)}else n.setAttribute(t,i)}removeAttribute(n,t,i){if(i){const o=cp[i];o?n.removeAttributeNS(o,t):n.removeAttribute(`${i}:${t}`)}else n.removeAttribute(t)}addClass(n,t){n.classList.add(t)}removeClass(n,t){n.classList.remove(t)}setStyle(n,t,i,o){o&(si.DashCase|si.Important)?n.style.setProperty(t,i,o&si.Important?"important":""):n.style[t]=i}removeStyle(n,t,i){i&si.DashCase?n.style.removeProperty(t):n.style[t]=""}setProperty(n,t,i){null!=n&&(n[t]=i)}setValue(n,t){n.nodeValue=t}listen(n,t,i,o){if("string"==typeof n&&!(n=Wr().getGlobalEventTarget(this.doc,n)))throw new M(5102,!1);let r=this.decoratePreventDefault(i);return this.tracingService?.wrapEventListener&&(r=this.tracingService.wrapEventListener(n,t,r)),this.eventManager.addEventListener(n,t,r,o)}decoratePreventDefault(n){return t=>{if("__ngUnwrap__"===t)return n;!1===n(t)&&t.preventDefault()}}}function BI(e){return"TEMPLATE"===e.tagName&&void 0!==e.content}class jI extends dp{hostEl;sharedStylesHost;shadowRoot;constructor(n,t,i,o,r,s,a,l){super(n,o,r,a),this.hostEl=t,this.sharedStylesHost=l,this.shadowRoot=t.attachShadow({mode:"open"}),this.sharedStylesHost&&this.sharedStylesHost.addHost(this.shadowRoot);let c=i.styles;c=VI(i.id,c);for(const d of c){const h=document.createElement("style");s&&h.setAttribute("nonce",s),h.textContent=d,this.shadowRoot.appendChild(h)}const u=i.getExternalStyles?.();if(u)for(const d of u){const h=lp(d,o);s&&h.setAttribute("nonce",s),this.shadowRoot.appendChild(h)}}nodeOrShadowRoot(n){return n===this.hostEl?this.shadowRoot:n}appendChild(n,t){return super.appendChild(this.nodeOrShadowRoot(n),t)}insertBefore(n,t,i){return super.insertBefore(this.nodeOrShadowRoot(n),t,i)}removeChild(n,t){return super.removeChild(null,t)}parentNode(n){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(n)))}destroy(){this.sharedStylesHost&&this.sharedStylesHost.removeHost(this.shadowRoot)}}class fp extends dp{sharedStylesHost;removeStylesOnCompDestroy;styles;styleUrls;constructor(n,t,i,o,r,s,a,l){super(n,r,s,a),this.sharedStylesHost=t,this.removeStylesOnCompDestroy=o;let c=i.styles;this.styles=l?VI(l,c):c,this.styleUrls=i.getExternalStyles?.(l)}applyStyles(){this.sharedStylesHost.addStyles(this.styles,this.styleUrls)}destroy(){this.removeStylesOnCompDestroy&&0===Wi.size&&this.sharedStylesHost.removeStyles(this.styles,this.styleUrls)}}class UI extends fp{contentAttr;hostAttr;constructor(n,t,i,o,r,s,a,l){const c=o+"-"+i.id;super(n,t,i,r,s,a,l,c),this.contentAttr=function v$(e){return"_ngcontent-%COMP%".replace(up,e)}(c),this.hostAttr=function _$(e){return"_nghost-%COMP%".replace(up,e)}(c)}applyToHost(n){this.applyStyles(),this.setAttribute(n,this.hostAttr,"")}createElement(n,t){const i=super.createElement(n,t);return super.setAttribute(i,this.contentAttr,""),i}}class gp extends A1{supportsDOMEvents=!0;static makeCurrent(){!function T1(e){Sv??=e}(new gp)}onAndCancel(n,t,i,o){return n.addEventListener(t,i,o),()=>{n.removeEventListener(t,i,o)}}dispatchEvent(n,t){n.dispatchEvent(t)}remove(n){n.remove()}createElement(n,t){return(t=t||this.getDefaultDocument()).createElement(n)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(n){return n.nodeType===Node.ELEMENT_NODE}isShadowRoot(n){return n instanceof DocumentFragment}getGlobalEventTarget(n,t){return"window"===t?window:"document"===t?n:"body"===t?n.body:null}getBaseHref(n){const t=function b$(){return Xs=Xs||document.head.querySelector("base"),Xs?Xs.getAttribute("href"):null}();return null==t?null:function D$(e){return new URL(e,document.baseURI).pathname}(t)}resetBaseElement(){Xs=null}getUserAgent(){return window.navigator.userAgent}getCookie(n){return function N1(e,n){n=encodeURIComponent(n);for(const t of e.split(";")){const i=t.indexOf("="),[o,r]=-1==i?[t,""]:[t.slice(0,i),t.slice(i+1)];if(o.trim()===n)return decodeURIComponent(r)}return null}(document.cookie,n)}}let Xs=null,E$=(()=>{class e{build(){return new XMLHttpRequest}static \u0275fac=function(i){return new(i||e)};static \u0275prov=ee({token:e,factory:e.\u0275fac})}return e})();const zI=["alt","control","meta","shift"],M$={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},I$={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let S$=(()=>{class e extends OI{constructor(t){super(t)}supports(t){return null!=e.parseEventName(t)}addEventListener(t,i,o,r){const s=e.parseEventName(i),a=e.eventCallback(s.fullKey,o,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Wr().onAndCancel(t,s.domEventName,a,r))}static parseEventName(t){const i=t.toLowerCase().split("."),o=i.shift();if(0===i.length||"keydown"!==o&&"keyup"!==o)return null;const r=e._normalizeKey(i.pop());let s="",a=i.indexOf("code");if(a>-1&&(i.splice(a,1),s="code."),zI.forEach(c=>{const u=i.indexOf(c);u>-1&&(i.splice(u,1),s+=c+".")}),s+=r,0!=i.length||0===r.length)return null;const l={};return l.domEventName=o,l.fullKey=s,l}static matchEventFullKeyCode(t,i){let o=M$[t.key]||t.key,r="";return i.indexOf("code.")>-1&&(o=t.code,r="code."),!(null==o||!o)&&(o=o.toLowerCase()," "===o?o="space":"."===o&&(o="dot"),zI.forEach(s=>{s!==o&&(0,I$[s])(t)&&(r+=s+".")}),r+=o,r===i)}static eventCallback(t,i,o){return r=>{e.matchEventFullKeyCode(r,t)&&o.runGuarded(()=>i(r))}}static _normalizeKey(t){return"esc"===t?"escape":t}static \u0275fac=function(i){return new(i||e)(re(en))};static \u0275prov=ee({token:e,factory:e.\u0275fac})}return e})();const x$=PM(fU,"browser",[{provide:$_,useValue:"browser"},{provide:U_,useValue:function T$(){gp.makeCurrent()},multi:!0},{provide:en,useFactory:function N$(){return function qN(e){Kd=e}(document),document}}]),qI=[{provide:ND,useClass:class w${addToWindow(n){Te.getAngularTestability=(i,o=!0)=>{const r=n.findTestabilityInTree(i,o);if(null==r)throw new M(5103,!1);return r},Te.getAllAngularTestabilities=()=>n.getAllTestabilities(),Te.getAllAngularRootElements=()=>n.getAllRootElements(),Te.frameworkStabilizers||(Te.frameworkStabilizers=[]),Te.frameworkStabilizers.push(i=>{const o=Te.getAllAngularTestabilities();let r=o.length;const s=function(){r--,0==r&&i()};o.forEach(a=>{a.whenStable(s)})})}findTestabilityInTree(n,t,i){return null==t?null:n.getTestability(t)??(i?Wr().isShadowRoot(t)?this.findTestabilityInTree(n,t.host,!0):this.findTestabilityInTree(n,t.parentElement,!0):null)}}},{provide:AD,useClass:$h},{provide:$h,useClass:$h}],ZI=[{provide:Xu,useValue:"root"},{provide:Gr,useFactory:function A$(){return new Gr}},{provide:sp,useClass:rp,multi:!0},{provide:sp,useClass:S$,multi:!0},HI,LI,kI,{provide:uh,useExisting:HI},{provide:class x1{},useClass:E$},[]];let O$=(()=>{class e{constructor(){}static \u0275fac=function(i){return new(i||e)};static \u0275mod=ci({type:e});static \u0275inj=Cn({providers:[...ZI,...qI],imports:[xI,hU]})}return e})();function pi(e){return this instanceof pi?(this.v=e,this):new pi(e)}function JI(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,n=e[Symbol.asyncIterator];return n?n.call(e):(e=function bp(e){var n="function"==typeof Symbol&&Symbol.iterator,t=n&&e[n],i=0;if(t)return t.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&i>=e.length&&(e=void 0),{value:e&&e[i++],done:!e}}};throw new TypeError(n?"Object is not iterable.":"Symbol.iterator is not defined.")}(e),t={},i("next"),i("throw"),i("return"),t[Symbol.asyncIterator]=function(){return this},t);function i(r){t[r]=e[r]&&function(s){return new Promise(function(a,l){!function o(r,s,a,l){Promise.resolve(l).then(function(c){r({value:c,done:a})},s)}(a,l,(s=e[r](s)).done,s.value)})}}}"function"==typeof SuppressedError&&SuppressedError;const XI=e=>e&&"number"==typeof e.length&&"function"!=typeof e;function e0(e){return Be(e?.then)}function t0(e){return Be(e[Nu])}function n0(e){return Symbol.asyncIterator&&Be(e?.[Symbol.asyncIterator])}function i0(e){return new TypeError(`You provided ${null!==e&&"object"==typeof e?"an invalid object":`'${e}'`} where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`)}const o0=function rz(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}();function r0(e){return Be(e?.[o0])}function s0(e){return function KI(e,n,t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var o,i=t.apply(e,n||[]),r=[];return o=Object.create(("function"==typeof AsyncIterator?AsyncIterator:Object).prototype),a("next"),a("throw"),a("return",function s(g){return function(p){return Promise.resolve(p).then(g,d)}}),o[Symbol.asyncIterator]=function(){return this},o;function a(g,p){i[g]&&(o[g]=function(b){return new Promise(function(S,O){r.push([g,b,S,O])>1||l(g,b)})},p&&(o[g]=p(o[g])))}function l(g,p){try{!function c(g){g.value instanceof pi?Promise.resolve(g.value.v).then(u,d):h(r[0][2],g)}(i[g](p))}catch(b){h(r[0][3],b)}}function u(g){l("next",g)}function d(g){l("throw",g)}function h(g,p){g(p),r.shift(),r.length&&l(r[0][0],r[0][1])}}(this,arguments,function*(){const t=e.getReader();try{for(;;){const{value:i,done:o}=yield pi(t.read());if(o)return yield pi(void 0);yield yield pi(i)}}finally{t.releaseLock()}})}function a0(e){return Be(e?.getReader)}function ea(e){if(e instanceof _t)return e;if(null!=e){if(t0(e))return function sz(e){return new _t(n=>{const t=e[Nu]();if(Be(t.subscribe))return t.subscribe(n);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}(e);if(XI(e))return function az(e){return new _t(n=>{for(let t=0;t<e.length&&!n.closed;t++)n.next(e[t]);n.complete()})}(e);if(e0(e))return function lz(e){return new _t(n=>{e.then(t=>{n.closed||(n.next(t),n.complete())},t=>n.error(t)).then(null,cm)})}(e);if(n0(e))return l0(e);if(r0(e))return function cz(e){return new _t(n=>{for(const t of e)if(n.next(t),n.closed)return;n.complete()})}(e);if(a0(e))return function uz(e){return l0(s0(e))}(e)}throw i0(e)}function l0(e){return new _t(n=>{(function dz(e,n){var t,i,o,r;return function QI(e,n,t,i){return new(t||(t=Promise))(function(r,s){function a(u){try{c(i.next(u))}catch(d){s(d)}}function l(u){try{c(i.throw(u))}catch(d){s(d)}}function c(u){u.done?r(u.value):function o(r){return r instanceof t?r:new t(function(s){s(r)})}(u.value).then(a,l)}c((i=i.apply(e,n||[])).next())})}(this,void 0,void 0,function*(){try{for(t=JI(e);!(i=yield t.next()).done;)if(n.next(i.value),n.closed)return}catch(s){o={error:s}}finally{try{i&&!i.done&&(r=t.return)&&(yield r.call(t))}finally{if(o)throw o.error}}n.complete()})})(e,n).catch(t=>n.error(t))})}function uo(e,n,t,i=0,o=!1){const r=n.schedule(function(){t(),o?e.add(this.schedule(null,i)):this.unsubscribe()},i);if(e.add(r),!o)return r}function c0(e,n=0){return Pi((t,i)=>{t.subscribe(Kn(i,o=>uo(i,e,()=>i.next(o),n),()=>uo(i,e,()=>i.complete(),n),o=>uo(i,e,()=>i.error(o),n)))})}function u0(e,n=0){return Pi((t,i)=>{i.add(e.schedule(()=>t.subscribe(i),n))})}function d0(e,n){if(!e)throw new Error("Iterable cannot be null");return new _t(t=>{uo(t,n,()=>{const i=e[Symbol.asyncIterator]();uo(t,n,()=>{i.next().then(o=>{o.done?t.complete():t.next(o.value)})},0,!0)})})}const{isArray:yz}=Array,{getPrototypeOf:Cz,prototype:bz,keys:Dz}=Object;const{isArray:Sz}=Array;function Nz(e,n){return e.reduce((t,i,o)=>(t[i]=n[o],t),{})}function xz(...e){const n=function Iz(e){return Be(function wp(e){return e[e.length-1]}(e))?e.pop():void 0}(e),{args:t,keys:i}=function wz(e){if(1===e.length){const n=e[0];if(yz(n))return{args:n,keys:null};if(function Ez(e){return e&&"object"==typeof e&&Cz(e)===bz}(n)){const t=Dz(n);return{args:t.map(i=>n[i]),keys:t}}}return{args:e,keys:null}}(e),o=new _t(r=>{const{length:s}=t;if(!s)return void r.complete();const a=new Array(s);let l=s,c=s;for(let u=0;u<s;u++){let d=!1;ea(t[u]).subscribe(Kn(r,h=>{d||(d=!0,c--),a[u]=h},()=>l--,void 0,()=>{(!l||!d)&&(c||r.next(i?Nz(i,a):a),r.complete())}))}});return n?o.pipe(function Az(e){return Td(n=>function Tz(e,n){return Sz(n)?e(...n):e(n)}(e,n))}(n)):o}let f0=(()=>{class e{_renderer;_elementRef;onChange=t=>{};onTouched=()=>{};constructor(t,i){this._renderer=t,this._elementRef=i}setProperty(t,i){this._renderer.setProperty(this._elementRef.nativeElement,t,i)}registerOnTouched(t){this.onTouched=t}registerOnChange(t){this.onChange=t}setDisabledState(t){this.setProperty("disabled",t)}static \u0275fac=function(i){return new(i||e)(N(Rn),N(Lt))};static \u0275dir=W({type:e})}return e})(),fo=(()=>{class e extends f0{static \u0275fac=(()=>{let t;return function(o){return(t||(t=je(e)))(o||e)}})();static \u0275dir=W({type:e,features:[ie]})}return e})();const sn=new R(""),Oz={provide:sn,useExisting:he(()=>Ep),multi:!0};let Ep=(()=>{class e extends fo{writeValue(t){this.setProperty("checked",t)}static \u0275fac=(()=>{let t;return function(o){return(t||(t=je(e)))(o||e)}})();static \u0275dir=W({type:e,selectors:[["input","type","checkbox","formControlName",""],["input","type","checkbox","formControl",""],["input","type","checkbox","ngModel",""]],hostBindings:function(i,o){1&i&&z("change",function(s){return o.onChange(s.target.checked)})("blur",function(){return o.onTouched()})},standalone:!1,features:[be([Oz]),ie]})}return e})();const kz={provide:sn,useExisting:he(()=>ta),multi:!0},Fz=new R("");let ta=(()=>{class e extends f0{_compositionMode;_composing=!1;constructor(t,i,o){super(t,i),this._compositionMode=o,null==this._compositionMode&&(this._compositionMode=!function Rz(){const e=Wr()?Wr().getUserAgent():"";return/android (\d+)/.test(e.toLowerCase())}())}writeValue(t){this.setProperty("value",t??"")}_handleInput(t){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(t)}_compositionStart(){this._composing=!0}_compositionEnd(t){this._composing=!1,this._compositionMode&&this.onChange(t)}static \u0275fac=function(i){return new(i||e)(N(Rn),N(Lt),N(Fz,8))};static \u0275dir=W({type:e,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(i,o){1&i&&z("input",function(s){return o._handleInput(s.target.value)})("blur",function(){return o.onTouched()})("compositionstart",function(){return o._compositionStart()})("compositionend",function(s){return o._compositionEnd(s.target.value)})},standalone:!1,features:[be([kz]),ie]})}return e})();const ct=new R(""),mi=new R("");function b0(e){return null!=e}function D0(e){return lc(e)?function _z(e,n){return n?function vz(e,n){if(null!=e){if(t0(e))return function fz(e,n){return ea(e).pipe(u0(n),c0(n))}(e,n);if(XI(e))return function gz(e,n){return new _t(t=>{let i=0;return n.schedule(function(){i===e.length?t.complete():(t.next(e[i++]),t.closed||this.schedule())})})}(e,n);if(e0(e))return function hz(e,n){return ea(e).pipe(u0(n),c0(n))}(e,n);if(n0(e))return d0(e,n);if(r0(e))return function pz(e,n){return new _t(t=>{let i;return uo(t,n,()=>{i=e[o0](),uo(t,n,()=>{let o,r;try{({value:o,done:r}=i.next())}catch(s){return void t.error(s)}r?t.complete():t.next(o)},0,!0)}),()=>Be(i?.return)&&i.return()})}(e,n);if(a0(e))return function mz(e,n){return d0(s0(e),n)}(e,n)}throw i0(e)}(e,n):ea(e)}(e):e}function w0(e){let n={};return e.forEach(t=>{n=null!=t?{...n,...t}:n}),0===Object.keys(n).length?null:n}function E0(e,n){return n.map(t=>t(e))}function M0(e){return e.map(n=>function Pz(e){return!e.validate}(n)?n:t=>n.validate(t))}function Sp(e){return null!=e?function I0(e){if(!e)return null;const n=e.filter(b0);return 0==n.length?null:function(t){return w0(E0(t,n))}}(M0(e)):null}function Tp(e){return null!=e?function S0(e){if(!e)return null;const n=e.filter(b0);return 0==n.length?null:function(t){return xz(E0(t,n).map(D0)).pipe(Td(w0))}}(M0(e)):null}function T0(e,n){return null===e?[n]:Array.isArray(e)?[...e,n]:[e,n]}function Ap(e){return e?Array.isArray(e)?e:[e]:[]}function Kc(e,n){return Array.isArray(e)?e.includes(n):e===n}function x0(e,n){const t=Ap(n);return Ap(e).forEach(o=>{Kc(t,o)||t.push(o)}),t}function O0(e,n){return Ap(n).filter(t=>!Kc(e,t))}class k0{get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}_composedValidatorFn;_composedAsyncValidatorFn;_rawValidators=[];_rawAsyncValidators=[];_setValidators(n){this._rawValidators=n||[],this._composedValidatorFn=Sp(this._rawValidators)}_setAsyncValidators(n){this._rawAsyncValidators=n||[],this._composedAsyncValidatorFn=Tp(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_onDestroyCallbacks=[];_registerOnDestroy(n){this._onDestroyCallbacks.push(n)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(n=>n()),this._onDestroyCallbacks=[]}reset(n=void 0){this.control?.reset(n)}hasError(n,t){return!!this.control&&this.control.hasError(n,t)}getError(n,t){return this.control?this.control.getError(n,t):null}}class ut extends k0{name;get formDirective(){return null}get path(){return null}}class vi extends k0{_parent=null;name=null;valueAccessor=null}class R0{_cd;constructor(n){this._cd=n}get isTouched(){return this._cd?.control?._touched?.(),!!this._cd?.control?.touched}get isUntouched(){return!!this._cd?.control?.untouched}get isPristine(){return this._cd?.control?._pristine?.(),!!this._cd?.control?.pristine}get isDirty(){return!!this._cd?.control?.dirty}get isValid(){return this._cd?.control?._status?.(),!!this._cd?.control?.valid}get isInvalid(){return!!this._cd?.control?.invalid}get isPending(){return!!this._cd?.control?.pending}get isSubmitted(){return this._cd?._submitted?.(),!!this._cd?.submitted}}let Jc=(()=>{class e extends R0{constructor(t){super(t)}static \u0275fac=function(i){return new(i||e)(N(vi,2))};static \u0275dir=W({type:e,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(i,o){2&i&&Ln("ng-untouched",o.isUntouched)("ng-touched",o.isTouched)("ng-pristine",o.isPristine)("ng-dirty",o.isDirty)("ng-valid",o.isValid)("ng-invalid",o.isInvalid)("ng-pending",o.isPending)},standalone:!1,features:[ie]})}return e})();const na="VALID",eu="INVALID",Ir="PENDING",ia="DISABLED";class Sr{}class P0 extends Sr{value;source;constructor(n,t){super(),this.value=n,this.source=t}}class Op extends Sr{pristine;source;constructor(n,t){super(),this.pristine=n,this.source=t}}class kp extends Sr{touched;source;constructor(n,t){super(),this.touched=n,this.source=t}}class tu extends Sr{status;source;constructor(n,t){super(),this.status=n,this.source=t}}class Rp extends Sr{source;constructor(n){super(),this.source=n}}function nu(e){return null!=e&&!Array.isArray(e)&&"object"==typeof e}class Pp{_pendingDirty=!1;_hasOwnPendingAsyncValidator=null;_pendingTouched=!1;_onCollectionChange=()=>{};_updateOn;_parent=null;_asyncValidationSubscription;_composedValidatorFn;_composedAsyncValidatorFn;_rawValidators;_rawAsyncValidators;value;constructor(n,t){this._assignValidators(n),this._assignAsyncValidators(t)}get validator(){return this._composedValidatorFn}set validator(n){this._rawValidators=this._composedValidatorFn=n}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(n){this._rawAsyncValidators=this._composedAsyncValidatorFn=n}get parent(){return this._parent}get status(){return Ue(this.statusReactive)}set status(n){Ue(()=>this.statusReactive.set(n))}_status=qt(()=>this.statusReactive());statusReactive=Qn(void 0);get valid(){return this.status===na}get invalid(){return this.status===eu}get pending(){return this.status===Ir}get disabled(){return this.status===ia}get enabled(){return this.status!==ia}errors;get pristine(){return Ue(this.pristineReactive)}set pristine(n){Ue(()=>this.pristineReactive.set(n))}_pristine=qt(()=>this.pristineReactive());pristineReactive=Qn(!0);get dirty(){return!this.pristine}get touched(){return Ue(this.touchedReactive)}set touched(n){Ue(()=>this.touchedReactive.set(n))}_touched=qt(()=>this.touchedReactive());touchedReactive=Qn(!1);get untouched(){return!this.touched}_events=new ln;events=this._events.asObservable();valueChanges;statusChanges;get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(n){this._assignValidators(n)}setAsyncValidators(n){this._assignAsyncValidators(n)}addValidators(n){this.setValidators(x0(n,this._rawValidators))}addAsyncValidators(n){this.setAsyncValidators(x0(n,this._rawAsyncValidators))}removeValidators(n){this.setValidators(O0(n,this._rawValidators))}removeAsyncValidators(n){this.setAsyncValidators(O0(n,this._rawAsyncValidators))}hasValidator(n){return Kc(this._rawValidators,n)}hasAsyncValidator(n){return Kc(this._rawAsyncValidators,n)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(n={}){const t=!1===this.touched;this.touched=!0;const i=n.sourceControl??this;n.onlySelf||this._parent?.markAsTouched({...n,sourceControl:i}),t&&!1!==n.emitEvent&&this._events.next(new kp(!0,i))}markAllAsDirty(n={}){this.markAsDirty({onlySelf:!0,emitEvent:n.emitEvent,sourceControl:this}),this._forEachChild(t=>t.markAllAsDirty(n))}markAllAsTouched(n={}){this.markAsTouched({onlySelf:!0,emitEvent:n.emitEvent,sourceControl:this}),this._forEachChild(t=>t.markAllAsTouched(n))}markAsUntouched(n={}){const t=!0===this.touched;this.touched=!1,this._pendingTouched=!1;const i=n.sourceControl??this;this._forEachChild(o=>{o.markAsUntouched({onlySelf:!0,emitEvent:n.emitEvent,sourceControl:i})}),n.onlySelf||this._parent?._updateTouched(n,i),t&&!1!==n.emitEvent&&this._events.next(new kp(!1,i))}markAsDirty(n={}){const t=!0===this.pristine;this.pristine=!1;const i=n.sourceControl??this;n.onlySelf||this._parent?.markAsDirty({...n,sourceControl:i}),t&&!1!==n.emitEvent&&this._events.next(new Op(!1,i))}markAsPristine(n={}){const t=!1===this.pristine;this.pristine=!0,this._pendingDirty=!1;const i=n.sourceControl??this;this._forEachChild(o=>{o.markAsPristine({onlySelf:!0,emitEvent:n.emitEvent})}),n.onlySelf||this._parent?._updatePristine(n,i),t&&!1!==n.emitEvent&&this._events.next(new Op(!0,i))}markAsPending(n={}){this.status=Ir;const t=n.sourceControl??this;!1!==n.emitEvent&&(this._events.next(new tu(this.status,t)),this.statusChanges.emit(this.status)),n.onlySelf||this._parent?.markAsPending({...n,sourceControl:t})}disable(n={}){const t=this._parentMarkedDirty(n.onlySelf);this.status=ia,this.errors=null,this._forEachChild(o=>{o.disable({...n,onlySelf:!0})}),this._updateValue();const i=n.sourceControl??this;!1!==n.emitEvent&&(this._events.next(new P0(this.value,i)),this._events.next(new tu(this.status,i)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors({...n,skipPristineCheck:t},this),this._onDisabledChange.forEach(o=>o(!0))}enable(n={}){const t=this._parentMarkedDirty(n.onlySelf);this.status=na,this._forEachChild(i=>{i.enable({...n,onlySelf:!0})}),this.updateValueAndValidity({onlySelf:!0,emitEvent:n.emitEvent}),this._updateAncestors({...n,skipPristineCheck:t},this),this._onDisabledChange.forEach(i=>i(!1))}_updateAncestors(n,t){n.onlySelf||(this._parent?.updateValueAndValidity(n),n.skipPristineCheck||this._parent?._updatePristine({},t),this._parent?._updateTouched({},t))}setParent(n){this._parent=n}getRawValue(){return this.value}updateValueAndValidity(n={}){if(this._setInitialStatus(),this._updateValue(),this.enabled){const i=this._cancelExistingSubscription();this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===na||this.status===Ir)&&this._runAsyncValidator(i,n.emitEvent)}const t=n.sourceControl??this;!1!==n.emitEvent&&(this._events.next(new P0(this.value,t)),this._events.next(new tu(this.status,t)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),n.onlySelf||this._parent?.updateValueAndValidity({...n,sourceControl:t})}_updateTreeValidity(n={emitEvent:!0}){this._forEachChild(t=>t._updateTreeValidity(n)),this.updateValueAndValidity({onlySelf:!0,emitEvent:n.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?ia:na}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(n,t){if(this.asyncValidator){this.status=Ir,this._hasOwnPendingAsyncValidator={emitEvent:!1!==t,shouldHaveEmitted:!1!==n};const i=D0(this.asyncValidator(this));this._asyncValidationSubscription=i.subscribe(o=>{this._hasOwnPendingAsyncValidator=null,this.setErrors(o,{emitEvent:t,shouldHaveEmitted:n})})}}_cancelExistingSubscription(){if(this._asyncValidationSubscription){this._asyncValidationSubscription.unsubscribe();const n=(this._hasOwnPendingAsyncValidator?.emitEvent||this._hasOwnPendingAsyncValidator?.shouldHaveEmitted)??!1;return this._hasOwnPendingAsyncValidator=null,n}return!1}setErrors(n,t={}){this.errors=n,this._updateControlsErrors(!1!==t.emitEvent,this,t.shouldHaveEmitted)}get(n){let t=n;return null==t||(Array.isArray(t)||(t=t.split(".")),0===t.length)?null:t.reduce((i,o)=>i&&i._find(o),this)}getError(n,t){const i=t?this.get(t):this;return i?.errors?i.errors[n]:null}hasError(n,t){return!!this.getError(n,t)}get root(){let n=this;for(;n._parent;)n=n._parent;return n}_updateControlsErrors(n,t,i){this.status=this._calculateStatus(),n&&this.statusChanges.emit(this.status),(n||i)&&this._events.next(new tu(this.status,t)),this._parent&&this._parent._updateControlsErrors(n,t,i)}_initObservables(){this.valueChanges=new ve,this.statusChanges=new ve}_calculateStatus(){return this._allControlsDisabled()?ia:this.errors?eu:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(Ir)?Ir:this._anyControlsHaveStatus(eu)?eu:na}_anyControlsHaveStatus(n){return this._anyControls(t=>t.status===n)}_anyControlsDirty(){return this._anyControls(n=>n.dirty)}_anyControlsTouched(){return this._anyControls(n=>n.touched)}_updatePristine(n,t){const i=!this._anyControlsDirty(),o=this.pristine!==i;this.pristine=i,n.onlySelf||this._parent?._updatePristine(n,t),o&&this._events.next(new Op(this.pristine,t))}_updateTouched(n={},t){this.touched=this._anyControlsTouched(),this._events.next(new kp(this.touched,t)),n.onlySelf||this._parent?._updateTouched(n,t)}_onDisabledChange=[];_registerOnCollectionChange(n){this._onCollectionChange=n}_setUpdateStrategy(n){nu(n)&&null!=n.updateOn&&(this._updateOn=n.updateOn)}_parentMarkedDirty(n){return!n&&!!this._parent?.dirty&&!this._parent._anyControlsDirty()}_find(n){return null}_assignValidators(n){this._rawValidators=Array.isArray(n)?n.slice():n,this._composedValidatorFn=function Gz(e){return Array.isArray(e)?Sp(e):e||null}(this._rawValidators)}_assignAsyncValidators(n){this._rawAsyncValidators=Array.isArray(n)?n.slice():n,this._composedAsyncValidatorFn=function Wz(e){return Array.isArray(e)?Tp(e):e||null}(this._rawAsyncValidators)}}const Tr=new R("",{factory:()=>iu}),iu="always";function oa(e,n,t=iu){(function Hp(e,n){const t=function A0(e){return e._rawValidators}(e);null!==n.validator?e.setValidators(T0(t,n.validator)):"function"==typeof t&&e.setValidators([t]);const i=function N0(e){return e._rawAsyncValidators}(e);null!==n.asyncValidator?e.setAsyncValidators(T0(i,n.asyncValidator)):"function"==typeof i&&e.setAsyncValidators([i]);const o=()=>e.updateValueAndValidity();su(n._rawValidators,o),su(n._rawAsyncValidators,o)})(e,n),n.valueAccessor.writeValue(e.value),(e.disabled||"always"===t)&&n.valueAccessor.setDisabledState?.(e.disabled),function Qz(e,n){n.valueAccessor.registerOnChange(t=>{e._pendingValue=t,e._pendingChange=!0,e._pendingDirty=!0,"change"===e.updateOn&&j0(e,n)})}(e,n),function Kz(e,n){const t=(i,o)=>{n.valueAccessor.writeValue(i),o&&n.viewToModelUpdate(i)};e.registerOnChange(t),n._registerOnDestroy(()=>{e._unregisterOnChange(t)})}(e,n),function Yz(e,n){n.valueAccessor.registerOnTouched(()=>{e._pendingTouched=!0,"blur"===e.updateOn&&e._pendingChange&&j0(e,n),"submit"!==e.updateOn&&e.markAsTouched()})}(e,n),function Zz(e,n){if(n.valueAccessor.setDisabledState){const t=i=>{n.valueAccessor.setDisabledState(i)};e.registerOnDisabledChange(t),n._registerOnDestroy(()=>{e._unregisterOnDisabledChange(t)})}}(e,n)}function su(e,n){e.forEach(t=>{t.registerOnValidatorChange&&t.registerOnValidatorChange(n)})}function j0(e,n){e._pendingDirty&&e.markAsDirty(),e.setValue(e._pendingValue,{emitModelToViewChange:!1}),n.viewToModelUpdate(e._pendingValue),e._pendingChange=!1}function z0(e,n){const t=e.indexOf(n);t>-1&&e.splice(t,1)}function G0(e){return"object"==typeof e&&null!==e&&2===Object.keys(e).length&&"value"in e&&"disabled"in e}Promise.resolve();const W0=class extends Pp{defaultValue=null;_onChange=[];_pendingValue;_pendingChange=!1;constructor(n=null,t,i){super(function Fp(e){return(nu(e)?e.validators:e)||null}(t),function Lp(e,n){return(nu(n)?n.asyncValidators:e)||null}(i,t)),this._applyFormState(n),this._setUpdateStrategy(t),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),nu(t)&&(t.nonNullable||t.initialValueIsDefault)&&(this.defaultValue=G0(n)?n.value:n)}setValue(n,t={}){this.value=this._pendingValue=n,this._onChange.length&&!1!==t.emitModelToViewChange&&this._onChange.forEach(i=>i(this.value,!1!==t.emitViewToModelChange)),this.updateValueAndValidity(t)}patchValue(n,t={}){this.setValue(n,t)}reset(n=this.defaultValue,t={}){this._applyFormState(n),this.markAsPristine(t),this.markAsUntouched(t),this.setValue(this.value,t),t.overwriteDefaultValue&&(this.defaultValue=this.value),this._pendingChange=!1,!1!==t?.emitEvent&&this._events.next(new Rp(this))}_updateValue(){}_anyControls(n){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(n){this._onChange.push(n)}_unregisterOnChange(n){z0(this._onChange,n)}registerOnDisabledChange(n){this._onDisabledChange.push(n)}_unregisterOnDisabledChange(n){z0(this._onDisabledChange,n)}_forEachChild(n){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(n){G0(n)?(this.value=this._pendingValue=n.value,n.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=n}},a8={provide:vi,useExisting:he(()=>sa)},q0=Promise.resolve();let sa=(()=>{class e extends vi{_changeDetectorRef;callSetDisabledState;control=new W0;static ngAcceptInputType_isDisabled;_registered=!1;viewModel;name="";isDisabled;model;options;update=new ve;constructor(t,i,o,r,s,a){super(),this._changeDetectorRef=s,this.callSetDisabledState=a,this._parent=t,this._setValidators(i),this._setAsyncValidators(o),this.valueAccessor=function Up(e,n){if(!n)return null;let t,i,o;return Array.isArray(n),n.forEach(r=>{r.constructor===ta?t=r:function e8(e){return Object.getPrototypeOf(e.constructor)===fo}(r)?i=r:o=r}),o||i||t||null}(0,r)}ngOnChanges(t){if(this._checkForErrors(),!this._registered||"name"in t){if(this._registered&&(this._checkName(),this.formDirective)){const i=t.name.previousValue;this.formDirective.removeControl({name:i,path:this._getPath(i)})}this._setUpControl()}"isDisabled"in t&&this._updateDisabled(t),function jp(e,n){if(!e.hasOwnProperty("model"))return!1;const t=e.model;return!!t.isFirstChange()||!Object.is(n,t.currentValue)}(t,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective?.removeControl(this)}get path(){return this._getPath(this.name)}get formDirective(){return this._parent?this._parent.formDirective:null}viewToModelUpdate(t){this.viewModel=t,this.update.emit(t)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){oa(this.control,this,this.callSetDisabledState),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._checkName()}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()}_updateValue(t){q0.then(()=>{this.control.setValue(t,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(t){const i=t.isDisabled.currentValue,o=0!==i&&function Bg(e){return"boolean"==typeof e?e:null!=e&&"false"!==e}(i);q0.then(()=>{o&&!this.control.disabled?this.control.disable():!o&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(t){return this._parent?function ou(e,n){return[...n.path,e]}(t,this._parent):[t]}static \u0275fac=function(i){return new(i||e)(N(ut,9),N(ct,10),N(mi,10),N(sn,10),N(Zs,8),N(Tr,8))};static \u0275dir=W({type:e,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"],options:[0,"ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],standalone:!1,features:[be([a8]),ie,On]})}return e})();const f8={provide:sn,useExisting:he(()=>$p),multi:!0};let $p=(()=>{class e extends fo{writeValue(t){this.setProperty("value",parseFloat(t))}registerOnChange(t){this.onChange=i=>{t(""==i?null:parseFloat(i))}}static \u0275fac=(()=>{let t;return function(o){return(t||(t=je(e)))(o||e)}})();static \u0275dir=W({type:e,selectors:[["input","type","range","formControlName",""],["input","type","range","formControl",""],["input","type","range","ngModel",""]],hostBindings:function(i,o){1&i&&z("change",function(s){return o.onChange(s.target.value)})("input",function(s){return o.onChange(s.target.value)})("blur",function(){return o.onTouched()})},standalone:!1,features:[be([f8]),ie]})}return e})();const C8={provide:sn,useExisting:he(()=>la),multi:!0};function nS(e,n){return null==e?`${n}`:(n&&"object"==typeof n&&(n="Object"),`${e}: ${n}`.slice(0,50))}let la=(()=>{class e extends fo{value;_optionMap=new Map;_idCounter=0;set compareWith(t){this._compareWith=t}_compareWith=Object.is;appRefInjector=k(di).injector;destroyRef=k(Nn);cdr=k(Zs);_queuedWrite=!1;_writeValueAfterRender(){this._queuedWrite||this.appRefInjector.destroyed||(this._queuedWrite=!0,Hf({write:()=>{this.destroyRef.destroyed||(this._queuedWrite=!1,this.writeValue(this.value))}},{injector:this.appRefInjector}))}writeValue(t){this.cdr.markForCheck(),this.value=t;const o=nS(this._getOptionId(t),t);this.setProperty("value",o)}registerOnChange(t){this.onChange=i=>{this.value=this._getOptionValue(i),t(this.value)}}_registerOption(){return(this._idCounter++).toString()}_getOptionId(t){for(const i of this._optionMap.keys())if(this._compareWith(this._optionMap.get(i),t))return i;return null}_getOptionValue(t){const i=function b8(e){return e.split(":")[0]}(t);return this._optionMap.has(i)?this._optionMap.get(i):t}static \u0275fac=(()=>{let t;return function(o){return(t||(t=je(e)))(o||e)}})();static \u0275dir=W({type:e,selectors:[["select","formControlName","",3,"multiple",""],["select","formControl","",3,"multiple",""],["select","ngModel","",3,"multiple",""]],hostBindings:function(i,o){1&i&&z("change",function(s){return o.onChange(s.target.value)})("blur",function(){return o.onTouched()})},inputs:{compareWith:"compareWith"},standalone:!1,features:[be([C8]),ie]})}return e})(),zp=(()=>{class e{_element;_renderer;_select;id;constructor(t,i,o){this._element=t,this._renderer=i,this._select=o,this._select&&(this.id=this._select._registerOption())}set ngValue(t){null!=this._select&&(this._select._optionMap.set(this.id,t),this._setElementValue(nS(this.id,t)),this._select._writeValueAfterRender())}set value(t){this._setElementValue(t),this._select?._writeValueAfterRender()}_setElementValue(t){this._renderer.setProperty(this._element.nativeElement,"value",t)}ngOnDestroy(){this._select?._optionMap.delete(this.id),this._select?._writeValueAfterRender()}static \u0275fac=function(i){return new(i||e)(N(Lt),N(Rn),N(la,9))};static \u0275dir=W({type:e,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"},standalone:!1})}return e})();const D8={provide:sn,useExisting:he(()=>Gp),multi:!0};function iS(e,n){return null==e?`${n}`:("string"==typeof n&&(n=`'${n}'`),n&&"object"==typeof n&&(n="Object"),`${e}: ${n}`.slice(0,50))}let Gp=(()=>{class e extends fo{value;_optionMap=new Map;_idCounter=0;set compareWith(t){this._compareWith=t}_compareWith=Object.is;writeValue(t){let i;if(this.value=t,Array.isArray(t)){const o=t.map(r=>this._getOptionId(r));i=(r,s)=>{r._setSelected(o.indexOf(s)>-1)}}else i=o=>{o._setSelected(!1)};this._optionMap.forEach(i)}registerOnChange(t){this.onChange=i=>{const o=[],r=i.selectedOptions;if(void 0!==r){const s=r;for(let a=0;a<s.length;a++){const c=this._getOptionValue(s[a].value);o.push(c)}}else{const s=i.options;for(let a=0;a<s.length;a++){const l=s[a];if(l.selected){const c=this._getOptionValue(l.value);o.push(c)}}}this.value=o,t(o)}}_registerOption(t){const i=(this._idCounter++).toString();return this._optionMap.set(i,t),i}_getOptionId(t){for(const i of this._optionMap.keys())if(this._compareWith(this._optionMap.get(i)._value,t))return i;return null}_getOptionValue(t){const i=function w8(e){return e.split(":")[0]}(t);return this._optionMap.has(i)?this._optionMap.get(i)._value:t}static \u0275fac=(()=>{let t;return function(o){return(t||(t=je(e)))(o||e)}})();static \u0275dir=W({type:e,selectors:[["select","multiple","","formControlName",""],["select","multiple","","formControl",""],["select","multiple","","ngModel",""]],hostBindings:function(i,o){1&i&&z("change",function(s){return o.onChange(s.target)})("blur",function(){return o.onTouched()})},inputs:{compareWith:"compareWith"},standalone:!1,features:[be([D8]),ie]})}return e})(),Wp=(()=>{class e{_element;_renderer;_select;id;_value;constructor(t,i,o){this._element=t,this._renderer=i,this._select=o,this._select&&(this.id=this._select._registerOption(this))}set ngValue(t){null!=this._select&&(this._value=t,this._setElementValue(iS(this.id,t)),this._select.writeValue(this._select.value))}set value(t){this._select?(this._value=t,this._setElementValue(iS(this.id,t)),this._select.writeValue(this._select.value)):this._setElementValue(t)}_setElementValue(t){this._renderer.setProperty(this._element.nativeElement,"value",t)}_setSelected(t){this._renderer.setProperty(this._element.nativeElement,"selected",t)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}static \u0275fac=function(i){return new(i||e)(N(Lt),N(Rn),N(Gp,9))};static \u0275dir=W({type:e,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"},standalone:!1})}return e})(),O8=(()=>{class e{static \u0275fac=function(i){return new(i||e)};static \u0275mod=ci({type:e});static \u0275inj=Cn({})}return e})(),k8=(()=>{class e{static withConfig(t){return{ngModule:e,providers:[{provide:Tr,useValue:t.callSetDisabledState??iu}]}}static \u0275fac=function(i){return new(i||e)};static \u0275mod=ci({type:e});static \u0275inj=Cn({imports:[O8]})}return e})();class R8 extends Nt{constructor(n,t){super()}schedule(n,t=0){return this}}const hu={setInterval(e,n,...t){const{delegate:i}=hu;return i?.setInterval?i.setInterval(e,n,...t):setInterval(e,n,...t)},clearInterval(e){const{delegate:n}=hu;return(n?.clearInterval||clearInterval)(e)},delegate:void 0},hS={now:()=>(hS.delegate||Date).now(),delegate:void 0};class ca{constructor(n,t=ca.now){this.schedulerActionCtor=n,this.now=t}schedule(n,t=0,i){return new this.schedulerActionCtor(this,n).schedule(i,t)}}ca.now=hS.now;const gS=new class L8 extends ca{constructor(n,t=ca.now){super(n,t),this.actions=[],this._active=!1}flush(n){const{actions:t}=this;if(this._active)return void t.push(n);let i;this._active=!0;do{if(i=n.execute(n.state,n.delay))break}while(n=t.shift());if(this._active=!1,i){for(;n=t.shift();)n.unsubscribe();throw i}}}(class F8 extends R8{constructor(n,t){super(n,t),this.scheduler=n,this.work=t,this.pending=!1}schedule(n,t=0){var i;if(this.closed)return this;this.state=n;const o=this.id,r=this.scheduler;return null!=o&&(this.id=this.recycleAsyncId(r,o,t)),this.pending=!0,this.delay=t,this.id=null!==(i=this.id)&&void 0!==i?i:this.requestAsyncId(r,this.id,t),this}requestAsyncId(n,t,i=0){return hu.setInterval(n.flush.bind(n,this),i)}recycleAsyncId(n,t,i=0){if(null!=i&&this.delay===i&&!1===this.pending)return t;null!=t&&hu.clearInterval(t)}execute(n,t){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;const i=this._execute(n,t);if(i)return i;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(n,t){let o,i=!1;try{this.work(n)}catch(r){i=!0,o=r||new Error("Scheduled action threw falsy error")}if(i)return this.unsubscribe(),o}unsubscribe(){if(!this.closed){const{id:n,scheduler:t}=this,{actions:i}=t;this.work=this.state=this.scheduler=null,this.pending=!1,pa(i,this),null!=n&&(this.id=this.recycleAsyncId(t,n,null)),this.delay=null,super.unsubscribe()}}}),P8=gS;function pS(e,n=gS,t){const i=function j8(e=0,n,t=P8){let i=-1;return null!=n&&(function H8(e){return e&&Be(e.schedule)}(n)?t=n:i=n),new _t(o=>{let r=function B8(e){return e instanceof Date&&!isNaN(e)}(e)?+e-t.now():e;r<0&&(r=0);let s=0;return t.schedule(function(){o.closed||(o.next(s++),0<=i?this.schedule(void 0,i):o.complete())},r)})}(e,n);return function V8(e,n){return Pi((t,i)=>{const{leading:o=!0,trailing:r=!1}=n??{};let s=!1,a=null,l=null,c=!1;const u=()=>{l?.unsubscribe(),l=null,r&&(g(),c&&i.complete())},d=()=>{l=null,c&&i.complete()},h=p=>l=ea(e(p)).subscribe(Kn(i,u,d)),g=()=>{if(s){s=!1;const p=a;a=null,i.next(p),!c&&h(p)}};t.subscribe(Kn(i,p=>{s=!0,a=p,(!l||l.closed)&&(o?g():h(p))},()=>{c=!0,(!(r&&s&&l)||l.closed)&&i.complete()}))})}(()=>i,t)}function mS(e,n,t){const i=Be(e)||n||t?{next:e,error:n,complete:t}:e;return i?Pi((o,r)=>{var s;null===(s=i.subscribe)||void 0===s||s.call(i);let a=!0;o.subscribe(Kn(r,l=>{var c;null===(c=i.next)||void 0===c||c.call(i,l),r.next(l)},()=>{var l;a=!1,null===(l=i.complete)||void 0===l||l.call(i),r.complete()},l=>{var c;a=!1,null===(c=i.error)||void 0===c||c.call(i,l),r.error(l)},()=>{var l,c;a&&(null===(l=i.unsubscribe)||void 0===l||l.call(i)),null===(c=i.finalize)||void 0===c||c.call(i)}))}):xu}function vS(e,n=xu){return e=e??U8,Pi((t,i)=>{let o,r=!0;t.subscribe(Kn(i,s=>{const a=n(s);(r||!e(o,a))&&(r=!1,o=a,i.next(s))}))})}function U8(e,n){return e===n}var Vt=typeof window<"u"?window:{screen:{},navigator:{}},Ar=(Vt.matchMedia||function(){return{matches:!1}}).bind(Vt),_S=!1,yS=function(){};Vt.addEventListener&&Vt.addEventListener("p",yS,{get passive(){return _S=!0}}),Vt.removeEventListener&&Vt.removeEventListener("p",yS,!1);var CS=_S,Zp="ontouchstart"in Vt,DS=(Zp||"TouchEvent"in Vt&&Ar("(any-pointer: coarse)"),Vt.navigator.userAgent||"");Ar("(pointer: coarse)").matches&&/iPad|Macintosh/.test(DS)&&Math.min(Vt.screen.width||0,Vt.screen.height||0);(Ar("(pointer: coarse)").matches||!Ar("(pointer: fine)").matches&&Zp)&&/Windows.*Firefox/.test(DS),Ar("(any-pointer: fine)").matches||Ar("(any-hover: hover)");const Q8=(e,n,t)=>({tooltip:e,placement:n,content:t});function Y8(e,n){}function K8(e,n){1&e&&ec(0,Y8,0,0,"ng-template")}function J8(e,n){if(1&e&&ec(0,K8,1,0,null,1),2&e){const t=m();A("ngTemplateOutlet",t.template)("ngTemplateOutletContext",ke(2,Q8,t.tooltip,t.placement,t.content))}}function X8(e,n){if(1&e&&(_(0,"div",0),D(1),v()),2&e){const t=m();pt("title",t.tooltip)("data-tooltip-placement",t.placement),f(),H(" ",t.content," ")}}const e4=["tooltipTemplate"],t4=["leftOuterSelectionBar"],n4=["rightOuterSelectionBar"],i4=["fullBar"],o4=["selectionBar"],r4=["minHandle"],s4=["maxHandle"],a4=["floorLabel"],l4=["ceilLabel"],c4=["minHandleLabel"],u4=["maxHandleLabel"],d4=["combinedLabel"],f4=["ticksElement"],h4=e=>({"ngx-slider-selected":e});function g4(e,n){if(1&e&&x(0,"ngx-slider-tooltip-wrapper",28),2&e){const t=m().$implicit;A("template",m().tooltipTemplate)("tooltip",t.valueTooltip)("placement",t.valueTooltipPlacement)("content",t.value)}}function p4(e,n){1&e&&x(0,"span",29),2&e&&A("innerText",m().$implicit.legend)}function m4(e,n){1&e&&x(0,"span",30),2&e&&A("innerHTML",m().$implicit.legend,jy)}function v4(e,n){if(1&e&&(_(0,"span",26),x(1,"ngx-slider-tooltip-wrapper",27),y(2,g4,1,4,"ngx-slider-tooltip-wrapper",28),y(3,p4,1,1,"span",29),y(4,m4,1,1,"span",30),v()),2&e){const t=n.$implicit,i=m();A("ngClass",mr(8,h4,t.selected))("ngStyle",t.style),f(),A("template",i.tooltipTemplate)("tooltip",t.tooltip)("placement",t.tooltipPlacement),f(),C(null!=t.value?2:-1),f(),C(null!=t.legend&&!1===i.allowUnsafeHtmlInSlider?3:-1),f(),C(null==t.legend||null!=i.allowUnsafeHtmlInSlider&&!i.allowUnsafeHtmlInSlider?-1:4)}}var _n=function(e){return e[e.Low=0]="Low",e[e.High=1]="High",e[e.Floor=2]="Floor",e[e.Ceil=3]="Ceil",e[e.TickValue=4]="TickValue",e}(_n||{});class gu{floor=0;ceil=null;step=1;minRange=null;maxRange=null;pushRange=!1;minLimit=null;maxLimit=null;translate=null;combineLabels=null;getLegend=null;getStepLegend=null;stepsArray=null;bindIndexForStepsArray=!1;draggableRange=!1;draggableRangeOnly=!1;showSelectionBar=!1;showSelectionBarEnd=!1;showSelectionBarFromValue=null;showOuterSelectionBars=!1;hidePointerLabels=!1;hideLimitLabels=!1;autoHideLimitLabels=!0;readOnly=!1;disabled=!1;showTicks=!1;showTicksValues=!1;tickStep=null;tickValueStep=null;ticksArray=null;ticksTooltip=null;ticksValuesTooltip=null;vertical=!1;getSelectionBarColor=null;getTickColor=null;getPointerColor=null;keyboardSupport=!0;scale=1;rotate=0;enforceStep=!0;enforceRange=!0;enforceStepsArray=!0;noSwitching=!1;onlyBindHandles=!1;rightToLeft=!1;reversedControls=!1;boundPointerLabels=!0;logScale=!1;customValueToPosition=null;customPositionToValue=null;precisionLimit=12;selectionBarGradient=null;ariaLabel="ngx-slider";ariaLabelledBy=null;ariaLabelHigh="ngx-slider-max";ariaLabelledByHigh=null;handleDimension=null;barDimension=null;animate=!0;animateOnMove=!1}const MS=new R("AllowUnsafeHtmlInSlider");var P=function(e){return e[e.Min=0]="Min",e[e.Max=1]="Max",e}(P||{});class _4{value;highValue;pointerType}class I{static isNullOrUndefined(n){return null==n}static areArraysEqual(n,t){if(n.length!==t.length)return!1;for(let i=0;i<n.length;++i)if(n[i]!==t[i])return!1;return!0}static linearValueToPosition(n,t,i){return(n-t)/(i-t)}static logValueToPosition(n,t,i){return((n=Math.log(n))-(t=Math.log(t)))/((i=Math.log(i))-t)}static linearPositionToValue(n,t,i){return n*(i-t)+t}static logPositionToValue(n,t,i){return t=Math.log(t),i=Math.log(i),Math.exp(n*(i-t)+t)}static findStepIndex(n,t){const i=t.map(r=>Math.abs(n-r.value));let o=0;for(let r=0;r<t.length;r++)i[r]!==i[o]&&i[r]<i[o]&&(o=r);return o}}class He{static roundToPrecisionLimit(n,t){return+n.toPrecision(t)}static isModuloWithinPrecisionLimit(n,t,i){const o=Math.pow(10,-i);return Math.abs(n%t)<=o||Math.abs(Math.abs(n%t)-t)<=o}static clampToRange(n,t,i){return Math.min(Math.max(n,t),i)}}class IS{eventName=null;events=null;eventsSubscription=null;teardownCallback=null}class SS{renderer;constructor(n){this.renderer=n}attachPassiveEventListener(n,t,i,o){if(!0!==CS)return this.attachEventListener(n,t,i,o);const r=new IS;r.eventName=t,r.events=new ln;const s=a=>{r.events.next(a)};return n.addEventListener(t,s,{passive:!0,capture:!1}),r.teardownCallback=()=>{n.removeEventListener(t,s,{passive:!0,capture:!1})},r.eventsSubscription=r.events.pipe(I.isNullOrUndefined(o)?mS(()=>{}):pS(o,void 0,{leading:!0,trailing:!0})).subscribe(a=>{i(a)}),r}detachEventListener(n){I.isNullOrUndefined(n.eventsSubscription)||(n.eventsSubscription.unsubscribe(),n.eventsSubscription=null),I.isNullOrUndefined(n.events)||(n.events.complete(),n.events=null),I.isNullOrUndefined(n.teardownCallback)||(n.teardownCallback(),n.teardownCallback=null)}attachEventListener(n,t,i,o){const r=new IS;return r.eventName=t,r.events=new ln,r.teardownCallback=this.renderer.listen(n,t,a=>{r.events.next(a)}),r.eventsSubscription=r.events.pipe(I.isNullOrUndefined(o)?mS(()=>{}):pS(o,void 0,{leading:!0,trailing:!0})).subscribe(a=>{i(a)}),r}}let _i=(()=>{class e{elemRef=k(Lt);renderer=k(Rn);changeDetectionRef=k(Zs);_position=0;get position(){return this._position}_dimension=0;get dimension(){return this._dimension}_alwaysHide=!1;get alwaysHide(){return this._alwaysHide}_vertical=!1;get vertical(){return this._vertical}_scale=1;get scale(){return this._scale}_rotate=0;get rotate(){return this._rotate}opacity=1;visibility="visible";left="";bottom="";height="";width="";transform="";eventListenerHelper;eventListeners=[];constructor(){this.eventListenerHelper=new SS(this.renderer)}setAlwaysHide(t){this._alwaysHide=t,this.visibility=t?"hidden":"visible"}hide(){this.opacity=0}show(){this.alwaysHide||(this.opacity=1)}isVisible(){return!this.alwaysHide&&0!==this.opacity}setVertical(t){this._vertical=t,this._vertical?(this.left="",this.width=""):(this.bottom="",this.height="")}setScale(t){this._scale=t}setRotate(t){this._rotate=t,this.transform="rotate("+t+"deg)"}getRotate(){return this._rotate}setPosition(t){this._position!==t&&!this.isRefDestroyed()&&this.changeDetectionRef.markForCheck(),this._position=t,this._vertical?this.bottom=Math.round(t)+"px":this.left=Math.round(t)+"px"}calculateDimension(){const t=this.getBoundingClientRect();this._dimension=this.vertical?(t.bottom-t.top)*this.scale:(t.right-t.left)*this.scale}setDimension(t){this._dimension!==t&&!this.isRefDestroyed()&&this.changeDetectionRef.markForCheck(),this._dimension=t,this._vertical?this.height=Math.round(t)+"px":this.width=Math.round(t)+"px"}getBoundingClientRect(){return this.elemRef.nativeElement.getBoundingClientRect()}on(t,i,o){const r=this.eventListenerHelper.attachEventListener(this.elemRef.nativeElement,t,i,o);this.eventListeners.push(r)}onPassive(t,i,o){const r=this.eventListenerHelper.attachPassiveEventListener(this.elemRef.nativeElement,t,i,o);this.eventListeners.push(r)}off(t){let i,o;I.isNullOrUndefined(t)?(i=[],o=this.eventListeners):(i=this.eventListeners.filter(r=>r.eventName!==t),o=this.eventListeners.filter(r=>r.eventName===t));for(const r of o)this.eventListenerHelper.detachEventListener(r);this.eventListeners=i}isRefDestroyed(){return I.isNullOrUndefined(this.changeDetectionRef)||this.changeDetectionRef.destroyed}static \u0275fac=function(i){return new(i||e)};static \u0275dir=W({type:e,selectors:[["","ngxSliderElement",""]],hostVars:14,hostBindings:function(i,o){2&i&&bc("opacity",o.opacity)("visibility",o.visibility)("left",o.left)("bottom",o.bottom)("height",o.height)("width",o.width)("transform",o.transform)},standalone:!1})}return e})(),Qp=(()=>{class e extends _i{active=!1;role="";tabindex="";ariaOrientation="";ariaLabel="";ariaLabelledBy="";ariaValueNow="";ariaValueText="";ariaValueMin="";ariaValueMax="";document=k(en);focus(){this.elemRef.nativeElement.focus()}focusIfNeeded(){this.document.activeElement!==this.elemRef.nativeElement&&this.elemRef.nativeElement.focus()}static \u0275fac=(()=>{let t;return function(o){return(t||(t=je(e)))(o||e)}})();static \u0275dir=W({type:e,selectors:[["","ngxSliderHandle",""]],hostVars:11,hostBindings:function(i,o){2&i&&(pt("role",o.role)("tabindex",o.tabindex)("aria-orientation",o.ariaOrientation)("aria-label",o.ariaLabel)("aria-labelledby",o.ariaLabelledBy)("aria-valuenow",o.ariaValueNow)("aria-valuetext",o.ariaValueText)("aria-valuemin",o.ariaValueMin)("aria-valuemax",o.ariaValueMax),Ln("ngx-slider-active",o.active))},standalone:!1,features:[ie]})}return e})(),Nr=(()=>{class e extends _i{allowUnsafeHtmlInSlider=k(MS,{optional:!0});_value=null;get value(){return this._value}setValue(t){let i=!1;!this.alwaysHide&&(I.isNullOrUndefined(this.value)||this.value.length!==t.length||this.value.length>0&&0===this.dimension)&&(i=!0),this._value=t,!1===this.allowUnsafeHtmlInSlider?this.elemRef.nativeElement.innerText=t:this.elemRef.nativeElement.innerHTML=t,i&&this.calculateDimension()}static \u0275fac=(()=>{let t;return function(o){return(t||(t=je(e)))(o||e)}})();static \u0275dir=W({type:e,selectors:[["","ngxSliderLabel",""]],standalone:!1,features:[ie]})}return e})(),y4=(()=>{class e{template;tooltip;placement;content;static \u0275fac=function(i){return new(i||e)};static \u0275cmp=on({type:e,selectors:[["ngx-slider-tooltip-wrapper"]],inputs:{template:"template",tooltip:"tooltip",placement:"placement",content:"content"},standalone:!1,decls:2,vars:2,consts:[[1,"ngx-slider-inner-tooltip"],[4,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(i,o){1&i&&(y(0,J8,1,6),y(1,X8,2,3,"div",0)),2&i&&(C(o.template?0:-1),f(),C(o.template?-1:1))},dependencies:[TI],styles:[".ngx-slider-inner-tooltip[_ngcontent-%COMP%]{height:100%}"]})}return e})();class C4{selected=!1;style={};tooltip=null;tooltipPlacement=null;value=null;valueTooltip=null;valueTooltipPlacement=null;legend=null}class TS{active=!1;value=0;difference=0;position=0;lowLimit=0;highLimit=0}class pu{value;highValue;static compare(n,t){return!(I.isNullOrUndefined(n)&&I.isNullOrUndefined(t)||I.isNullOrUndefined(n)!==I.isNullOrUndefined(t))&&n.value===t.value&&n.highValue===t.highValue}}class AS extends pu{forceChange;static compare(n,t){return!(I.isNullOrUndefined(n)&&I.isNullOrUndefined(t)||I.isNullOrUndefined(n)!==I.isNullOrUndefined(t))&&n.value===t.value&&n.highValue===t.highValue&&n.forceChange===t.forceChange}}const b4={provide:sn,useExisting:he(()=>NS),multi:!0};let NS=(()=>{class e{renderer=k(Rn);elementRef=k(Lt);changeDetectionRef=k(Zs);zone=k(ue);allowUnsafeHtmlInSlider=k(MS,{optional:!0});sliderElementNgxSliderClass=!0;value=null;valueChange=new ve;highValue=null;highValueChange=new ve;options=new gu;userChangeStart=new ve;userChange=new ve;userChangeEnd=new ve;manualRefreshSubscription;set manualRefresh(t){this.unsubscribeManualRefresh(),this.manualRefreshSubscription=t.subscribe(()=>{setTimeout(()=>this.calculateViewDimensionsAndDetectChanges())})}triggerFocusSubscription;set triggerFocus(t){this.unsubscribeTriggerFocus(),this.triggerFocusSubscription=t.subscribe(i=>{this.focusPointer(i)})}cancelUserChangeSubscription;set cancelUserChange(t){this.unsubscribeCancelUserChange(),this.cancelUserChangeSubscription=t.subscribe(()=>{this.moving&&(this.positionTrackingHandle(this.preStartHandleValue),this.forceEnd(!0))})}get range(){return!I.isNullOrUndefined(this.value)&&!I.isNullOrUndefined(this.highValue)}initHasRun=!1;inputModelChangeSubject=new ln;inputModelChangeSubscription=null;outputModelChangeSubject=new ln;outputModelChangeSubscription=null;viewLowValue=null;viewHighValue=null;viewOptions=new gu;handleHalfDimension=0;maxHandlePosition=0;currentTrackingPointer=null;currentFocusPointer=null;firstKeyDown=!1;touchId=null;dragging=new TS;preStartHandleValue=null;leftOuterSelectionBarElement;rightOuterSelectionBarElement;fullBarElement;selectionBarElement;minHandleElement;maxHandleElement;floorLabelElement;ceilLabelElement;minHandleLabelElement;maxHandleLabelElement;combinedLabelElement;ticksElement;tooltipTemplate;sliderElementVerticalClass=!1;sliderElementAnimateClass=!1;sliderElementWithLegendClass=!1;sliderElementDisabledAttr=null;sliderElementAriaLabel="ngx-slider";barStyle={};minPointerStyle={};maxPointerStyle={};fullBarTransparentClass=!1;selectionBarDraggableClass=!1;ticksUnderValuesClass=!1;get showTicks(){return this.viewOptions.showTicks}intermediateTicks=!1;ticks=[];eventListenerHelper=null;onMoveEventListener=null;onEndEventListener=null;onCancelEventListener=null;moving=!1;resizeObserver=null;onTouchedCallback=null;onChangeCallback=null;document=k(en);constructor(){this.eventListenerHelper=new SS(this.renderer)}ngOnInit(){this.viewOptions=new gu,Object.assign(this.viewOptions,this.options),this.updateDisabledState(),this.updateVerticalState(),this.updateAriaLabel()}ngAfterViewInit(){this.applyOptions(),this.subscribeInputModelChangeSubject(),this.subscribeOutputModelChangeSubject(),this.renormaliseModelValues(),this.viewLowValue=this.modelValueToViewValue(this.value),this.viewHighValue=this.range?this.modelValueToViewValue(this.highValue):null,this.updateVerticalState(),this.manageElementsStyle(),this.updateDisabledState(),this.calculateViewDimensions(),this.addAccessibility(),this.updateCeilLabel(),this.updateFloorLabel(),this.initHandles(),this.manageEventsBindings(),this.updateAriaLabel(),this.subscribeResizeObserver(),this.initHasRun=!0,this.isRefDestroyed()||this.changeDetectionRef.detectChanges()}ngOnChanges(t){!I.isNullOrUndefined(t.options)&&JSON.stringify(t.options.previousValue)!==JSON.stringify(t.options.currentValue)&&this.onChangeOptions(),(!I.isNullOrUndefined(t.value)||!I.isNullOrUndefined(t.highValue))&&this.inputModelChangeSubject.next({value:this.value,highValue:this.highValue,controlAccessorChange:!1,forceChange:!1,internalChange:!1})}ngOnDestroy(){this.unbindEvents(),this.unsubscribeResizeObserver(),this.unsubscribeInputModelChangeSubject(),this.unsubscribeOutputModelChangeSubject(),this.unsubscribeManualRefresh(),this.unsubscribeTriggerFocus()}writeValue(t){t instanceof Array?(this.value=t[0],this.highValue=t[1]):this.value=t,this.inputModelChangeSubject.next({value:this.value,highValue:this.highValue,forceChange:!1,internalChange:!1,controlAccessorChange:!0})}registerOnChange(t){this.onChangeCallback=t}registerOnTouched(t){this.onTouchedCallback=t}setDisabledState(t){this.viewOptions.disabled=t,this.updateDisabledState(),this.initHasRun&&this.manageEventsBindings()}setAriaLabel(t){this.viewOptions.ariaLabel=t,this.updateAriaLabel()}onResize(t){this.calculateViewDimensionsAndDetectChanges()}subscribeInputModelChangeSubject(){this.inputModelChangeSubscription=this.inputModelChangeSubject.pipe(vS(AS.compare),function $8(e,n){return Pi((t,i)=>{let o=0;t.subscribe(Kn(i,r=>e.call(n,r,o++)&&i.next(r)))})}(t=>!t.forceChange&&!t.internalChange)).subscribe(t=>this.applyInputModelChange(t))}subscribeOutputModelChangeSubject(){this.outputModelChangeSubscription=this.outputModelChangeSubject.pipe(vS(AS.compare)).subscribe(t=>this.publishOutputModelChange(t))}subscribeResizeObserver(){this.resizeObserver=new ResizeObserver(()=>this.calculateViewDimensionsAndDetectChanges()),this.resizeObserver.observe(this.elementRef.nativeElement)}unsubscribeResizeObserver(){this.resizeObserver.disconnect(),this.resizeObserver=null}unsubscribeOnMove(){I.isNullOrUndefined(this.onMoveEventListener)||(this.eventListenerHelper.detachEventListener(this.onMoveEventListener),this.onMoveEventListener=null)}unsubscribeOnEnd(){I.isNullOrUndefined(this.onEndEventListener)||(this.eventListenerHelper.detachEventListener(this.onEndEventListener),this.onEndEventListener=null),I.isNullOrUndefined(this.onCancelEventListener)||(this.eventListenerHelper.detachEventListener(this.onCancelEventListener),this.onCancelEventListener=null)}unsubscribeInputModelChangeSubject(){I.isNullOrUndefined(this.inputModelChangeSubscription)||(this.inputModelChangeSubscription.unsubscribe(),this.inputModelChangeSubscription=null)}unsubscribeOutputModelChangeSubject(){I.isNullOrUndefined(this.outputModelChangeSubscription)||(this.outputModelChangeSubscription.unsubscribe(),this.outputModelChangeSubscription=null)}unsubscribeManualRefresh(){I.isNullOrUndefined(this.manualRefreshSubscription)||(this.manualRefreshSubscription.unsubscribe(),this.manualRefreshSubscription=null)}unsubscribeTriggerFocus(){I.isNullOrUndefined(this.triggerFocusSubscription)||(this.triggerFocusSubscription.unsubscribe(),this.triggerFocusSubscription=null)}unsubscribeCancelUserChange(){I.isNullOrUndefined(this.cancelUserChangeSubscription)||(this.cancelUserChangeSubscription.unsubscribe(),this.cancelUserChangeSubscription=null)}getPointerElement(t){return t===P.Min?this.minHandleElement:t===P.Max?this.maxHandleElement:null}getCurrentTrackingValue(){return this.currentTrackingPointer===P.Min?this.viewLowValue:this.currentTrackingPointer===P.Max?this.viewHighValue:null}modelValueToViewValue(t){return I.isNullOrUndefined(t)?NaN:I.isNullOrUndefined(this.viewOptions.stepsArray)||this.viewOptions.bindIndexForStepsArray?+t:I.findStepIndex(+t,this.viewOptions.stepsArray)}viewValueToModelValue(t){return I.isNullOrUndefined(this.viewOptions.stepsArray)||this.viewOptions.bindIndexForStepsArray?t:this.getStepValue(t)}getStepValue(t){const i=this.viewOptions.stepsArray[t];return I.isNullOrUndefined(i)?NaN:i.value}applyViewChange(){this.value=this.viewValueToModelValue(this.viewLowValue),this.range&&(this.highValue=this.viewValueToModelValue(this.viewHighValue)),this.outputModelChangeSubject.next({value:this.value,highValue:this.highValue,controlAccessorChange:!1,userEventInitiated:!0,forceChange:!1}),this.inputModelChangeSubject.next({value:this.value,highValue:this.highValue,controlAccessorChange:!1,forceChange:!1,internalChange:!0})}applyInputModelChange(t){const i=this.normaliseModelValues(t),o=!pu.compare(t,i);o&&(this.value=i.value,this.highValue=i.highValue),this.viewLowValue=this.modelValueToViewValue(i.value),this.viewHighValue=this.range?this.modelValueToViewValue(i.highValue):null,this.updateLowHandle(this.valueToPosition(this.viewLowValue)),this.range&&this.updateHighHandle(this.valueToPosition(this.viewHighValue)),this.updateSelectionBar(),this.updateTicksScale(),this.updateAriaAttributes(),this.range&&this.updateCombinedLabel(),this.outputModelChangeSubject.next({value:i.value,highValue:i.highValue,controlAccessorChange:t.controlAccessorChange,forceChange:o,userEventInitiated:!1})}publishOutputModelChange(t){const i=()=>{this.valueChange.emit(t.value),this.range&&this.highValueChange.emit(t.highValue),!t.controlAccessorChange&&(I.isNullOrUndefined(this.onChangeCallback)||this.onChangeCallback(this.range?[t.value,t.highValue]:t.value),I.isNullOrUndefined(this.onTouchedCallback)||this.onTouchedCallback(this.range?[t.value,t.highValue]:t.value))};t.userEventInitiated?(i(),this.userChange.emit(this.getChangeContext())):setTimeout(()=>{i()})}normaliseModelValues(t){const i=new pu;if(i.value=t.value,i.highValue=t.highValue,!I.isNullOrUndefined(this.viewOptions.stepsArray)){if(this.viewOptions.enforceStepsArray){const o=I.findStepIndex(i.value,this.viewOptions.stepsArray);if(i.value=this.viewOptions.stepsArray[o].value,this.range){const r=I.findStepIndex(i.highValue,this.viewOptions.stepsArray);i.highValue=this.viewOptions.stepsArray[r].value}}return i}if(this.viewOptions.enforceStep&&(i.value=this.roundStep(i.value),this.range&&(i.highValue=this.roundStep(i.highValue))),this.viewOptions.enforceRange&&(i.value=He.clampToRange(i.value,this.viewOptions.floor,this.viewOptions.ceil),this.range&&(i.highValue=He.clampToRange(i.highValue,this.viewOptions.floor,this.viewOptions.ceil)),this.range&&t.value>t.highValue))if(this.viewOptions.noSwitching)i.value=i.highValue;else{const o=t.value;i.value=t.highValue,i.highValue=o}return i}renormaliseModelValues(){const t={value:this.value,highValue:this.highValue},i=this.normaliseModelValues(t);pu.compare(i,t)||(this.value=i.value,this.highValue=i.highValue,this.outputModelChangeSubject.next({value:this.value,highValue:this.highValue,controlAccessorChange:!1,forceChange:!0,userEventInitiated:!1}))}onChangeOptions(){if(!this.initHasRun)return;const t=this.getOptionsInfluencingEventBindings(this.viewOptions);this.applyOptions();const i=this.getOptionsInfluencingEventBindings(this.viewOptions),o=!I.areArraysEqual(t,i);this.renormaliseModelValues(),this.viewLowValue=this.modelValueToViewValue(this.value),this.viewHighValue=this.range?this.modelValueToViewValue(this.highValue):null,this.resetSlider(o)}applyOptions(){if(this.viewOptions=new gu,Object.assign(this.viewOptions,this.options),this.viewOptions.draggableRange=this.range&&this.viewOptions.draggableRange,this.viewOptions.draggableRangeOnly=this.range&&this.viewOptions.draggableRangeOnly,this.viewOptions.draggableRangeOnly&&(this.viewOptions.draggableRange=!0),this.viewOptions.showTicks=this.viewOptions.showTicks||this.viewOptions.showTicksValues||!I.isNullOrUndefined(this.viewOptions.ticksArray),this.viewOptions.showTicks&&(!I.isNullOrUndefined(this.viewOptions.tickStep)||!I.isNullOrUndefined(this.viewOptions.ticksArray))&&(this.intermediateTicks=!0),this.viewOptions.showSelectionBar=this.viewOptions.showSelectionBar||this.viewOptions.showSelectionBarEnd||!I.isNullOrUndefined(this.viewOptions.showSelectionBarFromValue),I.isNullOrUndefined(this.viewOptions.stepsArray)?this.applyFloorCeilOptions():this.applyStepsArrayOptions(),I.isNullOrUndefined(this.viewOptions.combineLabels)&&(this.viewOptions.combineLabels=(t,i)=>t+" - "+i),this.viewOptions.logScale&&0===this.viewOptions.floor)throw Error("Can't use floor=0 with logarithmic scale")}applyStepsArrayOptions(){this.viewOptions.floor=0,this.viewOptions.ceil=this.viewOptions.stepsArray.length-1,this.viewOptions.step=1,I.isNullOrUndefined(this.viewOptions.translate)&&(this.viewOptions.translate=t=>String(this.viewOptions.bindIndexForStepsArray?this.getStepValue(t):t))}applyFloorCeilOptions(){if(I.isNullOrUndefined(this.viewOptions.step)?this.viewOptions.step=1:(this.viewOptions.step=+this.viewOptions.step,this.viewOptions.step<=0&&(this.viewOptions.step=1)),I.isNullOrUndefined(this.viewOptions.ceil)||I.isNullOrUndefined(this.viewOptions.floor))throw Error("floor and ceil options must be supplied");this.viewOptions.ceil=+this.viewOptions.ceil,this.viewOptions.floor=+this.viewOptions.floor,I.isNullOrUndefined(this.viewOptions.translate)&&(this.viewOptions.translate=t=>String(t))}resetSlider(t=!0){this.manageElementsStyle(),this.addAccessibility(),this.updateCeilLabel(),this.updateFloorLabel(),t&&(this.unbindEvents(),this.manageEventsBindings()),this.updateDisabledState(),this.updateAriaLabel(),this.calculateViewDimensions(),this.refocusPointerIfNeeded()}focusPointer(t){t!==P.Min&&t!==P.Max&&(t=P.Min),t===P.Min?this.minHandleElement.focus():this.range&&t===P.Max&&this.maxHandleElement.focus()}refocusPointerIfNeeded(){I.isNullOrUndefined(this.currentFocusPointer)||this.getPointerElement(this.currentFocusPointer).focusIfNeeded()}manageElementsStyle(){this.updateScale(),this.floorLabelElement.setAlwaysHide(this.viewOptions.showTicksValues||this.viewOptions.hideLimitLabels),this.ceilLabelElement.setAlwaysHide(this.viewOptions.showTicksValues||this.viewOptions.hideLimitLabels);const t=this.viewOptions.showTicksValues&&!this.intermediateTicks;this.minHandleLabelElement.setAlwaysHide(t||this.viewOptions.hidePointerLabels),this.maxHandleLabelElement.setAlwaysHide(t||!this.range||this.viewOptions.hidePointerLabels),this.combinedLabelElement.setAlwaysHide(t||!this.range||this.viewOptions.hidePointerLabels),this.selectionBarElement.setAlwaysHide(!this.range&&!this.viewOptions.showSelectionBar),this.leftOuterSelectionBarElement.setAlwaysHide(!this.range||!this.viewOptions.showOuterSelectionBars),this.rightOuterSelectionBarElement.setAlwaysHide(!this.range||!this.viewOptions.showOuterSelectionBars),this.fullBarTransparentClass=this.range&&this.viewOptions.showOuterSelectionBars,this.selectionBarDraggableClass=this.viewOptions.draggableRange&&!this.viewOptions.onlyBindHandles,this.ticksUnderValuesClass=this.intermediateTicks&&this.options.showTicksValues,this.sliderElementVerticalClass!==this.viewOptions.vertical&&(this.updateVerticalState(),setTimeout(()=>{this.resetSlider()})),this.sliderElementAnimateClass!==this.viewOptions.animate&&setTimeout(()=>{this.sliderElementAnimateClass=this.viewOptions.animate}),this.updateRotate()}manageEventsBindings(){this.viewOptions.disabled||this.viewOptions.readOnly?this.unbindEvents():this.bindEvents()}updateDisabledState(){this.sliderElementDisabledAttr=this.viewOptions.disabled?"disabled":null}updateAriaLabel(){this.sliderElementAriaLabel=this.viewOptions.ariaLabel||"nxg-slider"}updateVerticalState(){this.sliderElementVerticalClass=this.viewOptions.vertical;for(const t of this.getAllSliderElements())I.isNullOrUndefined(t)||t.setVertical(this.viewOptions.vertical)}updateScale(){for(const t of this.getAllSliderElements())t.setScale(this.viewOptions.scale)}updateRotate(){for(const t of this.getAllSliderElements())t.setRotate(this.viewOptions.rotate)}getAllSliderElements(){return[this.leftOuterSelectionBarElement,this.rightOuterSelectionBarElement,this.fullBarElement,this.selectionBarElement,this.minHandleElement,this.maxHandleElement,this.floorLabelElement,this.ceilLabelElement,this.minHandleLabelElement,this.maxHandleLabelElement,this.combinedLabelElement,this.ticksElement]}initHandles(){this.updateLowHandle(this.valueToPosition(this.viewLowValue)),this.range&&this.updateHighHandle(this.valueToPosition(this.viewHighValue)),this.updateSelectionBar(),this.range&&this.updateCombinedLabel(),this.updateTicksScale()}addAccessibility(){this.updateAriaAttributes(),this.minHandleElement.role="slider",this.minHandleElement.tabindex=!this.viewOptions.keyboardSupport||this.viewOptions.readOnly||this.viewOptions.disabled?"":"0",this.minHandleElement.ariaOrientation=this.viewOptions.vertical||0!==this.viewOptions.rotate?"vertical":"horizontal",I.isNullOrUndefined(this.viewOptions.ariaLabel)?I.isNullOrUndefined(this.viewOptions.ariaLabelledBy)||(this.minHandleElement.ariaLabelledBy=this.viewOptions.ariaLabelledBy):this.minHandleElement.ariaLabel=this.viewOptions.ariaLabel,this.range&&(this.maxHandleElement.role="slider",this.maxHandleElement.tabindex=!this.viewOptions.keyboardSupport||this.viewOptions.readOnly||this.viewOptions.disabled?"":"0",this.maxHandleElement.ariaOrientation=this.viewOptions.vertical||0!==this.viewOptions.rotate?"vertical":"horizontal",I.isNullOrUndefined(this.viewOptions.ariaLabelHigh)?I.isNullOrUndefined(this.viewOptions.ariaLabelledByHigh)||(this.maxHandleElement.ariaLabelledBy=this.viewOptions.ariaLabelledByHigh):this.maxHandleElement.ariaLabel=this.viewOptions.ariaLabelHigh)}updateAriaAttributes(){this.minHandleElement.ariaValueNow=(+this.value).toString(),this.minHandleElement.ariaValueText=this.viewOptions.translate(+this.value,_n.Low),this.minHandleElement.ariaValueMin=this.viewOptions.floor.toString(),this.minHandleElement.ariaValueMax=this.viewOptions.ceil.toString(),this.range&&(this.maxHandleElement.ariaValueNow=(+this.highValue).toString(),this.maxHandleElement.ariaValueText=this.viewOptions.translate(+this.highValue,_n.High),this.maxHandleElement.ariaValueMin=this.viewOptions.floor.toString(),this.maxHandleElement.ariaValueMax=this.viewOptions.ceil.toString())}calculateViewDimensions(){I.isNullOrUndefined(this.viewOptions.handleDimension)?this.minHandleElement.calculateDimension():this.minHandleElement.setDimension(this.viewOptions.handleDimension);const t=this.minHandleElement.dimension;this.handleHalfDimension=t/2,I.isNullOrUndefined(this.viewOptions.barDimension)?this.fullBarElement.calculateDimension():this.fullBarElement.setDimension(this.viewOptions.barDimension),this.maxHandlePosition=this.fullBarElement.dimension-t,this.initHasRun&&(this.updateFloorLabel(),this.updateCeilLabel(),this.initHandles())}calculateViewDimensionsAndDetectChanges(){this.calculateViewDimensions(),this.isRefDestroyed()||this.changeDetectionRef.detectChanges()}isRefDestroyed(){return this.changeDetectionRef.destroyed}updateTicksScale(){if(!this.viewOptions.showTicks&&this.sliderElementWithLegendClass)return void setTimeout(()=>{this.sliderElementWithLegendClass=!1});const t=I.isNullOrUndefined(this.viewOptions.ticksArray)?this.getTicksArray():this.viewOptions.ticksArray,i=this.viewOptions.vertical?"translateY":"translateX";this.viewOptions.rightToLeft&&t.reverse();const o=I.isNullOrUndefined(this.viewOptions.tickValueStep)?I.isNullOrUndefined(this.viewOptions.tickStep)?this.viewOptions.step:this.viewOptions.tickStep:this.viewOptions.tickValueStep;let r=!1;const s=t.map(a=>{let l=this.valueToPosition(a);this.viewOptions.vertical&&(l=this.maxHandlePosition-l);const c=i+"("+Math.round(l)+"px)",u=new C4;u.selected=this.isTickSelected(a),u.style={"-webkit-transform":c,"-moz-transform":c,"-o-transform":c,"-ms-transform":c,transform:c},u.selected&&!I.isNullOrUndefined(this.viewOptions.getSelectionBarColor)&&(u.style["background-color"]=this.getSelectionBarColor()),!u.selected&&!I.isNullOrUndefined(this.viewOptions.getTickColor)&&(u.style["background-color"]=this.getTickColor(a)),I.isNullOrUndefined(this.viewOptions.ticksTooltip)||(u.tooltip=this.viewOptions.ticksTooltip(a),u.tooltipPlacement=this.viewOptions.vertical?"right":"top"),this.viewOptions.showTicksValues&&!I.isNullOrUndefined(o)&&He.isModuloWithinPrecisionLimit(a,o,this.viewOptions.precisionLimit)&&(u.value=this.getDisplayValue(a,_n.TickValue),I.isNullOrUndefined(this.viewOptions.ticksValuesTooltip)||(u.valueTooltip=this.viewOptions.ticksValuesTooltip(a),u.valueTooltipPlacement=this.viewOptions.vertical?"right":"top"));let d=null;if(I.isNullOrUndefined(this.viewOptions.stepsArray))I.isNullOrUndefined(this.viewOptions.getLegend)||(d=this.viewOptions.getLegend(a));else{const h=this.viewOptions.stepsArray[a];I.isNullOrUndefined(this.viewOptions.getStepLegend)?I.isNullOrUndefined(h)||(d=h.legend):d=this.viewOptions.getStepLegend(h)}return I.isNullOrUndefined(d)||(u.legend=d,r=!0),u});if(this.sliderElementWithLegendClass!==r&&setTimeout(()=>{this.sliderElementWithLegendClass=r}),I.isNullOrUndefined(this.ticks)||this.ticks.length!==s.length)this.ticks=s,this.isRefDestroyed()||this.changeDetectionRef.detectChanges();else for(let a=0;a<s.length;++a)Object.assign(this.ticks[a],s[a])}getTicksArray(){if(!this.viewOptions.showTicks)return[];const t=I.isNullOrUndefined(this.viewOptions.tickStep)?this.viewOptions.step:this.viewOptions.tickStep,i=[],o=1+Math.floor(He.roundToPrecisionLimit(Math.abs(this.viewOptions.ceil-this.viewOptions.floor)/t,this.viewOptions.precisionLimit));for(let r=0;r<o;++r)i.push(He.roundToPrecisionLimit(this.viewOptions.floor+t*r,this.viewOptions.precisionLimit));return i}isTickSelected(t){if(!this.range)if(I.isNullOrUndefined(this.viewOptions.showSelectionBarFromValue)){if(this.viewOptions.showSelectionBarEnd){if(t>=this.viewLowValue)return!0}else if(this.viewOptions.showSelectionBar&&t<=this.viewLowValue)return!0}else{const i=this.viewOptions.showSelectionBarFromValue;if(this.viewLowValue>i&&t>=i&&t<=this.viewLowValue)return!0;if(this.viewLowValue<i&&t<=i&&t>=this.viewLowValue)return!0}return!!(this.range&&t>=this.viewLowValue&&t<=this.viewHighValue)}updateFloorLabel(){this.floorLabelElement.alwaysHide||(this.floorLabelElement.setValue(this.getDisplayValue(this.viewOptions.floor,_n.Floor)),this.floorLabelElement.calculateDimension(),this.floorLabelElement.setPosition(this.viewOptions.rightToLeft?this.fullBarElement.dimension-this.floorLabelElement.dimension:0))}updateCeilLabel(){this.ceilLabelElement.alwaysHide||(this.ceilLabelElement.setValue(this.getDisplayValue(this.viewOptions.ceil,_n.Ceil)),this.ceilLabelElement.calculateDimension(),this.ceilLabelElement.setPosition(this.viewOptions.rightToLeft?0:this.fullBarElement.dimension-this.ceilLabelElement.dimension))}updateHandles(t,i){t===P.Min?this.updateLowHandle(i):t===P.Max&&this.updateHighHandle(i),this.updateSelectionBar(),this.updateTicksScale(),this.range&&this.updateCombinedLabel()}getHandleLabelPos(t,i){const o=t===P.Min?this.minHandleLabelElement.dimension:this.maxHandleLabelElement.dimension,r=i-o/2+this.handleHalfDimension,s=this.fullBarElement.dimension-o;return this.viewOptions.boundPointerLabels?this.viewOptions.rightToLeft&&t===P.Min||!this.viewOptions.rightToLeft&&t===P.Max?Math.min(r,s):Math.min(Math.max(r,0),s):r}updateLowHandle(t){this.minHandleElement.setPosition(t),this.minHandleLabelElement.setValue(this.getDisplayValue(this.viewLowValue,_n.Low)),this.minHandleLabelElement.setPosition(this.getHandleLabelPos(P.Min,t)),I.isNullOrUndefined(this.viewOptions.getPointerColor)||(this.minPointerStyle={backgroundColor:this.getPointerColor(P.Min)}),this.viewOptions.autoHideLimitLabels&&this.updateFloorAndCeilLabelsVisibility()}updateHighHandle(t){this.maxHandleElement.setPosition(t),this.maxHandleLabelElement.setValue(this.getDisplayValue(this.viewHighValue,_n.High)),this.maxHandleLabelElement.setPosition(this.getHandleLabelPos(P.Max,t)),I.isNullOrUndefined(this.viewOptions.getPointerColor)||(this.maxPointerStyle={backgroundColor:this.getPointerColor(P.Max)}),this.viewOptions.autoHideLimitLabels&&this.updateFloorAndCeilLabelsVisibility()}updateFloorAndCeilLabelsVisibility(){if(this.viewOptions.hidePointerLabels)return;let t=!1,i=!1;const o=this.isLabelBelowFloorLabel(this.minHandleLabelElement),r=this.isLabelAboveCeilLabel(this.minHandleLabelElement),s=this.isLabelAboveCeilLabel(this.maxHandleLabelElement),a=this.isLabelBelowFloorLabel(this.combinedLabelElement),l=this.isLabelAboveCeilLabel(this.combinedLabelElement);if(o?(t=!0,this.floorLabelElement.hide()):(t=!1,this.floorLabelElement.show()),r?(i=!0,this.ceilLabelElement.hide()):(i=!1,this.ceilLabelElement.show()),this.range){const c=this.combinedLabelElement.isVisible()?l:s,u=this.combinedLabelElement.isVisible()?a:o;c?this.ceilLabelElement.hide():i||this.ceilLabelElement.show(),u?this.floorLabelElement.hide():t||this.floorLabelElement.show()}}isLabelBelowFloorLabel(t){const i=t.position,r=this.floorLabelElement.position;return this.viewOptions.rightToLeft?i+t.dimension>=r-2:i<=r+this.floorLabelElement.dimension+2}isLabelAboveCeilLabel(t){const i=t.position,r=this.ceilLabelElement.position;return this.viewOptions.rightToLeft?i<=r+this.ceilLabelElement.dimension+2:i+t.dimension>=r-2}updateSelectionBar(){let t=0,i=0;const o=this.viewOptions.rightToLeft?!this.viewOptions.showSelectionBarEnd:this.viewOptions.showSelectionBarEnd,r=this.viewOptions.rightToLeft?this.maxHandleElement.position+this.handleHalfDimension:this.minHandleElement.position+this.handleHalfDimension;if(this.range)i=Math.abs(this.maxHandleElement.position-this.minHandleElement.position),t=r;else if(I.isNullOrUndefined(this.viewOptions.showSelectionBarFromValue))o?(i=Math.ceil(Math.abs(this.maxHandlePosition-this.minHandleElement.position)+this.handleHalfDimension),t=Math.floor(this.minHandleElement.position+this.handleHalfDimension)):(i=this.minHandleElement.position+this.handleHalfDimension,t=0);else{const s=this.viewOptions.showSelectionBarFromValue,a=this.valueToPosition(s);(this.viewOptions.rightToLeft?this.viewLowValue<=s:this.viewLowValue>s)?(i=this.minHandleElement.position-a,t=a+this.handleHalfDimension):(i=a-this.minHandleElement.position,t=this.minHandleElement.position+this.handleHalfDimension)}if(this.selectionBarElement.setDimension(i),this.selectionBarElement.setPosition(t),this.range&&this.viewOptions.showOuterSelectionBars&&(this.viewOptions.rightToLeft?(this.rightOuterSelectionBarElement.setDimension(t),this.rightOuterSelectionBarElement.setPosition(0),this.fullBarElement.calculateDimension(),this.leftOuterSelectionBarElement.setDimension(this.fullBarElement.dimension-(t+i)),this.leftOuterSelectionBarElement.setPosition(t+i)):(this.leftOuterSelectionBarElement.setDimension(t),this.leftOuterSelectionBarElement.setPosition(0),this.fullBarElement.calculateDimension(),this.rightOuterSelectionBarElement.setDimension(this.fullBarElement.dimension-(t+i)),this.rightOuterSelectionBarElement.setPosition(t+i))),I.isNullOrUndefined(this.viewOptions.getSelectionBarColor)){if(!I.isNullOrUndefined(this.viewOptions.selectionBarGradient)){const s=I.isNullOrUndefined(this.viewOptions.showSelectionBarFromValue)?0:this.valueToPosition(this.viewOptions.showSelectionBarFromValue),a=s-t>0&&!o||s-t<=0&&o;this.barStyle={backgroundImage:"linear-gradient(to "+(this.viewOptions.vertical?a?"bottom":"top":a?"left":"right")+", "+this.viewOptions.selectionBarGradient.from+" 0%,"+this.viewOptions.selectionBarGradient.to+" 100%)"},this.viewOptions.vertical?(this.barStyle.backgroundPosition="center "+(s+i+t+(a?-this.handleHalfDimension:0))+"px",this.barStyle.backgroundSize="100% "+(this.fullBarElement.dimension-this.handleHalfDimension)+"px"):(this.barStyle.backgroundPosition=s-t+(a?this.handleHalfDimension:0)+"px center",this.barStyle.backgroundSize=this.fullBarElement.dimension-this.handleHalfDimension+"px 100%")}}else{const s=this.getSelectionBarColor();this.barStyle={backgroundColor:s}}}getSelectionBarColor(){return this.range?this.viewOptions.getSelectionBarColor(this.value,this.highValue):this.viewOptions.getSelectionBarColor(this.value)}getPointerColor(t){return this.viewOptions.getPointerColor(t===P.Max?this.highValue:this.value,t)}getTickColor(t){return this.viewOptions.getTickColor(t)}updateCombinedLabel(){let t=null;if(t=this.viewOptions.rightToLeft?this.minHandleLabelElement.position-this.minHandleLabelElement.dimension-10<=this.maxHandleLabelElement.position:this.minHandleLabelElement.position+this.minHandleLabelElement.dimension+10>=this.maxHandleLabelElement.position,t){const i=this.getDisplayValue(this.viewLowValue,_n.Low),o=this.getDisplayValue(this.viewHighValue,_n.High),r=this.viewOptions.rightToLeft?this.viewOptions.combineLabels(o,i):this.viewOptions.combineLabels(i,o);this.combinedLabelElement.setValue(r);const s=this.viewOptions.boundPointerLabels?Math.min(Math.max(this.selectionBarElement.position+this.selectionBarElement.dimension/2-this.combinedLabelElement.dimension/2,0),this.fullBarElement.dimension-this.combinedLabelElement.dimension):this.selectionBarElement.position+this.selectionBarElement.dimension/2-this.combinedLabelElement.dimension/2;this.combinedLabelElement.setPosition(s),this.minHandleLabelElement.hide(),this.maxHandleLabelElement.hide(),this.combinedLabelElement.show()}else this.updateHighHandle(this.valueToPosition(this.viewHighValue)),this.updateLowHandle(this.valueToPosition(this.viewLowValue)),this.maxHandleLabelElement.show(),this.minHandleLabelElement.show(),this.combinedLabelElement.hide();this.viewOptions.autoHideLimitLabels&&this.updateFloorAndCeilLabelsVisibility()}getDisplayValue(t,i){return!I.isNullOrUndefined(this.viewOptions.stepsArray)&&!this.viewOptions.bindIndexForStepsArray&&(t=this.getStepValue(t)),this.viewOptions.translate(t,i)}roundStep(t,i){const o=I.isNullOrUndefined(i)?this.viewOptions.step:i;let r=He.roundToPrecisionLimit((t-this.viewOptions.floor)/o,this.viewOptions.precisionLimit);return r=Math.round(r)*o,He.roundToPrecisionLimit(this.viewOptions.floor+r,this.viewOptions.precisionLimit)}valueToPosition(t){let i=I.linearValueToPosition;I.isNullOrUndefined(this.viewOptions.customValueToPosition)?this.viewOptions.logScale&&(i=I.logValueToPosition):i=this.viewOptions.customValueToPosition;let o=i(t=He.clampToRange(t,this.viewOptions.floor,this.viewOptions.ceil),this.viewOptions.floor,this.viewOptions.ceil);return I.isNullOrUndefined(o)&&(o=0),this.viewOptions.rightToLeft&&(o=1-o),o*this.maxHandlePosition}positionToValue(t){let i=t/this.maxHandlePosition;this.viewOptions.rightToLeft&&(i=1-i);let o=I.linearPositionToValue;I.isNullOrUndefined(this.viewOptions.customPositionToValue)?this.viewOptions.logScale&&(o=I.logPositionToValue):o=this.viewOptions.customPositionToValue;const r=o(i,this.viewOptions.floor,this.viewOptions.ceil);return I.isNullOrUndefined(r)?0:r}getEventXY(t){return this.viewOptions.vertical||0!==this.viewOptions.rotate?t.clientY:t.clientX}getEventPosition(t){const i=this.elementRef.nativeElement.getBoundingClientRect(),o=this.viewOptions.vertical||0!==this.viewOptions.rotate?i.bottom:i.left;let r=0;return r=this.viewOptions.vertical||0!==this.viewOptions.rotate?-this.getEventXY(t)+o:this.getEventXY(t)-o,r*this.viewOptions.scale-this.handleHalfDimension}getNearestHandle(t){if(!this.range)return P.Min;const i=this.getEventPosition(t),o=Math.abs(i-this.minHandleElement.position),r=Math.abs(i-this.maxHandleElement.position);return o<r?P.Min:o>r?P.Max:this.viewOptions.rightToLeft?i>this.minHandleElement.position?P.Min:P.Max:i<this.minHandleElement.position?P.Min:P.Max}bindEvents(){const t=this.viewOptions.draggableRange;this.viewOptions.onlyBindHandles||this.selectionBarElement.on("pointerdown",i=>this.onBarStart(null,t,i,!0,!0,!0)),this.viewOptions.draggableRangeOnly?(this.minHandleElement.on("pointerdown",i=>this.onBarStart(P.Min,t,i,!0,!0)),this.maxHandleElement.on("pointerdown",i=>this.onBarStart(P.Max,t,i,!0,!0))):(this.minHandleElement.on("pointerdown",i=>this.onStart(P.Min,i,!0,!0)),this.range&&this.maxHandleElement.on("pointerdown",i=>this.onStart(P.Max,i,!0,!0)),this.viewOptions.onlyBindHandles||(this.fullBarElement.on("pointerdown",i=>this.onStart(null,i,!0,!0,!0)),this.ticksElement.on("pointerdown",i=>this.onStart(null,i,!0,!0,!0,!0)))),this.viewOptions.onlyBindHandles||this.selectionBarElement.onPassive("pointerdown",i=>this.onBarStart(null,t,i,!0,!0,!0)),this.viewOptions.draggableRangeOnly?(this.minHandleElement.onPassive("pointerdown",i=>this.onBarStart(P.Min,t,i,!0,!0)),this.maxHandleElement.onPassive("pointerdown",i=>this.onBarStart(P.Max,t,i,!0,!0))):(this.minHandleElement.onPassive("pointerdown",i=>this.onStart(P.Min,i,!0,!0)),this.range&&this.maxHandleElement.onPassive("pointerdown",i=>this.onStart(P.Max,i,!0,!0)),this.viewOptions.onlyBindHandles||(this.fullBarElement.onPassive("pointerdown",i=>this.onStart(null,i,!0,!0,!0)),this.ticksElement.onPassive("pointerdown",i=>this.onStart(null,i,!1,!1,!0,!0)))),this.viewOptions.keyboardSupport&&(this.minHandleElement.on("focus",()=>this.onPointerFocus(P.Min)),this.range&&this.maxHandleElement.on("focus",()=>this.onPointerFocus(P.Max)))}getOptionsInfluencingEventBindings(t){return[t.disabled,t.readOnly,t.draggableRange,t.draggableRangeOnly,t.onlyBindHandles,t.keyboardSupport]}unbindEvents(){this.unsubscribeOnMove(),this.unsubscribeOnEnd();for(const t of this.getAllSliderElements())I.isNullOrUndefined(t)||t.off()}onBarStart(t,i,o,r,s,a,l){i?this.onDragStart(t,o,r,s):this.onStart(t,o,r,s,a,l)}onStart(t,i,o,r,s,a){i.stopPropagation(),"touch"!==i.pointerType&&!CS&&i.preventDefault(),this.moving=!1,this.calculateViewDimensions(),I.isNullOrUndefined(t)&&(t=this.getNearestHandle(i)),this.currentTrackingPointer=t;const l=this.getPointerElement(t);if(l.active=!0,this.preStartHandleValue=this.getCurrentTrackingValue(),this.viewOptions.keyboardSupport&&l.focus(),o){this.unsubscribeOnMove();const c=u=>this.dragging.active?this.onDragMove(u):this.onMove(u);this.onMoveEventListener="touch"===i.pointerType?this.eventListenerHelper.attachPassiveEventListener(this.document,"pointermove",c):this.eventListenerHelper.attachEventListener(this.document,"pointermove",c)}if(r){this.unsubscribeOnEnd();const c=u=>this.onEnd(u);"touch"===i.pointerType?(this.onEndEventListener=this.eventListenerHelper.attachPassiveEventListener(this.document,"pointerup",c),this.onCancelEventListener=this.eventListenerHelper.attachPassiveEventListener(this.document,"pointercancel",c)):(this.onEndEventListener=this.eventListenerHelper.attachEventListener(this.document,"pointerup",c),this.onCancelEventListener=this.eventListenerHelper.attachPassiveEventListener(this.document,"pointercancel",c))}this.userChangeStart.emit(this.getChangeContext()),"touch"===i.pointerType&&i.isPrimary&&(this.touchId=i.pointerId),s&&this.onMove(i,!0),a&&this.onEnd(i)}onMove(t,i){if("touch"===t.pointerType&&!t.isPrimary)return;this.viewOptions.animate&&!this.viewOptions.animateOnMove&&this.moving&&(this.sliderElementAnimateClass=!1),this.moving=!0;const o=this.getEventPosition(t);let r;o<=0?r=this.viewOptions.rightToLeft?this.viewOptions.ceil:this.viewOptions.floor:o>=this.maxHandlePosition?r=this.viewOptions.rightToLeft?this.viewOptions.floor:this.viewOptions.ceil:(r=this.positionToValue(o),r=i&&!I.isNullOrUndefined(this.viewOptions.tickStep)?this.roundStep(r,this.viewOptions.tickStep):this.roundStep(r)),this.positionTrackingHandle(r)}forceEnd(t=!1){this.moving=!1,this.viewOptions.animate&&(this.sliderElementAnimateClass=!0),t&&(this.sliderElementAnimateClass=!1,setTimeout(()=>{this.sliderElementAnimateClass=this.viewOptions.animate})),this.touchId=null,this.viewOptions.keyboardSupport||(this.minHandleElement.active=!1,this.maxHandleElement.active=!1,this.currentTrackingPointer=null),this.dragging.active=!1,this.unsubscribeOnMove(),this.unsubscribeOnEnd(),this.userChangeEnd.emit(this.getChangeContext())}onEnd(t){"touch"===t.pointerType&&!t.isPrimary||this.forceEnd()}onPointerFocus(t){const i=this.getPointerElement(t);i.on("blur",()=>this.onPointerBlur(i)),i.on("keydown",o=>this.onKeyboardEvent(o)),i.on("keyup",()=>this.onKeyUp()),i.active=!0,this.currentTrackingPointer=t,this.currentFocusPointer=t,this.firstKeyDown=!0}onKeyUp(){this.firstKeyDown=!0,this.userChangeEnd.emit(this.getChangeContext())}onPointerBlur(t){t.off("blur"),t.off("keydown"),t.off("keyup"),t.active=!1,I.isNullOrUndefined(this.touchId)&&(this.currentTrackingPointer=null,this.currentFocusPointer=null)}getKeyActions(t){const i=this.viewOptions.ceil-this.viewOptions.floor;let o=t+this.viewOptions.step,r=t-this.viewOptions.step,s=t+i/10,a=t-i/10;this.viewOptions.reversedControls&&(o=t-this.viewOptions.step,r=t+this.viewOptions.step,s=t-i/10,a=t+i/10);const l={UP:o,DOWN:r,LEFT:r,RIGHT:o,PAGEUP:s,PAGEDOWN:a,HOME:this.viewOptions.reversedControls?this.viewOptions.ceil:this.viewOptions.floor,END:this.viewOptions.reversedControls?this.viewOptions.floor:this.viewOptions.ceil};return this.viewOptions.rightToLeft&&(l.LEFT=o,l.RIGHT=r,(this.viewOptions.vertical||0!==this.viewOptions.rotate)&&(l.UP=r,l.DOWN=o)),l}onKeyboardEvent(t){const i=this.getCurrentTrackingValue(),o=I.isNullOrUndefined(t.keyCode)?t.which:t.keyCode,l=this.getKeyActions(i)[{38:"UP",40:"DOWN",37:"LEFT",39:"RIGHT",33:"PAGEUP",34:"PAGEDOWN",36:"HOME",35:"END"}[o]];if(I.isNullOrUndefined(l)||I.isNullOrUndefined(this.currentTrackingPointer))return;t.preventDefault(),this.firstKeyDown&&(this.firstKeyDown=!1,this.userChangeStart.emit(this.getChangeContext()));const c=He.clampToRange(l,this.viewOptions.floor,this.viewOptions.ceil),u=this.roundStep(c);if(this.viewOptions.draggableRangeOnly){const d=this.viewHighValue-this.viewLowValue;let h,g;this.currentTrackingPointer===P.Min?(h=u,g=u+d,g>this.viewOptions.ceil&&(g=this.viewOptions.ceil,h=g-d)):this.currentTrackingPointer===P.Max&&(g=u,h=u-d,h<this.viewOptions.floor&&(h=this.viewOptions.floor,g=h+d)),this.positionTrackingBar(h,g)}else this.positionTrackingHandle(u)}onDragStart(t,i,o,r){const s=this.getEventPosition(i);this.dragging=new TS,this.dragging.active=!0,this.dragging.value=this.positionToValue(s),this.dragging.difference=this.viewHighValue-this.viewLowValue,this.dragging.lowLimit=this.viewOptions.rightToLeft?this.minHandleElement.position-s:s-this.minHandleElement.position,this.dragging.highLimit=this.viewOptions.rightToLeft?s-this.maxHandleElement.position:this.maxHandleElement.position-s,this.onStart(t,i,o,r)}getMinValue(t,i,o){const r=this.viewOptions.rightToLeft;let s=null;return s=i?o?r?this.viewOptions.floor:this.viewOptions.ceil-this.dragging.difference:r?this.viewOptions.ceil-this.dragging.difference:this.viewOptions.floor:this.positionToValue(r?t+this.dragging.lowLimit:t-this.dragging.lowLimit),this.roundStep(s)}getMaxValue(t,i,o){const r=this.viewOptions.rightToLeft;let s=null;return s=i?o?r?this.viewOptions.floor+this.dragging.difference:this.viewOptions.ceil:r?this.viewOptions.ceil:this.viewOptions.floor+this.dragging.difference:r?this.positionToValue(t+this.dragging.lowLimit)+this.dragging.difference:this.positionToValue(t-this.dragging.lowLimit)+this.dragging.difference,this.roundStep(s)}onDragMove(t){const i=this.getEventPosition(t);let o,r,s,a;this.viewOptions.animate&&!this.viewOptions.animateOnMove&&this.moving&&(this.sliderElementAnimateClass=!1),this.moving=!0,this.viewOptions.rightToLeft?(o=this.dragging.lowLimit,r=this.dragging.highLimit,s=this.maxHandleElement,a=this.minHandleElement):(o=this.dragging.highLimit,r=this.dragging.lowLimit,s=this.minHandleElement,a=this.maxHandleElement);const c=i>=this.maxHandlePosition-o;let u,d;if(i<=r){if(0===s.position)return;u=this.getMinValue(i,!0,!1),d=this.getMaxValue(i,!0,!1)}else if(c){if(a.position===this.maxHandlePosition)return;d=this.getMaxValue(i,!0,!0),u=this.getMinValue(i,!0,!0)}else u=this.getMinValue(i,!1,!1),d=this.getMaxValue(i,!1,!1);this.positionTrackingBar(u,d)}positionTrackingBar(t,i){!I.isNullOrUndefined(this.viewOptions.minLimit)&&t<this.viewOptions.minLimit&&(i=He.roundToPrecisionLimit((t=this.viewOptions.minLimit)+this.dragging.difference,this.viewOptions.precisionLimit)),!I.isNullOrUndefined(this.viewOptions.maxLimit)&&i>this.viewOptions.maxLimit&&(t=He.roundToPrecisionLimit((i=this.viewOptions.maxLimit)-this.dragging.difference,this.viewOptions.precisionLimit)),this.viewLowValue=t,this.viewHighValue=i,this.applyViewChange(),this.updateHandles(P.Min,this.valueToPosition(t)),this.updateHandles(P.Max,this.valueToPosition(i))}positionTrackingHandle(t){t=this.applyMinMaxLimit(t),this.range&&(this.viewOptions.pushRange?t=this.applyPushRange(t):(this.viewOptions.noSwitching&&(this.currentTrackingPointer===P.Min&&t>this.viewHighValue?t=this.applyMinMaxRange(this.viewHighValue):this.currentTrackingPointer===P.Max&&t<this.viewLowValue&&(t=this.applyMinMaxRange(this.viewLowValue))),t=this.applyMinMaxRange(t),this.currentTrackingPointer===P.Min&&t>this.viewHighValue?(this.viewLowValue=this.viewHighValue,this.applyViewChange(),this.updateHandles(P.Min,this.maxHandleElement.position),this.updateAriaAttributes(),this.currentTrackingPointer=P.Max,this.minHandleElement.active=!1,this.maxHandleElement.active=!0,this.viewOptions.keyboardSupport&&this.maxHandleElement.focus()):this.currentTrackingPointer===P.Max&&t<this.viewLowValue&&(this.viewHighValue=this.viewLowValue,this.applyViewChange(),this.updateHandles(P.Max,this.minHandleElement.position),this.updateAriaAttributes(),this.currentTrackingPointer=P.Min,this.maxHandleElement.active=!1,this.minHandleElement.active=!0,this.viewOptions.keyboardSupport&&this.minHandleElement.focus()))),this.getCurrentTrackingValue()!==t&&(this.currentTrackingPointer===P.Min?(this.viewLowValue=t,this.applyViewChange()):this.currentTrackingPointer===P.Max&&(this.viewHighValue=t,this.applyViewChange()),this.updateHandles(this.currentTrackingPointer,this.valueToPosition(t)),this.updateAriaAttributes())}applyMinMaxLimit(t){return!I.isNullOrUndefined(this.viewOptions.minLimit)&&t<this.viewOptions.minLimit?this.viewOptions.minLimit:!I.isNullOrUndefined(this.viewOptions.maxLimit)&&t>this.viewOptions.maxLimit?this.viewOptions.maxLimit:t}applyMinMaxRange(t){const o=Math.abs(t-(this.currentTrackingPointer===P.Min?this.viewHighValue:this.viewLowValue));if(!I.isNullOrUndefined(this.viewOptions.minRange)&&o<this.viewOptions.minRange){if(this.currentTrackingPointer===P.Min)return He.roundToPrecisionLimit(this.viewHighValue-this.viewOptions.minRange,this.viewOptions.precisionLimit);if(this.currentTrackingPointer===P.Max)return He.roundToPrecisionLimit(this.viewLowValue+this.viewOptions.minRange,this.viewOptions.precisionLimit)}if(!I.isNullOrUndefined(this.viewOptions.maxRange)&&o>this.viewOptions.maxRange){if(this.currentTrackingPointer===P.Min)return He.roundToPrecisionLimit(this.viewHighValue-this.viewOptions.maxRange,this.viewOptions.precisionLimit);if(this.currentTrackingPointer===P.Max)return He.roundToPrecisionLimit(this.viewLowValue+this.viewOptions.maxRange,this.viewOptions.precisionLimit)}return t}applyPushRange(t){const i=this.currentTrackingPointer===P.Min?this.viewHighValue-t:t-this.viewLowValue,o=I.isNullOrUndefined(this.viewOptions.minRange)?this.viewOptions.step:this.viewOptions.minRange,r=this.viewOptions.maxRange;return i<o?(this.currentTrackingPointer===P.Min?(this.viewHighValue=He.roundToPrecisionLimit(Math.min(t+o,this.viewOptions.ceil),this.viewOptions.precisionLimit),t=He.roundToPrecisionLimit(this.viewHighValue-o,this.viewOptions.precisionLimit),this.applyViewChange(),this.updateHandles(P.Max,this.valueToPosition(this.viewHighValue))):this.currentTrackingPointer===P.Max&&(this.viewLowValue=He.roundToPrecisionLimit(Math.max(t-o,this.viewOptions.floor),this.viewOptions.precisionLimit),t=He.roundToPrecisionLimit(this.viewLowValue+o,this.viewOptions.precisionLimit),this.applyViewChange(),this.updateHandles(P.Min,this.valueToPosition(this.viewLowValue))),this.updateAriaAttributes()):!I.isNullOrUndefined(r)&&i>r&&(this.currentTrackingPointer===P.Min?(this.viewHighValue=He.roundToPrecisionLimit(t+r,this.viewOptions.precisionLimit),this.applyViewChange(),this.updateHandles(P.Max,this.valueToPosition(this.viewHighValue))):this.currentTrackingPointer===P.Max&&(this.viewLowValue=He.roundToPrecisionLimit(t-r,this.viewOptions.precisionLimit),this.applyViewChange(),this.updateHandles(P.Min,this.valueToPosition(this.viewLowValue))),this.updateAriaAttributes()),t}getChangeContext(){const t=new _4;return t.pointerType=this.currentTrackingPointer,t.value=+this.value,this.range&&(t.highValue=+this.highValue),t}static \u0275fac=function(i){return new(i||e)};static \u0275cmp=on({type:e,selectors:[["ngx-slider"]],contentQueries:function(i,o,r){if(1&i&&dg(r,e4,5),2&i){let s;St(s=Tt())&&(o.tooltipTemplate=s.first)}},viewQuery:function(i,o){if(1&i&&fg(t4,5,_i)(n4,5,_i)(i4,5,_i)(o4,5,_i)(r4,5,Qp)(s4,5,Qp)(a4,5,Nr)(l4,5,Nr)(c4,5,Nr)(u4,5,Nr)(d4,5,Nr)(f4,5,_i),2&i){let r;St(r=Tt())&&(o.leftOuterSelectionBarElement=r.first),St(r=Tt())&&(o.rightOuterSelectionBarElement=r.first),St(r=Tt())&&(o.fullBarElement=r.first),St(r=Tt())&&(o.selectionBarElement=r.first),St(r=Tt())&&(o.minHandleElement=r.first),St(r=Tt())&&(o.maxHandleElement=r.first),St(r=Tt())&&(o.floorLabelElement=r.first),St(r=Tt())&&(o.ceilLabelElement=r.first),St(r=Tt())&&(o.minHandleLabelElement=r.first),St(r=Tt())&&(o.maxHandleLabelElement=r.first),St(r=Tt())&&(o.combinedLabelElement=r.first),St(r=Tt())&&(o.ticksElement=r.first)}},hostVars:10,hostBindings:function(i,o){1&i&&z("resize",function(s){return o.onResize(s)},wl),2&i&&(pt("disabled",o.sliderElementDisabledAttr)("aria-label",o.sliderElementAriaLabel),Ln("ngx-slider",o.sliderElementNgxSliderClass)("vertical",o.sliderElementVerticalClass)("animate",o.sliderElementAnimateClass)("with-legend",o.sliderElementWithLegendClass))},inputs:{value:"value",highValue:"highValue",options:"options",manualRefresh:"manualRefresh",triggerFocus:"triggerFocus",cancelUserChange:"cancelUserChange"},outputs:{valueChange:"valueChange",highValueChange:"highValueChange",userChangeStart:"userChangeStart",userChange:"userChange",userChangeEnd:"userChangeEnd"},standalone:!1,features:[be([b4]),On],decls:30,vars:12,consts:[["leftOuterSelectionBar",""],["rightOuterSelectionBar",""],["fullBar",""],["selectionBar",""],["minHandle",""],["maxHandle",""],["floorLabel",""],["ceilLabel",""],["minHandleLabel",""],["maxHandleLabel",""],["combinedLabel",""],["ticksElement",""],["ngxSliderElement","",1,"ngx-slider-span","ngx-slider-bar-wrapper","ngx-slider-left-out-selection"],[1,"ngx-slider-span","ngx-slider-bar"],["ngxSliderElement","",1,"ngx-slider-span","ngx-slider-bar-wrapper","ngx-slider-right-out-selection"],["ngxSliderElement","",1,"ngx-slider-span","ngx-slider-bar-wrapper","ngx-slider-full-bar"],["ngxSliderElement","",1,"ngx-slider-span","ngx-slider-bar-wrapper","ngx-slider-selection-bar"],[1,"ngx-slider-span","ngx-slider-bar","ngx-slider-selection",3,"ngStyle"],["ngxSliderHandle","",1,"ngx-slider-span","ngx-slider-pointer","ngx-slider-pointer-min",3,"ngStyle"],["ngxSliderHandle","",1,"ngx-slider-span","ngx-slider-pointer","ngx-slider-pointer-max",3,"ngStyle"],["ngxSliderLabel","",1,"ngx-slider-span","ngx-slider-bubble","ngx-slider-limit","ngx-slider-floor"],["ngxSliderLabel","",1,"ngx-slider-span","ngx-slider-bubble","ngx-slider-limit","ngx-slider-ceil"],["ngxSliderLabel","",1,"ngx-slider-span","ngx-slider-bubble","ngx-slider-model-value"],["ngxSliderLabel","",1,"ngx-slider-span","ngx-slider-bubble","ngx-slider-model-high"],["ngxSliderLabel","",1,"ngx-slider-span","ngx-slider-bubble","ngx-slider-combined"],["ngxSliderElement","",1,"ngx-slider-ticks",3,"hidden"],[1,"ngx-slider-tick",3,"ngClass","ngStyle"],[3,"template","tooltip","placement"],[1,"ngx-slider-span","ngx-slider-tick-value",3,"template","tooltip","placement","content"],[1,"ngx-slider-span","ngx-slider-tick-legend",3,"innerText"],[1,"ngx-slider-span","ngx-slider-tick-legend",3,"innerHTML"]],template:function(i,o){1&i&&(_(0,"span",12,0),x(2,"span",13),v(),_(3,"span",14,1),x(5,"span",13),v(),_(6,"span",15,2),x(8,"span",13),v(),_(9,"span",16,3),x(11,"span",17),v(),x(12,"span",18,4)(14,"span",19,5)(16,"span",20,6)(18,"span",21,7)(20,"span",22,8)(22,"span",23,9)(24,"span",24,10),_(26,"span",25,11),it(28,v4,5,10,"span",26,nt),v()),2&i&&(f(6),Ln("ngx-slider-transparent",o.fullBarTransparentClass),f(3),Ln("ngx-slider-draggable",o.selectionBarDraggableClass),f(2),A("ngStyle",o.barStyle),f(),A("ngStyle",o.minPointerStyle),f(2),bc("display",o.range?"inherit":"none"),A("ngStyle",o.maxPointerStyle),f(12),Ln("ngx-slider-ticks-values-under",o.ticksUnderValuesClass),A("hidden",!o.showTicks),f(2),ot(o.ticks))},dependencies:[Mr,SI,_i,Qp,Nr,y4],styles:['.ngx-slider{display:inline-block;position:relative;height:4px;width:100%;margin:35px 0 15px;vertical-align:middle;-webkit-user-select:none;user-select:none;touch-action:pan-y} .ngx-slider.with-legend{margin-bottom:40px} .ngx-slider[disabled]{cursor:not-allowed} .ngx-slider[disabled] .ngx-slider-pointer{cursor:not-allowed;background-color:#d8e0f3} .ngx-slider[disabled] .ngx-slider-draggable{cursor:not-allowed} .ngx-slider[disabled] .ngx-slider-selection{background:#8b91a2} .ngx-slider[disabled] .ngx-slider-tick{cursor:not-allowed} .ngx-slider[disabled] .ngx-slider-tick.ngx-slider-selected{background:#8b91a2} .ngx-slider .ngx-slider-span{white-space:nowrap;position:absolute;display:inline-block} .ngx-slider .ngx-slider-base{width:100%;height:100%;padding:0} .ngx-slider .ngx-slider-bar-wrapper{left:0;box-sizing:border-box;margin-top:-16px;padding-top:16px;width:100%;height:32px;z-index:1} .ngx-slider .ngx-slider-draggable{cursor:move} .ngx-slider .ngx-slider-bar{left:0;width:100%;height:4px;z-index:1;background:#d8e0f3;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px} .ngx-slider .ngx-slider-bar-wrapper.ngx-slider-transparent .ngx-slider-bar{background:transparent} .ngx-slider .ngx-slider-bar-wrapper.ngx-slider-left-out-selection .ngx-slider-bar{background:#df002d} .ngx-slider .ngx-slider-bar-wrapper.ngx-slider-right-out-selection .ngx-slider-bar{background:#03a688} .ngx-slider .ngx-slider-selection{z-index:2;background:#0db9f0;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px} .ngx-slider .ngx-slider-pointer{cursor:pointer;width:32px;height:32px;top:-14px;background-color:#0db9f0;z-index:3;-webkit-border-radius:16px;-moz-border-radius:16px;border-radius:16px} .ngx-slider .ngx-slider-pointer:after{content:"";width:8px;height:8px;position:absolute;top:12px;left:12px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;background:#fff} .ngx-slider .ngx-slider-pointer:hover:after{background-color:#fff} .ngx-slider .ngx-slider-pointer.ngx-slider-active{z-index:4} .ngx-slider .ngx-slider-pointer.ngx-slider-active:after{background-color:#451aff} .ngx-slider .ngx-slider-bubble{cursor:default;bottom:16px;padding:1px 3px;color:#55637d;font-size:16px} .ngx-slider .ngx-slider-bubble.ngx-slider-limit{color:#55637d} .ngx-slider .ngx-slider-ticks{box-sizing:border-box;width:100%;height:0;position:absolute;left:0;top:-3px;margin:0;z-index:1;list-style:none} .ngx-slider .ngx-slider-ticks-values-under .ngx-slider-tick-value{top:auto;bottom:-36px} .ngx-slider .ngx-slider-tick{text-align:center;cursor:pointer;width:10px;height:10px;background:#d8e0f3;border-radius:50%;position:absolute;top:0;left:0;margin-left:11px} .ngx-slider .ngx-slider-tick.ngx-slider-selected{background:#0db9f0} .ngx-slider .ngx-slider-tick-value{position:absolute;top:-34px;transform:translate(-50%)} .ngx-slider .ngx-slider-tick-legend{position:absolute;top:24px;transform:translate(-50%);max-width:50px;white-space:normal} .ngx-slider.vertical{position:relative;width:4px;height:100%;margin:0 20px;padding:0;vertical-align:baseline;touch-action:pan-x} .ngx-slider.vertical .ngx-slider-base{width:100%;height:100%;padding:0} .ngx-slider.vertical .ngx-slider-bar-wrapper{top:auto;left:0;margin:0 0 0 -16px;padding:0 0 0 16px;height:100%;width:32px} .ngx-slider.vertical .ngx-slider-bar{bottom:0;left:auto;width:4px;height:100%} .ngx-slider.vertical .ngx-slider-pointer{left:-14px!important;top:auto;bottom:0} .ngx-slider.vertical .ngx-slider-bubble{left:16px!important;bottom:0} .ngx-slider.vertical .ngx-slider-ticks{height:100%;width:0;left:-3px;top:0;z-index:1} .ngx-slider.vertical .ngx-slider-tick{vertical-align:middle;margin-left:auto;margin-top:11px} .ngx-slider.vertical .ngx-slider-tick-value{left:24px;top:auto;transform:translateY(-28%)} .ngx-slider.vertical .ngx-slider-tick-legend{top:auto;right:24px;transform:translateY(-28%);max-width:none;white-space:nowrap} .ngx-slider.vertical .ngx-slider-ticks-values-under .ngx-slider-tick-value{bottom:auto;left:auto;right:24px} .ngx-slider *{transition:none} .ngx-slider.animate .ngx-slider-bar-wrapper{transition:all linear .3s} .ngx-slider.animate .ngx-slider-selection{transition:background-color linear .3s} .ngx-slider.animate .ngx-slider-pointer{transition:all linear .3s} .ngx-slider.animate .ngx-slider-pointer:after{transition:all linear .3s} .ngx-slider.animate .ngx-slider-bubble{transition:all linear .3s} .ngx-slider.animate .ngx-slider-bubble.ngx-slider-limit{transition:opacity linear .3s} .ngx-slider.animate .ngx-slider-bubble.ngx-slider-combined{transition:opacity linear .3s} .ngx-slider.animate .ngx-slider-tick{transition:background-color linear .3s}']})}return e})(),D4=(()=>{class e{static \u0275fac=function(i){return new(i||e)};static \u0275mod=ci({type:e});static \u0275inj=Cn({imports:[xI]})}return e})();class xS{constructor(){this.riskHotspotsSettings=null,this.coverageInfoSettings=null}}let Ie=(()=>{class e{constructor(){this.settings=Qn(new mu),e.instance=this}updateSettings(t){this.settings.set(t)}static{this.\u0275fac=function(i){return new(i||e)}}static{this.\u0275prov=ee({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();class mu{constructor(){this.showLineCoverage=!0,this.showBranchCoverage=!0,this.showMethodCoverage=!0,this.showFullMethodCoverage=!0,this.visibleMetrics=[],this._groupingMaximum=0,this._grouping=0,this._historyComparisionDate="",this._historyComparisionType="",this._filter="",this._lineCoverageMin=0,this._lineCoverageMax=100,this._branchCoverageMin=0,this._branchCoverageMax=100,this._methodCoverageMin=0,this._methodCoverageMax=100,this._methodFullCoverageMin=0,this._methodFullCoverageMax=100,this.sortBy="name",this.sortOrder="asc",this.collapseStates=[]}get groupingMaximum(){return this._groupingMaximum}set groupingMaximum(n){this._groupingMaximum=n,this.updateSettings()}get grouping(){return this._grouping}set grouping(n){this._grouping=n,this.updateSettings()}get historyComparisionDate(){return this._historyComparisionDate}set historyComparisionDate(n){this._historyComparisionDate=n,this.updateSettings()}get historyComparisionType(){return this._historyComparisionType}set historyComparisionType(n){this._historyComparisionType=n,this.updateSettings()}get filter(){return this._filter}set filter(n){this._filter=n,this.updateSettings()}get lineCoverageMin(){return this._lineCoverageMin}set lineCoverageMin(n){this._lineCoverageMin=n,this.updateSettings()}get lineCoverageMax(){return this._lineCoverageMax}set lineCoverageMax(n){this._lineCoverageMax=n,this.updateSettings()}get branchCoverageMin(){return this._branchCoverageMin}set branchCoverageMin(n){this._branchCoverageMin=n,this.updateSettings()}get branchCoverageMax(){return this._branchCoverageMax}set branchCoverageMax(n){this._branchCoverageMax=n,this.updateSettings()}get methodCoverageMin(){return this._methodCoverageMin}set methodCoverageMin(n){this._methodCoverageMin=n,this.updateSettings()}get methodCoverageMax(){return this._methodCoverageMax}set methodCoverageMax(n){this._methodCoverageMax=n,this.updateSettings()}get methodFullCoverageMin(){return this._methodFullCoverageMin}set methodFullCoverageMin(n){this._methodFullCoverageMin=n,this.updateSettings()}get methodFullCoverageMax(){return this._methodFullCoverageMax}set methodFullCoverageMax(n){this._methodFullCoverageMax=n,this.updateSettings()}updateSettings(){const n=new mu;Object.assign(n,this),Ie.instance.updateSettings(n)}}class w4{constructor(n){this.et="",this.et=n.et,this.cl=n.cl,this.ucl=n.ucl,this.cal=n.cal,this.tl=n.tl,this.lcq=n.lcq,this.cb=n.cb,this.tb=n.tb,this.bcq=n.bcq,this.cm=n.cm,this.fcm=n.fcm,this.tm=n.tm,this.mcq=n.mcq,this.mfcq=n.mfcq}get coverageRatioText(){return 0===this.tl?"-":this.cl+"/"+this.cal}get branchCoverageRatioText(){return 0===this.tb?"-":this.cb+"/"+this.tb}get methodCoverageRatioText(){return 0===this.tm?"-":this.cm+"/"+this.tm}get methodFullCoverageRatioText(){return 0===this.tm?"-":this.fcm+"/"+this.tm}}class Ht{static roundNumber(n){return Math.floor(n*Math.pow(10,Ht.maximumDecimalPlacesForCoverageQuotas))/Math.pow(10,Ht.maximumDecimalPlacesForCoverageQuotas)}static getNthOrLastIndexOf(n,t,i){let o=0,r=-1,s=-1;for(;o<i&&(s=n.indexOf(t,r+1),-1!==s);)r=s,o++;return r}}class OS{constructor(){this.name=""}get coverage(){return 0===this.coverableLines?NaN:Ht.roundNumber(100*this.coveredLines/this.coverableLines)}get coveragePercentage(){return 0===this.coverableLines?"":this.coverage+"%"}get coverageRatioText(){return 0===this.coverableLines?"-":this.coveredLines+"/"+this.coverableLines}get branchCoverage(){return 0===this.totalBranches?NaN:Ht.roundNumber(100*this.coveredBranches/this.totalBranches)}get branchCoveragePercentage(){return 0===this.totalBranches?"":this.branchCoverage+"%"}get branchCoverageRatioText(){return 0===this.totalBranches?"-":this.coveredBranches+"/"+this.totalBranches}get methodCoverage(){return 0===this.totalMethods?NaN:Ht.roundNumber(100*this.coveredMethods/this.totalMethods)}get methodCoveragePercentage(){return 0===this.totalMethods?"":this.methodCoverage+"%"}get methodCoverageRatioText(){return 0===this.totalMethods?"-":this.coveredMethods+"/"+this.totalMethods}get methodFullCoverage(){return 0===this.totalMethods?NaN:Ht.roundNumber(100*this.fullyCoveredMethods/this.totalMethods)}get methodFullCoveragePercentage(){return 0===this.totalMethods?"":this.methodFullCoverage+"%"}get methodFullCoverageRatioText(){return 0===this.totalMethods?"-":this.fullyCoveredMethods+"/"+this.totalMethods}}class Yp extends OS{get coveredLines(){return this._coveredLines}set coveredLines(n){this._coveredLines=n}get uncoveredLines(){return this._uncoveredLines}set uncoveredLines(n){this._uncoveredLines=n}get coverableLines(){return this._coverableLines}set coverableLines(n){this._coverableLines=n}get totalLines(){return this._totalLines}set totalLines(n){this._totalLines=n}get coveredBranches(){return this._coveredBranches}set coveredBranches(n){this._coveredBranches=n}get totalBranches(){return this._totalBranches}set totalBranches(n){this._totalBranches=n}get coveredMethods(){return this._coveredMethods}set coveredMethods(n){this._coveredMethods=n}get fullyCoveredMethods(){return this._fullyCoveredMethods}set fullyCoveredMethods(n){this._fullyCoveredMethods=n}get totalMethods(){return this._totalMethods}set totalMethods(n){this._totalMethods=n}constructor(n,t){super(),this.reportPath="",this.lineCoverageHistory=[],this.branchCoverageHistory=[],this.methodCoverageHistory=[],this.methodFullCoverageHistory=[],this.historicCoverages=[],this.currentHistoricCoverage=null,this._coveredLines=0,this._uncoveredLines=0,this._coverableLines=0,this._totalLines=0,this._coveredBranches=0,this._totalBranches=0,this._coveredMethods=0,this._fullyCoveredMethods=0,this._totalMethods=0,this.name=n.name,this.reportPath=n.rp?n.rp+t:n.rp,this.coveredLines=n.cl,this.uncoveredLines=n.ucl,this.coverableLines=n.cal,this.totalLines=n.tl,this.coveredBranches=n.cb,this.totalBranches=n.tb,this.coveredMethods=n.cm,this.fullyCoveredMethods=n.fcm,this.totalMethods=n.tm,this.lineCoverageHistory=n.lch,this.branchCoverageHistory=n.bch,this.methodCoverageHistory=n.mch,this.methodFullCoverageHistory=n.mfch,n.hc.forEach(i=>{this.historicCoverages.push(new w4(i))}),this.metrics=n.metrics}get coverage(){return 0===this.coverableLines?NaN:Ht.roundNumber(100*this.coveredLines/this.coverableLines)}visible(){if(""!==Ie.instance.settings().filter&&-1===this.name.toLowerCase().indexOf(Ie.instance.settings().filter.toLowerCase()))return!1;let n=this.coverage,t=n;if(n=Number.isNaN(n)?0:n,t=Number.isNaN(t)?100:t,Ie.instance.settings().lineCoverageMin>n||Ie.instance.settings().lineCoverageMax<t)return!1;let i=this.branchCoverage,o=i;if(i=Number.isNaN(i)?0:i,o=Number.isNaN(o)?100:o,Ie.instance.settings().branchCoverageMin>i||Ie.instance.settings().branchCoverageMax<o)return!1;let r=this.methodCoverage,s=r;if(r=Number.isNaN(r)?0:r,s=Number.isNaN(s)?100:s,Ie.instance.settings().methodCoverageMin>r||Ie.instance.settings().methodCoverageMax<s)return!1;let a=this.methodFullCoverage,l=a;if(a=Number.isNaN(a)?0:a,l=Number.isNaN(l)?100:l,Ie.instance.settings().methodFullCoverageMin>a||Ie.instance.settings().methodFullCoverageMax<l)return!1;if(""===Ie.instance.settings().historyComparisionType||null===this.currentHistoricCoverage)return!0;if("allChanges"===Ie.instance.settings().historyComparisionType){if(this.coveredLines===this.currentHistoricCoverage.cl&&this.uncoveredLines===this.currentHistoricCoverage.ucl&&this.coverableLines===this.currentHistoricCoverage.cal&&this.totalLines===this.currentHistoricCoverage.tl&&this.coveredBranches===this.currentHistoricCoverage.cb&&this.totalBranches===this.currentHistoricCoverage.tb&&this.coveredMethods===this.currentHistoricCoverage.cm&&this.fullyCoveredMethods===this.currentHistoricCoverage.fcm&&this.totalMethods===this.currentHistoricCoverage.tm)return!1}else if("lineCoverageIncreaseOnly"===Ie.instance.settings().historyComparisionType){let c=this.coverage;if(isNaN(c)||c<=this.currentHistoricCoverage.lcq)return!1}else if("lineCoverageDecreaseOnly"===Ie.instance.settings().historyComparisionType){let c=this.coverage;if(isNaN(c)||c>=this.currentHistoricCoverage.lcq)return!1}else if("branchCoverageIncreaseOnly"===Ie.instance.settings().historyComparisionType){let c=this.branchCoverage;if(isNaN(c)||c<=this.currentHistoricCoverage.bcq)return!1}else if("branchCoverageDecreaseOnly"===Ie.instance.settings().historyComparisionType){let c=this.branchCoverage;if(isNaN(c)||c>=this.currentHistoricCoverage.bcq)return!1}else if("methodCoverageIncreaseOnly"===Ie.instance.settings().historyComparisionType){let c=this.methodCoverage;if(isNaN(c)||c<=this.currentHistoricCoverage.mcq)return!1}else if("methodCoverageDecreaseOnly"===Ie.instance.settings().historyComparisionType){let c=this.methodCoverage;if(isNaN(c)||c>=this.currentHistoricCoverage.mcq)return!1}else if("fullMethodCoverageIncreaseOnly"===Ie.instance.settings().historyComparisionType){let c=this.methodFullCoverage;if(isNaN(c)||c<=this.currentHistoricCoverage.mfcq)return!1}else if("fullMethodCoverageDecreaseOnly"===Ie.instance.settings().historyComparisionType){let c=this.methodFullCoverage;if(isNaN(c)||c>=this.currentHistoricCoverage.mfcq)return!1}return!0}updateCurrentHistoricCoverage(n){if(this.currentHistoricCoverage=null,""!==n)for(let t=0;t<this.historicCoverages.length;t++)if(this.historicCoverages[t].et===n){this.currentHistoricCoverage=this.historicCoverages[t];break}}}class yi extends OS{get coveredLines(){let n=0;for(let t=0;t<this.subElements.length;t++)this.subElements[t].visible()&&(n+=this.subElements[t].coveredLines);for(let t=0;t<this.classes.length;t++)this.classes[t].visible()&&(n+=this.classes[t].coveredLines);return n}get uncoveredLines(){let n=0;for(let t=0;t<this.subElements.length;t++)this.subElements[t].visible()&&(n+=this.subElements[t].uncoveredLines);for(let t=0;t<this.classes.length;t++)this.classes[t].visible()&&(n+=this.classes[t].uncoveredLines);return n}get coverableLines(){let n=0;for(let t=0;t<this.subElements.length;t++)this.subElements[t].visible()&&(n+=this.subElements[t].coverableLines);for(let t=0;t<this.classes.length;t++)this.classes[t].visible()&&(n+=this.classes[t].coverableLines);return n}get totalLines(){let n=0;for(let t=0;t<this.subElements.length;t++)this.subElements[t].visible()&&(n+=this.subElements[t].totalLines);for(let t=0;t<this.classes.length;t++)this.classes[t].visible()&&(n+=this.classes[t].totalLines);return n}get coveredBranches(){let n=0;for(let t=0;t<this.subElements.length;t++)this.subElements[t].visible()&&(n+=this.subElements[t].coveredBranches);for(let t=0;t<this.classes.length;t++)this.classes[t].visible()&&(n+=this.classes[t].coveredBranches);return n}get totalBranches(){let n=0;for(let t=0;t<this.subElements.length;t++)this.subElements[t].visible()&&(n+=this.subElements[t].totalBranches);for(let t=0;t<this.classes.length;t++)this.classes[t].visible()&&(n+=this.classes[t].totalBranches);return n}get coveredMethods(){let n=0;for(let t=0;t<this.subElements.length;t++)this.subElements[t].visible()&&(n+=this.subElements[t].coveredMethods);for(let t=0;t<this.classes.length;t++)this.classes[t].visible()&&(n+=this.classes[t].coveredMethods);return n}get fullyCoveredMethods(){let n=0;for(let t=0;t<this.subElements.length;t++)this.subElements[t].visible()&&(n+=this.subElements[t].fullyCoveredMethods);for(let t=0;t<this.classes.length;t++)this.classes[t].visible()&&(n+=this.classes[t].fullyCoveredMethods);return n}get totalMethods(){let n=0;for(let t=0;t<this.subElements.length;t++)this.subElements[t].visible()&&(n+=this.subElements[t].totalMethods);for(let t=0;t<this.classes.length;t++)this.classes[t].visible()&&(n+=this.classes[t].totalMethods);return n}constructor(n,t){super(),this.subElements=[],this.classes=[],this.collapsed=!1,this.name=n,this.collapsed=n.indexOf("Test")>-1&&null===t}visible(){if(""!==Ie.instance.settings().filter&&this.name.toLowerCase().indexOf(Ie.instance.settings().filter.toLowerCase())>-1)return!0;for(let n=0;n<this.subElements.length;n++)if(this.subElements[n].visible())return!0;for(let n=0;n<this.classes.length;n++)if(this.classes[n].visible())return!0;return!1}insertClass(n,t){if(null===t)return void this.classes.push(n);let i=Ht.getNthOrLastIndexOf(n.name,".",t);-1===i&&(i=Ht.getNthOrLastIndexOf(n.name,"\\",t));let o=-1===i?"-":n.name.substring(0,i);for(let s=0;s<this.subElements.length;s++)if(this.subElements[s].name===o)return void this.subElements[s].insertClass(n,null);let r=new yi(o,this);this.subElements.push(r),r.insertClass(n,null)}collapse(){this.collapsed=!0;for(let n=0;n<this.subElements.length;n++)this.subElements[n].collapse()}expand(){this.collapsed=!1;for(let n=0;n<this.subElements.length;n++)this.subElements[n].expand()}toggleCollapse(n){n.preventDefault(),this.collapsed=!this.collapsed}updateCurrentHistoricCoverage(n){for(let t=0;t<this.subElements.length;t++)this.subElements[t].updateCurrentHistoricCoverage(n);for(let t=0;t<this.classes.length;t++)this.classes[t].updateCurrentHistoricCoverage(n)}static sortCodeElementViewModels(n,t,i){let o=i?-1:1,r=i?1:-1;"name"===t?n.sort(function(s,a){return s.name===a.name?0:s.name<a.name?o:r}):"covered"===t?n.sort(function(s,a){return s.coveredLines===a.coveredLines?0:s.coveredLines<a.coveredLines?o:r}):"uncovered"===t?n.sort(function(s,a){return s.uncoveredLines===a.uncoveredLines?0:s.uncoveredLines<a.uncoveredLines?o:r}):"coverable"===t?n.sort(function(s,a){return s.coverableLines===a.coverableLines?0:s.coverableLines<a.coverableLines?o:r}):"total"===t?n.sort(function(s,a){return s.totalLines===a.totalLines?0:s.totalLines<a.totalLines?o:r}):"coverage"===t?n.sort(function(s,a){return s.coverage===a.coverage?0:isNaN(s.coverage)?o:isNaN(a.coverage)?r:s.coverage<a.coverage?o:r}):"covered_branches"===t?n.sort(function(s,a){return s.coveredBranches===a.coveredBranches?0:isNaN(s.coveredBranches)?o:isNaN(a.coveredBranches)?r:s.coveredBranches<a.coveredBranches?o:r}):"total_branches"===t?n.sort(function(s,a){return s.totalBranches===a.totalBranches?0:isNaN(s.totalBranches)?o:isNaN(a.totalBranches)?r:s.totalBranches<a.totalBranches?o:r}):"branchcoverage"===t?n.sort(function(s,a){return s.branchCoverage===a.branchCoverage?0:isNaN(s.branchCoverage)?o:isNaN(a.branchCoverage)?r:s.branchCoverage<a.branchCoverage?o:r}):"covered_methods"===t?n.sort(function(s,a){return s.coveredMethods===a.coveredMethods?0:isNaN(s.coveredMethods)?o:isNaN(a.coveredMethods)?r:s.coveredMethods<a.coveredMethods?o:r}):"fullycovered_methods"===t?n.sort(function(s,a){return s.fullyCoveredMethods===a.fullyCoveredMethods?0:isNaN(s.fullyCoveredMethods)?o:isNaN(a.fullyCoveredMethods)?r:s.fullyCoveredMethods<a.fullyCoveredMethods?o:r}):"total_methods"===t?n.sort(function(s,a){return s.totalMethods===a.totalMethods?0:isNaN(s.totalMethods)?o:isNaN(a.totalMethods)?r:s.totalMethods<a.totalMethods?o:r}):"methodcoverage"===t?n.sort(function(s,a){return s.methodCoverage===a.methodCoverage?0:isNaN(s.methodCoverage)?o:isNaN(a.methodCoverage)?r:s.methodCoverage<a.methodCoverage?o:r}):"methodfullcoverage"===t&&n.sort(function(s,a){return s.methodFullCoverage===a.methodFullCoverage?0:isNaN(s.methodFullCoverage)?o:isNaN(a.methodFullCoverage)?r:s.methodFullCoverage<a.methodFullCoverage?o:r})}changeSorting(n,t){yi.sortCodeElementViewModels(this.subElements,n,t);let i=t?-1:1,o=t?1:-1;this.classes.sort("name"===n?function(r,s){return r.name===s.name?0:r.name<s.name?i:o}:"covered"===n?function(r,s){return r.coveredLines===s.coveredLines?0:r.coveredLines<s.coveredLines?i:o}:"uncovered"===n?function(r,s){return r.uncoveredLines===s.uncoveredLines?0:r.uncoveredLines<s.uncoveredLines?i:o}:"coverable"===n?function(r,s){return r.coverableLines===s.coverableLines?0:r.coverableLines<s.coverableLines?i:o}:"total"===n?function(r,s){return r.totalLines===s.totalLines?0:r.totalLines<s.totalLines?i:o}:"coverage"===n?function(r,s){return r.coverage===s.coverage?0:isNaN(r.coverage)?i:isNaN(s.coverage)?o:r.coverage<s.coverage?i:o}:"covered_branches"===n?function(r,s){return r.coveredBranches===s.coveredBranches?0:r.coveredBranches<s.coveredBranches?i:o}:"total_branches"===n?function(r,s){return r.totalBranches===s.totalBranches?0:r.totalBranches<s.totalBranches?i:o}:"branchcoverage"===n?function(r,s){return r.branchCoverage===s.branchCoverage?0:isNaN(r.branchCoverage)?i:isNaN(s.branchCoverage)?o:r.branchCoverage<s.branchCoverage?i:o}:"covered_methods"===n?function(r,s){return r.coveredMethods===s.coveredMethods?0:r.coveredMethods<s.coveredMethods?i:o}:"fullycovered_methods"===n?function(r,s){return r.fullyCoveredMethods===s.fullyCoveredMethods?0:r.fullyCoveredMethods<s.fullyCoveredMethods?i:o}:"total_methods"===n?function(r,s){return r.totalMethods===s.totalMethods?0:r.totalMethods<s.totalMethods?i:o}:"methodcoverage"===n?function(r,s){return r.methodCoverage===s.methodCoverage?0:isNaN(r.methodCoverage)?i:isNaN(s.methodCoverage)?o:r.methodCoverage<s.methodCoverage?i:o}:"methodfullcoverage"===n?function(r,s){return r.methodFullCoverage===s.methodFullCoverage?0:isNaN(r.methodFullCoverage)?i:isNaN(s.methodFullCoverage)?o:r.methodFullCoverage<s.methodFullCoverage?i:o}:function(r,s){const a=r.metrics[n],l=s.metrics[n];return a===l?0:isNaN(a)?i:isNaN(l)?o:a<l?i:o});for(let r=0;r<this.subElements.length;r++)this.subElements[r].changeSorting(n,t)}}let Kp=(()=>{class e{get nativeWindow(){return function E4(){return window}()}static{this.\u0275fac=function(i){return new(i||e)}}static{this.\u0275prov=ee({token:e,factory:e.\u0275fac})}}return e})(),M4=(()=>{class e{constructor(){this.translations={}}static{this.\u0275fac=function(i){return new(i||e)}}static{this.\u0275cmp=on({type:e,selectors:[["pro-button"]],inputs:{translations:"translations"},standalone:!1,decls:3,vars:2,consts:[["href","https://reportgenerator.io/pro","target","_blank",1,"pro-button","pro-button-tiny",3,"title"]],template:function(i,o){1&i&&(D(0,"\xa0"),_(1,"a",0),D(2,"PRO"),v()),2&i&&(f(),A("title",Vn(o.translations.methodCoverageProVersion)))},encapsulation:2})}}return e})();function I4(e,n){if(1&e){const t=fe();_(0,"div",3)(1,"label")(2,"input",4),Ke("ngModelChange",function(o){U(t);const r=m();return Ce(r.showBranchCoverage,o)||(r.showBranchCoverage=o),$(o)}),z("change",function(){U(t);const o=m();return $(o.showBranchCoverageChange.emit(o.showBranchCoverage))}),v(),D(3),v()()}if(2&e){const t=m();f(2),qe("ngModel",t.showBranchCoverage),f(),H(" ",t.translations.branchCoverage)}}function S4(e,n){1&e&&x(0,"pro-button",6),2&e&&A("translations",m().translations)}function T4(e,n){1&e&&x(0,"pro-button",6),2&e&&A("translations",m().translations)}function A4(e,n){1&e&&x(0,"pro-button",6),2&e&&A("translations",m(2).translations)}function N4(e,n){1&e&&(_(0,"a",8),x(1,"i",9),v()),2&e&&A("href",m().$implicit.explanationUrl,oi)}function x4(e,n){if(1&e){const t=fe();_(0,"div",3)(1,"label")(2,"input",7),z("change",function(){const o=U(t).$implicit;return $(m(2).toggleMetric(o))}),v(),D(3),v(),D(4,"\xa0"),y(5,N4,2,1,"a",8),v()}if(2&e){const t=n.$implicit,i=m(2);f(2),A("checked",i.isMetricSelected(t))("disabled",!i.methodCoverageAvailable),f(),H(" ",t.name),f(2),C(t.explanationUrl?5:-1)}}function O4(e,n){if(1&e&&(x(0,"br")(1,"br"),_(2,"b"),D(3),v(),y(4,A4,1,1,"pro-button",6),it(5,x4,6,4,"div",3,nt)),2&e){const t=m();f(3),L(t.translations.metrics),f(),C(t.methodCoverageAvailable?-1:4),f(),ot(t.metrics)}}let k4=(()=>{class e{constructor(){this.visible=!1,this.visibleChange=new ve,this.translations={},this.branchCoverageAvailable=!1,this.methodCoverageAvailable=!1,this.metrics=[],this.showLineCoverage=!1,this.showLineCoverageChange=new ve,this.showBranchCoverage=!1,this.showBranchCoverageChange=new ve,this.showMethodCoverage=!1,this.showMethodCoverageChange=new ve,this.showMethodFullCoverage=!1,this.showMethodFullCoverageChange=new ve,this.visibleMetrics=[],this.visibleMetricsChange=new ve}isMetricSelected(t){return void 0!==this.visibleMetrics.find(i=>i.name===t.name)}toggleMetric(t){let i=this.visibleMetrics.find(o=>o.name===t.name);i?this.visibleMetrics.splice(this.visibleMetrics.indexOf(i),1):this.visibleMetrics.push(t),this.visibleMetrics=[...this.visibleMetrics],this.visibleMetricsChange.emit(this.visibleMetrics)}close(){this.visible=!1,this.visibleChange.emit(this.visible)}cancelEvent(t){t.stopPropagation()}static{this.\u0275fac=function(i){return new(i||e)}}static{this.\u0275cmp=on({type:e,selectors:[["popup"]],inputs:{visible:"visible",translations:"translations",branchCoverageAvailable:"branchCoverageAvailable",methodCoverageAvailable:"methodCoverageAvailable",metrics:"metrics",showLineCoverage:"showLineCoverage",showBranchCoverage:"showBranchCoverage",showMethodCoverage:"showMethodCoverage",showMethodFullCoverage:"showMethodFullCoverage",visibleMetrics:"visibleMetrics"},outputs:{visibleChange:"visibleChange",showLineCoverageChange:"showLineCoverageChange",showBranchCoverageChange:"showBranchCoverageChange",showMethodCoverageChange:"showMethodCoverageChange",showMethodFullCoverageChange:"showMethodFullCoverageChange",visibleMetricsChange:"visibleMetricsChange"},standalone:!1,decls:22,vars:13,consts:[[1,"popup-container",3,"click"],[1,"popup",3,"click"],[1,"close",3,"click"],[1,"mt-1"],["type","checkbox",3,"ngModelChange","change","ngModel"],["type","checkbox",3,"ngModelChange","change","ngModel","disabled"],[3,"translations"],["type","checkbox",3,"change","checked","disabled"],["target","_blank",3,"href"],[1,"icon-info-circled"]],template:function(i,o){1&i&&(_(0,"div",0),z("click",function(){return o.close()}),_(1,"div",1),z("click",function(s){return o.cancelEvent(s)}),_(2,"div",2),z("click",function(){return o.close()}),D(3,"X"),v(),_(4,"b"),D(5),v(),_(6,"div",3)(7,"label")(8,"input",4),Ke("ngModelChange",function(s){return Ce(o.showLineCoverage,s)||(o.showLineCoverage=s),s}),z("change",function(){return o.showLineCoverageChange.emit(o.showLineCoverage)}),v(),D(9),v()(),y(10,I4,4,2,"div",3),_(11,"div",3)(12,"label")(13,"input",5),Ke("ngModelChange",function(s){return Ce(o.showMethodCoverage,s)||(o.showMethodCoverage=s),s}),z("change",function(){return o.showMethodCoverageChange.emit(o.showMethodCoverage)}),v(),D(14),v(),y(15,S4,1,1,"pro-button",6),v(),_(16,"div",3)(17,"label")(18,"input",5),Ke("ngModelChange",function(s){return Ce(o.showMethodFullCoverage,s)||(o.showMethodFullCoverage=s),s}),z("change",function(){return o.showMethodFullCoverageChange.emit(o.showMethodFullCoverage)}),v(),D(19),v(),y(20,T4,1,1,"pro-button",6),v(),y(21,O4,7,2),v()()),2&i&&(f(5),L(o.translations.coverageTypes),f(3),qe("ngModel",o.showLineCoverage),f(),H(" ",o.translations.coverage),f(),C(o.branchCoverageAvailable?10:-1),f(3),qe("ngModel",o.showMethodCoverage),A("disabled",!o.methodCoverageAvailable),f(),H(" ",o.translations.methodCoverage),f(),C(o.methodCoverageAvailable?-1:15),f(3),qe("ngModel",o.showMethodFullCoverage),A("disabled",!o.methodCoverageAvailable),f(),H(" ",o.translations.fullMethodCoverage),f(),C(o.methodCoverageAvailable?-1:20),f(),C(o.metrics.length>0?21:-1))},dependencies:[Ep,Jc,sa,M4],encapsulation:2})}}return e})();function R4(e,n){1&e&&x(0,"td",1)}function F4(e,n){1&e&&x(0,"td"),2&e&&Gt(Wt("green ",m().greenClass))}function L4(e,n){1&e&&x(0,"td"),2&e&&Gt(Wt("red ",m().redClass))}let kS=(()=>{class e{constructor(){this.grayVisible=!0,this.greenVisible=!1,this.redVisible=!1,this.greenClass="",this.redClass="",this._percentage=NaN}get percentage(){return this._percentage}set percentage(t){this._percentage=t,this.grayVisible=isNaN(t),this.greenVisible=!isNaN(t)&&Math.round(t)>0,this.redVisible=!isNaN(t)&&100-Math.round(t)>0,this.greenClass="covered"+Math.round(t),this.redClass="covered"+(100-Math.round(t))}static{this.\u0275fac=function(i){return new(i||e)}}static{this.\u0275cmp=on({type:e,selectors:[["coverage-bar"]],inputs:{percentage:"percentage"},standalone:!1,decls:4,vars:3,consts:[[1,"coverage"],[1,"gray","covered100"],[3,"class"]],template:function(i,o){1&i&&(_(0,"table",0),y(1,R4,1,0,"td",1),y(2,F4,1,3,"td",2),y(3,L4,1,3,"td",2),v()),2&i&&(f(),C(o.grayVisible?1:-1),f(),C(o.greenVisible?2:-1),f(),C(o.redVisible?3:-1))},encapsulation:2,changeDetection:0})}}return e})();const P4=["codeelement-row",""],V4=(e,n)=>({"icon-plus":e,"icon-minus":n});function H4(e,n){if(1&e&&(_(0,"th",2),D(1),v()),2&e){const t=m();f(),L(t.element.coveredLines)}}function B4(e,n){if(1&e&&(_(0,"th",2),D(1),v()),2&e){const t=m();f(),L(t.element.uncoveredLines)}}function j4(e,n){if(1&e&&(_(0,"th",2),D(1),v()),2&e){const t=m();f(),L(t.element.coverableLines)}}function U4(e,n){if(1&e&&(_(0,"th",2),D(1),v()),2&e){const t=m();f(),L(t.element.totalLines)}}function $4(e,n){if(1&e&&(_(0,"th",3),D(1),v()),2&e){const t=m();A("title",t.element.coverageRatioText),f(),L(t.element.coveragePercentage)}}function z4(e,n){if(1&e&&(_(0,"th",2),x(1,"coverage-bar",4),v()),2&e){const t=m();f(),A("percentage",t.element.coverage)}}function G4(e,n){if(1&e&&(_(0,"th",2),D(1),v()),2&e){const t=m();f(),L(t.element.coveredBranches)}}function W4(e,n){if(1&e&&(_(0,"th",2),D(1),v()),2&e){const t=m();f(),L(t.element.totalBranches)}}function q4(e,n){if(1&e&&(_(0,"th",3),D(1),v()),2&e){const t=m();A("title",t.element.branchCoverageRatioText),f(),L(t.element.branchCoveragePercentage)}}function Z4(e,n){if(1&e&&(_(0,"th",2),x(1,"coverage-bar",4),v()),2&e){const t=m();f(),A("percentage",t.element.branchCoverage)}}function Q4(e,n){if(1&e&&(_(0,"th",2),D(1),v()),2&e){const t=m();f(),L(t.element.coveredMethods)}}function Y4(e,n){if(1&e&&(_(0,"th",2),D(1),v()),2&e){const t=m();f(),L(t.element.totalMethods)}}function K4(e,n){if(1&e&&(_(0,"th",3),D(1),v()),2&e){const t=m();A("title",t.element.methodCoverageRatioText),f(),L(t.element.methodCoveragePercentage)}}function J4(e,n){if(1&e&&(_(0,"th",2),x(1,"coverage-bar",4),v()),2&e){const t=m();f(),A("percentage",t.element.methodCoverage)}}function X4(e,n){if(1&e&&(_(0,"th",2),D(1),v()),2&e){const t=m();f(),L(t.element.fullyCoveredMethods)}}function e6(e,n){if(1&e&&(_(0,"th",2),D(1),v()),2&e){const t=m();f(),L(t.element.totalMethods)}}function t6(e,n){if(1&e&&(_(0,"th",3),D(1),v()),2&e){const t=m();A("title",t.element.methodFullCoverageRatioText),f(),L(t.element.methodFullCoveragePercentage)}}function n6(e,n){if(1&e&&(_(0,"th",2),x(1,"coverage-bar",4),v()),2&e){const t=m();f(),A("percentage",t.element.methodFullCoverage)}}function i6(e,n){1&e&&x(0,"th",2)}let o6=(()=>{class e{constructor(){this.collapsed=!1,this.lineCoverageAvailable=!1,this.branchCoverageAvailable=!1,this.methodCoverageAvailable=!1,this.methodFullCoverageAvailable=!1,this.visibleMetrics=[]}static{this.\u0275fac=function(i){return new(i||e)}}static{this.\u0275cmp=on({type:e,selectors:[["","codeelement-row",""]],inputs:{settings:"settings",element:"element",collapsed:"collapsed",lineCoverageAvailable:"lineCoverageAvailable",branchCoverageAvailable:"branchCoverageAvailable",methodCoverageAvailable:"methodCoverageAvailable",methodFullCoverageAvailable:"methodFullCoverageAvailable",visibleMetrics:"visibleMetrics"},standalone:!1,attrs:P4,decls:24,vars:23,consts:[["href","#",3,"click"],[3,"ngClass"],[1,"right"],[1,"right",3,"title"],[3,"percentage"]],template:function(i,o){1&i&&(_(0,"th")(1,"a",0),z("click",function(s){return o.element.toggleCollapse(s)}),x(2,"i",1),D(3),v()(),y(4,H4,2,1,"th",2),y(5,B4,2,1,"th",2),y(6,j4,2,1,"th",2),y(7,U4,2,1,"th",2),y(8,$4,2,2,"th",3),y(9,z4,2,1,"th",2),y(10,G4,2,1,"th",2),y(11,W4,2,1,"th",2),y(12,q4,2,2,"th",3),y(13,Z4,2,1,"th",2),y(14,Q4,2,1,"th",2),y(15,Y4,2,1,"th",2),y(16,K4,2,2,"th",3),y(17,J4,2,1,"th",2),y(18,X4,2,1,"th",2),y(19,e6,2,1,"th",2),y(20,t6,2,2,"th",3),y(21,n6,2,1,"th",2),it(22,i6,1,0,"th",2,nt)),2&i&&(f(2),A("ngClass",Cg(20,V4,o.element.collapsed,!o.element.collapsed)),f(),H("\n",o.element.name),f(),C(o.lineCoverageAvailable?4:-1),f(),C(o.lineCoverageAvailable?5:-1),f(),C(o.lineCoverageAvailable?6:-1),f(),C(o.lineCoverageAvailable?7:-1),f(),C(o.lineCoverageAvailable?8:-1),f(),C(o.lineCoverageAvailable?9:-1),f(),C(o.branchCoverageAvailable?10:-1),f(),C(o.branchCoverageAvailable?11:-1),f(),C(o.branchCoverageAvailable?12:-1),f(),C(o.branchCoverageAvailable?13:-1),f(),C(o.methodCoverageAvailable?14:-1),f(),C(o.methodCoverageAvailable?15:-1),f(),C(o.methodCoverageAvailable?16:-1),f(),C(o.methodCoverageAvailable?17:-1),f(),C(o.methodFullCoverageAvailable?18:-1),f(),C(o.methodFullCoverageAvailable?19:-1),f(),C(o.methodFullCoverageAvailable?20:-1),f(),C(o.methodFullCoverageAvailable?21:-1),f(),ot(o.visibleMetrics))},dependencies:[Mr,kS],encapsulation:2,changeDetection:0})}}return e})();const r6=["coverage-history-chart",""];let s6=(()=>{class e{constructor(){this.path=null,this._historicCoverages=[]}get historicCoverages(){return this._historicCoverages}set historicCoverages(t){if(this._historicCoverages=t,t.length>1){let i="";for(let o=0;o<t.length;o++)i+=0===o?"M":"L",i+=`${Ht.roundNumber(30*o/(t.length-1))}`,i+=`,${Ht.roundNumber(18-18*t[o]/100)}`;this.path=i}else this.path=null}static{this.\u0275fac=function(i){return new(i||e)}}static{this.\u0275cmp=on({type:e,selectors:[["","coverage-history-chart",""]],inputs:{historicCoverages:"historicCoverages"},standalone:!1,attrs:r6,decls:3,vars:1,consts:[["width","30","height","18",1,"ct-chart-line"],[1,"ct-series","ct-series-a"],[1,"ct-line"]],template:function(i,o){1&i&&(function fv(){q.lFrame.currentNamespace="svg"}(),_(0,"svg",0)(1,"g",1),x(2,"path",2),v()()),2&i&&(f(2),pt("d",o.path))},encapsulation:2,changeDetection:0})}}return e})();const a6=["class-row",""],vu=e=>({historiccoverageoffset:e});function l6(e,n){if(1&e&&(_(0,"a",0),D(1),v()),2&e){const t=m();A("href",t.clazz.reportPath,oi),f(),L(t.clazz.name)}}function c6(e,n){1&e&&D(0),2&e&&H(" ",m().clazz.name," ")}function u6(e,n){if(1&e&&(_(0,"div"),D(1),v(),_(2,"div",3),D(3),v()),2&e){const t=m(2);Gt(Wt("currenthistory ",t.getClassName(t.clazz.coveredLines,t.clazz.currentHistoricCoverage.cl))),f(),H(" ",t.clazz.coveredLines," "),f(),A("title",t.clazz.currentHistoricCoverage.et),f(),H(" ",t.clazz.currentHistoricCoverage.cl," ")}}function d6(e,n){1&e&&D(0),2&e&&H(" ",m(2).clazz.coveredLines," ")}function f6(e,n){if(1&e&&(_(0,"td",1),y(1,u6,4,6),y(2,d6,1,1),v()),2&e){const t=m();f(),C(null!==t.clazz.currentHistoricCoverage?1:-1),f(),C(null===t.clazz.currentHistoricCoverage?2:-1)}}function h6(e,n){if(1&e&&(_(0,"div"),D(1),v(),_(2,"div",3),D(3),v()),2&e){const t=m(2);Gt(Wt("currenthistory ",t.getClassName(t.clazz.currentHistoricCoverage.ucl,t.clazz.uncoveredLines))),f(),H(" ",t.clazz.uncoveredLines," "),f(),A("title",t.clazz.currentHistoricCoverage.et),f(),H(" ",t.clazz.currentHistoricCoverage.ucl," ")}}function g6(e,n){1&e&&D(0),2&e&&H(" ",m(2).clazz.uncoveredLines," ")}function p6(e,n){if(1&e&&(_(0,"td",1),y(1,h6,4,6),y(2,g6,1,1),v()),2&e){const t=m();f(),C(null!==t.clazz.currentHistoricCoverage?1:-1),f(),C(null===t.clazz.currentHistoricCoverage?2:-1)}}function m6(e,n){if(1&e&&(_(0,"div",4),D(1),v(),_(2,"div",3),D(3),v()),2&e){const t=m(2);f(),L(t.clazz.coverableLines),f(),A("title",t.clazz.currentHistoricCoverage.et),f(),L(t.clazz.currentHistoricCoverage.cal)}}function v6(e,n){1&e&&D(0),2&e&&H(" ",m(2).clazz.coverableLines," ")}function _6(e,n){if(1&e&&(_(0,"td",1),y(1,m6,4,3),y(2,v6,1,1),v()),2&e){const t=m();f(),C(null!==t.clazz.currentHistoricCoverage?1:-1),f(),C(null===t.clazz.currentHistoricCoverage?2:-1)}}function y6(e,n){if(1&e&&(_(0,"div",4),D(1),v(),_(2,"div",3),D(3),v()),2&e){const t=m(2);f(),L(t.clazz.totalLines),f(),A("title",t.clazz.currentHistoricCoverage.et),f(),L(t.clazz.currentHistoricCoverage.tl)}}function C6(e,n){1&e&&D(0),2&e&&H(" ",m(2).clazz.totalLines," ")}function b6(e,n){if(1&e&&(_(0,"td",1),y(1,y6,4,3),y(2,C6,1,1),v()),2&e){const t=m();f(),C(null!==t.clazz.currentHistoricCoverage?1:-1),f(),C(null===t.clazz.currentHistoricCoverage?2:-1)}}function D6(e,n){if(1&e&&x(0,"div",5),2&e){const t=m(2);A("title",Vn(t.translations.history+": "+t.translations.coverage))("historicCoverages",t.clazz.lineCoverageHistory)("ngClass",mr(4,vu,null!==t.clazz.currentHistoricCoverage))}}function w6(e,n){if(1&e&&(_(0,"div"),D(1),v(),_(2,"div",3),D(3),v()),2&e){const t=m(2);Gt(Wt("currenthistory ",t.getClassName(t.clazz.coverage,t.clazz.currentHistoricCoverage.lcq))),f(),H(" ",t.clazz.coveragePercentage," "),f(),A("title",t.clazz.currentHistoricCoverage.et+": "+t.clazz.currentHistoricCoverage.coverageRatioText),f(),H("",t.clazz.currentHistoricCoverage.lcq,"%")}}function E6(e,n){1&e&&D(0),2&e&&H(" ",m(2).clazz.coveragePercentage," ")}function M6(e,n){if(1&e&&(_(0,"td",2),y(1,D6,1,6,"div",5),y(2,w6,4,6),y(3,E6,1,1),v()),2&e){const t=m();A("title",t.clazz.coverageRatioText),f(),C(t.clazz.lineCoverageHistory.length>1?1:-1),f(),C(null!==t.clazz.currentHistoricCoverage?2:-1),f(),C(null===t.clazz.currentHistoricCoverage?3:-1)}}function I6(e,n){if(1&e&&(_(0,"td",1),x(1,"coverage-bar",6),v()),2&e){const t=m();f(),A("percentage",t.clazz.coverage)}}function S6(e,n){if(1&e&&(_(0,"div"),D(1),v(),_(2,"div",3),D(3),v()),2&e){const t=m(2);Gt(Wt("currenthistory ",t.getClassName(t.clazz.coveredBranches,t.clazz.currentHistoricCoverage.cb))),f(),H(" ",t.clazz.coveredBranches," "),f(),A("title",t.clazz.currentHistoricCoverage.et),f(),H(" ",t.clazz.currentHistoricCoverage.cb," ")}}function T6(e,n){1&e&&D(0),2&e&&H(" ",m(2).clazz.coveredBranches," ")}function A6(e,n){if(1&e&&(_(0,"td",1),y(1,S6,4,6),y(2,T6,1,1),v()),2&e){const t=m();f(),C(null!==t.clazz.currentHistoricCoverage?1:-1),f(),C(null===t.clazz.currentHistoricCoverage?2:-1)}}function N6(e,n){if(1&e&&(_(0,"div",4),D(1),v(),_(2,"div",3),D(3),v()),2&e){const t=m(2);f(),L(t.clazz.totalBranches),f(),A("title",t.clazz.currentHistoricCoverage.et),f(),L(t.clazz.currentHistoricCoverage.tb)}}function x6(e,n){1&e&&D(0),2&e&&H(" ",m(2).clazz.totalBranches," ")}function O6(e,n){if(1&e&&(_(0,"td",1),y(1,N6,4,3),y(2,x6,1,1),v()),2&e){const t=m();f(),C(null!==t.clazz.currentHistoricCoverage?1:-1),f(),C(null===t.clazz.currentHistoricCoverage?2:-1)}}function k6(e,n){if(1&e&&x(0,"div",7),2&e){const t=m(2);A("title",Vn(t.translations.history+": "+t.translations.branchCoverage))("historicCoverages",t.clazz.branchCoverageHistory)("ngClass",mr(4,vu,null!==t.clazz.currentHistoricCoverage))}}function R6(e,n){if(1&e&&(_(0,"div"),D(1),v(),_(2,"div",3),D(3),v()),2&e){const t=m(2);Gt(Wt("currenthistory ",t.getClassName(t.clazz.branchCoverage,t.clazz.currentHistoricCoverage.bcq))),f(),H(" ",t.clazz.branchCoveragePercentage," "),f(),A("title",t.clazz.currentHistoricCoverage.et+": "+t.clazz.currentHistoricCoverage.branchCoverageRatioText),f(),H("",t.clazz.currentHistoricCoverage.bcq,"%")}}function F6(e,n){1&e&&D(0),2&e&&H(" ",m(2).clazz.branchCoveragePercentage," ")}function L6(e,n){if(1&e&&(_(0,"td",2),y(1,k6,1,6,"div",7),y(2,R6,4,6),y(3,F6,1,1),v()),2&e){const t=m();A("title",t.clazz.branchCoverageRatioText),f(),C(t.clazz.branchCoverageHistory.length>1?1:-1),f(),C(null!==t.clazz.currentHistoricCoverage?2:-1),f(),C(null===t.clazz.currentHistoricCoverage?3:-1)}}function P6(e,n){if(1&e&&(_(0,"td",1),x(1,"coverage-bar",6),v()),2&e){const t=m();f(),A("percentage",t.clazz.branchCoverage)}}function V6(e,n){if(1&e&&(_(0,"div"),D(1),v(),_(2,"div",3),D(3),v()),2&e){const t=m(2);Gt(Wt("currenthistory ",t.getClassName(t.clazz.coveredMethods,t.clazz.currentHistoricCoverage.cm))),f(),H(" ",t.clazz.coveredMethods," "),f(),A("title",t.clazz.currentHistoricCoverage.et),f(),H(" ",t.clazz.currentHistoricCoverage.cm," ")}}function H6(e,n){1&e&&D(0),2&e&&H(" ",m(2).clazz.coveredMethods," ")}function B6(e,n){if(1&e&&(_(0,"td",1),y(1,V6,4,6),y(2,H6,1,1),v()),2&e){const t=m();f(),C(null!==t.clazz.currentHistoricCoverage?1:-1),f(),C(null===t.clazz.currentHistoricCoverage?2:-1)}}function j6(e,n){if(1&e&&(_(0,"div",4),D(1),v(),_(2,"div",3),D(3),v()),2&e){const t=m(2);f(),L(t.clazz.totalMethods),f(),A("title",t.clazz.currentHistoricCoverage.et),f(),L(t.clazz.currentHistoricCoverage.tm)}}function U6(e,n){1&e&&D(0),2&e&&H(" ",m(2).clazz.totalMethods," ")}function $6(e,n){if(1&e&&(_(0,"td",1),y(1,j6,4,3),y(2,U6,1,1),v()),2&e){const t=m();f(),C(null!==t.clazz.currentHistoricCoverage?1:-1),f(),C(null===t.clazz.currentHistoricCoverage?2:-1)}}function z6(e,n){if(1&e&&x(0,"div",8),2&e){const t=m(2);A("title",Vn(t.translations.history+": "+t.translations.methodCoverage))("historicCoverages",t.clazz.methodCoverageHistory)("ngClass",mr(4,vu,null!==t.clazz.currentHistoricCoverage))}}function G6(e,n){if(1&e&&(_(0,"div"),D(1),v(),_(2,"div",3),D(3),v()),2&e){const t=m(2);Gt(Wt("currenthistory ",t.getClassName(t.clazz.methodCoverage,t.clazz.currentHistoricCoverage.mcq))),f(),H(" ",t.clazz.methodCoveragePercentage," "),f(),A("title",t.clazz.currentHistoricCoverage.et+": "+t.clazz.currentHistoricCoverage.methodCoverageRatioText),f(),H("",t.clazz.currentHistoricCoverage.mcq,"%")}}function W6(e,n){1&e&&D(0),2&e&&H(" ",m(2).clazz.methodCoveragePercentage," ")}function q6(e,n){if(1&e&&(_(0,"td",2),y(1,z6,1,6,"div",8),y(2,G6,4,6),y(3,W6,1,1),v()),2&e){const t=m();A("title",t.clazz.methodCoverageRatioText),f(),C(t.clazz.methodCoverageHistory.length>1?1:-1),f(),C(null!==t.clazz.currentHistoricCoverage?2:-1),f(),C(null===t.clazz.currentHistoricCoverage?3:-1)}}function Z6(e,n){if(1&e&&(_(0,"td",1),x(1,"coverage-bar",6),v()),2&e){const t=m();f(),A("percentage",t.clazz.methodCoverage)}}function Q6(e,n){if(1&e&&(_(0,"div"),D(1),v(),_(2,"div",3),D(3),v()),2&e){const t=m(2);Gt(Wt("currenthistory ",t.getClassName(t.clazz.fullyCoveredMethods,t.clazz.currentHistoricCoverage.fcm))),f(),H(" ",t.clazz.fullyCoveredMethods," "),f(),A("title",t.clazz.currentHistoricCoverage.et),f(),H(" ",t.clazz.currentHistoricCoverage.fcm," ")}}function Y6(e,n){1&e&&D(0),2&e&&H(" ",m(2).clazz.fullyCoveredMethods," ")}function K6(e,n){if(1&e&&(_(0,"td",1),y(1,Q6,4,6),y(2,Y6,1,1),v()),2&e){const t=m();f(),C(null!==t.clazz.currentHistoricCoverage?1:-1),f(),C(null===t.clazz.currentHistoricCoverage?2:-1)}}function J6(e,n){if(1&e&&(_(0,"div",4),D(1),v(),_(2,"div",3),D(3),v()),2&e){const t=m(2);f(),L(t.clazz.totalMethods),f(),A("title",t.clazz.currentHistoricCoverage.et),f(),L(t.clazz.currentHistoricCoverage.tm)}}function X6(e,n){1&e&&D(0),2&e&&H(" ",m(2).clazz.totalMethods," ")}function e5(e,n){if(1&e&&(_(0,"td",1),y(1,J6,4,3),y(2,X6,1,1),v()),2&e){const t=m();f(),C(null!==t.clazz.currentHistoricCoverage?1:-1),f(),C(null===t.clazz.currentHistoricCoverage?2:-1)}}function t5(e,n){if(1&e&&x(0,"div",9),2&e){const t=m(2);A("title",Vn(t.translations.history+": "+t.translations.fullMethodCoverage))("historicCoverages",t.clazz.methodFullCoverageHistory)("ngClass",mr(4,vu,null!==t.clazz.currentHistoricCoverage))}}function n5(e,n){if(1&e&&(_(0,"div"),D(1),v(),_(2,"div",3),D(3),v()),2&e){const t=m(2);Gt(Wt("currenthistory ",t.getClassName(t.clazz.methodFullCoverage,t.clazz.currentHistoricCoverage.mfcq))),f(),H(" ",t.clazz.methodFullCoveragePercentage," "),f(),A("title",t.clazz.currentHistoricCoverage.et+": "+t.clazz.currentHistoricCoverage.methodFullCoverageRatioText),f(),H("",t.clazz.currentHistoricCoverage.mfcq,"%")}}function i5(e,n){1&e&&D(0),2&e&&H(" ",m(2).clazz.methodFullCoveragePercentage," ")}function o5(e,n){if(1&e&&(_(0,"td",2),y(1,t5,1,6,"div",9),y(2,n5,4,6),y(3,i5,1,1),v()),2&e){const t=m();A("title",t.clazz.methodFullCoverageRatioText),f(),C(t.clazz.methodFullCoverageHistory.length>1?1:-1),f(),C(null!==t.clazz.currentHistoricCoverage?2:-1),f(),C(null===t.clazz.currentHistoricCoverage?3:-1)}}function r5(e,n){if(1&e&&(_(0,"td",1),x(1,"coverage-bar",6),v()),2&e){const t=m();f(),A("percentage",t.clazz.methodFullCoverage)}}function s5(e,n){if(1&e&&(_(0,"td",1),D(1),v()),2&e){const t=n.$implicit,i=m();f(),L(i.clazz.metrics[t.abbreviation])}}let a5=(()=>{class e{constructor(){this.translations={},this.lineCoverageAvailable=!1,this.branchCoverageAvailable=!1,this.methodCoverageAvailable=!1,this.methodFullCoverageAvailable=!1,this.visibleMetrics=[],this.historyComparisionDate=""}getClassName(t,i){return t>i?"lightgreen":t<i?"lightred":"lightgraybg"}static{this.\u0275fac=function(i){return new(i||e)}}static{this.\u0275cmp=on({type:e,selectors:[["","class-row",""]],inputs:{settings:"settings",clazz:"clazz",translations:"translations",lineCoverageAvailable:"lineCoverageAvailable",branchCoverageAvailable:"branchCoverageAvailable",methodCoverageAvailable:"methodCoverageAvailable",methodFullCoverageAvailable:"methodFullCoverageAvailable",visibleMetrics:"visibleMetrics",historyComparisionDate:"historyComparisionDate"},standalone:!1,attrs:a6,decls:23,vars:20,consts:[[3,"href"],[1,"right"],[1,"right",3,"title"],[3,"title"],[1,"currenthistory"],["coverage-history-chart","",1,"tinylinecoveragechart","ct-chart",3,"historicCoverages","ngClass","title"],[3,"percentage"],["coverage-history-chart","",1,"tinybranchcoveragechart","ct-chart",3,"historicCoverages","ngClass","title"],["coverage-history-chart","",1,"tinymethodcoveragechart","ct-chart",3,"historicCoverages","ngClass","title"],["coverage-history-chart","",1,"tinyfullmethodcoveragechart","ct-chart",3,"historicCoverages","ngClass","title"]],template:function(i,o){1&i&&(_(0,"td"),y(1,l6,2,2,"a",0),y(2,c6,1,1),v(),y(3,f6,3,2,"td",1),y(4,p6,3,2,"td",1),y(5,_6,3,2,"td",1),y(6,b6,3,2,"td",1),y(7,M6,4,4,"td",2),y(8,I6,2,1,"td",1),y(9,A6,3,2,"td",1),y(10,O6,3,2,"td",1),y(11,L6,4,4,"td",2),y(12,P6,2,1,"td",1),y(13,B6,3,2,"td",1),y(14,$6,3,2,"td",1),y(15,q6,4,4,"td",2),y(16,Z6,2,1,"td",1),y(17,K6,3,2,"td",1),y(18,e5,3,2,"td",1),y(19,o5,4,4,"td",2),y(20,r5,2,1,"td",1),it(21,s5,2,1,"td",1,nt)),2&i&&(f(),C(""!==o.clazz.reportPath?1:-1),f(),C(""===o.clazz.reportPath?2:-1),f(),C(o.lineCoverageAvailable?3:-1),f(),C(o.lineCoverageAvailable?4:-1),f(),C(o.lineCoverageAvailable?5:-1),f(),C(o.lineCoverageAvailable?6:-1),f(),C(o.lineCoverageAvailable?7:-1),f(),C(o.lineCoverageAvailable?8:-1),f(),C(o.branchCoverageAvailable?9:-1),f(),C(o.branchCoverageAvailable?10:-1),f(),C(o.branchCoverageAvailable?11:-1),f(),C(o.branchCoverageAvailable?12:-1),f(),C(o.methodCoverageAvailable?13:-1),f(),C(o.methodCoverageAvailable?14:-1),f(),C(o.methodCoverageAvailable?15:-1),f(),C(o.methodCoverageAvailable?16:-1),f(),C(o.methodFullCoverageAvailable?17:-1),f(),C(o.methodFullCoverageAvailable?18:-1),f(),C(o.methodFullCoverageAvailable?19:-1),f(),C(o.methodFullCoverageAvailable?20:-1),f(),ot(o.visibleMetrics))},dependencies:[Mr,s6,kS],encapsulation:2,changeDetection:0})}}return e})();const dt=(e,n,t)=>({"icon-up-dir_active":e,"icon-down-dir_active":n,"icon-up-down-dir":t});function l5(e,n){if(1&e){const t=fe();_(0,"popup",27),Ke("visibleChange",function(o){U(t);const r=m(2);return Ce(r.popupVisible,o)||(r.popupVisible=o),$(o)})("showLineCoverageChange",function(o){U(t);const r=m(2);return Ce(r.settings().showLineCoverage,o)||(r.settings().showLineCoverage=o),$(o)})("showBranchCoverageChange",function(o){U(t);const r=m(2);return Ce(r.settings().showBranchCoverage,o)||(r.settings().showBranchCoverage=o),$(o)})("showMethodCoverageChange",function(o){U(t);const r=m(2);return Ce(r.settings().showMethodCoverage,o)||(r.settings().showMethodCoverage=o),$(o)})("showMethodFullCoverageChange",function(o){U(t);const r=m(2);return Ce(r.settings().showFullMethodCoverage,o)||(r.settings().showFullMethodCoverage=o),$(o)})("visibleMetricsChange",function(o){U(t);const r=m(2);return Ce(r.settings().visibleMetrics,o)||(r.settings().visibleMetrics=o),$(o)}),v()}if(2&e){const t=m(2);qe("visible",t.popupVisible),A("translations",t.translations)("branchCoverageAvailable",t.branchCoverageAvailable)("methodCoverageAvailable",t.methodCoverageAvailable)("metrics",t.metrics),qe("showLineCoverage",t.settings().showLineCoverage)("showBranchCoverage",t.settings().showBranchCoverage)("showMethodCoverage",t.settings().showMethodCoverage)("showMethodFullCoverage",t.settings().showFullMethodCoverage)("visibleMetrics",t.settings().visibleMetrics)}}function c5(e,n){1&e&&D(0),2&e&&H(" ",m(2).translations.noGrouping," ")}function u5(e,n){1&e&&D(0),2&e&&H(" ",m(2).translations.byAssembly," ")}function d5(e,n){if(1&e&&D(0),2&e){const t=m(2);H(" ",t.translations.byNamespace+" "+t.settings().grouping," ")}}function f5(e,n){if(1&e&&(_(0,"option",30),D(1),v()),2&e){const t=n.$implicit;A("value",t),f(),L(t)}}function h5(e,n){1&e&&x(0,"br")}function g5(e,n){if(1&e&&(_(0,"option",34),D(1),v()),2&e){const t=m(4);f(),H(" ",t.translations.branchCoverageIncreaseOnly," ")}}function p5(e,n){if(1&e&&(_(0,"option",35),D(1),v()),2&e){const t=m(4);f(),H(" ",t.translations.branchCoverageDecreaseOnly," ")}}function m5(e,n){if(1&e&&(_(0,"option",36),D(1),v()),2&e){const t=m(4);f(),H(" ",t.translations.methodCoverageIncreaseOnly," ")}}function v5(e,n){if(1&e&&(_(0,"option",37),D(1),v()),2&e){const t=m(4);f(),H(" ",t.translations.methodCoverageDecreaseOnly," ")}}function _5(e,n){if(1&e&&(_(0,"option",38),D(1),v()),2&e){const t=m(4);f(),H(" ",t.translations.fullMethodCoverageIncreaseOnly," ")}}function y5(e,n){if(1&e&&(_(0,"option",39),D(1),v()),2&e){const t=m(4);f(),H(" ",t.translations.fullMethodCoverageDecreaseOnly," ")}}function C5(e,n){if(1&e){const t=fe();_(0,"div")(1,"select",28),Ke("ngModelChange",function(o){U(t);const r=m(3);return Ce(r.settings().historyComparisionType,o)||(r.settings().historyComparisionType=o),$(o)}),_(2,"option",29),D(3),v(),_(4,"option",31),D(5),v(),_(6,"option",32),D(7),v(),_(8,"option",33),D(9),v(),y(10,g5,2,1,"option",34),y(11,p5,2,1,"option",35),y(12,m5,2,1,"option",36),y(13,v5,2,1,"option",37),y(14,_5,2,1,"option",38),y(15,y5,2,1,"option",39),v()()}if(2&e){const t=m(3);f(),qe("ngModel",t.settings().historyComparisionType),f(2),L(t.translations.filter),f(2),L(t.translations.allChanges),f(2),L(t.translations.lineCoverageIncreaseOnly),f(2),L(t.translations.lineCoverageDecreaseOnly),f(),C(t.branchCoverageAvailable?10:-1),f(),C(t.branchCoverageAvailable?11:-1),f(),C(t.methodCoverageAvailable?12:-1),f(),C(t.methodCoverageAvailable?13:-1),f(),C(t.methodCoverageAvailable?14:-1),f(),C(t.methodCoverageAvailable?15:-1)}}function b5(e,n){if(1&e){const t=fe();_(0,"div"),D(1),_(2,"select",28),Ke("ngModelChange",function(o){U(t);const r=m(2);return Ce(r.settings().historyComparisionDate,o)||(r.settings().historyComparisionDate=o),$(o)}),z("ngModelChange",function(){return U(t),$(m(2).updateCurrentHistoricCoverage())}),_(3,"option",29),D(4),v(),it(5,f5,2,2,"option",30,nt),v()(),y(7,h5,1,0,"br"),y(8,C5,16,11,"div")}if(2&e){const t=m(2);f(),H(" ",t.translations.compareHistory," "),f(),qe("ngModel",t.settings().historyComparisionDate),f(2),L(t.translations.date),f(),ot(t.historicCoverageExecutionTimes),f(2),C(""!==t.settings().historyComparisionDate?7:-1),f(),C(""!==t.settings().historyComparisionDate?8:-1)}}function D5(e,n){1&e&&x(0,"col",12)}function w5(e,n){1&e&&x(0,"col",13)}function E5(e,n){1&e&&x(0,"col",14)}function M5(e,n){1&e&&x(0,"col",15)}function I5(e,n){1&e&&x(0,"col",16)}function S5(e,n){1&e&&x(0,"col",17)}function T5(e,n){1&e&&x(0,"col",12)}function A5(e,n){1&e&&x(0,"col",15)}function N5(e,n){1&e&&x(0,"col",16)}function x5(e,n){1&e&&x(0,"col",17)}function O5(e,n){1&e&&x(0,"col",12)}function k5(e,n){1&e&&x(0,"col",15)}function R5(e,n){1&e&&x(0,"col",16)}function F5(e,n){1&e&&x(0,"col",17)}function L5(e,n){1&e&&x(0,"col",12)}function P5(e,n){1&e&&x(0,"col",15)}function V5(e,n){1&e&&x(0,"col",16)}function H5(e,n){1&e&&x(0,"col",17)}function B5(e,n){1&e&&x(0,"col",17)}function j5(e,n){if(1&e&&(_(0,"th",19),D(1),v()),2&e){const t=m(2);f(),L(t.translations.coverage)}}function U5(e,n){if(1&e&&(_(0,"th",20),D(1),v()),2&e){const t=m(2);f(),L(t.translations.branchCoverage)}}function $5(e,n){if(1&e&&(_(0,"th",20),D(1),v()),2&e){const t=m(2);f(),L(t.translations.methodCoverage)}}function z5(e,n){if(1&e&&(_(0,"th",20),D(1),v()),2&e){const t=m(2);f(),L(t.translations.fullMethodCoverage)}}function G5(e,n){if(1&e&&(_(0,"th",21),D(1),v()),2&e){const t=m(2);pt("colspan",t.settings().visibleMetrics.length),f(),L(t.translations.metrics)}}function W5(e,n){if(1&e){const t=fe();_(0,"td",19)(1,"ngx-slider",40),Ke("valueChange",function(o){U(t);const r=m(2);return Ce(r.settings().lineCoverageMin,o)||(r.settings().lineCoverageMin=o),$(o)})("highValueChange",function(o){U(t);const r=m(2);return Ce(r.settings().lineCoverageMax,o)||(r.settings().lineCoverageMax=o),$(o)}),v()()}if(2&e){const t=m(2);f(),qe("value",t.settings().lineCoverageMin)("highValue",t.settings().lineCoverageMax),A("options",t.sliderOptions)}}function q5(e,n){if(1&e){const t=fe();_(0,"td",20)(1,"ngx-slider",40),Ke("valueChange",function(o){U(t);const r=m(2);return Ce(r.settings().branchCoverageMin,o)||(r.settings().branchCoverageMin=o),$(o)})("highValueChange",function(o){U(t);const r=m(2);return Ce(r.settings().branchCoverageMax,o)||(r.settings().branchCoverageMax=o),$(o)}),v()()}if(2&e){const t=m(2);f(),qe("value",t.settings().branchCoverageMin)("highValue",t.settings().branchCoverageMax),A("options",t.sliderOptions)}}function Z5(e,n){if(1&e){const t=fe();_(0,"td",20)(1,"ngx-slider",40),Ke("valueChange",function(o){U(t);const r=m(2);return Ce(r.settings().methodCoverageMin,o)||(r.settings().methodCoverageMin=o),$(o)})("highValueChange",function(o){U(t);const r=m(2);return Ce(r.settings().methodCoverageMax,o)||(r.settings().methodCoverageMax=o),$(o)}),v()()}if(2&e){const t=m(2);f(),qe("value",t.settings().methodCoverageMin)("highValue",t.settings().methodCoverageMax),A("options",t.sliderOptions)}}function Q5(e,n){if(1&e){const t=fe();_(0,"td",20)(1,"ngx-slider",40),Ke("valueChange",function(o){U(t);const r=m(2);return Ce(r.settings().methodFullCoverageMin,o)||(r.settings().methodFullCoverageMin=o),$(o)})("highValueChange",function(o){U(t);const r=m(2);return Ce(r.settings().methodFullCoverageMax,o)||(r.settings().methodFullCoverageMax=o),$(o)}),v()()}if(2&e){const t=m(2);f(),qe("value",t.settings().methodFullCoverageMin)("highValue",t.settings().methodFullCoverageMax),A("options",t.sliderOptions)}}function Y5(e,n){1&e&&x(0,"td",21),2&e&&pt("colspan",m(2).settings().visibleMetrics.length)}function K5(e,n){if(1&e){const t=fe();_(0,"th",25)(1,"a",2),z("click",function(o){return U(t),$(m(2).updateSorting("covered",o))}),x(2,"i",24),D(3),v()()}if(2&e){const t=m(2);f(2),A("ngClass",ke(2,dt,"covered"===t.settings().sortBy&&"asc"===t.settings().sortOrder,"covered"===t.settings().sortBy&&"desc"===t.settings().sortOrder,"covered"!==t.settings().sortBy)),f(),L(t.translations.covered)}}function J5(e,n){if(1&e){const t=fe();_(0,"th",25)(1,"a",2),z("click",function(o){return U(t),$(m(2).updateSorting("uncovered",o))}),x(2,"i",24),D(3),v()()}if(2&e){const t=m(2);f(2),A("ngClass",ke(2,dt,"uncovered"===t.settings().sortBy&&"asc"===t.settings().sortOrder,"uncovered"===t.settings().sortBy&&"desc"===t.settings().sortOrder,"uncovered"!==t.settings().sortBy)),f(),L(t.translations.uncovered)}}function X5(e,n){if(1&e){const t=fe();_(0,"th",25)(1,"a",2),z("click",function(o){return U(t),$(m(2).updateSorting("coverable",o))}),x(2,"i",24),D(3),v()()}if(2&e){const t=m(2);f(2),A("ngClass",ke(2,dt,"coverable"===t.settings().sortBy&&"asc"===t.settings().sortOrder,"coverable"===t.settings().sortBy&&"desc"===t.settings().sortOrder,"coverable"!==t.settings().sortBy)),f(),L(t.translations.coverable)}}function eG(e,n){if(1&e){const t=fe();_(0,"th",25)(1,"a",2),z("click",function(o){return U(t),$(m(2).updateSorting("total",o))}),x(2,"i",24),D(3),v()()}if(2&e){const t=m(2);f(2),A("ngClass",ke(2,dt,"total"===t.settings().sortBy&&"asc"===t.settings().sortOrder,"total"===t.settings().sortBy&&"desc"===t.settings().sortOrder,"total"!==t.settings().sortBy)),f(),L(t.translations.total)}}function tG(e,n){if(1&e){const t=fe();_(0,"th",26)(1,"a",2),z("click",function(o){return U(t),$(m(2).updateSorting("coverage",o))}),x(2,"i",24),D(3),v()()}if(2&e){const t=m(2);f(2),A("ngClass",ke(2,dt,"coverage"===t.settings().sortBy&&"asc"===t.settings().sortOrder,"coverage"===t.settings().sortBy&&"desc"===t.settings().sortOrder,"coverage"!==t.settings().sortBy)),f(),L(t.translations.percentage)}}function nG(e,n){if(1&e){const t=fe();_(0,"th",25)(1,"a",2),z("click",function(o){return U(t),$(m(2).updateSorting("covered_branches",o))}),x(2,"i",24),D(3),v()()}if(2&e){const t=m(2);f(2),A("ngClass",ke(2,dt,"covered_branches"===t.settings().sortBy&&"asc"===t.settings().sortOrder,"covered_branches"===t.settings().sortBy&&"desc"===t.settings().sortOrder,"covered_branches"!==t.settings().sortBy)),f(),L(t.translations.covered)}}function iG(e,n){if(1&e){const t=fe();_(0,"th",25)(1,"a",2),z("click",function(o){return U(t),$(m(2).updateSorting("total_branches",o))}),x(2,"i",24),D(3),v()()}if(2&e){const t=m(2);f(2),A("ngClass",ke(2,dt,"total_branches"===t.settings().sortBy&&"asc"===t.settings().sortOrder,"total_branches"===t.settings().sortBy&&"desc"===t.settings().sortOrder,"total_branches"!==t.settings().sortBy)),f(),L(t.translations.total)}}function oG(e,n){if(1&e){const t=fe();_(0,"th",26)(1,"a",2),z("click",function(o){return U(t),$(m(2).updateSorting("branchcoverage",o))}),x(2,"i",24),D(3),v()()}if(2&e){const t=m(2);f(2),A("ngClass",ke(2,dt,"branchcoverage"===t.settings().sortBy&&"asc"===t.settings().sortOrder,"branchcoverage"===t.settings().sortBy&&"desc"===t.settings().sortOrder,"branchcoverage"!==t.settings().sortBy)),f(),L(t.translations.percentage)}}function rG(e,n){if(1&e){const t=fe();_(0,"th",25)(1,"a",2),z("click",function(o){return U(t),$(m(2).updateSorting("covered_methods",o))}),x(2,"i",24),D(3),v()()}if(2&e){const t=m(2);f(2),A("ngClass",ke(2,dt,"covered_methods"===t.settings().sortBy&&"asc"===t.settings().sortOrder,"covered_methods"===t.settings().sortBy&&"desc"===t.settings().sortOrder,"covered_methods"!==t.settings().sortBy)),f(),L(t.translations.covered)}}function sG(e,n){if(1&e){const t=fe();_(0,"th",25)(1,"a",2),z("click",function(o){return U(t),$(m(2).updateSorting("total_methods",o))}),x(2,"i",24),D(3),v()()}if(2&e){const t=m(2);f(2),A("ngClass",ke(2,dt,"total_methods"===t.settings().sortBy&&"asc"===t.settings().sortOrder,"total_methods"===t.settings().sortBy&&"desc"===t.settings().sortOrder,"total_methods"!==t.settings().sortBy)),f(),L(t.translations.total)}}function aG(e,n){if(1&e){const t=fe();_(0,"th",26)(1,"a",2),z("click",function(o){return U(t),$(m(2).updateSorting("methodcoverage",o))}),x(2,"i",24),D(3),v()()}if(2&e){const t=m(2);f(2),A("ngClass",ke(2,dt,"methodcoverage"===t.settings().sortBy&&"asc"===t.settings().sortOrder,"methodcoverage"===t.settings().sortBy&&"desc"===t.settings().sortOrder,"methodcoverage"!==t.settings().sortBy)),f(),L(t.translations.percentage)}}function lG(e,n){if(1&e){const t=fe();_(0,"th",25)(1,"a",2),z("click",function(o){return U(t),$(m(2).updateSorting("fullycovered_methods",o))}),x(2,"i",24),D(3),v()()}if(2&e){const t=m(2);f(2),A("ngClass",ke(2,dt,"fullycovered_methods"===t.settings().sortBy&&"asc"===t.settings().sortOrder,"fullycovered_methods"===t.settings().sortBy&&"desc"===t.settings().sortOrder,"fullycovered_methods"!==t.settings().sortBy)),f(),L(t.translations.covered)}}function cG(e,n){if(1&e){const t=fe();_(0,"th",25)(1,"a",2),z("click",function(o){return U(t),$(m(2).updateSorting("total_methods",o))}),x(2,"i",24),D(3),v()()}if(2&e){const t=m(2);f(2),A("ngClass",ke(2,dt,"total_methods"===t.settings().sortBy&&"asc"===t.settings().sortOrder,"total_methods"===t.settings().sortBy&&"desc"===t.settings().sortOrder,"total_methods"!==t.settings().sortBy)),f(),L(t.translations.total)}}function uG(e,n){if(1&e){const t=fe();_(0,"th",26)(1,"a",2),z("click",function(o){return U(t),$(m(2).updateSorting("methodfullcoverage",o))}),x(2,"i",24),D(3),v()()}if(2&e){const t=m(2);f(2),A("ngClass",ke(2,dt,"methodfullcoverage"===t.settings().sortBy&&"asc"===t.settings().sortOrder,"methodfullcoverage"===t.settings().sortBy&&"desc"===t.settings().sortOrder,"methodfullcoverage"!==t.settings().sortBy)),f(),L(t.translations.percentage)}}function dG(e,n){if(1&e){const t=fe();_(0,"th")(1,"a",2),z("click",function(o){const r=U(t).$implicit;return $(m(2).updateSorting(r.abbreviation,o))}),x(2,"i",24),D(3),v(),_(4,"a",41),x(5,"i",42),v()()}if(2&e){const t=n.$implicit,i=m(2);f(2),A("ngClass",ke(4,dt,i.settings().sortBy===t.abbreviation&&"asc"===i.settings().sortOrder,i.settings().sortBy===t.abbreviation&&"desc"===i.settings().sortOrder,i.settings().sortBy!==t.abbreviation)),f(),L(t.name),f(),A("href",Vn(t.explanationUrl),oi)}}function fG(e,n){if(1&e&&x(0,"tr",43),2&e){const t=m().$implicit,i=m(2);A("settings",i.settings())("element",t)("collapsed",t.collapsed)("lineCoverageAvailable",i.settings().showLineCoverage)("branchCoverageAvailable",i.branchCoverageAvailable&&i.settings().showBranchCoverage)("methodCoverageAvailable",i.methodCoverageAvailable&&i.settings().showMethodCoverage)("methodFullCoverageAvailable",i.methodCoverageAvailable&&i.settings().showFullMethodCoverage)("visibleMetrics",i.settings().visibleMetrics)}}function hG(e,n){if(1&e&&x(0,"tr",44),2&e){const t=m().$implicit,i=m(3);A("settings",i.settings())("clazz",t)("translations",i.translations)("lineCoverageAvailable",i.settings().showLineCoverage)("branchCoverageAvailable",i.branchCoverageAvailable&&i.settings().showBranchCoverage)("methodCoverageAvailable",i.methodCoverageAvailable&&i.settings().showMethodCoverage)("methodFullCoverageAvailable",i.methodCoverageAvailable&&i.settings().showFullMethodCoverage)("visibleMetrics",i.settings().visibleMetrics)("historyComparisionDate",i.settings().historyComparisionDate)}}function gG(e,n){if(1&e&&y(0,hG,1,9,"tr",44),2&e){const t=n.$implicit;C(!m().$implicit.collapsed&&t.visible()?0:-1)}}function pG(e,n){if(1&e&&x(0,"tr",46),2&e){const t=m().$implicit,i=m(5);A("settings",i.settings())("clazz",t)("translations",i.translations)("lineCoverageAvailable",i.settings().showLineCoverage)("branchCoverageAvailable",i.branchCoverageAvailable&&i.settings().showBranchCoverage)("methodCoverageAvailable",i.methodCoverageAvailable&&i.settings().showMethodCoverage)("methodFullCoverageAvailable",i.methodCoverageAvailable&&i.settings().showFullMethodCoverage)("visibleMetrics",i.settings().visibleMetrics)("historyComparisionDate",i.settings().historyComparisionDate)}}function mG(e,n){if(1&e&&y(0,pG,1,9,"tr",46),2&e){const t=n.$implicit;C(!m(2).$implicit.collapsed&&t.visible()?0:-1)}}function vG(e,n){if(1&e&&(x(0,"tr",45),it(1,mG,1,1,null,null,nt)),2&e){const t=m().$implicit,i=m(3);A("settings",i.settings())("element",t)("collapsed",t.collapsed)("lineCoverageAvailable",i.settings().showLineCoverage)("branchCoverageAvailable",i.branchCoverageAvailable&&i.settings().showBranchCoverage)("methodCoverageAvailable",i.methodCoverageAvailable&&i.settings().showMethodCoverage)("methodFullCoverageAvailable",i.methodCoverageAvailable&&i.settings().showFullMethodCoverage)("visibleMetrics",i.settings().visibleMetrics),f(),ot(t.classes)}}function _G(e,n){if(1&e&&y(0,vG,3,8),2&e){const t=n.$implicit;C(!m().$implicit.collapsed&&t.visible()?0:-1)}}function yG(e,n){if(1&e&&(y(0,fG,1,8,"tr",43),it(1,gG,1,1,null,null,nt),it(3,_G,1,1,null,null,nt)),2&e){const t=n.$implicit;C(t.visible()?0:-1),f(),ot(t.classes),f(2),ot(t.subElements)}}function CG(e,n){if(1&e){const t=fe();_(0,"div"),y(1,l5,1,10,"popup",0),_(2,"div",1)(3,"div")(4,"a",2),z("click",function(o){return U(t),$(m().collapseAll(o))}),D(5),v(),D(6," | "),_(7,"a",2),z("click",function(o){return U(t),$(m().expandAll(o))}),D(8),v()(),_(9,"div",3)(10,"span",4),y(11,c5,1,1),y(12,u5,1,1),y(13,d5,1,1),v(),x(14,"br"),D(15),_(16,"input",5),Ke("ngModelChange",function(o){U(t);const r=m();return Ce(r.settings().grouping,o)||(r.settings().grouping=o),$(o)}),z("ngModelChange",function(){return U(t),$(m().updateCoverageInfo())}),v()(),_(17,"div",3),y(18,b5,9,5),v(),_(19,"div",6)(20,"button",7),z("click",function(){return U(t),$(m().popupVisible=!0)}),x(21,"i",8),D(22),v()()(),_(23,"div",9)(24,"table",10)(25,"colgroup"),x(26,"col",11),y(27,D5,1,0,"col",12),y(28,w5,1,0,"col",13),y(29,E5,1,0,"col",14),y(30,M5,1,0,"col",15),y(31,I5,1,0,"col",16),y(32,S5,1,0,"col",17),y(33,T5,1,0,"col",12),y(34,A5,1,0,"col",15),y(35,N5,1,0,"col",16),y(36,x5,1,0,"col",17),y(37,O5,1,0,"col",12),y(38,k5,1,0,"col",15),y(39,R5,1,0,"col",16),y(40,F5,1,0,"col",17),y(41,L5,1,0,"col",12),y(42,P5,1,0,"col",15),y(43,V5,1,0,"col",16),y(44,H5,1,0,"col",17),it(45,B5,1,0,"col",17,nt),v(),_(47,"thead")(48,"tr",18),x(49,"th"),y(50,j5,2,1,"th",19),y(51,U5,2,1,"th",20),y(52,$5,2,1,"th",20),y(53,z5,2,1,"th",20),y(54,G5,2,2,"th",21),v(),_(55,"tr",22)(56,"td")(57,"input",23),Ke("ngModelChange",function(o){U(t);const r=m();return Ce(r.settings().filter,o)||(r.settings().filter=o),$(o)}),v()(),y(58,W5,2,3,"td",19),y(59,q5,2,3,"td",20),y(60,Z5,2,3,"td",20),y(61,Q5,2,3,"td",20),y(62,Y5,1,1,"td",21),v(),_(63,"tr")(64,"th")(65,"a",2),z("click",function(o){return U(t),$(m().updateSorting("name",o))}),x(66,"i",24),D(67),v()(),y(68,K5,4,6,"th",25),y(69,J5,4,6,"th",25),y(70,X5,4,6,"th",25),y(71,eG,4,6,"th",25),y(72,tG,4,6,"th",26),y(73,nG,4,6,"th",25),y(74,iG,4,6,"th",25),y(75,oG,4,6,"th",26),y(76,rG,4,6,"th",25),y(77,sG,4,6,"th",25),y(78,aG,4,6,"th",26),y(79,lG,4,6,"th",25),y(80,cG,4,6,"th",25),y(81,uG,4,6,"th",26),it(82,dG,6,8,"th",null,nt),v()(),_(84,"tbody"),it(85,yG,5,1,null,null,nt),v()()()()}if(2&e){const t=m();f(),C(t.popupVisible?1:-1),f(4),L(t.translations.collapseAll),f(3),L(t.translations.expandAll),f(3),C(-1===t.settings().grouping?11:-1),f(),C(0===t.settings().grouping?12:-1),f(),C(t.settings().grouping>0?13:-1),f(2),H(" ",t.translations.grouping," "),f(),A("max",t.settings().groupingMaximum),qe("ngModel",t.settings().grouping),f(2),C(t.historicCoverageExecutionTimes.length>0?18:-1),f(4),L(t.metrics.length>0?t.translations.selectCoverageTypesAndMetrics:t.translations.selectCoverageTypes),f(5),C(t.settings().showLineCoverage?27:-1),f(),C(t.settings().showLineCoverage?28:-1),f(),C(t.settings().showLineCoverage?29:-1),f(),C(t.settings().showLineCoverage?30:-1),f(),C(t.settings().showLineCoverage?31:-1),f(),C(t.settings().showLineCoverage?32:-1),f(),C(t.branchCoverageAvailable&&t.settings().showBranchCoverage?33:-1),f(),C(t.branchCoverageAvailable&&t.settings().showBranchCoverage?34:-1),f(),C(t.branchCoverageAvailable&&t.settings().showBranchCoverage?35:-1),f(),C(t.branchCoverageAvailable&&t.settings().showBranchCoverage?36:-1),f(),C(t.methodCoverageAvailable&&t.settings().showMethodCoverage?37:-1),f(),C(t.methodCoverageAvailable&&t.settings().showMethodCoverage?38:-1),f(),C(t.methodCoverageAvailable&&t.settings().showMethodCoverage?39:-1),f(),C(t.methodCoverageAvailable&&t.settings().showMethodCoverage?40:-1),f(),C(t.methodCoverageAvailable&&t.settings().showFullMethodCoverage?41:-1),f(),C(t.methodCoverageAvailable&&t.settings().showFullMethodCoverage?42:-1),f(),C(t.methodCoverageAvailable&&t.settings().showFullMethodCoverage?43:-1),f(),C(t.methodCoverageAvailable&&t.settings().showFullMethodCoverage?44:-1),f(),ot(t.settings().visibleMetrics),f(5),C(t.settings().showLineCoverage?50:-1),f(),C(t.branchCoverageAvailable&&t.settings().showBranchCoverage?51:-1),f(),C(t.methodCoverageAvailable&&t.settings().showMethodCoverage?52:-1),f(),C(t.methodCoverageAvailable&&t.settings().showFullMethodCoverage?53:-1),f(),C(t.settings().visibleMetrics.length>0?54:-1),f(3),A("placeholder",Vn(t.translations.filter)),qe("ngModel",t.settings().filter),f(),C(t.settings().showLineCoverage?58:-1),f(),C(t.branchCoverageAvailable&&t.settings().showBranchCoverage?59:-1),f(),C(t.methodCoverageAvailable&&t.settings().showMethodCoverage?60:-1),f(),C(t.methodCoverageAvailable&&t.settings().showFullMethodCoverage?61:-1),f(),C(t.settings().visibleMetrics.length>0?62:-1),f(4),A("ngClass",ke(58,dt,"name"===t.settings().sortBy&&"asc"===t.settings().sortOrder,"name"===t.settings().sortBy&&"desc"===t.settings().sortOrder,"name"!==t.settings().sortBy)),f(),L(t.translations.name),f(),C(t.settings().showLineCoverage?68:-1),f(),C(t.settings().showLineCoverage?69:-1),f(),C(t.settings().showLineCoverage?70:-1),f(),C(t.settings().showLineCoverage?71:-1),f(),C(t.settings().showLineCoverage?72:-1),f(),C(t.branchCoverageAvailable&&t.settings().showBranchCoverage?73:-1),f(),C(t.branchCoverageAvailable&&t.settings().showBranchCoverage?74:-1),f(),C(t.branchCoverageAvailable&&t.settings().showBranchCoverage?75:-1),f(),C(t.methodCoverageAvailable&&t.settings().showMethodCoverage?76:-1),f(),C(t.methodCoverageAvailable&&t.settings().showMethodCoverage?77:-1),f(),C(t.methodCoverageAvailable&&t.settings().showMethodCoverage?78:-1),f(),C(t.methodCoverageAvailable&&t.settings().showFullMethodCoverage?79:-1),f(),C(t.methodCoverageAvailable&&t.settings().showFullMethodCoverage?80:-1),f(),C(t.methodCoverageAvailable&&t.settings().showFullMethodCoverage?81:-1),f(),ot(t.settings().visibleMetrics),f(3),ot(t.codeElements)}}let bG=(()=>{class e{constructor(t,i){this.settingsService=t,this.queryString="",this.historicCoverageExecutionTimes=[],this.branchCoverageAvailable=!1,this.methodCoverageAvailable=!1,this.applyQueryStringToAllLinks=!1,this.metrics=[],this.codeElements=[],this.translations={},this.popupVisible=!1,this.sliderOptions={floor:0,ceil:100,step:1,ticksArray:[0,10,20,30,40,50,60,70,80,90,100],showTicks:!0},this.window=i.nativeWindow,this.settings=t.settings}ngOnInit(){this.historicCoverageExecutionTimes=this.window.historicCoverageExecutionTimes,this.branchCoverageAvailable=this.window.branchCoverageAvailable,this.methodCoverageAvailable=this.window.methodCoverageAvailable,this.applyQueryStringToAllLinks=this.window.applyQueryStringToAllLinks,this.metrics=this.window.metrics,this.translations=this.window.translations,Ht.maximumDecimalPlacesForCoverageQuotas=this.window.maximumDecimalPlacesForCoverageQuotas;let t=!1;if(void 0!==this.window.history&&void 0!==this.window.history.replaceState&&null!==this.window.history.state&&null!=this.window.history.state.coverageInfoSettings){console.log("Coverage info: Restoring from history",this.window.history.state.coverageInfoSettings),t=!0;const o=Object.assign(new mu,JSON.parse(JSON.stringify(this.window.history.state.coverageInfoSettings)));this.settingsService.updateSettings(o)}else{let o=0,r=this.window.assemblies;for(let s=0;s<r.length;s++)for(let a=0;a<r[s].classes.length;a++)o=Math.max(o,(r[s].classes[a].name.match(/\.|\\/g)||[]).length);this.settings().groupingMaximum=o,console.log("Grouping maximum: "+o),this.window.applyMaximumGroupingLevel&&(this.settings().grouping=o),this.settings().showBranchCoverage=this.branchCoverageAvailable,this.settings().showMethodCoverage=this.methodCoverageAvailable,this.settings().showFullMethodCoverage=this.methodCoverageAvailable}const i=window.location.href.indexOf("?");this.applyQueryStringToAllLinks&&i>-1&&(this.queryString=window.location.href.substring(i)),this.updateCoverageInfo(),t&&this.restoreCollapseState()}onBeforeUnload(){if(this.saveCollapseState(),void 0!==this.window.history&&void 0!==this.window.history.replaceState){console.log("Coverage info: Updating history",this.settings());let t=new xS;null!==window.history.state&&(t=JSON.parse(JSON.stringify(this.window.history.state))),t.coverageInfoSettings=JSON.parse(JSON.stringify(this.settings())),window.history.replaceState(t,"")}}updateCoverageInfo(){let t=(new Date).getTime(),i=this.window.assemblies,o=[],r=0;if(0===this.settings().grouping)for(let l=0;l<i.length;l++){let c=new yi(i[l].name,null);o.push(c);for(let u=0;u<i[l].classes.length;u++)c.insertClass(new Yp(i[l].classes[u],this.queryString),null),r++}else if(-1===this.settings().grouping){let l=new yi(this.translations.all,null);o.push(l);for(let c=0;c<i.length;c++)for(let u=0;u<i[c].classes.length;u++)l.insertClass(new Yp(i[c].classes[u],this.queryString),null),r++}else for(let l=0;l<i.length;l++){let c=new yi(i[l].name,null);o.push(c);for(let u=0;u<i[l].classes.length;u++)c.insertClass(new Yp(i[l].classes[u],this.queryString),this.settings().grouping),r++}let s=-1,a=1;"name"===this.settings().sortBy&&(s="asc"===this.settings().sortOrder?-1:1,a="asc"===this.settings().sortOrder?1:-1),o.sort(function(l,c){return l.name===c.name?0:l.name<c.name?s:a}),yi.sortCodeElementViewModels(o,this.settings().sortBy,"asc"===this.settings().sortOrder);for(let l=0;l<o.length;l++)o[l].changeSorting(this.settings().sortBy,"asc"===this.settings().sortOrder);this.codeElements=o,console.log(`Processing assemblies finished (Duration: ${(new Date).getTime()-t}ms, Assemblies: ${o.length}, Classes: ${r})`),""!==this.settings().historyComparisionDate&&this.updateCurrentHistoricCoverage()}updateCurrentHistoricCoverage(){let t=(new Date).getTime();for(let i=0;i<this.codeElements.length;i++)this.codeElements[i].updateCurrentHistoricCoverage(this.settings().historyComparisionDate);console.log(`Updating current historic coverage finished (Duration: ${(new Date).getTime()-t}ms)`)}collapseAll(t){t.preventDefault();for(let i=0;i<this.codeElements.length;i++)this.codeElements[i].collapse()}expandAll(t){t.preventDefault();for(let i=0;i<this.codeElements.length;i++)this.codeElements[i].expand()}updateSorting(t,i){i.preventDefault(),t===this.settings().sortBy?this.settings().sortOrder="asc"===this.settings().sortOrder?"desc":"asc":this.settings().sortOrder="asc",this.settings().sortBy=t,console.log(`Updating sort column: '${this.settings().sortBy}' (${this.settings().sortOrder})`),yi.sortCodeElementViewModels(this.codeElements,this.settings().sortBy,"asc"===this.settings().sortOrder);for(let o=0;o<this.codeElements.length;o++)this.codeElements[o].changeSorting(this.settings().sortBy,"asc"===this.settings().sortOrder)}saveCollapseState(){this.settings().collapseStates=[];let t=i=>{for(let o=0;o<i.length;o++)this.settings().collapseStates.push(i[o].collapsed),t(i[o].subElements)};t(this.codeElements)}restoreCollapseState(){let t=0,i=o=>{for(let r=0;r<o.length;r++)this.settings().collapseStates.length>t&&(o[r].collapsed=this.settings().collapseStates[t]),t++,i(o[r].subElements)};i(this.codeElements)}static{this.\u0275fac=function(i){return new(i||e)(N(Ie),N(Kp))}}static{this.\u0275cmp=on({type:e,selectors:[["coverage-info"]],hostBindings:function(i,o){1&i&&z("beforeunload",function(){return o.onBeforeUnload()},wl)},standalone:!1,decls:1,vars:1,consts:[[3,"visible","translations","branchCoverageAvailable","methodCoverageAvailable","metrics","showLineCoverage","showBranchCoverage","showMethodCoverage","showMethodFullCoverage","visibleMetrics"],[1,"customizebox"],["href","#",3,"click"],[1,"col-center"],[1,"slider-label"],["type","range","step","1","min","-1",3,"ngModelChange","max","ngModel"],[1,"col-right","right"],["type","button",3,"click"],[1,"icon-cog"],[1,"table-responsive"],[1,"overview","table-fixed","stripped"],[1,"column-min-200"],[1,"column90"],[1,"column105"],[1,"column100"],[1,"column70"],[1,"column98"],[1,"column112"],[1,"header"],["colspan","6",1,"center"],["colspan","4",1,"center"],[1,"center"],[1,"filterbar"],["type","search",3,"ngModelChange","ngModel","placeholder"],[3,"ngClass"],[1,"right"],["colspan","2",1,"center"],[3,"visibleChange","showLineCoverageChange","showBranchCoverageChange","showMethodCoverageChange","showMethodFullCoverageChange","visibleMetricsChange","visible","translations","branchCoverageAvailable","methodCoverageAvailable","metrics","showLineCoverage","showBranchCoverage","showMethodCoverage","showMethodFullCoverage","visibleMetrics"],[3,"ngModelChange","ngModel"],["value",""],[3,"value"],["value","allChanges"],["value","lineCoverageIncreaseOnly"],["value","lineCoverageDecreaseOnly"],["value","branchCoverageIncreaseOnly"],["value","branchCoverageDecreaseOnly"],["value","methodCoverageIncreaseOnly"],["value","methodCoverageDecreaseOnly"],["value","fullMethodCoverageIncreaseOnly"],["value","fullMethodCoverageDecreaseOnly"],[3,"valueChange","highValueChange","value","highValue","options"],["target","_blank",3,"href"],[1,"icon-info-circled"],["codeelement-row","",3,"settings","element","collapsed","lineCoverageAvailable","branchCoverageAvailable","methodCoverageAvailable","methodFullCoverageAvailable","visibleMetrics"],["class-row","",3,"settings","clazz","translations","lineCoverageAvailable","branchCoverageAvailable","methodCoverageAvailable","methodFullCoverageAvailable","visibleMetrics","historyComparisionDate"],["codeelement-row","",1,"namespace",3,"settings","element","collapsed","lineCoverageAvailable","branchCoverageAvailable","methodCoverageAvailable","methodFullCoverageAvailable","visibleMetrics"],["class-row","",1,"namespace",3,"settings","clazz","translations","lineCoverageAvailable","branchCoverageAvailable","methodCoverageAvailable","methodFullCoverageAvailable","visibleMetrics","historyComparisionDate"]],template:function(i,o){1&i&&y(0,CG,87,62,"div"),2&i&&C(o.codeElements.length>0?0:-1)},dependencies:[Mr,zp,Wp,ta,$p,la,Jc,sa,NS,k4,o6,a5],encapsulation:2})}}return e})();class DG{constructor(){this.assembly="",this.numberOfRiskHotspots=10,this.filter="",this.sortBy="",this.sortOrder="asc"}}const _u=(e,n,t)=>({"icon-up-dir_active":e,"icon-down-dir_active":n,"icon-up-down-dir":t}),wG=(e,n)=>({lightred:e,lightgreen:n});function EG(e,n){if(1&e&&(_(0,"option",3),D(1),v()),2&e){const t=n.$implicit;A("value",t),f(),L(t)}}function MG(e,n){if(1&e&&(_(0,"span"),D(1),v()),2&e){const t=m(2);f(),L(t.translations.top)}}function IG(e,n){1&e&&(_(0,"option",16),D(1,"20"),v())}function SG(e,n){1&e&&(_(0,"option",17),D(1,"50"),v())}function TG(e,n){1&e&&(_(0,"option",18),D(1,"100"),v())}function AG(e,n){if(1&e&&(_(0,"option",3),D(1),v()),2&e){const t=m(3);A("value",t.totalNumberOfRiskHotspots),f(),L(t.translations.all)}}function NG(e,n){if(1&e){const t=fe();_(0,"select",14),Ke("ngModelChange",function(o){U(t);const r=m(2);return Ce(r.settings.numberOfRiskHotspots,o)||(r.settings.numberOfRiskHotspots=o),$(o)}),_(1,"option",15),D(2,"10"),v(),y(3,IG,2,0,"option",16),y(4,SG,2,0,"option",17),y(5,TG,2,0,"option",18),y(6,AG,2,2,"option",3),v()}if(2&e){const t=m(2);qe("ngModel",t.settings.numberOfRiskHotspots),f(3),C(t.totalNumberOfRiskHotspots>10?3:-1),f(),C(t.totalNumberOfRiskHotspots>20?4:-1),f(),C(t.totalNumberOfRiskHotspots>50?5:-1),f(),C(t.totalNumberOfRiskHotspots>100?6:-1)}}function xG(e,n){1&e&&x(0,"col",11)}function OG(e,n){if(1&e){const t=fe();_(0,"th")(1,"a",12),z("click",function(o){const r=U(t).$index;return $(m(2).updateSorting(""+r,o))}),x(2,"i",13),D(3),v(),_(4,"a",19),x(5,"i",20),v()()}if(2&e){const t=n.$implicit,i=n.$index,o=m(2);f(2),A("ngClass",ke(4,_u,o.settings.sortBy===""+i&&"asc"===o.settings.sortOrder,o.settings.sortBy===""+i&&"desc"===o.settings.sortOrder,o.settings.sortBy!==""+i)),f(),L(t.name),f(),A("href",Vn(t.explanationUrl),oi)}}function kG(e,n){if(1&e&&(_(0,"td",23),D(1),v()),2&e){const t=n.$implicit;A("ngClass",Cg(2,wG,t.exceeded,!t.exceeded)),f(),L(t.value)}}function RG(e,n){if(1&e&&(_(0,"tr")(1,"td"),D(2),v(),_(3,"td")(4,"a",21),D(5),v()(),_(6,"td",22)(7,"a",21),D(8),v()(),it(9,kG,2,5,"td",23,nt),v()),2&e){const t=n.$implicit,i=m(2);f(2),L(t.assembly),f(2),A("href",t.reportPath+i.queryString,oi),f(),L(t.class),f(),A("title",t.methodName),f(),A("href",t.reportPath+i.queryString+"#file"+t.fileIndex+"_line"+t.line,oi),f(),H(" ",t.methodShortName," "),f(),ot(t.metrics)}}function FG(e,n){if(1&e){const t=fe();_(0,"div")(1,"div",0)(2,"div")(3,"select",1),Ke("ngModelChange",function(o){U(t);const r=m();return Ce(r.settings.assembly,o)||(r.settings.assembly=o),$(o)}),z("ngModelChange",function(){return U(t),$(m().updateRiskHotpots())}),_(4,"option",2),D(5),v(),it(6,EG,2,2,"option",3,nt),v()(),_(8,"div",4),y(9,MG,2,1,"span"),y(10,NG,7,5,"select",5),v(),x(11,"div",4),_(12,"div",6)(13,"span"),D(14),v(),_(15,"input",7),Ke("ngModelChange",function(o){U(t);const r=m();return Ce(r.settings.filter,o)||(r.settings.filter=o),$(o)}),z("ngModelChange",function(){return U(t),$(m().updateRiskHotpots())}),v()()(),_(16,"div",8)(17,"table",9)(18,"colgroup"),x(19,"col",10)(20,"col",10)(21,"col",10),it(22,xG,1,0,"col",11,nt),v(),_(24,"thead")(25,"tr")(26,"th")(27,"a",12),z("click",function(o){return U(t),$(m().updateSorting("assembly",o))}),x(28,"i",13),D(29),v()(),_(30,"th")(31,"a",12),z("click",function(o){return U(t),$(m().updateSorting("class",o))}),x(32,"i",13),D(33),v()(),_(34,"th")(35,"a",12),z("click",function(o){return U(t),$(m().updateSorting("method",o))}),x(36,"i",13),D(37),v()(),it(38,OG,6,8,"th",null,nt),v()(),_(40,"tbody"),it(41,RG,11,6,"tr",null,nt),function mE(e,n){const t=K();let i;const o=e+j;t.firstCreatePass?(i=function JV(e,n){if(n)for(let t=n.length-1;t>=0;t--){const i=n[t];if(e===i.name)return i}}(n,t.pipeRegistry),t.data[o]=i,i.onDestroy&&(t.destroyHooks??=[]).push(o,i.onDestroy)):i=t.data[o];const r=i.factory||(i.factory=Ti(i.type)),a=yt(N);try{const l=Xa(!1),c=r();return Xa(l),function ad(e,n,t,i){t>=e.data.length&&(e.data[t]=null,e.blueprint[t]=null),n[t]=i}(t,w(),o,c),c}finally{yt(a)}}(43,"slice"),v()()()()}if(2&e){const t=m();f(3),qe("ngModel",t.settings.assembly),f(2),L(t.translations.assembly),f(),ot(t.assemblies),f(3),C(t.totalNumberOfRiskHotspots>10?9:-1),f(),C(t.totalNumberOfRiskHotspots>10?10:-1),f(4),H("",t.translations.filter," "),f(),qe("ngModel",t.settings.filter),f(7),ot(t.riskHotspotMetrics),f(6),A("ngClass",ke(16,_u,"assembly"===t.settings.sortBy&&"asc"===t.settings.sortOrder,"assembly"===t.settings.sortBy&&"desc"===t.settings.sortOrder,"assembly"!==t.settings.sortBy)),f(),L(t.translations.assembly),f(3),A("ngClass",ke(20,_u,"class"===t.settings.sortBy&&"asc"===t.settings.sortOrder,"class"===t.settings.sortBy&&"desc"===t.settings.sortOrder,"class"!==t.settings.sortBy)),f(),L(t.translations.class),f(3),A("ngClass",ke(24,_u,"method"===t.settings.sortBy&&"asc"===t.settings.sortOrder,"method"===t.settings.sortBy&&"desc"===t.settings.sortOrder,"method"!==t.settings.sortBy)),f(),L(t.translations.method),f(),ot(t.riskHotspotMetrics),f(3),ot(function vE(e,n,t,i,o){const r=e+j,s=w(),a=function Ri(e,n){return e[n]}(s,r);return function Us(e,n){return e[1].data[n].pure}(s,r)?hE(s,lt(),n,a.transform,t,i,o,a):a.transform(t,i,o)}(43,12,t.riskHotspots,0,t.settings.numberOfRiskHotspots))}}let LG=(()=>{class e{constructor(t){this.queryString="",this.riskHotspotMetrics=[],this.riskHotspots=[],this.totalNumberOfRiskHotspots=0,this.assemblies=[],this.translations={},this.settings=new DG,this.window=t.nativeWindow}ngOnInit(){this.riskHotspotMetrics=this.window.riskHotspotMetrics,this.translations=this.window.translations,void 0!==this.window.history&&void 0!==this.window.history.replaceState&&null!==this.window.history.state&&null!=this.window.history.state.riskHotspotsSettings&&(console.log("Risk hotspots: Restoring from history",this.window.history.state.riskHotspotsSettings),this.settings=JSON.parse(JSON.stringify(this.window.history.state.riskHotspotsSettings)));const t=window.location.href.indexOf("?");t>-1&&(this.queryString=window.location.href.substring(t)),this.updateRiskHotpots()}onDonBeforeUnlodad(){if(void 0!==this.window.history&&void 0!==this.window.history.replaceState){console.log("Risk hotspots: Updating history",this.settings);let t=new xS;null!==window.history.state&&(t=JSON.parse(JSON.stringify(this.window.history.state))),t.riskHotspotsSettings=JSON.parse(JSON.stringify(this.settings)),window.history.replaceState(t,"")}}updateRiskHotpots(){const t=this.window.riskHotspots;if(this.totalNumberOfRiskHotspots=t.length,0===this.assemblies.length){let s=[];for(let a=0;a<t.length;a++)-1===s.indexOf(t[a].assembly)&&s.push(t[a].assembly);this.assemblies=s.sort()}let i=[];for(let s=0;s<t.length;s++)""!==this.settings.filter&&-1===t[s].class.toLowerCase().indexOf(this.settings.filter.toLowerCase())||""!==this.settings.assembly&&t[s].assembly!==this.settings.assembly||i.push(t[s]);let o="asc"===this.settings.sortOrder?-1:1,r="asc"===this.settings.sortOrder?1:-1;if("assembly"===this.settings.sortBy)i.sort(function(s,a){return s.assembly===a.assembly?0:s.assembly<a.assembly?o:r});else if("class"===this.settings.sortBy)i.sort(function(s,a){return s.class===a.class?0:s.class<a.class?o:r});else if("method"===this.settings.sortBy)i.sort(function(s,a){return s.methodShortName===a.methodShortName?0:s.methodShortName<a.methodShortName?o:r});else if(""!==this.settings.sortBy){let s=parseInt(this.settings.sortBy,10);i.sort(function(a,l){return a.metrics[s].value===l.metrics[s].value?0:a.metrics[s].value<l.metrics[s].value?o:r})}this.riskHotspots=i}updateSorting(t,i){i.preventDefault(),this.settings.sortOrder=t===this.settings.sortBy&&"asc"===this.settings.sortOrder?"desc":"asc",this.settings.sortBy=t,console.log(`Updating sort column: '${this.settings.sortBy}' (${this.settings.sortOrder})`),this.updateRiskHotpots()}static{this.\u0275fac=function(i){return new(i||e)(N(Kp))}}static{this.\u0275cmp=on({type:e,selectors:[["risk-hotspots"]],hostBindings:function(i,o){1&i&&z("beforeunload",function(){return o.onDonBeforeUnlodad()},wl)},standalone:!1,decls:1,vars:1,consts:[[1,"customizebox"],["name","assembly",3,"ngModelChange","ngModel"],["value",""],[3,"value"],[1,"col-center"],[3,"ngModel"],[1,"col-right"],["type","search",3,"ngModelChange","ngModel"],[1,"table-responsive"],[1,"overview","table-fixed","stripped"],[1,"column-min-200"],[1,"column105"],["href","#",3,"click"],[3,"ngClass"],[3,"ngModelChange","ngModel"],["value","10"],["value","20"],["value","50"],["value","100"],["target","_blank",3,"href"],[1,"icon-info-circled"],[3,"href"],[3,"title"],[1,"right",3,"ngClass"]],template:function(i,o){1&i&&y(0,FG,44,28,"div"),2&i&&C(o.totalNumberOfRiskHotspots>0?0:-1)},dependencies:[Mr,zp,Wp,ta,la,Jc,sa,NI],encapsulation:2})}}return e})(),PG=(()=>{class e{static{this.\u0275fac=function(i){return new(i||e)}}static{this.\u0275mod=ci({type:e,bootstrap:[LG,bG]})}static{this.\u0275inj=Cn({providers:[Ie,Kp],imports:[O$,k8,D4]})}}return e})();x$().bootstrapModule(PG,{applicationProviders:[function Oj(e){const n=e?.scheduleInRootZone,t=function xj({ngZoneFactory:e,scheduleInRootZone:n}){return e??=()=>new ue({...xM(),scheduleInRootZone:n}),[{provide:ja,useValue:!1},{provide:ue,useFactory:e},{provide:zn,multi:!0,useFactory:()=>{const t=k(Aj,{optional:!0});return()=>t.initialize()}},{provide:zn,multi:!0,useFactory:()=>{const t=k(kj);return()=>{t.initialize()}}},{provide:Dv,useValue:n??vv}]}({ngZoneFactory:()=>{const i=xM(e);return i.scheduleInRootZone=n,i.shouldCoalesceEventChangeDetection&&et("NgZone_CoalesceEvent"),new ue(i)},scheduleInRootZone:n});return function Qu(e){return{\u0275providers:e}}([{provide:Nj,useValue:!0},t])}()]}).catch(e=>console.error(e))}},Ge=>{Ge(Ge.s=241)}]); |