import {
    e as sn
} from "./chunk-Z33DM23Z.js";
import {
    B as xe,
    C as rn,
    a as st,
    b as ii,
    k as tn,
    n as en,
    r as nn,
    s as on,
    y as Tt
} from "./chunk-OYJWBUYU.js";
import {
    $ as at,
    $b as xt,
    Ab as I,
    Bb as Ki,
    Ca as Vt,
    Cb as Dt,
    Da as Wi,
    Db as Yi,
    Eb as pt,
    Ia as Ui,
    Jb as ht,
    Kb as ft,
    Kc as Xi,
    Lb as nt,
    Lc as Ie,
    Mb as Ee,
    Nb as we,
    Ob as Zi,
    Pc as D,
    Qc as Ji,
    Rc as ot,
    Sc as rt,
    Tc as Xt,
    W as Nt,
    X as P,
    Y as C,
    Ya as M,
    Yb as gt,
    Z as V,
    Zb as X,
    _a as Gi,
    _b as It,
    ab as ji,
    ba as Kt,
    bb as wt,
    ca as g,
    cb as f,
    cc as Yt,
    ea as Bi,
    ec as Zt,
    f as it,
    fb as Je,
    fc as Qt,
    gc as ti,
    hc as Qi,
    ja as z,
    jc as Ae,
    kc as De,
    l as $i,
    lb as B,
    ma as Se,
    mb as L,
    na as _,
    nb as b,
    pa as Xe,
    pb as y,
    q as ki,
    rb as At,
    sc as A,
    ta as Q,
    tb as zi,
    ua as Hi,
    uc as ei,
    w as Pi,
    wa as dt,
    wb as qi,
    xa as lt,
    ya as q,
    zb as R
} from "./chunk-SSI6PFOR.js";
import {
    a as m,
    b as Z
} from "./chunk-FFRAY7OK.js";
var js = (() => {
    class e {
        constructor(t) {
            this.localeId = t;
        }
        normalizeLocale(t) {
            return t && t.split(/[-_]/)[0].toLowerCase() === "fr" ? "fr" : "en";
        }
        safeGetStoredLanguage() {
            try {
                return globalThis ? .localStorage ? .getItem("currentLanguage");
            } catch {
                return null;
            }
        }
        safeGetLocalizeLocale() {
            try {
                let t = globalThis ? .$localize ? .locale;
                return typeof t == "string" ? t : null;
            } catch {
                return null;
            }
        }
        safeGetPathLocale() {
            try {
                let t = (globalThis ? .location ? .pathname ? ? "").toLowerCase();
                return t.includes("/fr") ? "fr" : t.includes("/en") ? "en" : null;
            } catch {
                return null;
            }
        }
        resolveNormalizedLocale() {
            let t = this.safeGetStoredLanguage();
            if (t) return this.normalizeLocale(t);
            let i = this.safeGetPathLocale();
            if (i) return this.normalizeLocale(i);
            let o = this.safeGetLocalizeLocale();
            return o ? this.normalizeLocale(o) : this.normalizeLocale(this.localeId);
        }
        getLocale() {
            return this.resolveNormalizedLocale();
        }
        getLocaleId() {
            return this.localeId;
        }
        isFrench() {
            return this.getLocale() === "fr";
        }
        isEnglish() {
            return this.getLocale() === "en";
        }
        static {
            this.ɵfac = function(i) {
                return new(i || e)(Kt(Xi));
            };
        }
        static {
            this.ɵprov = C({
                token: e,
                factory: e.ɵfac,
                providedIn: "root"
            });
        }
    }
    return e;
})();
var mn = (() => {
        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 ɵfac = function(i) {
                return new(i || e)(f(wt), f(lt));
            };
            static ɵdir = b({
                type: e
            });
        }
        return e;
    })(),
    Be = (() => {
        class e extends mn {
            static ɵfac = (() => {
                let t;
                return function(o) {
                    return (t || (t = _(e)))(o || e);
                };
            })();
            static ɵdir = b({
                type: e,
                features: [y]
            });
        }
        return e;
    })(),
    Ot = new at(""),
    jo = {
        provide: Ot,
        useExisting: P(() => zo),
        multi: !0
    },
    zo = (() => {
        class e extends Be {
            writeValue(t) {
                this.setProperty("checked", t);
            }
            static ɵfac = (() => {
                let t;
                return function(o) {
                    return (t || (t = _(e)))(o || e);
                };
            })();
            static ɵdir = b({
                type: e,
                selectors: [
                    ["input", "type", "checkbox", "formControlName", ""],
                    ["input", "type", "checkbox", "formControl", ""],
                    ["input", "type", "checkbox", "ngModel", ""]
                ],
                hostBindings: function(i, o) {
                    i & 1 && gt("change", function(s) {
                        return o.onChange(s.target.checked);
                    })("blur", function() {
                        return o.onTouched();
                    });
                },
                standalone: !1,
                features: [A([jo]), y]
            });
        }
        return e;
    })(),
    qo = {
        provide: Ot,
        useExisting: P(() => bn),
        multi: !0
    };

