{"version":3,"file":"chunk-klb-pay40.js","sources":["../node_modules/rc-table/es/constant.js","../node_modules/rc-table/es/context/TableContext.js","../node_modules/rc-table/es/context/PerfContext.js","../node_modules/rc-table/es/utils/valueUtil.js","../node_modules/rc-table/es/Cell/useCellRender.js","../node_modules/rc-table/es/Cell/useHoverState.js","../node_modules/rc-table/es/Cell/index.js","../node_modules/rc-table/es/utils/fixUtil.js","../node_modules/rc-table/es/Footer/SummaryContext.js","../node_modules/rc-table/es/Footer/Cell.js","../node_modules/rc-table/es/Footer/Row.js","../node_modules/rc-table/es/Footer/Summary.js","../node_modules/rc-table/es/Footer/index.js","../node_modules/rc-table/es/sugar/Column.js","../node_modules/rc-table/es/sugar/ColumnGroup.js","../node_modules/rc-table/es/hooks/useFlattenRecords.js","../node_modules/rc-table/es/hooks/useRowInfo.js","../node_modules/rc-table/es/Body/ExpandedRow.js","../node_modules/rc-table/es/Body/BodyRow.js","../node_modules/rc-table/es/Body/MeasureCell.js","../node_modules/rc-table/es/Body/MeasureRow.js","../node_modules/rc-table/es/Body/index.js","../node_modules/rc-table/es/utils/legacyUtil.js","../node_modules/rc-table/es/ColGroup.js","../node_modules/rc-table/es/FixedHolder/index.js","../node_modules/rc-table/es/Header/HeaderRow.js","../node_modules/rc-table/es/Header/Header.js","../node_modules/rc-table/es/hooks/useColumns/useWidthColumns.js","../node_modules/rc-table/es/hooks/useColumns/index.js","../node_modules/rc-table/es/utils/expandUtil.js","../node_modules/rc-table/es/hooks/useExpand.js","../node_modules/rc-table/es/hooks/useFixedInfo.js","../node_modules/rc-table/es/hooks/useFrame.js","../node_modules/rc-table/es/hooks/useHover.js","../node_modules/rc-table/es/hooks/useSticky.js","../node_modules/rc-table/es/hooks/useStickyOffsets.js","../node_modules/rc-table/es/Panel/index.js","../node_modules/rc-table/es/stickyScrollBar.js","../node_modules/rc-table/es/Table.js","../node_modules/rc-table/es/VirtualTable/context.js","../node_modules/rc-table/es/VirtualTable/VirtualCell.js","../node_modules/rc-table/es/VirtualTable/BodyLine.js","../node_modules/rc-table/es/VirtualTable/BodyGrid.js","../node_modules/rc-table/es/VirtualTable/index.js"],"sourcesContent":["export var EXPAND_COLUMN = {};\nexport var INTERNAL_HOOKS = 'rc-table-internal-hook';","import { createContext, createImmutable } from '@rc-component/context';\nvar _createImmutable = createImmutable(),\n makeImmutable = _createImmutable.makeImmutable,\n responseImmutable = _createImmutable.responseImmutable,\n useImmutableMark = _createImmutable.useImmutableMark;\nexport { makeImmutable, responseImmutable, useImmutableMark };\nvar TableContext = createContext();\nexport default TableContext;","import * as React from 'react';\n// TODO: Remove when use `responsiveImmutable`\nvar PerfContext = /*#__PURE__*/React.createContext({\n renderWithProps: false\n});\nexport default PerfContext;","var INTERNAL_KEY_PREFIX = 'RC_TABLE_KEY';\nfunction toArray(arr) {\n if (arr === undefined || arr === null) {\n return [];\n }\n return Array.isArray(arr) ? arr : [arr];\n}\nexport function getColumnsKey(columns) {\n var columnKeys = [];\n var keys = {};\n columns.forEach(function (column) {\n var _ref = column || {},\n key = _ref.key,\n dataIndex = _ref.dataIndex;\n var mergedKey = key || toArray(dataIndex).join('-') || INTERNAL_KEY_PREFIX;\n while (keys[mergedKey]) {\n mergedKey = \"\".concat(mergedKey, \"_next\");\n }\n keys[mergedKey] = true;\n columnKeys.push(mergedKey);\n });\n return columnKeys;\n}\nexport function validateValue(val) {\n return val !== null && val !== undefined;\n}\nexport function validNumberValue(value) {\n return typeof value === 'number' && !Number.isNaN(value);\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport useMemo from \"rc-util/es/hooks/useMemo\";\nimport isEqual from \"rc-util/es/isEqual\";\nimport getValue from \"rc-util/es/utils/get\";\nimport warning from \"rc-util/es/warning\";\nimport * as React from 'react';\nimport PerfContext from \"../context/PerfContext\";\nimport { validateValue } from \"../utils/valueUtil\";\nimport { useImmutableMark } from \"../context/TableContext\";\nfunction isRenderCell(data) {\n return data && _typeof(data) === 'object' && !Array.isArray(data) && ! /*#__PURE__*/React.isValidElement(data);\n}\nexport default function useCellRender(record, dataIndex, renderIndex, children, render, shouldCellUpdate) {\n // TODO: Remove this after next major version\n var perfRecord = React.useContext(PerfContext);\n var mark = useImmutableMark();\n\n // ======================== Render ========================\n var retData = useMemo(function () {\n if (validateValue(children)) {\n return [children];\n }\n var path = dataIndex === null || dataIndex === undefined || dataIndex === '' ? [] : Array.isArray(dataIndex) ? dataIndex : [dataIndex];\n var value = getValue(record, path);\n\n // Customize render node\n var returnChildNode = value;\n var returnCellProps = undefined;\n if (render) {\n var renderData = render(value, record, renderIndex);\n if (isRenderCell(renderData)) {\n if (process.env.NODE_ENV !== 'production') {\n warning(false, '`columns.render` return cell props is deprecated with perf issue, please use `onCell` instead.');\n }\n returnChildNode = renderData.children;\n returnCellProps = renderData.props;\n perfRecord.renderWithProps = true;\n } else {\n returnChildNode = renderData;\n }\n }\n return [returnChildNode, returnCellProps];\n }, [\n // Force update deps\n mark,\n // Normal deps\n record, children, dataIndex, render, renderIndex], function (prev, next) {\n if (shouldCellUpdate) {\n var _prev = _slicedToArray(prev, 2),\n prevRecord = _prev[1];\n var _next = _slicedToArray(next, 2),\n nextRecord = _next[1];\n return shouldCellUpdate(nextRecord, prevRecord);\n }\n\n // Legacy mode should always update\n if (perfRecord.renderWithProps) {\n return true;\n }\n return !isEqual(prev, next, true);\n });\n return retData;\n}","import { useContext } from '@rc-component/context';\nimport TableContext from \"../context/TableContext\";\n/** Check if cell is in hover range */\nfunction inHoverRange(cellStartRow, cellRowSpan, startRow, endRow) {\n var cellEndRow = cellStartRow + cellRowSpan - 1;\n return cellStartRow <= endRow && cellEndRow >= startRow;\n}\nexport default function useHoverState(rowIndex, rowSpan) {\n return useContext(TableContext, function (ctx) {\n var hovering = inHoverRange(rowIndex, rowSpan || 1, ctx.hoverStartRow, ctx.hoverEndRow);\n return [hovering, ctx.onHover];\n });\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport { useContext } from '@rc-component/context';\nimport classNames from 'classnames';\nimport * as React from 'react';\nimport TableContext from \"../context/TableContext\";\nimport devRenderTimes from \"../hooks/useRenderTimes\";\nimport useCellRender from \"./useCellRender\";\nimport useHoverState from \"./useHoverState\";\nimport { useEvent } from 'rc-util';\nvar getTitleFromCellRenderChildren = function getTitleFromCellRenderChildren(_ref) {\n var ellipsis = _ref.ellipsis,\n rowType = _ref.rowType,\n children = _ref.children;\n var title;\n var ellipsisConfig = ellipsis === true ? {\n showTitle: true\n } : ellipsis;\n if (ellipsisConfig && (ellipsisConfig.showTitle || rowType === 'header')) {\n if (typeof children === 'string' || typeof children === 'number') {\n title = children.toString();\n } else if ( /*#__PURE__*/React.isValidElement(children) && typeof children.props.children === 'string') {\n title = children.props.children;\n }\n }\n return title;\n};\nfunction Cell(props) {\n var _ref2, _ref3, _legacyCellProps$colS, _ref4, _ref5, _legacyCellProps$rowS, _additionalProps$titl, _classNames;\n if (process.env.NODE_ENV !== 'production') {\n devRenderTimes(props);\n }\n var Component = props.component,\n children = props.children,\n ellipsis = props.ellipsis,\n scope = props.scope,\n prefixCls = props.prefixCls,\n className = props.className,\n align = props.align,\n record = props.record,\n render = props.render,\n dataIndex = props.dataIndex,\n renderIndex = props.renderIndex,\n shouldCellUpdate = props.shouldCellUpdate,\n index = props.index,\n rowType = props.rowType,\n colSpan = props.colSpan,\n rowSpan = props.rowSpan,\n fixLeft = props.fixLeft,\n fixRight = props.fixRight,\n firstFixLeft = props.firstFixLeft,\n lastFixLeft = props.lastFixLeft,\n firstFixRight = props.firstFixRight,\n lastFixRight = props.lastFixRight,\n appendNode = props.appendNode,\n _props$additionalProp = props.additionalProps,\n additionalProps = _props$additionalProp === void 0 ? {} : _props$additionalProp,\n isSticky = props.isSticky;\n var cellPrefixCls = \"\".concat(prefixCls, \"-cell\");\n var _useContext = useContext(TableContext, ['supportSticky', 'allColumnsFixedLeft', 'rowHoverable']),\n supportSticky = _useContext.supportSticky,\n allColumnsFixedLeft = _useContext.allColumnsFixedLeft,\n rowHoverable = _useContext.rowHoverable;\n\n // ====================== Value =======================\n var _useCellRender = useCellRender(record, dataIndex, renderIndex, children, render, shouldCellUpdate),\n _useCellRender2 = _slicedToArray(_useCellRender, 2),\n childNode = _useCellRender2[0],\n legacyCellProps = _useCellRender2[1];\n\n // ====================== Fixed =======================\n var fixedStyle = {};\n var isFixLeft = typeof fixLeft === 'number' && supportSticky;\n var isFixRight = typeof fixRight === 'number' && supportSticky;\n if (isFixLeft) {\n fixedStyle.position = 'sticky';\n fixedStyle.left = fixLeft;\n }\n if (isFixRight) {\n fixedStyle.position = 'sticky';\n fixedStyle.right = fixRight;\n }\n\n // ================ RowSpan & ColSpan =================\n var mergedColSpan = (_ref2 = (_ref3 = (_legacyCellProps$colS = legacyCellProps === null || legacyCellProps === void 0 ? void 0 : legacyCellProps.colSpan) !== null && _legacyCellProps$colS !== void 0 ? _legacyCellProps$colS : additionalProps.colSpan) !== null && _ref3 !== void 0 ? _ref3 : colSpan) !== null && _ref2 !== void 0 ? _ref2 : 1;\n var mergedRowSpan = (_ref4 = (_ref5 = (_legacyCellProps$rowS = legacyCellProps === null || legacyCellProps === void 0 ? void 0 : legacyCellProps.rowSpan) !== null && _legacyCellProps$rowS !== void 0 ? _legacyCellProps$rowS : additionalProps.rowSpan) !== null && _ref5 !== void 0 ? _ref5 : rowSpan) !== null && _ref4 !== void 0 ? _ref4 : 1;\n\n // ====================== Hover =======================\n var _useHoverState = useHoverState(index, mergedRowSpan),\n _useHoverState2 = _slicedToArray(_useHoverState, 2),\n hovering = _useHoverState2[0],\n onHover = _useHoverState2[1];\n var onMouseEnter = useEvent(function (event) {\n var _additionalProps$onMo;\n if (record) {\n onHover(index, index + mergedRowSpan - 1);\n }\n additionalProps === null || additionalProps === void 0 || (_additionalProps$onMo = additionalProps.onMouseEnter) === null || _additionalProps$onMo === void 0 || _additionalProps$onMo.call(additionalProps, event);\n });\n var onMouseLeave = useEvent(function (event) {\n var _additionalProps$onMo2;\n if (record) {\n onHover(-1, -1);\n }\n additionalProps === null || additionalProps === void 0 || (_additionalProps$onMo2 = additionalProps.onMouseLeave) === null || _additionalProps$onMo2 === void 0 || _additionalProps$onMo2.call(additionalProps, event);\n });\n\n // ====================== Render ======================\n if (mergedColSpan === 0 || mergedRowSpan === 0) {\n return null;\n }\n\n // >>>>> Title\n var title = (_additionalProps$titl = additionalProps.title) !== null && _additionalProps$titl !== void 0 ? _additionalProps$titl : getTitleFromCellRenderChildren({\n rowType: rowType,\n ellipsis: ellipsis,\n children: childNode\n });\n\n // >>>>> ClassName\n var mergedClassName = classNames(cellPrefixCls, className, (_classNames = {}, _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_classNames, \"\".concat(cellPrefixCls, \"-fix-left\"), isFixLeft && supportSticky), \"\".concat(cellPrefixCls, \"-fix-left-first\"), firstFixLeft && supportSticky), \"\".concat(cellPrefixCls, \"-fix-left-last\"), lastFixLeft && supportSticky), \"\".concat(cellPrefixCls, \"-fix-left-all\"), lastFixLeft && allColumnsFixedLeft && supportSticky), \"\".concat(cellPrefixCls, \"-fix-right\"), isFixRight && supportSticky), \"\".concat(cellPrefixCls, \"-fix-right-first\"), firstFixRight && supportSticky), \"\".concat(cellPrefixCls, \"-fix-right-last\"), lastFixRight && supportSticky), \"\".concat(cellPrefixCls, \"-ellipsis\"), ellipsis), \"\".concat(cellPrefixCls, \"-with-append\"), appendNode), \"\".concat(cellPrefixCls, \"-fix-sticky\"), (isFixLeft || isFixRight) && isSticky && supportSticky), _defineProperty(_classNames, \"\".concat(cellPrefixCls, \"-row-hover\"), !legacyCellProps && hovering)), additionalProps.className, legacyCellProps === null || legacyCellProps === void 0 ? void 0 : legacyCellProps.className);\n\n // >>>>> Style\n var alignStyle = {};\n if (align) {\n alignStyle.textAlign = align;\n }\n var mergedStyle = _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, fixedStyle), additionalProps.style), alignStyle), legacyCellProps === null || legacyCellProps === void 0 ? void 0 : legacyCellProps.style);\n\n // >>>>> Children Node\n var mergedChildNode = childNode;\n\n // Not crash if final `childNode` is not validate ReactNode\n if (_typeof(mergedChildNode) === 'object' && !Array.isArray(mergedChildNode) && ! /*#__PURE__*/React.isValidElement(mergedChildNode)) {\n mergedChildNode = null;\n }\n if (ellipsis && (lastFixLeft || firstFixRight)) {\n mergedChildNode = /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(cellPrefixCls, \"-content\")\n }, mergedChildNode);\n }\n return /*#__PURE__*/React.createElement(Component, _extends({}, legacyCellProps, additionalProps, {\n className: mergedClassName,\n style: mergedStyle\n // A11y\n ,\n title: title,\n scope: scope\n // Hover\n ,\n onMouseEnter: rowHoverable ? onMouseEnter : undefined,\n onMouseLeave: rowHoverable ? onMouseLeave : undefined\n //Span\n ,\n colSpan: mergedColSpan !== 1 ? mergedColSpan : null,\n rowSpan: mergedRowSpan !== 1 ? mergedRowSpan : null\n }), appendNode, mergedChildNode);\n}\nexport default /*#__PURE__*/React.memo(Cell);","export function getCellFixedInfo(colStart, colEnd, columns, stickyOffsets, direction) {\n var startColumn = columns[colStart] || {};\n var endColumn = columns[colEnd] || {};\n var fixLeft;\n var fixRight;\n if (startColumn.fixed === 'left') {\n fixLeft = stickyOffsets.left[direction === 'rtl' ? colEnd : colStart];\n } else if (endColumn.fixed === 'right') {\n fixRight = stickyOffsets.right[direction === 'rtl' ? colStart : colEnd];\n }\n var lastFixLeft = false;\n var firstFixRight = false;\n var lastFixRight = false;\n var firstFixLeft = false;\n var nextColumn = columns[colEnd + 1];\n var prevColumn = columns[colStart - 1];\n\n // need show shadow only when canLastFix is true\n var canLastFix = nextColumn && !nextColumn.fixed || prevColumn && !prevColumn.fixed || columns.every(function (col) {\n return col.fixed === 'left';\n });\n if (direction === 'rtl') {\n if (fixLeft !== undefined) {\n var prevFixLeft = prevColumn && prevColumn.fixed === 'left';\n firstFixLeft = !prevFixLeft && canLastFix;\n } else if (fixRight !== undefined) {\n var nextFixRight = nextColumn && nextColumn.fixed === 'right';\n lastFixRight = !nextFixRight && canLastFix;\n }\n } else if (fixLeft !== undefined) {\n var nextFixLeft = nextColumn && nextColumn.fixed === 'left';\n lastFixLeft = !nextFixLeft && canLastFix;\n } else if (fixRight !== undefined) {\n var prevFixRight = prevColumn && prevColumn.fixed === 'right';\n firstFixRight = !prevFixRight && canLastFix;\n }\n return {\n fixLeft: fixLeft,\n fixRight: fixRight,\n lastFixLeft: lastFixLeft,\n firstFixRight: firstFixRight,\n lastFixRight: lastFixRight,\n firstFixLeft: firstFixLeft,\n isSticky: stickyOffsets.isSticky\n };\n}","import * as React from 'react';\nvar SummaryContext = /*#__PURE__*/React.createContext({});\nexport default SummaryContext;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport Cell from \"../Cell\";\nimport TableContext from \"../context/TableContext\";\nimport { useContext } from '@rc-component/context';\nimport { getCellFixedInfo } from \"../utils/fixUtil\";\nimport SummaryContext from \"./SummaryContext\";\nexport default function SummaryCell(_ref) {\n var className = _ref.className,\n index = _ref.index,\n children = _ref.children,\n _ref$colSpan = _ref.colSpan,\n colSpan = _ref$colSpan === void 0 ? 1 : _ref$colSpan,\n rowSpan = _ref.rowSpan,\n align = _ref.align;\n var _useContext = useContext(TableContext, ['prefixCls', 'direction']),\n prefixCls = _useContext.prefixCls,\n direction = _useContext.direction;\n var _React$useContext = React.useContext(SummaryContext),\n scrollColumnIndex = _React$useContext.scrollColumnIndex,\n stickyOffsets = _React$useContext.stickyOffsets,\n flattenColumns = _React$useContext.flattenColumns;\n var lastIndex = index + colSpan - 1;\n var mergedColSpan = lastIndex + 1 === scrollColumnIndex ? colSpan + 1 : colSpan;\n var fixedInfo = getCellFixedInfo(index, index + mergedColSpan - 1, flattenColumns, stickyOffsets, direction);\n return /*#__PURE__*/React.createElement(Cell, _extends({\n className: className,\n index: index,\n component: \"td\",\n prefixCls: prefixCls,\n record: null,\n dataIndex: null,\n align: align,\n colSpan: mergedColSpan,\n rowSpan: rowSpan,\n render: function render() {\n return children;\n }\n }, fixedInfo));\n}","import _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"children\"];\nimport * as React from 'react';\nexport default function FooterRow(_ref) {\n var children = _ref.children,\n props = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/React.createElement(\"tr\", props, children);\n}","import Cell from \"./Cell\";\nimport Row from \"./Row\";\n/**\n * Syntactic sugar. Do not support HOC.\n */\nfunction Summary(_ref) {\n var children = _ref.children;\n return children;\n}\nSummary.Row = Row;\nSummary.Cell = Cell;\nexport default Summary;","import { useContext } from '@rc-component/context';\nimport * as React from 'react';\nimport TableContext, { responseImmutable } from \"../context/TableContext\";\nimport devRenderTimes from \"../hooks/useRenderTimes\";\nimport Summary from \"./Summary\";\nimport SummaryContext from \"./SummaryContext\";\nfunction Footer(props) {\n if (process.env.NODE_ENV !== 'production') {\n devRenderTimes(props);\n }\n var children = props.children,\n stickyOffsets = props.stickyOffsets,\n flattenColumns = props.flattenColumns;\n var prefixCls = useContext(TableContext, 'prefixCls');\n var lastColumnIndex = flattenColumns.length - 1;\n var scrollColumn = flattenColumns[lastColumnIndex];\n var summaryContext = React.useMemo(function () {\n return {\n stickyOffsets: stickyOffsets,\n flattenColumns: flattenColumns,\n scrollColumnIndex: scrollColumn !== null && scrollColumn !== void 0 && scrollColumn.scrollbar ? lastColumnIndex : null\n };\n }, [scrollColumn, flattenColumns, lastColumnIndex, stickyOffsets]);\n return /*#__PURE__*/React.createElement(SummaryContext.Provider, {\n value: summaryContext\n }, /*#__PURE__*/React.createElement(\"tfoot\", {\n className: \"\".concat(prefixCls, \"-summary\")\n }, children));\n}\nexport default responseImmutable(Footer);\nexport var FooterComponents = Summary;","/* istanbul ignore next */\n/**\n * This is a syntactic sugar for `columns` prop.\n * So HOC will not work on this.\n */\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nfunction Column(_) {\n return null;\n}\nexport default Column;","/* istanbul ignore next */\n/**\n * This is a syntactic sugar for `columns` prop.\n * So HOC will not work on this.\n */\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nfunction ColumnGroup(_) {\n return null;\n}\nexport default ColumnGroup;","import * as React from 'react';\n// recursion (flat tree structure)\nfunction fillRecords(list, record, indent, childrenColumnName, expandedKeys, getRowKey, index) {\n list.push({\n record: record,\n indent: indent,\n index: index\n });\n var key = getRowKey(record);\n var expanded = expandedKeys === null || expandedKeys === void 0 ? void 0 : expandedKeys.has(key);\n if (record && Array.isArray(record[childrenColumnName]) && expanded) {\n // expanded state, flat record\n for (var i = 0; i < record[childrenColumnName].length; i += 1) {\n fillRecords(list, record[childrenColumnName][i], indent + 1, childrenColumnName, expandedKeys, getRowKey, i);\n }\n }\n}\n/**\n * flat tree data on expanded state\n *\n * @export\n * @template T\n * @param {*} data : table data\n * @param {string} childrenColumnName : 指定树形结构的列名\n * @param {Set} expandedKeys : 展开的行对应的keys\n * @param {GetRowKey} getRowKey : 获取当前rowKey的方法\n * @returns flattened data\n */\nexport default function useFlattenRecords(data, childrenColumnName, expandedKeys, getRowKey) {\n var arr = React.useMemo(function () {\n if (expandedKeys !== null && expandedKeys !== void 0 && expandedKeys.size) {\n var list = [];\n\n // collect flattened record\n for (var i = 0; i < (data === null || data === void 0 ? void 0 : data.length); i += 1) {\n var record = data[i];\n\n // using array.push or spread operator may cause \"Maximum call stack size exceeded\" exception if array size is big enough.\n fillRecords(list, record, 0, childrenColumnName, expandedKeys, getRowKey, i);\n }\n return list;\n }\n return data === null || data === void 0 ? void 0 : data.map(function (item, index) {\n return {\n record: item,\n indent: 0,\n index: index\n };\n });\n }, [data, childrenColumnName, expandedKeys, getRowKey]);\n return arr;\n}","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport { useContext } from '@rc-component/context';\nimport TableContext from \"../context/TableContext\";\nimport { getColumnsKey } from \"../utils/valueUtil\";\nimport { useEvent } from 'rc-util';\nimport classNames from 'classnames';\nexport default function useRowInfo(record, rowKey, recordIndex, indent) {\n var context = useContext(TableContext, ['prefixCls', 'fixedInfoList', 'flattenColumns', 'expandableType', 'expandRowByClick', 'onTriggerExpand', 'rowClassName', 'expandedRowClassName', 'indentSize', 'expandIcon', 'expandedRowRender', 'expandIconColumnIndex', 'expandedKeys', 'childrenColumnName', 'rowExpandable', 'onRow']);\n var flattenColumns = context.flattenColumns,\n expandableType = context.expandableType,\n expandedKeys = context.expandedKeys,\n childrenColumnName = context.childrenColumnName,\n onTriggerExpand = context.onTriggerExpand,\n rowExpandable = context.rowExpandable,\n onRow = context.onRow,\n expandRowByClick = context.expandRowByClick,\n rowClassName = context.rowClassName;\n\n // ======================= Expandable =======================\n // Only when row is not expandable and `children` exist in record\n var nestExpandable = expandableType === 'nest';\n var rowSupportExpand = expandableType === 'row' && (!rowExpandable || rowExpandable(record));\n var mergedExpandable = rowSupportExpand || nestExpandable;\n var expanded = expandedKeys && expandedKeys.has(rowKey);\n var hasNestChildren = childrenColumnName && record && record[childrenColumnName];\n var onInternalTriggerExpand = useEvent(onTriggerExpand);\n\n // ========================= onRow ==========================\n var rowProps = onRow === null || onRow === void 0 ? void 0 : onRow(record, recordIndex);\n var onRowClick = rowProps === null || rowProps === void 0 ? void 0 : rowProps.onClick;\n var onClick = function onClick(event) {\n if (expandRowByClick && mergedExpandable) {\n onTriggerExpand(record, event);\n }\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n onRowClick === null || onRowClick === void 0 || onRowClick.apply(void 0, [event].concat(args));\n };\n\n // ====================== RowClassName ======================\n var computeRowClassName;\n if (typeof rowClassName === 'string') {\n computeRowClassName = rowClassName;\n } else if (typeof rowClassName === 'function') {\n computeRowClassName = rowClassName(record, recordIndex, indent);\n }\n\n // ========================= Column =========================\n var columnsKey = getColumnsKey(flattenColumns);\n return _objectSpread(_objectSpread({}, context), {}, {\n columnsKey: columnsKey,\n nestExpandable: nestExpandable,\n expanded: expanded,\n hasNestChildren: hasNestChildren,\n record: record,\n onTriggerExpand: onInternalTriggerExpand,\n rowSupportExpand: rowSupportExpand,\n expandable: mergedExpandable,\n rowProps: _objectSpread(_objectSpread({}, rowProps), {}, {\n className: classNames(computeRowClassName, rowProps === null || rowProps === void 0 ? void 0 : rowProps.className),\n onClick: onClick\n })\n });\n}","import { useContext } from '@rc-component/context';\nimport * as React from 'react';\nimport Cell from \"../Cell\";\nimport TableContext from \"../context/TableContext\";\nimport devRenderTimes from \"../hooks/useRenderTimes\";\nfunction ExpandedRow(props) {\n if (process.env.NODE_ENV !== 'production') {\n devRenderTimes(props);\n }\n var prefixCls = props.prefixCls,\n children = props.children,\n Component = props.component,\n cellComponent = props.cellComponent,\n className = props.className,\n expanded = props.expanded,\n colSpan = props.colSpan,\n isEmpty = props.isEmpty;\n var _useContext = useContext(TableContext, ['scrollbarSize', 'fixHeader', 'fixColumn', 'componentWidth', 'horizonScroll']),\n scrollbarSize = _useContext.scrollbarSize,\n fixHeader = _useContext.fixHeader,\n fixColumn = _useContext.fixColumn,\n componentWidth = _useContext.componentWidth,\n horizonScroll = _useContext.horizonScroll;\n\n // Cache render node\n var contentNode = children;\n if (isEmpty ? horizonScroll && componentWidth : fixColumn) {\n contentNode = /*#__PURE__*/React.createElement(\"div\", {\n style: {\n width: componentWidth - (fixHeader && !isEmpty ? scrollbarSize : 0),\n position: 'sticky',\n left: 0,\n overflow: 'hidden'\n },\n className: \"\".concat(prefixCls, \"-expanded-row-fixed\")\n }, contentNode);\n }\n return /*#__PURE__*/React.createElement(Component, {\n className: className,\n style: {\n display: expanded ? null : 'none'\n }\n }, /*#__PURE__*/React.createElement(Cell, {\n component: cellComponent,\n prefixCls: prefixCls,\n colSpan: colSpan\n }, contentNode));\n}\nexport default ExpandedRow;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport classNames from 'classnames';\nimport * as React from 'react';\nimport Cell from \"../Cell\";\nimport { responseImmutable } from \"../context/TableContext\";\nimport devRenderTimes from \"../hooks/useRenderTimes\";\nimport useRowInfo from \"../hooks/useRowInfo\";\nimport ExpandedRow from \"./ExpandedRow\";\n// ==================================================================================\n// == getCellProps ==\n// ==================================================================================\nexport function getCellProps(rowInfo, column, colIndex, indent, index) {\n var record = rowInfo.record,\n prefixCls = rowInfo.prefixCls,\n columnsKey = rowInfo.columnsKey,\n fixedInfoList = rowInfo.fixedInfoList,\n expandIconColumnIndex = rowInfo.expandIconColumnIndex,\n nestExpandable = rowInfo.nestExpandable,\n indentSize = rowInfo.indentSize,\n expandIcon = rowInfo.expandIcon,\n expanded = rowInfo.expanded,\n hasNestChildren = rowInfo.hasNestChildren,\n onTriggerExpand = rowInfo.onTriggerExpand;\n var key = columnsKey[colIndex];\n var fixedInfo = fixedInfoList[colIndex];\n\n // ============= Used for nest expandable =============\n var appendCellNode;\n if (colIndex === (expandIconColumnIndex || 0) && nestExpandable) {\n appendCellNode = /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"span\", {\n style: {\n paddingLeft: \"\".concat(indentSize * indent, \"px\")\n },\n className: \"\".concat(prefixCls, \"-row-indent indent-level-\").concat(indent)\n }), expandIcon({\n prefixCls: prefixCls,\n expanded: expanded,\n expandable: hasNestChildren,\n record: record,\n onExpand: onTriggerExpand\n }));\n }\n var additionalCellProps;\n if (column.onCell) {\n additionalCellProps = column.onCell(record, index);\n }\n return {\n key: key,\n fixedInfo: fixedInfo,\n appendCellNode: appendCellNode,\n additionalCellProps: additionalCellProps || {}\n };\n}\n\n// ==================================================================================\n// == getCellProps ==\n// ==================================================================================\nfunction BodyRow(props) {\n if (process.env.NODE_ENV !== 'production') {\n devRenderTimes(props);\n }\n var className = props.className,\n style = props.style,\n record = props.record,\n index = props.index,\n renderIndex = props.renderIndex,\n rowKey = props.rowKey,\n _props$indent = props.indent,\n indent = _props$indent === void 0 ? 0 : _props$indent,\n RowComponent = props.rowComponent,\n cellComponent = props.cellComponent,\n scopeCellComponent = props.scopeCellComponent;\n var rowInfo = useRowInfo(record, rowKey, index, indent);\n var prefixCls = rowInfo.prefixCls,\n flattenColumns = rowInfo.flattenColumns,\n expandedRowClassName = rowInfo.expandedRowClassName,\n expandedRowRender = rowInfo.expandedRowRender,\n rowProps = rowInfo.rowProps,\n expanded = rowInfo.expanded,\n rowSupportExpand = rowInfo.rowSupportExpand;\n\n // Force render expand row if expanded before\n var expandedRef = React.useRef(false);\n expandedRef.current || (expandedRef.current = expanded);\n if (process.env.NODE_ENV !== 'production') {\n devRenderTimes(props);\n }\n\n // 若没有 expandedRowRender 参数, 将使用 baseRowNode 渲染 Children\n // 此时如果 level > 1 则说明是 expandedRow, 一样需要附加 computedExpandedRowClassName\n var computedExpandedRowClassName = expandedRowClassName && expandedRowClassName(record, index, indent);\n\n // ======================== Base tr row ========================\n var baseRowNode = /*#__PURE__*/React.createElement(RowComponent, _extends({}, rowProps, {\n \"data-row-key\": rowKey,\n className: classNames(className, \"\".concat(prefixCls, \"-row\"), \"\".concat(prefixCls, \"-row-level-\").concat(indent), rowProps === null || rowProps === void 0 ? void 0 : rowProps.className, indent >= 1 ? computedExpandedRowClassName : ''),\n style: _objectSpread(_objectSpread({}, style), rowProps === null || rowProps === void 0 ? void 0 : rowProps.style)\n }), flattenColumns.map(function (column, colIndex) {\n var render = column.render,\n dataIndex = column.dataIndex,\n columnClassName = column.className;\n var _getCellProps = getCellProps(rowInfo, column, colIndex, indent, index),\n key = _getCellProps.key,\n fixedInfo = _getCellProps.fixedInfo,\n appendCellNode = _getCellProps.appendCellNode,\n additionalCellProps = _getCellProps.additionalCellProps;\n return /*#__PURE__*/React.createElement(Cell, _extends({\n className: columnClassName,\n ellipsis: column.ellipsis,\n align: column.align,\n scope: column.rowScope,\n component: column.rowScope ? scopeCellComponent : cellComponent,\n prefixCls: prefixCls,\n key: key,\n record: record,\n index: index,\n renderIndex: renderIndex,\n dataIndex: dataIndex,\n render: render,\n shouldCellUpdate: column.shouldCellUpdate\n }, fixedInfo, {\n appendNode: appendCellNode,\n additionalProps: additionalCellProps\n }));\n }));\n\n // ======================== Expand Row =========================\n var expandRowNode;\n if (rowSupportExpand && (expandedRef.current || expanded)) {\n var expandContent = expandedRowRender(record, index, indent + 1, expanded);\n expandRowNode = /*#__PURE__*/React.createElement(ExpandedRow, {\n expanded: expanded,\n className: classNames(\"\".concat(prefixCls, \"-expanded-row\"), \"\".concat(prefixCls, \"-expanded-row-level-\").concat(indent + 1), computedExpandedRowClassName),\n prefixCls: prefixCls,\n component: RowComponent,\n cellComponent: cellComponent,\n colSpan: flattenColumns.length,\n isEmpty: false\n }, expandContent);\n }\n return /*#__PURE__*/React.createElement(React.Fragment, null, baseRowNode, expandRowNode);\n}\nif (process.env.NODE_ENV !== 'production') {\n BodyRow.displayName = 'BodyRow';\n}\nexport default responseImmutable(BodyRow);","import * as React from 'react';\nimport ResizeObserver from 'rc-resize-observer';\nexport default function MeasureCell(_ref) {\n var columnKey = _ref.columnKey,\n onColumnResize = _ref.onColumnResize;\n var cellRef = React.useRef();\n React.useEffect(function () {\n if (cellRef.current) {\n onColumnResize(columnKey, cellRef.current.offsetWidth);\n }\n }, []);\n return /*#__PURE__*/React.createElement(ResizeObserver, {\n data: columnKey\n }, /*#__PURE__*/React.createElement(\"td\", {\n ref: cellRef,\n style: {\n padding: 0,\n border: 0,\n height: 0\n }\n }, /*#__PURE__*/React.createElement(\"div\", {\n style: {\n height: 0,\n overflow: 'hidden'\n }\n }, \"\\xA0\")));\n}","import * as React from 'react';\nimport ResizeObserver from 'rc-resize-observer';\nimport MeasureCell from \"./MeasureCell\";\nexport default function MeasureRow(_ref) {\n var prefixCls = _ref.prefixCls,\n columnsKey = _ref.columnsKey,\n onColumnResize = _ref.onColumnResize;\n return /*#__PURE__*/React.createElement(\"tr\", {\n \"aria-hidden\": \"true\",\n className: \"\".concat(prefixCls, \"-measure-row\"),\n style: {\n height: 0,\n fontSize: 0\n }\n }, /*#__PURE__*/React.createElement(ResizeObserver.Collection, {\n onBatchResize: function onBatchResize(infoList) {\n infoList.forEach(function (_ref2) {\n var columnKey = _ref2.data,\n size = _ref2.size;\n onColumnResize(columnKey, size.offsetWidth);\n });\n }\n }, columnsKey.map(function (columnKey) {\n return /*#__PURE__*/React.createElement(MeasureCell, {\n key: columnKey,\n columnKey: columnKey,\n onColumnResize: onColumnResize\n });\n })));\n}","import { useContext } from '@rc-component/context';\nimport * as React from 'react';\nimport PerfContext from \"../context/PerfContext\";\nimport TableContext, { responseImmutable } from \"../context/TableContext\";\nimport useFlattenRecords from \"../hooks/useFlattenRecords\";\nimport devRenderTimes from \"../hooks/useRenderTimes\";\nimport { getColumnsKey } from \"../utils/valueUtil\";\nimport BodyRow from \"./BodyRow\";\nimport ExpandedRow from \"./ExpandedRow\";\nimport MeasureRow from \"./MeasureRow\";\nfunction Body(props) {\n if (process.env.NODE_ENV !== 'production') {\n devRenderTimes(props);\n }\n var data = props.data,\n measureColumnWidth = props.measureColumnWidth;\n var _useContext = useContext(TableContext, ['prefixCls', 'getComponent', 'onColumnResize', 'flattenColumns', 'getRowKey', 'expandedKeys', 'childrenColumnName', 'emptyNode']),\n prefixCls = _useContext.prefixCls,\n getComponent = _useContext.getComponent,\n onColumnResize = _useContext.onColumnResize,\n flattenColumns = _useContext.flattenColumns,\n getRowKey = _useContext.getRowKey,\n expandedKeys = _useContext.expandedKeys,\n childrenColumnName = _useContext.childrenColumnName,\n emptyNode = _useContext.emptyNode;\n var flattenData = useFlattenRecords(data, childrenColumnName, expandedKeys, getRowKey);\n\n // =================== Performance ====================\n var perfRef = React.useRef({\n renderWithProps: false\n });\n\n // ====================== Render ======================\n var WrapperComponent = getComponent(['body', 'wrapper'], 'tbody');\n var trComponent = getComponent(['body', 'row'], 'tr');\n var tdComponent = getComponent(['body', 'cell'], 'td');\n var thComponent = getComponent(['body', 'cell'], 'th');\n var rows;\n if (data.length) {\n rows = flattenData.map(function (item, idx) {\n var record = item.record,\n indent = item.indent,\n renderIndex = item.index;\n var key = getRowKey(record, idx);\n return /*#__PURE__*/React.createElement(BodyRow, {\n key: key,\n rowKey: key,\n record: record,\n index: idx,\n renderIndex: renderIndex,\n rowComponent: trComponent,\n cellComponent: tdComponent,\n scopeCellComponent: thComponent,\n getRowKey: getRowKey,\n indent: indent\n });\n });\n } else {\n rows = /*#__PURE__*/React.createElement(ExpandedRow, {\n expanded: true,\n className: \"\".concat(prefixCls, \"-placeholder\"),\n prefixCls: prefixCls,\n component: trComponent,\n cellComponent: tdComponent,\n colSpan: flattenColumns.length,\n isEmpty: true\n }, emptyNode);\n }\n var columnsKey = getColumnsKey(flattenColumns);\n return /*#__PURE__*/React.createElement(PerfContext.Provider, {\n value: perfRef.current\n }, /*#__PURE__*/React.createElement(WrapperComponent, {\n className: \"\".concat(prefixCls, \"-tbody\")\n }, measureColumnWidth && /*#__PURE__*/React.createElement(MeasureRow, {\n prefixCls: prefixCls,\n columnsKey: columnsKey,\n onColumnResize: onColumnResize\n }), rows));\n}\nif (process.env.NODE_ENV !== 'production') {\n Body.displayName = 'Body';\n}\nexport default responseImmutable(Body);","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"expandable\"];\nimport warning from \"rc-util/es/warning\";\nexport var INTERNAL_COL_DEFINE = 'RC_TABLE_INTERNAL_COL_DEFINE';\nexport function getExpandableProps(props) {\n var expandable = props.expandable,\n legacyExpandableConfig = _objectWithoutProperties(props, _excluded);\n var config;\n if ('expandable' in props) {\n config = _objectSpread(_objectSpread({}, legacyExpandableConfig), expandable);\n } else {\n if (process.env.NODE_ENV !== 'production' && ['indentSize', 'expandedRowKeys', 'defaultExpandedRowKeys', 'defaultExpandAllRows', 'expandedRowRender', 'expandRowByClick', 'expandIcon', 'onExpand', 'onExpandedRowsChange', 'expandedRowClassName', 'expandIconColumnIndex', 'showExpandColumn', 'title'].some(function (prop) {\n return prop in props;\n })) {\n warning(false, 'expanded related props have been moved into `expandable`.');\n }\n config = legacyExpandableConfig;\n }\n if (config.showExpandColumn === false) {\n config.expandIconColumnIndex = -1;\n }\n return config;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"columnType\"];\nimport * as React from 'react';\nimport { INTERNAL_COL_DEFINE } from \"./utils/legacyUtil\";\nimport { useContext } from '@rc-component/context';\nimport TableContext from \"./context/TableContext\";\nfunction ColGroup(_ref) {\n var colWidths = _ref.colWidths,\n columns = _ref.columns,\n columCount = _ref.columCount;\n var _useContext = useContext(TableContext, ['tableLayout']),\n tableLayout = _useContext.tableLayout;\n var cols = [];\n var len = columCount || columns.length;\n\n // Only insert col with width & additional props\n // Skip if rest col do not have any useful info\n var mustInsert = false;\n for (var i = len - 1; i >= 0; i -= 1) {\n var width = colWidths[i];\n var column = columns && columns[i];\n var additionalProps = void 0;\n var minWidth = void 0;\n if (column) {\n additionalProps = column[INTERNAL_COL_DEFINE];\n\n // fixed will cause layout problems\n if (tableLayout === 'auto') {\n minWidth = column.minWidth;\n }\n }\n if (width || minWidth || additionalProps || mustInsert) {\n var _ref2 = additionalProps || {},\n columnType = _ref2.columnType,\n restAdditionalProps = _objectWithoutProperties(_ref2, _excluded);\n cols.unshift( /*#__PURE__*/React.createElement(\"col\", _extends({\n key: i,\n style: {\n width: width,\n minWidth: minWidth\n }\n }, restAdditionalProps)));\n mustInsert = true;\n }\n }\n return /*#__PURE__*/React.createElement(\"colgroup\", null, cols);\n}\nexport default ColGroup;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"className\", \"noData\", \"columns\", \"flattenColumns\", \"colWidths\", \"columCount\", \"stickyOffsets\", \"direction\", \"fixHeader\", \"stickyTopOffset\", \"stickyBottomOffset\", \"stickyClassName\", \"onScroll\", \"maxContentScroll\", \"children\"];\nimport { useContext } from '@rc-component/context';\nimport classNames from 'classnames';\nimport { fillRef } from \"rc-util/es/ref\";\nimport * as React from 'react';\nimport { useMemo } from 'react';\nimport ColGroup from \"../ColGroup\";\nimport TableContext from \"../context/TableContext\";\nimport devRenderTimes from \"../hooks/useRenderTimes\";\nfunction useColumnWidth(colWidths, columCount) {\n return useMemo(function () {\n var cloneColumns = [];\n for (var i = 0; i < columCount; i += 1) {\n var val = colWidths[i];\n if (val !== undefined) {\n cloneColumns[i] = val;\n } else {\n return null;\n }\n }\n return cloneColumns;\n }, [colWidths.join('_'), columCount]);\n}\nvar FixedHolder = /*#__PURE__*/React.forwardRef(function (props, ref) {\n if (process.env.NODE_ENV !== 'production') {\n devRenderTimes(props);\n }\n var className = props.className,\n noData = props.noData,\n columns = props.columns,\n flattenColumns = props.flattenColumns,\n colWidths = props.colWidths,\n columCount = props.columCount,\n stickyOffsets = props.stickyOffsets,\n direction = props.direction,\n fixHeader = props.fixHeader,\n stickyTopOffset = props.stickyTopOffset,\n stickyBottomOffset = props.stickyBottomOffset,\n stickyClassName = props.stickyClassName,\n onScroll = props.onScroll,\n maxContentScroll = props.maxContentScroll,\n children = props.children,\n restProps = _objectWithoutProperties(props, _excluded);\n var _useContext = useContext(TableContext, ['prefixCls', 'scrollbarSize', 'isSticky', 'getComponent']),\n prefixCls = _useContext.prefixCls,\n scrollbarSize = _useContext.scrollbarSize,\n isSticky = _useContext.isSticky,\n getComponent = _useContext.getComponent;\n var TableComponent = getComponent(['header', 'table'], 'table');\n var combinationScrollBarSize = isSticky && !fixHeader ? 0 : scrollbarSize;\n\n // Pass wheel to scroll event\n var scrollRef = React.useRef(null);\n var setScrollRef = React.useCallback(function (element) {\n fillRef(ref, element);\n fillRef(scrollRef, element);\n }, []);\n React.useEffect(function () {\n var _scrollRef$current;\n function onWheel(e) {\n var _ref = e,\n currentTarget = _ref.currentTarget,\n deltaX = _ref.deltaX;\n if (deltaX) {\n onScroll({\n currentTarget: currentTarget,\n scrollLeft: currentTarget.scrollLeft + deltaX\n });\n e.preventDefault();\n }\n }\n (_scrollRef$current = scrollRef.current) === null || _scrollRef$current === void 0 || _scrollRef$current.addEventListener('wheel', onWheel, {\n passive: false\n });\n return function () {\n var _scrollRef$current2;\n (_scrollRef$current2 = scrollRef.current) === null || _scrollRef$current2 === void 0 || _scrollRef$current2.removeEventListener('wheel', onWheel);\n };\n }, []);\n\n // Check if all flattenColumns has width\n var allFlattenColumnsWithWidth = React.useMemo(function () {\n return flattenColumns.every(function (column) {\n return column.width;\n });\n }, [flattenColumns]);\n\n // Add scrollbar column\n var lastColumn = flattenColumns[flattenColumns.length - 1];\n var ScrollBarColumn = {\n fixed: lastColumn ? lastColumn.fixed : null,\n scrollbar: true,\n onHeaderCell: function onHeaderCell() {\n return {\n className: \"\".concat(prefixCls, \"-cell-scrollbar\")\n };\n }\n };\n var columnsWithScrollbar = useMemo(function () {\n return combinationScrollBarSize ? [].concat(_toConsumableArray(columns), [ScrollBarColumn]) : columns;\n }, [combinationScrollBarSize, columns]);\n var flattenColumnsWithScrollbar = useMemo(function () {\n return combinationScrollBarSize ? [].concat(_toConsumableArray(flattenColumns), [ScrollBarColumn]) : flattenColumns;\n }, [combinationScrollBarSize, flattenColumns]);\n\n // Calculate the sticky offsets\n var headerStickyOffsets = useMemo(function () {\n var right = stickyOffsets.right,\n left = stickyOffsets.left;\n return _objectSpread(_objectSpread({}, stickyOffsets), {}, {\n left: direction === 'rtl' ? [].concat(_toConsumableArray(left.map(function (width) {\n return width + combinationScrollBarSize;\n })), [0]) : left,\n right: direction === 'rtl' ? right : [].concat(_toConsumableArray(right.map(function (width) {\n return width + combinationScrollBarSize;\n })), [0]),\n isSticky: isSticky\n });\n }, [combinationScrollBarSize, stickyOffsets, isSticky]);\n var mergedColumnWidth = useColumnWidth(colWidths, columCount);\n return /*#__PURE__*/React.createElement(\"div\", {\n style: _objectSpread({\n overflow: 'hidden'\n }, isSticky ? {\n top: stickyTopOffset,\n bottom: stickyBottomOffset\n } : {}),\n ref: setScrollRef,\n className: classNames(className, _defineProperty({}, stickyClassName, !!stickyClassName))\n }, /*#__PURE__*/React.createElement(TableComponent, {\n style: {\n tableLayout: 'fixed',\n visibility: noData || mergedColumnWidth ? null : 'hidden'\n }\n }, (!noData || !maxContentScroll || allFlattenColumnsWithWidth) && /*#__PURE__*/React.createElement(ColGroup, {\n colWidths: mergedColumnWidth ? [].concat(_toConsumableArray(mergedColumnWidth), [combinationScrollBarSize]) : [],\n columCount: columCount + 1,\n columns: flattenColumnsWithScrollbar\n }), children(_objectSpread(_objectSpread({}, restProps), {}, {\n stickyOffsets: headerStickyOffsets,\n columns: columnsWithScrollbar,\n flattenColumns: flattenColumnsWithScrollbar\n }))));\n});\nif (process.env.NODE_ENV !== 'production') {\n FixedHolder.displayName = 'FixedHolder';\n}\n\n/** Return a table in div as fixed element which contains sticky info */\n// export default responseImmutable(FixedHolder);\nexport default /*#__PURE__*/React.memo(FixedHolder);","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport Cell from \"../Cell\";\nimport TableContext from \"../context/TableContext\";\nimport { useContext } from '@rc-component/context';\nimport { getCellFixedInfo } from \"../utils/fixUtil\";\nimport { getColumnsKey } from \"../utils/valueUtil\";\nvar HeaderRow = function HeaderRow(props) {\n var cells = props.cells,\n stickyOffsets = props.stickyOffsets,\n flattenColumns = props.flattenColumns,\n RowComponent = props.rowComponent,\n CellComponent = props.cellComponent,\n onHeaderRow = props.onHeaderRow,\n index = props.index;\n var _useContext = useContext(TableContext, ['prefixCls', 'direction']),\n prefixCls = _useContext.prefixCls,\n direction = _useContext.direction;\n var rowProps;\n if (onHeaderRow) {\n rowProps = onHeaderRow(cells.map(function (cell) {\n return cell.column;\n }), index);\n }\n var columnsKey = getColumnsKey(cells.map(function (cell) {\n return cell.column;\n }));\n return /*#__PURE__*/React.createElement(RowComponent, rowProps, cells.map(function (cell, cellIndex) {\n var column = cell.column;\n var fixedInfo = getCellFixedInfo(cell.colStart, cell.colEnd, flattenColumns, stickyOffsets, direction);\n var additionalProps;\n if (column && column.onHeaderCell) {\n additionalProps = cell.column.onHeaderCell(column);\n }\n return /*#__PURE__*/React.createElement(Cell, _extends({}, cell, {\n scope: column.title ? cell.colSpan > 1 ? 'colgroup' : 'col' : null,\n ellipsis: column.ellipsis,\n align: column.align,\n component: CellComponent,\n prefixCls: prefixCls,\n key: columnsKey[cellIndex]\n }, fixedInfo, {\n additionalProps: additionalProps,\n rowType: \"header\"\n }));\n }));\n};\nif (process.env.NODE_ENV !== 'production') {\n HeaderRow.displayName = 'HeaderRow';\n}\nexport default HeaderRow;","import { useContext } from '@rc-component/context';\nimport * as React from 'react';\nimport TableContext, { responseImmutable } from \"../context/TableContext\";\nimport devRenderTimes from \"../hooks/useRenderTimes\";\nimport HeaderRow from \"./HeaderRow\";\nfunction parseHeaderRows(rootColumns) {\n var rows = [];\n function fillRowCells(columns, colIndex) {\n var rowIndex = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;\n // Init rows\n rows[rowIndex] = rows[rowIndex] || [];\n var currentColIndex = colIndex;\n var colSpans = columns.filter(Boolean).map(function (column) {\n var cell = {\n key: column.key,\n className: column.className || '',\n children: column.title,\n column: column,\n colStart: currentColIndex\n };\n var colSpan = 1;\n var subColumns = column.children;\n if (subColumns && subColumns.length > 0) {\n colSpan = fillRowCells(subColumns, currentColIndex, rowIndex + 1).reduce(function (total, count) {\n return total + count;\n }, 0);\n cell.hasSubColumns = true;\n }\n if ('colSpan' in column) {\n colSpan = column.colSpan;\n }\n if ('rowSpan' in column) {\n cell.rowSpan = column.rowSpan;\n }\n cell.colSpan = colSpan;\n cell.colEnd = cell.colStart + colSpan - 1;\n rows[rowIndex].push(cell);\n currentColIndex += colSpan;\n return colSpan;\n });\n return colSpans;\n }\n\n // Generate `rows` cell data\n fillRowCells(rootColumns, 0);\n\n // Handle `rowSpan`\n var rowCount = rows.length;\n var _loop = function _loop(rowIndex) {\n rows[rowIndex].forEach(function (cell) {\n if (!('rowSpan' in cell) && !cell.hasSubColumns) {\n // eslint-disable-next-line no-param-reassign\n cell.rowSpan = rowCount - rowIndex;\n }\n });\n };\n for (var rowIndex = 0; rowIndex < rowCount; rowIndex += 1) {\n _loop(rowIndex);\n }\n return rows;\n}\nvar Header = function Header(props) {\n if (process.env.NODE_ENV !== 'production') {\n devRenderTimes(props);\n }\n var stickyOffsets = props.stickyOffsets,\n columns = props.columns,\n flattenColumns = props.flattenColumns,\n onHeaderRow = props.onHeaderRow;\n var _useContext = useContext(TableContext, ['prefixCls', 'getComponent']),\n prefixCls = _useContext.prefixCls,\n getComponent = _useContext.getComponent;\n var rows = React.useMemo(function () {\n return parseHeaderRows(columns);\n }, [columns]);\n var WrapperComponent = getComponent(['header', 'wrapper'], 'thead');\n var trComponent = getComponent(['header', 'row'], 'tr');\n var thComponent = getComponent(['header', 'cell'], 'th');\n return /*#__PURE__*/React.createElement(WrapperComponent, {\n className: \"\".concat(prefixCls, \"-thead\")\n }, rows.map(function (row, rowIndex) {\n var rowNode = /*#__PURE__*/React.createElement(HeaderRow, {\n key: rowIndex,\n flattenColumns: flattenColumns,\n cells: row,\n stickyOffsets: stickyOffsets,\n rowComponent: trComponent,\n cellComponent: thComponent,\n onHeaderRow: onHeaderRow,\n index: rowIndex\n });\n return rowNode;\n }));\n};\nexport default responseImmutable(Header);","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport * as React from 'react';\nfunction parseColWidth(totalWidth) {\n var width = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n if (typeof width === 'number') {\n return width;\n }\n if (width.endsWith('%')) {\n return totalWidth * parseFloat(width) / 100;\n }\n return null;\n}\n\n/**\n * Fill all column with width\n */\nexport default function useWidthColumns(flattenColumns, scrollWidth, clientWidth) {\n return React.useMemo(function () {\n // Fill width if needed\n if (scrollWidth && scrollWidth > 0) {\n var totalWidth = 0;\n var missWidthCount = 0;\n\n // collect not given width column\n flattenColumns.forEach(function (col) {\n var colWidth = parseColWidth(scrollWidth, col.width);\n if (colWidth) {\n totalWidth += colWidth;\n } else {\n missWidthCount += 1;\n }\n });\n\n // Fill width\n var maxFitWidth = Math.max(scrollWidth, clientWidth);\n var restWidth = Math.max(maxFitWidth - totalWidth, missWidthCount);\n var restCount = missWidthCount;\n var avgWidth = restWidth / missWidthCount;\n var realTotal = 0;\n var filledColumns = flattenColumns.map(function (col) {\n var clone = _objectSpread({}, col);\n var colWidth = parseColWidth(scrollWidth, clone.width);\n if (colWidth) {\n clone.width = colWidth;\n } else {\n var colAvgWidth = Math.floor(avgWidth);\n clone.width = restCount === 1 ? restWidth : colAvgWidth;\n restWidth -= colAvgWidth;\n restCount -= 1;\n }\n realTotal += clone.width;\n return clone;\n });\n\n // If realTotal is less than clientWidth,\n // We need extend column width\n if (realTotal < maxFitWidth) {\n var scale = maxFitWidth / realTotal;\n restWidth = maxFitWidth;\n filledColumns.forEach(function (col, index) {\n var colWidth = Math.floor(col.width * scale);\n col.width = index === filledColumns.length - 1 ? restWidth : colWidth;\n restWidth -= colWidth;\n });\n }\n return [filledColumns, Math.max(realTotal, maxFitWidth)];\n }\n return [flattenColumns, scrollWidth];\n }, [flattenColumns, scrollWidth, clientWidth]);\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"children\"],\n _excluded2 = [\"fixed\"];\nimport toArray from \"rc-util/es/Children/toArray\";\nimport warning from \"rc-util/es/warning\";\nimport * as React from 'react';\nimport { EXPAND_COLUMN } from \"../../constant\";\nimport { INTERNAL_COL_DEFINE } from \"../../utils/legacyUtil\";\nimport useWidthColumns from \"./useWidthColumns\";\nexport function convertChildrenToColumns(children) {\n return toArray(children).filter(function (node) {\n return /*#__PURE__*/React.isValidElement(node);\n }).map(function (_ref) {\n var key = _ref.key,\n props = _ref.props;\n var nodeChildren = props.children,\n restProps = _objectWithoutProperties(props, _excluded);\n var column = _objectSpread({\n key: key\n }, restProps);\n if (nodeChildren) {\n column.children = convertChildrenToColumns(nodeChildren);\n }\n return column;\n });\n}\nfunction filterHiddenColumns(columns) {\n return columns.filter(function (column) {\n return column && _typeof(column) === 'object' && !column.hidden;\n }).map(function (column) {\n var subColumns = column.children;\n if (subColumns && subColumns.length > 0) {\n return _objectSpread(_objectSpread({}, column), {}, {\n children: filterHiddenColumns(subColumns)\n });\n }\n return column;\n });\n}\nfunction flatColumns(columns) {\n var parentKey = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'key';\n return columns.filter(function (column) {\n return column && _typeof(column) === 'object';\n }).reduce(function (list, column, index) {\n var fixed = column.fixed;\n // Convert `fixed='true'` to `fixed='left'` instead\n var parsedFixed = fixed === true ? 'left' : fixed;\n var mergedKey = \"\".concat(parentKey, \"-\").concat(index);\n var subColumns = column.children;\n if (subColumns && subColumns.length > 0) {\n return [].concat(_toConsumableArray(list), _toConsumableArray(flatColumns(subColumns, mergedKey).map(function (subColum) {\n return _objectSpread({\n fixed: parsedFixed\n }, subColum);\n })));\n }\n return [].concat(_toConsumableArray(list), [_objectSpread(_objectSpread({\n key: mergedKey\n }, column), {}, {\n fixed: parsedFixed\n })]);\n }, []);\n}\nfunction revertForRtl(columns) {\n return columns.map(function (column) {\n var fixed = column.fixed,\n restProps = _objectWithoutProperties(column, _excluded2);\n\n // Convert `fixed='left'` to `fixed='right'` instead\n var parsedFixed = fixed;\n if (fixed === 'left') {\n parsedFixed = 'right';\n } else if (fixed === 'right') {\n parsedFixed = 'left';\n }\n return _objectSpread({\n fixed: parsedFixed\n }, restProps);\n });\n}\n\n/**\n * Parse `columns` & `children` into `columns`.\n */\nfunction useColumns(_ref2, transformColumns) {\n var prefixCls = _ref2.prefixCls,\n columns = _ref2.columns,\n children = _ref2.children,\n expandable = _ref2.expandable,\n expandedKeys = _ref2.expandedKeys,\n columnTitle = _ref2.columnTitle,\n getRowKey = _ref2.getRowKey,\n onTriggerExpand = _ref2.onTriggerExpand,\n expandIcon = _ref2.expandIcon,\n rowExpandable = _ref2.rowExpandable,\n expandIconColumnIndex = _ref2.expandIconColumnIndex,\n direction = _ref2.direction,\n expandRowByClick = _ref2.expandRowByClick,\n columnWidth = _ref2.columnWidth,\n fixed = _ref2.fixed,\n scrollWidth = _ref2.scrollWidth,\n clientWidth = _ref2.clientWidth;\n var baseColumns = React.useMemo(function () {\n var newColumns = columns || convertChildrenToColumns(children) || [];\n return filterHiddenColumns(newColumns.slice());\n }, [columns, children]);\n\n // ========================== Expand ==========================\n var withExpandColumns = React.useMemo(function () {\n if (expandable) {\n var cloneColumns = baseColumns.slice();\n\n // >>> Warning if use `expandIconColumnIndex`\n if (process.env.NODE_ENV !== 'production' && expandIconColumnIndex >= 0) {\n warning(false, '`expandIconColumnIndex` is deprecated. Please use `Table.EXPAND_COLUMN` in `columns` instead.');\n }\n\n // >>> Insert expand column if not exist\n if (!cloneColumns.includes(EXPAND_COLUMN)) {\n var expandColIndex = expandIconColumnIndex || 0;\n if (expandColIndex >= 0) {\n cloneColumns.splice(expandColIndex, 0, EXPAND_COLUMN);\n }\n }\n\n // >>> Deduplicate additional expand column\n if (process.env.NODE_ENV !== 'production' && cloneColumns.filter(function (c) {\n return c === EXPAND_COLUMN;\n }).length > 1) {\n warning(false, 'There exist more than one `EXPAND_COLUMN` in `columns`.');\n }\n var expandColumnIndex = cloneColumns.indexOf(EXPAND_COLUMN);\n cloneColumns = cloneColumns.filter(function (column, index) {\n return column !== EXPAND_COLUMN || index === expandColumnIndex;\n });\n\n // >>> Check if expand column need to fixed\n var prevColumn = baseColumns[expandColumnIndex];\n var fixedColumn;\n if ((fixed === 'left' || fixed) && !expandIconColumnIndex) {\n fixedColumn = 'left';\n } else if ((fixed === 'right' || fixed) && expandIconColumnIndex === baseColumns.length) {\n fixedColumn = 'right';\n } else {\n fixedColumn = prevColumn ? prevColumn.fixed : null;\n }\n\n // >>> Create expandable column\n var expandColumn = _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, INTERNAL_COL_DEFINE, {\n className: \"\".concat(prefixCls, \"-expand-icon-col\"),\n columnType: 'EXPAND_COLUMN'\n }), \"title\", columnTitle), \"fixed\", fixedColumn), \"className\", \"\".concat(prefixCls, \"-row-expand-icon-cell\")), \"width\", columnWidth), \"render\", function render(_, record, index) {\n var rowKey = getRowKey(record, index);\n var expanded = expandedKeys.has(rowKey);\n var recordExpandable = rowExpandable ? rowExpandable(record) : true;\n var icon = expandIcon({\n prefixCls: prefixCls,\n expanded: expanded,\n expandable: recordExpandable,\n record: record,\n onExpand: onTriggerExpand\n });\n if (expandRowByClick) {\n return /*#__PURE__*/React.createElement(\"span\", {\n onClick: function onClick(e) {\n return e.stopPropagation();\n }\n }, icon);\n }\n return icon;\n });\n return cloneColumns.map(function (col) {\n return col === EXPAND_COLUMN ? expandColumn : col;\n });\n }\n if (process.env.NODE_ENV !== 'production' && baseColumns.includes(EXPAND_COLUMN)) {\n warning(false, '`expandable` is not config but there exist `EXPAND_COLUMN` in `columns`.');\n }\n return baseColumns.filter(function (col) {\n return col !== EXPAND_COLUMN;\n });\n }, [expandable, baseColumns, getRowKey, expandedKeys, expandIcon, direction]);\n\n // ========================= Transform ========================\n var mergedColumns = React.useMemo(function () {\n var finalColumns = withExpandColumns;\n if (transformColumns) {\n finalColumns = transformColumns(finalColumns);\n }\n\n // Always provides at least one column for table display\n if (!finalColumns.length) {\n finalColumns = [{\n render: function render() {\n return null;\n }\n }];\n }\n return finalColumns;\n }, [transformColumns, withExpandColumns, direction]);\n\n // ========================== Flatten =========================\n var flattenColumns = React.useMemo(function () {\n if (direction === 'rtl') {\n return revertForRtl(flatColumns(mergedColumns));\n }\n return flatColumns(mergedColumns);\n }, [mergedColumns, direction, scrollWidth]);\n\n // ========================= Gap Fixed ========================\n var hasGapFixed = React.useMemo(function () {\n // Fixed: left, since old browser not support `findLastIndex`, we should use reverse loop\n var lastLeftIndex = -1;\n for (var i = flattenColumns.length - 1; i >= 0; i -= 1) {\n var colFixed = flattenColumns[i].fixed;\n if (colFixed === 'left' || colFixed === true) {\n lastLeftIndex = i;\n break;\n }\n }\n if (lastLeftIndex >= 0) {\n for (var _i = 0; _i <= lastLeftIndex; _i += 1) {\n var _colFixed = flattenColumns[_i].fixed;\n if (_colFixed !== 'left' && _colFixed !== true) {\n return true;\n }\n }\n }\n\n // Fixed: right\n var firstRightIndex = flattenColumns.findIndex(function (_ref3) {\n var colFixed = _ref3.fixed;\n return colFixed === 'right';\n });\n if (firstRightIndex >= 0) {\n for (var _i2 = firstRightIndex; _i2 < flattenColumns.length; _i2 += 1) {\n var _colFixed2 = flattenColumns[_i2].fixed;\n if (_colFixed2 !== 'right') {\n return true;\n }\n }\n }\n return false;\n }, [flattenColumns]);\n\n // ========================= FillWidth ========================\n var _useWidthColumns = useWidthColumns(flattenColumns, scrollWidth, clientWidth),\n _useWidthColumns2 = _slicedToArray(_useWidthColumns, 2),\n filledColumns = _useWidthColumns2[0],\n realScrollWidth = _useWidthColumns2[1];\n return [mergedColumns, filledColumns, realScrollWidth, hasGapFixed];\n}\nexport default useColumns;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport * as React from 'react';\nimport classNames from 'classnames';\nexport function renderExpandIcon(_ref) {\n var prefixCls = _ref.prefixCls,\n record = _ref.record,\n onExpand = _ref.onExpand,\n expanded = _ref.expanded,\n expandable = _ref.expandable;\n var expandClassName = \"\".concat(prefixCls, \"-row-expand-icon\");\n if (!expandable) {\n return /*#__PURE__*/React.createElement(\"span\", {\n className: classNames(expandClassName, \"\".concat(prefixCls, \"-row-spaced\"))\n });\n }\n var onClick = function onClick(event) {\n onExpand(record, event);\n event.stopPropagation();\n };\n return /*#__PURE__*/React.createElement(\"span\", {\n className: classNames(expandClassName, _defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-row-expanded\"), expanded), \"\".concat(prefixCls, \"-row-collapsed\"), !expanded)),\n onClick: onClick\n });\n}\nexport function findAllChildrenKeys(data, getRowKey, childrenColumnName) {\n var keys = [];\n function dig(list) {\n (list || []).forEach(function (item, index) {\n keys.push(getRowKey(item, index));\n dig(item[childrenColumnName]);\n });\n }\n dig(data);\n return keys;\n}","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport warning from \"rc-util/es/warning\";\nimport * as React from 'react';\nimport { INTERNAL_HOOKS } from \"../constant\";\nimport { findAllChildrenKeys, renderExpandIcon } from \"../utils/expandUtil\";\nimport { getExpandableProps } from \"../utils/legacyUtil\";\nexport default function useExpand(props, mergedData, getRowKey) {\n var expandableConfig = getExpandableProps(props);\n var expandIcon = expandableConfig.expandIcon,\n expandedRowKeys = expandableConfig.expandedRowKeys,\n defaultExpandedRowKeys = expandableConfig.defaultExpandedRowKeys,\n defaultExpandAllRows = expandableConfig.defaultExpandAllRows,\n expandedRowRender = expandableConfig.expandedRowRender,\n onExpand = expandableConfig.onExpand,\n onExpandedRowsChange = expandableConfig.onExpandedRowsChange,\n childrenColumnName = expandableConfig.childrenColumnName;\n var mergedExpandIcon = expandIcon || renderExpandIcon;\n var mergedChildrenColumnName = childrenColumnName || 'children';\n var expandableType = React.useMemo(function () {\n if (expandedRowRender) {\n return 'row';\n }\n /* eslint-disable no-underscore-dangle */\n /**\n * Fix https://github.com/ant-design/ant-design/issues/21154\n * This is a workaround to not to break current behavior.\n * We can remove follow code after final release.\n *\n * To other developer:\n * Do not use `__PARENT_RENDER_ICON__` in prod since we will remove this when refactor\n */\n if (props.expandable && props.internalHooks === INTERNAL_HOOKS && props.expandable.__PARENT_RENDER_ICON__ || mergedData.some(function (record) {\n return record && _typeof(record) === 'object' && record[mergedChildrenColumnName];\n })) {\n return 'nest';\n }\n /* eslint-enable */\n return false;\n }, [!!expandedRowRender, mergedData]);\n var _React$useState = React.useState(function () {\n if (defaultExpandedRowKeys) {\n return defaultExpandedRowKeys;\n }\n if (defaultExpandAllRows) {\n return findAllChildrenKeys(mergedData, getRowKey, mergedChildrenColumnName);\n }\n return [];\n }),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n innerExpandedKeys = _React$useState2[0],\n setInnerExpandedKeys = _React$useState2[1];\n var mergedExpandedKeys = React.useMemo(function () {\n return new Set(expandedRowKeys || innerExpandedKeys || []);\n }, [expandedRowKeys, innerExpandedKeys]);\n var onTriggerExpand = React.useCallback(function (record) {\n var key = getRowKey(record, mergedData.indexOf(record));\n var newExpandedKeys;\n var hasKey = mergedExpandedKeys.has(key);\n if (hasKey) {\n mergedExpandedKeys.delete(key);\n newExpandedKeys = _toConsumableArray(mergedExpandedKeys);\n } else {\n newExpandedKeys = [].concat(_toConsumableArray(mergedExpandedKeys), [key]);\n }\n setInnerExpandedKeys(newExpandedKeys);\n if (onExpand) {\n onExpand(!hasKey, record);\n }\n if (onExpandedRowsChange) {\n onExpandedRowsChange(newExpandedKeys);\n }\n }, [getRowKey, mergedExpandedKeys, mergedData, onExpand, onExpandedRowsChange]);\n\n // Warning if use `expandedRowRender` and nest children in the same time\n if (process.env.NODE_ENV !== 'production' && expandedRowRender && mergedData.some(function (record) {\n return Array.isArray(record === null || record === void 0 ? void 0 : record[mergedChildrenColumnName]);\n })) {\n warning(false, '`expandedRowRender` should not use with nested Table');\n }\n return [expandableConfig, expandableType, mergedExpandedKeys, mergedExpandIcon, mergedChildrenColumnName, onTriggerExpand];\n}","import useMemo from \"rc-util/es/hooks/useMemo\";\nimport isEqual from \"rc-util/es/isEqual\";\nimport { getCellFixedInfo } from \"../utils/fixUtil\";\nexport default function useFixedInfo(flattenColumns, stickyOffsets, direction) {\n var fixedInfoList = flattenColumns.map(function (_, colIndex) {\n return getCellFixedInfo(colIndex, colIndex, flattenColumns, stickyOffsets, direction);\n });\n return useMemo(function () {\n return fixedInfoList;\n }, [fixedInfoList], function (prev, next) {\n return !isEqual(prev, next);\n });\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport { useRef, useState, useEffect } from 'react';\n/**\n * Execute code before next frame but async\n */\nexport function useLayoutState(defaultState) {\n var stateRef = useRef(defaultState);\n var _useState = useState({}),\n _useState2 = _slicedToArray(_useState, 2),\n forceUpdate = _useState2[1];\n var lastPromiseRef = useRef(null);\n var updateBatchRef = useRef([]);\n function setFrameState(updater) {\n updateBatchRef.current.push(updater);\n var promise = Promise.resolve();\n lastPromiseRef.current = promise;\n promise.then(function () {\n if (lastPromiseRef.current === promise) {\n var prevBatch = updateBatchRef.current;\n var prevState = stateRef.current;\n updateBatchRef.current = [];\n prevBatch.forEach(function (batchUpdater) {\n stateRef.current = batchUpdater(stateRef.current);\n });\n lastPromiseRef.current = null;\n if (prevState !== stateRef.current) {\n forceUpdate({});\n }\n }\n });\n }\n useEffect(function () {\n return function () {\n lastPromiseRef.current = null;\n };\n }, []);\n return [stateRef.current, setFrameState];\n}\n\n/** Lock frame, when frame pass reset the lock. */\nexport function useTimeoutLock(defaultState) {\n var frameRef = useRef(defaultState || null);\n var timeoutRef = useRef();\n function cleanUp() {\n window.clearTimeout(timeoutRef.current);\n }\n function setState(newState) {\n frameRef.current = newState;\n cleanUp();\n timeoutRef.current = window.setTimeout(function () {\n frameRef.current = null;\n timeoutRef.current = undefined;\n }, 100);\n }\n function getState() {\n return frameRef.current;\n }\n useEffect(function () {\n return cleanUp;\n }, []);\n return [setState, getState];\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nexport default function useHover() {\n var _React$useState = React.useState(-1),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n startRow = _React$useState2[0],\n setStartRow = _React$useState2[1];\n var _React$useState3 = React.useState(-1),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n endRow = _React$useState4[0],\n setEndRow = _React$useState4[1];\n var onHover = React.useCallback(function (start, end) {\n setStartRow(start);\n setEndRow(end);\n }, []);\n return [startRow, endRow, onHover];\n}","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport * as React from 'react';\nimport canUseDom from \"rc-util/es/Dom/canUseDom\";\n// fix ssr render\nvar defaultContainer = canUseDom() ? window : null;\n\n/** Sticky header hooks */\nexport default function useSticky(sticky, prefixCls) {\n var _ref = _typeof(sticky) === 'object' ? sticky : {},\n _ref$offsetHeader = _ref.offsetHeader,\n offsetHeader = _ref$offsetHeader === void 0 ? 0 : _ref$offsetHeader,\n _ref$offsetSummary = _ref.offsetSummary,\n offsetSummary = _ref$offsetSummary === void 0 ? 0 : _ref$offsetSummary,\n _ref$offsetScroll = _ref.offsetScroll,\n offsetScroll = _ref$offsetScroll === void 0 ? 0 : _ref$offsetScroll,\n _ref$getContainer = _ref.getContainer,\n getContainer = _ref$getContainer === void 0 ? function () {\n return defaultContainer;\n } : _ref$getContainer;\n var container = getContainer() || defaultContainer;\n var isSticky = !!sticky;\n return React.useMemo(function () {\n return {\n isSticky: isSticky,\n stickyClassName: isSticky ? \"\".concat(prefixCls, \"-sticky-holder\") : '',\n offsetHeader: offsetHeader,\n offsetSummary: offsetSummary,\n offsetScroll: offsetScroll,\n container: container\n };\n }, [isSticky, offsetScroll, offsetHeader, offsetSummary, prefixCls, container]);\n}","import { useMemo } from 'react';\n/**\n * Get sticky column offset width\n */\nfunction useStickyOffsets(colWidths, flattenColumns, direction) {\n var stickyOffsets = useMemo(function () {\n var columnCount = flattenColumns.length;\n var getOffsets = function getOffsets(startIndex, endIndex, offset) {\n var offsets = [];\n var total = 0;\n for (var i = startIndex; i !== endIndex; i += offset) {\n offsets.push(total);\n if (flattenColumns[i].fixed) {\n total += colWidths[i] || 0;\n }\n }\n return offsets;\n };\n var startOffsets = getOffsets(0, columnCount, 1);\n var endOffsets = getOffsets(columnCount - 1, -1, -1).reverse();\n return direction === 'rtl' ? {\n left: endOffsets,\n right: startOffsets\n } : {\n left: startOffsets,\n right: endOffsets\n };\n }, [colWidths, flattenColumns, direction]);\n return stickyOffsets;\n}\nexport default useStickyOffsets;","import * as React from 'react';\nfunction Panel(_ref) {\n var className = _ref.className,\n children = _ref.children;\n return /*#__PURE__*/React.createElement(\"div\", {\n className: className\n }, children);\n}\nexport default Panel;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport { useContext } from '@rc-component/context';\nimport classNames from 'classnames';\nimport addEventListener from \"rc-util/es/Dom/addEventListener\";\nimport { getOffset } from \"rc-util/es/Dom/css\";\nimport getScrollBarSize from \"rc-util/es/getScrollBarSize\";\nimport * as React from 'react';\nimport TableContext from \"./context/TableContext\";\nimport { useLayoutState } from \"./hooks/useFrame\";\nimport raf from \"rc-util/es/raf\";\nvar StickyScrollBar = function StickyScrollBar(_ref, ref) {\n var _scrollBodyRef$curren, _scrollBodyRef$curren2;\n var scrollBodyRef = _ref.scrollBodyRef,\n onScroll = _ref.onScroll,\n offsetScroll = _ref.offsetScroll,\n container = _ref.container;\n var prefixCls = useContext(TableContext, 'prefixCls');\n var bodyScrollWidth = ((_scrollBodyRef$curren = scrollBodyRef.current) === null || _scrollBodyRef$curren === void 0 ? void 0 : _scrollBodyRef$curren.scrollWidth) || 0;\n var bodyWidth = ((_scrollBodyRef$curren2 = scrollBodyRef.current) === null || _scrollBodyRef$curren2 === void 0 ? void 0 : _scrollBodyRef$curren2.clientWidth) || 0;\n var scrollBarWidth = bodyScrollWidth && bodyWidth * (bodyWidth / bodyScrollWidth);\n var scrollBarRef = React.useRef();\n var _useLayoutState = useLayoutState({\n scrollLeft: 0,\n isHiddenScrollBar: true\n }),\n _useLayoutState2 = _slicedToArray(_useLayoutState, 2),\n scrollState = _useLayoutState2[0],\n setScrollState = _useLayoutState2[1];\n var refState = React.useRef({\n delta: 0,\n x: 0\n });\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n isActive = _React$useState2[0],\n setActive = _React$useState2[1];\n var rafRef = React.useRef(null);\n React.useEffect(function () {\n return function () {\n raf.cancel(rafRef.current);\n };\n }, []);\n var onMouseUp = function onMouseUp() {\n setActive(false);\n };\n var onMouseDown = function onMouseDown(event) {\n event.persist();\n refState.current.delta = event.pageX - scrollState.scrollLeft;\n refState.current.x = 0;\n setActive(true);\n event.preventDefault();\n };\n var onMouseMove = function onMouseMove(event) {\n var _window;\n // https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/buttons\n var _ref2 = event || ((_window = window) === null || _window === void 0 ? void 0 : _window.event),\n buttons = _ref2.buttons;\n if (!isActive || buttons === 0) {\n // If out body mouse up, we can set isActive false when mouse move\n if (isActive) {\n setActive(false);\n }\n return;\n }\n var left = refState.current.x + event.pageX - refState.current.x - refState.current.delta;\n if (left <= 0) {\n left = 0;\n }\n if (left + scrollBarWidth >= bodyWidth) {\n left = bodyWidth - scrollBarWidth;\n }\n onScroll({\n scrollLeft: left / bodyWidth * (bodyScrollWidth + 2)\n });\n refState.current.x = event.pageX;\n };\n var checkScrollBarVisible = function checkScrollBarVisible() {\n rafRef.current = raf(function () {\n if (!scrollBodyRef.current) {\n return;\n }\n var tableOffsetTop = getOffset(scrollBodyRef.current).top;\n var tableBottomOffset = tableOffsetTop + scrollBodyRef.current.offsetHeight;\n var currentClientOffset = container === window ? document.documentElement.scrollTop + window.innerHeight : getOffset(container).top + container.clientHeight;\n if (tableBottomOffset - getScrollBarSize() <= currentClientOffset || tableOffsetTop >= currentClientOffset - offsetScroll) {\n setScrollState(function (state) {\n return _objectSpread(_objectSpread({}, state), {}, {\n isHiddenScrollBar: true\n });\n });\n } else {\n setScrollState(function (state) {\n return _objectSpread(_objectSpread({}, state), {}, {\n isHiddenScrollBar: false\n });\n });\n }\n });\n };\n var setScrollLeft = function setScrollLeft(left) {\n setScrollState(function (state) {\n return _objectSpread(_objectSpread({}, state), {}, {\n scrollLeft: left / bodyScrollWidth * bodyWidth || 0\n });\n });\n };\n React.useImperativeHandle(ref, function () {\n return {\n setScrollLeft: setScrollLeft,\n checkScrollBarVisible: checkScrollBarVisible\n };\n });\n React.useEffect(function () {\n var onMouseUpListener = addEventListener(document.body, 'mouseup', onMouseUp, false);\n var onMouseMoveListener = addEventListener(document.body, 'mousemove', onMouseMove, false);\n checkScrollBarVisible();\n return function () {\n onMouseUpListener.remove();\n onMouseMoveListener.remove();\n };\n }, [scrollBarWidth, isActive]);\n React.useEffect(function () {\n var onScrollListener = addEventListener(container, 'scroll', checkScrollBarVisible, false);\n var onResizeListener = addEventListener(window, 'resize', checkScrollBarVisible, false);\n return function () {\n onScrollListener.remove();\n onResizeListener.remove();\n };\n }, [container]);\n React.useEffect(function () {\n if (!scrollState.isHiddenScrollBar) {\n setScrollState(function (state) {\n var bodyNode = scrollBodyRef.current;\n if (!bodyNode) {\n return state;\n }\n return _objectSpread(_objectSpread({}, state), {}, {\n scrollLeft: bodyNode.scrollLeft / bodyNode.scrollWidth * bodyNode.clientWidth\n });\n });\n }\n }, [scrollState.isHiddenScrollBar]);\n if (bodyScrollWidth <= bodyWidth || !scrollBarWidth || scrollState.isHiddenScrollBar) {\n return null;\n }\n return /*#__PURE__*/React.createElement(\"div\", {\n style: {\n height: getScrollBarSize(),\n width: bodyWidth,\n bottom: offsetScroll\n },\n className: \"\".concat(prefixCls, \"-sticky-scroll\")\n }, /*#__PURE__*/React.createElement(\"div\", {\n onMouseDown: onMouseDown,\n ref: scrollBarRef,\n className: classNames(\"\".concat(prefixCls, \"-sticky-scroll-bar\"), _defineProperty({}, \"\".concat(prefixCls, \"-sticky-scroll-bar-active\"), isActive)),\n style: {\n width: \"\".concat(scrollBarWidth, \"px\"),\n transform: \"translate3d(\".concat(scrollState.scrollLeft, \"px, 0, 0)\")\n }\n }));\n};\nexport default /*#__PURE__*/React.forwardRef(StickyScrollBar);","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\n/**\n * Feature:\n * - fixed not need to set width\n * - support `rowExpandable` to config row expand logic\n * - add `summary` to support `() => ReactNode`\n *\n * Update:\n * - `dataIndex` is `array[]` now\n * - `expandable` wrap all the expand related props\n *\n * Removed:\n * - expandIconAsCell\n * - useFixedHeader\n * - rowRef\n * - columns[number].onCellClick\n * - onRowClick\n * - onRowDoubleClick\n * - onRowMouseEnter\n * - onRowMouseLeave\n * - getBodyWrapper\n * - bodyStyle\n *\n * Deprecated:\n * - All expanded props, move into expandable\n */\n\nimport classNames from 'classnames';\nimport ResizeObserver from 'rc-resize-observer';\nimport isVisible from \"rc-util/es/Dom/isVisible\";\nimport { isStyleSupport } from \"rc-util/es/Dom/styleChecker\";\nimport { getTargetScrollBarSize } from \"rc-util/es/getScrollBarSize\";\nimport useEvent from \"rc-util/es/hooks/useEvent\";\nimport pickAttrs from \"rc-util/es/pickAttrs\";\nimport getValue from \"rc-util/es/utils/get\";\nimport warning from \"rc-util/es/warning\";\nimport * as React from 'react';\nimport Body from \"./Body\";\nimport ColGroup from \"./ColGroup\";\nimport { EXPAND_COLUMN, INTERNAL_HOOKS } from \"./constant\";\nimport TableContext, { makeImmutable } from \"./context/TableContext\";\nimport FixedHolder from \"./FixedHolder\";\nimport Footer, { FooterComponents } from \"./Footer\";\nimport Summary from \"./Footer/Summary\";\nimport Header from \"./Header/Header\";\nimport useColumns from \"./hooks/useColumns\";\nimport useExpand from \"./hooks/useExpand\";\nimport useFixedInfo from \"./hooks/useFixedInfo\";\nimport { useLayoutState, useTimeoutLock } from \"./hooks/useFrame\";\nimport useHover from \"./hooks/useHover\";\nimport useSticky from \"./hooks/useSticky\";\nimport useStickyOffsets from \"./hooks/useStickyOffsets\";\nimport Panel from \"./Panel\";\nimport StickyScrollBar from \"./stickyScrollBar\";\nimport Column from \"./sugar/Column\";\nimport ColumnGroup from \"./sugar/ColumnGroup\";\nimport { getColumnsKey, validateValue, validNumberValue } from \"./utils/valueUtil\";\nimport { getDOM } from \"rc-util/es/Dom/findDOMNode\";\nexport var DEFAULT_PREFIX = 'rc-table';\n\n// Used for conditions cache\nvar EMPTY_DATA = [];\n\n// Used for customize scroll\nvar EMPTY_SCROLL_TARGET = {};\nfunction defaultEmpty() {\n return 'No Data';\n}\nfunction Table(tableProps, ref) {\n var props = _objectSpread({\n rowKey: 'key',\n prefixCls: DEFAULT_PREFIX,\n emptyText: defaultEmpty\n }, tableProps);\n var prefixCls = props.prefixCls,\n className = props.className,\n rowClassName = props.rowClassName,\n style = props.style,\n data = props.data,\n rowKey = props.rowKey,\n scroll = props.scroll,\n tableLayout = props.tableLayout,\n direction = props.direction,\n title = props.title,\n footer = props.footer,\n summary = props.summary,\n caption = props.caption,\n id = props.id,\n showHeader = props.showHeader,\n components = props.components,\n emptyText = props.emptyText,\n onRow = props.onRow,\n onHeaderRow = props.onHeaderRow,\n onScroll = props.onScroll,\n internalHooks = props.internalHooks,\n transformColumns = props.transformColumns,\n internalRefs = props.internalRefs,\n tailor = props.tailor,\n getContainerWidth = props.getContainerWidth,\n sticky = props.sticky,\n _props$rowHoverable = props.rowHoverable,\n rowHoverable = _props$rowHoverable === void 0 ? true : _props$rowHoverable;\n var mergedData = data || EMPTY_DATA;\n var hasData = !!mergedData.length;\n var useInternalHooks = internalHooks === INTERNAL_HOOKS;\n\n // ===================== Warning ======================\n if (process.env.NODE_ENV !== 'production') {\n ['onRowClick', 'onRowDoubleClick', 'onRowContextMenu', 'onRowMouseEnter', 'onRowMouseLeave'].forEach(function (name) {\n warning(props[name] === undefined, \"`\".concat(name, \"` is removed, please use `onRow` instead.\"));\n });\n warning(!('getBodyWrapper' in props), '`getBodyWrapper` is deprecated, please use custom `components` instead.');\n }\n\n // ==================== Customize =====================\n var getComponent = React.useCallback(function (path, defaultComponent) {\n return getValue(components, path) || defaultComponent;\n }, [components]);\n var getRowKey = React.useMemo(function () {\n if (typeof rowKey === 'function') {\n return rowKey;\n }\n return function (record) {\n var key = record && record[rowKey];\n if (process.env.NODE_ENV !== 'production') {\n warning(key !== undefined, 'Each record in table should have a unique `key` prop, or set `rowKey` to an unique primary key.');\n }\n return key;\n };\n }, [rowKey]);\n var customizeScrollBody = getComponent(['body']);\n\n // ====================== Hover =======================\n var _useHover = useHover(),\n _useHover2 = _slicedToArray(_useHover, 3),\n startRow = _useHover2[0],\n endRow = _useHover2[1],\n onHover = _useHover2[2];\n\n // ====================== Expand ======================\n var _useExpand = useExpand(props, mergedData, getRowKey),\n _useExpand2 = _slicedToArray(_useExpand, 6),\n expandableConfig = _useExpand2[0],\n expandableType = _useExpand2[1],\n mergedExpandedKeys = _useExpand2[2],\n mergedExpandIcon = _useExpand2[3],\n mergedChildrenColumnName = _useExpand2[4],\n onTriggerExpand = _useExpand2[5];\n\n // ====================== Column ======================\n var scrollX = scroll === null || scroll === void 0 ? void 0 : scroll.x;\n var _React$useState = React.useState(0),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n componentWidth = _React$useState2[0],\n setComponentWidth = _React$useState2[1];\n var _useColumns = useColumns(_objectSpread(_objectSpread(_objectSpread({}, props), expandableConfig), {}, {\n expandable: !!expandableConfig.expandedRowRender,\n columnTitle: expandableConfig.columnTitle,\n expandedKeys: mergedExpandedKeys,\n getRowKey: getRowKey,\n // https://github.com/ant-design/ant-design/issues/23894\n onTriggerExpand: onTriggerExpand,\n expandIcon: mergedExpandIcon,\n expandIconColumnIndex: expandableConfig.expandIconColumnIndex,\n direction: direction,\n scrollWidth: useInternalHooks && tailor && typeof scrollX === 'number' ? scrollX : null,\n clientWidth: componentWidth\n }), useInternalHooks ? transformColumns : null),\n _useColumns2 = _slicedToArray(_useColumns, 4),\n columns = _useColumns2[0],\n flattenColumns = _useColumns2[1],\n flattenScrollX = _useColumns2[2],\n hasGapFixed = _useColumns2[3];\n var mergedScrollX = flattenScrollX !== null && flattenScrollX !== void 0 ? flattenScrollX : scrollX;\n var columnContext = React.useMemo(function () {\n return {\n columns: columns,\n flattenColumns: flattenColumns\n };\n }, [columns, flattenColumns]);\n\n // ======================= Refs =======================\n var fullTableRef = React.useRef();\n var scrollHeaderRef = React.useRef();\n var scrollBodyRef = React.useRef();\n var scrollBodyContainerRef = React.useRef();\n React.useImperativeHandle(ref, function () {\n return {\n nativeElement: fullTableRef.current,\n scrollTo: function scrollTo(config) {\n var _scrollBodyRef$curren3;\n if (scrollBodyRef.current instanceof HTMLElement) {\n // Native scroll\n var index = config.index,\n top = config.top,\n key = config.key;\n if (validNumberValue(top)) {\n var _scrollBodyRef$curren;\n (_scrollBodyRef$curren = scrollBodyRef.current) === null || _scrollBodyRef$curren === void 0 || _scrollBodyRef$curren.scrollTo({\n top: top\n });\n } else {\n var _scrollBodyRef$curren2;\n var mergedKey = key !== null && key !== void 0 ? key : getRowKey(mergedData[index]);\n (_scrollBodyRef$curren2 = scrollBodyRef.current.querySelector(\"[data-row-key=\\\"\".concat(mergedKey, \"\\\"]\"))) === null || _scrollBodyRef$curren2 === void 0 || _scrollBodyRef$curren2.scrollIntoView();\n }\n } else if ((_scrollBodyRef$curren3 = scrollBodyRef.current) !== null && _scrollBodyRef$curren3 !== void 0 && _scrollBodyRef$curren3.scrollTo) {\n // Pass to proxy\n scrollBodyRef.current.scrollTo(config);\n }\n }\n };\n });\n\n // ====================== Scroll ======================\n var scrollSummaryRef = React.useRef();\n var _React$useState3 = React.useState(false),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n pingedLeft = _React$useState4[0],\n setPingedLeft = _React$useState4[1];\n var _React$useState5 = React.useState(false),\n _React$useState6 = _slicedToArray(_React$useState5, 2),\n pingedRight = _React$useState6[0],\n setPingedRight = _React$useState6[1];\n var _useLayoutState = useLayoutState(new Map()),\n _useLayoutState2 = _slicedToArray(_useLayoutState, 2),\n colsWidths = _useLayoutState2[0],\n updateColsWidths = _useLayoutState2[1];\n\n // Convert map to number width\n var colsKeys = getColumnsKey(flattenColumns);\n var pureColWidths = colsKeys.map(function (columnKey) {\n return colsWidths.get(columnKey);\n });\n var colWidths = React.useMemo(function () {\n return pureColWidths;\n }, [pureColWidths.join('_')]);\n var stickyOffsets = useStickyOffsets(colWidths, flattenColumns, direction);\n var fixHeader = scroll && validateValue(scroll.y);\n var horizonScroll = scroll && validateValue(mergedScrollX) || Boolean(expandableConfig.fixed);\n var fixColumn = horizonScroll && flattenColumns.some(function (_ref) {\n var fixed = _ref.fixed;\n return fixed;\n });\n\n // Sticky\n var stickyRef = React.useRef();\n var _useSticky = useSticky(sticky, prefixCls),\n isSticky = _useSticky.isSticky,\n offsetHeader = _useSticky.offsetHeader,\n offsetSummary = _useSticky.offsetSummary,\n offsetScroll = _useSticky.offsetScroll,\n stickyClassName = _useSticky.stickyClassName,\n container = _useSticky.container;\n\n // Footer (Fix footer must fixed header)\n var summaryNode = React.useMemo(function () {\n return summary === null || summary === void 0 ? void 0 : summary(mergedData);\n }, [summary, mergedData]);\n var fixFooter = (fixHeader || isSticky) && /*#__PURE__*/React.isValidElement(summaryNode) && summaryNode.type === Summary && summaryNode.props.fixed;\n\n // Scroll\n var scrollXStyle;\n var scrollYStyle;\n var scrollTableStyle;\n if (fixHeader) {\n scrollYStyle = {\n overflowY: hasData ? 'scroll' : 'auto',\n maxHeight: scroll.y\n };\n }\n if (horizonScroll) {\n scrollXStyle = {\n overflowX: 'auto'\n };\n // When no vertical scrollbar, should hide it\n // https://github.com/ant-design/ant-design/pull/20705\n // https://github.com/ant-design/ant-design/issues/21879\n if (!fixHeader) {\n scrollYStyle = {\n overflowY: 'hidden'\n };\n }\n scrollTableStyle = {\n width: mergedScrollX === true ? 'auto' : mergedScrollX,\n minWidth: '100%'\n };\n }\n var onColumnResize = React.useCallback(function (columnKey, width) {\n if (isVisible(fullTableRef.current)) {\n updateColsWidths(function (widths) {\n if (widths.get(columnKey) !== width) {\n var newWidths = new Map(widths);\n newWidths.set(columnKey, width);\n return newWidths;\n }\n return widths;\n });\n }\n }, []);\n var _useTimeoutLock = useTimeoutLock(null),\n _useTimeoutLock2 = _slicedToArray(_useTimeoutLock, 2),\n setScrollTarget = _useTimeoutLock2[0],\n getScrollTarget = _useTimeoutLock2[1];\n function forceScroll(scrollLeft, target) {\n if (!target) {\n return;\n }\n if (typeof target === 'function') {\n target(scrollLeft);\n } else if (target.scrollLeft !== scrollLeft) {\n target.scrollLeft = scrollLeft;\n\n // Delay to force scroll position if not sync\n // ref: https://github.com/ant-design/ant-design/issues/37179\n if (target.scrollLeft !== scrollLeft) {\n setTimeout(function () {\n target.scrollLeft = scrollLeft;\n }, 0);\n }\n }\n }\n var onInternalScroll = useEvent(function (_ref2) {\n var currentTarget = _ref2.currentTarget,\n scrollLeft = _ref2.scrollLeft;\n var isRTL = direction === 'rtl';\n var mergedScrollLeft = typeof scrollLeft === 'number' ? scrollLeft : currentTarget.scrollLeft;\n var compareTarget = currentTarget || EMPTY_SCROLL_TARGET;\n if (!getScrollTarget() || getScrollTarget() === compareTarget) {\n var _stickyRef$current;\n setScrollTarget(compareTarget);\n forceScroll(mergedScrollLeft, scrollHeaderRef.current);\n forceScroll(mergedScrollLeft, scrollBodyRef.current);\n forceScroll(mergedScrollLeft, scrollSummaryRef.current);\n forceScroll(mergedScrollLeft, (_stickyRef$current = stickyRef.current) === null || _stickyRef$current === void 0 ? void 0 : _stickyRef$current.setScrollLeft);\n }\n var measureTarget = currentTarget || scrollHeaderRef.current;\n if (measureTarget) {\n var scrollWidth = typeof mergedScrollX === 'number' ? mergedScrollX : measureTarget.scrollWidth;\n var clientWidth = measureTarget.clientWidth;\n // There is no space to scroll\n if (scrollWidth === clientWidth) {\n setPingedLeft(false);\n setPingedRight(false);\n return;\n }\n if (isRTL) {\n setPingedLeft(-mergedScrollLeft < scrollWidth - clientWidth);\n setPingedRight(-mergedScrollLeft > 0);\n } else {\n setPingedLeft(mergedScrollLeft > 0);\n setPingedRight(mergedScrollLeft < scrollWidth - clientWidth);\n }\n }\n });\n var onBodyScroll = useEvent(function (e) {\n onInternalScroll(e);\n onScroll === null || onScroll === void 0 || onScroll(e);\n });\n var triggerOnScroll = function triggerOnScroll() {\n if (horizonScroll && scrollBodyRef.current) {\n var _scrollBodyRef$curren4;\n onInternalScroll({\n currentTarget: getDOM(scrollBodyRef.current),\n scrollLeft: (_scrollBodyRef$curren4 = scrollBodyRef.current) === null || _scrollBodyRef$curren4 === void 0 ? void 0 : _scrollBodyRef$curren4.scrollLeft\n });\n } else {\n setPingedLeft(false);\n setPingedRight(false);\n }\n };\n var onFullTableResize = function onFullTableResize(_ref3) {\n var _stickyRef$current2;\n var width = _ref3.width;\n (_stickyRef$current2 = stickyRef.current) === null || _stickyRef$current2 === void 0 || _stickyRef$current2.checkScrollBarVisible();\n var mergedWidth = fullTableRef.current ? fullTableRef.current.offsetWidth : width;\n if (useInternalHooks && getContainerWidth && fullTableRef.current) {\n mergedWidth = getContainerWidth(fullTableRef.current, mergedWidth) || mergedWidth;\n }\n if (mergedWidth !== componentWidth) {\n triggerOnScroll();\n setComponentWidth(mergedWidth);\n }\n };\n\n // Sync scroll bar when init or `horizonScroll`, `data` and `columns.length` changed\n var mounted = React.useRef(false);\n React.useEffect(function () {\n // onFullTableResize will be trigger once when ResizeObserver is mounted\n // This will reduce one duplicated triggerOnScroll time\n if (mounted.current) {\n triggerOnScroll();\n }\n }, [horizonScroll, data, columns.length]);\n React.useEffect(function () {\n mounted.current = true;\n }, []);\n\n // ===================== Effects ======================\n var _React$useState7 = React.useState(0),\n _React$useState8 = _slicedToArray(_React$useState7, 2),\n scrollbarSize = _React$useState8[0],\n setScrollbarSize = _React$useState8[1];\n var _React$useState9 = React.useState(true),\n _React$useState10 = _slicedToArray(_React$useState9, 2),\n supportSticky = _React$useState10[0],\n setSupportSticky = _React$useState10[1]; // Only IE not support, we mark as support first\n\n React.useEffect(function () {\n if (!tailor || !useInternalHooks) {\n if (scrollBodyRef.current instanceof Element) {\n setScrollbarSize(getTargetScrollBarSize(scrollBodyRef.current).width);\n } else {\n setScrollbarSize(getTargetScrollBarSize(scrollBodyContainerRef.current).width);\n }\n }\n setSupportSticky(isStyleSupport('position', 'sticky'));\n }, []);\n\n // ================== INTERNAL HOOKS ==================\n React.useEffect(function () {\n if (useInternalHooks && internalRefs) {\n internalRefs.body.current = scrollBodyRef.current;\n }\n });\n\n // ========================================================================\n // == Render ==\n // ========================================================================\n // =================== Render: Func ===================\n var renderFixedHeaderTable = React.useCallback(function (fixedHolderPassProps) {\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Header, fixedHolderPassProps), fixFooter === 'top' && /*#__PURE__*/React.createElement(Footer, fixedHolderPassProps, summaryNode));\n }, [fixFooter, summaryNode]);\n var renderFixedFooterTable = React.useCallback(function (fixedHolderPassProps) {\n return /*#__PURE__*/React.createElement(Footer, fixedHolderPassProps, summaryNode);\n }, [summaryNode]);\n\n // =================== Render: Node ===================\n var TableComponent = getComponent(['table'], 'table');\n\n // Table layout\n var mergedTableLayout = React.useMemo(function () {\n if (tableLayout) {\n return tableLayout;\n }\n // https://github.com/ant-design/ant-design/issues/25227\n // When scroll.x is max-content, no need to fix table layout\n // it's width should stretch out to fit content\n if (fixColumn) {\n return mergedScrollX === 'max-content' ? 'auto' : 'fixed';\n }\n if (fixHeader || isSticky || flattenColumns.some(function (_ref4) {\n var ellipsis = _ref4.ellipsis;\n return ellipsis;\n })) {\n return 'fixed';\n }\n return 'auto';\n }, [fixHeader, fixColumn, flattenColumns, tableLayout, isSticky]);\n var groupTableNode;\n\n // Header props\n var headerProps = {\n colWidths: colWidths,\n columCount: flattenColumns.length,\n stickyOffsets: stickyOffsets,\n onHeaderRow: onHeaderRow,\n fixHeader: fixHeader,\n scroll: scroll\n };\n\n // Empty\n var emptyNode = React.useMemo(function () {\n if (hasData) {\n return null;\n }\n if (typeof emptyText === 'function') {\n return emptyText();\n }\n return emptyText;\n }, [hasData, emptyText]);\n\n // Body\n var bodyTable = /*#__PURE__*/React.createElement(Body, {\n data: mergedData,\n measureColumnWidth: fixHeader || horizonScroll || isSticky\n });\n var bodyColGroup = /*#__PURE__*/React.createElement(ColGroup, {\n colWidths: flattenColumns.map(function (_ref5) {\n var width = _ref5.width;\n return width;\n }),\n columns: flattenColumns\n });\n var captionElement = caption !== null && caption !== undefined ? /*#__PURE__*/React.createElement(\"caption\", {\n className: \"\".concat(prefixCls, \"-caption\")\n }, caption) : undefined;\n var dataProps = pickAttrs(props, {\n data: true\n });\n var ariaProps = pickAttrs(props, {\n aria: true\n });\n if (fixHeader || isSticky) {\n // >>>>>> Fixed Header\n var bodyContent;\n if (typeof customizeScrollBody === 'function') {\n bodyContent = customizeScrollBody(mergedData, {\n scrollbarSize: scrollbarSize,\n ref: scrollBodyRef,\n onScroll: onInternalScroll\n });\n headerProps.colWidths = flattenColumns.map(function (_ref6, index) {\n var width = _ref6.width;\n var colWidth = index === flattenColumns.length - 1 ? width - scrollbarSize : width;\n if (typeof colWidth === 'number' && !Number.isNaN(colWidth)) {\n return colWidth;\n }\n if (process.env.NODE_ENV !== 'production') {\n warning(props.columns.length === 0, 'When use `components.body` with render props. Each column should have a fixed `width` value.');\n }\n return 0;\n });\n } else {\n bodyContent = /*#__PURE__*/React.createElement(\"div\", {\n style: _objectSpread(_objectSpread({}, scrollXStyle), scrollYStyle),\n onScroll: onBodyScroll,\n ref: scrollBodyRef,\n className: classNames(\"\".concat(prefixCls, \"-body\"))\n }, /*#__PURE__*/React.createElement(TableComponent, _extends({\n style: _objectSpread(_objectSpread({}, scrollTableStyle), {}, {\n tableLayout: mergedTableLayout\n })\n }, ariaProps), captionElement, bodyColGroup, bodyTable, !fixFooter && summaryNode && /*#__PURE__*/React.createElement(Footer, {\n stickyOffsets: stickyOffsets,\n flattenColumns: flattenColumns\n }, summaryNode)));\n }\n\n // Fixed holder share the props\n var fixedHolderProps = _objectSpread(_objectSpread(_objectSpread({\n noData: !mergedData.length,\n maxContentScroll: horizonScroll && mergedScrollX === 'max-content'\n }, headerProps), columnContext), {}, {\n direction: direction,\n stickyClassName: stickyClassName,\n onScroll: onInternalScroll\n });\n groupTableNode = /*#__PURE__*/React.createElement(React.Fragment, null, showHeader !== false && /*#__PURE__*/React.createElement(FixedHolder, _extends({}, fixedHolderProps, {\n stickyTopOffset: offsetHeader,\n className: \"\".concat(prefixCls, \"-header\"),\n ref: scrollHeaderRef\n }), renderFixedHeaderTable), bodyContent, fixFooter && fixFooter !== 'top' && /*#__PURE__*/React.createElement(FixedHolder, _extends({}, fixedHolderProps, {\n stickyBottomOffset: offsetSummary,\n className: \"\".concat(prefixCls, \"-summary\"),\n ref: scrollSummaryRef\n }), renderFixedFooterTable), isSticky && scrollBodyRef.current && scrollBodyRef.current instanceof Element && /*#__PURE__*/React.createElement(StickyScrollBar, {\n ref: stickyRef,\n offsetScroll: offsetScroll,\n scrollBodyRef: scrollBodyRef,\n onScroll: onInternalScroll,\n container: container\n }));\n } else {\n // >>>>>> Unique table\n groupTableNode = /*#__PURE__*/React.createElement(\"div\", {\n style: _objectSpread(_objectSpread({}, scrollXStyle), scrollYStyle),\n className: classNames(\"\".concat(prefixCls, \"-content\")),\n onScroll: onInternalScroll,\n ref: scrollBodyRef\n }, /*#__PURE__*/React.createElement(TableComponent, _extends({\n style: _objectSpread(_objectSpread({}, scrollTableStyle), {}, {\n tableLayout: mergedTableLayout\n })\n }, ariaProps), captionElement, bodyColGroup, showHeader !== false && /*#__PURE__*/React.createElement(Header, _extends({}, headerProps, columnContext)), bodyTable, summaryNode && /*#__PURE__*/React.createElement(Footer, {\n stickyOffsets: stickyOffsets,\n flattenColumns: flattenColumns\n }, summaryNode)));\n }\n var fullTable = /*#__PURE__*/React.createElement(\"div\", _extends({\n className: classNames(prefixCls, className, _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-rtl\"), direction === 'rtl'), \"\".concat(prefixCls, \"-ping-left\"), pingedLeft), \"\".concat(prefixCls, \"-ping-right\"), pingedRight), \"\".concat(prefixCls, \"-layout-fixed\"), tableLayout === 'fixed'), \"\".concat(prefixCls, \"-fixed-header\"), fixHeader), \"\".concat(prefixCls, \"-fixed-column\"), fixColumn), \"\".concat(prefixCls, \"-fixed-column-gapped\"), fixColumn && hasGapFixed), \"\".concat(prefixCls, \"-scroll-horizontal\"), horizonScroll), \"\".concat(prefixCls, \"-has-fix-left\"), flattenColumns[0] && flattenColumns[0].fixed), \"\".concat(prefixCls, \"-has-fix-right\"), flattenColumns[flattenColumns.length - 1] && flattenColumns[flattenColumns.length - 1].fixed === 'right')),\n style: style,\n id: id,\n ref: fullTableRef\n }, dataProps), title && /*#__PURE__*/React.createElement(Panel, {\n className: \"\".concat(prefixCls, \"-title\")\n }, title(mergedData)), /*#__PURE__*/React.createElement(\"div\", {\n ref: scrollBodyContainerRef,\n className: \"\".concat(prefixCls, \"-container\")\n }, groupTableNode), footer && /*#__PURE__*/React.createElement(Panel, {\n className: \"\".concat(prefixCls, \"-footer\")\n }, footer(mergedData)));\n if (horizonScroll) {\n fullTable = /*#__PURE__*/React.createElement(ResizeObserver, {\n onResize: onFullTableResize\n }, fullTable);\n }\n var fixedInfoList = useFixedInfo(flattenColumns, stickyOffsets, direction);\n var TableContextValue = React.useMemo(function () {\n return {\n // Scroll\n scrollX: mergedScrollX,\n // Table\n prefixCls: prefixCls,\n getComponent: getComponent,\n scrollbarSize: scrollbarSize,\n direction: direction,\n fixedInfoList: fixedInfoList,\n isSticky: isSticky,\n supportSticky: supportSticky,\n componentWidth: componentWidth,\n fixHeader: fixHeader,\n fixColumn: fixColumn,\n horizonScroll: horizonScroll,\n // Body\n tableLayout: mergedTableLayout,\n rowClassName: rowClassName,\n expandedRowClassName: expandableConfig.expandedRowClassName,\n expandIcon: mergedExpandIcon,\n expandableType: expandableType,\n expandRowByClick: expandableConfig.expandRowByClick,\n expandedRowRender: expandableConfig.expandedRowRender,\n onTriggerExpand: onTriggerExpand,\n expandIconColumnIndex: expandableConfig.expandIconColumnIndex,\n indentSize: expandableConfig.indentSize,\n allColumnsFixedLeft: flattenColumns.every(function (col) {\n return col.fixed === 'left';\n }),\n emptyNode: emptyNode,\n // Column\n columns: columns,\n flattenColumns: flattenColumns,\n onColumnResize: onColumnResize,\n // Row\n hoverStartRow: startRow,\n hoverEndRow: endRow,\n onHover: onHover,\n rowExpandable: expandableConfig.rowExpandable,\n onRow: onRow,\n getRowKey: getRowKey,\n expandedKeys: mergedExpandedKeys,\n childrenColumnName: mergedChildrenColumnName,\n rowHoverable: rowHoverable\n };\n }, [\n // Scroll\n mergedScrollX,\n // Table\n prefixCls, getComponent, scrollbarSize, direction, fixedInfoList, isSticky, supportSticky, componentWidth, fixHeader, fixColumn, horizonScroll,\n // Body\n mergedTableLayout, rowClassName, expandableConfig.expandedRowClassName, mergedExpandIcon, expandableType, expandableConfig.expandRowByClick, expandableConfig.expandedRowRender, onTriggerExpand, expandableConfig.expandIconColumnIndex, expandableConfig.indentSize, emptyNode,\n // Column\n columns, flattenColumns, onColumnResize,\n // Row\n startRow, endRow, onHover, expandableConfig.rowExpandable, onRow, getRowKey, mergedExpandedKeys, mergedChildrenColumnName, rowHoverable]);\n return /*#__PURE__*/React.createElement(TableContext.Provider, {\n value: TableContextValue\n }, fullTable);\n}\nvar RefTable = /*#__PURE__*/React.forwardRef(Table);\nif (process.env.NODE_ENV !== 'production') {\n RefTable.displayName = 'Table';\n}\nexport function genTable(shouldTriggerRender) {\n return makeImmutable(RefTable, shouldTriggerRender);\n}\nvar ImmutableTable = genTable();\nImmutableTable.EXPAND_COLUMN = EXPAND_COLUMN;\nImmutableTable.INTERNAL_HOOKS = INTERNAL_HOOKS;\nImmutableTable.Column = Column;\nImmutableTable.ColumnGroup = ColumnGroup;\nImmutableTable.Summary = FooterComponents;\nexport default ImmutableTable;","import { createContext } from '@rc-component/context';\nexport var StaticContext = createContext(null);\nexport var GridContext = createContext(null);","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport { useContext } from '@rc-component/context';\nimport classNames from 'classnames';\nimport * as React from 'react';\nimport { getCellProps } from \"../Body/BodyRow\";\nimport Cell from \"../Cell\";\nimport { GridContext } from \"./context\";\n/**\n * Return the width of the column by `colSpan`.\n * When `colSpan` is `0` will be trade as `1`.\n */\nexport function getColumnWidth(colIndex, colSpan, columnsOffset) {\n var mergedColSpan = colSpan || 1;\n return columnsOffset[colIndex + mergedColSpan] - (columnsOffset[colIndex] || 0);\n}\nfunction VirtualCell(props) {\n var rowInfo = props.rowInfo,\n column = props.column,\n colIndex = props.colIndex,\n indent = props.indent,\n index = props.index,\n component = props.component,\n renderIndex = props.renderIndex,\n record = props.record,\n style = props.style,\n className = props.className,\n inverse = props.inverse,\n getHeight = props.getHeight;\n var render = column.render,\n dataIndex = column.dataIndex,\n columnClassName = column.className,\n colWidth = column.width;\n var _useContext = useContext(GridContext, ['columnsOffset']),\n columnsOffset = _useContext.columnsOffset;\n var _getCellProps = getCellProps(rowInfo, column, colIndex, indent, index),\n key = _getCellProps.key,\n fixedInfo = _getCellProps.fixedInfo,\n appendCellNode = _getCellProps.appendCellNode,\n additionalCellProps = _getCellProps.additionalCellProps;\n var cellStyle = additionalCellProps.style,\n _additionalCellProps$ = additionalCellProps.colSpan,\n colSpan = _additionalCellProps$ === void 0 ? 1 : _additionalCellProps$,\n _additionalCellProps$2 = additionalCellProps.rowSpan,\n rowSpan = _additionalCellProps$2 === void 0 ? 1 : _additionalCellProps$2;\n\n // ========================= ColWidth =========================\n // column width\n var startColIndex = colIndex - 1;\n var concatColWidth = getColumnWidth(startColIndex, colSpan, columnsOffset);\n\n // margin offset\n var marginOffset = colSpan > 1 ? colWidth - concatColWidth : 0;\n\n // ========================== Style ===========================\n var mergedStyle = _objectSpread(_objectSpread(_objectSpread({}, cellStyle), style), {}, {\n flex: \"0 0 \".concat(concatColWidth, \"px\"),\n width: \"\".concat(concatColWidth, \"px\"),\n marginRight: marginOffset,\n pointerEvents: 'auto'\n });\n\n // When `colSpan` or `rowSpan` is `0`, should skip render.\n var needHide = React.useMemo(function () {\n if (inverse) {\n return rowSpan <= 1;\n } else {\n return colSpan === 0 || rowSpan === 0 || rowSpan > 1;\n }\n }, [rowSpan, colSpan, inverse]);\n\n // 0 rowSpan or colSpan should not render\n if (needHide) {\n mergedStyle.visibility = 'hidden';\n } else if (inverse) {\n mergedStyle.height = getHeight === null || getHeight === void 0 ? void 0 : getHeight(rowSpan);\n }\n var mergedRender = needHide ? function () {\n return null;\n } : render;\n\n // ========================== Render ==========================\n var cellSpan = {};\n\n // Virtual should reset `colSpan` & `rowSpan`\n if (rowSpan === 0 || colSpan === 0) {\n cellSpan.rowSpan = 1;\n cellSpan.colSpan = 1;\n }\n return /*#__PURE__*/React.createElement(Cell, _extends({\n className: classNames(columnClassName, className),\n ellipsis: column.ellipsis,\n align: column.align,\n scope: column.rowScope,\n component: component,\n prefixCls: rowInfo.prefixCls,\n key: key,\n record: record,\n index: index,\n renderIndex: renderIndex,\n dataIndex: dataIndex,\n render: mergedRender,\n shouldCellUpdate: column.shouldCellUpdate\n }, fixedInfo, {\n appendNode: appendCellNode,\n additionalProps: _objectSpread(_objectSpread({}, additionalCellProps), {}, {\n style: mergedStyle\n }, cellSpan)\n }));\n}\nexport default VirtualCell;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"data\", \"index\", \"className\", \"rowKey\", \"style\", \"extra\", \"getHeight\"];\nimport { useContext } from '@rc-component/context';\nimport classNames from 'classnames';\nimport * as React from 'react';\nimport Cell from \"../Cell\";\nimport TableContext, { responseImmutable } from \"../context/TableContext\";\nimport useRowInfo from \"../hooks/useRowInfo\";\nimport VirtualCell from \"./VirtualCell\";\nimport { StaticContext } from \"./context\";\nvar BodyLine = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var data = props.data,\n index = props.index,\n className = props.className,\n rowKey = props.rowKey,\n style = props.style,\n extra = props.extra,\n getHeight = props.getHeight,\n restProps = _objectWithoutProperties(props, _excluded);\n var record = data.record,\n indent = data.indent,\n renderIndex = data.index;\n var _useContext = useContext(TableContext, ['prefixCls', 'flattenColumns', 'fixColumn', 'componentWidth', 'scrollX']),\n scrollX = _useContext.scrollX,\n flattenColumns = _useContext.flattenColumns,\n prefixCls = _useContext.prefixCls,\n fixColumn = _useContext.fixColumn,\n componentWidth = _useContext.componentWidth;\n var _useContext2 = useContext(StaticContext, ['getComponent']),\n getComponent = _useContext2.getComponent;\n var rowInfo = useRowInfo(record, rowKey, index, indent);\n var RowComponent = getComponent(['body', 'row'], 'div');\n var cellComponent = getComponent(['body', 'cell'], 'div');\n\n // ========================== Expand ==========================\n var rowSupportExpand = rowInfo.rowSupportExpand,\n expanded = rowInfo.expanded,\n rowProps = rowInfo.rowProps,\n expandedRowRender = rowInfo.expandedRowRender,\n expandedRowClassName = rowInfo.expandedRowClassName;\n var expandRowNode;\n if (rowSupportExpand && expanded) {\n var expandContent = expandedRowRender(record, index, indent + 1, expanded);\n var computedExpandedRowClassName = expandedRowClassName === null || expandedRowClassName === void 0 ? void 0 : expandedRowClassName(record, index, indent);\n var additionalProps = {};\n if (fixColumn) {\n additionalProps = {\n style: _defineProperty({}, '--virtual-width', \"\".concat(componentWidth, \"px\"))\n };\n }\n var rowCellCls = \"\".concat(prefixCls, \"-expanded-row-cell\");\n expandRowNode = /*#__PURE__*/React.createElement(RowComponent, {\n className: classNames(\"\".concat(prefixCls, \"-expanded-row\"), \"\".concat(prefixCls, \"-expanded-row-level-\").concat(indent + 1), computedExpandedRowClassName)\n }, /*#__PURE__*/React.createElement(Cell, {\n component: cellComponent,\n prefixCls: prefixCls,\n className: classNames(rowCellCls, _defineProperty({}, \"\".concat(rowCellCls, \"-fixed\"), fixColumn)),\n additionalProps: additionalProps\n }, expandContent));\n }\n\n // ========================== Render ==========================\n var rowStyle = _objectSpread(_objectSpread({}, style), {}, {\n width: scrollX\n });\n if (extra) {\n rowStyle.position = 'absolute';\n rowStyle.pointerEvents = 'none';\n }\n var rowNode = /*#__PURE__*/React.createElement(RowComponent, _extends({}, rowProps, restProps, {\n \"data-row-key\": rowKey,\n ref: rowSupportExpand ? null : ref,\n className: classNames(className, \"\".concat(prefixCls, \"-row\"), rowProps === null || rowProps === void 0 ? void 0 : rowProps.className, _defineProperty({}, \"\".concat(prefixCls, \"-row-extra\"), extra)),\n style: _objectSpread(_objectSpread({}, rowStyle), rowProps === null || rowProps === void 0 ? void 0 : rowProps.style)\n }), flattenColumns.map(function (column, colIndex) {\n return /*#__PURE__*/React.createElement(VirtualCell, {\n key: colIndex,\n component: cellComponent,\n rowInfo: rowInfo,\n column: column,\n colIndex: colIndex,\n indent: indent,\n index: index,\n renderIndex: renderIndex,\n record: record,\n inverse: extra,\n getHeight: getHeight\n });\n }));\n if (rowSupportExpand) {\n return /*#__PURE__*/React.createElement(\"div\", {\n ref: ref\n }, rowNode, expandRowNode);\n }\n return rowNode;\n});\nvar ResponseBodyLine = responseImmutable(BodyLine);\nif (process.env.NODE_ENV !== 'production') {\n ResponseBodyLine.displayName = 'BodyLine';\n}\nexport default ResponseBodyLine;","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport { useContext } from '@rc-component/context';\nimport VirtualList from 'rc-virtual-list';\nimport * as React from 'react';\nimport TableContext, { responseImmutable } from \"../context/TableContext\";\nimport useFlattenRecords from \"../hooks/useFlattenRecords\";\nimport BodyLine from \"./BodyLine\";\nimport { GridContext, StaticContext } from \"./context\";\nvar Grid = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var data = props.data,\n onScroll = props.onScroll;\n var _useContext = useContext(TableContext, ['flattenColumns', 'onColumnResize', 'getRowKey', 'prefixCls', 'expandedKeys', 'childrenColumnName', 'scrollX']),\n flattenColumns = _useContext.flattenColumns,\n onColumnResize = _useContext.onColumnResize,\n getRowKey = _useContext.getRowKey,\n expandedKeys = _useContext.expandedKeys,\n prefixCls = _useContext.prefixCls,\n childrenColumnName = _useContext.childrenColumnName,\n scrollX = _useContext.scrollX;\n var _useContext2 = useContext(StaticContext),\n sticky = _useContext2.sticky,\n scrollY = _useContext2.scrollY,\n listItemHeight = _useContext2.listItemHeight,\n getComponent = _useContext2.getComponent,\n onTablePropScroll = _useContext2.onScroll;\n\n // =========================== Ref ============================\n var listRef = React.useRef();\n\n // =========================== Data ===========================\n var flattenData = useFlattenRecords(data, childrenColumnName, expandedKeys, getRowKey);\n\n // ========================== Column ==========================\n var columnsWidth = React.useMemo(function () {\n var total = 0;\n return flattenColumns.map(function (_ref) {\n var width = _ref.width,\n key = _ref.key;\n total += width;\n return [key, width, total];\n });\n }, [flattenColumns]);\n var columnsOffset = React.useMemo(function () {\n return columnsWidth.map(function (colWidth) {\n return colWidth[2];\n });\n }, [columnsWidth]);\n React.useEffect(function () {\n columnsWidth.forEach(function (_ref2) {\n var _ref3 = _slicedToArray(_ref2, 2),\n key = _ref3[0],\n width = _ref3[1];\n onColumnResize(key, width);\n });\n }, [columnsWidth]);\n\n // =========================== Ref ============================\n React.useImperativeHandle(ref, function () {\n var _listRef$current2;\n var obj = {\n scrollTo: function scrollTo(config) {\n var _listRef$current;\n (_listRef$current = listRef.current) === null || _listRef$current === void 0 || _listRef$current.scrollTo(config);\n },\n nativeElement: (_listRef$current2 = listRef.current) === null || _listRef$current2 === void 0 ? void 0 : _listRef$current2.nativeElement\n };\n Object.defineProperty(obj, 'scrollLeft', {\n get: function get() {\n var _listRef$current3;\n return ((_listRef$current3 = listRef.current) === null || _listRef$current3 === void 0 ? void 0 : _listRef$current3.getScrollInfo().x) || 0;\n },\n set: function set(value) {\n var _listRef$current4;\n (_listRef$current4 = listRef.current) === null || _listRef$current4 === void 0 || _listRef$current4.scrollTo({\n left: value\n });\n }\n });\n return obj;\n });\n\n // ======================= Col/Row Span =======================\n var getRowSpan = function getRowSpan(column, index) {\n var _flattenData$index;\n var record = (_flattenData$index = flattenData[index]) === null || _flattenData$index === void 0 ? void 0 : _flattenData$index.record;\n var onCell = column.onCell;\n if (onCell) {\n var _cellProps$rowSpan;\n var cellProps = onCell(record, index);\n return (_cellProps$rowSpan = cellProps === null || cellProps === void 0 ? void 0 : cellProps.rowSpan) !== null && _cellProps$rowSpan !== void 0 ? _cellProps$rowSpan : 1;\n }\n return 1;\n };\n var extraRender = function extraRender(info) {\n var start = info.start,\n end = info.end,\n getSize = info.getSize,\n offsetY = info.offsetY;\n\n // Do nothing if no data\n if (end < 0) {\n return null;\n }\n\n // Find first rowSpan column\n var firstRowSpanColumns = flattenColumns.filter(\n // rowSpan is 0\n function (column) {\n return getRowSpan(column, start) === 0;\n });\n var startIndex = start;\n var _loop = function _loop(i) {\n firstRowSpanColumns = firstRowSpanColumns.filter(function (column) {\n return getRowSpan(column, i) === 0;\n });\n if (!firstRowSpanColumns.length) {\n startIndex = i;\n return 1; // break\n }\n };\n for (var i = start; i >= 0; i -= 1) {\n if (_loop(i)) break;\n }\n\n // Find last rowSpan column\n var lastRowSpanColumns = flattenColumns.filter(\n // rowSpan is not 1\n function (column) {\n return getRowSpan(column, end) !== 1;\n });\n var endIndex = end;\n var _loop2 = function _loop2(_i) {\n lastRowSpanColumns = lastRowSpanColumns.filter(function (column) {\n return getRowSpan(column, _i) !== 1;\n });\n if (!lastRowSpanColumns.length) {\n endIndex = Math.max(_i - 1, end);\n return 1; // break\n }\n };\n for (var _i = end; _i < flattenData.length; _i += 1) {\n if (_loop2(_i)) break;\n }\n\n // Collect the line who has rowSpan\n var spanLines = [];\n var _loop3 = function _loop3(_i2) {\n var item = flattenData[_i2];\n\n // This code will never reach, just incase\n if (!item) {\n return 1; // continue\n }\n if (flattenColumns.some(function (column) {\n return getRowSpan(column, _i2) > 1;\n })) {\n spanLines.push(_i2);\n }\n };\n for (var _i2 = startIndex; _i2 <= endIndex; _i2 += 1) {\n if (_loop3(_i2)) continue;\n }\n\n // Patch extra line on the page\n var nodes = spanLines.map(function (index) {\n var item = flattenData[index];\n var rowKey = getRowKey(item.record, index);\n var getHeight = function getHeight(rowSpan) {\n var endItemIndex = index + rowSpan - 1;\n var endItemKey = getRowKey(flattenData[endItemIndex].record, endItemIndex);\n var sizeInfo = getSize(rowKey, endItemKey);\n return sizeInfo.bottom - sizeInfo.top;\n };\n var sizeInfo = getSize(rowKey);\n return /*#__PURE__*/React.createElement(BodyLine, {\n key: index,\n data: item,\n rowKey: rowKey,\n index: index,\n style: {\n top: -offsetY + sizeInfo.top\n },\n extra: true,\n getHeight: getHeight\n });\n });\n return nodes;\n };\n\n // ========================= Context ==========================\n var gridContext = React.useMemo(function () {\n return {\n columnsOffset: columnsOffset\n };\n }, [columnsOffset]);\n\n // ========================== Render ==========================\n var tblPrefixCls = \"\".concat(prefixCls, \"-tbody\");\n\n // default 'div' in rc-virtual-list\n var wrapperComponent = getComponent(['body', 'wrapper']);\n\n // ========================== Sticky Scroll Bar ==========================\n var horizontalScrollBarStyle = {};\n if (sticky) {\n horizontalScrollBarStyle.position = 'sticky';\n horizontalScrollBarStyle.bottom = 0;\n if (_typeof(sticky) === 'object' && sticky.offsetScroll) {\n horizontalScrollBarStyle.bottom = sticky.offsetScroll;\n }\n }\n return /*#__PURE__*/React.createElement(GridContext.Provider, {\n value: gridContext\n }, /*#__PURE__*/React.createElement(VirtualList, {\n fullHeight: false,\n ref: listRef,\n prefixCls: \"\".concat(tblPrefixCls, \"-virtual\"),\n styles: {\n horizontalScrollBar: horizontalScrollBarStyle\n },\n className: tblPrefixCls,\n height: scrollY,\n itemHeight: listItemHeight || 24,\n data: flattenData,\n itemKey: function itemKey(item) {\n return getRowKey(item.record);\n },\n component: wrapperComponent,\n scrollWidth: scrollX,\n onVirtualScroll: function onVirtualScroll(_ref4) {\n var _listRef$current5;\n var x = _ref4.x;\n onScroll({\n currentTarget: (_listRef$current5 = listRef.current) === null || _listRef$current5 === void 0 ? void 0 : _listRef$current5.nativeElement,\n scrollLeft: x\n });\n },\n onScroll: onTablePropScroll,\n extraRender: extraRender\n }, function (item, index, itemProps) {\n var rowKey = getRowKey(item.record, index);\n return /*#__PURE__*/React.createElement(BodyLine, {\n data: item,\n rowKey: rowKey,\n index: index,\n style: itemProps.style\n });\n }));\n});\nvar ResponseGrid = responseImmutable(Grid);\nif (process.env.NODE_ENV !== 'production') {\n ResponseGrid.displayName = 'ResponseGrid';\n}\nexport default ResponseGrid;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport classNames from 'classnames';\nimport { useEvent, warning } from 'rc-util';\nimport * as React from 'react';\nimport { INTERNAL_HOOKS } from \"../constant\";\nimport { makeImmutable } from \"../context/TableContext\";\nimport Table, { DEFAULT_PREFIX } from \"../Table\";\nimport Grid from \"./BodyGrid\";\nimport { StaticContext } from \"./context\";\nimport getValue from \"rc-util/es/utils/get\";\nvar renderBody = function renderBody(rawData, props) {\n var ref = props.ref,\n onScroll = props.onScroll;\n return /*#__PURE__*/React.createElement(Grid, {\n ref: ref,\n data: rawData,\n onScroll: onScroll\n });\n};\nfunction VirtualTable(props, ref) {\n var data = props.data,\n columns = props.columns,\n scroll = props.scroll,\n sticky = props.sticky,\n _props$prefixCls = props.prefixCls,\n prefixCls = _props$prefixCls === void 0 ? DEFAULT_PREFIX : _props$prefixCls,\n className = props.className,\n listItemHeight = props.listItemHeight,\n components = props.components,\n onScroll = props.onScroll;\n var _ref = scroll || {},\n scrollX = _ref.x,\n scrollY = _ref.y;\n\n // Fill scrollX\n if (typeof scrollX !== 'number') {\n if (process.env.NODE_ENV !== 'production') {\n warning(!scrollX, '`scroll.x` in virtual table must be number.');\n }\n scrollX = 1;\n }\n\n // Fill scrollY\n if (typeof scrollY !== 'number') {\n scrollY = 500;\n if (process.env.NODE_ENV !== 'production') {\n warning(false, '`scroll.y` in virtual table must be number.');\n }\n }\n var getComponent = useEvent(function (path, defaultComponent) {\n return getValue(components, path) || defaultComponent;\n });\n\n // Memo this\n var onInternalScroll = useEvent(onScroll);\n\n // ========================= Context ==========================\n var context = React.useMemo(function () {\n return {\n sticky: sticky,\n scrollY: scrollY,\n listItemHeight: listItemHeight,\n getComponent: getComponent,\n onScroll: onInternalScroll\n };\n }, [sticky, scrollY, listItemHeight, getComponent, onInternalScroll]);\n\n // ========================== Render ==========================\n return /*#__PURE__*/React.createElement(StaticContext.Provider, {\n value: context\n }, /*#__PURE__*/React.createElement(Table, _extends({}, props, {\n className: classNames(className, \"\".concat(prefixCls, \"-virtual\")),\n scroll: _objectSpread(_objectSpread({}, scroll), {}, {\n x: scrollX\n }),\n components: _objectSpread(_objectSpread({}, components), {}, {\n // fix https://github.com/ant-design/ant-design/issues/48991\n body: data !== null && data !== void 0 && data.length ? renderBody : undefined\n }),\n columns: columns,\n internalHooks: INTERNAL_HOOKS,\n tailor: true,\n ref: ref\n })));\n}\nvar RefVirtualTable = /*#__PURE__*/React.forwardRef(VirtualTable);\nif (process.env.NODE_ENV !== 'production') {\n RefVirtualTable.displayName = 'VirtualTable';\n}\nexport function genVirtualTable(shouldTriggerRender) {\n return makeImmutable(RefVirtualTable, shouldTriggerRender);\n}\nexport default genVirtualTable();"],"names":["EXPAND_COLUMN","INTERNAL_HOOKS","_createImmutable","createImmutable","makeImmutable","responseImmutable","useImmutableMark","TableContext","createContext","PerfContext","React.createContext","INTERNAL_KEY_PREFIX","toArray","arr","getColumnsKey","columns","columnKeys","keys","column","_ref","key","dataIndex","mergedKey","validateValue","val","validNumberValue","value","isRenderCell","data","_typeof","React.isValidElement","useCellRender","record","renderIndex","children","render","shouldCellUpdate","perfRecord","React.useContext","mark","retData","useMemo","path","getValue","returnChildNode","returnCellProps","renderData","prev","next","_prev","_slicedToArray","prevRecord","_next","nextRecord","isEqual","inHoverRange","cellStartRow","cellRowSpan","startRow","endRow","cellEndRow","useHoverState","rowIndex","rowSpan","useContext","ctx","hovering","getTitleFromCellRenderChildren","ellipsis","rowType","title","ellipsisConfig","Cell","props","_ref2","_ref3","_legacyCellProps$colS","_ref4","_ref5","_legacyCellProps$rowS","_additionalProps$titl","_classNames","Component","scope","prefixCls","className","align","index","colSpan","fixLeft","fixRight","firstFixLeft","lastFixLeft","firstFixRight","lastFixRight","appendNode","_props$additionalProp","additionalProps","isSticky","cellPrefixCls","_useContext","supportSticky","allColumnsFixedLeft","rowHoverable","_useCellRender","_useCellRender2","childNode","legacyCellProps","fixedStyle","isFixLeft","isFixRight","mergedColSpan","mergedRowSpan","_useHoverState","_useHoverState2","onHover","onMouseEnter","useEvent","event","_additionalProps$onMo","onMouseLeave","_additionalProps$onMo2","mergedClassName","classNames","_defineProperty","alignStyle","mergedStyle","_objectSpread","mergedChildNode","React.createElement","_extends","Cell$1","React.memo","getCellFixedInfo","colStart","colEnd","stickyOffsets","direction","startColumn","endColumn","nextColumn","prevColumn","canLastFix","col","prevFixLeft","nextFixRight","nextFixLeft","prevFixRight","SummaryContext","SummaryCell","_ref$colSpan","_React$useContext","scrollColumnIndex","flattenColumns","lastIndex","fixedInfo","_excluded","FooterRow","_objectWithoutProperties","Summary","Row","Footer","lastColumnIndex","scrollColumn","summaryContext","React.useMemo","Footer$1","FooterComponents","Column","_","ColumnGroup","fillRecords","list","indent","childrenColumnName","expandedKeys","getRowKey","expanded","i","useFlattenRecords","item","useRowInfo","rowKey","recordIndex","context","expandableType","onTriggerExpand","rowExpandable","onRow","expandRowByClick","rowClassName","nestExpandable","rowSupportExpand","mergedExpandable","hasNestChildren","onInternalTriggerExpand","rowProps","onRowClick","onClick","_len","args","_key","computeRowClassName","columnsKey","ExpandedRow","cellComponent","isEmpty","scrollbarSize","fixHeader","fixColumn","componentWidth","horizonScroll","contentNode","getCellProps","rowInfo","colIndex","fixedInfoList","expandIconColumnIndex","indentSize","expandIcon","appendCellNode","React.Fragment","additionalCellProps","BodyRow","style","_props$indent","RowComponent","scopeCellComponent","expandedRowClassName","expandedRowRender","expandedRef","React.useRef","computedExpandedRowClassName","baseRowNode","columnClassName","_getCellProps","expandRowNode","expandContent","BodyRow$1","MeasureCell","columnKey","onColumnResize","cellRef","React.useEffect","ResizeObserver","MeasureRow","infoList","size","Body","measureColumnWidth","getComponent","emptyNode","flattenData","perfRef","WrapperComponent","trComponent","tdComponent","thComponent","rows","idx","Body$1","INTERNAL_COL_DEFINE","getExpandableProps","expandable","legacyExpandableConfig","config","ColGroup","colWidths","columCount","tableLayout","cols","len","mustInsert","width","minWidth","restAdditionalProps","useColumnWidth","cloneColumns","FixedHolder","React.forwardRef","ref","noData","stickyTopOffset","stickyBottomOffset","stickyClassName","onScroll","maxContentScroll","restProps","TableComponent","combinationScrollBarSize","scrollRef","setScrollRef","React.useCallback","element","fillRef","_scrollRef$current","onWheel","e","currentTarget","deltaX","_scrollRef$current2","allFlattenColumnsWithWidth","lastColumn","ScrollBarColumn","columnsWithScrollbar","_toConsumableArray","flattenColumnsWithScrollbar","headerStickyOffsets","right","left","mergedColumnWidth","FixedHolder$1","HeaderRow","cells","CellComponent","onHeaderRow","cell","cellIndex","parseHeaderRows","rootColumns","fillRowCells","currentColIndex","colSpans","subColumns","total","count","rowCount","_loop","Header","row","rowNode","Header$1","parseColWidth","totalWidth","useWidthColumns","scrollWidth","clientWidth","missWidthCount","colWidth","maxFitWidth","restWidth","restCount","avgWidth","realTotal","filledColumns","clone","colAvgWidth","scale","_excluded2","convertChildrenToColumns","node","nodeChildren","filterHiddenColumns","flatColumns","parentKey","fixed","parsedFixed","subColum","revertForRtl","useColumns","transformColumns","columnTitle","columnWidth","baseColumns","newColumns","withExpandColumns","expandColIndex","expandColumnIndex","fixedColumn","expandColumn","recordExpandable","icon","mergedColumns","finalColumns","hasGapFixed","lastLeftIndex","colFixed","_i","_colFixed","firstRightIndex","_i2","_colFixed2","_useWidthColumns","_useWidthColumns2","realScrollWidth","renderExpandIcon","onExpand","expandClassName","findAllChildrenKeys","dig","useExpand","mergedData","expandableConfig","expandedRowKeys","defaultExpandedRowKeys","defaultExpandAllRows","onExpandedRowsChange","mergedExpandIcon","mergedChildrenColumnName","_React$useState","React.useState","_React$useState2","innerExpandedKeys","setInnerExpandedKeys","mergedExpandedKeys","newExpandedKeys","hasKey","useFixedInfo","useLayoutState","defaultState","stateRef","useRef","_useState","useState","_useState2","forceUpdate","lastPromiseRef","updateBatchRef","setFrameState","updater","promise","prevBatch","prevState","batchUpdater","useEffect","useTimeoutLock","frameRef","timeoutRef","cleanUp","setState","newState","getState","useHover","setStartRow","_React$useState3","_React$useState4","setEndRow","start","end","defaultContainer","canUseDom","useSticky","sticky","_ref$offsetHeader","offsetHeader","_ref$offsetSummary","offsetSummary","_ref$offsetScroll","offsetScroll","_ref$getContainer","getContainer","container","useStickyOffsets","columnCount","getOffsets","startIndex","endIndex","offset","offsets","startOffsets","endOffsets","Panel","StickyScrollBar","_scrollBodyRef$curren","_scrollBodyRef$curren2","scrollBodyRef","bodyScrollWidth","bodyWidth","scrollBarWidth","scrollBarRef","_useLayoutState","_useLayoutState2","scrollState","setScrollState","refState","isActive","setActive","rafRef","raf","onMouseUp","onMouseDown","onMouseMove","_window","buttons","checkScrollBarVisible","tableOffsetTop","getOffset","tableBottomOffset","currentClientOffset","getScrollBarSize","state","setScrollLeft","React.useImperativeHandle","onMouseUpListener","addEventListener","onMouseMoveListener","onScrollListener","onResizeListener","bodyNode","StickyScrollBar$1","DEFAULT_PREFIX","EMPTY_DATA","EMPTY_SCROLL_TARGET","defaultEmpty","Table","tableProps","scroll","footer","summary","caption","id","showHeader","components","emptyText","internalHooks","internalRefs","tailor","getContainerWidth","_props$rowHoverable","hasData","useInternalHooks","defaultComponent","customizeScrollBody","_useHover","_useHover2","_useExpand","_useExpand2","scrollX","setComponentWidth","_useColumns","_useColumns2","flattenScrollX","mergedScrollX","columnContext","fullTableRef","scrollHeaderRef","scrollBodyContainerRef","_scrollBodyRef$curren3","top","scrollSummaryRef","pingedLeft","setPingedLeft","_React$useState5","_React$useState6","pingedRight","setPingedRight","colsWidths","updateColsWidths","colsKeys","pureColWidths","stickyRef","_useSticky","summaryNode","fixFooter","scrollXStyle","scrollYStyle","scrollTableStyle","isVisible","widths","newWidths","_useTimeoutLock","_useTimeoutLock2","setScrollTarget","getScrollTarget","forceScroll","scrollLeft","target","onInternalScroll","isRTL","mergedScrollLeft","compareTarget","_stickyRef$current","measureTarget","onBodyScroll","triggerOnScroll","_scrollBodyRef$curren4","getDOM","onFullTableResize","_stickyRef$current2","mergedWidth","mounted","_React$useState7","_React$useState8","setScrollbarSize","_React$useState9","_React$useState10","setSupportSticky","getTargetScrollBarSize","isStyleSupport","renderFixedHeaderTable","fixedHolderPassProps","renderFixedFooterTable","mergedTableLayout","groupTableNode","headerProps","bodyTable","bodyColGroup","captionElement","dataProps","pickAttrs","ariaProps","bodyContent","_ref6","fixedHolderProps","fullTable","TableContextValue","RefTable","genTable","shouldTriggerRender","ImmutableTable","StaticContext","GridContext","getColumnWidth","columnsOffset","VirtualCell","component","inverse","getHeight","cellStyle","_additionalCellProps$","_additionalCellProps$2","startColIndex","concatColWidth","marginOffset","needHide","mergedRender","cellSpan","BodyLine","extra","_useContext2","rowCellCls","rowStyle","ResponseBodyLine","Grid","scrollY","listItemHeight","onTablePropScroll","listRef","columnsWidth","_listRef$current2","obj","_listRef$current","_listRef$current3","_listRef$current4","getRowSpan","_flattenData$index","onCell","_cellProps$rowSpan","cellProps","extraRender","info","getSize","offsetY","firstRowSpanColumns","lastRowSpanColumns","_loop2","spanLines","_loop3","nodes","endItemIndex","endItemKey","sizeInfo","gridContext","tblPrefixCls","wrapperComponent","horizontalScrollBarStyle","VirtualList","_listRef$current5","x","itemProps","ResponseGrid","renderBody","rawData","VirtualTable","_props$prefixCls","RefVirtualTable","genVirtualTable"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43]}