@tanstack/table-core 9.0.0-beta.26 → 9.0.0-beta.27
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.
- package/dist/features/column-ordering/columnOrderingFeature.cjs +2 -1
- package/dist/features/column-ordering/columnOrderingFeature.cjs.map +1 -1
- package/dist/features/column-ordering/columnOrderingFeature.js +2 -1
- package/dist/features/column-ordering/columnOrderingFeature.js.map +1 -1
- package/dist/features/column-pinning/columnPinningFeature.cjs +24 -12
- package/dist/features/column-pinning/columnPinningFeature.cjs.map +1 -1
- package/dist/features/column-pinning/columnPinningFeature.js +24 -12
- package/dist/features/column-pinning/columnPinningFeature.js.map +1 -1
- package/dist/features/column-resizing/columnResizingFeature.utils.cjs +62 -24
- package/dist/features/column-resizing/columnResizingFeature.utils.cjs.map +1 -1
- package/dist/features/column-resizing/columnResizingFeature.utils.js +62 -24
- package/dist/features/column-resizing/columnResizingFeature.utils.js.map +1 -1
- package/dist/features/column-sizing/columnSizingFeature.cjs +35 -45
- package/dist/features/column-sizing/columnSizingFeature.cjs.map +1 -1
- package/dist/features/column-sizing/columnSizingFeature.js +36 -46
- package/dist/features/column-sizing/columnSizingFeature.js.map +1 -1
- package/dist/features/column-sizing/columnSizingFeature.types.d.cts +38 -1
- package/dist/features/column-sizing/columnSizingFeature.types.d.ts +38 -1
- package/dist/features/column-sizing/columnSizingFeature.utils.cjs +49 -10
- package/dist/features/column-sizing/columnSizingFeature.utils.cjs.map +1 -1
- package/dist/features/column-sizing/columnSizingFeature.utils.d.cts +18 -4
- package/dist/features/column-sizing/columnSizingFeature.utils.d.ts +18 -4
- package/dist/features/column-sizing/columnSizingFeature.utils.js +49 -11
- package/dist/features/column-sizing/columnSizingFeature.utils.js.map +1 -1
- package/dist/features/column-visibility/columnVisibilityFeature.cjs +8 -4
- package/dist/features/column-visibility/columnVisibilityFeature.cjs.map +1 -1
- package/dist/features/column-visibility/columnVisibilityFeature.js +8 -4
- package/dist/features/column-visibility/columnVisibilityFeature.js.map +1 -1
- package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs +3 -2
- package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs.map +1 -1
- package/dist/features/column-visibility/columnVisibilityFeature.utils.js +3 -2
- package/dist/features/column-visibility/columnVisibilityFeature.utils.js.map +1 -1
- package/dist/features/row-selection/rowSelectionFeature.utils.cjs +1 -1
- package/dist/features/row-selection/rowSelectionFeature.utils.cjs.map +1 -1
- package/dist/features/row-selection/rowSelectionFeature.utils.js +1 -1
- package/dist/features/row-selection/rowSelectionFeature.utils.js.map +1 -1
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/static-functions.cjs +1 -0
- package/dist/static-functions.d.cts +2 -2
- package/dist/static-functions.d.ts +2 -2
- package/dist/static-functions.js +2 -2
- package/package.json +1 -1
- package/src/features/column-ordering/columnOrderingFeature.ts +1 -0
- package/src/features/column-pinning/columnPinningFeature.ts +12 -0
- package/src/features/column-resizing/columnResizingFeature.utils.ts +96 -44
- package/src/features/column-sizing/columnSizingFeature.ts +18 -18
- package/src/features/column-sizing/columnSizingFeature.types.ts +39 -0
- package/src/features/column-sizing/columnSizingFeature.utils.ts +94 -39
- package/src/features/column-visibility/columnVisibilityFeature.ts +4 -0
- package/src/features/column-visibility/columnVisibilityFeature.utils.ts +4 -2
- package/src/features/row-selection/rowSelectionFeature.utils.ts +5 -1
|
@@ -26,7 +26,8 @@ const columnOrderingFeature = {
|
|
|
26
26
|
(_column$table$atoms$c = column.table.atoms.columnOrder) === null || _column$table$atoms$c === void 0 ? void 0 : _column$table$atoms$c.get(),
|
|
27
27
|
(_column$table$atoms$c2 = column.table.atoms.columnPinning) === null || _column$table$atoms$c2 === void 0 ? void 0 : _column$table$atoms$c2.get(),
|
|
28
28
|
(_column$table$atoms$g = column.table.atoms.grouping) === null || _column$table$atoms$g === void 0 ? void 0 : _column$table$atoms$g.get(),
|
|
29
|
-
(_column$table$atoms$c3 = column.table.atoms.columnVisibility) === null || _column$table$atoms$c3 === void 0 ? void 0 : _column$table$atoms$c3.get()
|
|
29
|
+
(_column$table$atoms$c3 = column.table.atoms.columnVisibility) === null || _column$table$atoms$c3 === void 0 ? void 0 : _column$table$atoms$c3.get(),
|
|
30
|
+
column.table.options.groupedColumnMode
|
|
30
31
|
];
|
|
31
32
|
}
|
|
32
33
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"columnOrderingFeature.cjs","names":["getDefaultColumnOrderState","makeStateUpdater","column_getIndex","column_getIsFirstColumn","column_getIsLastColumn","table_setColumnOrder","table_resetColumnOrder","table_getOrderColumnsFn"],"sources":["../../../src/features/column-ordering/columnOrderingFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n makeStateUpdater,\n} from '../../utils'\nimport {\n column_getIndex,\n column_getIsFirstColumn,\n column_getIsLastColumn,\n getDefaultColumnOrderState,\n table_getOrderColumnsFn,\n table_resetColumnOrder,\n table_setColumnOrder,\n} from './columnOrderingFeature.utils'\nimport type { TableFeature } from '../../types/TableFeatures'\n\n/**\n * Feature that adds column ordering state and APIs for ordering leaf columns.\n */\nexport const columnOrderingFeature: TableFeature = {\n getInitialState: (initialState) => {\n return {\n columnOrder: getDefaultColumnOrderState(),\n ...initialState,\n }\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onColumnOrderChange: makeStateUpdater('columnOrder', table),\n }\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnOrderingFeature', prototype, table, {\n column_getIndex: {\n fn: (column, position) => column_getIndex(column, position),\n memoDeps: (column, position) => [\n position,\n column.table.atoms.columnOrder?.get(),\n column.table.atoms.columnPinning?.get(),\n column.table.atoms.grouping?.get(),\n column.table.atoms.columnVisibility?.get(),\n ],\n },\n column_getIsFirstColumn: {\n fn: (column, position) => column_getIsFirstColumn(column, position),\n },\n column_getIsLastColumn: {\n fn: (column, position) => column_getIsLastColumn(column, position),\n },\n })\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnOrderingFeature', table, {\n table_setColumnOrder: {\n fn: (updater) => table_setColumnOrder(table, updater),\n },\n table_resetColumnOrder: {\n fn: (defaultState) => table_resetColumnOrder(table, defaultState),\n },\n table_getOrderColumnsFn: {\n fn: () => table_getOrderColumnsFn(table),\n memoDeps: () => [\n table.atoms.columnOrder?.get(),\n table.atoms.grouping?.get(),\n table.options.groupedColumnMode,\n ],\n },\n })\n },\n}\n"],"mappings":";;;;;;;AAmBA,MAAa,wBAAsC;CACjD,kBAAkB,iBAAiB;EACjC,OAAO;GACL,aAAaA,+DAA2B;GACxC,GAAG;EACL;CACF;CAEA,yBAAyB,UAAU;EACjC,OAAO,EACL,qBAAqBC,+BAAiB,eAAe,KAAK,EAC5D;CACF;CAEA,wBAAwB,WAAW,UAAU;EAC3C,kCAAoB,yBAAyB,WAAW,OAAO;GAC7D,iBAAiB;IACf,KAAK,QAAQ,aAAaC,oDAAgB,QAAQ,QAAQ;IAC1D,WAAW,QAAQ,aAAa;;;MAC9B;+BACA,OAAO,MAAM,MAAM,2FAAa,IAAI;gCACpC,OAAO,MAAM,MAAM,+FAAe,IAAI;+BACtC,OAAO,MAAM,MAAM,wFAAU,IAAI;gCACjC,OAAO,MAAM,MAAM,kGAAkB,IAAI;
|
|
1
|
+
{"version":3,"file":"columnOrderingFeature.cjs","names":["getDefaultColumnOrderState","makeStateUpdater","column_getIndex","column_getIsFirstColumn","column_getIsLastColumn","table_setColumnOrder","table_resetColumnOrder","table_getOrderColumnsFn"],"sources":["../../../src/features/column-ordering/columnOrderingFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n makeStateUpdater,\n} from '../../utils'\nimport {\n column_getIndex,\n column_getIsFirstColumn,\n column_getIsLastColumn,\n getDefaultColumnOrderState,\n table_getOrderColumnsFn,\n table_resetColumnOrder,\n table_setColumnOrder,\n} from './columnOrderingFeature.utils'\nimport type { TableFeature } from '../../types/TableFeatures'\n\n/**\n * Feature that adds column ordering state and APIs for ordering leaf columns.\n */\nexport const columnOrderingFeature: TableFeature = {\n getInitialState: (initialState) => {\n return {\n columnOrder: getDefaultColumnOrderState(),\n ...initialState,\n }\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onColumnOrderChange: makeStateUpdater('columnOrder', table),\n }\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnOrderingFeature', prototype, table, {\n column_getIndex: {\n fn: (column, position) => column_getIndex(column, position),\n memoDeps: (column, position) => [\n position,\n column.table.atoms.columnOrder?.get(),\n column.table.atoms.columnPinning?.get(),\n column.table.atoms.grouping?.get(),\n column.table.atoms.columnVisibility?.get(),\n column.table.options.groupedColumnMode,\n ],\n },\n column_getIsFirstColumn: {\n fn: (column, position) => column_getIsFirstColumn(column, position),\n },\n column_getIsLastColumn: {\n fn: (column, position) => column_getIsLastColumn(column, position),\n },\n })\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnOrderingFeature', table, {\n table_setColumnOrder: {\n fn: (updater) => table_setColumnOrder(table, updater),\n },\n table_resetColumnOrder: {\n fn: (defaultState) => table_resetColumnOrder(table, defaultState),\n },\n table_getOrderColumnsFn: {\n fn: () => table_getOrderColumnsFn(table),\n memoDeps: () => [\n table.atoms.columnOrder?.get(),\n table.atoms.grouping?.get(),\n table.options.groupedColumnMode,\n ],\n },\n })\n },\n}\n"],"mappings":";;;;;;;AAmBA,MAAa,wBAAsC;CACjD,kBAAkB,iBAAiB;EACjC,OAAO;GACL,aAAaA,+DAA2B;GACxC,GAAG;EACL;CACF;CAEA,yBAAyB,UAAU;EACjC,OAAO,EACL,qBAAqBC,+BAAiB,eAAe,KAAK,EAC5D;CACF;CAEA,wBAAwB,WAAW,UAAU;EAC3C,kCAAoB,yBAAyB,WAAW,OAAO;GAC7D,iBAAiB;IACf,KAAK,QAAQ,aAAaC,oDAAgB,QAAQ,QAAQ;IAC1D,WAAW,QAAQ,aAAa;;;MAC9B;+BACA,OAAO,MAAM,MAAM,2FAAa,IAAI;gCACpC,OAAO,MAAM,MAAM,+FAAe,IAAI;+BACtC,OAAO,MAAM,MAAM,wFAAU,IAAI;gCACjC,OAAO,MAAM,MAAM,kGAAkB,IAAI;MACzC,OAAO,MAAM,QAAQ;KACvB;;GACF;GACA,yBAAyB,EACvB,KAAK,QAAQ,aAAaC,4DAAwB,QAAQ,QAAQ,EACpE;GACA,wBAAwB,EACtB,KAAK,QAAQ,aAAaC,2DAAuB,QAAQ,QAAQ,EACnE;EACF,CAAC;CACH;CAEA,qBAAqB,UAAU;EAC7B,8BAAgB,yBAAyB,OAAO;GAC9C,sBAAsB,EACpB,KAAK,YAAYC,yDAAqB,OAAO,OAAO,EACtD;GACA,wBAAwB,EACtB,KAAK,iBAAiBC,2DAAuB,OAAO,YAAY,EAClE;GACA,yBAAyB;IACvB,UAAUC,4DAAwB,KAAK;IACvC,gBAAgB;;;+BACd,MAAM,MAAM,2FAAa,IAAI;+BAC7B,MAAM,MAAM,wFAAU,IAAI;MAC1B,MAAM,QAAQ;KAChB;;GACF;EACF,CAAC;CACH;AACF"}
|
|
@@ -26,7 +26,8 @@ const columnOrderingFeature = {
|
|
|
26
26
|
(_column$table$atoms$c = column.table.atoms.columnOrder) === null || _column$table$atoms$c === void 0 ? void 0 : _column$table$atoms$c.get(),
|
|
27
27
|
(_column$table$atoms$c2 = column.table.atoms.columnPinning) === null || _column$table$atoms$c2 === void 0 ? void 0 : _column$table$atoms$c2.get(),
|
|
28
28
|
(_column$table$atoms$g = column.table.atoms.grouping) === null || _column$table$atoms$g === void 0 ? void 0 : _column$table$atoms$g.get(),
|
|
29
|
-
(_column$table$atoms$c3 = column.table.atoms.columnVisibility) === null || _column$table$atoms$c3 === void 0 ? void 0 : _column$table$atoms$c3.get()
|
|
29
|
+
(_column$table$atoms$c3 = column.table.atoms.columnVisibility) === null || _column$table$atoms$c3 === void 0 ? void 0 : _column$table$atoms$c3.get(),
|
|
30
|
+
column.table.options.groupedColumnMode
|
|
30
31
|
];
|
|
31
32
|
}
|
|
32
33
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"columnOrderingFeature.js","names":[],"sources":["../../../src/features/column-ordering/columnOrderingFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n makeStateUpdater,\n} from '../../utils'\nimport {\n column_getIndex,\n column_getIsFirstColumn,\n column_getIsLastColumn,\n getDefaultColumnOrderState,\n table_getOrderColumnsFn,\n table_resetColumnOrder,\n table_setColumnOrder,\n} from './columnOrderingFeature.utils'\nimport type { TableFeature } from '../../types/TableFeatures'\n\n/**\n * Feature that adds column ordering state and APIs for ordering leaf columns.\n */\nexport const columnOrderingFeature: TableFeature = {\n getInitialState: (initialState) => {\n return {\n columnOrder: getDefaultColumnOrderState(),\n ...initialState,\n }\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onColumnOrderChange: makeStateUpdater('columnOrder', table),\n }\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnOrderingFeature', prototype, table, {\n column_getIndex: {\n fn: (column, position) => column_getIndex(column, position),\n memoDeps: (column, position) => [\n position,\n column.table.atoms.columnOrder?.get(),\n column.table.atoms.columnPinning?.get(),\n column.table.atoms.grouping?.get(),\n column.table.atoms.columnVisibility?.get(),\n ],\n },\n column_getIsFirstColumn: {\n fn: (column, position) => column_getIsFirstColumn(column, position),\n },\n column_getIsLastColumn: {\n fn: (column, position) => column_getIsLastColumn(column, position),\n },\n })\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnOrderingFeature', table, {\n table_setColumnOrder: {\n fn: (updater) => table_setColumnOrder(table, updater),\n },\n table_resetColumnOrder: {\n fn: (defaultState) => table_resetColumnOrder(table, defaultState),\n },\n table_getOrderColumnsFn: {\n fn: () => table_getOrderColumnsFn(table),\n memoDeps: () => [\n table.atoms.columnOrder?.get(),\n table.atoms.grouping?.get(),\n table.options.groupedColumnMode,\n ],\n },\n })\n },\n}\n"],"mappings":";;;;;;;AAmBA,MAAa,wBAAsC;CACjD,kBAAkB,iBAAiB;EACjC,OAAO;GACL,aAAa,2BAA2B;GACxC,GAAG;EACL;CACF;CAEA,yBAAyB,UAAU;EACjC,OAAO,EACL,qBAAqB,iBAAiB,eAAe,KAAK,EAC5D;CACF;CAEA,wBAAwB,WAAW,UAAU;EAC3C,oBAAoB,yBAAyB,WAAW,OAAO;GAC7D,iBAAiB;IACf,KAAK,QAAQ,aAAa,gBAAgB,QAAQ,QAAQ;IAC1D,WAAW,QAAQ,aAAa;;;MAC9B;+BACA,OAAO,MAAM,MAAM,2FAAa,IAAI;gCACpC,OAAO,MAAM,MAAM,+FAAe,IAAI;+BACtC,OAAO,MAAM,MAAM,wFAAU,IAAI;gCACjC,OAAO,MAAM,MAAM,kGAAkB,IAAI;
|
|
1
|
+
{"version":3,"file":"columnOrderingFeature.js","names":[],"sources":["../../../src/features/column-ordering/columnOrderingFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n makeStateUpdater,\n} from '../../utils'\nimport {\n column_getIndex,\n column_getIsFirstColumn,\n column_getIsLastColumn,\n getDefaultColumnOrderState,\n table_getOrderColumnsFn,\n table_resetColumnOrder,\n table_setColumnOrder,\n} from './columnOrderingFeature.utils'\nimport type { TableFeature } from '../../types/TableFeatures'\n\n/**\n * Feature that adds column ordering state and APIs for ordering leaf columns.\n */\nexport const columnOrderingFeature: TableFeature = {\n getInitialState: (initialState) => {\n return {\n columnOrder: getDefaultColumnOrderState(),\n ...initialState,\n }\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onColumnOrderChange: makeStateUpdater('columnOrder', table),\n }\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnOrderingFeature', prototype, table, {\n column_getIndex: {\n fn: (column, position) => column_getIndex(column, position),\n memoDeps: (column, position) => [\n position,\n column.table.atoms.columnOrder?.get(),\n column.table.atoms.columnPinning?.get(),\n column.table.atoms.grouping?.get(),\n column.table.atoms.columnVisibility?.get(),\n column.table.options.groupedColumnMode,\n ],\n },\n column_getIsFirstColumn: {\n fn: (column, position) => column_getIsFirstColumn(column, position),\n },\n column_getIsLastColumn: {\n fn: (column, position) => column_getIsLastColumn(column, position),\n },\n })\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnOrderingFeature', table, {\n table_setColumnOrder: {\n fn: (updater) => table_setColumnOrder(table, updater),\n },\n table_resetColumnOrder: {\n fn: (defaultState) => table_resetColumnOrder(table, defaultState),\n },\n table_getOrderColumnsFn: {\n fn: () => table_getOrderColumnsFn(table),\n memoDeps: () => [\n table.atoms.columnOrder?.get(),\n table.atoms.grouping?.get(),\n table.options.groupedColumnMode,\n ],\n },\n })\n },\n}\n"],"mappings":";;;;;;;AAmBA,MAAa,wBAAsC;CACjD,kBAAkB,iBAAiB;EACjC,OAAO;GACL,aAAa,2BAA2B;GACxC,GAAG;EACL;CACF;CAEA,yBAAyB,UAAU;EACjC,OAAO,EACL,qBAAqB,iBAAiB,eAAe,KAAK,EAC5D;CACF;CAEA,wBAAwB,WAAW,UAAU;EAC3C,oBAAoB,yBAAyB,WAAW,OAAO;GAC7D,iBAAiB;IACf,KAAK,QAAQ,aAAa,gBAAgB,QAAQ,QAAQ;IAC1D,WAAW,QAAQ,aAAa;;;MAC9B;+BACA,OAAO,MAAM,MAAM,2FAAa,IAAI;gCACpC,OAAO,MAAM,MAAM,+FAAe,IAAI;+BACtC,OAAO,MAAM,MAAM,wFAAU,IAAI;gCACjC,OAAO,MAAM,MAAM,kGAAkB,IAAI;MACzC,OAAO,MAAM,QAAQ;KACvB;;GACF;GACA,yBAAyB,EACvB,KAAK,QAAQ,aAAa,wBAAwB,QAAQ,QAAQ,EACpE;GACA,wBAAwB,EACtB,KAAK,QAAQ,aAAa,uBAAuB,QAAQ,QAAQ,EACnE;EACF,CAAC;CACH;CAEA,qBAAqB,UAAU;EAC7B,gBAAgB,yBAAyB,OAAO;GAC9C,sBAAsB,EACpB,KAAK,YAAY,qBAAqB,OAAO,OAAO,EACtD;GACA,wBAAwB,EACtB,KAAK,iBAAiB,uBAAuB,OAAO,YAAY,EAClE;GACA,yBAAyB;IACvB,UAAU,wBAAwB,KAAK;IACvC,gBAAgB;;;+BACd,MAAM,MAAM,2FAAa,IAAI;+BAC7B,MAAM,MAAM,wFAAU,IAAI;MAC1B,MAAM,QAAQ;KAChB;;GACF;EACF,CAAC;CACH;AACF"}
|
|
@@ -144,33 +144,39 @@ const columnPinningFeature = {
|
|
|
144
144
|
table_getLeftLeafColumns: {
|
|
145
145
|
fn: () => require_columnPinningFeature_utils.table_getLeftLeafColumns(table),
|
|
146
146
|
memoDeps: () => {
|
|
147
|
-
var _table$atoms$columnPi4, _table$atoms$columnOr4;
|
|
147
|
+
var _table$atoms$columnPi4, _table$atoms$columnOr4, _table$atoms$grouping;
|
|
148
148
|
return [
|
|
149
149
|
table.options.columns,
|
|
150
150
|
(_table$atoms$columnPi4 = table.atoms.columnPinning) === null || _table$atoms$columnPi4 === void 0 ? void 0 : _table$atoms$columnPi4.get(),
|
|
151
|
-
(_table$atoms$columnOr4 = table.atoms.columnOrder) === null || _table$atoms$columnOr4 === void 0 ? void 0 : _table$atoms$columnOr4.get()
|
|
151
|
+
(_table$atoms$columnOr4 = table.atoms.columnOrder) === null || _table$atoms$columnOr4 === void 0 ? void 0 : _table$atoms$columnOr4.get(),
|
|
152
|
+
(_table$atoms$grouping = table.atoms.grouping) === null || _table$atoms$grouping === void 0 ? void 0 : _table$atoms$grouping.get(),
|
|
153
|
+
table.options.groupedColumnMode
|
|
152
154
|
];
|
|
153
155
|
}
|
|
154
156
|
},
|
|
155
157
|
table_getRightLeafColumns: {
|
|
156
158
|
fn: () => require_columnPinningFeature_utils.table_getRightLeafColumns(table),
|
|
157
159
|
memoDeps: () => {
|
|
158
|
-
var _table$atoms$columnPi5, _table$atoms$columnOr5;
|
|
160
|
+
var _table$atoms$columnPi5, _table$atoms$columnOr5, _table$atoms$grouping2;
|
|
159
161
|
return [
|
|
160
162
|
table.options.columns,
|
|
161
163
|
(_table$atoms$columnPi5 = table.atoms.columnPinning) === null || _table$atoms$columnPi5 === void 0 ? void 0 : _table$atoms$columnPi5.get(),
|
|
162
|
-
(_table$atoms$columnOr5 = table.atoms.columnOrder) === null || _table$atoms$columnOr5 === void 0 ? void 0 : _table$atoms$columnOr5.get()
|
|
164
|
+
(_table$atoms$columnOr5 = table.atoms.columnOrder) === null || _table$atoms$columnOr5 === void 0 ? void 0 : _table$atoms$columnOr5.get(),
|
|
165
|
+
(_table$atoms$grouping2 = table.atoms.grouping) === null || _table$atoms$grouping2 === void 0 ? void 0 : _table$atoms$grouping2.get(),
|
|
166
|
+
table.options.groupedColumnMode
|
|
163
167
|
];
|
|
164
168
|
}
|
|
165
169
|
},
|
|
166
170
|
table_getCenterLeafColumns: {
|
|
167
171
|
fn: () => require_columnPinningFeature_utils.table_getCenterLeafColumns(table),
|
|
168
172
|
memoDeps: () => {
|
|
169
|
-
var _table$atoms$columnPi6, _table$atoms$columnOr6;
|
|
173
|
+
var _table$atoms$columnPi6, _table$atoms$columnOr6, _table$atoms$grouping3;
|
|
170
174
|
return [
|
|
171
175
|
table.options.columns,
|
|
172
176
|
(_table$atoms$columnPi6 = table.atoms.columnPinning) === null || _table$atoms$columnPi6 === void 0 ? void 0 : _table$atoms$columnPi6.get(),
|
|
173
|
-
(_table$atoms$columnOr6 = table.atoms.columnOrder) === null || _table$atoms$columnOr6 === void 0 ? void 0 : _table$atoms$columnOr6.get()
|
|
177
|
+
(_table$atoms$columnOr6 = table.atoms.columnOrder) === null || _table$atoms$columnOr6 === void 0 ? void 0 : _table$atoms$columnOr6.get(),
|
|
178
|
+
(_table$atoms$grouping3 = table.atoms.grouping) === null || _table$atoms$grouping3 === void 0 ? void 0 : _table$atoms$grouping3.get(),
|
|
179
|
+
table.options.groupedColumnMode
|
|
174
180
|
];
|
|
175
181
|
}
|
|
176
182
|
},
|
|
@@ -178,36 +184,42 @@ const columnPinningFeature = {
|
|
|
178
184
|
table_getLeftVisibleLeafColumns: {
|
|
179
185
|
fn: () => require_columnPinningFeature_utils.table_getLeftVisibleLeafColumns(table),
|
|
180
186
|
memoDeps: () => {
|
|
181
|
-
var _table$atoms$columnPi7, _table$atoms$columnVi, _table$atoms$columnOr7;
|
|
187
|
+
var _table$atoms$columnPi7, _table$atoms$columnVi, _table$atoms$columnOr7, _table$atoms$grouping4;
|
|
182
188
|
return [
|
|
183
189
|
table.options.columns,
|
|
184
190
|
(_table$atoms$columnPi7 = table.atoms.columnPinning) === null || _table$atoms$columnPi7 === void 0 ? void 0 : _table$atoms$columnPi7.get(),
|
|
185
191
|
(_table$atoms$columnVi = table.atoms.columnVisibility) === null || _table$atoms$columnVi === void 0 ? void 0 : _table$atoms$columnVi.get(),
|
|
186
|
-
(_table$atoms$columnOr7 = table.atoms.columnOrder) === null || _table$atoms$columnOr7 === void 0 ? void 0 : _table$atoms$columnOr7.get()
|
|
192
|
+
(_table$atoms$columnOr7 = table.atoms.columnOrder) === null || _table$atoms$columnOr7 === void 0 ? void 0 : _table$atoms$columnOr7.get(),
|
|
193
|
+
(_table$atoms$grouping4 = table.atoms.grouping) === null || _table$atoms$grouping4 === void 0 ? void 0 : _table$atoms$grouping4.get(),
|
|
194
|
+
table.options.groupedColumnMode
|
|
187
195
|
];
|
|
188
196
|
}
|
|
189
197
|
},
|
|
190
198
|
table_getCenterVisibleLeafColumns: {
|
|
191
199
|
fn: () => require_columnPinningFeature_utils.table_getCenterVisibleLeafColumns(table),
|
|
192
200
|
memoDeps: () => {
|
|
193
|
-
var _table$atoms$columnPi8, _table$atoms$columnVi2, _table$atoms$columnOr8;
|
|
201
|
+
var _table$atoms$columnPi8, _table$atoms$columnVi2, _table$atoms$columnOr8, _table$atoms$grouping5;
|
|
194
202
|
return [
|
|
195
203
|
table.options.columns,
|
|
196
204
|
(_table$atoms$columnPi8 = table.atoms.columnPinning) === null || _table$atoms$columnPi8 === void 0 ? void 0 : _table$atoms$columnPi8.get(),
|
|
197
205
|
(_table$atoms$columnVi2 = table.atoms.columnVisibility) === null || _table$atoms$columnVi2 === void 0 ? void 0 : _table$atoms$columnVi2.get(),
|
|
198
|
-
(_table$atoms$columnOr8 = table.atoms.columnOrder) === null || _table$atoms$columnOr8 === void 0 ? void 0 : _table$atoms$columnOr8.get()
|
|
206
|
+
(_table$atoms$columnOr8 = table.atoms.columnOrder) === null || _table$atoms$columnOr8 === void 0 ? void 0 : _table$atoms$columnOr8.get(),
|
|
207
|
+
(_table$atoms$grouping5 = table.atoms.grouping) === null || _table$atoms$grouping5 === void 0 ? void 0 : _table$atoms$grouping5.get(),
|
|
208
|
+
table.options.groupedColumnMode
|
|
199
209
|
];
|
|
200
210
|
}
|
|
201
211
|
},
|
|
202
212
|
table_getRightVisibleLeafColumns: {
|
|
203
213
|
fn: () => require_columnPinningFeature_utils.table_getRightVisibleLeafColumns(table),
|
|
204
214
|
memoDeps: () => {
|
|
205
|
-
var _table$atoms$columnPi9, _table$atoms$columnVi3, _table$atoms$columnOr9;
|
|
215
|
+
var _table$atoms$columnPi9, _table$atoms$columnVi3, _table$atoms$columnOr9, _table$atoms$grouping6;
|
|
206
216
|
return [
|
|
207
217
|
table.options.columns,
|
|
208
218
|
(_table$atoms$columnPi9 = table.atoms.columnPinning) === null || _table$atoms$columnPi9 === void 0 ? void 0 : _table$atoms$columnPi9.get(),
|
|
209
219
|
(_table$atoms$columnVi3 = table.atoms.columnVisibility) === null || _table$atoms$columnVi3 === void 0 ? void 0 : _table$atoms$columnVi3.get(),
|
|
210
|
-
(_table$atoms$columnOr9 = table.atoms.columnOrder) === null || _table$atoms$columnOr9 === void 0 ? void 0 : _table$atoms$columnOr9.get()
|
|
220
|
+
(_table$atoms$columnOr9 = table.atoms.columnOrder) === null || _table$atoms$columnOr9 === void 0 ? void 0 : _table$atoms$columnOr9.get(),
|
|
221
|
+
(_table$atoms$grouping6 = table.atoms.grouping) === null || _table$atoms$grouping6 === void 0 ? void 0 : _table$atoms$grouping6.get(),
|
|
222
|
+
table.options.groupedColumnMode
|
|
211
223
|
];
|
|
212
224
|
}
|
|
213
225
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"columnPinningFeature.cjs","names":["getDefaultColumnPinningState","makeStateUpdater","column_pin","column_getCanPin","column_getPinnedIndex","column_getIsPinned","row_getCenterVisibleCells","row_getLeftVisibleCells","row_getRightVisibleCells","table_setColumnPinning","table_resetColumnPinning","table_getIsSomeColumnsPinned","table_getLeftHeaderGroups","callMemoOrStaticFn","table_getVisibleLeafColumns","table_getCenterHeaderGroups","table_getRightHeaderGroups","table_getLeftFooterGroups","table_getCenterFooterGroups","table_getRightFooterGroups","table_getLeftFlatHeaders","table_getRightFlatHeaders","table_getCenterFlatHeaders","table_getLeftLeafHeaders","table_getRightLeafHeaders","table_getCenterLeafHeaders","table_getLeftLeafColumns","table_getRightLeafColumns","table_getCenterLeafColumns","table_getPinnedLeafColumns","table_getLeftVisibleLeafColumns","table_getCenterVisibleLeafColumns","table_getRightVisibleLeafColumns","table_getPinnedVisibleLeafColumns"],"sources":["../../../src/features/column-pinning/columnPinningFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n callMemoOrStaticFn,\n makeStateUpdater,\n} from '../../utils'\nimport { table_getVisibleLeafColumns } from '../column-visibility/columnVisibilityFeature.utils'\nimport {\n column_getCanPin,\n column_getIsPinned,\n column_getPinnedIndex,\n column_pin,\n getDefaultColumnPinningState,\n row_getCenterVisibleCells,\n row_getLeftVisibleCells,\n row_getRightVisibleCells,\n table_getCenterFlatHeaders,\n table_getCenterFooterGroups,\n table_getCenterHeaderGroups,\n table_getCenterLeafColumns,\n table_getCenterLeafHeaders,\n table_getCenterVisibleLeafColumns,\n table_getIsSomeColumnsPinned,\n table_getLeftFlatHeaders,\n table_getLeftFooterGroups,\n table_getLeftHeaderGroups,\n table_getLeftLeafColumns,\n table_getLeftLeafHeaders,\n table_getLeftVisibleLeafColumns,\n table_getPinnedLeafColumns,\n table_getPinnedVisibleLeafColumns,\n table_getRightFlatHeaders,\n table_getRightFooterGroups,\n table_getRightHeaderGroups,\n table_getRightLeafColumns,\n table_getRightLeafHeaders,\n table_getRightVisibleLeafColumns,\n table_resetColumnPinning,\n table_setColumnPinning,\n} from './columnPinningFeature.utils'\nimport type { TableFeature } from '../../types/TableFeatures'\n\n/**\n * Feature that adds column pinning state and APIs for left, center, and right regions.\n */\nexport const columnPinningFeature: TableFeature = {\n getInitialState: (initialState) => {\n return {\n columnPinning: {\n ...getDefaultColumnPinningState(),\n ...initialState.columnPinning,\n },\n ...initialState,\n }\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onColumnPinningChange: makeStateUpdater('columnPinning', table),\n }\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnPinningFeature', prototype, table, {\n column_pin: {\n fn: (column, position) => column_pin(column, position),\n },\n column_getCanPin: {\n fn: (column) => column_getCanPin(column),\n },\n column_getPinnedIndex: {\n fn: (column) => column_getPinnedIndex(column),\n },\n column_getIsPinned: {\n fn: (column) => column_getIsPinned(column),\n },\n })\n },\n\n assignRowPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnPinningFeature', prototype, table, {\n row_getCenterVisibleCells: {\n fn: (row) => row_getCenterVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.atoms.columnPinning?.get(),\n row.table.atoms.columnVisibility?.get(),\n ],\n },\n row_getLeftVisibleCells: {\n fn: (row) => row_getLeftVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.atoms.columnPinning?.get()?.left,\n row.table.atoms.columnVisibility?.get(),\n ],\n },\n row_getRightVisibleCells: {\n fn: (row) => row_getRightVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.atoms.columnPinning?.get()?.right,\n row.table.atoms.columnVisibility?.get(),\n ],\n },\n })\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnPinningFeature', table, {\n table_setColumnPinning: {\n fn: (updater) => table_setColumnPinning(table, updater),\n },\n table_resetColumnPinning: {\n fn: (defaultState) => table_resetColumnPinning(table, defaultState),\n },\n table_getIsSomeColumnsPinned: {\n fn: (position) => table_getIsSomeColumnsPinned(table, position),\n },\n // header groups\n table_getLeftHeaderGroups: {\n fn: () => table_getLeftHeaderGroups(table),\n memoDeps: () => [\n table.getAllColumns(),\n callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ),\n table.atoms.columnPinning?.get()?.left,\n table.atoms.columnOrder?.get(),\n ],\n },\n table_getCenterHeaderGroups: {\n fn: () => table_getCenterHeaderGroups(table),\n memoDeps: () => [\n table.getAllColumns(),\n callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ),\n table.atoms.columnPinning?.get(),\n table.atoms.columnOrder?.get(),\n ],\n },\n table_getRightHeaderGroups: {\n fn: () => table_getRightHeaderGroups(table),\n memoDeps: () => [\n table.getAllColumns(),\n callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ),\n table.atoms.columnPinning?.get()?.right,\n table.atoms.columnOrder?.get(),\n ],\n },\n // footer groups\n table_getLeftFooterGroups: {\n fn: () => table_getLeftFooterGroups(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n ),\n ],\n },\n table_getCenterFooterGroups: {\n fn: () => table_getCenterFooterGroups(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n ),\n ],\n },\n table_getRightFooterGroups: {\n fn: () => table_getRightFooterGroups(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n ),\n ],\n },\n // flat headers\n table_getLeftFlatHeaders: {\n fn: () => table_getLeftFlatHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n ),\n ],\n },\n table_getRightFlatHeaders: {\n fn: () => table_getRightFlatHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n ),\n ],\n },\n table_getCenterFlatHeaders: {\n fn: () => table_getCenterFlatHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n ),\n ],\n },\n // leaf headers\n table_getLeftLeafHeaders: {\n fn: () => table_getLeftLeafHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n ),\n ],\n },\n table_getRightLeafHeaders: {\n fn: () => table_getRightLeafHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n ),\n ],\n },\n table_getCenterLeafHeaders: {\n fn: () => table_getCenterLeafHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n ),\n ],\n },\n // leaf columns\n table_getLeftLeafColumns: {\n fn: () => table_getLeftLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.atoms.columnPinning?.get(),\n table.atoms.columnOrder?.get(),\n ],\n },\n table_getRightLeafColumns: {\n fn: () => table_getRightLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.atoms.columnPinning?.get(),\n table.atoms.columnOrder?.get(),\n ],\n },\n table_getCenterLeafColumns: {\n fn: () => table_getCenterLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.atoms.columnPinning?.get(),\n table.atoms.columnOrder?.get(),\n ],\n },\n table_getPinnedLeafColumns: {\n fn: (position) => table_getPinnedLeafColumns(table, position),\n // must not memo here as it's just a shortcut function\n },\n // visible leaf columns\n table_getLeftVisibleLeafColumns: {\n fn: () => table_getLeftVisibleLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.atoms.columnPinning?.get(),\n table.atoms.columnVisibility?.get(),\n table.atoms.columnOrder?.get(),\n ],\n },\n table_getCenterVisibleLeafColumns: {\n fn: () => table_getCenterVisibleLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.atoms.columnPinning?.get(),\n table.atoms.columnVisibility?.get(),\n table.atoms.columnOrder?.get(),\n ],\n },\n table_getRightVisibleLeafColumns: {\n fn: () => table_getRightVisibleLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.atoms.columnPinning?.get(),\n table.atoms.columnVisibility?.get(),\n table.atoms.columnOrder?.get(),\n ],\n },\n table_getPinnedVisibleLeafColumns: {\n fn: (position) => table_getPinnedVisibleLeafColumns(table, position),\n // must not memo here as it's just a shortcut function\n },\n })\n },\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"columnPinningFeature.cjs","names":["getDefaultColumnPinningState","makeStateUpdater","column_pin","column_getCanPin","column_getPinnedIndex","column_getIsPinned","row_getCenterVisibleCells","row_getLeftVisibleCells","row_getRightVisibleCells","table_setColumnPinning","table_resetColumnPinning","table_getIsSomeColumnsPinned","table_getLeftHeaderGroups","callMemoOrStaticFn","table_getVisibleLeafColumns","table_getCenterHeaderGroups","table_getRightHeaderGroups","table_getLeftFooterGroups","table_getCenterFooterGroups","table_getRightFooterGroups","table_getLeftFlatHeaders","table_getRightFlatHeaders","table_getCenterFlatHeaders","table_getLeftLeafHeaders","table_getRightLeafHeaders","table_getCenterLeafHeaders","table_getLeftLeafColumns","table_getRightLeafColumns","table_getCenterLeafColumns","table_getPinnedLeafColumns","table_getLeftVisibleLeafColumns","table_getCenterVisibleLeafColumns","table_getRightVisibleLeafColumns","table_getPinnedVisibleLeafColumns"],"sources":["../../../src/features/column-pinning/columnPinningFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n callMemoOrStaticFn,\n makeStateUpdater,\n} from '../../utils'\nimport { table_getVisibleLeafColumns } from '../column-visibility/columnVisibilityFeature.utils'\nimport {\n column_getCanPin,\n column_getIsPinned,\n column_getPinnedIndex,\n column_pin,\n getDefaultColumnPinningState,\n row_getCenterVisibleCells,\n row_getLeftVisibleCells,\n row_getRightVisibleCells,\n table_getCenterFlatHeaders,\n table_getCenterFooterGroups,\n table_getCenterHeaderGroups,\n table_getCenterLeafColumns,\n table_getCenterLeafHeaders,\n table_getCenterVisibleLeafColumns,\n table_getIsSomeColumnsPinned,\n table_getLeftFlatHeaders,\n table_getLeftFooterGroups,\n table_getLeftHeaderGroups,\n table_getLeftLeafColumns,\n table_getLeftLeafHeaders,\n table_getLeftVisibleLeafColumns,\n table_getPinnedLeafColumns,\n table_getPinnedVisibleLeafColumns,\n table_getRightFlatHeaders,\n table_getRightFooterGroups,\n table_getRightHeaderGroups,\n table_getRightLeafColumns,\n table_getRightLeafHeaders,\n table_getRightVisibleLeafColumns,\n table_resetColumnPinning,\n table_setColumnPinning,\n} from './columnPinningFeature.utils'\nimport type { TableFeature } from '../../types/TableFeatures'\n\n/**\n * Feature that adds column pinning state and APIs for left, center, and right regions.\n */\nexport const columnPinningFeature: TableFeature = {\n getInitialState: (initialState) => {\n return {\n columnPinning: {\n ...getDefaultColumnPinningState(),\n ...initialState.columnPinning,\n },\n ...initialState,\n }\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onColumnPinningChange: makeStateUpdater('columnPinning', table),\n }\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnPinningFeature', prototype, table, {\n column_pin: {\n fn: (column, position) => column_pin(column, position),\n },\n column_getCanPin: {\n fn: (column) => column_getCanPin(column),\n },\n column_getPinnedIndex: {\n fn: (column) => column_getPinnedIndex(column),\n },\n column_getIsPinned: {\n fn: (column) => column_getIsPinned(column),\n },\n })\n },\n\n assignRowPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnPinningFeature', prototype, table, {\n row_getCenterVisibleCells: {\n fn: (row) => row_getCenterVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.atoms.columnPinning?.get(),\n row.table.atoms.columnVisibility?.get(),\n ],\n },\n row_getLeftVisibleCells: {\n fn: (row) => row_getLeftVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.atoms.columnPinning?.get()?.left,\n row.table.atoms.columnVisibility?.get(),\n ],\n },\n row_getRightVisibleCells: {\n fn: (row) => row_getRightVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.atoms.columnPinning?.get()?.right,\n row.table.atoms.columnVisibility?.get(),\n ],\n },\n })\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnPinningFeature', table, {\n table_setColumnPinning: {\n fn: (updater) => table_setColumnPinning(table, updater),\n },\n table_resetColumnPinning: {\n fn: (defaultState) => table_resetColumnPinning(table, defaultState),\n },\n table_getIsSomeColumnsPinned: {\n fn: (position) => table_getIsSomeColumnsPinned(table, position),\n },\n // header groups\n table_getLeftHeaderGroups: {\n fn: () => table_getLeftHeaderGroups(table),\n memoDeps: () => [\n table.getAllColumns(),\n callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ),\n table.atoms.columnPinning?.get()?.left,\n table.atoms.columnOrder?.get(),\n ],\n },\n table_getCenterHeaderGroups: {\n fn: () => table_getCenterHeaderGroups(table),\n memoDeps: () => [\n table.getAllColumns(),\n callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ),\n table.atoms.columnPinning?.get(),\n table.atoms.columnOrder?.get(),\n ],\n },\n table_getRightHeaderGroups: {\n fn: () => table_getRightHeaderGroups(table),\n memoDeps: () => [\n table.getAllColumns(),\n callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ),\n table.atoms.columnPinning?.get()?.right,\n table.atoms.columnOrder?.get(),\n ],\n },\n // footer groups\n table_getLeftFooterGroups: {\n fn: () => table_getLeftFooterGroups(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n ),\n ],\n },\n table_getCenterFooterGroups: {\n fn: () => table_getCenterFooterGroups(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n ),\n ],\n },\n table_getRightFooterGroups: {\n fn: () => table_getRightFooterGroups(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n ),\n ],\n },\n // flat headers\n table_getLeftFlatHeaders: {\n fn: () => table_getLeftFlatHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n ),\n ],\n },\n table_getRightFlatHeaders: {\n fn: () => table_getRightFlatHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n ),\n ],\n },\n table_getCenterFlatHeaders: {\n fn: () => table_getCenterFlatHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n ),\n ],\n },\n // leaf headers\n table_getLeftLeafHeaders: {\n fn: () => table_getLeftLeafHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n ),\n ],\n },\n table_getRightLeafHeaders: {\n fn: () => table_getRightLeafHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n ),\n ],\n },\n table_getCenterLeafHeaders: {\n fn: () => table_getCenterLeafHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n ),\n ],\n },\n // leaf columns\n table_getLeftLeafColumns: {\n fn: () => table_getLeftLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.atoms.columnPinning?.get(),\n table.atoms.columnOrder?.get(),\n table.atoms.grouping?.get(),\n table.options.groupedColumnMode,\n ],\n },\n table_getRightLeafColumns: {\n fn: () => table_getRightLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.atoms.columnPinning?.get(),\n table.atoms.columnOrder?.get(),\n table.atoms.grouping?.get(),\n table.options.groupedColumnMode,\n ],\n },\n table_getCenterLeafColumns: {\n fn: () => table_getCenterLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.atoms.columnPinning?.get(),\n table.atoms.columnOrder?.get(),\n table.atoms.grouping?.get(),\n table.options.groupedColumnMode,\n ],\n },\n table_getPinnedLeafColumns: {\n fn: (position) => table_getPinnedLeafColumns(table, position),\n // must not memo here as it's just a shortcut function\n },\n // visible leaf columns\n table_getLeftVisibleLeafColumns: {\n fn: () => table_getLeftVisibleLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.atoms.columnPinning?.get(),\n table.atoms.columnVisibility?.get(),\n table.atoms.columnOrder?.get(),\n table.atoms.grouping?.get(),\n table.options.groupedColumnMode,\n ],\n },\n table_getCenterVisibleLeafColumns: {\n fn: () => table_getCenterVisibleLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.atoms.columnPinning?.get(),\n table.atoms.columnVisibility?.get(),\n table.atoms.columnOrder?.get(),\n table.atoms.grouping?.get(),\n table.options.groupedColumnMode,\n ],\n },\n table_getRightVisibleLeafColumns: {\n fn: () => table_getRightVisibleLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.atoms.columnPinning?.get(),\n table.atoms.columnVisibility?.get(),\n table.atoms.columnOrder?.get(),\n table.atoms.grouping?.get(),\n table.options.groupedColumnMode,\n ],\n },\n table_getPinnedVisibleLeafColumns: {\n fn: (position) => table_getPinnedVisibleLeafColumns(table, position),\n // must not memo here as it's just a shortcut function\n },\n })\n },\n}\n"],"mappings":"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"}
|
|
@@ -144,33 +144,39 @@ const columnPinningFeature = {
|
|
|
144
144
|
table_getLeftLeafColumns: {
|
|
145
145
|
fn: () => table_getLeftLeafColumns(table),
|
|
146
146
|
memoDeps: () => {
|
|
147
|
-
var _table$atoms$columnPi4, _table$atoms$columnOr4;
|
|
147
|
+
var _table$atoms$columnPi4, _table$atoms$columnOr4, _table$atoms$grouping;
|
|
148
148
|
return [
|
|
149
149
|
table.options.columns,
|
|
150
150
|
(_table$atoms$columnPi4 = table.atoms.columnPinning) === null || _table$atoms$columnPi4 === void 0 ? void 0 : _table$atoms$columnPi4.get(),
|
|
151
|
-
(_table$atoms$columnOr4 = table.atoms.columnOrder) === null || _table$atoms$columnOr4 === void 0 ? void 0 : _table$atoms$columnOr4.get()
|
|
151
|
+
(_table$atoms$columnOr4 = table.atoms.columnOrder) === null || _table$atoms$columnOr4 === void 0 ? void 0 : _table$atoms$columnOr4.get(),
|
|
152
|
+
(_table$atoms$grouping = table.atoms.grouping) === null || _table$atoms$grouping === void 0 ? void 0 : _table$atoms$grouping.get(),
|
|
153
|
+
table.options.groupedColumnMode
|
|
152
154
|
];
|
|
153
155
|
}
|
|
154
156
|
},
|
|
155
157
|
table_getRightLeafColumns: {
|
|
156
158
|
fn: () => table_getRightLeafColumns(table),
|
|
157
159
|
memoDeps: () => {
|
|
158
|
-
var _table$atoms$columnPi5, _table$atoms$columnOr5;
|
|
160
|
+
var _table$atoms$columnPi5, _table$atoms$columnOr5, _table$atoms$grouping2;
|
|
159
161
|
return [
|
|
160
162
|
table.options.columns,
|
|
161
163
|
(_table$atoms$columnPi5 = table.atoms.columnPinning) === null || _table$atoms$columnPi5 === void 0 ? void 0 : _table$atoms$columnPi5.get(),
|
|
162
|
-
(_table$atoms$columnOr5 = table.atoms.columnOrder) === null || _table$atoms$columnOr5 === void 0 ? void 0 : _table$atoms$columnOr5.get()
|
|
164
|
+
(_table$atoms$columnOr5 = table.atoms.columnOrder) === null || _table$atoms$columnOr5 === void 0 ? void 0 : _table$atoms$columnOr5.get(),
|
|
165
|
+
(_table$atoms$grouping2 = table.atoms.grouping) === null || _table$atoms$grouping2 === void 0 ? void 0 : _table$atoms$grouping2.get(),
|
|
166
|
+
table.options.groupedColumnMode
|
|
163
167
|
];
|
|
164
168
|
}
|
|
165
169
|
},
|
|
166
170
|
table_getCenterLeafColumns: {
|
|
167
171
|
fn: () => table_getCenterLeafColumns(table),
|
|
168
172
|
memoDeps: () => {
|
|
169
|
-
var _table$atoms$columnPi6, _table$atoms$columnOr6;
|
|
173
|
+
var _table$atoms$columnPi6, _table$atoms$columnOr6, _table$atoms$grouping3;
|
|
170
174
|
return [
|
|
171
175
|
table.options.columns,
|
|
172
176
|
(_table$atoms$columnPi6 = table.atoms.columnPinning) === null || _table$atoms$columnPi6 === void 0 ? void 0 : _table$atoms$columnPi6.get(),
|
|
173
|
-
(_table$atoms$columnOr6 = table.atoms.columnOrder) === null || _table$atoms$columnOr6 === void 0 ? void 0 : _table$atoms$columnOr6.get()
|
|
177
|
+
(_table$atoms$columnOr6 = table.atoms.columnOrder) === null || _table$atoms$columnOr6 === void 0 ? void 0 : _table$atoms$columnOr6.get(),
|
|
178
|
+
(_table$atoms$grouping3 = table.atoms.grouping) === null || _table$atoms$grouping3 === void 0 ? void 0 : _table$atoms$grouping3.get(),
|
|
179
|
+
table.options.groupedColumnMode
|
|
174
180
|
];
|
|
175
181
|
}
|
|
176
182
|
},
|
|
@@ -178,36 +184,42 @@ const columnPinningFeature = {
|
|
|
178
184
|
table_getLeftVisibleLeafColumns: {
|
|
179
185
|
fn: () => table_getLeftVisibleLeafColumns(table),
|
|
180
186
|
memoDeps: () => {
|
|
181
|
-
var _table$atoms$columnPi7, _table$atoms$columnVi, _table$atoms$columnOr7;
|
|
187
|
+
var _table$atoms$columnPi7, _table$atoms$columnVi, _table$atoms$columnOr7, _table$atoms$grouping4;
|
|
182
188
|
return [
|
|
183
189
|
table.options.columns,
|
|
184
190
|
(_table$atoms$columnPi7 = table.atoms.columnPinning) === null || _table$atoms$columnPi7 === void 0 ? void 0 : _table$atoms$columnPi7.get(),
|
|
185
191
|
(_table$atoms$columnVi = table.atoms.columnVisibility) === null || _table$atoms$columnVi === void 0 ? void 0 : _table$atoms$columnVi.get(),
|
|
186
|
-
(_table$atoms$columnOr7 = table.atoms.columnOrder) === null || _table$atoms$columnOr7 === void 0 ? void 0 : _table$atoms$columnOr7.get()
|
|
192
|
+
(_table$atoms$columnOr7 = table.atoms.columnOrder) === null || _table$atoms$columnOr7 === void 0 ? void 0 : _table$atoms$columnOr7.get(),
|
|
193
|
+
(_table$atoms$grouping4 = table.atoms.grouping) === null || _table$atoms$grouping4 === void 0 ? void 0 : _table$atoms$grouping4.get(),
|
|
194
|
+
table.options.groupedColumnMode
|
|
187
195
|
];
|
|
188
196
|
}
|
|
189
197
|
},
|
|
190
198
|
table_getCenterVisibleLeafColumns: {
|
|
191
199
|
fn: () => table_getCenterVisibleLeafColumns(table),
|
|
192
200
|
memoDeps: () => {
|
|
193
|
-
var _table$atoms$columnPi8, _table$atoms$columnVi2, _table$atoms$columnOr8;
|
|
201
|
+
var _table$atoms$columnPi8, _table$atoms$columnVi2, _table$atoms$columnOr8, _table$atoms$grouping5;
|
|
194
202
|
return [
|
|
195
203
|
table.options.columns,
|
|
196
204
|
(_table$atoms$columnPi8 = table.atoms.columnPinning) === null || _table$atoms$columnPi8 === void 0 ? void 0 : _table$atoms$columnPi8.get(),
|
|
197
205
|
(_table$atoms$columnVi2 = table.atoms.columnVisibility) === null || _table$atoms$columnVi2 === void 0 ? void 0 : _table$atoms$columnVi2.get(),
|
|
198
|
-
(_table$atoms$columnOr8 = table.atoms.columnOrder) === null || _table$atoms$columnOr8 === void 0 ? void 0 : _table$atoms$columnOr8.get()
|
|
206
|
+
(_table$atoms$columnOr8 = table.atoms.columnOrder) === null || _table$atoms$columnOr8 === void 0 ? void 0 : _table$atoms$columnOr8.get(),
|
|
207
|
+
(_table$atoms$grouping5 = table.atoms.grouping) === null || _table$atoms$grouping5 === void 0 ? void 0 : _table$atoms$grouping5.get(),
|
|
208
|
+
table.options.groupedColumnMode
|
|
199
209
|
];
|
|
200
210
|
}
|
|
201
211
|
},
|
|
202
212
|
table_getRightVisibleLeafColumns: {
|
|
203
213
|
fn: () => table_getRightVisibleLeafColumns(table),
|
|
204
214
|
memoDeps: () => {
|
|
205
|
-
var _table$atoms$columnPi9, _table$atoms$columnVi3, _table$atoms$columnOr9;
|
|
215
|
+
var _table$atoms$columnPi9, _table$atoms$columnVi3, _table$atoms$columnOr9, _table$atoms$grouping6;
|
|
206
216
|
return [
|
|
207
217
|
table.options.columns,
|
|
208
218
|
(_table$atoms$columnPi9 = table.atoms.columnPinning) === null || _table$atoms$columnPi9 === void 0 ? void 0 : _table$atoms$columnPi9.get(),
|
|
209
219
|
(_table$atoms$columnVi3 = table.atoms.columnVisibility) === null || _table$atoms$columnVi3 === void 0 ? void 0 : _table$atoms$columnVi3.get(),
|
|
210
|
-
(_table$atoms$columnOr9 = table.atoms.columnOrder) === null || _table$atoms$columnOr9 === void 0 ? void 0 : _table$atoms$columnOr9.get()
|
|
220
|
+
(_table$atoms$columnOr9 = table.atoms.columnOrder) === null || _table$atoms$columnOr9 === void 0 ? void 0 : _table$atoms$columnOr9.get(),
|
|
221
|
+
(_table$atoms$grouping6 = table.atoms.grouping) === null || _table$atoms$grouping6 === void 0 ? void 0 : _table$atoms$grouping6.get(),
|
|
222
|
+
table.options.groupedColumnMode
|
|
211
223
|
];
|
|
212
224
|
}
|
|
213
225
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"columnPinningFeature.js","names":[],"sources":["../../../src/features/column-pinning/columnPinningFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n callMemoOrStaticFn,\n makeStateUpdater,\n} from '../../utils'\nimport { table_getVisibleLeafColumns } from '../column-visibility/columnVisibilityFeature.utils'\nimport {\n column_getCanPin,\n column_getIsPinned,\n column_getPinnedIndex,\n column_pin,\n getDefaultColumnPinningState,\n row_getCenterVisibleCells,\n row_getLeftVisibleCells,\n row_getRightVisibleCells,\n table_getCenterFlatHeaders,\n table_getCenterFooterGroups,\n table_getCenterHeaderGroups,\n table_getCenterLeafColumns,\n table_getCenterLeafHeaders,\n table_getCenterVisibleLeafColumns,\n table_getIsSomeColumnsPinned,\n table_getLeftFlatHeaders,\n table_getLeftFooterGroups,\n table_getLeftHeaderGroups,\n table_getLeftLeafColumns,\n table_getLeftLeafHeaders,\n table_getLeftVisibleLeafColumns,\n table_getPinnedLeafColumns,\n table_getPinnedVisibleLeafColumns,\n table_getRightFlatHeaders,\n table_getRightFooterGroups,\n table_getRightHeaderGroups,\n table_getRightLeafColumns,\n table_getRightLeafHeaders,\n table_getRightVisibleLeafColumns,\n table_resetColumnPinning,\n table_setColumnPinning,\n} from './columnPinningFeature.utils'\nimport type { TableFeature } from '../../types/TableFeatures'\n\n/**\n * Feature that adds column pinning state and APIs for left, center, and right regions.\n */\nexport const columnPinningFeature: TableFeature = {\n getInitialState: (initialState) => {\n return {\n columnPinning: {\n ...getDefaultColumnPinningState(),\n ...initialState.columnPinning,\n },\n ...initialState,\n }\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onColumnPinningChange: makeStateUpdater('columnPinning', table),\n }\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnPinningFeature', prototype, table, {\n column_pin: {\n fn: (column, position) => column_pin(column, position),\n },\n column_getCanPin: {\n fn: (column) => column_getCanPin(column),\n },\n column_getPinnedIndex: {\n fn: (column) => column_getPinnedIndex(column),\n },\n column_getIsPinned: {\n fn: (column) => column_getIsPinned(column),\n },\n })\n },\n\n assignRowPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnPinningFeature', prototype, table, {\n row_getCenterVisibleCells: {\n fn: (row) => row_getCenterVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.atoms.columnPinning?.get(),\n row.table.atoms.columnVisibility?.get(),\n ],\n },\n row_getLeftVisibleCells: {\n fn: (row) => row_getLeftVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.atoms.columnPinning?.get()?.left,\n row.table.atoms.columnVisibility?.get(),\n ],\n },\n row_getRightVisibleCells: {\n fn: (row) => row_getRightVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.atoms.columnPinning?.get()?.right,\n row.table.atoms.columnVisibility?.get(),\n ],\n },\n })\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnPinningFeature', table, {\n table_setColumnPinning: {\n fn: (updater) => table_setColumnPinning(table, updater),\n },\n table_resetColumnPinning: {\n fn: (defaultState) => table_resetColumnPinning(table, defaultState),\n },\n table_getIsSomeColumnsPinned: {\n fn: (position) => table_getIsSomeColumnsPinned(table, position),\n },\n // header groups\n table_getLeftHeaderGroups: {\n fn: () => table_getLeftHeaderGroups(table),\n memoDeps: () => [\n table.getAllColumns(),\n callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ),\n table.atoms.columnPinning?.get()?.left,\n table.atoms.columnOrder?.get(),\n ],\n },\n table_getCenterHeaderGroups: {\n fn: () => table_getCenterHeaderGroups(table),\n memoDeps: () => [\n table.getAllColumns(),\n callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ),\n table.atoms.columnPinning?.get(),\n table.atoms.columnOrder?.get(),\n ],\n },\n table_getRightHeaderGroups: {\n fn: () => table_getRightHeaderGroups(table),\n memoDeps: () => [\n table.getAllColumns(),\n callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ),\n table.atoms.columnPinning?.get()?.right,\n table.atoms.columnOrder?.get(),\n ],\n },\n // footer groups\n table_getLeftFooterGroups: {\n fn: () => table_getLeftFooterGroups(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n ),\n ],\n },\n table_getCenterFooterGroups: {\n fn: () => table_getCenterFooterGroups(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n ),\n ],\n },\n table_getRightFooterGroups: {\n fn: () => table_getRightFooterGroups(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n ),\n ],\n },\n // flat headers\n table_getLeftFlatHeaders: {\n fn: () => table_getLeftFlatHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n ),\n ],\n },\n table_getRightFlatHeaders: {\n fn: () => table_getRightFlatHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n ),\n ],\n },\n table_getCenterFlatHeaders: {\n fn: () => table_getCenterFlatHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n ),\n ],\n },\n // leaf headers\n table_getLeftLeafHeaders: {\n fn: () => table_getLeftLeafHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n ),\n ],\n },\n table_getRightLeafHeaders: {\n fn: () => table_getRightLeafHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n ),\n ],\n },\n table_getCenterLeafHeaders: {\n fn: () => table_getCenterLeafHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n ),\n ],\n },\n // leaf columns\n table_getLeftLeafColumns: {\n fn: () => table_getLeftLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.atoms.columnPinning?.get(),\n table.atoms.columnOrder?.get(),\n ],\n },\n table_getRightLeafColumns: {\n fn: () => table_getRightLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.atoms.columnPinning?.get(),\n table.atoms.columnOrder?.get(),\n ],\n },\n table_getCenterLeafColumns: {\n fn: () => table_getCenterLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.atoms.columnPinning?.get(),\n table.atoms.columnOrder?.get(),\n ],\n },\n table_getPinnedLeafColumns: {\n fn: (position) => table_getPinnedLeafColumns(table, position),\n // must not memo here as it's just a shortcut function\n },\n // visible leaf columns\n table_getLeftVisibleLeafColumns: {\n fn: () => table_getLeftVisibleLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.atoms.columnPinning?.get(),\n table.atoms.columnVisibility?.get(),\n table.atoms.columnOrder?.get(),\n ],\n },\n table_getCenterVisibleLeafColumns: {\n fn: () => table_getCenterVisibleLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.atoms.columnPinning?.get(),\n table.atoms.columnVisibility?.get(),\n table.atoms.columnOrder?.get(),\n ],\n },\n table_getRightVisibleLeafColumns: {\n fn: () => table_getRightVisibleLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.atoms.columnPinning?.get(),\n table.atoms.columnVisibility?.get(),\n table.atoms.columnOrder?.get(),\n ],\n },\n table_getPinnedVisibleLeafColumns: {\n fn: (position) => table_getPinnedVisibleLeafColumns(table, position),\n // must not memo here as it's just a shortcut function\n },\n })\n },\n}\n"],"mappings":";;;;;;;;AA6CA,MAAa,uBAAqC;CAChD,kBAAkB,iBAAiB;EACjC,OAAO;GACL,eAAe;IACb,GAAG,6BAA6B;IAChC,GAAG,aAAa;GAClB;GACA,GAAG;EACL;CACF;CAEA,yBAAyB,UAAU;EACjC,OAAO,EACL,uBAAuB,iBAAiB,iBAAiB,KAAK,EAChE;CACF;CAEA,wBAAwB,WAAW,UAAU;EAC3C,oBAAoB,wBAAwB,WAAW,OAAO;GAC5D,YAAY,EACV,KAAK,QAAQ,aAAa,WAAW,QAAQ,QAAQ,EACvD;GACA,kBAAkB,EAChB,KAAK,WAAW,iBAAiB,MAAM,EACzC;GACA,uBAAuB,EACrB,KAAK,WAAW,sBAAsB,MAAM,EAC9C;GACA,oBAAoB,EAClB,KAAK,WAAW,mBAAmB,MAAM,EAC3C;EACF,CAAC;CACH;CAEA,qBAAqB,WAAW,UAAU;EACxC,oBAAoB,wBAAwB,WAAW,OAAO;GAC5D,2BAA2B;IACzB,KAAK,QAAQ,0BAA0B,GAAG;IAC1C,WAAW,QAAQ;;;MACjB,IAAI,YAAY;+BAChB,IAAI,MAAM,MAAM,6FAAe,IAAI;gCACnC,IAAI,MAAM,MAAM,kGAAkB,IAAI;KACxC;;GACF;GACA,yBAAyB;IACvB,KAAK,QAAQ,wBAAwB,GAAG;IACxC,WAAW,QAAQ;;;MACjB,IAAI,YAAY;gCAChB,IAAI,MAAM,MAAM,iHAAe,IAAI,mFAAG;gCACtC,IAAI,MAAM,MAAM,kGAAkB,IAAI;KACxC;;GACF;GACA,0BAA0B;IACxB,KAAK,QAAQ,yBAAyB,GAAG;IACzC,WAAW,QAAQ;;;MACjB,IAAI,YAAY;gCAChB,IAAI,MAAM,MAAM,iHAAe,IAAI,mFAAG;gCACtC,IAAI,MAAM,MAAM,kGAAkB,IAAI;KACxC;;GACF;EACF,CAAC;CACH;CAEA,qBAAqB,UAAU;EAC7B,gBAAgB,wBAAwB,OAAO;GAC7C,wBAAwB,EACtB,KAAK,YAAY,uBAAuB,OAAO,OAAO,EACxD;GACA,0BAA0B,EACxB,KAAK,iBAAiB,yBAAyB,OAAO,YAAY,EACpE;GACA,8BAA8B,EAC5B,KAAK,aAAa,6BAA6B,OAAO,QAAQ,EAChE;GAEA,2BAA2B;IACzB,UAAU,0BAA0B,KAAK;IACzC,gBAAgB;;;MACd,MAAM,cAAc;MACpB,mBACE,OACA,yBACA,2BACF;+BACA,MAAM,MAAM,8GAAe,IAAI,iFAAG;+BAClC,MAAM,MAAM,2FAAa,IAAI;KAC/B;;GACF;GACA,6BAA6B;IAC3B,UAAU,4BAA4B,KAAK;IAC3C,gBAAgB;;;MACd,MAAM,cAAc;MACpB,mBACE,OACA,yBACA,2BACF;gCACA,MAAM,MAAM,+FAAe,IAAI;gCAC/B,MAAM,MAAM,6FAAa,IAAI;KAC/B;;GACF;GACA,4BAA4B;IAC1B,UAAU,2BAA2B,KAAK;IAC1C,gBAAgB;;;MACd,MAAM,cAAc;MACpB,mBACE,OACA,yBACA,2BACF;gCACA,MAAM,MAAM,iHAAe,IAAI,mFAAG;gCAClC,MAAM,MAAM,6FAAa,IAAI;KAC/B;;GACF;GAEA,2BAA2B;IACzB,UAAU,0BAA0B,KAAK;IACzC,gBAAgB,CACd,mBACE,OACA,uBACA,yBACF,CACF;GACF;GACA,6BAA6B;IAC3B,UAAU,4BAA4B,KAAK;IAC3C,gBAAgB,CACd,mBACE,OACA,yBACA,2BACF,CACF;GACF;GACA,4BAA4B;IAC1B,UAAU,2BAA2B,KAAK;IAC1C,gBAAgB,CACd,mBACE,OACA,wBACA,0BACF,CACF;GACF;GAEA,0BAA0B;IACxB,UAAU,yBAAyB,KAAK;IACxC,gBAAgB,CACd,mBACE,OACA,uBACA,yBACF,CACF;GACF;GACA,2BAA2B;IACzB,UAAU,0BAA0B,KAAK;IACzC,gBAAgB,CACd,mBACE,OACA,wBACA,0BACF,CACF;GACF;GACA,4BAA4B;IAC1B,UAAU,2BAA2B,KAAK;IAC1C,gBAAgB,CACd,mBACE,OACA,yBACA,2BACF,CACF;GACF;GAEA,0BAA0B;IACxB,UAAU,yBAAyB,KAAK;IACxC,gBAAgB,CACd,mBACE,OACA,uBACA,yBACF,CACF;GACF;GACA,2BAA2B;IACzB,UAAU,0BAA0B,KAAK;IACzC,gBAAgB,CACd,mBACE,OACA,wBACA,0BACF,CACF;GACF;GACA,4BAA4B;IAC1B,UAAU,2BAA2B,KAAK;IAC1C,gBAAgB,CACd,mBACE,OACA,yBACA,2BACF,CACF;GACF;GAEA,0BAA0B;IACxB,UAAU,yBAAyB,KAAK;IACxC,gBAAgB;;;MACd,MAAM,QAAQ;gCACd,MAAM,MAAM,+FAAe,IAAI;gCAC/B,MAAM,MAAM,6FAAa,IAAI;KAC/B;;GACF;GACA,2BAA2B;IACzB,UAAU,0BAA0B,KAAK;IACzC,gBAAgB;;;MACd,MAAM,QAAQ;gCACd,MAAM,MAAM,+FAAe,IAAI;gCAC/B,MAAM,MAAM,6FAAa,IAAI;KAC/B;;GACF;GACA,4BAA4B;IAC1B,UAAU,2BAA2B,KAAK;IAC1C,gBAAgB;;;MACd,MAAM,QAAQ;gCACd,MAAM,MAAM,+FAAe,IAAI;gCAC/B,MAAM,MAAM,6FAAa,IAAI;KAC/B;;GACF;GACA,4BAA4B,EAC1B,KAAK,aAAa,2BAA2B,OAAO,QAAQ,EAE9D;GAEA,iCAAiC;IAC/B,UAAU,gCAAgC,KAAK;IAC/C,gBAAgB;;;MACd,MAAM,QAAQ;gCACd,MAAM,MAAM,+FAAe,IAAI;+BAC/B,MAAM,MAAM,gGAAkB,IAAI;gCAClC,MAAM,MAAM,6FAAa,IAAI;KAC/B;;GACF;GACA,mCAAmC;IACjC,UAAU,kCAAkC,KAAK;IACjD,gBAAgB;;;MACd,MAAM,QAAQ;gCACd,MAAM,MAAM,+FAAe,IAAI;gCAC/B,MAAM,MAAM,kGAAkB,IAAI;gCAClC,MAAM,MAAM,6FAAa,IAAI;KAC/B;;GACF;GACA,kCAAkC;IAChC,UAAU,iCAAiC,KAAK;IAChD,gBAAgB;;;MACd,MAAM,QAAQ;gCACd,MAAM,MAAM,+FAAe,IAAI;gCAC/B,MAAM,MAAM,kGAAkB,IAAI;gCAClC,MAAM,MAAM,6FAAa,IAAI;KAC/B;;GACF;GACA,mCAAmC,EACjC,KAAK,aAAa,kCAAkC,OAAO,QAAQ,EAErE;EACF,CAAC;CACH;AACF"}
|
|
1
|
+
{"version":3,"file":"columnPinningFeature.js","names":[],"sources":["../../../src/features/column-pinning/columnPinningFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n callMemoOrStaticFn,\n makeStateUpdater,\n} from '../../utils'\nimport { table_getVisibleLeafColumns } from '../column-visibility/columnVisibilityFeature.utils'\nimport {\n column_getCanPin,\n column_getIsPinned,\n column_getPinnedIndex,\n column_pin,\n getDefaultColumnPinningState,\n row_getCenterVisibleCells,\n row_getLeftVisibleCells,\n row_getRightVisibleCells,\n table_getCenterFlatHeaders,\n table_getCenterFooterGroups,\n table_getCenterHeaderGroups,\n table_getCenterLeafColumns,\n table_getCenterLeafHeaders,\n table_getCenterVisibleLeafColumns,\n table_getIsSomeColumnsPinned,\n table_getLeftFlatHeaders,\n table_getLeftFooterGroups,\n table_getLeftHeaderGroups,\n table_getLeftLeafColumns,\n table_getLeftLeafHeaders,\n table_getLeftVisibleLeafColumns,\n table_getPinnedLeafColumns,\n table_getPinnedVisibleLeafColumns,\n table_getRightFlatHeaders,\n table_getRightFooterGroups,\n table_getRightHeaderGroups,\n table_getRightLeafColumns,\n table_getRightLeafHeaders,\n table_getRightVisibleLeafColumns,\n table_resetColumnPinning,\n table_setColumnPinning,\n} from './columnPinningFeature.utils'\nimport type { TableFeature } from '../../types/TableFeatures'\n\n/**\n * Feature that adds column pinning state and APIs for left, center, and right regions.\n */\nexport const columnPinningFeature: TableFeature = {\n getInitialState: (initialState) => {\n return {\n columnPinning: {\n ...getDefaultColumnPinningState(),\n ...initialState.columnPinning,\n },\n ...initialState,\n }\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onColumnPinningChange: makeStateUpdater('columnPinning', table),\n }\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnPinningFeature', prototype, table, {\n column_pin: {\n fn: (column, position) => column_pin(column, position),\n },\n column_getCanPin: {\n fn: (column) => column_getCanPin(column),\n },\n column_getPinnedIndex: {\n fn: (column) => column_getPinnedIndex(column),\n },\n column_getIsPinned: {\n fn: (column) => column_getIsPinned(column),\n },\n })\n },\n\n assignRowPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnPinningFeature', prototype, table, {\n row_getCenterVisibleCells: {\n fn: (row) => row_getCenterVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.atoms.columnPinning?.get(),\n row.table.atoms.columnVisibility?.get(),\n ],\n },\n row_getLeftVisibleCells: {\n fn: (row) => row_getLeftVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.atoms.columnPinning?.get()?.left,\n row.table.atoms.columnVisibility?.get(),\n ],\n },\n row_getRightVisibleCells: {\n fn: (row) => row_getRightVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.atoms.columnPinning?.get()?.right,\n row.table.atoms.columnVisibility?.get(),\n ],\n },\n })\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnPinningFeature', table, {\n table_setColumnPinning: {\n fn: (updater) => table_setColumnPinning(table, updater),\n },\n table_resetColumnPinning: {\n fn: (defaultState) => table_resetColumnPinning(table, defaultState),\n },\n table_getIsSomeColumnsPinned: {\n fn: (position) => table_getIsSomeColumnsPinned(table, position),\n },\n // header groups\n table_getLeftHeaderGroups: {\n fn: () => table_getLeftHeaderGroups(table),\n memoDeps: () => [\n table.getAllColumns(),\n callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ),\n table.atoms.columnPinning?.get()?.left,\n table.atoms.columnOrder?.get(),\n ],\n },\n table_getCenterHeaderGroups: {\n fn: () => table_getCenterHeaderGroups(table),\n memoDeps: () => [\n table.getAllColumns(),\n callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ),\n table.atoms.columnPinning?.get(),\n table.atoms.columnOrder?.get(),\n ],\n },\n table_getRightHeaderGroups: {\n fn: () => table_getRightHeaderGroups(table),\n memoDeps: () => [\n table.getAllColumns(),\n callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ),\n table.atoms.columnPinning?.get()?.right,\n table.atoms.columnOrder?.get(),\n ],\n },\n // footer groups\n table_getLeftFooterGroups: {\n fn: () => table_getLeftFooterGroups(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n ),\n ],\n },\n table_getCenterFooterGroups: {\n fn: () => table_getCenterFooterGroups(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n ),\n ],\n },\n table_getRightFooterGroups: {\n fn: () => table_getRightFooterGroups(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n ),\n ],\n },\n // flat headers\n table_getLeftFlatHeaders: {\n fn: () => table_getLeftFlatHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n ),\n ],\n },\n table_getRightFlatHeaders: {\n fn: () => table_getRightFlatHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n ),\n ],\n },\n table_getCenterFlatHeaders: {\n fn: () => table_getCenterFlatHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n ),\n ],\n },\n // leaf headers\n table_getLeftLeafHeaders: {\n fn: () => table_getLeftLeafHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n ),\n ],\n },\n table_getRightLeafHeaders: {\n fn: () => table_getRightLeafHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n ),\n ],\n },\n table_getCenterLeafHeaders: {\n fn: () => table_getCenterLeafHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n ),\n ],\n },\n // leaf columns\n table_getLeftLeafColumns: {\n fn: () => table_getLeftLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.atoms.columnPinning?.get(),\n table.atoms.columnOrder?.get(),\n table.atoms.grouping?.get(),\n table.options.groupedColumnMode,\n ],\n },\n table_getRightLeafColumns: {\n fn: () => table_getRightLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.atoms.columnPinning?.get(),\n table.atoms.columnOrder?.get(),\n table.atoms.grouping?.get(),\n table.options.groupedColumnMode,\n ],\n },\n table_getCenterLeafColumns: {\n fn: () => table_getCenterLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.atoms.columnPinning?.get(),\n table.atoms.columnOrder?.get(),\n table.atoms.grouping?.get(),\n table.options.groupedColumnMode,\n ],\n },\n table_getPinnedLeafColumns: {\n fn: (position) => table_getPinnedLeafColumns(table, position),\n // must not memo here as it's just a shortcut function\n },\n // visible leaf columns\n table_getLeftVisibleLeafColumns: {\n fn: () => table_getLeftVisibleLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.atoms.columnPinning?.get(),\n table.atoms.columnVisibility?.get(),\n table.atoms.columnOrder?.get(),\n table.atoms.grouping?.get(),\n table.options.groupedColumnMode,\n ],\n },\n table_getCenterVisibleLeafColumns: {\n fn: () => table_getCenterVisibleLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.atoms.columnPinning?.get(),\n table.atoms.columnVisibility?.get(),\n table.atoms.columnOrder?.get(),\n table.atoms.grouping?.get(),\n table.options.groupedColumnMode,\n ],\n },\n table_getRightVisibleLeafColumns: {\n fn: () => table_getRightVisibleLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.atoms.columnPinning?.get(),\n table.atoms.columnVisibility?.get(),\n table.atoms.columnOrder?.get(),\n table.atoms.grouping?.get(),\n table.options.groupedColumnMode,\n ],\n },\n table_getPinnedVisibleLeafColumns: {\n fn: (position) => table_getPinnedVisibleLeafColumns(table, position),\n // must not memo here as it's just a shortcut function\n },\n })\n },\n}\n"],"mappings":"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"}
|
|
@@ -79,34 +79,72 @@ function header_getResizeHandler(header, _contextDocument) {
|
|
|
79
79
|
const newColumnSizing = require_utils.makeObjectMap();
|
|
80
80
|
const updateOffset = (eventType, clientXPos) => {
|
|
81
81
|
if (typeof clientXPos !== "number") return;
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
82
|
+
const table = column.table;
|
|
83
|
+
const isCommit = table.options.columnResizeMode === "onChange" || eventType === "end";
|
|
84
|
+
table._reactivity.batch(() => {
|
|
85
|
+
table_setColumnResizing(table, (old) => {
|
|
86
|
+
const deltaDirection = table.options.columnResizeDirection === "rtl" ? -1 : 1;
|
|
87
|
+
const deltaOffset = (clientXPos - (old.startOffset ?? 0)) * deltaDirection;
|
|
88
|
+
const startSize = old.startSize ?? 0;
|
|
89
|
+
const deltaPercentage = Math.max(startSize > 0 ? deltaOffset / startSize : 0, -.999999);
|
|
90
|
+
if (isCommit) {
|
|
91
|
+
const columnSizingStart = old.columnSizingStart;
|
|
92
|
+
for (let i = 0; i < columnSizingStart.length; i++) {
|
|
93
|
+
const entry = columnSizingStart[i];
|
|
94
|
+
const headerSize = entry[1];
|
|
95
|
+
newColumnSizing[entry[0]] = Math.round(Math.max(headerSize > 0 ? headerSize + headerSize * deltaPercentage : deltaOffset / columnSizingStart.length, 0) * 100) / 100;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
return {
|
|
99
|
+
...old,
|
|
100
|
+
deltaOffset,
|
|
101
|
+
deltaPercentage
|
|
102
|
+
};
|
|
89
103
|
});
|
|
90
|
-
|
|
91
|
-
...old,
|
|
92
|
-
deltaOffset,
|
|
93
|
-
deltaPercentage
|
|
94
|
-
};
|
|
104
|
+
if (isCommit) require_columnSizingFeature_utils.table_setColumnSizing(table, (old) => Object.assign(require_utils.makeObjectMap(), old, newColumnSizing));
|
|
95
105
|
});
|
|
96
|
-
if (column.table.options.columnResizeMode === "onChange" || eventType === "end") require_columnSizingFeature_utils.table_setColumnSizing(column.table, (old) => Object.assign(require_utils.makeObjectMap(), old, newColumnSizing));
|
|
97
106
|
};
|
|
98
|
-
|
|
107
|
+
let moveRafId = null;
|
|
108
|
+
let hasPendingMove = false;
|
|
109
|
+
let latestMoveX;
|
|
110
|
+
const flushMove = () => {
|
|
111
|
+
if (hasPendingMove) {
|
|
112
|
+
hasPendingMove = false;
|
|
113
|
+
updateOffset("move", latestMoveX);
|
|
114
|
+
moveRafId = requestAnimationFrame(flushMove);
|
|
115
|
+
} else moveRafId = null;
|
|
116
|
+
};
|
|
117
|
+
const onMove = (clientXPos) => {
|
|
118
|
+
latestMoveX = clientXPos;
|
|
119
|
+
if (typeof requestAnimationFrame !== "function") {
|
|
120
|
+
updateOffset("move", clientXPos);
|
|
121
|
+
return;
|
|
122
|
+
}
|
|
123
|
+
if (moveRafId !== null) {
|
|
124
|
+
hasPendingMove = true;
|
|
125
|
+
return;
|
|
126
|
+
}
|
|
127
|
+
updateOffset("move", clientXPos);
|
|
128
|
+
moveRafId = requestAnimationFrame(flushMove);
|
|
129
|
+
};
|
|
99
130
|
const onEnd = (clientXPos) => {
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
131
|
+
if (moveRafId !== null) {
|
|
132
|
+
cancelAnimationFrame(moveRafId);
|
|
133
|
+
moveRafId = null;
|
|
134
|
+
hasPendingMove = false;
|
|
135
|
+
}
|
|
136
|
+
column.table._reactivity.batch(() => {
|
|
137
|
+
updateOffset("end", clientXPos ?? latestMoveX);
|
|
138
|
+
table_setColumnResizing(column.table, (old) => ({
|
|
139
|
+
...old,
|
|
140
|
+
isResizingColumn: false,
|
|
141
|
+
startOffset: null,
|
|
142
|
+
startSize: null,
|
|
143
|
+
deltaOffset: null,
|
|
144
|
+
deltaPercentage: null,
|
|
145
|
+
columnSizingStart: []
|
|
146
|
+
}));
|
|
147
|
+
});
|
|
110
148
|
};
|
|
111
149
|
const contextDocument = _contextDocument || typeof document !== "undefined" ? document : null;
|
|
112
150
|
const mouseEvents = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"columnResizingFeature.utils.cjs","names":["header_getSize","column_getSize","makeObjectMap","cloneState"],"sources":["../../../src/features/column-resizing/columnResizingFeature.utils.ts"],"sourcesContent":["import {\n column_getSize,\n header_getSize,\n table_setColumnSizing,\n} from '../column-sizing/columnSizingFeature.utils'\nimport { cloneState, makeObjectMap } from '../../utils'\nimport type { CellData, RowData, Updater } from '../../types/type-utils'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { Table_Internal } from '../../types/Table'\nimport type { Header } from '../../types/Header'\nimport type { Column_Internal } from '../../types/Column'\nimport type { ColumnSizingState } from '../column-sizing/columnSizingFeature.types'\nimport type { columnResizingState } from './columnResizingFeature.types'\n\n/**\n * Creates the default transient column resizing state.\n *\n * The feature default represents no active drag interaction. Reset APIs use\n * this value when `defaultState` is `true`.\n *\n * @example\n * ```ts\n * const resizeInfo = getDefaultColumnResizingState()\n * ```\n */\nexport function getDefaultColumnResizingState(): columnResizingState {\n return {\n startOffset: null,\n startSize: null,\n deltaOffset: null,\n deltaPercentage: null,\n isResizingColumn: false,\n columnSizingStart: [],\n }\n}\n\n/**\n * Checks whether this column can start a resize interaction.\n *\n * Both `columnDef.enableResizing` and table `enableColumnResizing` default to\n * `true`.\n *\n * @example\n * ```ts\n * const canResize = column_getCanResize(column)\n * ```\n */\nexport function column_getCanResize<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(column: Column_Internal<TFeatures, TData, TValue>) {\n return (\n (column.columnDef.enableResizing ?? true) &&\n (column.table.options.enableColumnResizing ?? true)\n )\n}\n\n/**\n * Checks whether this column is the active column resize target.\n *\n * The value is read from `state.columnResizing.isResizingColumn`.\n *\n * @example\n * ```ts\n * const isResizing = column_getIsResizing(column)\n * ```\n */\nexport function column_getIsResizing<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(column: Column_Internal<TFeatures, TData, TValue>) {\n return (\n column.table.atoms.columnResizing?.get()?.isResizingColumn === column.id\n )\n}\n\n/**\n * Creates the pointer/touch start handler for resizing a header.\n *\n * The handler records starting sizes for all leaf headers, tracks drag deltas,\n * writes transient resize info, and commits column sizes on change or drag end\n * depending on `columnResizeMode`.\n *\n * @example\n * ```ts\n * const onMouseDown = header_getResizeHandler(header)\n * ```\n */\nexport function header_getResizeHandler<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(header: Header<TFeatures, TData, TValue>, _contextDocument?: Document) {\n const column = header.table.getColumn(header.column.id)!\n const canResize = column_getCanResize(column)\n\n return (event: unknown) => {\n if (!canResize) {\n return\n }\n\n ;(event as any).persist?.()\n\n if (isTouchStartEvent(event)) {\n // lets not respond to multiple touches (e.g. 2 or 3 fingers)\n if (event.touches.length > 1) {\n return\n }\n }\n\n const startSize = header_getSize(header)\n\n const columnSizingStart: Array<[string, number]> = header\n .getLeafHeaders()\n .map((leafHeader) => [\n leafHeader.column.id,\n column_getSize(leafHeader.column),\n ])\n\n const clientX = isTouchStartEvent(event)\n ? Math.round(event.touches[0]!.clientX)\n : (event as MouseEvent).clientX\n\n const newColumnSizing: ColumnSizingState = makeObjectMap()\n\n const updateOffset = (eventType: 'move' | 'end', clientXPos?: number) => {\n if (typeof clientXPos !== 'number') {\n return\n }\n\n table_setColumnResizing(column.table, (old) => {\n const deltaDirection =\n column.table.options.columnResizeDirection === 'rtl' ? -1 : 1\n const deltaOffset =\n (clientXPos - (old.startOffset ?? 0)) * deltaDirection\n const startSize = old.startSize ?? 0\n const deltaPercentage = Math.max(\n startSize > 0 ? deltaOffset / startSize : 0,\n -0.999999,\n )\n\n old.columnSizingStart.forEach(([columnId, headerSize]) => {\n newColumnSizing[columnId] =\n Math.round(\n Math.max(\n headerSize > 0\n ? headerSize + headerSize * deltaPercentage\n : deltaOffset / old.columnSizingStart.length,\n 0,\n ) * 100,\n ) / 100\n })\n\n return {\n ...old,\n deltaOffset,\n deltaPercentage,\n }\n })\n\n if (\n column.table.options.columnResizeMode === 'onChange' ||\n eventType === 'end'\n ) {\n table_setColumnSizing(column.table, (old) =>\n Object.assign(makeObjectMap<number>(), old, 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_setColumnResizing(column.table, (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('mouseup', mouseEvents.upHandler)\n onEnd(e.clientX)\n },\n }\n\n const touchEvents = {\n moveHandler: (touchEvent: TouchEvent) => {\n if (touchEvent.cancelable) {\n touchEvent.preventDefault()\n touchEvent.stopPropagation()\n }\n onMove(touchEvent.touches[0]!.clientX)\n return false\n },\n upHandler: (e: TouchEvent) => {\n contextDocument?.removeEventListener(\n 'touchmove',\n touchEvents.moveHandler,\n )\n contextDocument?.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(event)) {\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_setColumnResizing(column.table, (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 * Routes a transient column resizing updater through the table's resize handler.\n *\n * This state tracks the active drag interaction; committed widths live in\n * `columnSizing`.\n *\n * @example\n * ```ts\n * table_setColumnResizing(table, (old) => ({ ...old, deltaOffset: 12 }))\n * ```\n */\nexport function table_setColumnResizing<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n table: Table_Internal<TFeatures, TData>,\n updater: Updater<columnResizingState>,\n) {\n table.options.onColumnResizingChange?.(updater)\n}\n\n/**\n * Resets `columnResizing` to the configured initial state or feature default.\n *\n * With no argument, the reset clones `table.initialState.columnResizing` when\n * it exists. Passing `true` ignores initial state and resets to the no-drag\n * default state.\n *\n * @example\n * ```ts\n * table_resetHeaderSizeInfo(table)\n * table_resetHeaderSizeInfo(table, true)\n * ```\n */\nexport function table_resetHeaderSizeInfo<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>, defaultState?: boolean) {\n table_setColumnResizing(\n table,\n defaultState\n ? getDefaultColumnResizingState()\n : cloneState(\n table.initialState.columnResizing ?? getDefaultColumnResizingState(),\n ),\n )\n}\n\nlet passiveSupported: boolean | null = null\n/**\n * Detects whether the current environment supports passive event listeners.\n *\n * Column resizing uses this to register pointer and touch listeners with\n * `passive: false` only when the environment understands passive options.\n *\n * @example\n * ```ts\n * const canUsePassiveListeners = passiveEventSupported()\n * ```\n */\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\n/**\n * Narrows an unknown event to a `touchstart` event.\n *\n * Column resizing uses this before reading touch coordinates and installing\n * touch-specific listeners.\n *\n * @example\n * ```ts\n * const isTouch = isTouchStartEvent(event)\n * ```\n */\nexport function isTouchStartEvent(e: unknown): e is TouchEvent {\n return (e as TouchEvent).type === 'touchstart'\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"columnResizingFeature.utils.cjs","names":["header_getSize","column_getSize","makeObjectMap","cloneState"],"sources":["../../../src/features/column-resizing/columnResizingFeature.utils.ts"],"sourcesContent":["import {\n column_getSize,\n header_getSize,\n table_setColumnSizing,\n} from '../column-sizing/columnSizingFeature.utils'\nimport { cloneState, makeObjectMap } from '../../utils'\nimport type { CellData, RowData, Updater } from '../../types/type-utils'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { Table_Internal } from '../../types/Table'\nimport type { Header } from '../../types/Header'\nimport type { Column_Internal } from '../../types/Column'\nimport type { ColumnSizingState } from '../column-sizing/columnSizingFeature.types'\nimport type { columnResizingState } from './columnResizingFeature.types'\n\n/**\n * Creates the default transient column resizing state.\n *\n * The feature default represents no active drag interaction. Reset APIs use\n * this value when `defaultState` is `true`.\n *\n * @example\n * ```ts\n * const resizeInfo = getDefaultColumnResizingState()\n * ```\n */\nexport function getDefaultColumnResizingState(): columnResizingState {\n return {\n startOffset: null,\n startSize: null,\n deltaOffset: null,\n deltaPercentage: null,\n isResizingColumn: false,\n columnSizingStart: [],\n }\n}\n\n/**\n * Checks whether this column can start a resize interaction.\n *\n * Both `columnDef.enableResizing` and table `enableColumnResizing` default to\n * `true`.\n *\n * @example\n * ```ts\n * const canResize = column_getCanResize(column)\n * ```\n */\nexport function column_getCanResize<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(column: Column_Internal<TFeatures, TData, TValue>) {\n return (\n (column.columnDef.enableResizing ?? true) &&\n (column.table.options.enableColumnResizing ?? true)\n )\n}\n\n/**\n * Checks whether this column is the active column resize target.\n *\n * The value is read from `state.columnResizing.isResizingColumn`.\n *\n * @example\n * ```ts\n * const isResizing = column_getIsResizing(column)\n * ```\n */\nexport function column_getIsResizing<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(column: Column_Internal<TFeatures, TData, TValue>) {\n return (\n column.table.atoms.columnResizing?.get()?.isResizingColumn === column.id\n )\n}\n\n/**\n * Creates the pointer/touch start handler for resizing a header.\n *\n * The handler records starting sizes for all leaf headers, tracks drag deltas,\n * writes transient resize info, and commits column sizes on change or drag end\n * depending on `columnResizeMode`.\n *\n * @example\n * ```ts\n * const onMouseDown = header_getResizeHandler(header)\n * ```\n */\nexport function header_getResizeHandler<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(header: Header<TFeatures, TData, TValue>, _contextDocument?: Document) {\n const column = header.table.getColumn(header.column.id)!\n const canResize = column_getCanResize(column)\n\n return (event: unknown) => {\n if (!canResize) {\n return\n }\n\n ;(event as any).persist?.()\n\n if (isTouchStartEvent(event)) {\n // lets not respond to multiple touches (e.g. 2 or 3 fingers)\n if (event.touches.length > 1) {\n return\n }\n }\n\n const startSize = header_getSize(header)\n\n const columnSizingStart: Array<[string, number]> = header\n .getLeafHeaders()\n .map((leafHeader) => [\n leafHeader.column.id,\n column_getSize(leafHeader.column),\n ])\n\n const clientX = isTouchStartEvent(event)\n ? Math.round(event.touches[0]!.clientX)\n : (event as MouseEvent).clientX\n\n const newColumnSizing: ColumnSizingState = makeObjectMap()\n\n const updateOffset = (eventType: 'move' | 'end', clientXPos?: number) => {\n if (typeof clientXPos !== 'number') {\n return\n }\n\n const table = column.table\n const isCommit =\n table.options.columnResizeMode === 'onChange' || eventType === 'end'\n\n // one notification flush per tick instead of two\n table._reactivity.batch(() => {\n table_setColumnResizing(table, (old) => {\n const deltaDirection =\n table.options.columnResizeDirection === 'rtl' ? -1 : 1\n const deltaOffset =\n (clientXPos - (old.startOffset ?? 0)) * deltaDirection\n const startSize = old.startSize ?? 0\n const deltaPercentage = Math.max(\n startSize > 0 ? deltaOffset / startSize : 0,\n -0.999999,\n )\n\n // new sizes are only read at commit and are recomputed from\n // absolute positions each time, so skip them on onEnd-mode moves\n if (isCommit) {\n const columnSizingStart = old.columnSizingStart\n for (let i = 0; i < columnSizingStart.length; i++) {\n const entry = columnSizingStart[i]!\n const headerSize = entry[1]\n newColumnSizing[entry[0]] =\n Math.round(\n Math.max(\n headerSize > 0\n ? headerSize + headerSize * deltaPercentage\n : deltaOffset / columnSizingStart.length,\n 0,\n ) * 100,\n ) / 100\n }\n }\n\n return {\n ...old,\n deltaOffset,\n deltaPercentage,\n }\n })\n\n if (isCommit) {\n table_setColumnSizing(table, (old) =>\n Object.assign(makeObjectMap<number>(), old, newColumnSizing),\n )\n }\n })\n }\n\n // Pointer devices can report at several times the display refresh rate,\n // and every update between frames is overwritten by the next one. Apply\n // the first move of a frame immediately, then coalesce the rest into one\n // update per animation frame.\n let moveRafId: number | null = null\n let hasPendingMove = false\n let latestMoveX: number | undefined\n\n const flushMove = () => {\n if (hasPendingMove) {\n hasPendingMove = false\n updateOffset('move', latestMoveX)\n moveRafId = requestAnimationFrame(flushMove)\n } else {\n moveRafId = null\n }\n }\n\n const onMove = (clientXPos?: number) => {\n latestMoveX = clientXPos\n if (typeof requestAnimationFrame !== 'function') {\n updateOffset('move', clientXPos)\n return\n }\n if (moveRafId !== null) {\n hasPendingMove = true\n return\n }\n updateOffset('move', clientXPos)\n moveRafId = requestAnimationFrame(flushMove)\n }\n\n const onEnd = (clientXPos?: number) => {\n if (moveRafId !== null) {\n cancelAnimationFrame(moveRafId)\n moveRafId = null\n hasPendingMove = false\n }\n\n // batch the 'end' commit and the reset into one notification flush\n column.table._reactivity.batch(() => {\n // touchend events carry no touch position, so fall back to the last\n // observed move position for the final commit\n updateOffset('end', clientXPos ?? latestMoveX)\n\n table_setColumnResizing(column.table, (old) => ({\n ...old,\n isResizingColumn: false,\n startOffset: null,\n startSize: null,\n deltaOffset: null,\n deltaPercentage: null,\n columnSizingStart: [],\n }))\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('mouseup', mouseEvents.upHandler)\n onEnd(e.clientX)\n },\n }\n\n const touchEvents = {\n moveHandler: (touchEvent: TouchEvent) => {\n if (touchEvent.cancelable) {\n touchEvent.preventDefault()\n touchEvent.stopPropagation()\n }\n onMove(touchEvent.touches[0]!.clientX)\n return false\n },\n upHandler: (e: TouchEvent) => {\n contextDocument?.removeEventListener(\n 'touchmove',\n touchEvents.moveHandler,\n )\n contextDocument?.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(event)) {\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_setColumnResizing(column.table, (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 * Routes a transient column resizing updater through the table's resize handler.\n *\n * This state tracks the active drag interaction; committed widths live in\n * `columnSizing`.\n *\n * @example\n * ```ts\n * table_setColumnResizing(table, (old) => ({ ...old, deltaOffset: 12 }))\n * ```\n */\nexport function table_setColumnResizing<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n table: Table_Internal<TFeatures, TData>,\n updater: Updater<columnResizingState>,\n) {\n table.options.onColumnResizingChange?.(updater)\n}\n\n/**\n * Resets `columnResizing` to the configured initial state or feature default.\n *\n * With no argument, the reset clones `table.initialState.columnResizing` when\n * it exists. Passing `true` ignores initial state and resets to the no-drag\n * default state.\n *\n * @example\n * ```ts\n * table_resetHeaderSizeInfo(table)\n * table_resetHeaderSizeInfo(table, true)\n * ```\n */\nexport function table_resetHeaderSizeInfo<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>, defaultState?: boolean) {\n table_setColumnResizing(\n table,\n defaultState\n ? getDefaultColumnResizingState()\n : cloneState(\n table.initialState.columnResizing ?? getDefaultColumnResizingState(),\n ),\n )\n}\n\nlet passiveSupported: boolean | null = null\n/**\n * Detects whether the current environment supports passive event listeners.\n *\n * Column resizing uses this to register pointer and touch listeners with\n * `passive: false` only when the environment understands passive options.\n *\n * @example\n * ```ts\n * const canUsePassiveListeners = passiveEventSupported()\n * ```\n */\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\n/**\n * Narrows an unknown event to a `touchstart` event.\n *\n * Column resizing uses this before reading touch coordinates and installing\n * touch-specific listeners.\n *\n * @example\n * ```ts\n * const isTouch = isTouchStartEvent(event)\n * ```\n */\nexport function isTouchStartEvent(e: unknown): e is TouchEvent {\n return (e as TouchEvent).type === 'touchstart'\n}\n"],"mappings":"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"}
|