import {
    a as Ve
} from "./chunk-MMJF5WBO.js";
import {
    a as at
} from "./chunk-AHAXH4Z3.js";
import {
    a as tt,
    c as it,
    d as nt,
    f as lt,
    g as st,
    h as rt,
    j as pt,
    k as ut,
    m as mt
} from "./chunk-2F2DP6Z5.js";
import {
    $ as Be,
    $a as ct,
    Aa as je,
    B as X,
    Ca as Ze,
    F as Qe,
    Fa as Ue,
    Ha as We,
    Ia as Ye,
    Ja as Je,
    Ka as ge,
    La as $,
    Ma as Q,
    Qa as ye,
    S as fe,
    T as R,
    Ta as ie,
    Ua as Xe,
    V as He,
    W as Ne,
    Wa as et,
    _a as ot,
    c as Ke,
    db as dt,
    h as Te,
    ha as we,
    l as Se,
    pa as qe,
    ra as z,
    sa as K,
    ta as ee,
    wa as te,
    ya as Ge,
    z as Oe
} from "./chunk-XPOKHL3M.js";
import {
    k as U,
    m as Re,
    n as W,
    r as Ce,
    s as Y,
    y as J
} from "./chunk-OYJWBUYU.js";
import {
    $b as G,
    Ab as s,
    Bb as pe,
    Cb as $e,
    Db as N,
    Eb as E,
    Gb as de,
    Hc as V,
    Jb as d,
    Kb as u,
    Lb as F,
    Mb as v,
    Nb as C,
    Ob as w,
    Pb as O,
    Pc as b,
    Qc as Z,
    Sc as he,
    Tc as Pe,
    Ua as Le,
    X as Me,
    Y as oe,
    Ya as c,
    Yb as T,
    Z as ae,
    Zb as r,
    _b as ue,
    ca as se,
    cb as re,
    cc as I,
    dc as L,
    ec as _,
    fc as h,
    ic as P,
    ja as Ee,
    jc as k,
    ka as f,
    kc as A,
    la as g,
    lb as B,
    lc as me,
    mb as ce,
    na as H,
    pb as q,
    pc as Ae,
    qc as ze,
    rb as p,
    rc as De,
    sc as _e,
    ta as S,
    tc as Ie,
    ua as Fe,
    uc as M,
    vc as j,
    wc as ve,
    ya as D,
    zb as x
} from "./chunk-SSI6PFOR.js";
import {
    a as be,
    b as xe
} from "./chunk-FFRAY7OK.js";
var Ct = ["removeicon"],
    Tt = ["*"];

function St(t, a) {
    if (t & 1) {
        let e = O();
        d(0, "img", 4), T("error", function(i) {
            f(e);
            let l = r();
            return g(l.imageError(i))
        }), u()
    }
    if (t & 2) {
        let e = r();
        s("src", e.image, Le)("alt", e.alt)
    }
}

function Ot(t, a) {
    if (t & 1 && F(0, "span", 6), t & 2) {
        let e = r(2);
        E(e.icon), s("ngClass", "p-chip-icon"), x("data-pc-section", "icon")
    }
}

function wt(t, a) {
    if (t & 1 && p(0, Ot, 1, 4, "span", 5), t & 2) {
        let e = r();
        s("ngIf", e.icon)
    }
}

function Vt(t, a) {
    if (t & 1 && (d(0, "div", 7), k(1), u()), t & 2) {
        let e = r();
        x("data-pc-section", "label"), c(), A(e.label)
    }
}

function kt(t, a) {
    if (t & 1) {
        let e = O();
        d(0, "span", 11), T("click", function(i) {
            f(e);
            let l = r(3);
            return g(l.close(i))
        })("keydown", function(i) {
            f(e);
            let l = r(3);
            return g(l.onKeydown(i))
        }), u()
    }
    if (t & 2) {
        let e = r(3);
        E(e.removeIcon), s("ngClass", "p-chip-remove-icon"), x("data-pc-section", "removeicon")("aria-label", e.removeAriaLabel)
    }
}

function Mt(t, a) {
    if (t & 1) {
        let e = O();
        d(0, "TimesCircleIcon", 12), T("click", function(i) {
            f(e);
            let l = r(3);
            return g(l.close(i))
        })("keydown", function(i) {
            f(e);
            let l = r(3);
            return g(l.onKeydown(i))
        }), u()
    }
    if (t & 2) {
        let e = r(3);
        E("p-chip-remove-icon"), x("data-pc-section", "removeicon")("aria-label", e.removeAriaLabel)
    }
}

function Et(t, a) {
    if (t & 1 && (v(0), p(1, kt, 1, 5, "span", 9)(2, Mt, 1, 4, "TimesCircleIcon", 10), C()), t & 2) {
        let e = r(2);
        c(), s("ngIf", e.removeIcon), c(), s("ngIf", !e.removeIcon)
    }
}

function Ft(t, a) {}

function Lt(t, a) {
    t & 1 && p(0, Ft, 0, 0, "ng-template")
}

function $t(t, a) {
    if (t & 1) {
        let e = O();
        d(0, "span", 13), T("click", function(i) {
            f(e);
            let l = r(2);
            return g(l.close(i))
        })("keydown", function(i) {
            f(e);
            let l = r(2);
            return g(l.onKeydown(i))
        }), p(1, Lt, 1, 0, null, 14), u()
    }
    if (t & 2) {
        let e = r(2);
        x("data-pc-section", "removeicon")("aria-label", e.removeAriaLabel), c(), s("ngTemplateOutlet", e.removeIconTemplate || e._removeIconTemplate)
    }
}

function At(t, a) {
    if (t & 1 && (v(0), p(1, Et, 3, 2, "ng-container", 3)(2, $t, 2, 3, "span", 8), C()), t & 2) {
        let e = r();
        c(), s("ngIf", !e.removeIconTemplate && !e._removeIconTemplate), c(), s("ngIf", e.removeIconTemplate || e._removeIconTemplate)
    }
}
var zt = ({
        dt: t
    }) => `
.p-chip {
    display: inline-flex;
    align-items: center;
    background: ${t("chip.background")};
    color: ${t("chip.color")};
    border-radius: ${t("chip.border.radius")};
    padding: ${t("chip.padding.y")} ${t("chip.padding.x")};
    gap: ${t("chip.gap")};
}

.p-chip-icon {
    color: ${t("chip.icon.color")};
    font-size: ${t("chip.icon.font.size")};
    width: ${t("chip.icon.size")};
    height: ${t("chip.icon.size")};
}

.p-chip-image {
    border-radius: 50%;
    width: ${t("chip.image.width")};
    height: ${t("chip.image.height")};
    margin-left: calc(-1 * ${t("chip.padding.y")});
}

.p-chip:has(.p-chip-remove-icon) {
    padding-inline-end: ${t("chip.padding.y")};
}

.p-chip:has(.p-chip-image) {
    padding-top: calc(${t("chip.padding.y")} / 2);
    padding-bottom: calc(${t("chip.padding.y")} / 2);
}

.p-chip-remove-icon {
    cursor: pointer;
    font-size: ${t("chip.remove.icon.font.size")};
    width: ${t("chip.remove.icon.size")};
    height: ${t("chip.remove.icon.size")};
    color: ${t("chip.remove.icon.color")};
    border-radius: 50%;
    transition: outline-color ${t("chip.transition.duration")}, box-shadow ${t("chip.transition.duration")};
    outline-color: transparent;
}

.p-chip-remove-icon:focus-visible {
    box-shadow: ${t("chip.remove.icon.focus.ring.shadow")};
    outline: ${t("chip.remove.icon.focus.ring.width")} ${t("chip.remove.icon.focus.ring.style")} ${t("chip.remove.icon.focus.ring.color")};
    outline-offset: ${t("chip.remove.icon.focus.ring.offset")};
}
`,
    Dt = {
        root: "p-chip p-component",
        image: "p-chip-image",
        icon: "p-chip-icon",
        label: "p-chip-label",
        removeIcon: "p-chip-remove-icon"
    },
    _t = (() => {
        class t extends ye {
            name = "chip";
            theme = zt;
            classes = Dt;
            static\ u0275fac = (() => {
                let e;
                return function(i) {
                    return (e || (e = H(t)))(i || t)
                }
            })();
            static\ u0275prov = oe({
                token: t,
                factory: t.\u0275fac
            })
        }
        return t
    })();
var ke = (() => {
        class t extends ie {
            label;
            icon;
            image;
            alt;
            style;
            styleClass;
            removable = !1;
            removeIcon;
            onRemove = new S;
            onImageError = new S;
            visible = !0;
            get removeAriaLabel() {
                return this.config.getTranslation(Q.ARIA).removeLabel
            }
            get chipProps() {
                return this._chipProps
            }
            set chipProps(e) {
                this._chipProps = e, e && typeof e == "object" && Object.entries(e).forEach(([n, i]) => this[`_${n}`] !== i && (this[`_${n}`] = i))
            }
            _chipProps;
            _componentStyle = se(_t);
            removeIconTemplate;
            templates;
            _removeIconTemplate;
            ngAfterContentInit() {
                this.templates.forEach(e => {
                    switch (e.getType()) {
                        case "removeicon":
                            this._removeIconTemplate = e.template;
                            break;
                        default:
                            this._removeIconTemplate = e.template;
                            break
                    }
                })
            }
            ngOnChanges(e) {
                if (super.ngOnChanges(e), e.chipProps && e.chipProps.currentValue) {
                    let {
                        currentValue: n
                    } = e.chipProps;
                    n.label !== void 0 && (this.label = n.label), n.icon !== void 0 && (this.icon = n.icon), n.image !== void 0 && (this.image = n.image), n.alt !== void 0 && (this.alt = n.alt), n.style !== void 0 && (this.style = n.style), n.styleClass !== void 0 && (this.styleClass = n.styleClass), n.removable !== void 0 && (this.removable = n.removable), n.removeIcon !== void 0 && (this.removeIcon = n.removeIcon)
                }
            }
            containerClass() {
                let e = "p-chip p-component";
                return this.styleClass && (e += ` ${this.styleClass}`), e
            }
            close(e) {
                this.visible = !1, this.onRemove.emit(e)
            }
            onKeydown(e) {
                (e.key === "Enter" || e.key === "Backspace") && this.close(e)
            }
            imageError(e) {
                this.onImageError.emit(e)
            }
            static\ u0275fac = (() => {
                let e;
                return function(i) {
                    return (e || (e = H(t)))(i || t)
                }
            })();
            static\ u0275cmp = B({
                type: t,
                selectors: [
                    ["p-chip"]
                ],
                contentQueries: function(n, i, l) {
                    if (n & 1 && (I(l, Ct, 4), I(l, ge, 4)), n & 2) {
                        let o;
                        _(o = h()) && (i.removeIconTemplate = o.first), _(o = h()) && (i.templates = o)
                    }
                },
                hostVars: 9,
                hostBindings: function(n, i) {
                    n & 2 && (x("data-pc-name", "chip")("aria-label", i.label)("data-pc-section", "root"), N(i.style), E(i.containerClass()), pe("display", !i.visible && "none"))
                },
                inputs: {
                    label: "label",
                    icon: "icon",
                    image: "image",
                    alt: "alt",
                    style: "style",
                    styleClass: "styleClass",
                    removable: [2, "removable", "removable", b],
                    removeIcon: "removeIcon",
                    chipProps: "chipProps"
                },
                outputs: {
                    onRemove: "onRemove",
                    onImageError: "onImageError"
                },
                features: [_e([_t]), q, Ee],
                ngContentSelectors: Tt,
                decls: 6,
                vars: 4,
                consts: [
                    ["iconTemplate", ""],
                    ["class", "p-chip-image", 3, "src", "alt", "error", 4, "ngIf", "ngIfElse"],
                    ["class", "p-chip-label", 4, "ngIf"],
                    [4, "ngIf"],
                    [1, "p-chip-image", 3, "error", "src", "alt"],
                    [3, "class", "ngClass", 4, "ngIf"],
                    [3, "ngClass"],
                    [1, "p-chip-label"],
                    ["tabindex", "0", "class", "p-chip-remove-icon", "role", "button", 3, "click", "keydown", 4, "ngIf"],
                    ["tabindex", "0", "role", "button", 3, "class", "ngClass", "click", "keydown", 4, "ngIf"],
                    ["tabindex", "0", "role", "button", 3, "class", "click", "keydown", 4, "ngIf"],
                    ["tabindex", "0", "role", "button", 3, "click", "keydown", "ngClass"],
                    ["tabindex", "0", "role", "button", 3, "click", "keydown"],
                    ["tabindex", "0", "role", "button", 1, "p-chip-remove-icon", 3, "click", "keydown"],
                    [4, "ngTemplateOutlet"]
                ],
                template: function(n, i) {
                    if (n & 1 && (ue(), G(0), p(1, St, 1, 2, "img", 1)(2, wt, 1, 1, "ng-template", null, 0, V)(4, Vt, 2, 2, "div", 2)(5, At, 3, 2, "ng-container", 3)), n & 2) {
                        let l = P(3);
                        c(), s("ngIf", i.image)("ngIfElse", l), c(3), s("ngIf", i.label), c(), s("ngIf", i.removable)
                    }
                },
                dependencies: [J, U, W, Y, at, $],
                encapsulation: 2,
                changeDetection: 0
            })
        }
        return t
    })(),
    pl = (() => {
        class t {
            static\ u0275fac = function(n) {
                return new(n || t)
            };
            static\ u0275mod = ce({
                type: t
            });
            static\ u0275inj = ae({
                imports: [ke, $, $]
            })
        }
        return t
    })();
