@tanstack/table-core 8.11.5 → 8.11.7

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.
@@ -102,7 +102,6 @@ const ColumnSizing = {
102
102
  return 0;
103
103
  };
104
104
  header.getResizeHandler = _contextDocument => {
105
- const contextDocument = _contextDocument || document;
106
105
  const column = table.getColumn(header.column.id);
107
106
  const canResize = column == null ? void 0 : column.getCanResize();
108
107
  return e => {
@@ -159,11 +158,12 @@ const ColumnSizing = {
159
158
  columnSizingStart: []
160
159
  }));
161
160
  };
161
+ const contextDocument = _contextDocument || typeof document !== 'undefined' ? document : null;
162
162
  const mouseEvents = {
163
163
  moveHandler: e => onMove(e.clientX),
164
164
  upHandler: e => {
165
- contextDocument.removeEventListener('mousemove', mouseEvents.moveHandler);
166
- contextDocument.removeEventListener('mouseup', mouseEvents.upHandler);
165
+ contextDocument == null || contextDocument.removeEventListener('mousemove', mouseEvents.moveHandler);
166
+ contextDocument == null || contextDocument.removeEventListener('mouseup', mouseEvents.upHandler);
167
167
  onEnd(e.clientX);
168
168
  }
169
169
  };
@@ -178,8 +178,8 @@ const ColumnSizing = {
178
178
  },
