UNPKG

84.7 kBSource Map (JSON)View Raw
1{"version":3,"sources":["table/Table.js"],"names":["React","Component","findDOMNode","PropTypes","classNames","noop","scrollIntoView","smoothScrollIntoView","Pagination","Icon","Spin","LocaleReceiver","defaultLocale","warning","FilterDropdown","createStore","SelectionBox","SelectionCheckboxAll","Column","ColumnGroup","getConfig","getPrefixCls","createBodyRow","findColumnByFilterValue","flatArray","flatFilter","getColumnKey","getLeafColumns","normalizeColumns","removeHiddenColumns","treeMap","FilterBar","VALUE_OR","RcTable","Size","findBodyDom","dom","reg","childElementCount","i","test","children","className","childFound","stopPropagation","e","nativeEvent","stopImmediatePropagation","defaultPagination","onChange","onShowSizeChange","emptyObject","Table","props","saveRef","ref","refTable","getCheckboxPropsByItem","item","index","rowSelection","getCheckboxProps","key","getRecordKey","CheckboxPropsCache","onRow","record","prefixCls","custom","store","rowKey","handleFilterSelectClear","filters","state","Object","keys","map","setNewFilterState","barFilters","handleFilterSelectChange","onFilterSelectChange","handleColumnFilterChange","onColumnFilterChange","forceUpdate","handleFilter","column","nextFilters","stateFilters","currentColumnKeys","columns","c","push","forEach","columnKey","indexOf","handleSelect","rowIndex","checked","target","defaultSelection","getState","selectionDirty","getDefaultSelection","selectedRowKeys","concat","filter","setState","setSelectedRowKeys","selectWay","changeRowKeys","undefined","handleRadioSelect","handleSelectRow","selectionKey","onSelectFunc","data","getFlatCurrentPageData","changeableRowKeys","disabled","splice","customSelectionStartIndex","hideDefaultSelections","handlePageChange","current","autoScroll","propsPagination","pagination","statePagination","scrollIntoViewSmoothly","document","documentElement","style","setTimeout","clientHeight","body","block","behavior","scrollMode","scrollIntoViewIfNeeded","RegExp","scroll","scrollTop","otherArguments","newState","prepareParamsArguments","renderSelectionBox","type","_","handleChange","createElement","onClick","recordKey","getPopupContainer","handleShowSizeChange","pageSize","nextPagination","renderTable","contextLocale","loading","locale","filterBarMultiple","filterBarPlaceholder","showHeader","filterBar","dataSource","empty","restProps","columnFilters","getCurrentPageData","expandIconAsCell","expandedRowRender","classString","size","bordered","length","renderRowSelection","renderColumnsDropdown","newColumn","expandIconColumnIndex","table","components","emptyText","spinning","bar","placeholder","onFilterSelectClear","onFilter","multiple","createComponents","getDefaultSortOrder","getFiltersFromColumns","getDefaultPagination","getFlatData","defaultChecked","hasPagination","defaultCurrent","defaultPageSize","nextProps","previousState","newPagination","sortColumn","sortOrder","getSortOrderColumns","sortState","getSortStateFromColumns","filteredValueColumns","getFilteredValueColumns","filtersFromColumns","newFilters","isFiltersChanged","selectedRows","row","onSelect","onSelectAll","changeRows","onSelectInvert","filtersChanged","filteredValue","col","colKey","definedSortState","defaultSortedColumn","defaultSortOrder","sortedColumn","sorter","a","b","result","order","isSortColumn","selectionColumnClass","selections","selectionColumn","render","fixed","width","columnWidth","checkboxAllDisabled","every","title","some","unshift","total","Math","floor","customizeDropdownPrefixCls","dropdownPrefixCls","originColumn","filterDropdown","sortButton","colFilters","selectedKeys","confirmFilter","isAscend","onHeaderCell","customProps","isDefaultPrevented","setSortOrder","paginationPosition","position","getLocalData","paginationProps","getMaxCurrent","showTotal","sizeChangerOptionText","field","dataIndex","myKey","Number","MAX_VALUE","childrenColumnName","sorterFn","sort","recursiveSort","noFilter","slice","getSorterFn","filteredData","findColumn","values","v","isOr","doBarFilter","prevComponents","bodyRow","preBodyRow","componentName","paginationPatchClass","renderPagination","displayName","propTypes","array","oneOfType","node","func","string","useFixedHeader","bool","object","oneOf","large","small","indentSize","number","defaultProps"],"mappings":"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","sourcesContent":["import React, { Component } from 'react';\nimport { findDOMNode } from 'react-dom';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport noop from 'lodash/noop';\nimport scrollIntoView from 'scroll-into-view-if-needed';\nimport smoothScrollIntoView from 'smooth-scroll-into-view-if-needed';\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 FilterDropdown from './filterDropdown';\nimport createStore from './createStore';\nimport SelectionBox from './SelectionBox';\nimport SelectionCheckboxAll from './SelectionCheckboxAll';\nimport Column from './Column';\nimport ColumnGroup from './ColumnGroup';\nimport { getConfig, getPrefixCls } from '../configure';\nimport createBodyRow from './createBodyRow';\nimport { findColumnByFilterValue, flatArray, flatFilter, getColumnKey, getLeafColumns, normalizeColumns, removeHiddenColumns, treeMap, } from './util';\nimport FilterBar from './FilterBar';\nimport { VALUE_OR } from './FilterSelect';\nimport RcTable from '../rc-components/table';\nimport { Size } from '../_util/enum';\nfunction findBodyDom(dom, reg) {\n if (dom.childElementCount > 0) {\n for (let i = 0; i < dom.childElementCount; i += 1) {\n if (reg.test(dom.children[i].className)) {\n return dom.children[i];\n }\n if (dom.childElementCount > 0) {\n const childFound = findBodyDom(dom.children[i], reg);\n if (childFound !== null) {\n return childFound;\n }\n }\n }\n }\n return null;\n}\nfunction stopPropagation(e) {\n e.stopPropagation();\n if (e.nativeEvent.stopImmediatePropagation) {\n e.nativeEvent.stopImmediatePropagation();\n }\n}\nconst defaultPagination = {\n onChange: noop,\n onShowSizeChange: noop,\n};\n/**\n * Avoid creating new object, so that parent component's shouldComponentUpdate\n * can works appropriately。\n */\nconst emptyObject = {};\nexport default class Table extends Component {\n constructor(props) {\n super(props);\n this.saveRef = ref => {\n this.refTable = ref;\n };\n this.getCheckboxPropsByItem = (item, index) => {\n const { rowSelection = {} } = this.props;\n if (!rowSelection.getCheckboxProps) {\n return {};\n }\n const key = this.getRecordKey(item, index);\n // Cache checkboxProps\n if (!this.CheckboxPropsCache[key]) {\n this.CheckboxPropsCache[key] = rowSelection.getCheckboxProps(item);\n }\n return this.CheckboxPropsCache[key];\n };\n this.onRow = (record, index) => {\n const { onRow } = this.props;\n const prefixCls = this.getPrefixCls();\n const custom = onRow ? onRow(record, index) : {};\n return {\n ...custom,\n prefixCls,\n store: this.store,\n rowKey: this.getRecordKey(record, index),\n };\n };\n this.handleFilterSelectClear = () => {\n const { filters } = this.state;\n Object.keys(filters).map(key => (filters[key] = []));\n this.setNewFilterState({\n barFilters: [],\n filters,\n });\n };\n this.handleFilterSelectChange = (barFilters) => {\n const { onFilterSelectChange } = this.props;\n if (onFilterSelectChange) {\n onFilterSelectChange(barFilters);\n }\n this.setNewFilterState({\n barFilters,\n });\n };\n this.handleColumnFilterChange = (e) => {\n const { onColumnFilterChange } = this.props;\n if (onColumnFilterChange) {\n onColumnFilterChange(e);\n }\n this.forceUpdate();\n };\n this.handleFilter = (column, nextFilters) => {\n const { filters: stateFilters } = this.state;\n const filters = {\n ...stateFilters,\n [this.getColumnKey(column)]: nextFilters,\n };\n // Remove filters not in current columns\n const currentColumnKeys = [];\n treeMap(this.columns, c => {\n if (!c.children) {\n currentColumnKeys.push(this.getColumnKey(c));\n }\n });\n Object.keys(filters).forEach(columnKey => {\n if (currentColumnKeys.indexOf(columnKey) < 0) {\n delete filters[columnKey];\n }\n });\n this.setNewFilterState({\n filters,\n });\n };\n this.handleSelect = (record, rowIndex, e) => {\n const checked = e.target.checked;\n const nativeEvent = e.nativeEvent;\n const defaultSelection = this.store.getState().selectionDirty ? [] : this.getDefaultSelection();\n let selectedRowKeys = this.store.getState().selectedRowKeys.concat(defaultSelection);\n const key = this.getRecordKey(record, rowIndex);\n if (checked) {\n selectedRowKeys.push(this.getRecordKey(record, rowIndex));\n }\n else {\n selectedRowKeys = selectedRowKeys.filter((i) => key !== i);\n }\n this.store.setState({\n selectionDirty: true,\n });\n this.setSelectedRowKeys(selectedRowKeys, {\n selectWay: 'onSelect',\n record,\n checked,\n changeRowKeys: undefined,\n nativeEvent,\n });\n };\n this.handleRadioSelect = (record, rowIndex, e) => {\n const checked = e.target.checked;\n const nativeEvent = e.nativeEvent;\n const defaultSelection = this.store.getState().selectionDirty ? [] : this.getDefaultSelection();\n let selectedRowKeys = this.store.getState().selectedRowKeys.concat(defaultSelection);\n const key = this.getRecordKey(record, rowIndex);\n selectedRowKeys = [key];\n this.store.setState({\n selectionDirty: true,\n });\n this.setSelectedRowKeys(selectedRowKeys, {\n selectWay: 'onSelect',\n record,\n checked,\n changeRowKeys: undefined,\n nativeEvent,\n });\n };\n this.handleSelectRow = (selectionKey, index, onSelectFunc) => {\n const data = this.getFlatCurrentPageData();\n const defaultSelection = this.store.getState().selectionDirty ? [] : this.getDefaultSelection();\n const selectedRowKeys = this.store.getState().selectedRowKeys.concat(defaultSelection);\n const changeableRowKeys = data\n .filter((item, i) => !this.getCheckboxPropsByItem(item, i).disabled)\n .map((item, i) => this.getRecordKey(item, i));\n const changeRowKeys = [];\n let selectWay = '';\n let checked;\n // handle default selection\n switch (selectionKey) {\n case 'all':\n changeableRowKeys.forEach(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(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(key => {\n if (selectedRowKeys.indexOf(key) < 0) {\n selectedRowKeys.push(key);\n }\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 this.store.setState({\n selectionDirty: true,\n });\n // when select custom selection, callback selections[n].onSelect\n const { rowSelection } = this.props;\n let 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,\n checked,\n changeRowKeys,\n });\n };\n this.handlePageChange = (current, ...otherArguments) => {\n const { onChange, autoScroll, pagination: propsPagination } = this.props;\n const { pagination: statePagination } = this.state;\n const pagination = { ...statePagination };\n if (autoScroll) {\n const scrollIntoViewSmoothly = 'scrollBehavior' in document.documentElement.style\n ? scrollIntoView\n : smoothScrollIntoView;\n setTimeout(() => {\n if (this.refTable && this.refTable.clientHeight > document.body.clientHeight) {\n scrollIntoViewSmoothly(this.refTable, { block: 'start', behavior: 'smooth', scrollMode: 'if-needed' });\n }\n else if (this.refTable) {\n // @ts-ignore\n if (this.refTable.scrollIntoViewIfNeeded) {\n // @ts-ignore\n this.refTable.scrollIntoViewIfNeeded({\n block: 'start',\n });\n }\n else {\n scrollIntoViewSmoothly(this.refTable, { block: 'start', behavior: 'smooth', scrollMode: 'if-needed' });\n }\n }\n }, 10);\n if (this.refTable) {\n const dom = findBodyDom(this.refTable, new RegExp(`${this.getPrefixCls()}-body`));\n if (dom !== null && dom.scroll) {\n dom.scrollTop = 0;\n }\n }\n }\n if (current) {\n pagination.current = current;\n }\n else {\n pagination.current = pagination.current || 1;\n }\n pagination.onChange(pagination.current, ...otherArguments);\n const newState = {\n pagination,\n };\n // Controlled current prop will not respond user interaction\n if (propsPagination && typeof propsPagination === 'object' && 'current' in propsPagination) {\n newState.pagination = {\n ...pagination,\n current: statePagination.current,\n };\n }\n this.setState(newState);\n this.store.setState({\n selectionDirty: false,\n });\n if (onChange) {\n onChange(...this.prepareParamsArguments({\n ...this.state,\n selectionDirty: false,\n pagination,\n }));\n }\n };\n this.renderSelectionBox = (type) => {\n return (_, record, index) => {\n const rowIndex = this.getRecordKey(record, index); // 从 1 开始\n const props = this.getCheckboxPropsByItem(record, index);\n const handleChange = (e) => {\n if (type === 'radio') {\n this.handleRadioSelect(record, rowIndex, e);\n }\n else {\n this.handleSelect(record, rowIndex, e);\n }\n };\n return (React.createElement(\"span\", { onClick: stopPropagation },\n React.createElement(SelectionBox, Object.assign({ type: type, store: this.store, rowIndex: rowIndex, onChange: handleChange, defaultSelection: this.getDefaultSelection() }, props))));\n };\n };\n this.getRecordKey = (record, index) => {\n const { rowKey } = this.props;\n const recordKey = typeof rowKey === 'function' ? rowKey(record, index) : record[rowKey];\n warning(recordKey !== undefined, 'Each record in dataSource of table should have a unique `key` prop, or set `rowKey` to an unique primary key');\n return recordKey === undefined ? index : recordKey;\n };\n this.getPopupContainer = () => {\n return findDOMNode(this);\n };\n this.handleShowSizeChange = (current, pageSize) => {\n const { pagination } = this.state;\n pagination.onShowSizeChange(current, pageSize);\n const nextPagination = {\n ...pagination,\n pageSize,\n current,\n };\n this.setState({ pagination: nextPagination });\n const { onChange } = this.props;\n if (onChange) {\n onChange(...this.prepareParamsArguments({\n ...this.state,\n pagination: nextPagination,\n }));\n }\n };\n this.renderTable = (contextLocale, loading) => {\n const { props } = this;\n const locale = { ...contextLocale, ...props.locale };\n const { filterBarMultiple, filterBarPlaceholder, showHeader, filterBar, dataSource, filters, empty, ...restProps } = props;\n const { filters: columnFilters } = this.state;\n const prefixCls = this.getPrefixCls();\n const data = this.getCurrentPageData();\n const expandIconAsCell = props.expandedRowRender && props.expandIconAsCell !== false;\n const classString = classNames({\n [`${prefixCls}-${props.size}`]: true,\n [`${prefixCls}-bordered`]: props.bordered,\n [`${prefixCls}-empty`]: !data.length,\n [`${prefixCls}-without-column-header`]: !showHeader,\n });\n let columns = this.renderRowSelection(locale);\n columns = this.renderColumnsDropdown(columns, locale);\n columns = columns.map((column, i) => {\n const newColumn = { ...column };\n newColumn.key = this.getColumnKey(newColumn, i);\n return newColumn;\n });\n columns = removeHiddenColumns(columns);\n let expandIconColumnIndex = columns[0] && columns[0].key === 'selection-column' ? 1 : 0;\n if ('expandIconColumnIndex' in restProps) {\n expandIconColumnIndex = restProps.expandIconColumnIndex;\n }\n const table = (React.createElement(RcTable, Object.assign({ key: \"table\" }, restProps, { onRow: this.onRow, components: this.components, prefixCls: prefixCls, data: data, columns: columns, showHeader: showHeader, className: classString, expandIconColumnIndex: expandIconColumnIndex, expandIconAsCell: expandIconAsCell, emptyText: !loading.spinning && (empty || locale.emptyText) })));\n if (filterBar) {\n const bar = (React.createElement(FilterBar, { key: \"filter-bar\", prefixCls: prefixCls, placeholder: filterBarPlaceholder, columns: getLeafColumns(this.columns), onFilterSelectChange: this.handleFilterSelectChange, onFilterSelectClear: this.handleFilterSelectClear, onColumnFilterChange: this.handleColumnFilterChange, onFilter: this.handleFilter, dataSource: dataSource, filters: filters, columnFilters: columnFilters, multiple: filterBarMultiple, getPopupContainer: this.getPopupContainer }));\n return [bar, table];\n }\n return table;\n };\n warning(!('columnsPageRange' in props || 'columnsPageSize' in props), '`columnsPageRange` and `columnsPageSize` are removed, please use fixed columns instead');\n this.columns = props.columns || normalizeColumns(props.children);\n this.createComponents(props.components);\n this.state = {\n ...this.getDefaultSortOrder(this.columns),\n // 减少状态\n filters: this.getFiltersFromColumns(),\n barFilters: props.filters || [],\n pagination: this.getDefaultPagination(props),\n };\n this.CheckboxPropsCache = {};\n this.store = createStore({\n selectedRowKeys: (props.rowSelection || {}).selectedRowKeys || [],\n selectionDirty: false,\n });\n }\n getPrefixCls() {\n const { prefixCls } = this.props;\n return getPrefixCls('table', prefixCls);\n }\n getDefaultSelection() {\n const { rowSelection = {} } = this.props;\n if (!rowSelection.getCheckboxProps) {\n return [];\n }\n return this.getFlatData()\n .filter((item, rowIndex) => this.getCheckboxPropsByItem(item, rowIndex).defaultChecked)\n .map((record, rowIndex) => this.getRecordKey(record, rowIndex));\n }\n getDefaultPagination(props) {\n const pagination = props.pagination || {};\n return this.hasPagination(props)\n ? {\n ...defaultPagination,\n size: props.size,\n ...pagination,\n current: pagination.defaultCurrent || pagination.current || 1,\n pageSize: pagination.defaultPageSize || pagination.pageSize || 10,\n }\n : {};\n }\n componentWillReceiveProps(nextProps) {\n this.columns = nextProps.columns || normalizeColumns(nextProps.children);\n if ('pagination' in nextProps || 'pagination' in this.props) {\n this.setState(previousState => {\n const newPagination = {\n ...defaultPagination,\n size: nextProps.size,\n ...previousState.pagination,\n ...nextProps.pagination,\n };\n newPagination.current = newPagination.current || 1;\n newPagination.pageSize = newPagination.pageSize || 10;\n return { pagination: nextProps.pagination !== false ? newPagination : emptyObject };\n });\n }\n const { rowSelection, dataSource, components } = this.props;\n const { filters, sortColumn, sortOrder } = this.state;\n if (nextProps.rowSelection && 'selectedRowKeys' in nextProps.rowSelection) {\n this.store.setState({\n selectedRowKeys: nextProps.rowSelection.selectedRowKeys || [],\n });\n if (rowSelection &&\n nextProps.rowSelection.getCheckboxProps !== rowSelection.getCheckboxProps) {\n this.CheckboxPropsCache = {};\n }\n }\n if ('dataSource' in nextProps && nextProps.dataSource !== dataSource) {\n this.store.setState({\n selectionDirty: false,\n });\n this.CheckboxPropsCache = {};\n }\n if (this.getSortOrderColumns(this.columns).length > 0) {\n const sortState = this.getSortStateFromColumns(this.columns);\n if (sortState.sortColumn !== sortColumn || sortState.sortOrder !== sortOrder) {\n this.setState(sortState);\n }\n }\n const filteredValueColumns = this.getFilteredValueColumns(this.columns);\n if (filteredValueColumns.length > 0) {\n const filtersFromColumns = this.getFiltersFromColumns(this.columns);\n const newFilters = { ...filters };\n Object.keys(filtersFromColumns).forEach(key => {\n newFilters[key] = filtersFromColumns[key];\n });\n if (this.isFiltersChanged(newFilters)) {\n this.setState({ filters: newFilters });\n }\n }\n if ('filters' in nextProps) {\n this.setState({\n barFilters: nextProps.filters || [],\n });\n }\n this.createComponents(nextProps.components, components);\n }\n setSelectedRowKeys(selectedRowKeys, { selectWay, record, checked, changeRowKeys, nativeEvent }) {\n const { rowSelection = {} } = this.props;\n if (rowSelection && !('selectedRowKeys' in rowSelection)) {\n this.store.setState({ selectedRowKeys });\n }\n const data = this.getFlatData();\n if (!rowSelection.onChange && !rowSelection[selectWay]) {\n return;\n }\n const selectedRows = data.filter((row, i) => selectedRowKeys.indexOf(this.getRecordKey(row, i)) >= 0);\n if (rowSelection.onChange) {\n rowSelection.onChange(selectedRowKeys, selectedRows);\n }\n if (selectWay === 'onSelect' && rowSelection.onSelect) {\n rowSelection.onSelect(record, checked, selectedRows, nativeEvent);\n }\n else if (selectWay === 'onSelectAll' && rowSelection.onSelectAll) {\n const changeRows = data.filter((row, i) => changeRowKeys.indexOf(this.getRecordKey(row, i)) >= 0);\n rowSelection.onSelectAll(checked, selectedRows, changeRows);\n }\n else if (selectWay === 'onSelectInvert' && rowSelection.onSelectInvert) {\n rowSelection.onSelectInvert(selectedRowKeys);\n }\n }\n hasPagination(props) {\n return (props || this.props).pagination !== false;\n }\n isFiltersChanged(filters) {\n let filtersChanged = false;\n const { filters: stateFilters } = this.state;\n if (Object.keys(filters).length !== Object.keys(stateFilters).length) {\n filtersChanged = true;\n }\n else {\n Object.keys(filters).forEach(columnKey => {\n if (filters[columnKey] !== stateFilters[columnKey]) {\n filtersChanged = true;\n }\n });\n }\n return filtersChanged;\n }\n getSortOrderColumns(columns) {\n return flatFilter(columns || this.columns || [], (column) => 'sortOrder' in column);\n }\n getFilteredValueColumns(columns) {\n return flatFilter(columns || this.columns || [], (column) => typeof column.filteredValue !== 'undefined');\n }\n getFiltersFromColumns(columns) {\n const filters = {};\n this.getFilteredValueColumns(columns).forEach((col) => {\n const colKey = this.getColumnKey(col);\n filters[colKey] = col.filteredValue;\n });\n return filters;\n }\n getDefaultSortOrder(columns) {\n const definedSortState = this.getSortStateFromColumns(columns);\n const defaultSortedColumn = flatFilter(columns || [], (column) => column.defaultSortOrder != null)[0];\n if (defaultSortedColumn && !definedSortState.sortColumn) {\n return {\n sortColumn: defaultSortedColumn,\n sortOrder: defaultSortedColumn.defaultSortOrder,\n };\n }\n return definedSortState;\n }\n getSortStateFromColumns(columns) {\n // return first column which sortOrder is not falsy\n const sortedColumn = this.getSortOrderColumns(columns).filter((col) => col.sortOrder)[0];\n if (sortedColumn) {\n return {\n sortColumn: sortedColumn,\n sortOrder: sortedColumn.sortOrder,\n };\n }\n return {\n sortColumn: null,\n sortOrder: null,\n };\n }\n getSorterFn() {\n const { sortOrder, sortColumn } = this.state;\n if (!sortOrder || !sortColumn || typeof sortColumn.sorter !== 'function') {\n return;\n }\n return (a, b) => {\n const result = sortColumn.sorter(a, b);\n if (result !== 0) {\n return sortOrder === 'descend' ? -result : result;\n }\n return 0;\n };\n }\n setSortOrder(order, column) {\n const newState = {\n sortOrder: order,\n sortColumn: column,\n };\n // Controlled\n if (this.getSortOrderColumns().length === 0) {\n this.setState(newState);\n }\n const { onChange } = this.props;\n if (onChange) {\n onChange(...this.prepareParamsArguments({\n ...this.state,\n ...newState,\n }));\n }\n }\n toggleSortOrder(order, column) {\n let { sortColumn, sortOrder } = this.state;\n // 只同时允许一列进行排序,否则会导致排序顺序的逻辑问题\n const isSortColumn = this.isSortColumn(column);\n if (!isSortColumn) {\n // 当前列未排序\n sortOrder = order;\n sortColumn = column;\n }\n else if (sortOrder === order) {\n // 切换为未排序状态\n sortOrder = '';\n sortColumn = null;\n }\n else {\n // 切换为排序状态\n sortOrder = order;\n }\n const newState = {\n sortOrder,\n sortColumn,\n };\n // Controlled\n if (this.getSortOrderColumns().length === 0) {\n this.setState(newState);\n }\n const { onChange } = this.props;\n if (onChange) {\n onChange(...this.prepareParamsArguments({\n ...this.state,\n ...newState,\n }));\n }\n }\n setNewFilterState(newState) {\n const { pagination: propsPagination, onChange } = this.props;\n const { pagination: statePagination } = this.state;\n const pagination = { ...statePagination };\n if (propsPagination) {\n // Reset current prop\n pagination.current = 1;\n pagination.onChange(pagination.current);\n }\n // Controlled current prop will not respond user interaction\n if (propsPagination && typeof propsPagination === 'object' && 'current' in propsPagination) {\n newState.pagination = {\n ...pagination,\n current: statePagination.current,\n };\n }\n this.setState(newState, () => {\n this.store.setState({\n selectionDirty: false,\n });\n if (onChange) {\n onChange(...this.prepareParamsArguments({\n ...this.state,\n selectionDirty: false,\n pagination,\n }));\n }\n });\n }\n renderRowSelection(locale) {\n const { rowSelection } = this.props;\n const prefixCls = this.getPrefixCls();\n const columns = this.columns.concat();\n if (rowSelection) {\n const data = this.getFlatCurrentPageData().filter((item, index) => {\n if (rowSelection.getCheckboxProps) {\n return !this.getCheckboxPropsByItem(item, index).disabled;\n }\n return true;\n });\n const selectionColumnClass = classNames(`${prefixCls}-selection-column`, {\n [`${prefixCls}-selection-column-custom`]: rowSelection.selections,\n });\n const selectionColumn = {\n key: 'selection-column',\n render: this.renderSelectionBox(rowSelection.type),\n className: selectionColumnClass,\n fixed: rowSelection.fixed,\n width: rowSelection.columnWidth,\n };\n if (rowSelection.type !== 'radio') {\n const checkboxAllDisabled = data.every((item, index) => this.getCheckboxPropsByItem(item, index).disabled);\n selectionColumn.title = (React.createElement(SelectionCheckboxAll, { store: this.store, locale: locale, data: data, getCheckboxPropsByItem: this.getCheckboxPropsByItem, getRecordKey: this.getRecordKey, disabled: checkboxAllDisabled, prefixCls: prefixCls, onSelect: this.handleSelectRow, selections: rowSelection.selections, hideDefaultSelections: rowSelection.hideDefaultSelections, getPopupContainer: this.getPopupContainer }));\n }\n if ('fixed' in rowSelection) {\n selectionColumn.fixed = rowSelection.fixed;\n }\n else if (columns.some(column => column.fixed === 'left' || column.fixed === true)) {\n selectionColumn.fixed = 'left';\n }\n if (columns[0] && columns[0].key === 'selection-column') {\n columns[0] = selectionColumn;\n }\n else {\n columns.unshift(selectionColumn);\n }\n }\n return columns;\n }\n getColumnKey(column, index) {\n return getColumnKey(column, index);\n }\n getMaxCurrent(total) {\n const { pagination: { current, pageSize }, } = this.state;\n if ((current - 1) * pageSize >= total) {\n return Math.floor((total - 1) / pageSize) + 1;\n }\n return current;\n }\n isSortColumn(column) {\n const { sortColumn } = this.state;\n if (!column || !sortColumn) {\n return false;\n }\n return this.getColumnKey(sortColumn) === this.getColumnKey(column);\n }\n renderColumnsDropdown(columns, locale) {\n const { dropdownPrefixCls: customizeDropdownPrefixCls, filterBar } = this.props;\n const prefixCls = this.getPrefixCls();\n const dropdownPrefixCls = getPrefixCls('dropdown', customizeDropdownPrefixCls);\n const { sortOrder, filters } = this.state;\n return treeMap(columns, (originColumn, i) => {\n const column = { ...originColumn };\n const key = this.getColumnKey(column, i);\n let filterDropdown;\n let sortButton;\n if ((!filterBar && (column.filters && column.filters.length > 0)) || column.filterDropdown) {\n const colFilters = filters[key] || [];\n filterDropdown = (React.createElement(FilterDropdown, { locale: locale, column: column, selectedKeys: colFilters, confirmFilter: this.handleFilter, prefixCls: `${prefixCls}-filter`, dropdownPrefixCls: dropdownPrefixCls, getPopupContainer: this.getPopupContainer }));\n }\n if (column.sorter) {\n const isSortColumn = this.isSortColumn(column);\n const isAscend = isSortColumn && sortOrder === 'ascend';\n // const isDescend = isSortColumn && sortOrder === 'descend';\n column.className = classNames(column.className, {\n [`${prefixCls}-sort-${sortOrder}`]: isSortColumn,\n });\n const { onHeaderCell } = column;\n column.onHeaderCell = col => {\n const customProps = (onHeaderCell && onHeaderCell(col)) || {};\n const { onClick } = customProps;\n return {\n ...customProps,\n onClick: (e) => {\n if (!e.isDefaultPrevented()) {\n if (typeof onClick === 'function') {\n onClick(e);\n }\n if (!e.isDefaultPrevented()) {\n this.setSortOrder(isAscend ? 'descend' : 'ascend', column);\n }\n }\n },\n };\n };\n sortButton = React.createElement(Icon, { type: \"arrow_upward\", className: `${prefixCls}-sort-icon` });\n }\n column.title = (React.createElement(\"span\", { key: key },\n column.title,\n sortButton,\n filterDropdown));\n if (sortButton || filterDropdown) {\n column.className = classNames(`${prefixCls}-column-has-filters`, column.className);\n }\n return column;\n });\n }\n renderPagination(paginationPosition) {\n // 强制不需要分页\n if (!this.hasPagination()) {\n return null;\n }\n const { pagination } = this.state;\n const { size } = this.props;\n const prefixCls = this.getPrefixCls();\n const position = pagination.position || 'bottom';\n const total = pagination.total || this.getLocalData().length;\n const paginationProps = getConfig('pagination');\n return total > 0 && (position === paginationPosition || position === 'both') ? (React.createElement(Pagination, Object.assign({}, paginationProps, { key: `pagination-${paginationPosition}` }, pagination, { className: classNames(pagination.className, `${prefixCls}-pagination`), onChange: this.handlePageChange, total: total, size: pagination.size || size, current: this.getMaxCurrent(total), onShowSizeChange: this.handleShowSizeChange }))) : null;\n }\n // Get pagination, filters, sorter\n prepareParamsArguments(state) {\n const pagination = { ...state.pagination };\n // remove useless handle function in Table.onChange\n delete pagination.onChange;\n delete pagination.onShowSizeChange;\n delete pagination.showTotal;\n delete pagination.sizeChangerOptionText;\n const filters = state.filters;\n const barFilters = state.barFilters;\n const sorter = {};\n if (state.sortColumn && state.sortOrder) {\n sorter.column = state.sortColumn;\n sorter.order = state.sortOrder;\n sorter.field = state.sortColumn.dataIndex;\n sorter.columnKey = this.getColumnKey(state.sortColumn);\n }\n return [pagination, filters, sorter, barFilters];\n }\n findColumn(myKey) {\n let column;\n treeMap(this.columns, c => {\n if (this.getColumnKey(c) === myKey) {\n column = c;\n }\n });\n return column;\n }\n getCurrentPageData() {\n let data = this.getLocalData();\n let current;\n let pageSize;\n const { state } = this;\n // 如果没有分页的话,默认全部展示\n if (!this.hasPagination()) {\n pageSize = Number.MAX_VALUE;\n current = 1;\n }\n else {\n pageSize = state.pagination.pageSize;\n current = this.getMaxCurrent(state.pagination.total || data.length);\n }\n // 分页\n // ---\n // 当数据量少于等于每页数量时,直接设置数据\n // 否则进行读取分页数据\n if (data.length > pageSize || pageSize === Number.MAX_VALUE) {\n data = data.filter((_, i) => {\n return i >= (current - 1) * pageSize && i < current * pageSize;\n });\n }\n return data;\n }\n getFlatData() {\n const { childrenColumnName } = this.props;\n return flatArray(this.getLocalData(), childrenColumnName);\n }\n getFlatCurrentPageData() {\n const { childrenColumnName } = this.props;\n return flatArray(this.getCurrentPageData(), childrenColumnName);\n }\n recursiveSort(data, sorterFn) {\n const { childrenColumnName = 'children' } = this.props;\n return data.sort(sorterFn).map((item) => item[childrenColumnName]\n ? {\n ...item,\n [childrenColumnName]: this.recursiveSort(item[childrenColumnName], sorterFn),\n }\n : item);\n }\n getLocalData() {\n const { dataSource, noFilter } = this.props;\n if (dataSource) {\n const state = this.state;\n const { filters, barFilters } = state;\n let data = dataSource;\n // 优化本地排序\n data = data.slice(0);\n const sorterFn = this.getSorterFn();\n if (sorterFn) {\n data = this.recursiveSort(data, sorterFn);\n }\n let filteredData = data;\n // 筛选\n if (filters) {\n Object.keys(filters).forEach(columnKey => {\n const col = this.findColumn(columnKey);\n if (!col) {\n return;\n }\n const values = filters[columnKey] || [];\n if (values.length === 0) {\n return;\n }\n const { onFilter, filters: columnFilters } = col;\n filteredData = onFilter\n ? filteredData.filter(record => {\n return values.some(v => onFilter(v, record, columnFilters));\n })\n : filteredData;\n });\n }\n if (barFilters.length) {\n let isOr = false;\n barFilters.forEach(filter => {\n if (filter === VALUE_OR) {\n isOr = true;\n }\n else {\n filteredData = data.filter(record => isOr\n ? filteredData.indexOf(record) !== -1 || this.doBarFilter(filter, record)\n : filteredData.indexOf(record) !== -1 && this.doBarFilter(filter, record));\n isOr = false;\n }\n });\n }\n if (noFilter) {\n return data;\n }\n return filteredData;\n }\n return [];\n }\n doBarFilter(filter, record) {\n if (typeof filter === 'string') {\n return !!findColumnByFilterValue(record, getLeafColumns(this.columns), filter);\n }\n const columnKey = Object.keys(filter)[0];\n const col = this.findColumn(columnKey);\n if (!col) {\n return true;\n }\n const { onFilter, filters } = col;\n return !onFilter || onFilter(filter[columnKey], record, filters);\n }\n createComponents(components = {}, prevComponents) {\n const bodyRow = components && components.body && components.body.row;\n const preBodyRow = prevComponents && prevComponents.body && prevComponents.body.row;\n if (!this.components || bodyRow !== preBodyRow) {\n this.components = { ...components };\n this.components.body = {\n ...components.body,\n row: createBodyRow(bodyRow),\n };\n }\n }\n render() {\n const { props } = this;\n const { style, className } = props;\n const prefixCls = this.getPrefixCls();\n const data = this.getCurrentPageData();\n let loading = props.loading;\n if (typeof loading === 'boolean') {\n loading = {\n spinning: loading,\n };\n }\n const table = (React.createElement(LocaleReceiver, { componentName: \"Table\", defaultLocale: defaultLocale.Table }, locale => this.renderTable(locale, loading)));\n // if there is no pagination or no data,\n // the height of spin should decrease by half of pagination\n const paginationPatchClass = this.hasPagination() && data && data.length !== 0\n ? `${prefixCls}-with-pagination`\n : `${prefixCls}-without-pagination`;\n return (React.createElement(\"div\", { className: classNames(`${prefixCls}-wrapper`, className), style: style, ref: this.saveRef },\n React.createElement(Spin, Object.assign({}, loading, { className: loading.spinning ? `${paginationPatchClass} ${prefixCls}-spin-holder` : '' }),\n this.renderPagination('top'),\n table,\n this.renderPagination('bottom'))));\n }\n}\nTable.displayName = 'Table';\nTable.Column = Column;\nTable.ColumnGroup = ColumnGroup;\nTable.propTypes = {\n dataSource: PropTypes.array,\n empty: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n onColumnFilterChange: PropTypes.func,\n columns: PropTypes.array,\n prefixCls: PropTypes.string,\n useFixedHeader: PropTypes.bool,\n rowSelection: PropTypes.object,\n className: PropTypes.string,\n size: PropTypes.oneOf([Size.large, Size.default, Size.small]),\n loading: PropTypes.oneOfType([PropTypes.bool, PropTypes.object]),\n bordered: PropTypes.bool,\n onChange: PropTypes.func,\n locale: PropTypes.object,\n dropdownPrefixCls: PropTypes.string,\n filterBar: PropTypes.bool,\n filters: PropTypes.array,\n filterBarPlaceholder: PropTypes.string,\n onFilterSelectChange: PropTypes.func,\n noFilter: PropTypes.bool,\n autoScroll: PropTypes.bool,\n indentSize: PropTypes.number,\n rowKey: PropTypes.oneOfType([PropTypes.string, PropTypes.func]),\n showHeader: PropTypes.bool,\n};\nTable.defaultProps = {\n dataSource: [],\n empty: null,\n useFixedHeader: false,\n rowSelection: null,\n className: '',\n size: Size.default,\n loading: false,\n bordered: false,\n indentSize: 20,\n locale: {},\n rowKey: 'key',\n showHeader: true,\n filterBar: true,\n noFilter: false,\n autoScroll: true,\n};\n"],"file":"Table.js"}
\No newline at end of file