function Ko() {
    let e = ii() ? ii().getUserAgent() : "";
    return /android (\d+)/.test(e.toLowerCase());
}
var Yo = new at(""),
    bn = (() => {
        class e extends mn {
            _compositionMode;
            _composing = !1;
            constructor(t, i, o) {
                super(t, i), this._compositionMode = o, this._compositionMode == null && (this._compositionMode = !Ko());
            }
            writeValue(t) {
                let i = t ? ? "";
                this.setProperty("value", i);
            }
            _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 ɵfac = function(i) {
                return new(i || e)(f(wt), f(lt), f(Yo, 8));
            };
            static ɵdir = b({
                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) {
                    i & 1 && gt("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: [A([qo]), y]
            });
        }
        return e;
    })();

function li(e) {
    return e == null || ci(e) === 0;
}

function ci(e) {
    return e == null ? null : Array.isArray(e) || typeof e == "string" ? e.length : e instanceof Set ? e.size : null;
}
var bt = new at(""),
    kt = new at(""),
    Zo = /^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,
    an = class {
        static min(n) {
            return Qo(n);
        }
        static max(n) {
            return Xo(n);
        }
        static required(n) {
            return yn(n);
        }
        static requiredTrue(n) {
            return Jo(n);
        }
        static email(n) {
            return tr(n);
        }
        static minLength(n) {
            return er(n);
        }
        static maxLength(n) {
            return vn(n);
        }
        static pattern(n) {
            return ir(n);
        }
        static nullValidator(n) {
            return Oe();
        }
        static compose(n) {
            return An(n);
        }
        static composeAsync(n) {
            return In(n);
        }
    };

function Qo(e) {
    return n => {
        if (n.value == null || e == null) return null;
        let t = parseFloat(n.value);
        return !isNaN(t) && t < e ? {
            min: {
                min: e,
                actual: n.value
            }
        } : null;
    };
}

function Xo(e) {
    return n => {
        if (n.value == null || e == null) return null;
        let t = parseFloat(n.value);
        return !isNaN(t) && t > e ? {
            max: {
                max: e,
                actual: n.value
            }
        } : null;
    };
}

function yn(e) {
    return li(e.value) ? {
        required: !0
    } : null;
}

function Jo(e) {
    return e.value === !0 ? null : {
        required: !0
    };
}

function tr(e) {
    return li(e.value) || Zo.test(e.value) ? null : {
        email: !0
    };
}

function er(e) {
    return n => {
        let t = n.value ? .length ? ? ci(n.value);
        return t === null || t === 0 ? null : t < e ? {
            minlength: {
                requiredLength: e,
                actualLength: t
            }
        } : null;
    };
}

function vn(e) {
    return n => {
        let t = n.value ? .length ? ? ci(n.value);
        return t !== null && t > e ? {
            maxlength: {
                requiredLength: e,
                actualLength: t
            }
        } : null;
    };
}

function ir(e) {
    if (!e) return Oe;
    let n, t;
    return typeof e == "string" ? (t = "", e.charAt(0) !== "^" && (t += "^"), t += e, e.charAt(e.length - 1) !== "$" && (t += "$"), n = new RegExp(t)) : (t = e.toString(), n = e), i => {
        if (li(i.value)) return null;
        let o = i.value;
        return n.test(o) ? null : {
            pattern: {
                requiredPattern: t,
                actualValue: o
            }
        };
    };
}

function Oe(e) {
    return null;
}

function _n(e) {
    return e != null;
}

function Cn(e) {
    return zi(e) ? $i(e) : e;
}

function Sn(e) {
    let n = {};
    return e.forEach(t => {
        n = t != null ? m(m({}, n), t) : n;
    }), Object.keys(n).length === 0 ? null : n;
}

function En(e, n) {
    return n.map(t => t(e));
}

function nr(e) {
    return !e.validate;
}

function wn(e) {
    return e.map(n => nr(n) ? n : t => n.validate(t));
}

function An(e) {
    if (!e) return null;
    let n = e.filter(_n);
    return n.length == 0 ? null : function(t) {
        return Sn(En(t, n));
    };
}

function Dn(e) {
    return e != null ? An(wn(e)) : null;
}

function In(e) {
    if (!e) return null;
    let n = e.filter(_n);
    return n.length == 0 ? null : function(t) {
        let i = En(t, n).map(Cn);
        return Pi(i).pipe(ki(Sn));
    };
}

function xn(e) {
    return e != null ? In(wn(e)) : null;
}

function ln(e, n) {
    return e === null ? [n] : Array.isArray(e) ? [...e, n] : [e, n];
}

function Tn(e) {
    return e._rawValidators;
}

function On(e) {
    return e._rawAsyncValidators;
}

function ni(e) {
    return e ? Array.isArray(e) ? e : [e] : [];
}

function Me(e, n) {
    return Array.isArray(e) ? e.includes(n) : e === n;
}

function cn(e, n) {
    let t = ni(n);
    return ni(e).forEach(o => {
        Me(t, o) || t.push(o);
    }), t;
}

function un(e, n) {
    return ni(n).filter(t => !Me(e, t));
}
var Fe = class {
        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 = Dn(this._rawValidators);
        }
        _setAsyncValidators(n) {
            this._rawAsyncValidators = n || [], this._composedAsyncValidatorFn = xn(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 && this.control.reset(n);
        }
        hasError(n, t) {
            return this.control ? this.control.hasError(n, t) : !1;
        }
        getError(n, t) {
            return this.control ? this.control.getError(n, t) : null;
        }
    },
    H = class extends Fe {
        name;
        get formDirective() {
            return null;
        }
        get path() {
            return null;
        }
    },
    ct = class extends Fe {
        _parent = null;
        name = null;
        valueAccessor = null;
    },
    Ne = class {
        _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;
        }
    },
    or = {
        "[class.ng-untouched]": "isUntouched",
        "[class.ng-touched]": "isTouched",
        "[class.ng-pristine]": "isPristine",
        "[class.ng-dirty]": "isDirty",
        "[class.ng-valid]": "isValid",
        "[class.ng-invalid]": "isInvalid",
        "[class.ng-pending]": "isPending"
    },
    ca = Z(m({}, or), {
        "[class.ng-submitted]": "isSubmitted"
    }),
    ua = (() => {
        class e extends Ne {
            constructor(t) {
                super(t);
            }
            static ɵfac = function(i) {
                return new(i || e)(f(ct, 2));
            };
            static ɵdir = b({
                type: e,
                selectors: [
                    ["", "formControlName", ""],
                    ["", "ngModel", ""],
                    ["", "formControl", ""]
                ],
                hostVars: 14,
                hostBindings: function(i, o) {
                    i & 2 && Dt("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: [y]
            });
        }
        return e;
    })(),
    da = (() => {
        class e extends Ne {
            constructor(t) {
                super(t);
            }
            static ɵfac = function(i) {
                return new(i || e)(f(H, 10));
            };
            static ɵdir = b({
                type: e,
                selectors: [
                    ["", "formGroupName", ""],
                    ["", "formArrayName", ""],
                    ["", "ngModelGroup", ""],
                    ["", "formGroup", ""],
                    ["form", 3, "ngNoForm", ""],
                    ["", "ngForm", ""]
                ],
                hostVars: 16,
                hostBindings: function(i, o) {
                    i & 2 && Dt("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)("ng-submitted", o.isSubmitted);
                },
                standalone: !1,
                features: [y]
            });
        }
        return e;
    })();
var Jt = "VALID",
    Te = "INVALID",
    Lt = "PENDING",
    te = "DISABLED",
    mt = class {},
    Ve = class extends mt {
        value;
        source;
        constructor(n, t) {
            super(), this.value = n, this.source = t;
        }
    },
    ee = class extends mt {
        pristine;
        source;
        constructor(n, t) {
            super(), this.pristine = n, this.source = t;
        }
    },
    ie = class extends mt {
        touched;
        source;
        constructor(n, t) {
            super(), this.touched = n, this.source = t;
        }
    },
    Rt = class extends mt {
        status;
        source;
        constructor(n, t) {
            super(), this.status = n, this.source = t;
        }
    },
    oi = class extends mt {
        source;
        constructor(n) {
            super(), this.source = n;
        }
    },
    ri = class extends mt {
        source;
        constructor(n) {
            super(), this.source = n;
        }
    };

function ui(e) {
    return (He(e) ? e.validators : e) || null;
}

function rr(e) {
    return Array.isArray(e) ? Dn(e) : e || null;
}

function di(e, n) {
    return (He(n) ? n.asyncValidators : e) || null;
}

function sr(e) {
    return Array.isArray(e) ? xn(e) : e || null;
}

function He(e) {
    return e != null && !Array.isArray(e) && typeof e == "object";
}

function Mn(e, n, t) {
    let i = e.controls;
    if (!(n ? Object.keys(i) : i).length) throw new Nt(1e3, "");
    if (!i[t]) throw new Nt(1001, "");
}

function Fn(e, n, t) {
    e._forEachChild((i, o) => {
        if (t[o] === void 0) throw new Nt(1002, "");
    });
}
var $t = class {
        _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 ot(this.statusReactive);
        }
        set status(n) {
            ot(() => this.statusReactive.set(n));
        }
        _status = rt(() => this.statusReactive());
        statusReactive = q(void 0);
        get valid() {
            return this.status === Jt;
        }
        get invalid() {
            return this.status === Te;
        }
        get pending() {
            return this.status == Lt;
        }
        get disabled() {
            return this.status === te;
        }
        get enabled() {
            return this.status !== te;
        }
        errors;
        get pristine() {
            return ot(this.pristineReactive);
        }
        set pristine(n) {
            ot(() => this.pristineReactive.set(n));
        }
        _pristine = rt(() => this.pristineReactive());
        pristineReactive = q(!0);
        get dirty() {
            return !this.pristine;
        }
        get touched() {
            return ot(this.touchedReactive);
        }
        set touched(n) {
            ot(() => this.touchedReactive.set(n));
        }
        _touched = rt(() => this.touchedReactive());
        touchedReactive = q(!1);
        get untouched() {
            return !this.touched;
        }
        _events = new it();
        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(cn(n, this._rawValidators));
        }
        addAsyncValidators(n) {
            this.setAsyncValidators(cn(n, this._rawAsyncValidators));
        }
        removeValidators(n) {
            this.setValidators(un(n, this._rawValidators));
        }
        removeAsyncValidators(n) {
            this.setAsyncValidators(un(n, this._rawAsyncValidators));
        }
        hasValidator(n) {
            return Me(this._rawValidators, n);
        }
        hasAsyncValidator(n) {
            return Me(this._rawAsyncValidators, n);
        }
        clearValidators() {
            this.validator = null;
        }
        clearAsyncValidators() {
            this.asyncValidator = null;
        }
        markAsTouched(n = {}) {
            let t = this.touched === !1;
            this.touched = !0;
            let i = n.sourceControl ? ? this;
            this._parent && !n.onlySelf && this._parent.markAsTouched(Z(m({}, n), {
                sourceControl: i
            })), t && n.emitEvent !== !1 && this._events.next(new ie(!0, i));
        }
        markAllAsTouched(n = {}) {
            this.markAsTouched({
                onlySelf: !0,
                emitEvent: n.emitEvent,
                sourceControl: this
            }), this._forEachChild(t => t.markAllAsTouched(n));
        }
        markAsUntouched(n = {}) {
            let t = this.touched === !0;
            this.touched = !1, this._pendingTouched = !1;
            let i = n.sourceControl ? ? this;
            this._forEachChild(o => {
                o.markAsUntouched({
                    onlySelf: !0,
                    emitEvent: n.emitEvent,
                    sourceControl: i
                });
            }), this._parent && !n.onlySelf && this._parent._updateTouched(n, i), t && n.emitEvent !== !1 && this._events.next(new ie(!1, i));
        }
        markAsDirty(n = {}) {
            let t = this.pristine === !0;
            this.pristine = !1;
            let i = n.sourceControl ? ? this;
            this._parent && !n.onlySelf && this._parent.markAsDirty(Z(m({}, n), {
                sourceControl: i
            })), t && n.emitEvent !== !1 && this._events.next(new ee(!1, i));
        }
        markAsPristine(n = {}) {
            let t = this.pristine === !1;
            this.pristine = !0, this._pendingDirty = !1;
            let i = n.sourceControl ? ? this;
            this._forEachChild(o => {
                o.markAsPristine({
                    onlySelf: !0,
                    emitEvent: n.emitEvent
                });
            }), this._parent && !n.onlySelf && this._parent._updatePristine(n, i), t && n.emitEvent !== !1 && this._events.next(new ee(!0, i));
        }
        markAsPending(n = {}) {
            this.status = Lt;
            let t = n.sourceControl ? ? this;
            n.emitEvent !== !1 && (this._events.next(new Rt(this.status, t)), this.statusChanges.emit(this.status)), this._parent && !n.onlySelf && this._parent.markAsPending(Z(m({}, n), {
                sourceControl: t
            }));
        }
        disable(n = {}) {
            let t = this._parentMarkedDirty(n.onlySelf);
            this.status = te, this.errors = null, this._forEachChild(o => {
                o.disable(Z(m({}, n), {
                    onlySelf: !0
                }));
            }), this._updateValue();
            let i = n.sourceControl ? ? this;
            n.emitEvent !== !1 && (this._events.next(new Ve(this.value, i)), this._events.next(new Rt(this.status, i)), this.valueChanges.emit(this.value), this.statusChanges.emit(this.status)), this._updateAncestors(Z(m({}, n), {
                skipPristineCheck: t
            }), this), this._onDisabledChange.forEach(o => o(!0));
        }
        enable(n = {}) {
            let t = this._parentMarkedDirty(n.onlySelf);
            this.status = Jt, this._forEachChild(i => {
                i.enable(Z(m({}, n), {
                    onlySelf: !0
                }));
            }), this.updateValueAndValidity({
                onlySelf: !0,
                emitEvent: n.emitEvent
            }), this._updateAncestors(Z(m({}, n), {
                skipPristineCheck: t
            }), this), this._onDisabledChange.forEach(i => i(!1));
        }
        _updateAncestors(n, t) {
            this._parent && !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) {
                let i = this._cancelExistingSubscription();
                this.errors = this._runValidator(), this.status = this._calculateStatus(), (this.status === Jt || this.status === Lt) && this._runAsyncValidator(i, n.emitEvent);
            }
            let t = n.sourceControl ? ? this;
            n.emitEvent !== !1 && (this._events.next(new Ve(this.value, t)), this._events.next(new Rt(this.status, t)), this.valueChanges.emit(this.value), this.statusChanges.emit(this.status)), this._parent && !n.onlySelf && this._parent.updateValueAndValidity(Z(m({}, 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() ? te : Jt;
        }
        _runValidator() {
            return this.validator ? this.validator(this) : null;
        }
        _runAsyncValidator(n, t) {
            if (this.asyncValidator) {
                this.status = Lt, this._hasOwnPendingAsyncValidator = {
                    emitEvent: t !== !1
                };
                let i = Cn(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();
                let n = this._hasOwnPendingAsyncValidator ? .emitEvent ? ? !1;
                return this._hasOwnPendingAsyncValidator = null, n;
            }
            return !1;
        }
        setErrors(n, t = {}) {
            this.errors = n, this._updateControlsErrors(t.emitEvent !== !1, this, t.shouldHaveEmitted);
        }
        get(n) {
            let t = n;
            return t == null || (Array.isArray(t) || (t = t.split(".")), t.length === 0) ? null : t.reduce((i, o) => i && i._find(o), this);
        }
        getError(n, t) {
            let i = t ? this.get(t) : this;
            return i && 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 Rt(this.status, t)), this._parent && this._parent._updateControlsErrors(n, t, i);
        }
        _initObservables() {
            this.valueChanges = new Q(), this.statusChanges = new Q();
        }
        _calculateStatus() {
            return this._allControlsDisabled() ? te : this.errors ? Te : this._hasOwnPendingAsyncValidator || this._anyControlsHaveStatus(Lt) ? Lt : this._anyControlsHaveStatus(Te) ? Te : Jt;
        }
        _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) {
            let i = !this._anyControlsDirty(),
                o = this.pristine !== i;
            this.pristine = i, this._parent && !n.onlySelf && this._parent._updatePristine(n, t), o && this._events.next(new ee(this.pristine, t));
        }
        _updateTouched(n = {}, t) {
            this.touched = this._anyControlsTouched(), this._events.next(new ie(this.touched, t)), this._parent && !n.onlySelf && this._parent._updateTouched(n, t);
        }
        _onDisabledChange = [];
        _registerOnCollectionChange(n) {
            this._onCollectionChange = n;
        }
        _setUpdateStrategy(n) {
            He(n) && n.updateOn != null && (this._updateOn = n.updateOn);
        }
        _parentMarkedDirty(n) {
            let t = this._parent && this._parent.dirty;
            return !n && !!t && !this._parent._anyControlsDirty();
        }
        _find(n) {
            return null;
        }
        _assignValidators(n) {
            this._rawValidators = Array.isArray(n) ? n.slice() : n, this._composedValidatorFn = rr(this._rawValidators);
        }
        _assignAsyncValidators(n) {
            this._rawAsyncValidators = Array.isArray(n) ? n.slice() : n, this._composedAsyncValidatorFn = sr(this._rawAsyncValidators);
        }
    },
    Le = class extends $t {
        constructor(n, t, i) {
            super(ui(t), di(i, t)), this.controls = n, this._initObservables(), this._setUpdateStrategy(t), this._setUpControls(), this.updateValueAndValidity({
                onlySelf: !0,
                emitEvent: !!this.asyncValidator
            });
        }
        controls;
        registerControl(n, t) {
            return this.controls[n] ? this.controls[n] : (this.controls[n] = t, t.setParent(this), t._registerOnCollectionChange(this._onCollectionChange), t);
        }
        addControl(n, t, i = {}) {
            this.registerControl(n, t), this.updateValueAndValidity({
                emitEvent: i.emitEvent
            }), this._onCollectionChange();
        }
        removeControl(n, t = {}) {
            this.controls[n] && this.controls[n]._registerOnCollectionChange(() => {}), delete this.controls[n], this.updateValueAndValidity({
                emitEvent: t.emitEvent
            }), this._onCollectionChange();
        }
        setControl(n, t, i = {}) {
            this.controls[n] && this.controls[n]._registerOnCollectionChange(() => {}), delete this.controls[n], t && this.registerControl(n, t), this.updateValueAndValidity({
                emitEvent: i.emitEvent
            }), this._onCollectionChange();
        }
        contains(n) {
            return this.controls.hasOwnProperty(n) && this.controls[n].enabled;
        }
        setValue(n, t = {}) {
            Fn(this, !0, n), Object.keys(n).forEach(i => {
                Mn(this, !0, i), this.controls[i].setValue(n[i], {
                    onlySelf: !0,
                    emitEvent: t.emitEvent
                });
            }), this.updateValueAndValidity(t);
        }
        patchValue(n, t = {}) {
            n != null && (Object.keys(n).forEach(i => {
                let o = this.controls[i];
                o && o.patchValue(n[i], {
                    onlySelf: !0,
                    emitEvent: t.emitEvent
                });
            }), this.updateValueAndValidity(t));
        }
        reset(n = {}, t = {}) {
            this._forEachChild((i, o) => {
                i.reset(n ? n[o] : null, {
                    onlySelf: !0,
                    emitEvent: t.emitEvent
                });
            }), this._updatePristine(t, this), this._updateTouched(t, this), this.updateValueAndValidity(t);
        }
        getRawValue() {
            return this._reduceChildren({}, (n, t, i) => (n[i] = t.getRawValue(), n));
        }
        _syncPendingControls() {
            let n = this._reduceChildren(!1, (t, i) => i._syncPendingControls() ? !0 : t);
            return n && this.updateValueAndValidity({
                onlySelf: !0
            }), n;
        }
        _forEachChild(n) {
            Object.keys(this.controls).forEach(t => {
                let i = this.controls[t];
                i && n(i, t);
            });
        }
        _setUpControls() {
            this._forEachChild(n => {
                n.setParent(this), n._registerOnCollectionChange(this._onCollectionChange);
            });
        }
        _updateValue() {
            this.value = this._reduceValue();
        }
        _anyControls(n) {
            for (let [t, i] of Object.entries(this.controls))
                if (this.contains(t) && n(i)) return !0;
            return !1;
        }
        _reduceValue() {
            let n = {};
            return this._reduceChildren(n, (t, i, o) => ((i.enabled || this.disabled) && (t[o] = i.value), t));
        }
        _reduceChildren(n, t) {
            let i = n;
            return this._forEachChild((o, r) => {
                i = t(i, o, r);
            }), i;
        }
        _allControlsDisabled() {
            for (let n of Object.keys(this.controls))
                if (this.controls[n].enabled) return !1;
            return Object.keys(this.controls).length > 0 || this.disabled;
        }
        _find(n) {
            return this.controls.hasOwnProperty(n) ? this.controls[n] : null;
        }
    };
var si = class extends Le {};
var oe = new at("", {
        providedIn: "root",
        factory: () => We
    }),
    We = "always";

function Ue(e, n) {
    return [...n.path, e];
}

function Re(e, n, t = We) {
    pi(e, n), n.valueAccessor.writeValue(e.value), (e.disabled || t === "always") && n.valueAccessor.setDisabledState ? .(e.disabled), lr(e, n), ur(e, n), cr(e, n), ar(e, n);
}

function $e(e, n, t = !0) {
    let i = () => {};
    n.valueAccessor && (n.valueAccessor.registerOnChange(i), n.valueAccessor.registerOnTouched(i)), Pe(e, n), e && (n._invokeOnDestroyCallbacks(), e._registerOnCollectionChange(() => {}));
}

function ke(e, n) {
    e.forEach(t => {
        t.registerOnValidatorChange && t.registerOnValidatorChange(n);
    });
}

function ar(e, n) {
    if (n.valueAccessor.setDisabledState) {
        let t = i => {
            n.valueAccessor.setDisabledState(i);
        };
        e.registerOnDisabledChange(t), n._registerOnDestroy(() => {
            e._unregisterOnDisabledChange(t);
        });
    }
}

function pi(e, n) {
    let t = Tn(e);
    n.validator !== null ? e.setValidators(ln(t, n.validator)) : typeof t == "function" && e.setValidators([t]);
    let i = On(e);
    n.asyncValidator !== null ? e.setAsyncValidators(ln(i, n.asyncValidator)) : typeof i == "function" && e.setAsyncValidators([i]);
    let o = () => e.updateValueAndValidity();
    ke(n._rawValidators, o), ke(n._rawAsyncValidators, o);
}

function Pe(e, n) {
    let t = !1;
    if (e !== null) {
        if (n.validator !== null) {
            let o = Tn(e);
            if (Array.isArray(o) && o.length > 0) {
                let r = o.filter(s => s !== n.validator);
                r.length !== o.length && (t = !0, e.setValidators(r));
            }
        }
        if (n.asyncValidator !== null) {
            let o = On(e);
            if (Array.isArray(o) && o.length > 0) {
                let r = o.filter(s => s !== n.asyncValidator);
                r.length !== o.length && (t = !0, e.setAsyncValidators(r));
            }
        }
    }
    let i = () => {};
    return ke(n._rawValidators, i), ke(n._rawAsyncValidators, i), t;
}

function lr(e, n) {
    n.valueAccessor.registerOnChange(t => {
        e._pendingValue = t, e._pendingChange = !0, e._pendingDirty = !0, e.updateOn === "change" && Nn(e, n);
    });
}

function cr(e, n) {
    n.valueAccessor.registerOnTouched(() => {
        e._pendingTouched = !0, e.updateOn === "blur" && e._pendingChange && Nn(e, n), e.updateOn !== "submit" && e.markAsTouched();
    });
}

function Nn(e, n) {
    e._pendingDirty && e.markAsDirty(), e.setValue(e._pendingValue, {
        emitModelToViewChange: !1
    }), n.viewToModelUpdate(e._pendingValue), e._pendingChange = !1;
}

function ur(e, n) {
    let t = (i, o) => {
        n.valueAccessor.writeValue(i), o && n.viewToModelUpdate(i);
    };
    e.registerOnChange(t), n._registerOnDestroy(() => {
        e._unregisterOnChange(t);
    });
}

function dr(e, n) {
    e == null, pi(e, n);
}

function pr(e, n) {
    return Pe(e, n);
}

function hi(e, n) {
    if (!e.hasOwnProperty("model")) return !1;
    let t = e.model;
    return t.isFirstChange() ? !0 : !Object.is(n, t.currentValue);
}

function hr(e) {
    return Object.getPrototypeOf(e.constructor) === Be;
}

function fr(e, n) {
    e._syncPendingControls(), n.forEach(t => {
        let i = t.control;
        i.updateOn === "submit" && i._pendingChange && (t.viewToModelUpdate(i._pendingValue), i._pendingChange = !1);
    });
}

function fi(e, n) {
    if (!n) return null;
    Array.isArray(n);
    let t, i, o;
    return n.forEach(r => {
        r.constructor === bn ? t = r : hr(r) ? i = r : o = r;
    }), o || i || t || null;
}

function gr(e, n) {
    let t = e.indexOf(n);
    t > -1 && e.splice(t, 1);
}

function dn(e, n) {
    let t = e.indexOf(n);
    t > -1 && e.splice(t, 1);
}

function pn(e) {
    return typeof e == "object" && e !== null && Object.keys(e).length === 2 && "value" in e && "disabled" in e;
}
var ne = class extends $t {
    defaultValue = null;
    _onChange = [];
    _pendingValue;
    _pendingChange = !1;
    constructor(n = null, t, i) {
        super(ui(t), di(i, t)), this._applyFormState(n), this._setUpdateStrategy(t), this._initObservables(), this.updateValueAndValidity({
            onlySelf: !0,
            emitEvent: !!this.asyncValidator
        }), He(t) && (t.nonNullable || t.initialValueIsDefault) && (pn(n) ? this.defaultValue = n.value : this.defaultValue = n);
    }
    setValue(n, t = {}) {
        this.value = this._pendingValue = n, this._onChange.length && t.emitModelToViewChange !== !1 && this._onChange.forEach(i => i(this.value, t.emitViewToModelChange !== !1)), 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), this._pendingChange = !1;
    }
    _updateValue() {}
    _anyControls(n) {
        return !1;
    }
    _allControlsDisabled() {
        return this.disabled;
    }
    registerOnChange(n) {
        this._onChange.push(n);
    }
    _unregisterOnChange(n) {
        dn(this._onChange, n);
    }
    registerOnDisabledChange(n) {
        this._onDisabledChange.push(n);
    }
    _unregisterOnDisabledChange(n) {
        dn(this._onDisabledChange, n);
    }
    _forEachChild(n) {}
    _syncPendingControls() {
        return this.updateOn === "submit" && (this._pendingDirty && this.markAsDirty(), this._pendingTouched && this.markAsTouched(), this._pendingChange) ? (this.setValue(this._pendingValue, {
            onlySelf: !0,
            emitModelToViewChange: !1
        }), !0) : !1;
    }
    _applyFormState(n) {
        pn(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;
    }
};
var mr = e => e instanceof ne,
    br = (() => {
        class e extends H {
            _parent;
            ngOnInit() {
                this._checkParentType(), this.formDirective.addFormGroup(this);
            }
            ngOnDestroy() {
                this.formDirective && this.formDirective.removeFormGroup(this);
            }
            get control() {
                return this.formDirective.getFormGroup(this);
            }
            get path() {
                return Ue(this.name == null ? this.name : this.name.toString(), this._parent);
            }
            get formDirective() {
                return this._parent ? this._parent.formDirective : null;
            }
            _checkParentType() {}
            static ɵfac = (() => {
                let t;
                return function(o) {
                    return (t || (t = _(e)))(o || e);
                };
            })();
            static ɵdir = b({
                type: e,
                standalone: !1,
                features: [y]
            });
        }
        return e;
    })();
var yr = {
        provide: ct,
        useExisting: P(() => vr)
    },
    hn = Promise.resolve(),
    vr = (() => {
        class e extends ct {
            _changeDetectorRef;
            callSetDisabledState;
            control = new ne();
            static ngAcceptInputType_isDisabled;
            _registered = !1;
            viewModel;
            name = "";
            isDisabled;
            model;
            options;
            update = new Q();
            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 = fi(this, r);
            }
            ngOnChanges(t) {
                if (this._checkForErrors(), !this._registered || "name" in t) {
                    if (this._registered && (this._checkName(), this.formDirective)) {
                        let i = t.name.previousValue;
                        this.formDirective.removeControl({
                            name: i,
                            path: this._getPath(i)
                        });
                    }
                    this._setUpControl();
                }
                "isDisabled" in t && this._updateDisabled(t), hi(t, this.viewModel) && (this._updateValue(this.model), this.viewModel = this.model);
            }
            ngOnDestroy() {
                this.formDirective && 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 && this.options.updateOn != null && (this.control._updateOn = this.options.updateOn);
            }
            _isStandalone() {
                return !this._parent || !!(this.options && this.options.standalone);
            }
            _setUpStandalone() {
                Re(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() && this.name;
            }
            _updateValue(t) {
                hn.then(() => {
                    this.control.setValue(t, {
                        emitViewToModelChange: !1
                    }), this._changeDetectorRef ? .markForCheck();
                });
            }
            _updateDisabled(t) {
                let i = t.isDisabled.currentValue,
                    o = i !== 0 && D(i);
                hn.then(() => {
                    o && !this.control.disabled ? this.control.disable() : !o && this.control.disabled && this.control.enable(), this._changeDetectorRef ? .markForCheck();
                });
            }
            _getPath(t) {
                return this._parent ? Ue(t, this._parent) : [t];
            }
            static ɵfac = function(i) {
                return new(i || e)(f(H, 9), f(bt, 10), f(kt, 10), f(Ot, 10), f(Ie, 8), f(oe, 8));
            };
            static ɵdir = b({
                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: [A([yr]), y, z]
            });
        }
        return e;
    })();
var ha = (() => {
    class e {
        static ɵfac = function(i) {
            return new(i || e)();
        };
        static ɵdir = b({
            type: e,
            selectors: [
                ["form", 3, "ngNoForm", "", 3, "ngNativeValidate", ""]
            ],
            hostAttrs: ["novalidate", ""],
            standalone: !1
        });
    }
    return e;
})();
var gi = new at(""),
    _r = {
        provide: ct,
        useExisting: P(() => Cr)
    },
    Cr = (() => {
        class e extends ct {
            _ngModelWarningConfig;
            callSetDisabledState;
            viewModel;
            form;
            set isDisabled(t) {}
            model;
            update = new Q();
            static _ngModelWarningSentOnce = !1;
            _ngModelWarningSent = !1;
            constructor(t, i, o, r, s) {
                super(), this._ngModelWarningConfig = r, this.callSetDisabledState = s, this._setValidators(t), this._setAsyncValidators(i), this.valueAccessor = fi(this, o);
            }
            ngOnChanges(t) {
                if (this._isControlChanged(t)) {
                    let i = t.form.previousValue;
                    i && $e(i, this, !1), Re(this.form, this, this.callSetDisabledState), this.form.updateValueAndValidity({
                        emitEvent: !1
                    });
                }
                hi(t, this.viewModel) && (this.form.setValue(this.model), this.viewModel = this.model);
            }
            ngOnDestroy() {
                this.form && $e(this.form, this, !1);
            }
            get path() {
                return [];
            }
            get control() {
                return this.form;
            }
            viewToModelUpdate(t) {
                this.viewModel = t, this.update.emit(t);
            }
            _isControlChanged(t) {
                return t.hasOwnProperty("form");
            }
            static ɵfac = function(i) {
                return new(i || e)(f(bt, 10), f(kt, 10), f(Ot, 10), f(gi, 8), f(oe, 8));
            };
            static ɵdir = b({
                type: e,
                selectors: [
                    ["", "formControl", ""]
                ],
                inputs: {
                    form: [0, "formControl", "form"],
                    isDisabled: [0, "disabled", "isDisabled"],
                    model: [0, "ngModel", "model"]
                },
                outputs: {
                    update: "ngModelChange"
                },
                exportAs: ["ngForm"],
                standalone: !1,
                features: [A([_r]), y, z]
            });
        }
        return e;
    })(),
    Sr = {
        provide: H,
        useExisting: P(() => Vn)
    },
    Vn = (() => {
        class e extends H {
            callSetDisabledState;
            get submitted() {
                return ot(this._submittedReactive);
            }
            set submitted(t) {
                this._submittedReactive.set(t);
            }
            _submitted = rt(() => this._submittedReactive());
            _submittedReactive = q(!1);
            _oldForm;
            _onCollectionChange = () => this._updateDomValue();
            directives = [];
            form = null;
            ngSubmit = new Q();
            constructor(t, i, o) {
                super(), this.callSetDisabledState = o, this._setValidators(t), this._setAsyncValidators(i);
            }
            ngOnChanges(t) {
                t.hasOwnProperty("form") && (this._updateValidators(), this._updateDomValue(), this._updateRegistrations(), this._oldForm = this.form);
            }
            ngOnDestroy() {
                this.form && (Pe(this.form, this), this.form._onCollectionChange === this._onCollectionChange && this.form._registerOnCollectionChange(() => {}));
            }
            get formDirective() {
                return this;
            }
            get control() {
                return this.form;
            }
            get path() {
                return [];
            }
            addControl(t) {
                let i = this.form.get(t.path);
                return Re(i, t, this.callSetDisabledState), i.updateValueAndValidity({
                    emitEvent: !1
                }), this.directives.push(t), i;
            }
            getControl(t) {
                return this.form.get(t.path);
            }
            removeControl(t) {
                $e(t.control || null, t, !1), gr(this.directives, t);
            }
            addFormGroup(t) {
                this._setUpFormContainer(t);
            }
            removeFormGroup(t) {
                this._cleanUpFormContainer(t);
            }
            getFormGroup(t) {
                return this.form.get(t.path);
            }
            addFormArray(t) {
                this._setUpFormContainer(t);
            }
            removeFormArray(t) {
                this._cleanUpFormContainer(t);
            }
            getFormArray(t) {
                return this.form.get(t.path);
            }
            updateModel(t, i) {
                this.form.get(t.path).setValue(i);
            }
            onSubmit(t) {
                return this._submittedReactive.set(!0), fr(this.form, this.directives), this.ngSubmit.emit(t), this.form._events.next(new oi(this.control)), t ? .target ? .method === "dialog";
            }
            onReset() {
                this.resetForm();
            }
            resetForm(t = void 0) {
                this.form.reset(t), this._submittedReactive.set(!1), this.form._events.next(new ri(this.form));
            }
            _updateDomValue() {
                this.directives.forEach(t => {
                    let i = t.control,
                        o = this.form.get(t.path);
                    i !== o && ($e(i || null, t), mr(o) && (Re(o, t, this.callSetDisabledState), t.control = o));
                }), this.form._updateTreeValidity({
                    emitEvent: !1
                });
            }
            _setUpFormContainer(t) {
                let i = this.form.get(t.path);
                dr(i, t), i.updateValueAndValidity({
                    emitEvent: !1
                });
            }
            _cleanUpFormContainer(t) {
                if (this.form) {
                    let i = this.form.get(t.path);
                    i && pr(i, t) && i.updateValueAndValidity({
                        emitEvent: !1
                    });
                }
            }
            _updateRegistrations() {
                this.form._registerOnCollectionChange(this._onCollectionChange), this._oldForm && this._oldForm._registerOnCollectionChange(() => {});
            }
            _updateValidators() {
                pi(this.form, this), this._oldForm && Pe(this._oldForm, this);
            }
            static ɵfac = function(i) {
                return new(i || e)(f(bt, 10), f(kt, 10), f(oe, 8));
            };
            static ɵdir = b({
                type: e,
                selectors: [
                    ["", "formGroup", ""]
                ],
                hostBindings: function(i, o) {
                    i & 1 && gt("submit", function(s) {
                        return o.onSubmit(s);
                    })("reset", function() {
                        return o.onReset();
                    });
                },
                inputs: {
                    form: [0, "formGroup", "form"]
                },
                outputs: {
                    ngSubmit: "ngSubmit"
                },
                exportAs: ["ngForm"],
                standalone: !1,
                features: [A([Sr]), y, z]
            });
        }
        return e;
    })(),
    Er = {
        provide: H,
        useExisting: P(() => Ln)
    },
    Ln = (() => {
        class e extends br {
            name = null;
            constructor(t, i, o) {
                super(), this._parent = t, this._setValidators(i), this._setAsyncValidators(o);
            }
            _checkParentType() {
                $n(this._parent);
            }
            static ɵfac = function(i) {
                return new(i || e)(f(H, 13), f(bt, 10), f(kt, 10));
            };
            static ɵdir = b({
                type: e,
                selectors: [
                    ["", "formGroupName", ""]
                ],
                inputs: {
                    name: [0, "formGroupName", "name"]
                },
                standalone: !1,
                features: [A([Er]), y]
            });
        }
        return e;
    })(),
    wr = {
        provide: H,
        useExisting: P(() => Rn)
    },
    Rn = (() => {
        class e extends H {
            _parent;
            name = null;
            constructor(t, i, o) {
                super(), this._parent = t, this._setValidators(i), this._setAsyncValidators(o);
            }
            ngOnInit() {
                $n(this._parent), this.formDirective.addFormArray(this);
            }
            ngOnDestroy() {
                this.formDirective ? .removeFormArray(this);
            }
            get control() {
                return this.formDirective.getFormArray(this);
            }
            get formDirective() {
                return this._parent ? this._parent.formDirective : null;
            }
            get path() {
                return Ue(this.name == null ? this.name : this.name.toString(), this._parent);
            }
            static ɵfac = function(i) {
                return new(i || e)(f(H, 13), f(bt, 10), f(kt, 10));
            };
            static ɵdir = b({
                type: e,
                selectors: [
                    ["", "formArrayName", ""]
                ],
                inputs: {
                    name: [0, "formArrayName", "name"]
                },
                standalone: !1,
                features: [A([wr]), y]
            });
        }
        return e;
    })();

function $n(e) {
    return !(e instanceof Ln) && !(e instanceof Vn) && !(e instanceof Rn);
}
var Ar = {
        provide: ct,
        useExisting: P(() => Dr)
    },
    Dr = (() => {
        class e extends ct {
            _ngModelWarningConfig;
            _added = !1;
            viewModel;
            control;
            name = null;
            set isDisabled(t) {}
            model;
            update = new Q();
            static _ngModelWarningSentOnce = !1;
            _ngModelWarningSent = !1;
            constructor(t, i, o, r, s) {
                super(), this._ngModelWarningConfig = s, this._parent = t, this._setValidators(i), this._setAsyncValidators(o), this.valueAccessor = fi(this, r);
            }
            ngOnChanges(t) {
                this._added || this._setUpControl(), hi(t, this.viewModel) && (this.viewModel = this.model, this.formDirective.updateModel(this, this.model));
            }
            ngOnDestroy() {
                this.formDirective && this.formDirective.removeControl(this);
            }
            viewToModelUpdate(t) {
                this.viewModel = t, this.update.emit(t);
            }
            get path() {
                return Ue(this.name == null ? this.name : this.name.toString(), this._parent);
            }
            get formDirective() {
                return this._parent ? this._parent.formDirective : null;
            }
            _setUpControl() {
                this.control = this.formDirective.addControl(this), this._added = !0;
            }
            static ɵfac = function(i) {
                return new(i || e)(f(H, 13), f(bt, 10), f(kt, 10), f(Ot, 10), f(gi, 8));
            };
            static ɵdir = b({
                type: e,
                selectors: [
                    ["", "formControlName", ""]
                ],
                inputs: {
                    name: [0, "formControlName", "name"],
                    isDisabled: [0, "disabled", "isDisabled"],
                    model: [0, "ngModel", "model"]
                },
                outputs: {
                    update: "ngModelChange"
                },
                standalone: !1,
                features: [A([Ar]), y, z]
            });
        }
        return e;
    })();
var Ir = {
    provide: Ot,
    useExisting: P(() => Pn),
    multi: !0
};

function kn(e, n) {
    return e == null ? `${n}` : (n && typeof n == "object" && (n = "Object"), `${e}: ${n}`.slice(0, 50));
}

function xr(e) {
    return e.split(":")[0];
}
var Pn = (() => {
        class e extends Be {
            value;
            _optionMap = new Map();
            _idCounter = 0;
            set compareWith(t) {
                this._compareWith = t;
            }
            _compareWith = Object.is;
            writeValue(t) {
                this.value = t;
                let i = this._getOptionId(t),
                    o = kn(i, 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 (let i of this._optionMap.keys())
                    if (this._compareWith(this._optionMap.get(i), t)) return i;
                return null;
            }
            _getOptionValue(t) {
                let i = xr(t);
                return this._optionMap.has(i) ? this._optionMap.get(i) : t;
            }
            static ɵfac = (() => {
                let t;
                return function(o) {
                    return (t || (t = _(e)))(o || e);
                };
            })();
            static ɵdir = b({
                type: e,
                selectors: [
                    ["select", "formControlName", "", 3, "multiple", ""],
                    ["select", "formControl", "", 3, "multiple", ""],
                    ["select", "ngModel", "", 3, "multiple", ""]
                ],
                hostBindings: function(i, o) {
                    i & 1 && gt("change", function(s) {
                        return o.onChange(s.target.value);
                    })("blur", function() {
                        return o.onTouched();
                    });
                },
                inputs: {
                    compareWith: "compareWith"
                },
                standalone: !1,
                features: [A([Ir]), y]
            });
        }
        return e;
    })(),
    fa = (() => {
        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) {
                this._select != null && (this._select._optionMap.set(this.id, t), this._setElementValue(kn(this.id, t)), this._select.writeValue(this._select.value));
            }
            set value(t) {
                this._setElementValue(t), this._select && this._select.writeValue(this._select.value);
            }
            _setElementValue(t) {
                this._renderer.setProperty(this._element.nativeElement, "value", t);
            }
            ngOnDestroy() {
                this._select && (this._select._optionMap.delete(this.id), this._select.writeValue(this._select.value));
            }
            static ɵfac = function(i) {
                return new(i || e)(f(lt), f(wt), f(Pn, 9));
            };
            static ɵdir = b({
                type: e,
                selectors: [
                    ["option"]
                ],
                inputs: {
                    ngValue: "ngValue",
                    value: "value"
                },
                standalone: !1
            });
        }
        return e;
    })(),
    Tr = {
        provide: Ot,
        useExisting: P(() => Bn),
        multi: !0
    };

function fn(e, n) {
    return e == null ? `${n}` : (typeof n == "string" && (n = `'${n}'`), n && typeof n == "object" && (n = "Object"), `${e}: ${n}`.slice(0, 50));
}

function Or(e) {
    return e.split(":")[0];
}
var Bn = (() => {
        class e extends Be {
            value;
            _optionMap = new Map();
            _idCounter = 0;
            set compareWith(t) {
                this._compareWith = t;
            }
            _compareWith = Object.is;
            writeValue(t) {
                this.value = t;
                let i;
                if (Array.isArray(t)) {
                    let o = t.map(r => this._getOptionId(r));
                    i = (r, s) => {
                        r._setSelected(o.indexOf(s.toString()) > -1);
                    };
                } else i = (o, r) => {
                    o._setSelected(!1);
                };
                this._optionMap.forEach(i);
            }
            registerOnChange(t) {
                this.onChange = i => {
                    let o = [],
                        r = i.selectedOptions;
                    if (r !== void 0) {
                        let s = r;
                        for (let a = 0; a < s.length; a++) {
                            let l = s[a],
                                c = this._getOptionValue(l.value);
                            o.push(c);
                        }
                    } else {
                        let s = i.options;
                        for (let a = 0; a < s.length; a++) {
                            let l = s[a];
                            if (l.selected) {
                                let c = this._getOptionValue(l.value);
                                o.push(c);
                            }
                        }
                    }
                    this.value = o, t(o);
                };
            }
            _registerOption(t) {
                let i = (this._idCounter++).toString();
                return this._optionMap.set(i, t), i;
            }
            _getOptionId(t) {
                for (let i of this._optionMap.keys())
                    if (this._compareWith(this._optionMap.get(i)._value, t)) return i;
                return null;
            }
            _getOptionValue(t) {
                let i = Or(t);
                return this._optionMap.has(i) ? this._optionMap.get(i)._value : t;
            }
            static ɵfac = (() => {
                let t;
                return function(o) {
                    return (t || (t = _(e)))(o || e);
                };
            })();
            static ɵdir = b({
                type: e,
                selectors: [
                    ["select", "multiple", "", "formControlName", ""],
                    ["select", "multiple", "", "formControl", ""],
                    ["select", "multiple", "", "ngModel", ""]
                ],
                hostBindings: function(i, o) {
                    i & 1 && gt("change", function(s) {
                        return o.onChange(s.target);
                    })("blur", function() {
                        return o.onTouched();
                    });
                },
                inputs: {
                    compareWith: "compareWith"
                },
                standalone: !1,
                features: [A([Tr]), y]
            });
        }
        return e;
    })(),
    ga = (() => {
        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) {
                this._select != null && (this._value = t, this._setElementValue(fn(this.id, t)), this._select.writeValue(this._select.value));
            }
            set value(t) {
                this._select ? (this._value = t, this._setElementValue(fn(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 ɵfac = function(i) {
                return new(i || e)(f(lt), f(wt), f(Bn, 9));
            };
            static ɵdir = b({
                type: e,
                selectors: [
                    ["option"]
                ],
                inputs: {
                    ngValue: "ngValue",
                    value: "value"
                },
                standalone: !1
            });
        }
        return e;
    })();

function Mr(e) {
    return typeof e == "number" ? e : parseInt(e, 10);
}
var Hn = (() => {
    class e {
        _validator = Oe;
        _onChange;
        _enabled;
        ngOnChanges(t) {
            if (this.inputName in t) {
                let i = this.normalizeInput(t[this.inputName].currentValue);
                this._enabled = this.enabled(i), this._validator = this._enabled ? this.createValidator(i) : Oe, this._onChange && this._onChange();
            }
        }
        validate(t) {
            return this._validator(t);
        }
        registerOnValidatorChange(t) {
            this._onChange = t;
        }
        enabled(t) {
            return t != null;
        }
        static ɵfac = function(i) {
            return new(i || e)();
        };
        static ɵdir = b({
            type: e,
            features: [z]
        });
    }
    return e;
})();
var Fr = {
    provide: bt,
    useExisting: P(() => Nr),
    multi: !0
};
var Nr = (() => {
    class e extends Hn {
        required;
        inputName = "required";
        normalizeInput = D;
        createValidator = t => yn;
        enabled(t) {
            return t;
        }
        static ɵfac = (() => {
            let t;
            return function(o) {
                return (t || (t = _(e)))(o || e);
            };
        })();
        static ɵdir = b({
            type: e,
            selectors: [
                ["", "required", "", "formControlName", "", 3, "type", "checkbox"],
                ["", "required", "", "formControl", "", 3, "type", "checkbox"],
                ["", "required", "", "ngModel", "", 3, "type", "checkbox"]
            ],
            hostVars: 1,
            hostBindings: function(i, o) {
                i & 2 && R("required", o._enabled ? "" : null);
            },
            inputs: {
                required: "required"
            },
            standalone: !1,
            features: [A([Fr]), y]
        });
    }
    return e;
})();
var Vr = {
        provide: bt,
        useExisting: P(() => Lr),
        multi: !0
    },
    Lr = (() => {
        class e extends Hn {
            maxlength;
            inputName = "maxlength";
            normalizeInput = t => Mr(t);
            createValidator = t => vn(t);
            static ɵfac = (() => {
                let t;
                return function(o) {
                    return (t || (t = _(e)))(o || e);
                };
            })();
            static ɵdir = b({
                type: e,
                selectors: [
                    ["", "maxlength", "", "formControlName", ""],
                    ["", "maxlength", "", "formControl", ""],
                    ["", "maxlength", "", "ngModel", ""]
                ],
                hostVars: 1,
                hostBindings: function(i, o) {
                    i & 2 && R("maxlength", o._enabled ? o.maxlength : null);
                },
                inputs: {
                    maxlength: "maxlength"
                },
                standalone: !1,
                features: [A([Vr]), y]
            });
        }
        return e;
    })();
var Wn = (() => {
        class e {
            static ɵfac = function(i) {
                return new(i || e)();
            };
            static ɵmod = L({
                type: e
            });
            static ɵinj = V({});
        }
        return e;
    })(),
    ai = class extends $t {
        constructor(n, t, i) {
            super(ui(t), di(i, t)), this.controls = n, this._initObservables(), this._setUpdateStrategy(t), this._setUpControls(), this.updateValueAndValidity({
                onlySelf: !0,
                emitEvent: !!this.asyncValidator
            });
        }
        controls;
        at(n) {
            return this.controls[this._adjustIndex(n)];
        }
        push(n, t = {}) {
            this.controls.push(n), this._registerControl(n), this.updateValueAndValidity({
                emitEvent: t.emitEvent
            }), this._onCollectionChange();
        }
        insert(n, t, i = {}) {
            this.controls.splice(n, 0, t), this._registerControl(t), this.updateValueAndValidity({
                emitEvent: i.emitEvent
            });
        }
        removeAt(n, t = {}) {
            let i = this._adjustIndex(n);
            i < 0 && (i = 0), this.controls[i] && this.controls[i]._registerOnCollectionChange(() => {}), this.controls.splice(i, 1), this.updateValueAndValidity({
                emitEvent: t.emitEvent
            });
        }
        setControl(n, t, i = {}) {
            let o = this._adjustIndex(n);
            o < 0 && (o = 0), this.controls[o] && this.controls[o]._registerOnCollectionChange(() => {}), this.controls.splice(o, 1), t && (this.controls.splice(o, 0, t), this._registerControl(t)), this.updateValueAndValidity({
                emitEvent: i.emitEvent
            }), this._onCollectionChange();
        }
        get length() {
            return this.controls.length;
        }
        setValue(n, t = {}) {
            Fn(this, !1, n), n.forEach((i, o) => {
                Mn(this, !1, o), this.at(o).setValue(i, {
                    onlySelf: !0,
                    emitEvent: t.emitEvent
                });
            }), this.updateValueAndValidity(t);
        }
        patchValue(n, t = {}) {
            n != null && (n.forEach((i, o) => {
                this.at(o) && this.at(o).patchValue(i, {
                    onlySelf: !0,
                    emitEvent: t.emitEvent
                });
            }), this.updateValueAndValidity(t));
        }
        reset(n = [], t = {}) {
            this._forEachChild((i, o) => {
                i.reset(n[o], {
                    onlySelf: !0,
                    emitEvent: t.emitEvent
                });
            }), this._updatePristine(t, this), this._updateTouched(t, this), this.updateValueAndValidity(t);
        }
        getRawValue() {
            return this.controls.map(n => n.getRawValue());
        }
        clear(n = {}) {
            this.controls.length < 1 || (this._forEachChild(t => t._registerOnCollectionChange(() => {})), this.controls.splice(0), this.updateValueAndValidity({
                emitEvent: n.emitEvent
            }));
        }
        _adjustIndex(n) {
            return n < 0 ? n + this.length : n;
        }
        _syncPendingControls() {
            let n = this.controls.reduce((t, i) => i._syncPendingControls() ? !0 : t, !1);
            return n && this.updateValueAndValidity({
                onlySelf: !0
            }), n;
        }
        _forEachChild(n) {
            this.controls.forEach((t, i) => {
                n(t, i);
            });
        }
        _updateValue() {
            this.value = this.controls.filter(n => n.enabled || this.disabled).map(n => n.value);
        }
        _anyControls(n) {
            return this.controls.some(t => t.enabled && n(t));
        }
        _setUpControls() {
            this._forEachChild(n => this._registerControl(n));
        }
        _allControlsDisabled() {
            for (let n of this.controls)
                if (n.enabled) return !1;
            return this.controls.length > 0 || this.disabled;
        }
        _registerControl(n) {
            n.setParent(this), n._registerOnCollectionChange(this._onCollectionChange);
        }
        _find(n) {
            return this.at(n) ? ? null;
        }
    };

function gn(e) {
    return !!e && (e.asyncValidators !== void 0 || e.validators !== void 0 || e.updateOn !== void 0);
}
var ma = (() => {
    class e {
        useNonNullable = !1;
        get nonNullable() {
            let t = new e();
            return t.useNonNullable = !0, t;
        }
        group(t, i = null) {
            let o = this._reduceControls(t),
                r = {};
            return gn(i) ? r = i : i !== null && (r.validators = i.validator, r.asyncValidators = i.asyncValidator), new Le(o, r);
        }
        record(t, i = null) {
            let o = this._reduceControls(t);
            return new si(o, i);
        }
        control(t, i, o) {
            let r = {};
            return this.useNonNullable ? (gn(i) ? r = i : (r.validators = i, r.asyncValidators = o), new ne(t, Z(m({}, r), {
                nonNullable: !0
            }))) : new ne(t, i, o);
        }
        array(t, i, o) {
            let r = t.map(s => this._createControl(s));
            return new ai(r, i, o);
        }
        _reduceControls(t) {
            let i = {};
            return Object.keys(t).forEach(o => {
                i[o] = this._createControl(t[o]);
            }), i;
        }
        _createControl(t) {
            if (t instanceof ne) return t;
            if (t instanceof $t) return t;
            if (Array.isArray(t)) {
                let i = t[0],
                    o = t.length > 1 ? t[1] : null,
                    r = t.length > 2 ? t[2] : null;
                return this.control(i, o, r);
            } else return this.control(t);
        }
        static ɵfac = function(i) {
            return new(i || e)();
        };
        static ɵprov = C({
            token: e,
            factory: e.ɵfac,
            providedIn: "root"
        });
    }
    return e;
})();
var ba = (() => {
        class e {
            static withConfig(t) {
                return {
                    ngModule: e,
                    providers: [{
                        provide: oe,
                        useValue: t.callSetDisabledState ? ? We
                    }]
                };
            }
            static ɵfac = function(i) {
                return new(i || e)();
            };
            static ɵmod = L({
                type: e
            });
            static ɵinj = V({
                imports: [Wn]
            });
        }
        return e;
    })(),
    ya = (() => {
        class e {
            static withConfig(t) {
                return {
                    ngModule: e,
                    providers: [{
                        provide: gi,
                        useValue: t.warnOnNgModelWithFormControl ? ? "always"
                    }, {
                        provide: oe,
                        useValue: t.callSetDisabledState ? ? We
                    }]
                };
            }
            static ɵfac = function(i) {
                return new(i || e)();
            };
            static ɵmod = L({
                type: e
            });
            static ɵinj = V({
                imports: [Wn]
            });
        }
        return e;
    })();

function Un(e, n) {
    return e ? e.classList ? e.classList.contains(n) : new RegExp("(^| )" + n + "( |$)", "gi").test(e.className) : !1;
}

function yt(e, n) {
    if (e && n) {
        let t = i => {
            Un(e, i) || (e.classList ? e.classList.add(i) : e.className += " " + i);
        };
        [n].flat().filter(Boolean).forEach(i => i.split(" ").forEach(t));
    }
}

function Rr() {
    return window.innerWidth - document.documentElement.offsetWidth;
}

function Pt(e) {
    for (let n of document ? .styleSheets) try {
        for (let t of n ? .cssRules)
            for (let i of t ? .style)
                if (e.test(i)) return {
                    name: i,
                    value: t.style.getPropertyValue(i).trim()
                };
    } catch {}
    return null;
}

function Sa(e = "p-overflow-hidden") {
    let n = Pt(/-scrollbar-width$/);
    n ? .name && document.body.style.setProperty(n.name, Rr() + "px"), yt(document.body, e);
}

function Mt(e, n) {
    if (e && n) {
        let t = i => {
            e.classList ? e.classList.remove(i) : e.className = e.className.replace(new RegExp("(^|\\b)" + i.split(" ").join("|") + "(\\b|$)", "gi"), " ");
        };
        [n].flat().filter(Boolean).forEach(i => i.split(" ").forEach(t));
    }
}

function Ea(e = "p-overflow-hidden") {
    let n = Pt(/-scrollbar-width$/);
    n ? .name && document.body.style.removeProperty(n.name), Mt(document.body, e);
}

function Gn(e) {
    let n = {
        width: 0,
        height: 0
    };
    return e && (e.style.visibility = "hidden", e.style.display = "block", n.width = e.offsetWidth, n.height = e.offsetHeight, e.style.display = "none", e.style.visibility = "visible"), n;
}

function jn() {
    let e = window,
        n = document,
        t = n.documentElement,
        i = n.getElementsByTagName("body")[0],
        o = e.innerWidth || t.clientWidth || i.clientWidth,
        r = e.innerHeight || t.clientHeight || i.clientHeight;
    return {
        width: o,
        height: r
    };
}

function $r() {
    let e = document.documentElement;
    return (window.pageXOffset || e.scrollLeft) - (e.clientLeft || 0);
}

function kr() {
    let e = document.documentElement;
    return (window.pageYOffset || e.scrollTop) - (e.clientTop || 0);
}

function wa(e, n, t = !0) {
    var i, o, r, s;
    if (e) {
        let a = e.offsetParent ? {
                width: e.offsetWidth,
                height: e.offsetHeight
            } : Gn(e),
            l = a.height,
            c = a.width,
            u = n.offsetHeight,
            p = n.offsetWidth,
            d = n.getBoundingClientRect(),
            h = kr(),
            v = $r(),
            E = jn(),
            x, N, T = "top";
        d.top + u + l > E.height ? (x = d.top + h - l, T = "bottom", x < 0 && (x = h)) : x = u + d.top + h, d.left + c > E.width ? N = Math.max(0, d.left + v + p - c) : N = d.left + v, e.style.top = x + "px", e.style.left = N + "px", e.style.transformOrigin = T, t && (e.style.marginTop = T === "bottom" ? `calc(${(o=(i=Pt(/-anchor-gutter$/))==null?void 0:i.value)!=null?o:"2px"} * -1)` : (s = (r = Pt(/-anchor-gutter$/)) == null ? void 0 : r.value) != null ? s : "");
    }
}

function Pr(e, n) {
    e && (typeof n == "string" ? e.style.cssText = n : Object.entries(n || {}).forEach(([t, i]) => e.style[t] = i));
}

function zn(e, n) {
    if (e instanceof HTMLElement) {
        let t = e.offsetWidth;
        if (n) {
            let i = getComputedStyle(e);
            t += parseFloat(i.marginLeft) + parseFloat(i.marginRight);
        }
        return t;
    }
    return 0;
}

function Aa(e, n, t = !0) {
    var i, o, r, s;
    if (e) {
        let a = e.offsetParent ? {
                width: e.offsetWidth,
                height: e.offsetHeight
            } : Gn(e),
            l = n.offsetHeight,
            c = n.getBoundingClientRect(),
            u = jn(),
            p, d, h = "top";
        c.top + l + a.height > u.height ? (p = -1 * a.height, h = "bottom", c.top + p < 0 && (p = -1 * c.top)) : p = l, a.width > u.width ? d = c.left * -1 : c.left + a.width > u.width ? d = (c.left + a.width - u.width) * -1 : d = 0, e.style.top = p + "px", e.style.left = d + "px", e.style.transformOrigin = h, t && (e.style.marginTop = h === "bottom" ? `calc(${(o=(i=Pt(/-anchor-gutter$/))==null?void 0:i.value)!=null?o:"2px"} * -1)` : (s = (r = Pt(/-anchor-gutter$/)) == null ? void 0 : r.value) != null ? s : "");
    }
}

function Bt(e) {
    return typeof HTMLElement == "object" ? e instanceof HTMLElement : e && typeof e == "object" && e !== null && e.nodeType === 1 && typeof e.nodeName == "string";
}

function bi(e) {
    let n = e;
    return e && typeof e == "object" && (e.hasOwnProperty("current") ? n = e.current : e.hasOwnProperty("el") && (e.el.hasOwnProperty("nativeElement") ? n = e.el.nativeElement : n = e.el)), Bt(n) ? n : void 0;
}

function Da(e, n) {
    let t = bi(e);
    if (t) t.appendChild(n);
    else throw new Error("Cannot append " + n + " to " + e);
}
var mi = void 0;

function Ia(e) {
    if (e) {
        let n = getComputedStyle(e);
        return e.offsetWidth - e.clientWidth - parseFloat(n.borderLeftWidth) - parseFloat(n.borderRightWidth);
    } else {
        if (mi != null) return mi;
        let n = document.createElement("div");
        Pr(n, {
            width: "100px",
            height: "100px",
            overflow: "scroll",
            position: "absolute",
            top: "-9999px"
        }), document.body.appendChild(n);
        let t = n.offsetWidth - n.clientWidth;
        return document.body.removeChild(n), mi = t, t;
    }
}

function Ge(e, n = {}) {
    if (Bt(e)) {
        let t = (i, o) => {
            var r, s;
            let a = (r = e ? .$attrs) != null && r[i] ? [(s = e ? .$attrs) == null ? void 0 : s[i]] : [];
            return [o].flat().reduce((l, c) => {
                if (c != null) {
                    let u = typeof c;
                    if (u === "string" || u === "number") l.push(c);
                    else if (u === "object") {
                        let p = Array.isArray(c) ? t(i, c) : Object.entries(c).map(([d, h]) => i === "style" && (h || h === 0) ? `${d.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}:${h}` : h ? d : void 0);
                        l = p.length ? l.concat(p.filter(d => !!d)) : l;
                    }
                }
                return l;
            }, a);
        };
        Object.entries(n).forEach(([i, o]) => {
            if (o != null) {
                let r = i.match(/^on(.+)/);
                r ? e.addEventListener(r[1].toLowerCase(), o) : i === "p-bind" || i === "pBind" ? Ge(e, o) : (o = i === "class" ? [...new Set(t("class", o))].join(" ").trim() : i === "style" ? t("style", o).join(";").trim() : o, (e.$attrs = e.$attrs || {}) && (e.$attrs[i] = o), e.setAttribute(i, o));
            }
        });
    }
}

function xa(e, n = {}, ...t) {
    if (e) {
        let i = document.createElement(e);
        return Ge(i, n), i.append(...t), i;
    }
}

function Ta(e, n) {
    if (e) {
        e.style.opacity = "0";
        let t = +new Date(),
            i = "0",
            o = function() {
                i = `${+e.style.opacity+(new Date().getTime()-t)/n}`, e.style.opacity = i, t = +new Date(), +i < 1 && (window.requestAnimationFrame && requestAnimationFrame(o) || setTimeout(o, 16));
            };
        o();
    }
}

function Br(e, n) {
    return Bt(e) ? Array.from(e.querySelectorAll(n)) : [];
}

function Ht(e, n) {
    return Bt(e) ? e.matches(n) ? e : e.querySelector(n) : null;
}

function Oa(e, n) {
    e && document.activeElement !== e && e.focus(n);
}

function Ma(e, n) {
    if (Bt(e)) {
        let t = e.getAttribute(n);
        return isNaN(t) ? t === "true" || t === "false" ? t === "true" : t : +t;
    }
}

function qn(e, n = "") {
    let t = Br(e, `button:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${n},
            [href][clientHeight][clientWidth]:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${n},
            input:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${n},
            select:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${n},
            textarea:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${n},
            [tabIndex]:not([tabIndex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${n},
            [contenteditable]:not([tabIndex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${n}`),
        i = [];
    for (let o of t) getComputedStyle(o).display != "none" && getComputedStyle(o).visibility != "hidden" && i.push(o);
    return i;
}

function Fa(e, n) {
    let t = qn(e, n);
    return t.length > 0 ? t[0] : null;
}

function yi(e) {
    if (e) {
        let n = e.offsetHeight,
            t = getComputedStyle(e);
        return n -= parseFloat(t.paddingTop) + parseFloat(t.paddingBottom) + parseFloat(t.borderTopWidth) + parseFloat(t.borderBottomWidth), n;
    }
    return 0;
}

function Na(e) {
    if (e) {
        e.style.visibility = "hidden", e.style.display = "block";
        let n = e.offsetHeight;
        return e.style.display = "none", e.style.visibility = "visible", n;
    }
    return 0;
}

function Va(e) {
    if (e) {
        e.style.visibility = "hidden", e.style.display = "block";
        let n = e.offsetWidth;
        return e.style.display = "none", e.style.visibility = "visible", n;
    }
    return 0;
}

function Kn(e) {
    if (e) {
        let n = e.parentNode;
        return n && n instanceof ShadowRoot && n.host && (n = n.host), n;
    }
    return null;
}

function La(e) {
    var n;
    if (e) {
        let t = (n = Kn(e)) == null ? void 0 : n.childNodes,
            i = 0;
        if (t)
            for (let o = 0; o < t.length; o++) {
                if (t[o] === e) return i;
                t[o].nodeType === 1 && i++;
            }
    }
    return -1;
}

function Ra(e, n) {
    let t = qn(e, n);
    return t.length > 0 ? t[t.length - 1] : null;
}

function Yn(e) {
    if (e) {
        let n = e.getBoundingClientRect();
        return {
            top: n.top + (window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0),
            left: n.left + (window.pageXOffset || document.documentElement.scrollLeft || document.body.scrollLeft || 0)
        };
    }
    return {
        top: "auto",
        left: "auto"
    };
}

function vi(e, n) {
    if (e) {
        let t = e.offsetHeight;
        if (n) {
            let i = getComputedStyle(e);
            t += parseFloat(i.marginTop) + parseFloat(i.marginBottom);
        }
        return t;
    }
    return 0;
}

function $a() {
    if (window.getSelection) return window.getSelection().toString();
    if (document.getSelection) return document.getSelection().toString();
}

function Hr(e) {
    return !!(e !== null && typeof e < "u" && e.nodeName && Kn(e));
}

function ka(e, n) {
    var t;
    if (e) switch (e) {
        case "document":
            return document;
        case "window":
            return window;
        case "body":
            return document.body;
        case "@next":
            return n ? .nextElementSibling;
        case "@prev":
            return n ? .previousElementSibling;
        case "@parent":
            return n ? .parentElement;
        case "@grandparent":
            return (t = n ? .parentElement) == null ? void 0 : t.parentElement;
        default:
            if (typeof e == "string") return document.querySelector(e);
            let o = bi((r => !!(r && r.constructor && r.call && r.apply))(e) ? e() : e);
            return o ? .nodeType === 9 || Hr(o) ? o : void 0;
    }
}

function _i(e) {
    if (e) {
        let n = e.offsetWidth,
            t = getComputedStyle(e);
        return n -= parseFloat(t.paddingLeft) + parseFloat(t.paddingRight) + parseFloat(t.borderLeftWidth) + parseFloat(t.borderRightWidth), n;
    }
    return 0;
}

function Pa() {
    return /(android)/i.test(navigator.userAgent);
}

function Wr(e) {
    return !!(e && e.offsetParent != null);
}

function Ba(e) {
    return !Wr(e);
}

function Ha() {
    return /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream;
}

function Wa(e) {
    return e ? getComputedStyle(e).direction === "rtl" : !1;
}

function Ua() {
    return "ontouchstart" in window || navigator.maxTouchPoints > 0 || navigator.msMaxTouchPoints > 0;
}

function Zn(e) {
    var n;
    e && ("remove" in Element.prototype ? e.remove() : (n = e.parentNode) == null || n.removeChild(e));
}

function Ga(e, n) {
    let t = bi(e);
    if (t) t.removeChild(n);
    else throw new Error("Cannot remove " + n + " from " + e);
}

function ja(e, n) {
    let t = getComputedStyle(e).getPropertyValue("borderTopWidth"),
        i = t ? parseFloat(t) : 0,
        o = getComputedStyle(e).getPropertyValue("paddingTop"),
        r = o ? parseFloat(o) : 0,
        s = e.getBoundingClientRect(),
        l = n.getBoundingClientRect().top + document.body.scrollTop - (s.top + document.body.scrollTop) - i - r,
        c = e.scrollTop,
        u = e.clientHeight,
        p = vi(n);
    l < 0 ? e.scrollTop = c + l : l + p > u && (e.scrollTop = c + l - u + p);
}

function za(e, n = "", t) {
    Bt(e) && t !== null && t !== void 0 && e.setAttribute(n, t);
}

function Qn() {
    let e = new Map();
    return {
        on(n, t) {
            let i = e.get(n);
            return i ? i.push(t) : i = [t], e.set(n, i), this;
        },
        off(n, t) {
            let i = e.get(n);
            return i && i.splice(i.indexOf(t) >>> 0, 1), this;
        },
        emit(n, t) {
            let i = e.get(n);
            i && i.slice().map(o => {
                o(t);
            });
        },
        clear() {
            e.clear();
        }
    };
}
var Ur = Object.defineProperty,
    Xn = Object.getOwnPropertySymbols,
    Gr = Object.prototype.hasOwnProperty,
    jr = Object.prototype.propertyIsEnumerable,
    Jn = (e, n, t) => n in e ? Ur(e, n, {
        enumerable: !0,
        configurable: !0,
        writable: !0,
        value: t
    }) : e[n] = t,
    zr = (e, n) => {
        for (var t in n || (n = {})) Gr.call(n, t) && Jn(e, t, n[t]);
        if (Xn)
            for (var t of Xn(n)) jr.call(n, t) && Jn(e, t, n[t]);
        return e;
    };

function F(e) {
    return e == null || e === "" || Array.isArray(e) && e.length === 0 || !(e instanceof Date) && typeof e == "object" && Object.keys(e).length === 0;
}

function Ci(e, n, t = new WeakSet()) {
    if (e === n) return !0;
    if (!e || !n || typeof e != "object" || typeof n != "object" || t.has(e) || t.has(n)) return !1;
    t.add(e).add(n);
    let i = Array.isArray(e),
        o = Array.isArray(n),
        r, s, a;
    if (i && o) {
        if (s = e.length, s != n.length) return !1;
        for (r = s; r-- !== 0;)
            if (!Ci(e[r], n[r], t)) return !1;
        return !0;
    }
    if (i != o) return !1;
    let l = e instanceof Date,
        c = n instanceof Date;
    if (l != c) return !1;
    if (l && c) return e.getTime() == n.getTime();
    let u = e instanceof RegExp,
        p = n instanceof RegExp;
    if (u != p) return !1;
    if (u && p) return e.toString() == n.toString();
    let d = Object.keys(e);
    if (s = d.length, s !== Object.keys(n).length) return !1;
    for (r = s; r-- !== 0;)
        if (!Object.prototype.hasOwnProperty.call(n, d[r])) return !1;
    for (r = s; r-- !== 0;)
        if (a = d[r], !Ci(e[a], n[a], t)) return !1;
    return !0;
}

function qr(e, n) {
    return Ci(e, n);
}

function eo(e) {
    return !!(e && e.constructor && e.call && e.apply);
}

function w(e) {
    return !F(e);
}

function je(e, n) {
    if (!e || !n) return null;
    try {
        let t = e[n];
        if (w(t)) return t;
    } catch {}
    if (Object.keys(e).length) {
        if (eo(n)) return n(e);
        if (n.indexOf(".") === -1) return e[n]; {
            let t = n.split("."),
                i = e;
            for (let o = 0, r = t.length; o < r; ++o) {
                if (i == null) return null;
                i = i[t[o]];
            }
            return i;
        }
    }
    return null;
}

function Si(e, n, t) {
    return t ? je(e, t) === je(n, t) : qr(e, n);
}

function Za(e, n) {
    if (e != null && n && n.length) {
        for (let t of n)
            if (Si(e, t)) return !0;
    }
    return !1;
}

function Qa(e, n) {
    let t = -1;
    if (n) {
        for (let i = 0; i < n.length; i++)
            if (n[i] === e) {
                t = i;
                break;
            }
    }
    return t;
}

function Xa(e, n) {
    let t = -1;
    if (w(e)) try {
        t = e.findLastIndex(n);
    } catch {
        t = e.lastIndexOf([...e].reverse().find(n));
    }
    return t;
}

function J(e, n = !0) {
    return e instanceof Object && e.constructor === Object && (n || Object.keys(e).length !== 0);
}

function K(e, ...n) {
    return eo(e) ? e(...n) : e;
}

function vt(e, n = !0) {
    return typeof e == "string" && (n || e !== "");
}

function to(e) {
    return vt(e) ? e.replace(/(-|_)/g, "").toLowerCase() : e;
}

function ze(e, n = "", t = {}) {
    let i = to(n).split("."),
        o = i.shift();
    return o ? J(e) ? ze(K(e[Object.keys(e).find(r => to(r) === o) || ""], t), i.join("."), t) : void 0 : K(e, t);
}

function qe(e, n = !0) {
    return Array.isArray(e) && (n || e.length !== 0);
}

function Ja(e) {
    return e instanceof Date && e.constructor === Date;
}

function io(e) {
    return w(e) && !isNaN(e);
}

function tl(e = "") {
    return w(e) && e.length === 1 && !!e.match(/\S| /);
}

function W(e, n) {
    if (n) {
        let t = n.test(e);
        return n.lastIndex = 0, t;
    }
    return !1;
}

function re(...e) {
    let n = (t = {}, i = {}) => {
        let o = zr({}, t);
        return Object.keys(i).forEach(r => {
            J(i[r]) && r in t && J(t[r]) ? o[r] = n(t[r], i[r]) : o[r] = i[r];
        }), o;
    };
    return e.reduce((t, i, o) => o === 0 ? i : n(t, i), {});
}

function Ft(e) {
    return e && e.replace(/\/\*(?:(?!\*\/)[\s\S])*\*\/|[\r\n\t]+/g, "").replace(/ {2,}/g, " ").replace(/ ([{:}]) /g, "$1").replace(/([;,]) /g, "$1").replace(/ !/g, "!").replace(/: /g, ":");
}

function U(e) {
    if (e && /[\xC0-\xFF\u0100-\u017E]/.test(e)) {
        let t = {
            A: /[\xC0-\xC5\u0100\u0102\u0104]/g,
            AE: /[\xC6]/g,
            C: /[\xC7\u0106\u0108\u010A\u010C]/g,
            D: /[\xD0\u010E\u0110]/g,
            E: /[\xC8-\xCB\u0112\u0114\u0116\u0118\u011A]/g,
            G: /[\u011C\u011E\u0120\u0122]/g,
            H: /[\u0124\u0126]/g,
            I: /[\xCC-\xCF\u0128\u012A\u012C\u012E\u0130]/g,
            IJ: /[\u0132]/g,
            J: /[\u0134]/g,
            K: /[\u0136]/g,
            L: /[\u0139\u013B\u013D\u013F\u0141]/g,
            N: /[\xD1\u0143\u0145\u0147\u014A]/g,
            O: /[\xD2-\xD6\xD8\u014C\u014E\u0150]/g,
            OE: /[\u0152]/g,
            R: /[\u0154\u0156\u0158]/g,
            S: /[\u015A\u015C\u015E\u0160]/g,
            T: /[\u0162\u0164\u0166]/g,
            U: /[\xD9-\xDC\u0168\u016A\u016C\u016E\u0170\u0172]/g,
            W: /[\u0174]/g,
            Y: /[\xDD\u0176\u0178]/g,
            Z: /[\u0179\u017B\u017D]/g,
            a: /[\xE0-\xE5\u0101\u0103\u0105]/g,
            ae: /[\xE6]/g,
            c: /[\xE7\u0107\u0109\u010B\u010D]/g,
            d: /[\u010F\u0111]/g,
            e: /[\xE8-\xEB\u0113\u0115\u0117\u0119\u011B]/g,
            g: /[\u011D\u011F\u0121\u0123]/g,
            i: /[\xEC-\xEF\u0129\u012B\u012D\u012F\u0131]/g,
            ij: /[\u0133]/g,
            j: /[\u0135]/g,
            k: /[\u0137,\u0138]/g,
            l: /[\u013A\u013C\u013E\u0140\u0142]/g,
            n: /[\xF1\u0144\u0146\u0148\u014B]/g,
            p: /[\xFE]/g,
            o: /[\xF2-\xF6\xF8\u014D\u014F\u0151]/g,
            oe: /[\u0153]/g,
            r: /[\u0155\u0157\u0159]/g,
            s: /[\u015B\u015D\u015F\u0161]/g,
            t: /[\u0163\u0165\u0167]/g,
            u: /[\xF9-\xFC\u0169\u016B\u016D\u016F\u0171\u0173]/g,
            w: /[\u0175]/g,
            y: /[\xFD\xFF\u0177]/g,
            z: /[\u017A\u017C\u017E]/g
        };
        for (let i in t) e = e.replace(t[i], i);
    }
    return e;
}

function Ke(e) {
    return vt(e) ? e.replace(/(_)/g, "-").replace(/[A-Z]/g, (n, t) => t === 0 ? n : "-" + n.toLowerCase()).toLowerCase() : e;
}

function Ei(e) {
    return vt(e) ? e.replace(/[A-Z]/g, (n, t) => t === 0 ? n : "." + n.toLowerCase()).toLowerCase() : e;
}
var Ye = {};

function se(e = "pui_id_") {
    return Ye.hasOwnProperty(e) || (Ye[e] = 0), Ye[e]++, `${e}${Ye[e]}`;
}

function Kr() {
    let e = [],
        n = (s, a, l = 999) => {
            let c = o(s, a, l),
                u = c.value + (c.key === s ? 0 : l) + 1;
            return e.push({
                key: s,
                value: u
            }), u;
        },
        t = s => {
            e = e.filter(a => a.value !== s);
        },
        i = (s, a) => o(s, a).value,
        o = (s, a, l = 0) => [...e].reverse().find(c => a ? !0 : c.key === s) || {
            key: s,
            value: l
        },
        r = s => s && parseInt(s.style.zIndex, 10) || 0;
    return {
        get: r,
        set: (s, a, l) => {
            a && (a.style.zIndex = String(n(s, !0, l)));
        },
        clear: s => {
            s && (t(r(s)), s.style.zIndex = "");
        },
        getCurrent: s => i(s, !0)
    };
}
var nl = Kr();
var no = ["*"];
var O = (() => {
        class e {
            static STARTS_WITH = "startsWith";
            static CONTAINS = "contains";
            static NOT_CONTAINS = "notContains";
            static ENDS_WITH = "endsWith";
            static EQUALS = "equals";
            static NOT_EQUALS = "notEquals";
            static IN = "in";
            static LESS_THAN = "lt";
            static LESS_THAN_OR_EQUAL_TO = "lte";
            static GREATER_THAN = "gt";
            static GREATER_THAN_OR_EQUAL_TO = "gte";
            static BETWEEN = "between";
            static IS = "is";
            static IS_NOT = "isNot";
            static BEFORE = "before";
            static AFTER = "after";
            static DATE_IS = "dateIs";
            static DATE_IS_NOT = "dateIsNot";
            static DATE_BEFORE = "dateBefore";
            static DATE_AFTER = "dateAfter";
        }
        return e;
    })(),
    ml = (() => {
        class e {
            static AND = "and";
            static OR = "or";
        }
        return e;
    })(),
    bl = (() => {
        class e {
            filter(t, i, o, r, s) {
                let a = [];
                if (t)
                    for (let l of t)
                        for (let c of i) {
                            let u = je(l, c);
                            if (this.filters[r](u, o, s)) {
                                a.push(l);
                                break;
                            }
                        }
                return a;
            }
            filters = {
                startsWith: (t, i, o) => {
                    if (i == null || i.trim() === "") return !0;
                    if (t == null) return !1;
                    let r = U(i.toString()).toLocaleLowerCase(o);
                    return U(t.toString()).toLocaleLowerCase(o).slice(0, r.length) === r;
                },
                contains: (t, i, o) => {
                    if (i == null || typeof i == "string" && i.trim() === "") return !0;
                    if (t == null) return !1;
                    let r = U(i.toString()).toLocaleLowerCase(o);
                    return U(t.toString()).toLocaleLowerCase(o).indexOf(r) !== -1;
                },
                notContains: (t, i, o) => {
                    if (i == null || typeof i == "string" && i.trim() === "") return !0;
                    if (t == null) return !1;
                    let r = U(i.toString()).toLocaleLowerCase(o);
                    return U(t.toString()).toLocaleLowerCase(o).indexOf(r) === -1;
                },
                endsWith: (t, i, o) => {
                    if (i == null || i.trim() === "") return !0;
                    if (t == null) return !1;
                    let r = U(i.toString()).toLocaleLowerCase(o),
                        s = U(t.toString()).toLocaleLowerCase(o);
                    return s.indexOf(r, s.length - r.length) !== -1;
                },
                equals: (t, i, o) => i == null || typeof i == "string" && i.trim() === "" ? !0 : t == null ? !1 : t.getTime && i.getTime ? t.getTime() === i.getTime() : t == i ? !0 : U(t.toString()).toLocaleLowerCase(o) == U(i.toString()).toLocaleLowerCase(o),
                notEquals: (t, i, o) => i == null || typeof i == "string" && i.trim() === "" ? !1 : t == null ? !0 : t.getTime && i.getTime ? t.getTime() !== i.getTime() : t == i ? !1 : U(t.toString()).toLocaleLowerCase(o) != U(i.toString()).toLocaleLowerCase(o),
                in: (t, i) => {
                    if (i == null || i.length === 0) return !0;
                    for (let o = 0; o < i.length; o++)
                        if (Si(t, i[o])) return !0;
                    return !1;
                },
                between: (t, i) => i == null || i[0] == null || i[1] == null ? !0 : t == null ? !1 : t.getTime ? i[0].getTime() <= t.getTime() && t.getTime() <= i[1].getTime() : i[0] <= t && t <= i[1],
                lt: (t, i, o) => i == null ? !0 : t == null ? !1 : t.getTime && i.getTime ? t.getTime() < i.getTime() : t < i,
                lte: (t, i, o) => i == null ? !0 : t == null ? !1 : t.getTime && i.getTime ? t.getTime() <= i.getTime() : t <= i,
                gt: (t, i, o) => i == null ? !0 : t == null ? !1 : t.getTime && i.getTime ? t.getTime() > i.getTime() : t > i,
                gte: (t, i, o) => i == null ? !0 : t == null ? !1 : t.getTime && i.getTime ? t.getTime() >= i.getTime() : t >= i,
                is: (t, i, o) => this.filters.equals(t, i, o),
                isNot: (t, i, o) => this.filters.notEquals(t, i, o),
                before: (t, i, o) => this.filters.lt(t, i, o),
                after: (t, i, o) => this.filters.gt(t, i, o),
                dateIs: (t, i) => i == null ? !0 : t == null ? !1 : t.toDateString() === i.toDateString(),
                dateIsNot: (t, i) => i == null ? !0 : t == null ? !1 : t.toDateString() !== i.toDateString(),
                dateBefore: (t, i) => i == null ? !0 : t == null ? !1 : t.getTime() < i.getTime(),
                dateAfter: (t, i) => i == null ? !0 : t == null ? !1 : (t.setHours(0, 0, 0, 0), t.getTime() > i.getTime())
            };
            register(t, i) {
                this.filters[t] = i;
            }
            static ɵfac = function(i) {
                return new(i || e)();
            };
            static ɵprov = C({
                token: e,
                factory: e.ɵfac,
                providedIn: "root"
            });
        }
        return e;
    })(),
    yl = (() => {
        class e {
            messageSource = new it();
            clearSource = new it();
            messageObserver = this.messageSource.asObservable();
            clearObserver = this.clearSource.asObservable();
            add(t) {
                t && this.messageSource.next(t);
            }
            addAll(t) {
                t && t.length && this.messageSource.next(t);
            }
            clear(t) {
                this.clearSource.next(t || null);
            }
            static ɵfac = function(i) {
                return new(i || e)();
            };
            static ɵprov = C({
                token: e,
                factory: e.ɵfac
            });
        }
        return e;
    })(),
    vl = (() => {
        class e {
            clickSource = new it();
            clickObservable = this.clickSource.asObservable();
            add(t) {
                t && this.clickSource.next(t);
            }
            static ɵfac = function(i) {
                return new(i || e)();
            };
            static ɵprov = C({
                token: e,
                factory: e.ɵfac,
                providedIn: "root"
            });
        }
        return e;
    })();
var _l = (() => {
        class e {
            static ɵfac = function(i) {
                return new(i || e)();
            };
            static ɵcmp = B({
                type: e,
                selectors: [
                    ["p-header"]
                ],
                standalone: !1,
                ngContentSelectors: no,
                decls: 1,
                vars: 0,
                template: function(i, o) {
                    i & 1 && (It(), xt(0));
                },
                encapsulation: 2
            });
        }
        return e;
    })(),
    Cl = (() => {
        class e {
            static ɵfac = function(i) {
                return new(i || e)();
            };
            static ɵcmp = B({
                type: e,
                selectors: [
                    ["p-footer"]
                ],
                standalone: !1,
                ngContentSelectors: no,
                decls: 1,
                vars: 0,
                template: function(i, o) {
                    i & 1 && (It(), xt(0));
                },
                encapsulation: 2
            });
        }
        return e;
    })(),
    oo = (() => {
        class e {
            template;
            type;
            name;
            constructor(t) {
                this.template = t;
            }
            getType() {
                return this.name;
            }
            static ɵfac = function(i) {
                return new(i || e)(f(Gi));
            };
            static ɵdir = b({
                type: e,
                selectors: [
                    ["", "pTemplate", ""]
                ],
                inputs: {
                    type: "type",
                    name: [0, "pTemplate", "name"]
                }
            });
        }
        return e;
    })(),
    _t = (() => {
        class e {
            static ɵfac = function(i) {
                return new(i || e)();
            };
            static ɵmod = L({
                type: e
            });
            static ɵinj = V({
                imports: [Tt]
            });
        }
        return e;
    })(),
    Sl = (() => {
        class e {
            static STARTS_WITH = "startsWith";
            static CONTAINS = "contains";
            static NOT_CONTAINS = "notContains";
            static ENDS_WITH = "endsWith";
            static EQUALS = "equals";
            static NOT_EQUALS = "notEquals";
            static NO_FILTER = "noFilter";
            static LT = "lt";
            static LTE = "lte";
            static GT = "gt";
            static GTE = "gte";
            static IS = "is";
            static IS_NOT = "isNot";
            static BEFORE = "before";
            static AFTER = "after";
            static CLEAR = "clear";
            static APPLY = "apply";
            static MATCH_ALL = "matchAll";
            static MATCH_ANY = "matchAny";
            static ADD_RULE = "addRule";
            static REMOVE_RULE = "removeRule";
            static ACCEPT = "accept";
            static REJECT = "reject";
            static CHOOSE = "choose";
            static UPLOAD = "upload";
            static CANCEL = "cancel";
            static PENDING = "pending";
            static FILE_SIZE_TYPES = "fileSizeTypes";
            static DAY_NAMES = "dayNames";
            static DAY_NAMES_SHORT = "dayNamesShort";
            static DAY_NAMES_MIN = "dayNamesMin";
            static MONTH_NAMES = "monthNames";
            static MONTH_NAMES_SHORT = "monthNamesShort";
            static FIRST_DAY_OF_WEEK = "firstDayOfWeek";
            static TODAY = "today";
            static WEEK_HEADER = "weekHeader";
            static WEAK = "weak";
            static MEDIUM = "medium";
            static STRONG = "strong";
            static PASSWORD_PROMPT = "passwordPrompt";
            static EMPTY_MESSAGE = "emptyMessage";
            static EMPTY_FILTER_MESSAGE = "emptyFilterMessage";
            static SHOW_FILTER_MENU = "showFilterMenu";
            static HIDE_FILTER_MENU = "hideFilterMenu";
            static SELECTION_MESSAGE = "selectionMessage";
            static ARIA = "aria";
            static SELECT_COLOR = "selectColor";
            static BROWSE_FILES = "browseFiles";
        }
        return e;
    })(),
    El = (() => {
        class e {
            dragStartSource = new it();
            dragStopSource = new it();
            dragStart$ = this.dragStartSource.asObservable();
            dragStop$ = this.dragStopSource.asObservable();
            startDrag(t) {
                this.dragStartSource.next(t);
            }
            stopDrag(t) {
                this.dragStopSource.next(t);
            }
            static ɵfac = function(i) {
                return new(i || e)();
            };
            static ɵprov = C({
                token: e,
                factory: e.ɵfac
            });
        }
        return e;
    })();
var Yr = Object.defineProperty,
    Zr = Object.defineProperties,
    Qr = Object.getOwnPropertyDescriptors,
    Ze = Object.getOwnPropertySymbols,
    ao = Object.prototype.hasOwnProperty,
    lo = Object.prototype.propertyIsEnumerable,
    ro = (e, n, t) => n in e ? Yr(e, n, {
        enumerable: !0,
        configurable: !0,
        writable: !0,
        value: t
    }) : e[n] = t,
    et = (e, n) => {
        for (var t in n || (n = {})) ao.call(n, t) && ro(e, t, n[t]);
        if (Ze)
            for (var t of Ze(n)) lo.call(n, t) && ro(e, t, n[t]);
        return e;
    },
    wi = (e, n) => Zr(e, Qr(n)),
    ut = (e, n) => {
        var t = {};
        for (var i in e) ao.call(e, i) && n.indexOf(i) < 0 && (t[i] = e[i]);
        if (e != null && Ze)
            for (var i of Ze(e)) n.indexOf(i) < 0 && lo.call(e, i) && (t[i] = e[i]);
        return t;
    };

function Dl(...e) {
    return re(...e);
}
var Xr = Qn(),
    G = Xr;

function so(e, n) {
    qe(e) ? e.push(...(n || [])) : J(e) && Object.assign(e, n);
}

function Jr(e) {
    return J(e) && e.hasOwnProperty("value") && e.hasOwnProperty("type") ? e.value : e;
}

function ts(e) {
    return e.replaceAll(/ /g, "").replace(/[^\w]/g, "-");
}

function Ai(e = "", n = "") {
    return ts(`${vt(e,!1)&&vt(n,!1)?`${e}-`:e}${n}`);
}

function co(e = "", n = "") {
    return `--${Ai(e,n)}`;
}

function es(e = "") {
    let n = (e.match(/{/g) || []).length,
        t = (e.match(/}/g) || []).length;
    return (n + t) % 2 !== 0;
}

function uo(e, n = "", t = "", i = [], o) {
    if (vt(e)) {
        let r = /{([^}]*)}/g,
            s = e.trim();
        if (es(s)) return;
        if (W(s, r)) {
            let a = s.replaceAll(r, u => {
                    let d = u.replace(/{|}/g, "").split(".").filter(h => !i.some(v => W(h, v)));
                    return `var(${co(t,Ke(d.join("-")))}${w(o)?`, ${o}`:""})`;
                }),
                l = /(\d+\s+[\+\-\*\/]\s+\d+)/g,
                c = /var\([^)]+\)/g;
            return W(a.replace(c, "0"), l) ? `calc(${a})` : a;
        }
        return s;
    } else if (io(e)) return e;
}

function is(e, n, t) {
    vt(n, !1) && e.push(`${n}:${t};`);
}

function Wt(e, n) {
    return e ? `${e}{${n}}` : "";
}
var Nl = e => {
        var n;
        let t = S.getTheme(),
            i = Di(t, e, void 0, "variable"),
            o = (n = i ? .match(/--[\w-]+/g)) == null ? void 0 : n[0],
            r = Di(t, e, void 0, "value");
        return {
            name: o,
            variable: i,
            value: r
        };
    },
    Ut = (...e) => Di(S.getTheme(), ...e),
    Di = (e = {}, n, t, i) => {
        if (n) {
            let {
                variable: o,
                options: r
            } = S.defaults || {}, {
                prefix: s,
                transform: a
            } = e ? .options || r || {}, c = W(n, /{([^}]*)}/g) ? n : `{${n}}`;
            return i === "value" || F(i) && a === "strict" ? S.getTokenValue(n) : uo(c, void 0, s, [o.excludedKeyRegex], t);
        }
        return "";
    };