179
179
  upHandler: e => {
180
180
  var _e$touches$;
181
- contextDocument.removeEventListener('touchmove', touchEvents.moveHandler);
182
- contextDocument.removeEventListener('touchend', touchEvents.upHandler);
181
+ contextDocument == null || contextDocument.removeEventListener('touchmove', touchEvents.moveHandler);
182
+ contextDocument == null || contextDocument.removeEventListener('touchend', touchEvents.upHandler);
183
183
  if (e.cancelable) {
184
184
  e.preventDefault();
185
185
  e.stopPropagation();
@@ -191,11 +191,11 @@ const ColumnSizing = {
191
191
  passive: false
192
192
  } : false;
193
193
  if (isTouchStartEvent(e)) {
194
- contextDocument.addEventListener('touchmove', touchEvents.moveHandler, passiveIfSupported);
195
- contextDocument.addEventListener('touchend', touchEvents.upHandler, passiveIfSupported);
194
+ contextDocument == null || contextDocument.addEventListener('touchmove', touchEvents.moveHandler, passiveIfSupported);
195
+ contextDocument == null || contextDocument.addEventListener('touchend', touchEvents.upHandler, passiveIfSupported);
196
196
  } else {
197
- contextDocument.addEventListener('mousemove', mouseEvents.moveHandler, passiveIfSupported);
198
- contextDocument.addEventListener('mouseup', mouseEvents.upHandler, passiveIfSupported);
197
+ contextDocument == null || contextDocument.addEventListener('mousemove', mouseEvents.moveHandler, passiveIfSupported);
198
+ contextDocument == null || contextDocument.addEventListener('mouseup', mouseEvents.upHandler, passiveIfSupported);
199
199
  }
200
200
  table.setColumnSizingInfo(old => ({
201
201
  ...old,
@@ -1 +1 @@
1
- {"version":3,"file":"ColumnSizing.js","sources":["../../../src/features/ColumnSizing.ts"],"sourcesContent":["import { TableFeature } from '../core/table'\nimport { RowData, Column, Header, OnChangeFn, Table, Updater } from '../types'\nimport { makeStateUpdater } from '../utils'\nimport { ColumnPinningPosition } from './Pinning'\n\n//\n\nexport interface ColumnSizingTableState {\n columnSizing: ColumnSizingState\n columnSizingInfo: ColumnSizingInfoState\n}\n\nexport type ColumnSizingState = Record<string, number>\n\nexport interface ColumnSizingInfoState {\n columnSizingStart: [string, number][]\n deltaOffset: null | number\n deltaPercentage: null | number\n isResizingColumn: false | string\n startOffset: null | number\n startSize: null | number\n}\n\nexport type ColumnResizeMode = 'onChange' | 'onEnd'\n\nexport type ColumnResizeDirection = 'ltr' | 'rtl'\n\nexport interface ColumnSizingOptions {\n /**\n * Determines when the columnSizing state is updated. `onChange` updates the state when the user is dragging the resize handle. `onEnd` updates the state when the user releases the resize handle.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#columnresizemode)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n columnResizeMode?: ColumnResizeMode\n /**\n * Enables or disables column resizing for the column.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#enablecolumnresizing)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n enableColumnResizing?: boolean\n /**\n * Enables or disables right-to-left support for resizing the column. defaults to 'ltr'.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#columnResizeDirection)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n columnResizeDirection?: ColumnResizeDirection\n /**\n * If provided, this function will be called with an `updaterFn` when `state.columnSizing` changes. This overrides the default internal state management, so you will also need to supply `state.columnSizing` from your own managed state.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#oncolumnsizingchange)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n onColumnSizingChange?: OnChangeFn<ColumnSizingState>\n /**\n * If provided, this function will be called with an `updaterFn` when `state.columnSizingInfo` changes. This overrides the default internal state management, so you will also need to supply `state.columnSizingInfo` from your own managed state.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#oncolumnsizinginfochange)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n onColumnSizingInfoChange?: OnChangeFn<ColumnSizingInfoState>\n}\n\nexport type ColumnSizingDefaultOptions = Pick<\n ColumnSizingOptions,\n | 'columnResizeMode'\n | 'onColumnSizingChange'\n | 'onColumnSizingInfoChange'\n | 'columnResizeDirection'\n>\n\nexport interface ColumnSizingInstance {\n /**\n * If pinning, returns the total size of the center portion of the table by calculating the sum of the sizes of all unpinned/center leaf-columns.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#getcentertotalsize)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n getCenterTotalSize: () => number\n /**\n * Returns the total size of the left portion of the table by calculating the sum of the sizes of all left leaf-columns.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#getlefttotalsize)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n getLeftTotalSize: () => number\n /**\n * Returns the total size of the right portion of the table by calculating the sum of the sizes of all right leaf-columns.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#getrighttotalsize)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n getRightTotalSize: () => number\n /**\n * Returns the total size of the table by calculating the sum of the sizes of all leaf-columns.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#gettotalsize)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n getTotalSize: () => number\n /**\n * Resets column sizing to its initial state. If `defaultState` is `true`, the default state for the table will be used instead of the initialValue provided to the table.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#resetcolumnsizing)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n resetColumnSizing: (defaultState?: boolean) => void\n /**\n * Resets column sizing info to its initial state. If `defaultState` is `true`, the default state for the table will be used instead of the initialValue provided to the table.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#resetheadersizeinfo)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n resetHeaderSizeInfo: (defaultState?: boolean) => void\n /**\n * Sets the column sizing state using an updater function or a value. This will trigger the underlying `onColumnSizingChange` function if one is passed to the table options, otherwise the state will be managed automatically by the table.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#setcolumnsizing)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n setColumnSizing: (updater: Updater<ColumnSizingState>) => void\n /**\n * Sets the column sizing info state using an updater function or a value. This will trigger the underlying `onColumnSizingInfoChange` function if one is passed to the table options, otherwise the state will be managed automatically by the table.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#setcolumnsizinginfo)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n setColumnSizingInfo: (updater: Updater<ColumnSizingInfoState>) => void\n}\n\nexport interface ColumnSizingColumnDef {\n /**\n * Enables or disables column resizing for the column.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#enableresizing)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n enableResizing?: boolean\n /**\n * The maximum allowed size for the column\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#maxsize)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n maxSize?: number\n /**\n * The minimum allowed size for the column\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#minsize)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n minSize?: number\n /**\n * The desired size for the column\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#size)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n size?: number\n}\n\nexport interface ColumnSizingColumn {\n /**\n * Returns `true` if the column can be resized.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#getcanresize)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n getCanResize: () => boolean\n /**\n * Returns `true` if the column is currently being resized.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#getisresizing)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n getIsResizing: () => boolean\n /**\n * Returns the current size of the column.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#getsize)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n getSize: () => number\n /**\n * Returns the offset measurement along the row-axis (usually the x-axis for standard tables) for the header. This is effectively a sum of the offset measurements of all preceding headers.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#getstart)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n getStart: (position?: ColumnPinningPosition) => number\n /**\n * Resets the column to its initial size.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#resetsize)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n resetSize: () => void\n}\n\nexport interface ColumnSizingHeader {\n /**\n * Returns an event handler function that can be used to resize the header. It can be used as an:\n * - `onMouseDown` handler\n * - `onTouchStart` handler\n *\n * The dragging and release events are automatically handled for you.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#getresizehandler)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n getResizeHandler: (context?: Document) => (event: unknown) => void\n /**\n * Returns the current size of the header.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#getsize)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n getSize: () => number\n /**\n * Returns the offset measurement along the row-axis (usually the x-axis for standard tables) for the header. This is effectively a sum of the offset measurements of all preceding headers.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#getstart)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n getStart: (position?: ColumnPinningPosition) => number\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 getDefaultColumnDef: (): ColumnSizingColumnDef => {\n return defaultColumnSizing\n },\n getInitialState: (state): ColumnSizingTableState => {\n return {\n columnSizing: {},\n columnSizingInfo: getDefaultColumnSizingInfoState(),\n ...state,\n }\n },\n\n getDefaultOptions: <TData extends RowData>(\n table: Table<TData>\n ): ColumnSizingDefaultOptions => {\n return {\n columnResizeMode: 'onEnd',\n columnResizeDirection: 'ltr',\n onColumnSizingChange: makeStateUpdater('columnSizing', table),\n onColumnSizingInfoChange: makeStateUpdater('columnSizingInfo', table),\n }\n },\n\n createColumn: <TData extends RowData, TValue>(\n column: Column<TData, TValue>,\n table: Table<TData>\n ): void => {\n column.getSize = () => {\n const columnSize = table.getState().columnSizing[column.id]\n\n return Math.min(\n Math.max(\n column.columnDef.minSize ?? defaultColumnSizing.minSize,\n columnSize ?? column.columnDef.size ?? defaultColumnSizing.size\n ),\n column.columnDef.maxSize ?? defaultColumnSizing.maxSize\n )\n }\n column.getStart = position => {\n const columns = !position\n ? table.getVisibleLeafColumns()\n : position === 'left'\n ? table.getLeftVisibleLeafColumns()\n : table.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 column.resetSize = () => {\n table.setColumnSizing(({ [column.id]: _, ...rest }) => {\n return rest\n })\n }\n column.getCanResize = () => {\n return (\n (column.columnDef.enableResizing ?? true) &&\n (table.options.enableColumnResizing ?? true)\n )\n }\n column.getIsResizing = () => {\n return table.getState().columnSizingInfo.isResizingColumn === column.id\n }\n },\n\n createHeader: <TData extends RowData, TValue>(\n header: Header<TData, TValue>,\n table: Table<TData>\n ): void => {\n header.getSize = () => {\n let sum = 0\n\n const recurse = (header: Header<TData, TValue>) => {\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 header.getStart = () => {\n if (header.index > 0) {\n const prevSiblingHeader = header.headerGroup.headers[header.index - 1]!\n return prevSiblingHeader.getStart() + prevSiblingHeader.getSize()\n }\n\n return 0\n }\n header.getResizeHandler = _contextDocument => {\n const contextDocument = _contextDocument || document\n const column = table.getColumn(header.column.id)\n const canResize = column?.getCanResize()\n\n return (e: unknown) => {\n if (!column || !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.getLeafHeaders().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 newColumnSizing: ColumnSizingState = {}\n\n const updateOffset = (\n eventType: 'move' | 'end',\n clientXPos?: number\n ) => {\n if (typeof clientXPos !== 'number') {\n return\n }\n\n table.setColumnSizingInfo(old => {\n const deltaDirection =\n table.options.columnResizeDirection === 'rtl' ? -1 : 1\n const deltaOffset =\n (clientXPos - (old?.startOffset ?? 0)) * deltaDirection\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 table.options.columnResizeMode === 'onChange' ||\n eventType === 'end'\n ) {\n table.setColumnSizing(old => ({\n ...old,\n ...newColumnSizing,\n }))\n }\n }\n\n const onMove = (clientXPos?: number) => updateOffset('move', clientXPos)\n\n const onEnd = (clientXPos?: number) => {\n updateOffset('end', clientXPos)\n\n table.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 contextDocument.removeEventListener(\n 'mousemove',\n mouseEvents.moveHandler\n )\n contextDocument.removeEventListener(\n 'mouseup',\n mouseEvents.upHandler\n )\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 contextDocument.removeEventListener(\n 'touchmove',\n touchEvents.moveHandler\n )\n contextDocument.removeEventListener(\n 'touchend',\n touchEvents.upHandler\n )\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 contextDocument.addEventListener(\n 'touchmove',\n touchEvents.moveHandler,\n passiveIfSupported\n )\n contextDocument.addEventListener(\n 'touchend',\n touchEvents.upHandler,\n passiveIfSupported\n )\n } else {\n contextDocument.addEventListener(\n 'mousemove',\n mouseEvents.moveHandler,\n passiveIfSupported\n )\n contextDocument.addEventListener(\n 'mouseup',\n mouseEvents.upHandler,\n passiveIfSupported\n )\n }\n\n table.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 createTable: <TData extends RowData>(table: Table<TData>): void => {\n table.setColumnSizing = updater =>\n table.options.onColumnSizingChange?.(updater)\n table.setColumnSizingInfo = updater =>\n table.options.onColumnSizingInfoChange?.(updater)\n table.resetColumnSizing = defaultState => {\n table.setColumnSizing(\n defaultState ? {} : table.initialState.columnSizing ?? {}\n )\n }\n table.resetHeaderSizeInfo = defaultState => {\n table.setColumnSizingInfo(\n defaultState\n ? getDefaultColumnSizingInfoState()\n : table.initialState.columnSizingInfo ??\n getDefaultColumnSizingInfoState()\n )\n }\n table.getTotalSize = () =>\n table.getHeaderGroups()[0]?.headers.reduce((sum, header) => {\n return sum + header.getSize()\n }, 0) ?? 0\n table.getLeftTotalSize = () =>\n table.getLeftHeaderGroups()[0]?.headers.reduce((sum, header) => {\n return sum + header.getSize()\n }, 0) ?? 0\n table.getCenterTotalSize = () =>\n table.getCenterHeaderGroups()[0]?.headers.reduce((sum, header) => {\n return sum + header.getSize()\n }, 0) ?? 0\n table.getRightTotalSize = () =>\n table.getRightHeaderGroups()[0]?.headers.reduce((sum, header) => {\n return sum + header.getSize()\n }, 0) ?? 0\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","getDefaultColumnDef","getInitialState","state","columnSizing","columnSizingInfo","getDefaultOptions","table","columnResizeMode","columnResizeDirection","onColumnSizingChange","makeStateUpdater","onColumnSizingInfoChange","createColumn","column","getSize","_column$columnDef$min","_ref","_column$columnDef$max","columnSize","getState","id","Math","min","max","columnDef","getStart","position","columns","getVisibleLeafColumns","getLeftVisibleLeafColumns","getRightVisibleLeafColumns","index","findIndex","d","prevSiblingColumn","resetSize","setColumnSizing","_ref2","_","rest","getCanResize","_column$columnDef$ena","_table$options$enable","enableResizing","options","enableColumnResizing","getIsResizing","createHeader","header","sum","recurse","subHeaders","length","forEach","_header$column$getSiz","prevSiblingHeader","headerGroup","headers","getResizeHandler","_contextDocument","contextDocument","document","getColumn","canResize","e","persist","isTouchStartEvent","touches","getLeafHeaders","map","clientX","round","newColumnSizing","updateOffset","eventType","clientXPos","setColumnSizingInfo","old","_old$startOffset","_old$startSize","deltaDirection","_ref3","columnId","headerSize","onMove","onEnd","mouseEvents","moveHandler","upHandler","removeEventListener","touchEvents","cancelable","preventDefault","stopPropagation","_e$touches$","passiveIfSupported","passiveEventSupported","passive","addEventListener","createTable","updater","resetColumnSizing","defaultState","_table$initialState$c","initialState","resetHeaderSizeInfo","_table$initialState$c2","getTotalSize","_table$getHeaderGroup","_table$getHeaderGroup2","getHeaderGroups","reduce","getLeftTotalSize","_table$getLeftHeaderG","_table$getLeftHeaderG2","getLeftHeaderGroups","getCenterTotalSize","_table$getCenterHeade","_table$getCenterHeade2","getCenterHeaderGroups","getRightTotalSize","_table$getRightHeader","_table$getRightHeader2","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 { TableFeature } from '../core/table'\nimport { RowData, Column, Header, OnChangeFn, Table, Updater } from '../types'\nimport { makeStateUpdater } from '../utils'\nimport { ColumnPinningPosition } from './Pinning'\n\n//\n\nexport interface ColumnSizingTableState {\n columnSizing: ColumnSizingState\n columnSizingInfo: ColumnSizingInfoState\n}\n\nexport type ColumnSizingState = Record<string, number>\n\nexport interface ColumnSizingInfoState {\n columnSizingStart: [string, number][]\n deltaOffset: null | number\n deltaPercentage: null | number\n isResizingColumn: false | string\n startOffset: null | number\n startSize: null | number\n}\n\nexport type ColumnResizeMode = 'onChange' | 'onEnd'\n\nexport type ColumnResizeDirection = 'ltr' | 'rtl'\n\nexport interface ColumnSizingOptions {\n /**\n * Determines when the columnSizing state is updated. `onChange` updates the state when the user is dragging the resize handle. `onEnd` updates the state when the user releases the resize handle.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#columnresizemode)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n columnResizeMode?: ColumnResizeMode\n /**\n * Enables or disables column resizing for the column.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#enablecolumnresizing)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n enableColumnResizing?: boolean\n /**\n * Enables or disables right-to-left support for resizing the column. defaults to 'ltr'.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#columnResizeDirection)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n columnResizeDirection?: ColumnResizeDirection\n /**\n * If provided, this function will be called with an `updaterFn` when `state.columnSizing` changes. This overrides the default internal state management, so you will also need to supply `state.columnSizing` from your own managed state.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#oncolumnsizingchange)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n onColumnSizingChange?: OnChangeFn<ColumnSizingState>\n /**\n * If provided, this function will be called with an `updaterFn` when `state.columnSizingInfo` changes. This overrides the default internal state management, so you will also need to supply `state.columnSizingInfo` from your own managed state.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#oncolumnsizinginfochange)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n onColumnSizingInfoChange?: OnChangeFn<ColumnSizingInfoState>\n}\n\nexport type ColumnSizingDefaultOptions = Pick<\n ColumnSizingOptions,\n | 'columnResizeMode'\n | 'onColumnSizingChange'\n | 'onColumnSizingInfoChange'\n | 'columnResizeDirection'\n>\n\nexport interface ColumnSizingInstance {\n /**\n * If pinning, returns the total size of the center portion of the table by calculating the sum of the sizes of all unpinned/center leaf-columns.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#getcentertotalsize)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n getCenterTotalSize: () => number\n /**\n * Returns the total size of the left portion of the table by calculating the sum of the sizes of all left leaf-columns.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#getlefttotalsize)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n getLeftTotalSize: () => number\n /**\n * Returns the total size of the right portion of the table by calculating the sum of the sizes of all right leaf-columns.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#getrighttotalsize)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n getRightTotalSize: () => number\n /**\n * Returns the total size of the table by calculating the sum of the sizes of all leaf-columns.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#gettotalsize)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n getTotalSize: () => number\n /**\n * Resets column sizing to its initial state. If `defaultState` is `true`, the default state for the table will be used instead of the initialValue provided to the table.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#resetcolumnsizing)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n resetColumnSizing: (defaultState?: boolean) => void\n /**\n * Resets column sizing info to its initial state. If `defaultState` is `true`, the default state for the table will be used instead of the initialValue provided to the table.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#resetheadersizeinfo)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n resetHeaderSizeInfo: (defaultState?: boolean) => void\n /**\n * Sets the column sizing state using an updater function or a value. This will trigger the underlying `onColumnSizingChange` function if one is passed to the table options, otherwise the state will be managed automatically by the table.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#setcolumnsizing)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n setColumnSizing: (updater: Updater<ColumnSizingState>) => void\n /**\n * Sets the column sizing info state using an updater function or a value. This will trigger the underlying `onColumnSizingInfoChange` function if one is passed to the table options, otherwise the state will be managed automatically by the table.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#setcolumnsizinginfo)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n setColumnSizingInfo: (updater: Updater<ColumnSizingInfoState>) => void\n}\n\nexport interface ColumnSizingColumnDef {\n /**\n * Enables or disables column resizing for the column.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#enableresizing)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n enableResizing?: boolean\n /**\n * The maximum allowed size for the column\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#maxsize)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n maxSize?: number\n /**\n * The minimum allowed size for the column\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#minsize)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n minSize?: number\n /**\n * The desired size for the column\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#size)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n size?: number\n}\n\nexport interface ColumnSizingColumn {\n /**\n * Returns `true` if the column can be resized.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#getcanresize)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n getCanResize: () => boolean\n /**\n * Returns `true` if the column is currently being resized.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#getisresizing)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n getIsResizing: () => boolean\n /**\n * Returns the current size of the column.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#getsize)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n getSize: () => number\n /**\n * Returns the offset measurement along the row-axis (usually the x-axis for standard tables) for the header. This is effectively a sum of the offset measurements of all preceding headers.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#getstart)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n getStart: (position?: ColumnPinningPosition) => number\n /**\n * Resets the column to its initial size.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#resetsize)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n resetSize: () => void\n}\n\nexport interface ColumnSizingHeader {\n /**\n * Returns an event handler function that can be used to resize the header. It can be used as an:\n * - `onMouseDown` handler\n * - `onTouchStart` handler\n *\n * The dragging and release events are automatically handled for you.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#getresizehandler)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n getResizeHandler: (context?: Document) => (event: unknown) => void\n /**\n * Returns the current size of the header.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#getsize)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n getSize: () => number\n /**\n * Returns the offset measurement along the row-axis (usually the x-axis for standard tables) for the header. This is effectively a sum of the offset measurements of all preceding headers.\n * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/column-sizing#getstart)\n * @link [Guide](https://tanstack.com/table/v8/docs/guide/column-sizing)\n */\n getStart: (position?: ColumnPinningPosition) => number\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 getDefaultColumnDef: (): ColumnSizingColumnDef => {\n return defaultColumnSizing\n },\n getInitialState: (state): ColumnSizingTableState => {\n return {\n columnSizing: {},\n columnSizingInfo: getDefaultColumnSizingInfoState(),\n ...state,\n }\n },\n\n getDefaultOptions: <TData extends RowData>(\n table: Table<TData>\n ): ColumnSizingDefaultOptions => {\n return {\n columnResizeMode: 'onEnd',\n columnResizeDirection: 'ltr',\n onColumnSizingChange: makeStateUpdater('columnSizing', table),\n onColumnSizingInfoChange: makeStateUpdater('columnSizingInfo', table),\n }\n },\n\n createColumn: <TData extends RowData, TValue>(\n column: Column<TData, TValue>,\n table: Table<TData>\n ): void => {\n column.getSize = () => {\n const columnSize = table.getState().columnSizing[column.id]\n\n return Math.min(\n Math.max(\n column.columnDef.minSize ?? defaultColumnSizing.minSize,\n columnSize ?? column.columnDef.size ?? defaultColumnSizing.size\n ),\n column.columnDef.maxSize ?? defaultColumnSizing.maxSize\n )\n }\n column.getStart = position => {\n const columns = !position\n ? table.getVisibleLeafColumns()\n : position === 'left'\n ? table.getLeftVisibleLeafColumns()\n : table.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 column.resetSize = () => {\n table.setColumnSizing(({ [column.id]: _, ...rest }) => {\n return rest\n })\n }\n column.getCanResize = () => {\n return (\n (column.columnDef.enableResizing ?? true) &&\n (table.options.enableColumnResizing ?? true)\n )\n }\n column.getIsResizing = () => {\n return table.getState().columnSizingInfo.isResizingColumn === column.id\n }\n },\n\n createHeader: <TData extends RowData, TValue>(\n header: Header<TData, TValue>,\n table: Table<TData>\n ): void => {\n header.getSize = () => {\n let sum = 0\n\n const recurse = (header: Header<TData, TValue>) => {\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 header.getStart = () => {\n if (header.index > 0) {\n const prevSiblingHeader = header.headerGroup.headers[header.index - 1]!\n return prevSiblingHeader.getStart() + prevSiblingHeader.getSize()\n }\n\n return 0\n }\n header.getResizeHandler = _contextDocument => {\n const column = table.getColumn(header.column.id)\n const canResize = column?.getCanResize()\n\n return (e: unknown) => {\n if (!column || !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.getLeafHeaders().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 newColumnSizing: ColumnSizingState = {}\n\n const updateOffset = (\n eventType: 'move' | 'end',\n clientXPos?: number\n ) => {\n if (typeof clientXPos !== 'number') {\n return\n }\n\n table.setColumnSizingInfo(old => {\n const deltaDirection =\n table.options.columnResizeDirection === 'rtl' ? -1 : 1\n const deltaOffset =\n (clientXPos - (old?.startOffset ?? 0)) * deltaDirection\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 table.options.columnResizeMode === 'onChange' ||\n eventType === 'end'\n ) {\n table.setColumnSizing(old => ({\n ...old,\n ...newColumnSizing,\n }))\n }\n }\n\n const onMove = (clientXPos?: number) => updateOffset('move', clientXPos)\n\n const onEnd = (clientXPos?: number) => {\n updateOffset('end', clientXPos)\n\n table.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 contextDocument =\n _contextDocument || typeof document !== 'undefined' ? document : null\n\n const mouseEvents = {\n moveHandler: (e: MouseEvent) => onMove(e.clientX),\n upHandler: (e: MouseEvent) => {\n contextDocument?.removeEventListener(\n 'mousemove',\n mouseEvents.moveHandler\n )\n contextDocument?.removeEventListener(\n 'mouseup',\n mouseEvents.upHandler\n )\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 contextDocument?.removeEventListener(\n 'touchmove',\n touchEvents.moveHandler\n )\n contextDocument?.removeEventListener(\n 'touchend',\n touchEvents.upHandler\n )\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 contextDocument?.addEventListener(\n 'touchmove',\n touchEvents.moveHandler,\n passiveIfSupported\n )\n contextDocument?.addEventListener(\n 'touchend',\n touchEvents.upHandler,\n passiveIfSupported\n )\n } else {\n contextDocument?.addEventListener(\n 'mousemove',\n mouseEvents.moveHandler,\n passiveIfSupported\n )\n contextDocument?.addEventListener(\n 'mouseup',\n mouseEvents.upHandler,\n passiveIfSupported\n )\n }\n\n table.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 createTable: <TData extends RowData>(table: Table<TData>): void => {\n table.setColumnSizing = updater =>\n table.options.onColumnSizingChange?.(updater)\n table.setColumnSizingInfo = updater =>\n table.options.onColumnSizingInfoChange?.(updater)\n table.resetColumnSizing = defaultState => {\n table.setColumnSizing(\n defaultState ? {} : table.initialState.columnSizing ?? {}\n )\n }\n table.resetHeaderSizeInfo = defaultState => {\n table.setColumnSizingInfo(\n defaultState\n ? getDefaultColumnSizingInfoState()\n : table.initialState.columnSizingInfo ??\n getDefaultColumnSizingInfoState()\n )\n }\n table.getTotalSize = () =>\n table.getHeaderGroups()[0]?.headers.reduce((sum, header) => {\n return sum + header.getSize()\n }, 0) ?? 0\n table.getLeftTotalSize = () =>\n table.getLeftHeaderGroups()[0]?.headers.reduce((sum, header) => {\n return sum + header.getSize()\n }, 0) ?? 0\n table.getCenterTotalSize = () =>\n table.getCenterHeaderGroups()[0]?.headers.reduce((sum, header) => {\n return sum + header.getSize()\n }, 0) ?? 0\n table.getRightTotalSize = () =>\n table.getRightHeaderGroups()[0]?.headers.reduce((sum, header) => {\n return sum + header.getSize()\n }, 0) ?? 0\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","getDefaultColumnDef","getInitialState","state","columnSizing","columnSizingInfo","getDefaultOptions","table","columnResizeMode","columnResizeDirection","onColumnSizingChange","makeStateUpdater","onColumnSizingInfoChange","createColumn","column","getSize","_column$columnDef$min","_ref","_column$columnDef$max","columnSize","getState","id","Math","min","max","columnDef","getStart","position","columns","getVisibleLeafColumns","getLeftVisibleLeafColumns","getRightVisibleLeafColumns","index","findIndex","d","prevSiblingColumn","resetSize","setColumnSizing","_ref2","_","rest","getCanResize","_column$columnDef$ena","_table$options$enable","enableResizing","options","enableColumnResizing","getIsResizing","createHeader","header","sum","recurse","subHeaders","length","forEach","_header$column$getSiz","prevSiblingHeader","headerGroup","headers","getResizeHandler","_contextDocument","getColumn","canResize","e","persist","isTouchStartEvent","touches","getLeafHeaders","map","clientX","round","newColumnSizing","updateOffset","eventType","clientXPos","setColumnSizingInfo","old","_old$startOffset","_old$startSize","deltaDirection","_ref3","columnId","headerSize","onMove","onEnd","contextDocument","document","mouseEvents","moveHandler","upHandler","removeEventListener","touchEvents","cancelable","preventDefault","stopPropagation","_e$touches$","passiveIfSupported","passiveEventSupported","passive","addEventListener","createTable","updater","resetColumnSizing","defaultState","_table$initialState$c","initialState","resetHeaderSizeInfo","_table$initialState$c2","getTotalSize","_table$getHeaderGroup","_table$getHeaderGroup2","getHeaderGroups","reduce","getLeftTotalSize","_table$getLeftHeaderG","_table$getLeftHeaderG2","getLeftHeaderGroups","getCenterTotalSize","_table$getCenterHeade","_table$getCenterHeade2","getCenterHeaderGroups","getRightTotalSize","_table$getRightHeader","_table$getRightHeader2","getRightHeaderGroups","passiveSupported","supported","noop","window","err","type"],"mappings":"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"}
@@ -602,7 +602,6 @@ const ColumnSizing = {
602
602
  return 0;
603
603
  };
604
604
  header.getResizeHandler = _contextDocument => {
605
- const contextDocument = _contextDocument || document;
606
605
  const column = table.getColumn(header.column.id);
607
606
  const canResize = column == null ? void 0 : column.getCanResize();
608
607
  return e => {
@@ -659,11 +658,12 @@ const ColumnSizing = {
659
658
  columnSizingStart: []
660
659
  }));
661
660
  };
661
+ const contextDocument = _contextDocument || typeof document !== 'undefined' ? document : null;
662
662
  const mouseEvents = {
663
663
  moveHandler: e => onMove(e.clientX),
664
664
  upHandler: e => {
665
- contextDocument.removeEventListener('mousemove', mouseEvents.moveHandler);
666
- contextDocument.removeEventListener('mouseup', mouseEvents.upHandler);
665
+ contextDocument == null || contextDocument.removeEventListener('mousemove', mouseEvents.moveHandler);
666
+ contextDocument == null || contextDocument.removeEventListener('mouseup', mouseEvents.upHandler);
667
667
  onEnd(e.clientX);
668
668
  }
669
669
  };
@@ -678,8 +678,8 @@ const ColumnSizing = {
678
678
  },
679
679
  upHandler: e => {
680
680
  var _e$touches$;
681
- contextDocument.removeEventListener('touchmove', touchEvents.moveHandler);
682
- contextDocument.removeEventListener('touchend', touchEvents.upHandler);
681
+ contextDocument == null || contextDocument.removeEventListener('touchmove', touchEvents.moveHandler);
682
+ contextDocument == null || contextDocument.removeEventListener('touchend', touchEvents.upHandler);
683
683
  if (e.cancelable) {
684
684
  e.preventDefault();
685
685
  e.stopPropagation();
@@ -691,11 +691,11 @@ const ColumnSizing = {
691
691
  passive: false
692
692
  } : false;
693
693
  if (isTouchStartEvent(e)) {
694
- contextDocument.addEventListener('touchmove', touchEvents.moveHandler, passiveIfSupported);
695
- contextDocument.addEventListener('touchend', touchEvents.upHandler, passiveIfSupported);
694
+ contextDocument == null || contextDocument.addEventListener('touchmove', touchEvents.moveHandler, passiveIfSupported);
695
+ contextDocument == null || contextDocument.addEventListener('touchend', touchEvents.upHandler, passiveIfSupported);
696
696
  } else {
697
- contextDocument.addEventListener('mousemove', mouseEvents.moveHandler, passiveIfSupported);
698
- contextDocument.addEventListener('mouseup', mouseEvents.upHandler, passiveIfSupported);
697
+ contextDocument == null || contextDocument.addEventListener('mousemove', mouseEvents.moveHandler, passiveIfSupported);
698
+ contextDocument == null || contextDocument.addEventListener('mouseup', mouseEvents.upHandler, passiveIfSupported);
699
699
  }
700
700
  table.setColumnSizingInfo(old => ({
701
701
  ...old,