UNPKG

iep-ui

Version:

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

88 lines (86 loc) 2.4 kB
import PropTypes from '../_util/vue-types'; import { ConfigConsumerProps } from '../config-provider/configConsumerProps'; import { getComponentFromProp } from '../_util/props-util'; import NoAccess from './noAccess'; import { IepIcon } from 'rk-web-icon'; export var IconMap = { success: 'basic_solid_common_success', error: 'basic_solid_common_close', info: 'basic_solid_tooltip_information', warning: 'basic_solid_tooltip_warning3' }; export default { name: 'IepResultBox', props: { showZero: PropTypes.bool, prefixCls: PropTypes.string, status: PropTypes.oneOf(['success', 'error', 'info', 'warning', 'noAcess']).def('info'), title: PropTypes.any, content: PropTypes.any, extra: PropTypes.any }, component: { NoAccess: NoAccess }, inject: { configProvider: { 'default': function _default() { return ConfigConsumerProps; } } }, methods: {}, render: function render() { var h = arguments[0]; var customizePrefixCls = this.prefixCls, status = this.status; var extra = getComponentFromProp(this, 'extra'); var getPrefixCls = this.configProvider.getPrefixCls; var prefixCls = getPrefixCls('result-box', customizePrefixCls); return h( 'div', { 'class': prefixCls + ' ' + prefixCls + '-' + status }, [this.status === 'noAcess' ? h( 'div', { 'class': prefixCls + '-main' }, [h( 'div', { 'class': prefixCls + '-noAcess' }, [h(NoAccess)] ), h( 'div', { 'class': prefixCls + '-noAcesstitle' }, [this.title] ), h( 'div', { 'class': prefixCls + '-content' }, [this.content] ), extra && h( 'div', { 'class': prefixCls + '-extra' }, [extra] )] ) : h( 'div', { 'class': prefixCls + '-main' }, [h( 'div', { 'class': prefixCls + '-icon' }, [h(IepIcon, { attrs: { type: IconMap[this.status] } })] ), h( 'div', { 'class': prefixCls + '-title' }, [this.title] ), h( 'div', { 'class': prefixCls + '-content' }, [this.content] ), extra && h( 'div', { 'class': prefixCls + '-extra' }, [extra] )] )] ); } };