function ns(e, n = {}) {
    let t = S.defaults.variable,
        {
            prefix: i = t.prefix,
            selector: o = t.selector,
            excludedKeyRegex: r = t.excludedKeyRegex
        } = n,
        s = (c, u = "") => Object.entries(c).reduce((p, [d, h]) => {
            let v = W(d, r) ? Ai(u) : Ai(u, Ke(d)),
                E = Jr(h);
            if (J(E)) {
                let {
                    variables: x,
                    tokens: N
                } = s(E, v);
                so(p.tokens, N), so(p.variables, x);
            } else p.tokens.push((i ? v.replace(`${i}-`, "") : v).replaceAll("-", ".")), is(p.variables, co(v), uo(E, v, i, [r]));
            return p;
        }, {
            variables: [],
            tokens: []
        }),
        {
            variables: a,
            tokens: l
        } = s(e, i);
    return {
        value: a,
        tokens: l,
        declarations: a.join(""),
        css: Wt(o, a.join(""))
    };
}
var tt = {
        regex: {
            rules: {
                class: {
                    pattern: /^\.([a-zA-Z][\w-]*)$/, resolve(e) {
                        return {
                            type: "class",
                            selector: e,
                            matched: this.pattern.test(e.trim())
                        };
                    }
                },
                attr: {
                    pattern: /^\[(.*)\]$/,
                    resolve(e) {
                        return {
                            type: "attr",
                            selector: `:root${e}`,
                            matched: this.pattern.test(e.trim())
                        };
                    }
                },
                media: {
                    pattern: /^@media (.*)$/,
                    resolve(e) {
                        return {
                            type: "media",
                            selector: `${e}{:root{[CSS]}}`,
                            matched: this.pattern.test(e.trim())
                        };
                    }
                },
                system: {
                    pattern: /^system$/,
                    resolve(e) {
                        return {
                            type: "system",
                            selector: "@media (prefers-color-scheme: dark){:root{[CSS]}}",
                            matched: this.pattern.test(e.trim())
                        };
                    }
                },
                custom: {
                    resolve(e) {
                        return {
                            type: "custom",
                            selector: e,
                            matched: !0
                        };
                    }
                }
            },
            resolve(e) {
                let n = Object.keys(this.rules).filter(t => t !== "custom").map(t => this.rules[t]);
                return [e].flat().map(t => {
                    var i;
                    return (i = n.map(o => o.resolve(t)).find(o => o.matched)) != null ? i : this.rules.custom.resolve(t);
                });
            }
        },
        _toVariables(e, n) {
            return ns(e, {
                prefix: n ? .prefix
            });
        },
        getCommon({
            name: e = "",
            theme: n = {},
            params: t,
            set: i,
            defaults: o
        }) {
            var r, s, a, l, c, u, p;
            let {
                preset: d,
                options: h
            } = n, v, E, x, N, T, Et, Y;
            if (w(d) && h.transform !== "strict") {
                let {
                    primitive: ae,
                    semantic: le,
                    extend: ce
                } = d, jt = le || {}, {
                    colorScheme: ue
                } = jt, de = ut(jt, ["colorScheme"]), pe = ce || {}, {
                    colorScheme: he
                } = pe, zt = ut(pe, ["colorScheme"]), qt = ue || {}, {
                    dark: fe
                } = qt, ge = ut(qt, ["dark"]), me = he || {}, {
                    dark: be
                } = me, ye = ut(me, ["dark"]), ve = w(ae) ? this._toVariables({
                    primitive: ae
                }, h) : {}, _e = w(de) ? this._toVariables({
                    semantic: de
                }, h) : {}, Ce = w(ge) ? this._toVariables({
                    light: ge
                }, h) : {}, Ni = w(fe) ? this._toVariables({
                    dark: fe
                }, h) : {}, Vi = w(zt) ? this._toVariables({
                    semantic: zt
                }, h) : {}, Li = w(ye) ? this._toVariables({
                    light: ye
                }, h) : {}, Ri = w(be) ? this._toVariables({
                    dark: be
                }, h) : {}, [Io, xo] = [(r = ve.declarations) != null ? r : "", ve.tokens], [To, Oo] = [(s = _e.declarations) != null ? s : "", _e.tokens || []], [Mo, Fo] = [(a = Ce.declarations) != null ? a : "", Ce.tokens || []], [No, Vo] = [(l = Ni.declarations) != null ? l : "", Ni.tokens || []], [Lo, Ro] = [(c = Vi.declarations) != null ? c : "", Vi.tokens || []], [$o, ko] = [(u = Li.declarations) != null ? u : "", Li.tokens || []], [Po, Bo] = [(p = Ri.declarations) != null ? p : "", Ri.tokens || []];
                v = this.transformCSS(e, Io, "light", "variable", h, i, o), E = xo;
                let Ho = this.transformCSS(e, `${To}${Mo}`, "light", "variable", h, i, o),
                    Wo = this.transformCSS(e, `${No}`, "dark", "variable", h, i, o);
                x = `${Ho}${Wo}`, N = [...new Set([...Oo, ...Fo, ...Vo])];
                let Uo = this.transformCSS(e, `${Lo}${$o}color-scheme:light`, "light", "variable", h, i, o),
                    Go = this.transformCSS(e, `${Po}color-scheme:dark`, "dark", "variable", h, i, o);
                T = `${Uo}${Go}`, Et = [...new Set([...Ro, ...ko, ...Bo])], Y = K(d.css, {
                    dt: Ut
                });
            }
            return {
                primitive: {
                    css: v,
                    tokens: E
                },
                semantic: {
                    css: x,
                    tokens: N
                },
                global: {
                    css: T,
                    tokens: Et
                },
                style: Y
            };
        },
        getPreset({
            name: e = "",
            preset: n = {},
            options: t,
            params: i,
            set: o,
            defaults: r,
            selector: s
        }) {
            var a, l, c;
            let u, p, d;
            if (w(n) && t.transform !== "strict") {
                let h = e.replace("-directive", ""),
                    v = n,
                    {
                        colorScheme: E,
                        extend: x,
                        css: N
                    } = v,
                    T = ut(v, ["colorScheme", "extend", "css"]),
                    Et = x || {},
                    {
                        colorScheme: Y
                    } = Et,
                    ae = ut(Et, ["colorScheme"]),
                    le = E || {},
                    {
                        dark: ce
                    } = le,
                    jt = ut(le, ["dark"]),
                    ue = Y || {},
                    {
                        dark: de
                    } = ue,
                    pe = ut(ue, ["dark"]),
                    he = w(T) ? this._toVariables({
                        [h]: et(et({}, T), ae)
                    }, t) : {},
                    zt = w(jt) ? this._toVariables({
                        [h]: et(et({}, jt), pe)
                    }, t) : {},
                    qt = w(ce) ? this._toVariables({
                        [h]: et(et({}, ce), de)
                    }, t) : {},
                    [fe, ge] = [(a = he.declarations) != null ? a : "", he.tokens || []],
                    [me, be] = [(l = zt.declarations) != null ? l : "", zt.tokens || []],
                    [ye, ve] = [(c = qt.declarations) != null ? c : "", qt.tokens || []],
                    _e = this.transformCSS(h, `${fe}${me}`, "light", "variable", t, o, r, s),
                    Ce = this.transformCSS(h, ye, "dark", "variable", t, o, r, s);
                u = `${_e}${Ce}`, p = [...new Set([...ge, ...be, ...ve])], d = K(N, {
                    dt: Ut
                });
            }
            return {
                css: u,
                tokens: p,
                style: d
            };
        },
        getPresetC({
            name: e = "",
            theme: n = {},
            params: t,
            set: i,
            defaults: o
        }) {
            var r;
            let {
                preset: s,
                options: a
            } = n, l = (r = s ? .components) == null ? void 0 : r[e];
            return this.getPreset({
                name: e,
                preset: l,
                options: a,
                params: t,
                set: i,
                defaults: o
            });
        },
        getPresetD({
            name: e = "",
            theme: n = {},
            params: t,
            set: i,
            defaults: o
        }) {
            var r;
            let s = e.replace("-directive", ""),
                {
                    preset: a,
                    options: l
                } = n,
                c = (r = a ? .directives) == null ? void 0 : r[s];
            return this.getPreset({
                name: s,
                preset: c,
                options: l,
                params: t,
                set: i,
                defaults: o
            });
        },
        applyDarkColorScheme(e) {
            return !(e.darkModeSelector === "none" || e.darkModeSelector === !1);
        },
        getColorSchemeOption(e, n) {
            var t;
            return this.applyDarkColorScheme(e) ? this.regex.resolve(e.darkModeSelector === !0 ? n.options.darkModeSelector : (t = e.darkModeSelector) != null ? t : n.options.darkModeSelector) : [];
        },
        getLayerOrder(e, n = {}, t, i) {
            let {
                cssLayer: o
            } = n;
            return o ? `@layer ${K(o.order||"primeui",t)}` : "";
        },
        getCommonStyleSheet({
            name: e = "",
            theme: n = {},
            params: t,
            props: i = {},
            set: o,
            defaults: r
        }) {
            let s = this.getCommon({
                    name: e,
                    theme: n,
                    params: t,
                    set: o,
                    defaults: r
                }),
                a = Object.entries(i).reduce((l, [c, u]) => l.push(`${c}="${u}"`) && l, []).join(" ");
            return Object.entries(s || {}).reduce((l, [c, u]) => {
                if (u ? .css) {
                    let p = Ft(u ? .css),
                        d = `${c}-variables`;
                    l.push(`<style type="text/css" data-primevue-style-id="${d}" ${a}>${p}</style>`);
                }
                return l;
            }, []).join("");
        },
        getStyleSheet({
            name: e = "",
            theme: n = {},
            params: t,
            props: i = {},
            set: o,
            defaults: r
        }) {
            var s;
            let a = {
                    name: e,
                    theme: n,
                    params: t,
                    set: o,
                    defaults: r
                },
                l = (s = e.includes("-directive") ? this.getPresetD(a) : this.getPresetC(a)) == null ? void 0 : s.css,
                c = Object.entries(i).reduce((u, [p, d]) => u.push(`${p}="${d}"`) && u, []).join(" ");
            return l ? `<style type="text/css" data-primevue-style-id="${e}-variables" ${c}>${Ft(l)}</style>` : "";
        },
        createTokens(e = {}, n, t = "", i = "", o = {}) {
            return Object.entries(e).forEach(([r, s]) => {
                let a = W(r, n.variable.excludedKeyRegex) ? t : t ? `${t}.${Ei(r)}` : Ei(r),
                    l = i ? `${i}.${r}` : r;
                J(s) ? this.createTokens(s, n, a, l, o) : (o[a] || (o[a] = {
                    paths: [],
                    computed(c, u = {}) {
                        var p, d;
                        return this.paths.length === 1 ? (p = this.paths[0]) == null ? void 0 : p.computed(this.paths[0].scheme, u.binding) : c && c !== "none" ? (d = this.paths.find(h => h.scheme === c)) == null ? void 0 : d.computed(c, u.binding) : this.paths.map(h => h.computed(h.scheme, u[h.scheme]));
                    }
                }), o[a].paths.push({
                    path: l,
                    value: s,
                    scheme: l.includes("colorScheme.light") ? "light" : l.includes("colorScheme.dark") ? "dark" : "none",
                    computed(c, u = {}) {
                        let p = /{([^}]*)}/g,
                            d = s;
                        if (u.name = this.path, u.binding || (u.binding = {}), W(s, p)) {
                            let v = s.trim().replaceAll(p, N => {
                                    var T;
                                    let Et = N.replace(/{|}/g, ""),
                                        Y = (T = o[Et]) == null ? void 0 : T.computed(c, u);
                                    return qe(Y) && Y.length === 2 ? `light-dark(${Y[0].value},${Y[1].value})` : Y ? .value;
                                }),
                                E = /(\d+\w*\s+[\+\-\*\/]\s+\d+\w*)/g,
                                x = /var\([^)]+\)/g;
                            d = W(v.replace(x, "0"), E) ? `calc(${v})` : v;
                        }
                        return F(u.binding) && delete u.binding, {
                            colorScheme: c,
                            path: this.path,
                            paths: u,
                            value: d.includes("undefined") ? void 0 : d
                        };
                    }
                }));
            }), o;
        },
        getTokenValue(e, n, t) {
            var i;
            let r = (l => l.split(".").filter(u => !W(u.toLowerCase(), t.variable.excludedKeyRegex)).join("."))(n),
                s = n.includes("colorScheme.light") ? "light" : n.includes("colorScheme.dark") ? "dark" : void 0,
                a = [(i = e[r]) == null ? void 0 : i.computed(s)].flat().filter(l => l);
            return a.length === 1 ? a[0].value : a.reduce((l = {}, c) => {
                let u = c,
                    {
                        colorScheme: p
                    } = u,
                    d = ut(u, ["colorScheme"]);
                return l[p] = d, l;
            }, void 0);
        },
        getSelectorRule(e, n, t, i) {
            return t === "class" || t === "attr" ? Wt(w(n) ? `${e}${n},${e} ${n}` : e, i) : Wt(e, w(n) ? Wt(n, i) : i);
        },
        transformCSS(e, n, t, i, o = {}, r, s, a) {
            if (w(n)) {
                let {
                    cssLayer: l
                } = o;
                if (i !== "style") {
                    let c = this.getColorSchemeOption(o, s);
                    n = t === "dark" ? c.reduce((u, {
                        type: p,
                        selector: d
                    }) => (w(d) && (u += d.includes("[CSS]") ? d.replace("[CSS]", n) : this.getSelectorRule(d, a, p, n)), u), "") : Wt(a ? ? ":root", n);
                }
                if (l) {
                    let c = {
                        name: "primeui",
                        order: "primeui"
                    };
                    J(l) && (c.name = K(l.name, {
                        name: e,
                        type: i
                    })), w(c.name) && (n = Wt(`@layer ${c.name}`, n), r ? .layerNames(c.name));
                }
                return n;
            }
            return "";
        }
    },
    S = {
        defaults: {
            variable: {
                prefix: "p",
                selector: ":root",
                excludedKeyRegex: /^(primitive|semantic|components|directives|variables|colorscheme|light|dark|common|root|states|extend|css)$/gi
            },
            options: {
                prefix: "p",
                darkModeSelector: "system",
                cssLayer: !1
            }
        },
        _theme: void 0,
        _layerNames: new Set(),
        _loadedStyleNames: new Set(),
        _loadingStyles: new Set(),
        _tokens: {},
        update(e = {}) {
            let {
                theme: n
            } = e;
            n && (this._theme = wi(et({}, n), {
                options: et(et({}, this.defaults.options), n.options)
            }), this._tokens = tt.createTokens(this.preset, this.defaults), this.clearLoadedStyleNames());
        },
        get theme() {
            return this._theme;
        },
        get preset() {
            var e;
            return ((e = this.theme) == null ? void 0 : e.preset) || {};
        },
        get options() {
            var e;
            return ((e = this.theme) == null ? void 0 : e.options) || {};
        },
        get tokens() {
            return this._tokens;
        },
        getTheme() {
            return this.theme;
        },
        setTheme(e) {
            this.update({
                theme: e
            }), G.emit("theme:change", e);
        },
        getPreset() {
            return this.preset;
        },
        setPreset(e) {
            this._theme = wi(et({}, this.theme), {
                preset: e
            }), this._tokens = tt.createTokens(e, this.defaults), this.clearLoadedStyleNames(), G.emit("preset:change", e), G.emit("theme:change", this.theme);
        },
        getOptions() {
            return this.options;
        },
        setOptions(e) {
            this._theme = wi(et({}, this.theme), {
                options: e
            }), this.clearLoadedStyleNames(), G.emit("options:change", e), G.emit("theme:change", this.theme);
        },
        getLayerNames() {
            return [...this._layerNames];
        },
        setLayerNames(e) {
            this._layerNames.add(e);
        },
        getLoadedStyleNames() {
            return this._loadedStyleNames;
        },
        isStyleNameLoaded(e) {
            return this._loadedStyleNames.has(e);
        },
        setLoadedStyleName(e) {
            this._loadedStyleNames.add(e);
        },
        deleteLoadedStyleName(e) {
            this._loadedStyleNames.delete(e);
        },
        clearLoadedStyleNames() {
            this._loadedStyleNames.clear();
        },
        getTokenValue(e) {
            return tt.getTokenValue(this.tokens, e, this.defaults);
        },
        getCommon(e = "", n) {
            return tt.getCommon({
                name: e,
                theme: this.theme,
                params: n,
                defaults: this.defaults,
                set: {
                    layerNames: this.setLayerNames.bind(this)
                }
            });
        },
        getComponent(e = "", n) {
            let t = {
                name: e,
                theme: this.theme,
                params: n,
                defaults: this.defaults,
                set: {
                    layerNames: this.setLayerNames.bind(this)
                }
            };
            return tt.getPresetC(t);
        },
        getDirective(e = "", n) {
            let t = {
                name: e,
                theme: this.theme,
                params: n,
                defaults: this.defaults,
                set: {
                    layerNames: this.setLayerNames.bind(this)
                }
            };
            return tt.getPresetD(t);
        },
        getCustomPreset(e = "", n, t, i) {
            let o = {
                name: e,
                preset: n,
                options: this.options,
                selector: t,
                params: i,
                defaults: this.defaults,
                set: {
                    layerNames: this.setLayerNames.bind(this)
                }
            };
            return tt.getPreset(o);
        },
        getLayerOrderCSS(e = "") {
            return tt.getLayerOrder(e, this.options, {
                names: this.getLayerNames()
            }, this.defaults);
        },
        transformCSS(e = "", n, t = "style", i) {
            return tt.transformCSS(e, n, i, t, this.options, {
                layerNames: this.setLayerNames.bind(this)
            }, this.defaults);
        },
        getCommonStyleSheet(e = "", n, t = {}) {
            return tt.getCommonStyleSheet({
                name: e,
                theme: this.theme,
                params: n,
                props: t,
                defaults: this.defaults,
                set: {
                    layerNames: this.setLayerNames.bind(this)
                }
            });
        },
        getStyleSheet(e, n, t = {}) {
            return tt.getStyleSheet({
                name: e,
                theme: this.theme,
                params: n,
                props: t,
                defaults: this.defaults,
                set: {
                    layerNames: this.setLayerNames.bind(this)
                }
            });
        },
        onStyleMounted(e) {
            this._loadingStyles.add(e);
        },
        onStyleUpdated(e) {
            this._loadingStyles.add(e);
        },
        onStyleLoaded(e, {
            name: n
        }) {
            this._loadingStyles.size && (this._loadingStyles.delete(n), G.emit(`theme:${n}:load`, e), !this._loadingStyles.size && G.emit("theme:load"));
        }
    };
