vue-form-kit
Version:
  
55 lines (54 loc) • 1.67 kB
JavaScript
import { S as u } from "./SelectMixin.6cad61ab.js";
import { resolveDirective as d, withDirectives as c, openBlock as p, createElementBlock as v, createElementVNode as t, normalizeClass as i, renderSlot as n, normalizeProps as r, guardReactiveProps as m } from "vue";
import { _ as g } from "./_plugin-vue_export-helper.9d74fd37.js";
const f = {
name: "CustomSelect",
mixins: [
u
],
emits: [
"mouseenter",
"mouseleave"
],
methods: {
mouseenter() {
this.$emit("mouseenter");
},
mouseleave() {
this.$emit("mouseleave");
}
}
}, S = { class: "x-selector__label" }, k = ["innerHTML"];
function C(e, s, M, O, $, l) {
const a = d("click-outside");
return c((p(), v("div", {
class: "x-selector",
onMouseenter: s[1] || (s[1] = (...o) => l.mouseenter && l.mouseenter(...o)),
onMouseleave: s[2] || (s[2] = (...o) => l.mouseleave && l.mouseleave(...o))
}, [
t("div", {
class: i(["x-selector__input", [e.inputClasses]]),
onClick: s[0] || (s[0] = (...o) => e.onClickInput && e.onClickInput(...o))
}, [
n(e.$slots, "input", r(m({ toggleSelector: e.toggleSelector, isOpen: e.isOpen })), () => [
t("div", S, [
t("span", {
class: "text-indigo-dark",
innerHTML: e.label
}, null, 8, k)
])
])
], 2),
t("div", {
class: i(["x-selector__list", [{ hidden: !e.isOpen }, e.listClasses]])
}, [
n(e.$slots, "default", r(m({ toggleSelector: e.toggleSelector, isOpen: e.isOpen })))
], 2)
], 32)), [
[a, e.closeSelector]
]);
}
const z = /* @__PURE__ */ g(f, [["render", C]]);
export {
z as default
};