@tanstack/table-core 8.0.0-alpha.65 → 8.0.0-alpha.69

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.
Files changed (144) hide show
  1. package/build/cjs/aggregationFns.js +25 -37
  2. package/build/cjs/aggregationFns.js.map +1 -1
  3. package/build/cjs/core.js +167 -48
  4. package/build/cjs/core.js.map +1 -1
  5. package/build/cjs/createTable.js +24 -40
  6. package/build/cjs/createTable.js.map +1 -1
  7. package/build/cjs/features/Cells.js +28 -34
  8. package/build/cjs/features/Cells.js.map +1 -1
  9. package/build/cjs/features/ColumnSizing.js +136 -225
  10. package/build/cjs/features/ColumnSizing.js.map +1 -1
  11. package/build/cjs/features/Columns.js +57 -84
  12. package/build/cjs/features/Columns.js.map +1 -1
  13. package/build/cjs/features/Expanding.js +79 -126
  14. package/build/cjs/features/Expanding.js.map +1 -1
  15. package/build/cjs/features/Filters.js +137 -288
  16. package/build/cjs/features/Filters.js.map +1 -1
  17. package/build/cjs/features/Grouping.js +71 -117
  18. package/build/cjs/features/Grouping.js.map +1 -1
  19. package/build/cjs/features/Headers.js +125 -205
  20. package/build/cjs/features/Headers.js.map +1 -1
  21. package/build/cjs/features/Ordering.js +32 -44
  22. package/build/cjs/features/Ordering.js.map +1 -1
  23. package/build/cjs/features/Pagination.js +79 -82
  24. package/build/cjs/features/Pagination.js.map +1 -1
  25. package/build/cjs/features/Pinning.js +99 -178
  26. package/build/cjs/features/Pinning.js.map +1 -1
  27. package/build/cjs/features/RowSelection.js +133 -204
  28. package/build/cjs/features/RowSelection.js.map +1 -1
  29. package/build/cjs/features/Rows.js +32 -22
  30. package/build/cjs/features/Rows.js.map +1 -1
  31. package/build/cjs/features/Sorting.js +67 -136
  32. package/build/cjs/features/Sorting.js.map +1 -1
  33. package/build/cjs/features/Visibility.js +56 -118
  34. package/build/cjs/features/Visibility.js.map +1 -1
  35. package/build/cjs/filterFns.js +48 -72
  36. package/build/cjs/filterFns.js.map +1 -1
  37. package/build/cjs/index.js +13 -13
  38. package/build/cjs/sortingFns.js +21 -21
  39. package/build/cjs/sortingFns.js.map +1 -1
  40. package/build/cjs/utils/filterRowsUtils.js +49 -55
  41. package/build/cjs/utils/filterRowsUtils.js.map +1 -1
  42. package/build/cjs/utils/getCoreRowModel.js +98 -0
  43. package/build/cjs/utils/getCoreRowModel.js.map +1 -0
  44. package/build/cjs/utils/getExpandedRowModel.js +18 -22
  45. package/build/cjs/utils/getExpandedRowModel.js.map +1 -1
  46. package/build/cjs/utils/getFacetedMinMaxValues.js +48 -0
  47. package/build/cjs/utils/getFacetedMinMaxValues.js.map +1 -0
  48. package/build/cjs/utils/getFacetedRowModel.js +50 -0
  49. package/build/cjs/utils/getFacetedRowModel.js.map +1 -0
  50. package/build/cjs/utils/getFacetedUniqueValues.js +48 -0
  51. package/build/cjs/utils/getFacetedUniqueValues.js.map +1 -0
  52. package/build/cjs/utils/getFilteredRowModel.js +130 -0
  53. package/build/cjs/utils/getFilteredRowModel.js.map +1 -0
  54. package/build/cjs/utils/getGroupedRowModel.js +126 -136
  55. package/build/cjs/utils/getGroupedRowModel.js.map +1 -1
  56. package/build/cjs/utils/getPaginationRowModel.js +39 -39
  57. package/build/cjs/utils/getPaginationRowModel.js.map +1 -1
  58. package/build/cjs/utils/getSortedRowModel.js +112 -0
  59. package/build/cjs/utils/getSortedRowModel.js.map +1 -0
  60. package/build/cjs/utils.js +36 -207
  61. package/build/cjs/utils.js.map +1 -1
  62. package/build/esm/index.js +2024 -2971
  63. package/build/esm/index.js.map +1 -1
  64. package/build/stats-html.html +1 -1
  65. package/build/stats-react.json +421 -481
  66. package/build/types/core.d.ts +3 -5
  67. package/build/types/features/Cells.d.ts +1 -1
  68. package/build/types/features/ColumnSizing.d.ts +4 -15
  69. package/build/types/features/Columns.d.ts +1 -1
  70. package/build/types/features/Expanding.d.ts +2 -7
  71. package/build/types/features/Filters.d.ts +24 -21
  72. package/build/types/features/Grouping.d.ts +5 -11
  73. package/build/types/features/Ordering.d.ts +1 -1
  74. package/build/types/features/Pagination.d.ts +3 -3
  75. package/build/types/features/Pinning.d.ts +1 -5
  76. package/build/types/features/RowSelection.d.ts +2 -8
  77. package/build/types/features/Rows.d.ts +4 -3
  78. package/build/types/features/Sorting.d.ts +5 -15
  79. package/build/types/features/Visibility.d.ts +1 -4
  80. package/build/types/index.d.ts +6 -4
  81. package/build/types/types.d.ts +3 -15
  82. package/build/types/utils/filterRowsUtils.d.ts +3 -3
  83. package/build/types/utils/getCoreRowModel.d.ts +2 -0
  84. package/build/types/utils/getFacetedMinMaxValues.d.ts +2 -0
  85. package/build/types/utils/getFacetedRowModel.d.ts +2 -0
  86. package/build/types/utils/getFacetedUniqueValues.d.ts +2 -0
  87. package/build/types/utils/{getCoreRowModelSync.d.ts → getFilteredRowModel.d.ts} +1 -1
  88. package/build/types/utils/getGroupedRowModel.d.ts +1 -1
  89. package/build/types/utils/getSortedRowModel.d.ts +2 -0
  90. package/build/types/utils.d.ts +1 -17
  91. package/build/umd/index.development.js +2053 -3002
  92. package/build/umd/index.development.js.map +1 -1
  93. package/build/umd/index.production.js +1 -1
  94. package/build/umd/index.production.js.map +1 -1
  95. package/package.json +1 -1
  96. package/src/core.ts +197 -47
  97. package/src/features/Cells.ts +7 -11
  98. package/src/features/ColumnSizing.ts +89 -139
  99. package/src/features/Columns.ts +10 -13
  100. package/src/features/Expanding.ts +62 -107
  101. package/src/features/Filters.ts +201 -308
  102. package/src/features/Grouping.ts +55 -81
  103. package/src/features/Headers.ts +18 -40
  104. package/src/features/Ordering.ts +6 -4
  105. package/src/features/Pagination.ts +31 -17
  106. package/src/features/Pinning.ts +79 -96
  107. package/src/features/RowSelection.ts +68 -118
  108. package/src/features/Rows.ts +21 -6
  109. package/src/features/Sorting.ts +47 -103
  110. package/src/features/Visibility.ts +24 -47
  111. package/src/filterFns.ts +9 -9
  112. package/src/index.ts +12 -4
  113. package/src/sortingFns.ts +11 -11
  114. package/src/types.ts +3 -18
  115. package/src/utils/filterRowsUtils.ts +47 -68
  116. package/src/utils/{getCoreRowModelSync.ts → getCoreRowModel.ts} +3 -9
  117. package/src/utils/getExpandedRowModel.ts +2 -2
  118. package/src/utils/getFacetedMinMaxValues.ts +37 -0
  119. package/src/utils/getFacetedRowModel.ts +50 -0
  120. package/src/utils/getFacetedUniqueValues.ts +37 -0
  121. package/src/utils/getFilteredRowModel.ts +150 -0
  122. package/src/utils/getGroupedRowModel.ts +53 -62
  123. package/src/utils/getPaginationRowModel.ts +1 -1
  124. package/src/utils/{getSortedRowModelSync.ts → getSortedRowModel.ts} +7 -7
  125. package/src/utils.ts +28 -236
  126. package/build/cjs/_virtual/_rollupPluginBabelHelpers.js +0 -112
  127. package/build/cjs/_virtual/_rollupPluginBabelHelpers.js.map +0 -1
  128. package/build/cjs/utils/getCoreRowModelAsync.js +0 -125
  129. package/build/cjs/utils/getCoreRowModelAsync.js.map +0 -1
  130. package/build/cjs/utils/getCoreRowModelSync.js +0 -102
  131. package/build/cjs/utils/getCoreRowModelSync.js.map +0 -1
  132. package/build/cjs/utils/getFilteredRowModelSync.js +0 -130
  133. package/build/cjs/utils/getFilteredRowModelSync.js.map +0 -1
  134. package/build/cjs/utils/getSortedRowModelSync.js +0 -118
  135. package/build/cjs/utils/getSortedRowModelSync.js.map +0 -1
  136. package/build/types/utils/getCoreRowModelAsync.d.ts +0 -4
  137. package/build/types/utils/getFilteredRowModelAsync.d.ts +0 -4
  138. package/build/types/utils/getFilteredRowModelSync.d.ts +0 -2
  139. package/build/types/utils/getSortedRowModelAsync.d.ts +0 -13
  140. package/build/types/utils/getSortedRowModelSync.d.ts +0 -2
  141. package/src/utils/getCoreRowModelAsync.ts +0 -104
  142. package/src/utils/getFilteredRowModelAsync.ts +0 -49
  143. package/src/utils/getFilteredRowModelSync.ts +0 -150
  144. package/src/utils/getSortedRowModelAsync.ts +0 -200
