UNPKG

vue-ant-patterns

Version:

vue-ant-patterns

77 lines (58 loc) 2.37 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _defineProperty2 = require('babel-runtime/helpers/defineProperty'); var _defineProperty3 = _interopRequireDefault(_defineProperty2); var _extends3 = require('babel-runtime/helpers/extends'); var _extends4 = _interopRequireDefault(_extends3); var _antDesignVue = require('ant-design-vue'); var _classnames = require('classnames'); var _classnames2 = _interopRequireDefault(_classnames); var _vueTypes = require('ant-design-vue/lib/_util/vue-types'); var _vueTypes2 = _interopRequireDefault(_vueTypes); var _propsUtil = require('ant-design-vue/lib/_util/props-util'); require('./style/index.less'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } var DIcon = { functional: true, name: 'DIcon', props: { type: _vueTypes2['default'].string, component: _vueTypes2['default'].any, viewBox: _vueTypes2['default'].any, spin: _vueTypes2['default'].bool.def(false), theme: _vueTypes2['default'].oneOf(['filled', 'outlined', 'twoTone']), twoToneColor: _vueTypes2['default'].string }, render: function render(h, context) { var props = context.props, slots = context.slots, listeners = context.listeners, data = context.data; var type = props.type; var reg = /^\$-/; if (!type) return null; var classString = (0, _classnames2['default'])((0, _extends4['default'])({}, (0, _propsUtil.getClass)(context))); var customProps = (0, _extends4['default'])({}, context, { 'class': classString, on: (0, _extends4['default'])({}, listeners) }); var iconNode = null; if (/^\$-/.test(type)) { var _extends2; var _classString = (0, _classnames2['default'])((0, _extends4['default'])({}, (0, _propsUtil.getClass)(context), (_extends2 = {}, (0, _defineProperty3['default'])(_extends2, 'acme-icon', reg.test(type)), (0, _defineProperty3['default'])(_extends2, 'acme-icon-' + type.replace(reg, ''), reg.test(type)), _extends2))); var customIProps = { 'class': _classString }; iconNode = h('i', customIProps); } else { iconNode = h(_antDesignVue.Icon, customProps); } return iconNode; } }; DIcon.install = function (Vue) { Vue.component('DIcon', DIcon); }; exports['default'] = DIcon;