var ne = t => ({
        height: t
    }),
    Pt = (t, a, e) => ({
        "p-multiselect-option-selected": t,
        "p-disabled": a,
        "p-focus": e
    }),
    ft = t => ({
        $implicit: t
    }),
    Rt = (t, a) => ({
        checked: t,
        class: a
    });

function Kt(t, a) {}

function Qt(t, a) {
    t & 1 && p(0, Kt, 0, 0, "ng-template")
}

function Ht(t, a) {
    if (t & 1 && p(0, Qt, 1, 0, null, 4), t & 2) {
        let e = a.class,
            n = r(2);
        s("ngTemplateOutlet", n.itemCheckboxIconTemplate)("ngTemplateOutletContext", j(2, Rt, n.selected, e))
    }
}

function Nt(t, a) {
    t & 1 && (v(0), p(1, Ht, 1, 5, "ng-template", null, 0, V), C())
}

function Bt(t, a) {
    if (t & 1 && (d(0, "span"), k(1), u()), t & 2) {
        let e, n = r();
        c(), A((e = n.label) !== null && e !== void 0 ? e : "empty")
    }
}

function qt(t, a) {
    t & 1 && w(0)
}
var Gt = ["item"],
    jt = ["group"],
    Zt = ["loader"],
    Ut = ["header"],
    Wt = ["filter"],
    Yt = ["footer"],
    Jt = ["emptyfilter"],
    Xt = ["empty"],
    ei = ["selecteditems"],
    ti = ["checkicon"],
    ii = ["loadingicon"],
    ni = ["filtericon"],
    li = ["removetokenicon"],
    oi = ["chipicon"],
    ai = ["clearicon"],
    si = ["dropdownicon"],
    ri = ["itemcheckboxicon"],
    ci = ["headercheckboxicon"],
    pi = ["overlay"],
    di = ["filterInput"],
    ui = ["focusInput"],
    mi = ["items"],
    _i = ["scroller"],
    hi = ["lastHiddenFocusableEl"],
    fi = ["firstHiddenFocusableEl"],
    gi = ["headerCheckbox"],
    yi = [
        [
            ["p-header"]
        ],
        [
            ["p-footer"]
        ]
    ],
    bi = ["p-header", "p-footer"],
    xi = () => ({
        class: "p-multiselect-chip-icon"
    }),
    Ii = (t, a) => ({
        $implicit: t,
        removeChip: a
    }),
    gt = t => ({
        options: t
    }),
    vi = (t, a, e) => ({
        checked: t,
        partialSelected: a,
        class: e
    }),
    yt = (t, a) => ({
        $implicit: t,
        options: a
    }),
    Ci = () => ({});

function Ti(t, a) {
    if (t & 1 && (v(0), k(1), C()), t & 2) {
        let e = r(2);
        c(), A(e.label() || "empty")
    }
}

function Si(t, a) {
    if (t & 1 && k(0), t & 2) {
        let e = r(3);
        me(" ", e.getSelectedItemsLabel(), " ")
    }
}

function Oi(t, a) {
    t & 1 && w(0)
}

function wi(t, a) {
    if (t & 1) {
        let e = O();
        d(0, "span", 28), T("click", function(i) {
            f(e);
            let l = r(4).$implicit,
                o = r(4);
            return g(o.removeOption(l, i))
        }), p(1, Oi, 1, 0, "ng-container", 29), u()
    }
    if (t & 2) {
        let e = r(8);
        x("data-pc-section", "clearicon")("aria-hidden", !0), c(), s("ngTemplateOutlet", e.chipIconTemplate || e._chipIconTemplate || e.removeTokenIconTemplate || e._removeTokenIconTemplate)("ngTemplateOutletContext", Ie(4, xi))
    }
}

function Vi(t, a) {
    if (t & 1 && (v(0), p(1, wi, 2, 5, "span", 27), C()), t & 2) {
        let e = r(7);
        c(), s("ngIf", e.chipIconTemplate || e._chipIconTemplate || e.removeTokenIconTemplate || e._removeTokenIconTemplate)
    }
}

function ki(t, a) {
    if (t & 1 && p(0, Vi, 2, 1, "ng-container", 20), t & 2) {
        let e = r(6);
        s("ngIf", !e.disabled && !e.readonly)
    }
}

function Mi(t, a) {
    t & 1 && (v(0), p(1, ki, 1, 1, "ng-template", null, 5, V), C())
}

function Ei(t, a) {
    if (t & 1) {
        let e = O();
        d(0, "div", 24, 4)(2, "p-chip", 26), T("onRemove", function(i) {
            let l = f(e).$implicit,
                o = r(4);
            return g(o.removeOption(l, i))
        }), p(3, Mi, 3, 0, "ng-container", 20), u()()
    }
    if (t & 2) {
        let e = a.$implicit,
            n = r(4);
        c(2), s("label", n.getLabelByValue(e))("removable", !n.disabled && !n.readonly)("removeIcon", n.chipIcon), c(), s("ngIf", n.chipIconTemplate || n._chipIconTemplate || n.removeTokenIconTemplate || n._removeTokenIconTemplate)
    }
}

function Fi(t, a) {
    if (t & 1 && p(0, Ei, 4, 4, "div", 25), t & 2) {
        let e = r(3);
        s("ngForOf", e.chipSelectedItems())
    }
}

function Li(t, a) {
    if (t & 1 && (v(0), k(1), C()), t & 2) {
        let e = r(3);
        c(), A(e.placeholder() || e.defaultLabel || "empty")
    }
}

function $i(t, a) {
    if (t & 1 && (v(0), p(1, Si, 1, 1)(2, Fi, 1, 1, "div", 24)(3, Li, 2, 1, "ng-container", 20), C()), t & 2) {
        let e = r(2);
        c(), de(e.chipSelectedItems() && e.chipSelectedItems().length === e.maxSelectedLabels ? 1 : 2), c(2), s("ngIf", !e.modelValue() || e.modelValue().length === 0)
    }
}

function Ai(t, a) {
    if (t & 1 && (v(0), p(1, Ti, 2, 1, "ng-container", 20)(2, $i, 4, 2, "ng-container", 20), C()), t & 2) {
        let e = r();
        c(), s("ngIf", e.display === "comma"), c(), s("ngIf", e.display === "chip")
    }
}

function zi(t, a) {
    t & 1 && w(0)
}

function Di(t, a) {
    if (t & 1 && (v(0), k(1), C()), t & 2) {
        let e = r(2);
        c(), A(e.placeholder() || e.defaultLabel || "empty")
    }
}

function Pi(t, a) {
    if (t & 1 && (v(0), p(1, zi, 1, 0, "ng-container", 29)(2, Di, 2, 1, "ng-container", 20), C()), t & 2) {
        let e = r();
        c(), s("ngTemplateOutlet", e.selectedItemsTemplate || e._selectedItemsTemplate)("ngTemplateOutletContext", j(3, Ii, e.selectedOptions, e.removeOption.bind(e))), c(), s("ngIf", !e.modelValue() || e.modelValue().length === 0)
    }
}

function Ri(t, a) {
    if (t & 1) {
        let e = O();
        d(0, "TimesIcon", 31), T("click", function(i) {
            f(e);
            let l = r(2);
            return g(l.clear(i))
        }), u()
    }
    t & 2 && x("data-pc-section", "clearicon")("aria-hidden", !0)
}

function Ki(t, a) {}

function Qi(t, a) {
    t & 1 && p(0, Ki, 0, 0, "ng-template")
}

function Hi(t, a) {
    if (t & 1) {
        let e = O();
        d(0, "span", 31), T("click", function(i) {
            f(e);
            let l = r(2);
            return g(l.clear(i))
        }), p(1, Qi, 1, 0, null, 32), u()
    }
    if (t & 2) {
        let e = r(2);
        x("data-pc-section", "clearicon")("aria-hidden", !0), c(), s("ngTemplateOutlet", e.clearIconTemplate || e._clearIconTemplate)
    }
}

function Ni(t, a) {
    if (t & 1 && (v(0), p(1, Ri, 1, 2, "TimesIcon", 30)(2, Hi, 2, 3, "span", 30), C()), t & 2) {
        let e = r();
        c(), s("ngIf", !e.clearIconTemplate && !e._clearIconTemplate), c(), s("ngIf", e.clearIconTemplate || e._clearIconTemplate)
    }
}

function Bi(t, a) {
    t & 1 && w(0)
}

function qi(t, a) {
    if (t & 1 && (v(0), p(1, Bi, 1, 0, "ng-container", 32), C()), t & 2) {
        let e = r(2);
        c(), s("ngTemplateOutlet", e.loadingIconTemplate || e._loadingIconTemplate)
    }
}

function Gi(t, a) {
    if (t & 1 && F(0, "span", 35), t & 2) {
        let e = r(3);
        s("ngClass", "p-multiselect-loading-icon pi-spin " + e.loadingIcon)
    }
}

function ji(t, a) {
    t & 1 && F(0, "span", 36), t & 2 && E("p-multiselect-loading-icon pi pi-spinner pi-spin")
}

function Zi(t, a) {
    if (t & 1 && (v(0), p(1, Gi, 1, 1, "span", 33)(2, ji, 1, 2, "span", 34), C()), t & 2) {
        let e = r(2);
        c(), s("ngIf", e.loadingIcon), c(), s("ngIf", !e.loadingIcon)
    }
}

function Ui(t, a) {
    if (t & 1 && (v(0), p(1, qi, 2, 1, "ng-container", 20)(2, Zi, 3, 2, "ng-container", 20), C()), t & 2) {
        let e = r();
        c(), s("ngIf", e.loadingIconTemplate || e._loadingIconTemplate), c(), s("ngIf", !e.loadingIconTemplate && !e._loadingIconTemplate)
    }
}

function Wi(t, a) {
    if (t & 1 && F(0, "span", 40), t & 2) {
        let e = r(3);
        s("ngClass", e.dropdownIcon), x("data-pc-section", "triggericon")("aria-hidden", !0)
    }
}

function Yi(t, a) {
    t & 1 && F(0, "ChevronDownIcon", 41), t & 2 && (s("styleClass", "p-multiselect-dropdown-icon"), x("data-pc-section", "triggericon")("aria-hidden", !0))
}

function Ji(t, a) {
    if (t & 1 && (v(0), p(1, Wi, 1, 3, "span", 38)(2, Yi, 1, 3, "ChevronDownIcon", 39), C()), t & 2) {
        let e = r(2);
        c(), s("ngIf", e.dropdownIcon), c(), s("ngIf", !e.dropdownIcon)
    }
}

function Xi(t, a) {}

function en(t, a) {
    t & 1 && p(0, Xi, 0, 0, "ng-template")
}

function tn(t, a) {
    if (t & 1 && (d(0, "span", 42), p(1, en, 1, 0, null, 32), u()), t & 2) {
        let e = r(2);
        x("data-pc-section", "triggericon")("aria-hidden", !0), c(), s("ngTemplateOutlet", e.dropdownIconTemplate || e._dropdownIconTemplate)
    }
}

function nn(t, a) {
    if (t & 1 && p(0, Ji, 3, 2, "ng-container", 20)(1, tn, 2, 3, "span", 37), t & 2) {
        let e = r();
        s("ngIf", !e.dropdownIconTemplate && !e._dropdownIconTemplate), c(), s("ngIf", e.dropdownIconTemplate || e._dropdownIconTemplate)
    }
}

function ln(t, a) {
    t & 1 && w(0)
}

function on(t, a) {
    t & 1 && w(0)
}

function an(t, a) {
    if (t & 1 && (v(0), p(1, on, 1, 0, "ng-container", 29), C()), t & 2) {
        let e = r(3);
        c(), s("ngTemplateOutlet", e.filterTemplate || e._filterTemplate)("ngTemplateOutletContext", M(2, gt, e.filterOptions))
    }
}

function sn(t, a) {
    if (t & 1 && F(0, "CheckIcon", 41), t & 2) {
        let e = r().class;
        s("styleClass", e), x("data-pc-section", "icon")
    }
}

function rn(t, a) {}

function cn(t, a) {
    t & 1 && p(0, rn, 0, 0, "ng-template")
}

function pn(t, a) {
    if (t & 1 && p(0, sn, 1, 2, "CheckIcon", 39)(1, cn, 1, 0, null, 29), t & 2) {
        let e = a.class,
            n = r(5);
        s("ngIf", !n.headerCheckboxIconTemplate && !n._headerCheckboxIconTemplate && n.allSelected()), c(), s("ngTemplateOutlet", n.headerCheckboxIconTemplate || n._headerCheckboxIconTemplate)("ngTemplateOutletContext", ve(3, vi, n.allSelected(), n.partialSelected(), e))
    }
}

