{"version":3,"sources":["webpack:///./node_modules/ant-design-vue/es/table/FilterDropdownMenuWrapper.js","webpack:///./node_modules/ant-design-vue/es/table/interface.js","webpack:///./node_modules/ant-design-vue/es/table/util.js","webpack:///./node_modules/ant-design-vue/es/table/filterDropdown.js","webpack:///./node_modules/ant-design-vue/es/table/SelectionBox.js","webpack:///./node_modules/ant-design-vue/es/table/SelectionCheckboxAll.js","webpack:///./node_modules/ant-design-vue/es/table/Column.js","webpack:///./node_modules/ant-design-vue/es/table/ColumnGroup.js","webpack:///./node_modules/ant-design-vue/es/table/createBodyRow.js","webpack:///./node_modules/ant-design-vue/es/table/Table.js","webpack:///./node_modules/ant-design-vue/es/table/index.js","webpack:///./node_modules/ant-design-vue/es/switch/index.js","webpack:///./node_modules/ant-design-vue/es/space/index.js","webpack:///./node_modules/ant-design-vue/es/skeleton/Avatar.js","webpack:///./node_modules/ant-design-vue/es/skeleton/Title.js","webpack:///./node_modules/ant-design-vue/es/skeleton/Paragraph.js","webpack:///./node_modules/ant-design-vue/es/skeleton/index.js","webpack:///./node_modules/ant-design-vue/es/tag/Tag.js","webpack:///./node_modules/ant-design-vue/es/tag/CheckableTag.js","webpack:///./node_modules/ant-design-vue/es/tag/index.js","webpack:///./node_modules/ant-design-vue/es/spin/index.js","webpack:///./node_modules/ant-design-vue/es/select/index.js","webpack:///./node_modules/ant-design-vue/es/row/index.js","webpack:///./node_modules/ant-design-vue/es/statistic/Number.js","webpack:///./node_modules/ant-design-vue/es/statistic/Statistic.js","webpack:///./node_modules/ant-design-vue/es/statistic/utils.js","webpack:///./node_modules/ant-design-vue/es/statistic/Countdown.js","webpack:///./node_modules/ant-design-vue/es/statistic/index.js","webpack:///./node_modules/ant-design-vue/es/spin/Spin.js","webpack:///./node_modules/ant-design-vue/es/steps/index.js","webpack:///./node_modules/ant-design-vue/es/tabs/TabBar.js","webpack:///./node_modules/ant-design-vue/es/tabs/tabs.js","webpack:///./node_modules/ant-design-vue/es/tabs/index.js","webpack:///./node_modules/ant-design-vue/es/slider/index.js"],"names":["name","methods","handelClick","e","stopPropagation","render","h","arguments","$slots","this","on","PaginationProps","SpinProps","ColumnFilterItem","shape","text","string","value","children","array","loose","ColumnProps","title","any","dataIndex","customRender","func","customCell","customHeaderCell","align","oneOf","ellipsis","bool","filters","arrayOf","filterMultiple","filterDropdown","filterDropdownVisible","sorter","oneOfType","boolean","defaultSortOrder","colSpan","number","width","className","fixed","filterIcon","filteredValue","filtered","defaultFilteredValue","sortOrder","sortDirections","TableLocale","filterTitle","filterConfirm","filterReset","emptyText","selectAll","selectInvert","sortTitle","expand","collapse","RowSelectionType","TableRowSelection","type","selectedRowKeys","getCheckboxProps","selections","hideDefaultSelections","columnWidth","selectWay","columnTitle","TableProps","prefixCls","dropdownPrefixCls","rowSelection","pagination","position","size","dataSource","components","object","columns","rowKey","rowClassName","expandedRowRender","defaultExpandAllRows","defaultExpandedRowKeys","expandedRowKeys","expandIconAsCell","expandIconColumnIndex","expandRowByClick","loading","locale","indentSize","customRow","customHeaderRow","useFixedHeader","bordered","showHeader","footer","scroll","childrenColumnName","bodyStyle","tableLayout","getPopupContainer","expandIcon","transformCellText","SelectionCheckboxAllProps","store","disabled","getCheckboxPropsByItem","getRecordKey","data","SelectionBoxProps","defaultSelection","rowIndex","id","FilterMenuProps","_propsSymbol","selectedKeys","column","confirmFilter","handleFilter","flatArray","childrenName","length","result","loop","forEach","item","newItem","push","treeMap","tree","mapper","map","node","index","extra","flatFilter","callback","reduce","acc","apply","generateValueMaps","items","maps","_ref","toString","mixins","BaseMixin","props","visible","preProps","sSelectedKeys","sKeyPathOfSelectedItem","sVisible","sValueKeys","watch","nextProps","newState","Object","keys","setState","mounted","_this","$nextTick","setNeverShown","updated","_this2","getDropdownVisible","neverShown","rootNode","$el","setSelectedKeys","setVisible","onFilterDropdownVisibleChange","handleClearFilters","handleConfirm","_this3","confirmFilter2","$forceUpdate","onVisibleChange","$props","Function","handleMenuItemClick","info","$data","keyPath","keyPathOfSelectedItem","indexOf","key","hasSubMenu","_column$filters","some","_$props","propSelectedKeys","_$data","valueKeys","filter","renderMenus","_this4","$createElement","_$props2","containSelected","subMenuCls","SubMenu","attrs","popupClassName","renderMenuItem","renderFilterIcon","_classNames2","dropdownIconClass","click","theme","input","checked","MenuItem","_this5","originSelectedKeys","multiple","dropdownMenuClass","confirm","clearFilters","menus","FilterDropdownMenuWrapper","val","trigger","placement","forceRender","slot","computed","selectionDirty","_getOptionProps","rest","checkboxProps","checkSelection","byDefaultChecked","i","defaultChecked","getIndeterminateState","someCheckedNotByDefaultChecked","someCheckedByDefaultChecked","getCheckState","defaultSelections","indeterminate","handler","setCheckState","deep","immediate","_ref2","prevState","handleSelectAllChange","target","$emit","selection","Item","onSelect","selectionPrefixCls","customSelections","newSelections","Array","isArray","concat","menu","__ANT_TABLE_COLUMN_GROUP","BodyRowProps","createBodyRow","Component","BodyRow","selected","noop","getRowSelection","getColumnKey","a","b","other","defaultPagination","onChange","onShowSizeChange","emptyObject","bodyRow","body","row","getFilteredValueColumns","state","getFiltersFromColumns","col","colKey","Column","ColumnGroup","inject","configProvider","provide","warning","x","CheckboxPropsCache","$root","constructor","observable","getDefaultSortOrder","sFilters","getDefaultFilters","sPagination","getDefaultPagination","pivot","sComponents","filterDataCnt","previousState","newPagination","current","pageSize","oldVal","filtersFromColumns","newFilters","columnKey","isFiltersChanged","components1","components2","every","isTheSameComponents","sortColumn","sSortColumn","sSortOrder","getSortOrderColumns","sortState","getSortStateFromColumns","getDefaultSelection","getFlatData","record","defaultCurrent","defaultPageSize","hasPagination","definedFilters","defaultFilteredValueColumns","defaultFilters","soFar","definedSortState","defaultSortedColumn","sortedColumn","getMaxCurrent","total","_sPagination","Math","floor","recordKey","getSorterFn","getCurrentPageData","getLocalData","Number","MAX_VALUE","slice","getFlatCurrentPageData","currentState","sorterFn","recursiveSort","findColumn","values","onFilter","v","onRow","custom","setSelectedRowKeys","selectionInfo","changeRowKeys","nativeEvent","selectedRows","onSelectMultiple","changeRows","onSelectAll","_changeRows","onSelectInvert","generatePopupContainerFunc","table","$refs","vcTable","getTableNode","undefined","scrollToFirstRow","scrollToFirstRowOnChange","scrollTo","getContainer","getBodyTable","isSameColumn","nextFilters","currentColumnKeys","c","filtersToSetState","prepareParamsArguments","sSelectionDirty","handleSelect","_this6","rows","realIndex","findIndex","shiftKey","direction","sign","dist","abs","step","_loop","includes","j","handleRadioSelect","handleSelectRow","selectionKey","onSelectFunc","_this7","changeableRowKeys","splice","customSelectionStartIndex","handlePageChange","_len","otherArguments","_key","handleShowSizeChange","nextPagination","toggleSortOrder","newSortOrder","methodIndex","isSortColumn","currentColumn","order","field","currentDataSource","myKey","_this8","_childrenColumnName","sort","renderExpandIcon","expandable","expanded","needIndentSpaced","onExpand","LocaleReceiver","componentName","defaultLocale","Table","_classNames","event","noStyle","renderPagination","paginationPosition","cls","style","restProps","paginationProps","change","showSizeChange","renderSelectionBox","_this9","_","selectionBoxProps","SelectionBox","renderRowSelection","_ref3","_this10","selectionColumnClass","selectionColumn","checkboxAllDisabled","SelectionCheckboxAll","unshift","renderColumnsDropdown","_ref4","_this11","_classNames3","sortButton","colFilters","Symbol","isAscend","isDescend","ascend","descend","colProps","onHeaderCellClick","renderColumnTitle","renderTable","_ref5","_classNames4","_this12","renderEmpty","contextLocale","contextGetPopupContainer","realGetPopupContainer","mergedLocale","classString","columnsWithRowSelection","newColumn","vcTableProps","ref","_this13","customizePrefixCls","customizeDropdownPrefixCls","customizeTransformCellText","_configProvider","getContextPopupContainer","tct","spinning","getPrefixCls","paginationPatchClass","spinProps","use","normalize","element","tag","events","listeners","k","startsWith","substr","_getSlots","restSlots","scopedSlots","updateColumns","cols","$scopedSlots","_col$slots","slots","_col$scopedSlots","slotTitle","slotFooter","_$scopedSlots$expande","tProps","Vue","component","Switch","__ANT_SWITCH","model","prop","checkedChildren","unCheckedChildren","tabIndex","autoFocus","focus","refSwitchNode","blur","created","_classes","classes","loadingIcon","switchProps","insertExtraNode","SpaceSizeType","spaceSize","small","middle","large","SpaceProps","Space","functional","content","injections","_content$props","len","mergedAlign","someSpaceClass","itemClassName","child","skeletonAvatarProps","SkeletonAvatarProps","Avatar","sizeCls","shapeCls","sizeStyle","height","lineHeight","skeletonTitleProps","SkeletonTitleProps","Title","zWidth","widthUnit","skeletonParagraphProps","SkeletonParagraphProps","Paragraph","getWidth","_rows","rowList","SkeletonProps","active","avatar","paragraph","getComponentProps","getAvatarBasicProps","hasTitle","hasParagraph","getTitleBasicProps","hasAvatar","getParagraphBasicProps","basicProps","Skeleton","avatarNode","avatarProps","contentNode","$title","titleProps","paragraphNode","paragraphProps","PresetColorRegex","RegExp","join","color","closable","def","afterClose","_visible","defaultPrevented","handleIconClick","isPresetColor","test","getTagStyle","backgroundColor","getTagClassName","renderCloseIcon","directives","transitionProps","getTransitionProps","appear","Boolean","handleClick","Tag","CheckableTag","install","setDefaultIndicator","AbstractSelectProps","showAction","String","notFoundContent","transitionName","choiceTransitionName","showSearch","allowClear","placeholder","defaultActiveFirstOption","dropdownClassName","dropdownStyle","dropdownMenuStyle","dropdownMatchSelectWidth","filterOption","backfill","showArrow","open","defaultOpen","autoClearSearchValue","dropdownRender","Value","SelectValue","SelectProps","defaultValue","mode","optionLabelProp","firstActiveValue","maxTagCount","maxTagPlaceholder","maxTagTextLength","optionFilterProp","labelInValue","tokenSeparators","getInputElement","options","suffixIcon","removeIcon","clearIcon","menuItemSelectedIcon","SelectPropTypes","SECRET_COMBOBOX_MODE_DO_NOT_USE","Select","Option","OptGroup","propTypes","savePopupRef","getNotFoundContent","isCombobox","popupRef","vcSelect","renderSuffixIcon","_cls","modeConfig","tags","combobox","finalRemoveIcon","finalClearIcon","finalMenuItemSelectedIcon","selectProps","inputIcon","option","_option$label","label","restOption","__propsSymbol__","context","_context$props","formatter","precision","decimalSeparator","_context$props$groupS","groupSeparator","valueNode","cells","match","negative","int","decimal","replace","StatisticProps","format","valueStyle","valueRender","prefix","suffix","_$props$value","timeUnits","config","_config$format","interopDefault","moment","valueOf","duration","leftDuration","escapeRegex","keepList","str","templateText","replacedText","unit","formatTimeStr","max","getTime","countdownId","syncTimer","beforeDestroy","stopTimer","Date","now","startTimer","window","setInterval","statistic","REFRESH_INTERVAL","clearInterval","formatCountdown","valueRenderHtml","Statistic","Countdown","SpinSize","wrapperClassName","tip","delay","indicator","defaultIndicator","Content","shouldBeDelayed","isNaN","shouldDelay","originalUpdateSpinning","updateSpinning","debouncifyUpdateSpinning","sSpinning","cancelExistingSpin","cancel","getChildren","renderIndicator","dotClassName","_spinClassName","spinClassName","spinElement","_containerClassName","containerClassName","Steps","defaultProps","iconPrefix","initial","labelPlacement","status","progressDot","getStepsProps","Step","customizeIconPrefixCls","icons","finish","error","stepsProps","TabBar","inheritAttrs","tabBarStyle","tabBarExtraContent","tabPosition","tabBarPosition","animated","renderTabBar","panels","activeKey","tabBarGutter","_$props$animated","_$props$type","inkBarAnimated","inkBar","isVertical","prevIconType","nextIconType","prevIcon","nextIcon","renderProps","$attrs","extraContent","RenderTabBar","ScrollableInkTabBar","TabPane","defaultActiveKey","hideAdd","destroyInactiveTabPane","NO_FLEX","tabNode","removeTab","targetKey","isValid","handleChange","createNewTab","onTabClick","onPrevClick","onNextClick","_contentCls","_props$type","_props$animated","tabPaneAnimated","tabPane","childrenWithClose","closeIcon","tab","renderTabBarSlot","tabBarProps","contentCls","tabsProps","renderTabContent","TabContent","animatedWithMargin","T","__ANT_TAB_PANE","tooltipProps","Slider","tooltipPrefixCls","range","reverse","min","marks","dots","included","vertical","tipFormatter","tooltipVisible","tooltipPlacement","getTooltipPopupContainer","visibles","toggleTooltipVisible","handleWithTooltip","dragging","isTipFormatter","overlayClassName","document","handleProps","mouseenter","mouseleave","sliderRef","customizeTooltipPrefixCls","vcRangeProps","handle","vcSliderProps"],"mappings":"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","file":"js/chunk-vendors~2b38b85e.008c7000.js","sourcesContent":["export default {\n name: 'FilterDropdownMenuWrapper',\n methods: {\n handelClick: function handelClick(e) {\n e.stopPropagation();\n //this.$emit('click', e);\n }\n },\n render: function render() {\n var h = arguments[0];\n var $slots = this.$slots,\n handelClick = this.handelClick;\n\n return h(\n 'div',\n {\n on: {\n 'click': handelClick\n }\n },\n [$slots['default']]\n );\n }\n};","import _extends from 'babel-runtime/helpers/extends';\nimport PropTypes from '../_util/vue-types';\nimport { PaginationProps as getPaginationProps } from '../pagination';\nimport { SpinProps as getSpinProps } from '../spin';\n\nvar PaginationProps = getPaginationProps();\nvar SpinProps = getSpinProps();\n\n// export type CompareFn = ((a: T, b: T) => number);\nexport var ColumnFilterItem = PropTypes.shape({\n text: PropTypes.string,\n value: PropTypes.string,\n children: PropTypes.array\n}).loose;\n\nexport var ColumnProps = {\n title: PropTypes.any,\n // key?: React.Key;\n dataIndex: PropTypes.string,\n customRender: PropTypes.func,\n customCell: PropTypes.func,\n customHeaderCell: PropTypes.func,\n align: PropTypes.oneOf(['left', 'right', 'center']),\n ellipsis: PropTypes.bool,\n filters: PropTypes.arrayOf(ColumnFilterItem),\n // onFilter: (value: any, record: T) => PropTypes.bool,\n filterMultiple: PropTypes.bool,\n filterDropdown: PropTypes.any,\n filterDropdownVisible: PropTypes.bool,\n // onFilterDropdownVisibleChange?: (visible: boolean) => void;\n sorter: PropTypes.oneOfType([PropTypes.boolean, PropTypes.func]),\n defaultSortOrder: PropTypes.oneOf(['ascend', 'descend']),\n colSpan: PropTypes.number,\n width: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n className: PropTypes.string,\n fixed: PropTypes.oneOfType([PropTypes.bool, PropTypes.oneOf(['left', 'right'])]),\n filterIcon: PropTypes.any,\n filteredValue: PropTypes.array,\n filtered: PropTypes.bool,\n defaultFilteredValue: PropTypes.array,\n sortOrder: PropTypes.oneOfType([PropTypes.bool, PropTypes.oneOf(['ascend', 'descend'])]),\n sortDirections: PropTypes.array\n // children?: ColumnProps[];\n // onCellClick?: (record: T, event: any) => void;\n // onCell?: (record: T) => any;\n // onHeaderCell?: (props: ColumnProps) => any;\n};\n\n// export interface TableComponents {\n// table?: any;\n// header?: {\n// wrapper?: any;\n// row?: any;\n// cell?: any;\n// };\n// body?: {\n// wrapper?: any;\n// row?: any;\n// cell?: any;\n// };\n// }\n\nexport var TableLocale = PropTypes.shape({\n filterTitle: PropTypes.string,\n filterConfirm: PropTypes.any,\n filterReset: PropTypes.any,\n emptyText: PropTypes.any,\n selectAll: PropTypes.any,\n selectInvert: PropTypes.any,\n sortTitle: PropTypes.string,\n expand: PropTypes.string,\n collapse: PropTypes.string\n}).loose;\n\nexport var RowSelectionType = PropTypes.oneOf(['checkbox', 'radio']);\n// export type SelectionSelectFn = (record: T, selected: boolean, selectedRows: Object[]) => any;\n\nexport var TableRowSelection = {\n type: RowSelectionType,\n selectedRowKeys: PropTypes.array,\n // onChange?: (selectedRowKeys: string[] | number[], selectedRows: Object[]) => any;\n getCheckboxProps: PropTypes.func,\n // onSelect?: SelectionSelectFn;\n // onSelectAll?: (selected: boolean, selectedRows: Object[], changeRows: Object[]) => any;\n // onSelectInvert?: (selectedRows: Object[]) => any;\n selections: PropTypes.oneOfType([PropTypes.array, PropTypes.bool]),\n hideDefaultSelections: PropTypes.bool,\n fixed: PropTypes.bool,\n columnWidth: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n selectWay: PropTypes.oneOf(['onSelect', 'onSelectMultiple', 'onSelectAll', 'onSelectInvert']),\n columnTitle: PropTypes.any\n};\n\nexport var TableProps = {\n prefixCls: PropTypes.string,\n dropdownPrefixCls: PropTypes.string,\n rowSelection: PropTypes.oneOfType([PropTypes.shape(TableRowSelection).loose, null]),\n pagination: PropTypes.oneOfType([PropTypes.shape(_extends({}, PaginationProps, {\n position: PropTypes.oneOf(['top', 'bottom', 'both'])\n })).loose, PropTypes.bool]),\n size: PropTypes.oneOf(['default', 'middle', 'small', 'large']),\n dataSource: PropTypes.array,\n components: PropTypes.object,\n columns: PropTypes.array,\n rowKey: PropTypes.oneOfType([PropTypes.string, PropTypes.func]),\n rowClassName: PropTypes.func,\n expandedRowRender: PropTypes.any,\n defaultExpandAllRows: PropTypes.bool,\n defaultExpandedRowKeys: PropTypes.array,\n expandedRowKeys: PropTypes.array,\n expandIconAsCell: PropTypes.bool,\n expandIconColumnIndex: PropTypes.number,\n expandRowByClick: PropTypes.bool,\n // onExpandedRowsChange?: (expandedRowKeys: string[] | number[]) => void;\n // onExpand?: (expanded: boolean, record: T) => void;\n // onChange?: (pagination: PaginationProps | boolean, filters: string[], sorter: Object) => any;\n loading: PropTypes.oneOfType([PropTypes.shape(SpinProps).loose, PropTypes.bool]),\n locale: TableLocale,\n indentSize: PropTypes.number,\n // onRowClick?: (record: T, index: number, event: Event) => any;\n customRow: PropTypes.func,\n customHeaderRow: PropTypes.func,\n useFixedHeader: PropTypes.bool,\n bordered: PropTypes.bool,\n showHeader: PropTypes.bool,\n footer: PropTypes.func,\n title: PropTypes.func,\n scroll: PropTypes.object,\n childrenColumnName: PropTypes.oneOfType([PropTypes.array, PropTypes.string]),\n bodyStyle: PropTypes.any,\n sortDirections: PropTypes.array,\n tableLayout: PropTypes.string,\n getPopupContainer: PropTypes.func,\n expandIcon: PropTypes.func,\n transformCellText: PropTypes.func\n // className?: PropTypes.string,\n // style?: React.CSSProperties;\n // children?: React.ReactNode;\n};\n\n// export interface TableStateFilters {\n// [key: string]: string[];\n// }\n\n// export interface TableState {\n// pagination: PaginationProps;\n// filters: TableStateFilters;\n// sortColumn: ColumnProps | null;\n// sortOrder: PropTypes.string,\n// }\n\n// export type SelectionItemSelectFn = (key: string[]) => any;\n\n// export interface SelectionItem {\n// key: PropTypes.string,\n// text: PropTypes.any,\n// onSelect: SelectionItemSelectFn;\n// }\n\nexport var SelectionCheckboxAllProps = {\n store: PropTypes.any,\n locale: PropTypes.any,\n disabled: PropTypes.bool,\n getCheckboxPropsByItem: PropTypes.func,\n getRecordKey: PropTypes.func,\n data: PropTypes.array,\n prefixCls: PropTypes.string,\n // onSelect: (key: string, index: number, selectFunc: any) => void;\n hideDefaultSelections: PropTypes.bool,\n selections: PropTypes.oneOfType([PropTypes.array, PropTypes.bool]),\n getPopupContainer: PropTypes.func\n};\n\n// export interface SelectionCheckboxAllState {\n// checked: PropTypes.bool,\n// indeterminate: PropTypes.bool,\n// }\n\nexport var SelectionBoxProps = {\n store: PropTypes.any,\n type: RowSelectionType,\n defaultSelection: PropTypes.arrayOf([PropTypes.string, PropTypes.number]),\n rowIndex: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n name: PropTypes.string,\n disabled: PropTypes.bool,\n id: PropTypes.string\n // onChange: React.ChangeEventHandler;\n};\n\n// export interface SelectionBoxState {\n// checked?: PropTypes.bool,\n// }\n\nexport var FilterMenuProps = {\n _propsSymbol: PropTypes.any,\n locale: TableLocale,\n selectedKeys: PropTypes.arrayOf([PropTypes.string, PropTypes.number]),\n column: PropTypes.object,\n confirmFilter: PropTypes.func,\n prefixCls: PropTypes.string,\n dropdownPrefixCls: PropTypes.string,\n getPopupContainer: PropTypes.func,\n handleFilter: PropTypes.func\n};\n\n// export interface FilterMenuState {\n// selectedKeys: string[];\n// keyPathOfSelectedItem: { [key: string]: string };\n// visible?: PropTypes.bool,\n// }","import _toConsumableArray from 'babel-runtime/helpers/toConsumableArray';\nimport _extends from 'babel-runtime/helpers/extends';\nexport function flatArray() {\n var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var childrenName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'children';\n\n var result = [];\n var loop = function loop(array) {\n array.forEach(function (item) {\n if (item[childrenName]) {\n var newItem = _extends({}, item);\n delete newItem[childrenName];\n result.push(newItem);\n if (item[childrenName].length > 0) {\n loop(item[childrenName]);\n }\n } else {\n result.push(item);\n }\n });\n };\n loop(data);\n return result;\n}\n\nexport function treeMap(tree, mapper) {\n var childrenName = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'children';\n\n return tree.map(function (node, index) {\n var extra = {};\n if (node[childrenName]) {\n extra[childrenName] = treeMap(node[childrenName], mapper, childrenName);\n }\n return _extends({}, mapper(node, index), extra);\n });\n}\n\nexport function flatFilter(tree, callback) {\n return tree.reduce(function (acc, node) {\n if (callback(node)) {\n acc.push(node);\n }\n if (node.children) {\n var children = flatFilter(node.children, callback);\n acc.push.apply(acc, _toConsumableArray(children));\n }\n return acc;\n }, []);\n}\n\n// export function normalizeColumns (elements) {\n// const columns = []\n// React.Children.forEach(elements, (element) => {\n// if (!React.isValidElement(element)) {\n// return\n// }\n// const column = {\n// ...element.props,\n// }\n// if (element.key) {\n// column.key = element.key\n// }\n// if (element.type && element.type.__ANT_TABLE_COLUMN_GROUP) {\n// column.children = normalizeColumns(column.children)\n// }\n// columns.push(column)\n// })\n// return columns\n// }\n\nexport function generateValueMaps(items) {\n var maps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n (items || []).forEach(function (_ref) {\n var value = _ref.value,\n children = _ref.children;\n\n maps[value.toString()] = value;\n generateValueMaps(children, maps);\n });\n return maps;\n}","import _defineProperty from 'babel-runtime/helpers/defineProperty';\nimport _extends from 'babel-runtime/helpers/extends';\nimport Menu, { SubMenu, Item as MenuItem } from '../vc-menu';\nimport closest from 'dom-closest';\nimport classNames from 'classnames';\nimport shallowequal from 'shallowequal';\nimport Dropdown from '../dropdown';\nimport Icon from '../icon';\nimport Checkbox from '../checkbox';\nimport Radio from '../radio';\nimport FilterDropdownMenuWrapper from './FilterDropdownMenuWrapper';\nimport { FilterMenuProps } from './interface';\nimport { initDefaultProps, getOptionProps, isValidElement } from '../_util/props-util';\nimport { cloneElement } from '../_util/vnode';\nimport BaseMixin from '../_util/BaseMixin';\nimport { generateValueMaps } from './util';\n\nfunction stopPropagation(e) {\n e.stopPropagation();\n}\n\nexport default {\n name: 'FilterMenu',\n mixins: [BaseMixin],\n props: initDefaultProps(FilterMenuProps, {\n handleFilter: function handleFilter() {},\n\n column: {}\n }),\n\n data: function data() {\n var visible = 'filterDropdownVisible' in this.column ? this.column.filterDropdownVisible : false;\n this.preProps = _extends({}, getOptionProps(this));\n return {\n sSelectedKeys: this.selectedKeys,\n sKeyPathOfSelectedItem: {}, // 记录所有有选中子菜单的祖先菜单\n sVisible: visible,\n sValueKeys: generateValueMaps(this.column.filters)\n };\n },\n\n watch: {\n _propsSymbol: function _propsSymbol() {\n var nextProps = getOptionProps(this);\n var column = nextProps.column;\n\n var newState = {};\n\n /**\n * if the state is visible the component should ignore updates on selectedKeys prop to avoid\n * that the user selection is lost\n * this happens frequently when a table is connected on some sort of realtime data\n * Fixes https://github.com/ant-design/ant-design/issues/10289 and\n * https://github.com/ant-design/ant-design/issues/10209\n */\n if ('selectedKeys' in nextProps && !shallowequal(this.preProps.selectedKeys, nextProps.selectedKeys)) {\n newState.sSelectedKeys = nextProps.selectedKeys;\n }\n if (!shallowequal((this.preProps.column || {}).filters, (nextProps.column || {}).filters)) {\n newState.sValueKeys = generateValueMaps(nextProps.column.filters);\n }\n if ('filterDropdownVisible' in column) {\n newState.sVisible = column.filterDropdownVisible;\n }\n if (Object.keys(newState).length > 0) {\n this.setState(newState);\n }\n this.preProps = _extends({}, nextProps);\n }\n },\n\n mounted: function mounted() {\n var _this = this;\n\n var column = this.column;\n\n this.$nextTick(function () {\n _this.setNeverShown(column);\n });\n },\n updated: function updated() {\n var _this2 = this;\n\n var column = this.column;\n\n this.$nextTick(function () {\n _this2.setNeverShown(column);\n });\n },\n\n methods: {\n getDropdownVisible: function getDropdownVisible() {\n return this.neverShown ? false : this.sVisible;\n },\n setNeverShown: function setNeverShown(column) {\n var rootNode = this.$el;\n var filterBelongToScrollBody = !!closest(rootNode, '.ant-table-scroll');\n if (filterBelongToScrollBody) {\n // When fixed column have filters, there will be two dropdown menus\n // Filter dropdown menu inside scroll body should never be shown\n // To fix https://github.com/ant-design/ant-design/issues/5010 and\n // https://github.com/ant-design/ant-design/issues/7909\n this.neverShown = !!column.fixed;\n }\n },\n setSelectedKeys: function setSelectedKeys(_ref) {\n var selectedKeys = _ref.selectedKeys;\n\n this.setState({ sSelectedKeys: selectedKeys });\n },\n setVisible: function setVisible(visible) {\n var column = this.column;\n\n if (!('filterDropdownVisible' in column)) {\n this.setState({ sVisible: visible });\n }\n if (column.onFilterDropdownVisibleChange) {\n column.onFilterDropdownVisibleChange(visible);\n }\n },\n handleClearFilters: function handleClearFilters() {\n this.setState({\n sSelectedKeys: []\n }, this.handleConfirm);\n },\n handleConfirm: function handleConfirm() {\n var _this3 = this;\n\n this.setVisible(false);\n this.confirmFilter2();\n // Call `setSelectedKeys` & `confirm` in the same time will make filter data not up to date\n // https://github.com/ant-design/ant-design/issues/12284\n this.$forceUpdate();\n this.$nextTick(function () {\n _this3.confirmFilter;\n });\n },\n onVisibleChange: function onVisibleChange(visible) {\n this.setVisible(visible);\n var column = this.$props.column;\n // https://github.com/ant-design/ant-design/issues/17833\n\n if (!visible && !(column.filterDropdown instanceof Function)) {\n this.confirmFilter2();\n }\n },\n handleMenuItemClick: function handleMenuItemClick(info) {\n var selectedKeys = this.$data.sSelectedKeys;\n\n if (!info.keyPath || info.keyPath.length <= 1) {\n return;\n }\n var keyPathOfSelectedItem = this.$data.sKeyPathOfSelectedItem;\n\n if (selectedKeys && selectedKeys.indexOf(info.key) >= 0) {\n // deselect SubMenu child\n delete keyPathOfSelectedItem[info.key];\n } else {\n // select SubMenu child\n keyPathOfSelectedItem[info.key] = info.keyPath;\n }\n this.setState({ sKeyPathOfSelectedItem: keyPathOfSelectedItem });\n },\n hasSubMenu: function hasSubMenu() {\n var _column$filters = this.column.filters,\n filters = _column$filters === undefined ? [] : _column$filters;\n\n return filters.some(function (item) {\n return !!(item.children && item.children.length > 0);\n });\n },\n confirmFilter2: function confirmFilter2() {\n var _$props = this.$props,\n column = _$props.column,\n propSelectedKeys = _$props.selectedKeys,\n confirmFilter = _$props.confirmFilter;\n var _$data = this.$data,\n selectedKeys = _$data.sSelectedKeys,\n valueKeys = _$data.sValueKeys;\n var filterDropdown = column.filterDropdown;\n\n\n if (!shallowequal(selectedKeys, propSelectedKeys)) {\n confirmFilter(column, filterDropdown ? selectedKeys : selectedKeys.map(function (key) {\n return valueKeys[key];\n }).filter(function (key) {\n return key !== undefined;\n }));\n }\n },\n renderMenus: function renderMenus(items) {\n var _this4 = this;\n\n var h = this.$createElement;\n var _$props2 = this.$props,\n dropdownPrefixCls = _$props2.dropdownPrefixCls,\n prefixCls = _$props2.prefixCls;\n\n return items.map(function (item) {\n if (item.children && item.children.length > 0) {\n var sKeyPathOfSelectedItem = _this4.sKeyPathOfSelectedItem;\n\n var containSelected = Object.keys(sKeyPathOfSelectedItem).some(function (key) {\n return sKeyPathOfSelectedItem[key].indexOf(item.value) >= 0;\n });\n var subMenuCls = classNames(prefixCls + '-dropdown-submenu', _defineProperty({}, dropdownPrefixCls + '-submenu-contain-selected', containSelected));\n return h(\n SubMenu,\n {\n attrs: { title: item.text, popupClassName: subMenuCls },\n key: item.value },\n [_this4.renderMenus(item.children)]\n );\n }\n return _this4.renderMenuItem(item);\n });\n },\n renderFilterIcon: function renderFilterIcon() {\n var _classNames2;\n\n var h = this.$createElement;\n var column = this.column,\n locale = this.locale,\n prefixCls = this.prefixCls,\n selectedKeys = this.selectedKeys;\n\n var filtered = selectedKeys && selectedKeys.length > 0;\n var filterIcon = column.filterIcon;\n if (typeof filterIcon === 'function') {\n filterIcon = filterIcon(filtered, column);\n }\n var dropdownIconClass = classNames((_classNames2 = {}, _defineProperty(_classNames2, prefixCls + '-selected', 'filtered' in column ? column.filtered : filtered), _defineProperty(_classNames2, prefixCls + '-open', this.getDropdownVisible()), _classNames2));\n if (!filterIcon) {\n return h(Icon, {\n attrs: {\n title: locale.filterTitle,\n type: 'filter',\n theme: 'filled'\n },\n 'class': dropdownIconClass,\n on: {\n 'click': stopPropagation\n }\n });\n }\n if (filterIcon.length === 1 && isValidElement(filterIcon[0])) {\n return cloneElement(filterIcon[0], {\n on: {\n click: stopPropagation\n },\n 'class': classNames(prefixCls + '-icon', dropdownIconClass)\n });\n }\n return h(\n 'span',\n { 'class': classNames(prefixCls + '-icon', dropdownIconClass) },\n [filterIcon]\n );\n },\n renderMenuItem: function renderMenuItem(item) {\n var h = this.$createElement;\n var column = this.column;\n var selectedKeys = this.$data.sSelectedKeys;\n\n var multiple = 'filterMultiple' in column ? column.filterMultiple : true;\n\n var input = multiple ? h(Checkbox, {\n attrs: { checked: selectedKeys && selectedKeys.indexOf(item.value) >= 0 }\n }) : h(Radio, {\n attrs: { checked: selectedKeys && selectedKeys.indexOf(item.value) >= 0 }\n });\n\n return h(\n MenuItem,\n { key: item.value },\n [input, h('span', [item.text])]\n );\n }\n },\n\n render: function render() {\n var _this5 = this;\n\n var h = arguments[0];\n var originSelectedKeys = this.$data.sSelectedKeys;\n var column = this.column,\n locale = this.locale,\n prefixCls = this.prefixCls,\n dropdownPrefixCls = this.dropdownPrefixCls,\n getPopupContainer = this.getPopupContainer;\n // default multiple selection in filter dropdown\n\n var multiple = 'filterMultiple' in column ? column.filterMultiple : true;\n var dropdownMenuClass = classNames(_defineProperty({}, dropdownPrefixCls + '-menu-without-submenu', !this.hasSubMenu()));\n var filterDropdown = column.filterDropdown;\n\n if (filterDropdown instanceof Function) {\n filterDropdown = filterDropdown({\n prefixCls: dropdownPrefixCls + '-custom',\n setSelectedKeys: function setSelectedKeys(selectedKeys) {\n return _this5.setSelectedKeys({ selectedKeys: selectedKeys });\n },\n selectedKeys: originSelectedKeys,\n confirm: this.handleConfirm,\n clearFilters: this.handleClearFilters,\n filters: column.filters,\n visible: this.getDropdownVisible(),\n column: column\n });\n }\n\n var menus = filterDropdown ? h(\n FilterDropdownMenuWrapper,\n { 'class': prefixCls + '-dropdown' },\n [filterDropdown]\n ) : h(\n FilterDropdownMenuWrapper,\n { 'class': prefixCls + '-dropdown' },\n [h(\n Menu,\n {\n attrs: {\n multiple: multiple,\n\n prefixCls: dropdownPrefixCls + '-menu',\n\n selectedKeys: originSelectedKeys && originSelectedKeys.map(function (val) {\n return val;\n }),\n getPopupContainer: getPopupContainer\n },\n on: {\n 'click': this.handleMenuItemClick,\n 'select': this.setSelectedKeys,\n 'deselect': this.setSelectedKeys\n },\n 'class': dropdownMenuClass\n },\n [this.renderMenus(column.filters)]\n ), h(\n 'div',\n { 'class': prefixCls + '-dropdown-btns' },\n [h(\n 'a',\n { 'class': prefixCls + '-dropdown-link confirm', on: {\n 'click': this.handleConfirm\n }\n },\n [locale.filterConfirm]\n ), h(\n 'a',\n { 'class': prefixCls + '-dropdown-link clear', on: {\n 'click': this.handleClearFilters\n }\n },\n [locale.filterReset]\n )]\n )]\n );\n\n return h(\n Dropdown,\n {\n attrs: {\n trigger: ['click'],\n placement: 'bottomRight',\n visible: this.getDropdownVisible(),\n\n getPopupContainer: getPopupContainer,\n forceRender: true\n },\n on: {\n 'visibleChange': this.onVisibleChange\n }\n },\n [h(\n 'template',\n { slot: 'overlay' },\n [menus]\n ), this.renderFilterIcon()]\n );\n }\n};","import _extends from 'babel-runtime/helpers/extends';\nimport _objectWithoutProperties from 'babel-runtime/helpers/objectWithoutProperties';\nimport Checkbox from '../checkbox';\nimport Radio from '../radio';\nimport { SelectionBoxProps } from './interface';\nimport BaseMixin from '../_util/BaseMixin';\nimport { getOptionProps, getListeners } from '../_util/props-util';\n\nexport default {\n name: 'SelectionBox',\n mixins: [BaseMixin],\n props: SelectionBoxProps,\n computed: {\n checked: function checked() {\n var _$props = this.$props,\n store = _$props.store,\n defaultSelection = _$props.defaultSelection,\n rowIndex = _$props.rowIndex;\n\n var checked = false;\n if (store.selectionDirty) {\n checked = store.selectedRowKeys.indexOf(rowIndex) >= 0;\n } else {\n checked = store.selectedRowKeys.indexOf(rowIndex) >= 0 || defaultSelection.indexOf(rowIndex) >= 0;\n }\n return checked;\n }\n },\n render: function render() {\n var h = arguments[0];\n\n var _getOptionProps = getOptionProps(this),\n type = _getOptionProps.type,\n rowIndex = _getOptionProps.rowIndex,\n rest = _objectWithoutProperties(_getOptionProps, ['type', 'rowIndex']);\n\n var checked = this.checked;\n\n var checkboxProps = {\n props: _extends({\n checked: checked\n }, rest),\n on: getListeners(this)\n };\n if (type === 'radio') {\n checkboxProps.props.value = rowIndex;\n return h(Radio, checkboxProps);\n }\n return h(Checkbox, checkboxProps);\n }\n};","import _defineProperty from 'babel-runtime/helpers/defineProperty';\nimport _extends from 'babel-runtime/helpers/extends';\nimport Checkbox from '../checkbox';\nimport Dropdown from '../dropdown';\nimport Menu from '../menu';\nimport Icon from '../icon';\nimport classNames from 'classnames';\nimport { SelectionCheckboxAllProps } from './interface';\nimport BaseMixin from '../_util/BaseMixin';\n\nfunction checkSelection(_ref) {\n var store = _ref.store,\n getCheckboxPropsByItem = _ref.getCheckboxPropsByItem,\n getRecordKey = _ref.getRecordKey,\n data = _ref.data,\n type = _ref.type,\n byDefaultChecked = _ref.byDefaultChecked;\n\n return byDefaultChecked ? data[type](function (item, i) {\n return getCheckboxPropsByItem(item, i).defaultChecked;\n }) : data[type](function (item, i) {\n return store.selectedRowKeys.indexOf(getRecordKey(item, i)) >= 0;\n });\n}\n\nfunction getIndeterminateState(props) {\n var store = props.store,\n data = props.data;\n\n if (!data.length) {\n return false;\n }\n\n var someCheckedNotByDefaultChecked = checkSelection(_extends({}, props, {\n data: data,\n type: 'some',\n byDefaultChecked: false\n })) && !checkSelection(_extends({}, props, {\n data: data,\n type: 'every',\n byDefaultChecked: false\n }));\n var someCheckedByDefaultChecked = checkSelection(_extends({}, props, {\n data: data,\n type: 'some',\n byDefaultChecked: true\n })) && !checkSelection(_extends({}, props, {\n data: data,\n type: 'every',\n byDefaultChecked: true\n }));\n\n if (store.selectionDirty) {\n return someCheckedNotByDefaultChecked;\n }\n return someCheckedNotByDefaultChecked || someCheckedByDefaultChecked;\n}\n\nfunction getCheckState(props) {\n var store = props.store,\n data = props.data;\n\n if (!data.length) {\n return false;\n }\n if (store.selectionDirty) {\n return checkSelection(_extends({}, props, {\n data: data,\n type: 'every',\n byDefaultChecked: false\n }));\n }\n return checkSelection(_extends({}, props, {\n data: data,\n type: 'every',\n byDefaultChecked: false\n })) || checkSelection(_extends({}, props, {\n data: data,\n type: 'every',\n byDefaultChecked: true\n }));\n}\n\nexport default {\n name: 'SelectionCheckboxAll',\n mixins: [BaseMixin],\n props: SelectionCheckboxAllProps,\n data: function data() {\n var props = this.$props;\n\n this.defaultSelections = props.hideDefaultSelections ? [] : [{\n key: 'all',\n text: props.locale.selectAll\n }, {\n key: 'invert',\n text: props.locale.selectInvert\n }];\n return {\n checked: getCheckState(props),\n indeterminate: getIndeterminateState(props)\n };\n },\n\n\n watch: {\n $props: {\n handler: function handler() {\n this.setCheckState(this.$props);\n },\n\n deep: true,\n immediate: true\n }\n },\n\n methods: {\n checkSelection: function checkSelection(props, data, type, byDefaultChecked) {\n var _ref2 = props || this.$props,\n store = _ref2.store,\n getCheckboxPropsByItem = _ref2.getCheckboxPropsByItem,\n getRecordKey = _ref2.getRecordKey;\n // type should be 'every' | 'some'\n\n\n if (type === 'every' || type === 'some') {\n return byDefaultChecked ? data[type](function (item, i) {\n return getCheckboxPropsByItem(item, i).props.defaultChecked;\n }) : data[type](function (item, i) {\n return store.selectedRowKeys.indexOf(getRecordKey(item, i)) >= 0;\n });\n }\n return false;\n },\n setCheckState: function setCheckState(props) {\n var checked = getCheckState(props);\n var indeterminate = getIndeterminateState(props);\n this.setState(function (prevState) {\n var newState = {};\n if (indeterminate !== prevState.indeterminate) {\n newState.indeterminate = indeterminate;\n }\n if (checked !== prevState.checked) {\n newState.checked = checked;\n }\n return newState;\n });\n },\n handleSelectAllChange: function handleSelectAllChange(e) {\n var checked = e.target.checked;\n\n this.$emit('select', checked ? 'all' : 'removeAll', 0, null);\n },\n renderMenus: function renderMenus(selections) {\n var _this = this;\n\n var h = this.$createElement;\n\n return selections.map(function (selection, index) {\n return h(\n Menu.Item,\n { key: selection.key || index },\n [h(\n 'div',\n {\n on: {\n 'click': function click() {\n _this.$emit('select', selection.key, index, selection.onSelect);\n }\n }\n },\n [selection.text]\n )]\n );\n });\n }\n },\n\n render: function render() {\n var h = arguments[0];\n var disabled = this.disabled,\n prefixCls = this.prefixCls,\n selections = this.selections,\n getPopupContainer = this.getPopupContainer,\n checked = this.checked,\n indeterminate = this.indeterminate;\n\n\n var selectionPrefixCls = prefixCls + '-selection';\n\n var customSelections = null;\n\n if (selections) {\n var newSelections = Array.isArray(selections) ? this.defaultSelections.concat(selections) : this.defaultSelections;\n\n var menu = h(\n Menu,\n { 'class': selectionPrefixCls + '-menu', attrs: { selectedKeys: [] }\n },\n [this.renderMenus(newSelections)]\n );\n\n customSelections = newSelections.length > 0 ? h(\n Dropdown,\n {\n attrs: { getPopupContainer: getPopupContainer }\n },\n [h(\n 'template',\n { slot: 'overlay' },\n [menu]\n ), h(\n 'div',\n { 'class': selectionPrefixCls + '-down' },\n [h(Icon, {\n attrs: { type: 'down' }\n })]\n )]\n ) : null;\n }\n\n return h(\n 'div',\n { 'class': selectionPrefixCls },\n [h(Checkbox, {\n 'class': classNames(_defineProperty({}, selectionPrefixCls + '-select-all-custom', customSelections)),\n attrs: { checked: checked,\n indeterminate: indeterminate,\n disabled: disabled\n },\n on: {\n 'change': this.handleSelectAllChange\n }\n }), customSelections]\n );\n }\n};","import { ColumnProps } from './interface';\n\nexport default {\n name: 'ATableColumn',\n props: ColumnProps\n};","import PropTypes from '../_util/vue-types';\n\nexport default {\n name: 'ATableColumnGroup',\n props: {\n fixed: PropTypes.oneOfType([PropTypes.bool, PropTypes.oneOf(['left', 'right'])]),\n title: PropTypes.any\n },\n __ANT_TABLE_COLUMN_GROUP: true\n};","import _mergeJSXProps from 'babel-helper-vue-jsx-merge-props';\nimport _defineProperty from 'babel-runtime/helpers/defineProperty';\nimport PropTypes from '../_util/vue-types';\nimport { getListeners } from '../_util/props-util';\n\nvar BodyRowProps = {\n store: PropTypes.any,\n rowKey: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n prefixCls: PropTypes.string\n};\n\nexport default function createBodyRow() {\n var Component = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'tr';\n\n var BodyRow = {\n name: 'BodyRow',\n props: BodyRowProps,\n computed: {\n selected: function selected() {\n return this.$props.store.selectedRowKeys.indexOf(this.$props.rowKey) >= 0;\n }\n },\n render: function render() {\n var h = arguments[0];\n\n var className = _defineProperty({}, this.prefixCls + '-row-selected', this.selected);\n\n return h(\n Component,\n _mergeJSXProps([{ 'class': className }, { on: getListeners(this) }]),\n [this.$slots['default']]\n );\n }\n };\n\n return BodyRow;\n}","import _objectWithoutProperties from 'babel-runtime/helpers/objectWithoutProperties';\nimport _defineProperty from 'babel-runtime/helpers/defineProperty';\nimport _toConsumableArray from 'babel-runtime/helpers/toConsumableArray';\nimport _typeof from 'babel-runtime/helpers/typeof';\nimport _extends from 'babel-runtime/helpers/extends';\nimport VcTable, { INTERNAL_COL_DEFINE } from '../vc-table';\nimport classNames from 'classnames';\nimport shallowEqual from 'shallowequal';\nimport FilterDropdown from './filterDropdown';\nimport SelectionBox from './SelectionBox';\nimport SelectionCheckboxAll from './SelectionCheckboxAll';\nimport Column from './Column';\nimport ColumnGroup from './ColumnGroup';\nimport createBodyRow from './createBodyRow';\nimport { flatArray, treeMap, flatFilter } from './util';\nimport { initDefaultProps, mergeProps, getOptionProps, getListeners } from '../_util/props-util';\nimport BaseMixin from '../_util/BaseMixin';\nimport { ConfigConsumerProps } from '../config-provider/configConsumerProps';\nimport { TableProps } from './interface';\nimport Pagination from '../pagination';\nimport Icon from '../icon';\nimport Spin from '../spin';\nimport LocaleReceiver from '../locale-provider/LocaleReceiver';\nimport defaultLocale from '../locale-provider/default';\nimport warning from '../_util/warning';\nimport scrollTo from '../_util/scrollTo';\nimport TransButton from '../_util/transButton';\nimport Vue from 'vue';\n\nfunction noop() {}\n\nfunction stopPropagation(e) {\n e.stopPropagation();\n}\n\nfunction getRowSelection(props) {\n return props.rowSelection || {};\n}\n\nfunction getColumnKey(column, index) {\n return column.key || column.dataIndex || index;\n}\n\nfunction isSameColumn(a, b) {\n if (a && b && a.key && a.key === b.key) {\n return true;\n }\n return a === b || shallowEqual(a, b, function (value, other) {\n // https://github.com/ant-design/ant-design/issues/12737\n if (typeof value === 'function' && typeof other === 'function') {\n return value === other || value.toString() === other.toString();\n }\n // https://github.com/ant-design/ant-design/issues/19398\n if (Array.isArray(value) && Array.isArray(other)) {\n return value === other || shallowEqual(value, other);\n }\n });\n}\n\nvar defaultPagination = {\n onChange: noop,\n onShowSizeChange: noop\n};\n\n/**\n * Avoid creating new object, so that parent component's shouldComponentUpdate\n * can works appropriately。\n */\nvar emptyObject = {};\n\nvar createComponents = function createComponents() {\n var components = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n var bodyRow = components && components.body && components.body.row;\n return _extends({}, components, {\n body: _extends({}, components.body, {\n row: createBodyRow(bodyRow)\n })\n });\n};\n\nfunction isTheSameComponents() {\n var components1 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var components2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n return components1 === components2 || ['table', 'header', 'body'].every(function (key) {\n return shallowEqual(components1[key], components2[key]);\n });\n}\n\nfunction getFilteredValueColumns(state, columns) {\n return flatFilter(columns || (state || {}).columns || [], function (column) {\n return typeof column.filteredValue !== 'undefined';\n });\n}\n\nfunction getFiltersFromColumns(state, columns) {\n var filters = {};\n getFilteredValueColumns(state, columns).forEach(function (col) {\n var colKey = getColumnKey(col);\n filters[colKey] = col.filteredValue;\n });\n return filters;\n}\n\nfunction isFiltersChanged(state, filters) {\n if (Object.keys(filters).length !== Object.keys(state.filters).length) {\n return true;\n }\n return Object.keys(filters).some(function (columnKey) {\n return filters[columnKey] !== state.filters[columnKey];\n });\n}\n\nexport default {\n name: 'Table',\n Column: Column,\n ColumnGroup: ColumnGroup,\n mixins: [BaseMixin],\n inject: {\n configProvider: { 'default': function _default() {\n return ConfigConsumerProps;\n } }\n },\n provide: function provide() {\n return {\n store: this.store\n };\n },\n\n props: initDefaultProps(TableProps, {\n dataSource: [],\n useFixedHeader: false,\n // rowSelection: null,\n size: 'default',\n loading: false,\n bordered: false,\n indentSize: 20,\n locale: {},\n rowKey: 'key',\n showHeader: true,\n sortDirections: ['ascend', 'descend'],\n childrenColumnName: 'children'\n }),\n\n data: function data() {\n var props = getOptionProps(this);\n warning(!props.expandedRowRender || !('scroll' in props) || !props.scroll.x, '`expandedRowRender` and `scroll` are not compatible. Please use one of them at one time.');\n this.CheckboxPropsCache = {};\n\n this.store = (this.$root.constructor.observable || Vue.observable)({\n selectedRowKeys: getRowSelection(this.$props).selectedRowKeys || [],\n selectionDirty: false\n });\n return _extends({}, this.getDefaultSortOrder(props.columns || []), {\n // 减少状态\n sFilters: this.getDefaultFilters(props.columns),\n sPagination: this.getDefaultPagination(this.$props),\n pivot: undefined,\n sComponents: createComponents(this.components),\n filterDataCnt: 0\n });\n },\n\n watch: {\n pagination: {\n handler: function handler(val) {\n this.setState(function (previousState) {\n var newPagination = _extends({}, defaultPagination, previousState.sPagination, val);\n newPagination.current = newPagination.current || 1;\n newPagination.pageSize = newPagination.pageSize || 10;\n return { sPagination: val !== false ? newPagination : emptyObject };\n });\n },\n\n deep: true\n },\n rowSelection: {\n handler: function handler(val, oldVal) {\n if (val && 'selectedRowKeys' in val) {\n this.store.selectedRowKeys = val.selectedRowKeys || [];\n var rowSelection = this.rowSelection;\n\n if (rowSelection && val.getCheckboxProps !== rowSelection.getCheckboxProps) {\n this.CheckboxPropsCache = {};\n }\n } else if (oldVal && !val) {\n this.store.selectedRowKeys = [];\n }\n },\n\n deep: true\n },\n\n dataSource: function dataSource() {\n this.store.selectionDirty = false;\n this.CheckboxPropsCache = {};\n },\n columns: function columns(val) {\n var filteredValueColumns = getFilteredValueColumns({ columns: val }, val);\n if (filteredValueColumns.length > 0) {\n var filtersFromColumns = getFiltersFromColumns({ columns: val }, val);\n var newFilters = _extends({}, this.sFilters);\n Object.keys(filtersFromColumns).forEach(function (key) {\n newFilters[key] = filtersFromColumns[key];\n });\n if (isFiltersChanged({ filters: this.sFilters }, newFilters)) {\n this.setState({ sFilters: newFilters });\n }\n }\n this.$forceUpdate();\n },\n\n components: {\n handler: function handler(val, oldVal) {\n if (!isTheSameComponents(val, oldVal)) {\n var components = createComponents(val);\n this.setState({ sComponents: components });\n }\n },\n\n deep: true\n }\n },\n updated: function updated() {\n var columns = this.columns,\n sortColumn = this.sSortColumn,\n sortOrder = this.sSortOrder;\n\n if (this.getSortOrderColumns(columns).length > 0) {\n var sortState = this.getSortStateFromColumns(columns);\n if (!isSameColumn(sortState.sSortColumn, sortColumn) || sortState.sSortOrder !== sortOrder) {\n this.setState(sortState);\n }\n }\n },\n\n methods: {\n getCheckboxPropsByItem: function getCheckboxPropsByItem(item, index) {\n var rowSelection = getRowSelection(this.$props);\n if (!rowSelection.getCheckboxProps) {\n return { props: {} };\n }\n var key = this.getRecordKey(item, index);\n // Cache checkboxProps\n if (!this.CheckboxPropsCache[key]) {\n this.CheckboxPropsCache[key] = rowSelection.getCheckboxProps(item);\n }\n this.CheckboxPropsCache[key].props = this.CheckboxPropsCache[key].props || {};\n return this.CheckboxPropsCache[key];\n },\n getDefaultSelection: function getDefaultSelection() {\n var _this = this;\n\n var rowSelection = getRowSelection(this.$props);\n if (!rowSelection.getCheckboxProps) {\n return [];\n }\n return this.getFlatData().filter(function (item, rowIndex) {\n return _this.getCheckboxPropsByItem(item, rowIndex).props.defaultChecked;\n }).map(function (record, rowIndex) {\n return _this.getRecordKey(record, rowIndex);\n });\n },\n getDefaultPagination: function getDefaultPagination(props) {\n var pagination = _typeof(props.pagination) === 'object' ? props.pagination : {};\n var current = void 0;\n if ('current' in pagination) {\n current = pagination.current;\n } else if ('defaultCurrent' in pagination) {\n current = pagination.defaultCurrent;\n }\n var pageSize = void 0;\n if ('pageSize' in pagination) {\n pageSize = pagination.pageSize;\n } else if ('defaultPageSize' in pagination) {\n pageSize = pagination.defaultPageSize;\n }\n return this.hasPagination(props) ? _extends({}, defaultPagination, pagination, {\n current: current || 1,\n pageSize: pageSize || 10\n }) : {};\n },\n getSortOrderColumns: function getSortOrderColumns(columns) {\n return flatFilter(columns || this.columns || [], function (column) {\n return 'sortOrder' in column;\n });\n },\n getDefaultFilters: function getDefaultFilters(columns) {\n var definedFilters = getFiltersFromColumns({ columns: this.columns }, columns);\n\n var defaultFilteredValueColumns = flatFilter(columns || [], function (column) {\n return typeof column.defaultFilteredValue !== 'undefined';\n });\n\n var defaultFilters = defaultFilteredValueColumns.reduce(function (soFar, col) {\n var colKey = getColumnKey(col);\n soFar[colKey] = col.defaultFilteredValue;\n return soFar;\n }, {});\n\n return _extends({}, defaultFilters, definedFilters);\n },\n getDefaultSortOrder: function getDefaultSortOrder(columns) {\n var definedSortState = this.getSortStateFromColumns(columns);\n\n var defaultSortedColumn = flatFilter(columns || [], function (column) {\n return column.defaultSortOrder != null;\n })[0];\n\n if (defaultSortedColumn && !definedSortState.sortColumn) {\n return {\n sSortColumn: defaultSortedColumn,\n sSortOrder: defaultSortedColumn.defaultSortOrder\n };\n }\n\n return definedSortState;\n },\n getSortStateFromColumns: function getSortStateFromColumns(columns) {\n // return first column which sortOrder is not falsy\n var sortedColumn = this.getSortOrderColumns(columns).filter(function (col) {\n return col.sortOrder;\n })[0];\n\n if (sortedColumn) {\n return {\n sSortColumn: sortedColumn,\n sSortOrder: sortedColumn.sortOrder\n };\n }\n\n return {\n sSortColumn: null,\n sSortOrder: null\n };\n },\n getMaxCurrent: function getMaxCurrent(total) {\n var _sPagination = this.sPagination,\n current = _sPagination.current,\n pageSize = _sPagination.pageSize;\n\n if ((current - 1) * pageSize >= total) {\n return Math.floor((total - 1) / pageSize) + 1;\n }\n return current;\n },\n getRecordKey: function getRecordKey(record, index) {\n var rowKey = this.rowKey;\n\n var recordKey = typeof rowKey === 'function' ? rowKey(record, index) : record[rowKey];\n warning(recordKey !== undefined, 'Table', 'Each record in dataSource of table should have a unique `key` prop, ' + 'or set `rowKey` of Table to an unique primary key, ');\n return recordKey === undefined ? index : recordKey;\n },\n getSorterFn: function getSorterFn(state) {\n var _ref = state || this.$data,\n sortOrder = _ref.sSortOrder,\n sortColumn = _ref.sSortColumn;\n\n if (!sortOrder || !sortColumn || typeof sortColumn.sorter !== 'function') {\n return;\n }\n\n return function (a, b) {\n var result = sortColumn.sorter(a, b, sortOrder);\n if (result !== 0) {\n return sortOrder === 'descend' ? -result : result;\n }\n return 0;\n };\n },\n getCurrentPageData: function getCurrentPageData() {\n var data = this.getLocalData();\n this.filterDataCnt = data.length;\n var current = void 0;\n var pageSize = void 0;\n var sPagination = this.sPagination;\n // 如果没有分页的话,默认全部展示\n if (!this.hasPagination()) {\n pageSize = Number.MAX_VALUE;\n current = 1;\n } else {\n pageSize = sPagination.pageSize;\n current = this.getMaxCurrent(sPagination.total || data.length);\n }\n\n // 分页\n // ---\n // 当数据量少于等于每页数量时,直接设置数据\n // 否则进行读取分页数据\n if (data.length > pageSize || pageSize === Number.MAX_VALUE) {\n data = data.slice((current - 1) * pageSize, current * pageSize);\n }\n return data;\n },\n getFlatData: function getFlatData() {\n var childrenColumnName = this.$props.childrenColumnName;\n\n return flatArray(this.getLocalData(null, false), childrenColumnName);\n },\n getFlatCurrentPageData: function getFlatCurrentPageData() {\n var childrenColumnName = this.$props.childrenColumnName;\n\n return flatArray(this.getCurrentPageData(), childrenColumnName);\n },\n getLocalData: function getLocalData(state) {\n var _this2 = this;\n\n var filter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n\n var currentState = state || this.$data;\n var filters = currentState.sFilters;\n var dataSource = this.$props.dataSource;\n\n var data = dataSource || [];\n // 优化本地排序\n data = data.slice(0);\n var sorterFn = this.getSorterFn(currentState);\n if (sorterFn) {\n // 使用新数组,避免改变原数组导致无限循环更新\n // https://github.com/vueComponent/ant-design-vue/issues/2270\n data = this.recursiveSort([].concat(_toConsumableArray(data)), sorterFn);\n }\n // 筛选\n if (filter && filters) {\n Object.keys(filters).forEach(function (columnKey) {\n var col = _this2.findColumn(columnKey);\n if (!col) {\n return;\n }\n var values = filters[columnKey] || [];\n if (values.length === 0) {\n return;\n }\n var onFilter = col.onFilter;\n data = onFilter ? data.filter(function (record) {\n return values.some(function (v) {\n return onFilter(v, record);\n });\n }) : data;\n });\n }\n return data;\n },\n onRow: function onRow(prefixCls, record, index) {\n var customRow = this.customRow;\n\n var custom = customRow ? customRow(record, index) : {};\n return mergeProps(custom, {\n props: {\n prefixCls: prefixCls,\n store: this.store,\n rowKey: this.getRecordKey(record, index)\n }\n });\n },\n setSelectedRowKeys: function setSelectedRowKeys(selectedRowKeys, selectionInfo) {\n var _this3 = this;\n\n var selectWay = selectionInfo.selectWay,\n record = selectionInfo.record,\n checked = selectionInfo.checked,\n changeRowKeys = selectionInfo.changeRowKeys,\n nativeEvent = selectionInfo.nativeEvent;\n\n var rowSelection = getRowSelection(this.$props);\n if (rowSelection && !('selectedRowKeys' in rowSelection)) {\n this.store.selectedRowKeys = selectedRowKeys;\n }\n var data = this.getFlatData();\n if (!rowSelection.onChange && !rowSelection[selectWay]) {\n return;\n }\n var selectedRows = data.filter(function (row, i) {\n return selectedRowKeys.indexOf(_this3.getRecordKey(row, i)) >= 0;\n });\n if (rowSelection.onChange) {\n rowSelection.onChange(selectedRowKeys, selectedRows);\n }\n if (selectWay === 'onSelect' && rowSelection.onSelect) {\n rowSelection.onSelect(record, checked, selectedRows, nativeEvent);\n } else if (selectWay === 'onSelectMultiple' && rowSelection.onSelectMultiple) {\n var changeRows = data.filter(function (row, i) {\n return changeRowKeys.indexOf(_this3.getRecordKey(row, i)) >= 0;\n });\n rowSelection.onSelectMultiple(checked, selectedRows, changeRows);\n } else if (selectWay === 'onSelectAll' && rowSelection.onSelectAll) {\n var _changeRows = data.filter(function (row, i) {\n return changeRowKeys.indexOf(_this3.getRecordKey(row, i)) >= 0;\n });\n rowSelection.onSelectAll(checked, selectedRows, _changeRows);\n } else if (selectWay === 'onSelectInvert' && rowSelection.onSelectInvert) {\n rowSelection.onSelectInvert(selectedRowKeys);\n }\n },\n generatePopupContainerFunc: function generatePopupContainerFunc(getPopupContainer) {\n var scroll = this.$props.scroll;\n\n var table = this.$refs.vcTable;\n if (getPopupContainer) {\n return getPopupContainer;\n }\n // Use undefined to let rc component use default logic.\n return scroll && table ? function () {\n return table.getTableNode();\n } : undefined;\n },\n scrollToFirstRow: function scrollToFirstRow() {\n var _this4 = this;\n\n var scroll = this.$props.scroll;\n\n if (scroll && scroll.scrollToFirstRowOnChange !== false) {\n scrollTo(0, {\n getContainer: function getContainer() {\n return _this4.$refs.vcTable.getBodyTable();\n }\n });\n }\n },\n isSameColumn: function isSameColumn(a, b) {\n if (a && b && a.key && a.key === b.key) {\n return true;\n }\n return a === b || shallowEqual(a, b, function (value, other) {\n if (typeof value === 'function' && typeof other === 'function') {\n return value === other || value.toString() === other.toString();\n }\n });\n },\n handleFilter: function handleFilter(column, nextFilters) {\n var _this5 = this;\n\n var props = this.$props;\n var pagination = _extends({}, this.sPagination);\n var filters = _extends({}, this.sFilters, _defineProperty({}, getColumnKey(column), nextFilters));\n // Remove filters not in current columns\n var currentColumnKeys = [];\n treeMap(this.columns, function (c) {\n if (!c.children) {\n currentColumnKeys.push(getColumnKey(c));\n }\n });\n Object.keys(filters).forEach(function (columnKey) {\n if (currentColumnKeys.indexOf(columnKey) < 0) {\n delete filters[columnKey];\n }\n });\n\n if (props.pagination) {\n // Reset current prop\n pagination.current = 1;\n pagination.onChange(pagination.current);\n }\n\n var newState = {\n sPagination: pagination,\n sFilters: {}\n };\n var filtersToSetState = _extends({}, filters);\n // Remove filters which is controlled\n getFilteredValueColumns({ columns: props.columns }).forEach(function (col) {\n var columnKey = getColumnKey(col);\n if (columnKey) {\n delete filtersToSetState[columnKey];\n }\n });\n if (Object.keys(filtersToSetState).length > 0) {\n newState.sFilters = filtersToSetState;\n }\n\n // Controlled current prop will not respond user interaction\n if (_typeof(props.pagination) === 'object' && 'current' in props.pagination) {\n newState.sPagination = _extends({}, pagination, {\n current: this.sPagination.current\n });\n }\n\n this.setState(newState, function () {\n _this5.scrollToFirstRow();\n _this5.store.selectionDirty = false;\n _this5.$emit.apply(_this5, ['change'].concat(_toConsumableArray(_this5.prepareParamsArguments(_extends({}, _this5.$data, {\n sSelectionDirty: false,\n sFilters: filters,\n sPagination: pagination\n })))));\n });\n },\n handleSelect: function handleSelect(record, rowIndex, e) {\n var _this6 = this;\n\n var checked = e.target.checked;\n var nativeEvent = e.nativeEvent;\n var defaultSelection = this.store.selectionDirty ? [] : this.getDefaultSelection();\n var selectedRowKeys = this.store.selectedRowKeys.concat(defaultSelection);\n var key = this.getRecordKey(record, rowIndex);\n var pivot = this.$data.pivot;\n\n var rows = this.getFlatCurrentPageData();\n var realIndex = rowIndex;\n if (this.$props.expandedRowRender) {\n realIndex = rows.findIndex(function (row) {\n return _this6.getRecordKey(row, rowIndex) === key;\n });\n }\n if (nativeEvent.shiftKey && pivot !== undefined && realIndex !== pivot) {\n var changeRowKeys = [];\n var direction = Math.sign(pivot - realIndex);\n var dist = Math.abs(pivot - realIndex);\n var step = 0;\n\n var _loop = function _loop() {\n var i = realIndex + step * direction;\n step += 1;\n var row = rows[i];\n var rowKey = _this6.getRecordKey(row, i);\n var checkboxProps = _this6.getCheckboxPropsByItem(row, i);\n if (!checkboxProps.disabled) {\n if (selectedRowKeys.includes(rowKey)) {\n if (!checked) {\n selectedRowKeys = selectedRowKeys.filter(function (j) {\n return rowKey !== j;\n });\n changeRowKeys.push(rowKey);\n }\n } else if (checked) {\n selectedRowKeys.push(rowKey);\n changeRowKeys.push(rowKey);\n }\n }\n };\n\n while (step <= dist) {\n _loop();\n }\n\n this.setState({ pivot: realIndex });\n this.store.selectionDirty = true;\n this.setSelectedRowKeys(selectedRowKeys, {\n selectWay: 'onSelectMultiple',\n record: record,\n checked: checked,\n changeRowKeys: changeRowKeys,\n nativeEvent: nativeEvent\n });\n } else {\n if (checked) {\n selectedRowKeys.push(this.getRecordKey(record, realIndex));\n } else {\n selectedRowKeys = selectedRowKeys.filter(function (i) {\n return key !== i;\n });\n }\n this.setState({ pivot: realIndex });\n this.store.selectionDirty = true;\n this.setSelectedRowKeys(selectedRowKeys, {\n selectWay: 'onSelect',\n record: record,\n checked: checked,\n changeRowKeys: undefined,\n nativeEvent: nativeEvent\n });\n }\n },\n handleRadioSelect: function handleRadioSelect(record, rowIndex, e) {\n var checked = e.target.checked;\n var nativeEvent = e.nativeEvent;\n var key = this.getRecordKey(record, rowIndex);\n var selectedRowKeys = [key];\n this.store.selectionDirty = true;\n this.setSelectedRowKeys(selectedRowKeys, {\n selectWay: 'onSelect',\n record: record,\n checked: checked,\n changeRowKeys: undefined,\n nativeEvent: nativeEvent\n });\n },\n handleSelectRow: function handleSelectRow(selectionKey, index, onSelectFunc) {\n var _this7 = this;\n\n var data = this.getFlatCurrentPageData();\n var defaultSelection = this.store.selectionDirty ? [] : this.getDefaultSelection();\n var selectedRowKeys = this.store.selectedRowKeys.concat(defaultSelection);\n var changeableRowKeys = data.filter(function (item, i) {\n return !_this7.getCheckboxPropsByItem(item, i).props.disabled;\n }).map(function (item, i) {\n return _this7.getRecordKey(item, i);\n });\n\n var changeRowKeys = [];\n var selectWay = 'onSelectAll';\n var checked = void 0;\n // handle default selection\n switch (selectionKey) {\n case 'all':\n changeableRowKeys.forEach(function (key) {\n if (selectedRowKeys.indexOf(key) < 0) {\n selectedRowKeys.push(key);\n changeRowKeys.push(key);\n }\n });\n selectWay = 'onSelectAll';\n checked = true;\n break;\n case 'removeAll':\n changeableRowKeys.forEach(function (key) {\n if (selectedRowKeys.indexOf(key) >= 0) {\n selectedRowKeys.splice(selectedRowKeys.indexOf(key), 1);\n changeRowKeys.push(key);\n }\n });\n selectWay = 'onSelectAll';\n checked = false;\n break;\n case 'invert':\n changeableRowKeys.forEach(function (key) {\n if (selectedRowKeys.indexOf(key) < 0) {\n selectedRowKeys.push(key);\n } else {\n selectedRowKeys.splice(selectedRowKeys.indexOf(key), 1);\n }\n changeRowKeys.push(key);\n selectWay = 'onSelectInvert';\n });\n break;\n default:\n break;\n }\n\n this.store.selectionDirty = true;\n // when select custom selection, callback selections[n].onSelect\n var rowSelection = this.rowSelection;\n\n var customSelectionStartIndex = 2;\n if (rowSelection && rowSelection.hideDefaultSelections) {\n customSelectionStartIndex = 0;\n }\n if (index >= customSelectionStartIndex && typeof onSelectFunc === 'function') {\n return onSelectFunc(changeableRowKeys);\n }\n this.setSelectedRowKeys(selectedRowKeys, {\n selectWay: selectWay,\n checked: checked,\n changeRowKeys: changeRowKeys\n });\n },\n handlePageChange: function handlePageChange(current) {\n var props = this.$props;\n var pagination = _extends({}, this.sPagination);\n if (current) {\n pagination.current = current;\n } else {\n pagination.current = pagination.current || 1;\n }\n\n for (var _len = arguments.length, otherArguments = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n otherArguments[_key - 1] = arguments[_key];\n }\n\n pagination.onChange.apply(pagination, [pagination.current].concat(_toConsumableArray(otherArguments)));\n\n var newState = {\n sPagination: pagination\n };\n // Controlled current prop will not respond user interaction\n if (props.pagination && _typeof(props.pagination) === 'object' && 'current' in props.pagination) {\n newState.sPagination = _extends({}, pagination, {\n current: this.sPagination.current\n });\n }\n this.setState(newState, this.scrollToFirstRow);\n\n this.store.selectionDirty = false;\n this.$emit.apply(this, ['change'].concat(_toConsumableArray(this.prepareParamsArguments(_extends({}, this.$data, {\n sSelectionDirty: false,\n sPagination: pagination\n })))));\n },\n handleShowSizeChange: function handleShowSizeChange(current, pageSize) {\n var pagination = this.sPagination;\n pagination.onShowSizeChange(current, pageSize);\n var nextPagination = _extends({}, pagination, {\n pageSize: pageSize,\n current: current\n });\n this.setState({ sPagination: nextPagination }, this.scrollToFirstRow);\n this.$emit.apply(this, ['change'].concat(_toConsumableArray(this.prepareParamsArguments(_extends({}, this.$data, {\n sPagination: nextPagination\n })))));\n },\n toggleSortOrder: function toggleSortOrder(column) {\n var sortDirections = column.sortDirections || this.sortDirections;\n var sortOrder = this.sSortOrder,\n sortColumn = this.sSortColumn;\n // 只同时允许一列进行排序,否则会导致排序顺序的逻辑问题\n\n var newSortOrder = void 0;\n // 切换另一列时,丢弃 sortOrder 的状态\n if (isSameColumn(sortColumn, column) && sortOrder !== undefined) {\n // 按照sortDirections的内容依次切换排序状态\n var methodIndex = sortDirections.indexOf(sortOrder) + 1;\n newSortOrder = methodIndex === sortDirections.length ? undefined : sortDirections[methodIndex];\n } else {\n newSortOrder = sortDirections[0];\n }\n var newState = {\n sSortOrder: newSortOrder,\n sSortColumn: newSortOrder ? column : null\n };\n\n // Controlled\n if (this.getSortOrderColumns().length === 0) {\n this.setState(newState, this.scrollToFirstRow);\n }\n this.$emit.apply(this, ['change'].concat(_toConsumableArray(this.prepareParamsArguments(_extends({}, this.$data, newState), column))));\n },\n hasPagination: function hasPagination(props) {\n return (props || this.$props).pagination !== false;\n },\n isSortColumn: function isSortColumn(column) {\n var sortColumn = this.sSortColumn;\n\n if (!column || !sortColumn) {\n return false;\n }\n return getColumnKey(sortColumn) === getColumnKey(column);\n },\n\n\n // Get pagination, filters, sorter\n prepareParamsArguments: function prepareParamsArguments(state, column) {\n var pagination = _extends({}, state.sPagination);\n // remove useless handle function in Table.onChange\n delete pagination.onChange;\n delete pagination.onShowSizeChange;\n var filters = state.sFilters;\n var sorter = {};\n var currentColumn = column;\n if (state.sSortColumn && state.sSortOrder) {\n currentColumn = state.sSortColumn;\n sorter.column = state.sSortColumn;\n sorter.order = state.sSortOrder;\n }\n\n if (currentColumn) {\n sorter.field = currentColumn.dataIndex;\n sorter.columnKey = getColumnKey(currentColumn);\n }\n\n var extra = {\n currentDataSource: this.getLocalData(state)\n };\n\n return [pagination, filters, sorter, extra];\n },\n findColumn: function findColumn(myKey) {\n var column = void 0;\n treeMap(this.columns, function (c) {\n if (getColumnKey(c) === myKey) {\n column = c;\n }\n });\n return column;\n },\n recursiveSort: function recursiveSort(data, sorterFn) {\n var _this8 = this;\n\n var _childrenColumnName = this.childrenColumnName,\n childrenColumnName = _childrenColumnName === undefined ? 'children' : _childrenColumnName;\n\n return data.sort(sorterFn).map(function (item) {\n return item[childrenColumnName] ? _extends({}, item, _defineProperty({}, childrenColumnName, _this8.recursiveSort([].concat(_toConsumableArray(item[childrenColumnName])), sorterFn))) : item;\n });\n },\n renderExpandIcon: function renderExpandIcon(prefixCls) {\n var h = this.$createElement;\n\n return function (_ref2) {\n var expandable = _ref2.expandable,\n expanded = _ref2.expanded,\n needIndentSpaced = _ref2.needIndentSpaced,\n record = _ref2.record,\n onExpand = _ref2.onExpand;\n\n if (expandable) {\n return h(\n LocaleReceiver,\n {\n attrs: { componentName: 'Table', defaultLocale: defaultLocale.Table }\n },\n [function (locale) {\n var _classNames;\n\n return h(TransButton, {\n 'class': classNames(prefixCls + '-row-expand-icon', (_classNames = {}, _defineProperty(_classNames, prefixCls + '-row-collapsed', !expanded), _defineProperty(_classNames, prefixCls + '-row-expanded', expanded), _classNames)),\n on: {\n 'click': function click(event) {\n onExpand(record, event);\n }\n },\n attrs: {\n 'aria-label': expanded ? locale.collapse : locale.expand,\n noStyle: true\n }\n });\n }]\n );\n }\n\n if (needIndentSpaced) {\n return h('span', { 'class': prefixCls + '-row-expand-icon ' + prefixCls + '-row-spaced' });\n }\n\n return null;\n };\n },\n renderPagination: function renderPagination(prefixCls, paginationPosition) {\n var h = this.$createElement;\n\n // 强制不需要分页\n if (!this.hasPagination()) {\n return null;\n }\n var size = 'default';\n var pagination = this.sPagination;\n\n if (pagination.size) {\n size = pagination.size;\n } else if (this.size === 'middle' || this.size === 'small') {\n size = 'small';\n }\n var position = pagination.position || 'bottom';\n var total = pagination.total || this.filterDataCnt;\n\n var cls = pagination['class'],\n style = pagination.style,\n onChange = pagination.onChange,\n onShowSizeChange = pagination.onShowSizeChange,\n restProps = _objectWithoutProperties(pagination, ['class', 'style', 'onChange', 'onShowSizeChange']); // eslint-disable-line\n\n\n var paginationProps = mergeProps({\n key: 'pagination-' + paginationPosition,\n 'class': classNames(cls, prefixCls + '-pagination'),\n props: _extends({}, restProps, {\n total: total,\n size: size,\n current: this.getMaxCurrent(total)\n }),\n style: style,\n on: {\n change: this.handlePageChange,\n showSizeChange: this.handleShowSizeChange\n }\n });\n return total > 0 && (position === paginationPosition || position === 'both') ? h(Pagination, paginationProps) : null;\n },\n renderSelectionBox: function renderSelectionBox(type) {\n var _this9 = this;\n\n var h = this.$createElement;\n\n return function (_, record, index) {\n var rowKey = _this9.getRecordKey(record, index); // 从 1 开始\n var props = _this9.getCheckboxPropsByItem(record, index);\n var handleChange = function handleChange(e) {\n type === 'radio' ? _this9.handleRadioSelect(record, index, e) : _this9.handleSelect(record, index, e);\n };\n var selectionBoxProps = mergeProps({\n props: {\n type: type,\n store: _this9.store,\n rowIndex: rowKey,\n defaultSelection: _this9.getDefaultSelection()\n },\n on: {\n change: handleChange\n }\n }, props);\n\n return h(\n 'span',\n {\n on: {\n 'click': stopPropagation\n }\n },\n [h(SelectionBox, selectionBoxProps)]\n );\n };\n },\n renderRowSelection: function renderRowSelection(_ref3) {\n var _this10 = this;\n\n var prefixCls = _ref3.prefixCls,\n locale = _ref3.locale,\n getPopupContainer = _ref3.getPopupContainer;\n var h = this.$createElement;\n var rowSelection = this.rowSelection;\n\n var columns = this.columns.concat();\n if (rowSelection) {\n var data = this.getFlatCurrentPageData().filter(function (item, index) {\n if (rowSelection.getCheckboxProps) {\n return !_this10.getCheckboxPropsByItem(item, index).props.disabled;\n }\n return true;\n });\n var selectionColumnClass = classNames(prefixCls + '-selection-column', _defineProperty({}, prefixCls + '-selection-column-custom', rowSelection.selections));\n var selectionColumn = _defineProperty({\n key: 'selection-column',\n customRender: this.renderSelectionBox(rowSelection.type),\n className: selectionColumnClass,\n fixed: rowSelection.fixed,\n width: rowSelection.columnWidth,\n title: rowSelection.columnTitle\n }, INTERNAL_COL_DEFINE, {\n 'class': prefixCls + '-selection-col'\n });\n if (rowSelection.type !== 'radio') {\n var checkboxAllDisabled = data.every(function (item, index) {\n return _this10.getCheckboxPropsByItem(item, index).props.disabled;\n });\n selectionColumn.title = selectionColumn.title || h(SelectionCheckboxAll, {\n attrs: {\n store: this.store,\n locale: locale,\n data: data,\n getCheckboxPropsByItem: this.getCheckboxPropsByItem,\n getRecordKey: this.getRecordKey,\n disabled: checkboxAllDisabled,\n prefixCls: prefixCls,\n\n selections: rowSelection.selections,\n hideDefaultSelections: rowSelection.hideDefaultSelections,\n getPopupContainer: this.generatePopupContainerFunc(getPopupContainer)\n },\n on: {\n 'select': this.handleSelectRow\n }\n });\n }\n if ('fixed' in rowSelection) {\n selectionColumn.fixed = rowSelection.fixed;\n } else if (columns.some(function (column) {\n return column.fixed === 'left' || column.fixed === true;\n })) {\n selectionColumn.fixed = 'left';\n }\n if (columns[0] && columns[0].key === 'selection-column') {\n columns[0] = selectionColumn;\n } else {\n columns.unshift(selectionColumn);\n }\n }\n return columns;\n },\n renderColumnsDropdown: function renderColumnsDropdown(_ref4) {\n var _this11 = this;\n\n var prefixCls = _ref4.prefixCls,\n dropdownPrefixCls = _ref4.dropdownPrefixCls,\n columns = _ref4.columns,\n locale = _ref4.locale,\n getPopupContainer = _ref4.getPopupContainer;\n var h = this.$createElement;\n var sortOrder = this.sSortOrder,\n filters = this.sFilters;\n\n return treeMap(columns, function (column, i) {\n var _classNames3;\n\n var key = getColumnKey(column, i);\n var filterDropdown = void 0;\n var sortButton = void 0;\n var customHeaderCell = column.customHeaderCell;\n var isSortColumn = _this11.isSortColumn(column);\n if (column.filters && column.filters.length > 0 || column.filterDropdown) {\n var colFilters = key in filters ? filters[key] : [];\n filterDropdown = h(FilterDropdown, {\n attrs: {\n _propsSymbol: Symbol(),\n locale: locale,\n column: column,\n selectedKeys: colFilters,\n confirmFilter: _this11.handleFilter,\n prefixCls: prefixCls + '-filter',\n dropdownPrefixCls: dropdownPrefixCls || 'ant-dropdown',\n getPopupContainer: _this11.generatePopupContainerFunc(getPopupContainer)\n },\n key: 'filter-dropdown'\n });\n }\n if (column.sorter) {\n var sortDirections = column.sortDirections || _this11.sortDirections;\n var isAscend = isSortColumn && sortOrder === 'ascend';\n var isDescend = isSortColumn && sortOrder === 'descend';\n var ascend = sortDirections.indexOf('ascend') !== -1 && h(Icon, {\n 'class': prefixCls + '-column-sorter-up ' + (isAscend ? 'on' : 'off'),\n attrs: { type: 'caret-up',\n theme: 'filled'\n },\n key: 'caret-up'\n });\n\n var descend = sortDirections.indexOf('descend') !== -1 && h(Icon, {\n 'class': prefixCls + '-column-sorter-down ' + (isDescend ? 'on' : 'off'),\n attrs: { type: 'caret-down',\n theme: 'filled'\n },\n key: 'caret-down'\n });\n\n sortButton = h(\n 'div',\n {\n attrs: {\n title: locale.sortTitle\n },\n 'class': classNames(prefixCls + '-column-sorter-inner', ascend && descend && prefixCls + '-column-sorter-inner-full'),\n key: 'sorter'\n },\n [ascend, descend]\n );\n customHeaderCell = function customHeaderCell(col) {\n var colProps = {};\n // Get original first\n if (column.customHeaderCell) {\n colProps = _extends({}, column.customHeaderCell(col));\n }\n colProps.on = colProps.on || {};\n // Add sorter logic\n var onHeaderCellClick = colProps.on.click;\n colProps.on.click = function () {\n _this11.toggleSortOrder(column);\n if (onHeaderCellClick) {\n onHeaderCellClick.apply(undefined, arguments);\n }\n };\n return colProps;\n };\n }\n return _extends({}, column, {\n className: classNames(column.className, (_classNames3 = {}, _defineProperty(_classNames3, prefixCls + '-column-has-actions', sortButton || filterDropdown), _defineProperty(_classNames3, prefixCls + '-column-has-filters', filterDropdown), _defineProperty(_classNames3, prefixCls + '-column-has-sorters', sortButton), _defineProperty(_classNames3, prefixCls + '-column-sort', isSortColumn && sortOrder), _classNames3)),\n title: [h(\n 'span',\n { key: 'title', 'class': prefixCls + '-header-column' },\n [h(\n 'div',\n { 'class': sortButton ? prefixCls + '-column-sorters' : undefined },\n [h(\n 'span',\n { 'class': prefixCls + '-column-title' },\n [_this11.renderColumnTitle(column.title)]\n ), h(\n 'span',\n { 'class': prefixCls + '-column-sorter' },\n [sortButton]\n )]\n )]\n ), filterDropdown],\n customHeaderCell: customHeaderCell\n });\n });\n },\n renderColumnTitle: function renderColumnTitle(title) {\n var _$data = this.$data,\n filters = _$data.sFilters,\n sortOrder = _$data.sSortOrder,\n sortColumn = _$data.sSortColumn;\n // https://github.com/ant-design/ant-design/issues/11246#issuecomment-405009167\n\n if (title instanceof Function) {\n return title({\n filters: filters,\n sortOrder: sortOrder,\n sortColumn: sortColumn\n });\n }\n return title;\n },\n renderTable: function renderTable(_ref5) {\n var _classNames4,\n _this12 = this;\n\n var prefixCls = _ref5.prefixCls,\n renderEmpty = _ref5.renderEmpty,\n dropdownPrefixCls = _ref5.dropdownPrefixCls,\n contextLocale = _ref5.contextLocale,\n contextGetPopupContainer = _ref5.getPopupContainer,\n transformCellText = _ref5.transformCellText;\n var h = this.$createElement;\n\n var _getOptionProps = getOptionProps(this),\n showHeader = _getOptionProps.showHeader,\n locale = _getOptionProps.locale,\n getPopupContainer = _getOptionProps.getPopupContainer,\n expandIcon = _getOptionProps.expandIcon,\n restProps = _objectWithoutProperties(_getOptionProps, ['showHeader', 'locale', 'getPopupContainer', 'expandIcon']);\n\n var data = this.getCurrentPageData();\n var expandIconAsCell = this.expandedRowRender && this.expandIconAsCell !== false;\n\n // use props.getPopupContainer first\n var realGetPopupContainer = getPopupContainer || contextGetPopupContainer;\n\n // Merge too locales\n var mergedLocale = _extends({}, contextLocale, locale);\n if (!locale || !locale.emptyText) {\n mergedLocale.emptyText = renderEmpty(h, 'Table');\n }\n\n var classString = classNames((_classNames4 = {}, _defineProperty(_classNames4, prefixCls + '-' + this.size, true), _defineProperty(_classNames4, prefixCls + '-bordered', this.bordered), _defineProperty(_classNames4, prefixCls + '-empty', !data.length), _defineProperty(_classNames4, prefixCls + '-without-column-header', !showHeader), _classNames4));\n\n var columnsWithRowSelection = this.renderRowSelection({\n prefixCls: prefixCls,\n locale: mergedLocale,\n getPopupContainer: realGetPopupContainer\n });\n var columns = this.renderColumnsDropdown({\n columns: columnsWithRowSelection,\n prefixCls: prefixCls,\n dropdownPrefixCls: dropdownPrefixCls,\n locale: mergedLocale,\n getPopupContainer: realGetPopupContainer\n }).map(function (column, i) {\n var newColumn = _extends({}, column);\n newColumn.key = getColumnKey(newColumn, i);\n return newColumn;\n });\n\n var expandIconColumnIndex = columns[0] && columns[0].key === 'selection-column' ? 1 : 0;\n if ('expandIconColumnIndex' in restProps) {\n expandIconColumnIndex = restProps.expandIconColumnIndex;\n }\n var vcTableProps = {\n key: 'table',\n props: _extends({\n expandIcon: expandIcon || this.renderExpandIcon(prefixCls)\n }, restProps, {\n customRow: function customRow(record, index) {\n return _this12.onRow(prefixCls, record, index);\n },\n components: this.sComponents,\n prefixCls: prefixCls,\n data: data,\n columns: columns,\n showHeader: showHeader,\n expandIconColumnIndex: expandIconColumnIndex,\n expandIconAsCell: expandIconAsCell,\n emptyText: mergedLocale.emptyText,\n transformCellText: transformCellText\n }),\n on: getListeners(this),\n 'class': classString,\n ref: 'vcTable'\n };\n return h(VcTable, vcTableProps);\n }\n },\n\n render: function render() {\n var _this13 = this;\n\n var h = arguments[0];\n var customizePrefixCls = this.prefixCls,\n customizeDropdownPrefixCls = this.dropdownPrefixCls,\n customizeTransformCellText = this.transformCellText;\n\n var data = this.getCurrentPageData();\n var _configProvider = this.configProvider,\n getContextPopupContainer = _configProvider.getPopupContainer,\n tct = _configProvider.transformCellText;\n\n var getPopupContainer = this.getPopupContainer || getContextPopupContainer;\n var transformCellText = customizeTransformCellText || tct;\n var loading = this.loading;\n if (typeof loading === 'boolean') {\n loading = {\n props: {\n spinning: loading\n }\n };\n } else {\n loading = {\n props: _extends({}, loading)\n };\n }\n var getPrefixCls = this.configProvider.getPrefixCls;\n var renderEmpty = this.configProvider.renderEmpty;\n\n var prefixCls = getPrefixCls('table', customizePrefixCls);\n var dropdownPrefixCls = getPrefixCls('dropdown', customizeDropdownPrefixCls);\n\n var table = h(LocaleReceiver, {\n attrs: {\n componentName: 'Table',\n defaultLocale: defaultLocale.Table,\n children: function children(locale) {\n return _this13.renderTable({\n prefixCls: prefixCls,\n renderEmpty: renderEmpty,\n dropdownPrefixCls: dropdownPrefixCls,\n contextLocale: locale,\n getPopupContainer: getPopupContainer,\n transformCellText: transformCellText\n });\n }\n }\n });\n\n // if there is no pagination or no data,\n // the height of spin should decrease by half of pagination\n var paginationPatchClass = this.hasPagination() && data && data.length !== 0 ? prefixCls + '-with-pagination' : prefixCls + '-without-pagination';\n var spinProps = _extends({}, loading, {\n 'class': loading.props && loading.props.spinning ? paginationPatchClass + ' ' + prefixCls + '-spin-holder' : ''\n });\n return h(\n 'div',\n { 'class': classNames(prefixCls + '-wrapper') },\n [h(\n Spin,\n spinProps,\n [this.renderPagination(prefixCls, 'top'), table, this.renderPagination(prefixCls, 'bottom')]\n )]\n );\n }\n};","import _extends from 'babel-runtime/helpers/extends';\nimport _objectWithoutProperties from 'babel-runtime/helpers/objectWithoutProperties';\nimport T from './Table';\nimport ref from 'vue-ref';\nimport Vue from 'vue';\nimport { getOptionProps, getKey, getClass, getStyle, getEvents, getSlotOptions, camelize, getSlots, getListeners } from '../_util/props-util';\nimport Base from '../base';\n\nVue.use(ref, { name: 'ant-ref' });\n\nvar Table = {\n name: 'ATable',\n Column: T.Column,\n ColumnGroup: T.ColumnGroup,\n props: T.props,\n methods: {\n normalize: function normalize() {\n var _this = this;\n\n var elements = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n\n var columns = [];\n elements.forEach(function (element) {\n if (!element.tag) {\n return;\n }\n var key = getKey(element);\n var style = getStyle(element);\n var cls = getClass(element);\n var props = getOptionProps(element);\n var events = getEvents(element);\n var listeners = {};\n Object.keys(events).forEach(function (e) {\n /*\n Convert events on template Column to function props onPropAbcChange in Table.columns prop.\n If you write template code like below:\n \n You will get these events:\n {\n 'prop-abc-change': this.f1,\n 'update:prop-abc': [this.f2, e => this.dataAbc = e],\n 'update:propAbc': e => this.dataAbc = e,\n }\n All of these events would be treat as column.onPropAbcChange,\n but only one of them will be valid, which can not be determined.\n */\n var k = void 0;\n if (e.startsWith('update:')) {\n k = 'on-' + e.substr('update:'.length) + '-change';\n } else {\n k = 'on-' + e;\n }\n listeners[camelize(k)] = events[e];\n });\n\n var _getSlots = getSlots(element),\n children = _getSlots['default'],\n restSlots = _objectWithoutProperties(_getSlots, ['default']);\n\n var column = _extends({}, restSlots, props, { style: style, 'class': cls }, listeners);\n if (key) {\n column.key = key;\n }\n if (getSlotOptions(element).__ANT_TABLE_COLUMN_GROUP) {\n column.children = _this.normalize(typeof children === 'function' ? children() : children);\n } else {\n var customRender = element.data && element.data.scopedSlots && element.data.scopedSlots['default'];\n column.customRender = column.customRender || customRender;\n }\n columns.push(column);\n });\n return columns;\n },\n updateColumns: function updateColumns() {\n var _this2 = this;\n\n var cols = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n\n var columns = [];\n var $slots = this.$slots,\n $scopedSlots = this.$scopedSlots;\n\n cols.forEach(function (col) {\n var _col$slots = col.slots,\n slots = _col$slots === undefined ? {} : _col$slots,\n _col$scopedSlots = col.scopedSlots,\n scopedSlots = _col$scopedSlots === undefined ? {} : _col$scopedSlots,\n restProps = _objectWithoutProperties(col, ['slots', 'scopedSlots']);\n\n var column = _extends({}, restProps);\n Object.keys(slots).forEach(function (key) {\n var name = slots[key];\n if (column[key] === undefined && $slots[name]) {\n column[key] = $slots[name].length === 1 ? $slots[name][0] : $slots[name];\n }\n });\n Object.keys(scopedSlots).forEach(function (key) {\n var name = scopedSlots[key];\n if (column[key] === undefined && $scopedSlots[name]) {\n column[key] = $scopedSlots[name];\n }\n });\n // if (slotScopeName && $scopedSlots[slotScopeName]) {\n // column.customRender = column.customRender || $scopedSlots[slotScopeName]\n // }\n if (col.children) {\n column.children = _this2.updateColumns(column.children);\n }\n columns.push(column);\n });\n return columns;\n }\n },\n render: function render() {\n var h = arguments[0];\n var $slots = this.$slots,\n normalize = this.normalize,\n $scopedSlots = this.$scopedSlots;\n\n var props = getOptionProps(this);\n var columns = props.columns ? this.updateColumns(props.columns) : normalize($slots['default']);\n var title = props.title,\n footer = props.footer;\n var slotTitle = $scopedSlots.title,\n slotFooter = $scopedSlots.footer,\n _$scopedSlots$expande = $scopedSlots.expandedRowRender,\n expandedRowRender = _$scopedSlots$expande === undefined ? props.expandedRowRender : _$scopedSlots$expande,\n expandIcon = $scopedSlots.expandIcon;\n\n title = title || slotTitle;\n footer = footer || slotFooter;\n var tProps = {\n props: _extends({}, props, {\n columns: columns,\n title: title,\n footer: footer,\n expandedRowRender: expandedRowRender,\n expandIcon: this.$props.expandIcon || expandIcon\n }),\n on: getListeners(this)\n };\n return h(T, tProps);\n }\n};\n/* istanbul ignore next */\nTable.install = function (Vue) {\n Vue.use(Base);\n Vue.component(Table.name, Table);\n Vue.component(Table.Column.name, Table.Column);\n Vue.component(Table.ColumnGroup.name, Table.ColumnGroup);\n};\n\nexport default Table;","import _extends from 'babel-runtime/helpers/extends';\nimport _defineProperty from 'babel-runtime/helpers/defineProperty';\nimport _objectWithoutProperties from 'babel-runtime/helpers/objectWithoutProperties';\nimport PropTypes from '../_util/vue-types';\nimport hasProp, { getOptionProps, getComponentFromProp, getListeners } from '../_util/props-util';\nimport VcSwitch from '../vc-switch';\nimport Wave from '../_util/wave';\nimport Icon from '../icon';\nimport { ConfigConsumerProps } from '../config-provider/configConsumerProps';\nimport Base from '../base';\nimport warning from '../_util/warning';\n\nvar Switch = {\n name: 'ASwitch',\n __ANT_SWITCH: true,\n model: {\n prop: 'checked',\n event: 'change'\n },\n props: {\n prefixCls: PropTypes.string,\n // size=default and size=large are the same\n size: PropTypes.oneOf(['small', 'default', 'large']),\n disabled: PropTypes.bool,\n checkedChildren: PropTypes.any,\n unCheckedChildren: PropTypes.any,\n tabIndex: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n checked: PropTypes.bool,\n defaultChecked: PropTypes.bool,\n autoFocus: PropTypes.bool,\n loading: PropTypes.bool\n },\n inject: {\n configProvider: { 'default': function _default() {\n return ConfigConsumerProps;\n } }\n },\n methods: {\n focus: function focus() {\n this.$refs.refSwitchNode.focus();\n },\n blur: function blur() {\n this.$refs.refSwitchNode.blur();\n }\n },\n created: function created() {\n warning(hasProp(this, 'checked') || !hasProp(this, 'value'), 'Switch', '`value` is not validate prop, do you mean `checked`?');\n },\n render: function render() {\n var _classes;\n\n var h = arguments[0];\n\n var _getOptionProps = getOptionProps(this),\n customizePrefixCls = _getOptionProps.prefixCls,\n size = _getOptionProps.size,\n loading = _getOptionProps.loading,\n disabled = _getOptionProps.disabled,\n restProps = _objectWithoutProperties(_getOptionProps, ['prefixCls', 'size', 'loading', 'disabled']);\n\n var getPrefixCls = this.configProvider.getPrefixCls;\n var prefixCls = getPrefixCls('switch', customizePrefixCls);\n\n var classes = (_classes = {}, _defineProperty(_classes, prefixCls + '-small', size === 'small'), _defineProperty(_classes, prefixCls + '-loading', loading), _classes);\n var loadingIcon = loading ? h(Icon, {\n attrs: { type: 'loading' },\n 'class': prefixCls + '-loading-icon' }) : null;\n var switchProps = {\n props: _extends({}, restProps, {\n prefixCls: prefixCls,\n loadingIcon: loadingIcon,\n checkedChildren: getComponentFromProp(this, 'checkedChildren'),\n unCheckedChildren: getComponentFromProp(this, 'unCheckedChildren'),\n disabled: disabled || loading\n }),\n on: getListeners(this),\n 'class': classes,\n ref: 'refSwitchNode'\n };\n return h(\n Wave,\n {\n attrs: { insertExtraNode: true }\n },\n [h(VcSwitch, switchProps)]\n );\n }\n};\n\n/* istanbul ignore next */\nSwitch.install = function (Vue) {\n Vue.use(Base);\n Vue.component(Switch.name, Switch);\n};\n\nexport default Switch;","import _mergeJSXProps from 'babel-helper-vue-jsx-merge-props';\nimport _defineProperty from 'babel-runtime/helpers/defineProperty';\nimport PropTypes from '../_util/vue-types';\nimport { filterEmpty, initDefaultProps } from '../_util/props-util';\nimport { ConfigConsumerProps } from '../config-provider/configConsumerProps';\n\nexport var SpaceSizeType = PropTypes.oneOfType([PropTypes.number, PropTypes.oneOf(['small', 'middle', 'large'])]);\n\nvar spaceSize = {\n small: 8,\n middle: 16,\n large: 24\n};\n\nexport var SpaceProps = {\n prefixCls: PropTypes.string,\n size: SpaceSizeType,\n direction: PropTypes.oneOf(['horizontal', 'vertical']),\n align: PropTypes.oneOf(['start', 'end', 'center', 'baseline'])\n};\n\nvar Space = {\n functional: true,\n name: 'ASpace',\n props: initDefaultProps(SpaceProps, {\n size: 'small',\n direction: 'horizontal'\n }),\n inject: {\n configProvider: { 'default': function _default() {\n return ConfigConsumerProps;\n } }\n },\n render: function render(h, content) {\n var _ref;\n\n var customizePrefixCls = content.prefixCls,\n configProvider = content.injections.configProvider,\n children = content.children;\n var _content$props = content.props,\n align = _content$props.align,\n size = _content$props.size,\n direction = _content$props.direction;\n\n\n var getPrefixCls = configProvider.getPrefixCls;\n var prefixCls = getPrefixCls('space', customizePrefixCls);\n var items = filterEmpty(children);\n var len = items.length;\n\n if (len === 0) {\n return null;\n }\n\n var mergedAlign = align === undefined && direction === 'horizontal' ? 'center' : align;\n\n var someSpaceClass = [(_ref = {}, _defineProperty(_ref, prefixCls, true), _defineProperty(_ref, prefixCls + '-' + direction, true), _defineProperty(_ref, prefixCls + '-align-' + mergedAlign, mergedAlign), _ref)];\n\n if (content.data['class']) {\n someSpaceClass.push(content.data['class']);\n }\n\n var itemClassName = prefixCls + '-item';\n var marginDirection = 'marginRight'; // directionConfig === 'rtl' ? 'marginLeft' : 'marginRight';\n\n return h(\n 'div',\n _mergeJSXProps([content.data, { 'class': someSpaceClass }]),\n [items.map(function (child, i) {\n return h(\n 'div',\n {\n 'class': itemClassName,\n key: itemClassName + '-' + i,\n style: i === len - 1 ? {} : _defineProperty({}, direction === 'vertical' ? 'marginBottom' : marginDirection, typeof size === 'string' ? spaceSize[size] + 'px' : size + 'px')\n },\n [child]\n );\n })]\n );\n }\n};\n\n/* istanbul ignore next */\nSpace.install = function (Vue) {\n Vue.component(Space.name, Space);\n};\nexport default Space;","import _defineProperty from 'babel-runtime/helpers/defineProperty';\nimport classNames from 'classnames';\nimport PropTypes from '../_util/vue-types';\nimport { initDefaultProps } from '../_util/props-util';\n\nvar skeletonAvatarProps = {\n prefixCls: PropTypes.string,\n size: PropTypes.oneOfType([PropTypes.oneOf(['large', 'small', 'default']), PropTypes.number]),\n shape: PropTypes.oneOf(['circle', 'square'])\n};\n\nexport var SkeletonAvatarProps = PropTypes.shape(skeletonAvatarProps).loose;\n\nvar Avatar = {\n props: initDefaultProps(skeletonAvatarProps, {\n size: 'large'\n }),\n render: function render() {\n var _classNames, _classNames2;\n\n var h = arguments[0];\n var _$props = this.$props,\n prefixCls = _$props.prefixCls,\n size = _$props.size,\n shape = _$props.shape;\n\n\n var sizeCls = classNames((_classNames = {}, _defineProperty(_classNames, prefixCls + '-lg', size === 'large'), _defineProperty(_classNames, prefixCls + '-sm', size === 'small'), _classNames));\n\n var shapeCls = classNames((_classNames2 = {}, _defineProperty(_classNames2, prefixCls + '-circle', shape === 'circle'), _defineProperty(_classNames2, prefixCls + '-square', shape === 'square'), _classNames2));\n\n var sizeStyle = typeof size === 'number' ? {\n width: size + 'px',\n height: size + 'px',\n lineHeight: size + 'px'\n } : {};\n\n return h('span', { 'class': classNames(prefixCls, sizeCls, shapeCls), style: sizeStyle });\n }\n};\n\nexport default Avatar;","import PropTypes from '../_util/vue-types';\n\nvar skeletonTitleProps = {\n prefixCls: PropTypes.string,\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string])\n};\n\nexport var SkeletonTitleProps = PropTypes.shape(skeletonTitleProps);\n\nvar Title = {\n props: skeletonTitleProps,\n render: function render() {\n var h = arguments[0];\n var _$props = this.$props,\n prefixCls = _$props.prefixCls,\n width = _$props.width;\n\n var zWidth = typeof width === 'number' ? width + 'px' : width;\n return h('h3', { 'class': prefixCls, style: { width: zWidth } });\n }\n};\n\nexport default Title;","import _toConsumableArray from 'babel-runtime/helpers/toConsumableArray';\nimport PropTypes from '../_util/vue-types';\n\nvar widthUnit = PropTypes.oneOfType([PropTypes.number, PropTypes.string]);\n\nvar skeletonParagraphProps = {\n prefixCls: PropTypes.string,\n width: PropTypes.oneOfType([widthUnit, PropTypes.arrayOf(widthUnit)]),\n rows: PropTypes.number\n};\n\nexport var SkeletonParagraphProps = PropTypes.shape(skeletonParagraphProps);\n\nvar Paragraph = {\n props: skeletonParagraphProps,\n methods: {\n getWidth: function getWidth(index) {\n var width = this.width,\n _rows = this.rows,\n rows = _rows === undefined ? 2 : _rows;\n\n if (Array.isArray(width)) {\n return width[index];\n }\n // last paragraph\n if (rows - 1 === index) {\n return width;\n }\n return undefined;\n }\n },\n render: function render() {\n var _this = this;\n\n var h = arguments[0];\n var _$props = this.$props,\n prefixCls = _$props.prefixCls,\n rows = _$props.rows;\n\n var rowList = [].concat(_toConsumableArray(Array(rows))).map(function (_, index) {\n var width = _this.getWidth(index);\n return h('li', { key: index, style: { width: typeof width === 'number' ? width + 'px' : width } });\n });\n return h(\n 'ul',\n { 'class': prefixCls },\n [rowList]\n );\n }\n};\n\nexport default Paragraph;","import _defineProperty from 'babel-runtime/helpers/defineProperty';\nimport _extends from 'babel-runtime/helpers/extends';\nimport _typeof from 'babel-runtime/helpers/typeof';\nimport classNames from 'classnames';\nimport PropTypes from '../_util/vue-types';\nimport { initDefaultProps, hasProp } from '../_util/props-util';\nimport { ConfigConsumerProps } from '../config-provider/configConsumerProps';\nimport Avatar, { SkeletonAvatarProps } from './Avatar';\nimport Title, { SkeletonTitleProps } from './Title';\nimport Paragraph, { SkeletonParagraphProps } from './Paragraph';\nimport Base from '../base';\n\nexport var SkeletonProps = {\n active: PropTypes.bool,\n loading: PropTypes.bool,\n prefixCls: PropTypes.string,\n children: PropTypes.any,\n avatar: PropTypes.oneOfType([PropTypes.string, SkeletonAvatarProps, PropTypes.bool]),\n title: PropTypes.oneOfType([PropTypes.bool, PropTypes.string, SkeletonTitleProps]),\n paragraph: PropTypes.oneOfType([PropTypes.bool, PropTypes.string, SkeletonParagraphProps])\n};\n\nfunction getComponentProps(prop) {\n if (prop && (typeof prop === 'undefined' ? 'undefined' : _typeof(prop)) === 'object') {\n return prop;\n }\n return {};\n}\n\nfunction getAvatarBasicProps(hasTitle, hasParagraph) {\n if (hasTitle && !hasParagraph) {\n return { shape: 'square' };\n }\n\n return { shape: 'circle' };\n}\n\nfunction getTitleBasicProps(hasAvatar, hasParagraph) {\n if (!hasAvatar && hasParagraph) {\n return { width: '38%' };\n }\n\n if (hasAvatar && hasParagraph) {\n return { width: '50%' };\n }\n\n return {};\n}\n\nfunction getParagraphBasicProps(hasAvatar, hasTitle) {\n var basicProps = {};\n\n // Width\n if (!hasAvatar || !hasTitle) {\n basicProps.width = '61%';\n }\n\n // Rows\n if (!hasAvatar && hasTitle) {\n basicProps.rows = 3;\n } else {\n basicProps.rows = 2;\n }\n\n return basicProps;\n}\n\nvar Skeleton = {\n name: 'ASkeleton',\n props: initDefaultProps(SkeletonProps, {\n avatar: false,\n title: true,\n paragraph: true\n }),\n inject: {\n configProvider: { 'default': function _default() {\n return ConfigConsumerProps;\n } }\n },\n render: function render() {\n var h = arguments[0];\n var _$props = this.$props,\n customizePrefixCls = _$props.prefixCls,\n loading = _$props.loading,\n avatar = _$props.avatar,\n title = _$props.title,\n paragraph = _$props.paragraph,\n active = _$props.active;\n\n var getPrefixCls = this.configProvider.getPrefixCls;\n var prefixCls = getPrefixCls('skeleton', customizePrefixCls);\n\n if (loading || !hasProp(this, 'loading')) {\n var _classNames;\n\n var hasAvatar = !!avatar || avatar === '';\n var hasTitle = !!title;\n var hasParagraph = !!paragraph;\n\n // Avatar\n var avatarNode = void 0;\n if (hasAvatar) {\n var avatarProps = {\n props: _extends({\n prefixCls: prefixCls + '-avatar'\n }, getAvatarBasicProps(hasTitle, hasParagraph), getComponentProps(avatar))\n };\n\n avatarNode = h(\n 'div',\n { 'class': prefixCls + '-header' },\n [h(Avatar, avatarProps)]\n );\n }\n\n var contentNode = void 0;\n if (hasTitle || hasParagraph) {\n // Title\n var $title = void 0;\n if (hasTitle) {\n var titleProps = {\n props: _extends({\n prefixCls: prefixCls + '-title'\n }, getTitleBasicProps(hasAvatar, hasParagraph), getComponentProps(title))\n };\n\n $title = h(Title, titleProps);\n }\n\n // Paragraph\n var paragraphNode = void 0;\n if (hasParagraph) {\n var paragraphProps = {\n props: _extends({\n prefixCls: prefixCls + '-paragraph'\n }, getParagraphBasicProps(hasAvatar, hasTitle), getComponentProps(paragraph))\n };\n\n paragraphNode = h(Paragraph, paragraphProps);\n }\n\n contentNode = h(\n 'div',\n { 'class': prefixCls + '-content' },\n [$title, paragraphNode]\n );\n }\n\n var cls = classNames(prefixCls, (_classNames = {}, _defineProperty(_classNames, prefixCls + '-with-avatar', hasAvatar), _defineProperty(_classNames, prefixCls + '-active', active), _classNames));\n\n return h(\n 'div',\n { 'class': cls },\n [avatarNode, contentNode]\n );\n }\n var children = this.$slots['default'];\n return children && children.length === 1 ? children[0] : h('span', [children]);\n }\n};\n/* istanbul ignore next */\nSkeleton.install = function (Vue) {\n Vue.use(Base);\n Vue.component(Skeleton.name, Skeleton);\n};\nexport default Skeleton;","import _mergeJSXProps from 'babel-helper-vue-jsx-merge-props';\nimport _defineProperty from 'babel-runtime/helpers/defineProperty';\nimport PropTypes from '../_util/vue-types';\nimport Icon from '../icon';\nimport getTransitionProps from '../_util/getTransitionProps';\nimport omit from 'omit.js';\nimport Wave from '../_util/wave';\nimport { hasProp, getListeners, getOptionProps } from '../_util/props-util';\nimport BaseMixin from '../_util/BaseMixin';\nimport { ConfigConsumerProps } from '../config-provider/configConsumerProps';\nimport warning from '../_util/warning';\n\nvar PresetColorTypes = ['pink', 'red', 'yellow', 'orange', 'cyan', 'green', 'blue', 'purple', 'geekblue', 'magenta', 'volcano', 'gold', 'lime'];\nvar PresetColorRegex = new RegExp('^(' + PresetColorTypes.join('|') + ')(-inverse)?$');\n\nexport default {\n name: 'ATag',\n mixins: [BaseMixin],\n model: {\n prop: 'visible',\n event: 'close.visible'\n },\n props: {\n prefixCls: PropTypes.string,\n color: PropTypes.string,\n closable: PropTypes.bool.def(false),\n visible: PropTypes.bool,\n afterClose: PropTypes.func\n },\n inject: {\n configProvider: { 'default': function _default() {\n return ConfigConsumerProps;\n } }\n },\n data: function data() {\n var _visible = true;\n var props = getOptionProps(this);\n if ('visible' in props) {\n _visible = this.visible;\n }\n warning(!('afterClose' in props), 'Tag', \"'afterClose' will be deprecated, please use 'close' event, we will remove this in the next version.\");\n return {\n _visible: _visible\n };\n },\n\n watch: {\n visible: function visible(val) {\n this.setState({\n _visible: val\n });\n }\n },\n methods: {\n setVisible: function setVisible(visible, e) {\n this.$emit('close', e);\n this.$emit('close.visible', false);\n var afterClose = this.afterClose;\n if (afterClose) {\n // next version remove.\n afterClose();\n }\n if (e.defaultPrevented) {\n return;\n }\n if (!hasProp(this, 'visible')) {\n this.setState({ _visible: visible });\n }\n },\n handleIconClick: function handleIconClick(e) {\n e.stopPropagation();\n this.setVisible(false, e);\n },\n isPresetColor: function isPresetColor() {\n var color = this.$props.color;\n\n if (!color) {\n return false;\n }\n return PresetColorRegex.test(color);\n },\n getTagStyle: function getTagStyle() {\n var color = this.$props.color;\n\n var isPresetColor = this.isPresetColor();\n return {\n backgroundColor: color && !isPresetColor ? color : undefined\n };\n },\n getTagClassName: function getTagClassName(prefixCls) {\n var _ref;\n\n var color = this.$props.color;\n\n var isPresetColor = this.isPresetColor();\n return _ref = {}, _defineProperty(_ref, prefixCls, true), _defineProperty(_ref, prefixCls + '-' + color, isPresetColor), _defineProperty(_ref, prefixCls + '-has-color', color && !isPresetColor), _ref;\n },\n renderCloseIcon: function renderCloseIcon() {\n var h = this.$createElement;\n var closable = this.$props.closable;\n\n return closable ? h(Icon, {\n attrs: { type: 'close' },\n on: {\n 'click': this.handleIconClick\n }\n }) : null;\n }\n },\n\n render: function render() {\n var h = arguments[0];\n var customizePrefixCls = this.$props.prefixCls;\n\n var getPrefixCls = this.configProvider.getPrefixCls;\n var prefixCls = getPrefixCls('tag', customizePrefixCls);\n var visible = this.$data._visible;\n\n var tag = h(\n 'span',\n _mergeJSXProps([{\n directives: [{\n name: 'show',\n value: visible\n }]\n }, { on: omit(getListeners(this), ['close']) }, {\n 'class': this.getTagClassName(prefixCls),\n style: this.getTagStyle()\n }]),\n [this.$slots['default'], this.renderCloseIcon()]\n );\n var transitionProps = getTransitionProps(prefixCls + '-zoom', {\n appear: false\n });\n return h(Wave, [h(\n 'transition',\n transitionProps,\n [tag]\n )]);\n }\n};","import _defineProperty from 'babel-runtime/helpers/defineProperty';\nimport PropTypes from '../_util/vue-types';\nimport { ConfigConsumerProps } from '../config-provider/configConsumerProps';\n\nexport default {\n name: 'ACheckableTag',\n model: {\n prop: 'checked'\n },\n props: {\n prefixCls: PropTypes.string,\n checked: Boolean\n },\n inject: {\n configProvider: { 'default': function _default() {\n return ConfigConsumerProps;\n } }\n },\n computed: {\n classes: function classes() {\n var _ref;\n\n var checked = this.checked,\n customizePrefixCls = this.prefixCls;\n\n var getPrefixCls = this.configProvider.getPrefixCls;\n var prefixCls = getPrefixCls('tag', customizePrefixCls);\n return _ref = {}, _defineProperty(_ref, '' + prefixCls, true), _defineProperty(_ref, prefixCls + '-checkable', true), _defineProperty(_ref, prefixCls + '-checkable-checked', checked), _ref;\n }\n },\n methods: {\n handleClick: function handleClick() {\n var checked = this.checked;\n\n this.$emit('input', !checked);\n this.$emit('change', !checked);\n }\n },\n render: function render() {\n var h = arguments[0];\n var classes = this.classes,\n handleClick = this.handleClick,\n $slots = this.$slots;\n\n return h(\n 'div',\n { 'class': classes, on: {\n 'click': handleClick\n }\n },\n [$slots['default']]\n );\n }\n};","import Tag from './Tag';\nimport CheckableTag from './CheckableTag';\nimport Base from '../base';\n\nTag.CheckableTag = CheckableTag;\n\n/* istanbul ignore next */\nTag.install = function (Vue) {\n Vue.use(Base);\n Vue.component(Tag.name, Tag);\n Vue.component(Tag.CheckableTag.name, Tag.CheckableTag);\n};\n\nexport default Tag;","import Spin, { setDefaultIndicator } from './Spin';\nimport Base from '../base';\n\nexport { SpinProps } from './Spin';\n\nSpin.setDefaultIndicator = setDefaultIndicator;\n\n/* istanbul ignore next */\nSpin.install = function (Vue) {\n Vue.use(Base);\n Vue.component(Spin.name, Spin);\n};\n\nexport default Spin;","import _mergeJSXProps from 'babel-helper-vue-jsx-merge-props';\nimport _defineProperty from 'babel-runtime/helpers/defineProperty';\nimport _objectWithoutProperties from 'babel-runtime/helpers/objectWithoutProperties';\nimport _extends from 'babel-runtime/helpers/extends';\nimport warning from '../_util/warning';\nimport omit from 'omit.js';\nimport PropTypes from '../_util/vue-types';\nimport { Select as VcSelect, Option, OptGroup } from '../vc-select';\nimport { ConfigConsumerProps } from '../config-provider/configConsumerProps';\nimport { getComponentFromProp, getOptionProps, filterEmpty, isValidElement, getListeners } from '../_util/props-util';\nimport Icon from '../icon';\nimport { cloneElement } from '../_util/vnode';\nimport Base from '../base';\n\nvar AbstractSelectProps = function AbstractSelectProps() {\n return {\n prefixCls: PropTypes.string,\n size: PropTypes.oneOf(['small', 'large', 'default']),\n showAction: PropTypes.oneOfType([PropTypes.string, PropTypes.arrayOf(String)]),\n notFoundContent: PropTypes.any,\n transitionName: PropTypes.string,\n choiceTransitionName: PropTypes.string,\n showSearch: PropTypes.bool,\n allowClear: PropTypes.bool,\n disabled: PropTypes.bool,\n tabIndex: PropTypes.number,\n placeholder: PropTypes.any,\n defaultActiveFirstOption: PropTypes.bool,\n dropdownClassName: PropTypes.string,\n dropdownStyle: PropTypes.any,\n dropdownMenuStyle: PropTypes.any,\n dropdownMatchSelectWidth: PropTypes.bool,\n // onSearch: (value: string) => any,\n filterOption: PropTypes.oneOfType([PropTypes.bool, PropTypes.func]),\n autoFocus: PropTypes.bool,\n backfill: PropTypes.bool,\n showArrow: PropTypes.bool,\n getPopupContainer: PropTypes.func,\n open: PropTypes.bool,\n defaultOpen: PropTypes.bool,\n autoClearSearchValue: PropTypes.bool,\n dropdownRender: PropTypes.func,\n loading: PropTypes.bool\n };\n};\nvar Value = PropTypes.shape({\n key: PropTypes.oneOfType([PropTypes.string, PropTypes.number])\n}).loose;\n\nvar SelectValue = PropTypes.oneOfType([PropTypes.string, PropTypes.number, PropTypes.arrayOf(PropTypes.oneOfType([Value, PropTypes.string, PropTypes.number])), Value]);\n\nvar SelectProps = _extends({}, AbstractSelectProps(), {\n value: SelectValue,\n defaultValue: SelectValue,\n // mode: PropTypes.oneOf(['default', 'multiple', 'tags', 'combobox']),\n mode: PropTypes.string,\n optionLabelProp: PropTypes.string,\n firstActiveValue: PropTypes.oneOfType([String, PropTypes.arrayOf(String)]),\n maxTagCount: PropTypes.number,\n maxTagPlaceholder: PropTypes.any,\n maxTagTextLength: PropTypes.number,\n dropdownMatchSelectWidth: PropTypes.bool,\n optionFilterProp: PropTypes.string,\n labelInValue: PropTypes.boolean,\n getPopupContainer: PropTypes.func,\n tokenSeparators: PropTypes.arrayOf(PropTypes.string),\n getInputElement: PropTypes.func,\n options: PropTypes.array,\n suffixIcon: PropTypes.any,\n removeIcon: PropTypes.any,\n clearIcon: PropTypes.any,\n menuItemSelectedIcon: PropTypes.any\n});\n\nvar SelectPropTypes = {\n prefixCls: PropTypes.string,\n size: PropTypes.oneOf(['default', 'large', 'small']),\n // combobox: PropTypes.bool,\n notFoundContent: PropTypes.any,\n showSearch: PropTypes.bool,\n optionLabelProp: PropTypes.string,\n transitionName: PropTypes.string,\n choiceTransitionName: PropTypes.string\n};\n\nexport { AbstractSelectProps, SelectValue, SelectProps };\nvar SECRET_COMBOBOX_MODE_DO_NOT_USE = 'SECRET_COMBOBOX_MODE_DO_NOT_USE';\nvar Select = {\n SECRET_COMBOBOX_MODE_DO_NOT_USE: SECRET_COMBOBOX_MODE_DO_NOT_USE,\n Option: _extends({}, Option, { name: 'ASelectOption' }),\n OptGroup: _extends({}, OptGroup, { name: 'ASelectOptGroup' }),\n name: 'ASelect',\n props: _extends({}, SelectProps, {\n showSearch: PropTypes.bool.def(false),\n transitionName: PropTypes.string.def('slide-up'),\n choiceTransitionName: PropTypes.string.def('zoom')\n }),\n propTypes: SelectPropTypes,\n model: {\n prop: 'value',\n event: 'change'\n },\n provide: function provide() {\n return {\n savePopupRef: this.savePopupRef\n };\n },\n\n inject: {\n configProvider: { 'default': function _default() {\n return ConfigConsumerProps;\n } }\n },\n created: function created() {\n warning(this.$props.mode !== 'combobox', 'Select', 'The combobox mode of Select is deprecated,' + 'it will be removed in next major version,' + 'please use AutoComplete instead');\n },\n\n methods: {\n getNotFoundContent: function getNotFoundContent(renderEmpty) {\n var h = this.$createElement;\n var notFoundContent = getComponentFromProp(this, 'notFoundContent');\n if (notFoundContent !== undefined) {\n return notFoundContent;\n }\n if (this.isCombobox()) {\n return null;\n }\n return renderEmpty(h, 'Select');\n },\n savePopupRef: function savePopupRef(ref) {\n this.popupRef = ref;\n },\n focus: function focus() {\n this.$refs.vcSelect.focus();\n },\n blur: function blur() {\n this.$refs.vcSelect.blur();\n },\n isCombobox: function isCombobox() {\n var mode = this.mode;\n\n return mode === 'combobox' || mode === SECRET_COMBOBOX_MODE_DO_NOT_USE;\n },\n renderSuffixIcon: function renderSuffixIcon(prefixCls) {\n var h = this.$createElement;\n var loading = this.$props.loading;\n\n var suffixIcon = getComponentFromProp(this, 'suffixIcon');\n suffixIcon = Array.isArray(suffixIcon) ? suffixIcon[0] : suffixIcon;\n if (suffixIcon) {\n return isValidElement(suffixIcon) ? cloneElement(suffixIcon, { 'class': prefixCls + '-arrow-icon' }) : suffixIcon;\n }\n if (loading) {\n return h(Icon, {\n attrs: { type: 'loading' }\n });\n }\n return h(Icon, {\n attrs: { type: 'down' },\n 'class': prefixCls + '-arrow-icon' });\n }\n },\n render: function render() {\n var _cls;\n\n var h = arguments[0];\n\n var _getOptionProps = getOptionProps(this),\n customizePrefixCls = _getOptionProps.prefixCls,\n size = _getOptionProps.size,\n mode = _getOptionProps.mode,\n options = _getOptionProps.options,\n getPopupContainer = _getOptionProps.getPopupContainer,\n showArrow = _getOptionProps.showArrow,\n restProps = _objectWithoutProperties(_getOptionProps, ['prefixCls', 'size', 'mode', 'options', 'getPopupContainer', 'showArrow']);\n\n var getPrefixCls = this.configProvider.getPrefixCls;\n var renderEmpty = this.configProvider.renderEmpty;\n var prefixCls = getPrefixCls('select', customizePrefixCls);\n\n var getContextPopupContainer = this.configProvider.getPopupContainer;\n\n var removeIcon = getComponentFromProp(this, 'removeIcon');\n removeIcon = Array.isArray(removeIcon) ? removeIcon[0] : removeIcon;\n var clearIcon = getComponentFromProp(this, 'clearIcon');\n clearIcon = Array.isArray(clearIcon) ? clearIcon[0] : clearIcon;\n var menuItemSelectedIcon = getComponentFromProp(this, 'menuItemSelectedIcon');\n menuItemSelectedIcon = Array.isArray(menuItemSelectedIcon) ? menuItemSelectedIcon[0] : menuItemSelectedIcon;\n var rest = omit(restProps, ['inputIcon', 'removeIcon', 'clearIcon', 'suffixIcon', 'menuItemSelectedIcon']);\n\n var cls = (_cls = {}, _defineProperty(_cls, prefixCls + '-lg', size === 'large'), _defineProperty(_cls, prefixCls + '-sm', size === 'small'), _defineProperty(_cls, prefixCls + '-show-arrow', showArrow), _cls);\n\n var optionLabelProp = this.$props.optionLabelProp;\n\n if (this.isCombobox()) {\n // children 带 dom 结构时,无法填入输入框\n optionLabelProp = optionLabelProp || 'value';\n }\n\n var modeConfig = {\n multiple: mode === 'multiple',\n tags: mode === 'tags',\n combobox: this.isCombobox()\n };\n var finalRemoveIcon = removeIcon && (isValidElement(removeIcon) ? cloneElement(removeIcon, { 'class': prefixCls + '-remove-icon' }) : removeIcon) || h(Icon, {\n attrs: { type: 'close' },\n 'class': prefixCls + '-remove-icon' });\n\n var finalClearIcon = clearIcon && (isValidElement(clearIcon) ? cloneElement(clearIcon, { 'class': prefixCls + '-clear-icon' }) : clearIcon) || h(Icon, {\n attrs: { type: 'close-circle', theme: 'filled' },\n 'class': prefixCls + '-clear-icon' });\n\n var finalMenuItemSelectedIcon = menuItemSelectedIcon && (isValidElement(menuItemSelectedIcon) ? cloneElement(menuItemSelectedIcon, { 'class': prefixCls + '-selected-icon' }) : menuItemSelectedIcon) || h(Icon, {\n attrs: { type: 'check' },\n 'class': prefixCls + '-selected-icon' });\n\n var selectProps = {\n props: _extends({\n inputIcon: this.renderSuffixIcon(prefixCls),\n removeIcon: finalRemoveIcon,\n clearIcon: finalClearIcon,\n menuItemSelectedIcon: finalMenuItemSelectedIcon,\n showArrow: showArrow\n }, rest, modeConfig, {\n prefixCls: prefixCls,\n optionLabelProp: optionLabelProp || 'children',\n notFoundContent: this.getNotFoundContent(renderEmpty),\n maxTagPlaceholder: getComponentFromProp(this, 'maxTagPlaceholder'),\n placeholder: getComponentFromProp(this, 'placeholder'),\n children: options ? options.map(function (option) {\n var key = option.key,\n _option$label = option.label,\n label = _option$label === undefined ? option.title : _option$label,\n on = option.on,\n cls = option['class'],\n style = option.style,\n restOption = _objectWithoutProperties(option, ['key', 'label', 'on', 'class', 'style']);\n\n return h(\n Option,\n _mergeJSXProps([{ key: key }, { props: restOption, on: on, 'class': cls, style: style }]),\n [label]\n );\n }) : filterEmpty(this.$slots['default']),\n __propsSymbol__: Symbol(),\n dropdownRender: getComponentFromProp(this, 'dropdownRender', {}, false),\n getPopupContainer: getPopupContainer || getContextPopupContainer\n }),\n on: getListeners(this),\n 'class': cls,\n ref: 'vcSelect'\n };\n return h(VcSelect, selectProps);\n }\n};\n\n/* istanbul ignore next */\nSelect.install = function (Vue) {\n Vue.use(Base);\n Vue.component(Select.name, Select);\n Vue.component(Select.Option.name, Select.Option);\n Vue.component(Select.OptGroup.name, Select.OptGroup);\n};\n\nexport default Select;","import { Row } from '../grid';\nimport Base from '../base';\n\n/* istanbul ignore next */\nRow.install = function (Vue) {\n Vue.use(Base);\n Vue.component(Row.name, Row);\n};\n\nexport default Row;","import padEnd from 'lodash/padEnd';\n\nexport default {\n name: 'AStatisticNumber',\n functional: true,\n render: function render(h, context) {\n var _context$props = context.props,\n value = _context$props.value,\n formatter = _context$props.formatter,\n precision = _context$props.precision,\n decimalSeparator = _context$props.decimalSeparator,\n _context$props$groupS = _context$props.groupSeparator,\n groupSeparator = _context$props$groupS === undefined ? '' : _context$props$groupS,\n prefixCls = _context$props.prefixCls;\n\n var valueNode = void 0;\n\n if (typeof formatter === 'function') {\n // Customize formatter\n valueNode = formatter({ value: value, h: h });\n } else {\n // Internal formatter\n var val = String(value);\n var cells = val.match(/^(-?)(\\d*)(\\.(\\d+))?$/);\n // Process if illegal number\n if (!cells) {\n valueNode = val;\n } else {\n var negative = cells[1];\n var int = cells[2] || '0';\n var decimal = cells[4] || '';\n\n int = int.replace(/\\B(?=(\\d{3})+(?!\\d))/g, groupSeparator);\n if (typeof precision === 'number') {\n decimal = padEnd(decimal, precision, '0').slice(0, precision);\n }\n\n if (decimal) {\n decimal = '' + decimalSeparator + decimal;\n }\n\n valueNode = [h(\n 'span',\n { key: 'int', 'class': prefixCls + '-content-value-int' },\n [negative, int]\n ), decimal && h(\n 'span',\n { key: 'decimal', 'class': prefixCls + '-content-value-decimal' },\n [decimal]\n )];\n }\n }\n\n return h(\n 'span',\n { 'class': prefixCls + '-content-value' },\n [valueNode]\n );\n }\n};","import _extends from 'babel-runtime/helpers/extends';\nimport PropTypes from '../_util/vue-types';\nimport { getComponentFromProp, initDefaultProps } from '../_util/props-util';\nimport { ConfigConsumerProps } from '../config-provider/configConsumerProps';\nimport StatisticNumber from './Number';\n\nexport var StatisticProps = {\n prefixCls: PropTypes.string,\n decimalSeparator: PropTypes.string,\n groupSeparator: PropTypes.string,\n format: PropTypes.string,\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number, PropTypes.object]),\n valueStyle: PropTypes.any,\n valueRender: PropTypes.any,\n formatter: PropTypes.any,\n precision: PropTypes.number,\n prefix: PropTypes.any,\n suffix: PropTypes.any,\n title: PropTypes.any\n};\n\nexport default {\n name: 'AStatistic',\n props: initDefaultProps(StatisticProps, {\n decimalSeparator: '.',\n groupSeparator: ','\n }),\n inject: {\n configProvider: { 'default': function _default() {\n return ConfigConsumerProps;\n } }\n },\n\n render: function render() {\n var h = arguments[0];\n var _$props = this.$props,\n customizePrefixCls = _$props.prefixCls,\n _$props$value = _$props.value,\n value = _$props$value === undefined ? 0 : _$props$value,\n valueStyle = _$props.valueStyle,\n valueRender = _$props.valueRender;\n\n var getPrefixCls = this.configProvider.getPrefixCls;\n var prefixCls = getPrefixCls('statistic', customizePrefixCls);\n\n var title = getComponentFromProp(this, 'title');\n var prefix = getComponentFromProp(this, 'prefix');\n var suffix = getComponentFromProp(this, 'suffix');\n var formatter = getComponentFromProp(this, 'formatter', {}, false);\n var valueNode = h(StatisticNumber, { props: _extends({}, this.$props, { prefixCls: prefixCls, value: value, formatter: formatter }) });\n if (valueRender) {\n valueNode = valueRender(valueNode);\n }\n\n return h(\n 'div',\n { 'class': prefixCls },\n [title && h(\n 'div',\n { 'class': prefixCls + '-title' },\n [title]\n ), h(\n 'div',\n { style: valueStyle, 'class': prefixCls + '-content' },\n [prefix && h(\n 'span',\n { 'class': prefixCls + '-content-prefix' },\n [prefix]\n ), valueNode, suffix && h(\n 'span',\n { 'class': prefixCls + '-content-suffix' },\n [suffix]\n )]\n )]\n );\n }\n};","import _slicedToArray from 'babel-runtime/helpers/slicedToArray';\nimport * as moment from 'moment';\nimport padStart from 'lodash/padStart';\n\nimport interopDefault from '../_util/interopDefault';\n\n// Countdown\nvar timeUnits = [['Y', 1000 * 60 * 60 * 24 * 365], // years\n['M', 1000 * 60 * 60 * 24 * 30], // months\n['D', 1000 * 60 * 60 * 24], // days\n['H', 1000 * 60 * 60], // hours\n['m', 1000 * 60], // minutes\n['s', 1000], // seconds\n['S', 1]];\n\nexport function formatTimeStr(duration, format) {\n var leftDuration = duration;\n\n var escapeRegex = /\\[[^\\]]*\\]/g;\n var keepList = (format.match(escapeRegex) || []).map(function (str) {\n return str.slice(1, -1);\n });\n var templateText = format.replace(escapeRegex, '[]');\n\n var replacedText = timeUnits.reduce(function (current, _ref) {\n var _ref2 = _slicedToArray(_ref, 2),\n name = _ref2[0],\n unit = _ref2[1];\n\n if (current.indexOf(name) !== -1) {\n var value = Math.floor(leftDuration / unit);\n leftDuration -= value * unit;\n return current.replace(new RegExp(name + '+', 'g'), function (match) {\n var len = match.length;\n return padStart(value.toString(), len, '0');\n });\n }\n return current;\n }, templateText);\n\n var index = 0;\n return replacedText.replace(escapeRegex, function () {\n var match = keepList[index];\n index += 1;\n return match;\n });\n}\n\nexport function formatCountdown(value, config) {\n var _config$format = config.format,\n format = _config$format === undefined ? '' : _config$format;\n\n var target = interopDefault(moment)(value).valueOf();\n var current = interopDefault(moment)().valueOf();\n var diff = Math.max(target - current, 0);\n return formatTimeStr(diff, format);\n}","import _mergeJSXProps from 'babel-helper-vue-jsx-merge-props';\nimport _extends from 'babel-runtime/helpers/extends';\nimport * as moment from 'moment';\nimport interopDefault from '../_util/interopDefault';\nimport { initDefaultProps, getListeners } from '../_util/props-util';\nimport Statistic, { StatisticProps } from './Statistic';\nimport { formatCountdown as _formatCountdown } from './utils';\n\nvar REFRESH_INTERVAL = 1000 / 30;\n\nfunction getTime(value) {\n return interopDefault(moment)(value).valueOf();\n}\n\nexport default {\n name: 'AStatisticCountdown',\n props: initDefaultProps(StatisticProps, {\n format: 'HH:mm:ss'\n }),\n\n created: function created() {\n this.countdownId = undefined;\n },\n mounted: function mounted() {\n this.syncTimer();\n },\n updated: function updated() {\n this.syncTimer();\n },\n beforeDestroy: function beforeDestroy() {\n this.stopTimer();\n },\n\n\n methods: {\n syncTimer: function syncTimer() {\n var value = this.$props.value;\n\n var timestamp = getTime(value);\n if (timestamp >= Date.now()) {\n this.startTimer();\n } else {\n this.stopTimer();\n }\n },\n startTimer: function startTimer() {\n var _this = this;\n\n if (this.countdownId) return;\n this.countdownId = window.setInterval(function () {\n _this.$refs.statistic.$forceUpdate();\n _this.syncTimer();\n }, REFRESH_INTERVAL);\n },\n stopTimer: function stopTimer() {\n var value = this.$props.value;\n\n if (this.countdownId) {\n clearInterval(this.countdownId);\n this.countdownId = undefined;\n\n var timestamp = getTime(value);\n if (timestamp < Date.now()) {\n this.$emit('finish');\n }\n }\n },\n formatCountdown: function formatCountdown(_ref) {\n var value = _ref.value,\n config = _ref.config;\n var format = this.$props.format;\n\n return _formatCountdown(value, _extends({}, config, { format: format }));\n },\n\n\n valueRenderHtml: function valueRenderHtml(node) {\n return node;\n }\n },\n\n render: function render() {\n var h = arguments[0];\n\n return h(Statistic, _mergeJSXProps([{\n ref: 'statistic'\n }, {\n props: _extends({}, this.$props, {\n valueRender: this.valueRenderHtml,\n formatter: this.formatCountdown\n }),\n on: getListeners(this)\n }]));\n }\n};","import Statistic from './Statistic';\nimport Countdown from './Countdown';\nimport Base from '../base';\n\nStatistic.Countdown = Countdown;\n/* istanbul ignore next */\nStatistic.install = function (Vue) {\n Vue.use(Base);\n Vue.component(Statistic.name, Statistic);\n Vue.component(Statistic.Countdown.name, Statistic.Countdown);\n};\n\nexport default Statistic;","import _mergeJSXProps from 'babel-helper-vue-jsx-merge-props';\nimport _defineProperty from 'babel-runtime/helpers/defineProperty';\nimport _objectWithoutProperties from 'babel-runtime/helpers/objectWithoutProperties';\nimport debounce from 'lodash/debounce';\nimport PropTypes from '../_util/vue-types';\nimport BaseMixin from '../_util/BaseMixin';\nimport { filterEmpty, initDefaultProps, isValidElement, getComponentFromProp, getListeners } from '../_util/props-util';\nimport { cloneElement } from '../_util/vnode';\nimport { ConfigConsumerProps } from '../config-provider/configConsumerProps';\n\nexport var SpinSize = PropTypes.oneOf(['small', 'default', 'large']);\n\nexport var SpinProps = function SpinProps() {\n return {\n prefixCls: PropTypes.string,\n spinning: PropTypes.bool,\n size: SpinSize,\n wrapperClassName: PropTypes.string,\n tip: PropTypes.string,\n delay: PropTypes.number,\n indicator: PropTypes.any\n };\n};\n\n// Render indicator\nvar defaultIndicator = void 0;\n\nfunction shouldDelay(spinning, delay) {\n return !!spinning && !!delay && !isNaN(Number(delay));\n}\n\nexport function setDefaultIndicator(Content) {\n defaultIndicator = typeof Content.indicator === 'function' ? Content.indicator : function (h) {\n return h(Content.indicator);\n };\n}\n\nexport default {\n name: 'ASpin',\n mixins: [BaseMixin],\n props: initDefaultProps(SpinProps(), {\n size: 'default',\n spinning: true,\n wrapperClassName: ''\n }),\n inject: {\n configProvider: { 'default': function _default() {\n return ConfigConsumerProps;\n } }\n },\n data: function data() {\n var spinning = this.spinning,\n delay = this.delay;\n\n var shouldBeDelayed = shouldDelay(spinning, delay);\n this.originalUpdateSpinning = this.updateSpinning;\n this.debouncifyUpdateSpinning(this.$props);\n return {\n sSpinning: spinning && !shouldBeDelayed\n };\n },\n mounted: function mounted() {\n this.updateSpinning();\n },\n updated: function updated() {\n var _this = this;\n\n this.$nextTick(function () {\n _this.debouncifyUpdateSpinning();\n _this.updateSpinning();\n });\n },\n beforeDestroy: function beforeDestroy() {\n this.cancelExistingSpin();\n },\n\n methods: {\n debouncifyUpdateSpinning: function debouncifyUpdateSpinning(props) {\n var _ref = props || this.$props,\n delay = _ref.delay;\n\n if (delay) {\n this.cancelExistingSpin();\n this.updateSpinning = debounce(this.originalUpdateSpinning, delay);\n }\n },\n updateSpinning: function updateSpinning() {\n var spinning = this.spinning,\n sSpinning = this.sSpinning;\n\n if (sSpinning !== spinning) {\n this.setState({ sSpinning: spinning });\n }\n },\n cancelExistingSpin: function cancelExistingSpin() {\n var updateSpinning = this.updateSpinning;\n\n if (updateSpinning && updateSpinning.cancel) {\n updateSpinning.cancel();\n }\n },\n getChildren: function getChildren() {\n if (this.$slots && this.$slots['default']) {\n return filterEmpty(this.$slots['default']);\n }\n return null;\n },\n renderIndicator: function renderIndicator(h, prefixCls) {\n // const h = this.$createElement\n var dotClassName = prefixCls + '-dot';\n var indicator = getComponentFromProp(this, 'indicator');\n // should not be render default indicator when indicator value is null\n if (indicator === null) {\n return null;\n }\n if (Array.isArray(indicator)) {\n indicator = filterEmpty(indicator);\n indicator = indicator.length === 1 ? indicator[0] : indicator;\n }\n if (isValidElement(indicator)) {\n return cloneElement(indicator, { 'class': dotClassName });\n }\n\n if (defaultIndicator && isValidElement(defaultIndicator(h))) {\n return cloneElement(defaultIndicator(h), { 'class': dotClassName });\n }\n\n return h(\n 'span',\n { 'class': dotClassName + ' ' + prefixCls + '-dot-spin' },\n [h('i', { 'class': prefixCls + '-dot-item' }), h('i', { 'class': prefixCls + '-dot-item' }), h('i', { 'class': prefixCls + '-dot-item' }), h('i', { 'class': prefixCls + '-dot-item' })]\n );\n }\n },\n render: function render(h) {\n var _spinClassName;\n\n var _$props = this.$props,\n size = _$props.size,\n customizePrefixCls = _$props.prefixCls,\n tip = _$props.tip,\n wrapperClassName = _$props.wrapperClassName,\n restProps = _objectWithoutProperties(_$props, ['size', 'prefixCls', 'tip', 'wrapperClassName']);\n\n var getPrefixCls = this.configProvider.getPrefixCls;\n var prefixCls = getPrefixCls('spin', customizePrefixCls);\n\n var sSpinning = this.sSpinning;\n\n var spinClassName = (_spinClassName = {}, _defineProperty(_spinClassName, prefixCls, true), _defineProperty(_spinClassName, prefixCls + '-sm', size === 'small'), _defineProperty(_spinClassName, prefixCls + '-lg', size === 'large'), _defineProperty(_spinClassName, prefixCls + '-spinning', sSpinning), _defineProperty(_spinClassName, prefixCls + '-show-text', !!tip), _spinClassName);\n\n var spinElement = h(\n 'div',\n _mergeJSXProps([restProps, { 'class': spinClassName }]),\n [this.renderIndicator(h, prefixCls), tip ? h(\n 'div',\n { 'class': prefixCls + '-text' },\n [tip]\n ) : null]\n );\n var children = this.getChildren();\n if (children) {\n var _containerClassName;\n\n var containerClassName = (_containerClassName = {}, _defineProperty(_containerClassName, prefixCls + '-container', true), _defineProperty(_containerClassName, prefixCls + '-blur', sSpinning), _containerClassName);\n\n return h(\n 'div',\n _mergeJSXProps([{ on: getListeners(this) }, {\n 'class': [prefixCls + '-nested-loading', wrapperClassName]\n }]),\n [sSpinning && h(\n 'div',\n { key: 'loading' },\n [spinElement]\n ), h(\n 'div',\n { 'class': containerClassName, key: 'container' },\n [children]\n )]\n );\n }\n return spinElement;\n }\n};","import _extends from 'babel-runtime/helpers/extends';\nimport PropTypes from '../_util/vue-types';\nimport { initDefaultProps, getOptionProps, getListeners } from '../_util/props-util';\nimport VcSteps from '../vc-steps';\nimport Icon from '../icon';\nimport { ConfigConsumerProps } from '../config-provider/configConsumerProps';\nimport Base from '../base';\n\nvar getStepsProps = function getStepsProps() {\n var defaultProps = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n var props = {\n prefixCls: PropTypes.string,\n iconPrefix: PropTypes.string,\n current: PropTypes.number,\n initial: PropTypes.number,\n labelPlacement: PropTypes.oneOf(['horizontal', 'vertical']).def('horizontal'),\n status: PropTypes.oneOf(['wait', 'process', 'finish', 'error']),\n size: PropTypes.oneOf(['default', 'small']),\n direction: PropTypes.oneOf(['horizontal', 'vertical']),\n progressDot: PropTypes.oneOfType([PropTypes.bool, PropTypes.func]),\n type: PropTypes.oneOf(['default', 'navigation'])\n };\n return initDefaultProps(props, defaultProps);\n};\n\nvar Steps = {\n name: 'ASteps',\n props: getStepsProps({\n current: 0\n }),\n inject: {\n configProvider: { 'default': function _default() {\n return ConfigConsumerProps;\n } }\n },\n model: {\n prop: 'current',\n event: 'change'\n },\n Step: _extends({}, VcSteps.Step, { name: 'AStep' }),\n render: function render() {\n var h = arguments[0];\n\n var props = getOptionProps(this);\n var customizePrefixCls = props.prefixCls,\n customizeIconPrefixCls = props.iconPrefix;\n\n var getPrefixCls = this.configProvider.getPrefixCls;\n var prefixCls = getPrefixCls('steps', customizePrefixCls);\n var iconPrefix = getPrefixCls('', customizeIconPrefixCls);\n\n var icons = {\n finish: h(Icon, {\n attrs: { type: 'check' },\n 'class': prefixCls + '-finish-icon' }),\n error: h(Icon, {\n attrs: { type: 'close' },\n 'class': prefixCls + '-error-icon' })\n };\n var stepsProps = {\n props: _extends({\n icons: icons,\n iconPrefix: iconPrefix,\n prefixCls: prefixCls\n }, props),\n on: getListeners(this),\n scopedSlots: this.$scopedSlots\n };\n return h(\n VcSteps,\n stepsProps,\n [this.$slots['default']]\n );\n }\n};\n\n/* istanbul ignore next */\nSteps.install = function (Vue) {\n Vue.use(Base);\n Vue.component(Steps.name, Steps);\n Vue.component(Steps.Step.name, Steps.Step);\n};\n\nexport default Steps;","import _extends from 'babel-runtime/helpers/extends';\nimport _defineProperty from 'babel-runtime/helpers/defineProperty';\nimport _typeof from 'babel-runtime/helpers/typeof';\nimport Icon from '../icon';\nimport ScrollableInkTabBar from '../vc-tabs/src/ScrollableInkTabBar';\nimport { cloneElement } from '../_util/vnode';\nimport PropTypes from '../_util/vue-types';\nimport { getListeners } from '../_util/props-util';\nvar TabBar = {\n name: 'TabBar',\n inheritAttrs: false,\n props: {\n prefixCls: PropTypes.string,\n tabBarStyle: PropTypes.object,\n tabBarExtraContent: PropTypes.any,\n type: PropTypes.oneOf(['line', 'card', 'editable-card']),\n tabPosition: PropTypes.oneOf(['top', 'right', 'bottom', 'left']).def('top'),\n tabBarPosition: PropTypes.oneOf(['top', 'right', 'bottom', 'left']),\n size: PropTypes.oneOf(['default', 'small', 'large']),\n animated: PropTypes.oneOfType([PropTypes.bool, PropTypes.object]),\n renderTabBar: PropTypes.func,\n panels: PropTypes.array.def([]),\n activeKey: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n tabBarGutter: PropTypes.number\n },\n render: function render() {\n var _cls;\n\n var h = arguments[0];\n var _$props = this.$props,\n tabBarStyle = _$props.tabBarStyle,\n _$props$animated = _$props.animated,\n animated = _$props$animated === undefined ? true : _$props$animated,\n renderTabBar = _$props.renderTabBar,\n tabBarExtraContent = _$props.tabBarExtraContent,\n tabPosition = _$props.tabPosition,\n prefixCls = _$props.prefixCls,\n _$props$type = _$props.type,\n type = _$props$type === undefined ? 'line' : _$props$type,\n size = _$props.size;\n\n var inkBarAnimated = (typeof animated === 'undefined' ? 'undefined' : _typeof(animated)) === 'object' ? animated.inkBar : animated;\n\n var isVertical = tabPosition === 'left' || tabPosition === 'right';\n var prevIconType = isVertical ? 'up' : 'left';\n var nextIconType = isVertical ? 'down' : 'right';\n var prevIcon = h(\n 'span',\n { 'class': prefixCls + '-tab-prev-icon' },\n [h(Icon, {\n attrs: { type: prevIconType },\n 'class': prefixCls + '-tab-prev-icon-target' })]\n );\n var nextIcon = h(\n 'span',\n { 'class': prefixCls + '-tab-next-icon' },\n [h(Icon, {\n attrs: { type: nextIconType },\n 'class': prefixCls + '-tab-next-icon-target' })]\n );\n\n // Additional className for style usage\n var cls = (_cls = {}, _defineProperty(_cls, prefixCls + '-' + tabPosition + '-bar', true), _defineProperty(_cls, prefixCls + '-' + size + '-bar', !!size), _defineProperty(_cls, prefixCls + '-card-bar', type && type.indexOf('card') >= 0), _cls);\n\n var renderProps = {\n props: _extends({}, this.$props, this.$attrs, {\n inkBarAnimated: inkBarAnimated,\n extraContent: tabBarExtraContent,\n prevIcon: prevIcon,\n nextIcon: nextIcon\n }),\n style: tabBarStyle,\n on: getListeners(this),\n 'class': cls\n };\n\n var RenderTabBar = void 0;\n\n if (renderTabBar) {\n RenderTabBar = renderTabBar(renderProps, ScrollableInkTabBar);\n // https://github.com/vueComponent/ant-design-vue/issues/2157\n return cloneElement(RenderTabBar, renderProps);\n } else {\n return h(ScrollableInkTabBar, renderProps);\n }\n }\n};\n\nexport default TabBar;","import _mergeJSXProps from 'babel-helper-vue-jsx-merge-props';\nimport _extends from 'babel-runtime/helpers/extends';\nimport _defineProperty from 'babel-runtime/helpers/defineProperty';\nimport _typeof from 'babel-runtime/helpers/typeof';\nimport Icon from '../icon';\nimport VcTabs, { TabPane } from '../vc-tabs/src';\nimport TabContent from '../vc-tabs/src/TabContent';\nimport { isFlexSupported } from '../_util/styleChecker';\nimport PropTypes from '../_util/vue-types';\nimport { getComponentFromProp, getOptionProps, filterEmpty, getListeners } from '../_util/props-util';\nimport { cloneElement } from '../_util/vnode';\nimport isValid from '../_util/isValid';\nimport { ConfigConsumerProps } from '../config-provider/configConsumerProps';\nimport TabBar from './TabBar';\n\nexport default {\n TabPane: TabPane,\n name: 'ATabs',\n model: {\n prop: 'activeKey',\n event: 'change'\n },\n props: {\n prefixCls: PropTypes.string,\n activeKey: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n defaultActiveKey: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n hideAdd: PropTypes.bool.def(false),\n tabBarStyle: PropTypes.object,\n tabBarExtraContent: PropTypes.any,\n destroyInactiveTabPane: PropTypes.bool.def(false),\n type: PropTypes.oneOf(['line', 'card', 'editable-card']),\n tabPosition: PropTypes.oneOf(['top', 'right', 'bottom', 'left']).def('top'),\n size: PropTypes.oneOf(['default', 'small', 'large']),\n animated: PropTypes.oneOfType([PropTypes.bool, PropTypes.object]),\n tabBarGutter: PropTypes.number,\n renderTabBar: PropTypes.func\n },\n inject: {\n configProvider: { 'default': function _default() {\n return ConfigConsumerProps;\n } }\n },\n mounted: function mounted() {\n var NO_FLEX = ' no-flex';\n var tabNode = this.$el;\n if (tabNode && !isFlexSupported && tabNode.className.indexOf(NO_FLEX) === -1) {\n tabNode.className += NO_FLEX;\n }\n },\n\n methods: {\n removeTab: function removeTab(targetKey, e) {\n e.stopPropagation();\n if (isValid(targetKey)) {\n this.$emit('edit', targetKey, 'remove');\n }\n },\n handleChange: function handleChange(activeKey) {\n this.$emit('change', activeKey);\n },\n createNewTab: function createNewTab(targetKey) {\n this.$emit('edit', targetKey, 'add');\n },\n onTabClick: function onTabClick(val) {\n this.$emit('tabClick', val);\n },\n onPrevClick: function onPrevClick(val) {\n this.$emit('prevClick', val);\n },\n onNextClick: function onNextClick(val) {\n this.$emit('nextClick', val);\n }\n },\n\n render: function render() {\n var _cls,\n _this = this,\n _contentCls;\n\n var h = arguments[0];\n\n var props = getOptionProps(this);\n var customizePrefixCls = props.prefixCls,\n size = props.size,\n _props$type = props.type,\n type = _props$type === undefined ? 'line' : _props$type,\n tabPosition = props.tabPosition,\n _props$animated = props.animated,\n animated = _props$animated === undefined ? true : _props$animated,\n hideAdd = props.hideAdd,\n renderTabBar = props.renderTabBar;\n\n var getPrefixCls = this.configProvider.getPrefixCls;\n var prefixCls = getPrefixCls('tabs', customizePrefixCls);\n var children = filterEmpty(this.$slots['default']);\n\n var tabBarExtraContent = getComponentFromProp(this, 'tabBarExtraContent');\n var tabPaneAnimated = (typeof animated === 'undefined' ? 'undefined' : _typeof(animated)) === 'object' ? animated.tabPane : animated;\n\n // card tabs should not have animation\n if (type !== 'line') {\n tabPaneAnimated = 'animated' in props ? tabPaneAnimated : false;\n }\n var cls = (_cls = {}, _defineProperty(_cls, prefixCls + '-vertical', tabPosition === 'left' || tabPosition === 'right'), _defineProperty(_cls, prefixCls + '-' + size, !!size), _defineProperty(_cls, prefixCls + '-card', type.indexOf('card') >= 0), _defineProperty(_cls, prefixCls + '-' + type, true), _defineProperty(_cls, prefixCls + '-no-animation', !tabPaneAnimated), _cls);\n // only card type tabs can be added and closed\n var childrenWithClose = [];\n if (type === 'editable-card') {\n childrenWithClose = [];\n children.forEach(function (child, index) {\n var props = getOptionProps(child);\n var closable = props.closable;\n closable = typeof closable === 'undefined' ? true : closable;\n var closeIcon = closable ? h(Icon, {\n attrs: {\n type: 'close'\n },\n 'class': prefixCls + '-close-x',\n on: {\n 'click': function click(e) {\n return _this.removeTab(child.key, e);\n }\n }\n }) : null;\n childrenWithClose.push(cloneElement(child, {\n props: {\n tab: h(\n 'div',\n { 'class': closable ? undefined : prefixCls + '-tab-unclosable' },\n [getComponentFromProp(child, 'tab'), closeIcon]\n )\n },\n key: child.key || index\n }));\n });\n // Add new tab handler\n if (!hideAdd) {\n tabBarExtraContent = h('span', [h(Icon, {\n attrs: { type: 'plus' },\n 'class': prefixCls + '-new-tab', on: {\n 'click': this.createNewTab\n }\n }), tabBarExtraContent]);\n }\n }\n\n tabBarExtraContent = tabBarExtraContent ? h(\n 'div',\n { 'class': prefixCls + '-extra-content' },\n [tabBarExtraContent]\n ) : null;\n\n var renderTabBarSlot = renderTabBar || this.$scopedSlots.renderTabBar;\n var listeners = getListeners(this);\n var tabBarProps = {\n props: _extends({}, this.$props, {\n prefixCls: prefixCls,\n tabBarExtraContent: tabBarExtraContent,\n renderTabBar: renderTabBarSlot\n }),\n on: listeners\n };\n var contentCls = (_contentCls = {}, _defineProperty(_contentCls, prefixCls + '-' + tabPosition + '-content', true), _defineProperty(_contentCls, prefixCls + '-card-content', type.indexOf('card') >= 0), _contentCls);\n var tabsProps = {\n props: _extends({}, getOptionProps(this), {\n prefixCls: prefixCls,\n tabBarPosition: tabPosition,\n // https://github.com/vueComponent/ant-design-vue/issues/2030\n // 如仅传递 tabBarProps 会导致,第二次执行 renderTabBar 时,丢失 on 属性,\n // 添加key之后,会在babel jsx 插件中做一次merge,最终TabBar接收的是一个新的对象,而不是 tabBarProps\n renderTabBar: function renderTabBar() {\n return h(TabBar, _mergeJSXProps([{ key: 'tabBar' }, tabBarProps]));\n },\n renderTabContent: function renderTabContent() {\n return h(TabContent, { 'class': contentCls, attrs: { animated: tabPaneAnimated, animatedWithMargin: true }\n });\n },\n children: childrenWithClose.length > 0 ? childrenWithClose : children,\n __propsSymbol__: Symbol()\n }),\n on: _extends({}, listeners, {\n change: this.handleChange\n }),\n 'class': cls\n };\n return h(VcTabs, tabsProps);\n }\n};","import _extends from 'babel-runtime/helpers/extends';\nimport ref from 'vue-ref';\nimport Vue from 'vue';\nimport Tabs from './tabs';\nimport TabPane from '../vc-tabs/src/TabPane';\nimport TabContent from '../vc-tabs/src/TabContent';\nimport Base from '../base';\n\nTabs.TabPane = _extends({}, TabPane, { name: 'ATabPane', __ANT_TAB_PANE: true });\nTabs.TabContent = _extends({}, TabContent, { name: 'ATabContent' });\nVue.use(ref, { name: 'ant-ref' });\n\n/* istanbul ignore next */\nTabs.install = function (Vue) {\n Vue.use(Base);\n Vue.component(Tabs.name, Tabs);\n Vue.component(Tabs.TabPane.name, Tabs.TabPane);\n Vue.component(Tabs.TabContent.name, Tabs.TabContent);\n};\n\nexport default Tabs;\nexport { TabPane, TabContent };","import _objectWithoutProperties from 'babel-runtime/helpers/objectWithoutProperties';\nimport _defineProperty from 'babel-runtime/helpers/defineProperty';\nimport _extends from 'babel-runtime/helpers/extends';\nimport PropTypes from '../_util/vue-types';\nimport BaseMixin from '../_util/BaseMixin';\nimport { getOptionProps, getListeners } from '../_util/props-util';\nimport VcSlider from '../vc-slider/src/Slider';\nimport VcRange from '../vc-slider/src/Range';\nimport VcHandle from '../vc-slider/src/Handle';\nimport Tooltip from '../tooltip';\nimport Base from '../base';\nimport { ConfigConsumerProps } from '../config-provider/configConsumerProps';\nimport abstractTooltipProps from '../tooltip/abstractTooltipProps';\n\n// export interface SliderMarks {\n// [key]: React.ReactNode | {\n// style: React.CSSProperties,\n// label: React.ReactNode,\n// };\n// }\n// const SliderMarks = PropTypes.shape({\n// style: PropTypes.object,\n// label: PropTypes.any,\n// }).loose\nvar tooltipProps = abstractTooltipProps();\nexport var SliderProps = function SliderProps() {\n return {\n prefixCls: PropTypes.string,\n tooltipPrefixCls: PropTypes.string,\n range: PropTypes.bool,\n reverse: PropTypes.bool,\n min: PropTypes.number,\n max: PropTypes.number,\n step: PropTypes.oneOfType([PropTypes.number, PropTypes.any]),\n marks: PropTypes.object,\n dots: PropTypes.bool,\n value: PropTypes.oneOfType([PropTypes.number, PropTypes.arrayOf(PropTypes.number)]),\n defaultValue: PropTypes.oneOfType([PropTypes.number, PropTypes.arrayOf(PropTypes.number)]),\n included: PropTypes.bool,\n disabled: PropTypes.bool,\n vertical: PropTypes.bool,\n tipFormatter: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n tooltipVisible: PropTypes.bool,\n tooltipPlacement: tooltipProps.placement,\n getTooltipPopupContainer: PropTypes.func\n };\n};\n\nvar Slider = {\n name: 'ASlider',\n model: {\n prop: 'value',\n event: 'change'\n },\n mixins: [BaseMixin],\n inject: {\n configProvider: { 'default': function _default() {\n return ConfigConsumerProps;\n } }\n },\n props: _extends({}, SliderProps(), {\n tipFormatter: PropTypes.oneOfType([PropTypes.func, PropTypes.object]).def(function (value) {\n return value.toString();\n })\n }),\n data: function data() {\n return {\n visibles: {}\n };\n },\n\n methods: {\n toggleTooltipVisible: function toggleTooltipVisible(index, visible) {\n this.setState(function (_ref) {\n var visibles = _ref.visibles;\n return {\n visibles: _extends({}, visibles, _defineProperty({}, index, visible))\n };\n });\n },\n handleWithTooltip: function handleWithTooltip(tooltipPrefixCls, prefixCls, _ref2) {\n var _this = this;\n\n var value = _ref2.value,\n dragging = _ref2.dragging,\n index = _ref2.index,\n directives = _ref2.directives,\n on = _ref2.on,\n restProps = _objectWithoutProperties(_ref2, ['value', 'dragging', 'index', 'directives', 'on']);\n\n var h = this.$createElement;\n var _$props = this.$props,\n tipFormatter = _$props.tipFormatter,\n tooltipVisible = _$props.tooltipVisible,\n tooltipPlacement = _$props.tooltipPlacement,\n getTooltipPopupContainer = _$props.getTooltipPopupContainer;\n var visibles = this.visibles;\n\n var isTipFormatter = tipFormatter ? visibles[index] || dragging : false;\n var visible = tooltipVisible || tooltipVisible === undefined && isTipFormatter;\n var tooltipProps = {\n props: {\n prefixCls: tooltipPrefixCls,\n title: tipFormatter ? tipFormatter(value) : '',\n visible: visible,\n placement: tooltipPlacement || 'top',\n transitionName: 'zoom-down',\n overlayClassName: prefixCls + '-tooltip',\n getPopupContainer: getTooltipPopupContainer || function () {\n return document.body;\n }\n },\n key: index\n };\n var handleProps = {\n props: _extends({\n value: value\n }, restProps),\n directives: directives,\n on: _extends({}, on, {\n mouseenter: function mouseenter() {\n return _this.toggleTooltipVisible(index, true);\n },\n mouseleave: function mouseleave() {\n return _this.toggleTooltipVisible(index, false);\n }\n })\n };\n return h(\n Tooltip,\n tooltipProps,\n [h(VcHandle, handleProps)]\n );\n },\n focus: function focus() {\n this.$refs.sliderRef.focus();\n },\n blur: function blur() {\n this.$refs.sliderRef.blur();\n }\n },\n render: function render() {\n var _this2 = this;\n\n var h = arguments[0];\n\n var _getOptionProps = getOptionProps(this),\n range = _getOptionProps.range,\n customizePrefixCls = _getOptionProps.prefixCls,\n customizeTooltipPrefixCls = _getOptionProps.tooltipPrefixCls,\n restProps = _objectWithoutProperties(_getOptionProps, ['range', 'prefixCls', 'tooltipPrefixCls']);\n\n var getPrefixCls = this.configProvider.getPrefixCls;\n var prefixCls = getPrefixCls('slider', customizePrefixCls);\n var tooltipPrefixCls = getPrefixCls('tooltip', customizeTooltipPrefixCls);\n var listeners = getListeners(this);\n if (range) {\n var vcRangeProps = {\n props: _extends({}, restProps, {\n prefixCls: prefixCls,\n tooltipPrefixCls: tooltipPrefixCls,\n handle: function handle(info) {\n return _this2.handleWithTooltip(tooltipPrefixCls, prefixCls, info);\n }\n }),\n ref: 'sliderRef',\n on: listeners\n };\n return h(VcRange, vcRangeProps);\n }\n var vcSliderProps = {\n props: _extends({}, restProps, {\n prefixCls: prefixCls,\n tooltipPrefixCls: tooltipPrefixCls,\n handle: function handle(info) {\n return _this2.handleWithTooltip(tooltipPrefixCls, prefixCls, info);\n }\n }),\n ref: 'sliderRef',\n on: listeners\n };\n return h(VcSlider, vcSliderProps);\n }\n};\n\n/* istanbul ignore next */\nSlider.install = function (Vue) {\n Vue.use(Base);\n Vue.component(Slider.name, Slider);\n};\n\nexport default Slider;"],"sourceRoot":""}