@vuesax-alpha/nightly
Version:
A Component Library for Vue 3
64 lines (59 loc) • 1.97 kB
JavaScript
;
Object.defineProperty(exports, '__esModule', { value: true });
var vue = require('vue');
require('../../../hooks/index.js');
var navbar = require('../../../tokens/navbar.js');
var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
var index = require('../../../hooks/use-namespace/index.js');
const __default__ = vue.defineComponent({
name: "VsNavbarGroup"
});
const _sfc_main = vue.defineComponent({
...__default__,
setup(__props) {
const { modelValue } = vue.inject(navbar.navbarContextKey);
const ns = index.useNamespace("navbar-group");
const children = vue.reactive(/* @__PURE__ */ new Set());
const isGroupActive = vue.computed(() => children.has(`${modelValue.value}`));
vue.provide(navbar.navbarGroupRegisterContextKey, (id) => {
children.add(id);
return {
unregister: () => children.delete(id)
};
});
return (_ctx, _cache) => {
return vue.openBlock(), vue.createElementBlock(
"div",
{
class: vue.normalizeClass([vue.unref(ns).b(), vue.unref(ns).is("active", isGroupActive.value)])
},
[
vue.createElementVNode(
"div",
{
class: vue.normalizeClass(vue.unref(ns).e("text"))
},
[
vue.renderSlot(_ctx.$slots, "default")
],
2
),
vue.createElementVNode(
"div",
{
class: vue.normalizeClass(vue.unref(ns).e("items"))
},
[
vue.renderSlot(_ctx.$slots, "items")
],
2
)
],
2
);
};
}
});
var NavbarGroup = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "/home/runner/work/vuesax-alpha/vuesax-alpha/packages/components/navbar/src/navbar-group.vue"]]);
exports["default"] = NavbarGroup;
//# sourceMappingURL=navbar-group2.js.map