@@ -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 getColumnSize: (columnId: string) => number\n getColumnStart: (columnId: string, position?: ColumnPinningPosition) => number\n setColumnSizing: (updater: Updater<ColumnSizingState>) => void\n setColumnSizingInfo: (updater: Updater<ColumnSizingInfoState>) => void\n resetColumnSizing: () => void\n resetColumnSize: (columnId: string) => void\n resetHeaderSize: (headerId: string) => void\n resetHeaderSizeInfo: () => void\n getColumnCanResize: (columnId: string) => boolean\n getHeaderCanResize: (headerId: string) => boolean\n getResizeHandler: (headerId: string) => (event: unknown) => void\n getColumnIsResizing: (columnId: string) => boolean\n getHeaderIsResizing: (headerId: string) => boolean\n getTotalSize: () => number\n getLeftTotalSize: () => number\n getCenterTotalSize: () => number\n getRightTotalSize: () => number\n}\n\nexport type ColumnSizingColumnDef = {\n enableResizing?: boolean\n defaultCanResize?: 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 getCanResize: () => boolean\n getIsResizing: () => boolean\n getResizeHandler: () => (event: unknown) => void\n resetSize: () => void\n}\n\n//\n\nexport const defaultColumnSizing = {\n size: 150,\n minSize: 20,\n maxSize: Number.MAX_SAFE_INTEGER,\n}\n\nexport const ColumnSizing: TableFeature = {\n getDefaultColumn: (): ColumnSizingColumnDef => {\n return defaultColumnSizing\n },\n getInitialState: (state): ColumnSizingTableState => {\n return {\n columnSizing: {},\n columnSizingInfo: {\n startOffset: null,\n startSize: null,\n deltaOffset: null,\n deltaPercentage: null,\n isResizingColumn: false,\n columnSizingStart: [],\n },\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: () => instance.getColumnSize(column.id),\n getStart: position => instance.getColumnStart(column.id, position),\n getIsResizing: () => instance.getColumnIsResizing(column.id),\n getCanResize: () => instance.getColumnCanResize(column.id),\n resetSize: () => instance.resetColumnSize(column.id),\n }\n },\n\n createHeader: <TGenerics extends TableGenerics>(\n header: Header<TGenerics>,\n instance: TableInstance<TGenerics>\n ): ColumnSizingHeader<TGenerics> => {\n return {\n getIsResizing: () => instance.getColumnIsResizing(header.column.id),\n getCanResize: () => instance.getColumnCanResize(header.column.id),\n resetSize: () => instance.resetColumnSize(header.column.id),\n getResizeHandler: () => instance.getResizeHandler(header.id),\n }\n },\n\n createInstance: <TGenerics extends TableGenerics>(\n instance: TableInstance<TGenerics>\n ): ColumnSizingInstance<TGenerics> => {\n return {\n getColumnSize: (columnId: string) => {\n const column = instance.getColumn(columnId)\n\n if (!column) {\n throw new Error()\n }\n\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 getColumnStart: (columnId, position) => {\n const column = instance.getColumn(columnId)\n\n if (!column) {\n throw new Error()\n }\n\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 === columnId)\n\n if (index > 0) {\n const prevSiblingColumn = columns[index - 1]\n\n return (\n instance.getColumnStart(prevSiblingColumn.id, position) +\n prevSiblingColumn.getSize()\n )\n }\n\n return 0\n },\n setColumnSizing: updater =>\n instance.options.onColumnSizingChange?.(updater),\n setColumnSizingInfo: updater =>\n instance.options.onColumnSizingInfoChange?.(updater),\n resetColumnSizing: () => {\n instance.setColumnSizing(instance.initialState.columnSizing ?? {})\n },\n resetHeaderSizeInfo: () => {\n instance.setColumnSizingInfo(\n instance.initialState.columnSizingInfo ?? {}\n )\n },\n resetColumnSize: columnId => {\n instance.setColumnSizing(({ [columnId]: _, ...rest }) => {\n return rest\n })\n },\n resetHeaderSize: headerId => {\n const header = instance.getHeader(headerId)\n\n return instance.resetColumnSize(header.column.id)\n },\n getHeaderCanResize: headerId => {\n const header = instance.getHeader(headerId)\n\n if (!header) {\n throw new Error()\n }\n\n return instance.getColumnCanResize(header.column.id)\n },\n getColumnCanResize: columnId => {\n const column = instance.getColumn(columnId)\n\n if (!column) {\n throw new Error()\n }\n\n return (\n column.enableResizing ??\n instance.options.enableColumnResizing ??\n column.defaultCanResize ??\n true\n )\n },\n getColumnIsResizing: columnId => {\n const column = instance.getColumn(columnId)\n\n if (!column) {\n throw new Error()\n }\n\n return (\n instance.getState().columnSizingInfo.isResizingColumn === columnId\n )\n },\n getHeaderIsResizing: headerId => {\n const header = instance.getHeader(headerId)\n\n if (!header) {\n throw new Error()\n }\n\n return instance.getColumnIsResizing(header.column.id)\n },\n getResizeHandler: (headerId: string) => {\n const header = instance.getHeader(headerId)\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 header = headerId ? instance.getHeader(headerId) : undefined\n\n const startSize = header ? header.getSize() : column.getSize()\n\n const columnSizingStart: [string, number][] = header\n ? header.getLeafHeaders().map(d => [d.column.id, d.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 document.addEventListener(\n 'touchmove',\n touchEvents.moveHandler,\n passiveIfSupported\n )\n document.addEventListener(\n 'touchend',\n touchEvents.upHandler,\n passiveIfSupported\n )\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 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","ColumnSizing","getDefaultColumn","getInitialState","state","_extends","columnSizing","columnSizingInfo","startOffset","startSize","deltaOffset","deltaPercentage","isResizingColumn","columnSizingStart","getDefaultOptions","instance","columnResizeMode","onColumnSizingChange","makeStateUpdater","onColumnSizingInfoChange","createColumn","column","getSize","getColumnSize","id","getStart","position","getColumnStart","getIsResizing","getColumnIsResizing","getCanResize","getColumnCanResize","resetSize","resetColumnSize","createHeader","header","getResizeHandler","createInstance","columnId","getColumn","Error","columnSize","getState","Math","min","max","columns","getVisibleLeafColumns","getLeftVisibleLeafColumns","getRightVisibleLeafColumns","index","findIndex","d","prevSiblingColumn","setColumnSizing","updater","options","setColumnSizingInfo","resetColumnSizing","initialState","resetHeaderSizeInfo","rest","_toPropertyKey","resetHeaderSize","headerId","getHeader","getHeaderCanResize","enableResizing","enableColumnResizing","defaultCanResize","getHeaderIsResizing","canResize","e","persist","isTouchStartEvent","touches","length","undefined","getLeafHeaders","map","clientX","round","updateOffset","eventType","clientXPos","newColumnSizing","old","forEach","headerSize","onMove","onEnd","mouseEvents","moveHandler","upHandler","document","removeEventListener","touchEvents","cancelable","preventDefault","stopPropagation","passiveIfSupported","passiveEventSupported","passive","addEventListener","getTotalSize","getHeaderGroups","headers","reduce","sum","getLeftTotalSize","getLeftHeaderGroups","getCenterTotalSize","getCenterHeaderGroups","getRightTotalSize","getRightHeaderGroups","passiveSupported","supported","noop","window","err","type"],"mappings":";;;;;;;;;;;;;;;;;AAwFA;AAEO,IAAMA,mBAAmB,GAAG;AACjCC,EAAAA,IAAI,EAAE,GAD2B;AAEjCC,EAAAA,OAAO,EAAE,EAFwB;AAGjCC,EAAAA,OAAO,EAAEC,MAAM,CAACC,gBAAAA;AAHiB,EAA5B;AAMA,IAAMC,YAA0B,GAAG;AACxCC,EAAAA,gBAAgB,EAAE,SAA6B,gBAAA,GAAA;AAC7C,IAAA,OAAOP,mBAAP,CAAA;AACD,GAHuC;AAIxCQ,EAAAA,eAAe,EAAE,SAACC,eAAAA,CAAAA,KAAD,EAAmC;AAClD,IAAA,OAAAC,oCAAA,CAAA;AACEC,MAAAA,YAAY,EAAE,EADhB;AAEEC,MAAAA,gBAAgB,EAAE;AAChBC,QAAAA,WAAW,EAAE,IADG;AAEhBC,QAAAA,SAAS,EAAE,IAFK;AAGhBC,QAAAA,WAAW,EAAE,IAHG;AAIhBC,QAAAA,eAAe,EAAE,IAJD;AAKhBC,QAAAA,gBAAgB,EAAE,KALF;AAMhBC,QAAAA,iBAAiB,EAAE,EAAA;AANH,OAAA;AAFpB,KAAA,EAUKT,KAVL,CAAA,CAAA;AAYD,GAjBuC;AAmBxCU,EAAAA,iBAAiB,EAAE,SACjBC,iBAAAA,CAAAA,QADiB,EAEc;AAC/B,IAAO,OAAA;AACLC,MAAAA,gBAAgB,EAAE,OADb;AAELC,MAAAA,oBAAoB,EAAEC,sBAAgB,CAAC,cAAD,EAAiBH,QAAjB,CAFjC;AAGLI,MAAAA,wBAAwB,EAAED,sBAAgB,CAAC,kBAAD,EAAqBH,QAArB,CAAA;AAHrC,KAAP,CAAA;AAKD,GA3BuC;AA6BxCK,EAAAA,YAAY,EAAE,SAAA,YAAA,CACZC,MADY,EAEZN,QAFY,EAGsB;AAClC,IAAO,OAAA;AACLO,MAAAA,OAAO,EAAE,SAAA,OAAA,GAAA;AAAA,QAAA,OAAMP,QAAQ,CAACQ,aAAT,CAAuBF,MAAM,CAACG,EAA9B,CAAN,CAAA;AAAA,OADJ;AAELC,MAAAA,QAAQ,EAAE,SAAA,QAAA,CAAAC,QAAQ,EAAA;AAAA,QAAIX,OAAAA,QAAQ,CAACY,cAAT,CAAwBN,MAAM,CAACG,EAA/B,EAAmCE,QAAnC,CAAJ,CAAA;AAAA,OAFb;AAGLE,MAAAA,aAAa,EAAE,SAAA,aAAA,GAAA;AAAA,QAAA,OAAMb,QAAQ,CAACc,mBAAT,CAA6BR,MAAM,CAACG,EAApC,CAAN,CAAA;AAAA,OAHV;AAILM,MAAAA,YAAY,EAAE,SAAA,YAAA,GAAA;AAAA,QAAA,OAAMf,QAAQ,CAACgB,kBAAT,CAA4BV,MAAM,CAACG,EAAnC,CAAN,CAAA;AAAA,OAJT;AAKLQ,MAAAA,SAAS,EAAE,SAAA,SAAA,GAAA;AAAA,QAAA,OAAMjB,QAAQ,CAACkB,eAAT,CAAyBZ,MAAM,CAACG,EAAhC,CAAN,CAAA;AAAA,OAAA;AALN,KAAP,CAAA;AAOD,GAxCuC;AA0CxCU,EAAAA,YAAY,EAAE,SAAA,YAAA,CACZC,MADY,EAEZpB,QAFY,EAGsB;AAClC,IAAO,OAAA;AACLa,MAAAA,aAAa,EAAE,SAAA,aAAA,GAAA;AAAA,QAAMb,OAAAA,QAAQ,CAACc,mBAAT,CAA6BM,MAAM,CAACd,MAAP,CAAcG,EAA3C,CAAN,CAAA;AAAA,OADV;AAELM,MAAAA,YAAY,EAAE,SAAA,YAAA,GAAA;AAAA,QAAMf,OAAAA,QAAQ,CAACgB,kBAAT,CAA4BI,MAAM,CAACd,MAAP,CAAcG,EAA1C,CAAN,CAAA;AAAA,OAFT;AAGLQ,MAAAA,SAAS,EAAE,SAAA,SAAA,GAAA;AAAA,QAAMjB,OAAAA,QAAQ,CAACkB,eAAT,CAAyBE,MAAM,CAACd,MAAP,CAAcG,EAAvC,CAAN,CAAA;AAAA,OAHN;AAILY,MAAAA,gBAAgB,EAAE,SAAA,gBAAA,GAAA;AAAA,QAAA,OAAMrB,QAAQ,CAACqB,gBAAT,CAA0BD,MAAM,CAACX,EAAjC,CAAN,CAAA;AAAA,OAAA;AAJb,KAAP,CAAA;AAMD,GApDuC;AAsDxCa,EAAAA,cAAc,EAAE,SACdtB,cAAAA,CAAAA,QADc,EAEsB;AACpC,IAAO,OAAA;AACLQ,MAAAA,aAAa,EAAE,SAACe,aAAAA,CAAAA,QAAD,EAAsB;AAAA,QAAA,IAAA,eAAA,EAAA,IAAA,EAAA,eAAA,CAAA;;AACnC,QAAA,IAAMjB,MAAM,GAAGN,QAAQ,CAACwB,SAAT,CAAmBD,QAAnB,CAAf,CAAA;;AAEA,QAAI,IAAA,CAACjB,MAAL,EAAa;AACX,UAAM,MAAA,IAAImB,KAAJ,EAAN,CAAA;AACD,SAAA;;AAED,QAAMC,IAAAA,UAAU,GAAG1B,QAAQ,CAAC2B,QAAT,EAAoBpC,CAAAA,YAApB,CAAiCe,MAAM,CAACG,EAAxC,CAAnB,CAAA;AAEA,QAAA,OAAOmB,IAAI,CAACC,GAAL,CACLD,IAAI,CAACE,GAAL,CAAA,CAAA,eAAA,GACExB,MAAM,CAACxB,OADT,KACoBF,IAAAA,GAAAA,eAAAA,GAAAA,mBAAmB,CAACE,OADxC,UAEE4C,UAFF,IAAA,IAAA,GAEEA,UAFF,GAEgBpB,MAAM,CAACzB,IAFvB,KAE+BD,IAAAA,GAAAA,IAAAA,GAAAA,mBAAmB,CAACC,IAFnD,CADK,EAKLyB,CAAAA,eAAAA,GAAAA,MAAM,CAACvB,OALF,KAAA,IAAA,GAAA,eAAA,GAKaH,mBAAmB,CAACG,OALjC,CAAP,CAAA;AAOD,OAjBI;AAkBL6B,MAAAA,cAAc,EAAE,SAAA,cAAA,CAACW,QAAD,EAAWZ,QAAX,EAAwB;AACtC,QAAA,IAAML,MAAM,GAAGN,QAAQ,CAACwB,SAAT,CAAmBD,QAAnB,CAAf,CAAA;;AAEA,QAAI,IAAA,CAACjB,MAAL,EAAa;AACX,UAAM,MAAA,IAAImB,KAAJ,EAAN,CAAA;AACD,SAAA;;AAED,QAAMM,IAAAA,OAAO,GAAG,CAACpB,QAAD,GACZX,QAAQ,CAACgC,qBAAT,EADY,GAEZrB,QAAQ,KAAK,MAAb,GACAX,QAAQ,CAACiC,yBAAT,EADA,GAEAjC,QAAQ,CAACkC,0BAAT,EAJJ,CAAA;AAMA,QAAA,IAAMC,KAAK,GAAGJ,OAAO,CAACK,SAAR,CAAkB,UAAAC,CAAC,EAAA;AAAA,UAAA,OAAIA,CAAC,CAAC5B,EAAF,KAASc,QAAb,CAAA;AAAA,SAAnB,CAAd,CAAA;;AAEA,QAAIY,IAAAA,KAAK,GAAG,CAAZ,EAAe;AACb,UAAA,IAAMG,iBAAiB,GAAGP,OAAO,CAACI,KAAK,GAAG,CAAT,CAAjC,CAAA;AAEA,UAAA,OACEnC,QAAQ,CAACY,cAAT,CAAwB0B,iBAAiB,CAAC7B,EAA1C,EAA8CE,QAA9C,CAAA,GACA2B,iBAAiB,CAAC/B,OAAlB,EAFF,CAAA;AAID,SAAA;;AAED,QAAA,OAAO,CAAP,CAAA;AACD,OA3CI;AA4CLgC,MAAAA,eAAe,EAAE,SAAA,eAAA,CAAAC,OAAO,EAAA;AAAA,QAAA,OACtBxC,QAAQ,CAACyC,OAAT,CAAiBvC,oBADK,IAAA,IAAA,GAAA,KAAA,CAAA,GACtBF,QAAQ,CAACyC,OAAT,CAAiBvC,oBAAjB,CAAwCsC,OAAxC,CADsB,CAAA;AAAA,OA5CnB;AA8CLE,MAAAA,mBAAmB,EAAE,SAAA,mBAAA,CAAAF,OAAO,EAAA;AAAA,QAAA,OAC1BxC,QAAQ,CAACyC,OAAT,CAAiBrC,wBADS,IAAA,IAAA,GAAA,KAAA,CAAA,GAC1BJ,QAAQ,CAACyC,OAAT,CAAiBrC,wBAAjB,CAA4CoC,OAA5C,CAD0B,CAAA;AAAA,OA9CvB;AAgDLG,MAAAA,iBAAiB,EAAE,SAAM,iBAAA,GAAA;AAAA,QAAA,IAAA,qBAAA,CAAA;;AACvB3C,QAAAA,QAAQ,CAACuC,eAAT,CAAyBvC,CAAAA,qBAAAA,GAAAA,QAAQ,CAAC4C,YAAT,CAAsBrD,YAA/C,KAAA,IAAA,GAAA,qBAAA,GAA+D,EAA/D,CAAA,CAAA;AACD,OAlDI;AAmDLsD,MAAAA,mBAAmB,EAAE,SAAM,mBAAA,GAAA;AAAA,QAAA,IAAA,sBAAA,CAAA;;AACzB7C,QAAAA,QAAQ,CAAC0C,mBAAT,CACE1C,CAAAA,sBAAAA,GAAAA,QAAQ,CAAC4C,YAAT,CAAsBpD,gBADxB,KAAA,IAAA,GAAA,sBAAA,GAC4C,EAD5C,CAAA,CAAA;AAGD,OAvDI;AAwDL0B,MAAAA,eAAe,EAAE,SAAAK,eAAAA,CAAAA,QAAQ,EAAI;AAC3BvB,QAAAA,QAAQ,CAACuC,eAAT,CAAyB,UAAgC,KAAA,EAAA;AAAA,gBAA5BhB,QAA4B,CAAA,CAAA;AAAA,kBAAXuB,IAAW,kEAA5BvB,QAA4B,CAAA,CAAA,GAAA,CAAAwB,uCAAA,CAAA,EAAA;;AACvD,UAAA,OAAOD,IAAP,CAAA;AACD,SAFD,CAAA,CAAA;AAGD,OA5DI;AA6DLE,MAAAA,eAAe,EAAE,SAAAC,eAAAA,CAAAA,QAAQ,EAAI;AAC3B,QAAA,IAAM7B,MAAM,GAAGpB,QAAQ,CAACkD,SAAT,CAAmBD,QAAnB,CAAf,CAAA;AAEA,QAAOjD,OAAAA,QAAQ,CAACkB,eAAT,CAAyBE,MAAM,CAACd,MAAP,CAAcG,EAAvC,CAAP,CAAA;AACD,OAjEI;AAkEL0C,MAAAA,kBAAkB,EAAE,SAAAF,kBAAAA,CAAAA,QAAQ,EAAI;AAC9B,QAAA,IAAM7B,MAAM,GAAGpB,QAAQ,CAACkD,SAAT,CAAmBD,QAAnB,CAAf,CAAA;;AAEA,QAAI,IAAA,CAAC7B,MAAL,EAAa;AACX,UAAM,MAAA,IAAIK,KAAJ,EAAN,CAAA;AACD,SAAA;;AAED,QAAOzB,OAAAA,QAAQ,CAACgB,kBAAT,CAA4BI,MAAM,CAACd,MAAP,CAAcG,EAA1C,CAAP,CAAA;AACD,OA1EI;AA2ELO,MAAAA,kBAAkB,EAAE,SAAAO,kBAAAA,CAAAA,QAAQ,EAAI;AAAA,QAAA,IAAA,KAAA,EAAA,KAAA,EAAA,qBAAA,CAAA;;AAC9B,QAAA,IAAMjB,MAAM,GAAGN,QAAQ,CAACwB,SAAT,CAAmBD,QAAnB,CAAf,CAAA;;AAEA,QAAI,IAAA,CAACjB,MAAL,EAAa;AACX,UAAM,MAAA,IAAImB,KAAJ,EAAN,CAAA;AACD,SAAA;;AAED,QAAA,OAAA,CAAA,KAAA,GAAA,CAAA,KAAA,GAAA,CAAA,qBAAA,GACEnB,MAAM,CAAC8C,cADT,KAAA,IAAA,GAAA,qBAAA,GAEEpD,QAAQ,CAACyC,OAAT,CAAiBY,oBAFnB,KAGE/C,IAAAA,GAAAA,KAAAA,GAAAA,MAAM,CAACgD,gBAHT,oBAIE,IAJF,CAAA;AAMD,OAxFI;AAyFLxC,MAAAA,mBAAmB,EAAE,SAAAS,mBAAAA,CAAAA,QAAQ,EAAI;AAC/B,QAAA,IAAMjB,MAAM,GAAGN,QAAQ,CAACwB,SAAT,CAAmBD,QAAnB,CAAf,CAAA;;AAEA,QAAI,IAAA,CAACjB,MAAL,EAAa;AACX,UAAM,MAAA,IAAImB,KAAJ,EAAN,CAAA;AACD,SAAA;;AAED,QACEzB,OAAAA,QAAQ,CAAC2B,QAAT,EAAA,CAAoBnC,gBAApB,CAAqCK,gBAArC,KAA0D0B,QAD5D,CAAA;AAGD,OAnGI;AAoGLgC,MAAAA,mBAAmB,EAAE,SAAAN,mBAAAA,CAAAA,QAAQ,EAAI;AAC/B,QAAA,IAAM7B,MAAM,GAAGpB,QAAQ,CAACkD,SAAT,CAAmBD,QAAnB,CAAf,CAAA;;AAEA,QAAI,IAAA,CAAC7B,MAAL,EAAa;AACX,UAAM,MAAA,IAAIK,KAAJ,EAAN,CAAA;AACD,SAAA;;AAED,QAAOzB,OAAAA,QAAQ,CAACc,mBAAT,CAA6BM,MAAM,CAACd,MAAP,CAAcG,EAA3C,CAAP,CAAA;AACD,OA5GI;AA6GLY,MAAAA,gBAAgB,EAAE,SAAC4B,gBAAAA,CAAAA,QAAD,EAAsB;AACtC,QAAA,IAAM7B,MAAM,GAAGpB,QAAQ,CAACkD,SAAT,CAAmBD,QAAnB,CAAf,CAAA;AACA,QAAM3C,IAAAA,MAAM,GAAGN,QAAQ,CAACwB,SAAT,CAAmBJ,MAAM,CAACd,MAAP,CAAcG,EAAjC,CAAf,CAAA;AACA,QAAA,IAAM+C,SAAS,GAAGlD,MAAM,CAACS,YAAP,EAAlB,CAAA;AAEA,QAAO,OAAA,UAAC0C,CAAD,EAAgB;AACrB,UAAI,IAAA,CAACD,SAAL,EAAgB;AACd,YAAA,OAAA;AACD,WAAA;AAECC,UAAAA,CAAD,CAAWC,OAAX,IAACD,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,CAAD,CAAWC,OAAX,EAAA,CAAA;;AAED,UAAA,IAAIC,iBAAiB,CAACF,CAAD,CAArB,EAA0B;AACxB;AACA,YAAIA,IAAAA,CAAC,CAACG,OAAF,IAAaH,CAAC,CAACG,OAAF,CAAUC,MAAV,GAAmB,CAApC,EAAuC;AACrC,cAAA,OAAA;AACD,aAAA;AACF,WAAA;;AAED,UAAMzC,IAAAA,MAAM,GAAG6B,QAAQ,GAAGjD,QAAQ,CAACkD,SAAT,CAAmBD,QAAnB,CAAH,GAAkCa,SAAzD,CAAA;AAEA,UAAA,IAAMpE,SAAS,GAAG0B,MAAM,GAAGA,MAAM,CAACb,OAAP,EAAH,GAAsBD,MAAM,CAACC,OAAP,EAA9C,CAAA;AAEA,UAAMT,IAAAA,iBAAqC,GAAGsB,MAAM,GAChDA,MAAM,CAAC2C,cAAP,EAAwBC,CAAAA,GAAxB,CAA4B,UAAA3B,CAAC,EAAA;AAAA,YAAI,OAAA,CAACA,CAAC,CAAC/B,MAAF,CAASG,EAAV,EAAc4B,CAAC,CAAC9B,OAAF,EAAd,CAAJ,CAAA;AAAA,WAA7B,CADgD,GAEhD,CAAC,CAACD,MAAM,CAACG,EAAR,EAAYH,MAAM,CAACC,OAAP,EAAZ,CAAD,CAFJ,CAAA;AAIA,UAAM0D,IAAAA,OAAO,GAAGN,iBAAiB,CAACF,CAAD,CAAjB,GACZ7B,IAAI,CAACsC,KAAL,CAAWT,CAAC,CAACG,OAAF,CAAU,CAAV,CAAA,CAAaK,OAAxB,CADY,GAEXR,CAAD,CAAkBQ,OAFtB,CAAA;;AAIA,UAAME,IAAAA,YAAY,GAAG,SAAfA,YAAe,CACnBC,SADmB,EAEnBC,UAFmB,EAGhB;AACH,YAAA,IAAI,OAAOA,UAAP,KAAsB,QAA1B,EAAoC;AAClC,cAAA,OAAA;AACD,aAAA;;AAED,YAAIC,IAAAA,eAAkC,GAAG,EAAzC,CAAA;AAEAtE,YAAAA,QAAQ,CAAC0C,mBAAT,CAA6B,UAAA6B,GAAG,EAAI;AAAA,cAAA,IAAA,gBAAA,EAAA,cAAA,CAAA;;AAClC,cAAM5E,IAAAA,WAAW,GAAG0E,UAAU,IAAIE,CAAAA,gBAAAA,GAAAA,GAAJ,IAAIA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,GAAG,CAAE9E,WAAT,KAAwB,IAAA,GAAA,gBAAA,GAAA,CAAxB,CAA9B,CAAA;AACA,cAAA,IAAMG,eAAe,GAAGgC,IAAI,CAACE,GAAL,CACtBnC,WAAW,IAAI4E,CAAAA,cAAAA,GAAAA,GAAJ,oBAAIA,GAAG,CAAE7E,SAAT,KAAsB,IAAA,GAAA,cAAA,GAAA,CAAtB,CADW,EAEtB,CAAC,QAFqB,CAAxB,CAAA;AAKA6E,cAAAA,GAAG,CAACzE,iBAAJ,CAAsB0E,OAAtB,CAA8B,UAA4B,KAAA,EAAA;AAAA,gBAAA,IAA1BjD,QAA0B,GAAA,KAAA,CAAA,CAAA,CAAA;AAAA,oBAAhBkD,UAAgB,GAAA,KAAA,CAAA,CAAA,CAAA,CAAA;AACxDH,gBAAAA,eAAe,CAAC/C,QAAD,CAAf,GACEK,IAAI,CAACsC,KAAL,CACEtC,IAAI,CAACE,GAAL,CAAS2C,UAAU,GAAGA,UAAU,GAAG7E,eAAnC,EAAoD,CAApD,CAAA,GAAyD,GAD3D,CAAA,GAEI,GAHN,CAAA;AAID,eALD,CAAA,CAAA;AAOA,cAAA,OAAAN,oCAAA,CAAA,EAAA,EACKiF,GADL,EAAA;AAEE5E,gBAAAA,WAAW,EAAXA,WAFF;AAGEC,gBAAAA,eAAe,EAAfA,eAAAA;AAHF,eAAA,CAAA,CAAA;AAKD,aAnBD,CAAA,CAAA;;AAqBA,YACEI,IAAAA,QAAQ,CAACyC,OAAT,CAAiBxC,gBAAjB,KAAsC,UAAtC,IACAmE,SAAS,KAAK,KAFhB,EAGE;AACApE,cAAAA,QAAQ,CAACuC,eAAT,CAAyB,UAAAgC,GAAG,EAAA;AAAA,gBACvBA,OAAAA,oCAAAA,CAAAA,EAAAA,EAAAA,GADuB,EAEvBD,eAFuB,CAAA,CAAA;AAAA,eAA5B,CAAA,CAAA;AAID,aAAA;AACF,WAxCD,CAAA;;AA0CA,UAAA,IAAMI,MAAM,GAAG,SAATA,MAAS,CAACL,UAAD,EAAA;AAAA,YAAA,OACbF,YAAY,CAAC,MAAD,EAASE,UAAT,CADC,CAAA;AAAA,WAAf,CAAA;;AAGA,UAAA,IAAMM,KAAK,GAAG,SAARA,KAAQ,CAACN,UAAD,EAAyB;AACrCF,YAAAA,YAAY,CAAC,KAAD,EAAQE,UAAR,CAAZ,CAAA;AAEArE,YAAAA,QAAQ,CAAC0C,mBAAT,CAA6B,UAAA6B,GAAG,EAAA;AAAA,cAAA,OAAAjF,oCAAA,CAAA,EAAA,EAC3BiF,GAD2B,EAAA;AAE9B1E,gBAAAA,gBAAgB,EAAE,KAFY;AAG9BJ,gBAAAA,WAAW,EAAE,IAHiB;AAI9BC,gBAAAA,SAAS,EAAE,IAJmB;AAK9BC,gBAAAA,WAAW,EAAE,IALiB;AAM9BC,gBAAAA,eAAe,EAAE,IANa;AAO9BE,gBAAAA,iBAAiB,EAAE,EAAA;AAPW,eAAA,CAAA,CAAA;AAAA,aAAhC,CAAA,CAAA;AASD,WAZD,CAAA;;AAcA,UAAA,IAAM8E,WAAW,GAAG;AAClBC,YAAAA,WAAW,EAAE,SAAA,WAAA,CAACpB,CAAD,EAAA;AAAA,cAAA,OAAmBiB,MAAM,CAACjB,CAAC,CAACQ,OAAH,CAAzB,CAAA;AAAA,aADK;AAElBa,YAAAA,SAAS,EAAE,SAACrB,SAAAA,CAAAA,CAAD,EAAmB;AAC5BsB,cAAAA,QAAQ,CAACC,mBAAT,CAA6B,WAA7B,EAA0CJ,WAAW,CAACC,WAAtD,CAAA,CAAA;AACAE,cAAAA,QAAQ,CAACC,mBAAT,CAA6B,SAA7B,EAAwCJ,WAAW,CAACE,SAApD,CAAA,CAAA;AACAH,cAAAA,KAAK,CAAClB,CAAC,CAACQ,OAAH,CAAL,CAAA;AACD,aAAA;AANiB,WAApB,CAAA;AASA,UAAA,IAAMgB,WAAW,GAAG;AAClBJ,YAAAA,WAAW,EAAE,SAACpB,WAAAA,CAAAA,CAAD,EAAmB;AAC9B,cAAIA,IAAAA,CAAC,CAACyB,UAAN,EAAkB;AAChBzB,gBAAAA,CAAC,CAAC0B,cAAF,EAAA,CAAA;AACA1B,gBAAAA,CAAC,CAAC2B,eAAF,EAAA,CAAA;AACD,eAAA;;AACDV,cAAAA,MAAM,CAACjB,CAAC,CAACG,OAAF,CAAU,CAAV,CAAaK,CAAAA,OAAd,CAAN,CAAA;AACA,cAAA,OAAO,KAAP,CAAA;AACD,aARiB;AASlBa,YAAAA,SAAS,EAAE,SAACrB,SAAAA,CAAAA,CAAD,EAAmB;AAC5BsB,cAAAA,QAAQ,CAACC,mBAAT,CAA6B,WAA7B,EAA0CC,WAAW,CAACJ,WAAtD,CAAA,CAAA;AACAE,cAAAA,QAAQ,CAACC,mBAAT,CAA6B,UAA7B,EAAyCC,WAAW,CAACH,SAArD,CAAA,CAAA;;AACA,cAAIrB,IAAAA,CAAC,CAACyB,UAAN,EAAkB;AAChBzB,gBAAAA,CAAC,CAAC0B,cAAF,EAAA,CAAA;AACA1B,gBAAAA,CAAC,CAAC2B,eAAF,EAAA,CAAA;AACD,eAAA;;AACDT,cAAAA,KAAK,CAAClB,CAAC,CAACG,OAAF,CAAU,CAAV,CAAaK,CAAAA,OAAd,CAAL,CAAA;AACD,aAAA;AAjBiB,WAApB,CAAA;AAoBA,UAAMoB,IAAAA,kBAAkB,GAAGC,qBAAqB,EAC5C,GAAA;AAAEC,YAAAA,OAAO,EAAE,KAAA;AAAX,WAD4C,GAE5C,KAFJ,CAAA;;AAIA,UAAA,IAAI5B,iBAAiB,CAACF,CAAD,CAArB,EAA0B;AACxBsB,YAAAA,QAAQ,CAACS,gBAAT,CACE,WADF,EAEEP,WAAW,CAACJ,WAFd,EAGEQ,kBAHF,CAAA,CAAA;AAKAN,YAAAA,QAAQ,CAACS,gBAAT,CACE,UADF,EAEEP,WAAW,CAACH,SAFd,EAGEO,kBAHF,CAAA,CAAA;AAKD,WAXD,MAWO;AACLN,YAAAA,QAAQ,CAACS,gBAAT,CACE,WADF,EAEEZ,WAAW,CAACC,WAFd,EAGEQ,kBAHF,CAAA,CAAA;AAKAN,YAAAA,QAAQ,CAACS,gBAAT,CACE,SADF,EAEEZ,WAAW,CAACE,SAFd,EAGEO,kBAHF,CAAA,CAAA;AAKD,WAAA;;AAEDrF,UAAAA,QAAQ,CAAC0C,mBAAT,CAA6B,UAAA6B,GAAG,EAAA;AAAA,YAAA,OAAAjF,oCAAA,CAAA,EAAA,EAC3BiF,GAD2B,EAAA;AAE9B9E,cAAAA,WAAW,EAAEwE,OAFiB;AAG9BvE,cAAAA,SAAS,EAATA,SAH8B;AAI9BC,cAAAA,WAAW,EAAE,CAJiB;AAK9BC,cAAAA,eAAe,EAAE,CALa;AAM9BE,cAAAA,iBAAiB,EAAjBA,iBAN8B;AAO9BD,cAAAA,gBAAgB,EAAES,MAAM,CAACG,EAAAA;AAPK,aAAA,CAAA,CAAA;AAAA,WAAhC,CAAA,CAAA;AASD,SAvJD,CAAA;AAwJD,OA1QI;AA2QLgF,MAAAA,YAAY,EAAE,SAAA,YAAA,GAAA;AAAA,QAAA,IAAA,qBAAA,EAAA,sBAAA,CAAA;;AAAA,QAAA,OAAA,CAAA,qBAAA,GAAA,CAAA,sBAAA,GACZzF,QAAQ,CAAC0F,eAAT,EAA2B,CAAA,CAA3B,CADY,KACZ,IAAA,GAAA,KAAA,CAAA,GAAA,sBAAA,CAA+BC,OAA/B,CAAuCC,MAAvC,CAA8C,UAACC,GAAD,EAAMzE,MAAN,EAAiB;AAC7D,UAAA,OAAOyE,GAAG,GAAGzE,MAAM,CAACb,OAAP,EAAb,CAAA;AACD,SAFD,EAEG,CAFH,CADY,KAAA,IAAA,GAAA,qBAAA,GAGH,CAHG,CAAA;AAAA,OA3QT;AA+QLuF,MAAAA,gBAAgB,EAAE,SAAA,gBAAA,GAAA;AAAA,QAAA,IAAA,qBAAA,EAAA,sBAAA,CAAA;;AAAA,QAAA,OAAA,CAAA,qBAAA,GAAA,CAAA,sBAAA,GAChB9F,QAAQ,CAAC+F,mBAAT,EAA+B,CAAA,CAA/B,CADgB,KAChB,IAAA,GAAA,KAAA,CAAA,GAAA,sBAAA,CAAmCJ,OAAnC,CAA2CC,MAA3C,CAAkD,UAACC,GAAD,EAAMzE,MAAN,EAAiB;AACjE,UAAA,OAAOyE,GAAG,GAAGzE,MAAM,CAACb,OAAP,EAAb,CAAA;AACD,SAFD,EAEG,CAFH,CADgB,KAAA,IAAA,GAAA,qBAAA,GAGP,CAHO,CAAA;AAAA,OA/Qb;AAmRLyF,MAAAA,kBAAkB,EAAE,SAAA,kBAAA,GAAA;AAAA,QAAA,IAAA,qBAAA,EAAA,sBAAA,CAAA;;AAAA,QAAA,OAAA,CAAA,qBAAA,GAAA,CAAA,sBAAA,GAClBhG,QAAQ,CAACiG,qBAAT,EAAiC,CAAA,CAAjC,CADkB,KAClB,IAAA,GAAA,KAAA,CAAA,GAAA,sBAAA,CAAqCN,OAArC,CAA6CC,MAA7C,CAAoD,UAACC,GAAD,EAAMzE,MAAN,EAAiB;AACnE,UAAA,OAAOyE,GAAG,GAAGzE,MAAM,CAACb,OAAP,EAAb,CAAA;AACD,SAFD,EAEG,CAFH,CADkB,KAAA,IAAA,GAAA,qBAAA,GAGT,CAHS,CAAA;AAAA,OAnRf;AAuRL2F,MAAAA,iBAAiB,EAAE,SAAA,iBAAA,GAAA;AAAA,QAAA,IAAA,qBAAA,EAAA,sBAAA,CAAA;;AAAA,QAAA,OAAA,CAAA,qBAAA,GAAA,CAAA,sBAAA,GACjBlG,QAAQ,CAACmG,oBAAT,EAAgC,CAAA,CAAhC,CADiB,KACjB,IAAA,GAAA,KAAA,CAAA,GAAA,sBAAA,CAAoCR,OAApC,CAA4CC,MAA5C,CAAmD,UAACC,GAAD,EAAMzE,MAAN,EAAiB;AAClE,UAAA,OAAOyE,GAAG,GAAGzE,MAAM,CAACb,OAAP,EAAb,CAAA;AACD,SAFD,EAEG,CAFH,CADiB,KAAA,IAAA,GAAA,qBAAA,GAGR,CAHQ,CAAA;AAAA,OAAA;AAvRd,KAAP,CAAA;AA4RD,GAAA;AArVuC,EAAnC;AAwVP,IAAI6F,gBAAgC,GAAG,IAAvC,CAAA;AACO,SAASd,qBAAT,GAAiC;AACtC,EAAA,IAAI,OAAOc,gBAAP,KAA4B,SAAhC,EAA2C,OAAOA,gBAAP,CAAA;AAE3C,EAAIC,IAAAA,SAAS,GAAG,KAAhB,CAAA;;AACA,EAAI,IAAA;AACF,IAAA,IAAM5D,OAAO,GAAG;AACd,MAAA,IAAI8C,OAAJ,GAAc;AACZc,QAAAA,SAAS,GAAG,IAAZ,CAAA;AACA,QAAA,OAAO,KAAP,CAAA;AACD,OAAA;;AAJa,KAAhB,CAAA;;AAOA,IAAA,IAAMC,IAAI,GAAG,SAAPA,IAAO,GAAM,EAAnB,CAAA;;AAEAC,IAAAA,MAAM,CAACf,gBAAP,CAAwB,MAAxB,EAAgCc,IAAhC,EAAsC7D,OAAtC,CAAA,CAAA;AACA8D,IAAAA,MAAM,CAACvB,mBAAP,CAA2B,MAA3B,EAAmCsB,IAAnC,CAAA,CAAA;AACD,GAZD,CAYE,OAAOE,GAAP,EAAY;AACZH,IAAAA,SAAS,GAAG,KAAZ,CAAA;AACD,GAAA;;AACDD,EAAAA,gBAAgB,GAAGC,SAAnB,CAAA;AACA,EAAA,OAAOD,gBAAP,CAAA;AACD,CAAA;;AAED,SAASzC,iBAAT,CAA2BF,CAA3B,EAAwD;AACtD,EAAA,OAAQA,CAAD,CAAkBgD,IAAlB,KAA2B,YAAlC,CAAA;AACD;;;;;;"}
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.column.getSize()\n }, 0) ?? 0,\n getLeftTotalSize: () =>\n instance.getLeftHeaderGroups()[0]?.headers.reduce((sum, header) => {\n return sum + header.column.getSize()\n }, 0) ?? 0,\n getCenterTotalSize: () =>\n instance.getCenterHeaderGroups()[0]?.headers.reduce((sum, header) => {\n return sum + header.column.getSize()\n }, 0) ?? 0,\n getRightTotalSize: () =>\n instance.getRightHeaderGroups()[0]?.headers.reduce((sum, header) => {\n return sum + header.column.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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"}
@@ -12,58 +12,49 @@
12
12
 
13
13
  Object.defineProperty(exports, '__esModule', { value: true });
14
14
 
15
- var _rollupPluginBabelHelpers = require('../_virtual/_rollupPluginBabelHelpers.js');
16
15
  var utils = require('../utils.js');
17
16
 
18
17
  //
19
- var Columns = {
20
- createInstance: function createInstance(instance) {
18
+ const Columns = {
19
+ createInstance: instance => {
21
20
  return {
22
- getDefaultColumn: utils.memo(function () {
23
- return [instance.options.defaultColumn];
24
- }, function (defaultColumn) {
21
+ getDefaultColumn: utils.memo(() => [instance.options.defaultColumn], defaultColumn => {
25
22
  var _defaultColumn;
26
23
 
27
24
  defaultColumn = (_defaultColumn = defaultColumn) != null ? _defaultColumn : {};
28
- return _rollupPluginBabelHelpers["extends"]({
29
- header: function header(props) {
30
- return props.header.column.id;
31
- },
32
- footer: function footer(props) {
33
- return props.header.column.id;
25
+ return {
26
+ header: props => props.header.column.id,
27
+ footer: props => props.header.column.id,
28
+ cell: props => {
29
+ var _props$getValue$toStr, _props$getValue$toStr2, _props$getValue;
30
+
31
+ return (_props$getValue$toStr = (_props$getValue$toStr2 = (_props$getValue = props.getValue()).toString) == null ? void 0 : _props$getValue$toStr2.call(_props$getValue)) != null ? _props$getValue$toStr : null;
34
32
  },
35
- cell: function cell(_ref) {
36
- var _ref$value = _ref.value,
37
- value = _ref$value === void 0 ? '' : _ref$value;
38
- return typeof value === 'boolean' ? value.toString() : value;
39
- }
40
- }, instance._features.reduce(function (obj, feature) {
41
- return Object.assign(obj, feature.getDefaultColumn == null ? void 0 : feature.getDefaultColumn());
42
- }, {}), defaultColumn);
33
+ ...instance._features.reduce((obj, feature) => {
34
+ return Object.assign(obj, feature.getDefaultColumn == null ? void 0 : feature.getDefaultColumn());
35
+ }, {}),
36
+ ...defaultColumn
37
+ };
43
38
  }, {
44
- debug: function debug() {
39
+ debug: () => {
45
40
  var _instance$options$deb;
46
41
 
47
42
  return (_instance$options$deb = instance.options.debugAll) != null ? _instance$options$deb : instance.options.debugColumns;
48
43
  },
49
- key: process.env.NODE_ENV === 'production' && 'getDefaultColumn'
44
+ key: process.env.NODE_ENV === 'development' && 'getDefaultColumn'
50
45
  }),
51
- getColumnDefs: function getColumnDefs() {
52
- return instance.options.columns;
53
- },
54
- createColumn: function createColumn(columnDef, depth, parent) {
55
- var _ref2, _columnDef$id;
46
+ getColumnDefs: () => instance.options.columns,
47
+ createColumn: (columnDef, depth, parent) => {
48
+ var _ref, _columnDef$id;
56
49
 
57
- var defaultColumn = instance.getDefaultColumn();
58
- var id = (_ref2 = (_columnDef$id = columnDef.id) != null ? _columnDef$id : columnDef.accessorKey) != null ? _ref2 : typeof columnDef.header === 'string' ? columnDef.header : undefined;
59
- var accessorFn;
50
+ const defaultColumn = instance.getDefaultColumn();
51
+ let id = (_ref = (_columnDef$id = columnDef.id) != null ? _columnDef$id : columnDef.accessorKey) != null ? _ref : typeof columnDef.header === 'string' ? columnDef.header : undefined;
52
+ let accessorFn;
60
53
 
61
54
  if (columnDef.accessorFn) {
62
55
  accessorFn = columnDef.accessorFn;
63
56
  } else if (columnDef.accessorKey) {
64
- accessorFn = function accessorFn(originalRow) {
65
- return originalRow[columnDef.accessorKey];
66
- };
57
+ accessorFn = originalRow => originalRow[columnDef.accessorKey];
67
58
  }
68
59
 
69
60
  if (!id) {
@@ -74,69 +65,59 @@ var Columns = {
74
65
  throw new Error();
75
66
  }
76
67
 
77
- var column = _rollupPluginBabelHelpers["extends"]({}, defaultColumn, columnDef, {
68
+ let column = { ...defaultColumn,
69
+ ...columnDef,
78
70
  id: "" + id,
79
- accessorFn: accessorFn,
71
+ accessorFn,
80
72
  parent: parent,
81
- depth: depth,
82
- columnDef: columnDef,
73
+ depth,
74
+ columnDef,
83
75
  columnDefType: columnDef.columnDefType,
84
76
  columns: [],
85
- getFlatColumns: utils.memo(function () {
86
- return [true];
87
- }, function () {
77
+ getFlatColumns: utils.memo(() => [true], () => {
88
78
  var _column$columns;
89
79
 
90
- return [column].concat((_column$columns = column.columns) == null ? void 0 : _column$columns.flatMap(function (d) {
91
- return d.getFlatColumns();
92
- }));
80
+ return [column, ...((_column$columns = column.columns) == null ? void 0 : _column$columns.flatMap(d => d.getFlatColumns()))];
93
81
  }, {
94
82
  key: process.env.NODE_ENV === 'production' && 'column.getFlatColumns',
95
- debug: function debug() {
83
+ debug: () => {
96
84
  var _instance$options$deb2;
97
85
 
98
86
  return (_instance$options$deb2 = instance.options.debugAll) != null ? _instance$options$deb2 : instance.options.debugColumns;
99
87
  }
100
88
  }),
101
- getLeafColumns: utils.memo(function () {
102
- return [instance._getOrderColumnsFn()];
103
- }, function (orderColumns) {
89
+ getLeafColumns: utils.memo(() => [instance._getOrderColumnsFn()], orderColumns => {
104
90
  var _column$columns2;
105
91
 
106
92
  if ((_column$columns2 = column.columns) != null && _column$columns2.length) {
107
- var leafColumns = column.columns.flatMap(function (column) {
108
- return column.getLeafColumns();
109
- });
93
+ let leafColumns = column.columns.flatMap(column => column.getLeafColumns());
110
94
  return orderColumns(leafColumns);
111
95
  }
112
96
 
113
97
  return [column];
114
98
  }, {
115
99
  key: process.env.NODE_ENV === 'production' && 'column.getLeafColumns',
116
- debug: function debug() {
100
+ debug: () => {
117
101
  var _instance$options$deb3;
118
102
 
119
103
  return (_instance$options$deb3 = instance.options.debugAll) != null ? _instance$options$deb3 : instance.options.debugColumns;
120
104
  }
121
105
  })
122
- });
123
-
124
- column = instance._features.reduce(function (obj, feature) {
106
+ };
107
+ column = instance._features.reduce((obj, feature) => {
125
108
  return Object.assign(obj, feature.createColumn == null ? void 0 : feature.createColumn(column, instance));
126
109
  }, column); // Yes, we have to convert instance to uknown, because we know more than the compiler here.
127
110
 
128
111
  return column;
129
112
  },
130
- getAllColumns: utils.memo(function () {
131
- return [instance.getColumnDefs()];
132
- }, function (columnDefs) {
133
- var recurseColumns = function recurseColumns(columnDefs, parent, depth) {
113
+ getAllColumns: utils.memo(() => [instance.getColumnDefs()], columnDefs => {
114
+ const recurseColumns = function (columnDefs, parent, depth) {
134
115
  if (depth === void 0) {
135
116
  depth = 0;
136
117
  }
137
118
 
138
- return columnDefs.map(function (columnDef) {
139
- var column = instance.createColumn(columnDef, depth, parent);
119
+ return columnDefs.map(columnDef => {
120
+ const column = instance.createColumn(columnDef, depth, parent);
140
121
  column.columns = columnDef.columns ? recurseColumns(columnDef.columns, column, depth + 1) : [];
141
122
  return column;
142
123
  });
@@ -144,59 +125,51 @@ var Columns = {
144
125
 
145
126
  return recurseColumns(columnDefs);
146
127
  }, {
147
- key: process.env.NODE_ENV === 'production' && 'getAllColumns',
148
- debug: function debug() {
128
+ key: process.env.NODE_ENV === 'development' && 'getAllColumns',
129
+ debug: () => {
149
130
  var _instance$options$deb4;
150
131
 
151
132
  return (_instance$options$deb4 = instance.options.debugAll) != null ? _instance$options$deb4 : instance.options.debugColumns;
152
133
  }
153
134
  }),
154
- getAllFlatColumns: utils.memo(function () {
155
- return [instance.getAllColumns()];
156
- }, function (allColumns) {
157
- return allColumns.flatMap(function (column) {
135
+ getAllFlatColumns: utils.memo(() => [instance.getAllColumns()], allColumns => {
136
+ return allColumns.flatMap(column => {
158
137
  return column.getFlatColumns();
159
138
  });
160
139
  }, {
161
- key: process.env.NODE_ENV === 'production' && 'getAllFlatColumns',
162
- debug: function debug() {
140
+ key: process.env.NODE_ENV === 'development' && 'getAllFlatColumns',
141
+ debug: () => {
163
142
  var _instance$options$deb5;
164
143
 
165
144
  return (_instance$options$deb5 = instance.options.debugAll) != null ? _instance$options$deb5 : instance.options.debugColumns;
166
145
  }
167
146
  }),
168
- getAllFlatColumnsById: utils.memo(function () {
169
- return [instance.getAllFlatColumns()];
170
- }, function (flatColumns) {
171
- return flatColumns.reduce(function (acc, column) {
147
+ getAllFlatColumnsById: utils.memo(() => [instance.getAllFlatColumns()], flatColumns => {
148
+ return flatColumns.reduce((acc, column) => {
172
149
  acc[column.id] = column;
173
150
  return acc;
174
151
  }, {});
175
152
  }, {
176
- key: process.env.NODE_ENV === 'production' && 'getAllFlatColumnsById',
177
- debug: function debug() {
153
+ key: process.env.NODE_ENV === 'development' && 'getAllFlatColumnsById',
154
+ debug: () => {
178
155
  var _instance$options$deb6;
179
156
 
180
157
  return (_instance$options$deb6 = instance.options.debugAll) != null ? _instance$options$deb6 : instance.options.debugColumns;
181
158
  }
182
159
  }),
183
- getAllLeafColumns: utils.memo(function () {
184
- return [instance.getAllColumns(), instance._getOrderColumnsFn()];
185
- }, function (allColumns, orderColumns) {
186
- var leafColumns = allColumns.flatMap(function (column) {
187
- return column.getLeafColumns();
188
- });
160
+ getAllLeafColumns: utils.memo(() => [instance.getAllColumns(), instance._getOrderColumnsFn()], (allColumns, orderColumns) => {
161
+ let leafColumns = allColumns.flatMap(column => column.getLeafColumns());
189
162
  return orderColumns(leafColumns);
190
163
  }, {
191
- key: process.env.NODE_ENV === 'production' && 'getAllLeafColumns',
192
- debug: function debug() {
164
+ key: process.env.NODE_ENV === 'development' && 'getAllLeafColumns',
165
+ debug: () => {
193
166
  var _instance$options$deb7;
194
167
 
195
168
  return (_instance$options$deb7 = instance.options.debugAll) != null ? _instance$options$deb7 : instance.options.debugColumns;
196
169
  }
197
170
  }),
198
- getColumn: function getColumn(columnId) {
199
- var column = instance.getAllFlatColumnsById()[columnId];
171
+ getColumn: columnId => {
172
+ const column = instance.getAllFlatColumnsById()[columnId];
200
173
 
201
174
  if (!column) {
202
175
  if (process.env.NODE_ENV !== 'production') {
@@ -1 +1 @@
1
- {"version":3,"file":"Columns.js","sources":["../../../src/features/Columns.ts"],"sourcesContent":["import {\n Cell,\n Column,\n Header,\n TableGenerics,\n TableInstance,\n Row,\n AccessorFn,\n ColumnDef,\n Renderable,\n HeaderRenderProps,\n} from '../types'\nimport { memo } from '../utils'\n\nexport type CoreColumnDefType = 'data' | 'display' | 'group'\n\nexport type CoreColumnDef<TGenerics extends TableGenerics> = {\n id: string\n accessorKey?: string & keyof TGenerics['Row']\n accessorFn?: AccessorFn<TGenerics['Row']>\n columns?: ColumnDef<TGenerics>[]\n header?: Renderable<\n TGenerics,\n {\n instance: TableInstance<TGenerics>\n header: Header<TGenerics>\n column: Column<TGenerics>\n }\n >\n footer?: Renderable<\n TGenerics,\n {\n instance: TableInstance<TGenerics>\n header: Header<TGenerics>\n column: Column<TGenerics>\n }\n >\n cell?: Renderable<\n TGenerics,\n {\n instance: TableInstance<TGenerics>\n row: Row<TGenerics>\n column: Column<TGenerics>\n cell: Cell<TGenerics>\n value: TGenerics['Value']\n }\n >\n meta?: TGenerics['ColumnMeta']\n}\n\nexport type CoreColumn<TGenerics extends TableGenerics> = {\n id: string\n depth: number\n accessorFn?: AccessorFn<TGenerics['Row']>\n columnDef: ColumnDef<TGenerics>\n columnDefType: CoreColumnDefType\n columns: Column<TGenerics>[]\n parent?: Column<TGenerics>\n getFlatColumns: () => Column<TGenerics>[]\n getLeafColumns: () => Column<TGenerics>[]\n}\n\nexport type ColumnsOptions<TGenerics extends TableGenerics> = {\n columns: ColumnDef<TGenerics>[]\n defaultColumn?: Partial<ColumnDef<TGenerics>>\n}\n\nexport type ColumnsInstance<TGenerics extends TableGenerics> = {\n getDefaultColumn: () => Partial<ColumnDef<TGenerics>>\n getColumnDefs: () => ColumnDef<TGenerics>[]\n createColumn: (\n columnDef: ColumnDef<TGenerics>,\n depth: number,\n parent?: Column<TGenerics>\n ) => Column<TGenerics>\n getAllColumns: () => Column<TGenerics>[]\n getAllFlatColumns: () => Column<TGenerics>[]\n getAllFlatColumnsById: () => Record<string, Column<TGenerics>>\n getAllLeafColumns: () => Column<TGenerics>[]\n getColumn: (columnId: string) => Column<TGenerics>\n}\n\n//\n\nexport const Columns = {\n createInstance: <TGenerics extends TableGenerics>(\n instance: TableInstance<TGenerics>\n ): ColumnsInstance<TGenerics> => {\n return {\n getDefaultColumn: memo(\n () => [instance.options.defaultColumn],\n defaultColumn => {\n defaultColumn = (defaultColumn ?? {}) as Partial<ColumnDef<TGenerics>>\n\n return {\n header: (props: HeaderRenderProps<Header<TGenerics>>) =>\n props.header.column.id,\n footer: (props: HeaderRenderProps<Header<TGenerics>>) =>\n props.header.column.id,\n cell: ({ value = '' }: { value: any }): JSX.Element =>\n typeof value === 'boolean' ? value.toString() : value,\n ...instance._features.reduce((obj, feature) => {\n return Object.assign(obj, feature.getDefaultColumn?.())\n }, {}),\n ...defaultColumn,\n } as Partial<ColumnDef<TGenerics>>\n },\n {\n debug: () =>\n instance.options.debugAll ?? instance.options.debugColumns,\n key: process.env.NODE_ENV === 'production' && 'getDefaultColumn',\n }\n ),\n\n getColumnDefs: () => instance.options.columns,\n\n createColumn: (\n columnDef: ColumnDef<TGenerics> & { columnDefType?: CoreColumnDefType },\n depth: number,\n parent\n ) => {\n const defaultColumn = instance.getDefaultColumn()\n\n let id =\n columnDef.id ??\n columnDef.accessorKey ??\n (typeof columnDef.header === 'string' ? columnDef.header : undefined)\n\n let accessorFn: AccessorFn<TGenerics['Row']> | undefined\n\n if (columnDef.accessorFn) {\n accessorFn = columnDef.accessorFn\n } else if (columnDef.accessorKey) {\n accessorFn = (originalRow?: TGenerics['Row']) =>\n (originalRow as any)[columnDef.accessorKey]\n }\n\n if (!id) {\n if (process.env.NODE_ENV !== 'production') {\n throw new Error(\n columnDef.accessorFn\n ? `Columns require an id when using an accessorFn`\n : `Columns require an id when using a non-string header`\n )\n }\n throw new Error()\n }\n\n let column: CoreColumn<TGenerics> = {\n ...defaultColumn,\n ...columnDef,\n id: `${id}`,\n accessorFn,\n parent: parent as any,\n depth,\n columnDef,\n columnDefType: columnDef.columnDefType as CoreColumnDefType,\n columns: [],\n getFlatColumns: memo(\n () => [true],\n () => {\n return [\n column as Column<TGenerics>,\n ...column.columns?.flatMap(d => d.getFlatColumns()),\n ]\n },\n {\n key:\n process.env.NODE_ENV === 'production' &&\n 'column.getFlatColumns',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n getLeafColumns: memo(\n () => [instance._getOrderColumnsFn()],\n orderColumns => {\n if (column.columns?.length) {\n let leafColumns = column.columns.flatMap(column =>\n column.getLeafColumns()\n )\n\n return orderColumns(leafColumns)\n }\n\n return [column as Column<TGenerics>]\n },\n {\n key:\n process.env.NODE_ENV === 'production' &&\n 'column.getLeafColumns',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n }\n\n column = instance._features.reduce((obj, feature) => {\n return Object.assign(obj, feature.createColumn?.(column, instance))\n }, column)\n\n // Yes, we have to convert instance to uknown, because we know more than the compiler here.\n return column as Column<TGenerics>\n },\n\n getAllColumns: memo(\n () => [instance.getColumnDefs()],\n columnDefs => {\n const recurseColumns = (\n columnDefs: ColumnDef<TGenerics>[],\n parent?: Column<TGenerics>,\n depth = 0\n ): Column<TGenerics>[] => {\n return columnDefs.map(columnDef => {\n const column = instance.createColumn(columnDef, depth, parent)\n\n column.columns = columnDef.columns\n ? recurseColumns(columnDef.columns, column, depth + 1)\n : []\n\n return column\n })\n }\n\n return recurseColumns(columnDefs)\n },\n {\n key: process.env.NODE_ENV === 'production' && 'getAllColumns',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n\n getAllFlatColumns: memo(\n () => [instance.getAllColumns()],\n allColumns => {\n return allColumns.flatMap(column => {\n return column.getFlatColumns()\n })\n },\n {\n key: process.env.NODE_ENV === 'production' && 'getAllFlatColumns',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n\n getAllFlatColumnsById: memo(\n () => [instance.getAllFlatColumns()],\n flatColumns => {\n return flatColumns.reduce((acc, column) => {\n acc[column.id] = column\n return acc\n }, {} as Record<string, Column<TGenerics>>)\n },\n {\n key: process.env.NODE_ENV === 'production' && 'getAllFlatColumnsById',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n\n getAllLeafColumns: memo(\n () => [instance.getAllColumns(), instance._getOrderColumnsFn()],\n (allColumns, orderColumns) => {\n let leafColumns = allColumns.flatMap(column =>\n column.getLeafColumns()\n )\n return orderColumns(leafColumns)\n },\n {\n key: process.env.NODE_ENV === 'production' && 'getAllLeafColumns',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n\n getColumn: columnId => {\n const column = instance.getAllFlatColumnsById()[columnId]\n\n if (!column) {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(`[Table] Column with id ${columnId} does not exist.`)\n }\n throw new Error()\n }\n\n return column\n },\n }\n },\n}\n"],"names":["Columns","createInstance","instance","getDefaultColumn","memo","options","defaultColumn","_extends","header","props","column","id","footer","cell","value","toString","_features","reduce","obj","feature","Object","assign","debug","debugAll","debugColumns","key","process","env","NODE_ENV","getColumnDefs","columns","createColumn","columnDef","depth","parent","accessorKey","undefined","accessorFn","originalRow","Error","columnDefType","getFlatColumns","flatMap","d","getLeafColumns","_getOrderColumnsFn","orderColumns","length","leafColumns","getAllColumns","columnDefs","recurseColumns","map","getAllFlatColumns","allColumns","getAllFlatColumnsById","flatColumns","acc","getAllLeafColumns","getColumn","columnId","console","warn"],"mappings":"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"}
1
+ {"version":3,"file":"Columns.js","sources":["../../../src/features/Columns.ts"],"sourcesContent":["import {\n Cell,\n Column,\n Header,\n TableGenerics,\n TableInstance,\n Row,\n AccessorFn,\n ColumnDef,\n Renderable,\n} from '../types'\nimport { memo } from '../utils'\n\nexport type CoreColumnDefType = 'data' | 'display' | 'group'\n\nexport type CoreColumnDef<TGenerics extends TableGenerics> = {\n id: string\n accessorKey?: string & keyof TGenerics['Row']\n accessorFn?: AccessorFn<TGenerics['Row']>\n columns?: ColumnDef<TGenerics>[]\n header?: Renderable<\n TGenerics,\n {\n instance: TableInstance<TGenerics>\n header: Header<TGenerics>\n column: Column<TGenerics>\n }\n >\n footer?: Renderable<\n TGenerics,\n {\n instance: TableInstance<TGenerics>\n header: Header<TGenerics>\n column: Column<TGenerics>\n }\n >\n cell?: Renderable<\n TGenerics,\n {\n instance: TableInstance<TGenerics>\n row: Row<TGenerics>\n column: Column<TGenerics>\n cell: Cell<TGenerics>\n getValue: () => TGenerics['Value']\n }\n >\n meta?: TGenerics['ColumnMeta']\n}\n\nexport type CoreColumn<TGenerics extends TableGenerics> = {\n id: string\n depth: number\n accessorFn?: AccessorFn<TGenerics['Row']>\n columnDef: ColumnDef<TGenerics>\n columnDefType: CoreColumnDefType\n columns: Column<TGenerics>[]\n parent?: Column<TGenerics>\n getFlatColumns: () => Column<TGenerics>[]\n getLeafColumns: () => Column<TGenerics>[]\n}\n\nexport type ColumnsOptions<TGenerics extends TableGenerics> = {\n columns: ColumnDef<TGenerics>[]\n defaultColumn?: Partial<ColumnDef<TGenerics>>\n}\n\nexport type ColumnsInstance<TGenerics extends TableGenerics> = {\n getDefaultColumn: () => Partial<ColumnDef<TGenerics>>\n getColumnDefs: () => ColumnDef<TGenerics>[]\n createColumn: (\n columnDef: ColumnDef<TGenerics>,\n depth: number,\n parent?: Column<TGenerics>\n ) => Column<TGenerics>\n getAllColumns: () => Column<TGenerics>[]\n getAllFlatColumns: () => Column<TGenerics>[]\n getAllFlatColumnsById: () => Record<string, Column<TGenerics>>\n getAllLeafColumns: () => Column<TGenerics>[]\n getColumn: (columnId: string) => Column<TGenerics>\n}\n\n//\n\nexport const Columns = {\n createInstance: <TGenerics extends TableGenerics>(\n instance: TableInstance<TGenerics>\n ): ColumnsInstance<TGenerics> => {\n return {\n getDefaultColumn: memo(\n () => [instance.options.defaultColumn],\n defaultColumn => {\n defaultColumn = (defaultColumn ?? {}) as Partial<ColumnDef<TGenerics>>\n\n return {\n header: props => props.header.column.id,\n footer: props => props.header.column.id,\n cell: props => props.getValue().toString?.() ?? null,\n ...instance._features.reduce((obj, feature) => {\n return Object.assign(obj, feature.getDefaultColumn?.())\n }, {}),\n ...defaultColumn,\n } as Partial<ColumnDef<TGenerics>>\n },\n {\n debug: () =>\n instance.options.debugAll ?? instance.options.debugColumns,\n key: process.env.NODE_ENV === 'development' && 'getDefaultColumn',\n }\n ),\n\n getColumnDefs: () => instance.options.columns,\n\n createColumn: (\n columnDef: ColumnDef<TGenerics> & { columnDefType?: CoreColumnDefType },\n depth: number,\n parent\n ) => {\n const defaultColumn = instance.getDefaultColumn()\n\n let id =\n columnDef.id ??\n columnDef.accessorKey ??\n (typeof columnDef.header === 'string' ? columnDef.header : undefined)\n\n let accessorFn: AccessorFn<TGenerics['Row']> | undefined\n\n if (columnDef.accessorFn) {\n accessorFn = columnDef.accessorFn\n } else if (columnDef.accessorKey) {\n accessorFn = (originalRow?: TGenerics['Row']) =>\n (originalRow as any)[columnDef.accessorKey]\n }\n\n if (!id) {\n if (process.env.NODE_ENV !== 'production') {\n throw new Error(\n columnDef.accessorFn\n ? `Columns require an id when using an accessorFn`\n : `Columns require an id when using a non-string header`\n )\n }\n throw new Error()\n }\n\n let column: CoreColumn<TGenerics> = {\n ...defaultColumn,\n ...columnDef,\n id: `${id}`,\n accessorFn,\n parent: parent as any,\n depth,\n columnDef,\n columnDefType: columnDef.columnDefType as CoreColumnDefType,\n columns: [],\n getFlatColumns: memo(\n () => [true],\n () => {\n return [\n column as Column<TGenerics>,\n ...column.columns?.flatMap(d => d.getFlatColumns()),\n ]\n },\n {\n key:\n process.env.NODE_ENV === 'production' &&\n 'column.getFlatColumns',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n getLeafColumns: memo(\n () => [instance._getOrderColumnsFn()],\n orderColumns => {\n if (column.columns?.length) {\n let leafColumns = column.columns.flatMap(column =>\n column.getLeafColumns()\n )\n\n return orderColumns(leafColumns)\n }\n\n return [column as Column<TGenerics>]\n },\n {\n key:\n process.env.NODE_ENV === 'production' &&\n 'column.getLeafColumns',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n }\n\n column = instance._features.reduce((obj, feature) => {\n return Object.assign(obj, feature.createColumn?.(column, instance))\n }, column)\n\n // Yes, we have to convert instance to uknown, because we know more than the compiler here.\n return column as Column<TGenerics>\n },\n\n getAllColumns: memo(\n () => [instance.getColumnDefs()],\n columnDefs => {\n const recurseColumns = (\n columnDefs: ColumnDef<TGenerics>[],\n parent?: Column<TGenerics>,\n depth = 0\n ): Column<TGenerics>[] => {\n return columnDefs.map(columnDef => {\n const column = instance.createColumn(columnDef, depth, parent)\n\n column.columns = columnDef.columns\n ? recurseColumns(columnDef.columns, column, depth + 1)\n : []\n\n return column\n })\n }\n\n return recurseColumns(columnDefs)\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getAllColumns',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n\n getAllFlatColumns: memo(\n () => [instance.getAllColumns()],\n allColumns => {\n return allColumns.flatMap(column => {\n return column.getFlatColumns()\n })\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getAllFlatColumns',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n\n getAllFlatColumnsById: memo(\n () => [instance.getAllFlatColumns()],\n flatColumns => {\n return flatColumns.reduce((acc, column) => {\n acc[column.id] = column\n return acc\n }, {} as Record<string, Column<TGenerics>>)\n },\n {\n key:\n process.env.NODE_ENV === 'development' && 'getAllFlatColumnsById',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n\n getAllLeafColumns: memo(\n () => [instance.getAllColumns(), instance._getOrderColumnsFn()],\n (allColumns, orderColumns) => {\n let leafColumns = allColumns.flatMap(column =>\n column.getLeafColumns()\n )\n return orderColumns(leafColumns)\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getAllLeafColumns',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n\n getColumn: columnId => {\n const column = instance.getAllFlatColumnsById()[columnId]\n\n if (!column) {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(`[Table] Column with id ${columnId} does not exist.`)\n }\n throw new Error()\n }\n\n return column\n },\n }\n },\n}\n"],"names":["Columns","createInstance","instance","getDefaultColumn","memo","options","defaultColumn","header","props","column","id","footer","cell","getValue","toString","_features","reduce","obj","feature","Object","assign","debug","debugAll","debugColumns","key","process","env","NODE_ENV","getColumnDefs","columns","createColumn","columnDef","depth","parent","accessorKey","undefined","accessorFn","originalRow","Error","columnDefType","getFlatColumns","flatMap","d","getLeafColumns","_getOrderColumnsFn","orderColumns","length","leafColumns","getAllColumns","columnDefs","recurseColumns","map","getAllFlatColumns","allColumns","getAllFlatColumnsById","flatColumns","acc","getAllLeafColumns","getColumn","columnId","console","warn"],"mappings":";;;;;;;;;;;;;;;;AAiFA;AAEO,MAAMA,OAAO,GAAG;AACrBC,EAAAA,cAAc,EACZC,QADc,IAEiB;AAC/B,IAAO,OAAA;AACLC,MAAAA,gBAAgB,EAAEC,UAAI,CACpB,MAAM,CAACF,QAAQ,CAACG,OAAT,CAAiBC,aAAlB,CADc,EAEpBA,aAAa,IAAI;AAAA,QAAA,IAAA,cAAA,CAAA;;AACfA,QAAAA,aAAa,GAAA,CAAA,cAAA,GAAIA,aAAJ,KAAA,IAAA,GAAA,cAAA,GAAqB,EAAlC,CAAA;AAEA,QAAO,OAAA;AACLC,UAAAA,MAAM,EAAEC,KAAK,IAAIA,KAAK,CAACD,MAAN,CAAaE,MAAb,CAAoBC,EADhC;AAELC,UAAAA,MAAM,EAAEH,KAAK,IAAIA,KAAK,CAACD,MAAN,CAAaE,MAAb,CAAoBC,EAFhC;AAGLE,UAAAA,IAAI,EAAEJ,KAAK,IAAA;AAAA,YAAA,IAAA,qBAAA,EAAA,sBAAA,EAAA,eAAA,CAAA;;AAAA,YAAI,OAAA,CAAA,qBAAA,GAAA,CAAA,sBAAA,GAAA,CAAA,eAAA,GAAAA,KAAK,CAACK,QAAN,IAAiBC,QAArB,KAAA,IAAA,GAAA,KAAA,CAAA,GAAI,sBAAJ,CAAA,IAAA,CAAA,eAAA,CAAA,KAAA,IAAA,GAAA,qBAAA,GAAqC,IAArC,CAAA;AAAA,WAHN;AAIL,UAAGZ,GAAAA,QAAQ,CAACa,SAAT,CAAmBC,MAAnB,CAA0B,CAACC,GAAD,EAAMC,OAAN,KAAkB;AAC7C,YAAA,OAAOC,MAAM,CAACC,MAAP,CAAcH,GAAd,EAAmBC,OAAO,CAACf,gBAA3B,IAAmBe,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAACf,gBAAR,EAAnB,CAAP,CAAA;AACD,WAFE,EAEA,EAFA,CAJE;AAOL,UAAGG,GAAAA,aAAAA;AAPE,SAAP,CAAA;AASD,OAdmB,EAepB;AACEe,QAAAA,KAAK,EAAE,MAAA;AAAA,UAAA,IAAA,qBAAA,CAAA;;AAAA,UACLnB,OAAAA,CAAAA,qBAAAA,GAAAA,QAAQ,CAACG,OAAT,CAAiBiB,QADZ,oCACwBpB,QAAQ,CAACG,OAAT,CAAiBkB,YADzC,CAAA;AAAA,SADT;AAGEC,QAAAA,GAAG,EAAEC,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,aAAzB,IAA0C,kBAAA;AAHjD,OAfoB,CADjB;AAuBLC,MAAAA,aAAa,EAAE,MAAM1B,QAAQ,CAACG,OAAT,CAAiBwB,OAvBjC;AAyBLC,MAAAA,YAAY,EAAE,CACZC,SADY,EAEZC,KAFY,EAGZC,MAHY,KAIT;AAAA,QAAA,IAAA,IAAA,EAAA,aAAA,CAAA;;AACH,QAAA,MAAM3B,aAAa,GAAGJ,QAAQ,CAACC,gBAAT,EAAtB,CAAA;AAEA,QAAIO,IAAAA,EAAE,4BACJqB,SAAS,CAACrB,EADN,KAEJqB,IAAAA,GAAAA,aAAAA,GAAAA,SAAS,CAACG,WAFN,KAAA,IAAA,GAAA,IAAA,GAGH,OAAOH,SAAS,CAACxB,MAAjB,KAA4B,QAA5B,GAAuCwB,SAAS,CAACxB,MAAjD,GAA0D4B,SAH7D,CAAA;AAKA,QAAA,IAAIC,UAAJ,CAAA;;AAEA,QAAIL,IAAAA,SAAS,CAACK,UAAd,EAA0B;AACxBA,UAAAA,UAAU,GAAGL,SAAS,CAACK,UAAvB,CAAA;AACD,SAFD,MAEO,IAAIL,SAAS,CAACG,WAAd,EAA2B;AAChCE,UAAAA,UAAU,GAAIC,WAAD,IACVA,WAAD,CAAqBN,SAAS,CAACG,WAA/B,CADF,CAAA;AAED,SAAA;;AAED,QAAI,IAAA,CAACxB,EAAL,EAAS;AACP,UAAA,IAAIe,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,YAA7B,EAA2C;AACzC,YAAA,MAAM,IAAIW,KAAJ,CACJP,SAAS,CAACK,UAAV,4GADI,CAAN,CAAA;AAKD,WAAA;;AACD,UAAM,MAAA,IAAIE,KAAJ,EAAN,CAAA;AACD,SAAA;;AAED,QAAA,IAAI7B,MAA6B,GAAG,EAClC,GAAGH,aAD+B;AAElC,UAAA,GAAGyB,SAF+B;AAGlCrB,UAAAA,EAAE,OAAKA,EAH2B;AAIlC0B,UAAAA,UAJkC;AAKlCH,UAAAA,MAAM,EAAEA,MAL0B;AAMlCD,UAAAA,KANkC;AAOlCD,UAAAA,SAPkC;AAQlCQ,UAAAA,aAAa,EAAER,SAAS,CAACQ,aARS;AASlCV,UAAAA,OAAO,EAAE,EATyB;AAUlCW,UAAAA,cAAc,EAAEpC,UAAI,CAClB,MAAM,CAAC,IAAD,CADY,EAElB,MAAM;AAAA,YAAA,IAAA,eAAA,CAAA;;AACJ,YAAA,OAAO,CACLK,MADK,EAEL,uBAAGA,MAAM,CAACoB,OAAV,KAAG,IAAA,GAAA,KAAA,CAAA,GAAA,eAAA,CAAgBY,OAAhB,CAAwBC,CAAC,IAAIA,CAAC,CAACF,cAAF,EAA7B,CAAH,CAFK,CAAP,CAAA;AAID,WAPiB,EAQlB;AACEhB,YAAAA,GAAG,EACDC,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,YAAzB,IACA,uBAHJ;AAIEN,YAAAA,KAAK,EAAE,MAAA;AAAA,cAAA,IAAA,sBAAA,CAAA;;AAAA,cACLnB,OAAAA,CAAAA,sBAAAA,GAAAA,QAAQ,CAACG,OAAT,CAAiBiB,QADZ,qCACwBpB,QAAQ,CAACG,OAAT,CAAiBkB,YADzC,CAAA;AAAA,aAAA;AAJT,WARkB,CAVc;AA0BlCoB,UAAAA,cAAc,EAAEvC,UAAI,CAClB,MAAM,CAACF,QAAQ,CAAC0C,kBAAT,EAAD,CADY,EAElBC,YAAY,IAAI;AAAA,YAAA,IAAA,gBAAA,CAAA;;AACd,YAAA,IAAA,CAAA,gBAAA,GAAIpC,MAAM,CAACoB,OAAX,KAAI,IAAA,IAAA,gBAAA,CAAgBiB,MAApB,EAA4B;AAC1B,cAAA,IAAIC,WAAW,GAAGtC,MAAM,CAACoB,OAAP,CAAeY,OAAf,CAAuBhC,MAAM,IAC7CA,MAAM,CAACkC,cAAP,EADgB,CAAlB,CAAA;AAIA,cAAOE,OAAAA,YAAY,CAACE,WAAD,CAAnB,CAAA;AACD,aAAA;;AAED,YAAO,OAAA,CAACtC,MAAD,CAAP,CAAA;AACD,WAZiB,EAalB;AACEe,YAAAA,GAAG,EACDC,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,YAAzB,IACA,uBAHJ;AAIEN,YAAAA,KAAK,EAAE,MAAA;AAAA,cAAA,IAAA,sBAAA,CAAA;;AAAA,cACLnB,OAAAA,CAAAA,sBAAAA,GAAAA,QAAQ,CAACG,OAAT,CAAiBiB,QADZ,qCACwBpB,QAAQ,CAACG,OAAT,CAAiBkB,YADzC,CAAA;AAAA,aAAA;AAJT,WAbkB,CAAA;AA1Bc,SAApC,CAAA;AAiDAd,QAAAA,MAAM,GAAGP,QAAQ,CAACa,SAAT,CAAmBC,MAAnB,CAA0B,CAACC,GAAD,EAAMC,OAAN,KAAkB;AACnD,UAAA,OAAOC,MAAM,CAACC,MAAP,CAAcH,GAAd,EAAmBC,OAAO,CAACY,YAA3B,IAAmBZ,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAACY,YAAR,CAAuBrB,MAAvB,EAA+BP,QAA/B,CAAnB,CAAP,CAAA;AACD,SAFQ,EAENO,MAFM,CAAT,CA7EG;;AAkFH,QAAA,OAAOA,MAAP,CAAA;AACD,OAhHI;AAkHLuC,MAAAA,aAAa,EAAE5C,UAAI,CACjB,MAAM,CAACF,QAAQ,CAAC0B,aAAT,EAAD,CADW,EAEjBqB,UAAU,IAAI;AACZ,QAAMC,MAAAA,cAAc,GAAG,UACrBD,UADqB,EAErBhB,MAFqB,EAGrBD,KAHqB,EAIG;AAAA,UAAA,IADxBA,KACwB,KAAA,KAAA,CAAA,EAAA;AADxBA,YAAAA,KACwB,GADhB,CACgB,CAAA;AAAA,WAAA;;AACxB,UAAA,OAAOiB,UAAU,CAACE,GAAX,CAAepB,SAAS,IAAI;AACjC,YAAMtB,MAAAA,MAAM,GAAGP,QAAQ,CAAC4B,YAAT,CAAsBC,SAAtB,EAAiCC,KAAjC,EAAwCC,MAAxC,CAAf,CAAA;AAEAxB,YAAAA,MAAM,CAACoB,OAAP,GAAiBE,SAAS,CAACF,OAAV,GACbqB,cAAc,CAACnB,SAAS,CAACF,OAAX,EAAoBpB,MAApB,EAA4BuB,KAAK,GAAG,CAApC,CADD,GAEb,EAFJ,CAAA;AAIA,YAAA,OAAOvB,MAAP,CAAA;AACD,WARM,CAAP,CAAA;AASD,SAdD,CAAA;;AAgBA,QAAOyC,OAAAA,cAAc,CAACD,UAAD,CAArB,CAAA;AACD,OApBgB,EAqBjB;AACEzB,QAAAA,GAAG,EAAEC,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,aAAzB,IAA0C,eADjD;AAEEN,QAAAA,KAAK,EAAE,MAAA;AAAA,UAAA,IAAA,sBAAA,CAAA;;AAAA,UACLnB,OAAAA,CAAAA,sBAAAA,GAAAA,QAAQ,CAACG,OAAT,CAAiBiB,QADZ,qCACwBpB,QAAQ,CAACG,OAAT,CAAiBkB,YADzC,CAAA;AAAA,SAAA;AAFT,OArBiB,CAlHd;AA8IL6B,MAAAA,iBAAiB,EAAEhD,UAAI,CACrB,MAAM,CAACF,QAAQ,CAAC8C,aAAT,EAAD,CADe,EAErBK,UAAU,IAAI;AACZ,QAAA,OAAOA,UAAU,CAACZ,OAAX,CAAmBhC,MAAM,IAAI;AAClC,UAAOA,OAAAA,MAAM,CAAC+B,cAAP,EAAP,CAAA;AACD,SAFM,CAAP,CAAA;AAGD,OANoB,EAOrB;AACEhB,QAAAA,GAAG,EAAEC,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,aAAzB,IAA0C,mBADjD;AAEEN,QAAAA,KAAK,EAAE,MAAA;AAAA,UAAA,IAAA,sBAAA,CAAA;;AAAA,UACLnB,OAAAA,CAAAA,sBAAAA,GAAAA,QAAQ,CAACG,OAAT,CAAiBiB,QADZ,qCACwBpB,QAAQ,CAACG,OAAT,CAAiBkB,YADzC,CAAA;AAAA,SAAA;AAFT,OAPqB,CA9IlB;AA4JL+B,MAAAA,qBAAqB,EAAElD,UAAI,CACzB,MAAM,CAACF,QAAQ,CAACkD,iBAAT,EAAD,CADmB,EAEzBG,WAAW,IAAI;AACb,QAAOA,OAAAA,WAAW,CAACvC,MAAZ,CAAmB,CAACwC,GAAD,EAAM/C,MAAN,KAAiB;AACzC+C,UAAAA,GAAG,CAAC/C,MAAM,CAACC,EAAR,CAAH,GAAiBD,MAAjB,CAAA;AACA,UAAA,OAAO+C,GAAP,CAAA;AACD,SAHM,EAGJ,EAHI,CAAP,CAAA;AAID,OAPwB,EAQzB;AACEhC,QAAAA,GAAG,EACDC,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,aAAzB,IAA0C,uBAF9C;AAGEN,QAAAA,KAAK,EAAE,MAAA;AAAA,UAAA,IAAA,sBAAA,CAAA;;AAAA,UACLnB,OAAAA,CAAAA,sBAAAA,GAAAA,QAAQ,CAACG,OAAT,CAAiBiB,QADZ,qCACwBpB,QAAQ,CAACG,OAAT,CAAiBkB,YADzC,CAAA;AAAA,SAAA;AAHT,OARyB,CA5JtB;AA4KLkC,MAAAA,iBAAiB,EAAErD,UAAI,CACrB,MAAM,CAACF,QAAQ,CAAC8C,aAAT,EAAD,EAA2B9C,QAAQ,CAAC0C,kBAAT,EAA3B,CADe,EAErB,CAACS,UAAD,EAAaR,YAAb,KAA8B;AAC5B,QAAA,IAAIE,WAAW,GAAGM,UAAU,CAACZ,OAAX,CAAmBhC,MAAM,IACzCA,MAAM,CAACkC,cAAP,EADgB,CAAlB,CAAA;AAGA,QAAOE,OAAAA,YAAY,CAACE,WAAD,CAAnB,CAAA;AACD,OAPoB,EAQrB;AACEvB,QAAAA,GAAG,EAAEC,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,aAAzB,IAA0C,mBADjD;AAEEN,QAAAA,KAAK,EAAE,MAAA;AAAA,UAAA,IAAA,sBAAA,CAAA;;AAAA,UACLnB,OAAAA,CAAAA,sBAAAA,GAAAA,QAAQ,CAACG,OAAT,CAAiBiB,QADZ,qCACwBpB,QAAQ,CAACG,OAAT,CAAiBkB,YADzC,CAAA;AAAA,SAAA;AAFT,OARqB,CA5KlB;AA2LLmC,MAAAA,SAAS,EAAEC,QAAQ,IAAI;AACrB,QAAA,MAAMlD,MAAM,GAAGP,QAAQ,CAACoD,qBAAT,EAAA,CAAiCK,QAAjC,CAAf,CAAA;;AAEA,QAAI,IAAA,CAAClD,MAAL,EAAa;AACX,UAAA,IAAIgB,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,YAA7B,EAA2C;AACzCiC,YAAAA,OAAO,CAACC,IAAR,CAAA,yBAAA,GAAuCF,QAAvC,GAAA,kBAAA,CAAA,CAAA;AACD,WAAA;;AACD,UAAM,MAAA,IAAIrB,KAAJ,EAAN,CAAA;AACD,SAAA;;AAED,QAAA,OAAO7B,MAAP,CAAA;AACD,OAAA;AAtMI,KAAP,CAAA;AAwMD,GAAA;AA5MoB;;;;"}