k-form-design
Version:
基于vue、ant-design-vue的表单设计器,可视化开发表单
1,280 lines (1,022 loc) • 36 kB
JavaScript
((typeof self !== 'undefined' ? self : this)["webpackJsonpk_form_design"] = (typeof self !== 'undefined' ? self : this)["webpackJsonpk_form_design"] || []).push([[15],{
/***/ "1178":
/***/ (function(module, exports, __webpack_require__) {
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _Event = __webpack_require__("e098");
var _Event2 = _interopRequireDefault(_Event);
var _raf = __webpack_require__("ab92");
var _raf2 = _interopRequireDefault(_raf);
var _configConsumerProps = __webpack_require__("bad7");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
var styleForPesudo = void 0;
// Where el is the DOM element you'd like to test for visibility
function isHidden(element) {
if (false) {}
return !element || element.offsetParent === null;
}
function isNotGrey(color) {
// eslint-disable-next-line no-useless-escape
var match = (color || '').match(/rgba?\((\d*), (\d*), (\d*)(, [\.\d]*)?\)/);
if (match && match[1] && match[2] && match[3]) {
return !(match[1] === match[2] && match[2] === match[3]);
}
return true;
}
exports['default'] = {
name: 'Wave',
props: ['insertExtraNode'],
mounted: function mounted() {
var _this = this;
this.$nextTick(function () {
var node = _this.$el;
if (node.nodeType !== 1) {
return;
}
_this.instance = _this.bindAnimationEvent(node);
});
},
inject: {
configProvider: { 'default': function _default() {
return _configConsumerProps.ConfigConsumerProps;
} }
},
beforeDestroy: function beforeDestroy() {
if (this.instance) {
this.instance.cancel();
}
if (this.clickWaveTimeoutId) {
clearTimeout(this.clickWaveTimeoutId);
}
this.destroy = true;
},
methods: {
onClick: function onClick(node, waveColor) {
if (!node || isHidden(node) || node.className.indexOf('-leave') >= 0) {
return;
}
var insertExtraNode = this.$props.insertExtraNode;
this.extraNode = document.createElement('div');
var extraNode = this.extraNode;
extraNode.className = 'ant-click-animating-node';
var attributeName = this.getAttributeName();
node.removeAttribute(attributeName);
node.setAttribute(attributeName, 'true');
// Not white or transparent or grey
styleForPesudo = styleForPesudo || document.createElement('style');
if (waveColor && waveColor !== '#ffffff' && waveColor !== 'rgb(255, 255, 255)' && isNotGrey(waveColor) && !/rgba\(\d*, \d*, \d*, 0\)/.test(waveColor) && // any transparent rgba color
waveColor !== 'transparent') {
// Add nonce if CSP exist
if (this.csp && this.csp.nonce) {
styleForPesudo.nonce = this.csp.nonce;
}
extraNode.style.borderColor = waveColor;
styleForPesudo.innerHTML = '\n [ant-click-animating-without-extra-node=\'true\']::after, .ant-click-animating-node {\n --antd-wave-shadow-color: ' + waveColor + ';\n }';
if (!document.body.contains(styleForPesudo)) {
document.body.appendChild(styleForPesudo);
}
}
if (insertExtraNode) {
node.appendChild(extraNode);
}
_Event2['default'].addStartEventListener(node, this.onTransitionStart);
_Event2['default'].addEndEventListener(node, this.onTransitionEnd);
},
onTransitionStart: function onTransitionStart(e) {
if (this.destroy) return;
var node = this.$el;
if (!e || e.target !== node) {
return;
}
if (!this.animationStart) {
this.resetEffect(node);
}
},
onTransitionEnd: function onTransitionEnd(e) {
if (!e || e.animationName !== 'fadeEffect') {
return;
}
this.resetEffect(e.target);
},
getAttributeName: function getAttributeName() {
var insertExtraNode = this.$props.insertExtraNode;
return insertExtraNode ? 'ant-click-animating' : 'ant-click-animating-without-extra-node';
},
bindAnimationEvent: function bindAnimationEvent(node) {
var _this2 = this;
if (!node || !node.getAttribute || node.getAttribute('disabled') || node.className.indexOf('disabled') >= 0) {
return;
}
var onClick = function onClick(e) {
// Fix radio button click twice
if (e.target.tagName === 'INPUT' || isHidden(e.target)) {
return;
}
_this2.resetEffect(node);
// Get wave color from target
var waveColor = getComputedStyle(node).getPropertyValue('border-top-color') || // Firefox Compatible
getComputedStyle(node).getPropertyValue('border-color') || getComputedStyle(node).getPropertyValue('background-color');
_this2.clickWaveTimeoutId = window.setTimeout(function () {
return _this2.onClick(node, waveColor);
}, 0);
_raf2['default'].cancel(_this2.animationStartId);
_this2.animationStart = true;
// Render to trigger transition event cost 3 frames. Let's delay 10 frames to reset this.
_this2.animationStartId = (0, _raf2['default'])(function () {
_this2.animationStart = false;
}, 10);
};
node.addEventListener('click', onClick, true);
return {
cancel: function cancel() {
node.removeEventListener('click', onClick, true);
}
};
},
resetEffect: function resetEffect(node) {
if (!node || node === this.extraNode || !(node instanceof Element)) {
return;
}
var insertExtraNode = this.$props.insertExtraNode;
var attributeName = this.getAttributeName();
node.setAttribute(attributeName, 'false'); // edge has bug on `removeAttribute` #14466
if (styleForPesudo) {
styleForPesudo.innerHTML = '';
}
if (insertExtraNode && this.extraNode && node.contains(this.extraNode)) {
node.removeChild(this.extraNode);
}
_Event2['default'].removeStartEventListener(node, this.onTransitionStart);
_Event2['default'].removeEndEventListener(node, this.onTransitionEnd);
}
},
render: function render() {
if (this.configProvider.csp) {
this.csp = this.configProvider.csp;
}
return this.$slots['default'] && this.$slots['default'][0];
}
};
/***/ }),
/***/ "133a":
/***/ (function(module, exports, __webpack_require__) {
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.svgBaseProps = undefined;
exports.getThemeFromTypeName = getThemeFromTypeName;
exports.removeTypeTheme = removeTypeTheme;
exports.withThemeSuffix = withThemeSuffix;
exports.alias = alias;
var _warning = __webpack_require__("a7e2");
var _warning2 = _interopRequireDefault(_warning);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
// These props make sure that the SVG behaviours like general text.
// Reference: https://blog.prototypr.io/align-svg-icons-to-text-and-say-goodbye-to-font-icons-d44b3d7b26b4
var svgBaseProps = exports.svgBaseProps = {
width: '1em',
height: '1em',
fill: 'currentColor',
'aria-hidden': 'true',
focusable: 'false'
};
var fillTester = /-fill$/;
var outlineTester = /-o$/;
var twoToneTester = /-twotone$/;
function getThemeFromTypeName(type) {
var result = null;
if (fillTester.test(type)) {
result = 'filled';
} else if (outlineTester.test(type)) {
result = 'outlined';
} else if (twoToneTester.test(type)) {
result = 'twoTone';
}
return result;
}
function removeTypeTheme(type) {
return type.replace(fillTester, '').replace(outlineTester, '').replace(twoToneTester, '');
}
function withThemeSuffix(type, theme) {
var result = type;
if (theme === 'filled') {
result += '-fill';
} else if (theme === 'outlined') {
result += '-o';
} else if (theme === 'twoTone') {
result += '-twotone';
} else {
(0, _warning2['default'])(false, 'Icon', 'This icon \'' + type + '\' has unknown theme \'' + theme + '\'');
}
return result;
}
// For alias or compatibility
function alias(type) {
var newType = type;
switch (type) {
case 'cross':
newType = 'close';
break;
// https://github.com/ant-design/ant-design/issues/13007
case 'interation':
newType = 'interaction';
break;
// https://github.com/ant-design/ant-design/issues/16810
case 'canlendar':
newType = 'calendar';
break;
// https://github.com/ant-design/ant-design/issues/17448
case 'colum-height':
newType = 'column-height';
break;
default:
}
(0, _warning2['default'])(newType === type, 'Icon', 'Icon \'' + type + '\' was a typo and is now deprecated, please use \'' + newType + '\' instead.');
return newType;
}
/***/ }),
/***/ "1db9":
/***/ (function(module, exports, __webpack_require__) {
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.warning = warning;
exports.note = note;
exports.resetWarned = resetWarned;
exports.call = call;
exports.warningOnce = warningOnce;
exports.noteOnce = noteOnce;
/* eslint-disable no-console */
var warned = {};
function warning(valid, message) {
// Support uglify
if (false) {}
}
function note(valid, message) {
// Support uglify
if (false) {}
}
function resetWarned() {
warned = {};
}
function call(method, valid, message) {
if (!valid && !warned[message]) {
method(false, message);
warned[message] = true;
}
}
function warningOnce(valid, message) {
call(warning, valid, message);
}
function noteOnce(valid, message) {
call(note, valid, message);
}
exports['default'] = warningOnce;
/* eslint-enable */
/***/ }),
/***/ "50f6":
/***/ (function(module, exports, __webpack_require__) {
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _babelHelperVueJsxMergeProps = __webpack_require__("92fa");
var _babelHelperVueJsxMergeProps2 = _interopRequireDefault(_babelHelperVueJsxMergeProps);
var _extends2 = __webpack_require__("41b2");
var _extends3 = _interopRequireDefault(_extends2);
var _defineProperty2 = __webpack_require__("6042");
var _defineProperty3 = _interopRequireDefault(_defineProperty2);
var _toConsumableArray2 = __webpack_require__("9b57");
var _toConsumableArray3 = _interopRequireDefault(_toConsumableArray2);
var _classnames = __webpack_require__("4d26");
var _classnames2 = _interopRequireDefault(_classnames);
var _dist = __webpack_require__("3a9b");
var allIcons = _interopRequireWildcard(_dist);
var _iconsVue = __webpack_require__("8520");
var _iconsVue2 = _interopRequireDefault(_iconsVue);
var _vueTypes = __webpack_require__("7b44");
var _vueTypes2 = _interopRequireDefault(_vueTypes);
var _IconFont = __webpack_require__("bbf5");
var _IconFont2 = _interopRequireDefault(_IconFont);
var _utils = __webpack_require__("133a");
var _warning = __webpack_require__("a7e2");
var _warning2 = _interopRequireDefault(_warning);
var _LocaleReceiver = __webpack_require__("3f5f");
var _LocaleReceiver2 = _interopRequireDefault(_LocaleReceiver);
var _twoTonePrimaryColor = __webpack_require__("f3dc");
var _propsUtil = __webpack_require__("73c8");
var _base = __webpack_require__("baff");
var _base2 = _interopRequireDefault(_base);
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj['default'] = obj; return newObj; } }
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
// Initial setting
// https://github.com/vueComponent/ant-design-vue/issues/2745
_iconsVue2['default'].add.apply(_iconsVue2['default'], (0, _toConsumableArray3['default'])(Object.keys(allIcons).filter(function (key) {
return key !== 'default';
}).map(function (key) {
return allIcons[key];
})));
(0, _twoTonePrimaryColor.setTwoToneColor)('#1890ff');
var defaultTheme = 'outlined';
var dangerousTheme = void 0;
function renderIcon(h, locale, context) {
var _classNames;
var props = context.$props,
$slots = context.$slots;
var listeners = (0, _propsUtil.getListeners)(context);
var type = props.type,
Component = props.component,
viewBox = props.viewBox,
spin = props.spin,
theme = props.theme,
twoToneColor = props.twoToneColor,
rotate = props.rotate,
tabIndex = props.tabIndex;
var children = (0, _propsUtil.filterEmpty)($slots['default']);
children = children.length === 0 ? undefined : children;
(0, _warning2['default'])(Boolean(type || Component || children), 'Icon', 'Icon should have `type` prop or `component` prop or `children`.');
var classString = (0, _classnames2['default'])((_classNames = {}, (0, _defineProperty3['default'])(_classNames, 'anticon', true), (0, _defineProperty3['default'])(_classNames, 'anticon-' + type, !!type), _classNames));
var svgClassString = (0, _classnames2['default'])((0, _defineProperty3['default'])({}, 'anticon-spin', !!spin || type === 'loading'));
var svgStyle = rotate ? {
msTransform: 'rotate(' + rotate + 'deg)',
transform: 'rotate(' + rotate + 'deg)'
} : undefined;
var innerSvgProps = {
attrs: (0, _extends3['default'])({}, _utils.svgBaseProps, {
viewBox: viewBox
}),
'class': svgClassString,
style: svgStyle
};
if (!viewBox) {
delete innerSvgProps.attrs.viewBox;
}
var renderInnerNode = function renderInnerNode() {
// component > children > type
if (Component) {
return h(
Component,
innerSvgProps,
[children]
);
}
if (children) {
(0, _warning2['default'])(Boolean(viewBox) || children.length === 1 && children[0].tag === 'use', 'Icon', 'Make sure that you provide correct `viewBox`' + ' prop (default `0 0 1024 1024`) to the icon.');
var _innerSvgProps = {
attrs: (0, _extends3['default'])({}, _utils.svgBaseProps),
'class': svgClassString,
style: svgStyle
};
return h(
'svg',
(0, _babelHelperVueJsxMergeProps2['default'])([_innerSvgProps, {
attrs: { viewBox: viewBox }
}]),
[children]
);
}
if (typeof type === 'string') {
var computedType = type;
if (theme) {
var themeInName = (0, _utils.getThemeFromTypeName)(type);
(0, _warning2['default'])(!themeInName || theme === themeInName, 'Icon', 'The icon name \'' + type + '\' already specify a theme \'' + themeInName + '\',' + (' the \'theme\' prop \'' + theme + '\' will be ignored.'));
}
computedType = (0, _utils.withThemeSuffix)((0, _utils.removeTypeTheme)((0, _utils.alias)(computedType)), dangerousTheme || theme || defaultTheme);
return h(_iconsVue2['default'], {
attrs: {
focusable: 'false',
type: computedType,
primaryColor: twoToneColor
},
'class': svgClassString, style: svgStyle
});
}
};
var iconTabIndex = tabIndex;
if (iconTabIndex === undefined && 'click' in listeners) {
iconTabIndex = -1;
}
// functional component not support nativeOn,https://github.com/vuejs/vue/issues/7526
var iProps = {
attrs: {
'aria-label': type && locale.icon + ': ' + type,
tabIndex: iconTabIndex
},
on: listeners,
'class': classString,
staticClass: ''
};
return h(
'i',
iProps,
[renderInnerNode()]
);
}
var Icon = {
name: 'AIcon',
props: {
tabIndex: _vueTypes2['default'].number,
type: _vueTypes2['default'].string,
component: _vueTypes2['default'].any,
viewBox: _vueTypes2['default'].any,
spin: _vueTypes2['default'].bool.def(false),
rotate: _vueTypes2['default'].number,
theme: _vueTypes2['default'].oneOf(['filled', 'outlined', 'twoTone']),
twoToneColor: _vueTypes2['default'].string,
role: _vueTypes2['default'].string
},
render: function render(h) {
var _this = this;
return h(_LocaleReceiver2['default'], {
attrs: {
componentName: 'Icon'
},
scopedSlots: { 'default': function _default(locale) {
return renderIcon(h, locale, _this);
} }
});
}
};
Icon.createFromIconfontCN = _IconFont2['default'];
Icon.getTwoToneColor = _twoTonePrimaryColor.getTwoToneColor;
Icon.setTwoToneColor = _twoTonePrimaryColor.setTwoToneColor;
/* istanbul ignore next */
Icon.install = function (Vue) {
Vue.use(_base2['default']);
Vue.component(Icon.name, Icon);
};
exports['default'] = Icon;
/***/ }),
/***/ "807c":
/***/ (function(module, exports, __webpack_require__) {
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _babelHelperVueJsxMergeProps = __webpack_require__("92fa");
var _babelHelperVueJsxMergeProps2 = _interopRequireDefault(_babelHelperVueJsxMergeProps);
var _extends2 = __webpack_require__("41b2");
var _extends3 = _interopRequireDefault(_extends2);
var _defineProperty2 = __webpack_require__("6042");
var _defineProperty3 = _interopRequireDefault(_defineProperty2);
var _wave = __webpack_require__("1178");
var _wave2 = _interopRequireDefault(_wave);
var _icon = __webpack_require__("50f6");
var _icon2 = _interopRequireDefault(_icon);
var _buttonTypes = __webpack_require__("f70b");
var _buttonTypes2 = _interopRequireDefault(_buttonTypes);
var _propsUtil = __webpack_require__("73c8");
var _configConsumerProps = __webpack_require__("bad7");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
var rxTwoCNChar = /^[\u4e00-\u9fa5]{2}$/;
var isTwoCNChar = rxTwoCNChar.test.bind(rxTwoCNChar);
var props = (0, _buttonTypes2['default'])();
exports['default'] = {
name: 'AButton',
inheritAttrs: false,
__ANT_BUTTON: true,
props: props,
inject: {
configProvider: { 'default': function _default() {
return _configConsumerProps.ConfigConsumerProps;
} }
},
data: function data() {
return {
sizeMap: {
large: 'lg',
small: 'sm'
},
sLoading: !!this.loading,
hasTwoCNChar: false
};
},
computed: {
classes: function classes() {
var _ref;
var customizePrefixCls = this.prefixCls,
type = this.type,
shape = this.shape,
size = this.size,
hasTwoCNChar = this.hasTwoCNChar,
sLoading = this.sLoading,
ghost = this.ghost,
block = this.block,
icon = this.icon,
$slots = this.$slots;
var getPrefixCls = this.configProvider.getPrefixCls;
var prefixCls = getPrefixCls('btn', customizePrefixCls);
var autoInsertSpace = this.configProvider.autoInsertSpaceInButton !== false;
// large => lg
// small => sm
var sizeCls = '';
switch (size) {
case 'large':
sizeCls = 'lg';
break;
case 'small':
sizeCls = 'sm';
break;
default:
break;
}
var iconType = sLoading ? 'loading' : icon;
var children = (0, _propsUtil.filterEmpty)($slots['default']);
return _ref = {}, (0, _defineProperty3['default'])(_ref, '' + prefixCls, true), (0, _defineProperty3['default'])(_ref, prefixCls + '-' + type, type), (0, _defineProperty3['default'])(_ref, prefixCls + '-' + shape, shape), (0, _defineProperty3['default'])(_ref, prefixCls + '-' + sizeCls, sizeCls), (0, _defineProperty3['default'])(_ref, prefixCls + '-icon-only', children.length === 0 && iconType), (0, _defineProperty3['default'])(_ref, prefixCls + '-loading', sLoading), (0, _defineProperty3['default'])(_ref, prefixCls + '-background-ghost', ghost || type === 'ghost'), (0, _defineProperty3['default'])(_ref, prefixCls + '-two-chinese-chars', hasTwoCNChar && autoInsertSpace), (0, _defineProperty3['default'])(_ref, prefixCls + '-block', block), _ref;
}
},
watch: {
loading: function loading(val, preVal) {
var _this = this;
if (preVal && typeof preVal !== 'boolean') {
clearTimeout(this.delayTimeout);
}
if (val && typeof val !== 'boolean' && val.delay) {
this.delayTimeout = setTimeout(function () {
_this.sLoading = !!val;
}, val.delay);
} else {
this.sLoading = !!val;
}
}
},
mounted: function mounted() {
this.fixTwoCNChar();
},
updated: function updated() {
this.fixTwoCNChar();
},
beforeDestroy: function beforeDestroy() {
// if (this.timeout) {
// clearTimeout(this.timeout)
// }
if (this.delayTimeout) {
clearTimeout(this.delayTimeout);
}
},
methods: {
fixTwoCNChar: function fixTwoCNChar() {
// Fix for HOC usage like <FormatMessage />
var node = this.$refs.buttonNode;
if (!node) {
return;
}
var buttonText = node.textContent;
if (this.isNeedInserted() && isTwoCNChar(buttonText)) {
if (!this.hasTwoCNChar) {
this.hasTwoCNChar = true;
}
} else if (this.hasTwoCNChar) {
this.hasTwoCNChar = false;
}
},
handleClick: function handleClick(event) {
var sLoading = this.$data.sLoading;
if (sLoading) {
return;
}
this.$emit('click', event);
},
insertSpace: function insertSpace(child, needInserted) {
var h = this.$createElement;
var SPACE = needInserted ? ' ' : '';
if (typeof child.text === 'string') {
var text = child.text.trim();
if (isTwoCNChar(text)) {
text = text.split('').join(SPACE);
}
return h('span', [text]);
}
return child;
},
isNeedInserted: function isNeedInserted() {
var $slots = this.$slots,
type = this.type;
var icon = (0, _propsUtil.getComponentFromProp)(this, 'icon');
return $slots['default'] && $slots['default'].length === 1 && !icon && type !== 'link';
}
},
render: function render() {
var _this2 = this;
var h = arguments[0];
var type = this.type,
htmlType = this.htmlType,
classes = this.classes,
disabled = this.disabled,
handleClick = this.handleClick,
sLoading = this.sLoading,
$slots = this.$slots,
$attrs = this.$attrs;
var icon = (0, _propsUtil.getComponentFromProp)(this, 'icon');
var buttonProps = {
attrs: (0, _extends3['default'])({}, $attrs, {
disabled: disabled
}),
'class': classes,
on: (0, _extends3['default'])({}, (0, _propsUtil.getListeners)(this), {
click: handleClick
})
};
var iconType = sLoading ? 'loading' : icon;
var iconNode = iconType ? h(_icon2['default'], {
attrs: { type: iconType }
}) : null;
var children = (0, _propsUtil.filterEmpty)($slots['default']);
var autoInsertSpace = this.configProvider.autoInsertSpaceInButton !== false;
var kids = children.map(function (child) {
return _this2.insertSpace(child, _this2.isNeedInserted() && autoInsertSpace);
});
if ($attrs.href !== undefined) {
return h(
'a',
(0, _babelHelperVueJsxMergeProps2['default'])([buttonProps, { ref: 'buttonNode' }]),
[iconNode, kids]
);
}
var buttonNode = h(
'button',
(0, _babelHelperVueJsxMergeProps2['default'])([buttonProps, { ref: 'buttonNode', attrs: { type: htmlType || 'button' }
}]),
[iconNode, kids]
);
if (type === 'link') {
return buttonNode;
}
return h(_wave2['default'], [buttonNode]);
}
};
/***/ }),
/***/ "a7e2":
/***/ (function(module, exports, __webpack_require__) {
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.resetWarned = undefined;
var _warning = __webpack_require__("1db9");
var _warning2 = _interopRequireDefault(_warning);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
exports.resetWarned = _warning.resetWarned;
exports['default'] = function (valid, component) {
var message = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
(0, _warning2['default'])(valid, '[antdv: ' + component + '] ' + message);
};
/***/ }),
/***/ "ab92":
/***/ (function(module, exports, __webpack_require__) {
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports['default'] = wrapperRaf;
var _raf = __webpack_require__("c449");
var _raf2 = _interopRequireDefault(_raf);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
var id = 0;
var ids = {};
// Support call raf with delay specified frame
function wrapperRaf(callback) {
var delayFrames = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
var myId = id++;
var restFrames = delayFrames;
function internalCallback() {
restFrames -= 1;
if (restFrames <= 0) {
callback();
delete ids[myId];
} else {
ids[myId] = (0, _raf2['default'])(internalCallback);
}
}
ids[myId] = (0, _raf2['default'])(internalCallback);
return myId;
}
wrapperRaf.cancel = function (pid) {
if (pid === undefined) return;
_raf2['default'].cancel(ids[pid]);
delete ids[pid];
};
wrapperRaf.ids = ids; // export this for test usage
/***/ }),
/***/ "bbf5":
/***/ (function(module, exports, __webpack_require__) {
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _objectWithoutProperties2 = __webpack_require__("8e8e");
var _objectWithoutProperties3 = _interopRequireDefault(_objectWithoutProperties2);
exports['default'] = create;
var _index = __webpack_require__("50f6");
var _index2 = _interopRequireDefault(_index);
var _propsUtil = __webpack_require__("73c8");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
var customCache = new Set();
function create(options) {
var scriptUrl = options.scriptUrl,
_options$extraCommonP = options.extraCommonProps,
extraCommonProps = _options$extraCommonP === undefined ? {} : _options$extraCommonP;
/**
* DOM API required.
* Make sure in browser environment.
* The Custom Icon will create a <script/>
* that loads SVG symbols and insert the SVG Element into the document body.
*/
if (typeof document !== 'undefined' && typeof window !== 'undefined' && typeof document.createElement === 'function' && typeof scriptUrl === 'string' && scriptUrl.length && !customCache.has(scriptUrl)) {
var script = document.createElement('script');
script.setAttribute('src', scriptUrl);
script.setAttribute('data-namespace', scriptUrl);
customCache.add(scriptUrl);
document.body.appendChild(script);
}
var Iconfont = {
functional: true,
name: 'AIconfont',
props: _index2['default'].props,
render: function render(h, context) {
var props = context.props,
slots = context.slots,
listeners = context.listeners,
data = context.data;
var type = props.type,
restProps = (0, _objectWithoutProperties3['default'])(props, ['type']);
var slotsMap = slots();
var children = slotsMap['default'];
// component > children > type
var content = null;
if (type) {
content = h('use', { attrs: { 'xlink:href': '#' + type } });
}
if (children) {
content = children;
}
var iconProps = (0, _propsUtil.mergeProps)(extraCommonProps, data, { props: restProps, on: listeners });
return h(
_index2['default'],
iconProps,
[content]
);
}
};
return Iconfont;
}
/***/ }),
/***/ "c4c6":
/***/ (function(module, exports, __webpack_require__) {
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _button = __webpack_require__("807c");
var _button2 = _interopRequireDefault(_button);
var _buttonGroup = __webpack_require__("d009");
var _buttonGroup2 = _interopRequireDefault(_buttonGroup);
var _base = __webpack_require__("baff");
var _base2 = _interopRequireDefault(_base);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
_button2['default'].Group = _buttonGroup2['default'];
/* istanbul ignore next */
_button2['default'].install = function (Vue) {
Vue.use(_base2['default']);
Vue.component(_button2['default'].name, _button2['default']);
Vue.component(_buttonGroup2['default'].name, _buttonGroup2['default']);
};
exports['default'] = _button2['default'];
/***/ }),
/***/ "d009":
/***/ (function(module, exports, __webpack_require__) {
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.ButtonGroupProps = undefined;
var _defineProperty2 = __webpack_require__("6042");
var _defineProperty3 = _interopRequireDefault(_defineProperty2);
var _propsUtil = __webpack_require__("73c8");
var _vueTypes = __webpack_require__("7b44");
var _vueTypes2 = _interopRequireDefault(_vueTypes);
var _configConsumerProps = __webpack_require__("bad7");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
var ButtonGroupProps = {
prefixCls: _vueTypes2['default'].string,
size: {
validator: function validator(value) {
return ['small', 'large', 'default'].includes(value);
}
}
};
exports.ButtonGroupProps = ButtonGroupProps;
exports['default'] = {
name: 'AButtonGroup',
props: ButtonGroupProps,
inject: {
configProvider: { 'default': function _default() {
return _configConsumerProps.ConfigConsumerProps;
} }
},
data: function data() {
return {
sizeMap: {
large: 'lg',
small: 'sm'
}
};
},
render: function render() {
var _classes;
var h = arguments[0];
var customizePrefixCls = this.prefixCls,
size = this.size,
$slots = this.$slots;
var getPrefixCls = this.configProvider.getPrefixCls;
var prefixCls = getPrefixCls('btn-group', customizePrefixCls);
// large => lg
// small => sm
var sizeCls = '';
switch (size) {
case 'large':
sizeCls = 'lg';
break;
case 'small':
sizeCls = 'sm';
break;
default:
break;
}
var classes = (_classes = {}, (0, _defineProperty3['default'])(_classes, '' + prefixCls, true), (0, _defineProperty3['default'])(_classes, prefixCls + '-' + sizeCls, sizeCls), _classes);
return h(
'div',
{ 'class': classes },
[(0, _propsUtil.filterEmpty)($slots['default'])]
);
}
};
/***/ }),
/***/ "e098":
/***/ (function(module, exports, __webpack_require__) {
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var START_EVENT_NAME_MAP = {
transitionstart: {
transition: 'transitionstart',
WebkitTransition: 'webkitTransitionStart',
MozTransition: 'mozTransitionStart',
OTransition: 'oTransitionStart',
msTransition: 'MSTransitionStart'
},
animationstart: {
animation: 'animationstart',
WebkitAnimation: 'webkitAnimationStart',
MozAnimation: 'mozAnimationStart',
OAnimation: 'oAnimationStart',
msAnimation: 'MSAnimationStart'
}
};
var END_EVENT_NAME_MAP = {
transitionend: {
transition: 'transitionend',
WebkitTransition: 'webkitTransitionEnd',
MozTransition: 'mozTransitionEnd',
OTransition: 'oTransitionEnd',
msTransition: 'MSTransitionEnd'
},
animationend: {
animation: 'animationend',
WebkitAnimation: 'webkitAnimationEnd',
MozAnimation: 'mozAnimationEnd',
OAnimation: 'oAnimationEnd',
msAnimation: 'MSAnimationEnd'
}
};
var startEvents = [];
var endEvents = [];
function detectEvents() {
var testEl = document.createElement('div');
var style = testEl.style;
if (!('AnimationEvent' in window)) {
delete START_EVENT_NAME_MAP.animationstart.animation;
delete END_EVENT_NAME_MAP.animationend.animation;
}
if (!('TransitionEvent' in window)) {
delete START_EVENT_NAME_MAP.transitionstart.transition;
delete END_EVENT_NAME_MAP.transitionend.transition;
}
function process(EVENT_NAME_MAP, events) {
for (var baseEventName in EVENT_NAME_MAP) {
if (EVENT_NAME_MAP.hasOwnProperty(baseEventName)) {
var baseEvents = EVENT_NAME_MAP[baseEventName];
for (var styleName in baseEvents) {
if (styleName in style) {
events.push(baseEvents[styleName]);
break;
}
}
}
}
}
process(START_EVENT_NAME_MAP, startEvents);
process(END_EVENT_NAME_MAP, endEvents);
}
if (typeof window !== 'undefined' && typeof document !== 'undefined') {
detectEvents();
}
function addEventListener(node, eventName, eventListener) {
node.addEventListener(eventName, eventListener, false);
}
function removeEventListener(node, eventName, eventListener) {
node.removeEventListener(eventName, eventListener, false);
}
var TransitionEvents = {
// Start events
startEvents: startEvents,
addStartEventListener: function addStartEventListener(node, eventListener) {
if (startEvents.length === 0) {
window.setTimeout(eventListener, 0);
return;
}
startEvents.forEach(function (startEvent) {
addEventListener(node, startEvent, eventListener);
});
},
removeStartEventListener: function removeStartEventListener(node, eventListener) {
if (startEvents.length === 0) {
return;
}
startEvents.forEach(function (startEvent) {
removeEventListener(node, startEvent, eventListener);
});
},
// End events
endEvents: endEvents,
addEndEventListener: function addEndEventListener(node, eventListener) {
if (endEvents.length === 0) {
window.setTimeout(eventListener, 0);
return;
}
endEvents.forEach(function (endEvent) {
addEventListener(node, endEvent, eventListener);
});
},
removeEndEventListener: function removeEndEventListener(node, eventListener) {
if (endEvents.length === 0) {
return;
}
endEvents.forEach(function (endEvent) {
removeEventListener(node, endEvent, eventListener);
});
}
};
exports['default'] = TransitionEvents;
/***/ }),
/***/ "f3dc":
/***/ (function(module, exports, __webpack_require__) {
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.setTwoToneColor = setTwoToneColor;
exports.getTwoToneColor = getTwoToneColor;
var _iconsVue = __webpack_require__("8520");
var _iconsVue2 = _interopRequireDefault(_iconsVue);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
function setTwoToneColor(primaryColor) {
return _iconsVue2['default'].setTwoToneColors({
primaryColor: primaryColor
});
}
function getTwoToneColor() {
var colors = _iconsVue2['default'].getTwoToneColors();
return colors.primaryColor;
}
/***/ }),
/***/ "f70b":
/***/ (function(module, exports, __webpack_require__) {
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _vueTypes = __webpack_require__("7b44");
var _vueTypes2 = _interopRequireDefault(_vueTypes);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
exports['default'] = function () {
return {
prefixCls: _vueTypes2['default'].string,
type: _vueTypes2['default'].string,
htmlType: _vueTypes2['default'].oneOf(['button', 'submit', 'reset']).def('button'),
icon: _vueTypes2['default'].any,
shape: _vueTypes2['default'].oneOf(['circle', 'circle-outline', 'round']),
size: _vueTypes2['default'].oneOf(['small', 'large', 'default']).def('default'),
loading: _vueTypes2['default'].oneOfType([_vueTypes2['default'].bool, _vueTypes2['default'].object]),
disabled: _vueTypes2['default'].bool,
ghost: _vueTypes2['default'].bool,
block: _vueTypes2['default'].bool
};
};
/***/ })
}]);