var os = 0,
    po = (() => {
        class e {
            document = g(st);
            use(t, i = {}) {
                let o = !1,
                    r = t,
                    s = null,
                    {
                        immediate: a = !0,
                        manual: l = !1,
                        name: c = `style_${++os}`,
                        id: u = void 0,
                        media: p = void 0,
                        nonce: d = void 0,
                        first: h = !1,
                        props: v = {}
                    } = i;
                if (this.document) {
                    if (s = this.document.querySelector(`style[data-primeng-style-id="${c}"]`) || u && this.document.getElementById(u) || this.document.createElement("style"), !s.isConnected) {
                        r = t;
                        let E = this.document.head;
                        h && E.firstChild ? E.insertBefore(s, E.firstChild) : E.appendChild(s), Ge(s, {
                            type: "text/css",
                            media: p,
                            nonce: d,
                            "data-primeng-style-id": c
                        });
                    }
                    return s.textContent !== r && (s.textContent = r), {
                        id: u,
                        name: c,
                        el: s,
                        css: r
                    };
                }
            }
            static ɵfac = function(i) {
                return new(i || e)();
            };
            static ɵprov = C({
                token: e,
                factory: e.ɵfac,
                providedIn: "root"
            });
        }
        return e;
    })();
var Gt = {
        _loadedStyleNames: new Set(),
        getLoadedStyleNames() {
            return this._loadedStyleNames;
        },
        isStyleNameLoaded(e) {
            return this._loadedStyleNames.has(e);
        },
        setLoadedStyleName(e) {
            this._loadedStyleNames.add(e);
        },
        deleteLoadedStyleName(e) {
            this._loadedStyleNames.delete(e);
        },
        clearLoadedStyleNames() {
            this._loadedStyleNames.clear();
        }
    },
    rs = ({
        dt: e
    }) => `
*,
::before,
::after {
    box-sizing: border-box;
}

/* Non ng overlay animations */
.p-connected-overlay {
    opacity: 0;
    transform: scaleY(0.8);
    transition: transform 0.12s cubic-bezier(0, 0, 0.2, 1),
        opacity 0.12s cubic-bezier(0, 0, 0.2, 1);
}

.p-connected-overlay-visible {
    opacity: 1;
    transform: scaleY(1);
}

.p-connected-overlay-hidden {
    opacity: 0;
    transform: scaleY(1);
    transition: opacity 0.1s linear;
}

/* NG based overlay animations */
.p-connected-overlay-enter-from {
    opacity: 0;
    transform: scaleY(0.8);
}

.p-connected-overlay-leave-to {
    opacity: 0;
}

.p-connected-overlay-enter-active {
    transition: transform 0.12s cubic-bezier(0, 0, 0.2, 1),
        opacity 0.12s cubic-bezier(0, 0, 0.2, 1);
}

.p-connected-overlay-leave-active {
    transition: opacity 0.1s linear;
}

/* Toggleable Content */
.p-toggleable-content-enter-from,
.p-toggleable-content-leave-to {
    max-height: 0;
}

.p-toggleable-content-enter-to,
.p-toggleable-content-leave-from {
    max-height: 1000px;
}

.p-toggleable-content-leave-active {
    overflow: hidden;
    transition: max-height 0.45s cubic-bezier(0, 1, 0, 1);
}

.p-toggleable-content-enter-active {
    overflow: hidden;
    transition: max-height 1s ease-in-out;
}

.p-disabled,
.p-disabled * {
    cursor: default;
    pointer-events: none;
    user-select: none;
}

.p-disabled,
.p-component:disabled {
    opacity: ${e("disabled.opacity")};
}

.pi {
    font-size: ${e("icon.size")};
}

.p-icon {
    width: ${e("icon.size")};
    height: ${e("icon.size")};
}

.p-unselectable-text {
    user-select: none;
}

.p-overlay-mask {
    background: ${e("mask.background")};
    color: ${e("mask.color")};
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.p-overlay-mask-enter {
    animation: p-overlay-mask-enter-animation ${e("mask.transition.duration")} forwards;
}

.p-overlay-mask-leave {
    animation: p-overlay-mask-leave-animation ${e("mask.transition.duration")} forwards;
}
/* Temporarily disabled, distrupts PrimeNG overlay animations */
/* @keyframes p-overlay-mask-enter-animation {
    from {
        background: transparent;
    }
    to {
        background: ${e("mask.background")};
    }
}
@keyframes p-overlay-mask-leave-animation {
    from {
        background: ${e("mask.background")};
    }
    to {
        background: transparent;
    }
}*/

.p-iconwrapper {
    display: inline-flex;
    justify-content: center;
    align-items: center;
}
`,
    ss = ({
        dt: e
    }) => `
.p-hidden-accessible {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.p-hidden-accessible input,
.p-hidden-accessible select {
    transform: scale(0);
}

.p-overflow-hidden {
    overflow: hidden;
    padding-right: ${e("scrollbar.width")};
}

/* @todo move to baseiconstyle.ts */

.p-icon {
    display: inline-block;
    vertical-align: baseline;
}

.p-icon-spin {
    -webkit-animation: p-icon-spin 2s infinite linear;
    animation: p-icon-spin 2s infinite linear;
}

@-webkit-keyframes p-icon-spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(359deg);
        transform: rotate(359deg);
    }
}

@keyframes p-icon-spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(359deg);
        transform: rotate(359deg);
    }
}
`,
    k = (() => {
        class e {
            name = "base";
            useStyle = g(po);
            theme = void 0;
            css = void 0;
            classes = {};
            inlineStyles = {};
            load = (t, i = {}, o = r => r) => {
                let r = o(K(t, {
                    dt: Ut
                }));
                return r ? this.useStyle.use(Ft(r), m({
                    name: this.name
                }, i)) : {};
            };
            loadCSS = (t = {}) => this.load(this.css, t);
            loadTheme = (t = {}, i = "") => this.load(this.theme, t, (o = "") => S.transformCSS(t.name || this.name, `${o}${i}`));
            loadGlobalCSS = (t = {}) => this.load(ss, t);
            loadGlobalTheme = (t = {}, i = "") => this.load(rs, t, (o = "") => S.transformCSS(t.name || this.name, `${o}${i}`));
            getCommonTheme = t => S.getCommon(this.name, t);
            getComponentTheme = t => S.getComponent(this.name, t);
            getDirectiveTheme = t => S.getDirective(this.name, t);
            getPresetTheme = (t, i, o) => S.getCustomPreset(this.name, t, i, o);
            getLayerOrderThemeCSS = () => S.getLayerOrderCSS(this.name);
            getStyleSheet = (t = "", i = {}) => {
                if (this.css) {
                    let o = K(this.css, {
                            dt: Ut
                        }),
                        r = Ft(`${o}${t}`),
                        s = Object.entries(i).reduce((a, [l, c]) => a.push(`${l}="${c}"`) && a, []).join(" ");
                    return `<style type="text/css" data-primeng-style-id="${this.name}" ${s}>${r}</style>`;
                }
                return "";
            };
            getCommonThemeStyleSheet = (t, i = {}) => S.getCommonStyleSheet(this.name, t, i);
            getThemeStyleSheet = (t, i = {}) => {
                let o = [S.getStyleSheet(this.name, t, i)];
                if (this.theme) {
                    let r = this.name === "base" ? "global-style" : `${this.name}-style`,
                        s = K(this.theme, {
                            dt: Ut
                        }),
                        a = Ft(S.transformCSS(r, s)),
                        l = Object.entries(i).reduce((c, [u, p]) => c.push(`${u}="${p}"`) && c, []).join(" ");
                    o.push(`<style type="text/css" data-primeng-style-id="${r}" ${l}>${a}</style>`);
                }
                return o.join("");
            };
            static ɵfac = function(i) {
                return new(i || e)();
            };
            static ɵprov = C({
                token: e,
                factory: e.ɵfac,
                providedIn: "root"
            });
        }
        return e;
    })();
