UNPKG

@fe6/water-pro

Version:

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

37 lines (35 loc) 938 B
import PropTypes from '../../_util/vue-types'; import BaseMixin from '../../_util/BaseMixin'; export default { name: 'ExpandIcon', mixins: [BaseMixin], inheritAttrs: false, props: { record: PropTypes.object, prefixCls: PropTypes.string, expandable: PropTypes.any, expanded: PropTypes.looseBool, needIndentSpaced: PropTypes.looseBool, }, methods: { onExpand(e) { this.__emit('expand', this.record, e); }, }, render() { const { expandable, prefixCls, onExpand, needIndentSpaced, expanded } = this; if (expandable) { const expandClassName = expanded ? 'expanded' : 'collapsed'; return ( <span class={`${prefixCls}-expand-icon ${prefixCls}-${expandClassName}`} onClick={onExpand} /> ); } if (needIndentSpaced) { return <span class={`${prefixCls}-expand-icon ${prefixCls}-spaced`} />; } return null; }, };