@tanstack/table-core 8.0.0-alpha.76 → 8.0.0-alpha.80

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -128,7 +128,7 @@ const ColumnSizing = {
128
128
  }
129
129
  }
130
130
 
131
- const startSize = column.getSize();
131
+ const startSize = header.getSize();
132
132
  const columnSizingStart = header ? header.getLeafHeaders().map(d => [d.column.id, d.column.getSize()]) : [[column.id, column.getSize()]];
133
133
  const clientX = isTouchStartEvent(e) ? Math.round(e.touches[0].clientX) : e.clientX;
134
134
 
@@ -1 +1 @@
1
- {"version":3,"file":"ColumnSizing.js","sources":["../../../src/features/ColumnSizing.ts"],"sourcesContent":["import {\n Column,\n Header,\n OnChangeFn,\n TableGenerics,\n TableInstance,\n Updater,\n TableFeature,\n} from '../types'\nimport { makeStateUpdater } from '../utils'\nimport { ColumnPinningPosition } from './Pinning'\n\n//\n\nexport type ColumnSizingTableState = {\n columnSizing: ColumnSizingState\n columnSizingInfo: ColumnSizingInfoState\n}\n\nexport type ColumnSizingState = Record<string, number>\n\nexport type ColumnSizingInfoState = {\n startOffset: null | number\n startSize: null | number\n deltaOffset: null | number\n deltaPercentage: null | number\n isResizingColumn: false | string\n columnSizingStart: [string, number][]\n}\n\nexport type ColumnResizeMode = 'onChange' | 'onEnd'\n\nexport type ColumnSizingOptions = {\n enableColumnResizing?: boolean\n columnResizeMode?: ColumnResizeMode\n onColumnSizingChange?: OnChangeFn<ColumnSizingState>\n onColumnSizingInfoChange?: OnChangeFn<ColumnSizingInfoState>\n}\n\nexport type ColumnSizingDefaultOptions = {\n columnResizeMode: ColumnResizeMode\n onColumnSizingChange: OnChangeFn<ColumnSizingState>\n onColumnSizingInfoChange: OnChangeFn<ColumnSizingInfoState>\n}\n\nexport type ColumnSizingInstance<TGenerics extends TableGenerics> = {\n setColumnSizing: (updater: Updater<ColumnSizingState>) => void\n setColumnSizingInfo: (updater: Updater<ColumnSizingInfoState>) => void\n resetColumnSizing: (defaultState?: boolean) => void\n resetHeaderSizeInfo: (defaultState?: boolean) => void\n getTotalSize: () => number\n getLeftTotalSize: () => number\n getCenterTotalSize: () => number\n getRightTotalSize: () => number\n}\n\nexport type ColumnSizingColumnDef = {\n enableResizing?: boolean\n size?: number\n minSize?: number\n maxSize?: number\n}\n\nexport type ColumnSizingColumn<TGenerics extends TableGenerics> = {\n getSize: () => number\n getStart: (position?: ColumnPinningPosition) => number\n getCanResize: () => boolean\n getIsResizing: () => boolean\n resetSize: () => void\n}\n\nexport type ColumnSizingHeader<TGenerics extends TableGenerics> = {\n getSize: () => number\n getStart: (position?: ColumnPinningPosition) => number\n getResizeHandler: () => (event: unknown) => void\n}\n\n//\n\nexport const defaultColumnSizing = {\n size: 150,\n minSize: 20,\n maxSize: Number.MAX_SAFE_INTEGER,\n}\n\nconst getDefaultColumnSizingInfoState = (): ColumnSizingInfoState => ({\n startOffset: null,\n startSize: null,\n deltaOffset: null,\n deltaPercentage: null,\n isResizingColumn: false,\n columnSizingStart: [],\n})\n\nexport const ColumnSizing: TableFeature = {\n getDefaultColumn: (): ColumnSizingColumnDef => {\n return defaultColumnSizing\n },\n getInitialState: (state): ColumnSizingTableState => {\n return {\n columnSizing: {},\n columnSizingInfo: getDefaultColumnSizingInfoState(),\n ...state,\n }\n },\n\n getDefaultOptions: <TGenerics extends TableGenerics>(\n instance: TableInstance<TGenerics>\n ): ColumnSizingDefaultOptions => {\n return {\n columnResizeMode: 'onEnd',\n onColumnSizingChange: makeStateUpdater('columnSizing', instance),\n onColumnSizingInfoChange: makeStateUpdater('columnSizingInfo', instance),\n }\n },\n\n createColumn: <TGenerics extends TableGenerics>(\n column: Column<TGenerics>,\n instance: TableInstance<TGenerics>\n ): ColumnSizingColumn<TGenerics> => {\n return {\n getSize: () => {\n const columnSize = instance.getState().columnSizing[column.id]\n\n return Math.min(\n Math.max(\n column.minSize ?? defaultColumnSizing.minSize,\n columnSize ?? column.size ?? defaultColumnSizing.size\n ),\n column.maxSize ?? defaultColumnSizing.maxSize\n )\n },\n getStart: position => {\n const columns = !position\n ? instance.getVisibleLeafColumns()\n : position === 'left'\n ? instance.getLeftVisibleLeafColumns()\n : instance.getRightVisibleLeafColumns()\n\n const index = columns.findIndex(d => d.id === column.id)\n\n if (index > 0) {\n const prevSiblingColumn = columns[index - 1]!\n\n return (\n prevSiblingColumn.getStart(position) + prevSiblingColumn.getSize()\n )\n }\n\n return 0\n },\n resetSize: () => {\n instance.setColumnSizing(({ [column.id]: _, ...rest }) => {\n return rest\n })\n },\n getCanResize: () => {\n return (\n (column.enableResizing ?? true) &&\n (instance.options.enableColumnResizing ?? true)\n )\n },\n getIsResizing: () => {\n return (\n instance.getState().columnSizingInfo.isResizingColumn === column.id\n )\n },\n }\n },\n\n createHeader: <TGenerics extends TableGenerics>(\n header: Header<TGenerics>,\n instance: TableInstance<TGenerics>\n ): ColumnSizingHeader<TGenerics> => {\n return {\n getSize: () => {\n let sum = 0\n\n const recurse = (header: Header<TGenerics>) => {\n if (header.subHeaders.length) {\n header.subHeaders.forEach(recurse)\n } else {\n sum += header.column.getSize() ?? 0\n }\n }\n\n recurse(header)\n\n return sum\n },\n getStart: () => {\n if (header.index > 0) {\n const prevSiblingHeader =\n header.headerGroup.headers[header.index - 1]!\n return prevSiblingHeader.getStart() + prevSiblingHeader.getSize()\n }\n\n return 0\n },\n getResizeHandler: () => {\n const column = instance.getColumn(header.column.id)\n const canResize = column.getCanResize()\n\n return (e: unknown) => {\n if (!canResize) {\n return\n }\n\n ;(e as any).persist?.()\n\n if (isTouchStartEvent(e)) {\n // lets not respond to multiple touches (e.g. 2 or 3 fingers)\n if (e.touches && e.touches.length > 1) {\n return\n }\n }\n\n const startSize = column.getSize()\n\n const columnSizingStart: [string, number][] = header\n ? header\n .getLeafHeaders()\n .map(d => [d.column.id, d.column.getSize()])\n : [[column.id, column.getSize()]]\n\n const clientX = isTouchStartEvent(e)\n ? Math.round(e.touches[0]!.clientX)\n : (e as MouseEvent).clientX\n\n const updateOffset = (\n eventType: 'move' | 'end',\n clientXPos?: number\n ) => {\n if (typeof clientXPos !== 'number') {\n return\n }\n\n let newColumnSizing: ColumnSizingState = {}\n\n instance.setColumnSizingInfo(old => {\n const deltaOffset = clientXPos - (old?.startOffset ?? 0)\n const deltaPercentage = Math.max(\n deltaOffset / (old?.startSize ?? 0),\n -0.999999\n )\n\n old.columnSizingStart.forEach(([columnId, headerSize]) => {\n newColumnSizing[columnId] =\n Math.round(\n Math.max(headerSize + headerSize * deltaPercentage, 0) * 100\n ) / 100\n })\n\n return {\n ...old,\n deltaOffset,\n deltaPercentage,\n }\n })\n\n if (\n instance.options.columnResizeMode === 'onChange' ||\n eventType === 'end'\n ) {\n instance.setColumnSizing(old => ({\n ...old,\n ...newColumnSizing,\n }))\n }\n }\n\n const onMove = (clientXPos?: number) =>\n updateOffset('move', clientXPos)\n\n const onEnd = (clientXPos?: number) => {\n updateOffset('end', clientXPos)\n\n instance.setColumnSizingInfo(old => ({\n ...old,\n isResizingColumn: false,\n startOffset: null,\n startSize: null,\n deltaOffset: null,\n deltaPercentage: null,\n columnSizingStart: [],\n }))\n }\n\n const mouseEvents = {\n moveHandler: (e: MouseEvent) => onMove(e.clientX),\n upHandler: (e: MouseEvent) => {\n document.removeEventListener('mousemove', mouseEvents.moveHandler)\n document.removeEventListener('mouseup', mouseEvents.upHandler)\n onEnd(e.clientX)\n },\n }\n\n const touchEvents = {\n moveHandler: (e: TouchEvent) => {\n if (e.cancelable) {\n e.preventDefault()\n e.stopPropagation()\n }\n onMove(e.touches[0]!.clientX)\n return false\n },\n upHandler: (e: TouchEvent) => {\n document.removeEventListener('touchmove', touchEvents.moveHandler)\n document.removeEventListener('touchend', touchEvents.upHandler)\n if (e.cancelable) {\n e.preventDefault()\n e.stopPropagation()\n }\n onEnd(e.touches[0]!.clientX)\n },\n }\n\n const passiveIfSupported = passiveEventSupported()\n ? { passive: false }\n : false\n\n if (isTouchStartEvent(e)) {\n } else {\n document.addEventListener(\n 'mousemove',\n mouseEvents.moveHandler,\n passiveIfSupported\n )\n document.addEventListener(\n 'mouseup',\n mouseEvents.upHandler,\n passiveIfSupported\n )\n }\n\n instance.setColumnSizingInfo(old => ({\n ...old,\n startOffset: clientX,\n startSize,\n deltaOffset: 0,\n deltaPercentage: 0,\n columnSizingStart,\n isResizingColumn: column.id,\n }))\n }\n },\n }\n },\n\n createInstance: <TGenerics extends TableGenerics>(\n instance: TableInstance<TGenerics>\n ): ColumnSizingInstance<TGenerics> => {\n return {\n setColumnSizing: updater =>\n instance.options.onColumnSizingChange?.(updater),\n setColumnSizingInfo: updater =>\n instance.options.onColumnSizingInfoChange?.(updater),\n resetColumnSizing: defaultState => {\n instance.setColumnSizing(\n defaultState ? {} : instance.initialState.columnSizing ?? {}\n )\n },\n resetHeaderSizeInfo: defaultState => {\n instance.setColumnSizingInfo(\n defaultState\n ? getDefaultColumnSizingInfoState()\n : instance.initialState.columnSizingInfo ??\n getDefaultColumnSizingInfoState()\n )\n },\n getTotalSize: () =>\n instance.getHeaderGroups()[0]?.headers.reduce((sum, header) => {\n return sum + header.getSize()\n }, 0) ?? 0,\n getLeftTotalSize: () =>\n instance.getLeftHeaderGroups()[0]?.headers.reduce((sum, header) => {\n return sum + header.getSize()\n }, 0) ?? 0,\n getCenterTotalSize: () =>\n instance.getCenterHeaderGroups()[0]?.headers.reduce((sum, header) => {\n return sum + header.getSize()\n }, 0) ?? 0,\n getRightTotalSize: () =>\n instance.getRightHeaderGroups()[0]?.headers.reduce((sum, header) => {\n return sum + header.getSize()\n }, 0) ?? 0,\n }\n },\n}\n\nlet passiveSupported: boolean | null = null\nexport function passiveEventSupported() {\n if (typeof passiveSupported === 'boolean') return passiveSupported\n\n let supported = false\n try {\n const options = {\n get passive() {\n supported = true\n return false\n },\n }\n\n const noop = () => {}\n\n window.addEventListener('test', noop, options)\n window.removeEventListener('test', noop)\n } catch (err) {\n supported = false\n }\n passiveSupported = supported\n return passiveSupported\n}\n\nfunction isTouchStartEvent(e: unknown): e is TouchEvent {\n return (e as TouchEvent).type === 'touchstart'\n}\n"],"names":["defaultColumnSizing","size","minSize","maxSize","Number","MAX_SAFE_INTEGER","getDefaultColumnSizingInfoState","startOffset","startSize","deltaOffset","deltaPercentage","isResizingColumn","columnSizingStart","ColumnSizing","getDefaultColumn","getInitialState","state","columnSizing","columnSizingInfo","getDefaultOptions","instance","columnResizeMode","onColumnSizingChange","makeStateUpdater","onColumnSizingInfoChange","createColumn","column","getSize","columnSize","getState","id","Math","min","max","getStart","position","columns","getVisibleLeafColumns","getLeftVisibleLeafColumns","getRightVisibleLeafColumns","index","findIndex","d","prevSiblingColumn","resetSize","setColumnSizing","_","rest","getCanResize","enableResizing","options","enableColumnResizing","getIsResizing","createHeader","header","sum","recurse","subHeaders","length","forEach","prevSiblingHeader","headerGroup","headers","getResizeHandler","getColumn","canResize","e","persist","isTouchStartEvent","touches","getLeafHeaders","map","clientX","round","updateOffset","eventType","clientXPos","newColumnSizing","setColumnSizingInfo","old","columnId","headerSize","onMove","onEnd","mouseEvents","moveHandler","upHandler","document","removeEventListener","passiveIfSupported","passiveEventSupported","passive","addEventListener","createInstance","updater","resetColumnSizing","defaultState","initialState","resetHeaderSizeInfo","getTotalSize","getHeaderGroups","reduce","getLeftTotalSize","getLeftHeaderGroups","getCenterTotalSize","getCenterHeaderGroups","getRightTotalSize","getRightHeaderGroups","passiveSupported","supported","noop","window","err","type"],"mappings":"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"}
1
+ {"version":3,"file":"ColumnSizing.js","sources":["../../../src/features/ColumnSizing.ts"],"sourcesContent":["import {\n Column,\n Header,\n OnChangeFn,\n TableGenerics,\n TableInstance,\n Updater,\n TableFeature,\n} from '../types'\nimport { makeStateUpdater } from '../utils'\nimport { ColumnPinningPosition } from './Pinning'\n\n//\n\nexport type ColumnSizingTableState = {\n columnSizing: ColumnSizingState\n columnSizingInfo: ColumnSizingInfoState\n}\n\nexport type ColumnSizingState = Record<string, number>\n\nexport type ColumnSizingInfoState = {\n startOffset: null | number\n startSize: null | number\n deltaOffset: null | number\n deltaPercentage: null | number\n isResizingColumn: false | string\n columnSizingStart: [string, number][]\n}\n\nexport type ColumnResizeMode = 'onChange' | 'onEnd'\n\nexport type ColumnSizingOptions = {\n enableColumnResizing?: boolean\n columnResizeMode?: ColumnResizeMode\n onColumnSizingChange?: OnChangeFn<ColumnSizingState>\n onColumnSizingInfoChange?: OnChangeFn<ColumnSizingInfoState>\n}\n\nexport type ColumnSizingDefaultOptions = {\n columnResizeMode: ColumnResizeMode\n onColumnSizingChange: OnChangeFn<ColumnSizingState>\n onColumnSizingInfoChange: OnChangeFn<ColumnSizingInfoState>\n}\n\nexport type ColumnSizingInstance<TGenerics extends TableGenerics> = {\n setColumnSizing: (updater: Updater<ColumnSizingState>) => void\n setColumnSizingInfo: (updater: Updater<ColumnSizingInfoState>) => void\n resetColumnSizing: (defaultState?: boolean) => void\n resetHeaderSizeInfo: (defaultState?: boolean) => void\n getTotalSize: () => number\n getLeftTotalSize: () => number\n getCenterTotalSize: () => number\n getRightTotalSize: () => number\n}\n\nexport type ColumnSizingColumnDef = {\n enableResizing?: boolean\n size?: number\n minSize?: number\n maxSize?: number\n}\n\nexport type ColumnSizingColumn<TGenerics extends TableGenerics> = {\n getSize: () => number\n getStart: (position?: ColumnPinningPosition) => number\n getCanResize: () => boolean\n getIsResizing: () => boolean\n resetSize: () => void\n}\n\nexport type ColumnSizingHeader<TGenerics extends TableGenerics> = {\n getSize: () => number\n getStart: (position?: ColumnPinningPosition) => number\n getResizeHandler: () => (event: unknown) => void\n}\n\n//\n\nexport const defaultColumnSizing = {\n size: 150,\n minSize: 20,\n maxSize: Number.MAX_SAFE_INTEGER,\n}\n\nconst getDefaultColumnSizingInfoState = (): ColumnSizingInfoState => ({\n startOffset: null,\n startSize: null,\n deltaOffset: null,\n deltaPercentage: null,\n isResizingColumn: false,\n columnSizingStart: [],\n})\n\nexport const ColumnSizing: TableFeature = {\n getDefaultColumn: (): ColumnSizingColumnDef => {\n return defaultColumnSizing\n },\n getInitialState: (state): ColumnSizingTableState => {\n return {\n columnSizing: {},\n columnSizingInfo: getDefaultColumnSizingInfoState(),\n ...state,\n }\n },\n\n getDefaultOptions: <TGenerics extends TableGenerics>(\n instance: TableInstance<TGenerics>\n ): ColumnSizingDefaultOptions => {\n return {\n columnResizeMode: 'onEnd',\n onColumnSizingChange: makeStateUpdater('columnSizing', instance),\n onColumnSizingInfoChange: makeStateUpdater('columnSizingInfo', instance),\n }\n },\n\n createColumn: <TGenerics extends TableGenerics>(\n column: Column<TGenerics>,\n instance: TableInstance<TGenerics>\n ): ColumnSizingColumn<TGenerics> => {\n return {\n getSize: () => {\n const columnSize = instance.getState().columnSizing[column.id]\n\n return Math.min(\n Math.max(\n column.minSize ?? defaultColumnSizing.minSize,\n columnSize ?? column.size ?? defaultColumnSizing.size\n ),\n column.maxSize ?? defaultColumnSizing.maxSize\n )\n },\n getStart: position => {\n const columns = !position\n ? instance.getVisibleLeafColumns()\n : position === 'left'\n ? instance.getLeftVisibleLeafColumns()\n : instance.getRightVisibleLeafColumns()\n\n const index = columns.findIndex(d => d.id === column.id)\n\n if (index > 0) {\n const prevSiblingColumn = columns[index - 1]!\n\n return (\n prevSiblingColumn.getStart(position) + prevSiblingColumn.getSize()\n )\n }\n\n return 0\n },\n resetSize: () => {\n instance.setColumnSizing(({ [column.id]: _, ...rest }) => {\n return rest\n })\n },\n getCanResize: () => {\n return (\n (column.enableResizing ?? true) &&\n (instance.options.enableColumnResizing ?? true)\n )\n },\n getIsResizing: () => {\n return (\n instance.getState().columnSizingInfo.isResizingColumn === column.id\n )\n },\n }\n },\n\n createHeader: <TGenerics extends TableGenerics>(\n header: Header<TGenerics>,\n instance: TableInstance<TGenerics>\n ): ColumnSizingHeader<TGenerics> => {\n return {\n getSize: () => {\n let sum = 0\n\n const recurse = (header: Header<TGenerics>) => {\n if (header.subHeaders.length) {\n header.subHeaders.forEach(recurse)\n } else {\n sum += header.column.getSize() ?? 0\n }\n }\n\n recurse(header)\n\n return sum\n },\n getStart: () => {\n if (header.index > 0) {\n const prevSiblingHeader =\n header.headerGroup.headers[header.index - 1]!\n return prevSiblingHeader.getStart() + prevSiblingHeader.getSize()\n }\n\n return 0\n },\n getResizeHandler: () => {\n const column = instance.getColumn(header.column.id)\n const canResize = column.getCanResize()\n\n return (e: unknown) => {\n if (!canResize) {\n return\n }\n\n ;(e as any).persist?.()\n\n if (isTouchStartEvent(e)) {\n // lets not respond to multiple touches (e.g. 2 or 3 fingers)\n if (e.touches && e.touches.length > 1) {\n return\n }\n }\n\n const startSize = header.getSize()\n\n const columnSizingStart: [string, number][] = header\n ? header\n .getLeafHeaders()\n .map(d => [d.column.id, d.column.getSize()])\n : [[column.id, column.getSize()]]\n\n const clientX = isTouchStartEvent(e)\n ? Math.round(e.touches[0]!.clientX)\n : (e as MouseEvent).clientX\n\n const updateOffset = (\n eventType: 'move' | 'end',\n clientXPos?: number\n ) => {\n if (typeof clientXPos !== 'number') {\n return\n }\n\n let newColumnSizing: ColumnSizingState = {}\n\n instance.setColumnSizingInfo(old => {\n const deltaOffset = clientXPos - (old?.startOffset ?? 0)\n const deltaPercentage = Math.max(\n deltaOffset / (old?.startSize ?? 0),\n -0.999999\n )\n\n old.columnSizingStart.forEach(([columnId, headerSize]) => {\n newColumnSizing[columnId] =\n Math.round(\n Math.max(headerSize + headerSize * deltaPercentage, 0) * 100\n ) / 100\n })\n\n return {\n ...old,\n deltaOffset,\n deltaPercentage,\n }\n })\n\n if (\n instance.options.columnResizeMode === 'onChange' ||\n eventType === 'end'\n ) {\n instance.setColumnSizing(old => ({\n ...old,\n ...newColumnSizing,\n }))\n }\n }\n\n const onMove = (clientXPos?: number) =>\n updateOffset('move', clientXPos)\n\n const onEnd = (clientXPos?: number) => {\n updateOffset('end', clientXPos)\n\n instance.setColumnSizingInfo(old => ({\n ...old,\n isResizingColumn: false,\n startOffset: null,\n startSize: null,\n deltaOffset: null,\n deltaPercentage: null,\n columnSizingStart: [],\n }))\n }\n\n const mouseEvents = {\n moveHandler: (e: MouseEvent) => onMove(e.clientX),\n upHandler: (e: MouseEvent) => {\n document.removeEventListener('mousemove', mouseEvents.moveHandler)\n document.removeEventListener('mouseup', mouseEvents.upHandler)\n onEnd(e.clientX)\n },\n }\n\n const touchEvents = {\n moveHandler: (e: TouchEvent) => {\n if (e.cancelable) {\n e.preventDefault()\n e.stopPropagation()\n }\n onMove(e.touches[0]!.clientX)\n return false\n },\n upHandler: (e: TouchEvent) => {\n document.removeEventListener('touchmove', touchEvents.moveHandler)\n document.removeEventListener('touchend', touchEvents.upHandler)\n if (e.cancelable) {\n e.preventDefault()\n e.stopPropagation()\n }\n onEnd(e.touches[0]!.clientX)\n },\n }\n\n const passiveIfSupported = passiveEventSupported()\n ? { passive: false }\n : false\n\n if (isTouchStartEvent(e)) {\n } else {\n document.addEventListener(\n 'mousemove',\n mouseEvents.moveHandler,\n passiveIfSupported\n )\n document.addEventListener(\n 'mouseup',\n mouseEvents.upHandler,\n passiveIfSupported\n )\n }\n\n instance.setColumnSizingInfo(old => ({\n ...old,\n startOffset: clientX,\n startSize,\n deltaOffset: 0,\n deltaPercentage: 0,\n columnSizingStart,\n isResizingColumn: column.id,\n }))\n }\n },\n }\n },\n\n createInstance: <TGenerics extends TableGenerics>(\n instance: TableInstance<TGenerics>\n ): ColumnSizingInstance<TGenerics> => {\n return {\n setColumnSizing: updater =>\n instance.options.onColumnSizingChange?.(updater),\n setColumnSizingInfo: updater =>\n instance.options.onColumnSizingInfoChange?.(updater),\n resetColumnSizing: defaultState => {\n instance.setColumnSizing(\n defaultState ? {} : instance.initialState.columnSizing ?? {}\n )\n },\n resetHeaderSizeInfo: defaultState => {\n instance.setColumnSizingInfo(\n defaultState\n ? getDefaultColumnSizingInfoState()\n : instance.initialState.columnSizingInfo ??\n getDefaultColumnSizingInfoState()\n )\n },\n getTotalSize: () =>\n instance.getHeaderGroups()[0]?.headers.reduce((sum, header) => {\n return sum + header.getSize()\n }, 0) ?? 0,\n getLeftTotalSize: () =>\n instance.getLeftHeaderGroups()[0]?.headers.reduce((sum, header) => {\n return sum + header.getSize()\n }, 0) ?? 0,\n getCenterTotalSize: () =>\n instance.getCenterHeaderGroups()[0]?.headers.reduce((sum, header) => {\n return sum + header.getSize()\n }, 0) ?? 0,\n getRightTotalSize: () =>\n instance.getRightHeaderGroups()[0]?.headers.reduce((sum, header) => {\n return sum + header.getSize()\n }, 0) ?? 0,\n }\n },\n}\n\nlet passiveSupported: boolean | null = null\nexport function passiveEventSupported() {\n if (typeof passiveSupported === 'boolean') return passiveSupported\n\n let supported = false\n try {\n const options = {\n get passive() {\n supported = true\n return false\n },\n }\n\n const noop = () => {}\n\n window.addEventListener('test', noop, options)\n window.removeEventListener('test', noop)\n } catch (err) {\n supported = false\n }\n passiveSupported = supported\n return passiveSupported\n}\n\nfunction isTouchStartEvent(e: unknown): e is TouchEvent {\n return (e as TouchEvent).type === 'touchstart'\n}\n"],"names":["defaultColumnSizing","size","minSize","maxSize","Number","MAX_SAFE_INTEGER","getDefaultColumnSizingInfoState","startOffset","startSize","deltaOffset","deltaPercentage","isResizingColumn","columnSizingStart","ColumnSizing","getDefaultColumn","getInitialState","state","columnSizing","columnSizingInfo","getDefaultOptions","instance","columnResizeMode","onColumnSizingChange","makeStateUpdater","onColumnSizingInfoChange","createColumn","column","getSize","columnSize","getState","id","Math","min","max","getStart","position","columns","getVisibleLeafColumns","getLeftVisibleLeafColumns","getRightVisibleLeafColumns","index","findIndex","d","prevSiblingColumn","resetSize","setColumnSizing","_","rest","getCanResize","enableResizing","options","enableColumnResizing","getIsResizing","createHeader","header","sum","recurse","subHeaders","length","forEach","prevSiblingHeader","headerGroup","headers","getResizeHandler","getColumn","canResize","e","persist","isTouchStartEvent","touches","getLeafHeaders","map","clientX","round","updateOffset","eventType","clientXPos","newColumnSizing","setColumnSizingInfo","old","columnId","headerSize","onMove","onEnd","mouseEvents","moveHandler","upHandler","document","removeEventListener","passiveIfSupported","passiveEventSupported","passive","addEventListener","createInstance","updater","resetColumnSizing","defaultState","initialState","resetHeaderSizeInfo","getTotalSize","getHeaderGroups","reduce","getLeftTotalSize","getLeftHeaderGroups","getCenterTotalSize","getCenterHeaderGroups","getRightTotalSize","getRightHeaderGroups","passiveSupported","supported","noop","window","err","type"],"mappings":"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"}
@@ -67,8 +67,10 @@ const Headers = {
67
67
  },