function dn(t, a) {
    if (t & 1) {
        let e = O();
        d(0, "p-checkbox", 51, 10), T("onChange", function(i) {
            f(e);
            let l = r(4);
            return g(l.onToggleAll(i))
        }), p(2, pn, 2, 7, "ng-template", null, 11, V), u()
    }
    if (t & 2) {
        let e = r(4);
        s("ngModel", e.allSelected())("ariaLabel", e.toggleAllAriaLabel)("binary", !0)("variant", e.variant)("disabled", e.disabled)
    }
}

function un(t, a) {
    t & 1 && F(0, "SearchIcon", 41), t & 2 && s("styleClass", "p-multiselect-filter-icon")
}

function mn(t, a) {}

function _n(t, a) {
    t & 1 && p(0, mn, 0, 0, "ng-template")
}

function hn(t, a) {
    if (t & 1 && (d(0, "span", 55), p(1, _n, 1, 0, null, 32), u()), t & 2) {
        let e = r(5);
        c(), s("ngTemplateOutlet", e.filterIconTemplate || e._filterIconTemplate)
    }
}

function fn(t, a) {
    if (t & 1) {
        let e = O();
        d(0, "div", 52)(1, "p-iconfield")(2, "input", 53, 12), T("input", function(i) {
            f(e);
            let l = r(4);
            return g(l.onFilterInputChange(i))
        })("keydown", function(i) {
            f(e);
            let l = r(4);
            return g(l.onFilterKeyDown(i))
        })("click", function(i) {
            f(e);
            let l = r(4);
            return g(l.onInputClick(i))
        })("blur", function(i) {
            f(e);
            let l = r(4);
            return g(l.onFilterBlur(i))
        }), u(), d(4, "p-inputicon"), p(5, un, 1, 1, "SearchIcon", 39)(6, hn, 2, 1, "span", 54), u()()()
    }
    if (t & 2) {
        let e = r(4);
        c(2), s("variant", e.variant)("value", e._filterValue() || "")("disabled", e.disabled), x("autocomplete", e.autocomplete)("aria-owns", e.id + "_list")("aria-activedescendant", e.focusedOptionId)("placeholder", e.filterPlaceHolder)("aria-label", e.ariaFilterLabel), c(3), s("ngIf", !e.filterIconTemplate && !e._filterIconTemplate), c(), s("ngIf", e.filterIconTemplate || e._filterIconTemplate)
    }
}

function gn(t, a) {
    if (t & 1 && p(0, dn, 4, 5, "p-checkbox", 49)(1, fn, 7, 10, "div", 50), t & 2) {
        let e = r(3);
        s("ngIf", e.showToggleAll && !e.selectionLimit), c(), s("ngIf", e.filter)
    }
}

function yn(t, a) {
    if (t & 1 && (d(0, "div", 48), G(1), p(2, an, 2, 4, "ng-container", 22)(3, gn, 2, 2, "ng-template", null, 9, V), u()), t & 2) {
        let e = P(4),
            n = r(2);
        c(2), s("ngIf", n.filterTemplate || n._filterTemplate)("ngIfElse", e)
    }
}

function bn(t, a) {
    t & 1 && w(0)
}

function xn(t, a) {
    if (t & 1 && p(0, bn, 1, 0, "ng-container", 29), t & 2) {
        let e = a.$implicit,
            n = a.options;
        r(2);
        let i = P(9);
        s("ngTemplateOutlet", i)("ngTemplateOutletContext", j(2, yt, e, n))
    }
}

function In(t, a) {
    t & 1 && w(0)
}

function vn(t, a) {
    if (t & 1 && p(0, In, 1, 0, "ng-container", 29), t & 2) {
        let e = a.options,
            n = r(4);
        s("ngTemplateOutlet", n.loaderTemplate || n._loaderTemplate)("ngTemplateOutletContext", M(2, gt, e))
    }
}

function Cn(t, a) {
    t & 1 && (v(0), p(1, vn, 1, 4, "ng-template", null, 14, V), C())
}

function Tn(t, a) {
    if (t & 1) {
        let e = O();
        d(0, "p-scroller", 56, 13), T("onLazyLoad", function(i) {
            f(e);
            let l = r(2);
            return g(l.onLazyLoad.emit(i))
        }), p(2, xn, 1, 5, "ng-template", null, 3, V)(4, Cn, 3, 0, "ng-container", 20), u()
    }
    if (t & 2) {
        let e = r(2);
        N(M(9, ne, e.scrollHeight)), s("items", e.visibleOptions())("itemSize", e.virtualScrollItemSize || e._itemSize)("autoSize", !0)("tabindex", -1)("lazy", e.lazy)("options", e.virtualScrollOptions), c(4), s("ngIf", e.loaderTemplate || e._loaderTemplate)
    }
}

function Sn(t, a) {
    t & 1 && w(0)
}

function On(t, a) {
    if (t & 1 && (v(0), p(1, Sn, 1, 0, "ng-container", 29), C()), t & 2) {
        r();
        let e = P(9),
            n = r();
        c(), s("ngTemplateOutlet", e)("ngTemplateOutletContext", j(3, yt, n.visibleOptions(), Ie(2, Ci)))
    }
}

function wn(t, a) {
    if (t & 1 && (d(0, "span"), k(1), u()), t & 2) {
        let e = r(2).$implicit,
            n = r(3);
        c(), A(n.getOptionGroupLabel(e.optionGroup))
    }
}

function Vn(t, a) {
    t & 1 && w(0)
}

function kn(t, a) {
    if (t & 1 && (v(0), d(1, "li", 60), p(2, wn, 2, 1, "span", 20)(3, Vn, 1, 0, "ng-container", 29), u(), C()), t & 2) {
        let e = r(),
            n = e.$implicit,
            i = e.index,
            l = r().options,
            o = r(2);
        c(), s("ngStyle", M(5, ne, l.itemSize + "px")), x("id", o.id + "_" + o.getOptionIndex(i, l)), c(), s("ngIf", !o.groupTemplate), c(), s("ngTemplateOutlet", o.groupTemplate)("ngTemplateOutletContext", M(7, ft, n.optionGroup))
    }
}

function Mn(t, a) {
    if (t & 1) {
        let e = O();
        v(0), d(1, "p-multiselect-item", 61), T("onClick", function(i) {
            f(e);
            let l = r().index,
                o = r().options,
                m = r(2);
            return g(m.onOptionSelect(i, !1, m.getOptionIndex(l, o)))
        })("onMouseEnter", function(i) {
            f(e);
            let l = r().index,
                o = r().options,
                m = r(2);
            return g(m.onOptionMouseEnter(i, m.getOptionIndex(l, o)))
        }), u(), C()
    }
    if (t & 2) {
        let e = r(),
            n = e.$implicit,
            i = e.index,
            l = r().options,
            o = r(2);
        c(), s("id", o.id + "_" + o.getOptionIndex(i, l))("option", n)("selected", o.isSelected(n))("label", o.getOptionLabel(n))("disabled", o.isOptionDisabled(n))("template", o.itemTemplate || o._itemTemplate)("checkIconTemplate", o.checkIconTemplate || o._checkIconTemplate)("itemCheckboxIconTemplate", o.itemCheckboxIconTemplate || o._itemCheckboxIconTemplate)("itemSize", l.itemSize)("focused", o.focusedOptionIndex() === o.getOptionIndex(i, l))("ariaPosInset", o.getAriaPosInset(o.getOptionIndex(i, l)))("ariaSetSize", o.ariaSetSize)("variant", o.variant)("highlightOnSelect", o.highlightOnSelect)
    }
}

function En(t, a) {
    if (t & 1 && p(0, kn, 4, 9, "ng-container", 20)(1, Mn, 2, 14, "ng-container", 20), t & 2) {
        let e = a.$implicit,
            n = r(3);
        s("ngIf", n.isOptionGroup(e)), c(), s("ngIf", !n.isOptionGroup(e))
    }
}

function Fn(t, a) {
    if (t & 1 && k(0), t & 2) {
        let e = r(4);
        me(" ", e.emptyFilterMessageLabel, " ")
    }
}

function Ln(t, a) {
    t & 1 && w(0)
}

function $n(t, a) {
    if (t & 1 && p(0, Ln, 1, 0, "ng-container", 32), t & 2) {
        let e = r(4);
        s("ngTemplateOutlet", e.emptyFilterTemplate || e._emptyFilterTemplate || e.emptyTemplate || e._emptyFilterTemplate)
    }
}

function An(t, a) {
    if (t & 1 && (d(0, "li", 62), p(1, Fn, 1, 1)(2, $n, 1, 1, "ng-container"), u()), t & 2) {
        let e = r().options,
            n = r(2);
        s("ngStyle", M(2, ne, e.itemSize + "px")), c(), de(!n.emptyFilterTemplate && !n._emptyFilterTemplate && !n.emptyTemplate && !n._emptyTemplate ? 1 : 2)
    }
}

function zn(t, a) {
    if (t & 1 && k(0), t & 2) {
        let e = r(4);
        me(" ", e.emptyMessageLabel, " ")
    }
}

function Dn(t, a) {
    t & 1 && w(0)
}

function Pn(t, a) {
    if (t & 1 && p(0, Dn, 1, 0, "ng-container", 32), t & 2) {
        let e = r(4);
        s("ngTemplateOutlet", e.emptyTemplate || e._emptyTemplate)
    }
}

function Rn(t, a) {
    if (t & 1 && (d(0, "li", 62), p(1, zn, 1, 1)(2, Pn, 1, 1, "ng-container"), u()), t & 2) {
        let e = r().options,
            n = r(2);
        s("ngStyle", M(2, ne, e.itemSize + "px")), c(), de(!n.emptyTemplate && !n._emptyTemplate ? 1 : 2)
    }
}

function Kn(t, a) {
    if (t & 1 && (d(0, "ul", 57, 15), p(2, En, 2, 2, "ng-template", 58)(3, An, 3, 4, "li", 59)(4, Rn, 3, 4, "li", 59), u()), t & 2) {
        let e = a.$implicit,
            n = a.options,
            i = r(2);
        N(n.contentStyle), s("ngClass", n.contentStyleClass), x("aria-label", i.listLabel), c(2), s("ngForOf", e), c(), s("ngIf", i.hasFilter() && i.isEmpty()), c(), s("ngIf", !i.hasFilter() && i.isEmpty())
    }
}

function Qn(t, a) {
    t & 1 && w(0)
}

function Hn(t, a) {
    if (t & 1 && (d(0, "div"), G(1, 1), p(2, Qn, 1, 0, "ng-container", 32), u()), t & 2) {
        let e = r(2);
        c(2), s("ngTemplateOutlet", e.footerTemplate || e._footerTemplate)
    }
}

