UNPKG

element-plus

Version:

A Component Library for Vue3.0

72 lines (63 loc) 2.04 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var vue = require('vue'); var script = vue.defineComponent({ name: 'ElMenuItemGroup', componentName: 'ElMenuItemGroup', props: { title: { type: String, }, }, setup(props, { slots }) { const data = vue.reactive({ paddingLeft: 20, }); const instance = vue.getCurrentInstance(); const levelPadding = vue.computed(() => { let padding = 20; let parent = instance.parent; if (rootProps.collapse) return 20; while (parent && parent.type.name !== 'ElMenu') { if (parent.type.name === 'ElSubmenu') { padding += 20; } parent = parent.parent; } return padding; }); const { props: rootProps } = vue.inject('rootMenu'); return { data, levelPadding, props, slots, }; }, }); const _hoisted_1 = { class: "el-menu-item-group" }; function render(_ctx, _cache, $props, $setup, $data, $options) { return (vue.openBlock(), vue.createBlock("li", _hoisted_1, [ vue.createVNode("div", { class: "el-menu-item-group__title", style: { paddingLeft: _ctx.levelPadding + 'px' } }, [ (!_ctx.slots.title) ? (vue.openBlock(), vue.createBlock(vue.Fragment, { key: 0 }, [ vue.createTextVNode(vue.toDisplayString(_ctx.title), 1 /* TEXT */) ], 64 /* STABLE_FRAGMENT */)) : vue.renderSlot(_ctx.$slots, "title", { key: 1 }) ], 4 /* STYLE */), vue.createVNode("ul", null, [ vue.renderSlot(_ctx.$slots, "default") ]) ])) } script.render = render; script.__file = "packages/menu/src/menuItemGroup.vue"; script.install = (app) => { app.component(script.name, script); }; const _MenuItemGroup = script; exports.default = _MenuItemGroup;