var as = (() => {
        class e {
            theme = q(void 0);
            csp = q({
                nonce: void 0
            });
            isThemeChanged = !1;
            document = g(st);
            baseStyle = g(k);
            constructor() {
                Xt(() => {
                    G.on("theme:change", t => {
                        ot(() => {
                            this.isThemeChanged = !0, this.theme.set(t);
                        });
                    });
                }), Xt(() => {
                    let t = this.theme();
                    this.document && t && (this.isThemeChanged || this.onThemeChange(t), this.isThemeChanged = !1);
                });
            }
            ngOnDestroy() {
                S.clearLoadedStyleNames(), G.clear();
            }
            onThemeChange(t) {
                S.setTheme(t), this.document && this.loadCommonTheme();
            }
            loadCommonTheme() {
                if (this.theme() !== "none" && !S.isStyleNameLoaded("common")) {
                    let {
                        primitive: t,
                        semantic: i,
                        global: o,
                        style: r
                    } = this.baseStyle.getCommonTheme ? .() || {}, s = {
                        nonce: this.csp ? .() ? .nonce
                    };
                    this.baseStyle.load(t ? .css, m({
                        name: "primitive-variables"
                    }, s)), this.baseStyle.load(i ? .css, m({
                        name: "semantic-variables"
                    }, s)), this.baseStyle.load(o ? .css, m({
                        name: "global-variables"
                    }, s)), this.baseStyle.loadGlobalTheme(m({
                        name: "global-style"
                    }, s), r), S.setLoadedStyleName("common");
                }
            }
            setThemeConfig(t) {
                let {
                    theme: i,
                    csp: o
                } = t || {};
                i && this.theme.set(i), o && this.csp.set(o);
            }
            static ɵfac = function(i) {
                return new(i || e)();
            };
            static ɵprov = C({
                token: e,
                factory: e.ɵfac,
                providedIn: "root"
            });
        }
        return e;
    })(),
    Ii = (() => {
        class e extends as {
            ripple = q(!1);
            platformId = g(Vt);
            inputStyle = q(null);
            inputVariant = q(null);
            overlayOptions = {};
            csp = q({
                nonce: void 0
            });
            filterMatchModeOptions = {
                text: [O.STARTS_WITH, O.CONTAINS, O.NOT_CONTAINS, O.ENDS_WITH, O.EQUALS, O.NOT_EQUALS],
                numeric: [O.EQUALS, O.NOT_EQUALS, O.LESS_THAN, O.LESS_THAN_OR_EQUAL_TO, O.GREATER_THAN, O.GREATER_THAN_OR_EQUAL_TO],
                date: [O.DATE_IS, O.DATE_IS_NOT, O.DATE_BEFORE, O.DATE_AFTER]
            };
            translation = {
                startsWith: "Starts with",
                contains: "Contains",
                notContains: "Not contains",
                endsWith: "Ends with",
                equals: "Equals",
                notEquals: "Not equals",
                noFilter: "No Filter",
                lt: "Less than",
                lte: "Less than or equal to",
                gt: "Greater than",
                gte: "Greater than or equal to",
                is: "Is",
                isNot: "Is not",
                before: "Before",
                after: "After",
                dateIs: "Date is",
                dateIsNot: "Date is not",
                dateBefore: "Date is before",
                dateAfter: "Date is after",
                clear: "Clear",
                apply: "Apply",
                matchAll: "Match All",
                matchAny: "Match Any",
                addRule: "Add Rule",
                removeRule: "Remove Rule",
                accept: "Yes",
                reject: "No",
                choose: "Choose",
                upload: "Upload",
                cancel: "Cancel",
                pending: "Pending",
                fileSizeTypes: ["B", "KB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB"],
                dayNames: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
                dayNamesShort: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
                dayNamesMin: ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"],
                monthNames: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"],
                monthNamesShort: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"],
                chooseYear: "Choose Year",
                chooseMonth: "Choose Month",
                chooseDate: "Choose Date",
                prevDecade: "Previous Decade",
                nextDecade: "Next Decade",
                prevYear: "Previous Year",
                nextYear: "Next Year",
                prevMonth: "Previous Month",
                nextMonth: "Next Month",
                prevHour: "Previous Hour",
                nextHour: "Next Hour",
                prevMinute: "Previous Minute",
                nextMinute: "Next Minute",
                prevSecond: "Previous Second",
                nextSecond: "Next Second",
                am: "am",
                pm: "pm",
                dateFormat: "mm/dd/yy",
                firstDayOfWeek: 0,
                today: "Today",
                weekHeader: "Wk",
                weak: "Weak",
                medium: "Medium",
                strong: "Strong",
                passwordPrompt: "Enter a password",
                emptyMessage: "No results found",
                searchMessage: "Search results are available",
                selectionMessage: "{0} items selected",
                emptySelectionMessage: "No selected item",
                emptySearchMessage: "No results found",
                emptyFilterMessage: "No results found",
                fileChosenMessage: "Files",
                noFileChosenMessage: "No file chosen",
                aria: {
                    trueLabel: "True",
                    falseLabel: "False",
                    nullLabel: "Not Selected",
                    star: "1 star",
                    stars: "{star} stars",
                    selectAll: "All items selected",
                    unselectAll: "All items unselected",
                    close: "Close",
                    previous: "Previous",
                    next: "Next",
                    navigation: "Navigation",
                    scrollTop: "Scroll Top",
                    moveTop: "Move Top",
                    moveUp: "Move Up",
                    moveDown: "Move Down",
                    moveBottom: "Move Bottom",
                    moveToTarget: "Move to Target",
                    moveToSource: "Move to Source",
                    moveAllToTarget: "Move All to Target",
                    moveAllToSource: "Move All to Source",
                    pageLabel: "{page}",
                    firstPageLabel: "First Page",
                    lastPageLabel: "Last Page",
                    nextPageLabel: "Next Page",
                    prevPageLabel: "Previous Page",
                    rowsPerPageLabel: "Rows per page",
                    previousPageLabel: "Previous Page",
                    jumpToPageDropdownLabel: "Jump to Page Dropdown",
                    jumpToPageInputLabel: "Jump to Page Input",
                    selectRow: "Row Selected",
                    unselectRow: "Row Unselected",
                    expandRow: "Row Expanded",
                    collapseRow: "Row Collapsed",
                    showFilterMenu: "Show Filter Menu",
                    hideFilterMenu: "Hide Filter Menu",
                    filterOperator: "Filter Operator",
                    filterConstraint: "Filter Constraint",
                    editRow: "Row Edit",
                    saveEdit: "Save Edit",
                    cancelEdit: "Cancel Edit",
                    listView: "List View",
                    gridView: "Grid View",
                    slide: "Slide",
                    slideNumber: "{slideNumber}",
                    zoomImage: "Zoom Image",
                    zoomIn: "Zoom In",
                    zoomOut: "Zoom Out",
                    rotateRight: "Rotate Right",
                    rotateLeft: "Rotate Left",
                    listLabel: "Option List",
                    selectColor: "Select a color",
                    removeLabel: "Remove",
                    browseFiles: "Browse Files",
                    maximizeLabel: "Maximize"
                }
            };
            zIndex = {
                modal: 1100,
                overlay: 1e3,
                menu: 1e3,
                tooltip: 1100
            };
            translationSource = new it();
            translationObserver = this.translationSource.asObservable();
            getTranslation(t) {
                return this.translation[t];
            }
            setTranslation(t) {
                this.translation = m(m({}, this.translation), t), this.translationSource.next(this.translation);
            }
            setConfig(t) {
                let {
                    csp: i,
                    ripple: o,
                    inputStyle: r,
                    inputVariant: s,
                    theme: a,
                    overlayOptions: l,
                    translation: c,
                    filterMatchModeOptions: u
                } = t || {};
                i && this.csp.set(i), o && this.ripple.set(o), r && this.inputStyle.set(r), s && this.inputVariant.set(s), l && (this.overlayOptions = l), c && this.setTranslation(c), u && (this.filterMatchModeOptions = u), a && this.setThemeConfig({
                    theme: a,
                    csp: i
                });
            }
            static ɵfac = (() => {
                let t;
                return function(o) {
                    return (t || (t = _(e)))(o || e);
                };
            })();
            static ɵprov = C({
                token: e,
                factory: e.ɵfac,
                providedIn: "root"
            });
        }
        return e;
    })(),
    ls = new at("PRIME_NG_CONFIG");

function nc(...e) {
    let n = e ? .map(i => ({
            provide: ls,
            useValue: i,
            multi: !1
        })),
        t = qi(() => {
            let i = g(Ii);
            e ? .forEach(o => i.setConfig(o));
        });
    return Bi([...n, t]);
}
var ho = (() => {
        class e extends k {
            name = "common";
            static ɵfac = (() => {
                let t;
                return function(o) {
                    return (t || (t = _(e)))(o || e);
                };
            })();
            static ɵprov = C({
                token: e,
                factory: e.ɵfac,
                providedIn: "root"
            });
        }
        return e;
    })(),
    j = (() => {
        class e {
            document = g(st);
            platformId = g(Vt);
            el = g(lt);
            injector = g(Xe);
            cd = g(Ie);
            renderer = g(wt);
            config = g(Ii);
            baseComponentStyle = g(ho);
            baseStyle = g(k);
            scopedStyleEl;
            rootEl;
            dt;
            get styleOptions() {
                return {
                    nonce: this.config ? .csp().nonce
                };
            }
            get _name() {
                return this.constructor.name.replace(/^_/, "").toLowerCase();
            }
            get componentStyle() {
                return this._componentStyle;
            }
            attrSelector = se("pc");
            themeChangeListeners = [];
            _getHostInstance(t) {
                if (t) return t ? this.hostName ? t.name === this.hostName ? t : this._getHostInstance(t.parentInstance) : t.parentInstance : void 0;
            }
            _getOptionValue(t, i = "", o = {}) {
                return ze(t, i, o);
            }
            ngOnInit() {
                this.document && this._loadStyles();
            }
            ngAfterViewInit() {
                this.rootEl = this.el ? .nativeElement, this.rootEl && this.rootEl ? .setAttribute(this.attrSelector, "");
            }
            ngOnChanges(t) {
                if (this.document && !rn(this.platformId)) {
                    let {
                        dt: i
                    } = t;
                    i && i.currentValue && (this._loadScopedThemeStyles(i.currentValue), this._themeChangeListener(() => this._loadScopedThemeStyles(i.currentValue)));
                }
            }
            ngOnDestroy() {
                this._unloadScopedThemeStyles(), this.themeChangeListeners.forEach(t => G.off("theme:change", t));
            }
            _loadStyles() {
                let t = () => {
                    Gt.isStyleNameLoaded("base") || (this.baseStyle.loadGlobalCSS(this.styleOptions), Gt.setLoadedStyleName("base")), this._loadThemeStyles();
                };
                t(), this._themeChangeListener(() => t());
            }
            _loadCoreStyles() {
                !Gt.isStyleNameLoaded("base") && this._name && (this.baseComponentStyle.loadCSS(this.styleOptions), this.componentStyle && this.componentStyle ? .loadCSS(this.styleOptions), Gt.setLoadedStyleName(this.componentStyle ? .name));
            }
            _loadThemeStyles() {
                if (!S.isStyleNameLoaded("common")) {
                    let {
                        primitive: t,
                        semantic: i,
                        global: o,
                        style: r
                    } = this.componentStyle ? .getCommonTheme ? .() || {};
                    this.baseStyle.load(t ? .css, m({
                        name: "primitive-variables"
                    }, this.styleOptions)), this.baseStyle.load(i ? .css, m({
                        name: "semantic-variables"
                    }, this.styleOptions)), this.baseStyle.load(o ? .css, m({
                        name: "global-variables"
                    }, this.styleOptions)), this.baseStyle.loadGlobalTheme(m({
                        name: "global-style"
                    }, this.styleOptions), r), S.setLoadedStyleName("common");
                }
                if (!S.isStyleNameLoaded(this.componentStyle ? .name) && this.componentStyle ? .name) {
                    let {
                        css: t,
                        style: i
                    } = this.componentStyle ? .getComponentTheme ? .() || {};
                    this.componentStyle ? .load(t, m({
                        name: `${this.componentStyle?.name}-variables`
                    }, this.styleOptions)), this.componentStyle ? .loadTheme(m({
                        name: `${this.componentStyle?.name}-style`
                    }, this.styleOptions), i), S.setLoadedStyleName(this.componentStyle ? .name);
                }
                if (!S.isStyleNameLoaded("layer-order")) {
                    let t = this.componentStyle ? .getLayerOrderThemeCSS ? .();
                    this.baseStyle.load(t, m({
                        name: "layer-order",
                        first: !0
                    }, this.styleOptions)), S.setLoadedStyleName("layer-order");
                }
                this.dt && (this._loadScopedThemeStyles(this.dt), this._themeChangeListener(() => this._loadScopedThemeStyles(this.dt)));
            }
            _loadScopedThemeStyles(t) {
                let {
                    css: i
                } = this.componentStyle ? .getPresetTheme ? .(t, `[${this.attrSelector}]`) || {}, o = this.componentStyle ? .load(i, m({
                    name: `${this.attrSelector}-${this.componentStyle?.name}`
                }, this.styleOptions));
                this.scopedStyleEl = o ? .el;
            }
            _unloadScopedThemeStyles() {
                this.scopedStyleEl ? .remove();
            }
            _themeChangeListener(t = () => {}) {
                Gt.clearLoadedStyleNames(), G.on("theme:change", t), this.themeChangeListeners.push(t);
            }
            cx(t, i) {
                let o = this.parent ? this.parent.componentStyle ? .classes ? .[t] : this.componentStyle ? .classes ? .[t];
                return typeof o == "function" ? o({
                    instance: this
                }) : typeof o == "string" ? o : t;
            }
            sx(t) {
                let i = this.componentStyle ? .inlineStyles ? .[t];
                return typeof i == "function" ? i({
                    instance: this
                }) : typeof i == "string" ? i : m({}, i);
            }
            get parent() {
                return this.parentInstance;
            }
            static ɵfac = function(i) {
                return new(i || e)();
            };
            static ɵdir = b({
                type: e,
                inputs: {
                    dt: "dt"
                },
                features: [A([ho, k]), z]
            });
        }
        return e;
    })();
var cs = ({
        dt: e
    }) => `
/* For PrimeNG */
.p-ripple {
    overflow: hidden;
    position: relative;
}

.p-ink {
    display: block;
    position: absolute;
    background: ${e("ripple.background")};
    border-radius: 100%;
    transform: scale(0);
}

.p-ink-active {
    animation: ripple 0.4s linear;
}

.p-ripple-disabled .p-ink {
    display: none !important;
}

@keyframes ripple {
    100% {
        opacity: 0;
        transform: scale(2.5);
    }
}
`,
    us = {
        root: "p-ink"
    },
    fo = (() => {
        class e extends k {
            name = "ripple";
            theme = cs;
            classes = us;
            static ɵfac = (() => {
                let t;
                return function(o) {
                    return (t || (t = _(e)))(o || e);
                };
            })();
            static ɵprov = C({
                token: e,
                factory: e.ɵfac
            });
        }
        return e;
    })();
var go = (() => {
        class e extends j {
            zone = g(Hi);
            _componentStyle = g(fo);
            animationListener;
            mouseDownListener;
            timeout;
            constructor() {
                super(), Xt(() => {
                    xe(this.platformId) && (this.config.ripple() ? this.zone.runOutsideAngular(() => {
                        this.create(), this.mouseDownListener = this.renderer.listen(this.el.nativeElement, "mousedown", this.onMouseDown.bind(this));
                    }) : this.remove());
                });
            }
            ngAfterViewInit() {
                super.ngAfterViewInit();
            }
            onMouseDown(t) {
                let i = this.getInk();
                if (!i || this.document.defaultView ? .getComputedStyle(i, null).display === "none") return;
                if (Mt(i, "p-ink-active"), !yi(i) && !_i(i)) {
                    let a = Math.max(zn(this.el.nativeElement), vi(this.el.nativeElement));
                    i.style.height = a + "px", i.style.width = a + "px";
                }
                let o = Yn(this.el.nativeElement),
                    r = t.pageX - o.left + this.document.body.scrollTop - _i(i) / 2,
                    s = t.pageY - o.top + this.document.body.scrollLeft - yi(i) / 2;
                this.renderer.setStyle(i, "top", s + "px"), this.renderer.setStyle(i, "left", r + "px"), yt(i, "p-ink-active"), this.timeout = setTimeout(() => {
                    let a = this.getInk();
                    a && Mt(a, "p-ink-active");
                }, 401);
            }
            getInk() {
                let t = this.el.nativeElement.children;
                for (let i = 0; i < t.length; i++)
                    if (typeof t[i].className == "string" && t[i].className.indexOf("p-ink") !== -1) return t[i];
                return null;
            }
            resetInk() {
                let t = this.getInk();
                t && Mt(t, "p-ink-active");
            }
            onAnimationEnd(t) {
                this.timeout && clearTimeout(this.timeout), Mt(t.currentTarget, "p-ink-active");
            }
            create() {
                let t = this.renderer.createElement("span");
                this.renderer.addClass(t, "p-ink"), this.renderer.appendChild(this.el.nativeElement, t), this.renderer.setAttribute(t, "aria-hidden", "true"), this.renderer.setAttribute(t, "role", "presentation"), this.animationListener || (this.animationListener = this.renderer.listen(t, "animationend", this.onAnimationEnd.bind(this)));
            }
            remove() {
                let t = this.getInk();
                t && (this.mouseDownListener && this.mouseDownListener(), this.animationListener && this.animationListener(), this.mouseDownListener = null, this.animationListener = null, Zn(t));
            }
            ngOnDestroy() {
                this.config && this.config.ripple() && this.remove(), super.ngOnDestroy();
            }
            static ɵfac = function(i) {
                return new(i || e)();
            };
            static ɵdir = b({
                type: e,
                selectors: [
                    ["", "pRipple", ""]
                ],
                hostAttrs: [1, "p-ripple"],
                features: [A([fo]), y]
            });
        }
        return e;
    })(),
    Ac = (() => {
        class e {
            static ɵfac = function(i) {
                return new(i || e)();
            };
            static ɵmod = L({
                type: e
            });
            static ɵinj = V({});
        }
        return e;
    })();
