@aotearoan/neon
Version:
Neon is a lightweight design library of Vue 3 components with minimal dependencies.
64 lines (63 loc) • 2.41 kB
JavaScript
import r from "./NeonExpansionPanel.es.js";
import { resolveComponent as l, openBlock as i, createElementBlock as t, normalizeClass as m, createElementVNode as a, withKeys as d, withModifiers as b, createBlock as u, createCommentVNode as g, toDisplayString as c, createVNode as f, withDirectives as E, renderSlot as v, vShow as $ } from "vue";
import V from "../../../_virtual/_plugin-vue_export-helper.es.js";
const h = ["aria-disabled", "aria-expanded"], w = ["aria-controls"], x = { class: "neon-expansion-panel__label" }, k = ["id"];
function y(e, n, C, N, B, S) {
const s = l("neon-icon"), p = l("neon-expansion-indicator");
return i(), t("div", {
"aria-disabled": e.disabled,
"aria-expanded": e.modelValue,
class: m([[
{
"neon-expansion-panel--expanded": e.modelValue,
"neon-expansion-panel--full-width": e.fullWidth,
"neon-expansion-panel--disabled": e.disabled
},
`neon-expansion-panel--${e.position}`,
`neon-expansion-panel--${e.size}`,
`neon-expansion-panel--${e.color}`
], "neon-expansion-panel"])
}, [
a("div", {
"aria-controls": e.id,
class: "neon-expansion-panel__header",
tabindex: "-1",
onClick: n[2] || (n[2] = (...o) => e.toggleExpanded && e.toggleExpanded(...o))
}, [
a("div", {
class: "neon-expansion-panel__label-container neon-expansion-panel__label-container--outline-text",
tabindex: "0",
onKeydown: [
n[0] || (n[0] = d((...o) => e.toggleExpanded && e.toggleExpanded(...o), ["enter"])),
n[1] || (n[1] = d(b((...o) => e.toggleExpanded && e.toggleExpanded(...o), ["prevent"]), ["space"]))
]
}, [
e.icon ? (i(), u(s, {
key: 0,
color: e.color,
disabled: e.disabled,
name: e.icon
}, null, 8, ["color", "disabled", "name"])) : g("", !0),
a("span", x, c(e.label), 1)
], 32),
f(p, {
color: e.color,
disabled: e.disabled,
expanded: e.modelValue
}, null, 8, ["color", "disabled", "expanded"])
], 8, w),
E(a("div", {
id: e.id,
class: "neon-expansion-panel__content"
}, [
v(e.$slots, "default")
], 8, k), [
[$, e.modelValue]
])
], 10, h);
}
const M = /* @__PURE__ */ V(r, [["render", y]]);
export {
M as default
};
//# sourceMappingURL=NeonExpansionPanel.vue.es.js.map