{"version":3,"sources":["webpack:///./node_modules/ant-design-vue/es/vc-pagination/Pager.js","webpack:///./node_modules/ant-design-vue/es/vc-menu/DOMWrap.js","webpack:///./node_modules/ant-design-vue/es/vc-menu/SubPopupMenu.js","webpack:///./node_modules/ant-design-vue/es/vc-pagination/KeyCode.js","webpack:///./node_modules/ant-design-vue/es/vc-mentions/src/util.js","webpack:///./node_modules/ant-design-vue/es/vc-menu/commonPropsType.js","webpack:///./node_modules/ant-design-vue/es/vc-menu/utils/isMobile.js","webpack:///./node_modules/ant-design-vue/es/vc-menu/util.js","webpack:///./node_modules/ant-design-vue/es/vc-pagination/locale/en_US.js","webpack:///./node_modules/ant-design-vue/es/vc-notification/Notice.js","webpack:///./node_modules/ant-design-vue/es/vc-notification/Notification.js","webpack:///./node_modules/ant-design-vue/es/vc-notification/index.js","webpack:///./node_modules/ant-design-vue/es/vc-pagination/locale/zh_CN.js","webpack:///./node_modules/ant-design-vue/es/vc-mentions/src/mentionsProps.js","webpack:///./node_modules/ant-design-vue/es/vc-lazy-load/src/utils/parentScroll.js","webpack:///./node_modules/ant-design-vue/es/vc-lazy-load/src/utils/getElementPosition.js","webpack:///./node_modules/ant-design-vue/es/vc-lazy-load/src/LazyLoad.js","webpack:///./node_modules/ant-design-vue/es/vc-lazy-load/src/utils/inViewport.js","webpack:///./node_modules/ant-design-vue/es/vc-lazy-load/index.js","webpack:///./node_modules/ant-design-vue/es/vc-menu/MenuItemGroup.js","webpack:///./node_modules/ant-design-vue/es/vc-menu/Divider.js","webpack:///./node_modules/ant-design-vue/es/vc-menu/MenuItem.js","webpack:///./node_modules/ant-design-vue/es/vc-mentions/src/Option.js","webpack:///./node_modules/ant-design-vue/es/vc-mentions/src/DropdownMenu.js","webpack:///./node_modules/ant-design-vue/es/vc-mentions/src/KeywordTrigger.js","webpack:///./node_modules/ant-design-vue/es/vc-mentions/src/Mentions.js","webpack:///./node_modules/ant-design-vue/es/vc-mentions/index.js","webpack:///./node_modules/ant-design-vue/es/vc-pagination/Options.js","webpack:///./node_modules/ant-design-vue/es/vc-menu/placements.js","webpack:///./node_modules/ant-design-vue/es/vc-menu/SubMenu.js","webpack:///./node_modules/ant-design-vue/es/vc-mentions/src/placement.js","webpack:///./node_modules/ant-design-vue/es/vc-progress/src/enhancer.js","webpack:///./node_modules/ant-design-vue/es/vc-progress/src/types.js","webpack:///./node_modules/ant-design-vue/es/vc-progress/src/Circle.js","webpack:///./node_modules/ant-design-vue/es/vc-menu/Menu.js","webpack:///./node_modules/ant-design-vue/es/vc-menu/index.js","webpack:///./node_modules/ant-design-vue/es/vc-m-feedback/src/PropTypes.js","webpack:///./node_modules/ant-design-vue/es/vc-m-feedback/src/TouchFeedback.js","webpack:///./node_modules/ant-design-vue/es/vc-m-feedback/index.js","webpack:///./node_modules/ant-design-vue/es/vc-pagination/Pagination.js"],"names":["i","name","props","rootPrefixCls","string","page","number","active","bool","last","locale","object","showTitle","itemRender","type","Function","methods","handleClick","this","$emit","handleKeyPress","event","render","_classNames","h","arguments","$props","prefixCls","on","attrs","title","tabIndex","canUseDOM","window","document","createElement","MENUITEM_OVERFLOWED_CLASSNAME","DOMWrap","mixins","BaseMixin","data","resizeObserver","mutationObserver","originalTotalWidth","overflowedItems","menuItemSizes","lastVisibleIndex","undefined","mounted","_this","$nextTick","setChildrenWidthAndResize","level","mode","menuUl","$el","entries","forEach","slice","call","children","concat","el","observe","MutationObserver","disconnect","attributes","childList","subTree","beforeDestroy","getMenuItemNodes","ul","filter","node","className","split","indexOf","getOverflowedSubMenuItem","keyPrefix","renderPlaceholder","$createElement","_$props","overflowedIndicator","theme","copy","$slots","_getPropsData","rest","events","style","key","eventKey","length","display","visibility","position","popupClassName","m","k","subMenuProps","disabled","SubMenu","ulChildrenNodes","lastOverflowedIndicatorPlaceholder","menuItemNodes","c","map","overflowedIndicatorWidth","reduce","acc","cur","handleResize","_this2","width","currentSumWidth","liWidth","setState","renderChildren","_this3","$data","childNode","index","item","overflowed","ret","push","tag","oneOf","visible","hiddenClassName","def","updateActiveKey","store","menuId","activeKey","state","getState","getEventKey","saveRef","instanceArrayKeyIndexMap","instanceArray","getActiveKey","originalActiveKey","defaultActiveFirst","found","propsData","componentOptions","SubPopupMenu","openTransitionName","openAnimation","oneOfType","openKeys","arrayOf","parentMenu","forceSubMenuRender","focusable","multiple","selectedKeys","defaultSelectedKeys","defaultOpenKeys","triggerSubMenuAction","inlineIndent","manualRef","func","itemIcon","any","expandIcon","__propsSymbol__","created","prevProps","updated","onKeyDown","e","callback","keyCode","handled","getFlatInstanceArray","obj","activeItem","KeyCode","UP","DOWN","step","preventDefault","onItemHover","hover","onDeselect","selectInfo","__emit","onSelect","onClick","onOpenChange","onDestroy","getOpenTransitionName","direction","len","reverse","activeIndex","every","ci","arr","allDisabled","start","child","getIcon","instance","temp","$scopedSlots","_temp","slotsProp","slot","renderCommonMenuItem","extraProps","childProps","isActive","Object","keys","childListeners","newChildProps","renderMenuItem","bind","subMenuOpenDelay","subMenuCloseDelay","builtinPlacements","click","itemHover","openChange","deselect","select","subMenuKey","isRootMenu","domWrapProps","role","keydown","connect","ZERO","NINE","NUMPAD_ZERO","NUMPAD_NINE","BACKSPACE","DELETE","ENTER","ARROW_UP","ARROW_DOWN","getBeforeSelectionText","input","selectionStart","value","lower","char","toLowerCase","getLastMeasureIndex","text","prefix","Array","isArray","lastMatch","prefixStr","lastIndex","lastIndexOf","location","reduceText","targetText","firstChar","restText","targetTextLen","replaceWithMeasure","measureConfig","measureLocation","beforeMeasureText","connectedStartText","selectionLocation","setInputSelection","setSelectionRange","blur","focus","validateSearch","filterOption","_ref$value","lowerCase","getPopupContainer","selectable","applePhone","appleIpod","appleTablet","androidPhone","androidTablet","amazonPhone","amazonTablet","windowsPhone","windowsTablet","otherBlackberry","otherBlackberry10","otherOpera","otherChrome","otherFirefox","match","regex","userAgent","test","isMobile","ua","navigator","tmp","_tmp","_tmp3","result","apple","phone","ipod","tablet","device","amazon","android","windows","other","blackberry","blackberry10","opera","firefox","chrome","noop","getKeyFromChildrenIndex","menuEventKey","getMenuIdFromSubMenuEventKey","loopMenuItem","cb","isMenuItemGroup","c2","loopMenuItemRecursively","find","options","Ctor","isSubMenu","isMenuItem","menuAllProps","getWidth","elem","getBoundingClientRect","toFixed","styleProperty","items_per_page","jump_to","jump_to_confirm","prev_page","next_page","prev_5","next_5","prev_3","next_3","duration","closable","update","closeIcon","watch","restartCloseTimer","startCloseTimer","clearCloseTimer","willDestroy","close","stopPropagation","closeTimer","setTimeout","clearTimeout","_className","componentClass","right","seed","now","Date","Notification","transitionName","animation","maxCount","notices","getTransitionName","add","notice","previousState","noticeIndex","v","updatedNotices","splice","updateKey","shift","remove","transitionProps","getTransitionProps","noticeNodes","Boolean","content","onClose","createChainedFunction","noticeProps","Notice","top","left","properties","_ref","getContainer","div","appendChild","body","Vue","self","$refs","notification","removeNotice","component","destroy","$destroy","parentNode","removeChild","ref","p","mentionsProps","autoFocus","array","defaultValue","notFoundContent","placement","character","characterRender","vcMentionsProps","defaultProps","element","prop","getComputedStyle","getPropertyValue","styleVal","overflow","HTMLElement","parent","documentElement","getElementPosition","rect","pageYOffset","pageXOffset","lazyLoadProps","debounce","elementType","height","offset","offsetBottom","offsetHorizontal","offsetLeft","offsetRight","offsetTop","offsetVertical","threshold","throttle","_propsSymbol","lazyLoadHandler","_mounted","eventNode","getEventNode","flush","resizeHander","addEventListener","scrollHander","cancel","detachListeners","parentScroll","getOffset","_offsetAll","_offsetVertical","_offsetHorizontal","bottom","container","customOffset","offsetParent","isHidden","innerHeight","innerWidth","containerPosition","offsetHeight","offsetWidth","elementPosition","inViewport","warning","_$props2","LazyLoad","MenuItemGroup","renderInnerMenuItem","titleClassName","listClassName","listeners","String","attribute","isSelected","MenuItem","prevActive","callRef","onlyScrollIfNeeded","onMouseLeave","domEvent","onMouseEnter","info","keyPath","getPrefixCls","getActiveClassName","getSelectedClassName","getDisabledClassName","mouseEvent","mouseleave","mouseenter","paddingLeft","liProps","connected","_ref2","OptionProps","boolean","inject","mentionsContext","_mentionsContext","setActiveIndex","selectOption","_mentionsContext$onFo","onFocus","_mentionsContext$onBl","onBlur","activeOption","option","BUILT_IN_PLACEMENTS","bottomRight","points","adjustX","adjustY","topRight","loading","getDropdownPrefix","getDropdownElement","DropdownMenu","popupElement","popupVisible","popup","popupPlacement","popupTransitionName","Mentions","inheritAttrs","model","provide","_$props$value","_$props$defaultValue","_value","measuring","measureText","measurePrefix","isFocus","val","measure","scrollTop","textarea","triggerChange","$forceUpdate","onChange","_ref$target","target","composing","isComposing","which","_$data","optionLen","getOptions","newActiveIndex","ESC","stopMeasure","onKeyUp","_$data2","prevMeasureText","_$props2$prefix","selectionStartText","_getLastMeasureIndex","measureIndex","validateMeasure","matchOption","startMeasure","onInputFocus","onInputBlur","onDropdownFocus","onDropdownBlur","focusId","_$data3","_option$value","mentionValue","_replaceWithMeasure","targetMeasureText","_$props3","_$props3$children","list","_$data4","_getOptionProps","restProps","inputProps","directives","$attrs","domProps","change","keyup","KeywordTrigger","Option","changeSize","quickGo","selectComponentClass","current","pageSizeOptions","pageSize","buildOptionText","selectPrefixCls","goButton","goInputText","getValidValue","isNaN","Number","defaultBuildOptionText","opt","handleChange","_e$target","handleBlur","relatedTarget","go","Select","changeSelect","goInput","gotoButton","showSearch","optionLabelProp","dropdownMatchSelectWidth","toString","triggerNode","autoAdjustOverflow","topLeft","bottomLeft","leftTop","rightTop","guid","popupPlacementMap","horizontal","vertical","popupOffset","isOpen","handleUpdated","minWidthTimeout","mouseenterTimeout","requestAnimationTimeout","adjustWidth","menu","menuInstance","onTitleClick","RIGHT","triggerOpenChange","LEFT","onPopupVisibleChange","subMenuInstance","onTitleMouseEnter","onTitleMouseLeave","_$props4","onSubMenuClick","addKeyPath","getOpenClassName","saveMenuInstance","open","_this4","trigger","isChildrenSelected","subMenuTitle","popupMenu","minWidth","_getListeners","subPopupMenuProps","id","internalMenuId","baseProps","haveRendered","haveOpened","transitionAppear","animProps","appear","css","_attrs","isInlineMode","mouseEvents","titleClickEvents","titleMouseEvents","ariaOwns","titleProps","icon","popupAlign","PlaceMent","Component","paths","path","pathStyle","transitionDuration","prevTimeStamp","mixedType","propTypes","percent","strokeColor","strokeLinecap","strokeWidth","trailColor","trailWidth","circlePropTypes","gapPosition","gapDegree","circleDefaultProps","use","gradientSeed","stripPercentToNumber","replace","toArray","symArray","getPathStyles","radius","beginPositionX","beginPositionY","endPositionX","endPositionY","pathString","Math","PI","stroke","strokeDasharray","strokeDashoffset","transition","Circle","gradientId","getStokeList","percentList","strokeColorList","stackPtg","ptg","color","prototype","_getPathStyles","pathProps","d","opacity","_getPathStyles2","gradient","pathFirst","viewBox","x1","y1","x2","y2","sort","a","b","Menu","commonPropsType","create","updateMiniStore","selectedKey","innerMenu","getWrappedInstance","changed","processSingle","oneChanged","animationName","Provider","ITouchProps","activeClassName","activeStyle","triggerEvent","ev","onTouchStart","onTouchMove","onTouchEnd","onTouchCancel","onMouseDown","onMouseUp","_$props$activeClassNa","_$props$activeStyle","touchstart","touchmove","touchend","touchcancel","mousedown","mouseup","calculatePage","statePageSize","floor","total","defaultCurrent","defaultPageSize","hideOnSinglePage","showSizeChanger","showLessItems","showPrevNextJumpers","showQuickJumper","showTotal","simple","prevIcon","nextIcon","jumpPrevIcon","jumpNextIcon","hasOnChange","console","warn","stateCurrent","min","stateCurrentInputValue","newState","newCurrent","oldValue","paginationNode","lastCurrentNode","querySelector","activeElement","_current","getJumpPrevPage","max","getJumpNextPage","getItemIcon","iconNode","inputValue","allPages","isValid","isFinite","isInteger","shouldDisplayQuickJumper","handleKeyDown","handleKeyUp","changePageSize","size","preCurrent","currentPage","prev","hasPrev","next","hasNext","jumpPrev","jumpNext","runIfEnter","charCode","_len","restParams","_key","apply","runIfEnterPrev","runIfEnterNext","runIfEnterJumpPrev","runIfEnterJumpNext","handleGoTO","pagerList","firstPager","lastPager","pageBufferSize","prevPage","nextPage","pagerProps","keypress","prevItemTitle","nextItemTitle","jumpPrevClassString","jumpNextClassString","_i","_active","unshift","totalText","prevDisabled","nextDisabled","unselectable"],"mappings":"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","file":"js/chunk-vendors~5cf44f0f.52de764a.js","sourcesContent":["import _defineProperty from 'babel-runtime/helpers/defineProperty';\nimport PropTypes from '../_util/vue-types';\nimport classNames from 'classnames';\n\nexport default {\n name: 'Pager',\n props: {\n rootPrefixCls: PropTypes.string,\n page: PropTypes.number,\n active: PropTypes.bool,\n last: PropTypes.bool,\n locale: PropTypes.object,\n showTitle: PropTypes.bool,\n itemRender: {\n type: Function,\n 'default': function _default() {}\n }\n },\n methods: {\n handleClick: function handleClick() {\n this.$emit('click', this.page);\n },\n handleKeyPress: function handleKeyPress(event) {\n this.$emit('keypress', event, this.handleClick, this.page);\n }\n },\n render: function render() {\n var _classNames;\n\n var h = arguments[0];\n\n var props = this.$props;\n var prefixCls = props.rootPrefixCls + '-item';\n var cls = classNames(prefixCls, prefixCls + '-' + props.page, (_classNames = {}, _defineProperty(_classNames, prefixCls + '-active', props.active), _defineProperty(_classNames, prefixCls + '-disabled', !props.page), _classNames));\n\n return h(\n 'li',\n {\n 'class': cls,\n on: {\n 'click': this.handleClick,\n 'keypress': this.handleKeyPress\n },\n attrs: {\n title: this.showTitle ? this.page : null,\n tabIndex: '0'\n }\n },\n [this.itemRender(this.page, 'page', h('a', [this.page]))]\n );\n }\n};","import _toConsumableArray from 'babel-runtime/helpers/toConsumableArray';\nimport _extends from 'babel-runtime/helpers/extends';\nimport _objectWithoutProperties from 'babel-runtime/helpers/objectWithoutProperties';\nimport PropTypes from '../_util/vue-types';\nimport ResizeObserver from 'resize-observer-polyfill';\nimport SubMenu from './SubMenu';\nimport BaseMixin from '../_util/BaseMixin';\nimport { getWidth, setStyle, menuAllProps } from './util';\nimport { cloneElement } from '../_util/vnode';\nimport { getClass, getPropsData, getEvents, getListeners } from '../_util/props-util';\n\nvar canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);\n\nvar MENUITEM_OVERFLOWED_CLASSNAME = 'menuitem-overflowed';\nvar FLOAT_PRECISION_ADJUST = 0.5;\n\n// Fix ssr\nif (canUseDOM) {\n require('mutationobserver-shim');\n}\n\nvar DOMWrap = {\n name: 'DOMWrap',\n mixins: [BaseMixin],\n data: function data() {\n this.resizeObserver = null;\n this.mutationObserver = null;\n\n // original scroll size of the list\n this.originalTotalWidth = 0;\n\n // copy of overflowed items\n this.overflowedItems = [];\n\n // cache item of the original items (so we can track the size and order)\n this.menuItemSizes = [];\n return {\n lastVisibleIndex: undefined\n };\n },\n mounted: function mounted() {\n var _this = this;\n\n this.$nextTick(function () {\n _this.setChildrenWidthAndResize();\n if (_this.level === 1 && _this.mode === 'horizontal') {\n var menuUl = _this.$el;\n if (!menuUl) {\n return;\n }\n _this.resizeObserver = new ResizeObserver(function (entries) {\n entries.forEach(_this.setChildrenWidthAndResize);\n });\n\n [].slice.call(menuUl.children).concat(menuUl).forEach(function (el) {\n _this.resizeObserver.observe(el);\n });\n\n if (typeof MutationObserver !== 'undefined') {\n _this.mutationObserver = new MutationObserver(function () {\n _this.resizeObserver.disconnect();\n [].slice.call(menuUl.children).concat(menuUl).forEach(function (el) {\n _this.resizeObserver.observe(el);\n });\n _this.setChildrenWidthAndResize();\n });\n _this.mutationObserver.observe(menuUl, {\n attributes: false,\n childList: true,\n subTree: false\n });\n }\n }\n });\n },\n beforeDestroy: function beforeDestroy() {\n if (this.resizeObserver) {\n this.resizeObserver.disconnect();\n }\n if (this.mutationObserver) {\n this.mutationObserver.disconnect();\n }\n },\n\n methods: {\n // get all valid menuItem nodes\n getMenuItemNodes: function getMenuItemNodes() {\n var prefixCls = this.$props.prefixCls;\n\n var ul = this.$el;\n if (!ul) {\n return [];\n }\n\n // filter out all overflowed indicator placeholder\n return [].slice.call(ul.children).filter(function (node) {\n return node.className.split(' ').indexOf(prefixCls + '-overflowed-submenu') < 0;\n });\n },\n getOverflowedSubMenuItem: function getOverflowedSubMenuItem(keyPrefix, overflowedItems, renderPlaceholder) {\n var h = this.$createElement;\n var _$props = this.$props,\n overflowedIndicator = _$props.overflowedIndicator,\n level = _$props.level,\n mode = _$props.mode,\n prefixCls = _$props.prefixCls,\n theme = _$props.theme;\n\n if (level !== 1 || mode !== 'horizontal') {\n return null;\n }\n // put all the overflowed item inside a submenu\n // with a title of overflow indicator ('...')\n var copy = this.$slots['default'][0];\n\n var _getPropsData = getPropsData(copy),\n title = _getPropsData.title,\n rest = _objectWithoutProperties(_getPropsData, ['title']); // eslint-disable-line no-unused-vars\n\n\n var events = getEvents(copy);\n var style = {};\n var key = keyPrefix + '-overflowed-indicator';\n var eventKey = keyPrefix + '-overflowed-indicator';\n\n if (overflowedItems.length === 0 && renderPlaceholder !== true) {\n style = {\n display: 'none'\n };\n } else if (renderPlaceholder) {\n style = {\n visibility: 'hidden',\n // prevent from taking normal dom space\n position: 'absolute'\n };\n key = key + '-placeholder';\n eventKey = eventKey + '-placeholder';\n }\n\n var popupClassName = theme ? prefixCls + '-' + theme : '';\n var props = {};\n var on = {};\n menuAllProps.props.forEach(function (k) {\n if (rest[k] !== undefined) {\n props[k] = rest[k];\n }\n });\n menuAllProps.on.forEach(function (k) {\n if (events[k] !== undefined) {\n on[k] = events[k];\n }\n });\n var subMenuProps = {\n props: _extends({\n title: overflowedIndicator,\n popupClassName: popupClassName\n }, props, {\n eventKey: eventKey,\n disabled: false\n }),\n 'class': prefixCls + '-overflowed-submenu',\n key: key,\n style: style,\n on: on\n };\n\n return h(\n SubMenu,\n subMenuProps,\n [overflowedItems]\n );\n },\n\n\n // memorize rendered menuSize\n setChildrenWidthAndResize: function setChildrenWidthAndResize() {\n if (this.mode !== 'horizontal') {\n return;\n }\n var ul = this.$el;\n\n if (!ul) {\n return;\n }\n\n var ulChildrenNodes = ul.children;\n\n if (!ulChildrenNodes || ulChildrenNodes.length === 0) {\n return;\n }\n\n var lastOverflowedIndicatorPlaceholder = ul.children[ulChildrenNodes.length - 1];\n\n // need last overflowed indicator for calculating length;\n setStyle(lastOverflowedIndicatorPlaceholder, 'display', 'inline-block');\n\n var menuItemNodes = this.getMenuItemNodes();\n\n // reset display attribute for all hidden elements caused by overflow to calculate updated width\n // and then reset to original state after width calculation\n\n var overflowedItems = menuItemNodes.filter(function (c) {\n return c.className.split(' ').indexOf(MENUITEM_OVERFLOWED_CLASSNAME) >= 0;\n });\n\n overflowedItems.forEach(function (c) {\n setStyle(c, 'display', 'inline-block');\n });\n\n this.menuItemSizes = menuItemNodes.map(function (c) {\n return getWidth(c);\n });\n\n overflowedItems.forEach(function (c) {\n setStyle(c, 'display', 'none');\n });\n this.overflowedIndicatorWidth = getWidth(ul.children[ul.children.length - 1]);\n this.originalTotalWidth = this.menuItemSizes.reduce(function (acc, cur) {\n return acc + cur;\n }, 0);\n this.handleResize();\n // prevent the overflowed indicator from taking space;\n setStyle(lastOverflowedIndicatorPlaceholder, 'display', 'none');\n },\n handleResize: function handleResize() {\n var _this2 = this;\n\n if (this.mode !== 'horizontal') {\n return;\n }\n\n var ul = this.$el;\n if (!ul) {\n return;\n }\n var width = getWidth(ul);\n\n this.overflowedItems = [];\n var currentSumWidth = 0;\n\n // index for last visible child in horizontal mode\n var lastVisibleIndex = void 0;\n\n // float number comparison could be problematic\n // e.g. 0.1 + 0.2 > 0.3 =====> true\n // thus using FLOAT_PRECISION_ADJUST as buffer to help the situation\n if (this.originalTotalWidth > width + FLOAT_PRECISION_ADJUST) {\n lastVisibleIndex = -1;\n\n this.menuItemSizes.forEach(function (liWidth) {\n currentSumWidth += liWidth;\n if (currentSumWidth + _this2.overflowedIndicatorWidth <= width) {\n lastVisibleIndex += 1;\n }\n });\n }\n\n this.setState({ lastVisibleIndex: lastVisibleIndex });\n },\n renderChildren: function renderChildren(children) {\n var _this3 = this;\n\n // need to take care of overflowed items in horizontal mode\n var lastVisibleIndex = this.$data.lastVisibleIndex;\n\n var className = getClass(this);\n return (children || []).reduce(function (acc, childNode, index) {\n var item = childNode;\n var eventKey = getPropsData(childNode).eventKey;\n if (_this3.mode === 'horizontal') {\n var overflowed = _this3.getOverflowedSubMenuItem(eventKey, []);\n if (lastVisibleIndex !== undefined && className[_this3.prefixCls + '-root'] !== -1) {\n if (index > lastVisibleIndex) {\n item = cloneElement(childNode,\n // 这里修改 eventKey 是为了防止隐藏状态下还会触发 openkeys 事件\n {\n style: { display: 'none' },\n props: { eventKey: eventKey + '-hidden' },\n 'class': MENUITEM_OVERFLOWED_CLASSNAME\n });\n }\n if (index === lastVisibleIndex + 1) {\n _this3.overflowedItems = children.slice(lastVisibleIndex + 1).map(function (c) {\n return cloneElement(c,\n // children[index].key will become '.$key' in clone by default,\n // we have to overwrite with the correct key explicitly\n {\n key: getPropsData(c).eventKey,\n props: { mode: 'vertical-left' }\n });\n });\n\n overflowed = _this3.getOverflowedSubMenuItem(eventKey, _this3.overflowedItems);\n }\n }\n\n var ret = [].concat(_toConsumableArray(acc), [overflowed, item]);\n\n if (index === children.length - 1) {\n // need a placeholder for calculating overflowed indicator width\n ret.push(_this3.getOverflowedSubMenuItem(eventKey, [], true));\n }\n return ret;\n }\n return [].concat(_toConsumableArray(acc), [item]);\n }, []);\n }\n },\n\n render: function render() {\n var h = arguments[0];\n\n var Tag = this.$props.tag;\n var tagProps = {\n on: getListeners(this)\n };\n return h(\n Tag,\n tagProps,\n [this.renderChildren(this.$slots['default'])]\n );\n }\n};\n\nDOMWrap.props = {\n mode: PropTypes.oneOf(['horizontal', 'vertical', 'vertical-left', 'vertical-right', 'inline']),\n prefixCls: PropTypes.string,\n level: PropTypes.number,\n theme: PropTypes.string,\n overflowedIndicator: PropTypes.node,\n visible: PropTypes.bool,\n hiddenClassName: PropTypes.string,\n tag: PropTypes.string.def('div')\n};\n\nexport default DOMWrap;","import _objectWithoutProperties from 'babel-runtime/helpers/objectWithoutProperties';\nimport _defineProperty from 'babel-runtime/helpers/defineProperty';\nimport _extends from 'babel-runtime/helpers/extends';\nimport omit from 'omit.js';\nimport PropTypes from '../_util/vue-types';\nimport { connect } from '../_util/store';\nimport BaseMixin from '../_util/BaseMixin';\nimport KeyCode from '../_util/KeyCode';\nimport classNames from 'classnames';\nimport { getKeyFromChildrenIndex, loopMenuItem, noop, isMobileDevice } from './util';\nimport DOMWrap from './DOMWrap';\nimport { cloneElement } from '../_util/vnode';\nimport { initDefaultProps, getOptionProps, getPropsData, getEvents, getComponentFromProp, getListeners } from '../_util/props-util';\n\nfunction allDisabled(arr) {\n if (!arr.length) {\n return true;\n }\n return arr.every(function (c) {\n return !!c.disabled;\n });\n}\n\nfunction updateActiveKey(store, menuId, activeKey) {\n var state = store.getState();\n store.setState({\n activeKey: _extends({}, state.activeKey, _defineProperty({}, menuId, activeKey))\n });\n}\n\nfunction getEventKey(props) {\n // when eventKey not available ,it's menu and return menu id '0-menu-'\n return props.eventKey || '0-menu-';\n}\n\nexport function saveRef(key, c) {\n if (c) {\n var index = this.instanceArrayKeyIndexMap[key];\n this.instanceArray[index] = c;\n }\n}\nexport function getActiveKey(props, originalActiveKey) {\n var activeKey = originalActiveKey;\n var eventKey = props.eventKey,\n defaultActiveFirst = props.defaultActiveFirst,\n children = props.children;\n\n if (activeKey !== undefined && activeKey !== null) {\n var found = void 0;\n loopMenuItem(children, function (c, i) {\n var propsData = c.componentOptions.propsData || {};\n if (c && !propsData.disabled && activeKey === getKeyFromChildrenIndex(c, eventKey, i)) {\n found = true;\n }\n });\n if (found) {\n return activeKey;\n }\n }\n activeKey = null;\n if (defaultActiveFirst) {\n loopMenuItem(children, function (c, i) {\n var propsData = c.componentOptions.propsData || {};\n var noActiveKey = activeKey === null || activeKey === undefined;\n if (noActiveKey && c && !propsData.disabled) {\n activeKey = getKeyFromChildrenIndex(c, eventKey, i);\n }\n });\n return activeKey;\n }\n return activeKey;\n}\n\nvar SubPopupMenu = {\n name: 'SubPopupMenu',\n props: initDefaultProps({\n // onSelect: PropTypes.func,\n // onClick: PropTypes.func,\n // onDeselect: PropTypes.func,\n // onOpenChange: PropTypes.func,\n // onDestroy: PropTypes.func,\n prefixCls: PropTypes.string,\n openTransitionName: PropTypes.string,\n openAnimation: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n openKeys: PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.number])),\n visible: PropTypes.bool,\n parentMenu: PropTypes.object,\n eventKey: PropTypes.string,\n store: PropTypes.object,\n forceSubMenuRender: PropTypes.bool,\n\n // adding in refactor\n focusable: PropTypes.bool,\n multiple: PropTypes.bool,\n defaultActiveFirst: PropTypes.bool,\n activeKey: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n selectedKeys: PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.number])),\n defaultSelectedKeys: PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.number])),\n defaultOpenKeys: PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.number])),\n level: PropTypes.number,\n mode: PropTypes.oneOf(['horizontal', 'vertical', 'vertical-left', 'vertical-right', 'inline']),\n triggerSubMenuAction: PropTypes.oneOf(['click', 'hover']),\n inlineIndent: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n manualRef: PropTypes.func,\n itemIcon: PropTypes.any,\n expandIcon: PropTypes.any,\n overflowedIndicator: PropTypes.any,\n children: PropTypes.any.def([]),\n __propsSymbol__: PropTypes.any // mock componentWillReceiveProps\n }, {\n prefixCls: 'rc-menu',\n mode: 'vertical',\n level: 1,\n inlineIndent: 24,\n visible: true,\n focusable: true,\n manualRef: noop\n }),\n\n mixins: [BaseMixin],\n created: function created() {\n var props = getOptionProps(this);\n this.prevProps = _extends({}, props);\n props.store.setState({\n activeKey: _extends({}, props.store.getState().activeKey, _defineProperty({}, props.eventKey, getActiveKey(props, props.activeKey)))\n });\n this.instanceArray = [];\n },\n mounted: function mounted() {\n // invoke customized ref to expose component to mixin\n if (this.manualRef) {\n this.manualRef(this);\n }\n },\n updated: function updated() {\n var props = getOptionProps(this);\n var prevProps = this.prevProps;\n var originalActiveKey = 'activeKey' in props ? props.activeKey : props.store.getState().activeKey[getEventKey(props)];\n var activeKey = getActiveKey(props, originalActiveKey);\n if (activeKey !== originalActiveKey) {\n updateActiveKey(props.store, getEventKey(props), activeKey);\n } else if ('activeKey' in prevProps) {\n // If prev activeKey is not same as current activeKey,\n // we should set it.\n var prevActiveKey = getActiveKey(prevProps, prevProps.activeKey);\n if (activeKey !== prevActiveKey) {\n updateActiveKey(props.store, getEventKey(props), activeKey);\n }\n }\n this.prevProps = _extends({}, props);\n },\n\n methods: {\n // all keyboard events callbacks run from here at first\n onKeyDown: function onKeyDown(e, callback) {\n var keyCode = e.keyCode;\n var handled = void 0;\n this.getFlatInstanceArray().forEach(function (obj) {\n if (obj && obj.active && obj.onKeyDown) {\n handled = obj.onKeyDown(e);\n }\n });\n if (handled) {\n return 1;\n }\n var activeItem = null;\n if (keyCode === KeyCode.UP || keyCode === KeyCode.DOWN) {\n activeItem = this.step(keyCode === KeyCode.UP ? -1 : 1);\n }\n if (activeItem) {\n e.preventDefault();\n updateActiveKey(this.$props.store, getEventKey(this.$props), activeItem.eventKey);\n\n if (typeof callback === 'function') {\n callback(activeItem);\n }\n\n return 1;\n }\n return undefined;\n },\n onItemHover: function onItemHover(e) {\n var key = e.key,\n hover = e.hover;\n\n updateActiveKey(this.$props.store, getEventKey(this.$props), hover ? key : null);\n },\n onDeselect: function onDeselect(selectInfo) {\n this.__emit('deselect', selectInfo);\n },\n onSelect: function onSelect(selectInfo) {\n this.__emit('select', selectInfo);\n },\n onClick: function onClick(e) {\n this.__emit('click', e);\n },\n onOpenChange: function onOpenChange(e) {\n this.__emit('openChange', e);\n },\n onDestroy: function onDestroy(key) {\n this.__emit('destroy', key);\n },\n getFlatInstanceArray: function getFlatInstanceArray() {\n return this.instanceArray;\n },\n getOpenTransitionName: function getOpenTransitionName() {\n return this.$props.openTransitionName;\n },\n step: function step(direction) {\n var children = this.getFlatInstanceArray();\n var activeKey = this.$props.store.getState().activeKey[getEventKey(this.$props)];\n var len = children.length;\n if (!len) {\n return null;\n }\n if (direction < 0) {\n children = children.concat().reverse();\n }\n // find current activeIndex\n var activeIndex = -1;\n children.every(function (c, ci) {\n if (c && c.eventKey === activeKey) {\n activeIndex = ci;\n return false;\n }\n return true;\n });\n if (!this.defaultActiveFirst && activeIndex !== -1 && allDisabled(children.slice(activeIndex, len - 1))) {\n return undefined;\n }\n var start = (activeIndex + 1) % len;\n var i = start;\n\n do {\n var child = children[i];\n if (!child || child.disabled) {\n i = (i + 1) % len;\n } else {\n return child;\n }\n } while (i !== start);\n\n return null;\n },\n getIcon: function getIcon(instance, name) {\n if (instance.$createElement) {\n var temp = instance[name];\n if (temp !== undefined) {\n return temp;\n }\n return instance.$slots[name] || instance.$scopedSlots[name];\n } else {\n var _temp = getPropsData(instance)[name];\n if (_temp !== undefined) {\n return _temp;\n }\n var slotsProp = [];\n var componentOptions = instance.componentOptions || {};\n (componentOptions.children || []).forEach(function (child) {\n if (child.data && child.data.slot === name) {\n if (child.tag === 'template') {\n slotsProp.push(child.children);\n } else {\n slotsProp.push(child);\n }\n }\n });\n return slotsProp.length ? slotsProp : undefined;\n }\n },\n renderCommonMenuItem: function renderCommonMenuItem(child, i, extraProps) {\n var _this = this;\n\n if (child.tag === undefined) {\n return child;\n }\n var state = this.$props.store.getState();\n var props = this.$props;\n var key = getKeyFromChildrenIndex(child, props.eventKey, i);\n var childProps = child.componentOptions.propsData || {};\n\n var isActive = key === state.activeKey[getEventKey(this.$props)];\n if (!childProps.disabled) {\n // manualRef的执行顺序不能保证,使用key映射ref在this.instanceArray中的位置\n this.instanceArrayKeyIndexMap[key] = Object.keys(this.instanceArrayKeyIndexMap).length;\n }\n var childListeners = getEvents(child);\n var newChildProps = {\n props: _extends({\n mode: childProps.mode || props.mode,\n level: props.level,\n inlineIndent: props.inlineIndent,\n renderMenuItem: this.renderMenuItem,\n rootPrefixCls: props.prefixCls,\n index: i,\n parentMenu: props.parentMenu,\n // customized ref function, need to be invoked manually in child's componentDidMount\n manualRef: childProps.disabled ? noop : saveRef.bind(this, key),\n eventKey: key,\n active: !childProps.disabled && isActive,\n multiple: props.multiple,\n openTransitionName: this.getOpenTransitionName(),\n openAnimation: props.openAnimation,\n subMenuOpenDelay: props.subMenuOpenDelay,\n subMenuCloseDelay: props.subMenuCloseDelay,\n forceSubMenuRender: props.forceSubMenuRender,\n builtinPlacements: props.builtinPlacements,\n itemIcon: this.getIcon(child, 'itemIcon') || this.getIcon(this, 'itemIcon'),\n expandIcon: this.getIcon(child, 'expandIcon') || this.getIcon(this, 'expandIcon')\n }, extraProps),\n on: {\n click: function click(e) {\n (childListeners.click || noop)(e);\n _this.onClick(e);\n },\n itemHover: this.onItemHover,\n openChange: this.onOpenChange,\n deselect: this.onDeselect,\n // destroy: this.onDestroy,\n select: this.onSelect\n }\n };\n // ref: https://github.com/ant-design/ant-design/issues/13943\n if (props.mode === 'inline' || isMobileDevice()) {\n newChildProps.props.triggerSubMenuAction = 'click';\n }\n return cloneElement(child, newChildProps);\n },\n renderMenuItem: function renderMenuItem(c, i, subMenuKey) {\n if (!c) {\n return null;\n }\n var state = this.$props.store.getState();\n var extraProps = {\n openKeys: state.openKeys,\n selectedKeys: state.selectedKeys,\n triggerSubMenuAction: this.triggerSubMenuAction,\n isRootMenu: false,\n subMenuKey: subMenuKey\n };\n return this.renderCommonMenuItem(c, i, extraProps);\n }\n },\n render: function render() {\n var _this2 = this;\n\n var h = arguments[0];\n\n var props = _objectWithoutProperties(this.$props, []);\n\n var eventKey = props.eventKey,\n prefixCls = props.prefixCls,\n visible = props.visible,\n level = props.level,\n mode = props.mode,\n theme = props.theme;\n\n this.instanceArray = [];\n this.instanceArrayKeyIndexMap = {};\n var className = classNames(props.prefixCls, props.prefixCls + '-' + props.mode);\n var domWrapProps = {\n props: {\n tag: 'ul',\n // hiddenClassName: `${prefixCls}-hidden`,\n visible: visible,\n prefixCls: prefixCls,\n level: level,\n mode: mode,\n theme: theme,\n overflowedIndicator: getComponentFromProp(this, 'overflowedIndicator')\n },\n attrs: {\n role: props.role || 'menu'\n },\n 'class': className,\n // Otherwise, the propagated click event will trigger another onClick\n on: omit(getListeners(this), ['click'])\n };\n // if (props.id) {\n // domProps.id = props.id\n // }\n if (props.focusable) {\n domWrapProps.attrs.tabIndex = '0';\n domWrapProps.on.keydown = this.onKeyDown;\n }\n return (\n // ESLint is not smart enough to know that the type of `children` was checked.\n /* eslint-disable */\n h(\n DOMWrap,\n domWrapProps,\n [props.children.map(function (c, i) {\n return _this2.renderMenuItem(c, i, eventKey || '0-menu-');\n })]\n )\n /*eslint -enable */\n\n );\n }\n};\n\nexport default connect()(SubPopupMenu);","export default {\n ZERO: 48,\n NINE: 57,\n\n NUMPAD_ZERO: 96,\n NUMPAD_NINE: 105,\n\n BACKSPACE: 8,\n DELETE: 46,\n ENTER: 13,\n\n ARROW_UP: 38,\n ARROW_DOWN: 40\n};","/**\n * Cut input selection into 2 part and return text before selection start\n */\nexport function getBeforeSelectionText(input) {\n var selectionStart = input.selectionStart;\n\n return input.value.slice(0, selectionStart);\n}\n\nfunction lower(char) {\n return (char || '').toLowerCase();\n}\n\n/**\n * Find the last match prefix index\n */\nexport function getLastMeasureIndex(text) {\n var prefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n\n var prefixList = Array.isArray(prefix) ? prefix : [prefix];\n return prefixList.reduce(function (lastMatch, prefixStr) {\n var lastIndex = text.lastIndexOf(prefixStr);\n if (lastIndex > lastMatch.location) {\n return {\n location: lastIndex,\n prefix: prefixStr\n };\n }\n return lastMatch;\n }, { location: -1, prefix: '' });\n}\n\nfunction reduceText(text, targetText, split) {\n var firstChar = text[0];\n if (!firstChar || firstChar === split) {\n return text;\n }\n\n // Reuse rest text as it can\n var restText = text;\n var targetTextLen = targetText.length;\n for (var i = 0; i < targetTextLen; i += 1) {\n if (lower(restText[i]) !== lower(targetText[i])) {\n restText = restText.slice(i);\n break;\n } else if (i === targetTextLen - 1) {\n restText = restText.slice(targetTextLen);\n }\n }\n\n return restText;\n}\n\n/**\n * Paint targetText into current text:\n * text: little@litest\n * targetText: light\n * => little @light test\n */\nexport function replaceWithMeasure(text, measureConfig) {\n var measureLocation = measureConfig.measureLocation,\n prefix = measureConfig.prefix,\n targetText = measureConfig.targetText,\n selectionStart = measureConfig.selectionStart,\n split = measureConfig.split;\n\n // Before text will append one space if have other text\n\n var beforeMeasureText = text.slice(0, measureLocation);\n if (beforeMeasureText[beforeMeasureText.length - split.length] === split) {\n beforeMeasureText = beforeMeasureText.slice(0, beforeMeasureText.length - split.length);\n }\n if (beforeMeasureText) {\n beforeMeasureText = '' + beforeMeasureText + split;\n }\n\n // Cut duplicate string with current targetText\n var restText = reduceText(text.slice(selectionStart), targetText.slice(selectionStart - measureLocation - prefix.length), split);\n if (restText.slice(0, split.length) === split) {\n restText = restText.slice(split.length);\n }\n\n var connectedStartText = '' + beforeMeasureText + prefix + targetText + split;\n\n return {\n text: '' + connectedStartText + restText,\n selectionLocation: connectedStartText.length\n };\n}\n\nexport function setInputSelection(input, location) {\n input.setSelectionRange(location, location);\n\n /**\n * Reset caret into view.\n * Since this function always called by user control, it's safe to focus element.\n */\n input.blur();\n input.focus();\n}\n\nexport function validateSearch() {\n var text = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n var props = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var split = props.split;\n\n return !split || text.indexOf(split) === -1;\n}\n\nexport function filterOption() {\n var input = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n\n var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n _ref$value = _ref.value,\n value = _ref$value === undefined ? '' : _ref$value;\n\n var lowerCase = input.toLowerCase();\n return value.toLowerCase().indexOf(lowerCase) !== -1;\n}","import PropTypes from '../_util/vue-types';\nexport default {\n prefixCls: PropTypes.string.def('rc-menu'),\n focusable: PropTypes.bool.def(true),\n multiple: PropTypes.bool,\n defaultActiveFirst: PropTypes.bool,\n visible: PropTypes.bool.def(true),\n activeKey: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n selectedKeys: PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.number])),\n defaultSelectedKeys: PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.number])).def([]),\n defaultOpenKeys: PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.number])).def([]),\n openKeys: PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.number])),\n openAnimation: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n mode: PropTypes.oneOf(['horizontal', 'vertical', 'vertical-left', 'vertical-right', 'inline']).def('vertical'),\n triggerSubMenuAction: PropTypes.string.def('hover'),\n subMenuOpenDelay: PropTypes.number.def(0.1),\n subMenuCloseDelay: PropTypes.number.def(0.1),\n level: PropTypes.number.def(1),\n inlineIndent: PropTypes.number.def(24),\n theme: PropTypes.oneOf(['light', 'dark']).def('light'),\n getPopupContainer: PropTypes.func,\n openTransitionName: PropTypes.string,\n forceSubMenuRender: PropTypes.bool,\n selectable: PropTypes.bool,\n isRootMenu: PropTypes.bool.def(true),\n builtinPlacements: PropTypes.object.def(function () {\n return {};\n }),\n itemIcon: PropTypes.any,\n expandIcon: PropTypes.any,\n overflowedIndicator: PropTypes.any\n};","import _extends from 'babel-runtime/helpers/extends';\nimport _slicedToArray from 'babel-runtime/helpers/slicedToArray';\n// MIT License from https://github.com/kaimallea/isMobile\n\nvar applePhone = /iPhone/i;\nvar appleIpod = /iPod/i;\nvar appleTablet = /iPad/i;\nvar androidPhone = /\\bAndroid(?:.+)Mobile\\b/i; // Match 'Android' AND 'Mobile'\nvar androidTablet = /Android/i;\nvar amazonPhone = /\\bAndroid(?:.+)SD4930UR\\b/i;\nvar amazonTablet = /\\bAndroid(?:.+)(?:KF[A-Z]{2,4})\\b/i;\nvar windowsPhone = /Windows Phone/i;\nvar windowsTablet = /\\bWindows(?:.+)ARM\\b/i; // Match 'Windows' AND 'ARM'\nvar otherBlackberry = /BlackBerry/i;\nvar otherBlackberry10 = /BB10/i;\nvar otherOpera = /Opera Mini/i;\nvar otherChrome = /\\b(CriOS|Chrome)(?:.+)Mobile/i;\nvar otherFirefox = /Mobile(?:.+)Firefox\\b/i; // Match 'Mobile' AND 'Firefox'\n\nfunction match(regex, userAgent) {\n return regex.test(userAgent);\n}\n\nfunction isMobile(userAgent) {\n var ua = userAgent || (typeof navigator !== 'undefined' ? navigator.userAgent : '');\n\n // Facebook mobile app's integrated browser adds a bunch of strings that\n // match everything. Strip it out if it exists.\n var tmp = ua.split('[FBAN');\n if (typeof tmp[1] !== 'undefined') {\n var _tmp = tmp;\n\n var _tmp2 = _slicedToArray(_tmp, 1);\n\n ua = _tmp2[0];\n }\n\n // Twitter mobile app's integrated browser on iPad adds a \"Twitter for\n // iPhone\" string. Same probably happens on other tablet platforms.\n // This will confuse detection so strip it out if it exists.\n tmp = ua.split('Twitter');\n if (typeof tmp[1] !== 'undefined') {\n var _tmp3 = tmp;\n\n var _tmp4 = _slicedToArray(_tmp3, 1);\n\n ua = _tmp4[0];\n }\n\n var result = {\n apple: {\n phone: match(applePhone, ua) && !match(windowsPhone, ua),\n ipod: match(appleIpod, ua),\n tablet: !match(applePhone, ua) && match(appleTablet, ua) && !match(windowsPhone, ua),\n device: (match(applePhone, ua) || match(appleIpod, ua) || match(appleTablet, ua)) && !match(windowsPhone, ua)\n },\n amazon: {\n phone: match(amazonPhone, ua),\n tablet: !match(amazonPhone, ua) && match(amazonTablet, ua),\n device: match(amazonPhone, ua) || match(amazonTablet, ua)\n },\n android: {\n phone: !match(windowsPhone, ua) && match(amazonPhone, ua) || !match(windowsPhone, ua) && match(androidPhone, ua),\n tablet: !match(windowsPhone, ua) && !match(amazonPhone, ua) && !match(androidPhone, ua) && (match(amazonTablet, ua) || match(androidTablet, ua)),\n device: !match(windowsPhone, ua) && (match(amazonPhone, ua) || match(amazonTablet, ua) || match(androidPhone, ua) || match(androidTablet, ua)) || match(/\\bokhttp\\b/i, ua)\n },\n windows: {\n phone: match(windowsPhone, ua),\n tablet: match(windowsTablet, ua),\n device: match(windowsPhone, ua) || match(windowsTablet, ua)\n },\n other: {\n blackberry: match(otherBlackberry, ua),\n blackberry10: match(otherBlackberry10, ua),\n opera: match(otherOpera, ua),\n firefox: match(otherFirefox, ua),\n chrome: match(otherChrome, ua),\n device: match(otherBlackberry, ua) || match(otherBlackberry10, ua) || match(otherOpera, ua) || match(otherFirefox, ua) || match(otherChrome, ua)\n },\n\n // Additional\n any: null,\n phone: null,\n tablet: null\n };\n result.any = result.apple.device || result.android.device || result.windows.device || result.other.device;\n\n // excludes 'other' devices and ipods, targeting touchscreen phones\n result.phone = result.apple.phone || result.android.phone || result.windows.phone;\n result.tablet = result.apple.tablet || result.android.tablet || result.windows.tablet;\n\n return result;\n}\n\nvar defaultResult = _extends({}, isMobile(), {\n isMobile: isMobile\n});\n\nexport default defaultResult;","import _typeof from 'babel-runtime/helpers/typeof';\nimport isMobile from './utils/isMobile';\n\nexport function noop() {}\n\nexport function getKeyFromChildrenIndex(child, menuEventKey, index) {\n var prefix = menuEventKey || '';\n return child.key === undefined ? prefix + 'item_' + index : child.key;\n}\n\nexport function getMenuIdFromSubMenuEventKey(eventKey) {\n return eventKey + '-menu-';\n}\n\nexport function loopMenuItem(children, cb) {\n var index = -1;\n children.forEach(function (c) {\n index++;\n if (c && c.type && c.type.isMenuItemGroup) {\n c.$slots['default'].forEach(function (c2) {\n index++;\n c.componentOptions && cb(c2, index);\n });\n } else {\n c.componentOptions && cb(c, index);\n }\n });\n}\n\nexport function loopMenuItemRecursively(children, keys, ret) {\n if (!children || ret.find) {\n return;\n }\n children.forEach(function (c) {\n if (ret.find) {\n return;\n }\n if (c.data && c.data.slot && c.data.slot !== 'default') {\n return;\n }\n if (c && c.componentOptions) {\n var options = c.componentOptions.Ctor.options;\n if (!options || !(options.isSubMenu || options.isMenuItem || options.isMenuItemGroup)) {\n return;\n }\n if (keys.indexOf(c.key) !== -1) {\n ret.find = true;\n } else if (c.componentOptions.children) {\n loopMenuItemRecursively(c.componentOptions.children, keys, ret);\n }\n }\n });\n}\n\nexport var menuAllProps = {\n props: ['defaultSelectedKeys', 'selectedKeys', 'defaultOpenKeys', 'openKeys', 'mode', 'getPopupContainer', 'openTransitionName', 'openAnimation', 'subMenuOpenDelay', 'subMenuCloseDelay', 'forceSubMenuRender', 'triggerSubMenuAction', 'level', 'selectable', 'multiple', 'visible', 'focusable', 'defaultActiveFirst', 'prefixCls', 'inlineIndent', 'parentMenu', 'title', 'rootPrefixCls', 'eventKey', 'active', 'popupAlign', 'popupOffset', 'isOpen', 'renderMenuItem', 'manualRef', 'subMenuKey', 'disabled', 'index', 'isSelected', 'store', 'activeKey', 'builtinPlacements', 'overflowedIndicator',\n\n // the following keys found need to be removed from test regression\n 'attribute', 'value', 'popupClassName', 'inlineCollapsed', 'menu', 'theme', 'itemIcon', 'expandIcon'],\n on: ['select', 'deselect', 'destroy', 'openChange', 'itemHover', 'titleMouseenter', 'titleMouseleave', 'titleClick']\n};\n\n// ref: https://github.com/ant-design/ant-design/issues/14007\n// ref: https://bugs.chromium.org/p/chromium/issues/detail?id=360889\n// getBoundingClientRect return the full precision value, which is\n// not the same behavior as on chrome. Set the precision to 6 to\n// unify their behavior\nexport var getWidth = function getWidth(elem) {\n var width = elem && typeof elem.getBoundingClientRect === 'function' && elem.getBoundingClientRect().width;\n if (width) {\n width = +width.toFixed(6);\n }\n return width || 0;\n};\n\nexport var setStyle = function setStyle(elem, styleProperty, value) {\n if (elem && _typeof(elem.style) === 'object') {\n elem.style[styleProperty] = value;\n }\n};\n\nexport var isMobileDevice = function isMobileDevice() {\n return isMobile.any;\n};","export default {\n // Options.jsx\n items_per_page: '/ page',\n jump_to: 'Go to',\n jump_to_confirm: 'confirm',\n page: '',\n\n // Pagination.jsx\n prev_page: 'Previous Page',\n next_page: 'Next Page',\n prev_5: 'Previous 5 Pages',\n next_5: 'Next 5 Pages',\n prev_3: 'Previous 3 Pages',\n next_3: 'Next 3 Pages'\n};","import _defineProperty from 'babel-runtime/helpers/defineProperty';\nimport PropTypes from '../_util/vue-types';\nimport { getStyle, getComponentFromProp, getListeners } from '../_util/props-util';\nimport BaseMixin from '../_util/BaseMixin';\n\nfunction noop() {}\n\nexport default {\n mixins: [BaseMixin],\n props: {\n duration: PropTypes.number.def(1.5),\n closable: PropTypes.bool,\n prefixCls: PropTypes.string,\n update: PropTypes.bool,\n closeIcon: PropTypes.any\n },\n watch: {\n duration: function duration() {\n this.restartCloseTimer();\n }\n },\n\n mounted: function mounted() {\n this.startCloseTimer();\n },\n updated: function updated() {\n if (this.update) {\n this.restartCloseTimer();\n }\n },\n beforeDestroy: function beforeDestroy() {\n this.clearCloseTimer();\n this.willDestroy = true; // beforeDestroy调用后依然会触发onMouseleave事件\n },\n\n methods: {\n close: function close(e) {\n if (e) {\n e.stopPropagation();\n }\n this.clearCloseTimer();\n this.__emit('close');\n },\n startCloseTimer: function startCloseTimer() {\n var _this = this;\n\n this.clearCloseTimer();\n if (!this.willDestroy && this.duration) {\n this.closeTimer = setTimeout(function () {\n _this.close();\n }, this.duration * 1000);\n }\n },\n clearCloseTimer: function clearCloseTimer() {\n if (this.closeTimer) {\n clearTimeout(this.closeTimer);\n this.closeTimer = null;\n }\n },\n restartCloseTimer: function restartCloseTimer() {\n this.clearCloseTimer();\n this.startCloseTimer();\n }\n },\n\n render: function render() {\n var _className;\n\n var h = arguments[0];\n var prefixCls = this.prefixCls,\n closable = this.closable,\n clearCloseTimer = this.clearCloseTimer,\n startCloseTimer = this.startCloseTimer,\n $slots = this.$slots,\n close = this.close;\n\n var componentClass = prefixCls + '-notice';\n var className = (_className = {}, _defineProperty(_className, '' + componentClass, 1), _defineProperty(_className, componentClass + '-closable', closable), _className);\n var style = getStyle(this);\n var closeIcon = getComponentFromProp(this, 'closeIcon');\n return h(\n 'div',\n {\n 'class': className,\n style: style || { right: '50%' },\n on: {\n 'mouseenter': clearCloseTimer,\n 'mouseleave': startCloseTimer,\n 'click': getListeners(this).click || noop\n }\n },\n [h(\n 'div',\n { 'class': componentClass + '-content' },\n [$slots['default']]\n ), closable ? h(\n 'a',\n {\n attrs: { tabIndex: '0' },\n on: {\n 'click': close\n },\n 'class': componentClass + '-close' },\n [closeIcon || h('span', { 'class': componentClass + '-close-x' })]\n ) : null]\n );\n }\n};","import _objectWithoutProperties from 'babel-runtime/helpers/objectWithoutProperties';\nimport _defineProperty from 'babel-runtime/helpers/defineProperty';\nimport Vue from 'vue';\nimport PropTypes from '../_util/vue-types';\nimport { getStyle, getComponentFromProp } from '../_util/props-util';\nimport BaseMixin from '../_util/BaseMixin';\nimport createChainedFunction from '../_util/createChainedFunction';\nimport getTransitionProps from '../_util/getTransitionProps';\nimport Notice from './Notice';\nimport Base from '../base';\n\nfunction noop() {}\n\nvar seed = 0;\nvar now = Date.now();\n\nfunction getUuid() {\n return 'rcNotification_' + now + '_' + seed++;\n}\n\nvar Notification = {\n mixins: [BaseMixin],\n props: {\n prefixCls: PropTypes.string.def('rc-notification'),\n transitionName: PropTypes.string,\n animation: PropTypes.oneOfType([PropTypes.string, PropTypes.object]).def('fade'),\n maxCount: PropTypes.number,\n closeIcon: PropTypes.any\n },\n data: function data() {\n return {\n notices: []\n };\n },\n\n methods: {\n getTransitionName: function getTransitionName() {\n var props = this.$props;\n var transitionName = props.transitionName;\n if (!transitionName && props.animation) {\n transitionName = props.prefixCls + '-' + props.animation;\n }\n return transitionName;\n },\n add: function add(notice) {\n var key = notice.key = notice.key || getUuid();\n var maxCount = this.$props.maxCount;\n\n this.setState(function (previousState) {\n var notices = previousState.notices;\n var noticeIndex = notices.map(function (v) {\n return v.key;\n }).indexOf(key);\n var updatedNotices = notices.concat();\n if (noticeIndex !== -1) {\n updatedNotices.splice(noticeIndex, 1, notice);\n } else {\n if (maxCount && notices.length >= maxCount) {\n // XXX, use key of first item to update new added (let React to move exsiting\n // instead of remove and mount). Same key was used before for both a) external\n // manual control and b) internal react 'key' prop , which is not that good.\n notice.updateKey = updatedNotices[0].updateKey || updatedNotices[0].key;\n updatedNotices.shift();\n }\n updatedNotices.push(notice);\n }\n return {\n notices: updatedNotices\n };\n });\n },\n remove: function remove(key) {\n this.setState(function (previousState) {\n return {\n notices: previousState.notices.filter(function (notice) {\n return notice.key !== key;\n })\n };\n });\n }\n },\n\n render: function render(h) {\n var _this = this;\n\n var prefixCls = this.prefixCls,\n notices = this.notices,\n remove = this.remove,\n getTransitionName = this.getTransitionName;\n\n var transitionProps = getTransitionProps(getTransitionName());\n var noticeNodes = notices.map(function (notice, index) {\n var update = Boolean(index === notices.length - 1 && notice.updateKey);\n var key = notice.updateKey ? notice.updateKey : notice.key;\n\n var content = notice.content,\n duration = notice.duration,\n closable = notice.closable,\n onClose = notice.onClose,\n style = notice.style,\n className = notice['class'];\n\n var close = createChainedFunction(remove.bind(_this, notice.key), onClose);\n var noticeProps = {\n props: {\n prefixCls: prefixCls,\n duration: duration,\n closable: closable,\n update: update,\n closeIcon: getComponentFromProp(_this, 'closeIcon')\n },\n on: {\n close: close,\n click: notice.onClick || noop\n },\n style: style,\n 'class': className,\n key: key\n };\n return h(\n Notice,\n noticeProps,\n [typeof content === 'function' ? content(h) : content]\n );\n });\n var className = _defineProperty({}, prefixCls, 1);\n var style = getStyle(this);\n return h(\n 'div',\n {\n 'class': className,\n style: style || {\n top: '65px',\n left: '50%'\n }\n },\n [h(\n 'transition-group',\n transitionProps,\n [noticeNodes]\n )]\n );\n }\n};\n\nNotification.newInstance = function newNotificationInstance(properties, callback) {\n var _ref = properties || {},\n getContainer = _ref.getContainer,\n style = _ref.style,\n className = _ref['class'],\n props = _objectWithoutProperties(_ref, ['getContainer', 'style', 'class']);\n\n var div = document.createElement('div');\n if (getContainer) {\n var root = getContainer();\n root.appendChild(div);\n } else {\n document.body.appendChild(div);\n }\n var V = Base.Vue || Vue;\n new V({\n el: div,\n mounted: function mounted() {\n var self = this;\n this.$nextTick(function () {\n callback({\n notice: function notice(noticeProps) {\n self.$refs.notification.add(noticeProps);\n },\n removeNotice: function removeNotice(key) {\n self.$refs.notification.remove(key);\n },\n\n component: self,\n destroy: function destroy() {\n self.$destroy();\n self.$el.parentNode.removeChild(self.$el);\n }\n });\n });\n },\n render: function render() {\n var h = arguments[0];\n\n var p = {\n props: props,\n ref: 'notification',\n style: style,\n 'class': className\n };\n return h(Notification, p);\n }\n });\n};\n\nexport default Notification;","// based on rc-notification 3.3.1\nimport Notification from './Notification';\nexport default Notification;","export default {\n // Options.jsx\n items_per_page: '条/页',\n jump_to: '跳至',\n jump_to_confirm: '确定',\n page: '页',\n\n // Pagination.jsx\n prev_page: '上一页',\n next_page: '下一页',\n prev_5: '向前 5 页',\n next_5: '向后 5 页',\n prev_3: '向前 3 页',\n next_3: '向后 3 页'\n};","import _extends from 'babel-runtime/helpers/extends';\nimport PropTypes from '../../_util/vue-types';\nimport { initDefaultProps } from '../../_util/props-util';\nimport { filterOption as defaultFilterOption, validateSearch as defaultValidateSearch } from './util';\nimport { PlaceMent } from './placement';\n\nexport var mentionsProps = {\n autoFocus: PropTypes.bool,\n prefix: PropTypes.oneOfType([PropTypes.string, PropTypes.array]),\n prefixCls: PropTypes.string,\n value: PropTypes.string,\n defaultValue: PropTypes.string,\n disabled: PropTypes.bool,\n notFoundContent: PropTypes.any,\n split: PropTypes.string,\n transitionName: PropTypes.string,\n placement: PropTypes.oneOf(PlaceMent),\n character: PropTypes.any,\n characterRender: PropTypes.func,\n filterOption: PropTypes.func,\n validateSearch: PropTypes.func,\n getPopupContainer: PropTypes.func\n};\n\nexport var vcMentionsProps = _extends({}, mentionsProps, {\n children: PropTypes.any\n});\n\nexport var defaultProps = {\n prefix: '@',\n split: ' ',\n validateSearch: defaultValidateSearch,\n filterOption: defaultFilterOption\n};\n\nexport default initDefaultProps(vcMentionsProps, defaultProps);","var style = function style(element, prop) {\n var styleVal = '';\n if (typeof getComputedStyle !== 'undefined') {\n styleVal = window.getComputedStyle(element, null).getPropertyValue(prop);\n } else {\n styleVal = element.style[prop];\n }\n return styleVal;\n};\n\nvar overflow = function overflow(element) {\n return style(element, 'overflow') + style(element, 'overflow-y') + style(element, 'overflow-x');\n};\n\nvar scrollParent = function scrollParent(element) {\n if (!(element instanceof window.HTMLElement)) {\n return window;\n }\n\n var parent = element;\n\n while (parent) {\n if (parent === document.body || parent === document.documentElement) {\n break;\n }\n\n if (!parent.parentNode) {\n break;\n }\n if (/(scroll|auto)/.test(overflow(parent))) {\n return parent;\n }\n\n parent = parent.parentNode;\n }\n\n return window;\n};\n\nexport default scrollParent;","/*\n * Finds element's position relative to the whole document,\n * rather than to the viewport as it is the case with .getBoundingClientRect().\n */\nexport default function getElementPosition(element) {\n var rect = element.getBoundingClientRect();\n\n return {\n top: rect.top + window.pageYOffset,\n left: rect.left + window.pageXOffset\n };\n}","import PropTypes from '../../_util/vue-types';\nimport BaseMixin from '../../_util/BaseMixin';\nimport addEventListener from '../../vc-util/Dom/addEventListener';\nimport { initDefaultProps } from '../../_util/props-util';\nimport warning from '../../_util/warning';\nimport debounce from 'lodash/debounce';\nimport throttle from 'lodash/throttle';\nimport parentScroll from './utils/parentScroll';\nimport inViewport from './utils/inViewport';\n\nvar lazyLoadProps = {\n debounce: PropTypes.bool,\n elementType: PropTypes.string,\n height: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n offset: PropTypes.number,\n offsetBottom: PropTypes.number,\n offsetHorizontal: PropTypes.number,\n offsetLeft: PropTypes.number,\n offsetRight: PropTypes.number,\n offsetTop: PropTypes.number,\n offsetVertical: PropTypes.number,\n threshold: PropTypes.number,\n throttle: PropTypes.number,\n width: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n _propsSymbol: PropTypes.any\n};\n\nexport default {\n name: 'LazyLoad',\n mixins: [BaseMixin],\n props: initDefaultProps(lazyLoadProps, {\n elementType: 'div',\n debounce: true,\n offset: 0,\n offsetBottom: 0,\n offsetHorizontal: 0,\n offsetLeft: 0,\n offsetRight: 0,\n offsetTop: 0,\n offsetVertical: 0,\n throttle: 250\n }),\n data: function data() {\n if (this.throttle > 0) {\n if (this.debounce) {\n this.lazyLoadHandler = debounce(this.lazyLoadHandler, this.throttle);\n } else {\n this.lazyLoadHandler = throttle(this.lazyLoadHandler, this.throttle);\n }\n }\n return {\n visible: false\n };\n },\n\n watch: {\n _propsSymbol: function _propsSymbol() {\n if (!this.visible) {\n this.lazyLoadHandler();\n }\n }\n },\n mounted: function mounted() {\n var _this = this;\n\n this.$nextTick(function () {\n _this._mounted = true;\n var eventNode = _this.getEventNode();\n\n _this.lazyLoadHandler();\n\n if (_this.lazyLoadHandler.flush) {\n _this.lazyLoadHandler.flush();\n }\n _this.resizeHander = addEventListener(window, 'resize', _this.lazyLoadHandler);\n _this.scrollHander = addEventListener(eventNode, 'scroll', _this.lazyLoadHandler);\n });\n },\n beforeDestroy: function beforeDestroy() {\n this._mounted = false;\n if (this.lazyLoadHandler.cancel) {\n this.lazyLoadHandler.cancel();\n }\n\n this.detachListeners();\n },\n\n methods: {\n getEventNode: function getEventNode() {\n return parentScroll(this.$el);\n },\n getOffset: function getOffset() {\n var _$props = this.$props,\n offset = _$props.offset,\n offsetVertical = _$props.offsetVertical,\n offsetHorizontal = _$props.offsetHorizontal,\n offsetTop = _$props.offsetTop,\n offsetBottom = _$props.offsetBottom,\n offsetLeft = _$props.offsetLeft,\n offsetRight = _$props.offsetRight,\n threshold = _$props.threshold;\n\n\n var _offsetAll = threshold || offset;\n var _offsetVertical = offsetVertical || _offsetAll;\n var _offsetHorizontal = offsetHorizontal || _offsetAll;\n\n return {\n top: offsetTop || _offsetVertical,\n bottom: offsetBottom || _offsetVertical,\n left: offsetLeft || _offsetHorizontal,\n right: offsetRight || _offsetHorizontal\n };\n },\n lazyLoadHandler: function lazyLoadHandler() {\n var _this2 = this;\n\n if (!this._mounted) {\n return;\n }\n var offset = this.getOffset();\n var node = this.$el;\n var eventNode = this.getEventNode();\n\n if (inViewport(node, eventNode, offset)) {\n this.setState({ visible: true }, function () {\n _this2.__emit('contentVisible');\n });\n this.detachListeners();\n }\n },\n detachListeners: function detachListeners() {\n this.resizeHander && this.resizeHander.remove();\n this.scrollHander && this.scrollHander.remove();\n }\n },\n render: function render(createElement) {\n var children = this.$slots['default'];\n if (children.length !== 1) {\n warning(false, 'lazyLoad组件只能包含一个子元素');\n return null;\n }\n var _$props2 = this.$props,\n height = _$props2.height,\n width = _$props2.width,\n elementType = _$props2.elementType;\n var visible = this.visible;\n\n\n var elStyles = {\n height: typeof height === 'number' ? height + 'px' : height,\n width: typeof width === 'number' ? width + 'px' : width\n };\n var elClasses = {\n LazyLoad: true,\n 'is-visible': visible\n };\n\n return createElement(elementType, {\n 'class': elClasses,\n style: elStyles\n }, [visible ? children[0] : null]);\n }\n};","import getElementPosition from './getElementPosition';\n\nvar isHidden = function isHidden(element) {\n return element.offsetParent === null;\n};\n\nexport default function inViewport(element, container, customOffset) {\n if (isHidden(element)) {\n return false;\n }\n\n var top = void 0;\n var bottom = void 0;\n var left = void 0;\n var right = void 0;\n\n if (typeof container === 'undefined' || container === window) {\n top = window.pageYOffset;\n left = window.pageXOffset;\n bottom = top + window.innerHeight;\n right = left + window.innerWidth;\n } else {\n var containerPosition = getElementPosition(container);\n\n top = containerPosition.top;\n left = containerPosition.left;\n bottom = top + container.offsetHeight;\n right = left + container.offsetWidth;\n }\n\n var elementPosition = getElementPosition(element);\n\n return top <= elementPosition.top + element.offsetHeight + customOffset.top && bottom >= elementPosition.top - customOffset.bottom && left <= elementPosition.left + element.offsetWidth + customOffset.left && right >= elementPosition.left - customOffset.right;\n}","import LazyLoad from './src/LazyLoad';\nexport default LazyLoad;","import _extends from 'babel-runtime/helpers/extends';\nimport PropTypes from '../_util/vue-types';\nimport { getComponentFromProp, getListeners } from '../_util/props-util';\n\n// import { menuAllProps } from './util'\n\nvar MenuItemGroup = {\n name: 'MenuItemGroup',\n\n props: {\n renderMenuItem: PropTypes.func,\n index: PropTypes.number,\n className: PropTypes.string,\n subMenuKey: PropTypes.string,\n rootPrefixCls: PropTypes.string,\n disabled: PropTypes.bool.def(true),\n title: PropTypes.any\n },\n isMenuItemGroup: true,\n methods: {\n renderInnerMenuItem: function renderInnerMenuItem(item) {\n var _$props = this.$props,\n renderMenuItem = _$props.renderMenuItem,\n index = _$props.index,\n subMenuKey = _$props.subMenuKey;\n\n return renderMenuItem(item, index, subMenuKey);\n }\n },\n render: function render() {\n var h = arguments[0];\n\n var props = _extends({}, this.$props);\n var rootPrefixCls = props.rootPrefixCls,\n title = props.title;\n\n var titleClassName = rootPrefixCls + '-item-group-title';\n var listClassName = rootPrefixCls + '-item-group-list';\n // menuAllProps.props.forEach(key => delete props[key])\n var listeners = _extends({}, getListeners(this));\n delete listeners.click;\n\n return h(\n 'li',\n { on: listeners, 'class': rootPrefixCls + '-item-group' },\n [h(\n 'div',\n { 'class': titleClassName, attrs: { title: typeof title === 'string' ? title : undefined }\n },\n [getComponentFromProp(this, 'title')]\n ), h(\n 'ul',\n { 'class': listClassName },\n [this.$slots['default'] && this.$slots['default'].map(this.renderInnerMenuItem)]\n )]\n );\n }\n};\n\nexport default MenuItemGroup;","export default {\n name: 'MenuDivider',\n props: {\n disabled: {\n type: Boolean,\n 'default': true\n },\n rootPrefixCls: String\n },\n render: function render() {\n var h = arguments[0];\n var rootPrefixCls = this.$props.rootPrefixCls;\n\n return h('li', { 'class': rootPrefixCls + '-item-divider' });\n }\n};","import _mergeJSXProps from 'babel-helper-vue-jsx-merge-props';\nimport _defineProperty from 'babel-runtime/helpers/defineProperty';\nimport _extends from 'babel-runtime/helpers/extends';\nimport PropTypes from '../_util/vue-types';\nimport KeyCode from '../_util/KeyCode';\nimport BaseMixin from '../_util/BaseMixin';\nimport scrollIntoView from 'dom-scroll-into-view';\nimport { connect } from '../_util/store';\nimport { noop, menuAllProps } from './util';\nimport { getComponentFromProp, getListeners } from '../_util/props-util';\n\nvar props = {\n attribute: PropTypes.object,\n rootPrefixCls: PropTypes.string,\n eventKey: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n active: PropTypes.bool,\n selectedKeys: PropTypes.array,\n disabled: PropTypes.bool,\n title: PropTypes.any,\n index: PropTypes.number,\n inlineIndent: PropTypes.number.def(24),\n level: PropTypes.number.def(1),\n mode: PropTypes.oneOf(['horizontal', 'vertical', 'vertical-left', 'vertical-right', 'inline']).def('vertical'),\n parentMenu: PropTypes.object,\n multiple: PropTypes.bool,\n value: PropTypes.any,\n isSelected: PropTypes.bool,\n manualRef: PropTypes.func.def(noop),\n role: PropTypes.any,\n subMenuKey: PropTypes.string,\n itemIcon: PropTypes.any\n // clearSubMenuTimers: PropTypes.func.def(noop),\n};\nvar MenuItem = {\n name: 'MenuItem',\n props: props,\n mixins: [BaseMixin],\n isMenuItem: true,\n created: function created() {\n this.prevActive = this.active;\n // invoke customized ref to expose component to mixin\n this.callRef();\n },\n updated: function updated() {\n var _this = this;\n\n this.$nextTick(function () {\n var _$props = _this.$props,\n active = _$props.active,\n parentMenu = _$props.parentMenu,\n eventKey = _$props.eventKey;\n\n if (!_this.prevActive && active && (!parentMenu || !parentMenu['scrolled-' + eventKey])) {\n scrollIntoView(_this.$el, _this.parentMenu.$el, {\n onlyScrollIfNeeded: true\n });\n parentMenu['scrolled-' + eventKey] = true;\n } else if (parentMenu && parentMenu['scrolled-' + eventKey]) {\n delete parentMenu['scrolled-' + eventKey];\n }\n _this.prevActive = active;\n });\n this.callRef();\n },\n beforeDestroy: function beforeDestroy() {\n var props = this.$props;\n this.__emit('destroy', props.eventKey);\n },\n\n methods: {\n onKeyDown: function onKeyDown(e) {\n var keyCode = e.keyCode;\n if (keyCode === KeyCode.ENTER) {\n this.onClick(e);\n return true;\n }\n },\n onMouseLeave: function onMouseLeave(e) {\n var eventKey = this.$props.eventKey;\n\n this.__emit('itemHover', {\n key: eventKey,\n hover: false\n });\n this.__emit('mouseleave', {\n key: eventKey,\n domEvent: e\n });\n },\n onMouseEnter: function onMouseEnter(e) {\n var eventKey = this.eventKey;\n\n this.__emit('itemHover', {\n key: eventKey,\n hover: true\n });\n this.__emit('mouseenter', {\n key: eventKey,\n domEvent: e\n });\n },\n onClick: function onClick(e) {\n var _$props2 = this.$props,\n eventKey = _$props2.eventKey,\n multiple = _$props2.multiple,\n isSelected = _$props2.isSelected;\n\n var info = {\n key: eventKey,\n keyPath: [eventKey],\n item: this,\n domEvent: e\n };\n\n this.__emit('click', info);\n if (multiple) {\n if (isSelected) {\n this.__emit('deselect', info);\n } else {\n this.__emit('select', info);\n }\n } else if (!isSelected) {\n this.__emit('select', info);\n }\n },\n getPrefixCls: function getPrefixCls() {\n return this.$props.rootPrefixCls + '-item';\n },\n getActiveClassName: function getActiveClassName() {\n return this.getPrefixCls() + '-active';\n },\n getSelectedClassName: function getSelectedClassName() {\n return this.getPrefixCls() + '-selected';\n },\n getDisabledClassName: function getDisabledClassName() {\n return this.getPrefixCls() + '-disabled';\n },\n callRef: function callRef() {\n if (this.manualRef) {\n this.manualRef(this);\n }\n }\n },\n\n render: function render() {\n var _className;\n\n var h = arguments[0];\n\n var props = _extends({}, this.$props);\n var className = (_className = {}, _defineProperty(_className, this.getPrefixCls(), true), _defineProperty(_className, this.getActiveClassName(), !props.disabled && props.active), _defineProperty(_className, this.getSelectedClassName(), props.isSelected), _defineProperty(_className, this.getDisabledClassName(), props.disabled), _className);\n var attrs = _extends({}, props.attribute, {\n title: props.title,\n role: props.role || 'menuitem',\n 'aria-disabled': props.disabled\n });\n if (props.role === 'option') {\n // overwrite to option\n attrs = _extends({}, attrs, {\n role: 'option',\n 'aria-selected': props.isSelected\n });\n } else if (props.role === null || props.role === 'none') {\n // sometimes we want to specify role inside
  • element\n //
  • Link
  • would be a good example\n // in this case the role on
  • should be \"none\" to\n // remove the implied listitem role.\n // https://www.w3.org/TR/wai-aria-practices-1.1/examples/menubar/menubar-1/menubar-1.html\n attrs.role = 'none';\n }\n // In case that onClick/onMouseLeave/onMouseEnter is passed down from owner\n var mouseEvent = {\n click: props.disabled ? noop : this.onClick,\n mouseleave: props.disabled ? noop : this.onMouseLeave,\n mouseenter: props.disabled ? noop : this.onMouseEnter\n };\n\n var style = {};\n if (props.mode === 'inline') {\n style.paddingLeft = props.inlineIndent * props.level + 'px';\n }\n var listeners = _extends({}, getListeners(this));\n menuAllProps.props.forEach(function (key) {\n return delete props[key];\n });\n menuAllProps.on.forEach(function (key) {\n return delete listeners[key];\n });\n var liProps = {\n attrs: _extends({}, props, attrs),\n on: _extends({}, listeners, mouseEvent)\n };\n return h(\n 'li',\n _mergeJSXProps([liProps, { style: style, 'class': className }]),\n [this.$slots['default'], getComponentFromProp(this, 'itemIcon', props)]\n );\n }\n};\n\nvar connected = connect(function (_ref, _ref2) {\n var activeKey = _ref.activeKey,\n selectedKeys = _ref.selectedKeys;\n var eventKey = _ref2.eventKey,\n subMenuKey = _ref2.subMenuKey;\n return {\n active: activeKey[subMenuKey] === eventKey,\n isSelected: selectedKeys.indexOf(eventKey) !== -1\n };\n})(MenuItem);\n\nexport default connected;\nexport { props as menuItemProps };","import PropTypes from '../../_util/vue-types';\n\nexport var OptionProps = {\n value: PropTypes.string,\n disabled: PropTypes.boolean,\n children: PropTypes.any\n};\n\nexport default {\n name: 'Option',\n props: OptionProps,\n render: function render() {\n return null;\n }\n};","import Menu, { MenuItem } from '../../vc-menu';\nimport PropTypes from '../../_util/vue-types';\nimport { OptionProps } from './Option';\n\nfunction noop() {}\nexport default {\n name: 'DropdownMenu',\n props: {\n prefixCls: PropTypes.string,\n options: PropTypes.arrayOf(OptionProps)\n },\n inject: {\n mentionsContext: { 'default': {} }\n },\n\n render: function render() {\n var h = arguments[0];\n var _mentionsContext = this.mentionsContext,\n notFoundContent = _mentionsContext.notFoundContent,\n activeIndex = _mentionsContext.activeIndex,\n setActiveIndex = _mentionsContext.setActiveIndex,\n selectOption = _mentionsContext.selectOption,\n _mentionsContext$onFo = _mentionsContext.onFocus,\n onFocus = _mentionsContext$onFo === undefined ? noop : _mentionsContext$onFo,\n _mentionsContext$onBl = _mentionsContext.onBlur,\n onBlur = _mentionsContext$onBl === undefined ? noop : _mentionsContext$onBl;\n var _$props = this.$props,\n prefixCls = _$props.prefixCls,\n options = _$props.options;\n\n var activeOption = options[activeIndex] || {};\n\n return h(\n Menu,\n {\n props: {\n prefixCls: prefixCls + '-menu',\n activeKey: activeOption.value\n },\n on: {\n select: function select(_ref) {\n var key = _ref.key;\n\n var option = options.find(function (_ref2) {\n var value = _ref2.value;\n return value === key;\n });\n selectOption(option);\n },\n focus: onFocus,\n blur: onBlur\n }\n },\n [options.map(function (option, index) {\n var value = option.value,\n disabled = option.disabled,\n children = option.children;\n\n return h(\n MenuItem,\n {\n key: value,\n attrs: { disabled: disabled\n },\n on: {\n 'mouseenter': function mouseenter() {\n setActiveIndex(index);\n }\n }\n },\n [children]\n );\n }), !options.length && h(\n MenuItem,\n {\n attrs: { disabled: true }\n },\n [notFoundContent]\n )]\n );\n }\n};","import PropTypes from '../../_util/vue-types';\nimport Trigger from '../../vc-trigger';\nimport DropdownMenu from './DropdownMenu';\nimport { OptionProps } from './Option';\nimport { PlaceMent } from './placement';\n\nvar BUILT_IN_PLACEMENTS = {\n bottomRight: {\n points: ['tl', 'br'],\n offset: [0, 4],\n overflow: {\n adjustX: 0,\n adjustY: 1\n }\n },\n topRight: {\n points: ['bl', 'tr'],\n offset: [0, -4],\n overflow: {\n adjustX: 0,\n adjustY: 1\n }\n }\n};\n\nexport default {\n name: 'KeywordTrigger',\n props: {\n loading: PropTypes.bool,\n options: PropTypes.arrayOf(OptionProps),\n prefixCls: PropTypes.string,\n placement: PropTypes.oneOf(PlaceMent),\n visible: PropTypes.bool,\n transitionName: PropTypes.string,\n getPopupContainer: PropTypes.func\n },\n methods: {\n getDropdownPrefix: function getDropdownPrefix() {\n return this.$props.prefixCls + '-dropdown';\n },\n getDropdownElement: function getDropdownElement() {\n var h = this.$createElement;\n var options = this.$props.options;\n\n return h(DropdownMenu, {\n attrs: { prefixCls: this.getDropdownPrefix(), options: options }\n });\n }\n },\n\n render: function render() {\n var h = arguments[0];\n var _$props = this.$props,\n visible = _$props.visible,\n placement = _$props.placement,\n transitionName = _$props.transitionName,\n getPopupContainer = _$props.getPopupContainer;\n var $slots = this.$slots;\n\n\n var children = $slots['default'];\n\n var popupElement = this.getDropdownElement();\n\n return h(\n Trigger,\n {\n attrs: {\n prefixCls: this.getDropdownPrefix(),\n popupVisible: visible,\n popup: popupElement,\n popupPlacement: placement === 'top' ? 'topRight' : 'bottomRight',\n popupTransitionName: transitionName,\n builtinPlacements: BUILT_IN_PLACEMENTS,\n getPopupContainer: getPopupContainer\n }\n },\n [children]\n );\n }\n};","import _mergeJSXProps from 'babel-helper-vue-jsx-merge-props';\nimport _objectWithoutProperties from 'babel-runtime/helpers/objectWithoutProperties';\nimport _extends from 'babel-runtime/helpers/extends';\nimport omit from 'omit.js';\nimport KeyCode from '../../_util/KeyCode';\nimport BaseMixin from '../../_util/BaseMixin';\nimport { getSlots, hasProp, getOptionProps, getListeners, initDefaultProps } from '../../_util/props-util';\nimport warning from 'warning';\nimport { getBeforeSelectionText, getLastMeasureIndex, replaceWithMeasure, setInputSelection } from './util';\nimport KeywordTrigger from './KeywordTrigger';\nimport { vcMentionsProps, defaultProps } from './mentionsProps';\n\nfunction noop() {}\n\nvar Mentions = {\n name: 'Mentions',\n mixins: [BaseMixin],\n inheritAttrs: false,\n model: {\n prop: 'value',\n event: 'change'\n },\n props: initDefaultProps(vcMentionsProps, defaultProps),\n provide: function provide() {\n return {\n mentionsContext: this\n };\n },\n data: function data() {\n var _$props = this.$props,\n _$props$value = _$props.value,\n value = _$props$value === undefined ? '' : _$props$value,\n _$props$defaultValue = _$props.defaultValue,\n defaultValue = _$props$defaultValue === undefined ? '' : _$props$defaultValue;\n\n warning(this.$props.children, 'please children prop replace slots.default');\n return {\n _value: !hasProp(this, 'value') ? defaultValue : value,\n measuring: false,\n measureLocation: 0,\n measureText: null,\n measurePrefix: '',\n activeIndex: 0,\n isFocus: false\n };\n },\n\n watch: {\n value: function value(val) {\n this.$data._value = val;\n }\n },\n updated: function updated() {\n var _this = this;\n\n this.$nextTick(function () {\n var measuring = _this.$data.measuring;\n\n // Sync measure div top with textarea for rc-trigger usage\n\n if (measuring) {\n _this.$refs.measure.scrollTop = _this.$refs.textarea.scrollTop;\n }\n });\n },\n\n methods: {\n triggerChange: function triggerChange(value) {\n var props = getOptionProps(this);\n if (!('value' in props)) {\n this.setState({ _value: value });\n } else {\n this.$forceUpdate();\n }\n this.$emit('change', value);\n },\n onChange: function onChange(_ref) {\n var _ref$target = _ref.target,\n value = _ref$target.value,\n composing = _ref$target.composing,\n isComposing = _ref.isComposing;\n\n if (isComposing || composing) return;\n this.triggerChange(value);\n },\n onKeyDown: function onKeyDown(event) {\n var which = event.which;\n var _$data = this.$data,\n activeIndex = _$data.activeIndex,\n measuring = _$data.measuring;\n // Skip if not measuring\n\n if (!measuring) {\n return;\n }\n\n if (which === KeyCode.UP || which === KeyCode.DOWN) {\n // Control arrow function\n var optionLen = this.getOptions().length;\n var offset = which === KeyCode.UP ? -1 : 1;\n var newActiveIndex = (activeIndex + offset + optionLen) % optionLen;\n this.setState({\n activeIndex: newActiveIndex\n });\n event.preventDefault();\n } else if (which === KeyCode.ESC) {\n this.stopMeasure();\n } else if (which === KeyCode.ENTER) {\n // Measure hit\n event.preventDefault();\n var options = this.getOptions();\n if (!options.length) {\n this.stopMeasure();\n return;\n }\n var option = options[activeIndex];\n this.selectOption(option);\n }\n },\n\n /**\n * When to start measure:\n * 1. When user press `prefix`\n * 2. When measureText !== prevMeasureText\n * - If measure hit\n * - If measuring\n *\n * When to stop measure:\n * 1. Selection is out of range\n * 2. Contains `space`\n * 3. ESC or select one\n */\n onKeyUp: function onKeyUp(event) {\n var key = event.key,\n which = event.which;\n var _$data2 = this.$data,\n prevMeasureText = _$data2.measureText,\n measuring = _$data2.measuring;\n var _$props2 = this.$props,\n _$props2$prefix = _$props2.prefix,\n prefix = _$props2$prefix === undefined ? '' : _$props2$prefix,\n validateSearch = _$props2.validateSearch;\n\n var target = event.target;\n var selectionStartText = getBeforeSelectionText(target);\n\n var _getLastMeasureIndex = getLastMeasureIndex(selectionStartText, prefix),\n measureIndex = _getLastMeasureIndex.location,\n measurePrefix = _getLastMeasureIndex.prefix;\n\n // Skip if match the white key list\n\n\n if ([KeyCode.ESC, KeyCode.UP, KeyCode.DOWN, KeyCode.ENTER].indexOf(which) !== -1) {\n return;\n }\n\n if (measureIndex !== -1) {\n var measureText = selectionStartText.slice(measureIndex + measurePrefix.length);\n var validateMeasure = validateSearch(measureText, this.$props);\n var matchOption = !!this.getOptions(measureText).length;\n\n if (validateMeasure) {\n if (key === measurePrefix || measuring || measureText !== prevMeasureText && matchOption) {\n this.startMeasure(measureText, measurePrefix, measureIndex);\n }\n } else if (measuring) {\n // Stop if measureText is invalidate\n this.stopMeasure();\n }\n\n /**\n * We will trigger `onSearch` to developer since they may use for async update.\n * If met `space` means user finished searching.\n */\n if (validateMeasure) {\n this.$emit('search', measureText, measurePrefix);\n }\n } else if (measuring) {\n this.stopMeasure();\n }\n },\n onInputFocus: function onInputFocus(event) {\n this.onFocus(event);\n },\n onInputBlur: function onInputBlur(event) {\n this.onBlur(event);\n },\n onDropdownFocus: function onDropdownFocus() {\n this.onFocus();\n },\n onDropdownBlur: function onDropdownBlur() {\n this.onBlur();\n },\n onFocus: function onFocus(event) {\n window.clearTimeout(this.focusId);\n var isFocus = this.$data.isFocus;\n\n if (!isFocus && event) {\n this.$emit('focus', event);\n }\n this.setState({ isFocus: true });\n },\n onBlur: function onBlur(event) {\n var _this2 = this;\n\n this.focusId = window.setTimeout(function () {\n _this2.setState({ isFocus: false });\n _this2.stopMeasure();\n _this2.$emit('blur', event);\n }, 0);\n },\n selectOption: function selectOption(option) {\n var _this3 = this;\n\n var _$data3 = this.$data,\n value = _$data3._value,\n measureLocation = _$data3.measureLocation,\n measurePrefix = _$data3.measurePrefix;\n var split = this.$props.split;\n var _option$value = option.value,\n mentionValue = _option$value === undefined ? '' : _option$value;\n\n var _replaceWithMeasure = replaceWithMeasure(value, {\n measureLocation: measureLocation,\n targetText: mentionValue,\n prefix: measurePrefix,\n selectionStart: this.$refs.textarea.selectionStart,\n split: split\n }),\n text = _replaceWithMeasure.text,\n selectionLocation = _replaceWithMeasure.selectionLocation;\n\n this.triggerChange(text);\n this.stopMeasure(function () {\n // We need restore the selection position\n setInputSelection(_this3.$refs.textarea, selectionLocation);\n });\n\n this.$emit('select', option, measurePrefix);\n },\n setActiveIndex: function setActiveIndex(activeIndex) {\n this.setState({\n activeIndex: activeIndex\n });\n },\n getOptions: function getOptions(measureText) {\n var targetMeasureText = measureText || this.$data.measureText || '';\n var _$props3 = this.$props,\n filterOption = _$props3.filterOption,\n _$props3$children = _$props3.children,\n children = _$props3$children === undefined ? [] : _$props3$children;\n\n var list = (Array.isArray(children) ? children : [children]).map(function (item) {\n var children = getSlots(item)['default'];\n return _extends({}, getOptionProps(item), { children: children });\n }).filter(function (option) {\n /** Return all result if `filterOption` is false. */\n if (filterOption === false) {\n return true;\n }\n return filterOption(targetMeasureText, option);\n });\n return list;\n },\n startMeasure: function startMeasure(measureText, measurePrefix, measureLocation) {\n this.setState({\n measuring: true,\n measureText: measureText,\n measurePrefix: measurePrefix,\n measureLocation: measureLocation,\n activeIndex: 0\n });\n },\n stopMeasure: function stopMeasure(callback) {\n this.setState({\n measuring: false,\n measureLocation: 0,\n measureText: null\n }, callback);\n },\n focus: function focus() {\n this.$refs.textarea.focus();\n },\n blur: function blur() {\n this.$refs.textarea.blur();\n }\n },\n\n render: function render() {\n var h = arguments[0];\n var _$data4 = this.$data,\n value = _$data4._value,\n measureLocation = _$data4.measureLocation,\n measurePrefix = _$data4.measurePrefix,\n measuring = _$data4.measuring;\n\n var _getOptionProps = getOptionProps(this),\n prefixCls = _getOptionProps.prefixCls,\n placement = _getOptionProps.placement,\n transitionName = _getOptionProps.transitionName,\n autoFocus = _getOptionProps.autoFocus,\n notFoundContent = _getOptionProps.notFoundContent,\n getPopupContainer = _getOptionProps.getPopupContainer,\n restProps = _objectWithoutProperties(_getOptionProps, ['prefixCls', 'placement', 'transitionName', 'autoFocus', 'notFoundContent', 'getPopupContainer']);\n\n var inputProps = omit(restProps, ['value', 'defaultValue', 'prefix', 'split', 'children', 'validateSearch', 'filterOption']);\n\n var options = measuring ? this.getOptions() : [];\n\n return h(\n 'div',\n { 'class': prefixCls },\n [h('textarea', _mergeJSXProps([{\n ref: 'textarea'\n }, {\n directives: [{ name: 'ant-input' }],\n attrs: _extends({}, inputProps, this.$attrs),\n domProps: {\n value: value\n },\n on: _extends({}, getListeners(this), {\n select: noop,\n change: noop,\n input: this.onChange,\n keydown: this.onKeyDown,\n keyup: this.onKeyUp,\n blur: this.onInputBlur\n })\n }])), measuring && h(\n 'div',\n { ref: 'measure', 'class': prefixCls + '-measure' },\n [value.slice(0, measureLocation), h(\n KeywordTrigger,\n {\n attrs: {\n prefixCls: prefixCls,\n transitionName: transitionName,\n placement: placement,\n options: options,\n visible: true,\n getPopupContainer: getPopupContainer\n }\n },\n [h('span', [measurePrefix])]\n ), value.slice(measureLocation + measurePrefix.length)]\n )]\n );\n }\n};\n\nexport default Mentions;","import Mentions from './src/Mentions';\nimport Option from './src/Option';\n\nMentions.Option = Option;\n\nexport default Mentions;","import _mergeJSXProps from 'babel-helper-vue-jsx-merge-props';\nimport PropTypes from '../_util/vue-types';\nimport KEYCODE from './KeyCode';\nimport BaseMixin from '../_util/BaseMixin';\n\nexport default {\n mixins: [BaseMixin],\n props: {\n disabled: PropTypes.bool,\n changeSize: PropTypes.func,\n quickGo: PropTypes.func,\n selectComponentClass: PropTypes.any,\n current: PropTypes.number,\n pageSizeOptions: PropTypes.array.def(['10', '20', '30', '40']),\n pageSize: PropTypes.number,\n buildOptionText: PropTypes.func,\n locale: PropTypes.object,\n rootPrefixCls: PropTypes.string,\n selectPrefixCls: PropTypes.string,\n goButton: PropTypes.any\n },\n data: function data() {\n return {\n goInputText: ''\n };\n },\n\n methods: {\n getValidValue: function getValidValue() {\n var goInputText = this.goInputText,\n current = this.current;\n\n return !goInputText || isNaN(goInputText) ? current : Number(goInputText);\n },\n defaultBuildOptionText: function defaultBuildOptionText(opt) {\n return opt.value + ' ' + this.locale.items_per_page;\n },\n handleChange: function handleChange(e) {\n var _e$target = e.target,\n value = _e$target.value,\n composing = _e$target.composing;\n\n if (e.isComposing || composing || this.goInputText === value) return;\n this.setState({\n goInputText: value\n });\n },\n handleBlur: function handleBlur(e) {\n var _$props = this.$props,\n goButton = _$props.goButton,\n quickGo = _$props.quickGo,\n rootPrefixCls = _$props.rootPrefixCls;\n\n if (goButton) {\n return;\n }\n if (e.relatedTarget && (e.relatedTarget.className.indexOf(rootPrefixCls + '-prev') >= 0 || e.relatedTarget.className.indexOf(rootPrefixCls + '-next') >= 0)) {\n return;\n }\n quickGo(this.getValidValue());\n },\n go: function go(e) {\n var goInputText = this.goInputText;\n\n if (goInputText === '') {\n return;\n }\n if (e.keyCode === KEYCODE.ENTER || e.type === 'click') {\n // https://github.com/vueComponent/ant-design-vue/issues/1316\n this.quickGo(this.getValidValue());\n this.setState({\n goInputText: ''\n });\n }\n }\n },\n render: function render() {\n var _this = this;\n\n var h = arguments[0];\n var rootPrefixCls = this.rootPrefixCls,\n locale = this.locale,\n changeSize = this.changeSize,\n quickGo = this.quickGo,\n goButton = this.goButton,\n Select = this.selectComponentClass,\n defaultBuildOptionText = this.defaultBuildOptionText,\n selectPrefixCls = this.selectPrefixCls,\n pageSize = this.pageSize,\n pageSizeOptions = this.pageSizeOptions,\n goInputText = this.goInputText,\n disabled = this.disabled;\n\n var prefixCls = rootPrefixCls + '-options';\n var changeSelect = null;\n var goInput = null;\n var gotoButton = null;\n\n if (!changeSize && !quickGo) {\n return null;\n }\n\n if (changeSize && Select) {\n var buildOptionText = this.buildOptionText || defaultBuildOptionText;\n var options = pageSizeOptions.map(function (opt, i) {\n return h(\n Select.Option,\n { key: i, attrs: { value: opt }\n },\n [buildOptionText({ value: opt })]\n );\n });\n\n changeSelect = h(\n Select,\n {\n attrs: {\n disabled: disabled,\n prefixCls: selectPrefixCls,\n showSearch: false,\n\n optionLabelProp: 'children',\n dropdownMatchSelectWidth: false,\n value: (pageSize || pageSizeOptions[0]).toString(),\n\n getPopupContainer: function getPopupContainer(triggerNode) {\n return triggerNode.parentNode;\n }\n },\n 'class': prefixCls + '-size-changer', on: {\n 'change': function change(value) {\n return _this.changeSize(Number(value));\n }\n }\n },\n [options]\n );\n }\n\n if (quickGo) {\n if (goButton) {\n gotoButton = typeof goButton === 'boolean' ? h(\n 'button',\n {\n attrs: { type: 'button', disabled: disabled },\n on: {\n 'click': this.go,\n 'keyup': this.go\n }\n },\n [locale.jump_to_confirm]\n ) : h(\n 'span',\n {\n on: {\n 'click': this.go,\n 'keyup': this.go\n }\n },\n [goButton]\n );\n }\n goInput = h(\n 'div',\n { 'class': prefixCls + '-quick-jumper' },\n [locale.jump_to, h('input', _mergeJSXProps([{\n attrs: {\n disabled: disabled,\n type: 'text'\n },\n domProps: {\n 'value': goInputText\n },\n on: {\n 'input': this.handleChange,\n 'keyup': this.go,\n 'blur': this.handleBlur\n }\n }, {\n directives: [{\n name: 'ant-input'\n }]\n }])), locale.page, gotoButton]\n );\n }\n\n return h(\n 'li',\n { 'class': '' + prefixCls },\n [changeSelect, goInput]\n );\n }\n};","var autoAdjustOverflow = {\n adjustX: 1,\n adjustY: 1\n};\n\nexport var placements = {\n topLeft: {\n points: ['bl', 'tl'],\n overflow: autoAdjustOverflow,\n offset: [0, -7]\n },\n bottomLeft: {\n points: ['tl', 'bl'],\n overflow: autoAdjustOverflow,\n offset: [0, 7]\n },\n leftTop: {\n points: ['tr', 'tl'],\n overflow: autoAdjustOverflow,\n offset: [-4, 0]\n },\n rightTop: {\n points: ['tl', 'tr'],\n overflow: autoAdjustOverflow,\n offset: [4, 0]\n }\n};\n\nexport default placements;","import _mergeJSXProps from 'babel-helper-vue-jsx-merge-props';\nimport _typeof from 'babel-runtime/helpers/typeof';\nimport _defineProperty from 'babel-runtime/helpers/defineProperty';\nimport _extends from 'babel-runtime/helpers/extends';\nimport omit from 'omit.js';\nimport PropTypes from '../_util/vue-types';\nimport Trigger from '../vc-trigger';\nimport KeyCode from '../_util/KeyCode';\nimport { connect } from '../_util/store';\nimport SubPopupMenu from './SubPopupMenu';\nimport placements from './placements';\nimport BaseMixin from '../_util/BaseMixin';\nimport { getComponentFromProp, filterEmpty, getListeners } from '../_util/props-util';\nimport { requestAnimationTimeout, cancelAnimationTimeout } from '../_util/requestAnimationTimeout';\nimport { noop, loopMenuItemRecursively, getMenuIdFromSubMenuEventKey } from './util';\nimport getTransitionProps from '../_util/getTransitionProps';\n\nvar guid = 0;\n\nvar popupPlacementMap = {\n horizontal: 'bottomLeft',\n vertical: 'rightTop',\n 'vertical-left': 'rightTop',\n 'vertical-right': 'leftTop'\n};\n\nvar updateDefaultActiveFirst = function updateDefaultActiveFirst(store, eventKey, defaultActiveFirst) {\n var menuId = getMenuIdFromSubMenuEventKey(eventKey);\n var state = store.getState();\n store.setState({\n defaultActiveFirst: _extends({}, state.defaultActiveFirst, _defineProperty({}, menuId, defaultActiveFirst))\n });\n};\n\nvar SubMenu = {\n name: 'SubMenu',\n props: {\n parentMenu: PropTypes.object,\n title: PropTypes.any,\n selectedKeys: PropTypes.array.def([]),\n openKeys: PropTypes.array.def([]),\n openChange: PropTypes.func.def(noop),\n rootPrefixCls: PropTypes.string,\n eventKey: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n multiple: PropTypes.bool,\n active: PropTypes.bool, // TODO: remove\n isRootMenu: PropTypes.bool.def(false),\n index: PropTypes.number,\n triggerSubMenuAction: PropTypes.string,\n popupClassName: PropTypes.string,\n getPopupContainer: PropTypes.func,\n forceSubMenuRender: PropTypes.bool,\n openAnimation: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n disabled: PropTypes.bool,\n subMenuOpenDelay: PropTypes.number.def(0.1),\n subMenuCloseDelay: PropTypes.number.def(0.1),\n level: PropTypes.number.def(1),\n inlineIndent: PropTypes.number.def(24),\n openTransitionName: PropTypes.string,\n popupOffset: PropTypes.array,\n isOpen: PropTypes.bool,\n store: PropTypes.object,\n mode: PropTypes.oneOf(['horizontal', 'vertical', 'vertical-left', 'vertical-right', 'inline']).def('vertical'),\n manualRef: PropTypes.func.def(noop),\n builtinPlacements: PropTypes.object.def(function () {\n return {};\n }),\n itemIcon: PropTypes.any,\n expandIcon: PropTypes.any,\n subMenuKey: PropTypes.string\n },\n mixins: [BaseMixin],\n isSubMenu: true,\n data: function data() {\n var props = this.$props;\n var store = props.store;\n var eventKey = props.eventKey;\n var defaultActiveFirst = store.getState().defaultActiveFirst;\n var value = false;\n\n if (defaultActiveFirst) {\n value = defaultActiveFirst[eventKey];\n }\n\n updateDefaultActiveFirst(store, eventKey, value);\n return {\n // defaultActiveFirst: false,\n };\n },\n mounted: function mounted() {\n var _this = this;\n\n this.$nextTick(function () {\n _this.handleUpdated();\n });\n },\n updated: function updated() {\n var _this2 = this;\n\n this.$nextTick(function () {\n _this2.handleUpdated();\n });\n },\n beforeDestroy: function beforeDestroy() {\n var eventKey = this.eventKey;\n\n this.__emit('destroy', eventKey);\n\n /* istanbul ignore if */\n if (this.minWidthTimeout) {\n cancelAnimationTimeout(this.minWidthTimeout);\n this.minWidthTimeout = null;\n }\n\n /* istanbul ignore if */\n if (this.mouseenterTimeout) {\n cancelAnimationTimeout(this.mouseenterTimeout);\n this.mouseenterTimeout = null;\n }\n },\n\n methods: {\n handleUpdated: function handleUpdated() {\n var _this3 = this;\n\n var _$props = this.$props,\n mode = _$props.mode,\n parentMenu = _$props.parentMenu,\n manualRef = _$props.manualRef;\n\n // invoke customized ref to expose component to mixin\n\n if (manualRef) {\n manualRef(this);\n }\n\n if (mode !== 'horizontal' || !parentMenu.isRootMenu || !this.isOpen) {\n return;\n }\n\n this.minWidthTimeout = requestAnimationTimeout(function () {\n return _this3.adjustWidth();\n }, 0);\n },\n onKeyDown: function onKeyDown(e) {\n var keyCode = e.keyCode;\n var menu = this.menuInstance;\n var _$props2 = this.$props,\n store = _$props2.store,\n isOpen = _$props2.isOpen;\n\n\n if (keyCode === KeyCode.ENTER) {\n this.onTitleClick(e);\n updateDefaultActiveFirst(store, this.eventKey, true);\n return true;\n }\n\n if (keyCode === KeyCode.RIGHT) {\n if (isOpen) {\n menu.onKeyDown(e);\n } else {\n this.triggerOpenChange(true);\n // need to update current menu's defaultActiveFirst value\n updateDefaultActiveFirst(store, this.eventKey, true);\n }\n return true;\n }\n if (keyCode === KeyCode.LEFT) {\n var handled = void 0;\n if (isOpen) {\n handled = menu.onKeyDown(e);\n } else {\n return undefined;\n }\n if (!handled) {\n this.triggerOpenChange(false);\n handled = true;\n }\n return handled;\n }\n\n if (isOpen && (keyCode === KeyCode.UP || keyCode === KeyCode.DOWN)) {\n return menu.onKeyDown(e);\n }\n return undefined;\n },\n onPopupVisibleChange: function onPopupVisibleChange(visible) {\n this.triggerOpenChange(visible, visible ? 'mouseenter' : 'mouseleave');\n },\n onMouseEnter: function onMouseEnter(e) {\n var _$props3 = this.$props,\n key = _$props3.eventKey,\n store = _$props3.store;\n\n updateDefaultActiveFirst(store, key, false);\n this.__emit('mouseenter', {\n key: key,\n domEvent: e\n });\n },\n onMouseLeave: function onMouseLeave(e) {\n var eventKey = this.eventKey,\n parentMenu = this.parentMenu;\n\n parentMenu.subMenuInstance = this;\n // parentMenu.subMenuLeaveFn = () => {\n // // trigger mouseleave\n // this.__emit('mouseleave', {\n // key: eventKey,\n // domEvent: e,\n // })\n // }\n this.__emit('mouseleave', {\n key: eventKey,\n domEvent: e\n });\n // prevent popup menu and submenu gap\n // parentMenu.subMenuLeaveTimer = setTimeout(parentMenu.subMenuLeaveFn, 100)\n },\n onTitleMouseEnter: function onTitleMouseEnter(domEvent) {\n var key = this.$props.eventKey;\n // this.clearSubMenuTitleLeaveTimer()\n\n this.__emit('itemHover', {\n key: key,\n hover: true\n });\n this.__emit('titleMouseenter', {\n key: key,\n domEvent: domEvent\n });\n },\n onTitleMouseLeave: function onTitleMouseLeave(e) {\n var eventKey = this.eventKey,\n parentMenu = this.parentMenu;\n\n parentMenu.subMenuInstance = this;\n this.__emit('itemHover', {\n key: eventKey,\n hover: false\n });\n this.__emit('titleMouseleave', {\n key: eventKey,\n domEvent: e\n });\n },\n onTitleClick: function onTitleClick(e) {\n var _$props4 = this.$props,\n triggerSubMenuAction = _$props4.triggerSubMenuAction,\n eventKey = _$props4.eventKey,\n isOpen = _$props4.isOpen,\n store = _$props4.store;\n\n this.__emit('titleClick', {\n key: eventKey,\n domEvent: e\n });\n if (triggerSubMenuAction === 'hover') {\n return;\n }\n this.triggerOpenChange(!isOpen, 'click');\n updateDefaultActiveFirst(store, eventKey, false);\n },\n onSubMenuClick: function onSubMenuClick(info) {\n this.__emit('click', this.addKeyPath(info));\n },\n getPrefixCls: function getPrefixCls() {\n return this.$props.rootPrefixCls + '-submenu';\n },\n getActiveClassName: function getActiveClassName() {\n return this.getPrefixCls() + '-active';\n },\n getDisabledClassName: function getDisabledClassName() {\n return this.getPrefixCls() + '-disabled';\n },\n getSelectedClassName: function getSelectedClassName() {\n return this.getPrefixCls() + '-selected';\n },\n getOpenClassName: function getOpenClassName() {\n return this.$props.rootPrefixCls + '-submenu-open';\n },\n saveMenuInstance: function saveMenuInstance(c) {\n // children menu instance\n this.menuInstance = c;\n },\n addKeyPath: function addKeyPath(info) {\n return _extends({}, info, {\n keyPath: (info.keyPath || []).concat(this.$props.eventKey)\n });\n },\n\n\n // triggerOpenChange (open, type) {\n // const key = this.$props.eventKey\n // this.__emit('openChange', {\n // key,\n // item: this,\n // trigger: type,\n // open,\n // })\n // },\n triggerOpenChange: function triggerOpenChange(open, type) {\n var _this4 = this;\n\n var key = this.$props.eventKey;\n var openChange = function openChange() {\n _this4.__emit('openChange', {\n key: key,\n item: _this4,\n trigger: type,\n open: open\n });\n };\n if (type === 'mouseenter') {\n // make sure mouseenter happen after other menu item's mouseleave\n this.mouseenterTimeout = requestAnimationTimeout(function () {\n openChange();\n }, 0);\n } else {\n openChange();\n }\n },\n isChildrenSelected: function isChildrenSelected() {\n var ret = { find: false };\n loopMenuItemRecursively(this.$slots['default'], this.$props.selectedKeys, ret);\n return ret.find;\n },\n\n // isOpen () {\n // return this.$props.openKeys.indexOf(this.$props.eventKey) !== -1\n // },\n\n adjustWidth: function adjustWidth() {\n /* istanbul ignore if */\n if (!this.$refs.subMenuTitle || !this.menuInstance) {\n return;\n }\n var popupMenu = this.menuInstance.$el;\n if (popupMenu.offsetWidth >= this.$refs.subMenuTitle.offsetWidth) {\n return;\n }\n\n /* istanbul ignore next */\n popupMenu.style.minWidth = this.$refs.subMenuTitle.offsetWidth + 'px';\n },\n renderChildren: function renderChildren(children) {\n var h = this.$createElement;\n\n var props = this.$props;\n\n var _getListeners = getListeners(this),\n select = _getListeners.select,\n deselect = _getListeners.deselect,\n openChange = _getListeners.openChange;\n\n var subPopupMenuProps = {\n props: {\n mode: props.mode === 'horizontal' ? 'vertical' : props.mode,\n visible: props.isOpen,\n level: props.level + 1,\n inlineIndent: props.inlineIndent,\n focusable: false,\n selectedKeys: props.selectedKeys,\n eventKey: props.eventKey + '-menu-',\n openKeys: props.openKeys,\n openTransitionName: props.openTransitionName,\n openAnimation: props.openAnimation,\n subMenuOpenDelay: props.subMenuOpenDelay,\n parentMenu: this,\n subMenuCloseDelay: props.subMenuCloseDelay,\n forceSubMenuRender: props.forceSubMenuRender,\n triggerSubMenuAction: props.triggerSubMenuAction,\n builtinPlacements: props.builtinPlacements,\n defaultActiveFirst: props.store.getState().defaultActiveFirst[getMenuIdFromSubMenuEventKey(props.eventKey)],\n multiple: props.multiple,\n prefixCls: props.rootPrefixCls,\n manualRef: this.saveMenuInstance,\n itemIcon: getComponentFromProp(this, 'itemIcon'),\n expandIcon: getComponentFromProp(this, 'expandIcon'),\n children: children\n },\n on: {\n click: this.onSubMenuClick,\n select: select,\n deselect: deselect,\n openChange: openChange\n },\n id: this.internalMenuId\n };\n var baseProps = subPopupMenuProps.props;\n var haveRendered = this.haveRendered;\n this.haveRendered = true;\n\n this.haveOpened = this.haveOpened || baseProps.visible || baseProps.forceSubMenuRender;\n // never rendered not planning to, don't render\n if (!this.haveOpened) {\n return h('div');\n }\n\n // don't show transition on first rendering (no animation for opened menu)\n // show appear transition if it's not visible (not sure why)\n // show appear transition if it's not inline mode\n var transitionAppear = haveRendered || !baseProps.visible || !baseProps.mode === 'inline';\n subPopupMenuProps['class'] = ' ' + baseProps.prefixCls + '-sub';\n var animProps = { appear: transitionAppear, css: false };\n var transitionProps = {\n props: animProps,\n on: {}\n };\n if (baseProps.openTransitionName) {\n transitionProps = getTransitionProps(baseProps.openTransitionName, {\n appear: transitionAppear\n });\n } else if (_typeof(baseProps.openAnimation) === 'object') {\n animProps = _extends({}, animProps, baseProps.openAnimation.props || {});\n if (!transitionAppear) {\n animProps.appear = false;\n }\n } else if (typeof baseProps.openAnimation === 'string') {\n transitionProps = getTransitionProps(baseProps.openAnimation, { appear: transitionAppear });\n }\n\n if (_typeof(baseProps.openAnimation) === 'object' && baseProps.openAnimation.on) {\n transitionProps.on = baseProps.openAnimation.on;\n }\n return h(\n 'transition',\n transitionProps,\n [h(SubPopupMenu, _mergeJSXProps([{\n directives: [{\n name: 'show',\n value: props.isOpen\n }]\n }, subPopupMenuProps]))]\n );\n }\n },\n\n render: function render() {\n var _className, _attrs;\n\n var h = arguments[0];\n\n var props = this.$props;\n var rootPrefixCls = this.rootPrefixCls,\n parentMenu = this.parentMenu;\n\n var isOpen = props.isOpen;\n var prefixCls = this.getPrefixCls();\n var isInlineMode = props.mode === 'inline';\n var className = (_className = {}, _defineProperty(_className, prefixCls, true), _defineProperty(_className, prefixCls + '-' + props.mode, true), _defineProperty(_className, this.getOpenClassName(), isOpen), _defineProperty(_className, this.getActiveClassName(), props.active || isOpen && !isInlineMode), _defineProperty(_className, this.getDisabledClassName(), props.disabled), _defineProperty(_className, this.getSelectedClassName(), this.isChildrenSelected()), _className);\n\n if (!this.internalMenuId) {\n if (props.eventKey) {\n this.internalMenuId = props.eventKey + '$Menu';\n } else {\n this.internalMenuId = '$__$' + ++guid + '$Menu';\n }\n }\n\n var mouseEvents = {};\n var titleClickEvents = {};\n var titleMouseEvents = {};\n if (!props.disabled) {\n mouseEvents = {\n mouseleave: this.onMouseLeave,\n mouseenter: this.onMouseEnter\n };\n\n // only works in title, not outer li\n titleClickEvents = {\n click: this.onTitleClick\n };\n titleMouseEvents = {\n mouseenter: this.onTitleMouseEnter,\n mouseleave: this.onTitleMouseLeave\n };\n }\n\n var style = {};\n if (isInlineMode) {\n style.paddingLeft = props.inlineIndent * props.level + 'px';\n }\n var ariaOwns = {};\n // only set aria-owns when menu is open\n // otherwise it would be an invalid aria-owns value\n // since corresponding node cannot be found\n if (isOpen) {\n ariaOwns = {\n 'aria-owns': this.internalMenuId\n };\n }\n var titleProps = {\n attrs: _extends({\n 'aria-expanded': isOpen\n }, ariaOwns, {\n 'aria-haspopup': 'true',\n title: typeof props.title === 'string' ? props.title : undefined\n }),\n on: _extends({}, titleMouseEvents, titleClickEvents),\n style: style,\n 'class': prefixCls + '-title',\n ref: 'subMenuTitle'\n };\n // expand custom icon should NOT be displayed in menu with horizontal mode.\n var icon = null;\n if (props.mode !== 'horizontal') {\n icon = getComponentFromProp(this, 'expandIcon', props);\n }\n var title = h(\n 'div',\n titleProps,\n [getComponentFromProp(this, 'title'), icon || h('i', { 'class': prefixCls + '-arrow' })]\n );\n var children = this.renderChildren(filterEmpty(this.$slots['default']));\n\n var getPopupContainer = this.parentMenu.isRootMenu ? this.parentMenu.getPopupContainer : function (triggerNode) {\n return triggerNode.parentNode;\n };\n var popupPlacement = popupPlacementMap[props.mode];\n var popupAlign = props.popupOffset ? { offset: props.popupOffset } : {};\n var popupClassName = props.mode === 'inline' ? '' : props.popupClassName;\n var liProps = {\n on: _extends({}, omit(getListeners(this), ['click']), mouseEvents),\n 'class': className\n };\n\n return h(\n 'li',\n _mergeJSXProps([liProps, {\n attrs: { role: 'menuitem' }\n }]),\n [isInlineMode && title, isInlineMode && children, !isInlineMode && h(\n Trigger,\n {\n attrs: (_attrs = {\n prefixCls: prefixCls,\n popupClassName: prefixCls + '-popup ' + rootPrefixCls + '-' + parentMenu.theme + ' ' + (popupClassName || ''),\n getPopupContainer: getPopupContainer,\n builtinPlacements: placements\n }, _defineProperty(_attrs, 'builtinPlacements', _extends({}, placements, props.builtinPlacements)), _defineProperty(_attrs, 'popupPlacement', popupPlacement), _defineProperty(_attrs, 'popupVisible', isOpen), _defineProperty(_attrs, 'popupAlign', popupAlign), _defineProperty(_attrs, 'action', props.disabled ? [] : [props.triggerSubMenuAction]), _defineProperty(_attrs, 'mouseEnterDelay', props.subMenuOpenDelay), _defineProperty(_attrs, 'mouseLeaveDelay', props.subMenuCloseDelay), _defineProperty(_attrs, 'forceRender', props.forceSubMenuRender), _attrs),\n on: {\n 'popupVisibleChange': this.onPopupVisibleChange\n }\n },\n [h(\n 'template',\n { slot: 'popup' },\n [children]\n ), title]\n )]\n );\n }\n};\n\nvar connected = connect(function (_ref, _ref2) {\n var openKeys = _ref.openKeys,\n activeKey = _ref.activeKey,\n selectedKeys = _ref.selectedKeys;\n var eventKey = _ref2.eventKey,\n subMenuKey = _ref2.subMenuKey;\n return {\n isOpen: openKeys.indexOf(eventKey) > -1,\n active: activeKey[subMenuKey] === eventKey,\n selectedKeys: selectedKeys\n };\n})(SubMenu);\n\nconnected.isSubMenu = true;\n\nexport default connected;","export var PlaceMent = ['top', 'bottom'];","function enhancer(Component) {\n return {\n mixins: [Component],\n updated: function updated() {\n var _this = this;\n\n var now = Date.now();\n var updated = false;\n\n Object.keys(this.paths).forEach(function (key) {\n var path = _this.paths[key];\n\n if (!path) {\n return;\n }\n\n updated = true;\n var pathStyle = path.style;\n pathStyle.transitionDuration = '.3s, .3s, .3s, .06s';\n\n if (_this.prevTimeStamp && now - _this.prevTimeStamp < 100) {\n pathStyle.transitionDuration = '0s, 0s';\n }\n });\n if (updated) {\n this.prevTimeStamp = Date.now();\n }\n }\n };\n}\n\nexport default enhancer;","import PropTypes from '../../_util/vue-types';\n\nexport var defaultProps = {\n // className: '',\n percent: 0,\n prefixCls: 'rc-progress',\n strokeColor: '#2db7f5',\n strokeLinecap: 'round',\n strokeWidth: 1,\n // style: {},\n trailColor: '#D9D9D9',\n trailWidth: 1\n};\nvar mixedType = PropTypes.oneOfType([PropTypes.number, PropTypes.string]);\n\nexport var propTypes = {\n // className: PropTypes.string,\n percent: PropTypes.oneOfType([mixedType, PropTypes.arrayOf(mixedType)]),\n prefixCls: PropTypes.string,\n strokeColor: PropTypes.oneOfType([PropTypes.string, PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.object])), PropTypes.object]),\n strokeLinecap: PropTypes.oneOf(['butt', 'round', 'square']),\n strokeWidth: mixedType,\n // style: PropTypes.object,\n trailColor: PropTypes.string,\n trailWidth: mixedType\n};","import _mergeJSXProps from 'babel-helper-vue-jsx-merge-props';\nimport _objectWithoutProperties from 'babel-runtime/helpers/objectWithoutProperties';\nimport _extends from 'babel-runtime/helpers/extends';\nimport Vue from 'vue';\nimport ref from 'vue-ref';\nimport PropTypes from '../../_util/vue-types';\nimport { initDefaultProps } from '../../_util/props-util';\nimport enhancer from './enhancer';\nimport { propTypes, defaultProps } from './types';\n\nvar circlePropTypes = _extends({}, propTypes, {\n gapPosition: PropTypes.oneOf(['top', 'bottom', 'left', 'right']),\n gapDegree: PropTypes.oneOfType([PropTypes.number, PropTypes.string, PropTypes.bool])\n});\n\nvar circleDefaultProps = _extends({}, defaultProps, {\n gapPosition: 'top'\n});\n\nVue.use(ref, { name: 'ant-ref' });\n\nvar gradientSeed = 0;\n\nfunction stripPercentToNumber(percent) {\n return +percent.replace('%', '');\n}\n\nfunction toArray(symArray) {\n return Array.isArray(symArray) ? symArray : [symArray];\n}\n\nfunction getPathStyles(offset, percent, strokeColor, strokeWidth) {\n var gapDegree = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 0;\n var gapPosition = arguments[5];\n\n var radius = 50 - strokeWidth / 2;\n var beginPositionX = 0;\n var beginPositionY = -radius;\n var endPositionX = 0;\n var endPositionY = -2 * radius;\n switch (gapPosition) {\n case 'left':\n beginPositionX = -radius;\n beginPositionY = 0;\n endPositionX = 2 * radius;\n endPositionY = 0;\n break;\n case 'right':\n beginPositionX = radius;\n beginPositionY = 0;\n endPositionX = -2 * radius;\n endPositionY = 0;\n break;\n case 'bottom':\n beginPositionY = radius;\n endPositionY = 2 * radius;\n break;\n default:\n }\n var pathString = 'M 50,50 m ' + beginPositionX + ',' + beginPositionY + '\\n a ' + radius + ',' + radius + ' 0 1 1 ' + endPositionX + ',' + -endPositionY + '\\n a ' + radius + ',' + radius + ' 0 1 1 ' + -endPositionX + ',' + endPositionY;\n var len = Math.PI * 2 * radius;\n\n var pathStyle = {\n stroke: strokeColor,\n strokeDasharray: percent / 100 * (len - gapDegree) + 'px ' + len + 'px',\n strokeDashoffset: '-' + (gapDegree / 2 + offset / 100 * (len - gapDegree)) + 'px',\n transition: 'stroke-dashoffset .3s ease 0s, stroke-dasharray .3s ease 0s, stroke .3s, stroke-width .06s ease .3s, opacity .3s ease 0s' // eslint-disable-line\n };\n\n return {\n pathString: pathString,\n pathStyle: pathStyle\n };\n}\n\nvar Circle = {\n props: initDefaultProps(circlePropTypes, circleDefaultProps),\n created: function created() {\n this.paths = {};\n this.gradientId = gradientSeed;\n gradientSeed += 1;\n },\n\n methods: {\n getStokeList: function getStokeList() {\n var _this = this;\n\n var h = this.$createElement;\n var _$props = this.$props,\n prefixCls = _$props.prefixCls,\n percent = _$props.percent,\n strokeColor = _$props.strokeColor,\n strokeWidth = _$props.strokeWidth,\n strokeLinecap = _$props.strokeLinecap,\n gapDegree = _$props.gapDegree,\n gapPosition = _$props.gapPosition;\n\n var percentList = toArray(percent);\n var strokeColorList = toArray(strokeColor);\n\n var stackPtg = 0;\n return percentList.map(function (ptg, index) {\n var color = strokeColorList[index] || strokeColorList[strokeColorList.length - 1];\n var stroke = Object.prototype.toString.call(color) === '[object Object]' ? 'url(#' + prefixCls + '-gradient-' + _this.gradientId + ')' : '';\n\n var _getPathStyles = getPathStyles(stackPtg, ptg, color, strokeWidth, gapDegree, gapPosition),\n pathString = _getPathStyles.pathString,\n pathStyle = _getPathStyles.pathStyle;\n\n stackPtg += ptg;\n\n var pathProps = {\n key: index,\n attrs: {\n d: pathString,\n stroke: stroke,\n 'stroke-linecap': strokeLinecap,\n 'stroke-width': strokeWidth,\n opacity: ptg === 0 ? 0 : 1,\n 'fill-opacity': '0'\n },\n 'class': prefixCls + '-circle-path',\n style: pathStyle,\n directives: [{\n name: 'ant-ref',\n value: function value(c) {\n _this.paths[index] = c;\n }\n }]\n };\n return h('path', pathProps);\n });\n }\n },\n\n render: function render() {\n var h = arguments[0];\n\n var _$props2 = this.$props,\n prefixCls = _$props2.prefixCls,\n strokeWidth = _$props2.strokeWidth,\n trailWidth = _$props2.trailWidth,\n gapDegree = _$props2.gapDegree,\n gapPosition = _$props2.gapPosition,\n trailColor = _$props2.trailColor,\n strokeLinecap = _$props2.strokeLinecap,\n strokeColor = _$props2.strokeColor,\n restProps = _objectWithoutProperties(_$props2, ['prefixCls', 'strokeWidth', 'trailWidth', 'gapDegree', 'gapPosition', 'trailColor', 'strokeLinecap', 'strokeColor']);\n\n var _getPathStyles2 = getPathStyles(0, 100, trailColor, strokeWidth, gapDegree, gapPosition),\n pathString = _getPathStyles2.pathString,\n pathStyle = _getPathStyles2.pathStyle;\n\n delete restProps.percent;\n var strokeColorList = toArray(strokeColor);\n var gradient = strokeColorList.find(function (color) {\n return Object.prototype.toString.call(color) === '[object Object]';\n });\n var pathFirst = {\n attrs: {\n d: pathString,\n stroke: trailColor,\n 'stroke-linecap': strokeLinecap,\n 'stroke-width': trailWidth || strokeWidth,\n 'fill-opacity': '0'\n },\n 'class': prefixCls + '-circle-trail',\n style: pathStyle\n };\n\n return h(\n 'svg',\n _mergeJSXProps([{ 'class': prefixCls + '-circle', attrs: { viewBox: '0 0 100 100' }\n }, restProps]),\n [gradient && h('defs', [h(\n 'linearGradient',\n {\n attrs: {\n id: prefixCls + '-gradient-' + this.gradientId,\n x1: '100%',\n y1: '0%',\n x2: '0%',\n y2: '0%'\n }\n },\n [Object.keys(gradient).sort(function (a, b) {\n return stripPercentToNumber(a) - stripPercentToNumber(b);\n }).map(function (key, index) {\n return h('stop', { key: index, attrs: { offset: key, 'stop-color': gradient[key] }\n });\n })]\n )]), h('path', pathFirst), this.getStokeList().reverse()]\n );\n }\n};\n\nexport default enhancer(Circle);","import _extends from 'babel-runtime/helpers/extends';\nimport PropTypes from '../_util/vue-types';\nimport { Provider, create } from '../_util/store';\nimport { default as SubPopupMenu, getActiveKey } from './SubPopupMenu';\nimport BaseMixin from '../_util/BaseMixin';\nimport hasProp, { getOptionProps, getComponentFromProp, filterEmpty, getListeners } from '../_util/props-util';\nimport commonPropsType from './commonPropsType';\n\nvar Menu = {\n name: 'Menu',\n props: _extends({}, commonPropsType, {\n selectable: PropTypes.bool.def(true)\n }),\n mixins: [BaseMixin],\n\n data: function data() {\n var props = getOptionProps(this);\n var selectedKeys = props.defaultSelectedKeys;\n var openKeys = props.defaultOpenKeys;\n if ('selectedKeys' in props) {\n selectedKeys = props.selectedKeys || [];\n }\n if ('openKeys' in props) {\n openKeys = props.openKeys || [];\n }\n\n this.store = create({\n selectedKeys: selectedKeys,\n openKeys: openKeys,\n activeKey: {\n '0-menu-': getActiveKey(_extends({}, props, { children: this.$slots['default'] || [] }), props.activeKey)\n }\n });\n\n // this.isRootMenu = true // 声明在props上\n return {};\n },\n mounted: function mounted() {\n this.updateMiniStore();\n },\n updated: function updated() {\n this.updateMiniStore();\n },\n\n methods: {\n onSelect: function onSelect(selectInfo) {\n var props = this.$props;\n if (props.selectable) {\n // root menu\n var selectedKeys = this.store.getState().selectedKeys;\n var selectedKey = selectInfo.key;\n if (props.multiple) {\n selectedKeys = selectedKeys.concat([selectedKey]);\n } else {\n selectedKeys = [selectedKey];\n }\n if (!hasProp(this, 'selectedKeys')) {\n this.store.setState({\n selectedKeys: selectedKeys\n });\n }\n this.__emit('select', _extends({}, selectInfo, {\n selectedKeys: selectedKeys\n }));\n }\n },\n onClick: function onClick(e) {\n this.__emit('click', e);\n },\n\n // onKeyDown needs to be exposed as a instance method\n // e.g., in rc-select, we need to navigate menu item while\n // current active item is rc-select input box rather than the menu itself\n onKeyDown: function onKeyDown(e, callback) {\n this.$refs.innerMenu.getWrappedInstance().onKeyDown(e, callback);\n },\n onOpenChange: function onOpenChange(event) {\n var openKeys = this.store.getState().openKeys.concat();\n var changed = false;\n var processSingle = function processSingle(e) {\n var oneChanged = false;\n if (e.open) {\n oneChanged = openKeys.indexOf(e.key) === -1;\n if (oneChanged) {\n openKeys.push(e.key);\n }\n } else {\n var index = openKeys.indexOf(e.key);\n oneChanged = index !== -1;\n if (oneChanged) {\n openKeys.splice(index, 1);\n }\n }\n changed = changed || oneChanged;\n };\n if (Array.isArray(event)) {\n // batch change call\n event.forEach(processSingle);\n } else {\n processSingle(event);\n }\n if (changed) {\n if (!hasProp(this, 'openKeys')) {\n this.store.setState({ openKeys: openKeys });\n }\n this.__emit('openChange', openKeys);\n }\n },\n onDeselect: function onDeselect(selectInfo) {\n var props = this.$props;\n if (props.selectable) {\n var selectedKeys = this.store.getState().selectedKeys.concat();\n var selectedKey = selectInfo.key;\n var index = selectedKeys.indexOf(selectedKey);\n if (index !== -1) {\n selectedKeys.splice(index, 1);\n }\n if (!hasProp(this, 'selectedKeys')) {\n this.store.setState({\n selectedKeys: selectedKeys\n });\n }\n this.__emit('deselect', _extends({}, selectInfo, {\n selectedKeys: selectedKeys\n }));\n }\n },\n getOpenTransitionName: function getOpenTransitionName() {\n var props = this.$props;\n var transitionName = props.openTransitionName;\n var animationName = props.openAnimation;\n if (!transitionName && typeof animationName === 'string') {\n transitionName = props.prefixCls + '-open-' + animationName;\n }\n return transitionName;\n },\n updateMiniStore: function updateMiniStore() {\n var props = getOptionProps(this);\n if ('selectedKeys' in props) {\n this.store.setState({\n selectedKeys: props.selectedKeys || []\n });\n }\n if ('openKeys' in props) {\n this.store.setState({\n openKeys: props.openKeys || []\n });\n }\n }\n },\n\n render: function render() {\n var h = arguments[0];\n\n var props = getOptionProps(this);\n var subPopupMenuProps = {\n props: _extends({}, props, {\n itemIcon: getComponentFromProp(this, 'itemIcon', props),\n expandIcon: getComponentFromProp(this, 'expandIcon', props),\n overflowedIndicator: getComponentFromProp(this, 'overflowedIndicator', props) || h('span', ['\\xB7\\xB7\\xB7']),\n openTransitionName: this.getOpenTransitionName(),\n parentMenu: this,\n children: filterEmpty(this.$slots['default'] || [])\n }),\n 'class': props.prefixCls + '-root',\n on: _extends({}, getListeners(this), {\n click: this.onClick,\n openChange: this.onOpenChange,\n deselect: this.onDeselect,\n select: this.onSelect\n }),\n ref: 'innerMenu'\n };\n return h(\n Provider,\n {\n attrs: { store: this.store }\n },\n [h(SubPopupMenu, subPopupMenuProps)]\n );\n }\n};\nexport default Menu;","// based on rc-menu 7.5.5\nimport Menu from './Menu';\nimport SubMenu from './SubMenu';\nimport MenuItem, { menuItemProps } from './MenuItem';\nimport MenuItemGroup from './MenuItemGroup';\nimport Divider from './Divider';\n\nexport { SubMenu, MenuItem as Item, menuItemProps as itemProps, MenuItem, MenuItemGroup, MenuItemGroup as ItemGroup, Divider };\n\nexport default Menu;","import PropTypes from '../../_util/vue-types';\n\nexport var ITouchProps = {\n disabled: PropTypes.bool,\n activeClassName: PropTypes.string,\n activeStyle: PropTypes.any\n // onTouchStart: PropTypes.func,\n // onTouchEnd: PropTypes.func,\n // onTouchCancel: PropTypes.func,\n // onMouseDown: PropTypes.func,\n // onMouseUp: PropTypes.func,\n // onMouseLeave: PropTypes.func,\n};","import _extends from 'babel-runtime/helpers/extends';\nimport { initDefaultProps } from '../../_util/props-util';\nimport { cloneElement } from '../../_util/vnode';\nimport warning from '../../_util/warning';\nimport BaseMixin from '../../_util/BaseMixin';\nimport { ITouchProps } from './PropTypes';\n\nexport default {\n name: 'TouchFeedback',\n mixins: [BaseMixin],\n props: initDefaultProps(ITouchProps, {\n disabled: false\n }),\n data: function data() {\n return {\n active: false\n };\n },\n mounted: function mounted() {\n var _this = this;\n\n this.$nextTick(function () {\n if (_this.disabled && _this.active) {\n _this.setState({\n active: false\n });\n }\n });\n },\n\n methods: {\n triggerEvent: function triggerEvent(type, isActive, ev) {\n // 暂时仅有input-number用到,事件直接到挂载到Touchable上,不需要像antd那样从子组件触发\n this.$emit(type, ev);\n if (isActive !== this.active) {\n this.setState({\n active: isActive\n });\n }\n },\n onTouchStart: function onTouchStart(e) {\n this.triggerEvent('touchstart', true, e);\n },\n onTouchMove: function onTouchMove(e) {\n this.triggerEvent('touchmove', false, e);\n },\n onTouchEnd: function onTouchEnd(e) {\n this.triggerEvent('touchend', false, e);\n },\n onTouchCancel: function onTouchCancel(e) {\n this.triggerEvent('touchcancel', false, e);\n },\n onMouseDown: function onMouseDown(e) {\n // pc simulate mobile\n this.triggerEvent('mousedown', true, e);\n },\n onMouseUp: function onMouseUp(e) {\n this.triggerEvent('mouseup', false, e);\n },\n onMouseLeave: function onMouseLeave(e) {\n this.triggerEvent('mouseleave', false, e);\n }\n },\n render: function render() {\n var _$props = this.$props,\n disabled = _$props.disabled,\n _$props$activeClassNa = _$props.activeClassName,\n activeClassName = _$props$activeClassNa === undefined ? '' : _$props$activeClassNa,\n _$props$activeStyle = _$props.activeStyle,\n activeStyle = _$props$activeStyle === undefined ? {} : _$props$activeStyle;\n\n\n var child = this.$slots['default'];\n if (child.length !== 1) {\n warning(false, 'm-feedback组件只能包含一个子元素');\n return null;\n }\n var childProps = {\n on: disabled ? {} : {\n touchstart: this.onTouchStart,\n touchmove: this.onTouchMove,\n touchend: this.onTouchEnd,\n touchcancel: this.onTouchCancel,\n mousedown: this.onMouseDown,\n mouseup: this.onMouseUp,\n mouseleave: this.onMouseLeave\n }\n };\n\n if (!disabled && this.active) {\n childProps = _extends({}, childProps, {\n style: activeStyle,\n 'class': activeClassName\n });\n }\n\n return cloneElement(child, childProps);\n }\n};","// based on 2.0.0\nimport TouchFeedback from './src/TouchFeedback';\nexport default TouchFeedback;","import _defineProperty from 'babel-runtime/helpers/defineProperty';\nimport _mergeJSXProps from 'babel-helper-vue-jsx-merge-props';\nimport _toConsumableArray from 'babel-runtime/helpers/toConsumableArray';\nimport PropTypes from '../_util/vue-types';\nimport BaseMixin from '../_util/BaseMixin';\nimport { hasProp, getComponentFromProp, getOptionProps } from '../_util/props-util';\nimport Pager from './Pager';\nimport Options from './Options';\nimport LOCALE from './locale/zh_CN';\nimport KEYCODE from './KeyCode';\n\nfunction noop() {}\n\n// 是否是正整数\nfunction isInteger(value) {\n return typeof value === 'number' && isFinite(value) && Math.floor(value) === value;\n}\n\nfunction defaultItemRender(page, type, element) {\n return element;\n}\n\nfunction calculatePage(p, state, props) {\n var pageSize = p;\n if (typeof pageSize === 'undefined') {\n pageSize = state.statePageSize;\n }\n return Math.floor((props.total - 1) / pageSize) + 1;\n}\n\nexport default {\n name: 'Pagination',\n mixins: [BaseMixin],\n model: {\n prop: 'current',\n event: 'change.current'\n },\n props: {\n disabled: PropTypes.bool,\n prefixCls: PropTypes.string.def('rc-pagination'),\n selectPrefixCls: PropTypes.string.def('rc-select'),\n current: PropTypes.number,\n defaultCurrent: PropTypes.number.def(1),\n total: PropTypes.number.def(0),\n pageSize: PropTypes.number,\n defaultPageSize: PropTypes.number.def(10),\n hideOnSinglePage: PropTypes.bool.def(false),\n showSizeChanger: PropTypes.bool.def(false),\n showLessItems: PropTypes.bool.def(false),\n // showSizeChange: PropTypes.func.def(noop),\n selectComponentClass: PropTypes.any,\n showPrevNextJumpers: PropTypes.bool.def(true),\n showQuickJumper: PropTypes.oneOfType([PropTypes.bool, PropTypes.object]).def(false),\n showTitle: PropTypes.bool.def(true),\n pageSizeOptions: PropTypes.arrayOf(PropTypes.string),\n buildOptionText: PropTypes.func,\n showTotal: PropTypes.func,\n simple: PropTypes.bool,\n locale: PropTypes.object.def(LOCALE),\n itemRender: PropTypes.func.def(defaultItemRender),\n prevIcon: PropTypes.any,\n nextIcon: PropTypes.any,\n jumpPrevIcon: PropTypes.any,\n jumpNextIcon: PropTypes.any\n },\n data: function data() {\n var props = getOptionProps(this);\n var hasOnChange = this.onChange !== noop;\n var hasCurrent = 'current' in props;\n if (hasCurrent && !hasOnChange) {\n console.warn('Warning: You provided a `current` prop to a Pagination component without an `onChange` handler. This will render a read-only component.'); // eslint-disable-line\n }\n var current = this.defaultCurrent;\n if ('current' in props) {\n current = this.current;\n }\n\n var pageSize = this.defaultPageSize;\n if ('pageSize' in props) {\n pageSize = this.pageSize;\n }\n\n current = Math.min(current, calculatePage(pageSize, undefined, props));\n\n return {\n stateCurrent: current,\n stateCurrentInputValue: current,\n statePageSize: pageSize\n };\n },\n\n watch: {\n current: function current(val) {\n this.setState({\n stateCurrent: val,\n stateCurrentInputValue: val\n });\n },\n pageSize: function pageSize(val) {\n var newState = {};\n var current = this.stateCurrent;\n var newCurrent = calculatePage(val, this.$data, this.$props);\n current = current > newCurrent ? newCurrent : current;\n if (!hasProp(this, 'current')) {\n newState.stateCurrent = current;\n newState.stateCurrentInputValue = current;\n }\n newState.statePageSize = val;\n this.setState(newState);\n },\n stateCurrent: function stateCurrent(val, oldValue) {\n var _this = this;\n\n // When current page change, fix focused style of prev item\n // A hacky solution of https://github.com/ant-design/ant-design/issues/8948\n this.$nextTick(function () {\n if (_this.$refs.paginationNode) {\n var lastCurrentNode = _this.$refs.paginationNode.querySelector('.' + _this.prefixCls + '-item-' + oldValue);\n if (lastCurrentNode && document.activeElement === lastCurrentNode) {\n lastCurrentNode.blur();\n }\n }\n });\n },\n total: function total() {\n var newState = {};\n var newCurrent = calculatePage(this.pageSize, this.$data, this.$props);\n if (hasProp(this, 'current')) {\n var current = Math.min(this.current, newCurrent);\n newState.stateCurrent = current;\n newState.stateCurrentInputValue = current;\n } else {\n var _current = this.stateCurrent;\n if (_current === 0 && newCurrent > 0) {\n _current = 1;\n } else {\n _current = Math.min(this.stateCurrent, newCurrent);\n }\n newState.stateCurrent = _current;\n }\n this.setState(newState);\n }\n },\n methods: {\n getJumpPrevPage: function getJumpPrevPage() {\n return Math.max(1, this.stateCurrent - (this.showLessItems ? 3 : 5));\n },\n getJumpNextPage: function getJumpNextPage() {\n return Math.min(calculatePage(undefined, this.$data, this.$props), this.stateCurrent + (this.showLessItems ? 3 : 5));\n },\n getItemIcon: function getItemIcon(icon) {\n var h = this.$createElement;\n var prefixCls = this.$props.prefixCls;\n\n var iconNode = getComponentFromProp(this, icon, this.$props) || h('a', { 'class': prefixCls + '-item-link' });\n return iconNode;\n },\n getValidValue: function getValidValue(e) {\n var inputValue = e.target.value;\n var allPages = calculatePage(undefined, this.$data, this.$props);\n var stateCurrentInputValue = this.$data.stateCurrentInputValue;\n\n var value = void 0;\n if (inputValue === '') {\n value = inputValue;\n } else if (isNaN(Number(inputValue))) {\n value = stateCurrentInputValue;\n } else if (inputValue >= allPages) {\n value = allPages;\n } else {\n value = Number(inputValue);\n }\n return value;\n },\n isValid: function isValid(page) {\n return isInteger(page) && page !== this.stateCurrent;\n },\n shouldDisplayQuickJumper: function shouldDisplayQuickJumper() {\n var _$props = this.$props,\n showQuickJumper = _$props.showQuickJumper,\n pageSize = _$props.pageSize,\n total = _$props.total;\n\n if (total <= pageSize) {\n return false;\n }\n return showQuickJumper;\n },\n\n // calculatePage (p) {\n // let pageSize = p\n // if (typeof pageSize === 'undefined') {\n // pageSize = this.statePageSize\n // }\n // return Math.floor((this.total - 1) / pageSize) + 1\n // },\n handleKeyDown: function handleKeyDown(event) {\n if (event.keyCode === KEYCODE.ARROW_UP || event.keyCode === KEYCODE.ARROW_DOWN) {\n event.preventDefault();\n }\n },\n handleKeyUp: function handleKeyUp(e) {\n if (e.isComposing || e.target.composing) return;\n var value = this.getValidValue(e);\n var stateCurrentInputValue = this.stateCurrentInputValue;\n\n if (value !== stateCurrentInputValue) {\n this.setState({\n stateCurrentInputValue: value\n });\n }\n\n if (e.keyCode === KEYCODE.ENTER) {\n this.handleChange(value);\n } else if (e.keyCode === KEYCODE.ARROW_UP) {\n this.handleChange(value - 1);\n } else if (e.keyCode === KEYCODE.ARROW_DOWN) {\n this.handleChange(value + 1);\n }\n },\n changePageSize: function changePageSize(size) {\n var current = this.stateCurrent;\n var preCurrent = current;\n var newCurrent = calculatePage(size, this.$data, this.$props);\n current = current > newCurrent ? newCurrent : current;\n // fix the issue:\n // Once 'total' is 0, 'current' in 'onShowSizeChange' is 0, which is not correct.\n if (newCurrent === 0) {\n current = this.stateCurrent;\n }\n if (typeof size === 'number') {\n if (!hasProp(this, 'pageSize')) {\n this.setState({\n statePageSize: size\n });\n }\n if (!hasProp(this, 'current')) {\n this.setState({\n stateCurrent: current,\n stateCurrentInputValue: current\n });\n }\n }\n this.$emit('update:pageSize', size);\n this.$emit('showSizeChange', current, size);\n if (current !== preCurrent) {\n this.$emit('change.current', current, size);\n }\n },\n handleChange: function handleChange(p) {\n var disabled = this.$props.disabled;\n\n var page = p;\n if (this.isValid(page) && !disabled) {\n var currentPage = calculatePage(undefined, this.$data, this.$props);\n if (page > currentPage) {\n page = currentPage;\n } else if (page < 1) {\n page = 1;\n }\n if (!hasProp(this, 'current')) {\n this.setState({\n stateCurrent: page,\n stateCurrentInputValue: page\n });\n }\n // this.$emit('input', page)\n this.$emit('change.current', page, this.statePageSize);\n this.$emit('change', page, this.statePageSize);\n return page;\n }\n return this.stateCurrent;\n },\n prev: function prev() {\n if (this.hasPrev()) {\n this.handleChange(this.stateCurrent - 1);\n }\n },\n next: function next() {\n if (this.hasNext()) {\n this.handleChange(this.stateCurrent + 1);\n }\n },\n jumpPrev: function jumpPrev() {\n this.handleChange(this.getJumpPrevPage());\n },\n jumpNext: function jumpNext() {\n this.handleChange(this.getJumpNextPage());\n },\n hasPrev: function hasPrev() {\n return this.stateCurrent > 1;\n },\n hasNext: function hasNext() {\n return this.stateCurrent < calculatePage(undefined, this.$data, this.$props);\n },\n runIfEnter: function runIfEnter(event, callback) {\n if (event.key === 'Enter' || event.charCode === 13) {\n for (var _len = arguments.length, restParams = Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {\n restParams[_key - 2] = arguments[_key];\n }\n\n callback.apply(undefined, _toConsumableArray(restParams));\n }\n },\n runIfEnterPrev: function runIfEnterPrev(event) {\n this.runIfEnter(event, this.prev);\n },\n runIfEnterNext: function runIfEnterNext(event) {\n this.runIfEnter(event, this.next);\n },\n runIfEnterJumpPrev: function runIfEnterJumpPrev(event) {\n this.runIfEnter(event, this.jumpPrev);\n },\n runIfEnterJumpNext: function runIfEnterJumpNext(event) {\n this.runIfEnter(event, this.jumpNext);\n },\n handleGoTO: function handleGoTO(event) {\n if (event.keyCode === KEYCODE.ENTER || event.type === 'click') {\n this.handleChange(this.stateCurrentInputValue);\n }\n }\n },\n render: function render() {\n var _ref;\n\n var h = arguments[0];\n var _$props2 = this.$props,\n prefixCls = _$props2.prefixCls,\n disabled = _$props2.disabled;\n\n // When hideOnSinglePage is true and there is only 1 page, hide the pager\n\n if (this.hideOnSinglePage === true && this.total <= this.statePageSize) {\n return null;\n }\n var props = this.$props;\n var locale = this.locale;\n\n var allPages = calculatePage(undefined, this.$data, this.$props);\n var pagerList = [];\n var jumpPrev = null;\n var jumpNext = null;\n var firstPager = null;\n var lastPager = null;\n var gotoButton = null;\n var goButton = this.showQuickJumper && this.showQuickJumper.goButton;\n var pageBufferSize = this.showLessItems ? 1 : 2;\n var stateCurrent = this.stateCurrent,\n statePageSize = this.statePageSize;\n\n var prevPage = stateCurrent - 1 > 0 ? stateCurrent - 1 : 0;\n var nextPage = stateCurrent + 1 < allPages ? stateCurrent + 1 : allPages;\n\n if (this.simple) {\n if (goButton) {\n if (typeof goButton === 'boolean') {\n gotoButton = h(\n 'button',\n {\n attrs: { type: 'button' },\n on: {\n 'click': this.handleGoTO,\n 'keyup': this.handleGoTO\n }\n },\n [locale.jump_to_confirm]\n );\n } else {\n gotoButton = h(\n 'span',\n {\n on: {\n 'click': this.handleGoTO,\n 'keyup': this.handleGoTO\n }\n },\n [goButton]\n );\n }\n gotoButton = h(\n 'li',\n {\n attrs: {\n title: this.showTitle ? '' + locale.jump_to + this.stateCurrent + '/' + allPages : null\n },\n 'class': prefixCls + '-simple-pager'\n },\n [gotoButton]\n );\n }\n var hasPrev = this.hasPrev();\n var hasNext = this.hasNext();\n return h(\n 'ul',\n { 'class': prefixCls + ' ' + prefixCls + '-simple' },\n [h(\n 'li',\n {\n attrs: {\n title: this.showTitle ? locale.prev_page : null,\n\n tabIndex: hasPrev ? 0 : null,\n\n 'aria-disabled': !this.hasPrev()\n },\n on: {\n 'click': this.prev,\n 'keypress': this.runIfEnterPrev\n },\n\n 'class': (hasPrev ? '' : prefixCls + '-disabled') + ' ' + prefixCls + '-prev' },\n [this.itemRender(prevPage, 'prev', this.getItemIcon('prevIcon'))]\n ), h(\n 'li',\n {\n attrs: {\n title: this.showTitle ? stateCurrent + '/' + allPages : null\n },\n 'class': prefixCls + '-simple-pager'\n },\n [h('input', _mergeJSXProps([{\n attrs: {\n type: 'text',\n\n size: '3'\n },\n domProps: {\n 'value': this.stateCurrentInputValue\n },\n on: {\n 'keydown': this.handleKeyDown,\n 'keyup': this.handleKeyUp,\n 'input': this.handleKeyUp\n }\n }, {\n directives: [{\n name: 'ant-input'\n }]\n }])), h(\n 'span',\n { 'class': prefixCls + '-slash' },\n ['\\uFF0F']\n ), allPages]\n ), h(\n 'li',\n {\n attrs: {\n title: this.showTitle ? locale.next_page : null,\n\n tabIndex: this.hasNext ? 0 : null,\n\n 'aria-disabled': !this.hasNext()\n },\n on: {\n 'click': this.next,\n 'keypress': this.runIfEnterNext\n },\n\n 'class': (hasNext ? '' : prefixCls + '-disabled') + ' ' + prefixCls + '-next' },\n [this.itemRender(nextPage, 'next', this.getItemIcon('nextIcon'))]\n ), gotoButton]\n );\n }\n if (allPages <= 5 + pageBufferSize * 2) {\n var pagerProps = {\n props: {\n locale: locale,\n rootPrefixCls: prefixCls,\n showTitle: props.showTitle,\n itemRender: props.itemRender\n },\n on: {\n click: this.handleChange,\n keypress: this.runIfEnter\n }\n };\n if (!allPages) {\n pagerList.push(h(Pager, _mergeJSXProps([pagerProps, { key: 'noPager', attrs: { page: allPages },\n 'class': prefixCls + '-disabled' }])));\n }\n for (var i = 1; i <= allPages; i++) {\n var active = stateCurrent === i;\n pagerList.push(h(Pager, _mergeJSXProps([pagerProps, { key: i, attrs: { page: i, active: active }\n }])));\n }\n } else {\n var prevItemTitle = this.showLessItems ? locale.prev_3 : locale.prev_5;\n var nextItemTitle = this.showLessItems ? locale.next_3 : locale.next_5;\n if (this.showPrevNextJumpers) {\n var jumpPrevClassString = prefixCls + '-jump-prev';\n if (props.jumpPrevIcon) {\n jumpPrevClassString += ' ' + prefixCls + '-jump-prev-custom-icon';\n }\n jumpPrev = h(\n 'li',\n {\n attrs: {\n title: this.showTitle ? prevItemTitle : null,\n\n tabIndex: '0'\n },\n key: 'prev',\n on: {\n 'click': this.jumpPrev,\n 'keypress': this.runIfEnterJumpPrev\n },\n\n 'class': jumpPrevClassString\n },\n [this.itemRender(this.getJumpPrevPage(), 'jump-prev', this.getItemIcon('jumpPrevIcon'))]\n );\n var jumpNextClassString = prefixCls + '-jump-next';\n if (props.jumpNextIcon) {\n jumpNextClassString += ' ' + prefixCls + '-jump-next-custom-icon';\n }\n jumpNext = h(\n 'li',\n {\n attrs: {\n title: this.showTitle ? nextItemTitle : null,\n\n tabIndex: '0'\n },\n key: 'next', on: {\n 'click': this.jumpNext,\n 'keypress': this.runIfEnterJumpNext\n },\n\n 'class': jumpNextClassString\n },\n [this.itemRender(this.getJumpNextPage(), 'jump-next', this.getItemIcon('jumpNextIcon'))]\n );\n }\n\n lastPager = h(Pager, {\n attrs: {\n locale: locale,\n last: true,\n rootPrefixCls: prefixCls,\n\n page: allPages,\n active: false,\n showTitle: this.showTitle,\n itemRender: this.itemRender\n },\n on: {\n 'click': this.handleChange,\n 'keypress': this.runIfEnter\n },\n\n key: allPages });\n firstPager = h(Pager, {\n attrs: {\n locale: locale,\n rootPrefixCls: prefixCls,\n\n page: 1,\n active: false,\n showTitle: this.showTitle,\n itemRender: this.itemRender\n },\n on: {\n 'click': this.handleChange,\n 'keypress': this.runIfEnter\n },\n\n key: 1 });\n\n var left = Math.max(1, stateCurrent - pageBufferSize);\n var right = Math.min(stateCurrent + pageBufferSize, allPages);\n\n if (stateCurrent - 1 <= pageBufferSize) {\n right = 1 + pageBufferSize * 2;\n }\n\n if (allPages - stateCurrent <= pageBufferSize) {\n left = allPages - pageBufferSize * 2;\n }\n\n for (var _i = left; _i <= right; _i++) {\n var _active = stateCurrent === _i;\n pagerList.push(h(Pager, {\n attrs: {\n locale: locale,\n rootPrefixCls: prefixCls,\n\n page: _i,\n active: _active,\n showTitle: this.showTitle,\n itemRender: this.itemRender\n },\n on: {\n 'click': this.handleChange,\n 'keypress': this.runIfEnter\n },\n\n key: _i }));\n }\n\n if (stateCurrent - 1 >= pageBufferSize * 2 && stateCurrent !== 1 + 2) {\n pagerList[0] = h(Pager, {\n attrs: {\n locale: locale,\n rootPrefixCls: prefixCls,\n\n page: left,\n\n active: false,\n showTitle: this.showTitle,\n itemRender: this.itemRender\n },\n on: {\n 'click': this.handleChange,\n 'keypress': this.runIfEnter\n },\n\n key: left, 'class': prefixCls + '-item-after-jump-prev' });\n pagerList.unshift(jumpPrev);\n }\n if (allPages - stateCurrent >= pageBufferSize * 2 && stateCurrent !== allPages - 2) {\n pagerList[pagerList.length - 1] = h(Pager, {\n attrs: {\n locale: locale,\n rootPrefixCls: prefixCls,\n\n page: right,\n\n active: false,\n showTitle: this.showTitle,\n itemRender: this.itemRender\n },\n on: {\n 'click': this.handleChange,\n 'keypress': this.runIfEnter\n },\n\n key: right, 'class': prefixCls + '-item-before-jump-next' });\n pagerList.push(jumpNext);\n }\n\n if (left !== 1) {\n pagerList.unshift(firstPager);\n }\n if (right !== allPages) {\n pagerList.push(lastPager);\n }\n }\n\n var totalText = null;\n\n if (this.showTotal) {\n totalText = h(\n 'li',\n { 'class': prefixCls + '-total-text' },\n [this.showTotal(this.total, [this.total === 0 ? 0 : (stateCurrent - 1) * statePageSize + 1, stateCurrent * statePageSize > this.total ? this.total : stateCurrent * statePageSize])]\n );\n }\n var prevDisabled = !this.hasPrev() || !allPages;\n var nextDisabled = !this.hasNext() || !allPages;\n var buildOptionText = this.buildOptionText || this.$scopedSlots.buildOptionText;\n return h(\n 'ul',\n {\n 'class': (_ref = {}, _defineProperty(_ref, '' + prefixCls, true), _defineProperty(_ref, prefixCls + '-disabled', disabled), _ref),\n attrs: { unselectable: 'unselectable'\n },\n ref: 'paginationNode'\n },\n [totalText, h(\n 'li',\n {\n attrs: {\n title: this.showTitle ? locale.prev_page : null,\n\n tabIndex: prevDisabled ? null : 0,\n\n 'aria-disabled': prevDisabled\n },\n on: {\n 'click': this.prev,\n 'keypress': this.runIfEnterPrev\n },\n\n 'class': (!prevDisabled ? '' : prefixCls + '-disabled') + ' ' + prefixCls + '-prev' },\n [this.itemRender(prevPage, 'prev', this.getItemIcon('prevIcon'))]\n ), pagerList, h(\n 'li',\n {\n attrs: {\n title: this.showTitle ? locale.next_page : null,\n\n tabIndex: nextDisabled ? null : 0,\n\n 'aria-disabled': nextDisabled\n },\n on: {\n 'click': this.next,\n 'keypress': this.runIfEnterNext\n },\n\n 'class': (!nextDisabled ? '' : prefixCls + '-disabled') + ' ' + prefixCls + '-next' },\n [this.itemRender(nextPage, 'next', this.getItemIcon('nextIcon'))]\n ), h(Options, {\n attrs: {\n disabled: disabled,\n locale: locale,\n rootPrefixCls: prefixCls,\n selectComponentClass: this.selectComponentClass,\n selectPrefixCls: this.selectPrefixCls,\n changeSize: this.showSizeChanger ? this.changePageSize : null,\n current: stateCurrent,\n pageSize: statePageSize,\n pageSizeOptions: this.pageSizeOptions,\n buildOptionText: buildOptionText || null,\n quickGo: this.shouldDisplayQuickJumper() ? this.handleChange : null,\n goButton: goButton\n }\n })]\n );\n }\n};"],"sourceRoot":""}