var xi = (() => {
        class e {
            static zindex = 1e3;
            static calculatedScrollbarWidth = null;
            static calculatedScrollbarHeight = null;
            static browser;
            static addClass(t, i) {
                t && i && (t.classList ? t.classList.add(i) : t.className += " " + i);
            }
            static addMultipleClasses(t, i) {
                if (t && i)
                    if (t.classList) {
                        let o = i.trim().split(" ");
                        for (let r = 0; r < o.length; r++) t.classList.add(o[r]);
                    } else {
                        let o = i.split(" ");
                        for (let r = 0; r < o.length; r++) t.className += " " + o[r];
                    }
            }
            static removeClass(t, i) {
                t && i && (t.classList ? t.classList.remove(i) : t.className = t.className.replace(new RegExp("(^|\\b)" + i.split(" ").join("|") + "(\\b|$)", "gi"), " "));
            }
            static removeMultipleClasses(t, i) {
                t && i && [i].flat().filter(Boolean).forEach(o => o.split(" ").forEach(r => this.removeClass(t, r)));
            }
            static hasClass(t, i) {
                return t && i ? t.classList ? t.classList.contains(i) : new RegExp("(^| )" + i + "( |$)", "gi").test(t.className) : !1;
            }
            static siblings(t) {
                return Array.prototype.filter.call(t.parentNode.children, function(i) {
                    return i !== t;
                });
            }
            static find(t, i) {
                return Array.from(t.querySelectorAll(i));
            }
            static findSingle(t, i) {
                return this.isElement(t) ? t.querySelector(i) : null;
            }
            static index(t) {
                let i = t.parentNode.childNodes,
                    o = 0;
                for (var r = 0; r < i.length; r++) {
                    if (i[r] == t) return o;
                    i[r].nodeType == 1 && o++;
                }
                return -1;
            }
            static indexWithinGroup(t, i) {
                let o = t.parentNode ? t.parentNode.childNodes : [],
                    r = 0;
                for (var s = 0; s < o.length; s++) {
                    if (o[s] == t) return r;
                    o[s].attributes && o[s].attributes[i] && o[s].nodeType == 1 && r++;
                }
                return -1;
            }
            static appendOverlay(t, i, o = "self") {
                o !== "self" && t && i && this.appendChild(t, i);
            }
            static alignOverlay(t, i, o = "self", r = !0) {
                t && i && (r && (t.style.minWidth = `${e.getOuterWidth(i)}px`), o === "self" ? this.relativePosition(t, i) : this.absolutePosition(t, i));
            }
            static relativePosition(t, i, o = !0) {
                let r = T => {
                        if (T) return getComputedStyle(T).getPropertyValue("position") === "relative" ? T : r(T.parentElement);
                    },
                    s = t.offsetParent ? {
                        width: t.offsetWidth,
                        height: t.offsetHeight
                    } : this.getHiddenElementDimensions(t),
                    a = i.offsetHeight,
                    l = i.getBoundingClientRect(),
                    c = this.getWindowScrollTop(),
                    u = this.getWindowScrollLeft(),
                    p = this.getViewport(),
                    h = r(t) ? .getBoundingClientRect() || {
                        top: -1 * c,
                        left: -1 * u
                    },
                    v, E;
                l.top + a + s.height > p.height ? (v = l.top - h.top - s.height, t.style.transformOrigin = "bottom", l.top + v < 0 && (v = -1 * l.top)) : (v = a + l.top - h.top, t.style.transformOrigin = "top");
                let x = l.left + s.width - p.width,
                    N = l.left - h.left;
                s.width > p.width ? E = (l.left - h.left) * -1 : x > 0 ? E = N - x : E = l.left - h.left, t.style.top = v + "px", t.style.left = E + "px", o && (t.style.marginTop = origin === "bottom" ? "calc(var(--p-anchor-gutter) * -1)" : "calc(var(--p-anchor-gutter))");
            }
            static absolutePosition(t, i, o = !0) {
                let r = t.offsetParent ? {
                        width: t.offsetWidth,
                        height: t.offsetHeight
                    } : this.getHiddenElementDimensions(t),
                    s = r.height,
                    a = r.width,
                    l = i.offsetHeight,
                    c = i.offsetWidth,
                    u = i.getBoundingClientRect(),
                    p = this.getWindowScrollTop(),
                    d = this.getWindowScrollLeft(),
                    h = this.getViewport(),
                    v, E;
                u.top + l + s > h.height ? (v = u.top + p - s, t.style.transformOrigin = "bottom", v < 0 && (v = p)) : (v = l + u.top + p, t.style.transformOrigin = "top"), u.left + a > h.width ? E = Math.max(0, u.left + d + c - a) : E = u.left + d, t.style.top = v + "px", t.style.left = E + "px", o && (t.style.marginTop = origin === "bottom" ? "calc(var(--p-anchor-gutter) * -1)" : "calc(var(--p-anchor-gutter))");
            }
            static getParents(t, i = []) {
                return t.parentNode === null ? i : this.getParents(t.parentNode, i.concat([t.parentNode]));
            }
            static getScrollableParents(t) {
                let i = [];
                if (t) {
                    let o = this.getParents(t),
                        r = /(auto|scroll)/,
                        s = a => {
                            let l = window.getComputedStyle(a, null);
                            return r.test(l.getPropertyValue("overflow")) || r.test(l.getPropertyValue("overflowX")) || r.test(l.getPropertyValue("overflowY"));
                        };
                    for (let a of o) {
                        let l = a.nodeType === 1 && a.dataset.scrollselectors;
                        if (l) {
                            let c = l.split(",");
                            for (let u of c) {
                                let p = this.findSingle(a, u);
                                p && s(p) && i.push(p);
                            }
                        }
                        a.nodeType !== 9 && s(a) && i.push(a);
                    }
                }
                return i;
            }
            static getHiddenElementOuterHeight(t) {
                t.style.visibility = "hidden", t.style.display = "block";
                let i = t.offsetHeight;
                return t.style.display = "none", t.style.visibility = "visible", i;
            }
            static getHiddenElementOuterWidth(t) {
                t.style.visibility = "hidden", t.style.display = "block";
                let i = t.offsetWidth;
                return t.style.display = "none", t.style.visibility = "visible", i;
            }
            static getHiddenElementDimensions(t) {
                let i = {};
                return t.style.visibility = "hidden", t.style.display = "block", i.width = t.offsetWidth, i.height = t.offsetHeight, t.style.display = "none", t.style.visibility = "visible", i;
            }
            static scrollInView(t, i) {
                let o = getComputedStyle(t).getPropertyValue("borderTopWidth"),
                    r = o ? parseFloat(o) : 0,
                    s = getComputedStyle(t).getPropertyValue("paddingTop"),
                    a = s ? parseFloat(s) : 0,
                    l = t.getBoundingClientRect(),
                    u = i.getBoundingClientRect().top + document.body.scrollTop - (l.top + document.body.scrollTop) - r - a,
                    p = t.scrollTop,
                    d = t.clientHeight,
                    h = this.getOuterHeight(i);
                u < 0 ? t.scrollTop = p + u : u + h > d && (t.scrollTop = p + u - d + h);
            }
            static fadeIn(t, i) {
                t.style.opacity = 0;
                let o = +new Date(),
                    r = 0,
                    s = function() {
                        r = +t.style.opacity.replace(",", ".") + (new Date().getTime() - o) / i, t.style.opacity = r, o = +new Date(), +r < 1 && (window.requestAnimationFrame && requestAnimationFrame(s) || setTimeout(s, 16));
                    };
                s();
            }
            static fadeOut(t, i) {
                var o = 1,
                    r = 50,
                    s = i,
                    a = r / s;
                let l = setInterval(() => {
                    o = o - a, o <= 0 && (o = 0, clearInterval(l)), t.style.opacity = o;
                }, r);
            }
            static getWindowScrollTop() {
                let t = document.documentElement;
                return (window.pageYOffset || t.scrollTop) - (t.clientTop || 0);
            }
            static getWindowScrollLeft() {
                let t = document.documentElement;
                return (window.pageXOffset || t.scrollLeft) - (t.clientLeft || 0);
            }
            static matches(t, i) {
                var o = Element.prototype,
                    r = o.matches || o.webkitMatchesSelector || o.mozMatchesSelector || o.msMatchesSelector || function(s) {
                        return [].indexOf.call(document.querySelectorAll(s), this) !== -1;
                    };
                return r.call(t, i);
            }
            static getOuterWidth(t, i) {
                let o = t.offsetWidth;
                if (i) {
                    let r = getComputedStyle(t);
                    o += parseFloat(r.marginLeft) + parseFloat(r.marginRight);
                }
                return o;
            }
            static getHorizontalPadding(t) {
                let i = getComputedStyle(t);
                return parseFloat(i.paddingLeft) + parseFloat(i.paddingRight);
            }
            static getHorizontalMargin(t) {
                let i = getComputedStyle(t);
                return parseFloat(i.marginLeft) + parseFloat(i.marginRight);
            }
            static innerWidth(t) {
                let i = t.offsetWidth,
                    o = getComputedStyle(t);
                return i += parseFloat(o.paddingLeft) + parseFloat(o.paddingRight), i;
            }
            static width(t) {
                let i = t.offsetWidth,
                    o = getComputedStyle(t);
                return i -= parseFloat(o.paddingLeft) + parseFloat(o.paddingRight), i;
            }
            static getInnerHeight(t) {
                let i = t.offsetHeight,
                    o = getComputedStyle(t);
                return i += parseFloat(o.paddingTop) + parseFloat(o.paddingBottom), i;
            }
            static getOuterHeight(t, i) {
                let o = t.offsetHeight;
                if (i) {
                    let r = getComputedStyle(t);
                    o += parseFloat(r.marginTop) + parseFloat(r.marginBottom);
                }
                return o;
            }
            static getHeight(t) {
                let i = t.offsetHeight,
                    o = getComputedStyle(t);
                return i -= parseFloat(o.paddingTop) + parseFloat(o.paddingBottom) + parseFloat(o.borderTopWidth) + parseFloat(o.borderBottomWidth), i;
            }
            static getWidth(t) {
                let i = t.offsetWidth,
                    o = getComputedStyle(t);
                return i -= parseFloat(o.paddingLeft) + parseFloat(o.paddingRight) + parseFloat(o.borderLeftWidth) + parseFloat(o.borderRightWidth), i;
            }
            static getViewport() {
                let t = window,
                    i = document,
                    o = i.documentElement,
                    r = i.getElementsByTagName("body")[0],
                    s = t.innerWidth || o.clientWidth || r.clientWidth,
                    a = t.innerHeight || o.clientHeight || r.clientHeight;
                return {
                    width: s,
                    height: a
                };
            }
            static getOffset(t) {
                var i = t.getBoundingClientRect();
                return {
                    top: i.top + (window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0),
                    left: i.left + (window.pageXOffset || document.documentElement.scrollLeft || document.body.scrollLeft || 0)
                };
            }
            static replaceElementWith(t, i) {
                let o = t.parentNode;
                if (!o) throw "Can't replace element";
                return o.replaceChild(i, t);
            }
            static getUserAgent() {
                if (navigator && this.isClient()) return navigator.userAgent;
            }
            static isIE() {
                var t = window.navigator.userAgent,
                    i = t.indexOf("MSIE ");
                if (i > 0) return !0;
                var o = t.indexOf("Trident/");
                if (o > 0) {
                    var r = t.indexOf("rv:");
                    return !0;
                }
                var s = t.indexOf("Edge/");
                return s > 0;
            }
            static isIOS() {
                return /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream;
            }
            static isAndroid() {
                return /(android)/i.test(navigator.userAgent);
            }
            static isTouchDevice() {
                return "ontouchstart" in window || navigator.maxTouchPoints > 0;
            }
            static appendChild(t, i) {
                if (this.isElement(i)) i.appendChild(t);
                else if (i && i.el && i.el.nativeElement) i.el.nativeElement.appendChild(t);
                else throw "Cannot append " + i + " to " + t;
            }
            static removeChild(t, i) {
                if (this.isElement(i)) i.removeChild(t);
                else if (i.el && i.el.nativeElement) i.el.nativeElement.removeChild(t);
                else throw "Cannot remove " + t + " from " + i;
            }
            static removeElement(t) {
                "remove" in Element.prototype ? t.remove() : t.parentNode.removeChild(t);
            }
            static isElement(t) {
                return typeof HTMLElement == "object" ? t instanceof HTMLElement : t && typeof t == "object" && t !== null && t.nodeType === 1 && typeof t.nodeName == "string";
            }
            static calculateScrollbarWidth(t) {
                if (t) {
                    let i = getComputedStyle(t);
                    return t.offsetWidth - t.clientWidth - parseFloat(i.borderLeftWidth) - parseFloat(i.borderRightWidth);
                } else {
                    if (this.calculatedScrollbarWidth !== null) return this.calculatedScrollbarWidth;
                    let i = document.createElement("div");
                    i.className = "p-scrollbar-measure", document.body.appendChild(i);
                    let o = i.offsetWidth - i.clientWidth;
                    return document.body.removeChild(i), this.calculatedScrollbarWidth = o, o;
                }
            }
            static calculateScrollbarHeight() {
                if (this.calculatedScrollbarHeight !== null) return this.calculatedScrollbarHeight;
                let t = document.createElement("div");
                t.className = "p-scrollbar-measure", document.body.appendChild(t);
                let i = t.offsetHeight - t.clientHeight;
                return document.body.removeChild(t), this.calculatedScrollbarWidth = i, i;
            }
            static invokeElementMethod(t, i, o) {
                t[i].apply(t, o);
            }
            static clearSelection() {
                if (window.getSelection) window.getSelection().empty ? window.getSelection().empty() : window.getSelection().removeAllRanges && window.getSelection().rangeCount > 0 && window.getSelection().getRangeAt(0).getClientRects().length > 0 && window.getSelection().removeAllRanges();
                else if (document.selection && document.selection.empty) try {
                    document.selection.empty();
                } catch {}
            }
            static getBrowser() {
                if (!this.browser) {
                    let t = this.resolveUserAgent();
                    this.browser = {}, t.browser && (this.browser[t.browser] = !0, this.browser.version = t.version), this.browser.chrome ? this.browser.webkit = !0 : this.browser.webkit && (this.browser.safari = !0);
                }
                return this.browser;
            }
            static resolveUserAgent() {
                let t = navigator.userAgent.toLowerCase(),
                    i = /(chrome)[ \/]([\w.]+)/.exec(t) || /(webkit)[ \/]([\w.]+)/.exec(t) || /(opera)(?:.*version|)[ \/]([\w.]+)/.exec(t) || /(msie) ([\w.]+)/.exec(t) || t.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(t) || [];
                return {
                    browser: i[1] || "",
                    version: i[2] || "0"
                };
            }
            static isInteger(t) {
                return Number.isInteger ? Number.isInteger(t) : typeof t == "number" && isFinite(t) && Math.floor(t) === t;
            }
            static isHidden(t) {
                return !t || t.offsetParent === null;
            }
            static isVisible(t) {
                return t && t.offsetParent != null;
            }
            static isExist(t) {
                return t !== null && typeof t < "u" && t.nodeName && t.parentNode;
            }
            static focus(t, i) {
                t && document.activeElement !== t && t.focus(i);
            }
            static getFocusableSelectorString(t = "") {
                return `button:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${t},
        [href][clientHeight][clientWidth]:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${t},
        input:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${t},
        select:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${t},
        textarea:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${t},
        [tabIndex]:not([tabIndex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${t},
        [contenteditable]:not([tabIndex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${t},
        .p-inputtext:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${t},
        .p-button:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${t}`;
            }
            static getFocusableElements(t, i = "") {
                let o = this.find(t, this.getFocusableSelectorString(i)),
                    r = [];
                for (let s of o) {
                    let a = getComputedStyle(s);
                    this.isVisible(s) && a.display != "none" && a.visibility != "hidden" && r.push(s);
                }
                return r;
            }
            static getFocusableElement(t, i = "") {
                let o = this.findSingle(t, this.getFocusableSelectorString(i));
                if (o) {
                    let r = getComputedStyle(o);
                    if (this.isVisible(o) && r.display != "none" && r.visibility != "hidden") return o;
                }
                return null;
            }
            static getFirstFocusableElement(t, i = "") {
                let o = this.getFocusableElements(t, i);
                return o.length > 0 ? o[0] : null;
            }
            static getLastFocusableElement(t, i) {
                let o = this.getFocusableElements(t, i);
                return o.length > 0 ? o[o.length - 1] : null;
            }
            static getNextFocusableElement(t, i = !1) {
                let o = e.getFocusableElements(t),
                    r = 0;
                if (o && o.length > 0) {
                    let s = o.indexOf(o[0].ownerDocument.activeElement);
                    i ? s == -1 || s === 0 ? r = o.length - 1 : r = s - 1 : s != -1 && s !== o.length - 1 && (r = s + 1);
                }
                return o[r];
            }
            static generateZIndex() {
                return this.zindex = this.zindex || 999, ++this.zindex;
            }
            static getSelection() {
                return window.getSelection ? window.getSelection().toString() : document.getSelection ? document.getSelection().toString() : document.selection ? document.selection.createRange().text : null;
            }
            static getTargetElement(t, i) {
                if (!t) return null;
                switch (t) {
                    case "document":
                        return document;
                    case "window":
                        return window;
                    case "@next":
                        return i ? .nextElementSibling;
                    case "@prev":
                        return i ? .previousElementSibling;
                    case "@parent":
                        return i ? .parentElement;
                    case "@grandparent":
                        return i ? .parentElement.parentElement;
                    default:
                        let o = typeof t;
                        if (o === "string") return document.querySelector(t);
                        if (o === "object" && t.hasOwnProperty("nativeElement")) return this.isExist(t.nativeElement) ? t.nativeElement : void 0;
                        let s = (a => !!(a && a.constructor && a.call && a.apply))(t) ? t() : t;
                        return s && s.nodeType === 9 || this.isExist(s) ? s : null;
                }
            }
            static isClient() {
                return !!(typeof window < "u" && window.document && window.document.createElement);
            }
            static getAttribute(t, i) {
                if (t) {
                    let o = t.getAttribute(i);
                    return isNaN(o) ? o === "true" || o === "false" ? o === "true" : o : +o;
                }
            }
            static calculateBodyScrollbarWidth() {
                return window.innerWidth - document.documentElement.offsetWidth;
            }
            static blockBodyScroll(t = "p-overflow-hidden") {
                document.body.style.setProperty("--scrollbar-width", this.calculateBodyScrollbarWidth() + "px"), this.addClass(document.body, t);
            }
            static unblockBodyScroll(t = "p-overflow-hidden") {
                document.body.style.removeProperty("--scrollbar-width"), this.removeClass(document.body, t);
            }
            static createElement(t, i = {}, ...o) {
                if (t) {
                    let r = document.createElement(t);
                    return this.setAttributes(r, i), r.append(...o), r;
                }
            }
            static setAttribute(t, i = "", o) {
                this.isElement(t) && o !== null && o !== void 0 && t.setAttribute(i, o);
            }
            static setAttributes(t, i = {}) {
                if (this.isElement(t)) {
                    let o = (r, s) => {
                        let a = t ? .$attrs ? .[r] ? [t ? .$attrs ? .[r]] : [];
                        return [s].flat().reduce((l, c) => {
                            if (c != null) {
                                let u = typeof c;
                                if (u === "string" || u === "number") l.push(c);
                                else if (u === "object") {
                                    let p = Array.isArray(c) ? o(r, c) : Object.entries(c).map(([d, h]) => r === "style" && (h || h === 0) ? `${d.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}:${h}` : h ? d : void 0);
                                    l = p.length ? l.concat(p.filter(d => !!d)) : l;
                                }
                            }
                            return l;
                        }, a);
                    };
                    Object.entries(i).forEach(([r, s]) => {
                        if (s != null) {
                            let a = r.match(/^on(.+)/);
                            a ? t.addEventListener(a[1].toLowerCase(), s) : r === "pBind" ? this.setAttributes(t, s) : (s = r === "class" ? [...new Set(o("class", s))].join(" ").trim() : r === "style" ? o("style", s).join(";").trim() : s, (t.$attrs = t.$attrs || {}) && (t.$attrs[r] = s), t.setAttribute(r, s));
                        }
                    });
                }
            }
            static isFocusableElement(t, i = "") {
                return this.isElement(t) ? t.matches(`button:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${i},
                [href][clientHeight][clientWidth]:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${i},
                input:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${i},
                select:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${i},
                textarea:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${i},
                [tabIndex]:not([tabIndex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${i},
                [contenteditable]:not([tabIndex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${i}`) : !1;
            }
        }
        return e;
    })(),
    mo = class {
        element;
        listener;
        scrollableParents;
        constructor(n, t = () => {}) {
            this.element = n, this.listener = t;
        }
        bindScrollListener() {
            this.scrollableParents = xi.getScrollableParents(this.element);
            for (let n = 0; n < this.scrollableParents.length; n++) this.scrollableParents[n].addEventListener("scroll", this.listener);
        }
        unbindScrollListener() {
            if (this.scrollableParents)
                for (let n = 0; n < this.scrollableParents.length; n++) this.scrollableParents[n].removeEventListener("scroll", this.listener);
        }
        destroy() {
            this.unbindScrollListener(), this.element = null, this.listener = null, this.scrollableParents = null;
        }
    };
var bo = (() => {
        class e extends j {
            autofocus = !1;
            _autofocus = !1;
            focused = !1;
            platformId = g(Vt);
            document = g(st);
            host = g(lt);
            ngAfterContentChecked() {
                this.autofocus === !1 ? this.host.nativeElement.removeAttribute("autofocus") : this.host.nativeElement.setAttribute("autofocus", !0), this.focused || this.autoFocus();
            }
            ngAfterViewChecked() {
                this.focused || this.autoFocus();
            }
            autoFocus() {
                xe(this.platformId) && this._autofocus && setTimeout(() => {
                    let t = xi.getFocusableElements(this.host ? .nativeElement);
                    t.length === 0 && this.host.nativeElement.focus(), t.length > 0 && t[0].focus(), this.focused = !0;
                });
            }
            static ɵfac = (() => {
                let t;
                return function(o) {
                    return (t || (t = _(e)))(o || e);
                };
            })();
            static ɵdir = b({
                type: e,
                selectors: [
                    ["", "pAutoFocus", ""]
                ],
                inputs: {
                    autofocus: [2, "autofocus", "autofocus", D],
                    _autofocus: [0, "pAutoFocus", "_autofocus"]
                },
                features: [y]
            });
        }
        return e;
    })(),
    Lc = (() => {
        class e {
            static ɵfac = function(i) {
                return new(i || e)();
            };
            static ɵmod = L({
                type: e
            });
            static ɵinj = V({});
        }
        return e;
    })();
var ds = ({
        dt: e
    }) => `
.p-badge {
    display: inline-flex;
    border-radius: ${e("badge.border.radius")};
    justify-content: center;
    padding: ${e("badge.padding")};
    background: ${e("badge.primary.background")};
    color: ${e("badge.primary.color")};
    font-size: ${e("badge.font.size")};
    font-weight: ${e("badge.font.weight")};
    min-width: ${e("badge.min.width")};
    height: ${e("badge.height")};
    line-height: ${e("badge.height")};
}

.p-badge-dot {
    width: ${e("badge.dot.size")};
    min-width: ${e("badge.dot.size")};
    height: ${e("badge.dot.size")};
    border-radius: 50%;
    padding: 0;
}

.p-badge-circle {
    padding: 0;
    border-radius: 50%;
}

.p-badge-secondary {
    background: ${e("badge.secondary.background")};
    color: ${e("badge.secondary.color")};
}

.p-badge-success {
    background: ${e("badge.success.background")};
    color: ${e("badge.success.color")};
}

.p-badge-info {
    background: ${e("badge.info.background")};
    color: ${e("badge.info.color")};
}

.p-badge-warn {
    background: ${e("badge.warn.background")};
    color: ${e("badge.warn.color")};
}

.p-badge-danger {
    background: ${e("badge.danger.background")};
    color: ${e("badge.danger.color")};
}

.p-badge-contrast {
    background: ${e("badge.contrast.background")};
    color: ${e("badge.contrast.color")};
}

.p-badge-sm {
    font-size: ${e("badge.sm.font.size")};
    min-width: ${e("badge.sm.min.width")};
    height: ${e("badge.sm.height")};
    line-height: ${e("badge.sm.height")};
}

.p-badge-lg {
    font-size: ${e("badge.lg.font.size")};
    min-width: ${e("badge.lg.min.width")};
    height: ${e("badge.lg.height")};
    line-height: ${e("badge.lg.height")};
}

.p-badge-xl {
    font-size: ${e("badge.xl.font.size")};
    min-width: ${e("badge.xl.min.width")};
    height: ${e("badge.xl.height")};
    line-height: ${e("badge.xl.height")};
}

/* For PrimeNG (directive)*/

.p-overlay-badge {
    position: relative;
}

.p-overlay-badge > .p-badge {
    position: absolute;
    top: 0;
    inset-inline-end: 0;
    transform: translate(50%, -50%);
    transform-origin: 100% 0;
    margin: 0;
}
`,
    ps = {
        root: ({
            props: e,
            instance: n
        }) => ["p-badge p-component", {
            "p-badge-circle": w(e.value) && String(e.value).length === 1,
            "p-badge-dot": F(e.value) && !n.$slots.default,
            "p-badge-sm": e.size === "small",
            "p-badge-lg": e.size === "large",
            "p-badge-xl": e.size === "xlarge",
            "p-badge-info": e.severity === "info",
            "p-badge-success": e.severity === "success",
            "p-badge-warn": e.severity === "warn",
            "p-badge-danger": e.severity === "danger",
            "p-badge-secondary": e.severity === "secondary",
            "p-badge-contrast": e.severity === "contrast"
        }]
    },
    yo = (() => {
        class e extends k {
            name = "badge";
            theme = ds;
            classes = ps;
            static ɵfac = (() => {
                let t;
                return function(o) {
                    return (t || (t = _(e)))(o || e);
                };
            })();
            static ɵprov = C({
                token: e,
                factory: e.ɵfac
            });
        }
        return e;
    })();
var Ti = (() => {
        class e extends j {
            styleClass = dt();
            style = dt();
            badgeSize = dt();
            size = dt();
            severity = dt();
            value = dt();
            badgeDisabled = dt(!1, {
                transform: D
            });
            _componentStyle = g(yo);
            containerClass = rt(() => {
                let t = "p-badge p-component";
                return w(this.value()) && String(this.value()).length === 1 && (t += " p-badge-circle"), this.badgeSize() === "large" ? t += " p-badge-lg" : this.badgeSize() === "xlarge" ? t += " p-badge-xl" : this.badgeSize() === "small" && (t += " p-badge-sm"), F(this.value()) && (t += " p-badge-dot"), this.styleClass() && (t += ` ${this.styleClass()}`), this.severity() && (t += ` p-badge-${this.severity()}`), t;
            });
            static ɵfac = (() => {
                let t;
                return function(o) {
                    return (t || (t = _(e)))(o || e);
                };
            })();
            static ɵcmp = B({
                type: e,
                selectors: [
                    ["p-badge"]
                ],
                hostVars: 6,
                hostBindings: function(i, o) {
                    i & 2 && (Yi(o.style()), pt(o.containerClass()), Ki("display", o.badgeDisabled() ? "none" : null));
                },
                inputs: {
                    styleClass: [1, "styleClass"],
                    style: [1, "style"],
                    badgeSize: [1, "badgeSize"],
                    size: [1, "size"],
                    severity: [1, "severity"],
                    value: [1, "value"],
                    badgeDisabled: [1, "badgeDisabled"]
                },
                features: [A([yo]), y],
                decls: 1,
                vars: 1,
                template: function(i, o) {
                    i & 1 && Ae(0), i & 2 && De(o.value());
                },
                dependencies: [Tt, _t],
                encapsulation: 2,
                changeDetection: 0
            });
        }
        return e;
    })(),
    vo = (() => {
        class e {
            static ɵfac = function(i) {
                return new(i || e)();
            };
            static ɵmod = L({
                type: e
            });
            static ɵinj = V({
                imports: [Ti, _t, _t]
            });
        }
        return e;
    })();
var fs = ["*"],
    gs = `
.p-icon {
    display: inline-block;
    vertical-align: baseline;
}

.p-icon-spin {
    -webkit-animation: p-icon-spin 2s infinite linear;
    animation: p-icon-spin 2s infinite linear;
}

@-webkit-keyframes p-icon-spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(359deg);
        transform: rotate(359deg);
    }
}

@keyframes p-icon-spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(359deg);
        transform: rotate(359deg);
    }
}
`,
    ms = (() => {
        class e extends k {
            name = "baseicon";
            inlineStyles = gs;
            static ɵfac = (() => {
                let t;
                return function(o) {
                    return (t || (t = _(e)))(o || e);
                };
            })();
            static ɵprov = C({
                token: e,
                factory: e.ɵfac
            });
        }
        return e;
    })();
var Qe = (() => {
    class e extends j {
        label;
        spin = !1;
        styleClass;
        role;
        ariaLabel;
        ariaHidden;
        ngOnInit() {
            super.ngOnInit(), this.getAttributes();
        }
        getAttributes() {
            let t = F(this.label);
            this.role = t ? void 0 : "img", this.ariaLabel = t ? void 0 : this.label, this.ariaHidden = t;
        }
        getClassNames() {
            return `p-icon ${this.styleClass?this.styleClass+" ":""}${this.spin?"p-icon-spin":""}`;
        }
        static ɵfac = (() => {
            let t;
            return function(o) {
                return (t || (t = _(e)))(o || e);
            };
        })();
        static ɵcmp = B({
            type: e,
            selectors: [
                ["ng-component"]
            ],
            hostAttrs: [1, "p-component", "p-iconwrapper"],
            inputs: {
                label: "label",
                spin: [2, "spin", "spin", D],
                styleClass: "styleClass"
            },
            features: [A([ms]), y],
            ngContentSelectors: fs,
            decls: 1,
            vars: 0,
            template: function(i, o) {
                i & 1 && (It(), xt(0));
            },
            encapsulation: 2,
            changeDetection: 0
        });
    }
    return e;
})();
var _o = (() => {
    class e extends Qe {
        pathId;
        ngOnInit() {
            this.pathId = "url(#" + se() + ")";
        }
        static ɵfac = (() => {
            let t;
            return function(o) {
                return (t || (t = _(e)))(o || e);
            };
        })();
        static ɵcmp = B({
            type: e,
            selectors: [
                ["SpinnerIcon"]
            ],
            features: [y],
            decls: 6,
            vars: 7,
            consts: [
                ["width", "14", "height", "14", "viewBox", "0 0 14 14", "fill", "none", "xmlns", "http://www.w3.org/2000/svg"],
                ["d", "M6.99701 14C5.85441 13.999 4.72939 13.7186 3.72012 13.1832C2.71084 12.6478 1.84795 11.8737 1.20673 10.9284C0.565504 9.98305 0.165424 8.89526 0.041387 7.75989C-0.0826496 6.62453 0.073125 5.47607 0.495122 4.4147C0.917119 3.35333 1.59252 2.4113 2.46241 1.67077C3.33229 0.930247 4.37024 0.413729 5.4857 0.166275C6.60117 -0.0811796 7.76026 -0.0520535 8.86188 0.251112C9.9635 0.554278 10.9742 1.12227 11.8057 1.90555C11.915 2.01493 11.9764 2.16319 11.9764 2.31778C11.9764 2.47236 11.915 2.62062 11.8057 2.73C11.7521 2.78503 11.688 2.82877 11.6171 2.85864C11.5463 2.8885 11.4702 2.90389 11.3933 2.90389C11.3165 2.90389 11.2404 2.8885 11.1695 2.85864C11.0987 2.82877 11.0346 2.78503 10.9809 2.73C9.9998 1.81273 8.73246 1.26138 7.39226 1.16876C6.05206 1.07615 4.72086 1.44794 3.62279 2.22152C2.52471 2.99511 1.72683 4.12325 1.36345 5.41602C1.00008 6.70879 1.09342 8.08723 1.62775 9.31926C2.16209 10.5513 3.10478 11.5617 4.29713 12.1803C5.48947 12.7989 6.85865 12.988 8.17414 12.7157C9.48963 12.4435 10.6711 11.7264 11.5196 10.6854C12.3681 9.64432 12.8319 8.34282 12.8328 7C12.8328 6.84529 12.8943 6.69692 13.0038 6.58752C13.1132 6.47812 13.2616 6.41667 13.4164 6.41667C13.5712 6.41667 13.7196 6.47812 13.8291 6.58752C13.9385 6.69692 14 6.84529 14 7C14 8.85651 13.2622 10.637 11.9489 11.9497C10.6356 13.2625 8.85432 14 6.99701 14Z", "fill", "currentColor"],
                [3, "id"],
                ["width", "14", "height", "14", "fill", "white"]
            ],
            template: function(i, o) {
                i & 1 && (Se(), ht(0, "svg", 0)(1, "g"), nt(2, "path", 1), ft(), ht(3, "defs")(4, "clipPath", 2), nt(5, "rect", 3), ft()()()), i & 2 && (pt(o.getClassNames()), R("aria-label", o.ariaLabel)("aria-hidden", o.ariaHidden)("role", o.role), M(), R("clip-path", o.pathId), M(3), I("id", o.pathId));
            },
            encapsulation: 2
        });
    }
    return e;
})();
var uu = (() => {
    class e extends Qe {
        static ɵfac = (() => {
            let t;
            return function(o) {
                return (t || (t = _(e)))(o || e);
            };
        })();
        static ɵcmp = B({
            type: e,
            selectors: [
                ["TimesIcon"]
            ],
            features: [y],
            decls: 2,
            vars: 5,
            consts: [
                ["width", "14", "height", "14", "viewBox", "0 0 14 14", "fill", "none", "xmlns", "http://www.w3.org/2000/svg"],
                ["d", "M8.01186 7.00933L12.27 2.75116C12.341 2.68501 12.398 2.60524 12.4375 2.51661C12.4769 2.42798 12.4982 2.3323 12.4999 2.23529C12.5016 2.13827 12.4838 2.0419 12.4474 1.95194C12.4111 1.86197 12.357 1.78024 12.2884 1.71163C12.2198 1.64302 12.138 1.58893 12.0481 1.55259C11.9581 1.51625 11.8617 1.4984 11.7647 1.50011C11.6677 1.50182 11.572 1.52306 11.4834 1.56255C11.3948 1.60204 11.315 1.65898 11.2488 1.72997L6.99067 5.98814L2.7325 1.72997C2.59553 1.60234 2.41437 1.53286 2.22718 1.53616C2.03999 1.53946 1.8614 1.61529 1.72901 1.74767C1.59663 1.88006 1.5208 2.05865 1.5175 2.24584C1.5142 2.43303 1.58368 2.61419 1.71131 2.75116L5.96948 7.00933L1.71131 11.2675C1.576 11.403 1.5 11.5866 1.5 11.7781C1.5 11.9696 1.576 12.1532 1.71131 12.2887C1.84679 12.424 2.03043 12.5 2.2219 12.5C2.41338 12.5 2.59702 12.424 2.7325 12.2887L6.99067 8.03052L11.2488 12.2887C11.3843 12.424 11.568 12.5 11.7594 12.5C11.9509 12.5 12.1346 12.424 12.27 12.2887C12.4053 12.1532 12.4813 11.9696 12.4813 11.7781C12.4813 11.5866 12.4053 11.403 12.27 11.2675L8.01186 7.00933Z", "fill", "currentColor"]
            ],
            template: function(i, o) {
                i & 1 && (Se(), ht(0, "svg", 0), nt(1, "path", 1), ft()), i & 2 && (pt(o.getClassNames()), R("aria-label", o.ariaLabel)("aria-hidden", o.ariaHidden)("role", o.role));
            },
            encapsulation: 2
        });
    }
    return e;
})();
var bs = ["content"],
    ys = ["loadingicon"],
    vs = ["icon"],
    _s = ["*"],
    Eo = e => ({
        class: e
    });