function Nn(t, a) {
    if (t & 1) {
        let e = O();
        d(0, "div", 43)(1, "span", 44, 6), T("focus", function(i) {
            f(e);
            let l = r();
            return g(l.onFirstHiddenFocus(i))
        }), u(), p(3, ln, 1, 0, "ng-container", 32)(4, yn, 5, 2, "div", 45), d(5, "div", 46), p(6, Tn, 5, 11, "p-scroller", 47)(7, On, 2, 6, "ng-container", 20)(8, Kn, 5, 7, "ng-template", null, 7, V), u(), p(10, Hn, 3, 1, "div", 20), d(11, "span", 44, 8), T("focus", function(i) {
            f(e);
            let l = r();
            return g(l.onLastHiddenFocus(i))
        }), u()()
    }
    if (t & 2) {
        let e = r();
        E(e.panelStyleClass), s("ngClass", "p-multiselect-overlay p-component")("ngStyle", e.panelStyle), x("id", e.id + "_list"), c(), x("tabindex", 0)("data-p-hidden-accessible", !0)("data-p-hidden-focusable", !0), c(2), s("ngTemplateOutlet", e.headerTemplate || e._headerTemplate), c(), s("ngIf", e.showHeader), c(), pe("max-height", e.virtualScroll ? "auto" : e.scrollHeight || "auto"), c(), s("ngIf", e.virtualScroll), c(), s("ngIf", !e.virtualScroll), c(3), s("ngIf", e.footerFacet || e.footerTemplate || e._footerTemplate), c(), x("tabindex", 0)("data-p-hidden-accessible", !0)("data-p-hidden-focusable", !0)
    }
}
var Bn = ({
        dt: t
    }) => `
.p-multiselect {
    display: inline-flex;
    cursor: pointer;
    position: relative;
    user-select: none;
    background: ${t("multiselect.background")};
    border: 1px solid ${t("multiselect.border.color")};
    transition: background ${t("multiselect.transition.duration")}, color ${t("multiselect.transition.duration")}, border-color ${t("multiselect.transition.duration")}, outline-color ${t("multiselect.transition.duration")}, box-shadow ${t("multiselect.transition.duration")};
    border-radius: ${t("multiselect.border.radius")};
    outline-color: transparent;
    box-shadow: ${t("multiselect.shadow")};
}

.p-multiselect.ng-invalid.ng-dirty {
    border-color: ${t("multiselect.invalid.border.color")};
}

.p-multiselect:not(.p-disabled):hover {
    border-color: ${t("multiselect.hover.border.color")};
}

.p-multiselect:not(.p-disabled).p-focus {
    border-color: ${t("multiselect.focus.border.color")};
    box-shadow: ${t("multiselect.focus.ring.shadow")};
    outline: ${t("multiselect.focus.ring.width")} ${t("multiselect.focus.ring.style")} ${t("multiselect.focus.ring.color")};
    outline-offset: ${t("multiselect.focus.ring.offset")};
}

.p-multiselect.p-variant-filled {
    background: ${t("multiselect.filled.background")};
}

.p-multiselect.p-variant-filled:not(.p-disabled):hover {
    background: ${t("multiselect.filled.hover.background")};
}

.p-multiselect.p-variant-filled.p-focus {
    background: ${t("multiselect.filled.focus.background")};
}

.p-multiselect.p-disabled {
    opacity: 1;
    background: ${t("multiselect.disabled.background")};
}

.p-multiselect-dropdown {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    background: transparent;
    color: ${t("multiselect.dropdown.color")};
    width: ${t("multiselect.dropdown.width")};
    border-start-end-radius: ${t("multiselect.border.radius")};
    border-end-end-radius: ${t("multiselect.border.radius")};
}

.p-multiselect-label-container {
    overflow: hidden;
    flex: 1 1 auto;
    cursor: pointer;
}

.p-multiselect-label {
    white-space: nowrap;
    cursor: pointer;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: ${t("multiselect.padding.y")} ${t("multiselect.padding.x")};
    color: ${t("multiselect.color")};
}

.p-multiselect-display-chip .p-multiselect-label {
    display: flex;
    align-items: center;
    gap: calc(dt('multiselect.padding.y') / 2);
}

.p-multiselect-label.p-placeholder {
    color: ${t("multiselect.placeholder.color")};
}

p-multiSelect.ng-invalid.ng-dirty .p-multiselect-label.p-placeholder,
p-multi-select.ng-invalid.ng-dirty .p-multiselect-label.p-placeholder,
p-multiselect.ng-invalid.ng-dirty .p-multiselect-label.p-placeholder {
    color: ${t("multiselect.invalid.placeholder.color")};
}

.p-multiselect.p-disabled .p-multiselect-label {
    color: ${t("multiselect.disabled.color")};
}

.p-multiselect-label-empty {
    overflow: hidden;
    visibility: hidden;
}

.p-multiselect .p-multiselect-overlay {
    min-width: 100%;
}

.p-multiselect-overlay {
    background: ${t("multiselect.overlay.background")};
    color: ${t("multiselect.overlay.color")};
    border: 1px solid ${t("multiselect.overlay.border.color")};
    border-radius: ${t("multiselect.overlay.border.radius")};
    box-shadow: ${t("multiselect.overlay.shadow")};
}

.p-multiselect-header {
    display: flex;
    align-items: center;
    padding: ${t("multiselect.list.header.padding")};
}

.p-multiselect-header .p-checkbox {
    margin-inline-end: ${t("multiselect.option.gap")};
}

.p-multiselect-filter-container {
    flex: 1 1 auto;
}

.p-multiselect-filter {
    width: 100%;
}

.p-multiselect-list-container {
    overflow: auto;
}

.p-multiselect-list {
    margin: 0;
    padding: 0;
    list-style-type: none;
    padding: ${t("multiselect.list.padding")};
    display: flex;
    flex-direction: column;
    gap: ${t("multiselect.list.gap")}
}

.p-multiselect-option {
    cursor: pointer;
    font-weight: normal;
    white-space: nowrap;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    gap: ${t("multiselect.option.gap")};
    padding: ${t("multiselect.option.padding")};
    border: 0 none;
    color: ${t("multiselect.option.color")};
    background: transparent;
    transition: background ${t("multiselect.transition.duration")}, color ${t("multiselect.transition.duration")}, border-color ${t("multiselect.transition.duration")}, box-shadow ${t("multiselect.transition.duration")}, outline-color ${t("multiselect.transition.duration")};
    border-radius: ${t("multiselect.option.border.radius")}
}

.p-multiselect-option:not(.p-multiselect-option-selected):not(.p-disabled).p-focus {
    background: ${t("multiselect.option.focus.background")};
    color: ${t("multiselect.option.focus.color")};
}

.p-multiselect-option.p-multiselect-option-selected {
    background: ${t("multiselect.option.selected.background")};
    color: ${t("multiselect.option.selected.color")};
}

.p-multiselect-option.p-multiselect-option-selected.p-focus {
    background: ${t("multiselect.option.selected.focus.background")};
    color: ${t("multiselect.option.selected.focus.color")};
}

.p-multiselect-option-group {
    cursor: auto;
    margin: 0;
    padding: ${t("multiselect.option.group.padding")};
    background: ${t("multiselect.option.group.background")};
    color: ${t("multiselect.option.group.color")};
    font-weight: ${t("multiselect.option.group.font.weight")};
}

.p-multiselect-empty-message {
    padding: ${t("multiselect.empty.message.padding")};
}

.p-multiselect-label .p-chip {
    padding-top: calc(${t("multiselect.padding.y")} / 2);
    padding-bottom: calc(${t("multiselect.padding.y")} / 2);
    border-radius: ${t("multiselect.chip.border.radius")};
}

.p-multiselect-label:has(.p-chip) {
    padding: calc(${t("multiselect.padding.y")} / 2) calc(${t("multiselect.padding.x")} / 2);
}

.p-multiselect-fluid {
    display: flex;
}

.p-multiselect-sm .p-multiselect-label {
    font-size: ${t("multiselect.sm.font.size")};
    padding-block: ${t("multiselect.sm.padding.y")};
    padding-inline: ${t("multiselect.sm.padding.x")};
}

.p-multiselect-sm .p-multiselect-dropdown .p-icon {
    font-size: ${t("multiselect.sm.font.size")};
    width: ${t("multiselect.sm.font.size")};
    height: ${t("multiselect.sm.font.size")};
}

.p-multiselect-lg .p-multiselect-label {
    font-size: ${t("multiselect.lg.font.size")};
    padding-block: ${t("multiselect.lg.padding.y")};
    padding-inline: ${t("multiselect.lg.padding.x")};
}

.p-multiselect-lg .p-multiselect-dropdown .p-icon {
    font-size: ${t("multiselect.lg.font.size")};
    width: ${t("multiselect.lg.font.size")};
    height: ${t("multiselect.lg.font.size")};
}

.p-multiselect-clear-icon {
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    background: transparent;
    color: ${t("multiselect.clear.icon.color")};
}`,
    qn = {
        root: ({
            props: t
        }) => ({
            position: t.appendTo === "self" ? "relative" : void 0
        })
    },
    Gn = {
        root: ({
            instance: t
        }) => ({
            "p-multiselect p-component p-inputwrapper": !0,
            "p-multiselect-display-chip": t.display === "chip",
            "p-disabled": t.disabled,
            "p-invalid": t.invalid,
            "p-variant-filled": t.variant ? t.variant === "filled" : t.config.inputStyle === "filled",
            "p-focus": t.focused,
            "p-inputwrapper-filled": t.filled,
            "p-inputwrapper-focus": t.focused || t.overlayVisible,
            "p-multiselect-open": t.overlayVisible,
            "p-multiselect-fluid": t.hasFluid,
            "p-multiselect-sm p-inputfield-sm": t.size === "small",
            "p-multiselect-lg p-inputfield-lg": t.size === "large"
        }),
        labelContainer: "p-multiselect-label-container",
        label: ({
            instance: t
        }) => ({
            "p-multiselect-label": !0,
            "p-placeholder": t.label() === t.placeholder(),
            "p-multiselect-label-empty": !t.placeholder() && !t.defaultLabel && (!t.modelValue() || t.modelValue().length === 0)
        }),
        chipItem: "p-multiselect-chip-item",
        pcChip: "p-multiselect-chip",
        chipIcon: "p-multiselect-chip-icon",
        dropdown: "p-multiselect-dropdown",
        loadingIcon: "p-multiselect-loading-icon",
        dropdownIcon: "p-multiselect-dropdown-icon",
        overlay: "p-multiselect-overlay p-component",
        header: "p-multiselect-header",
        pcFilterContainer: "p-multiselect-filter-container",
        pcFilter: "p-multiselect-filter",
        listContainer: "p-multiselect-list-container",
        list: "p-multiselect-list",
        optionGroup: "p-multiselect-option-group",
        option: ({
            instance: t,
            option: a,
            index: e,
            getItemOptions: n
        }) => ({
            "p-multiselect-option": !0,
            "p-multiselect-option-selected": t.isSelected(a) && t.highlightOnSelect,
            "p-focus": t.focusedOptionIndex === t.getOptionIndex(e, n),
            "p-disabled": t.isOptionDisabled(a)
        }),
        emptyMessage: "p-multiselect-empty-message"
    },
    ht = (() => {
        class t extends ye {
            name = "multiselect";
            theme = Bn;
            classes = Gn;
            inlineStyles = qn;
            static\ u0275fac = (() => {
                let e;
                return function(i) {
                    return (e || (e = H(t)))(i || t)
                }
            })();
            static\ u0275prov = oe({
                token: t,
                factory: t.\u0275fac
            })
        }
        return t
    })();