68
68
  // Header Groups
69
69
  getHeaderGroups: utils.memo(() => [instance.getAllColumns(), instance.getVisibleLeafColumns(), instance.getState().columnPinning.left, instance.getState().columnPinning.right], (allColumns, leafColumns, left, right) => {
70
- const leftColumns = leafColumns.filter(column => left == null ? void 0 : left.includes(column.id));
71
- const rightColumns = leafColumns.filter(column => right == null ? void 0 : right.includes(column.id));
70
+ var _left$map$filter, _right$map$filter;
71
+
72
+ const leftColumns = (_left$map$filter = left == null ? void 0 : left.map(columnId => leafColumns.find(d => d.id === columnId)).filter(Boolean)) != null ? _left$map$filter : [];
73
+ const rightColumns = (_right$map$filter = right == null ? void 0 : right.map(columnId => leafColumns.find(d => d.id === columnId)).filter(Boolean)) != null ? _right$map$filter : [];
72
74
  const centerColumns = leafColumns.filter(column => !(left != null && left.includes(column.id)) && !(right != null && right.includes(column.id)));
73
75
  const headerGroups = buildHeaderGroups(allColumns, [...leftColumns, ...centerColumns, ...rightColumns], instance);
74
76
  return headerGroups;
@@ -92,9 +94,9 @@ const Headers = {
92
94
  }
93
95
  }),