function Cs(e, n) {
    e & 1 && Zi(0);
}

function Ss(e, n) {
    if (e & 1 && nt(0, "span", 8), e & 2) {
        let t = X(3);
        I("ngClass", t.iconClass()), R("aria-hidden", !0)("data-pc-section", "loadingicon");
    }
}

function Es(e, n) {
    if (e & 1 && nt(0, "SpinnerIcon", 9), e & 2) {
        let t = X(3);
        I("styleClass", t.spinnerIconClass())("spin", !0), R("aria-hidden", !0)("data-pc-section", "loadingicon");
    }
}

function ws(e, n) {
    if (e & 1 && (Ee(0), At(1, Ss, 1, 3, "span", 6)(2, Es, 1, 4, "SpinnerIcon", 7), we()), e & 2) {
        let t = X(2);
        M(), I("ngIf", t.loadingIcon), M(), I("ngIf", !t.loadingIcon);
    }
}

function As(e, n) {}

function Ds(e, n) {
    if (e & 1 && At(0, As, 0, 0, "ng-template", 10), e & 2) {
        let t = X(2);
        I("ngIf", t.loadingIconTemplate || t._loadingIconTemplate);
    }
}

function Is(e, n) {
    if (e & 1 && (Ee(0), At(1, ws, 3, 2, "ng-container", 2)(2, Ds, 1, 1, null, 5), we()), e & 2) {
        let t = X();
        M(), I("ngIf", !t.loadingIconTemplate && !t._loadingIconTemplate), M(), I("ngTemplateOutlet", t.loadingIconTemplate || t._loadingIconTemplate)("ngTemplateOutletContext", ei(3, Eo, t.iconClass()));
    }
}

function xs(e, n) {
    if (e & 1 && nt(0, "span", 8), e & 2) {
        let t = X(2);
        pt(t.icon), I("ngClass", t.iconClass()), R("data-pc-section", "icon");
    }
}

function Ts(e, n) {}

function Os(e, n) {
    if (e & 1 && At(0, Ts, 0, 0, "ng-template", 10), e & 2) {
        let t = X(2);
        I("ngIf", !t.icon && (t.iconTemplate || t._iconTemplate));
    }
}

function Ms(e, n) {
    if (e & 1 && (Ee(0), At(1, xs, 1, 4, "span", 11)(2, Os, 1, 1, null, 5), we()), e & 2) {
        let t = X();
        M(), I("ngIf", t.icon && !t.iconTemplate && !t._iconTemplate), M(), I("ngTemplateOutlet", t.iconTemplate || t._iconTemplate)("ngTemplateOutletContext", ei(3, Eo, t.iconClass()));
    }
}

function Fs(e, n) {
    if (e & 1 && (ht(0, "span", 12), Ae(1), ft()), e & 2) {
        let t = X();
        R("aria-hidden", t.icon && !t.label)("data-pc-section", "label"), M(), De(t.label);
    }
}

function Ns(e, n) {
    if (e & 1 && nt(0, "p-badge", 13), e & 2) {
        let t = X();
        I("value", t.badge)("severity", t.badgeSeverity);
    }
}
var Vs = ({
        dt: e
    }) => `
.p-button {
    display: inline-flex;
    cursor: pointer;
    user-select: none;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    position: relative;
    color: ${e("button.primary.color")};
    background: ${e("button.primary.background")};
    border: 1px solid ${e("button.primary.border.color")};
    padding-block: ${e("button.padding.y")};
    padding-inline: ${e("button.padding.x")};
    font-size: 1rem;
    font-family: inherit;
    font-feature-settings: inherit;
    transition: background ${e("button.transition.duration")}, color ${e("button.transition.duration")}, border-color ${e("button.transition.duration")},
            outline-color ${e("button.transition.duration")}, box-shadow ${e("button.transition.duration")};
    border-radius: ${e("button.border.radius")};
    outline-color: transparent;
    gap: ${e("button.gap")};
}

.p-button-icon,
.p-button-icon:before,
.p-button-icon:after {
    line-height: inherit;
}

.p-button:disabled {
    cursor: default;
}

.p-button-icon-right {
    order: 1;
}

.p-button-icon-right:dir(rtl) {
    order: -1;
}

.p-button:not(.p-button-vertical) .p-button-icon:not(.p-button-icon-right):dir(rtl) {
    order: 1;
}

.p-button-icon-bottom {
    order: 2;
}

.p-button-icon-only {
    width: ${e("button.icon.only.width")};
    padding-inline-start: 0;
    padding-inline-end: 0;
    gap: 0;
}

.p-button-icon-only.p-button-rounded {
    border-radius: 50%;
    height: ${e("button.icon.only.width")};
}

.p-button-icon-only .p-button-label {
    visibility: hidden;
    width: 0;
}

.p-button-sm {
    font-size: ${e("button.sm.font.size")};
    padding-block: ${e("button.sm.padding.y")};
    padding-inline: ${e("button.sm.padding.x")};
}

.p-button-sm .p-button-icon {
    font-size: ${e("button.sm.font.size")};
}

.p-button-sm.p-button-icon-only {
    width: ${e("button.sm.icon.only.width")};
}

.p-button-sm.p-button-icon-only.p-button-rounded {
    height: ${e("button.sm.icon.only.width")};
}

.p-button-lg {
    font-size: ${e("button.lg.font.size")};
    padding-block: ${e("button.lg.padding.y")};
    padding-inline: ${e("button.lg.padding.x")};
}

.p-button-lg .p-button-icon {
    font-size: ${e("button.lg.font.size")};
}

.p-button-lg.p-button-icon-only {
    width: ${e("button.lg.icon.only.width")};
}

.p-button-lg.p-button-icon-only.p-button-rounded {
    height: ${e("button.lg.icon.only.width")};
}

.p-button-vertical {
    flex-direction: column;
}

.p-button-label {
    font-weight: ${e("button.label.font.weight")};
}

.p-button-fluid {
    width: 100%;
}

.p-button-fluid.p-button-icon-only {
    width: ${e("button.icon.only.width")};
}

.p-button:not(:disabled):hover {
    background: ${e("button.primary.hover.background")};
    border: 1px solid ${e("button.primary.hover.border.color")};
    color: ${e("button.primary.hover.color")};
}

.p-button:not(:disabled):active {
    background: ${e("button.primary.active.background")};
    border: 1px solid ${e("button.primary.active.border.color")};
    color: ${e("button.primary.active.color")};
}

.p-button:focus-visible {
    box-shadow: ${e("button.primary.focus.ring.shadow")};
    outline: ${e("button.focus.ring.width")} ${e("button.focus.ring.style")} ${e("button.primary.focus.ring.color")};
    outline-offset: ${e("button.focus.ring.offset")};
}

.p-button .p-badge {
    min-width: ${e("button.badge.size")};
    height: ${e("button.badge.size")};
    line-height: ${e("button.badge.size")};
}

.p-button-raised {
    box-shadow: ${e("button.raised.shadow")};
}

.p-button-rounded {
    border-radius: ${e("button.rounded.border.radius")};
}

.p-button-secondary {
    background: ${e("button.secondary.background")};
    border: 1px solid ${e("button.secondary.border.color")};
    color: ${e("button.secondary.color")};
}

.p-button-secondary:not(:disabled):hover {
    background: ${e("button.secondary.hover.background")};
    border: 1px solid ${e("button.secondary.hover.border.color")};
    color: ${e("button.secondary.hover.color")};
}

.p-button-secondary:not(:disabled):active {
    background: ${e("button.secondary.active.background")};
    border: 1px solid ${e("button.secondary.active.border.color")};
    color: ${e("button.secondary.active.color")};
}

.p-button-secondary:focus-visible {
    outline-color: ${e("button.secondary.focus.ring.color")};
    box-shadow: ${e("button.secondary.focus.ring.shadow")};
}

.p-button-success {
    background: ${e("button.success.background")};
    border: 1px solid ${e("button.success.border.color")};
    color: ${e("button.success.color")};
}

.p-button-success:not(:disabled):hover {
    background: ${e("button.success.hover.background")};
    border: 1px solid ${e("button.success.hover.border.color")};
    color: ${e("button.success.hover.color")};
}

.p-button-success:not(:disabled):active {
    background: ${e("button.success.active.background")};
    border: 1px solid ${e("button.success.active.border.color")};
    color: ${e("button.success.active.color")};
}

.p-button-success:focus-visible {
    outline-color: ${e("button.success.focus.ring.color")};
    box-shadow: ${e("button.success.focus.ring.shadow")};
}

.p-button-info {
    background: ${e("button.info.background")};
    border: 1px solid ${e("button.info.border.color")};
    color: ${e("button.info.color")};
}

.p-button-info:not(:disabled):hover {
    background: ${e("button.info.hover.background")};
    border: 1px solid ${e("button.info.hover.border.color")};
    color: ${e("button.info.hover.color")};
}

.p-button-info:not(:disabled):active {
    background: ${e("button.info.active.background")};
    border: 1px solid ${e("button.info.active.border.color")};
    color: ${e("button.info.active.color")};
}

.p-button-info:focus-visible {
    outline-color: ${e("button.info.focus.ring.color")};
    box-shadow: ${e("button.info.focus.ring.shadow")};
}

.p-button-warn {
    background: ${e("button.warn.background")};
    border: 1px solid ${e("button.warn.border.color")};
    color: ${e("button.warn.color")};
}

.p-button-warn:not(:disabled):hover {
    background: ${e("button.warn.hover.background")};
    border: 1px solid ${e("button.warn.hover.border.color")};
    color: ${e("button.warn.hover.color")};
}

.p-button-warn:not(:disabled):active {
    background: ${e("button.warn.active.background")};
    border: 1px solid ${e("button.warn.active.border.color")};
    color: ${e("button.warn.active.color")};
}

.p-button-warn:focus-visible {
    outline-color: ${e("button.warn.focus.ring.color")};
    box-shadow: ${e("button.warn.focus.ring.shadow")};
}

.p-button-help {
    background: ${e("button.help.background")};
    border: 1px solid ${e("button.help.border.color")};
    color: ${e("button.help.color")};
}

.p-button-help:not(:disabled):hover {
    background: ${e("button.help.hover.background")};
    border: 1px solid ${e("button.help.hover.border.color")};
    color: ${e("button.help.hover.color")};
}

.p-button-help:not(:disabled):active {
    background: ${e("button.help.active.background")};
    border: 1px solid ${e("button.help.active.border.color")};
    color: ${e("button.help.active.color")};
}

.p-button-help:focus-visible {
    outline-color: ${e("button.help.focus.ring.color")};
    box-shadow: ${e("button.help.focus.ring.shadow")};
}

.p-button-danger {
    background: ${e("button.danger.background")};
    border: 1px solid ${e("button.danger.border.color")};
    color: ${e("button.danger.color")};
}

.p-button-danger:not(:disabled):hover {
    background: ${e("button.danger.hover.background")};
    border: 1px solid ${e("button.danger.hover.border.color")};
    color: ${e("button.danger.hover.color")};
}

.p-button-danger:not(:disabled):active {
    background: ${e("button.danger.active.background")};
    border: 1px solid ${e("button.danger.active.border.color")};
    color: ${e("button.danger.active.color")};
}

.p-button-danger:focus-visible {
    outline-color: ${e("button.danger.focus.ring.color")};
    box-shadow: ${e("button.danger.focus.ring.shadow")};
}

.p-button-contrast {
    background: ${e("button.contrast.background")};
    border: 1px solid ${e("button.contrast.border.color")};
    color: ${e("button.contrast.color")};
}

.p-button-contrast:not(:disabled):hover {
    background: ${e("button.contrast.hover.background")};
    border: 1px solid ${e("button.contrast.hover.border.color")};
    color: ${e("button.contrast.hover.color")};
}

.p-button-contrast:not(:disabled):active {
    background: ${e("button.contrast.active.background")};
    border: 1px solid ${e("button.contrast.active.border.color")};
    color: ${e("button.contrast.active.color")};
}

.p-button-contrast:focus-visible {
    outline-color: ${e("button.contrast.focus.ring.color")};
    box-shadow: ${e("button.contrast.focus.ring.shadow")};
}

.p-button-outlined {
    background: transparent;
    border-color: ${e("button.outlined.primary.border.color")};
    color: ${e("button.outlined.primary.color")};
}

.p-button-outlined:not(:disabled):hover {
    background: ${e("button.outlined.primary.hover.background")};
    border-color: ${e("button.outlined.primary.border.color")};
    color: ${e("button.outlined.primary.color")};
}

.p-button-outlined:not(:disabled):active {
    background: ${e("button.outlined.primary.active.background")};
    border-color: ${e("button.outlined.primary.border.color")};
    color: ${e("button.outlined.primary.color")};
}

.p-button-outlined.p-button-secondary {
    border-color: ${e("button.outlined.secondary.border.color")};
    color: ${e("button.outlined.secondary.color")};
}

.p-button-outlined.p-button-secondary:not(:disabled):hover {
    background: ${e("button.outlined.secondary.hover.background")};
    border-color: ${e("button.outlined.secondary.border.color")};
    color: ${e("button.outlined.secondary.color")};
}

.p-button-outlined.p-button-secondary:not(:disabled):active {
    background: ${e("button.outlined.secondary.active.background")};
    border-color: ${e("button.outlined.secondary.border.color")};
    color: ${e("button.outlined.secondary.color")};
}

.p-button-outlined.p-button-success {
    border-color: ${e("button.outlined.success.border.color")};
    color: ${e("button.outlined.success.color")};
}

.p-button-outlined.p-button-success:not(:disabled):hover {
    background: ${e("button.outlined.success.hover.background")};
    border-color: ${e("button.outlined.success.border.color")};
    color: ${e("button.outlined.success.color")};
}

.p-button-outlined.p-button-success:not(:disabled):active {
    background: ${e("button.outlined.success.active.background")};
    border-color: ${e("button.outlined.success.border.color")};
    color: ${e("button.outlined.success.color")};
}

.p-button-outlined.p-button-info {
    border-color: ${e("button.outlined.info.border.color")};
    color: ${e("button.outlined.info.color")};
}

.p-button-outlined.p-button-info:not(:disabled):hover {
    background: ${e("button.outlined.info.hover.background")};
    border-color: ${e("button.outlined.info.border.color")};
    color: ${e("button.outlined.info.color")};
}

.p-button-outlined.p-button-info:not(:disabled):active {
    background: ${e("button.outlined.info.active.background")};
    border-color: ${e("button.outlined.info.border.color")};
    color: ${e("button.outlined.info.color")};
}

.p-button-outlined.p-button-warn {
    border-color: ${e("button.outlined.warn.border.color")};
    color: ${e("button.outlined.warn.color")};
}

.p-button-outlined.p-button-warn:not(:disabled):hover {
    background: ${e("button.outlined.warn.hover.background")};
    border-color: ${e("button.outlined.warn.border.color")};
    color: ${e("button.outlined.warn.color")};
}

.p-button-outlined.p-button-warn:not(:disabled):active {
    background: ${e("button.outlined.warn.active.background")};
    border-color: ${e("button.outlined.warn.border.color")};
    color: ${e("button.outlined.warn.color")};
}

.p-button-outlined.p-button-help {
    border-color: ${e("button.outlined.help.border.color")};
    color: ${e("button.outlined.help.color")};
}

.p-button-outlined.p-button-help:not(:disabled):hover {
    background: ${e("button.outlined.help.hover.background")};
    border-color: ${e("button.outlined.help.border.color")};
    color: ${e("button.outlined.help.color")};
}

.p-button-outlined.p-button-help:not(:disabled):active {
    background: ${e("button.outlined.help.active.background")};
    border-color: ${e("button.outlined.help.border.color")};
    color: ${e("button.outlined.help.color")};
}

.p-button-outlined.p-button-danger {
    border-color: ${e("button.outlined.danger.border.color")};
    color: ${e("button.outlined.danger.color")};
}

.p-button-outlined.p-button-danger:not(:disabled):hover {
    background: ${e("button.outlined.danger.hover.background")};
    border-color: ${e("button.outlined.danger.border.color")};
    color: ${e("button.outlined.danger.color")};
}

.p-button-outlined.p-button-danger:not(:disabled):active {
    background: ${e("button.outlined.danger.active.background")};
    border-color: ${e("button.outlined.danger.border.color")};
    color: ${e("button.outlined.danger.color")};
}

.p-button-outlined.p-button-contrast {
    border-color: ${e("button.outlined.contrast.border.color")};
    color: ${e("button.outlined.contrast.color")};
}

.p-button-outlined.p-button-contrast:not(:disabled):hover {
    background: ${e("button.outlined.contrast.hover.background")};
    border-color: ${e("button.outlined.contrast.border.color")};
    color: ${e("button.outlined.contrast.color")};
}

.p-button-outlined.p-button-contrast:not(:disabled):active {
    background: ${e("button.outlined.contrast.active.background")};
    border-color: ${e("button.outlined.contrast.border.color")};
    color: ${e("button.outlined.contrast.color")};
}

.p-button-outlined.p-button-plain {
    border-color: ${e("button.outlined.plain.border.color")};
    color: ${e("button.outlined.plain.color")};
}

.p-button-outlined.p-button-plain:not(:disabled):hover {
    background: ${e("button.outlined.plain.hover.background")};
    border-color: ${e("button.outlined.plain.border.color")};
    color: ${e("button.outlined.plain.color")};
}

.p-button-outlined.p-button-plain:not(:disabled):active {
    background: ${e("button.outlined.plain.active.background")};
    border-color: ${e("button.outlined.plain.border.color")};
    color: ${e("button.outlined.plain.color")};
}

.p-button-text {
    background: transparent;
    border-color: transparent;
    color: ${e("button.text.primary.color")};
}

.p-button-text:not(:disabled):hover {
    background: ${e("button.text.primary.hover.background")};
    border-color: transparent;
    color: ${e("button.text.primary.color")};
}

.p-button-text:not(:disabled):active {
    background: ${e("button.text.primary.active.background")};
    border-color: transparent;
    color: ${e("button.text.primary.color")};
}

.p-button-text.p-button-secondary {
    background: transparent;
    border-color: transparent;
    color: ${e("button.text.secondary.color")};
}

.p-button-text.p-button-secondary:not(:disabled):hover {
    background: ${e("button.text.secondary.hover.background")};
    border-color: transparent;
    color: ${e("button.text.secondary.color")};
}

.p-button-text.p-button-secondary:not(:disabled):active {
    background: ${e("button.text.secondary.active.background")};
    border-color: transparent;
    color: ${e("button.text.secondary.color")};
}

.p-button-text.p-button-success {
    background: transparent;
    border-color: transparent;
    color: ${e("button.text.success.color")};
}

.p-button-text.p-button-success:not(:disabled):hover {
    background: ${e("button.text.success.hover.background")};
    border-color: transparent;
    color: ${e("button.text.success.color")};
}

.p-button-text.p-button-success:not(:disabled):active {
    background: ${e("button.text.success.active.background")};
    border-color: transparent;
    color: ${e("button.text.success.color")};
}

.p-button-text.p-button-info {
    background: transparent;
    border-color: transparent;
    color: ${e("button.text.info.color")};
}

.p-button-text.p-button-info:not(:disabled):hover {
    background: ${e("button.text.info.hover.background")};
    border-color: transparent;
    color: ${e("button.text.info.color")};
}

.p-button-text.p-button-info:not(:disabled):active {
    background: ${e("button.text.info.active.background")};
    border-color: transparent;
    color: ${e("button.text.info.color")};
}

.p-button-text.p-button-warn {
    background: transparent;
    border-color: transparent;
    color: ${e("button.text.warn.color")};
}

.p-button-text.p-button-warn:not(:disabled):hover {
    background: ${e("button.text.warn.hover.background")};
    border-color: transparent;
    color: ${e("button.text.warn.color")};
}

.p-button-text.p-button-warn:not(:disabled):active {
    background: ${e("button.text.warn.active.background")};
    border-color: transparent;
    color: ${e("button.text.warn.color")};
}

.p-button-text.p-button-help {
    background: transparent;
    border-color: transparent;
    color: ${e("button.text.help.color")};
}

.p-button-text.p-button-help:not(:disabled):hover {
    background: ${e("button.text.help.hover.background")};
    border-color: transparent;
    color: ${e("button.text.help.color")};
}

.p-button-text.p-button-help:not(:disabled):active {
    background: ${e("button.text.help.active.background")};
    border-color: transparent;
    color: ${e("button.text.help.color")};
}

.p-button-text.p-button-danger {
    background: transparent;
    border-color: transparent;
    color: ${e("button.text.danger.color")};
}

.p-button-text.p-button-danger:not(:disabled):hover {
    background: ${e("button.text.danger.hover.background")};
    border-color: transparent;
    color: ${e("button.text.danger.color")};
}

.p-button-text.p-button-danger:not(:disabled):active {
    background: ${e("button.text.danger.active.background")};
    border-color: transparent;
    color: ${e("button.text.danger.color")};
}

.p-button-text.p-button-plain {
    background: transparent;
    border-color: transparent;
    color: ${e("button.text.plain.color")};
}

.p-button-text.p-button-plain:not(:disabled):hover {
    background: ${e("button.text.plain.hover.background")};
    border-color: transparent;
    color: ${e("button.text.plain.color")};
}

.p-button-text.p-button-plain:not(:disabled):active {
    background: ${e("button.text.plain.active.background")};
    border-color: transparent;
    color: ${e("button.text.plain.color")};
}

.p-button-text.p-button-contrast {
    background: transparent;
    border-color: transparent;
    color: ${e("button.text.contrast.color")};
}

.p-button-text.p-button-contrast:not(:disabled):hover {
    background: ${e("button.text.contrast.hover.background")};
    border-color: transparent;
    color: ${e("button.text.contrast.color")};
}

.p-button-text.p-button-contrast:not(:disabled):active {
    background: ${e("button.text.contrast.active.background")};
    border-color: transparent;
    color: ${e("button.text.contrast.color")};
}

.p-button-link {
    background: transparent;
    border-color: transparent;
    color: ${e("button.link.color")};
}

.p-button-link:not(:disabled):hover {
    background: transparent;
    border-color: transparent;
    color: ${e("button.link.hover.color")};
}

.p-button-link:not(:disabled):hover .p-button-label {
    text-decoration: underline;
}

.p-button-link:not(:disabled):active {
    background: transparent;
    border-color: transparent;
    color: ${e("button.link.active.color")};
}

/* For PrimeNG */
.p-button-icon-right {
    order: 1;
}

p-button[iconpos='right'] spinnericon {
    order: 1;
}
`,
    Ls = {
        root: ({
            instance: e,
            props: n
        }) => ["p-button p-component", {
            "p-button-icon-only": e.hasIcon && !n.label && !n.badge,
            "p-button-vertical": (n.iconPos === "top" || n.iconPos === "bottom") && n.label,
            "p-button-loading": n.loading,
            "p-button-link": n.link,
            [`p-button-${n.severity}`]: n.severity,
            "p-button-raised": n.raised,
            "p-button-rounded": n.rounded,
            "p-button-text": n.text,
            "p-button-outlined": n.outlined,
            "p-button-sm": n.size === "small",
            "p-button-lg": n.size === "large",
            "p-button-plain": n.plain,
            "p-button-fluid": n.fluid
        }],
        loadingIcon: "p-button-loading-icon",
        icon: ({
            props: e
        }) => ["p-button-icon", {
            [`p-button-icon-${e.iconPos}`]: e.label
        }],
        label: "p-button-label"
    },
    St = (() => {
        class e extends k {
            name = "button";
            theme = Vs;
            classes = Ls;
            static ɵfac = (() => {
                let t;
                return function(o) {
                    return (t || (t = _(e)))(o || e);
                };
            })();
            static ɵprov = C({
                token: e,
                factory: e.ɵfac
            });
        }
        return e;
    })();