var jn = {
        provide: Ke,
        useExisting: Me(() => bt),
        multi: !0
    },
    Zn = (() => {
        class t extends ie {
            id;
            option;
            selected;
            label;
            disabled;
            itemSize;
            focused;
            ariaPosInset;
            ariaSetSize;
            variant;
            template;
            checkIconTemplate;
            itemCheckboxIconTemplate;
            highlightOnSelect;
            onClick = new S;
            onMouseEnter = new S;
            onOptionClick(e) {
                this.onClick.emit({
                    originalEvent: e,
                    option: this.option,
                    selected: this.selected
                }), e.stopPropagation(), e.preventDefault()
            }
            onOptionMouseEnter(e) {
                this.onMouseEnter.emit({
                    originalEvent: e,
                    option: this.option,
                    selected: this.selected
                })
            }
            static\ u0275fac = (() => {
                let e;
                return function(i) {
                    return (e || (e = H(t)))(i || t)
                }
            })();
            static\ u0275cmp = B({
                type: t,
                selectors: [
                    ["p-multiSelectItem"],
                    ["p-multiselect-item"]
                ],
                inputs: {
                    id: "id",
                    option: "option",
                    selected: [2, "selected", "selected", b],
                    label: "label",
                    disabled: [2, "disabled", "disabled", b],
                    itemSize: [2, "itemSize", "itemSize", Z],
                    focused: [2, "focused", "focused", b],
                    ariaPosInset: "ariaPosInset",
                    ariaSetSize: "ariaSetSize",
                    variant: "variant",
                    template: "template",
                    checkIconTemplate: "checkIconTemplate",
                    itemCheckboxIconTemplate: "itemCheckboxIconTemplate",
                    highlightOnSelect: [2, "highlightOnSelect", "highlightOnSelect", b]
                },
                outputs: {
                    onClick: "onClick",
                    onMouseEnter: "onMouseEnter"
                },
                features: [q],
                decls: 5,
                vars: 28,
                consts: [
                    ["checkboxicon", ""],
                    ["pRipple", "", "role", "option", 1, "p-multiselect-option", 3, "click", "mouseenter", "ngStyle", "ngClass", "id"],
                    [3, "ngModel", "binary", "tabindex", "variant", "ariaLabel"],
                    [4, "ngIf"],
                    [4, "ngTemplateOutlet", "ngTemplateOutletContext"]
                ],
                template: function(n, i) {
                    n & 1 && (d(0, "li", 1), T("click", function(o) {
                        return i.onOptionClick(o)
                    })("mouseenter", function(o) {
                        return i.onOptionMouseEnter(o)
                    }), d(1, "p-checkbox", 2), p(2, Nt, 3, 0, "ng-container", 3), u(), p(3, Bt, 2, 1, "span", 3)(4, qt, 1, 0, "ng-container", 4), u()), n & 2 && (s("ngStyle", M(20, ne, i.itemSize + "px"))("ngClass", ve(22, Pt, i.selected && i.highlightOnSelect, i.disabled, i.focused))("id", i.id), x("aria-label", i.label)("aria-setsize", i.ariaSetSize)("aria-posinset", i.ariaPosInset)("aria-selected", i.selected)("data-p-focused", i.focused)("data-p-highlight", i.selected)("data-p-disabled", i.disabled)("aria-checked", i.selected), c(), s("ngModel", i.selected)("binary", !0)("tabindex", -1)("variant", i.variant)("ariaLabel", i.label), c(), s("ngIf", i.itemCheckboxIconTemplate), c(), s("ngIf", !i.template), c(), s("ngTemplateOutlet", i.template)("ngTemplateOutletContext", M(26, ft, i.option)))
                },
                dependencies: [J, U, W, Y, Ce, Ve, Oe, Te, Se, dt, $],
                encapsulation: 2
            })
        }
        return t
    })(),
    bt = (() => {
        class t extends ie {
            zone;
            filterService;
            overlayService;
            id;
            ariaLabel;
            style;
            styleClass;
            panelStyle;
            panelStyleClass;
            inputId;
            disabled;
            fluid;
            readonly;
            group;
            filter = !0;
            filterPlaceHolder;
            filterLocale;
            overlayVisible;
            tabindex = 0;
            variant;
            appendTo;
            dataKey;
            name;
            ariaLabelledBy;
            set displaySelectedLabel(e) {
                this._displaySelectedLabel = e
            }
            get displaySelectedLabel() {
                return this._displaySelectedLabel
            }
            set maxSelectedLabels(e) {
                this._maxSelectedLabels = e
            }
            get maxSelectedLabels() {
                return this._maxSelectedLabels
            }
            selectionLimit;
            selectedItemsLabel;
            showToggleAll = !0;
            emptyFilterMessage = "";
            emptyMessage = "";
            resetFilterOnHide = !1;
            dropdownIcon;
            chipIcon;
            optionLabel;
            optionValue;
            optionDisabled;
            optionGroupLabel = "label";
            optionGroupChildren = "items";
            showHeader = !0;
            filterBy;
            scrollHeight = "200px";
            lazy = !1;
            virtualScroll;
            loading = !1;
            virtualScrollItemSize;
            loadingIcon;
            virtualScrollOptions;
            overlayOptions;
            ariaFilterLabel;
            filterMatchMode = "contains";
            tooltip = "";
            tooltipPosition = "right";
            tooltipPositionStyle = "absolute";
            tooltipStyleClass;
            autofocusFilter = !1;
            display = "comma";
            autocomplete = "off";
            size;
            showClear = !1;
            autofocus;
            get autoZIndex() {
                return this._autoZIndex
            }
            set autoZIndex(e) {
                this._autoZIndex = e, console.log("The autoZIndex property is deprecated since v14.2.0, use overlayOptions property instead.")
            }
            get baseZIndex() {
                return this._baseZIndex
            }
            set baseZIndex(e) {
                this._baseZIndex = e, console.log("The baseZIndex property is deprecated since v14.2.0, use overlayOptions property instead.")
            }
            get showTransitionOptions() {
                return this._showTransitionOptions
            }
            set showTransitionOptions(e) {
                this._showTransitionOptions = e, console.log("The showTransitionOptions property is deprecated since v14.2.0, use overlayOptions property instead.")
            }
            get hideTransitionOptions() {
                return this._hideTransitionOptions
            }
            set hideTransitionOptions(e) {
                this._hideTransitionOptions = e, console.log("The hideTransitionOptions property is deprecated since v14.2.0, use overlayOptions property instead.")
            }
            set defaultLabel(e) {
                this._defaultLabel = e, console.log("defaultLabel property is deprecated since 16.6.0, use placeholder instead")
            }
            get defaultLabel() {
                return this._defaultLabel
            }
            set placeholder(e) {
                this._placeholder.set(e)
            }
            get placeholder() {
                return this._placeholder.asReadonly()
            }
            get options() {
                return this._options()
            }
            set options(e) {
                qe(this._options(), e) || this._options.set(e)
            }
            get filterValue() {
                return this._filterValue()
            }
            set filterValue(e) {
                this._filterValue.set(e)
            }
            get itemSize() {
                return this._itemSize
            }
            set itemSize(e) {
                this._itemSize = e, console.log("The itemSize property is deprecated, use virtualScrollItemSize property instead.")
            }
            get selectAll() {
                return this._selectAll
            }
            set selectAll(e) {
                this._selectAll = e
            }
            focusOnHover = !0;
            filterFields;
            selectOnFocus = !1;
            autoOptionFocus = !1;
            highlightOnSelect = !0;
            onChange = new S;
            onFilter = new S;
            onFocus = new S;
            onBlur = new S;
            onClick = new S;
            onClear = new S;
            onPanelShow = new S;
            onPanelHide = new S;
            onLazyLoad = new S;
            onRemove = new S;
            onSelectAllChange = new S;
            overlayViewChild;
            filterInputChild;
            focusInputViewChild;
            itemsViewChild;
            scroller;
            lastHiddenFocusableElementOnOverlay;
            firstHiddenFocusableElementOnOverlay;
            headerCheckboxViewChild;
            footerFacet;
            headerFacet;
            _componentStyle = se(ht);
            searchValue;
            searchTimeout;
            _selectAll = null;
            _autoZIndex;
            _baseZIndex;
            _showTransitionOptions;
            _hideTransitionOptions;
            _defaultLabel;
            _placeholder = D(void 0);
            _itemSize;
            _selectionLimit;
            _disableTooltip = !1;
            value;
            _filteredOptions;
            onModelChange = () => {};
            onModelTouched = () => {};
            valuesAsString;
            focus;
            filtered;
            itemTemplate;
            groupTemplate;
            loaderTemplate;
            headerTemplate;
            filterTemplate;
            footerTemplate;
            emptyFilterTemplate;
            emptyTemplate;
            selectedItemsTemplate;
            checkIconTemplate;
            loadingIconTemplate;
            filterIconTemplate;
            removeTokenIconTemplate;
            chipIconTemplate;
            clearIconTemplate;
            dropdownIconTemplate;
            itemCheckboxIconTemplate;
            headerCheckboxIconTemplate;
            templates;
            _itemTemplate;
            _groupTemplate;
            _loaderTemplate;
            _headerTemplate;
            _filterTemplate;
            _footerTemplate;
            _emptyFilterTemplate;
            _emptyTemplate;
            _selectedItemsTemplate;
            _checkIconTemplate;
            _loadingIconTemplate;
            _filterIconTemplate;
            _removeTokenIconTemplate;
            _chipIconTemplate;
            _clearIconTemplate;
            _dropdownIconTemplate;
            _itemCheckboxIconTemplate;
            _headerCheckboxIconTemplate;
            ngAfterContentInit() {
                this.templates.forEach(e => {
                    switch (e.getType()) {
                        case "item":
                            this._itemTemplate = e.template;
                            break;
                        case "group":
                            this._groupTemplate = e.template;
                            break;
                        case "selectedItems":
                        case "selecteditems":
                            this._selectedItemsTemplate = e.template;
                            break;
                        case "header":
                            this._headerTemplate = e.template;
                            break;
                        case "filter":
                            this._filterTemplate = e.template;
                            break;
                        case "emptyfilter":
                            this._emptyFilterTemplate = e.template;
                            break;
                        case "empty":
                            this._emptyTemplate = e.template;
                            break;
                        case "footer":
                            this._footerTemplate = e.template;
                            break;
                        case "loader":
                            this._loaderTemplate = e.template;
                            break;
                        case "checkicon":
                            this._checkIconTemplate = e.template, console.warn("checkicon is deprecated and will removed in future. Use itemcheckboxicon or headercheckboxicon templates instead.");
                            break;
                        case "headercheckboxicon":
                            this._headerCheckboxIconTemplate = e.template;
                            break;
                        case "loadingicon":
                            this._loadingIconTemplate = e.template;
                            break;
                        case "filtericon":
                            this._filterIconTemplate = e.template;
                            break;
                        case "removetokenicon":
                            this._removeTokenIconTemplate = e.template;
                            break;
                        case "clearicon":
                            this._clearIconTemplate = e.template;
                            break;
                        case "dropdownicon":
                            this._dropdownIconTemplate = e.template;
                            break;
                        case "itemcheckboxicon":
                            this._itemCheckboxIconTemplate = e.template;
                            break;
                        case "chipicon":
                            this._chipIconTemplate = e.template;
                            break;
                        default:
                            this._itemTemplate = e.template;
                            break
                    }
                })
            }
            headerCheckboxFocus;
            filterOptions;
            preventModelTouched;
            preventDocumentDefault;
            focused = !1;
            itemsWrapper;
            _displaySelectedLabel = !0;
            _maxSelectedLabels = 3;
            modelValue = D(null);
            _filterValue = D(null);
            _options = D(null);
            startRangeIndex = D(-1);
            focusedOptionIndex = D(-1);
            selectedOptions;
            clickInProgress = !1;
            get hostClasses() {
                let e = [];
                return typeof this.rootClass == "string" ? e.push(this.rootClass) : Array.isArray(this.rootClass) ? e.push(...this.rootClass) : typeof this.rootClass == "object" && Object.keys(this.rootClass).filter(n => this.rootClass[n]).forEach(n => e.push(n)), this.styleClass && e.push(this.styleClass), e.join(" ")
            }
            get rootClass() {
                return this._componentStyle.classes.root({
                    instance: this
                })
            }
            get labelClass() {
                return this._componentStyle.classes.label({
                    instance: this
                })
            }
            get emptyMessageLabel() {
                return this.emptyMessage || this.config.getTranslation(Q.EMPTY_MESSAGE)
            }
            get emptyFilterMessageLabel() {
                return this.emptyFilterMessage || this.config.getTranslation(Q.EMPTY_FILTER_MESSAGE)
            }
            get filled() {
                return typeof this.modelValue() == "string" ? !!this.modelValue() : z(this.modelValue())
            }
            get isVisibleClearIcon() {
                return this.modelValue() != null && this.modelValue() !== "" && z(this.modelValue()) && this.showClear && !this.disabled && !this.readonly && this.filled
            }
            get toggleAllAriaLabel() {
                return this.config.translation.aria ? this.config.translation.aria[this.allSelected() ? "selectAll" : "unselectAll"] : void 0
            }
            get closeAriaLabel() {
                return this.config.translation.aria ? this.config.translation.aria.close : void 0
            }
            get listLabel() {
                return this.config.getTranslation(Q.ARIA).listLabel
            }
            get hasFluid() {
                let n = this.el.nativeElement.closest("p-fluid");
                return this.fluid || !!n
            }
            getAllVisibleAndNonVisibleOptions() {
                return this.group ? this.flatOptions(this.options) : this.options || []
            }
            visibleOptions = he(() => {
                let e = this.getAllVisibleAndNonVisibleOptions(),
                    n = Ge(e) && ct.isObject(e[0]);
                if (this._filterValue()) {
                    let i;
                    if (n ? i = this.filterService.filter(e, this.searchFields(), this._filterValue(), this.filterMatchMode, this.filterLocale) : i = e.filter(l => l.toString().toLocaleLowerCase().includes(this._filterValue().toLocaleLowerCase())), this.group) {
                        let l = this.options || [],
                            o = [];
                        return l.forEach(m => {
                            let le = this.getOptionGroupChildren(m).filter(xt => i.includes(xt));
                            le.length > 0 && o.push(xe(be({}, m), {
                                [typeof this.optionGroupChildren == "string" ? this.optionGroupChildren : "items"]: [...le]
                            }))
                        }), this.flatOptions(o)
                    }
                    return i
                }
                return e
            });
            label = he(() => {
                let e, n = this.modelValue();
                if (n && n.length && this.displaySelectedLabel) {
                    if (z(this.maxSelectedLabels) && n.length > this.maxSelectedLabels) return this.getSelectedItemsLabel();
                    e = "";
                    for (let i = 0; i < n.length; i++) i !== 0 && (e += ", "), e += this.getLabelByValue(n[i])
                } else e = this.placeholder() || this.defaultLabel || "";
                return e
            });
            chipSelectedItems = he(() => z(this.maxSelectedLabels) && this.modelValue() && this.modelValue().length > this.maxSelectedLabels ? this.modelValue().slice(0, this.maxSelectedLabels) : this.modelValue());
            constructor(e, n, i) {
                super(), this.zone = e, this.filterService = n, this.overlayService = i, Pe(() => {
                    let l = this.modelValue(),
                        o = this.getAllVisibleAndNonVisibleOptions();
                    o && z(o) && (this.optionValue && this.optionLabel && l ? this.selectedOptions = o.filter(m => l.includes(m[this.optionLabel]) || l.includes(m[this.optionValue])) : this.selectedOptions = l, this.cd.markForCheck())
                })
            }
            ngOnInit() {
                super.ngOnInit(), this.id = this.id || Ze("pn_id_"), this.autoUpdateModel(), this.filterBy && (this.filterOptions = {
                    filter: e => this.onFilterInputChange(e),
                    reset: () => this.resetFilter()
                })
            }
            maxSelectionLimitReached() {
                return this.selectionLimit && this.modelValue() && this.modelValue().length === this.selectionLimit
            }
            ngAfterViewInit() {
                super.ngAfterViewInit(), this.overlayVisible && this.show()
            }
            ngAfterViewChecked() {
                this.filtered && (this.zone.runOutsideAngular(() => {
                    setTimeout(() => {
                        this.overlayViewChild ? .alignOverlay()
                    }, 1)
                }), this.filtered = !1)
            }
            flatOptions(e) {
                return (e || []).reduce((n, i, l) => {
                    n.push({
                        optionGroup: i,
                        group: !0,
                        index: l
                    });
                    let o = this.getOptionGroupChildren(i);
                    return o && o.forEach(m => n.push(m)), n
                }, [])
            }
            autoUpdateModel() {
                if (this.selectOnFocus && this.autoOptionFocus && !this.hasSelectedOption()) {
                    this.focusedOptionIndex.set(this.findFirstFocusedOptionIndex());
                    let e = this.getOptionValue(this.visibleOptions()[this.focusedOptionIndex()]);
                    this.onOptionSelect({
                        originalEvent: null,
                        option: [e]
                    })
                }
            }
            updateModel(e, n) {
                this.value = e, this.onModelChange(e), this.modelValue.set(e)
            }
            onInputClick(e) {
                e.stopPropagation(), e.preventDefault(), this.focusedOptionIndex.set(-1)
            }
            onOptionSelect(e, n = !1, i = -1) {
                let {
                    originalEvent: l,
                    option: o
                } = e;
                if (this.disabled || this.isOptionDisabled(o)) return;
                let m = this.isSelected(o),
                    y = null;
                m ? y = this.modelValue().filter(le => !ee(le, this.getOptionValue(o), this.equalityKey())) : y = [...this.modelValue() || [], this.getOptionValue(o)], this.updateModel(y, l), i !== -1 && this.focusedOptionIndex.set(i), n && R(this.focusInputViewChild ? .nativeElement), this.onChange.emit({
                    originalEvent: e,
                    value: y,
                    itemValue: o
                })
            }
            findSelectedOptionIndex() {
                return this.hasSelectedOption() ? this.visibleOptions().findIndex(e => this.isValidSelectedOption(e)) : -1
            }
            onOptionSelectRange(e, n = -1, i = -1) {
                if (n === -1 && (n = this.findNearestSelectedOptionIndex(i, !0)), i === -1 && (i = this.findNearestSelectedOptionIndex(n)), n !== -1 && i !== -1) {
                    let l = Math.min(n, i),
                        o = Math.max(n, i),
                        m = this.visibleOptions().slice(l, o + 1).filter(y => this.isValidOption(y)).map(y => this.getOptionValue(y));
                    this.updateModel(m, e)
                }
            }
            searchFields() {
                return (this.filterBy || this.optionLabel || "label").split(",")
            }
            findNearestSelectedOptionIndex(e, n = !1) {
                let i = -1;
                return this.hasSelectedOption() && (n ? (i = this.findPrevSelectedOptionIndex(e), i = i === -1 ? this.findNextSelectedOptionIndex(e) : i) : (i = this.findNextSelectedOptionIndex(e), i = i === -1 ? this.findPrevSelectedOptionIndex(e) : i)), i > -1 ? i : e
            }
            findPrevSelectedOptionIndex(e) {
                let n = this.hasSelectedOption() && e > 0 ? te(this.visibleOptions().slice(0, e), i => this.isValidSelectedOption(i)) : -1;
                return n > -1 ? n : -1
            }
            findFirstFocusedOptionIndex() {
                let e = this.findFirstSelectedOptionIndex();
                return e < 0 ? this.findFirstOptionIndex() : e
            }
            findFirstOptionIndex() {
                return this.visibleOptions().findIndex(e => this.isValidOption(e))
            }
            findFirstSelectedOptionIndex() {
                return this.hasSelectedOption() ? this.visibleOptions().findIndex(e => this.isValidSelectedOption(e)) : -1
            }
            findNextSelectedOptionIndex(e) {
                let n = this.hasSelectedOption() && e < this.visibleOptions().length - 1 ? this.visibleOptions().slice(e + 1).findIndex(i => this.isValidSelectedOption(i)) : -1;
                return n > -1 ? n + e + 1 : -1
            }
            equalityKey() {
                return this.optionValue ? null : this.dataKey
            }
            hasSelectedOption() {
                return z(this.modelValue())
            }
            isValidSelectedOption(e) {
                return this.isValidOption(e) && this.isSelected(e)
            }
            isOptionGroup(e) {
                return (this.group || this.optionGroupLabel) && e.optionGroup && e.group
            }
            isValidOption(e) {
                return e && !(this.isOptionDisabled(e) || this.isOptionGroup(e))
            }
            isOptionDisabled(e) {
                return this.maxSelectionLimitReached() && !this.isSelected(e) ? !0 : this.optionDisabled ? K(e, this.optionDisabled) : e && e.disabled !== void 0 ? e.disabled : !1
            }
            isSelected(e) {
                let n = this.getOptionValue(e);
                return (this.modelValue() || []).some(i => ee(i, n, this.equalityKey()))
            }
            isOptionMatched(e) {
                return this.isValidOption(e) && this.getOptionLabel(e).toString().toLocaleLowerCase(this.filterLocale).startsWith(this.searchValue.toLocaleLowerCase(this.filterLocale))
            }
            isEmpty() {
                return !this._options() || this.visibleOptions() && this.visibleOptions().length === 0
            }
            getOptionIndex(e, n) {
                return this.virtualScrollerDisabled ? e : n && n.getItemOptions(e).index
            }
            getAriaPosInset(e) {
                return (this.optionGroupLabel ? e - this.visibleOptions().slice(0, e).filter(n => this.isOptionGroup(n)).length : e) + 1
            }
            get ariaSetSize() {
                return this.visibleOptions().filter(e => !this.isOptionGroup(e)).length
            }
            getLabelByValue(e) {
                let i = (this.group ? this.flatOptions(this._options()) : this._options() || []).find(l => !this.isOptionGroup(l) && ee(this.getOptionValue(l), e, this.equalityKey()));
                return i ? this.getOptionLabel(i) : null
            }
            getSelectedItemsLabel() {
                let e = /{(.*?)}/,
                    n = this.selectedItemsLabel ? this.selectedItemsLabel : this.config.getTranslation(Q.SELECTION_MESSAGE);
                return e.test(n) ? n.replace(n.match(e)[0], this.modelValue().length + "") : n
            }
            getOptionLabel(e) {
                return this.optionLabel ? K(e, this.optionLabel) : e && e.label != null ? e.label : e
            }
            getOptionValue(e) {
                return this.optionValue ? K(e, this.optionValue) : !this.optionLabel && e && e.value !== void 0 ? e.value : e
            }
            getOptionGroupLabel(e) {
                return this.optionGroupLabel ? K(e, this.optionGroupLabel) : e && e.label != null ? e.label : e
            }
            getOptionGroupChildren(e) {
                return this.optionGroupChildren ? K(e, this.optionGroupChildren) : e.items
            }
            onKeyDown(e) {
                if (this.disabled) {
                    e.preventDefault();
                    return
                }
                let n = e.metaKey || e.ctrlKey;
                switch (e.code) {
                    case "ArrowDown":
                        this.onArrowDownKey(e);
                        break;
                    case "ArrowUp":
                        this.onArrowUpKey(e);
                        break;
                    case "Home":
                        this.onHomeKey(e);
                        break;
                    case "End":
                        this.onEndKey(e);
                        break;
                    case "PageDown":
                        this.onPageDownKey(e);
                        break;
                    case "PageUp":
                        this.onPageUpKey(e);
                        break;
                    case "Enter":
                    case "Space":
                        this.onEnterKey(e);
                        break;
                    case "Escape":
                        this.onEscapeKey(e);
                        break;
                    case "Tab":
                        this.onTabKey(e);
                        break;
                    case "ShiftLeft":
                    case "ShiftRight":
                        this.onShiftKey();
                        break;
                    default:
                        if (e.code === "KeyA" && n) {
                            let i = this.visibleOptions().filter(l => this.isValidOption(l)).map(l => this.getOptionValue(l));
                            this.updateModel(i, e), e.preventDefault();
                            break
                        }!n && je(e.key) && (!this.overlayVisible && this.show(), this.searchOptions(e, e.key), e.preventDefault());
                        break
                }
            }
            onFilterKeyDown(e) {
                switch (e.code) {
                    case "ArrowDown":
                        this.onArrowDownKey(e);
                        break;
                    case "ArrowUp":
                        this.onArrowUpKey(e, !0);
                        break;
                    case "ArrowLeft":
                    case "ArrowRight":
                        this.onArrowLeftKey(e, !0);
                        break;
                    case "Home":
                        this.onHomeKey(e, !0);
                        break;
                    case "End":
                        this.onEndKey(e, !0);
                        break;
                    case "Enter":
                    case "NumpadEnter":
                        this.onEnterKey(e);
                        break;
                    case "Escape":
                        this.onEscapeKey(e);
                        break;
                    case "Tab":
                        this.onTabKey(e, !0);
                        break;
                    default:
                        break
                }
            }
            onArrowLeftKey(e, n = !1) {
                n && this.focusedOptionIndex.set(-1)
            }
            onArrowDownKey(e) {
                let n = this.focusedOptionIndex() !== -1 ? this.findNextOptionIndex(this.focusedOptionIndex()) : this.findFirstFocusedOptionIndex();
                e.shiftKey && this.onOptionSelectRange(e, this.startRangeIndex(), n), this.changeFocusedOptionIndex(e, n), !this.overlayVisible && this.show(), e.preventDefault(), e.stopPropagation()
            }
            onArrowUpKey(e, n = !1) {
                if (e.altKey && !n) this.focusedOptionIndex() !== -1 && this.onOptionSelect(e, this.visibleOptions()[this.focusedOptionIndex()]), this.overlayVisible && this.hide(), e.preventDefault();
                else {
                    let i = this.focusedOptionIndex() !== -1 ? this.findPrevOptionIndex(this.focusedOptionIndex()) : this.findLastFocusedOptionIndex();
                    e.shiftKey && this.onOptionSelectRange(e, i, this.startRangeIndex()), this.changeFocusedOptionIndex(e, i), !this.overlayVisible && this.show(), e.preventDefault()
                }
                e.stopPropagation()
            }
            onHomeKey(e, n = !1) {
                let {
                    currentTarget: i
                } = e;
                if (n) {
                    let l = i.value.length;
                    i.setSelectionRange(0, e.shiftKey ? l : 0), this.focusedOptionIndex.set(-1)
                } else {
                    let l = e.metaKey || e.ctrlKey,
                        o = this.findFirstOptionIndex();
                    e.shiftKey && l && this.onOptionSelectRange(e, o, this.startRangeIndex()), this.changeFocusedOptionIndex(e, o), !this.overlayVisible && this.show()
                }
                e.preventDefault()
            }
            onEndKey(e, n = !1) {
                let {
                    currentTarget: i
                } = e;
                if (n) {
                    let l = i.value.length;
                    i.setSelectionRange(e.shiftKey ? 0 : l, l), this.focusedOptionIndex.set(-1)
                } else {
                    let l = e.metaKey || e.ctrlKey,
                        o = this.findLastFocusedOptionIndex();
                    e.shiftKey && l && this.onOptionSelectRange(e, this.startRangeIndex(), o), this.changeFocusedOptionIndex(e, o), !this.overlayVisible && this.show()
                }
                e.preventDefault()
            }
            onPageDownKey(e) {
                this.scrollInView(this.visibleOptions().length - 1), e.preventDefault()
            }
            onPageUpKey(e) {
                this.scrollInView(0), e.preventDefault()
            }
            onEnterKey(e) {
                this.overlayVisible ? this.focusedOptionIndex() !== -1 && (e.shiftKey ? this.onOptionSelectRange(e, this.focusedOptionIndex()) : this.onOptionSelect({
                    originalEvent: e,
                    option: this.visibleOptions()[this.focusedOptionIndex()]
                })) : this.onArrowDownKey(e), e.preventDefault()
            }
            onEscapeKey(e) {
                this.overlayVisible && this.hide(!0), e.stopPropagation(), e.preventDefault()
            }
            onDeleteKey(e) {
                this.showClear && (this.clear(e), e.preventDefault())
            }
            onTabKey(e, n = !1) {
                n || (this.overlayVisible && this.hasFocusableElements() ? (R(e.shiftKey ? this.lastHiddenFocusableElementOnOverlay.nativeElement : this.firstHiddenFocusableElementOnOverlay.nativeElement), e.preventDefault()) : (this.focusedOptionIndex() !== -1 && this.onOptionSelect({
                    originalEvent: e,
                    option: this.visibleOptions()[this.focusedOptionIndex()]
                }), this.overlayVisible && this.hide(this.filter)))
            }
            onShiftKey() {
                this.startRangeIndex.set(this.focusedOptionIndex())
            }
            onContainerClick(e) {
                if (!(this.disabled || this.loading || this.readonly || e.target.isSameNode(this.focusInputViewChild ? .nativeElement))) {
                    if (!this.overlayViewChild || !this.overlayViewChild.el.nativeElement.contains(e.target)) {
                        if (this.clickInProgress) return;
                        this.clickInProgress = !0, setTimeout(() => {
                            this.clickInProgress = !1
                        }, 150), this.overlayVisible ? this.hide(!0) : this.show(!0)
                    }
                    this.focusInputViewChild ? .nativeElement.focus({
                        preventScroll: !0
                    }), this.onClick.emit(e), this.cd.detectChanges()
                }
            }
            onFirstHiddenFocus(e) {
                let n = e.relatedTarget === this.focusInputViewChild ? .nativeElement ? Ne(this.overlayViewChild ? .overlayViewChild ? .nativeElement, ':not([data-p-hidden-focusable="true"])') : this.focusInputViewChild ? .nativeElement;
                R(n)
            }
            onInputFocus(e) {
                this.focused = !0;
                let n = this.focusedOptionIndex() !== -1 ? this.focusedOptionIndex() : this.overlayVisible && this.autoOptionFocus ? this.findFirstFocusedOptionIndex() : -1;
                this.focusedOptionIndex.set(n), this.overlayVisible && this.scrollInView(this.focusedOptionIndex()), this.onFocus.emit({
                    originalEvent: e
                })
            }
            onInputBlur(e) {
                this.focused = !1, this.onBlur.emit({
                    originalEvent: e
                }), this.preventModelTouched || this.onModelTouched(), this.preventModelTouched = !1
            }
            onFilterInputChange(e) {
                let n = e.target.value;
                this._filterValue.set(n), this.focusedOptionIndex.set(-1), this.onFilter.emit({
                    originalEvent: e,
                    filter: this._filterValue()
                }), !this.virtualScrollerDisabled && this.scroller.scrollToIndex(0), setTimeout(() => {
                    this.overlayViewChild.alignOverlay()
                })
            }
            onLastHiddenFocus(e) {
                let n = e.relatedTarget === this.focusInputViewChild ? .nativeElement ? Be(this.overlayViewChild ? .overlayViewChild ? .nativeElement, ':not([data-p-hidden-focusable="true"])') : this.focusInputViewChild ? .nativeElement;
                R(n)
            }
            onOptionMouseEnter(e, n) {
                this.focusOnHover && this.changeFocusedOptionIndex(e, n)
            }
            onHeaderCheckboxKeyDown(e) {
                if (this.disabled) {
                    e.preventDefault();
                    return
                }
                switch (e.code) {
                    case "Space":
                        this.onToggleAll(e);
                        break;
                    case "Enter":
                        this.onToggleAll(e);
                        break;
                    default:
                        break
                }
            }
            onFilterBlur(e) {
                this.focusedOptionIndex.set(-1)
            }
            onHeaderCheckboxFocus() {
                this.headerCheckboxFocus = !0
            }
            onHeaderCheckboxBlur() {
                this.headerCheckboxFocus = !1
            }
            onToggleAll(e) {
                if (!(this.disabled || this.readonly)) {
                    if (this.selectAll != null) this.onSelectAllChange.emit({
                        originalEvent: e,
                        checked: !this.allSelected()
                    });
                    else {
                        let n = this.getAllVisibleAndNonVisibleOptions().filter(y => this.isSelected(y) && (this.optionDisabled ? K(y, this.optionDisabled) : y && y.disabled !== void 0 ? y.disabled : !1)),
                            i = this.allSelected() ? this.visibleOptions().filter(y => !this.isValidOption(y) && this.isSelected(y)) : this.visibleOptions().filter(y => this.isSelected(y) || this.isValidOption(y)),
                            o = [...this.filter && !this.allSelected() ? this.getAllVisibleAndNonVisibleOptions().filter(y => this.isSelected(y) && this.isValidOption(y)) : [], ...n, ...i].map(y => this.getOptionValue(y)),
                            m = [...new Set(o)];
                        this.updateModel(m, e), (!m.length || m.length === this.getAllVisibleAndNonVisibleOptions().length) && this.onSelectAllChange.emit({
                            originalEvent: e,
                            checked: !!m.length
                        })
                    }
                    this.partialSelected() && (this.selectedOptions = null, this.cd.markForCheck()), this.onChange.emit({
                        originalEvent: e,
                        value: this.value
                    }), Xe.focus(this.headerCheckboxViewChild ? .inputViewChild ? .nativeElement), this.headerCheckboxFocus = !0, e.originalEvent.preventDefault(), e.originalEvent.stopPropagation()
                }
            }
            changeFocusedOptionIndex(e, n) {
                this.focusedOptionIndex() !== n && (this.focusedOptionIndex.set(n), this.scrollInView())
            }
            get virtualScrollerDisabled() {
                return !this.virtualScroll
            }
            scrollInView(e = -1) {
                let n = e !== -1 ? `${this.id}_${e}` : this.focusedOptionId;
                if (this.itemsViewChild && this.itemsViewChild.nativeElement) {
                    let i = fe(this.itemsViewChild.nativeElement, `li[id="${n}"]`);
                    i ? i.scrollIntoView && i.scrollIntoView({
                        block: "nearest",
                        inline: "nearest"
                    }) : this.virtualScrollerDisabled || setTimeout(() => {
                        this.virtualScroll && this.scroller ? .scrollToIndex(e !== -1 ? e : this.focusedOptionIndex())
                    }, 0)
                }
            }
            get focusedOptionId() {
                return this.focusedOptionIndex() !== -1 ? `${this.id}_${this.focusedOptionIndex()}` : null
            }
            writeValue(e) {
                this.value = e, this.modelValue.set(this.value), this.cd.markForCheck()
            }
            registerOnChange(e) {
                this.onModelChange = e
            }
            registerOnTouched(e) {
                this.onModelTouched = e
            }
            setDisabledState(e) {
                this.disabled = e, this.cd.markForCheck()
            }
            allSelected() {
                return this.selectAll !== null ? this.selectAll : z(this.visibleOptions()) && this.visibleOptions().every(e => this.isOptionGroup(e) || this.isOptionDisabled(e) || this.isSelected(e))
            }
            partialSelected() {
                return this.selectedOptions && this.selectedOptions.length > 0 && this.selectedOptions.length < this.options.length
            }
            show(e) {
                this.overlayVisible = !0;
                let n = this.focusedOptionIndex() !== -1 ? this.focusedOptionIndex() : this.autoOptionFocus ? this.findFirstFocusedOptionIndex() : this.findSelectedOptionIndex();
                this.focusedOptionIndex.set(n), e && R(this.focusInputViewChild ? .nativeElement), this.cd.markForCheck()
            }
            hide(e) {
                this.overlayVisible = !1, this.focusedOptionIndex.set(-1), this.filter && this.resetFilterOnHide && this.resetFilter(), this.overlayOptions ? .mode === "modal" && Qe(), e && R(this.focusInputViewChild ? .nativeElement), this.cd.markForCheck()
            }
            onOverlayAnimationStart(e) {
                if (e.toState === "visible") {
                    if (this.itemsWrapper = fe(this.overlayViewChild ? .overlayViewChild ? .nativeElement, this.virtualScroll ? ".p-scroller" : ".p-multiselect-list-container"), this.virtualScroll && this.scroller ? .setContentEl(this.itemsViewChild ? .nativeElement), this.options && this.options.length)
                        if (this.virtualScroll) {
                            let n = this.modelValue() ? this.focusedOptionIndex() : -1;
                            n !== -1 && this.scroller ? .scrollToIndex(n)
                        } else {
                            let n = fe(this.itemsWrapper, '[data-p-highlight="true"]');
                            n && n.scrollIntoView({
                                block: "nearest",
                                inline: "nearest"
                            })
                        }
                    this.filterInputChild && this.filterInputChild.nativeElement && (this.preventModelTouched = !0, this.autofocusFilter && this.filterInputChild.nativeElement.focus()), this.onPanelShow.emit(e)
                }
                e.toState === "void" && (this.itemsWrapper = null, this.onModelTouched(), this.onPanelHide.emit(e))
            }
            resetFilter() {
                this.filterInputChild && this.filterInputChild.nativeElement && (this.filterInputChild.nativeElement.value = ""), this._filterValue.set(null), this._filteredOptions = null
            }
            close(e) {
                this.hide(), e.preventDefault(), e.stopPropagation()
            }
            clear(e) {
                this.value = null, this.updateModel(null, e), this.selectedOptions = null, this.onClear.emit(), this._disableTooltip = !0, e.stopPropagation()
            }
            labelContainerMouseLeave() {
                this._disableTooltip && (this._disableTooltip = !1)
            }
            removeOption(e, n) {
                let i = this.modelValue().filter(l => !ee(l, e, this.equalityKey()));
                this.updateModel(i, n), this.onChange.emit({
                    originalEvent: n,
                    value: i,
                    itemValue: e
                }), this.onRemove.emit({
                    newValue: i,
                    removed: e
                }), n && n.stopPropagation()
            }
            findNextItem(e) {
                let n = e.nextElementSibling;
                return n ? X(n.children[0], "p-disabled") || we(n.children[0]) || X(n, "p-multiselect-item-group") ? this.findNextItem(n) : n.children[0] : null
            }
            findPrevItem(e) {
                let n = e.previousElementSibling;
                return n ? X(n.children[0], "p-disabled") || we(n.children[0]) || X(n, "p-multiselect-item-group") ? this.findPrevItem(n) : n.children[0] : null
            }
            findNextOptionIndex(e) {
                let n = e < this.visibleOptions().length - 1 ? this.visibleOptions().slice(e + 1).findIndex(i => this.isValidOption(i)) : -1;
                return n > -1 ? n + e + 1 : e
            }
            findPrevOptionIndex(e) {
                let n = e > 0 ? te(this.visibleOptions().slice(0, e), i => this.isValidOption(i)) : -1;
                return n > -1 ? n : e
            }
            findLastSelectedOptionIndex() {
                return this.hasSelectedOption() ? te(this.visibleOptions(), e => this.isValidSelectedOption(e)) : -1
            }
            findLastFocusedOptionIndex() {
                let e = this.findLastSelectedOptionIndex();
                return e < 0 ? this.findLastOptionIndex() : e
            }
            findLastOptionIndex() {
                return te(this.visibleOptions(), e => this.isValidOption(e))
            }
            searchOptions(e, n) {
                this.searchValue = (this.searchValue || "") + n;
                let i = -1,
                    l = !1;
                return this.focusedOptionIndex() !== -1 ? (i = this.visibleOptions().slice(this.focusedOptionIndex()).findIndex(o => this.isOptionMatched(o)), i = i === -1 ? this.visibleOptions().slice(0, this.focusedOptionIndex()).findIndex(o => this.isOptionMatched(o)) : i + this.focusedOptionIndex()) : i = this.visibleOptions().findIndex(o => this.isOptionMatched(o)), i !== -1 && (l = !0), i === -1 && this.focusedOptionIndex() === -1 && (i = this.findFirstFocusedOptionIndex()), i !== -1 && this.changeFocusedOptionIndex(e, i), this.searchTimeout && clearTimeout(this.searchTimeout), this.searchTimeout = setTimeout(() => {
                    this.searchValue = "", this.searchTimeout = null
                }, 500), l
            }
            activateFilter() {
                if (this.hasFilter() && this._options)
                    if (this.group) {
                        let e = [];
                        for (let n of this.options) {
                            let i = this.filterService.filter(this.getOptionGroupChildren(n), this.searchFields(), this.filterValue, this.filterMatchMode, this.filterLocale);
                            i && i.length && e.push(xe(be({}, n), {
                                [this.optionGroupChildren]: i
                            }))
                        }
                        this._filteredOptions = e
                    } else this._filteredOptions = this.filterService.filter(this.options, this.searchFields(), this.filterValue, this.filterMatchMode, this.filterLocale);
                else this._filteredOptions = null
            }
            hasFocusableElements() {
                return He(this.overlayViewChild.overlayViewChild.nativeElement, ':not([data-p-hidden-focusable="true"])').length > 0
            }
            hasFilter() {
                return this._filterValue() && this._filterValue().trim().length > 0
            }
            static\ u0275fac = function(n) {
                return new(n || t)(re(Fe), re(Ue), re(We))
            };
            static\ u0275cmp = B({
                type: t,
                selectors: [
                    ["p-multiSelect"],
                    ["p-multiselect"],
                    ["p-multi-select"]
                ],
                contentQueries: function(n, i, l) {
                    if (n & 1 && (I(l, Je, 5), I(l, Ye, 5), I(l, Gt, 4), I(l, jt, 4), I(l, Zt, 4), I(l, Ut, 4), I(l, Wt, 4), I(l, Yt, 4), I(l, Jt, 4), I(l, Xt, 4), I(l, ei, 4), I(l, ti, 4), I(l, ii, 4), I(l, ni, 4), I(l, li, 4), I(l, oi, 4), I(l, ai, 4), I(l, si, 4), I(l, ri, 4), I(l, ci, 4), I(l, ge, 4)), n & 2) {
                        let o;
                        _(o = h()) && (i.footerFacet = o.first), _(o = h()) && (i.headerFacet = o.first), _(o = h()) && (i.itemTemplate = o.first), _(o = h()) && (i.groupTemplate = o.first), _(o = h()) && (i.loaderTemplate = o.first), _(o = h()) && (i.headerTemplate = o.first), _(o = h()) && (i.filterTemplate = o.first), _(o = h()) && (i.footerTemplate = o.first), _(o = h()) && (i.emptyFilterTemplate = o.first), _(o = h()) && (i.emptyTemplate = o.first), _(o = h()) && (i.selectedItemsTemplate = o.first), _(o = h()) && (i.checkIconTemplate = o.first), _(o = h()) && (i.loadingIconTemplate = o.first), _(o = h()) && (i.filterIconTemplate = o.first), _(o = h()) && (i.removeTokenIconTemplate = o.first), _(o = h()) && (i.chipIconTemplate = o.first), _(o = h()) && (i.clearIconTemplate = o.first), _(o = h()) && (i.dropdownIconTemplate = o.first), _(o = h()) && (i.itemCheckboxIconTemplate = o.first), _(o = h()) && (i.headerCheckboxIconTemplate = o.first), _(o = h()) && (i.templates = o)
                    }
                },
                viewQuery: function(n, i) {
                    if (n & 1 && (L(pi, 5), L(di, 5), L(ui, 5), L(mi, 5), L(_i, 5), L(hi, 5), L(fi, 5), L(gi, 5)), n & 2) {
                        let l;
                        _(l = h()) && (i.overlayViewChild = l.first), _(l = h()) && (i.filterInputChild = l.first), _(l = h()) && (i.focusInputViewChild = l.first), _(l = h()) && (i.itemsViewChild = l.first), _(l = h()) && (i.scroller = l.first), _(l = h()) && (i.lastHiddenFocusableElementOnOverlay = l.first), _(l = h()) && (i.firstHiddenFocusableElementOnOverlay = l.first), _(l = h()) && (i.headerCheckboxViewChild = l.first)
                    }
                },
                hostVars: 7,
                hostBindings: function(n, i) {
                    n & 1 && T("click", function(o) {
                        return i.onContainerClick(o)
                    }), n & 2 && (x("id", i.id), N(i.style), E(i.hostClasses), $e("p-variant-filled", i.variant === "filled" || i.config.inputVariant() === "filled" || i.config.inputStyle() === "filled"))
                },
                inputs: {
                    id: "id",
                    ariaLabel: "ariaLabel",
                    style: "style",
                    styleClass: "styleClass",
                    panelStyle: "panelStyle",
                    panelStyleClass: "panelStyleClass",
                    inputId: "inputId",
                    disabled: [2, "disabled", "disabled", b],
                    fluid: [2, "fluid", "fluid", b],
                    readonly: [2, "readonly", "readonly", b],
                    group: [2, "group", "group", b],
                    filter: [2, "filter", "filter", b],
                    filterPlaceHolder: "filterPlaceHolder",
                    filterLocale: "filterLocale",
                    overlayVisible: [2, "overlayVisible", "overlayVisible", b],
                    tabindex: [2, "tabindex", "tabindex", Z],
                    variant: "variant",
                    appendTo: "appendTo",
                    dataKey: "dataKey",
                    name: "name",
                    ariaLabelledBy: "ariaLabelledBy",
                    displaySelectedLabel: "displaySelectedLabel",
                    maxSelectedLabels: "maxSelectedLabels",
                    selectionLimit: [2, "selectionLimit", "selectionLimit", Z],
                    selectedItemsLabel: "selectedItemsLabel",
                    showToggleAll: [2, "showToggleAll", "showToggleAll", b],
                    emptyFilterMessage: "emptyFilterMessage",
                    emptyMessage: "emptyMessage",
                    resetFilterOnHide: [2, "resetFilterOnHide", "resetFilterOnHide", b],
                    dropdownIcon: "dropdownIcon",
                    chipIcon: "chipIcon",
                    optionLabel: "optionLabel",
                    optionValue: "optionValue",
                    optionDisabled: "optionDisabled",
                    optionGroupLabel: "optionGroupLabel",
                    optionGroupChildren: "optionGroupChildren",
                    showHeader: [2, "showHeader", "showHeader", b],
                    filterBy: "filterBy",
                    scrollHeight: "scrollHeight",
                    lazy: [2, "lazy", "lazy", b],
                    virtualScroll: [2, "virtualScroll", "virtualScroll", b],
                    loading: [2, "loading", "loading", b],
                    virtualScrollItemSize: [2, "virtualScrollItemSize", "virtualScrollItemSize", Z],
                    loadingIcon: "loadingIcon",
                    virtualScrollOptions: "virtualScrollOptions",
                    overlayOptions: "overlayOptions",
                    ariaFilterLabel: "ariaFilterLabel",
                    filterMatchMode: "filterMatchMode",
                    tooltip: "tooltip",
                    tooltipPosition: "tooltipPosition",
                    tooltipPositionStyle: "tooltipPositionStyle",
                    tooltipStyleClass: "tooltipStyleClass",
                    autofocusFilter: [2, "autofocusFilter", "autofocusFilter", b],
                    display: "display",
                    autocomplete: "autocomplete",
                    size: "size",
                    showClear: [2, "showClear", "showClear", b],
                    autofocus: [2, "autofocus", "autofocus", b],
                    autoZIndex: "autoZIndex",
                    baseZIndex: "baseZIndex",
                    showTransitionOptions: "showTransitionOptions",
                    hideTransitionOptions: "hideTransitionOptions",
                    defaultLabel: "defaultLabel",
                    placeholder: "placeholder",
                    options: "options",
                    filterValue: "filterValue",
                    itemSize: "itemSize",
                    selectAll: "selectAll",
                    focusOnHover: [2, "focusOnHover", "focusOnHover", b],
                    filterFields: "filterFields",
                    selectOnFocus: [2, "selectOnFocus", "selectOnFocus", b],
                    autoOptionFocus: [2, "autoOptionFocus", "autoOptionFocus", b],
                    highlightOnSelect: [2, "highlightOnSelect", "highlightOnSelect", b]
                },
                outputs: {
                    onChange: "onChange",
                    onFilter: "onFilter",
                    onFocus: "onFocus",
                    onBlur: "onBlur",
                    onClick: "onClick",
                    onClear: "onClear",
                    onPanelShow: "onPanelShow",
                    onPanelHide: "onPanelHide",
                    onLazyLoad: "onLazyLoad",
                    onRemove: "onRemove",
                    onSelectAllChange: "onSelectAllChange"
                },
                features: [_e([jn, ht]), q],
                ngContentSelectors: bi,
                decls: 16,
                vars: 35,
                consts: [
                    ["focusInput", ""],
                    ["elseBlock", ""],
                    ["overlay", ""],
                    ["content", ""],
                    ["token", ""],
                    ["removeicon", ""],
                    ["firstHiddenFocusableEl", ""],
                    ["buildInItems", ""],
                    ["lastHiddenFocusableEl", ""],
                    ["builtInFilterElement", ""],
                    ["headerCheckbox", ""],
                    ["checkboxicon", ""],
                    ["filterInput", ""],
                    ["scroller", ""],
                    ["loader", ""],
                    ["items", ""],
                    [1, "p-hidden-accessible"],
                    ["role", "combobox", 3, "focus", "blur", "keydown", "pTooltip", "tooltipPosition", "positionStyle", "tooltipStyleClass", "pAutoFocus"],
                    [1, "p-multiselect-label-container", 3, "mouseleave", "pTooltip", "tooltipDisabled", "tooltipPosition", "positionStyle", "tooltipStyleClass"],
                    [3, "ngClass"],
                    [4, "ngIf"],
                    [1, "p-multiselect-dropdown"],
                    [4, "ngIf", "ngIfElse"],
                    [3, "visibleChange", "onAnimationStart", "onHide", "visible", "options", "target", "appendTo", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions"],
                    [1, "p-multiselect-chip-item"],
                    ["class", "p-multiselect-chip-item", 4, "ngFor", "ngForOf"],
                    ["styleClass", "p-multiselect-chip", 3, "onRemove", "label", "removable", "removeIcon"],
                    ["class", "p-multiselect-chip-icon", 3, "click", 4, "ngIf"],
                    [1, "p-multiselect-chip-icon", 3, "click"],
                    [4, "ngTemplateOutlet", "ngTemplateOutletContext"],
                    ["class", "p-multiselect-clear-icon", 3, "click", 4, "ngIf"],
                    [1, "p-multiselect-clear-icon", 3, "click"],
                    [4, "ngTemplateOutlet"],
                    ["aria-hidden", "true", 3, "ngClass", 4, "ngIf"],
                    ["aria-hidden", "true", 3, "class", 4, "ngIf"],
                    ["aria-hidden", "true", 3, "ngClass"],
                    ["aria-hidden", "true"],
                    ["class", "p-multiselect-dropdown-icon", 4, "ngIf"],
                    ["class", "p-multiselect-dropdown-icon", 3, "ngClass", 4, "ngIf"],
                    [3, "styleClass", 4, "ngIf"],
                    [1, "p-multiselect-dropdown-icon", 3, "ngClass"],
                    [3, "styleClass"],
                    [1, "p-multiselect-dropdown-icon"],
                    [3, "ngClass", "ngStyle"],
                    ["role", "presentation", 1, "p-hidden-accessible", "p-hidden-focusable", 3, "focus"],
                    ["class", "p-multiselect-header", 4, "ngIf"],
                    [1, "p-multiselect-list-container"],
                    [3, "items", "style", "itemSize", "autoSize", "tabindex", "lazy", "options", "onLazyLoad", 4, "ngIf"],
                    [1, "p-multiselect-header"],
                    [3, "ngModel", "ariaLabel", "binary", "variant", "disabled", "onChange", 4, "ngIf"],
                    ["class", "p-multiselect-filter-container", 4, "ngIf"],
                    [3, "onChange", "ngModel", "ariaLabel", "binary", "variant", "disabled"],
                    [1, "p-multiselect-filter-container"],
                    ["pInputText", "", "type", "text", "role", "searchbox", 1, "p-multiselect-filter", 3, "input", "keydown", "click", "blur", "variant", "value", "disabled"],
                    ["class", "p-multiselect-filter-icon", 4, "ngIf"],
                    [1, "p-multiselect-filter-icon"],
                    [3, "onLazyLoad", "items", "itemSize", "autoSize", "tabindex", "lazy", "options"],
                    ["role", "listbox", "aria-multiselectable", "true", 1, "p-multiselect-list", 3, "ngClass"],
                    ["ngFor", "", 3, "ngForOf"],
                    ["class", "p-multiselect-empty-message", "role", "option", 3, "ngStyle", 4, "ngIf"],
                    ["role", "option", 1, "p-multiselect-option-group", 3, "ngStyle"],
                    [3, "onClick", "onMouseEnter", "id", "option", "selected", "label", "disabled", "template", "checkIconTemplate", "itemCheckboxIconTemplate", "itemSize", "focused", "ariaPosInset", "ariaSetSize", "variant", "highlightOnSelect"],
                    ["role", "option", 1, "p-multiselect-empty-message", 3, "ngStyle"]
                ],
                template: function(n, i) {
                    if (n & 1) {
                        let l = O();
                        ue(yi), d(0, "div", 16)(1, "input", 17, 0), T("focus", function(m) {
                            return f(l), g(i.onInputFocus(m))
                        })("blur", function(m) {
                            return f(l), g(i.onInputBlur(m))
                        })("keydown", function(m) {
                            return f(l), g(i.onKeyDown(m))
                        }), u()(), d(3, "div", 18), T("mouseleave", function() {
                            return f(l), g(i.labelContainerMouseLeave())
                        }), d(4, "div", 19), p(5, Ai, 3, 2, "ng-container", 20)(6, Pi, 3, 6, "ng-container", 20), u()(), p(7, Ni, 3, 2, "ng-container", 20), d(8, "div", 21), p(9, Ui, 3, 2, "ng-container", 22)(10, nn, 2, 2, "ng-template", null, 1, V), u(), d(12, "p-overlay", 23, 2), De("visibleChange", function(m) {
                            return f(l), ze(i.overlayVisible, m) || (i.overlayVisible = m), g(m)
                        }), T("onAnimationStart", function(m) {
                            return f(l), g(i.onOverlayAnimationStart(m))
                        })("onHide", function() {
                            return f(l), g(i.hide())
                        }), p(14, Nn, 13, 18, "ng-template", null, 3, V), u()
                    }
                    if (n & 2) {
                        let l, o = P(11);
                        x("data-p-hidden-accessible", !0), c(), s("pTooltip", i.tooltip)("tooltipPosition", i.tooltipPosition)("positionStyle", i.tooltipPositionStyle)("tooltipStyleClass", i.tooltipStyleClass)("pAutoFocus", i.autofocus), x("aria-disabled", i.disabled)("id", i.inputId)("aria-label", i.ariaLabel)("aria-labelledby", i.ariaLabelledBy)("aria-haspopup", "listbox")("aria-expanded", (l = i.overlayVisible) !== null && l !== void 0 ? l : !1)("aria-controls", i.overlayVisible ? i.id + "_list" : null)("tabindex", i.disabled ? -1 : i.tabindex)("aria-activedescendant", i.focused ? i.focusedOptionId : void 0)("value", i.label() || "empty"), c(2), s("pTooltip", i.tooltip)("tooltipDisabled", i._disableTooltip)("tooltipPosition", i.tooltipPosition)("positionStyle", i.tooltipPositionStyle)("tooltipStyleClass", i.tooltipStyleClass), c(), s("ngClass", i.labelClass), c(), s("ngIf", !i.selectedItemsTemplate && !i._selectedItemsTemplate), c(), s("ngIf", i.selectedItemsTemplate || i._selectedItemsTemplate), c(), s("ngIf", i.isVisibleClearIcon), c(2), s("ngIf", i.loading)("ngIfElse", o), c(3), Ae("visible", i.overlayVisible), s("options", i.overlayOptions)("target", "@parent")("appendTo", i.appendTo)("autoZIndex", i.autoZIndex)("baseZIndex", i.baseZIndex)("showTransitionOptions", i.showTransitionOptions)("hideTransitionOptions", i.hideTransitionOptions)
                    }
                },
                dependencies: [J, U, Re, W, Y, Ce, Zn, pt, $, mt, ut, et, it, lt, ot, nt, tt, st, rt, ke, Ve, Oe, Te, Se],
                encapsulation: 2,
                changeDetection: 0
            })
        }
        return t
    })(),
    ql = (() => {
        class t {
            static\ u0275fac = function(n) {
                return new(n || t)
            };
            static\ u0275mod = ce({
                type: t
            });
            static\ u0275inj = ae({
                imports: [bt, $, $]
            })
        }
        return t
    })();
export {
    ke as a, pl as b, bt as c, ql as d
};
/**i18n:6e1dbccd4192d215e143e99fb4b6a095cee3c871f5aa7cd380ca91231f35e8e0*/