94
96
  getLeftHeaderGroups: utils.memo(() => [instance.getAllColumns(), instance.getVisibleLeafColumns(), instance.getState().columnPinning.left], (allColumns, leafColumns, left) => {
95
- var _left$map$filter;
97
+ var _left$map$filter2;
96
98
 
97
- const orderedLeafColumns = (_left$map$filter = left == null ? void 0 : left.map(columnId => leafColumns.find(d => d.id === columnId)).filter(Boolean)) != null ? _left$map$filter : [];
99
+ const orderedLeafColumns = (_left$map$filter2 = left == null ? void 0 : left.map(columnId => leafColumns.find(d => d.id === columnId)).filter(Boolean)) != null ? _left$map$filter2 : [];
98
100
  return buildHeaderGroups(allColumns, orderedLeafColumns, instance, 'left');
99
101
  }, {
100
102
  key: process.env.NODE_ENV === 'development' && 'getLeftHeaderGroups',
@@ -105,9 +107,9 @@ const Headers = {
105
107
  }
106
108
  }),
107
109
  getRightHeaderGroups: utils.memo(() => [instance.getAllColumns(), instance.getVisibleLeafColumns(), instance.getState().columnPinning.right], (allColumns, leafColumns, right) => {
108
- var _right$map$filter;
110
+ var _right$map$filter2;
109
111
 
110
- const orderedLeafColumns = (_right$map$filter = right == null ? void 0 : right.map(columnId => leafColumns.find(d => d.id === columnId)).filter(Boolean)) != null ? _right$map$filter : [];
112
+ const orderedLeafColumns = (_right$map$filter2 = right == null ? void 0 : right.map(columnId => leafColumns.find(d => d.id === columnId)).filter(Boolean)) != null ? _right$map$filter2 : [];
111
113
  return buildHeaderGroups(allColumns, orderedLeafColumns, instance, 'right');
112
114
  }, {
113
115
  key: process.env.NODE_ENV === 'development' && 'getRightHeaderGroups',
@@ -1 +1 @@
1
- {"version":3,"file":"Headers.js","sources":["../../../src/features/Headers.ts"],"sourcesContent":["import {\n Column,\n CoreHeader,\n Header,\n HeaderGroup,\n TableGenerics,\n TableInstance,\n} from '../types'\nimport { memo } from '../utils'\n\nexport type HeadersInstance<TGenerics extends TableGenerics> = {\n createHeader: (\n column: Column<TGenerics>,\n options: {\n id?: string\n isPlaceholder?: boolean\n placeholderId?: string\n index: number\n depth: number\n }\n ) => Header<TGenerics>\n getHeaderGroups: () => HeaderGroup<TGenerics>[]\n getLeftHeaderGroups: () => HeaderGroup<TGenerics>[]\n getCenterHeaderGroups: () => HeaderGroup<TGenerics>[]\n getRightHeaderGroups: () => HeaderGroup<TGenerics>[]\n\n getFooterGroups: () => HeaderGroup<TGenerics>[]\n getLeftFooterGroups: () => HeaderGroup<TGenerics>[]\n getCenterFooterGroups: () => HeaderGroup<TGenerics>[]\n getRightFooterGroups: () => HeaderGroup<TGenerics>[]\n\n getFlatHeaders: () => Header<TGenerics>[]\n getLeftFlatHeaders: () => Header<TGenerics>[]\n getCenterFlatHeaders: () => Header<TGenerics>[]\n getRightFlatHeaders: () => Header<TGenerics>[]\n\n getLeafHeaders: () => Header<TGenerics>[]\n getLeftLeafHeaders: () => Header<TGenerics>[]\n getCenterLeafHeaders: () => Header<TGenerics>[]\n getRightLeafHeaders: () => Header<TGenerics>[]\n\n getHeader: (id: string) => Header<TGenerics>\n}\n\n//\n\nexport const Headers = {\n createInstance: <TGenerics extends TableGenerics>(\n instance: TableInstance<TGenerics>\n ): HeadersInstance<TGenerics> => {\n return {\n createHeader: (\n column: Column<TGenerics>,\n options: {\n id?: string\n isPlaceholder?: boolean\n placeholderId?: string\n index: number\n depth: number\n }\n ) => {\n const id = options.id ?? column.id\n\n let header: CoreHeader<TGenerics> = {\n id,\n column,\n index: options.index,\n isPlaceholder: options.isPlaceholder,\n placeholderId: options.placeholderId,\n depth: options.depth,\n subHeaders: [],\n colSpan: 0,\n rowSpan: 0,\n headerGroup: null!,\n getLeafHeaders: (): Header<TGenerics>[] => {\n const leafHeaders: CoreHeader<TGenerics>[] = []\n\n const recurseHeader = (h: CoreHeader<TGenerics>) => {\n if (h.subHeaders && h.subHeaders.length) {\n h.subHeaders.map(recurseHeader)\n }\n leafHeaders.push(h)\n }\n\n recurseHeader(header)\n\n return leafHeaders as Header<TGenerics>[]\n },\n renderHeader: () =>\n column.header\n ? instance._render(column.header, {\n instance,\n header: header as Header<TGenerics>,\n column,\n })\n : null,\n renderFooter: () =>\n column.footer\n ? instance._render(column.footer, {\n instance,\n header: header as Header<TGenerics>,\n column,\n })\n : null,\n }\n\n instance._features.forEach(feature => {\n Object.assign(header, feature.createHeader?.(header, instance))\n })\n\n return header as Header<TGenerics>\n },\n\n // Header Groups\n\n getHeaderGroups: memo(\n () => [\n instance.getAllColumns(),\n instance.getVisibleLeafColumns(),\n instance.getState().columnPinning.left,\n instance.getState().columnPinning.right,\n ],\n (allColumns, leafColumns, left, right) => {\n const leftColumns = leafColumns.filter(column =>\n left?.includes(column.id)\n )\n const rightColumns = leafColumns.filter(column =>\n right?.includes(column.id)\n )\n const centerColumns = leafColumns.filter(\n column => !left?.includes(column.id) && !right?.includes(column.id)\n )\n const headerGroups = buildHeaderGroups(\n allColumns,\n [...leftColumns, ...centerColumns, ...rightColumns],\n instance\n )\n\n return headerGroups\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getHeaderGroups',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n getCenterHeaderGroups: memo(\n () => [\n instance.getAllColumns(),\n instance.getVisibleLeafColumns(),\n instance.getState().columnPinning.left,\n instance.getState().columnPinning.right,\n ],\n (allColumns, leafColumns, left, right) => {\n leafColumns = leafColumns.filter(\n column => !left?.includes(column.id) && !right?.includes(column.id)\n )\n return buildHeaderGroups(allColumns, leafColumns, instance, 'center')\n },\n {\n key:\n process.env.NODE_ENV === 'development' && 'getCenterHeaderGroups',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n getLeftHeaderGroups: memo(\n () => [\n instance.getAllColumns(),\n instance.getVisibleLeafColumns(),\n instance.getState().columnPinning.left,\n ],\n (allColumns, leafColumns, left) => {\n const orderedLeafColumns =\n left\n ?.map(columnId => leafColumns.find(d => d.id === columnId)!)\n .filter(Boolean) ?? []\n\n return buildHeaderGroups(\n allColumns,\n orderedLeafColumns,\n instance,\n 'left'\n )\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getLeftHeaderGroups',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n getRightHeaderGroups: memo(\n () => [\n instance.getAllColumns(),\n instance.getVisibleLeafColumns(),\n instance.getState().columnPinning.right,\n ],\n (allColumns, leafColumns, right) => {\n const orderedLeafColumns =\n right\n ?.map(columnId => leafColumns.find(d => d.id === columnId)!)\n .filter(Boolean) ?? []\n\n return buildHeaderGroups(\n allColumns,\n orderedLeafColumns,\n instance,\n 'right'\n )\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getRightHeaderGroups',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n // Footer Groups\n\n getFooterGroups: memo(\n () => [instance.getHeaderGroups()],\n headerGroups => {\n return [...headerGroups].reverse()\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getFooterGroups',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n getLeftFooterGroups: memo(\n () => [instance.getLeftHeaderGroups()],\n headerGroups => {\n return [...headerGroups].reverse()\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getLeftFooterGroups',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n getCenterFooterGroups: memo(\n () => [instance.getCenterHeaderGroups()],\n headerGroups => {\n return [...headerGroups].reverse()\n },\n {\n key:\n process.env.NODE_ENV === 'development' && 'getCenterFooterGroups',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n getRightFooterGroups: memo(\n () => [instance.getRightHeaderGroups()],\n headerGroups => {\n return [...headerGroups].reverse()\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getRightFooterGroups',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n // Flat Headers\n\n getFlatHeaders: memo(\n () => [instance.getHeaderGroups()],\n headerGroups => {\n return headerGroups\n .map(headerGroup => {\n return headerGroup.headers\n })\n .flat()\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getFlatHeaders',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n getLeftFlatHeaders: memo(\n () => [instance.getLeftHeaderGroups()],\n left => {\n return left\n .map(headerGroup => {\n return headerGroup.headers\n })\n .flat()\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getLeftFlatHeaders',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n getCenterFlatHeaders: memo(\n () => [instance.getCenterHeaderGroups()],\n left => {\n return left\n .map(headerGroup => {\n return headerGroup.headers\n })\n .flat()\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getCenterFlatHeaders',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n getRightFlatHeaders: memo(\n () => [instance.getRightHeaderGroups()],\n left => {\n return left\n .map(headerGroup => {\n return headerGroup.headers\n })\n .flat()\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getRightFlatHeaders',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n // Leaf Headers\n\n getCenterLeafHeaders: memo(\n () => [instance.getCenterFlatHeaders()],\n flatHeaders => {\n return flatHeaders.filter(header => !header.subHeaders?.length)\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getCenterLeafHeaders',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n getLeftLeafHeaders: memo(\n () => [instance.getLeftFlatHeaders()],\n flatHeaders => {\n return flatHeaders.filter(header => !header.subHeaders?.length)\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getLeftLeafHeaders',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n getRightLeafHeaders: memo(\n () => [instance.getRightFlatHeaders()],\n flatHeaders => {\n return flatHeaders.filter(header => !header.subHeaders?.length)\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getRightLeafHeaders',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n getLeafHeaders: memo(\n () => [\n instance.getLeftHeaderGroups(),\n instance.getCenterHeaderGroups(),\n instance.getRightHeaderGroups(),\n ],\n (left, center, right) => {\n return [\n ...(left[0]?.headers ?? []),\n ...(center[0]?.headers ?? []),\n ...(right[0]?.headers ?? []),\n ]\n .map(header => {\n return header.getLeafHeaders()\n })\n .flat()\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getLeafHeaders',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n getHeader: (id: string) => {\n const header = [\n ...instance.getFlatHeaders(),\n ...instance.getCenterFlatHeaders(),\n ...instance.getLeftFlatHeaders(),\n ...instance.getRightFlatHeaders(),\n ].find(d => d.id === id)\n\n if (!header) {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(`Could not find header with id: ${id}`)\n }\n throw new Error()\n }\n\n return header\n },\n }\n },\n}\n\nexport function buildHeaderGroups<TGenerics extends TableGenerics>(\n allColumns: Column<TGenerics>[],\n columnsToGroup: Column<TGenerics>[],\n instance: TableInstance<TGenerics>,\n headerFamily?: 'center' | 'left' | 'right'\n) {\n // Find the max depth of the columns:\n // build the leaf column row\n // build each buffer row going up\n // placeholder for non-existent level\n // real column for existing level\n\n let maxDepth = 0\n\n const findMaxDepth = (columns: Column<TGenerics>[], depth = 1) => {\n maxDepth = Math.max(maxDepth, depth)\n\n columns\n .filter(column => column.getIsVisible())\n .forEach(column => {\n if (column.columns?.length) {\n findMaxDepth(column.columns, depth + 1)\n }\n }, 0)\n }\n\n findMaxDepth(allColumns)\n\n let headerGroups: HeaderGroup<TGenerics>[] = []\n\n const createHeaderGroup = (\n headersToGroup: Header<TGenerics>[],\n depth: number\n ) => {\n // The header group we are creating\n const headerGroup: HeaderGroup<TGenerics> = {\n depth,\n id: [headerFamily, `${depth}`].filter(Boolean).join('_'),\n headers: [],\n }\n\n // The parent columns we're going to scan next\n const pendingParentHeaders: Header<TGenerics>[] = []\n\n // Scan each column for parents\n headersToGroup.forEach(headerToGroup => {\n // What is the latest (last) parent column?\n\n const latestPendingParentHeader = [...pendingParentHeaders].reverse()[0]\n\n const isLeafHeader = headerToGroup.column.depth === headerGroup.depth\n\n let column: Column<TGenerics>\n let isPlaceholder = false\n\n if (isLeafHeader && headerToGroup.column.parent) {\n // The parent header is new\n column = headerToGroup.column.parent\n } else {\n // The parent header is repeated\n column = headerToGroup.column\n isPlaceholder = true\n }\n\n if (latestPendingParentHeader?.column === column) {\n // This column is repeated. Add it as a sub header to the next batch\n latestPendingParentHeader.subHeaders.push(headerToGroup)\n } else {\n // This is a new header. Let's create it\n const header = instance.createHeader(column, {\n id: [headerFamily, depth, column.id, headerToGroup?.id]\n .filter(Boolean)\n .join('_'),\n isPlaceholder,\n placeholderId: isPlaceholder\n ? `${pendingParentHeaders.filter(d => d.column === column).length}`\n : undefined,\n depth,\n index: pendingParentHeaders.length,\n })\n\n // Add the headerToGroup as a subHeader of the new header\n header.subHeaders.push(headerToGroup)\n // Add the new header to the pendingParentHeaders to get grouped\n // in the next batch\n pendingParentHeaders.push(header)\n }\n\n headerGroup.headers.push(headerToGroup)\n headerToGroup.headerGroup = headerGroup\n })\n\n headerGroups.push(headerGroup)\n\n if (depth > 0) {\n createHeaderGroup(pendingParentHeaders, depth - 1)\n }\n }\n\n const bottomHeaders = columnsToGroup.map((column, index) =>\n instance.createHeader(column, {\n depth: maxDepth,\n index,\n })\n )\n\n createHeaderGroup(bottomHeaders, maxDepth - 1)\n\n headerGroups.reverse()\n\n // headerGroups = headerGroups.filter(headerGroup => {\n // return !headerGroup.headers.every(header => header.isPlaceholder)\n // })\n\n const recurseHeadersForSpans = (headers: Header<TGenerics>[]) => {\n const filteredHeaders = headers.filter(header =>\n header.column.getIsVisible()\n )\n\n return filteredHeaders.map(header => {\n let colSpan = 0\n let rowSpan = 0\n let childRowSpans = [0]\n\n if (header.subHeaders && header.subHeaders.length) {\n childRowSpans = []\n\n recurseHeadersForSpans(header.subHeaders).forEach(\n ({ colSpan: childColSpan, rowSpan: childRowSpan }) => {\n colSpan += childColSpan\n childRowSpans.push(childRowSpan)\n }\n )\n } else {\n colSpan = 1\n }\n\n const minChildRowSpan = Math.min(...childRowSpans)\n rowSpan = rowSpan + minChildRowSpan\n\n header.colSpan = colSpan > 0 ? colSpan : undefined\n header.rowSpan = rowSpan > 0 ? rowSpan : undefined\n\n return { colSpan, rowSpan }\n })\n }\n\n recurseHeadersForSpans(headerGroups[0]?.headers ?? [])\n\n return headerGroups\n}\n"],"names":["Headers","createInstance","instance","createHeader","column","options","id","header","index","isPlaceholder","placeholderId","depth","subHeaders","colSpan","rowSpan","headerGroup","getLeafHeaders","leafHeaders","recurseHeader","h","length","map","push","renderHeader","_render","renderFooter","footer","_features","forEach","feature","Object","assign","getHeaderGroups","memo","getAllColumns","getVisibleLeafColumns","getState","columnPinning","left","right","allColumns","leafColumns","leftColumns","filter","includes","rightColumns","centerColumns","headerGroups","buildHeaderGroups","key","process","env","NODE_ENV","debug","debugAll","debugHeaders","getCenterHeaderGroups","getLeftHeaderGroups","orderedLeafColumns","columnId","find","d","Boolean","getRightHeaderGroups","getFooterGroups","reverse","getLeftFooterGroups","getCenterFooterGroups","getRightFooterGroups","getFlatHeaders","headers","flat","getLeftFlatHeaders","getCenterFlatHeaders","getRightFlatHeaders","getCenterLeafHeaders","flatHeaders","getLeftLeafHeaders","getRightLeafHeaders","center","getHeader","console","warn","Error","columnsToGroup","headerFamily","maxDepth","findMaxDepth","columns","Math","max","getIsVisible","createHeaderGroup","headersToGroup","join","pendingParentHeaders","headerToGroup","latestPendingParentHeader","isLeafHeader","parent","undefined","bottomHeaders","recurseHeadersForSpans","filteredHeaders","childRowSpans","childColSpan","childRowSpan","minChildRowSpan","min"],"mappings":"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"}
1
+ {"version":3,"file":"Headers.js","sources":["../../../src/features/Headers.ts"],"sourcesContent":["import {\n Column,\n CoreHeader,\n Header,\n HeaderGroup,\n TableGenerics,\n TableInstance,\n} from '../types'\nimport { memo } from '../utils'\n\nexport type HeadersInstance<TGenerics extends TableGenerics> = {\n createHeader: (\n column: Column<TGenerics>,\n options: {\n id?: string\n isPlaceholder?: boolean\n placeholderId?: string\n index: number\n depth: number\n }\n ) => Header<TGenerics>\n getHeaderGroups: () => HeaderGroup<TGenerics>[]\n getLeftHeaderGroups: () => HeaderGroup<TGenerics>[]\n getCenterHeaderGroups: () => HeaderGroup<TGenerics>[]\n getRightHeaderGroups: () => HeaderGroup<TGenerics>[]\n\n getFooterGroups: () => HeaderGroup<TGenerics>[]\n getLeftFooterGroups: () => HeaderGroup<TGenerics>[]\n getCenterFooterGroups: () => HeaderGroup<TGenerics>[]\n getRightFooterGroups: () => HeaderGroup<TGenerics>[]\n\n getFlatHeaders: () => Header<TGenerics>[]\n getLeftFlatHeaders: () => Header<TGenerics>[]\n getCenterFlatHeaders: () => Header<TGenerics>[]\n getRightFlatHeaders: () => Header<TGenerics>[]\n\n getLeafHeaders: () => Header<TGenerics>[]\n getLeftLeafHeaders: () => Header<TGenerics>[]\n getCenterLeafHeaders: () => Header<TGenerics>[]\n getRightLeafHeaders: () => Header<TGenerics>[]\n\n getHeader: (id: string) => Header<TGenerics>\n}\n\n//\n\nexport const Headers = {\n createInstance: <TGenerics extends TableGenerics>(\n instance: TableInstance<TGenerics>\n ): HeadersInstance<TGenerics> => {\n return {\n createHeader: (\n column: Column<TGenerics>,\n options: {\n id?: string\n isPlaceholder?: boolean\n placeholderId?: string\n index: number\n depth: number\n }\n ) => {\n const id = options.id ?? column.id\n\n let header: CoreHeader<TGenerics> = {\n id,\n column,\n index: options.index,\n isPlaceholder: options.isPlaceholder,\n placeholderId: options.placeholderId,\n depth: options.depth,\n subHeaders: [],\n colSpan: 0,\n rowSpan: 0,\n headerGroup: null!,\n getLeafHeaders: (): Header<TGenerics>[] => {\n const leafHeaders: CoreHeader<TGenerics>[] = []\n\n const recurseHeader = (h: CoreHeader<TGenerics>) => {\n if (h.subHeaders && h.subHeaders.length) {\n h.subHeaders.map(recurseHeader)\n }\n leafHeaders.push(h)\n }\n\n recurseHeader(header)\n\n return leafHeaders as Header<TGenerics>[]\n },\n renderHeader: () =>\n column.header\n ? instance._render(column.header, {\n instance,\n header: header as Header<TGenerics>,\n column,\n })\n : null,\n renderFooter: () =>\n column.footer\n ? instance._render(column.footer, {\n instance,\n header: header as Header<TGenerics>,\n column,\n })\n : null,\n }\n\n instance._features.forEach(feature => {\n Object.assign(header, feature.createHeader?.(header, instance))\n })\n\n return header as Header<TGenerics>\n },\n\n // Header Groups\n\n getHeaderGroups: memo(\n () => [\n instance.getAllColumns(),\n instance.getVisibleLeafColumns(),\n instance.getState().columnPinning.left,\n instance.getState().columnPinning.right,\n ],\n (allColumns, leafColumns, left, right) => {\n const leftColumns =\n left\n ?.map(columnId => leafColumns.find(d => d.id === columnId)!)\n .filter(Boolean) ?? []\n\n const rightColumns =\n right\n ?.map(columnId => leafColumns.find(d => d.id === columnId)!)\n .filter(Boolean) ?? []\n\n const centerColumns = leafColumns.filter(\n column => !left?.includes(column.id) && !right?.includes(column.id)\n )\n\n const headerGroups = buildHeaderGroups(\n allColumns,\n [...leftColumns, ...centerColumns, ...rightColumns],\n instance\n )\n\n return headerGroups\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getHeaderGroups',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n getCenterHeaderGroups: memo(\n () => [\n instance.getAllColumns(),\n instance.getVisibleLeafColumns(),\n instance.getState().columnPinning.left,\n instance.getState().columnPinning.right,\n ],\n (allColumns, leafColumns, left, right) => {\n leafColumns = leafColumns.filter(\n column => !left?.includes(column.id) && !right?.includes(column.id)\n )\n return buildHeaderGroups(allColumns, leafColumns, instance, 'center')\n },\n {\n key:\n process.env.NODE_ENV === 'development' && 'getCenterHeaderGroups',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n getLeftHeaderGroups: memo(\n () => [\n instance.getAllColumns(),\n instance.getVisibleLeafColumns(),\n instance.getState().columnPinning.left,\n ],\n (allColumns, leafColumns, left) => {\n const orderedLeafColumns =\n left\n ?.map(columnId => leafColumns.find(d => d.id === columnId)!)\n .filter(Boolean) ?? []\n\n return buildHeaderGroups(\n allColumns,\n orderedLeafColumns,\n instance,\n 'left'\n )\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getLeftHeaderGroups',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n getRightHeaderGroups: memo(\n () => [\n instance.getAllColumns(),\n instance.getVisibleLeafColumns(),\n instance.getState().columnPinning.right,\n ],\n (allColumns, leafColumns, right) => {\n const orderedLeafColumns =\n right\n ?.map(columnId => leafColumns.find(d => d.id === columnId)!)\n .filter(Boolean) ?? []\n\n return buildHeaderGroups(\n allColumns,\n orderedLeafColumns,\n instance,\n 'right'\n )\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getRightHeaderGroups',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n // Footer Groups\n\n getFooterGroups: memo(\n () => [instance.getHeaderGroups()],\n headerGroups => {\n return [...headerGroups].reverse()\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getFooterGroups',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n getLeftFooterGroups: memo(\n () => [instance.getLeftHeaderGroups()],\n headerGroups => {\n return [...headerGroups].reverse()\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getLeftFooterGroups',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n getCenterFooterGroups: memo(\n () => [instance.getCenterHeaderGroups()],\n headerGroups => {\n return [...headerGroups].reverse()\n },\n {\n key:\n process.env.NODE_ENV === 'development' && 'getCenterFooterGroups',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n getRightFooterGroups: memo(\n () => [instance.getRightHeaderGroups()],\n headerGroups => {\n return [...headerGroups].reverse()\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getRightFooterGroups',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n // Flat Headers\n\n getFlatHeaders: memo(\n () => [instance.getHeaderGroups()],\n headerGroups => {\n return headerGroups\n .map(headerGroup => {\n return headerGroup.headers\n })\n .flat()\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getFlatHeaders',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n getLeftFlatHeaders: memo(\n () => [instance.getLeftHeaderGroups()],\n left => {\n return left\n .map(headerGroup => {\n return headerGroup.headers\n })\n .flat()\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getLeftFlatHeaders',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n getCenterFlatHeaders: memo(\n () => [instance.getCenterHeaderGroups()],\n left => {\n return left\n .map(headerGroup => {\n return headerGroup.headers\n })\n .flat()\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getCenterFlatHeaders',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n getRightFlatHeaders: memo(\n () => [instance.getRightHeaderGroups()],\n left => {\n return left\n .map(headerGroup => {\n return headerGroup.headers\n })\n .flat()\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getRightFlatHeaders',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n // Leaf Headers\n\n getCenterLeafHeaders: memo(\n () => [instance.getCenterFlatHeaders()],\n flatHeaders => {\n return flatHeaders.filter(header => !header.subHeaders?.length)\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getCenterLeafHeaders',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n getLeftLeafHeaders: memo(\n () => [instance.getLeftFlatHeaders()],\n flatHeaders => {\n return flatHeaders.filter(header => !header.subHeaders?.length)\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getLeftLeafHeaders',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n getRightLeafHeaders: memo(\n () => [instance.getRightFlatHeaders()],\n flatHeaders => {\n return flatHeaders.filter(header => !header.subHeaders?.length)\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getRightLeafHeaders',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n getLeafHeaders: memo(\n () => [\n instance.getLeftHeaderGroups(),\n instance.getCenterHeaderGroups(),\n instance.getRightHeaderGroups(),\n ],\n (left, center, right) => {\n return [\n ...(left[0]?.headers ?? []),\n ...(center[0]?.headers ?? []),\n ...(right[0]?.headers ?? []),\n ]\n .map(header => {\n return header.getLeafHeaders()\n })\n .flat()\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getLeafHeaders',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugHeaders,\n }\n ),\n\n getHeader: (id: string) => {\n const header = [\n ...instance.getFlatHeaders(),\n ...instance.getCenterFlatHeaders(),\n ...instance.getLeftFlatHeaders(),\n ...instance.getRightFlatHeaders(),\n ].find(d => d.id === id)\n\n if (!header) {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(`Could not find header with id: ${id}`)\n }\n throw new Error()\n }\n\n return header\n },\n }\n },\n}\n\nexport function buildHeaderGroups<TGenerics extends TableGenerics>(\n allColumns: Column<TGenerics>[],\n columnsToGroup: Column<TGenerics>[],\n instance: TableInstance<TGenerics>,\n headerFamily?: 'center' | 'left' | 'right'\n) {\n // Find the max depth of the columns:\n // build the leaf column row\n // build each buffer row going up\n // placeholder for non-existent level\n // real column for existing level\n\n let maxDepth = 0\n\n const findMaxDepth = (columns: Column<TGenerics>[], depth = 1) => {\n maxDepth = Math.max(maxDepth, depth)\n\n columns\n .filter(column => column.getIsVisible())\n .forEach(column => {\n if (column.columns?.length) {\n findMaxDepth(column.columns, depth + 1)\n }\n }, 0)\n }\n\n findMaxDepth(allColumns)\n\n let headerGroups: HeaderGroup<TGenerics>[] = []\n\n const createHeaderGroup = (\n headersToGroup: Header<TGenerics>[],\n depth: number\n ) => {\n // The header group we are creating\n const headerGroup: HeaderGroup<TGenerics> = {\n depth,\n id: [headerFamily, `${depth}`].filter(Boolean).join('_'),\n headers: [],\n }\n\n // The parent columns we're going to scan next\n const pendingParentHeaders: Header<TGenerics>[] = []\n\n // Scan each column for parents\n headersToGroup.forEach(headerToGroup => {\n // What is the latest (last) parent column?\n\n const latestPendingParentHeader = [...pendingParentHeaders].reverse()[0]\n\n const isLeafHeader = headerToGroup.column.depth === headerGroup.depth\n\n let column: Column<TGenerics>\n let isPlaceholder = false\n\n if (isLeafHeader && headerToGroup.column.parent) {\n // The parent header is new\n column = headerToGroup.column.parent\n } else {\n // The parent header is repeated\n column = headerToGroup.column\n isPlaceholder = true\n }\n\n if (latestPendingParentHeader?.column === column) {\n // This column is repeated. Add it as a sub header to the next batch\n latestPendingParentHeader.subHeaders.push(headerToGroup)\n } else {\n // This is a new header. Let's create it\n const header = instance.createHeader(column, {\n id: [headerFamily, depth, column.id, headerToGroup?.id]\n .filter(Boolean)\n .join('_'),\n isPlaceholder,\n placeholderId: isPlaceholder\n ? `${pendingParentHeaders.filter(d => d.column === column).length}`\n : undefined,\n depth,\n index: pendingParentHeaders.length,\n })\n\n // Add the headerToGroup as a subHeader of the new header\n header.subHeaders.push(headerToGroup)\n // Add the new header to the pendingParentHeaders to get grouped\n // in the next batch\n pendingParentHeaders.push(header)\n }\n\n headerGroup.headers.push(headerToGroup)\n headerToGroup.headerGroup = headerGroup\n })\n\n headerGroups.push(headerGroup)\n\n if (depth > 0) {\n createHeaderGroup(pendingParentHeaders, depth - 1)\n }\n }\n\n const bottomHeaders = columnsToGroup.map((column, index) =>\n instance.createHeader(column, {\n depth: maxDepth,\n index,\n })\n )\n\n createHeaderGroup(bottomHeaders, maxDepth - 1)\n\n headerGroups.reverse()\n\n // headerGroups = headerGroups.filter(headerGroup => {\n // return !headerGroup.headers.every(header => header.isPlaceholder)\n // })\n\n const recurseHeadersForSpans = (headers: Header<TGenerics>[]) => {\n const filteredHeaders = headers.filter(header =>\n header.column.getIsVisible()\n )\n\n return filteredHeaders.map(header => {\n let colSpan = 0\n let rowSpan = 0\n let childRowSpans = [0]\n\n if (header.subHeaders && header.subHeaders.length) {\n childRowSpans = []\n\n recurseHeadersForSpans(header.subHeaders).forEach(\n ({ colSpan: childColSpan, rowSpan: childRowSpan }) => {\n colSpan += childColSpan\n childRowSpans.push(childRowSpan)\n }\n )\n } else {\n colSpan = 1\n }\n\n const minChildRowSpan = Math.min(...childRowSpans)\n rowSpan = rowSpan + minChildRowSpan\n\n header.colSpan = colSpan > 0 ? colSpan : undefined\n header.rowSpan = rowSpan > 0 ? rowSpan : undefined\n\n return { colSpan, rowSpan }\n })\n }\n\n recurseHeadersForSpans(headerGroups[0]?.headers ?? [])\n\n return headerGroups\n}\n"],"names":["Headers","createInstance","instance","createHeader","column","options","id","header","index","isPlaceholder","placeholderId","depth","subHeaders","colSpan","rowSpan","headerGroup","getLeafHeaders","leafHeaders","recurseHeader","h","length","map","push","renderHeader","_render","renderFooter","footer","_features","forEach","feature","Object","assign","getHeaderGroups","memo","getAllColumns","getVisibleLeafColumns","getState","columnPinning","left","right","allColumns","leafColumns","leftColumns","columnId","find","d","filter","Boolean","rightColumns","centerColumns","includes","headerGroups","buildHeaderGroups","key","process","env","NODE_ENV","debug","debugAll","debugHeaders","getCenterHeaderGroups","getLeftHeaderGroups","orderedLeafColumns","getRightHeaderGroups","getFooterGroups","reverse","getLeftFooterGroups","getCenterFooterGroups","getRightFooterGroups","getFlatHeaders","headers","flat","getLeftFlatHeaders","getCenterFlatHeaders","getRightFlatHeaders","getCenterLeafHeaders","flatHeaders","getLeftLeafHeaders","getRightLeafHeaders","center","getHeader","console","warn","Error","columnsToGroup","headerFamily","maxDepth","findMaxDepth","columns","Math","max","getIsVisible","createHeaderGroup","headersToGroup","join","pendingParentHeaders","headerToGroup","latestPendingParentHeader","isLeafHeader","parent","undefined","bottomHeaders","recurseHeadersForSpans","filteredHeaders","childRowSpans","childColSpan","childRowSpan","minChildRowSpan","min"],"mappings":"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"}
@@ -44,7 +44,7 @@ const Rows = {
44
44
  const column = instance.getColumn(columnId);
45
45
 
46
46
  if (!column.accessorFn) {
47
- throw new Error();
47
+ return undefined;
48
48
  }
49
49
 
50
50
  row.valuesCache[columnId] = column.accessorFn(row.original, rowIndex);
@@ -1 +1 @@
1
- {"version":3,"file":"Rows.js","sources":["../../../src/features/Rows.ts"],"sourcesContent":["import {\n TableGenerics,\n TableInstance,\n Row,\n RowModel,\n RowValues,\n} from '../types'\nimport { flattenBy } from '../utils'\n\nexport type CoreRow<TGenerics extends TableGenerics> = {\n id: string\n index: number\n original?: TGenerics['Row']\n depth: number\n valuesCache: Record<string, any>\n getValue: (columnId: string) => any\n subRows: Row<TGenerics>[]\n getLeafRows: () => Row<TGenerics>[]\n originalSubRows?: TGenerics['Row'][]\n}\n\nexport type RowsOptions<TGenerics extends TableGenerics> = {\n getCoreRowModel: (\n instance: TableInstance<TGenerics>\n ) => () => RowModel<TGenerics>\n getSubRows?: (\n originalRow: TGenerics['Row'],\n index: number\n ) => undefined | TGenerics['Row'][]\n getRowId?: (\n originalRow: TGenerics['Row'],\n index: number,\n parent?: Row<TGenerics>\n ) => string\n}\n\nexport type RowsInstance<TGenerics extends TableGenerics> = {\n getRowId: (\n _: TGenerics['Row'],\n index: number,\n parent?: Row<TGenerics>\n ) => string\n createRow: (\n id: string,\n original: TGenerics['Row'] | undefined,\n rowIndex: number,\n depth: number,\n subRows?: Row<TGenerics>[]\n ) => Row<TGenerics>\n getCoreRowModel: () => RowModel<TGenerics>\n _getCoreRowModel?: () => RowModel<TGenerics>\n getRowModel: () => RowModel<TGenerics>\n getRow: (id: string) => Row<TGenerics>\n}\n\n//\n\nexport const Rows = {\n // createRow: <TGenerics extends TableGenerics>(\n // row: Row<TGenerics>,\n // instance: TableInstance<TGenerics>\n // ): CellsRow<TGenerics> => {\n // return {}\n // },\n\n createInstance: <TGenerics extends TableGenerics>(\n instance: TableInstance<TGenerics>\n ): RowsInstance<TGenerics> => {\n return {\n getRowId: (\n row: TGenerics['Row'],\n index: number,\n parent?: Row<TGenerics>\n ) =>\n instance.options.getRowId?.(row, index, parent) ??\n `${parent ? [parent.id, index].join('.') : index}`,\n createRow: (id, original, rowIndex, depth, subRows) => {\n let row: CoreRow<TGenerics> = {\n id,\n index: rowIndex,\n original,\n depth,\n valuesCache: {},\n getValue: columnId => {\n if (row.valuesCache.hasOwnProperty(columnId)) {\n return row.valuesCache[columnId]\n }\n const column = instance.getColumn(columnId)\n if (!column.accessorFn) {\n throw new Error()\n }\n row.valuesCache[columnId] = column.accessorFn(\n row.original,\n rowIndex\n )\n return row.valuesCache[columnId]\n },\n subRows: subRows ?? [],\n getLeafRows: () => flattenBy(row.subRows, d => d.subRows),\n }\n\n for (let i = 0; i < instance._features.length; i++) {\n const feature = instance._features[i]\n Object.assign(row, feature?.createRow?.(row, instance))\n }\n\n return row as Row<TGenerics>\n },\n\n getCoreRowModel: () => {\n if (!instance._getCoreRowModel) {\n instance._getCoreRowModel = instance.options.getCoreRowModel(instance)\n }\n\n return instance._getCoreRowModel()\n },\n\n // The final calls start at the bottom of the model,\n // expanded rows, which then work their way up\n\n getRowModel: () => {\n return instance.getPaginationRowModel()\n },\n getRow: (id: string) => {\n const row = instance.getRowModel().rowsById[id]\n\n if (!row) {\n if (process.env.NODE_ENV !== 'production') {\n throw new Error(`getRow expected an ID, but got ${id}`)\n }\n throw new Error()\n }\n\n return row\n },\n }\n },\n}\n"],"names":["Rows","createInstance","instance","getRowId","row","index","parent","options","id","join","createRow","original","rowIndex","depth","subRows","valuesCache","getValue","columnId","hasOwnProperty","column","getColumn","accessorFn","Error","getLeafRows","flattenBy","d","i","_features","length","feature","Object","assign","getCoreRowModel","_getCoreRowModel","getRowModel","getPaginationRowModel","getRow","rowsById","process","env","NODE_ENV"],"mappings":"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"}
1
+ {"version":3,"file":"Rows.js","sources":["../../../src/features/Rows.ts"],"sourcesContent":["import {\n TableGenerics,\n TableInstance,\n Row,\n RowModel,\n RowValues,\n} from '../types'\nimport { flattenBy } from '../utils'\n\nexport type CoreRow<TGenerics extends TableGenerics> = {\n id: string\n index: number\n original?: TGenerics['Row']\n depth: number\n valuesCache: Record<string, any>\n getValue: (columnId: string) => any\n subRows: Row<TGenerics>[]\n getLeafRows: () => Row<TGenerics>[]\n originalSubRows?: TGenerics['Row'][]\n}\n\nexport type RowsOptions<TGenerics extends TableGenerics> = {\n getCoreRowModel: (\n instance: TableInstance<TGenerics>\n ) => () => RowModel<TGenerics>\n getSubRows?: (\n originalRow: TGenerics['Row'],\n index: number\n ) => undefined | TGenerics['Row'][]\n getRowId?: (\n originalRow: TGenerics['Row'],\n index: number,\n parent?: Row<TGenerics>\n ) => string\n}\n\nexport type RowsInstance<TGenerics extends TableGenerics> = {\n getRowId: (\n _: TGenerics['Row'],\n index: number,\n parent?: Row<TGenerics>\n ) => string\n createRow: (\n id: string,\n original: TGenerics['Row'] | undefined,\n rowIndex: number,\n depth: number,\n subRows?: Row<TGenerics>[]\n ) => Row<TGenerics>\n getCoreRowModel: () => RowModel<TGenerics>\n _getCoreRowModel?: () => RowModel<TGenerics>\n getRowModel: () => RowModel<TGenerics>\n getRow: (id: string) => Row<TGenerics>\n}\n\n//\n\nexport const Rows = {\n // createRow: <TGenerics extends TableGenerics>(\n // row: Row<TGenerics>,\n // instance: TableInstance<TGenerics>\n // ): CellsRow<TGenerics> => {\n // return {}\n // },\n\n createInstance: <TGenerics extends TableGenerics>(\n instance: TableInstance<TGenerics>\n ): RowsInstance<TGenerics> => {\n return {\n getRowId: (\n row: TGenerics['Row'],\n index: number,\n parent?: Row<TGenerics>\n ) =>\n instance.options.getRowId?.(row, index, parent) ??\n `${parent ? [parent.id, index].join('.') : index}`,\n createRow: (id, original, rowIndex, depth, subRows) => {\n let row: CoreRow<TGenerics> = {\n id,\n index: rowIndex,\n original,\n depth,\n valuesCache: {},\n getValue: columnId => {\n if (row.valuesCache.hasOwnProperty(columnId)) {\n return row.valuesCache[columnId]\n }\n\n const column = instance.getColumn(columnId)\n\n if (!column.accessorFn) {\n return undefined\n }\n\n row.valuesCache[columnId] = column.accessorFn(\n row.original,\n rowIndex\n )\n\n return row.valuesCache[columnId]\n },\n subRows: subRows ?? [],\n getLeafRows: () => flattenBy(row.subRows, d => d.subRows),\n }\n\n for (let i = 0; i < instance._features.length; i++) {\n const feature = instance._features[i]\n Object.assign(row, feature?.createRow?.(row, instance))\n }\n\n return row as Row<TGenerics>\n },\n\n getCoreRowModel: () => {\n if (!instance._getCoreRowModel) {\n instance._getCoreRowModel = instance.options.getCoreRowModel(instance)\n }\n\n return instance._getCoreRowModel()\n },\n\n // The final calls start at the bottom of the model,\n // expanded rows, which then work their way up\n\n getRowModel: () => {\n return instance.getPaginationRowModel()\n },\n getRow: (id: string) => {\n const row = instance.getRowModel().rowsById[id]\n\n if (!row) {\n if (process.env.NODE_ENV !== 'production') {\n throw new Error(`getRow expected an ID, but got ${id}`)\n }\n throw new Error()\n }\n\n return row\n },\n }\n },\n}\n"],"names":["Rows","createInstance","instance","getRowId","row","index","parent","options","id","join","createRow","original","rowIndex","depth","subRows","valuesCache","getValue","columnId","hasOwnProperty","column","getColumn","accessorFn","undefined","getLeafRows","flattenBy","d","i","_features","length","feature","Object","assign","getCoreRowModel","_getCoreRowModel","getRowModel","getPaginationRowModel","getRow","rowsById","process","env","NODE_ENV","Error"],"mappings":";;;;;;;;;;;;;;;;AAuDA;AAEO,MAAMA,IAAI,GAAG;AAClB;AACA;AACA;AACA;AACA;AACA;AAEAC,EAAAA,cAAc,EACZC,QADc,IAEc;AAC5B,IAAO,OAAA;AACLC,MAAAA,QAAQ,EAAE,CACRC,GADQ,EAERC,KAFQ,EAGRC,MAHQ,KAAA;AAAA,QAAA,IAAA,qBAAA,CAAA;;AAAA,QAAA,OAAA,CAAA,qBAAA,GAKRJ,QAAQ,CAACK,OAAT,CAAiBJ,QALT,IAKRD,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,QAAQ,CAACK,OAAT,CAAiBJ,QAAjB,CAA4BC,GAA5B,EAAiCC,KAAjC,EAAwCC,MAAxC,CALQ,KAMLA,IAAAA,GAAAA,qBAAAA,GAAAA,EAAAA,IAAAA,MAAM,GAAG,CAACA,MAAM,CAACE,EAAR,EAAYH,KAAZ,EAAmBI,IAAnB,CAAwB,GAAxB,CAAH,GAAkCJ,KANnC,CAAA,CAAA;AAAA,OADL;AAQLK,MAAAA,SAAS,EAAE,CAACF,EAAD,EAAKG,QAAL,EAAeC,QAAf,EAAyBC,KAAzB,EAAgCC,OAAhC,KAA4C;AACrD,QAAA,IAAIV,GAAuB,GAAG;AAC5BI,UAAAA,EAD4B;AAE5BH,UAAAA,KAAK,EAAEO,QAFqB;AAG5BD,UAAAA,QAH4B;AAI5BE,UAAAA,KAJ4B;AAK5BE,UAAAA,WAAW,EAAE,EALe;AAM5BC,UAAAA,QAAQ,EAAEC,QAAQ,IAAI;AACpB,YAAIb,IAAAA,GAAG,CAACW,WAAJ,CAAgBG,cAAhB,CAA+BD,QAA/B,CAAJ,EAA8C;AAC5C,cAAA,OAAOb,GAAG,CAACW,WAAJ,CAAgBE,QAAhB,CAAP,CAAA;AACD,aAAA;;AAED,YAAA,MAAME,MAAM,GAAGjB,QAAQ,CAACkB,SAAT,CAAmBH,QAAnB,CAAf,CAAA;;AAEA,YAAA,IAAI,CAACE,MAAM,CAACE,UAAZ,EAAwB;AACtB,cAAA,OAAOC,SAAP,CAAA;AACD,aAAA;;AAEDlB,YAAAA,GAAG,CAACW,WAAJ,CAAgBE,QAAhB,CAA4BE,GAAAA,MAAM,CAACE,UAAP,CAC1BjB,GAAG,CAACO,QADsB,EAE1BC,QAF0B,CAA5B,CAAA;AAKA,YAAA,OAAOR,GAAG,CAACW,WAAJ,CAAgBE,QAAhB,CAAP,CAAA;AACD,WAvB2B;AAwB5BH,UAAAA,OAAO,EAAEA,OAAF,IAAEA,IAAAA,GAAAA,OAAF,GAAa,EAxBQ;AAyB5BS,UAAAA,WAAW,EAAE,MAAMC,eAAS,CAACpB,GAAG,CAACU,OAAL,EAAcW,CAAC,IAAIA,CAAC,CAACX,OAArB,CAAA;AAzBA,SAA9B,CAAA;;AA4BA,QAAA,KAAK,IAAIY,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGxB,QAAQ,CAACyB,SAAT,CAAmBC,MAAvC,EAA+CF,CAAC,EAAhD,EAAoD;AAClD,UAAA,MAAMG,OAAO,GAAG3B,QAAQ,CAACyB,SAAT,CAAmBD,CAAnB,CAAhB,CAAA;AACAI,UAAAA,MAAM,CAACC,MAAP,CAAc3B,GAAd,EAAmByB,OAAnB,IAAmBA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAAEnB,SAA5B,IAAA,IAAA,GAAA,KAAA,CAAA,GAAmBmB,OAAO,CAAEnB,SAAT,CAAqBN,GAArB,EAA0BF,QAA1B,CAAnB,CAAA,CAAA;AACD,SAAA;;AAED,QAAA,OAAOE,GAAP,CAAA;AACD,OA3CI;AA6CL4B,MAAAA,eAAe,EAAE,MAAM;AACrB,QAAA,IAAI,CAAC9B,QAAQ,CAAC+B,gBAAd,EAAgC;AAC9B/B,UAAAA,QAAQ,CAAC+B,gBAAT,GAA4B/B,QAAQ,CAACK,OAAT,CAAiByB,eAAjB,CAAiC9B,QAAjC,CAA5B,CAAA;AACD,SAAA;;AAED,QAAOA,OAAAA,QAAQ,CAAC+B,gBAAT,EAAP,CAAA;AACD,OAnDI;AAqDL;AACA;AAEAC,MAAAA,WAAW,EAAE,MAAM;AACjB,QAAOhC,OAAAA,QAAQ,CAACiC,qBAAT,EAAP,CAAA;AACD,OA1DI;AA2DLC,MAAAA,MAAM,EAAG5B,EAAD,IAAgB;AACtB,QAAMJ,MAAAA,GAAG,GAAGF,QAAQ,CAACgC,WAAT,EAAuBG,CAAAA,QAAvB,CAAgC7B,EAAhC,CAAZ,CAAA;;AAEA,QAAI,IAAA,CAACJ,GAAL,EAAU;AACR,UAAA,IAAIkC,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,YAA7B,EAA2C;AACzC,YAAA,MAAM,IAAIC,KAAJ,CAA4CjC,iCAAAA,GAAAA,EAA5C,CAAN,CAAA;AACD,WAAA;;AACD,UAAM,MAAA,IAAIiC,KAAJ,EAAN,CAAA;AACD,SAAA;;AAED,QAAA,OAAOrC,GAAP,CAAA;AACD,OAAA;AAtEI,KAAP,CAAA;AAwED,GAAA;AAnFiB;;;;"}
@@ -286,7 +286,7 @@ const Rows = {
286
286
  const column = instance.getColumn(columnId);
287
287
 
288
288
  if (!column.accessorFn) {
289
- throw new Error();
289
+ return undefined;
290
290
  }
291
291
 
292
292
  row.valuesCache[columnId] = column.accessorFn(row.original, rowIndex);
@@ -529,7 +529,7 @@ const ColumnSizing = {
529
529
  }
530
530
  }
531
531
 
532
- const startSize = column.getSize();
532
+ const startSize = header.getSize();
533
533
  const columnSizingStart = header ? header.getLeafHeaders().map(d => [d.column.id, d.column.getSize()]) : [[column.id, column.getSize()]];
534
534
  const clientX = isTouchStartEvent(e) ? Math.round(e.touches[0].clientX) : e.clientX;
535
535
 
@@ -2676,8 +2676,10 @@ const Headers = {
2676
2676
  },
2677
2677
  // Header Groups
2678
2678
  getHeaderGroups: memo(() => [instance.getAllColumns(), instance.getVisibleLeafColumns(), instance.getState().columnPinning.left, instance.getState().columnPinning.right], (allColumns, leafColumns, left, right) => {
2679
- const leftColumns = leafColumns.filter(column => left == null ? void 0 : left.includes(column.id));
2680
- const rightColumns = leafColumns.filter(column => right == null ? void 0 : right.includes(column.id));
2679
+ var _left$map$filter, _right$map$filter;
2680
+
2681
+ const leftColumns = (_left$map$filter = left == null ? void 0 : left.map(columnId => leafColumns.find(d => d.id === columnId)).filter(Boolean)) != null ? _left$map$filter : [];
2682
+ const rightColumns = (_right$map$filter = right == null ? void 0 : right.map(columnId => leafColumns.find(d => d.id === columnId)).filter(Boolean)) != null ? _right$map$filter : [];
2681
2683
  const centerColumns = leafColumns.filter(column => !(left != null && left.includes(column.id)) && !(right != null && right.includes(column.id)));
2682
2684
  const headerGroups = buildHeaderGroups(allColumns, [...leftColumns, ...centerColumns, ...rightColumns], instance);
2683
2685
  return headerGroups;
@@ -2701,9 +2703,9 @@ const Headers = {
2701
2703
  }
2702
2704
  }),
2703
2705
  getLeftHeaderGroups: memo(() => [instance.getAllColumns(), instance.getVisibleLeafColumns(), instance.getState().columnPinning.left], (allColumns, leafColumns, left) => {
2704
- var _left$map$filter;
2706
+ var _left$map$filter2;
2705
2707
 
2706
- const orderedLeafColumns = (_left$map$filter = left == null ? void 0 : left.map(columnId => leafColumns.find(d => d.id === columnId)).filter(Boolean)) != null ? _left$map$filter : [];
2708
+ const orderedLeafColumns = (_left$map$filter2 = left == null ? void 0 : left.map(columnId => leafColumns.find(d => d.id === columnId)).filter(Boolean)) != null ? _left$map$filter2 : [];
2707
2709
  return buildHeaderGroups(allColumns, orderedLeafColumns, instance, 'left');
2708
2710
  }, {
2709
2711
  key: process.env.NODE_ENV === 'development' && 'getLeftHeaderGroups',
@@ -2714,9 +2716,9 @@ const Headers = {
2714
2716
  }
2715
2717
  }),
2716
2718
  getRightHeaderGroups: memo(() => [instance.getAllColumns(), instance.getVisibleLeafColumns(), instance.getState().columnPinning.right], (allColumns, leafColumns, right) => {
2717
- var _right$map$filter;
2719
+ var _right$map$filter2;
2718
2720
 
2719
- const orderedLeafColumns = (_right$map$filter = right == null ? void 0 : right.map(columnId => leafColumns.find(d => d.id === columnId)).filter(Boolean)) != null ? _right$map$filter : [];
2721
+ const orderedLeafColumns = (_right$map$filter2 = right == null ? void 0 : right.map(columnId => leafColumns.find(d => d.id === columnId)).filter(Boolean)) != null ? _right$map$filter2 : [];
2720
2722
  return buildHeaderGroups(allColumns, orderedLeafColumns, instance, 'right');
2721
2723
  }, {
2722
2724
  key: process.env.NODE_ENV === 'development' && 'getRightHeaderGroups',