UNPKG

ant-design-vue

Version:

An enterprise-class UI design language and Vue-based implementation

69 lines (58 loc) 1.77 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _babelHelperVueJsxMergeProps = require('babel-helper-vue-jsx-merge-props'); var _babelHelperVueJsxMergeProps2 = _interopRequireDefault(_babelHelperVueJsxMergeProps); var _vcMenu = require('../vc-menu'); var _propsUtil = require('../_util/props-util'); var _vnode = require('../_util/vnode'); var _tooltip = require('../tooltip'); var _tooltip2 = _interopRequireDefault(_tooltip); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } function noop() {} exports['default'] = { props: _vcMenu.itemProps, name: 'MenuItem', inject: { getInlineCollapsed: { 'default': function _default() { return noop; } } }, isMenuItem: 1, methods: { onKeyDown: function onKeyDown(e) { this.$refs.menuItem.onKeyDown(e); } }, render: function render(h) { var props = (0, _propsUtil.getOptionProps)(this); var getInlineCollapsed = this.getInlineCollapsed, $slots = this.$slots, attrs = this.$attrs, $listeners = this.$listeners; var inlineCollapsed = getInlineCollapsed(); var itemProps = { props: props, attrs: attrs, on: $listeners }; var toolTipProps = { props: { title: inlineCollapsed && props.level === 1 ? $slots['default'] : '', placement: 'right', overlayClassName: props.rootPrefixCls + '-inline-collapsed-tooltip' } }; return h( _tooltip2['default'], toolTipProps, [h( _vcMenu.Item, (0, _babelHelperVueJsxMergeProps2['default'])([itemProps, { ref: 'menuItem' }]), [$slots['default']] )] ); } }; module.exports = exports['default'];