var Ct = {
        button: "p-button",
        component: "p-component",
        iconOnly: "p-button-icon-only",
        disabled: "p-disabled",
        loading: "p-button-loading",
        labelOnly: "p-button-loading-label-only"
    },
    Co = (() => {
        class e extends j {
            _componentStyle = g(St);
            static ɵfac = (() => {
                let t;
                return function(o) {
                    return (t || (t = _(e)))(o || e);
                };
            })();
            static ɵdir = b({
                type: e,
                selectors: [
                    ["", "pButtonLabel", ""]
                ],
                hostVars: 2,
                hostBindings: function(i, o) {
                    i & 2 && Dt("p-button-label", !0);
                },
                features: [A([St]), y]
            });
        }
        return e;
    })(),
    So = (() => {
        class e extends j {
            _componentStyle = g(St);
            static ɵfac = (() => {
                let t;
                return function(o) {
                    return (t || (t = _(e)))(o || e);
                };
            })();
            static ɵdir = b({
                type: e,
                selectors: [
                    ["", "pButtonIcon", ""]
                ],
                hostVars: 2,
                hostBindings: function(i, o) {
                    i & 2 && Dt("p-button-icon", !0);
                },
                features: [A([St]), y]
            });
        }
        return e;
    })(),
    Nu = (() => {
        class e extends j {
            iconPos = "left";
            loadingIcon;
            set label(t) {
                this._label = t, this.initialized && (this.updateLabel(), this.updateIcon(), this.setStyleClass());
            }
            set icon(t) {
                this._icon = t, this.initialized && (this.updateIcon(), this.setStyleClass());
            }
            get loading() {
                return this._loading;
            }
            set loading(t) {
                this._loading = t, this.initialized && (this.updateIcon(), this.setStyleClass());
            }
            _buttonProps;
            iconSignal = Je(So);
            labelSignal = Je(Co);
            isIconOnly = rt(() => !!(!this.labelSignal() && this.iconSignal()));
            set buttonProps(t) {
                this._buttonProps = t, t && typeof t == "object" && Object.entries(t).forEach(([i, o]) => this[`_${i}`] !== o && (this[`_${i}`] = o));
            }
            _severity;
            get severity() {
                return this._severity;
            }
            set severity(t) {
                this._severity = t, this.initialized && this.setStyleClass();
            }
            raised = !1;
            rounded = !1;
            text = !1;
            outlined = !1;
            size = null;
            plain = !1;
            fluid;
            _label;
            _icon;
            _loading = !1;
            initialized;
            get htmlElement() {
                return this.el.nativeElement;
            }
            _internalClasses = Object.values(Ct);
            isTextButton = rt(() => !!(!this.iconSignal() && this.labelSignal() && this.text));
            get label() {
                return this._label;
            }
            get icon() {
                return this._icon;
            }
            get buttonProps() {
                return this._buttonProps;
            }
            spinnerIcon = `<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg" class="p-icon-spin">
        <g clip-path="url(#clip0_417_21408)">
            <path
                d="M6.99701 14C5.85441 13.999 4.72939 13.7186 3.72012 13.1832C2.71084 12.6478 1.84795 11.8737 1.20673 10.9284C0.565504 9.98305 0.165424 8.89526 0.041387 7.75989C-0.0826496 6.62453 0.073125 5.47607 0.495122 4.4147C0.917119 3.35333 1.59252 2.4113 2.46241 1.67077C3.33229 0.930247 4.37024 0.413729 5.4857 0.166275C6.60117 -0.0811796 7.76026 -0.0520535 8.86188 0.251112C9.9635 0.554278 10.9742 1.12227 11.8057 1.90555C11.915 2.01493 11.9764 2.16319 11.9764 2.31778C11.9764 2.47236 11.915 2.62062 11.8057 2.73C11.7521 2.78503 11.688 2.82877 11.6171 2.85864C11.5463 2.8885 11.4702 2.90389 11.3933 2.90389C11.3165 2.90389 11.2404 2.8885 11.1695 2.85864C11.0987 2.82877 11.0346 2.78503 10.9809 2.73C9.9998 1.81273 8.73246 1.26138 7.39226 1.16876C6.05206 1.07615 4.72086 1.44794 3.62279 2.22152C2.52471 2.99511 1.72683 4.12325 1.36345 5.41602C1.00008 6.70879 1.09342 8.08723 1.62775 9.31926C2.16209 10.5513 3.10478 11.5617 4.29713 12.1803C5.48947 12.7989 6.85865 12.988 8.17414 12.7157C9.48963 12.4435 10.6711 11.7264 11.5196 10.6854C12.3681 9.64432 12.8319 8.34282 12.8328 7C12.8328 6.84529 12.8943 6.69692 13.0038 6.58752C13.1132 6.47812 13.2616 6.41667 13.4164 6.41667C13.5712 6.41667 13.7196 6.47812 13.8291 6.58752C13.9385 6.69692 14 6.84529 14 7C14 8.85651 13.2622 10.637 11.9489 11.9497C10.6356 13.2625 8.85432 14 6.99701 14Z"
                fill="currentColor"
            />
        </g>
        <defs>
            <clipPath id="clip0_417_21408">
                <rect width="14" height="14" fill="white" />
            </clipPath>
        </defs>
    </svg>`;
            _componentStyle = g(St);
            ngAfterViewInit() {
                super.ngAfterViewInit(), yt(this.htmlElement, this.getStyleClass().join(" ")), this.createIcon(), this.createLabel(), this.initialized = !0;
            }
            ngOnChanges(t) {
                super.ngOnChanges(t);
                let {
                    buttonProps: i
                } = t;
                if (i) {
                    let o = i.currentValue;
                    for (let r in o) this[r] = o[r];
                }
            }
            getStyleClass() {
                let t = [Ct.button, Ct.component];
                return this.icon && !this.label && F(this.htmlElement.textContent) && t.push(Ct.iconOnly), this.loading && (t.push(Ct.disabled, Ct.loading), !this.icon && this.label && t.push(Ct.labelOnly), this.icon && !this.label && !F(this.htmlElement.textContent) && t.push(Ct.iconOnly)), this.text && t.push("p-button-text"), this.severity && t.push(`p-button-${this.severity}`), this.plain && t.push("p-button-plain"), this.raised && t.push("p-button-raised"), this.size && t.push(`p-button-${this.size}`), this.outlined && t.push("p-button-outlined"), this.rounded && t.push("p-button-rounded"), this.size === "small" && t.push("p-button-sm"), this.size === "large" && t.push("p-button-lg"), this.hasFluid && t.push("p-button-fluid"), t;
            }
            get hasFluid() {
                let i = this.el.nativeElement.closest("p-fluid");
                return F(this.fluid) ? !!i : this.fluid;
            }
            setStyleClass() {
                let t = this.getStyleClass();
                this.removeExistingSeverityClass(), this.htmlElement.classList.remove(...this._internalClasses), this.htmlElement.classList.add(...t);
            }
            removeExistingSeverityClass() {
                let t = ["success", "info", "warn", "danger", "help", "primary", "secondary", "contrast"],
                    i = this.htmlElement.classList.value.split(" ").find(o => t.some(r => o === `p-button-${r}`));
                i && this.htmlElement.classList.remove(i);
            }
            createLabel() {
                if (!Ht(this.htmlElement, ".p-button-label") && this.label) {
                    let i = this.document.createElement("span");
                    this.icon && !this.label && i.setAttribute("aria-hidden", "true"), i.className = "p-button-label", i.appendChild(this.document.createTextNode(this.label)), this.htmlElement.appendChild(i);
                }
            }
            createIcon() {
                if (!Ht(this.htmlElement, ".p-button-icon") && (this.icon || this.loading)) {
                    let i = this.document.createElement("span");
                    i.className = "p-button-icon", i.setAttribute("aria-hidden", "true");
                    let o = this.label ? "p-button-icon-" + this.iconPos : null;
                    o && yt(i, o);
                    let r = this.getIconClass();
                    r && yt(i, r), !this.loadingIcon && this.loading && (i.innerHTML = this.spinnerIcon), this.htmlElement.insertBefore(i, this.htmlElement.firstChild);
                }
            }
            updateLabel() {
                let t = Ht(this.htmlElement, ".p-button-label");
                if (!this.label) {
                    t && this.htmlElement.removeChild(t);
                    return;
                }
                t ? t.textContent = this.label : this.createLabel();
            }
            updateIcon() {
                let t = Ht(this.htmlElement, ".p-button-icon"),
                    i = Ht(this.htmlElement, ".p-button-label");
                this.loading && !this.loadingIcon && t ? t.innerHTML = this.spinnerIcon : t ? .innerHTML && (t.innerHTML = ""), t ? this.iconPos ? t.className = "p-button-icon " + (i ? "p-button-icon-" + this.iconPos : "") + " " + this.getIconClass() : t.className = "p-button-icon " + this.getIconClass() : this.createIcon();
            }
            getIconClass() {
                return this.loading ? "p-button-loading-icon " + (this.loadingIcon ? this.loadingIcon : "p-icon") : this.icon || "p-hidden";
            }
            ngOnDestroy() {
                this.initialized = !1, super.ngOnDestroy();
            }
            static ɵfac = (() => {
                let t;
                return function(o) {
                    return (t || (t = _(e)))(o || e);
                };
            })();
            static ɵdir = b({
                type: e,
                selectors: [
                    ["", "pButton", ""]
                ],
                contentQueries: function(i, o, r) {
                    i & 1 && (ti(r, o.iconSignal, So, 5), ti(r, o.labelSignal, Co, 5)), i & 2 && Qi(2);
                },
                hostVars: 4,
                hostBindings: function(i, o) {
                    i & 2 && Dt("p-button-icon-only", o.isIconOnly())("p-button-text", o.isTextButton());
                },
                inputs: {
                    iconPos: "iconPos",
                    loadingIcon: "loadingIcon",
                    loading: "loading",
                    severity: "severity",
                    raised: [2, "raised", "raised", D],
                    rounded: [2, "rounded", "rounded", D],
                    text: [2, "text", "text", D],
                    outlined: [2, "outlined", "outlined", D],
                    size: "size",
                    plain: [2, "plain", "plain", D],
                    fluid: [2, "fluid", "fluid", D],
                    label: "label",
                    icon: "icon",
                    buttonProps: "buttonProps"
                },
                features: [A([St]), y, z]
            });
        }
        return e;
    })(),
    Rs = (() => {
        class e extends j {
            type = "button";
            iconPos = "left";
            icon;
            badge;
            label;
            disabled;
            loading = !1;
            loadingIcon;
            raised = !1;
            rounded = !1;
            text = !1;
            plain = !1;
            severity;
            outlined = !1;
            link = !1;
            tabindex;
            size;
            variant;
            style;
            styleClass;
            badgeClass;
            badgeSeverity = "secondary";
            ariaLabel;
            autofocus;
            fluid;
            onClick = new Q();
            onFocus = new Q();
            onBlur = new Q();
            contentTemplate;
            loadingIconTemplate;
            iconTemplate;
            _buttonProps;
            get buttonProps() {
                return this._buttonProps;
            }
            set buttonProps(t) {
                this._buttonProps = t, t && typeof t == "object" && Object.entries(t).forEach(([i, o]) => this[`_${i}`] !== o && (this[`_${i}`] = o));
            }
            get hasFluid() {
                let i = this.el.nativeElement.closest("p-fluid");
                return F(this.fluid) ? !!i : this.fluid;
            }
            _componentStyle = g(St);
            templates;
            _contentTemplate;
            _iconTemplate;
            _loadingIconTemplate;
            ngAfterContentInit() {
                this.templates ? .forEach(t => {
                    switch (t.getType()) {
                        case "content":
                            this._contentTemplate = t.template;
                            break;
                        case "icon":
                            this._iconTemplate = t.template;
                            break;
                        case "loadingicon":
                            this._loadingIconTemplate = t.template;
                            break;
                        default:
                            this._contentTemplate = t.template;
                            break;
                    }
                });
            }
            ngOnChanges(t) {
                super.ngOnChanges(t);
                let {
                    buttonProps: i
                } = t;
                if (i) {
                    let o = i.currentValue;
                    for (let r in o) this[r] = o[r];
                }
            }
            spinnerIconClass() {
                return Object.entries(this.iconClass()).filter(([, t]) => !!t).reduce((t, [i]) => t + ` ${i}`, "p-button-loading-icon");
            }
            iconClass() {
                return {
                    [`p-button-loading-icon pi-spin ${this.loadingIcon??""}`]: this.loading,
                    "p-button-icon": !0,
                    "p-button-icon-left": this.iconPos === "left" && this.label,
                    "p-button-icon-right": this.iconPos === "right" && this.label,
                    "p-button-icon-top": this.iconPos === "top" && this.label,
                    "p-button-icon-bottom": this.iconPos === "bottom" && this.label
                };
            }
            get buttonClass() {
                return {
                    "p-button p-component": !0,
                    "p-button-icon-only": (this.icon || this.iconTemplate || this._iconTemplate || this.loadingIcon || this.loadingIconTemplate || this._loadingIconTemplate) && !this.label,
                    "p-button-vertical": (this.iconPos === "top" || this.iconPos === "bottom") && this.label,
                    "p-button-loading": this.loading,
                    "p-button-loading-label-only": this.loading && !this.icon && this.label && !this.loadingIcon && this.iconPos === "left",
                    "p-button-link": this.link,
                    [`p-button-${this.severity}`]: this.severity,
                    "p-button-raised": this.raised,
                    "p-button-rounded": this.rounded,
                    "p-button-text": this.text || this.variant == "text",
                    "p-button-outlined": this.outlined || this.variant == "outlined",
                    "p-button-sm": this.size === "small",
                    "p-button-lg": this.size === "large",
                    "p-button-plain": this.plain,
                    "p-button-fluid": this.hasFluid,
                    [`${this.styleClass}`]: this.styleClass
                };
            }
            static ɵfac = (() => {
                let t;
                return function(o) {
                    return (t || (t = _(e)))(o || e);
                };
            })();
            static ɵcmp = B({
                type: e,
                selectors: [
                    ["p-button"]
                ],
                contentQueries: function(i, o, r) {
                    if (i & 1 && (Yt(r, bs, 5), Yt(r, ys, 5), Yt(r, vs, 5), Yt(r, oo, 4)), i & 2) {
                        let s;
                        Zt(s = Qt()) && (o.contentTemplate = s.first), Zt(s = Qt()) && (o.loadingIconTemplate = s.first), Zt(s = Qt()) && (o.iconTemplate = s.first), Zt(s = Qt()) && (o.templates = s);
                    }
                },
                inputs: {
                    type: "type",
                    iconPos: "iconPos",
                    icon: "icon",
                    badge: "badge",
                    label: "label",
                    disabled: [2, "disabled", "disabled", D],
                    loading: [2, "loading", "loading", D],
                    loadingIcon: "loadingIcon",
                    raised: [2, "raised", "raised", D],
                    rounded: [2, "rounded", "rounded", D],
                    text: [2, "text", "text", D],
                    plain: [2, "plain", "plain", D],
                    severity: "severity",
                    outlined: [2, "outlined", "outlined", D],
                    link: [2, "link", "link", D],
                    tabindex: [2, "tabindex", "tabindex", Ji],
                    size: "size",
                    variant: "variant",
                    style: "style",
                    styleClass: "styleClass",
                    badgeClass: "badgeClass",
                    badgeSeverity: "badgeSeverity",
                    ariaLabel: "ariaLabel",
                    autofocus: [2, "autofocus", "autofocus", D],
                    fluid: [2, "fluid", "fluid", D],
                    buttonProps: "buttonProps"
                },
                outputs: {
                    onClick: "onClick",
                    onFocus: "onFocus",
                    onBlur: "onBlur"
                },
                features: [A([St]), y, z],
                ngContentSelectors: _s,
                decls: 7,
                vars: 14,
                consts: [
                    ["pRipple", "", 3, "click", "focus", "blur", "ngStyle", "disabled", "ngClass", "pAutoFocus"],
                    [4, "ngTemplateOutlet"],
                    [4, "ngIf"],
                    ["class", "p-button-label", 4, "ngIf"],
                    [3, "value", "severity", 4, "ngIf"],
                    [4, "ngTemplateOutlet", "ngTemplateOutletContext"],
                    [3, "ngClass", 4, "ngIf"],
                    [3, "styleClass", "spin", 4, "ngIf"],
                    [3, "ngClass"],
                    [3, "styleClass", "spin"],
                    [3, "ngIf"],
                    [3, "class", "ngClass", 4, "ngIf"],
                    [1, "p-button-label"],
                    [3, "value", "severity"]
                ],
                template: function(i, o) {
                    i & 1 && (It(), ht(0, "button", 0), gt("click", function(s) {
                        return o.onClick.emit(s);
                    })("focus", function(s) {
                        return o.onFocus.emit(s);
                    })("blur", function(s) {
                        return o.onBlur.emit(s);
                    }), xt(1), At(2, Cs, 1, 0, "ng-container", 1)(3, Is, 3, 5, "ng-container", 2)(4, Ms, 3, 5, "ng-container", 2)(5, Fs, 2, 3, "span", 3)(6, Ns, 1, 2, "p-badge", 4), ft()), i & 2 && (I("ngStyle", o.style)("disabled", o.disabled || o.loading)("ngClass", o.buttonClass)("pAutoFocus", o.autofocus), R("type", o.type)("aria-label", o.ariaLabel)("data-pc-name", "button")("data-pc-section", "root")("tabindex", o.tabindex), M(2), I("ngTemplateOutlet", o.contentTemplate || o._contentTemplate), M(), I("ngIf", o.loading), M(), I("ngIf", !o.loading), M(), I("ngIf", !o.contentTemplate && !o._contentTemplate && o.label), M(), I("ngIf", !o.contentTemplate && !o._contentTemplate && o.badge));
                },
                dependencies: [Tt, tn, en, on, nn, go, bo, _o, vo, Ti, _t],
                encapsulation: 2,
                changeDetection: 0
            });
        }
        return e;
    })(),
    Vu = (() => {
        class e {
            static ɵfac = function(i) {
                return new(i || e)();
            };
            static ɵmod = L({
                type: e
            });
            static ɵinj = V({
                imports: [Tt, Rs, _t, _t]
            });
        }
        return e;
    })();
var $s = (() => {
        class e {
            static ɵfac = function(i) {
                return new(i || e)();
            };
            static ɵprov = C({
                token: e,
                factory: () => g(ks),
                providedIn: "root"
            });
        }
        return e;
    })(),
    Oi = class {},
    ks = (() => {
        class e extends $s {
            animationModuleType = g(Wi, {
                optional: !0
            });
            _nextAnimationId = 0;
            _renderer;
            constructor(t, i) {
                super();
                let o = {
                    id: "0",
                    encapsulation: Ui.None,
                    styles: [],
                    data: {
                        animation: []
                    }
                };
                if (this._renderer = t.createRenderer(i.body, o), this.animationModuleType === null && !Bs(this._renderer)) throw new Nt(3600, !1);
            }
            build(t) {
                let i = this._nextAnimationId;
                this._nextAnimationId++;
                let o = Array.isArray(t) ? sn(t) : t;
                return wo(this._renderer, null, i, "register", [o]), new Mi(i, this._renderer);
            }
            static ɵfac = function(i) {
                return new(i || e)(Kt(ji), Kt(st));
            };
            static ɵprov = C({
                token: e,
                factory: e.ɵfac,
                providedIn: "root"
            });
        }
        return e;
    })(),
    Mi = class extends Oi {
        _id;
        _renderer;
        constructor(n, t) {
            super(), this._id = n, this._renderer = t;
        }
        create(n, t) {
            return new Fi(this._id, n, t || {}, this._renderer);
        }
    },
    Fi = class {
        id;
        element;
        _renderer;
        parentPlayer = null;
        _started = !1;
        constructor(n, t, i, o) {
            this.id = n, this.element = t, this._renderer = o, this._command("create", i);
        }
        _listen(n, t) {
            return this._renderer.listen(this.element, `@@${this.id}:${n}`, t);
        }
        _command(n, ...t) {
            wo(this._renderer, this.element, this.id, n, t);
        }
        onDone(n) {
            this._listen("done", n);
        }
        onStart(n) {
            this._listen("start", n);
        }
        onDestroy(n) {
            this._listen("destroy", n);
        }
        init() {
            this._command("init");
        }
        hasStarted() {
            return this._started;
        }
        play() {
            this._command("play"), this._started = !0;
        }
        pause() {
            this._command("pause");
        }
        restart() {
            this._command("restart");
        }
        finish() {
            this._command("finish");
        }
        destroy() {
            this._command("destroy");
        }
        reset() {
            this._command("reset"), this._started = !1;
        }
        setPosition(n) {
            this._command("setPosition", n);
        }
        getPosition() {
            return Ps(this._renderer) ? .engine ? .players[this.id] ? .getPosition() ? ? 0;
        }
        totalTime = 0;
    };

function wo(e, n, t, i, o) {
    e.setProperty(n, `@@${t}:${i}`, o);
}

function Ps(e) {
    let n = e.ɵtype;
    return n === 0 ? e : n === 1 ? e.animationRenderer : null;
}

function Bs(e) {
    let n = e.ɵtype;
    return n === 0 || n === 1;
}
var Ao = class e {
        static isArray(n, t = !0) {
            return Array.isArray(n) && (t || n.length !== 0);
        }
        static isObject(n, t = !0) {
            return typeof n == "object" && !Array.isArray(n) && n != null && (t || Object.keys(n).length !== 0);
        }
        static equals(n, t, i) {
            return i ? this.resolveFieldData(n, i) === this.resolveFieldData(t, i) : this.equalsByValue(n, t);
        }
        static equalsByValue(n, t) {
            if (n === t) return !0;
            if (n && t && typeof n == "object" && typeof t == "object") {
                var i = Array.isArray(n),
                    o = Array.isArray(t),
                    r, s, a;
                if (i && o) {
                    if (s = n.length, s != t.length) return !1;
                    for (r = s; r-- !== 0;)
                        if (!this.equalsByValue(n[r], t[r])) return !1;
                    return !0;
                }
                if (i != o) return !1;
                var l = this.isDate(n),
                    c = this.isDate(t);
                if (l != c) return !1;
                if (l && c) return n.getTime() == t.getTime();
                var u = n instanceof RegExp,
                    p = t instanceof RegExp;
                if (u != p) return !1;
                if (u && p) return n.toString() == t.toString();
                var d = Object.keys(n);
                if (s = d.length, s !== Object.keys(t).length) return !1;
                for (r = s; r-- !== 0;)
                    if (!Object.prototype.hasOwnProperty.call(t, d[r])) return !1;
                for (r = s; r-- !== 0;)
                    if (a = d[r], !this.equalsByValue(n[a], t[a])) return !1;
                return !0;
            }
            return n !== n && t !== t;
        }
        static resolveFieldData(n, t) {
            if (n && t) {
                if (this.isFunction(t)) return t(n);
                if (t.indexOf(".") == -1) return n[t]; {
                    let i = t.split("."),
                        o = n;
                    for (let r = 0, s = i.length; r < s; ++r) {
                        if (o == null) return null;
                        o = o[i[r]];
                    }
                    return o;
                }
            } else return null;
        }
        static isFunction(n) {
            return !!(n && n.constructor && n.call && n.apply);
        }
        static reorderArray(n, t, i) {
            let o;
            n && t !== i && (i >= n.length && (i %= n.length, t %= n.length), n.splice(i, 0, n.splice(t, 1)[0]));
        }
        static insertIntoOrderedArray(n, t, i, o) {
            if (i.length > 0) {
                let r = !1;
                for (let s = 0; s < i.length; s++)
                    if (this.findIndexInList(i[s], o) > t) {
                        i.splice(s, 0, n), r = !0;
                        break;
                    }
                r || i.push(n);
            } else i.push(n);
        }
        static findIndexInList(n, t) {
            let i = -1;
            if (t) {
                for (let o = 0; o < t.length; o++)
                    if (t[o] == n) {
                        i = o;
                        break;
                    }
            }
            return i;
        }
        static contains(n, t) {
            if (n != null && t && t.length) {
                for (let i of t)
                    if (this.equals(n, i)) return !0;
            }
            return !1;
        }
        static removeAccents(n) {
            return n && (n = n.normalize("NFKD").replace(new RegExp("\\p{Diacritic}", "gu"), "")), n;
        }
        static isDate(n) {
            return Object.prototype.toString.call(n) === "[object Date]";
        }
        static isEmpty(n) {
            return n == null || n === "" || Array.isArray(n) && n.length === 0 || !this.isDate(n) && typeof n == "object" && Object.keys(n).length === 0;
        }
        static isNotEmpty(n) {
            return !this.isEmpty(n);
        }
        static compare(n, t, i, o = 1) {
            let r = -1,
                s = this.isEmpty(n),
                a = this.isEmpty(t);
            return s && a ? r = 0 : s ? r = o : a ? r = -o : typeof n == "string" && typeof t == "string" ? r = n.localeCompare(t, i, {
                numeric: !0
            }) : r = n < t ? -1 : n > t ? 1 : 0, r;
        }
        static sort(n, t, i = 1, o, r = 1) {
            let s = e.compare(n, t, o, i),
                a = i;
            return (e.isEmpty(n) || e.isEmpty(t)) && (a = r === 1 ? i : r), a * s;
        }
        static merge(n, t) {
            if (!(n == null && t == null)) {
                {
                    if ((n == null || typeof n == "object") && (t == null || typeof t == "object")) return m(m({}, n || {}), t || {});
                    if ((n == null || typeof n == "string") && (t == null || typeof t == "string")) return [n || "", t || ""].join(" ");
                }
                return t || n;
            }
        }
        static isPrintableCharacter(n = "") {
            return this.isNotEmpty(n) && n.length === 1 && n.match(/\S| /);
        }
        static getItemValue(n, ...t) {
            return this.isFunction(n) ? n(...t) : n;
        }
        static findLastIndex(n, t) {
            let i = -1;
            if (this.isNotEmpty(n)) try {
                i = n.findLastIndex(t);
            } catch {
                i = n.lastIndexOf([...n].reverse().find(t));
            }
            return i;
        }
        static findLast(n, t) {
            let i;
            if (this.isNotEmpty(n)) try {
                i = n.findLast(t);
            } catch {
                i = [...n].reverse().find(t);
            }
            return i;
        }
        static deepEquals(n, t) {
            if (n === t) return !0;
            if (n && t && typeof n == "object" && typeof t == "object") {
                var i = Array.isArray(n),
                    o = Array.isArray(t),
                    r, s, a;
                if (i && o) {
                    if (s = n.length, s != t.length) return !1;
                    for (r = s; r-- !== 0;)
                        if (!this.deepEquals(n[r], t[r])) return !1;
                    return !0;
                }
                if (i != o) return !1;
                var l = n instanceof Date,
                    c = t instanceof Date;
                if (l != c) return !1;
                if (l && c) return n.getTime() == t.getTime();
                var u = n instanceof RegExp,
                    p = t instanceof RegExp;
                if (u != p) return !1;
                if (u && p) return n.toString() == t.toString();
                var d = Object.keys(n);
                if (s = d.length, s !== Object.keys(t).length) return !1;
                for (r = s; r-- !== 0;)
                    if (!Object.prototype.hasOwnProperty.call(t, d[r])) return !1;
                for (r = s; r-- !== 0;)
                    if (a = d[r], !this.deepEquals(n[a], t[a])) return !1;
                return !0;
            }
            return n !== n && t !== t;
        }
        static minifyCSS(n) {
            return n && n.replace(/\/\*(?:(?!\*\/)[\s\S])*\*\/|[\r\n\t]+/g, "").replace(/ {2,}/g, " ").replace(/ ([{:}]) /g, "$1").replace(/([;,]) /g, "$1").replace(/ !/g, "!").replace(/: /g, ":");
        }
        static toFlatCase(n) {
            return this.isString(n) ? n.replace(/(-|_)/g, "").toLowerCase() : n;
        }
        static isString(n, t = !0) {
            return typeof n == "string" && (t || n !== "");
        }
    },
    Do = 0;

function sd(e = "pn_id_") {
    return Do++, `${e}${Do}`;
}

function Hs() {
    let e = [],
        n = (r, s) => {
            let a = e.length > 0 ? e[e.length - 1] : {
                    key: r,
                    value: s
                },
                l = a.value + (a.key === r ? 0 : s) + 2;
            return e.push({
                key: r,
                value: l
            }), l;
        },
        t = r => {
            e = e.filter(s => s.value !== r);
        },
        i = () => e.length > 0 ? e[e.length - 1].value : 0,
        o = r => r && parseInt(r.style.zIndex, 10) || 0;
    return {
        get: o,
        set: (r, s, a) => {
            s && (s.style.zIndex = String(n(r, a)));
        },
        clear: r => {
            r && (t(o(r)), r.style.zIndex = "");
        },
        getCurrent: () => i(),
        generateZIndex: n,
        revertZIndex: t
    };
}
var ad = Hs(),
    ld = e => !!e;
export {
    $s as a, js as b, Ot as c, zo as d, bn as e, an as f, ct as g, ua as h, da as i, Le as j, ne as k, vr as l, ha as m, Cr as n, Vn as o, Ln as p, Rn as q, Dr as r, Pn as s, fa as t, ga as u, Nr as v, Lr as w, ai as x, ma as y, ba as z, ya as A, Un as B, yt as C, Sa as D, Mt as E, Ea as F, jn as G, $r as H, kr as I, wa as J, Pr as K, zn as L, Aa as M, Da as N, Ia as O, xa as P, Ta as Q, Br as R, Ht as S, Oa as T, Ma as U, qn as V, Fa as W, yi as X, Na as Y, Va as Z, La as _, Ra as $, Yn as aa, vi as ba, $a as ca, ka as da, _i as ea, Pa as fa, Wr as ga, Ba as ha, Ha as ia, Wa as ja, Ua as ka, Ga as la, ja as ma, za as na, F as oa, qr as pa, eo as qa, w as ra, je as sa, Si as ta, Za as ua, Qa as va, Xa as wa, K as xa, qe as ya, Ja as za, tl as Aa, U as Ba, se as Ca, O as Da, ml as Ea, bl as Fa, yl as Ga, vl as Ha, _l as Ia, Cl as Ja, oo as Ka, _t as La, Sl as Ma, El as Na, Dl as Oa, Nl as Pa, k as Qa, Ii as Ra, nc as Sa, j as Ta, xi as Ua, mo as Va, bo as Wa, Lc as Xa, Qe as Ya, _o as Za, uu as _a, Ao as $a, sd as ab, ad as bb, ld as cb, go as db, Ac as eb, Ti as fb, vo as gb, Nu as hb, Rs as ib, Vu as jb
}; /**i18n:6e1dbccd4192d215e143e99fb4b6a095cee3c871f5aa7cd380ca91231f35e8e0*/