hongluan-ui
Version:
Hongluan Component Library for Vue 3
47 lines (44 loc) • 1.55 kB
JavaScript
import { defineComponent, openBlock, createElementBlock, normalizeClass, unref, normalizeStyle, renderSlot } from 'vue';
import '../../../hooks/index.mjs';
import { collapseProps, collapseEmits } from './collapse.mjs';
import { useCollapse } from './use-collapse.mjs';
import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
const __default__ = defineComponent({
name: "Collapse"
});
const _sfc_main = /* @__PURE__ */ defineComponent({
...__default__,
props: collapseProps,
emits: collapseEmits,
setup(__props, { expose, emit }) {
const props = __props;
const { namespace } = useNamespace("collapse");
const { activeNames, setActiveNames } = useCollapse(props, emit);
expose({
activeNames,
setActiveNames
});
return (_ctx, _cache) => {
return openBlock(), createElementBlock("div", {
class: normalizeClass([
unref(namespace),
{
"arrow-left": _ctx.arrowLeft
}
]),
role: "tablist",
"aria-multiselectable": "true",
style: normalizeStyle([
_ctx.gap ? `--collapse-gap: ${_ctx.gap}` : "",
_ctx.headerGap ? `--collapse-header-gap: ${_ctx.headerGap}` : "",
_ctx.padding ? `--collapse-padding-x: ${_ctx.padding}` : "",
_ctx.contentPadding ? `--collapse-content-padding: ${_ctx.contentPadding}` : ""
])
}, [
renderSlot(_ctx.$slots, "default")
], 6);
};
}
});
export { _sfc_main as default };
//# sourceMappingURL=collapse2.mjs.map